Compare commits

...

1653 Commits

Author SHA1 Message Date
Carl J. Bialorucki
22fb3bb2c1 [0.4.15][USBCCGP][USBPORT] USB stack improvements
[USBCCGP]
Ignore invalid devices
Group audio function interfaces together

[USBPORT]
Prevent infinite loop in USBPORT_OpenPipe when endpoint is not becoming ready

This is a backport of commit:
dba4efbcae [USBCCGP] [USBPORT] USB Stack improvements  (#7740)
2025-03-19 08:35:54 -06:00
Carl J. Bialorucki
4b28d889c4 [0.4.15][REGEDIT][COMCTL32][EXPLORER][SHELL32] Small bugfixes
CORE-20030, CORE-19970, CORE-13601, CORE-10386

This is a backport of the following commits:
e6302ccd70 [REGEDIT] Reduce flickering and fix rendering (#7747)
75c0dc0cd8 [EXPLORER][COMCTL32][SHELL32] Enable SPI_SETICONTITLELOGFONT (#7783)
b45debb93a [COMCTL32] Fix shift-selecting files not working as expected in small/large icons views (#7729)
c6b134123b [SHELL32] Initialize COM for PickIconDlg (#7788)
2025-03-19 00:44:51 -06:00
Carl J. Bialorucki
08c150be74 [0.4.15][SYSSETUP][BOOT][INBV][MSGINA][SDK] Update year to 2025 and set theme using unattend.inf
CORE-19496

All wallpapers that are not in bitmap format will not work on LiveCD. LiveCD has a read-only file system and to apply non bitmap files as wallpapers, we convert them to bitmap when selected as a temporary file. Therefore, only copy non-bitmap wallpapers to BootCD, not LiveCD. Also minor fix to README in the wallpapers folder.

This commit includes:
- Partial revert of dc1a4ae9ce [0.4.15][SYSSETUP][BOOT][WALLPAPERS] Set default theme to Mizu and add wallpapers
- 2e47094764 [SYSSETUP] Apply theming from unattend files very early on when booting the LiveCD or a new install (#7797)
ebdb7b3e4d A problem has been detected and ReactOS has been shut down to prevent damage to your time machine warp core.
- 4bc97ad145 [BOOTDATA] Arabic, Hong Kong, Singapore, come back! (#7795)
2025-03-18 23:32:47 -06:00
Carl J. Bialorucki
dc1a4ae9ce [0.4.15][SYSSETUP][BOOT][WALLPAPERS] Set default theme to Mizu and add wallpapers
As decided by an official meeting vote on Mattermost, set the default theme and desktop wallpaper to Mizu.

In this commit, I also added the 16:9 variants of every wallpaper in our standard wallpaper pack that had a resolution of 1920x1080 or better. For most wallpapers, we don't need a 4:3 variant because we have a "Fill" placement option that will scale the wallpaper up to the desired height and cut off the edges. Unfortunately, the Mizu wallpaper is one that doesn't work well with this method. Wallpapers without text branding were preferred over text branded wallpapers. Also, add a fix for the Mizu start button so that it looks acceptable with large taskbar.

Limitations:
- Since we can only display bitmap (.bmp) images on the desktop, convert the 4:3 and 16:9 variants of the Mizu wallpaper to bitmap files.
- Since ReactOS will default to a 4:3 aspect ratio without changing the resolution, set the default wallpaper to the 4:3 variant.
- The theme is set on the welcome page of the setup wizard during second stage setup.
2025-03-18 00:35:04 -06:00
Carl J. Bialorucki
079003d972 [0.4.15][SETUP] Disable BTRFS
BTRFS installs are no longer stable. Disable BTRFS install option for a less confusing user experience.

This patch was developed specifically for 0.4.15 and should not be ported to the master branch at this time.
2025-03-14 20:24:37 -06:00
Carl J. Bialorucki
bd270f07f3 [0.4.15][NTUSER] Handle window update region larger than the current window in clip region (#7731)
CORE-18206 CORE-18799 CORE-19371

Fixes infinite loop of:
  err: Message WM_PAINT count 1 Internal Paint Set? FALSE

The symptom appears in the following scenario (as reported in CORE-18799):

A program (game) runs at a small resolution (e.g. 640 x 480), but the
game window gets invalidated at a larger size (e.g. 1152 x 864 screen
resolution) before switching to the smaller (640 x 480) size.
Because of this, the window's update region is larger than the current
window so only the 640 x 480 region gets validated leaving the remaining
region invalid. This causes the recurring WM_PAINT messages because there
is no way to invalidate the remaining area.

This is a backport of commit:
5c505d9a9b [NTUSER] Handle window update region larger than the current window in clip region (#7731)
2025-03-13 22:36:47 -06:00
Carl J. Bialorucki
5ce3fadb81 [0.4.15][NTOS:KE] Implement KeI386VirtualIntExtensions code paths for INT and IRET
CORE-19049

This is a cherry pick of commit:

656a5dcc1f [NTOS:KE] Implement KeI386VirtualIntExtensions code paths for INT and IRET. CORE-19049 (#7742)
2025-03-13 22:21:55 -06:00
Carl J. Bialorucki
8553bc117b [0.4.15][THEMES][MIZU] New bitmaps to replace old Lautus ones (#7775)
This is a backport of commit:

14f8f7e3bd [THEMES][MIZU] New bitmaps to replace old Lautus ones (#7775)
2025-03-13 22:10:39 -06:00
Carl J. Bialorucki
4d7a107ecd [0.4.15][BROWSEUI][SHELL32] Fix FindFolder icons
CORE-18692

- Shortcut icons require the correct IShellFolder because it needs the full path.
- Items in a drive root needs the final backslash to be part of the path.

This is a backport of the following commit:
f844296b0a [BROWSEUI][SHELL32] Fix FindFolder icons (#7756)
2025-03-10 20:04:11 -06:00
Carl J. Bialorucki
a067bd5b5b [0.4.15][BROWSEUI] Set AddressBand Go button checkbox state correctly in menu
CORE-20018

This is a backport of the following commit:
5af47c9baf [BROWSEUI] Set AddressBand Go button checkbox state correctly in menu (#7771)
2025-03-10 19:25:19 -06:00
Carl J. Bialorucki
aa9824a2dd [0.4.15][BOOT] Disable EFI
EFI support is incomplete in 0.4.15, there is no EFI bootvid. Disable the EFI loader to reduce confusion.
2025-03-07 18:04:27 -07:00
Carl J. Bialorucki
72e3e2c01e [0.4.15][NETSHELL] Handle DefView accelerators
CORE-18750

This is a backport of commit:
0743faf2e3 [NETSHELL] Handle DefView accelerators (#7572)
2025-03-06 21:54:34 -07:00
Carl J. Bialorucki
5dceb67f13 [0.4.15][SHELL32] CM::InvokeCommand case-insensitive compare verb string (#7582)
CORE-18733

This is a backport of the following commit:
1faa571f3f [SHELL32] CM::InvokeCommand case-insensitive compare verb string (#7582)
2025-03-06 00:10:56 -07:00
Carl J. Bialorucki
8b6ee5e0e3 [0.4.15][UNIATA] Fix memory corruption if SCSIOP_SERVICE_ACTION16 processed. (#7717)
CORE-19696

The size of `READ_CAPACITY16_DATA` struct in UniATA driver and ReactOS/Windows SDK were not equal.
- In UniATA driver: `sizeof(READ_CAPACITY16_DATA) == 33` (wrong);
- In ReactOS/Windows SDK: `sizeof(READ_CAPACITY16_DATA) == 32` (correct).

This is a backport of commit:
606e996e1f [UNIATA] Fix memory corruption if SCSIOP_SERVICE_ACTION16 processed. (#7717)
2025-03-05 21:25:37 -07:00
Carl J. Bialorucki
0a67494071 [0.4.15][SHIMGVW] Choose a better icon image
CORE-19945

- Choose an icon image based on size and color and place it first so GDI+ will pick it
- Change .cur files to .ico so GDI+ can open it

This is a backport of the following commits:
a07a35d0f6 [SHIMGVW] Update Portuguese (pt-PT) translation (#7688)
329a414584 [SHIMGVW] Choose a better icon image and also support .cur files (#7706)
2025-03-05 20:51:44 -07:00
Carl J. Bialorucki
9ec189ac5f [0.4.15][SHELL32] ShellExecuteW must call ShellExecuteExW (#7587)
CORE-19952

Adds the DDEWAIT/NOASYNC flag unless compatibility info says otherwise.

This is a cherry pick of commit:
fd41270d6d [SHELL32] ShellExecuteW must call ShellExecuteExW (#7587)
2025-03-05 19:13:47 -07:00
Carl J. Bialorucki
3bc6b46581 [0.4.15][EXPLORER] Add Show Desktop button to taskbar customization preview (#7727)
CORE-19738

Use a 4D lookup table for the notification area settings preview, instead of many if cases.

This is a cherry pick of commit:
6988b4e2c4 [EXPLORER] Add Show Desktop button to taskbar customization preview (#7727)
2025-03-05 18:40:56 -07:00
Carl J. Bialorucki
f483c90c3d [0.4.15][SHELL32] Don't close Run dialog on execution failure (#7686)
CORE-19983

This is a cherry pick of commit:
6265add147 [SHELL32] Don't close Run dialog on execution failure (#7686)
2025-03-05 18:23:27 -07:00
Carl J. Bialorucki
7ecf8772fa [0.4.15] Vista+ Apiset Exposure OPT-IN in releases instead of OPT-OUT in master
By using the capabilities created in CORE-16631.
This will fix many crash-regressions in apps that have "Vista+ready"-manifests.
A good default setting for releases to protect "average Joe".
We think that's a tolerable balance.

E.g: This will fix CORE-16700 and CORE-16707 for releases.

The reason for those crashes is that we have far too many gaps in our apisets still.

Adventurous users have two options in releases if they want to expose more apisets
(and additional crashes when apisets are not implemented yet):
1.) change registry setting "HKLM\SOFTWARE\Policies\Microsoft\Windows\AppCompat" "DisableCompatGuidDetection" back to 0
to switch the global behavior to act like master-state (== opt-out)
or
2.) Select the "Windows 7" shim for example individually per app for more apiset exposure.
(more safe)

Contrary master will remain affected by such crashes and users will
have to manually apply shim "IgnoreManifestCompatVersion" on each affected app for opt-out,
as we intend to abuse master as a testing platform to spot gaps in apisets and problematic apps more quickly.

Thanks to Mark Jansen for having implemented that flexibility.

This is a cherry pick of commit:
138d9acd79 [0.4.13] Vista+ Apiset Exposure OPT-IN in releases instead of OPT-OUT in master
2025-03-02 20:17:32 -07:00
Carl J. Bialorucki
25283a530b [0.4.15][WIN32SS] Mask WndProc exceptions to hide all tickets linked to CORE-11915
My testcase: this allows opening an exe/dll with MsDepends (CORE-12052)
Unfortunately still necessary, luckily still effective
and also reliably hides a lot of other crashes due to uncaught exceptions

Like done in all earlier releases since 0.4.3
cherry picked from commit bca25b10b4
2025-03-02 19:57:23 -07:00
Carl J. Bialorucki
70715ff248 [0.4.15][CALC][SECLOGON][REGEDIT] Various small bugfixes
Fixes CORE-19745, CORE-19793, and CORE-19743.

This is a squashed backport of the following commits:
30b40247a3 [CALC] Fix copy command when output is NaN (#7496)
0e462a3905 [SECLOGON] Add missing service status updates
17eff53f35 [REGEDIT] Add ES_AUTOHSCROLL to address bar window (#7638)
2025-03-02 19:54:33 -07:00
Carl J. Bialorucki
a868a66a72 [0.4.15][DDRAW] Fix taskbar visibilty when switching to fullscreen (#7443)
CORE-16140, CORE-16148, CORE-16321, CORE-18644, and CORE-17799

Fixes taskbar being displayed when switching to fullscreen when using DirectDraw.

This is a cherry pick of commit:
16437937f7 [DDRAW] Fix taskbar visibilty when switching to fullscreen (#7443)
2025-03-02 19:52:21 -07:00
Carl J. Bialorucki
f5055a3201 [0.4.15][DESK] Don't include .ico files in list of wallpapers (#7726)
CORE-20003

While 0.4.15 will fail to apply a .ico file as a wallpaper, it will still show .ico files as possible wallpapers to select from the file picker. This commit hides these files from the file picker in desk.cpl.

This is a backport of commit:
924592dc47 [DESK] Don't include .ico files in list of wallpapers (#7726)
2025-03-02 19:51:05 -07:00
Carl J. Bialorucki
6a38254631 [0.4.15][SHELL32] Allow DnD to create shortcuts across different drives (#7607)
Fixes CORE-17871 and CORE-18271.

This is a cherry pick of commit:
aebaa14eba [SHELL32] Allow DnD to create shortcuts across different drives (#7607)

Co-Authored-By: Whindmar Saksit <whindsaks@proton.me>
2025-03-02 19:50:04 -07:00
Carl J. Bialorucki
a070a1d4f5 [0.4.15][APISETS] Revert "Rework apisets to use a table"
Fixes CORE-19874 and CORE-19649.

This reverts commit:
24a56f89ab Rework apisets to use a table.
2025-03-02 19:50:04 -07:00
Carl J. Bialorucki
3aa931d10b [0.4.15][GITHUB] Fixes for MSVC ARM and Linux builds
CORE-17604

The latest GitHub Actions runner image 20241113.3.0 uses WDK 10.0.26100.0, which dropped support for 32-bit ARM platform. Fix the failing build by sticking to WDK 10.0.22621.0.

Fixes clang build, since ubuntu-latest (24.04.1 LTS / Noble Numbat) has no LLVM 13 package available.

This includes the following commits:
096a5518e5 [GITHUB] Fix MSVC ARM build
392473c7b5 [GITHUB] Stick to ubuntu-22.04 for build-linux
2025-03-02 19:46:16 -07:00
Carl J. Bialorucki
265550fea9 [0.4.15][SERVICES] Fix services delay on stopping (#7375)
Fixes CORE-16949, CORE-16950, and CORE-15064.

This is a cherry pick of commit:
2f824a4a18 [SERVICES] Fix services delay on stopping (#7375)
2025-03-02 19:44:34 -07:00
Carl J. Bialorucki
07e18f4b7a [0.4.15][SETUPLIB] GetSourcePaths(): Fix determination of the installation source path.
Fixes CORE-17818.
Refine the algorithm introduced in commit c560342 (r75667, r75676),
whereby the installation source path is based on the full image file path
of the installer program, and of the \SystemRoot symlink. Also reverts commit 6f389a3 "Add a workaround for installing from USB drives"

This is a cherry pick of commit:
3ddb05d443 [SETUPLIB] GetSourcePaths(): Fix determination of the installation source path.

Co-Authored-By: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2025-03-02 19:44:34 -07:00
Carl J. Bialorucki
5558a5a883 [0.4.15][SHELL32] Fix Control_RunDLL single comma syntax out of range dialog box numbers (#7595)
Fixes CORE-19580 and CORE-8981.

If an out of range dialog box number was given in a single comma syntax
for Control_RunDLL(), it should be set to 0 to launch the default dialog
box instead of failing. Addendum to dcf9eb0.

This is a cherry pick of commit:
b114e3a051 [SHELL32] Fix Control_RunDLL single comma syntax out of range dialog box numbers (#7595)
2025-03-02 19:44:02 -07:00
Carl J. Bialorucki
2a2d8f9f77 [0.4.15][SHDOCVW][BROWSEUI][SHELL32] Various shell fixes
Fixes CORE-19744, CORE-19879, and CORE-19780.

This backport includes the following commits:
1fec01561d [SHDOCVW][BROWSEUI][SHELL32] Correctly refcount CNSCBand and Explorer File menu (#7569)
11d5cb8095 [BROWSEUI] FindFolder must release the view and the browser (#7529)

Co-Authored-By: Whindmar Saksit <whindsaks@proton.me>
2025-02-24 22:27:17 -07:00
Carl J. Bialorucki
881e9b9329 [0.4.15][NTGDI:FREETYPE] Account for non-breaking spaces in x-dim of IntExtTextOutW (#7479)
CORE-19768
Follow up of PR #7274. This stop WARN's from FF 28 as well.

This is a cherry pick of commit 3bb1e64408

Co-Authored-By: Doug Lyons <douglyons@douglyons.com>
2025-02-24 21:38:54 -07:00
Carl J. Bialorucki
9de86f8796 [0.4.15][VERSION] Fix VerQueryValue when return Value is NULL. (#7449)
Fixes CORE-19783. Tested by cbialorucki as a valid fix.
This is a cherry pick of commit 551c74123c.

Co-Authored-By: Timo Kreuzer <timo.kreuzer@reactos.org>
Co-Authored-By: Doug Lyons <douglyons@douglyons.com>
2025-02-24 21:16:33 -07:00
Carl J. Bialorucki
85d6175995 [0.4.15][KS] Restore old hack for MS portcls
Hackfix for CORE-17237. Restores an old hack required by MS portcls driver. Replaces the current hack from 22d1e7a4e4 with an old one that was removed in 563682ad9a5751a7d5c3f9ffb4ac4f67bf0adc71

This allows ReactOS to boot and play sound properly with the portcls.sys driver from Windows XP/2003.

Co-Authored-By: Oleg Dubinskiy <oleg.dubinskiy@reactos.org>
2025-02-23 19:44:41 -07:00
Whindmar Saksit
1acaa988bc [0.4.15][COMCTL32] ListView LVIS_CUT image does not depend on focus (#7724)
Fixes CORE-19533. Also undoes flicker caused by PR #4218.
2025-02-23 19:39:42 -07:00
Carl J. Bialorucki
b5c1fdc1cc [0.4.15][RAPPS] Backport current RAPPS into 0.4.15
This is a squashed backport of RAPPS from current master into the 0.4.15 release tree. All of these changes were deemed stable and complete.

This backport includes the following commits:
5bc6d59142 [RAPPS] Refresh item info after installer completes (#7697)
d5ce3d28ab [RAPPS] Don't display Freeware license string if the type is also Freeware (#7689)
b35becef2e [RAPPS] Set working directory for zip generated shortcuts (#7674)
a23db39c8a [RAPPS] Allow database to override download filename (#7668)
c8b2c4c94d [RAPPS] Check Let's Encrypt issuer prefix (#7650)
72951421e6 [RAPPS] Reuse active pending downloads window (#7648)
91b8923601 [RAPPS] Allow .zip generated installers to skip writing the DisplayIcon value (#7609)
2834e5b3c8 [RAPPS] Initialize SHBrowseForFolder to current download folder (#7505)
9164e9f85f [RAPPS] Update Slovak (sk-SK) translation (#7450)
8734889272 [RAPPS] Update Turkish (tr-TR) translation (#7372)
16f1abe1c8 [RAPPS] Improve Romanian (ro-RO) translation (#7360)
2f83e6a65d [RAPPS] Use different mutex and title for AppWiz mode (#7350)
301675c112 [RAPPS] Respect partial settings configuration (#7247)
053939e27c [RAPPS] Hide the main window during active download/install if the user closes it (#7014)
3ff8adc553 [RAPPS] Protect database update with a mutex (#7006)
4e59858941 [RAPPS] Change the "Welcome" text with a suitable explanatory one in APPWIZ-mode (#6655)
2af6fd4def [PSDK] Add GetMenuPosFromID() declaration in shlwapi.h
2025-02-17 20:07:25 -07:00
Joachim Henze
7791a36fc2 [0.4.15][FASTFAT] allocsup.c assert-muting, a DIRRTY workaround CORE-19741
Yes, simply muting those assertions is a super-*dirrty*-workaround
https://www.youtube.com/watch?v=4Rg3sAb8Id8
It sweeps under the carpet a mild form of FS-corruption without actually preventing it from happening.
And I will happily revert that workaround and replace it with something better,
once Timo or anyone else will find something better to do on master head.

For now it helps me to increase the chance of succeeding the testbot runs without hitting those assertions,
and it also increases the chances to succeed a git clone from within ros.
And it will decrease the chance of actual ros users running into those endless cascades of assertions
which - when run without a debugger - will make ros halt and enforce the user to reboot,
and even when run with the debugger can never be escaped, because you have to 'i'gnore endless amounts of them.

I tested this hackfix for a week, and have not seen any *severe* side-effects of muting them.

Not nice to hack around like that, for sure not. But it is the best I can come up with for now.
Something like that is not needed for any older release, because the older releases did still use old MM/CC and old non-MS-fastfat.
The real bug is most likely to find within our MM/CC, at least when assuming that MS PL-licensed fastfat wasn't hacked too much by
us when it was introduced during 0.4.15-dev'ing.
2024-09-25 21:12:43 +02:00
Joachim Henze
3780e42ff9 [0.4.15][NTOS:SE][NDK][KMTESTS:SE] Fix 'kmtest_.exe SeQueryInfoToken' (#5308)
This backport fixes 'kmtest_.exe SeQueryInfoToken'
on all testers: VBox x86, KVM x86, WHS x86, Win2003_x64.
And according to Thomas description may also prevent a buffer overrun when executing that formerly broken test.
Afterwards all 76 tests of this suite do complete on all those builders.
Before the patch only 74 of those tests succeeded, 2 failed.

The fix is a squashed backport of the following 6 commits from Thomas Faber:
0.4.16-dev-11-g 44bdafa17e [KMTESTS:SE] Fix failing tests (#5308)
0.4.16-dev-10-g bf6af0f52e [NTOS:SE] Mark output parameters as such (#5308)
0.4.16-dev-9-g 156053cafd [NDK] Match AUX_ACCESS_DATA definition with publicly available version. - if you allocated only sizeof(AUX_ACCESS_DATA), the test would crash with a 4 byte buffer overflow. (#5308)
0.4.16-dev-8-g ff410211e9 [KMTESTS:SE] Don't modify internal data structure, this might cause buffer overrun (#5308)
0.4.16-dev-7-g 206df96bc4 [KMTESTS:SE] Correctly allocate PrivilegeSet buffers (#5308)
0.4.16-dev-6-g 64a6bd4c3e [KMTESTS:SE] Avoid use of uninitialized pool and hardcoded offsets (#5308)

WHS x86 before-and-after-state, the after-test had a few fixes from Timos unrelated PR7343 inside unfortunately:
https://reactos.org/testman/compare.php?ids=97640,97871
(This is added to prove the test being wrong)

I tested it also successfully on my local 2k3sp2 x86 with the releases/0.4.15 afterstate, built with RosBEWin2.2.2 GCC8.4.0dbg x86.

Win2003_x64 0.4.16-dev-11-g44bdafa at 2024-09-12 15:19 (after-state):
https://reactos.org/testman/compare.php?ids=97791

0.4.16-dev-5-g2913ef5 vs. 0.4.16-dev-11-g44bdafa vs. 0.4.16-dev-23-g53b304e:
VBox x86 https://reactos.org/testman/compare.php?ids=97795,97806,97877

0.4.16-dev-5-g2913ef5 vs. 0.4.16-dev-20-g144a8b5 vs. 0.4.16-dev-21-g2af6fd4:
KVM x86 https://reactos.org/testman/compare.php?ids=97793,97855,97856

Since we do touch the NTOS and NDK here the fix is not guaranteed to be side-effect-free,
but since we are so early in the RC-phase, I dared to pick it, especially since the alternative would have
been to disable the test altogether in the releases/0.4.15 which would have been a pity, if we can also have it all green everywhere.
2024-09-15 14:09:29 +02:00
Joachim Henze
5f1fcb59e5 [0.4.15][WINETESTS] Exclude 2 tests: mshmtl:htmldoc, urlmon:protocol ROSTESTS-358
I am really no fan of disabling tests, even when they are broken,
but in these cases they are really not worth of suffering the pain, and rerunning the bots all the time.

Those tests do have random failures and timeouts, and are accessing external web-resources
of the Wine test-infratructure, which are not always accessible.
I do disable them, because they very often make the testruns run extremely long.
"Inspired by" 0.4.15-dev-367-g d424a0e088 urlmon_winetest:url skipped due to frequent hang on Test KVM

This following links do reflect the BEFORE-STATE:

The "urlmon:protocol" test does even crash on the WHS x86 testbot, see:
https://reactos.org/testman/compare.php?ids=97640

0.4.14-release-123-gcc9c2ba:
VBox https://reactos.org/testman/compare.php?ids=97825  KVM https://reactos.org/testman/compare.php?ids=97826 (both timed out at urlmon:url)

0.4.15-2-g94cae27:
VBox https://reactos.org/testman/compare.php?ids=97837  KVM https://reactos.org/testman/compare.php?ids=97838

Yes, even older branches might also be affected, but I will only exclude them for now on releases/0.4.14 and releases/0.4.15
because only on those I do regularly run the testbots still.
2024-09-14 23:34:38 +02:00
Hermès Bélusca-Maïto
94cae279fa [0.4.15][DESK][STOBJECT] Minor UI fixes.
This is a cherry-pick the master-commit 0.4.15-dev-8638-g 0604640c14
which was the 2nd of two commits that were pushed concurrently to me creating the releases/0.4.15 branch,
which I branched at 0.4.15-dev-8636-g 945e856031
but before the "0.4.16-dev" git tag was created.
So they won't end up in no-mans-land.

[DESK][STOBJECT] Minor UI fixes.
- Fix "icone" typo in French (must be "icône");
- Add missing trailing semicolons for options introducing a choice;
- Tweak the IDC_EFFAPPEARANCE_KEYBOARDCUES translation to make it
  a little bit shorter and allowing to reduce the dialog a bit more
  (not yet "perfect" but towards the goal).

(cherry picked from commit 0604640c14)
2024-09-10 21:08:03 +02:00
Hermès Bélusca-Maïto
9b8bab9999 [0.4.15][SHELL32] CDefView.cpp: fix MSVC build warning C5208
This is a cherry-pick the master-commit 0.4.15-dev-8637-g 0293d0c597
which was one of two commits that were pushed concurrently to me creating the releases/0.4.15 branch,
which I branched at 0.4.15-dev-8636-g 945e856031
but before the "0.4.16-dev" git tag was created.
To make sure they won't end up in no-mans-land.

[SHELL32] CDefView.cpp: fix MSVC build warning C5208
"unnamed class used in typedef name cannot declare members other than
non-static data members, member enumerations, or member classes."

Suggestion by Whindmar Saksit.

Use `struct LISTVIEW_SORT_INFO` instead of the typedef, since this
is a structure defined and used only in this file, and we don't use
pointers to it (LPLISTVIEW_SORT_INFO).

(cherry picked from commit 0293d0c597)
2024-09-10 21:06:57 +02:00
Joachim Henze
bceb3112fd [0.4.15] Branch releases/0.4.15 & change KERNEL_VERSION_BUILD_TYPE "" 2024-09-10 19:57:41 +02:00
Joachim Henze
945e856031 [DESK] _countof and rc-trivia (#7298)
- use _countof() consistently throughout the module instead of mixed ARRAYSIZE/countof.

In *.rc:
- the 3 AUTORADIOBUTTONS should not end with dots. In Windows 2k3sp2 ARB do never end with dots, I double-checked that here also in desk.cpl
- all 3 ARB should have an accel. I added the german ones, and added FIXMEs where I didn't know the correct accels
- the GROUPBOX IDC_SCREENS_DUMMY2 should not have an accel, but the only button in there PUSHBUTTON IDC_SCREENS_POWER_BUTTON should have an accel. This fixes a few existing accel collisions, e.g. in nl-NL.rc
- add a few additional FIXMEs for missing accels where I stumbled over them (most of them I fixed by guessing in the older branches, but I think it makes sense to let the actual native speakers fix them with the same accel that would be used in the 2k3sp2-version of *their* language)
- ro-RO.rc: Fix the forbidden characters according to the romanian-translation-rules

I noticed those glitches while porting back stuff, and acted on the FIXMEs in the backport instead of just fingerpointing to them (what I did on master).
2024-09-10 01:46:08 +02:00
Timo Kreuzer
7774a249ba [WIN32K:ENG] Fix return value in EngAlphaBlend 2024-09-09 22:16:00 +03:00
Stanislav Motylkov
c4f42b5a65 [UXTHEME] DrawNCPreview: Use DrawThemeTextEx() for drawing "Window Text"
Addendum to 118869f69 and d4dc0cb54. CORE-5991
2024-09-09 15:26:54 +03:00
Ethan Rodensky
d4dc0cb545 [UXTHEME] Import DrawThemeTextEx() function from Wine (part of #6622)
This is a Vista+ function, but it exists in Windows XP/2003 internally
and used for drawing "Window Text" with a shadow in DrawNCPreview().

And DrawThemeText() now acts as wrapper on top of it. CORE-5991
2024-09-09 15:26:40 +03:00
Whindmar Saksit
bc8c7d185d [SHELL32] Fix CRecycleBin crash caused by PR #7173 (#7330)
PR #7173 (22b913928f) fails to initialize the DELETED_FILE_RECORD struct when constructing a RecycleBin5File instance. This causes _ILCreateRecycleItem to create PIDLs without filenames and the CRecycleBin IShellFolder does not expect this to happen.

Also fixes incorrect usage of SHFileOperationW when restoring deleted files. The previous code might have worked by chance in the past if the string just happened to be double-null terminated as required by this API!
2024-09-08 22:08:15 +02:00
Oleg Dubinskiy
5d44157452 [ELF] Remove remnant elf-powerpc.h header
Addendum to 6ef6fabfc5, e372f2b19b and c020a0ca28. It was forgotten to be removed in those commits.
2024-09-08 21:50:24 +02:00
Oleg Dubinskiy
c020a0ca28 [NDK] Remove remnant PowerPC headers
Remove remaining ketypes.h and mmtypes.h public headers for PowerPC architecture.
Addendum to 6ef6fabfc5 and e372f2b19b. These headers were forgotten to be removed in those previous commits.
2024-09-08 20:59:55 +02:00
Stanislav Motylkov
9dae161631 [UXTHEME] DrawNCPreview: Do not draw the icon for inactive/active windows
This is how preview works in Windows. Addendum to 118869f69. CORE-5991
2024-09-08 21:34:23 +03:00
Stanislav Motylkov
3bda42114a [UXTHEME] Draw message box background properly in DrawNCPreview
Addendum to 118869f69. CORE-19592 CORE-5991
2024-09-08 21:34:18 +03:00
Hermès Bélusca-Maïto
c1e642fdb5 Revert "[SHELL32] Show Product version on About dialog bmp (#3621)" (#7327)
This reverts commit 2636cff09f
by Cătălin Gabriel Drăghiță (@jeffbox12) as well as any subsequent changes.

This was agreed upon by the original author on our official Mattermost
chat (chat.reactos.org)

The reactos.bmp banners are again generated from the file:
  dll/win32/msgina/resources/svg/reactos.svg
2024-09-08 14:55:47 +02:00
Whindmar Saksit
d9afe73de4 [NOTEPAD] Display error code if no error string is available (#7319) 2024-09-08 13:47:32 +02:00
Whindmar Saksit
da26ec3465 [NOTEPAD] Don't handle main window accelerators in Find dialog (#7320) 2024-09-08 13:45:51 +02:00
Splitwirez
3fa740aa81 [SHELL32] Revise "Desktop" icon (#7312)
Makes the "Desktop" icon look a bit more than the thing from Windows 7. Both: bottom-most right-most within the taskbar, and also used within the comdlg32 file-open-dialog.

* Update desktop icon (35) in shell32

* Fix SVGs
2024-09-08 13:10:05 +02:00
Katayama Hirofumi MZ
8bba3c4333 [COMDLG32] ChooseColor: Apply DarkShadow44's suggestions (#6971)
Co-authored-by: Fabian Maurer <dark.shadow4@web.de>

Based on @DarkShadow44's merge
request to WineHQ.
JIRA issue: CORE-19402
Merge Request: https://gitlab.winehq.org/wine/wine/-/merge_requests/5756

Proposed changes
Extend CC_CheckDigitsInEdit's
parameters and set infoPtr->updating
to TRUE when updating.
Call CC_PaintLumBar function in
CC_WMCommand function.
2024-09-08 16:59:28 +09:00
Timo Kreuzer
78e94a5083 [NTOS:MM] Increase x64 system view and session view size
We have plenty of address space and the desktop heap has grown, so we need some more space.
2024-09-08 10:33:55 +03:00
Serge Gautherie
4b051b914f [NTOS:PO] Update a comment (#6443)
Addendum to 9e43518 (0.4.15-dev-7560).
2024-09-08 02:29:37 +02:00
Timo Kreuzer
9414fb6b59 [NTGDI] Prevent NULL pointer dereference in CLIPPING_UpdateGCRegion
This can happen, when the paged pool is full. This will probably cause drawing issues, but at least we don't crash (in this place).
2024-09-08 03:20:52 +03:00
Tibor Lajos Füzi
299e4305ef [KEYBOARD] Fix left key code in extended_key_names in several layouts (#7311)
I found this bug while testing random games, the left key didn't work.
After switching to other keyboard layouts (German, English) the problem
disappeared. There are games (e.g. Doom 3 demo, Tomb Raider 2 demo) that
somehow use this code from extended_key_names to determine which key the
user pressed. It might be a good idea to check other keyboard layouts too,
since I found that table inconsistent across languages.
2024-09-08 02:32:27 +03:00
Timo Kreuzer
b385fc5985 [NTUSER] Fix a 64 bit bug in timer code
The return value of RtlFindClearBitsAndSet is an ULONG, assigning it to an ULONG_PTR will not sign extend it. The error value will stay 0xFFFFFFFF. Comparing it to (UINT_PTR)-1 will sign extend and thus compare it to 0xFFFFFFFFFFFFFFFF on x64.
Also use NUM_WINDOW_LESS_TIMERS to initialize the bitmap, rather than the calculated size. This does not make a difference with the current value (32768), but if it was not the case, the bitmap would be larger than this, resulting in invalid bitmap indices being returned, which would cause bugs later on. Finally remove an ASSERT that can be triggered by tests.
2024-09-08 01:52:50 +03:00
Ethem De Santa
8351fbf04f [EXPLORER] Update Turkish (tr-TR) translation (#7301)
Translated the old English explorer shell lines into Turkish and fixed
some incorrect Turkish translations.

Adapted the translation from Windows 7 with Turkish locale.
2024-09-08 01:43:04 +03:00
Ethem De Santa
0ff8271cd5 [UXTHEME] Add Turkish (tr-TR) translation (#7307)
Matches Turkish translation in the desk.cpl applet, except one string
that I borrowed from Windows 7 with Turkish localization.

Updated the latter in desk.cpl as well.
2024-09-07 19:36:27 +03:00
Timo Kreuzer
6ca6088f2c [NTUSER] Increase desktop heap size
Distinguish between the following 3 scenarios:
1. Interactive Winsta0, "Winlogon" desktop: use 128 KB
2. Interactive Winsta0, "Default" & other desktop: use 3 MB (x86) / 20 MB (x64)
3. Non-interactive winsta: use 128 KB

This is what Windows 2003 uses for the interactive desktops on x86 and what Windows 7 uses for x64. Fixes desktop heap exhaustion during testing. The previous value was 512 KB for all desktops.
It doesn't handle the even smaller "Disconnected" desktop, which is only meaningful for RDP sessions and we don't use it anyway.
See comments in the file for references.
2024-09-07 18:47:49 +03:00
Doug Lyons
bc76250bd8 [COMCTL32] Fix edit control cursor positioning (#7317)
Fix caret positioning regression from Wine Sync to Wine 5.0 affecting notepad.
Restore older Wine code that handles caret position with ReactOS better.
This was a regression from 0.4.15-dev-8612-g0707475 0707475f69

CORE-19731
2024-09-06 08:25:40 -05:00
Whindmar Saksit
a509941786 [SHELL32] Pass and expand .lnk working directory (#7314) 2024-09-06 14:31:24 +02:00
Justin Miller
0707475f69 [COMCTL32][MEDIA] Sync comctl32 to wine 5.0 (#6789)
For SOME reason comctl32 has been synched manually multiple times to different versions and different pots
This PR aims to fix that

With the exception of button.c which all in all is a massive fork over wines code entirely.
and datetime.c which is at wine 6.0

Comctl32 is now at wine-5.0
2024-09-03 21:54:05 -07:00
Whindmar Saksit
13b9c2a6d6 [SHELL32] Lnk propertysheet must disallow editing special targets (#6993)
CORE-16505
2024-09-03 17:38:03 +02:00
Whindmar Saksit
814f3a15f9 [NOTEPAD] Handle serialized maximized state (#5806)
Fixes a bug where if you close Notepad while it is maximized, the next time Notepad is started it will start with its window placed as if maximized but it is still in the SW_RESTORE state and the "real normal placement" is lost.

SetWindowPlacement also takes care of making sure the window is placed correctly on the monitor workarea.
2024-09-02 23:13:28 +02:00
Doug Lyons
07abea90d9 [NTUSER] Optimize BroadcastSystemMessage a bit. Follow-up of #6884 (#7215)
Optimize BroadcastSystemMessage with Environment parameter.
Minimize processing when UserModeMsg->lParam is NULL and KernelModeMsg->message != WM_WININICHANGE
Make sure that we have a UNICODE_NULL within lParamMsg based on comment from @whindsaks
2024-09-01 13:24:22 -05:00
Doug Lyons
a1bff5b94e [NTGDI:FREETYPE] Account for spaces in x-dimension of IntExtTextOutW function (#7274)
@I_Kill_Bugs fix

CORE-11787, CORE-17721 and CORE-19721

For function IntExtTextOutW with space character, the x-dimension should be taken into account.
Fixes HexEdit 1.2.1 right side of display window not being cleared.

Account for x-dimension if TA_UPDATECP flag set and 'String' is not NULL.

Clarify 'etx' is ASCII End of Text
2024-09-01 13:18:23 -05:00
Stanislav Motylkov
b6ae42492b [INTEROP_UNITTEST] Add interoperability tests for localized strings (#7129)
Finally, an automated way to verify all these localized strings
that must be in sync between multiple modules.

CORE-18893
2024-09-01 15:22:29 +03:00
Tomáš Veselý
52d6a71461 [USER32_APITEST] Improve RedrawWindow API test by testing flags (#7160)
As part of fixing some bugs like CORE-13149, extend the tests to include more detailed examination of rendering functions. Extend the RedrawWindow test to include tests of all flags. As part of it, I am also testing the 2-point states of the render areas.

I moved the original test without changes into a separate function GetMessageRedrawWindowTest. For the flag tests I added FlagsRedrawWindowTest function. It sequentially tests the RedrawWindow with different flag combinations and compares the results with those discovered in Windows XP and Windows 11 (the values in both versions confirmed to be identical).

The API test turned out well in ReactOS, the only deviation was that in many cases (whenever the RDW_INVALIDATE flag is present) a WM_ERASEBKGND message is received after the window is rendered without the RDW_ERASE flag.
(this is what I'm focusing on now in https://github.com/turican0/reactos/tree/fix-RDW_ERASE-in-co_UserRedrawWindow, but before I merge it, I want to create more API tests)
2024-09-01 14:32:43 +03:00
Adam Słaboń
e168d60bc5 [FREELDR] Fix boot timeout regression on AMD64 (#7281)
Initialize the BootMgrInfo struct globally, so the TimeOut value is guaranteed to be negative when no Multiboot cmdline is provided. This could happen when BootMain is called with a NULL pointer:
https://git.reactos.org/?p=reactos.git;a=blob;f=boot/freeldr/freeldr/arch/amd64/entry.S;hb=163f3407c8fa93ce06773fdf9fc53064506bd05e#l73
so CmdLine == NULL and LoadSettings is called with NULL, thus the CmdLineParse isn't run.

Fixes boot timeout regression introduced in commit 7bee32d237 which occured only on AMD64 builds.
2024-09-01 11:54:28 +03:00
Vitaly Orekhov
06024c97fe [SDK][SHELL32] Make CLSID_NetworkConnections the default name (#7266)
- [SDK][INCLUDE] Redirect CLSID_ConnectionFolder to CLSID_NetworkConnections

CLSID_NetworkConnections is the official known name for the class behind it,
thus to avoid breaking current code I 'softlink' CLSID_ConnectionFolder
to the currently used CLSID_NetworkConnections in shlguid_undoc.h.

- [SHELL32] Refer to CLSID_NetworkConnections from PSDK
2024-09-01 11:40:24 +03:00
Serge Gautherie
2c8d083fc0 [HALX86] acpi/madt.c: Rewrite it (#6032)
Especially HalpParseApicTables() which looked early-WIP and was buggy.
And keep smp/mps/mps.c in sync'.
2024-08-31 14:35:50 -07:00
Serge Gautherie
7661f7826c [ADVPACK] files.c: Properly mark Wine diff
Addendum to 6eb8a1d (0.4.15-dev-6918).
2024-09-01 00:18:42 +03:00
Justin Miller
49e07292ed [NTOS:KE] Clear NpxThread on rundown for SMP as well (#7151)
clear NpxThread on rundown for SMP as well
Fixes the crash whenever a usermode thread is destroyed on x86
2024-08-31 13:18:07 -07:00
Whindmar Saksit
3f54e0e504 [RAPPS] Fix AppInfo panel WM_SYSCOLORCHANGE bug (#7290) 2024-08-31 22:10:35 +02:00
Marek Benc
633d2e6d0c [NTUSER] Address memory leak in co_WinPosSetWindowPos(). (#7284)
CORE-19723
2024-08-31 15:07:33 -05:00
Whindmar Saksit
163f3407c8 [RAPPS] Show listview context menu when the keyboard menu button/Shift+F10 is pressed (#5620) 2024-08-31 18:30:45 +02:00
Serge Gautherie
0197a5bcae [XMLLITE_WINETEST] Fully mark Wine diff
Addendum to 3d1ca45 (0.4.15-dev-5553).
2024-08-31 18:30:16 +03:00
Serge Gautherie
3ff08b6404 [VFD] Properly mark ReactOS's diffs
Addendum to 25c7e1a (0.4.7-dev-1106) and follow-ups.
2024-08-31 18:23:01 +03:00
Serge Gautherie
1abac8f6db [VFD] Remove 2 useless CMakeLists.txt
Addendum to 25c7e1a (0.4.7-dev-1106).
2024-08-31 18:23:01 +03:00
Serge Gautherie
520ed95486 [DOC] 3rd Party Files.txt: Add 'Virtual Floppy Drive'
Addendum to 25c7e1a (0.4.7-dev-1106).
2024-08-31 18:23:01 +03:00
Jose Carlos Jesus
7ed149d7da [COMDLG32] Improve Portuguese (pt-PT) translation (#7236)
- Remove accel key from Ok buttons that are DEFPUSHBUTTON.
- Fix accelerator key collisions.
2024-08-31 13:56:57 +03:00
Jose Carlos Jesus
824b190a5b [BROWSEUI] Improve Portuguese (pt-PT) translation (#7232)
- Fix typos and improve pt-PT translation.
- Add file header.
2024-08-31 13:50:19 +03:00
Tomáš Veselý
f1def09c08 [WIN32NT_APITEST] Update NtUserSetTimer API tests (#7278)
JIRA issue: [CORE-9141](https://jira.reactos.org/browse/CORE-9141)
2024-08-30 18:26:15 -05:00
Timo Kreuzer
34586814ab [GDI32][NTUSER] Demote noisy debug prints 2024-08-30 16:06:41 +03:00
Adam Słaboń
c3560c6830 [VIRTIO] Misc fixes (#7283)
- Add bugcodes dependency, fixes a rare build failure
- Fix for the sync part of commit 823fdb19d7, somehow it didn't pick up the change from the upstream commit b22efbb8b8
2024-08-30 10:26:55 +03:00
Adam Słaboń
03d41008d4 [BOOTDATA] Fix LiveCD autorun (#7282)
Use 'shellexecute' entry instead of 'open', because the latter
tries to execute a non-executable readme.txt file.

https://learn.microsoft.com/en-us/windows/win32/shell/autorun-cmds

Addendum to 4cc03bbf01 (r71342).
2024-08-30 10:16:31 +03:00
Timo Kreuzer
3cddd76f57 [RTL] Fix overflow case in vDbgPrintExWithPrefixInternal
The string should always be NULL terminated.
2024-08-30 06:38:29 +03:00
Timo Kreuzer
f80d978fc0 [CRT] Fix link issues with __ftol2 when compiling for NT6
__ftol2 is exported from msvcrt on NT6+, not from ntdll for some reason. So native apps still need to statically link _ftol2 and _ftoul2_legacy, but apps linking to msvcrt only need to statically link _ftoul2_legacy (via msvcrtex), when on NT6+.
2024-08-30 06:29:13 +03:00
Thamatip Chitpong
95c340dfb7 [NTOS:CC] CcRosCreateVacb: Return error code on pool allocation failure (#7275)
Return STATUS_INSUFFICIENT_RESOURCES error code instead of accessing the invalid pointer.
2024-08-30 07:34:48 +07:00
Whindmar Saksit
6ae11ba09d [SHELL32] Don't display non-enumerable nor non-folder items in Explorer tree (#7189)
This partially implements RegFolder required items as described by Geoff Chappell.

CORE-19176 CORE-14061
2024-08-29 20:45:59 +02:00
Hermès Bélusca-Maïto
a75ed2acd9 [SETUP:REACTOS] Add the update-registry code (#7222)
This code has been tested on Windows and works as expected.
2024-08-28 22:05:21 +02:00
Hermès Bélusca-Maïto
fd67017512 [SETUP:REACTOS] Add some SetWindowRes* helper functions 2024-08-28 22:03:05 +02:00
Hermès Bélusca-Maïto
5b07c33031 [USETUP] Update translations for some registry-related messages 2024-08-28 22:03:04 +02:00
Doug Lyons
9c0eee0333 [NTUSER] Fix window not updating when scrollbars created and removed. (#7245)
* Revise conditions for window complete redraw.

CORE-19669

Co-authored-by: Oleg Dubinskiy <oleg.dubinskij30@gmail.com>
Co-authored-by: Vitaly Orekhov <7opex0@mail.ru>
2024-08-28 02:56:28 -05:00
Hermès Bélusca-Maïto
1573461cec [SETUP:REACTOS] Add partitioning and formatting support (#7159)
CORE-13525

- Newly-created partitions and unpartitioned space ar reinserted
  or updated in correct order in the tree-list. Volume-creation
  information data associated with the tree items is persisted
  across operations.

- Reliably delete data associated to tree-list items via the
  TVN_DELETEITEM notification.
  This allows simplifying the cleanup function; keeping simple
  the code that deletes items when deleting partitions, etc.

- Make the PrintPartitionData() function call itself recursively on
  extended partitions to display the sub-list of logical partitions.

- Handle the new partition size in MB the same way as in USETUP.

- Allow existing partitions/volumes to be re-formatted, using
  common code with the partition creation dialog.

- Allow selecting unpartitioned space or non-formatted partitions
  for installing ReactOS: unused space will automatically be
  partitioned and non-formatted partitions formatted (the user
  is prompted for choosing the file system).

- Correctly zero the progress-bar position when starting file copy.
- Add missing file copy error handler in FileCopyCallback:
  just copying what USETUP does.
2024-08-27 23:18:12 +02:00
Hermès Bélusca-Maïto
9b2b75df2b [SETUP:REACTOS] Collect some UI elements into a common UI_CONTEXT structure.
Handles to some install-page UI elements, used in the installation thread,
are collected into a UI_CONTEXT structure.
2024-08-27 23:18:08 +02:00
Hermès Bélusca-Maïto
58cad127dc [SETUP:REACTOS] treelist.h: Fix TreeList_GetStyle/TreeList_SetStyle(Ex) for C language 2024-08-27 23:18:07 +02:00
Hermès Bélusca-Maïto
83d9f6c99b [SETUP:REACTOS] treelist.h: Define few useful types. CMakeFiles.txt: Move add_pch around. 2024-08-27 23:18:00 +02:00
Timo Kreuzer
64b58397f3 [CMAKE] Statically link _ftol2/__ftoul2_legacy to libntdll
This is needed to resolve symbols of native applications like usetup, when compiled with latest VS.
2024-08-27 21:34:50 +03:00
Timo Kreuzer
f637e6b809 [CRT] Implement __ftoul2_legacy
This is used by CL v19.41+. It replicates the behavior of the inline assembly code that previous CL versions generated. According to tests it works the same as with previous VS versions.
2024-08-27 21:34:50 +03:00
Timo Kreuzer
6fd6e9c306 [COMPILER_APITEST] Add tests for float to int conversion
These tests come with a VS solution, because that is the only way to test against a known good system, as the required runtime functions (like _ftol) are statically linked from the VS runtime library.
2024-08-27 21:34:50 +03:00
Marek Benc
a9b77d89fb [USER32_APITEST] Add scrollbar showing/hiding testcase (#7254)
Checks CORE-19669, making sure that CS_HREDRAW and CS_VREDRAW
are respected when the client area changes due to the scrollbar
disappearing or re-appearing.

ROSTESTS-397

Co-authored-by: Stanislav Motylkov <x86corez@gmail.com>
2024-08-27 13:25:02 -05:00
Tomáš Veselý
fd327db20f [NTUSER] IntSetTimer: Update HintIndex on each call (#7087)
* fix CORE-9141 - adding a change to IDEvent after each pass
If the first index is 0 the first returned ID will be 0x8000, which is fine.
Co-authored-by: Joachim Henze <joachim.henze@reactos.org>
2024-08-27 01:14:51 -05:00
Tomáš Veselý
938adaad22 [WIN32KNT_APITEST] Add NtUserSetTimer API tests (#7100)
Test 1 - test of creating/canceling 20 timers and comparing the raw number of returned messages - without parent window
Test 2 - test of creating/cancelling 20 timers and comparing the raw number of returned messages - with parent window
Test 3 - test creation/cancellation of 40000 timers - without parent window
Test 4 - test of creation/cancellation of 40000 timers - with parent window
Test 5 - test creation/cancellation of 2 timers and compare their index to see if they differ - without parent window

Covers the case in CORE-9141 (see #7087).
2024-08-26 22:34:30 +03:00
Hermès Bélusca-Maïto
6f15802af7 [SETUPLIB][REACTOS][USETUP] Split FS-volume-specific functionality from partitions (#7258)
CORE-13525

This greatly helps in reducing code complexity in some areas: code that
previously iterated over all partitions of a given disk, just to find
which ones were partitioned and contained a valid file system, now just
have to iterate over mounted volumes.
See in particular, `lib/utils/osdetect.c` and `lib/fsutil.c` .

- Remove FORMATSTATE "Preformatted" enum value;
- Cleanup osdetect code after introducing Volume support;
- Some simplifications for FormatState.

- Differentiate between 'new' partition and 'new' volume:

  * "New" partition: it has been created and added in the cached list,
    but not yet actually written into the disk.

  * "New" volume: newly-created volume (may be backed by a partition or
    not), not yet formatted. May exist on either new, or not new partition,
    or elsewhere.

- Cache partition and volume NT device names.

  These do not change across repartitioning operations, as long as the
  partition or the filesystem volume hasn't been deleted/recreated.
  This avoids doing \Device\Harddisk%u\Partition%u sprintf's everytime
  we need to retrieve the given partition or volume device name.

  When a partition/fileysystem volume is "virtually" created (i.e. in
  the partition list, but not yet committed to disk and exposed to the
  OS), no device partition number and device name are available yet.
  In particular, validate that no manipulation of \Device\HarddiskM\Partition0
  (i.e. the whole disk) is being made.
2024-08-26 16:42:47 +02:00
Hermès Bélusca-Maïto
0f8dc6b2df [SETUPLIB] Add some device utility functions; to be used later (#7258) 2024-08-26 16:42:46 +02:00
Oleg Dubinskiy
c59e2d20d9 [NTOS:FSRTL] Check for the correct return status when inserting a new Filter Context entry
According to our declaration/definition, IoChangeFileObjectFilerContext returns NTSTATUS, not BOOLEAN. Zero return (which was actually checked before) for BOOLEAN means failure, but for NTSTATUS it's success. So it should (and now actually does) free and fail appropriately only in failure case, but not in success, when it shouldn't.
This fixes most of problems with fltmgr.sys driver from Windows XP/Server 2003 and a lot of 3rd party filter drivers which use it from many apps (Avast Free Antivirus all versions, Avira AntiVir Personal 8.2, Dr. Web Security Space 8.0, Kaspersky Antivirus 2012 etc. etc.).
CORE-14157, CORE-14635, CORE-19318
2024-08-26 11:16:49 +02:00
Timo Kreuzer
c948ea859b [CMD] Convert to explicitly unicode 2024-08-25 16:17:17 +03:00
Whindmar Saksit
cca9acfa1d [SHELL32] Create link must ask for a parsing name for file targets (#7267) 2024-08-24 19:01:27 +02:00
Joachim Henze
5506a8e170 [MSPAINT] it-IT.rc: Fix compiler warning (#7270)
GCC8.4.0dbg warns about:
C:/ros/reactos/base/applications/mspaint/lang/it-IT.rc:267: unrecognized escape sequence

Fix that.

the regression was introduced by
0.4.15-dev-8555-g fbcbbd8768 from (#7248)
2024-08-24 06:04:48 +02:00
Whindmar Saksit
29c8dc82f6 [SHDOCVW] CNSCBand must specify a ShowWindow command (#7268) 2024-08-24 02:45:19 +02:00
Joachim Henze
ec653caf54 [REGEDIT] *.rc: Strip useless WS_VISIBLE STYLE from dlgs (#7251)
360 matches, exactly 12 matches for each language, 30 languages.

This will not shrink the binary, it just shortens some long lines within the rc-sources.
2024-08-23 21:05:06 +02:00
Whindmar Saksit
0e0f99744f [RAPPS] Refreshing the Installed list should restore the selected item (#5676) 2024-08-22 23:21:59 +02:00
Whindmar Saksit
3b73d62eaa [SHELL32] Pass correct lParam to DFM_INVOKECOMMAND (#6765) 2024-08-22 21:04:48 +02:00
Hermès Bélusca-Maïto
ea5728b5f3 [SETUPLIB] SetupCreateDirectory(): Don't assume the form of the directory prefix (#7257)
Addendum to commit 32e6eed760 (r63715)
CORE-5982

The function assumed that the directory path name to be created
always starts with a harddisk-partition root device name of the form:

  \Device\HarddiskX\PartitionY\

Indeed, it can be (when using the volume manager) of the form:

  \Device\HarddiskVolumeN\

and could even have a different format if trying to install ReactOS
on an external removable drive or other weird device.

Since the format of this prefix is not 100% always the same,
a different way to create the sub-directories is needed.
The nested-directory creation algorithm is changed as follows:

Suppose that the directory to be created is:

  \Device\HarddiskVolume1\ReactOS\system32\drivers

The function first loops backwards each path component in order
to find the deepest existing sub-directory: it will try to verify
whether each of the following sub-directories exist, successively:

  \Device\HarddiskVolume1\ReactOS\system32\drivers
  \Device\HarddiskVolume1\ReactOS\system32\
  \Device\HarddiskVolume1\ReactOS\
  \Device\HarddiskVolume1\

(Notice the trailing path separators kept in this step.)
In principle, this root device FS directory must exist (since the
volume has been formatted previously). Once found, the function will
then create each of the sub-directories in turn:

  \Device\HarddiskVolume1\ReactOS
  \Device\HarddiskVolume1\ReactOS\system32
  \Device\HarddiskVolume1\ReactOS\system32\drivers

----

An alternative to the fix could be to always specify the root device
name in a separate parameter, but this hasn't been pursued here so as
to not modify all the callers of this function.
2024-08-22 20:40:35 +02:00
Hermès Bélusca-Maïto
00ddae49d5 [SETUPLIB] SetupCreateSingleDirectory(): Remove '\.' trailing sequence handling hack
It was introduced in commit 703eb5e8c9 (r7756) in order to hack around
the "dot"-path added in the reactos.dff generator file by the earlier
commit 3bd689f185 (r7269).
Its aim was to describe the installation directory itself, instead of
one of its sub-directories.

That _invalid_ "dot"-path was removed later by commit 027e2bfa3a (r15423);
however the '\.' hack stayed for quite a while in our code.

The correct way to describe the installation directory itself is to use
instead "\", compatible with Windows' setup, as was originally done in
txtsetup.sif, and fixed in reactos.dff(.in) in commit 97bb83fcd9 (r66604).
2024-08-22 20:40:34 +02:00
Whindmar Saksit
d009de44ad [SHELL32] CDefaultContextMenu must forward the .lnk path (#7264)
Forward the .lnk path (if any) so consrv gets STARTF_TITLEISLINKNAME and can apply console properties and icon from the shortcut.
2024-08-22 14:34:22 +02:00
Serge Gautherie
44662eaf62 [CMAKE] Use COMPILE_OPTIONS instead of superseded COMPILE_FLAGS
for set_source_files_properties().
2024-08-21 11:34:48 +03:00
Gabriele Lo Re
fbcbbd8768 [TRANSLATION] Improve Italian (it-IT) translation part 2 (#7248) 2024-08-21 01:29:34 +02:00
Timo Kreuzer
7765ff89ff [CRT] Fix prototype of _Strftime 2024-08-20 13:47:10 +03:00
Andrei Miloiu
fd1a48d497 [RAPPS] Improve Romanian (ro-RO) translation (#6858) 2024-08-19 23:54:05 +02:00
Doug Lyons
24517d5258 [DESK] Fix 3dtext screensaver restart after opening settings (#7213) 2024-08-18 20:09:47 -05:00
Whindmar Saksit
e639d7c1e7 [SHELL32] Handle SHCreateShellFolderViewEx callback function (#7240)
The caller supplied callback function is wrapped in a IShellFolderViewCB so we can use (the newer) SHCreateShellFolderView.
2024-08-19 00:34:05 +02:00
Whindmar Saksit
53e930e97f [SHLWAPI] SHInvokeCommandOnContextMenu[Ex] and SHInvokeCommandWithFlagsAndSite (#7228) 2024-08-19 00:32:46 +02:00
Andrei Miloiu
e83ec236fa [NETCFGX] Improve Romanian (ro-RO) translation (#6863) 2024-08-19 00:03:18 +02:00
Andrei Miloiu
0b5d8a0045 [CLIPBRD] Update Romanian (ro-RO) translation (#7252) 2024-08-18 23:33:41 +02:00
Andrei Miloiu
02989eae41 [MATRIX] Improve Romanian (ro-RO) translation (#7253) 2024-08-18 23:21:17 +02:00
Joachim Henze
d34b058d26 [COMCTL32] pt-PT: Those 2 buttons shall not have an accel 2024-08-18 06:40:41 +02:00
Joachim Henze
275c128f30 [COMDLG32] ro-RO: Addendum to last 2 commits 2024-08-18 02:53:52 +02:00
Joachim Henze
4b4a6b3b90 [COMCTL32] *.rc: trivial improvements and added FIXMEs 2024-08-18 02:50:13 +02:00
George Bișoc
95b1893b27 [COMDL32] Fix build
Fix the wrong usage of CONTROL resource control, introduced by 1a9af23
2024-08-18 00:10:28 +02:00
Andrei Miloiu
31267a97da [REGEDIT] Update Romanian (ro-RO) translation (#7246) 2024-08-17 23:45:18 +02:00
Andrei Miloiu
1a9af2334c [COMDLG32] Update Romanian (ro-RO) translation (#6816) 2024-08-17 23:43:39 +02:00
Andrei Miloiu
68c678e1c0 [INTL] Update Romanian (ro-RO) translation (#6757) 2024-08-17 23:34:38 +02:00
Vitaly Orekhov
4e03eaeb02 [PSDK] Add 'Network Connections' CLSID (#7249)
This will be used soon by the WLAN WIZARD
dll/shellext/wlanwiz
2024-08-17 11:25:19 +02:00
Andrei Miloiu
c2b295fdce [WINMM] Update Romanian (ro-RO) translation (#6830) 2024-08-16 21:44:30 +02:00
Andrei Miloiu
67ed91acbf [SYSDM] Update Romanian (ro-RO) translation (#6838) 2024-08-16 21:41:57 +02:00
Andrei Miloiu
cde8eddaaa [NETID] Update Romanian (ro-RO) translation (#6839) 2024-08-16 21:38:08 +02:00
Andrei Miloiu
9aed201c2f [SHDOCLC] Update Romanian (ro-RO) translation (#6873) 2024-08-16 21:34:41 +02:00
Andrei Miloiu
f43c4680cf [TAPIUI] Improve Romanian (ro-RO) translation (#6857) 2024-08-16 21:31:16 +02:00
Andrei Miloiu
be1121d9cc [MODEMUI] Update Romanian (ro-RO) translation (#6775) 2024-08-16 21:29:08 +02:00
Joachim Henze
6e86daa703 [REGEDIT] *.rc: Dedupe ID_HELP_HELPTOPICS & ID_HELP_ABOUT (#7198)
ID_HELP_HELPTOPICS & ID_HELP_ABOUT are statusbar helptexts, and they do exist
twice for no good reason since 10+ years. Dedupe that.

Also add a few missing accelerators for it-IT.rc

Also strip the trailing dots for some languages for the statusbar helptexts (5 langs: ja-JP,tr-TR,zh-*)
Vast majority of languages did not have them at all (24 languages).
Also en-US was such a good role-model.

Some had it just for some of those texts, but for others not (e.g. pt-PT). Inconsistent.

All statusbar helptexts are within those exact 3 STRINGTABLEs now.
2024-08-16 18:37:23 +02:00
Whindmar Saksit
d5f6b8c50b [SHELL32] Implement the Select verb in CommDlgBrowser (#7225)
- Use Select instead of Open default menu item.
- Support CDB2GVF_NOSELECTVERB, CDB2GVF_NOINCLUDEITEM and CDB2GVF_SHOWALLFILES flags.
2024-08-15 18:40:32 +02:00
Serge Gautherie
7d532f8792 [SOUND] mmebuddy_debug.h: Match WCHAR type 2024-08-15 17:50:12 +02:00
Serge Gautherie
b30fde3797 [SOUND] mmebuddy_debug.h: Sort out macro inclusions
- POPUP() is used on DBG only.
- SND_ERR() and SND_ASSERT() are wanted even when defined(NDEBUG).
- Add a FIXME as !defined(NDEBUG) code compilation remains broken.

Follow-up of c7a4984 (0.4.15-dev-8414).
2024-08-15 17:50:12 +02:00
Whindmar Saksit
82a45262bf [NTUSER] Correctly store original unsnap position (#7244)
A small change before PR #5705 was merged caused a severe downgrade in the snap/unsnap handling. Win key handling should work correctly now.

CORE-19165 CORE-19166
2024-08-15 12:33:17 +02:00
Katayama Hirofumi MZ
7ede534910 [SHDOCVW][SDK] Support Favorites bar Part 2 (#7223)
Implement Favorites bar.
JIRA issue: CORE-19686
- Introduce CNSCBand class to commonize
  some code of CFavBand and CExplorerBand
  classes.
- Implement Favorites bar.
- Fix IBandNavigate and INamespaceProxy
  interfaces.
2024-08-14 12:00:47 +09:00
Whindmar Saksit
1061e7f7db [BROWSEUI] Don't access callers invalid PIDL during browse (#7242)
The interaction between the shell browser and its address bar causes the browser to read from a freed PIDL, sometimes causing a crash.

CORE-19697
2024-08-13 20:57:58 +02:00
George Bișoc
07a76b3dec [STOBJECT] Do not report the remaining battery capacity if it is unknown
Support for system batteries in ReactOS is really minimal to the point of non-existing. We are detecting the presence of any upcoming battery but since there's lacking in critical code that deals with communication
between PO and the battery class driver as the battery systray icon uses GetSystemPowerStatus to gather battery info which in turn inquires the power manager via NtPowerInformation(SystemBatteryState), we have
to report to the user that the remaining capacity is unknown rather than returning a pseudo capacity value.

Technically this so called "pesudo" value is just a construct denoted as BATTERY_PERCENTAGE_UNKNOWN. Not reporting the actual remaining capacity makes sense, as there could be a scenario where the battery may not
properly report its real datum, therefore it's best to be honest to the user what's really going on.

CORE-19452
CORE-18969
2024-08-13 14:17:04 +02:00
Hermès Bélusca-Maïto
fae7c0f70e [SETUP:REACTOS] Fix advanced installation options dialog style. 2024-08-13 13:30:58 +02:00
Serge Gautherie
6756c2ad03 [*_VISTA] Add/Improve version resources 2024-08-13 12:39:42 +02:00
Katayama Hirofumi MZ
ec38a8637a [SHIMGVW] Improve Japanese (ja-JP) translation
CORE-18706
2024-08-13 17:04:02 +09:00
Hermès Bélusca-Maïto
daee508516 [SETUP:REACTOS] Validate the installation path (#7162)
CORE-13525
2024-08-12 12:46:22 +02:00
Hermès Bélusca-Maïto
a6c69abafd [SETUP:REACTOS] Redesign the "Advanced Installation Options" dialog (#7162)
CORE-13525

In particular, use now a dynamic combo-box for listing the possible
locations where the bootloader can be installed.
2024-08-12 12:17:29 +02:00
Hermès Bélusca-Maïto
bf368261f1 [SETUP:REACTOS] Add new DisplayMessage(V) helpers and reimplement DisplayError around it
The variadic DisplayMessage(V) helpers display a message box, where
both the title and message can be specified either as explicit strings
or via resource IDs. It also supports the message to be a printf-like
format string, in which case the additional formatting arguments are
subsequently specified.
2024-08-12 12:17:27 +02:00
Hermès Bélusca-Maïto
8056081c2f [SETUPLIB] Store a machine architecture type
It will be used to determine how the bootloader has to be installed, etc.

Currently hardcoded for XBOX, or rnutime-determined for NEC PC-98 and BIOS-based PC-AT.
More thorough runtime determination will be added in the future.
2024-08-12 12:16:56 +02:00
Hermès Bélusca-Maïto
9b9065df52 [SETUPLIB] Move the initialization of other default values into InitializeSetup() 2024-08-12 12:04:39 +02:00
Hermès Bélusca-Maïto
c9c5fd1a18 [SETUPLIB][BOOTDATA] Rename "MBRInstallType" to "BootLoaderLocation"
Less hardcoded references to "MBR" for code that should be generic
is always better.
2024-08-12 12:04:38 +02:00
Hermès Bélusca-Maïto
259abe59dc [SETUPLIB] Fix the class of characters valid for the installation directory
Commit 7c3f4c94a4 (r68307) mentions the valid characters:
these are:
ASCII alphanumericals (a-z, A-Z, 0-9)
(hence the iswalnum() -> isalnum() change),
and: '.', '\\', '-', '_' . Spaces are not accepted.

Addendum to commit 785cc21598.
2024-08-12 12:04:37 +02:00
Hervé Poussineau
30ac80f36b [CMBATT] Implement CmBattVerifyStaticInfo 2024-08-12 11:56:18 +02:00
Hervé Poussineau
2ff683fa33 [CMBATT] Remove useless fields in device extension
Information is already present in BifData, and those fields were never filled.
2024-08-12 11:56:18 +02:00
Hervé Poussineau
359e73d055 [CMBATT] Implement CmBattGetBifData/CmBattGetBstData 2024-08-12 11:56:18 +02:00
Hervé Poussineau
8612d6c0aa [BATTC] Copy BATTERY_WAIT_STATUS structure to prevent memory overwrite.
At first QueryStatus call, output is written to Irp->AssociatedIrp.SystemBuffer.
Unfortunately, this is also the BattWait buffer.

At return of QueryStatus call, BattWait buffer has been modified, so
following code can't use it anymore.

Fix memory overwrite by copying BattWait buffer on the stack.
2024-08-12 11:56:18 +02:00
Katayama Hirofumi MZ
6f86c05cfb [RSHELL] Fix file headers (#7239)
Follow our standard.
JIRA issue: CORE-18462
Adapt file headers to our
coding style.
2024-08-12 04:47:02 +09:00
Whindmar Saksit
f3d03760e9 [NTUSER] Rewrite Window Snap handling (#5705)
Fixes many Window Snap related bugs and uses the WS_EX2_VERTICALLYMAXIMIZED* styles to remember which edge it is snapped to.

The most significant change is that GetWindowPlacement lies about the normal position when it is snapped, just like Windows.

CORE-19160 CORE-19165 CORE-19166
2024-08-11 20:21:58 +02:00
Joachim Henze
6fb67ddc0e [REGEDIT] Strip ancient stuff from resource.h / framewnd.c (#7194)
Stuff from the stone-age, not used anymore.

* ID_REGISTRY_PRINTSUBTREE & ID_REGISTRY_PRINTERSETUP have been fused into one in newer MS regedit.exe. Older versions of MS regedt32.exe had that separated still, see https://github.com/reactos/reactos/pull/7194#discussion_r1695021919 for some details and screenshots about that.

* ID_REGISTRY_OPENLOCAL is obsolete too for the same reason.

* ID_REGISTRY_SELECTCOMPUTER can be stripped too, because it was historically replaced by ID_REGISTRY_(DIS)CONNECTNETWORKREGISTRY

co-authored by hermes.belusca-maito@reactos.org
2024-08-11 18:49:45 +02:00
Hermès Bélusca-Maïto
50986d8470 [SDK] commctrl.h: Add missing Vista+ TTI_(INFO|WARNING|ERROR)_LARGE defines 2024-08-11 17:54:05 +02:00
Joachim Henze
7126298195 [CALC] Fix the "Porto"->"Portu"-typo for no-NO.rc (#7230)
And fix that typo also for the IDS-name itself.

For the record: The it-IT.rc: is the only language where "Escudo portoghese" with O is
actually correct according to google translator, and therefore not touched (confirmed also by native it-IT Carlo-Bramini).
2024-08-11 17:52:38 +02:00
Jose Carlos Jesus
709309d94f [COMCTL32] pt-PT: Fix accel collisions. Add missing accel keys. (#7234) 2024-08-11 16:56:38 +02:00
Jose Carlos Jesus
eddd97f68c [ACLUI] Fix typo in pt-PT translation. (#7233) 2024-08-11 16:46:14 +02:00
Katayama Hirofumi MZ
bf681c3a7c [RSHELL] Fix indentation (#7238)
Reduce coding stress.
JIRA issue: CORE-18462
Just fix indentation.
2024-08-11 23:35:02 +09:00
Doug Lyons
9ee30c57fd [NTUSER] Fix popup menu placement when part way off right edge of screen (#7220)
* Move the popup menu to the right edge of the screen when it is past the screen edge on the right.

CORE-19706
2024-08-10 16:00:44 -05:00
Whindmar Saksit
e546525eac [NOTEPAD] Don't leave junk behind when opening smaller file (#7227) 2024-08-10 17:08:00 +02:00
Katayama Hirofumi MZ
81ec056963 [BROWSEUI] Add checkmark for Explorer bar menu items (#7229)
Improve UI/UX.
JIRA issue: CORE-19689
- In the CShellBrowser::OnInitMenuPopup method,
  check/uncheck menu items depending on
  fCurrentVertBar.
2024-08-10 22:15:23 +09:00
Hermès Bélusca-Maïto
73bed31363 [SYSDM] Fix for Italian (it-IT) translation (#7216)
Addendum to commit 04b2d35f5b (PR #4844),
translation proposed by Carlo Bramini.

Co-authored-by: Carlo Bramini <carlo.bramix@libero.it>
2024-08-09 22:42:50 +02:00
Serge Gautherie
ea291af409 [MMEBUDDY][MMENT4][SNDBLST] Add missing \n to SND_*() calls (#7224) 2024-08-09 20:50:51 +02:00
Whindmar Saksit
ea60890961 [NETSHELL][SHELL32] Make NetShell PIDL format more Windows compatible (#7183)
- The PIDL format needs to be Windows compatible so that wlanwiz can get the connection GUID.
- SHELL32::ILIsEqual cannot deem PIDL formats it does not understand as invalid.
- DefView must ask the folder when comparing PIDLs.
2024-08-08 22:00:03 +02:00
Oleg Dubinskiy
5d96ba9217 [NTOS:MM] Implement MmProbeAndLockProcessPages (#7221)
Implement undocumented MmProbeAndLockProcessPages routine. Based on mm-implement-mappingaddress.patch by Thomas Faber from CORE-10147, with some improvements from me.
It's badly required by FltMgr.sys driver from Windows XP/Server 2003 and closely used by a lot of apps those are depending on this driver (e. g., Avast Free Antivirus several versions, Avira Antivir Personal 8.2 etc. etc.).
Fixes several asserts from MDL support routines when the 3rd-party minifilter drivers are loading FltMgr.
CORE-14157
2024-08-08 21:02:35 +02:00
Whindmar Saksit
724b20d414 [SHELL32] Don't add the file to the parameters if the registry command did not ask for a file (#7139)
Bugs fixed:
 - fDefault detection of default verb is flawed because it checks the ici struct after conversion instead of the source sei struct.
 - The command to execute should not have the filename appended just because %1 nor %L did not appear in the registry command template.
2024-08-08 19:30:14 +02:00
Joachim Henze
8f483a76a6 [COMDLG32] *.rc Tweak AUTORADIOBUTTONS (#7178)
- Tweak AUTORADIOBUTTONS (AUTORADIOBUTTON implies BS_AUTORADIOBUTTON). This saves a bit of source-file-size and binary size.
- and use the backspace key for improving alignment to column 39 for the controls names in PRINT32_SETUP DIALOG & PRINT32 DIALOG
- and fix 3 accel collisions for upper chinese translation &OA &A &R
- and add a few FIXMEs for existing accel collisions in other languages
- fix a few strings in cdlg_Sr.rc

JIRA issue: none

Note1: I intentionally used only the backspace-key and not the space key to improve the alignment in PRINT32_SETUP DIALOG & PRINT32 DIALOG, so please refrain from any review-suggestions of the form "oh you could add another space here, or another space there". I will not do that in this PR. I just aligned some strings to column 39 (same as it is used within the Wine-master-rc-file)

Note2: I will only accept accelerator suggestions as replacement for the added accel-FIXMEs that have been double-checked by a native translator from the native 2k3sp2, but no guesses.
2024-08-08 00:28:07 +02:00
Joachim Henze
703078dc40 [CALC] de-DE: add menu-accels, *.rc: Portu, CTRL->Ctrl, STRG->Strg (#7191)
- de-DE: add accelerators for the menus, inspired by german XPSP3
- *.rc: It is portuguese, not portoguese (this has been fixed in en-US earlier already, but was forgotten to be merged into other languages
- *.rc: CTRL is not used in capital manner by MS, but MS used Ctrl, and MS did not use STRG but Strg for de-DE. Our en-US respected that already, but again stuff was not synced into other languages when it was improved earlier in ros
Therefore this PR has absolutely no changes for en-US because that was good already.
2024-08-08 00:22:36 +02:00
Joachim Henze
d39269888a [CALC] *.rc: Harmonize 3 captions (#7192)
Harmonize the captions of the 3 dlgs IDD_DIALOG_SCIENTIFIC, IDD_DIALOG_STANDARD, IDD_DIALOG_CONVERSION

Some languages had different strings used here, which leads to an undesired flip in the caption if one switches between the different views of the app. Very unelegant. E.g. cs-CZ, ko-KR, th-TH suffered from that.

MS uses just the term "Calculator" in these captions, and not "Windows Calculator".
So we can also just use "Calculator" instead of "ReactOS calculator".
To perfectify the illusion / being more similar to MS.

Don't worry: The word "ReactOS" is still present in at least 4 strings, e.g. in 3x IDM_HELP_ABOUT and IDS_CALC_NAME. So nobody will think it is not our Calculator after that change.

As a nice side-effect the binary size shrinks slightly: e.g. for GCC8.4.0dbg:
530.432 -> 528.596 bytes
2024-08-08 00:18:42 +02:00
Kenta Kubo
6ac536d787 [USETUP] Fix typo in Japanese (ja-JP) translation (#7219)
Fix a typo in "ジドウテキニ" word: `\274\336\304\336\263\303\306` (ジドウテニ)
that was introduced in 2009 year (commit 379ce6f163).

The word "ジドウテキニ" is "自動的に" in Kanji, means "automatically".
2024-08-07 17:52:27 +03:00
Václav Zouzalík
0ca6b319e3 [UXTHEME] Add German (de-DE) translation (#7204)
Matches German translation in the desk.cpl applet.
2024-08-07 12:26:38 +03:00
Václav Zouzalík
d23422dbc0 [EXPLORER] Update Czech (cs-CZ) translation (#7203) 2024-08-07 12:14:21 +03:00
He Yang
d2ae8e8cb2 [SYSDM] Improve for Chinese Simplified (zh-CN) translation (#7217) 2024-08-07 10:51:09 +02:00
Katayama Hirofumi MZ
e51fddf030 [SHELL32] Simplify CExplorerBand::CompareTreeItems (#7214)
Reduce code.
JIRA issue: CORE-19686
- Delete useless _ILIsSpecialFolder
  and GetDisplayName helper
  functions.
- Simply use IShellFolder::CompareIDs
  for item comparison.
2024-08-07 10:33:48 +09:00
Doug Lyons
90de2b660b [NTUSER] Implement BroadcastSystemMessage with 'Environment' parameter (#6884)
* [NTUSER] Implement BroadcastSystemMessage with 'Environment' parameter

CORE-19372
CORE-19583

* Changes based on reviewer comments.

* Make sure that lParamMsg has a UNICODE_NULL in it.

* Skip extra handling of 1 word messsages.
2024-08-04 02:53:04 -05:00
Dmitry Borisov
fdc1d96dc1 [ISAPNP] Make sure that APCs are disabled before acquiring a lock
Note: We could just use a fast mutex instead
2024-08-03 17:08:44 +06:00
Dmitry Borisov
6091dde0d3 [ISAPNP] Improvements around hardware access helpers
- Reimplement WriteWord using the WriteByte helper.
- Remove inline qualifiers from the bus read and write functions.
  This code path is considered "cold" and using an inline for it is overkill.
- Don't apply the IRQL restrictions to our PnP state transition helpers.
  They are only called at IRQL below dispatch level.
2024-08-03 17:08:43 +06:00
Dmitry Borisov
2981e63a31 [ISAPNP] Refactor the configuration code
- Remove useless checks
- Increase code readability
2024-08-03 17:08:43 +06:00
Dmitry Borisov
76ec8411a4 [ISAPNP] Fix parsing of complex resource data
- Properly handle the case when the dependent function is placed
  after fixed resources
- Initialize the version and revision fields of resource lists
- Improve validation of resource data
- Add more debug prints

CORE-18562
2024-08-03 17:08:43 +06:00
Dmitry Borisov
c1d7087352 [ISAPNP] Fix the reported length of the memory I/O ranges
CORE-18562
2024-08-03 17:08:43 +06:00
Dmitry Borisov
9b7f34601a [ISAPNP] Force clear the upper reserved bits on fixed I/O descriptors
CORE-18562
2024-08-03 17:08:43 +06:00
Dmitry Borisov
991dbeff53 [ISAPNP] Fix the truncation of 32-bit configuration I/O reads
CORE-18562
2024-08-03 17:08:43 +06:00
Dmitry Borisov
b36d9bd9c1 [ISAPNP_UNITTEST] Add unit tests exercising device discovery and device resources functionality
CORE-18562
2024-08-03 17:08:43 +06:00
Dmitry Borisov
016d01e5d1 [ISAPNP] Extract resource definitions
Prepare the driver for upcoming API tests
CORE-18562
2024-08-03 17:08:43 +06:00
Dmitry Borisov
4ba8a8b59b [ISAPNP] Allocate the Read Port resources on demand
This will simplify failure paths and reduce memory usage
2024-08-03 17:08:42 +06:00
Katayama Hirofumi MZ
266e2e5052 [SHELL32] shlexec: Simplify parameters parsing (#7207)
Simplify code logic.
JIRA issue: N/A
- Use PathGetArgsW, PathRemoveArgsW,
  and PathUnquoteSpacesW for
  parsing parameters.
2024-08-03 15:46:24 +09:00
Jose Carlos Jesus
deccfb8c9f [TASKMGR] Allow setting each column alignment independently (#7208)
Add dwAlign attribute to the PresetColumnEntry structure to make it work.

CORE-19280
2024-08-03 00:54:41 +03:00
Jose Carlos Jesus
045333e890 [EXPLORER] Restore windows on second click of Show Desktop button (#7184)
On the second click on "Show desktop" button, the minimized windows
are not restored, because after the first click, and the addition to
`CSimpleArray<MINWNDPOS> g_MinimizedAll`, a call to `RestoreMinimizedNonTaskWnds()`
via `HSHELL_WINDOWACTIVATED` message clears the list of minimized windows.

Don't empty `g_MinimizedAll` while processing HSHELL_WINDOWCREATED or
HSHELL_WINDOWACTIVATED messages (bDestroyed=FALSE).

Empty `g_MinimizedAll` only when SendPulseToTray is called with bDestroyed=TRUE.

Addendum to e6bced7a35 and 70d7009ad9. CORE-19703 CORE-15369
2024-08-02 17:36:26 +03:00
Stanislav Motylkov
191d716cb2 [SHDOCVW] Update Russian (ru-RU) translation
Addendum to 69931a4a7d. CORE-19686
2024-08-02 16:38:11 +03:00
Stanislav Motylkov
1fe3564ba9 [SHDOCVW] Add missing file headers and fix existing
Addendum to 69931a4a7d and 960a305e5c.
2024-08-02 16:32:46 +03:00
Katayama Hirofumi MZ
b41146dd80 [BROWSEUI] Fix mistake (IDR_EXPLORERBAND -> IDR_FILESEARCHBAND) (#7210)
JIRA issue: CORE-19705
#7163 (960a305) made a regression on DllRegisterServer.
The cause is lacking IDR_EXPLORERBAND that
CSearchBar wants.
IDR_EXPLORERBAND for CSearchBar is a mistake.
- Use IDR_FILESEARCHBAND resource instead of
  IDR_EXPLORERBAND resource for CSearchBar class.
2024-08-02 08:47:46 +09:00
Katayama Hirofumi MZ
7e8de0466d [NTUSER] Use co_UserActivateKeyboardLayout in loading (#7200)
Refactoring on keyboard layout.
JIRA issue: CORE-19268
- Delete co_UserActivateKbl function.
Use co_UserActivateKeyboardLayout
  function instead of
  co_UserActivateKbl in
  co_IntLoadKeyboardLayoutEx
  function.
- Improve
  co_UserActivateKeyboardLayout.
2024-08-02 04:35:05 +09:00
Katayama Hirofumi MZ
ea936478f5 [BROWSEUI][SHELL32] Fix shell path parsing (#7202)
Fix shell path parsing.
JIRA issue: CORE-19693
JIRA issue: CORE-19694
- Fix CACListISF class by using
  PIDL attributes.
- Use min macro instead of max
  macro in Shell_ParseSpecialFolder
  function.
2024-08-02 04:16:02 +09:00
Katayama Hirofumi MZ
960a305e5c [BROWSEUI][SHDOCVW] Move CExplorerBand to shdocvw (#7163)
CExplorerBand should be
implemented in shdocvw.dll.
894ad4f17d/modules/rostests/apitests/com/shdocvw.c (L37)
JIRA issue: CORE-19698
- Move CExplorerBand code
  from browseui to shdocvw.
- Delete IDS_FOLDERSLABEL
  resource string from browseui.
- Add IDS_FOLDERSLABEL
  resource string to shdocvw.
- Adapt code to these changes.
- Add sdk/include/reactos/
 shdocvw_undoc.h.
- Implement IEILIsEqual function.
2024-08-02 04:12:02 +09:00
Katayama Hirofumi MZ
766d04d937 [SHELL32] shlexec: Do not expand without SEE_MASK_DOENVSUBST (#7206)
JIRA issue: N/A
Don't expand the application name
unless SEE_MASK_DOENVSUBST
is not specified.
2024-08-02 04:03:25 +09:00
Katayama Hirofumi MZ
51b662f90d [SHELL32] shlexec: Support SEE_MASK_FLAG_SEPVDM (#7205)
JIRA issue: N/A
Add CREATE_SEPARATE_WOW_VDM
flag to creation flags on
SEE_MASK_FLAG_SEPVDM.
2024-08-02 04:02:27 +09:00
Hermès Bélusca-Maïto
2d8c2cd8dc [SETUPLIB][ROSTESTS] Move setuplib unittests to rostests directory.
Addendum to commit 6289183dcd ; fixes our MSVC_x64 builder.
2024-07-31 13:46:00 +02:00
Thamatip Chitpong
cf4138fa24 [NTOS:CC] Protect CcFlushCache call with a mutex
Fix crash when the function was called concurrently for the same file by BTRFS driver.
CORE-19664
2024-07-31 18:07:49 +07:00
Thamatip Chitpong
0899f4b2b1 [NTOS:CC] CcFlushCache: Call CcRosReleaseVacb when CcRosFlushVacb fails
CcRosLookupVacb adds a refcount.
2024-07-31 18:07:49 +07:00
Hermès Bélusca-Maïto
71197535a1 [SETUPLIB][USETUP] Improve IsValidInstallDirectory() behaviour (#7187)
CORE-6149, CORE-6179, CORE-9529

See also commits d329fbebf (r66995), 7c3f4c94a (r68307), and 16daf6700.

The function verifies that each path component of the directory is
a valid 8.3 name, not . or .. nor empty. This behaviour is compatible
with what can be observed from Windows XP/2003 installer.
(To reliably test this with the Windows installer, you need to modify
the TXTSETUP.SIF DefaultPath value in the [SetupData] section.)
2024-07-31 11:41:24 +02:00
Hermès Bélusca-Maïto
6289183dcd [SETUPLIB_UNITTEST] Add unit-tests for the setuplib (#7187) 2024-07-31 11:41:23 +02:00
Hermès Bélusca-Maïto
785cc21598 [SETUPLIB][USETUP] Move IsValidPath() back into setuplib for reusability (#7186)
Reverts the IsValidPath() move done in commit 9c64b57dc.

- Turn IsValidPath() into a IsValidInstallDirectory() helper function
  available in the setuplib, so that it can also be used in the GUI setup.

- Introduce a IS_VALID_INSTALL_PATH_CHAR() macro.
2024-07-31 11:40:21 +02:00
Joachim Henze
a532a68d40 [RASDLG] ro-RO.rc: Fix 2 compiler warnings (#7197)
which have been introduced during 0.4.15-dev'ing when romanian resources were updated.

C:\buildbot_config\worker\Build_MSVC_x86\build\dll\win32\rasdlg\lang/ro-RO.rc(508) : warning RC4206 : title string too long; truncated at 256
C:\buildbot_config\worker\Build_MSVC_x86\build\dll\win32\rasdlg\lang/ro-RO.rc(521) : warning RC4206 : title string too long; truncated at 256

see MSVC builder https://build.reactos.org/#builders/1/builds/24117

The fix respects the rule 1 of the Romania translation notes also, same as Andreis commit did.

Also fix a few places where ".  " was the case (unintended double-space)
2024-07-31 03:48:09 +02:00
Katayama Hirofumi MZ
063e5e2514 [USER32] Simplify CliSaveImeHotKey (#7199)
Code diet. RegCreateKeyExW will
create sub-keys recursively, so
this code is okay.
JIRA issue: CORE-19268
Simplify registry key creation code.
2024-07-31 03:50:29 +09:00
Katayama Hirofumi MZ
dcf0788f59 [IMM32][SDK][USER32] Fix ImmFreeLayout parameter (#7195)
JIRA issue: CORE-19268
- Define ImmFreeLayout parameter special
  values (HKL_SWITCH_TO_NON_IME and
  HKL_RELEASE_IME) at <imm32_undoc.h>.
- Make ImmFreeLayout parameter an HKL.
2024-07-30 11:45:23 +09:00
Joachim Henze
68a2322ad4 [NOTEVIL] Addendum to last commit.
It did compile with GCC8.4.0, but not with MSVC2019
2024-07-29 22:23:00 +02:00
Joachim Henze
c76aac910a [NOTEVIL] Fix Kamil HornICek's name again so that it is compatible to Commodore 64
HAHA! Got you Stasm! :D
Just kidding!

In fact:
For the record the RES_LAST_INDEX was totally too small, someone forgot to increase it
for the last ~50 people that were added here.

I added 6 names today:
"Carl Bialorucki"
"Doug Lyons"
"Katayama Hirofumi MZ"
"Joachim Henze"
"Oleg Dubinskij"
"Whindmar Saksit"

For the record: I waited > 10 years to add myself to grab the cool number 66 all for myself!
2024-07-29 22:06:27 +02:00
Joachim Henze
470cef7bfd [REGEDIT] Deduplication and other formatting changes (#7193)
- Deduplicates unused IDC_REGEDIT MENU vs. actually used IDR_REGEDIT_MENU
- shrinks the binary size, GCC8.4.0dbg build shrinks from 1.052.672 -> 1.049.600 bytes
- that also solves a few FIXME's, e.g. in hu-HU, pl-PL, sl-SI, sq-AL, tr-TR, uk-UA
- translates the help-popup string in th-TH.rc
- slightly tweak some headers to be a bit closer to newstyle without going all the way
- also link to LPGL2.1+ in the source files to reduce the wall-of-text, also some other whitespace tweaks in those, but no functional change
- security.c: vertical-compactness-whitespace-changes aim to get HeapAlloc closer to HeapFree
- id-ID.rc: "&Data nilai" and "&Nama nilai" does exist in 4 dialogs, Harmonize them
- pt-PT.rc: add 2 missing accels in IDD_EDIT_STRING
- edit.c: 3x ARRAY_SIZE
- the most review-worthy change in the actual .h/.c files is clb.c the change from ClbWndClass.hInstance = hinstDLL, ClbWndClass.hIcon = NULL; to ClbWndClass.hInstance = hinstDLL; ClbWndClass.hIcon = NULL;
- clb.c the stripped INT_PTR-cast for EndDialog() was Co-authored-by: Katayama Hirofumi MZ <katayama.hirofumi.mz@gmail.com>
2024-07-29 21:19:10 +02:00
Stanislav Motylkov
d7ab15dcb4 [REACTOS] Fix Kamil Horníček's last name again
UTF-8 is allowed for the code files. Changing the encoding is not restricted
by the code of conduct and contributing guidelines.

Here's justification:
- https://git.reactos.org/?p=reactos.git&a=search&h=HEAD&st=grep&s=+Herm%C3%A8s
- https://git.reactos.org/?p=reactos.git&a=search&h=HEAD&st=grep&s=+Herv%C3%A9
- https://git.reactos.org/?p=reactos.git&a=search&h=HEAD&st=grep&s=+G%C3%A9+
- https://git.reactos.org/?p=reactos.git&a=search&h=HEAD&st=grep&s=+J%C3%A9r%C3%B4me

So we in fact do use UTF-8 encoding for the code files when attributing it
to the author(s) whose name contain non-ANSI characters.

As a core developer and repository maintainer, I have the right to change
file contents (including its encoding) without prior discussion, as long as
it corresponds with the repository's code of conduct.

I won't permit curtailment of my rights!

This is my answer and addendum to the commit b6bf110890,
which tries to disrespect me as a developer and maintainer.
2024-07-29 20:46:53 +03:00
Stanislav Motylkov
69562c40e2 [NOTEVIL] Convert resource file to UTF-8
This converts it from Windows-1252 to UTF-8.
Otherwise the changes to this file are not rendered correctly by GitHub.

As a core developer and repository maintainer, I have the right to change
file contents (including its encoding) without prior discussion, as long as
it corresponds with the repository's code of conduct.

I won't permit curtailment of my rights!

This is my answer and addendum to the commit b6bf110890,
which tries to disrespect me as a developer and maintainer.
2024-07-29 20:42:10 +03:00
Joachim Henze
b6bf110890 [REACTOS] Addendum to Stasms last commit
which was not PR'ed even.
especially to unbreak modules/rosapps/application/notevil

Addendum to
9cf6b253e7
2024-07-29 18:20:36 +02:00
Stanislav Motylkov
9cf6b253e7 [REACTOS] Fix Kamil Horníček's last name where possible 2024-07-29 17:58:02 +03:00
Václav Zouzalík
5b41e8298e [POWERCFG] Update Czech (cs-CZ) translation (#7182) 2024-07-29 17:06:44 +03:00
Václav Zouzalík
7bfae18184 [UXTHEME] Add Czech (cs-CZ) and Slovak (sk-SK) translations (#7179) 2024-07-29 14:19:37 +02:00
Václav Zouzalík
8ee524ac06 [RAPPS] Update Czech (cs-CZ) translation (#7177) 2024-07-29 14:18:32 +02:00
Václav Zouzalík
5e6b2daf15 [THEMEUI][INF] Update Czech (cs-CZ) translation (#7145) 2024-07-29 14:18:10 +02:00
Katayama Hirofumi MZ
73e7956563 [SHELL32] Follow-up of #7169 (#7175)
Follow-up of #7169
JIRA issue: CORE-19595
- Revert some code in
  RecycleBinGeneric::DeleteFile.
2024-07-29 20:37:42 +09:00
Katayama Hirofumi MZ
7dd081e945 [SDK][NTUSER] s/KLF_UNLOAD/KL_UNLOAD/ (#7196)
JIRA issue: CORE-19268
- Rename KLF_UNLOAD as KL_UNLOAD.
- Move it from win32ss/user/ntuser/input.h
  to sdk/include/reactos/undocuser.h.
- Add UKL_NOACTIVATENEXT constant
  and use it.
2024-07-29 19:30:49 +09:00
Katayama Hirofumi MZ
90a5b9a83f [SHELL32] RecycleBin5: Make it C++ (#7174)
Modernize code.
JIRA issue: CORE-19595
Rewrite RecycleBin5 in C++.
2024-07-29 09:20:36 +09:00
Katayama Hirofumi MZ
22b913928f [SHELL32] RecycleBin5Enum: Make it C++ (#7173)
Modernize code.
JIRA issue: CORE-19595
Rewrite RecycleBin5Enum in C++.
2024-07-29 08:14:02 +09:00
Katayama Hirofumi MZ
ec24b54731 [IMM32][NTUSER] Use HandleToUlong, UlongToHandle etc. macros (#7180)
Respect coding standard.
JIRA issue: N/A
- Use HandleToUlong, UlongToHandle,
  UlongToPtr etc. macros for type
  casting.
- Remove redundant casts.
2024-07-29 07:15:44 +09:00
Joachim Henze
0cd20b7a1c [PROGMAN] Tweak AUTORADIOBUTTONS (#7188)
AUTORADIOBUTTON implies BS_AUTORADIOBUTTON.
This style is shorter in code, and has the tendency to shrink the binary size also
when applied consistently. In case of progman the shrinking is not enough to reach the
next lower quantum of binary size though, GCC8.4.0dbg sticks to 192.512 bytes.
Because it's simply not enough of those buttons, since we have no localization for that module.
No change in behavior in that dlg.
2024-07-28 22:08:57 +02:00
Joachim Henze
3f1c1c0557 [CALC] *.rc: AUTORADIOBUTTONS, ja-JP: Add accel &V (#7190)
* [CALC] *.rc: AUTORADIOBUTTONS, ja-JP: Add accel &V

- Tweaks AUTORADIOBUTTONS, code shorter, binary smaller

calc.exe shrinks for GCC8.4.0dbg cfg:
530.432 -> 527.360 bytes

I checked, that there is no change in behavior with those radiobuttons,
it is intended (and same on MS Windows Calc that we can not jump from one button
to another by arrow-keys here, and also not with tab if any of those radiobuttons
has keyboard focus.

- ja-JP: Add missing accel &V in main menu

- in some headers I worked slightly towards the modern style
  without going all the way yet. This also fixes the common ukraiaiaiaiaiaiainian typo
2024-07-28 22:02:54 +02:00
Hermès Bélusca-Maïto
2136409fda [USETUP] InstallDirectoryPage(): Pressing ESC erases the whole path line (#7185) 2024-07-26 22:58:02 +02:00
Joachim Henze
4956e249db [EVENTVWR] IDD_LOGPROPERTIES Add some non-MS-accelerators (#7111)
- Add some non-MS-accelerators into IDD_LOGPROPERTIES for some functionality where our eventvwr does outperform the MS version. We do have some edit-fields selectable, where MS decided to not have them selectable. Can be used for copying out text.
- Therefore we considered that it may be beneficial to have accelerators for them as well.
- I used &S &C &E &A (instead of Katayamas former &S &C &M &A because the M is already in use in that dlg) where that did fit, and tried to manage the other languages without introducing collisions
- I also added a textual disclaimer on how to deal with that for the translators and with the aim to protect that diff to MS
also fix some inconsistencies in the length of the IDS_COPY lines for some languages
- fix some text cutoff for el-GR,pt-BR, pt-PT at the radio-buttons
- improve german Help-accel
- add some FIXMEs where some langs had accel collisions, let the native speakers with their native 2k3sp2 handle them later
2024-07-26 20:35:03 +02:00
Katayama Hirofumi MZ
a905ba2717 [GITHUB] Follow-up of #7181 (155a7c7)
Add base/applications/ctfmon/**.
JIRA issue: CORE-19268
2024-07-26 18:49:34 +09:00
Katayama Hirofumi MZ
155a7c734a [GITHUB] labeler.yml: Add 'input method' label (#7181)
Automatically add input method label.
JIRA issue: CORE-19268
Modify .github/labeler.yml.
2024-07-26 05:07:40 +09:00
Whindmar Saksit
e87f1d5d91 [RAPPS] Uninstall empty directories after its children (#7164) 2024-07-25 00:22:12 +02:00
Whindmar Saksit
a8b33400a2 [INF][BOOTDATA][SETUPAPI] Use Inf instead of Cmd.exe to register IExplore (#7171)
This moves the IExplore registration from cmd.exe (established in 4a4060ce3c (r52196) for CORE-1370) to syssetup.inf to avoid console popups on first boot.
2024-07-24 22:55:29 +02:00
Ethan Rodensky
7f021debdc [THEMES][MIZU] Add support for themed Show Desktop button (#5744)
Also double-check button sizing and visual padding.

Addendum to df4eb08b031. CORE-15369
2024-07-24 11:08:38 +03:00
Ethan Rodensky
3833d927e4 [THEMES][LAUTUS] Add support for themed Show Desktop button (#5744)
- Also fix vertical taskbar layout.
- Double-check button sizing and visual padding.

Addendum to df4eb08b031. CORE-15369 CORE-11698
2024-07-24 11:08:37 +03:00
Ethan Rodensky
70d7009ad9 [EXPLORER] Improve appearance of Show Desktop button (#5744)
While functional, Katayama's show desktop button left much to be desired
in the realm of appearances. This commit brings improvements for it:

- When using the classic theme, the Show Desktop button now appears
  more faithful to its Microsoft counterpart, emblazoned with an icon,
  and encased in a border only when hovered or pressed.
- With a visual style applied, the button behaves in one of two ways:
  - If present, the Show Desktop button now properly uses the relevant
    information from the visual style, just like on Windows 7.
  - Otherwise, the Show Desktop button uses an icon akin to when the
    classic theme is used, but with the button background's appearance
    repurposed from the taskbar toolbar buttons, which are guaranteed to
    exist in any Windows XP or Vista visual style you can find out there.

ReactOS's own Lautus and Mizu visual styles will be updated in the
following commits to utilize these features, while Lunar and Modern visual
styles left untouched to display Show Desktop button with icon instead.

CORE-15369
2024-07-24 11:08:36 +03:00
Katayama Hirofumi MZ
6910fa624f [SHELL32] RecycleBinGeneric: Make it C++ (#7169)
Modernize code.
JIRA issue: CORE-19595
Rewrite RecycleBinGeneric in C++.
2024-07-24 12:16:37 +09:00
Katayama Hirofumi MZ
72116d0558 [SHELL32] RecycleBinGenericEnum: Make it C++ (#7167)
Modernize code.
JIRA issue: CORE-19595
Rewrite RecycleBinGenericEnum
in C++.
2024-07-24 11:24:56 +09:00
Whindmar Saksit
d5aca44042 [SHELL32] Forward CDefaultContextMenu::InvokeCommand parameters to ShellExecute (#7172) 2024-07-23 18:58:02 +02:00
Katayama Hirofumi MZ
876d1c2dc8 [SHELL32] Use DECLARE_INTERFACE_ for IRecycleBin5 (#7168)
Improve interoperability between
C and C++.
JIRA issue: CORE-19595
Rewrite IRecycleBin5 interface
by using STDMETHOD and
DECLARE_INTERFACE_ macro.
2024-07-23 22:21:11 +09:00
Katayama Hirofumi MZ
166c7ee33c [SHELL32] CRecycleBin: Add backshash if path is drive only (#7170)
JIRA issue: CORE-18006
If the original location is drive
only (C:, D: etc.), then append a
backslash.
2024-07-23 15:46:18 +09:00
Katayama Hirofumi MZ
b40046f426 [SHELL32] ShellExecCmdLine: Use SearchPathW (#7166)
Based on @Doug-Lyons
shlexec-winR-fonts.patch.
#4932 (f691efe) introduced
some regression.
JIRA issue: CORE-19688
Call SearchPathW function before
PathFindOnPathExW call in
ShellExecCmdLine function.
2024-07-23 15:08:16 +09:00
Whindmar Saksit
6219a1abe5 [BROWSEUI][SHELL32] Ignore navigation requests during browser destruction (#7161)
PR #7141 causes calls to IShellBrowser::BrowseObject while the shell browser is in the middle of destruction and the ShellView ListView has already been destroyed and DefView is not prepared for this.
2024-07-22 21:25:58 +02:00
Whindmar Saksit
f6a25d48d5 [SHELL32] Invoke the ItemIDList of shortcuts (#7152)
Invoking the IDList as if the target was double-clicked in Explorer fixes shortcuts to control panel items (both .cpl and ShellFolder types).

CORE-19690
2024-07-22 19:31:48 +02:00
Whindmar Saksit
a45d375f60 [RAPPS] Fix CAB codepage handling (#7165)
- MultiByteToWide parameter bug.
- Use CP_UTF8 to convert cab filenames if the UTF attribute is set.
2024-07-22 16:20:31 +02:00
Katayama Hirofumi MZ
7f0e8a3697 [SHELL32] RecycleBinGenericEnum: Convert tabs to spaces
CORE-19595
2024-07-22 13:24:12 +09:00
Eric Kohl
f24fbb655e [SETUPAPI] Implement CM_Dup_Range_List() and CM_Test_Range_Available() 2024-07-21 16:32:28 +02:00
Katayama Hirofumi MZ
b6b82fee3f [SHELL32] Refactor CShellLink::DoOpen (#7149)
Reduce code. Modernize code.
JIRA issue: N/A
Use CStringW and CComHeapPtr<WCHAR> for
dynamic allocation.
2024-07-21 10:08:16 +09:00
Eric Kohl
894ad4f17d [SETUPAPI] Implement CM_Free_Res_Des_Handle() and improve CM_Get_Next_Re_Des_Ex() 2024-07-20 22:20:36 +02:00
Katayama Hirofumi MZ
39077a7bf0 [BROWSEUI][SHDOCVW][SDK] Fix INamespaceProxy interface (#7156)
Use correct interface definition for standardization.
JIRA issue: CORE-19686
Use INamespaceProxy interface
that is documented in the
Microsoft official site
( https://learn.microsoft.com/en-us/previous-versions/windows/internet-explorer/ie-developer/platform-apis/ee318424%28v=vs.85%29 )
and Windows 10 PSDK
(see um/ienamespacecontrol.idl file).
2024-07-20 19:59:48 +09:00
Serge Gautherie
c7a4984595 [MMEBUDDY][MMIXER] Fix NDEBUG support (#7039)
- Remove unwanted value.
- Use add_compile_definitions().
- NDEBUG "depends" on DBG.
2024-07-20 12:05:56 +02:00
Katayama Hirofumi MZ
c1c91f2a1a [SHELL32_APITEST] SHParseDisplayName: Add tests for shell:windows\system32 etc. (#7157)
The shell protocol path needs
special parsing. We didn't
implement it correctly.
JIRA issue: CORE-19693
- Add tests for
  shell:windows\system32
  and shell:windows\fonts.
2024-07-19 22:41:02 +09:00
Katayama Hirofumi MZ
070d353326 [BOOTDATA] Fix Internet Browser icon for LiveCD (#7153)
JIRA issue: CORE-19202
Add CLSID_Internet settings to
boot/bootdata/livecd.inf.
2024-07-19 22:10:29 +09:00
Whindmar Saksit
802dc9714b [SHELL32][SHLWAPI][BROWSEUI][EXPLORER] Save folder view state (#7127)
Saves/restores the Listview icon mode, columns and sort info per-folder.
2024-07-19 14:40:20 +02:00
Whindmar Saksit
fa95a96e9b [SHELL32] Use correct PIDL and name when dropping to create a shortcut (#6999)
Ask for the editing name instead of the parsing name to get a suitable shortcut name for PIDL items.
2024-07-19 13:37:53 +02:00
Katayama Hirofumi MZ
089788a52a [SHELL32][SHELL32_APITEST] ShellExecute should accept invalid directory (#7150)
Implement parsing SHELLEXECUTEINFO.lpDirectory.
Enhance ShellExecuteEx testcase for invalid directory.
2024-07-19 17:40:36 +09:00
Tomáš Veselý
466a19817f [COMCTL32][USER32] STATIC: Fix grayed drawing (#7024)
CORE-15298

Use DrawTextW() to correctly render disabled grayed text.
Applies to both dll\win32\comctl32\static.c and win32ss\user\user32\controls\static.c

A similar solution is already used by button.c!BUTTON_DrawLabel().
2024-07-18 22:03:36 +02:00
Mark Jansen
7f31cdc18f [RAPPS] Add new Let's Encrypt issuer certificate
CORE-19666
2024-07-18 21:59:14 +02:00
Serge Gautherie
c6298321a3 [NTUSER] Fix IntDefWindowProc()'s WM_MOUSEACTIVATE case (#7038)
CORE-17545

Clang 13.0.1 was warning about broken 'Ret' handling.
Also remove an unrelated redundant 'else ...'.

Addendum to commit 6dfa71c487 (r68904).
2024-07-18 20:35:04 +02:00
Serge Gautherie
5385f32794 [NTUSER] defwnd.c: Trivial formatting fixes (#7038)
And (re)move 2 'break;'.
2024-07-18 20:33:11 +02:00
Mas Ahmad Muhammad
69b382a1ac [TRANSLATION] Update Indonesian (id-ID) translation (#7147)
Update Indonesian Translation for explorer.exe shell dlls:
explorer, browseui, ieframe, shell32.
2024-07-18 18:18:07 +02:00
Jose Carlos Jesus
35114ef062 [NETPLWIZ] Fix typos in pt-PT translation (#7122)
- Fix typos.
- Add file header.
2024-07-18 18:15:10 +02:00
Jose Carlos Jesus
2e0e8a5931 [DESKADP] Improve pt-PT translation (#7121)
- Improve translation;
- Add missing acceleration key;
- Add file header.
2024-07-18 18:14:42 +02:00
Jose Carlos Jesus
8ab444fd6e [NETSHELL] Improve portuguese (pt-PT) translation (#7120)
- Improve translation;
- Fix typos in rc file;
- Add file header.
2024-07-18 18:13:27 +02:00
Václav Zouzalík
ad9e73eeea [ACPPAGE] Update Czech (cs-CZ) translation (#7110) 2024-07-18 18:11:53 +02:00
Václav Zouzalík
b21be48ee4 [CRYPTEXT] Add Czech (cs-CZ) and Slovak (sk-SK) translations (#7109) 2024-07-18 18:11:14 +02:00
Jose Carlos Jesus
44a11cbc7f [USRMGR] Add file header. Improve pt-PT translation. (#7099)
- Improve translation;
- Add missing accel keys;
- Readjust text window width to fit all text;
- Add file header.
2024-07-18 18:10:10 +02:00
Jose Carlos Jesus
9552e934d4 [MMSYS] Add file hdr. Improve pt-PT translation. Adjust window text length. (#7057)
- Improve translation;
- Adjust text length;
- Add file header.
2024-07-18 18:09:31 +02:00
Václav Zouzalík
6fff27d3f5 [WINLOGON] Update Slovak (sk-SK) translation (#7050) 2024-07-18 18:08:25 +02:00
Jose Carlos Jesus
187be834c0 [SHELL32] Update Portuguese (pt-PT) translation (#6939)
- Update translation;
- Fix typos;
- Add file header.

Co-authored-by: Stanislav Motylkov <x86corez@gmail.com>
Co-authored-by: Joachim Henze <joachim.henze@reactos.org>
2024-07-18 18:08:09 +02:00
Katayama Hirofumi MZ
69931a4a7d [SHDOCVW] Initial implementation of Favorites bar (#7146)
First step to Favorites bar support.
Menu: [View]→[Explorer bar]
→[Favorites]

JIRA issue: CORE-19686

- Add CFavBand.cpp, CFavBand.h,
  favband.rgs, and resource.h files.
- Modify CMakeLists.txt.
- Add IDS_ADD and IDS_ORGANIZE
  resource strings.
- Implement empty Favorites bar.
- The treeview is not populated yet.
- The Add button is not
  implemented yet.
2024-07-18 23:21:40 +09:00
Hermès Bélusca-Maïto
61b7fb99eb [PARTMGR] Filter some currently-unimplemented MountMgr MOUNTDEV notifications.
CORE-17200

Helps reducing debug log noise like:
```
(drivers\storage\port\scsiport\ioctl.c:542) unknown ioctl code: 0x4D0018
```

The other notifications are already implemented there.
These are handled by the volume manager, which is currently
stubbed into ReactOS' partition manager.

See commit ed27d733f7 for what the deprecated versions
of IOCTL_MOUNTDEV_LINK_[CREATED|DELETED] are all about.
2024-07-17 17:24:26 +02:00
Whindmar Saksit
738c8fc27c [EXPLORER] Execute RunOnce[Ex] before desktop is created (#7143)
CORE-19501
2024-07-17 12:42:22 +02:00
Whindmar Saksit
28cb0995e6 [REGEDIT] Handle Ctrl+Backspace in AddressBar (#7140)
Notes:
- Also fixes a bug where Del does not work in the AddressBar nor during Tree/List label edit because it gets eaten by the accelerator.
- Removed the code that handles CtrlA in the AddressBar because the Edit control does this out of the box.
2024-07-17 12:40:32 +02:00
Katayama Hirofumi MZ
075894bc44 [CMD] Fix GetPathCase function (#7113)
This GetPathCase function does
resolve the path with wildcard
pattern, and fix the alphabet
cases, by using
kernel32!FindFirstFile function.
Enable wildcard at the middle
of the file path in cmd.exe by
fixing this function.

JIRA issue: CORE-6609
JIRA issue: CORE-13906

- Fix GetPathCase function for
  supporting wildcard at the
- middle of the file path.
- Make GetPathCase string-safe.
- Optimize GetPathCase.
2024-07-17 08:38:33 +09:00
Katayama Hirofumi MZ
ec2721fd3e [CMD] Batch: Don't ClearBatch if bSameFn (#7112)
Recursing batch was prevented by
ClearBatch call.
JIRA issue: CORE-18093
- Check bSameFn variable.
- If it was TRUE, don't call ClearBatch
  function.
2024-07-17 08:34:15 +09:00
Whindmar Saksit
39305cc79c [SDK][MC] errcodes.mc: Added more COM error messages (#7142) 2024-07-16 21:52:23 +02:00
Andrei Miloiu
4a13f1ec3c [OLEDLG] Update Romanian (ro-RO) translation (#6774) 2024-07-16 21:45:10 +02:00
Andrei Miloiu
9f9431bc7b [COMCTL32] Update Romanian (ro-RO) translation (#6874) 2024-07-16 21:42:40 +02:00
Andrei Miloiu
f200a34964 [SETUPAPI] Update Romanian (ro-RO) translation (#6843) 2024-07-16 21:41:46 +02:00
Andrei Miloiu
6d7e654a81 [NETPLWIZ] Update Romanian (ro-RO) translation (#6842) 2024-07-16 21:40:54 +02:00
Andrei Miloiu
fc7a2179d1 [USERENV] Update Romanian (ro-RO) translation (#6831) 2024-07-16 21:40:21 +02:00
Andrei Miloiu
d8fb869de0 [INF] Update Romanian (ro-RO) translation (#6859) 2024-07-16 21:38:44 +02:00
Andrei Miloiu
dd55981d3d [NETSHELL] Update Romanian (ro-RO) translation (#6865) 2024-07-16 21:37:29 +02:00
Doug Lyons
fb87f0f88c [NTUSER] Fix popup menu position when menu item is half off the left side of the screen (#7108)
[CORE-16729](https://jira.reactos.org/browse/CORE-16729)
2024-07-16 14:36:45 -05:00
Andrei Miloiu
61286667f4 [MPR] Update Romanian (ro-RO) translation (#6866) 2024-07-16 21:36:22 +02:00
Andrei Miloiu
479c5499d1 [MSACM32] Update Romanian (ro-RO) translation (#6875) 2024-07-16 21:35:27 +02:00
Andrei Miloiu
f33186b15b [AVIFIL32] Update Romanian (ro-RO) translation (#6876) 2024-07-16 21:33:35 +02:00
Andrei Miloiu
0d175e2f8f [MSVFW32] Update Romanian (ro-RO) translation (#6878) 2024-07-16 21:30:17 +02:00
Andrei Miloiu
20110e10c5 [POWERCFG] Update Romanian (ro-RO) translation (#6745) 2024-07-16 21:29:39 +02:00
Andrei Miloiu
e116c2c735 [ZIPFLDR] Update Romanian (ro-RO) translation (#6744) 2024-07-16 21:28:10 +02:00
Andrei Miloiu
21b65958dc [SNDREC32] Update Romanian (ro-RO) translation (#6733) 2024-07-16 21:24:07 +02:00
Andrei Miloiu
fc7bc3bbbd [LOCALMON] Update Romanian (ro-RO) translation (#6877) 2024-07-16 21:20:16 +02:00
Andrei Miloiu
79b512006f [INETCPL] Update Romanian (ro-RO) translation (#6693) 2024-07-16 21:17:17 +02:00
Andrei Miloiu
9b5625376f [MAIN] Update Romanian (ro-RO) translation (#6707) 2024-07-16 21:14:49 +02:00
Andrei Miloiu
2229991bc0 [CREDUI] Update Romanian (ro-RO) translation (#6732) 2024-07-16 21:09:25 +02:00
Andrei Miloiu
9db1b8b375 [SSSTARS] Update Romanian (ro-RO) translation (#6698) 2024-07-16 21:04:20 +02:00
Andrei Miloiu
8248f091d7 [TELEPHON] Update Romanian (ro-RO) translation (#6694) 2024-07-16 21:01:31 +02:00
Andrei Miloiu
7f26a3969b [LOGON] Update Romanian (ro-RO) translation (#6692) 2024-07-16 20:58:05 +02:00
Andrei Miloiu
8f9c1f9fd5 [INPUT] Update Romanian (ro-RO) translation (#6667) 2024-07-16 20:57:19 +02:00
Andrei Miloiu
1ab988b520 [CHARMAP] Improve Romanian (ro-RO) translation (#6665) 2024-07-16 20:41:50 +02:00
Andrei Miloiu
0d0db4a796 [NEWDEV] Update Romanian (ro-RO) translation (#6663) 2024-07-16 20:38:49 +02:00
Andrei Miloiu
ed84106c60 [HDWWIZ] Update Romanian (ro-RO) translation (#6645) 2024-07-16 20:36:33 +02:00
Andrei Miloiu
5b910bd147 [EXPLORER_OLD] Update Romanian (ro-RO) translation (#6643) 2024-07-16 20:31:57 +02:00
Andrei Miloiu
a132aab0ed [ACCESS] Update Romanian (ro-RO) translation (#6629) 2024-07-16 20:29:54 +02:00
Andrei Miloiu
61afc07a30 [EXPLORER] Update Romanian (ro-RO) translation (#6642) 2024-07-16 20:29:28 +02:00
Andrei Miloiu
cab86826e9 [MSGINA] Update Romanian (ro-RO) translation (#6536) 2024-07-16 20:28:05 +02:00
Andrei Miloiu
f7de1bf5c2 [TASKMGR] Update Romanian (ro-RO) translation (#6614) 2024-07-16 20:23:55 +02:00
Andrei Miloiu
56b4f9b61a [WINMINE] Update Romanian (ro-RO) translation (#6611) 2024-07-16 20:22:27 +02:00
Andrei Miloiu
5f2fecf663 [SPIDER] Update Romanian (ro-RO) translation (#6602) 2024-07-16 20:21:18 +02:00
Andrei Miloiu
3ac92d4c2e [RASDLG] Update Romanian (ro-RO) translation (#6537) 2024-07-16 20:20:46 +02:00
Andrei Miloiu
6735a09911 [WORDPAD] Update Romanian (ro-RO) translation (#6531) 2024-07-16 20:13:20 +02:00
Andrei Miloiu
8d86c2c943 [MMSYS] Update Romanian (ro-RO) translation (#6510) 2024-07-16 20:11:48 +02:00
Whindmar Saksit
0ba96ad05e [SHELL32] Don't update statusbar during drag operation (#7144) 2024-07-16 20:01:59 +02:00
Katayama Hirofumi MZ
580824ae1f [BROWSEUI] CExplorerBand: Refresh on change notification (#7141)
Update UI on filesystem change.
JIRA issue: CORE-12619
- Add Refresh and RefreshRecurse
  methods.
- Add IsTreeItemInEnum,
  TreeItemHasThisChild,
  GetItemEnum, and
  ItemHasAnyChild helper
  methods.
- Delete RenameItem, DeleteItem
  and RefreshTreePidl methods
  and _ReparsePIDL function.
- Add WM_TIMER message
  handler (OnTimer) to delay
  refreshing.
- Refresh TreeView on change
  notification.
2024-07-16 21:21:41 +09:00
Katayama Hirofumi MZ
6f277e9766 [SHELL32] shlexec.cpp: Parse 'shell:' and '::{CLSID}' (#7126)
JIRA issue: CORE-14177
JIRA issue: CORE-17482
- Add SHELL_InvokePidl helper
  function.
- Call SHParseDisplayName and
  SHELL_InvokePidl in a specific
  condition.
2024-07-15 21:16:04 +09:00
Eric Kohl
c1b9bb5700 [UMPNPMGR] Add requirements list support to PNP_GetFirstLogConf and PNP_GetNextLogConf 2024-07-14 16:57:17 +02:00
Eric Kohl
ca05f561c1 [IPCONFIG] Fix several typos
- Fix typos in the Release and Renew functions. The typo caused the functions to work on the first adapter only.

- Fix a typo in the german translation.
2024-07-14 15:08:22 +02:00
Eric Kohl
36bf934fbe [NDK][REGEDIT][ROSTESTS:ACPI] Make IO_RESOURCE_REQUIREMENTS_LIST accessible to user mode code
- Copy IO_RESOURCE_REQUIREMENTS_LIST to the NDK.
- Remove local copies of IO_RESOURCE_REQUIREMENTS_LIST
2024-07-14 14:31:41 +02:00
Eric Kohl
cb582efdd2 [DISKPART] List all available file systems in the FILESYSTEMS command 2024-07-14 11:18:20 +02:00
Katayama Hirofumi MZ
0574987b20 [BROWSEUI] Use override keyword and STDMETHODIMP_
CORE-19469
2024-07-14 10:59:10 +09:00
Katayama Hirofumi MZ
7bec458077 [BROWSEUI] CExplorerBand: Use SHCNRF_NewDelivery method (#7133)
Refactoring. Optimize for speed.
JIRA issue: CORE-12619
- Update file headers.
- Make some parameter type LPITEMIDLIST
  LPCITEMIDLIST (Add const).
- Add OnChangeNotify method.
- Use SHCNRF_NewDelivery method for speed.
- Add some SAL annotations.
2024-07-14 10:50:18 +09:00
George Bișoc
4093d0e164 [NTUSER] Estabilish power callouts and invoke the cleanup procedure when unloading Win32k 2024-07-13 11:30:19 +02:00
George Bișoc
181b666fc4 [NTUSER] Stubplement the Win32 power manager
In order for the NT power manager to interact with the Win32 subsystem (thus the whole rest of the system), the Win32 kernel-mode subsystem provides a mechanism that communicates with the kernel power manager via power callouts (aka power requests as per Windows' PDB symbols).
Such mechanism enters in action as soon as Win32 callout routines are estabilished with the PsEstablishWin32Callouts() function.

The NT power manager, the power policy manager respectively, invokes a power callout to denote an exceptional phenomena as a result of power policies or capabilities changes, turning ON/OFF the display, a system time change has occurred, etc.
Such scenarios are described as power events of which the NT power manager sends a WIN32_POWEREVENT_PARAMETERS packet to Win32k via the estabilished "PowerEventCallout" pointer function callout.
For other callouts that inform the Win32 subsystem of impeding power state changes across the system or devices, these are sent as WIN32_POWERSTATE_PARAMETERS packets with its own separate callout.

The purpose of such mechanism is to give Win32k the opportunity to do power related tasks and alert every application of such power events in accordance with what it gets notified by the NT power manager.
Currently this patch stubplements this mechanism in ROS, it is only just the barebones for now. The development of the Win32 power manager will go in parallel with the kernel power manager development (expand, improve, fix the code of issues that whatever may arise).
So far only the PsW32SystemTime power event is implemented for the moment being. This work was decoupled from PR #5719 to avoid clobbering it too much.

=== TODO ===

- Implement power states management communication with the kernel power manager
- Implement the rest of the power events in IntHandlePowerEventWorker
- Implement power event handling in CSRSS (or WinSrv?) which handles any of the events that could not be handled by Win32k otherwise
- Estabilish the power state callout in PsEstablishWin32Callouts() (currently there is no a pointer function that gets assigned to such callout)

CORE-18969
2024-07-13 11:30:19 +02:00
George Bișoc
560428e250 [WIN32K] Add debug switch for the Win32 power manager 2024-07-13 11:30:07 +02:00
Hermès Bélusca-Maïto
4028de8c55 [APPHELP] SdbGUIDToString(): use sizeof(WCHAR) instead of '2' (#7137) 2024-07-11 18:28:54 +02:00
Hermès Bélusca-Maïto
b3094aa001 [APPHELP] Fix MAX_GUID_STRING_LEN define; use it for one buffer (#7137) 2024-07-11 18:28:43 +02:00
Oleg Dubinskiy
04f04efc96 [NTGDI] FontLink: avoid invalid font name buffer freeing (#7131)
Don't free the linked font name if it's already NULL. Since it is allocated only once (when loading the font name from Registry), it should be freed only once too. All subsequent freeing attempts will result in invalid pool freeing.
This fixes the 0xC2 BAD_POOL_CALLER bugcheck when trying to resize window (and draw more text) from soundcloud.com in K-Meleon 76.5.4 Goanna engine and when switching between channels (during redrawing the text) in DiscordMessenger v1.06 Beta.
Addendum to 0f9e889736.
CORE-19681
2024-07-11 14:27:26 +02:00
Hermès Bélusca-Maïto
9e07d0cc74 [PARTMGR] Trigger mount points removal when a partition/volume is deleted (#7034)
CORE-18139

When a partition is created, PartMgr notifies the volume manager
(FTDisk on Windows <= 2003, VolMgr on Vista+) of its presence.
(Note that currently in ReactOS, our partmgr does the job of both
PartMgr *AND* VolMgr.)
The VolMgr then sends a `GUID_DEVINTERFACE_VOLUME` PnP notification,
which is handled by the mount manager (MountMgr) as part of a
`GUID_DEVICE_INTERFACE_ARRIVAL` notification:
```
MountMgr!MountMgrMountedDeviceNotification -> MountMgrMountedDeviceArrival
followed by
MountMgr!MountMgrTargetDeviceNotification
```

When a partition is deleted, via e.g. Disk Management or DiskPart,
it can be observed, on Windows, that the PartMgr gets notified by
the PnP manager, as part of QueryDeviceRelations. Before actually
removing the partition, it notifies the VolMgr. The latter invalidates
any volume mounted on that partition (`*PartitionRemoved*` functions
for basic volumes), then requests (`*DeleteMountPoints` function)
the MountMgr to delete all the mount points associated to the volume:
```
VolMgr!*DeleteMountPoints
-> MountMgr!MountMgrDeviceControl -> MountMgrDeletePoints
```
**** THIS is the new functionality that is implemented for ReactOS ****
**** in the present commit.                                        ****

Following this, a subsequent PnP notification is sent, which calls
```
MountMgr!MountMgrTargetDeviceNotification
-> MountMgr!MountMgrMountedDeviceRemoval
```
(Note that this observation somewhat invalidates the modification
made in ReactOS commit 62a4f9d42b : our MountMgr placed in Windows
*WOULD* receive a `GUID_TARGET_DEVICE_REMOVE_COMPLETE` target-device
notification...)

Finally, a `GUID_DEVICE_INTERFACE_REMOVAL` PnP notification is sent
to the MountMgr:
```
MountMgr!MountMgrMountedDeviceNotification
-> MountMgr!MountMgrMountedDeviceRemoval
```
2024-07-11 13:46:52 +02:00
Katayama Hirofumi MZ
465b9cef25 [SHELL32] ShellAboutW: IDD_ABOUT offset is (20, 20) (#7132)
JIRA issue: CORE-17084
Change IDD_ABOUT resource
dialog offset to (20, 20).
2024-07-11 17:20:45 +09:00
Katayama Hirofumi MZ
0fbf4fb8fb [BROWSEUI] Fix confusion of StrDupW and SHStrDupW (#7135)
Fix memory leaks.
SHStrDupW uses CoTaskMemAlloc.
StrDupW uses LocalAlloc.
They are different.
JIRA issue: N/A
Use SHStrDupW instead of StrDupW.
2024-07-11 17:19:57 +09:00
Katayama Hirofumi MZ
28e7af7531 [FONTEXT] Fix CFontExt::GetDisplayNameOf for SHGDN_FORPARSING (#7134)
Fix font enumeration and AutoComplete on %WINDIR%\Fonts.
JIRA issue: CORE-9281
"Replace if (dwFlags ==
SHGDN_FORPARSING)" with
"if (dwFlags & SHGDN_FORPARSING)".
2024-07-11 17:18:01 +09:00
Katayama Hirofumi MZ
a943bb4613 [CMD] Improve Japanese (ja-JP) translation
CORE-18706
2024-07-11 12:36:47 +09:00
Katayama Hirofumi MZ
18acf79551 [CMD] Prepare for localization by using resource strings (#7125)
Promote localization of cmd.exe.
JIRA issue: CORE-19680
Add some resource strings.
Use them instead of raw strings.
2024-07-11 09:12:12 +09:00
Hermès Bélusca-Maïto
c02289a08a [UXTHEME][NTUSER] Check class style for CS_NOCLOSE instead of window style (#7130)
CORE-11569, CORE-19684

Addendum to commit 71bed0f5f8 (PR #7123).

The problem in uxtheme was introduced in commit 685084b63c (as part
of a fix for CORE-17203), because it was a copy-paste and adaptation
of the corresponding code in `ntuser/nonclient.c!NC_DoButton()`.

The bugs in `win32ss/user/ntuser/defwnd.c` (and `nonclient.c` as fixed by
the previous commit) were in turn introduced from the migration of menu
and related code from user32 to win32k, see commit 6dfa71c487 (r68904).
2024-07-10 19:49:09 +02:00
Hermès Bélusca-Maïto
957bb89548 [CMD] Implement /F[:ON|:OFF] switch for file/path completion (#7118)
CORE-8002

The switch enables or disables file/path completion in a unique
CMD instance. The defaulted values for the completion characters
are those mentioned in CMD's help (see also MSDN[^1]):
  File: Ctrl-F (0x06); Directory: Ctrl-D (0x04)

Manual tests show that only /F:OFF explicitly disables completion.
Otherwise, using /F(anything else following) always enables completion
with the specific values described above.

[^1]: For additional details, see also
https://technet.microsoft.com/en-us/library/cc978715.aspx
https://technet.microsoft.com/en-us/library/cc940805.aspx
2024-07-10 16:58:28 +02:00
Katayama Hirofumi MZ
9f68f482c1 [BROWSEUI] Check focus before opening AutoComplete (#7128)
Unexpectedly remaining
AutoComplete list is annoying.
JIRA issue: CORE-19685
- Add CAutoComplete::
  m_bEditHasFocus to watch
  focus.
- Update m_bEditHasFocus on
  WM_SETFOCUS and
  WM_KILLFOCUS messages on
  Edit window procedure.
- Don't open AutoComplete list
  when m_bEditHasFocus was
  FALSE.
2024-07-10 22:47:02 +09:00
Doug Lyons
71bed0f5f8 [NTUSER] Check class style for CS_NOCLOSE instead of window style (#7123)
Change 'pWnd->style' to 'pWnd->pcls->style' to check for CS_NOCLOSE.
Incorrect struct field was used for checking previously.

Fixes a bug with Ad Muncher that did not close when clicking on the window
title "X" button while being used with a Classic window style theme.
Patch by I_Kill_Bugs. CORE-11569
2024-07-10 13:30:53 +03:00
Katayama Hirofumi MZ
736d81938a [CMD] DATE: Output 'The current date is: ' (#7117)
Make DATE command output compatible.
JIRA issue: CORE-13848
- Add STRING_DATE_NOW resource string for
  localizing "The current date is: ".
- Output by ConOutResPuts function.
2024-07-10 11:53:21 +09:00
Joachim Henze
07f263143e [REGEDIT] *.rc: AUTORADIOBUTTONS, fix "Bus Nummer"-typo, ... (#7104)
- fix AUTORADIOBUTTONS, BS_AUTORADIOBUTTON is not needed, when AUTORADIOBUTTON is used
- add a WS_GROUP | WS_TABSTOP to the first ARB
- this slightly shrinks the binary size by the way, because we don't need the "Button"-strings
- harmonize the 2 AUTORADIOBUTTONS width to 99 for all langs
- fix "Bus Nummer"-typo, which has been done already by someone in en-US, but other langs were forgotten
- sync untranslated cut-accel, which has also been done for en-US already, but was forgotten in other langs
- in all translations a big block has been moved within the rcs historically..., in all except nl-NL and no-NO. What a foolish thing to do! So catch up with that.
- ja-JP the thing with the cut-accel fixes an accelerator collision by the way &C vs &C
- nl-NL: strip GRAYED from ID_REGISTRY_CONNECTNETWORKREGISTRY, which was done for all other languages earlier already, but forgotten for this one
2024-07-10 02:17:37 +02:00
Joachim Henze
e1c5b7366a [RAPPS] *.rc: IDC_DEFAULT_SETTINGS Optimize AUTORADIOBUTTONS, WS_GROUP (#7094)
- The stuff with the AUTORADIOBUTTONS is a small optimization to slightly reduce code-size and binary-size.
- Also add a missing WS_GROUP to IDC_DEFAULT_SETTINGS, which prevents leaving the group of the 3 bottom-most buttons to the left with the left-arrow-key.
- we need to add a return TRUE into WM_INITDIALOG section of SettingsDlgProc() to handle the default keyboard focus correctly towards the topmost AUTOCHECKBOX in this dlg. That part was contributed by @whindsaks , thank you very much for that!
- pl.PL: Add a missing ES_AUTOHSCROLL
- improve a few accelerators here and there

For the record: If no additional style is set then an AUTORADIOBUTTON gets by default BS_AUTORADIOBUTTON | WS_TABSTOP
see https://learn.microsoft.com/de-de/windows/win32/menurc/autoradiobutton-control
2024-07-10 00:51:19 +02:00
Whindmar Saksit
2e08238c7c [SHELL32] CDefaultContextMenu must respect the default verb list (#7090) 2024-07-09 20:01:50 +02:00
Whindmar Saksit
5b78381a53 [BROWSEUI][SHELL32] Implement BrowseObject flags (#7086)
* [BROWSEUI][SHELL32] Implement BrowseObject flags

Respect CABINETSTATE::fNewWindowMode if no other flags are relevant
2024-07-09 20:00:54 +02:00
Stanislav Motylkov
a629258e4a [SHELL32] Update Russian (ru-RU) translation
Addendum to:
- fd39a292af, dc97c0d109.
- 5308a606dc. CORE-12562
- 3da9e7e251. CORE-16944 CORE-19597

Also fix overlapping window controls.
2024-07-09 19:52:53 +03:00
Stanislav Motylkov
d66f61ab73 [REGEDIT] Update Russian (ru-RU) translation
Add missing header.
2024-07-09 19:32:14 +03:00
Stanislav Motylkov
4b9eec2d3b [MSUTB] Add Russian (ru-RU) translation
Also fix overlapping window controls.
Addendum to f4460c3fcd. CORE-19363
2024-07-09 19:32:12 +03:00
Stanislav Motylkov
a8efa049b5 [MSCTFTIME] Add Russian (ru-RU) translation
Addendum to 17617221ce. CORE-19360
2024-07-09 18:24:17 +03:00
Stanislav Motylkov
f9487d6784 [USERINIT] Update Russian (ru-RU) translation
Sync with intl.cpl translation. Addendum to 8c9a41db96 & 30a4fa94e3.
Also add missing header.
2024-07-09 18:24:17 +03:00
Stanislav Motylkov
50fc63ea71 [REPLACE] Update Japanese (ja-JP) translation
Add missing author. Addendum to 078f7ceaac. CORE-9444 CORE-18706
2024-07-09 18:24:16 +03:00
Katayama Hirofumi MZ
d7289cf2e9 [BROWSEUI] AutoComplete: Close before opening IME candidates (#7115)
The auto-complete window and
the IME candidate window were
conflicting each other.
JIRA issue: CORE-19268
Call HideDropDown method
when processing
IMN_OPENCANDIDATE message.
2024-07-10 00:05:28 +09:00
Joachim Henze
2b3c2957e6 [REGEDIT] ru-RU.rc: Fixme was double-checked by Stasm
Those are different russian chars, placed even on different keys.
They do just look very similar.
2024-07-09 16:46:33 +02:00
Katayama Hirofumi MZ
22561d5046 [CMD][BOOTDATA] Populate 'Command Processor' registry data (#7114)
Improve compatibility.
JIRA issue: CORE-8002
- Fix the default values of AutoCompletionChar
  and PathCompletionChar in cmd.exe.
- Populate "SOFTWARE\Microsoft\Command
  Processor" registry key like Win2k3 does.
2024-07-09 22:40:22 +09:00
Raúl Gutiérrez
d4433ee0c9 [SDK][INCLUDE] Don't navigate over size grip control with keyboard (#6914)
Add WS_GROUP style to the size grip to avoid the keyboard selection stuck.

Fixes keyboard navigation bug in the "Move to..." & "Copy to..." dialogs
that was making the button lose selection focus. CORE-19585
2024-07-09 15:34:37 +03:00
Katayama Hirofumi MZ
24a38b34ed [CMD] DATE: Simply use short date without weekday (#7116)
JIRA issue: CORE-13848
Simply use the result of
GetDateFormat function
in %DATE% environment
variable and the DATE
command.
2024-07-09 20:50:51 +09:00
Katayama Hirofumi MZ
050b3ad2ca [REPLACE] Delete unused STRING_REPLACE_HELP6
JIRA issue: CORE-9444
2024-07-09 20:29:44 +09:00
Katayama Hirofumi MZ
078f7ceaac [REPLACE] Improve Japanese (ja-JP) translation
JIRA issue: CORE-18706
2024-07-09 20:22:01 +09:00
Timo Kreuzer
fcbccaa194 [GCC-COMPAT] Add support library for GCC's libsupc++ and libstdc++
__throw_out_of_range_fmt is implemented in libstdc++, but it is needed by libsupc++ and that would mean we would have to link all C++ code to libstdc++.
2024-07-09 12:01:24 +02:00
Timo Kreuzer
486a20dbc4 [CMAKE] Add imported library winpthread 2024-07-09 12:01:24 +02:00
Timo Kreuzer
6291c5325a [CMAKE] Some compiler flags for GCC 13 2024-07-09 12:01:24 +02:00
Timo Kreuzer
43dad82fcd [RTL] Sync actctx.c to wine-5.18 (#6848)
* [WINESYNC] ntdll: Add support for parsing application settings in manifests.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id fc14442970dc6b97032c3cdd76cab33d774dc1a2 by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Implement RtlQueryActivationContextApplicationSettings.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 14b9a5af0b44d7e2ca5232ad810c77e561d5d30c by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Propagate the error through the XML buffer in manifest parser.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 7b871727e5cbb8581167acbaae2f4e34dc4ee59e by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Check the namespace in RtlQueryActivationContextApplicationSettings.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e46259fb823f55aa331381fe56916d20049d52f2 by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Use the ARRAY_SIZE() macro.

Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 10f23ddb58b0583c8bce99e59d879c653b389363 by Michael Stefaniuc <mstefani@winehq.org>

* [WINESYNC] ntdll/actctx: Don't stop looking for manifest if dll without manifest is found.

Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 56b3304a019486b52681a05d4b5454b475275e51 by Fabian Maurer <dark.shadow4@web.de>

* [WINESYNC] ntdll: Use the current platform as processorArchitecture instead of a wildcard.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 6abf99b4803003812d4fcf7bf9effc99030cbec9 by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Use strncmpiW instead of memicmpW for strings without embedded nulls.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 6fc259a57dafab9e72af13980c021e2a59257935 by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Avoid dead initialization (scan-build).

Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 6ea282c7e1abd7ab09a5f0a18a437e63f909da96 by Alex Henrie <alexhenrie24@gmail.com>

* [NDK] Add RtlUTF8ToUnicodeN for user mode

* [WINESYNC] ntdll: Use the Rtl UTF8 conversion functions.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f46fa9c92d08c6e656bc22b94e09aa9dbe7d3be9 by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Use module path as assembly path for manifests embedded in resources.

Fixes Office 2016 installer, which removes its .exe directory from load
path, but expects to be able to load files listed in manifest.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 2d764e90dd2c624f7a2d863ab29bd418ed33d252 by Jacek Caban <jacek@codeweavers.com>

* [WINESYNC] ntdll: Store the default process activation context into the PEB.

Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e95d0813fdfcfcac2bb1761e62e1d54e6f73cd6d by Gabriel Ivăncescu <gabrielopcode@gmail.com>

* [WINESYNC] ntdll: Use wcsicmp() instead of strcmpiW() where possible.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 3e049b6b962b8e6f048101b9910c09d5b1d8f167 by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Use wcsnicmp() instead of strncmpiW() where possible.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f831b3bd3d6b013893be7645df3a9cd05289c415 by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Use RtlEqualUnicodeString() instead of strcmpiW().

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 4d93bafe961ed53488ff0fb4b44cb1ad085531fe by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Avoid using memchrW().

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 186f189107972b739311f95a4ba3833838349b32 by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Avoid using atoiW().

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 8f3d869d784753d814a3493d01c3650f45389eda by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Avoid using sprintfW().

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id eb1b2e548656dc3d08cbf3c35454621491b84126 by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Use wcscpy() instead of strcpyW().

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 18411a19b4ea3a68234980c56d4c252670dfc000 by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Use wcscat() instead of strcatW().

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 80005ee016aeed42967adfe5b3042803d008c50d by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Use wcschr() instead of strchrW().

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 6de0ab276b3b79db4331993316f529a43f67c29a by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Use wcsrchr() instead of strrchrW().

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 285c5490a4c0ee4a92d042a3e6ab32e6bc14fb49 by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Use wcslen() instead of strlenW().

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e003b9884edcccc417d41d30073b312648741aaa by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Use wcscmp() instead of strcmpW().

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 4501ab0a7c80e31e602c540a446809e8ae3ebade by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Use wcsncmp() instead of strncmpW().

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e36b97e1d0644f90606d27f5104bb09a910540d2 by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Make the windows directory a global variable.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ca13f489e18fb1f7944e3bdcfdfc4a810bf80994 by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Use single field for misc flags in ComClass redirection section.

Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 72d055854b59db9059a3465f1e65247c0cc5e94e by Nikolay Sivov <nsivov@codeweavers.com>

* [WINESYNC] ntdll: Create class section for proxy-stub interface entries.

Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id dd9295b415345f2b686b65bd05fae0320cf6dc39 by Nikolay Sivov <nsivov@codeweavers.com>

* [WINESYNC] ntdll: Use the standard C library names for the printf functions.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 4478ba258e45559ac97353ab27951e84dd9865c1 by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Implement RtlActivateActivationContextEx().

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id c71da19d24a5d6f01e65b3b3691a9d7dd17a2278 by Alexandre Julliard <julliard@winehq.org>

* [WINESYNC] ntdll: Fix a memory leak (Valgrind).

Signed-off-by: Chao Long <longchao@uniontech.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id d0946955ec21e4da57aaec92459f81f131b27a49 by Chao Long <longchao@uniontech.com>

* [WINESYNC] rtl is now in sync with wine-staging wine-5.18

---------

Co-authored-by: winesync <ros-dev@reactos.org>
Co-authored-by: winesync <rosdev@reactos.org>
2024-07-09 11:35:41 +03:00
Doug Lyons
7983297bd6 [RTL] Avoid some corner case ASSERT's in heap.c and fix heap allocations larger than MAXUSHORT. (#5750)
CORE-18196

With most code copied from Thomas Faber's PR #4915 as follows:
[RTL] Correctly initialize segments larger than MAXUSHORT.
GuardEntry->PreviousSize would overflow in this case.
RtlpInsertFreeBlock already handles this correctly by creating multiple free entries.
So we just let it return the last entry and use that for the PreviousSize.

This does not include all of the ASSERT's in PR #4915.
2024-07-08 23:09:34 -05:00
Katayama Hirofumi MZ
f16e625c52 [CMD] Dynamic Trace: Add Hans Harder's e-mail address
CORE-6669
2024-07-09 07:45:54 +09:00
Katayama Hirofumi MZ
ef3e27e2c9 [NTUSER] Improve NtUserSetWindowPlacement (#7096)
Splitted from #7082. Correct behavior of
NtUserSetWindowPlacement function.
JIRA issue: N/A
- Check gptiCurrent->dwExpWinVer in
  NtUserSetWindowPlacement function.
- Fix the last error.
2024-07-09 07:42:56 +09:00
Joachim Henze
bf4c09b331 [EVENTVWR] Tweak AUTORADIOBUTTONS, … (#7106)
* Tweak AUTORADIOBUTTONS (saves a bit of binary size and line length). The ones in the settings-dialog work very good.
For the record: In the main dialog there is no proper keyboard navigation possible, but that was also like that before I touched that dialog, therefore I ommitted the adding of WS_GROUP | WS_TABSTOP for those (they were also not there before, and the keyboard navigation cannot be double-checked yet). If someone will find them to be needed later, then they could be added later
* tweak some safe accels (driven by string-pooling)
* add missing ':' after IDC_DETAILS_STATIC
* temporarilly strip 4 accels from ja-JP that do not exist on 2k3sp2 and ros en-US. My next PR will restore that ros-intended diff for all languages, not just ja-JP.
2024-07-09 00:25:37 +02:00
Katayama Hirofumi MZ
1ffce3eb6d [CMD][CMDUTILS][REPLACE] Make 'replace' command external (#7097)
JIRA issue: CORE-9444
- Delete 'replace' internal command.
- Add 'replace' external command into
  base/applications/cmdutils/replace
  folder.
- Add control break handler.
2024-07-09 04:30:43 +09:00
Katayama Hirofumi MZ
3dcae2ce0c [CMD] Support dynamic trace (#7093)
Based on Hans Harder's patch.
Realize tracing cmd on console
output.
JIRA issue: CORE-6669
- Add FEATURE_DYNAMIC_TRACE
  feature.
- Add CmdTrace function.
- Re-define FIXME, ERR, WARN,
  and TRACE macros.
- Check CMDTRACE environment
  variable. If it was "ON", then enable
  dynamic trace.
2024-07-09 04:25:30 +09:00
Katayama Hirofumi MZ
6c74e69d12 [NTUSER][USER32] Populate dwExpWinVer (#7095)
This value is needed for
SetWindowPlacement and IMM.
JIRA issue: CORE-19675
JIRA issue: CORE-19268
- Add RtlGetExpWinVer function
  into win32ss/user/rtl/image.c.
- Add RtlGetExpWinVer prototype
  into win32ss/include/ntuser.h.
- Delete RtlGetExpWinVer
  definition in
  win32ss/user/user32/windows/window.c.
- Populate THREADINFO.dwExpWinVer
  and CLIENTINFO.dwExpWinVer
  by using RtlGetExpWinVer in
  InitThreadCallback function.
2024-07-09 04:22:14 +09:00
Tomáš Veselý
a9bdd62d84 [GDI32] SetBkMode: Avoid invalid input. CORE-19656 (#7089)
Fixes a bug in Midori 0.5.11 installer which caused bad rendering
that was making the text hard to read (no background).
In Windows it's visible as FillRect(0x89011a1f, 0x0019f87c, 0xabababab),
and in ReactOS as SetBkMode(0xb5010fce, -1546139919).

After a number of attempts to get the same behavior, I haven't found a way
to fix it without a hack to make the installer look identical to Windows.

At least I added handling for the incorrect value in SetBkMode.
This shouldn't matter anywhere. It may not look the same as on Windows,
but the text will at least be readable.
2024-07-08 21:34:36 +03:00
Whindmar Saksit
4da2e78319 [SHELL32] Display Desktop folder name in IShellBrowser correctly (#7105)
- When the address-bar asks for FORADDRESSBAR, that should prioritized over FORPARSING.

- DefView should not enter special status-bar mode when viewing the Desktop as a shell folder in the normal IShellBrowser (DefView in Progman/desktop continues to use the old mode).
2024-07-08 18:22:59 +02:00
Václav Zouzalík
cabeda8f00 [TIMEDATE] Fix a typo in English (en-US) locale (#7098)
Fix a typo in IDS_INETTIMESUCFILL and IDS_INETTIMEWELCOME strings.
The indefinite article is 'an' when it is followed by a vowel sound.
2024-07-08 18:20:14 +03:00
Katayama Hirofumi MZ
0bd933c28c [SHELL32] Drive Property Sheet: Run in another thread (#7107)
The drive property sheet was modal,
so it used to lock the main thread.
This PR will unlock by using another
thread.
JIRA issue: CORE-4217
JIRA issue: CORE-11547
In dll/win32/shell32/dialogs/drive.cpp:
- Add DRIVE_PROP_DATA structure.
- Call SHCreateThread function in
  SH_ShowDriveProperties function.
- Clean up the data when they should
  be released.
2024-07-08 23:11:02 +09:00
Jose Carlos Jesus
f9d8665328 [CRYPTEXT] Add Portuguese (pt-PT) translation (#7102) 2024-07-08 16:12:54 +03:00
Katayama Hirofumi MZ
efe42074cc [USER32][USER32_APITEST] CopyImage: Check flags (#7075)
JIRA issue: N/A
- Check CopyImage flags.
- If there is any invalid flag, then set ERROR_INVALID_PARAMETER
  and return NULL.
- Add CopyImage testcase.
2024-07-08 19:24:15 +09:00
Jose Carlos Jesus
dbdd2b1a79 [MSCTFTIME] Add new Portuguese (pt-PT) translation (#7101) 2024-07-08 03:29:34 +02:00
Joachim Henze
543a38bd9f [NOTEPAD] *.rc: Tweak AUTORADIOBUTTONS (#7103)
- When AUTORADIOBUTTON is used, then BS_AUTORADIOBUTTON is not needed.
- Add WS_GROUP | WS_TABSTOP to the first of the 2 ARBs.
2024-07-08 03:25:11 +02:00
Katayama Hirofumi MZ
172d65327b [USER32_APITEST] Add SetWindowPlacement testcase (#7082)
Verify behavior of NtUserSetWindowPlacement
function.
JIRA issue: N/A
Add SetWindowPlacement testcase into
user32_apitest.
2024-07-08 00:34:18 +09:00
Václav Zouzalík
073f594749 [INPUT] Update Czech (cs-CZ) translation (#7070)
Co-authored-by: Stanislav Motylkov <x86corez@gmail.com>
Co-authored-by: Joachim Henze <joachim.henze@reactos.org>
2024-07-07 14:29:24 +02:00
Joachim Henze
9a25ee24ca [RAPPS] *.rc: Strip "Progress1" string (#7091)
That saves a tiny bit of binary size, and makes a long line shorter.
2024-07-07 13:20:47 +02:00
Joachim Henze
6d2b667a94 [REGEDIT] Strip unneeded WM_TIMER, formatting (#7040)
Strip unneeded WM_TIMER and a tab-character before toggle_child

Just clean up and
and addendum to 0.4.15-dev-7915-g d383b20b01
where the WM_TIMER has also been stripped from childwnd.c

Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
Co-authored-by: Katayama Hirofumi MZ <katayama.hirofumi.mz@gmail.com>
2024-07-07 13:09:23 +02:00
Joachim Henze
416bfc4308 [RAPPS] *.rc: Strip 2x "popup"-strings (#7092)
This shrinks the binary size a tiny bit.
2024-07-07 13:07:01 +02:00
Jose Carlos Jesus
75f6334300 [SYSDM] Improve pt-PT translation (#7059)
* Add file header
* Improve Portuguese (pt-PT) translation
* Fix accel collisions. Add missing accell keys.
* Remove accel from Ok and Cancel buttons.

Co-authored-by: Joachim Henze <joachim.henze@reactos.org>
2024-07-07 13:05:58 +02:00
Václav Zouzalík
384b4df433 [TIMEDATE] Update Czech (cs-CZ) translation (#7085)
Co-authored-by: Stanislav Motylkov <x86corez@gmail.com>
2024-07-07 01:07:06 +02:00
Jose Carlos Jesus
c181d31bc1 [DESK] Improve pt-PT Translation (#7029)
* Add file header. Change SUBLANG to NEUTRAL
* Improve Portuguese (pt-PT) translation
* Add missing accel keys and fix some others accel collisions.

Co-authored-by: Stanislav Motylkov <x86corez@gmail.com>
2024-07-07 00:03:54 +02:00
Katayama Hirofumi MZ
92551f540c [EXPLORER] Check IsHungAppWindow before minimizing (#7080)
Reduce system freezing on Win+D.
Normal minimizing causes message
transfer. If the window was hanging,
then it fell into endless message loop.
JIRA issue: CORE-19673
2024-07-07 06:50:46 +09:00
Katayama Hirofumi MZ
0cfd7bde9b [USER32] TileWindows: Adjust timeout of QuerySizeFix (#7081)
Since my machine performance
became lower, we have to adjust
timeout to get correct pattern of
user32!TileWindows function.
JIRA issue: CORE-19674
Adjust timeout value in QuerySizeFix
function.
2024-07-07 06:48:36 +09:00
Joachim Henze
42780b19c1 [RAPPS] *.rc: Fix accel collisions, improve accel consistency to en-US (#7072)
* improve some accels in consistency to en-US (we are free to change them in rapps to our hearts desire, because there is no MS rapps), in general:
where nothing speaks against use &B for ID_RESETDB, because &t looks poor with Tahoma
where nothing speaks against use &E for ID_REGREMOVE (because &R is often used for &Refresh and tends to collide)
where nothing speaks against use &R for ID_REFRESH
where nothing speaks against use &I for ID_INSTALL
where nothing speaks against use &U for ID_UNINSTALL
where nothing speaks against use &M for ID_MODIFY

* Fix some accelerator collisions:
* en-US.rc: fix an accelerator collision between "&Refresh" and "&Remove from Registry" in 2 menus
* et-EE.rc: Fix accel collision between "&Desinstalli" and ""Uuenda an&dmebaasi"
* hu-HU.rc: Fix an existing accel collision between "&Telepítés" and "Ada&tbázis frissítése", by using the english accelerator for the ID_INSTALL for best consistency
* pl-PL.rc: Fix an accel collision between "&Plik" and "&Programmi", stick with the english accels for uninstall and "remove from registry" for consistency.
* pt-BR.rc: Fix an accel collision between "A&tualizar" and "Update Da&tabase", stick with the english accel also for "R&emover do Registro" for consistency.
* pt-PT.rc: Fix an inconsistency between "&Instalar" and "I&nstalar" between 2 menus, which is not only unintuitive, but also will hurt string pooling. Other changes are for consistency to en-US.
* ru-RU.rc: Reduce inconsistency between the 2 ID_INSTALL in 2 different menus, this will help string-pooling. It will also avoid defining "&Установить" next to "&Удалить" in the same dlg, although that might not be necessarily a collision here, as I am not sure whether Install/Uninstall is even both displayed as activated at the same time. Still better like that.
* sv-SE.rc: Fix accel collision between "&Ta bort från Registret" and "Update Da&tabase", the rest is for improving consistency to en-US
* tr-TR.rc: Fix inconsistency in the accels between "Uyg&ulama" and "Uy&gulama", as that will hurt string-pooling. Use "Uygulama Veri &Tabanını Yenile\tCtrl+F5" for both menus instead. That's the english accel also.
* uk-UA.rc: Fix accel inconsistency between the 2 menus for ID_UNINSTALL. This will help with string-pooling.
* uk-UA.rc: Use "Вида&лити з реєстру" in both menus for ID_REGREMOVE, because that will help with string pooling and improves user experience
* ja-JP.rc: Fix accel collision between "レジストリから削除(&R)" ID_REGREMOVE and "更新(&R)" ID_REFRESH in both menus, also this syncs the accels to en-US. Also add an accel for ID_ABOUT, just because I am friendly.
* A bunch of accel-changes for the sole purpose of matching en-US more closely. Those are only really important for the 3 chinese languages which always aim to follow en-US accels to the point, and for zh-TW that stuff was unintentionally offsync also between their 2 ID_RESETDB in the different menus. For all other languages this is just a nice addition for consistency to en-US. But no absolute must-have.
* The small &t within "Da&tabase" renders poorly in Tahoma because it is a very small-in-x-letter. By using &b in majority of languages, same as ru-RU and pt-BR.rc did already, we can make that look much better. I checked that this will not cause any new collisions.
* fr-FR.rc: Hermes' feedback: A french extrawurst for ID_REGREMOVE doesn't hurt me at all.
* de-DE.rc: Avoid accels of the kind &Ä &Ö &Ü. They are not wrong strictly speaking, but they are suboptimal.
* Strip some comments from sk-SK
* Strip some whitespace from ja-JP
2024-07-06 23:40:03 +02:00
Jose Carlos Jesus
c3a45b679d Fix return value from GetObject gdi32_apitest (#7046) 2024-07-06 22:55:06 +02:00
Jose Carlos Jesus
cdb438552c [MAIN] *.rc: accel-tweaks & DEFPUSHBUTTON (#7043)
- Update Portuguese (pt-PT) translation
- Add missing accelerators and fix some collisions.
- Add file header.
- Change IDOK button to DEFPUSHBUTTON
- Also remove accelerators from IDOK and IDCANCEL buttons
2024-07-06 22:44:48 +02:00
Jose Carlos Jesus
004757469c [INTL] Improve portuguese (pt-PT) translation (#7044)
* Add file header.
* Fix typos and improve portuguese (pt-PT) translation.
* Fix accel collisions
* Remove leading space

Co-authored-by: Stanislav Motylkov <x86corez@gmail.com>
2024-07-06 22:40:26 +02:00
Jose Carlos Jesus
41d8be86d7 [POWERCFG] Improve pt-PT translation (#7058)
* Add file header
* Improve Portuguese (pt-PT) translation
* Remove accell from Ok and Cancel buttons
* Fix accel collisions. Add missing accels keys.

Co-authored-by: Stanislav Motylkov <x86corez@gmail.com>
2024-07-06 22:32:00 +02:00
Václav Zouzalík
f852ac2e5d [INTL] Update Czech (cs-CZ) translation (#7066)
Co-authored-by: Stanislav Motylkov <x86corez@gmail.com>
2024-07-06 22:14:59 +02:00
Václav Zouzalík
9c1fc8595d [USERINIT] Update Czech (cs-CZ) translation (#7078) 2024-07-06 22:13:28 +02:00
Václav Zouzalík
21044834fe [USERINIT] Update Slovak (sk-SK) translation (#7079) 2024-07-06 22:12:07 +02:00
Katayama Hirofumi MZ
61cdd02d1c [NTGDI] Fix MaskBlt error code and check pattern usage (#7083)
Follow-up to #7074. Fix MaskBlt behaviour.
JIRA issue: CORE-13133
- Fix MaskBlt error code.
- Fix MaskBlt pattern usage check.
2024-07-06 13:28:26 +09:00
Katayama Hirofumi MZ
c536664666 [EXPLORER][COMCTL32] Fix wrong title on taskbar if it has '&' in it (#7073)
The ampersand (&) a.k.a. prefix of
DrawText are specially treated for
adding underscores.
We have to fix drawing on toolbar
button with BTNS_NOPREFIX style.
JIRA issue: CORE-11619

- Delete DT flags hack in taskswnd.cpp.
- Add TOOLBAR_GetButtonDTFlags
  helper function.
- Extend TOOLBAR_DrawString
  parameters for the button info.
- Fix DrawText flags for drawing
  when the button has
  BTNS_NOPREFIX style.
2024-07-06 10:38:04 +09:00
Whindmar Saksit
8a7b99c184 [REGEDIT] Display REG_NONE as binary (#7084) 2024-07-05 22:11:16 +02:00
Whindmar Saksit
71a3be2497 [SHELL32][EXPLORER][SHLWAPI][SDK] Implement SHGetSetSettings (#6982)
These settings are cached per-process (and invalidated by the global counter). This should reduce the number of registry reads performed by DefView and CFSFolder.
2024-07-05 20:35:45 +02:00
Katayama Hirofumi MZ
80c170d7bc [IMM32][NTUSER] Reduce a little IMM spams (#7077)
Reduce log spams that @julenuri reported.
JIRA issue: CORE-19268
- Use Imm32IsCrossThreadAccess
  instead of IS_CROSS_THREAD_HIMC in
  ImmSetCompositionWindow function.
- Reduce ERR logging in
  NtUserQueryInputContext function.
2024-07-05 05:07:49 +09:00
Katayama Hirofumi MZ
84e84c29a9 [GDI32_APITEST] Enhance MaskBlt testcase for error code (#7074)
JIRA issue: CORE-13133
Add ok_err tests for error code.
2024-07-05 05:04:37 +09:00
Hermès Bélusca-Maïto
7639cb750a [SETUPLIB][USETUP] Reduce duplicated code
- ScrollDownPartitionList() and ScrollUpPartitionList()
  --> ScrollUpDownPartitionList()

- GetPrimaryPartitionCount() and GetLogicalPartitionCount()
  --> generic GetPartitionCount() and macros.

- GetPrevUnpartitionedEntry() and GetNextUnpartitionedEntry()
  --> GetAdjUnpartitionedEntry() ("Adj" == Adjacent)
2024-07-04 17:14:32 +02:00
Hermès Bélusca-Maïto
97821f00d5 [SETUPLIB] Fix for GetPartition() 2024-07-04 17:14:31 +02:00
Hermès Bélusca-Maïto
5efe123d5f [WELCOME] Silence useless editbin warning LNK4241 2024-07-04 17:13:14 +02:00
Katayama Hirofumi MZ
06b6833cf1 [SHELL32] shlexec.cpp: Automate buffer alloc/free (#7068)
Reduce code. Simplify code logic.
Ensure leak zero.
JIRA issue: CORE-17482
- Use CHeapPtr<WCHAR, CLocalAllocator>
  for allocation/freeing.
2024-07-03 23:03:31 +09:00
Katayama Hirofumi MZ
b41332349a [SHELL32] Refresh UI on assoc change (SHOpenWithDialog) (#7076)
Fix file association UX.
JIRA issue: CORE-19670
- Check the return value of
  shell32!SHOpenWithDialog function.
- If changed, then update the UI display
  and internal data.
- Use OAIF_FORCE_REGISTRATION flag.
2024-07-03 23:01:50 +09:00
Katayama Hirofumi MZ
edf6b805a7 [USERINIT] LiveCD: Set UI language (#7069)
The LiveCD start dialog was not localized.
JIRA issue: N/A
- Just call SetThreadLocale after
  InitializeDefaultUserLocale call.
2024-07-02 18:55:37 +09:00
Katayama Hirofumi MZ
caf117d496 [FONTS] Improve 'Microsoft Sans Serif' Part 2 (#7067)
Follow-up to #7055.
JIRA issue: N/A
Improve micross.ttf font ("Microsoft Sans Serif") file.
Version: 4
License: SIL Open Font License Version 1.1
2024-07-02 11:21:31 +09:00
Oleg Dubinskiy
c9aca501e4 [WINMINE] Remove unneeded cast
Remove unneeded cast when loading the cusror for the WineMine's main window class.
Addendum to 1a10250.
2024-07-01 18:34:01 +02:00
Oleg Dubinskiy
1a1025011f [REACTOS] Fix LoadCursorW() incorrect usage cases (#7053)
Fix wrong MAKEINTRESOURCEW() macro usage cases in LoadCursorW() system-wide.
MSDN documentation for this function states we need to use MAKEINTRESOURCEW() macro only for internal application-defined cursors (loaded from the app instance specified by hInstance parameter), but not for system-defined cursors (those begin with IDC_* prefix), in case when hInstance is NULL.
So get rid from MAKEINTRESOURCEW() macro usage for all cases when hInstance parameter is NULL. And on the contrary, when hInstance is valid and points to the application instance, then use it for the resource identifier.
2024-07-01 18:05:46 +02:00
Hermès Bélusca-Maïto
f57601d14b [SETUPLIB][USETUP] FS utilities: Use the ISO C and C++ conformant name: _wcsicmp
Stop using non-conforming wcsicmp.
See also PR #6925 by Timo Kreuzer.
2024-07-01 16:28:17 +02:00
Hermès Bélusca-Maïto
a7a7e6a09c [SETUPLIB][USETUP] Isolate and decouple the filesystem operations code from the UI (#7049)
The idea is reminiscent of the SetupCommitFileQueue() function:
filesystem volume operations are "queued" and processed via a
"commit queue".

The commit queue uses a user-specified callback, that is used to
interact with the user whenever an operation (filesystem formatting,
checking) is started, ended, or fails, for example by displaying
appropriate UI screens and choices, etc.
2024-07-01 16:18:57 +02:00
Katayama Hirofumi MZ
a207a3c931 [NTGDI][FREETYPE] Fix FontLink freeze (#7063)
#7009 introduced unexpected freezing on gdi* bot tests.
JIRA issue: CORE-19667
Fix the locking-related assertions by adding/removing
lock/unlock.
2024-07-01 22:34:59 +09:00
Katayama Hirofumi MZ
0f9e889736 [NTGDI][FREETYPE][SETUP][INF] Support FontLink (#7009)
If East Asian people were unable
to see the Latin characters, it
becomes a barrier to mutual
understanding.
FontLink will break that barrier.
JIRA issue: CORE-9616
JIRA issue: CORE-15480
- Modify font substitutes.
- Unify the lock variables.
- Add FONTLINK and
  FONTLINK_CHAIN structures.
- Add FontLink_Create and
  FontLink_Destroy functions.
- Add FontLink_Chain_Init,
  FontLink_Chain_Free,
  FontLink_Chain_LoadReg,
  FontLink_Chain_Populate, and
  FontLink_Chain_FindGlyph
  functions.
- Implement FontLink.
- Add font file DroidSansFallback.ttf
  for LiveCD.
2024-06-30 22:15:34 +09:00
Katayama Hirofumi MZ
f28e983932 [FONTS] Improve our 'Microsoft Sans Serif' font (#7055)
Improve font file micross.ttf for better
compatibility.
Eliminate blurry font rendering.
JIRA issue: N/A
- Edit the font file with FontForge.
- Improve vector glyphs.
- Add 8px, 9px, 10px, 11px, 12px,
  and 13px bitmap glyphs.
- Cover English alphabet, digits,
  French, German, Cyrillic, and
  Greek characters.

Version: 3
License: SIL Open Font License, Version 1.1
2024-06-30 20:28:49 +09:00
Hermès Bélusca-Maïto
7e89227a00 [MOUNTMGR] Fix initial sending of device online notification (#7030)
1. MountMgrMountedDeviceArrival():
   Fix the conditions under which the device's online notifications
   are skipped (SkipNotifications == TRUE) and fix the code comments.
   Now, things make much more sense:
   online notifications are skipped when the device is already offline
   or is a legacy (NT <= 4) fault-tolerant volume (see point 2 below),
   or is NOT mounted (doesn't have a drive letter).
   Previously, we were sending an online notification if the device
   was NOT mounted (why?!...) or if it was deemed as "valid" (wrongly
   determined, see point 2 below).

2. QueryDeviceInformation():
   * The usage of the "Valid" parameter didn't make much sense. Indeed,
     when a partition/volume device is reported to the Mount Manager,
     it's already valid. (Also, setting "Valid" to TRUE only in the case
     of an MBR partition while ignoring GPT ones, and resetting it to
     FALSE if IOCTL_STORAGE_GET_DEVICE_NUMBER returned success, pointed
     to something incorrect was going on.)
     Instead, what we are checking here is whether the device is a
     legacy fault-tolerant volume: such volume can only reside on an
     MBR disk, have the expected partition type, and does not really
     reside on a specific storage device (hence the check for
     IOCTL_STORAGE_GET_DEVICE_NUMBER returning failure).

   * Take also the opportunity to SAL2-ify the function.
2024-06-25 22:51:08 +02:00
Hermès Bélusca-Maïto
5f26356079 [MOUNTMGR] Rectify "NoAutoMount" usage (#7030)
This "NoAutoMount" member was not consistently used. Sometimes it was
used correctly, some other times it was used as "not NoAutoMount" i.e.
"AutoMount" enabled.
Fix this consistently throughout the source, and fix also some comments.
2024-06-25 22:51:07 +02:00
Jose Carlos Jesus
2aad6b133f [ACCESS] Improve Portuguese (pt-PT) translation (#7028)
- Add file header
- Add missing accelerator keys
- Rearrange the message so it can fit in the window
- Change SUBLANG to NEUTRAL
2024-06-25 12:48:35 +00:00
Jose Carlos Jesus
fc7a74506b [JOY] Improve Portuguese (pt-PT) translation (#7027)
Additionally:
- Remove accelerators from Ok and Cancel buttons.
- Add lost accelerator keys.
- Add resource file header.
2024-06-25 12:44:32 +00:00
Václav Zouzalík
d23d61b63f [SHIMGVW] Add Esperanto (eo-AA) translation (#7023)
Reviewed-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
Reviewed-by: Stanislav Motylkov <x86corez@gmail.com>
2024-06-25 12:40:17 +00:00
Stanislav Motylkov
4879915e54 [SHELL32] Sync shell view menu "Paste" / "Paste shortcut" items (#6994)
- Sync translations of the same menu items in MENU_002 and MENU_003.
- Add missing accelerators.
- Also fix colliding accelerators/mnemonic keys where possible.

CORE-19243
2024-06-25 12:30:27 +00:00
Whindmar Saksit
d24675b63d [SHELL32][BROWSEUI] CopyMoveToMenu must initialize without a PIDL folder (#7047)
- IShellExtInit cannot rely on a folder PIDL being present
- Use common QueryContextMenu function for both menu items
- Allow copy to the same folder
- Disable toolbar buttons when the selection is not valid
- Minor DefView cache enhancement and bugfixes
2024-06-25 00:29:35 +02:00
Whindmar Saksit
df5affedce [BROWSEUI] Ensure menu dock site is visible when parent ShowDW is called (#7045)
Addendum to 674136b (PR #7035)

CORE-19659
2024-06-24 23:51:57 +02:00
Hermès Bélusca-Maïto
2cdd5eca7b [PSDK] ntdddisk.h, winioctl.h: Improve/sync partition types and Is[FT|Recognized]Partition() macros (#7033)
- Synchronize PARTITION_*** definitions between ntdddisk.h and winioctl.h

- Make IsFTPartition() macro definition more accurate with Win2003/Vista+
  WDK definition. In particular, partition types that would conflict with
  3rd-party ones are not present in this macro. (See comment in header
  for more details.)
  Simplify also its definition by factoring the common
    ((PartitionType) & PARTITION_NTFT)
  piece.

- It can be recognized, in all DDK/WDK versions, that the first part of
  the IsRecognizedPartition() macro definition is basically the definition
  of IsFTPartition(). So, take this opportunity to simplify the definition
  of IsRecognizedPartition() accordingly without losing any functionality.
2024-06-24 16:29:13 +02:00
Hermès Bélusca-Maïto
a2777cd828 [SETUPLIB] Cleanup some partition getters and remove GetDiskOrPartition.
- osdetect.c: Replace usage of GetDiskOrPartition by SelectPartition.
2024-06-24 16:28:07 +02:00
Whindmar Saksit
63935f857f [SHELL32] Implement the desktop folder menu for Explorer tree (#7026)
Enumerates but does not actually allow you to get CF_HDROP if the desktop PIDL is present in the dataobject.
2024-06-21 19:19:49 +02:00
Whindmar Saksit
674136bcd0 [BROWSEUI] Save/Restore ShellBrowser bar states (#7035)
Save/Restore the state of the ShellBrowser toolbar/addressbar/statusbar.

Windows shares the state of the Go button and the locked state between Explorer and Internet Explorer but the bar states are not shared.

Notes:
- Seems to fix CORE-17236.
- The stream layout does not match Windows so it uses a different name. The toolbar customize dialog needs to be fixed before it makes sense trying to save the toolbar state and the layout of other bands.

CORE-17236
2024-06-21 19:17:13 +02:00
Whindmar Saksit
75db8c633a [SHELL32] SHMultiFileProperties workaround and minimal SHObjectProperties (#7025) 2024-06-21 16:26:52 +02:00
Václav Zouzalík
7b7c378188 [WINLOGON] Update Czech (cs-CZ) translation (#7036) 2024-06-21 12:42:13 +03:00
Jose Carlos Jesus
9cf9126191 [REGEDIT] Update Portuguese (pt-PT) translation (#6979) 2024-06-21 11:34:47 +03:00
Hermès Bélusca-Maïto
99f0937fd0 [SETUPLIB][USETUP] Finish unification of extended and primary/logical partitions
See commits ebcf3cf38 and c9c6902f0 (PR #5837)

In addition, correctly set the type of extended partition being used,
depending on whether it is contained below or above the 1024-cylinder
boundary (tested on NT).
2024-06-20 17:21:51 +02:00
Doug Lyons
cd88a97115 [NTUSER] Fix popup menu positioning for Miranda IM (#6981)
CORE-17838
2024-06-19 18:55:12 -05:00
Hermès Bélusca-Maïto
3fe12f1a7c [NTOS:IO] IopCreateArcNamesDisk(): Fix the ArcName link creation condition check.
The bug was introduced in commit 6d0861e9e (r49131).
2024-06-19 17:26:40 +02:00
Hermès Bélusca-Maïto
5e3f3f59df [NTOS:IO] IopVerifyDiskSignature(): simplify code and SAL2-annotate 2024-06-19 17:25:42 +02:00
Hermès Bélusca-Maïto
85d338ed65 [NTOS:IO] arcname.c: Minor formatting fixes and comments improvements 2024-06-19 17:25:34 +02:00
Doug Lyons
29a56f326a [REGEDIT] Fix splitter move redraw issues. (#6992)
* Add "HACK" per reviewer comment
* CORE-19576
2024-06-19 00:39:39 -05:00
Katayama Hirofumi MZ
55898a7ffd [SHELL32] Make some PIDL (_IL*) functions Unicode (#7018)
There were encoding problems due to non-
Unicode functions.
JIRA issue: CORE-19653
- Adapt _ILGetDrive, _ILGetExtension,
  _ILGetFileAttributes, _ILGetFileDate,
  _ILGetFileSize, and _ILGetFileType
  functions to Unicode.
- Adapt SHELL_IsShortcut and
  SHGetFileInfoW functions to Unicode.
- Delete useless _ILSimpleGetText
  function.
2024-06-19 04:32:40 +09:00
Thamatip Chitpong
91af99323f [SHELL32] Enable visual styles for RunDLL
Enable visual styles using RunDLL manifest (resource ID 123).
CORE-12285

This was documented here:
https://learn.microsoft.com/en-us/windows/win32/controls/cookbook-overview?redirectedfrom=MSDN#using-comctl32-version-6-in-control-panel-or-a-dll-that-is-run-by-rundll32exe
2024-06-18 21:06:29 +07:00
Thamatip Chitpong
99c0d53413 [SHELL32] Folder options: Use MAKEINTRESOURCE instead of LoadString 2024-06-18 21:06:29 +07:00
Joachim Henze
32d615fc10 [DD] Keep the network drivers infs 8.3 like on MS Windows (#7007)
Windows has all its network drivers inf files in 8.3.

This is an addendum to 0.4.15-dev-52-g 019f21ee1d
which moved us further away from our target.

The commit on its own was a good idea actually to get the inf into the drivers directory
and therefore simplifies adding and excluding drivers more locally (e.g. excluding works by
adding a single hashtag within the specific drivers CMakeLists.txt now).

But that cool feature doesn't require us to move away from our target.

For the record:
The historic netrtpnt.inf and netisa.inf (both 8.3) have been merged to
netne2000.inf (not 8.3) by 0.4.15-dev-2763-g 6924b8ff39
Unification of that was cool too,
but again: 8.3 is superior. Therefore netne.inf for that.

Worst of all: Since the .inf files did contain their filename within a comment also, that means
the historic renaming by the mentioned commit invalidated that comment.
netamd.inf fixed by restoring the ancient filename before 0.4.15-dev-52-g 019f21ee1d
netrtl.inf fixed by restoring the ancient filename before 0.4.15-dev-52-g 019f21ee1d
netne.inf I fixed the comment manually.
2024-06-17 22:41:31 +02:00
Jose Carlos Jesus
0abd920db9 [KBSWITCH] Add Portuguese (pt-PT) translation (#7008)
Also fix SUBLANG for Portuguese Brazilian (pt-BR) translation.
2024-06-17 19:42:13 +03:00
Jose Carlos Jesus
c43a638fc1 [INPUT] Update Portuguese (pt-PT) translation (#7032)
- Change SUBLANG to NEUTRAL.
- Add resource file header.
2024-06-17 19:20:14 +03:00
Václav Zouzalík
18a3d21dd7 [SHIMGVW] Update German (de-DE) translation (#7021)
Translate new strings added in 084fae1eb4 (#6186) into German.
2024-06-17 18:40:29 +03:00
Hermès Bélusca-Maïto
6aed3b5117 [PSDK] ntdddisk.h: Add missing global parentheses around IsFTPartition() definition
CORE-16499

Addendum to commit 0a0e6a9f0 that introduced the problem.

Thanks to Hervé Poussineau for having caught it.

Fixes logic errors, and resulting compilation warnings/errors with GCC
in situations like the following one:
```c
if ((PartitionInfo.PartitionStyle == PARTITION_STYLE_MBR) &&
    IsFTPartition(PartitionInfo.Mbr.PartitionType))
{ ... }
```
error: suggest parentheses around '&&' within '||' [-Werror=parentheses]
 if ((PartitionInfo.PartitionStyle == PARTITION_STYLE_MBR) &&
cc1: all warnings being treated as errors
2024-06-17 17:18:18 +02:00
Katayama Hirofumi MZ
9164419c9c [FONTS] Retry: Add our 'Microsoft Sans Serif' font (#7022)
Retrial of #3818.
JIRA issue: CORE-16435
The font name is "Microsoft Sans Serif". This font is not Microsoft's font.
This font was not a solution of CORE-16435 but we add this font as a side
product of CORE-16435.
- Add media/fonts/micross.ttf as "Microsoft Sans Serif" font.
- The font height is 14%-shrinked from #3818.
- Add media/fonts/doc/MicrosoftSansSerif/LICENSE_OFL.txt.
- Modify CMakeLists.txt to add the font.
- Improve "J" and "Q".
Version: 3
License: SIL Open Font License 1.1
2024-06-16 10:08:17 +09:00
Doug Lyons
6190a97df4 [NTGDI][FREETYPE] Multiple indirect Font Substitutes fix for Factusol (#7020)
Fixes double use of Font Substitutes "Helv" -> "MS Sans Serif" -> "Tahoma".
2024-06-15 17:08:59 -05:00
Timo Kreuzer
365c2c1ce3 [HAL:APIC] Fix HalSetTimeIncrement
Fix calculation of clock rate. Previously it would go above the maximum, causing issues with KeUpdateSystemTime.
2024-06-15 14:22:20 +02:00
Katayama Hirofumi MZ
e8b88cf879 Revert "[BOOT] Don't create CSIDL_ADMINTOOLS folder in initial (#6551)" (#7017)
Reverts #6551
This caused the non-English programs menu
items to not be populated.
JIRA issue: CORE-12328 will have to be
reopened afterwards and approached
differently
JIRA issue: CORE-19652 will get resolved
2024-06-14 11:08:14 +09:00
Joachim Henze
3e6f65ffcd [DC21X4] Fix uninitialized variable read (#6984)
This is the network driver which is used for MSVPC 2007.

I spotted it during a WIP-backport-experiment of the driver, when compiling with GCC4.7.2, which warned about it.
GCC8.4.0 unfortunately is blind to that on master head, for unknown reasons. Not good.
MSVC github buildbot is also blind to that on master head, for unknown reasons. Not good.
We later found that at least Clang did also warn about it on master head.
2024-06-13 21:24:23 +02:00
Thamatip Chitpong
2d9a4b4a87 [SHELL32] Control_DoWindow: Add file browser fallback
If Explorer shell is not available, use ReactOS's alternative file browser instead.
CORE-19648
2024-06-14 02:14:10 +07:00
Thamatip Chitpong
8398c9fcfb [CONTROL] OpenShellFolder: Add file browser fallback
If Explorer shell is not available, use ReactOS's alternative file browser instead.
CORE-19648
2024-06-14 02:14:10 +07:00
Thamatip Chitpong
48c036e7e7 [NCPA] DisplayApplet: Add file browser fallback
If Explorer shell is not available, use ReactOS's alternative file browser instead.
CORE-19648
2024-06-14 02:14:10 +07:00
Hermès Bélusca-Maïto
ab0e04c81d [MOUNTMGR] Introduce MountMgrSendSyncDeviceIoCtl() to replace repeated code (#6960)
See https://www.osr.com/blog/2018/02/14/beware-iobuilddeviceiocontrolrequest/
for some details about IRQL requirements.
2024-06-13 20:01:16 +02:00
Hermès Bélusca-Maïto
50271949e7 [PSDK] winioctl.h fixes; make ntddvol.h winioctl.h-compatible (#7010)
winioctl.h:
- Re-organize definitions according to the
  NT DDK headers they have been taken from.
- Add missing include guards to some definitions.
- Add missing IsFTPartition() macro.
- Add missing volume definitions.

ntddvol.h:
- Guard definitions duplicated in winioctl.h.
- Add missing NTDDI_VERSION checks.
  Note: IOCTL_VOLUME_POST_ONLINE is Win8+.
2024-06-13 19:53:23 +02:00
Václav Zouzalík
6cd97d8423 [SHIMGVW] Update Czech (cs-CZ) and Slovak (sk-SK) translations (#6825)
- [SHIMGVW] Update Czech (cs-CZ) translation
- [SHIMGVW] Update Slovak (sk-SK) translation
2024-06-13 19:12:45 +03:00
Jose Carlos Jesus
113b3d6261 [CPL] Update Portuguese (pt-PT) translation (#6718)
- [APPWIZ] Update Portuguese (pt-PT) translation
- [CONSOLE] Update Portuguese (pt-PT) translation
- [HDWWIZ] Update Portuguese (pt-PT) translation
- [HOTPLUG] Update Portuguese (pt-PT) translation
- [INETCPL] Update Portuguese (pt-PT) translation

Reviewed-by: Marco Pisco <marco@marcopisco.com>
Reviewed-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
Reviewed-by: Stanislav Motylkov <x86corez@gmail.com>
2024-06-13 18:26:25 +03:00
Jose Carlos Jesus
cbb6603460 [MSUTB] Add Portuguese (pt-PT) translation (#6690) 2024-06-13 17:01:04 +03:00
Ratin Gao
67d5a53839 [TRANSLATION] Improve Simplified Chinese (zh-CN) translation (#6804)
- Add and improve translation
- Fix mistakes

Reviewed-by: Chilung Chan <eason066@gmail.com>
Reviewed-by: yangyangdaji <1504305527@qq.com>
Reviewed-by: He Yang <1160386205@qq.com>
2024-06-13 16:36:41 +03:00
Whindmar Saksit
7c3d3851b8 [SHELL32] Respect menu Ctrl/Shift in CMenuBand and SHBrowseForFolder (#7015) 2024-06-13 13:11:34 +02:00
Whindmar Saksit
d73a838245 [RAPPS] Load icons on background thread (#6881)
- Load icons on background thread to massively reduce loading time.

- Use SM_CXICON sized icons consistently instead of hardcoding 32 in some places.
2024-06-13 02:20:41 +02:00
Whindmar Saksit
4321c975c7 [SETUPAPI] Fix absolute dirid ProfileItems bug (#7016) 2024-06-12 19:34:48 +02:00
Katayama Hirofumi MZ
13b6972500 [FONTS] Tahoma: Remove bitmap glyph workaround (#7012)
Our Tahoma font file had a workaround
to make bitmap glyphs working.
This workaround is no more necessary
because new FontForge doesn't have
this bug.
JIRA issue: CORE-9616
- Remove 「いうかひのん」 workaround
  (See http://www.electronicdissonance.com/2010/01/raster-fonts-in-visual-studio-2010.html ).
- Remove Traditional Chinese codepage.
Version 0.020 khmz.
2024-06-12 20:12:55 +09:00
Whindmar Saksit
3123589edd [NOTEPAD] F3 should not display error message when the find string is empty (#7013) 2024-06-12 13:01:42 +02:00
Whindmar Saksit
dc97c0d109 [SHELL32] Add Taskbar and Start Menu control panel item (#7011) 2024-06-12 13:00:54 +02:00
Hermès Bélusca-Maïto
ed27d733f7 [MOUNTMGR][DDK] Fix some IOCTLs definitions to Win2k3+ compatibility (#6959)
Fix IOCTL_MOUNTDEV_LINK_CREATED, IOCTL_MOUNTDEV_LINK_DELETED,
IOCTL_MOUNTDEV_UNIQUE_ID_CHANGE_NOTIFY, to Win2k3+ compatible definitions.
The previous versions of these IOCTLs (in Win2000 and XP) were defined without any access protection.

This was noticed here:
https://community.osr.com/t/ioctl-mountdev-link-created-definition-changed/29428
2024-06-12 12:31:32 +02:00
Hermès Bélusca-Maïto
7930bed0a1 [MPR][MOUNTMGR][DDK] Remove unused wine-specific code (#6958)
Usage of these in MPR was already inside #ifndef __REACTOS__ block,
so, "This Is Fine".
2024-06-12 12:29:22 +02:00
Hermès Bélusca-Maïto
0d36818422 [MOUNTMGR] Some cleanup 2024-06-12 12:29:06 +02:00
Hermès Bélusca-Maïto
e47d08fc5a [DDK] mountdev.h, mountmgr.h: Minor cleanup (#6957)
- Add missing file info headers.
- Make the headers C++ friendly.
2024-06-12 12:28:50 +02:00
Hermès Bélusca-Maïto
e80cd6760c [PARTMGR] Reimplement IOCTL_MOUNTDEV_QUERY_UNIQUE_ID for MBR and GPT partitions (#6926)
CORE-15575

In addition, fix a PartitionId assignment copy-paste error in PartitionCreateDevice().

The returned standard UniqueId has the following format:

- Basic volume on MBR disk: disk Mbr.Signature + partition StartingOffset (length: 0x0C)
- Basic volume on GPT disk: "DMIO:ID:" + Gpt.PartitionGuid (length: 0x18)
- Volume on Basic disk (NT <= 4): 8-byte FTDisk identifier (length: 0x08)
- Volume on Dynamic disk (NT 5+): "DMIO:ID:" + dmio VolumeGuid (length: 0x18)
- Super-floppy (single-partition with StartingOffset == 0),
  or Removable media: DiskInterfaceName.
- As fallback, we use the VolumeInterfaceName.

References:
- https://winreg-kb.readthedocs.io/en/latest/sources/system-keys/Mounted-devices.html
- https://stackoverflow.com/a/72787681/21852502
- Manual testing on Windows.
2024-06-12 12:15:31 +02:00
Hermès Bélusca-Maïto
3d26d76a4c [PARTMGR] Detect and flag partitionless ("super-floppy") disks (#6926)
CORE-15575

Detect whether the disk is a "super-floppy", which is the name given
to partitionless disk having no MBR, with the unique partition volume
starting at sector offset zero and spanning the whole disk.
The name comes from the fact that at the partitioning level, the disk
"looks like" a large-capacity floppy disk.

This is typically how external removable (USB, ...) drives are
partitioned by default by Windows.

https://learn.microsoft.com/en-us/windows-hardware/manufacture/desktop/windows-and-gpt-faq?view=windows-11#superfloppy

The kernel-mode functions IoReadPartitionTable() / IoWritePartitionTable()
report the drive layout of a "super-floppy" disk as follows:
an MBR-style disk containing only one single partition starting at the
beginning of the disk (StartingOffset == 0) without hidden sectors, and
its type being FAT16 non-bootable.
The disk NTFT signature is set to 0x00000001.

----

Additional bug fixes to make the feature work reliably:

- Make PartMgrGetDriveLayout() also update the FDO DiskData's
  PartitionStyle and Signature/GPT DiskId for consistency (code moved
  from PartMgrRefreshDiskData()).

- In FdoIoctlDiskSetDriveLayout[Ex](), if the disk is "super-floppy",
  but the user wants to create more than one partition, fail the call.
  (In the Ex call, fail also if the partition style changes.)
2024-06-12 12:15:22 +02:00
Hermès Bélusca-Maïto
33ac3578fd [PARTMGR] Fix the way the "symlink -> target" DPRINT is displayed 2024-06-12 12:14:53 +02:00
Hermès Bélusca-Maïto
2d6bbdc6ed [PARTMGR] Fix x64 build warning
warning C4267: 'function': conversion from 'size_t' to 'ULONG', possible loss of data'

The OutputBufferLength member that was temporarily stored in
outBufferLength is already a ULONG, and IssueSyncIoControlRequest()
takes the length as a ULONG. So there is no need to use 'size_t' here.
2024-06-12 12:14:45 +02:00
Maj Soklič
ba6e9a09be [SHELL32] Remove redundant WS_TABSTOP's from RC files (#7000)
for PUSHBUTTON, DEFPUSHBUTTON, CHECKBOX, AUTOCHECKBOX
2024-06-12 12:11:52 +02:00
Maj Soklič
8ba5f1c1db [SNDVOL32] Remove redundant WS_TABSTOPs from RC files (#7003) 2024-06-12 12:09:47 +02:00
Maj Soklič
b4cfc4c1ad [NETCFGX] Remove redundant WS_TABSTOPs from RC files (#7002) 2024-06-12 12:07:52 +02:00
Justin Miller
bc6c731db3 [KERNEL32_VISTA][SDK] Move SRW definitions to NDK (#6806)
Move SRW and condition variable definitions out of kernel32_vista and into the NDK.

Essentially grabbed from PR #1190
Trying to reduce diff needed for Rtl/ntdll sync.
2024-06-11 22:03:57 +02:00
Katayama Hirofumi MZ
4fe33fe9d5 [SHELL32] Update Japanese (ja-JP) translation
CORE-18706
2024-06-11 15:23:27 +09:00
Katayama Hirofumi MZ
e1094e6f8a [USETUP] Update Japanese (ja-JP) translation
CORE-18706
2024-06-11 15:15:26 +09:00
Hermès Bélusca-Maïto
b84f2a1cdc [KDVM] Fix definition of RtlEqualMemory() (#6988)
Comply with the standard documented behaviour:

https://learn.microsoft.com/en-us/windows-hardware/drivers/ddi/wdm/nf-wdm-rtlequalmemory#return-value
> RtlEqualMemory returns TRUE if Source1 and Source2 are equivalent; otherwise, it returns FALSE.

and
https://learn.microsoft.com/en-us/windows-hardware/drivers/ddi/wdm/nf-wdm-rtlcomparememory#return-value
> [...] If all bytes match up to the specified Length value, the Length value is returned.
2024-06-10 22:29:22 +02:00
Hermès Bélusca-Maïto
0a8b421d53 [PARTMGR] Implement IOCTL_VOLUME_QUERY_VOLUME_NUMBER and IOCTL_VOLUME_IS_PARTITION (#6911)
- Implement IOCTL_VOLUME_QUERY_VOLUME_NUMBER:
  See usage example in:
  7241cebfa2/mayfield/branches/spr/src/umapps/ndassvc/service/drivematch.cpp (L627)

- Stubplement IOCTL_VOLUME_IS_PARTITION:
  The only type of volume we support right now is disk partition
  so we just return success. A more robust algorithm would be
  to check whether the volume has only one single extent, that
  covers the whole partition on which it lies upon. If this is
  not the case, return STATUS_UNSUCCESSFUL instead.
2024-06-10 21:32:47 +02:00
Hermès Bélusca-Maïto
0b366ea122 [CMAKE][REACTOS] Introduce a utf16le_convert() cmake helper (#6904)
Used when we convert files to UTF16-LE during our build process.
Removes duplicated code.
2024-06-10 21:23:12 +02:00
Hermès Bélusca-Maïto
c752e8c0be [SETUPLIB] FindSupportedSystemPartition(): Add missing NULL check
Addendum to commit 59acff79e.
2024-06-10 13:14:28 +02:00
Gabriele Lo Re
ae27ffcddc [TRANSLATION] Improve Italian (it-IT) translation (#6820)
I have edited some traslation files for the italian language, as the text
looked robotic in the way senteces were written, or in some cases it used
not-really-fitting synonymous or incorrect spelling. The edited strings
are from varius areas of ReactOS. I hope this contribution makes italian
language less strange to native speakers.

- [ACCESS] Improve Italian (it-IT) translation
- [DESK] Improve Italian (it-IT) translation
- [JOY] Improve Italian (it-IT) translation
- [MAIN] Improve Italian (it-IT) translation
- [SYSDM] Improve Italian (it-IT) translation
- [TIMEDATE] Improve Italian (it-IT) translation
- [ACPPAGE] Improve Italian (it-IT) translation
- [DESKADP] Improve Italian (it-IT) translation
- [DEVCPUX] Add Italian (it-IT) translation
- [FONTEXT] Improve Italian (it-IT) translation
- [ZIPFLDR] Improve Italian (it-IT) translation
- [BROWSEUI] Improve Italian (it-IT) translation
- [USER32] Improve Italian (it-IT) translation
- [CONSRV] Improve Italian (it-IT) translation
- [USERSRV] Improve Italian (it-IT) translation

Reviewed-by: Joachim Henze <joachim.henze@reactos.org>
Reviewed-by: Simone Mario Lombardo <me@simonelombardo.com>
2024-06-10 13:45:00 +03:00
Piotr Hetnarowicz
ca4faec8a3 [EXPLORER] Update Polish (pl-PL) translation (#6685)
Reviewed-by: Adam Stachowicz <saibamenppl@gmail.com>
Reviewed-by: Adam Słaboń <asaillen@protonmail.com>
2024-06-10 12:52:16 +03:00
Doug Lyons
40955b447c [RICHED20] Fix assert in editpad due to excessive tab count (#6976)
* https://jira.reactos.org/browse/CORE-8452

* Cherry pick this Wine commit into ReactOS:
7b2ff97773
2024-06-09 03:57:40 -05:00
Whindmar Saksit
ecb5cae48f [SHELL32] SetNameOf should not append old extension to folders (#6954) 2024-06-08 18:45:23 +02:00
Whindmar Saksit
3f6af8b848 [RAPPS] Improve existing window re-use (#5617)
- Fix small race between CreateMutex and CMainWindow creating the window, and another instance getting NULL from FindWindow.
- If the existing window is minimized, it should be restored.
2024-06-08 01:18:18 +02:00
Katayama Hirofumi MZ
7e2cd98688 [BOOTDATA][INF] Retry: Add Tahoma entry to Asian FontLink (#7001)
This is re-trial of #6985.
Forgot a comma and a backslash.
JIRA issue: CORE-9616
Modify boot/bootdata/hivesft.inf.
2024-06-07 21:21:03 +09:00
Maj Soklič
6c7974d91f [GITHUB] Fix toolset version for MSVC 17.10 (#6997)
MSVC 17.10 now uses 14.4x for its toolset version.
GitHub just upgraded to this version as seen here:
- https://github.com/actions/runner-images/releases/tag/win22%2F20240603.1

Use latest toolset instead of clamping to a specific minor version.
2024-06-07 01:22:20 +03:00
Katayama Hirofumi MZ
5a159ad1cc Revert "[BOOTDATA][INF] Add Tahoma entry to Asian FontLink (#6985)" (#6996)
Reverts #6985
JIRA issue: CORE-9616
Forgot a comma and a backslash.
I will retry.
2024-06-07 01:48:22 +09:00
Katayama Hirofumi MZ
8079fa1a3d [BOOTDATA][INF] Add Tahoma entry to Asian FontLink (#6985)
Follow-up to #6929.
Latin accented characters will be able to
be mixed in East Asian text by FontLink
framework in the future.
JIRA issue: CORE-9616
- Modify boot/bootdata/hivesft.inf.
- Add "tahoma.ttf,Tahoma" entry to
  Asian FontLink registry values.
2024-06-07 00:43:55 +09:00
Katayama Hirofumi MZ
77d05dd552 [WALLPAPERS] Restructuring (#6967)
Respect the original directory structure.
JIRA issue: CORE-19617
- Make Angelus, Angelus/ReactOS, and
  Mizu folders.
- Move image files.
- Add LICENSE.txt and suggestion.txt files.
- Revive modules/wallpapers/Angelus/
  ReadMe.txt.
2024-06-06 18:56:17 +09:00
Anderson Rodrigues
a061747295 [TASKMGR] Fix orthographic error in Portuguese Brazilian (pt-BR) translation (#6980) 2024-06-05 21:30:49 +03:00
Whindmar Saksit
82721de625 [SHELL32] Don't add folder verbs to non-folder RegItems (#6991)
RegItems that pretend to be files should not have Folder verbs
2024-06-05 02:12:58 +02:00
Hermès Bélusca-Maïto
ee92f4b28e [SDK:CMAKE/IDL] Fix dependency tracking in generate_idl_iids() and extra cleanup.
Do the same in add_idl_reg_script() (currently unused helper) as well.

This is an addendum to commit b587e7b32, where the removal of the
IDL_FILE_FULL variable definition, broke dependency tracking with
the DEPENDS option. Now we use the correct variable.

The problem was caught after doing a partial (non-clean) build after
commit 0d10fb814. In this commit, two new interfaces, IExecuteCommand
and IObjectWithSelection, were added in the psdk/shobjidl.idl file
and used elsewhere. Recompilation correctly regenerated the corresponding
header, psdk/shobjidl.h, but did not trigger a regeneration of the uuid
static library (via the regeneration of sdk/lib/uuid/shobjidl_i.c),
due to broken dependency tracking on the shobjidl.idl file.
Because of this, the shobjidl_i.c did not contain the new GUID
definitions for these new interfaces, IID_IExecuteCommand and
IID_IObjectWithSelection, and triggered linking errors for the
com_apitest, actxprxy and shell32 modules:

```
error LNK2001: unresolved external symbol _IID_IExecuteCommand
error LNK2001: unresolved external symbol _IID_IObjectWithSelection
fatal error LNK1120: 2 unresolved externals
```
2024-06-04 22:21:59 +02:00
Whindmar Saksit
c97c1ad4c5 [SHELL32][BROWSEUI] Implement ShellBrowser Apply/Reset default folder settings (#6912) 2024-06-04 18:37:19 +02:00
Carl J. Bialorucki
ad73e17418 [USER32] Introduce user32_vista and stubplement GetDpiForWindow() (#6208)
Add user32_vista.dll to introduce new NT6+ User32 features without changing the existing User32.dll when compiled as NT5.x. Also implements a stub for GetDpiForWindow(). The GetDpiForWindow() function will be required to Wine-sync common controls to modern Wine versions.

Changes:
Expose GetDpiForWindow() function and USER_DEFAULT_SCREEN_DPI to appropriate versions in winuser.h
Introduce a basic user32_vista library that can be expanded as needed.
2024-06-04 10:19:32 -06:00
Whindmar Saksit
063997f2e0 [REGEDIT] Implement the "Go to HKCU/HKLM" feature (#6900) 2024-06-04 15:40:14 +02:00
Whindmar Saksit
0d10fb814f [SHELL32] Implement DelegateExecute verb handler and basic IShellItemArray (#6972) 2024-06-04 15:38:49 +02:00
Serge Gautherie
01fbf25dab [DBGHELP][NDK][RTL] *RtlComputeCrc32(): Add 'const' to 2nd parameter (#6973)
and sync SAL2 annotations.

It didn't always warn in the past, our gutfeeling (we have *not* double-checked that thesis!) is that the warnings might have been triggered when 0.4.15-dev-958-g 237aa3a9c1 was committed
2024-06-04 13:35:57 +02:00
Julen Urizar Compains
1cd08eee52 [MSI] CORE-18707 hack. Allow MSI under ROS amd64 to continue when GetSystemWow64DirectoryW is called (#6887) 2024-06-04 13:10:09 +02:00
Thamatip Chitpong
b631c5d3b1 [WINMINE] Add EXE version info 2024-06-04 00:36:04 +07:00
Thamatip Chitpong
b399f7d5b4 [SPIDER] Add EXE version info 2024-06-04 00:36:04 +07:00
Thamatip Chitpong
a01cbc3ac2 [SOLITAIRE] Add EXE version info 2024-06-04 00:36:04 +07:00
Oleg Dubinskiy
4ad83ef095 [WINMINE] Update Ukrainian (uk-UA) translation
Translate the "Sound" menu item to Ukrainian.
2024-06-03 18:45:04 +02:00
Oleg Dubinskiy
94a25e66de [WINMINE] Update Russian (ru-RU) translation
Translate the "Sound" menu item to Russian.
2024-06-03 18:41:04 +02:00
Thamatip Chitpong
580574fba8 [WINMINE] Add sound effects (#6969)
- Sound is disabled by default
- Use WinXP-compatible registry key and value
2024-06-03 21:57:44 +07:00
Katayama Hirofumi MZ
890b9c0b93 [NTGDI][FREETYPE] Simplify get_glyph_index_flagged (#6977)
Simplify code.
JIRA issue: CORE-9616
- Reduce one parameter of get_glyph_index_flagged function.
2024-06-03 09:28:52 +09:00
Jose Carlos Jesus
51f3cf0509 [NOTEPAD] pt-PT: Fix accel collisions. Improve menu cmd translation (#6978)
* [NOTEPAD] Fix accel collisions. Improve menu cmd translation (pt-PT)
* [NOTEPAD] Update portuguese (pt-PT) translation
2024-06-02 20:02:33 +02:00
Jose Carlos Jesus
abd34b6d90 [REGEDIT] pt-PT.rc: Fix accels collisions (#6975)
accels compatibility closer to Win2003 Server

Co-authored-by: Joachim Henze <joachim.henze@reactos.org>
2024-06-02 12:06:13 +02:00
George Bișoc
fe23a4aaeb [NTOS:CM] Lock the entire registry down when we unload a hive
The PR #6649 which fixed an issue with orphaned KCBs leaking in memory which also pointed to unloaded registry hives, it also brought a problem.
In CmpEnumerateOpenSubKeys there is a risk of getting hit by a deadlock as we enumerate the cache table to remove empty cache entries.

Fundamentally CmpEnumerateOpenSubKeys locks down a KCB from cache for exclusive use in order to tear down its contents from memory but it doesn't address the fact a KCB might have already been locked in the same calling thread, leading to a recursion.
This leads to random hangs when unloading a hive during system startup (tipically on a clean install).

The solution here is to simply lock the whole registry when we unload a hive so that we don't have to worry the KCBs are getting tampered by anybody else. This also simplifies the code.
Although locking the entire registry while other apps are doing registry related operations to other hives can cause overhead. If this turns out to be bad then we have to rethink the locking mechanism here.

CORE-19539
2024-06-01 16:17:47 +02:00
George Bișoc
5d0117de90 [NTOS:CM] Annotate CmUnloadKey with SAL2 2024-06-01 16:17:47 +02:00
Oleg Dubinskiy
a55e9ce19c [AC97] Use individual Decibel range for Master Volume control (#6950)
Add ReactOS change to use the same Decibel (dB) sound loudness range for Master Volume control as for WaveOut Volume Control.
This fixes incompatible volume level change scaling when changing the volume in Fox Audio Player 0.10.2 from Rapps and Winamp 2.95 with WaveOut output plugin.
Now it is identical to the one when using original AC97 driver from Windows XP/Server 2003.
CORE-14780
2024-06-01 12:31:53 +02:00
Oleg Dubinskiy
9046cc97ee [AUDIO] Implement volume control support (#6922)
Implement volume level changing for Aux/MidiOut/WaveOut devices. It's represented the following WINMM functions:
- auxGetVolume,
- auxSetVolume,
- midiOutGetVolume,
- midiOutSetVolume,
- waveOutGetVolume,
- waveOutSetVolume,
which are calling the followind messages appropriately:
- AUXDM_GETVOLUME,
- AUXDM_SETVOLUME,
- MODM_GETVOLUME,
- MODM_SETVOLUME,
- WODM_GETVOLUME,
- WODM_SETVOLUME.
This fixes volume control for several 3rd-party programs (like Fox Audio Player 0.10.2 from Rapps, Winamp 2.95 with WaveOut plugin). However it does not fix changing the volume in system volume mixers (SndVol32, MMSys), since they are using their own functionality instead. They technically do the same things, but apart from the functions mentioned above.
CORE-14780
2024-06-01 12:30:33 +02:00
Joachim Henze
e1db293f12 [REGEDIT] *.rc Improve accels and harmonize a bit, especially de-DE (#6964)
- all languages: Strip unintended accelerators for Cancel-buttons
- many languages: had accel collision between "&File"-menu and "&Favorites" menu. It must be "F&avrites" for those!
- de-DE: "&Wertname:" -> "&Name:" was done because this is what Windows does and to fix an accel collision between "&Wert" and "&Wertname"
- de-DE: use the same name for String, DWORD, MULTISTRING, EXPANDABLESTRING in all 3 dialogs (each of the 3 dlgs used different names before), which also fixes an accel collision between "&Schlüssel" and "&String"
- de-DE: structurally use "Sc&hlüssel", instead of mixed things
- de-DE: "&Trennen" -> "&Teilen" is what Windows does
- de-DE "&Ändern" -> "Än&dern" is what Windows does, and avoids accel at a special character
- de-DE "&Über" -> "Inf&o" is what Windows does, and avoids accel at a special character
- de-DE "S&chlüsselnamen kopieren" -> "Schlüsselnamen &kopieren" is to match another already existing "Schlüsselnamen &kopieren" in the file
- de-DE "A&lles auswählen" -> "Alles &markieren" is what Windows does
- all languages: fix 26x wrong capitalization for "Ms Shell Dlg" -> "MS Shell Dlg"
- use the correct fonts for some asian languages (font-size9) this was for 5 new dlgs from 0.4.15-dev'ing
- fix many accelerator collisions for many languages, or leave FIXMEs for them where I found it to be better for the native speakers to act on their own in the future

JIRA issue: none
2024-05-31 17:28:39 +02:00
Serge Gautherie
3cc4361cca [CMAKE] Clang*: Add '-Werror=unknown-warning-option' for C/CXX (#6383)
* [UDFS] Clang: Fix a #pragma

'warning: unknown warning group '-Wstringop-overflow', ignored [-Wunknown-warning-option]'

Follow-up to 612b1f2e6 (0.4.15-dev-1129).

* [CREATESPEC] Clang: Fix a target_compile_options()

'warning: unknown warning option '-Wno-stringop-overflow'; did you mean '-Wno-shift-overflow'? [-Wunknown-warning-option]'

Addendum to 00ed72d7e (0.4.15-dev-1169).

* [MSVCRT_WINETEST] Clang*: Fix a target_compile_options()

'warning: unknown warning option '-Wno-stringop-truncation'; did you mean '-Wno-string-concatenation'? [-Wunknown-warning-option]'

Addendum to commits 00ed72d7e (0.4.15-dev-1169) then f155b9377 (0.4.15-dev-4612).

* [TELNET] Clang*: Fix a target_compile_options()

'warning: unknown warning option '-Wno-restrict' [-Wunknown-warning-option]'

Addendum to 447ef2aa4 (0.4.15-dev-4613).
2024-05-31 16:26:11 +02:00
Katayama Hirofumi MZ
b50ab0dc68 [SHELL32] brfolder.cpp: Refresh items (#6965)
Refresh the items in the tree-view
control of SHBrowseForFolderA/W
functions against change notifications.
JIRA issue: CORE-17340
- Add BrFolder_IsTreeItemInEnum and
  BrFolder_TreeItemHasThisChild helper
  functions.
- Add BrFolder_Refresh,
  BrFolder_RefreshRecurse, and
  BrFolder_UpdateItem functions to
  refresh items.
- Call BrFolder_Refresh in
  BrFolder_OnChangeEx function and on
  keyboard F5 and Ctrl+R actions.
2024-05-31 22:40:56 +09:00
Whindmar Saksit
c3ec1b9ac6 [SHELL32_APITEST] Stricter SHSimpleIDListFromPath tests (#6894)
The first x number of bytes in PIDLs for drive letters, folders and files are set in stone and should match Windows.
2024-05-30 18:18:39 +02:00
Whindmar Saksit
3da9e7e251 [SHELL32] Implement SHBrowseForFolder items contextmenu (#6952)
* [SHELL32] Implement SHBrowseForFolder items contextmenu

CORE-16944 CORE-19597
2024-05-30 17:53:44 +02:00
Whindmar Saksit
6d7648d723 [SHELL32] CDefView::InvokeContextMenuCommand must specify a showcmd (#6966)
ZeroMemory causes nShow to be SW_HIDE. This causes shell extensions that propagates the nShow all the way, will start child processes hidden.
2024-05-30 15:22:29 +02:00
Whindmar Saksit
dc0ed6de1e [SHELL32] SHBrowseForFolder must rename using IShellFolder (#6953)
To support renaming My Computer and other non-FS folders, one cannot convert the pidl to a path.

CORE-19622
2024-05-29 16:00:28 +02:00
Katayama Hirofumi MZ
a541a468ba [NTGDI][FREETYPE] Unload font engine on system shut-down (#6955)
Check system integrity by explicitly
releasing the font engine.
JIRA issue: CORE-9616
- Use RTL_STATIC_LIST_HEAD against
  g_FontListHead and
  g_FontCacheListHead variables and
  omit initialization of them.
- Implement FreeFontSupport function.
- Call FreeFontSupport in win32k!
  DriverUnload function.
- Fix some usages of
  CONTAINING_RECORD macro.
2024-05-29 09:41:39 +09:00
Katayama Hirofumi MZ
817f89466d [BOOTDATA][IMM32][NTUSER] Follow-up to #6961 (#6962)
JIRA issue: CORE-19320
- Delete "(brain-dead)".
- Fix "despite of" as "despite".
- Use "%S" instead of debugstr_w.
2024-05-29 01:14:52 +09:00
Katayama Hirofumi MZ
c8a3c919e5 [BOOTDATA][IMM32][NTUSER] Set "LoadIMM" to zero
We set "LoadIMM" to zero in order to disable Cicero.
The name of "LoadIMM" is a brain-dead name. This name
means Cicero despite of its name (brain-dead).
They use a human-confusing name intentionally.

JIRA issue: CORE-19320

- Set HKLM\SOFTWARE\Microsoft\Windows NT\
  CurrentVersion\IMM:LoadIMM to 0.
- Add warning comments to the brain-dead name "LoadIMM".
2024-05-28 23:17:22 +09:00
Katayama Hirofumi MZ
4225717dc9 [IMM32][NTUSER] Fix NtUserGetThreadState call of Imm32InquireIme
There was a mistake of parameter value for NtUserGetThreadState
call in Imm32InquireIme function. This affected the logon process.

JIRA issue: CORE-19320

- Replace THREADSTATE_ISWINLOGON2 with THREADSTATE_ISWINLOGON in
  NtUserGetThreadState call in Imm32InquireIme function.
- Rename THREADSTATE_ISWINLOGON2 as THREADSTATE_UNKNOWN_0x10.
- Adapt NtUserGetThreadState to this change.
2024-05-28 23:17:22 +09:00
Katayama Hirofumi MZ
20f1bb4ab8 [WALLPAPERS] Reduce wallpapers (#6947)
We reduce our wallpapers in Release bundle.
Reduce the cost of downloading the release images.
See also: reactos/rapps-db#243
JIRA issue: CORE-19617
- Reduce some wallpapers (7 MB to 253 KB).
- Modify CMakeLists.txt to reduce wallpapers.
- Update ReadMe.txt.
- Add ReadMe.txt to reactos/Web/Wallpaper.
2024-05-28 23:06:15 +09:00
Katayama Hirofumi MZ
522c02f335 [SHELL32] Fix CDefView::OnChangeNotify for My Documents (#6935)
Follow-up to #6916. My Documents change notification was not working
due to this bug.
JIRA issue: CORE-19615
- Use _ILIsSpecialFolder for checking PIDLs.
- Simplify ILIsParentOrSpecialParent helper function.
- Add SFVM_FSNOTIFY, SFVM_QUERYFSNOTIFY, and SFVM_GETNOTIFY
  callback calls.
2024-05-28 23:04:21 +09:00
Whindmar Saksit
47d17f59bf [SHELL32] Refactor DefView column handling (#5767)
This refactor decouples the previous assumption that the ListView column index is the same thing as the IShellFolder column index. By doing this, support for turning columns on or off becomes possible. The SHCOLSTATE_ONBYDEFAULT and SHCOLSTATE_HIDDEN flags are also respected.

I also fixes the "Arrange icons by" submenu.

CORE-18526
2024-05-28 11:39:00 +02:00
Katayama Hirofumi MZ
1e75ea8a82 [SHELL32] CDefView: Implement SFVM_GETNAMELENGTH callback (#6942)
Implementing missing folder view callbacks...
JIRA issue: CORE-19616
- Call _DoFolderViewCB on LVN_BEGINLABELEDITW message.
- Send EM_SETLIMITTEXT message if the limit was set.
2024-05-28 08:14:36 +09:00
Katayama Hirofumi MZ
38b7a6816c [SHELL32][BROWSEUI] CDefView: Implement SFVM_ADDPROPERTYPAGES callback (#6944)
Implementing missing folder view callbacks...
JIRA issue: CORE-19616
- Add SFVM_PROPPAGE_DATA structure to "shobjidl.idl".
- Implement CDefView::AddPropertySheetPages by calling
  SFVM_ADDPROPERTYPAGES callback.
- Modify CShellBrowser::DoFolderOptions that uses AddPropertySheetPages.
2024-05-28 08:07:29 +09:00
Katayama Hirofumi MZ
4696996ee2 [SHELL32] brfolder.cpp: Remove pEnumIL member (#6946)
Refactoring. Simplify item insertion code.
JIRA issue: CORE-17340
- Remove pEnumIL member from BrItemData structure.
- Add BrFolder_GetChildrenEnum helper function.
- Remove IEnumIDList* argument from BrFolder_InsertItem and
  BrFolder_Expand functions.
- Add BrFolder_OnOK function and use it.
2024-05-28 08:00:12 +09:00
Katayama Hirofumi MZ
1bc6c90086 [SHELL32] CDefView: Implement SFVM_CANSELECTALL callback (#6945)
Implementing missing folder view callbacks...
JIRA issue: CORE-19616
- Call SFVM_CANSELECTALL callback on FCIDM_SHVIEW_SELECTALL.
- If it returned S_FALSE, then do not select all.
2024-05-27 09:05:44 +09:00
Katayama Hirofumi MZ
cdb970b653 [SHELL32] CDefView: Implement SFVM_COLUMNCLICK callback (#6943)
Implementing missing folder view callbacks...
JIRA issue: CORE-19616
- Call _DoFolderViewCB on LVN_COLUMNCLICK.
- If it returned S_OK, then don't sort items.
2024-05-27 07:35:20 +09:00
Katayama Hirofumi MZ
d56e507e95 [SHELL32] CDefView: Implement SFVM_GETCOMMANDIR callback (#6941)
Implementing missing folder view callbacks...
JIRA issue: CORE-19616
- In CDefView::InvokeContextMenuCommand,
  call SFVM_GETCOMMANDDIR callback and
  store the directory into 
  CMINVOKECOMMANDINFOEX structure.
2024-05-27 07:01:51 +09:00
Jose Carlos Jesus
ef693390ef [SHELL32] Fix accelerator collision in Portuguese (pt-PT) translation (#6927)
closer to pt-PT 2k3sp2
2024-05-26 21:26:35 +02:00
Katayama Hirofumi MZ
4988de4b1d [SHELL32] brfolder.cpp: Adopt SHCNRF_NewDelivery method (#6938)
New delivery method is better than old method
in performance. Now deletion notification
partially works.
JIRA issue: CORE-17340
- Specify (SHCNRF_ShellLevel |
  SHCNRF_NewDelivery).
- Rewrite BrFolder_OnChange function and
  add BrFolder_OnChangeEx helper function.
2024-05-26 04:58:30 +09:00
Katayama Hirofumi MZ
70e8653f23 [SHELL32] IDD_BROWSE_FOR_FOLDER: Use IDOK for 1, IDCANCEL for 2 (#6937)
Follow-up to #6934. Don't use magic numbers.
JIRA issue: N/A
Use IDOK and IDCANCEL instead of 1 and 2.
2024-05-25 17:28:59 +09:00
Katayama Hirofumi MZ
61fe74030b [SHELL32] Reorder IDD_BROWSE_FOR_FOLDER dialog items (#6934)
By correctly ordering the items of the dialog, the dialog can use auto focus.
JIRA issue: N/A
- Change the ordering of IDD_BROWSE_FOR_FOLDER dialog items.
- Remove SetFocus call.
2024-05-25 16:45:06 +09:00
Katayama Hirofumi MZ
8df5aac9ba [SHELL32] brfolder.cpp: Follow-up of af03438 (#6936)
Follow-up of #6909 (af03438). Fix assertions and exceptions of
CComPtr and CComHeapPtr.
JIRA issue: CORE-17340
- Don't use AddRef, Release, and Attach methods against CComPtr
  template class. Simply use assignment.
- Fix the 3rd parameter of three IShellFolder::GetAttributesOf
  method calls. It had referenced CHeapPtr::operator&.
2024-05-25 16:17:00 +09:00
Doug Lyons
6338913f26 [NTUSER] menu.c position fix to not obscure 'Close' (#6923)
CORE-19579

When IS_SYSTEM_MENU was redefined in https://github.com/reactos/reactos/commit/3ae0ccdcc,
this broke the logic here. So now we restore the correctly working logic.
2024-05-24 19:15:07 -05:00
Splitwirez
50d260a7f0 [SYSSETUP] fix theme switcher (#6930)
Switching themes during initial setup broke at some point relatively recently - following said regression, selecting a theme simply has no effect at all. This fixes that.
2024-05-24 16:14:32 -07:00
Ratin Gao
ce0460b131 [CMAKE] Update sdk/cmake/baseaddress[_msvc].cmake (#6869)
Fix system boot crash with `STATUS_ILLEGAL_DLL_RELOCATION` when compiled with `-DDLL_EXPORT_VERSION=0x600`
2024-05-24 16:10:05 -07:00
Katayama Hirofumi MZ
327b6c64a6 [SHELL32] Don't free original PIDLs in CDefView::OnChangeNotify (#6916)
Follow-up to #6898. These PIDLs shouldn't be
freed because they are not allocated by
CoTaskMemAlloc.
We should use PIDLs mainly in internal data
instead of physical paths for change
notifications.

JIRA issue: CORE-13950
JIRA issue: CORE-19612

- Re-implement SHGetRealIDL function.
- Translate child IDLs by using SHGetRealIDL.
- Use newly-defined pidl0Temp and pidl1Temp
  for temporary creation.
- Improve ILIsParentOrSpecialParent function
  without using SHGetPathFromIDListW function.
2024-05-25 07:54:53 +09:00
Katayama Hirofumi MZ
eb43a803bd [BOOTDATA][INF] Add FontLink registry entries (#6929)
Prepare for font linking implementation.
JIRA issue: CORE-9616
Modify boot/bootdata/hivesft.inf.
2024-05-25 07:11:26 +09:00
Katayama Hirofumi MZ
ed7c23fc41 [SHELL32] brfolder.cpp: Rename BrsFolder as BrFolder
and rename BrsItemData as BrItemData to reduce binary size of
Debug version.
JIRA issue: CORE-17340
2024-05-24 22:54:27 +09:00
Katayama Hirofumi MZ
af03438aba [SHELL32] brsfolder.cpp: Refactoring
Modernize source code. Improve readability and reduce confusing.
JIRA issue: CORE-17340
- Rename browse_info as BrsFolder.
- Rename TV_ITEMDATA as BrsItemData.
- Rename InsertTreeViewItem as BrsFolder_InsertItem.
- Rename InitializeTreeView as BrsFolder_InitTreeView.
- Rename GetIcon as BrsFolder_GetIcon.
- Rename GetNormalAndSelectedIcons as BrsFolder_GetIconPair.
- Rename GetName as BrsFolder_GetName.
- Fix some confusing and/or non-standard variable names.
- Use ATL to simplify logics.
2024-05-24 22:54:27 +09:00
Katayama Hirofumi MZ
e582ca4ad6 [SHELL32] brsfolder.cpp: Formatting only
JIRA issue: CORE-17340
2024-05-24 22:54:27 +09:00
Timo Kreuzer
4fb2fdbac6 [NTOS:CM] Properly unlock registry on failure in NtUnloadKey2 2024-05-23 21:21:35 +02:00
Timo Kreuzer
da64119fe6 [NTOS:CM] Add debug code for analyzing lock issues 2024-05-23 21:21:35 +02:00
Katayama Hirofumi MZ
53518bbab3 [SHLWAPI][SHLWAPI_APITEST][SDK] Implement IShellFolder_GetDisplayNameOf (#6918)
This export function is needed to implement
shell32!SHGetRealIDL function correctly.
JIRA issue: CORE-19278
- Implement IShellFolder_GetDisplayNameOf
  function (This function is not inline function in
  this case) with retry data.
- Add SFGDNO_RETRYALWAYS flag to
  <shlwapi_undoc.h>.
- Add IShellFolderHelpers testcase.
2024-05-23 22:57:31 +09:00
George Bișoc
f69e256376 [ACPI] Register a device interface class with ACPI fans
As the commit title says, the point of registering a device interface with ACPI fans is to receive incoming PnP notifications of incoming ACPI fan drivers so that the power manager can connect to them by creating a power device policies dedicated to them during power manager initialization.

CORE-18969
2024-05-22 20:23:06 +02:00
George Bișoc
0b97a997d2 [DDK] Add the GUID_DEVICE_FAN identifier
This identifier will be used to regiser incoming ACPI fans with the I/O PnP manager from the ACPI driver.
2024-05-22 20:22:56 +02:00
Timo Kreuzer
677f190f4c [CMAKE] Stop setting the C standard on modules
Global standard is C99.
2024-05-22 18:04:53 +02:00
Timo Kreuzer
e0495079cb [MSVCRT][NTDLL][NTOS] Add import aliases for _swprintf and _vswprintf 2024-05-22 17:55:38 +02:00
Timo Kreuzer
60f4493a68 [SPEC2DEF] Implement support for import symbol aliases 2024-05-22 17:55:38 +02:00
Joachim Henze
bc2621812f [SHELL32] Strip undesired format-string (#6924)
A trivial change.
An addendum to 4ff1aa5fac (SVN r30784) where el-GR.rc was forgotten.
2024-05-22 15:39:13 +02:00
Katayama Hirofumi MZ
8204c6e2fd [SHELL32] CDirectoryWatcher: Check if window is alive (#6915)
Kill the zombie watchers for system
performance.
JIRA issue: CORE-13950
- Add HWND parameter to
  CDirectoryWatcher::Create.
- Check whether the HWND is alive at
  CDirectoryWatcher::IsDead.
2024-05-22 20:33:26 +09:00
Joachim Henze
d7be7486c9 [SHELL32] RC: Fix some FIXMEs, add others (#6861)
- fixes the last text truncations we had in IDD_FOLDER_OPTIONS_GENERAL
- small tweaks otherwhere
- add some FIXMEs

Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2024-05-22 04:29:21 +02:00
Whindmar Saksit
11ea1d6198 [BROWSEUI][COMCTL32] Handle rename on other folders in Explorer bar tree (#6832)
IContextMenu (CDefaultContextMenu) only knows how to rename when its site is an IShellView. The tree must detect the rename operation and perform it in the TreeView instead.

Fixed a bug in the ListView that is triggered by activating DefView (to complete the rename): Just after DefView has been activated, the tree performs a navigation to the newly renamed folder, this causes DefView to be destroyed and in turn the ListView. The ListView tries to handle a selection change during destruction of the ListView and ends up accessing an invalid pointer.

CORE-19557
2024-05-22 00:06:46 +02:00
Whindmar Saksit
a25a4eb7b8 [SHELL32] Implement CSIDL_CONNECTIONS and fix CSIDL_PRINTERS (#6919) 2024-05-21 21:09:18 +02:00
Joachim Henze
a549a9d8e4 [SHELL32] ro-RO.rc Improvement (#6844)
Addendum to #6517 (the rules) and
Addendum to #6657 (Andreis recent shell32 PR)

Following the rule:

1.) We use only the correct Romanian language diacritics.
This means using lowercase ţ instead of ț.
This means using lowercase ş instead of ș.
This means using uppercase Ş instead of Ș.
Some of XP/2k3sp2 fonts do lack ț and ș and Ș.

2.) Avoid the word "calculator" for the shutdown/logoff prompt (same as Andrei Miloiu did before in his PR at many locations).
Using "sistem" is fine, and using "computer" is fine.

3.) Harmonize some strings used for some FILEOPENDLG_FILTER.

TODO:
[] In a future PR we will have to do the same character replacements for the Shell folder path default values. This has to be done in sync with dll/win32/userenv/lang therefore I left them out here for now, for easier reviewability of those more delicate parts.
2024-05-21 18:29:52 +02:00
Whindmar Saksit
43b3280f69 [EXPLORER] Don't use Explorers ID_SHELL_CMD IDs in IShellFolder menu (#6872)
Explorer does not control the IDs used by CFSFolder::QueryContext menu and therefore cannot share its ID range with it. The range passed to CFSFolder::QueryContext also cannot start at 0 because CTrayWindow::TrackCtxMenu would interpret that as user cancel.
2024-05-21 12:57:54 +02:00
Serge Gautherie
a6298b5c7a [NTOS:MM] section.c: some trivial cleanup (#5651)
* [NTOS:MM] section.c: Remove unused functions

MiSetControlAreaSymbolsLoaded(),
MiLoadUserSymbols():
Added on 436edb2 (r60802). Never used.

MiSubsectionConsistent():
Added on cda03c0 (r57209). Never used.

MiGetFileObjectForSectionAddress():
Added on 635d9ca (r67810). Calls removed on 0dfd233 (r68123).

MiSetProtectionOnSection():
Added on 9f28638 (r56317). Never used.

Plus,
MmCreateArm3Section():
Add an UNIMPLEMENTED on a specific case.

* [NTOS:MM] section.c: Use static instead of NTAPI for local functions
2024-05-21 11:08:40 +02:00
Whindmar Saksit
2198247bdf [REGEDIT] Implement "Add to favorites" feature (#6890)
The ability to go to a favorite and the dialog was already there, just needed to fill in the blanks.
2024-05-21 09:31:24 +02:00
Whindmar Saksit
108db8f007 [CSCRIPT][WSCRIPT][BOOTDATA] Basic .wsf support (#6140)
Support for .wsf files with a single script block
2024-05-19 13:57:47 +02:00
Oleg Dubinskiy
09965760e0 [MMIXER] Remove duplicated MIXERCONTROL_CONTROLTYPE_MUX handling
Don't check for KSNOTETYPE_MUX and don't return MIXERCONTROL_CONTROLTYPE_MUX twice.
2024-05-19 10:46:02 +02:00
Katayama Hirofumi MZ
18877737af [SHELL32] Make brsfolder.c C++ (as brsfolder.cpp) (#6906)
Modernize source code.
JIRA issue: CORE-17340
- Move dll/win32/shell32/wine/brsfolder.c to
  dll/win32/shell32/brsfolder.cpp.
- Adapt to C++.
2024-05-19 10:00:20 +09:00
Katayama Hirofumi MZ
5246c2cc56 [SHELL32] Introduce 'HDELFILE' handle type (#6902)
Generic HANDLE type is vague and unreadable.
Declare a special handle type for recycle bin
items.
JIRA issue: CORE-19595
- Declare the HDELFILE handle by
  DECLARE_HANDLE(HDELFILE);.
- Use HDELFILE instead of HANDLE for
  deleted items.
2024-05-18 21:35:48 +09:00
Katayama Hirofumi MZ
6c2d1c31dd [SHLWAPI][SDK] Add IShellFolder_... helper functions (#6893)
Implementing missing features...
JIRA issue: CORE-19278
- Implement IShellFolder_GetDisplayNameOf,
  IShellFolder_ParseDisplayName, and
  IShellFolder_CompareIDs functions.
- Add them to <shlwapi_undoc.h>.
- Modify shlwapi.spec.
- Add some SHCIDS_... macros into shobjidl.idl.
- Provide a macro option
  SHLWAPI_ISHELLFOLDER_HELPERS to
  avoid conflict with <shobjidl.h>
  IShellFolder_... inline functions. Ugly hack
  but effective!
2024-05-18 21:33:33 +09:00
Katayama Hirofumi MZ
ae02934445 [SHELL32] SHBrowseForFolder: Refactor brsfolder.c (#6903)
dll/win32/shell32/wine/brsfolder.c.
This file is too hard to read. Nobody reads.
And WineHQ doesn't show no progress
recently in this file. OUT OF DATE!
JIRA issue: CORE-17340
- Rewrite some SendMessageW code by
  using TreeView_... macros.
- Add BrsFolder_GetDataFromItem helper
  function and use it.
2024-05-18 20:42:22 +09:00
Eva
a0eec982ce [README] Remove underscores between badges (#6896) 2024-05-17 15:34:16 +03:00
Maj Soklic
f22704ad4f [CRT] Fix ARM64 VS2022 debug build (#6899)
__globallocalestatus is missing on VS2022/ARM64 just like on Clang-cl.

Addendum to 861360c65f. CORE-14042 CORE-18200
2024-05-17 12:06:17 +03:00
Maj Soklič
503e68f2c9 [GITHUB] Fix builds by dropping VS2017 and retargeting to VS2022 (#6899)
GitHub dropped VS2017 in the windows-latest runner:
- https://github.com/actions/runner-images/issues/9701
- https://github.com/ilammy/msvc-dev-cmd/issues/80

Addendum to 0f81f46387.
2024-05-17 12:06:07 +03:00
Katayama Hirofumi MZ
3285f698fd [SHELL32][SDK] SHChangeNotify: Re-work Part 1 (#6898)
Making shell change notification implementation better.
Now recycle bin icon change is working.
JIRA issue: CORE-13950
JIRA issue: CORE-19591
JIRA issue: CORE-11453
- Delete SHSimpleIDListFromPathA/W hacks.
- Translate simple PIDLs (coming from SHSimpleIDListFromPathA/W)
  in CDefView::OnChangeNotify method.
- Add CDefView::LV_RefreshIcons method for SHCNE_UPDATEIMAGE
  change event.
- Rename CDefView::LV_ProdItem method as CDefView::LV_UpdateItem.
- Call SHUpdateRecycleBinIcon in SHFileOperationW function.
- Half-implement SHUpdateRecycleBinIcon.
- Call SHChangeNotify in DeleteExt function.
2024-05-17 08:10:15 +09:00
Katayama Hirofumi MZ
e0ba2f3372 [NOTEPAD] Kill warning by typecast (int) in DIALOG_StatusBarUpdateCaretPos
JIRA issue: N/A
2024-05-16 12:35:01 +09:00
Whindmar Saksit
15c42f3ef8 [REGEDIT] Check the correct value in WM_ACTIVATE (#6895) 2024-05-15 22:33:41 +02:00
Ethan Rodensky
965230ded4 [THEMES][LUNAR] Fix SizingMargins for the taskbar and tray backgrounds (#6888)
CORE-11698
2024-05-15 20:38:47 +03:00
Katayama Hirofumi MZ
48a0d8e012 [SHELL32_APITEST] Add SHSimpleIDListFromPath testcase (#6892)
Inspect the behavior of
shell32!SHSimpleIDListFromPath function.
JIRA issue: CORE-19591
2024-05-15 17:01:41 +09:00
Victor Perevertkin
0f81f46387 [GITHUB] Remove VS 2015 build from the CI (#3872)
[WORKFLOWS] Remove some excludes as well
2024-05-14 19:39:42 -07:00
Katayama Hirofumi MZ
ac0bcf4a90 [SHLWAPI][SHLWAPI_APITEST][SDK] PathFileExistsDefExtAndAttributesW (#6879)
Implementing missing features...
JIRA issue: CORE-19278
- Implement PathFileExistsDefExtAndAttributesW function.
- Add its prototype to <shlwapi_undoc.h>.
- Modify shlwapi.spec.
- Add PathFileExistsDefExtAndAttributesW testcase.
2024-05-15 07:42:43 +09:00
Oleg Dubinskiy
96acfcb3dc [NTGDI] AlphaBlend/TransparentBlt: check whether the source DC is an INFO DC too (#6885)
Improve checks in AlphaBlend and TransparentBlt functions: check whether DCSrc is of DCTYPE_INFO also, to fail in that case properly too.
Spotted by PVS-Studio analysis.
Reference: https://pvs-studio.com/en/blog/posts/cpp/1122/.
2024-05-14 19:08:37 +02:00
Katayama Hirofumi MZ
2b0d1faaa9 [WORDPAD] Use FILE_SHARE_READ and OPEN_ALWAYS for writing (#6883)
Follow-up to #6880. Fix access denial on
writing file "C:\freeldr.ini".
JIRA issue: CORE-19575
- Add FILE_SHARE_READ flag in CreateFileW
  call.
- Use OPEN_ALWAYS instead of
  CREATE_ALWAYS, and then explicitly use
  SetEndOfFile function.
2024-05-15 01:23:30 +09:00
Katayama Hirofumi MZ
a64cccd711 [NOTEPAD] Use FILE_SHARE_READ and OPEN_ALWAYS for writing (#6880)
Fix access denial on writing file "C:\freeldr.ini".
JIRA issue: CORE-19575
- Add FILE_SHARE_READ flag and delete
  FILE_SHARE_WRITE flag in CreateFileW call.
- Use OPEN_ALWAYS instead of
  CREATE_ALWAYS, and then explicitly use
  SetEndOfFile function.
2024-05-15 01:22:17 +09:00
Katayama Hirofumi MZ
3e97f76a33 [SHELL32] ShellExecute: Re-work Part 2 (#6882)
Follow-up to #6871. Reduce indentation level.
JIRA issue: CORE-17482
In ShellExecuteExW, early check the structure
size and return on failure before
SHCoInitializeAnyApartment call.
2024-05-14 23:00:54 +09:00
Whindmar Saksit
a0776922f4 [SHELL32] Coalesce DefView item changed statusbar updates (#6862)
Updating the statusbar on every LVN_ITEMCHANGED causes a massive delay when the number of changed items is large, very noticeable on Ctrl+A.

CORE-18663
2024-05-14 13:21:30 +02:00
Doug Lyons
1a162375f9 [W32TIME] Change clock update interval to 4 hours (#5940)
* Create W32TIME_POLL_INTERVAL. Set it to 4 hours and use it to set SpecialPollInterval.
2024-05-13 15:01:25 -05:00
Katayama Hirofumi MZ
044f181950 [SHELL32] ShellExecute: Re-work Part 1 (#6871)
The goal is a correct implementation of shell32!ShellExecute.
JIRA issue: CORE-17482
- Add SHELL_InRunDllProcess helper function.
- Add structure size check to ShellExecuteExA function.
- Add code to ShellExecuteExW function.
- Add "MaximizeApps" registry value check.
2024-05-13 10:27:41 +09:00
Whindmar Saksit
5db69da46b [RAPPS] DelRegEmpty instruction should be best-effort, don't propagate any errors (#6860)
DelRegEmpty exists to clean up "company" registry parent keys. If another application is writing to the key at the same time as we are gently trying to remove it, our uninstaller should ignore any errors.
2024-05-12 00:07:54 +02:00
Raúl Gutiérrez
a3d9d0e592 [SHELL32] Browse for Folder: added keyboard navigation (#6853)
Added patches to buttons in folder browsing menu's buttons to fix CORE-19570
2024-05-11 20:37:34 +02:00
Connie Sarah
ede7389fb6 [SNDVOL32] Add CTRL-S hotkey to switch between Small/Normal modes (#6867)
This adds a hotkey (CTRL-S) which switches between the Normal and Small
modes of the Volume Control window (also seen in Windows XP).

CORE-17043

Signed-off-by: Connie Julie <alexnicolas155@yahoo.com>
2024-05-11 11:22:39 +03:00
Andrei Miloiu
06e89b2e81 [DOC] Update Romanian translation notes.txt (#6517) 2024-05-10 23:55:04 +02:00
Andrei Miloiu
7c5a8c7a07 [MSPORTS] Update Romanian (ro-RO) translation (#6703) 2024-05-10 22:35:28 +02:00
Andrei Miloiu
762d042a15 [MSTSC] Update Romanian (ro-RO) translation (#6841) 2024-05-10 22:33:08 +02:00
Andrei Miloiu
bc59daf3d5 [DESKMON] Update Romanian (ro-RO) translation (#6666) 2024-05-10 22:18:18 +02:00
Andrei Miloiu
2c96a6b614 [WINLOGON] Update Romanian (ro-RO) translation (#6773) 2024-05-10 21:46:46 +02:00
Andrei Miloiu
c2931ef23d [OSK] Update Romanian (ro-RO) translation (#6706) 2024-05-10 21:41:00 +02:00
Andrei Miloiu
2667f238ce [JOY] Update Romanian (ro-RO) translation (#6668) 2024-05-10 21:39:05 +02:00
Andrei Miloiu
7fe8512f4f [MAGNIFY] Update Romanian (ro-RO) translation (#6664) 2024-05-10 21:36:42 +02:00
Andrei Miloiu
fda81eea50 [DESKADP] Update Romanian (ro-RO) translation (#6689) 2024-05-10 21:34:50 +02:00
Andrei Miloiu
3b99e294f5 [USER32] Update Romanian (ro-RO) translation (#6704) 2024-05-10 21:34:05 +02:00
Andrei Miloiu
c2d4acf5ca [SHIMGVW] Update Romanian (ro-RO) translation (#6742) 2024-05-10 21:23:55 +02:00
Thamatip Chitpong
750bf12256 [RAPPS] Fix refresh not working correctly (#6864)
Addendum to commit 33c2903e6d
CORE-18459
2024-05-10 22:59:19 +07:00
Whindmar Saksit
daf806802a [SHELL32] Use common default DFM callback message handler (#6779)
Moves default processing of all DFM_ callback messages in SHELL32 to a single function.

CORE-18585
2024-05-09 19:52:05 +02:00
Whindmar Saksit
9e8214fa13 [BROWSEUI] GetControlWindow must support FCW_TREE for DefView usage (#6781)
Support GetControlWindow, ShowControlWindow and IsControlWindowShown for TREE and STATUS in the Shell Browser so DefView can set CMF_EXPLORE correctly.
2024-05-09 18:56:19 +02:00
Carl J. Bialorucki
190b3da95d [CMD][BOOTDATA] Minor improvements (#5745)
* Remove a hardcoded copyright string and move into localizable resources.
* Remove the PROMPT environment variable from clean installs of ReactOS. By default, the command prompt uses $P$G (path + '>') as its prompt settings and does not require this environment variable. Clean installs of Windows Server 2003 do not include this environment variable either. I documented this environment variable in our wiki if anyone would like to set it on their own ReactOS installs.
* Remove the new line above the copyright notice when the information line is turned off.

CORE-16193, CORE-17031
2024-05-09 10:03:43 -06:00
Whindmar Saksit
57b775ef6e [RAPPS] Automatically generate installer/uninstaller for downloaded zip/cab files (#6652)
With a single database line added to applications distributed as zip/cab allows rapps.exe to act as an installer that automatically extracts the files and creates a startmenu shortcut. It can also uninstall the extracted files (and optionally other files and registry entries created by the application).
2024-05-08 23:58:54 +02:00
Maj Soklič
ad8392602e [EVENTVWR] Fix missing keyboard navigation (#6835)
CORE-19566

- Move IDC_NO_OVERWRITE right below IDC_OVERWRITE_OLDER_THAN;
- Remove WS_GROUP from IDC_NO_OVERWRITE, IDC_OVERWRITE_OLDER_THAN and IDC_UPDOWN_EVENTS_AGE.
2024-05-08 19:00:02 +02:00
Maj Soklič
f6f5835d45 [INETCPL] Fix missing keyboard navigation (#6836)
JIRA issue: CORE-19568
2024-05-08 17:15:56 +02:00
Hermès Bélusca-Maïto
a7cbb60ebf [SETUPLIB] Don't flag freeldr.ini as read-only during installation.
CORE-19575

For the time being, don't add read-only attribute for ease of testing
and modifying files, but it won't always stay this way.

For example, Windows sets its boot.ini (as well as NTLDR, NTDETECT.COM
etc.) as read-only (+ hidden and system) during its 1st-stage setup.
2nd-stage setup makes some adjustments in boot.ini but doesn't restore
its read-only attribute.
Windows tools that can modify boot.ini (i.e. msconfig.exe, bootcfg.exe,
and sysdm.cpl) **ALL** know how to remove the read-only attribute for
modifying boot.ini, before restoring it if needed.
2024-05-07 19:30:33 +02:00
Doug Lyons
cf9f7548d5 [NTUSER] Fix double click on title bar icon not closing window (#6697)
Patch by @I_Kill_Bugs

* [NTUSER] Fix double click on title bar icon not closing window

Improve MENU_TrackMenu handling.

Guilty commit:0.4.15-dev-7750-gc17a654 c17a6542ac

CORE-19492
2024-05-07 09:52:57 -05:00
Doug Lyons
0c0062ac9a [NTUSER] Fix Skype and other programs installer windows not able to be moved with mouse by clicking on title bar (#6819)
Patch by @I_Kill_Bugs

Add condition into msgqueue along with filter testing to reject messages that are "NotForUs".
Also, do not set AcceptMessage to FALSE, but just keep msgDblClk and idSysPeek values and continue.

CORE-19487
CORE-19538
2024-05-07 09:10:11 -05:00
Joe Mason
d234dc2d52 [AVRT] Import Audio/Video Runtime module from Wine 9.7 (#6826)
Enhance compatibility with future programs, including browsers.
AVRT is an acronym for "Audio/Video Multimedia Realtime Runtime" and is NT6.
2024-05-07 15:40:27 +03:00
Hermès Bélusca-Maïto
2b43390d04 [SETUPLIB] Use new BootPath value for BootSector boot entries (#6815)
The BootDrive and BootPartition values are deprecated, and support
for them will soon be removed from FreeLoader.

Add an helper function to migrate these values during ReactOS
(re)installation / update.
2024-05-07 12:33:14 +02:00
Katayama Hirofumi MZ
5a287473fd [NTGDI][FREETYPE] Initial support of Surrogate Pairs and emojis (#6851)
Support emoji characters and minor characters.
JIRA issue: CORE-19030
NOTE: Not every emoji is supported yet (No ZWJ support). Surrogate pairs only.
NOTE: This feature only works if the appropriate font is selected.
- Add IS_HIGH_SURROGATE and
  IS_LOW_SURROGATE macros.
- Add Utf32FromSurrogatePair helper function
  to convert a surrogate pair to a UTF-32 code
  point.
- Convert the surrogate pairs in the text in
  TextIntGetTextExtentPoint, IntGetTextDisposition,
  and IntExtTextOutW functions.
2024-05-07 15:24:34 +09:00
Doug Lyons
c0e31793c9 [COMDLG32] Remove extra scrollbars in choose font dialog (#6834)
* Revised comdlg32.dll's resource file for "Font" (CHOOSE_FONT DIALOG) "Style" combo box to
*   remove CBS_ENABLENOSCROLL flag.

CORE-15945
2024-05-06 21:59:01 -05:00
Katayama Hirofumi MZ
d076146f4e [NTGDI][FREETYPE] Check 'No transformation' for performance (#6850)
Slight performance improvement.
JIRA issue: CORE-15554
- Add bNoTransform variable.
- Check whether mat is identity matrix.
- If so, then don't do FT_Vector_Transform.
2024-05-07 11:14:16 +09:00
Maj Soklič
e79c896592 [REGEDIT] Early return FALSE in CreateNewKey() if pszKeyPath is NULL (#6840)
This fixes unhandled exception when trying to create a new key
in the root/"My computer". CORE-19567
2024-05-06 23:46:55 +03:00
Timo Kreuzer
cadfdc554d [KMTEST] Fix x64 GCC build
Yes this is a hack, until I am able to fix this properly.
2024-05-06 21:29:55 +02:00
Hermès Bélusca-Maïto
c7295b2cdf [SETUPLIB] Support different boot store file creation/opening and access modes
The support is so far enabled only for INI files (freeldr.ini, boot.ini).
May be subject to further improvements in the future.

Usage examples:

- When finding existing ReactOS or Windows installations, the boot store
  should exist and is opened in read-only mode. Closing the boot store
  doesn't store any temporary modifications made to it.

- When doing a clean installation, freeldr.ini is created in read-write
  access.

- When installing with an existing freeldr.ini or boot.ini, they are
  opened as existing files in read-write access.
2024-05-06 21:13:23 +02:00
Oleg Dubinskiy
d1b8feb690 [AUDIO] Implement retreiving audio playback position (#6817)
Implement GetWavePosition API for both Legacy and MMixer modes.
[WDMAUD.DRV]
- Fix wrong I/O control code passed to DeviceIoControl for Legacy mode. Use IOCTL_GETPOS instead of IOCTL_OPEN_WDMAUD, to use the correct routine.
- Implement WdmAudGetWavePosition for MMixer mode, as it was completely unimplemented there. Call an appropiate MMixer routine and return back resulting wave position.
[WDMAUD]
- Implement WdmAudGetPostion routine, which is used by Legacy mode, and call the same MMixer routine from it too.
- Handle it in IOCTL_GETPOS I/O control request of dispatch routine.
[MMIXER]
- Implement MMixerGetWavePosition internal routine, which is called by both Legacy and MMixer modes, and does the actual work of retrieving playback position.
- Call an apporpriate KSPROPERTY_AUDIO_POSITION property from it, and return in the output resulting KSAUDIO_POSITION.PlayOffset member, which contains the current playback position offset, to be returned to the caller.
This fixes a failure retreiving the current audio playback position snd subsequent playing the audio data by several 3rd-party applications which are using this API (for example, some Gecko based browsers by @roytam1: Basilisk (Serpent) 52.9.0 IA-32 build, NewMoon 28.10.7 IA-32 build and KMeleon 76.5.3 Goanna engine).
CORE-19542
2024-05-06 20:07:47 +02:00
Hermès Bélusca-Maïto
9b563d32d2 [SETUPLIB] Improve a bit the management of boot-store options
- QueryBootStoreOptions(): De-duplicate code.
- SetBootStoreOpt(): Respect the FieldsToChange flag.
- BOOT_STORE_OPTIONS: Remove unused Version field and distinguish
  between "Current" and "Next" BootEntryKey.
2024-05-06 17:05:03 +02:00
Hermès Bélusca-Maïto
68c2a28973 [SETUPLIB] Split OpenAndMapFile function and Doxygen-ize it 2024-05-06 17:00:01 +02:00
Timo Kreuzer
e8e770fd14 [WIN32K:NTUSER] Fix NULL pointer dereference in MENU_HideSubPopups
Fixes CORE-19367.
2024-05-06 15:47:30 +02:00
Timo Kreuzer
67c28b723e [PSEH/x64] Fix our GCC-SEH-plugin hack
The change is needed, because the previous version emitted multiple ".seh_handlerdata" blocks and GAS isn't able to merge them into one, but will instead only include the first one. This is fixed by generating "asm defines" in the code and pass the line number to the "REACTOS seh" pragma, which is then used to create all handler data by referring to the predefined symbols, that include the line number.
Also the EstablisherFrame parameter passed to the filter/finally function is the original stack pointer, not the frame pointer! Take this into account by passing __builtin_frame_address(0) from the filter context to the global wrapper function, which includes the frame-offset, and use that to recalculate the frame-pointer from the passed in stack pointer.
2024-05-06 14:23:48 +02:00
Timo Kreuzer
f4a9f9cde3 [CRT][NTDLL][MSVCRT] Add _swprintf implementation 2024-05-06 14:08:31 +02:00
Katayama Hirofumi MZ
521eb0c7c0 [NTGDI][FREETYPE] Increase STACK_TEXT_BUFFER_SIZE (#6847)
Slight performance improvement. STACK_TEXT_BUFFER_SIZE = 100 was too small
for long text. This PR can reduce unnecessary buffer allocations in NtGdiExtTextOutW
function.
JIRA issue: CORE-15554
- Change STACK_TEXT_BUFFER_SIZE to 512.
2024-05-06 20:39:26 +09:00
Katayama Hirofumi MZ
0056313e15 [NTGDI][FREETYPE] Simplify code around bold/italic glyph caches (#6846)
Simplify and reduce font code.
JIRA issue: CORE-15554
- Don't treat bold/italic glyphs specially in font cache.
- Delete useless IntGetBitmapGlyphNoCache function.
2024-05-06 19:17:09 +09:00
Doug Lyons
69ebfd671d [NTOS:EX] Various fixes for Daylight Saving Time transitions (#5868)
* [NTOS:EX] Various fixes for Daylight Saving Time transitions

* Fix automatic time changes when DST starts and ends.
* Currently it takes two cycles of the update provided by w32time to make the actual change.
* Convert Eric Kohl's TimeZoneID code contained in ExRefreshTimeZoneInformation to a new function.
* Use this new function in ExpSetTimeZoneInformation and ExRefreshTimeZoneInformation functions.

CORE-19290
2024-05-05 21:32:04 -05:00
Maj Soklič
28eb4e726a [NETCFGX] Fix missing keyboard navigation (#6837)
Remove WS_GROUP from: IDC_TCP_RESTRICT, IDC_UDP_RESTRICT and IDC_IP_RESTRICT
fixes CORE-19569

Thanks to Maj Soklič for the PR, based on the investigations of Krosuser.
2024-05-05 19:15:04 +02:00
Hermès Bélusca-Maïto
e151ef9ae1 [SETUPLIB] Add support for removing sections and key values, and remove some hacks (#6815)
- Use LIST_ENTRY instead of custom list pointers;
- Fix key/section unlinking before freeing.
2024-05-05 18:15:31 +02:00
Hermès Bélusca-Maïto
b9ca9b0061 [SETUPLIB] Don't create new INI sections or key-values if they already exist (#6815)
- If a section already exists, return the existing one. This allows
  avoiding different section entries with the same name in the cache.
  If an INI file has separate sections with the same name, their
  contents (key-values) get merged into a unique section.

- If a key-value already exists, update its data value and return the
  existing one. (Note that this may be subject to behaviour change in
  the future.)
2024-05-05 18:15:31 +02:00
Hermès Bélusca-Maïto
817c27a54e [SETUPLIB] Some INI support refactoring: function/struct names, duplicated code (#6815)
And convert ANSI strings to UNICODE in a better way instead of
zero-extending them.
2024-05-05 18:15:24 +02:00
Serge Gautherie
cb6fc76b8b [NTOS:IO] IoDisconnectInterrupt(): Switch to ExFreePoolWithTag() (#6503)
Follow-up to commit 24a14abf2 (r57412).

HBelusca's comment:
> If this ExFreePoolWithTag() call was left commented, it's probably
> because, back in the day where I introduced it, there was a pool
> corruption that was detected, the source of which was unknown at
> that time. In retrospect, it is most probably the interrupt disconnect
> bug in IoDisconnectInterrupt() that was causing it. Now that this
> bug has been fixed just previously, it should be safe to re-enable
> pool freeing with tag.
2024-05-05 17:03:42 +02:00
Serge Gautherie
347ca5f859 [NTOS:IO] IoConnectInterrupt(): Move InterruptObject assignment where it belongs (#6503)
Addendum to commit d1258e99f (r16229), supersedes commit adf534b28.

CORE-17256
2024-05-05 17:03:28 +02:00
Serge Gautherie
2d442956b4 [NTOS:IO] IoConnectInterrupt(): Fix default spinlock initialization (#6503)
Addendum to commit d1258e99f (r16229).
2024-05-05 17:03:20 +02:00
Serge Gautherie
cbc78e0629 [NTOS:IO] IoDisconnectInterrupt(): Fix disconnecting other interrupts (#6503)
Addendum to commit d1258e99f (r16229).
2024-05-05 17:03:13 +02:00
Hermès Bélusca-Maïto
603fd832d0 [NTOS:IO] IoConnectInterrupt(): Zero-out the allocated structure at the correct place (#6503)
Addendum to commit d1258e99f (r16229).
2024-05-05 17:02:34 +02:00
Serge Gautherie
35d46b23f1 [FORMATTING][NTOS:IO] iomgr/irq.c
- Add a few blank lines.
- Use 2 'continue'.
2024-05-05 16:35:22 +02:00
Hermès Bélusca-Maïto
8e799e2d3e [SDK:WINE] Some minor additions to wine/test.h (#6822)
- Add two missing debugstr_w* helpers. These will be needed for
  future winetest syncs.

Note that such change would be unnecessary, would wine/test.h and
wine/debug.h be also updated with latest Wine versions. Indeed,
wine/debug.h is now allowed to be included in wine tests since
wine commit:
```
include: Allow using debug.h in tests.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id c8f338369695d360e021f2cbd82a18b2c0eb1514 by Alexandre Julliard <julliard@winehq.org>
```

- Since our wine/test.h doesn't include wine/debug.h for now, include
  instead stdio.h for the time being, in order to get support for
  s(w)printf() in tests that don't include stdio.h
2024-05-04 23:04:21 +02:00
Hermès Bélusca-Maïto
565a4b359a [FREELDR] Don't popup about deprecated features in auto-boot scenario (#6803)
Addendum to commit 5f3554a40.
2024-05-04 16:19:22 +02:00
Hermès Bélusca-Maïto
7bee32d237 [FREELDR] The multiboot command-line and FREELOADER section options become global settings (#6803)
Dual-license settings.c: "old" code (CmdLineParse) stays BSD
and new code (mine) becomes MIT.
2024-05-04 16:19:07 +02:00
Hermès Bélusca-Maïto
2f4bb4084d [FREELDR] Rename cmdline.c to settings.c: it will be used for managing global settings (#6803) 2024-05-04 15:46:06 +02:00
Doug Lyons
29235147e2 [NTUSER] Remove some extra repaints/redraws (#6827)
Reposition logic and add Flags testing for RgnType == NULLREGION.
This was suggested by @HBelusca and approved by @I_Kill_Bugs
2024-05-04 07:35:53 -05:00
Hermès Bélusca-Maïto
30226f834d [SDK:WINE] Improve wine/unicode.h (v)sprintfW defines, regarding the (v)swprintf functions (#6823)
These defines assumed that the (v)swprintf functions were the
non-conformant ones (that don't take a 'count' 2nd parameter).
Because of that, use instead the _(v)swprintf functions. However,
those exist only in NT6+. Therefore, redefine these locally
using the _(v)snprintf functions.

NOTE: wine/unicode.h has been removed in wine commit
348eebae872e90a735041a153635d00b01178cfa from July 13, 2022
2024-05-04 13:47:51 +02:00
Joachim Henze
a69532ec4a [USER32] defwnd.c only formatting, no functional change
For preparing a backport I do slightly improve the formatting:
- for the 2 SetScrollInfo() calls, that I do intend to port back
- fix last place where we had mixed space and tab indentation in this file at the DefWindowProc signatures
- strip some exclamation marks in some dbg-prints
- improve the header
- strip a space at some rather long lines NtUserMessageCall()
2024-05-04 12:30:43 +02:00
Maj Soklič
7ce96fd364 [SHELL32] Fix keyboard navigation in file deletion dialog CORE-19564 (#6833)
Fix usage of left/right arrow keys in file deletion dialog
JIRA issue: CORE-19564

Remove WS_GROUP from all but the 1st button

"Inshallah brother we will fix this bug"
2024-05-03 23:37:37 +02:00
Timo Kreuzer
6f83cdfdb3 [WINESYNC] Update kernel32.cfg and WINESYNC.txt to wine-3.3 2024-05-03 16:10:00 +02:00
Timo Kreuzer
bd9bb36b18 [KERNEL32] Reduce diff to wine-3.3 2024-05-03 16:10:00 +02:00
winesync
c08580dee3 [WINESYNC] kernel32: Don't return a parent locale for neutral locales in GetLocaleInfoEx.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id c63a08586f19af7e6a65a064696743f648006fcd by Alexandre Julliard <julliard@winehq.org>
2024-05-03 16:10:00 +02:00
winesync
90c0562935 [WINESYNC] kernel32: Keep the sublanguage specified by the script name when looking for the default.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id c5a39bd98f5388d48b728d19ce466665fa37bfbd by Alexandre Julliard <julliard@winehq.org>
2024-05-03 16:10:00 +02:00
winesync
b46bf67c2e [WINESYNC] kernel32: Add stub for ResolveLocaleName.
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id b9a9fe4a042f98521efea3275ded4af4b7cba4c9 by Jactry Zeng <jzeng@codeweavers.com>
2024-05-03 16:10:00 +02:00
winesync
a8d367089c [WINESYNC] kernel32: Improve locale detection on Android.
setlocale is coded to just return 'C' for all inquiries ignoring locale
that may be set in the environment.

Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 9dc5d299f11c599862d39af3e32d92e787c1ae7b by Aric Stewart <aric@codeweavers.com>
2024-05-03 16:10:00 +02:00
winesync
535fffd824 [WINESYNC] kernel32: Check for invalid flags in codepage conversion functions.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 0b95ebd283986fa179c7ec6d2ea3f34c977c3aaf by Alex Henrie <alexhenrie24@gmail.com>
2024-05-03 16:10:00 +02:00
winesync
544f114459 [WINESYNC] kernel32: Use different default sublangs for Spanish and Chinese.
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 7737693693ca46a88c41cfeab95d2b65423d8e51 by Andrew Eikum <aeikum@codeweavers.com>
2024-05-03 16:10:00 +02:00
winesync
a3102dc0dd [WINESYNC] kernel32: Improved GetUserPreferredUILanguages stub.
Implementation and tests are based on GetSystemPreferredUILanguages.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 26d0105cd8a8ce1131033f1871de0dd9a7b4c43c by Jacek Caban <jacek@codeweavers.com>
2024-05-03 16:10:00 +02:00
winesync
6f4d2924f0 [WINESYNC] kernel32: Fixed handling LOCALE_NAME_USER_DEFAULT in GetLocaleInfoEx.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 505406fc83b65dd1f9ebcbaabb582f0fabec1b0a by Jacek Caban <jacek@codeweavers.com>
2024-05-03 16:10:00 +02:00
winesync
8c0ffa6f18 [WINESYNC] Assorted spelling/grammar fixes.
wine commit id 1e214eb5d354ffbb64699686913a5eb61998ed78 by Frédéric Delanoy <frederic.delanoy@gmail.com>
2024-05-03 16:10:00 +02:00
Timo Kreuzer
f70a1d03b0 [KERNEL32] Import GetLocaleInfoEx from wine-1.9.17 2024-05-03 16:10:00 +02:00
Timo Kreuzer
b01b6926a4 [KERNEL32] locale.c: Reduce diff to wine-1.9.17 2024-05-03 16:10:00 +02:00
Timo Kreuzer
98c4379291 [KERNEL32] locale.c: Move functions to match wine order 2024-05-03 16:10:00 +02:00
Timo Kreuzer
3016060883 [KERNEL32] Rename lang.c to locale.c as in wine 2024-05-03 16:10:00 +02:00
winesync
2d4d5b6359 [WINESYNC] kernel32: Add TRACE to SetCommState.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 60226ee37de52b470b98efa13f9a5e065cedc77b by Alex Henrie <alexhenrie24@gmail.com>
2024-05-03 16:10:00 +02:00
Timo Kreuzer
c908716094 [KERNEL32] actctx.c: reduce diff to wine-1.7.55 2024-05-03 16:10:00 +02:00
Timo Kreuzer
c04377bf03 [KERNEL32] Disable some warnings for wine code 2024-05-03 16:10:00 +02:00
Whindmar Saksit
bbb3b00398 [ZIPFLDR] Don't handle DFM_INVOKECOMMANDEX if you need DFM_INVOKECOMMAND (#6766)
ZipFldr responds incorrectly to DFM_INVOKECOMMANDEX, it needs to return E_NOTIMPL to get the DFM_INVOKECOMMAND message.
2024-05-02 19:01:38 +02:00
Whindmar Saksit
07d55ce1cf [SHELL32] CFSFolder parsing must only apply bind data to the last item (#6794)
When IShellFolder::ParseDisplayName is asked to parse multiple path elements, the IFileSystemBindData (if any) only applies to the last item. The other elements are always folders.
2024-05-02 18:00:12 +02:00
Whindmar Saksit
ef80b3dde4 [SDK] ReleaseCComPtrExpectZero should print the relevant file:line (#6772)
ReleaseCComPtrExpectZero currently always prints the same line from shellutils.h in the warning which is not very useful. A macro is required for __FILE__ to be correct.
2024-05-02 17:56:28 +02:00
Doug Lyons
515f998f0d [NTUSER] Fix co_IntSetParent when calling on itself (#6365)
* Patch by @I_Kill_Bugs.

* Provide explanation for change.
CORE-9386
2024-05-02 03:43:41 -05:00
Whindmar Saksit
db93cb1709 [SHELL32][VFDLIB] Handle size check of CMINVOKECOMMANDINFOEX correctly (#6767)
Older NT versions (< IE4) had a smaller CMINVOKECOMMANDINFOEX struct. Places where 3rd-party code passes in the struct needs to accept the small size.
2024-05-01 14:17:08 +02:00
Timo Kreuzer
5c3b1c78a7 [NTOS:KE] Improve NtRaiseException and NtContinue
- Fix annotations
- Don't use KiServiceExit to return to the caller with an error code, instead just return from the function, that is the same thing.
- Refactor failure path
- Add DPRINTs on failure
2024-05-01 11:30:29 +02:00
Timo Kreuzer
4bc591c6f0 [NTOS:KE] Fix NtRaiseException and NtContinue on x64
- Implement KiExceptionExit, which works like KiServiceExit2, but takes an exception frame as 2nd parameter
- Add a local exception frame to NtRaiseException and NtContinue, which is needed to exit with a full context on x64 and arm
- Use KeContextToTrapFrame again instead of KiSetTrapContext, since we have a proper exception frame now.
2024-05-01 11:30:29 +02:00
Timo Kreuzer
dc3b208625 [RTL/x64] Fix a bug in RtlRaiseException 2024-05-01 11:30:29 +02:00
Timo Kreuzer
b388cb66de [CRT] Add mbrtowc (from wine) 2024-05-01 07:37:31 +02:00
Timo Kreuzer
76d33ee7f2 [CRT] Add wcrtomb (from wine) 2024-05-01 07:37:31 +02:00
Doug Lyons
0f9bf6abb4 [NTOS:CC] Restore unlock/reacquire locks around MmPageOutPhysicalAddress (#5735)
* [NTOS:CC] Restore unlock and reacquire locks around MmPageOutPhysicalAddress which was mistakenly lost in commit 2b14056

* Add bypass for problematic code path for now
2024-04-30 13:59:50 -05:00
Timo Kreuzer
e77da17f68 [KMTEST] Add test for FileEndOfFileInformation 2024-04-29 22:50:18 +02:00
Timo Kreuzer
bebf99aaf1 [NTDLL_APITEST] Add test for FileEndOfFileInformation 2024-04-29 22:50:18 +02:00
Thamatip Chitpong
35dc2f2410 [WINMM] PlaySound: Add a note for ReactOS-specific modifications
Addendum to commit f18111b641
2024-04-29 17:56:03 +07:00
Timo Kreuzer
06a35089eb [RTL] actctx.c: Reduce diff to wine
The changes are:
- Do not allocate an additional WCHAR for the terminating UNICODE_NULL, since we already have that accounted for by sizeof(manifest_dirW)
- Use strcpyW intead of memcpy / strlenW, which does the same thing
- Add a define for user_shared_data
2024-04-29 01:15:50 +02:00
Timo Kreuzer
6e277fc0c0 [RTL] actctx.c: Revert parameter change 2024-04-29 01:15:50 +02:00
Timo Kreuzer
f9d3a50ee3 [RTL] actctx.c: Add some #ifdef __REACTOS__ 2024-04-29 01:15:50 +02:00
Timo Kreuzer
ad5d8bb477 [RTL] actctx.c: Reduce diff to wine 2024-04-29 01:15:50 +02:00
Timo Kreuzer
55f4e2a581 [RTL] actctx.c: Revert RELATIVE_PATH change 2024-04-29 01:15:50 +02:00
Timo Kreuzer
1a6dc01f69 [RTL] actctx.c: Revert FILE_END_OF_FILE_INFORMATION changes
We still need to hack it, because FileEndOfFileInformation is not supported in user mode, neither in ReactOS, nor in Windows.
2024-04-29 01:15:50 +02:00
Timo Kreuzer
41ff75ce36 [RTL] actctx.c: Revert __TRY / __EXCEPT changes 2024-04-29 01:15:50 +02:00
Timo Kreuzer
e46364314b [RTL] actctx.c: Revert casts 2024-04-29 01:15:50 +02:00
Timo Kreuzer
86e28b67ce [RTL] actctx.c: Remove unused stuff that isn't in wine 2024-04-29 01:15:50 +02:00
Timo Kreuzer
be76eb7c91 [RTL] actctx.c: Revert ERR, WARN, TRACE changes 2024-04-29 01:15:50 +02:00
Timo Kreuzer
37b2e791ee [RTL] actctx.c: Revert pointless formatting changes 2024-04-29 01:15:50 +02:00
Timo Kreuzer
49ed915759 [RTL] actctx.c: Revert NtCurrentProcess() changes 2024-04-29 01:15:50 +02:00
Timo Kreuzer
3b9b26f912 [RTL] actctx.c: Revert GetProcessHeap -> RtlGetProcessHeap changes 2024-04-29 01:15:50 +02:00
Timo Kreuzer
9d8ea85398 [RTL] Disable an MSVC warning in wine source 2024-04-29 01:15:50 +02:00
Maj
eb39c408af [README] Update RosBE links and badges to version 2.2.1 2024-04-28 20:42:16 +02:00
Thamatip Chitpong
7586fe5c1d [SHELL32] Rewrite CCopyAsPathMenu on top of IContextMenu
Also use the same registry key as Windows 10.
2024-04-28 21:03:43 +07:00
Thamatip Chitpong
a706f6ba78 [SHELL32] Fix separator not showing for CopyTo and MoveTo menu
Fix wrong previous item index.
2024-04-28 21:03:43 +07:00
Thamatip Chitpong
d4ca55f65e [SHELL32] Separate CCopyAsPathMenu implementation from CCopyMoveToMenu 2024-04-28 21:03:43 +07:00
Whindmar Saksit
f9325370f5 [SHELL32] DefView must set CMF_EXTENDEDVERBS, CMF_CANRENAME and CMF_EXPLORE (#6776)
The caller of IContextMenu::QueryContextMenu must set these flags when needed, not CDefaultContextMenu.

Notes:
- CMF_CANRENAME is always set by DefView because it always supports rename in its current form. CDefaultContextMenu verifies that SFGAO_CANRENAME is also set on the items. All other callers are expected to not know how to rename unless they also set CMF_CANRENAME. This fixes the bug that the Rename item is present in the TreeView context menu even though the TreeView in ROS Explorer does not handle renaming.
- While DefView now tries to set CMF_EXPLORE correctly, the flag is never actually set because BROWSEUI does not handle FCW_TREE yet.
- This also fixes the bug where the File menu is missing the menu items when there is no selection.
2024-04-28 21:00:03 +07:00
Timo Kreuzer
c9864da823 [NTOS:IO] Fix broken pool allocations
ExAllocatePoolWithTag doesn't raise an exception on failure, only ExAllocatePoolWithQuotaTag does. Use that when quotas are relevant instead of silently continuing with a NULL pointer.
2024-04-28 14:06:07 +02:00
Mark Jansen
24a56f89ab Rework apisets to use a table
This removes all fake apiset forwarders,
and handles apisets inside ntdll.
This is not 100% compatible with how windows does it, but it should be good enough for us.
2024-04-27 22:51:34 +02:00
Doug Lyons
116c0cd9a5 [USER32] Fix resource display of MSVC BI_BITFIELD 32-bit bitmaps. (#5942)
This specifically fixes Wordpad's Open and SaveAs dialog toolbars.

* Fix 16 bpp BI_BITFIELDS like 32 bpp was done.
* Add BI_BITFIELDS byte count into bitmap_info_size return value.
* Account for GCC's windres.exe incorrect omission for BI_BITFIELDS DWORD's when processing 32-bpp bitmaps.
* Account for GCC's windres.exe failing with bitmaps with BI_BITFIELDS and bits per plane is 16
* Fix WARN message to show error on either 16-bpp or 32-bpp
* Correct comment regarding GCC compiled bitmaps with compression of BI_BITFIELD's to add 16 bits per plane

CORE-17005
2024-04-27 14:38:06 -05:00
Ratin Gao
ff12fc9fb9 [NTDLL_APITEST] Use RtlConvertUlongToLuid 2024-04-27 21:31:53 +02:00
Doug Lyons
ffd060295d [USER32_APITEST] Test MSVC rc.exe compiled 32-bpp BI_BITFIELD bmp (#6755)
* Cleanup and Changes based on reviewer comments
* For failure, show returned and expected values

CORE-17005
2024-04-27 13:30:51 -05:00
Ryan Kounter
ab72bc06d6 [COMCTL32] Fix header redraw glitches when resizing (#6799)
Fixes COMCTL32 headers from being garbage text when resizing while drawn off screen.

- Invalidate header item rect before scrolling to prevent the divider from being redrawn over and over.
- Invalidate header item text through adding flag SW_INVALIDATE to ScrollWindowEx call to prevent the text from being redrawn over and over.

CORE-19404
2024-04-27 09:56:03 -06:00
Timo Kreuzer
b8e50f787d [NTOS:KE/x64] On syscalls clear nested task flag
When this flag is not cleared and the system returns with an IRET, this causes a #GP. Randomly hit by the umkm:SystemCall test.
2024-04-27 15:12:40 +02:00
Timo Kreuzer
701b0a3f24 [MSVCRTEX] Only include _CrtDbgReport*, if we don't already export them (#6797)
* [MSVCRTEX] Only include _CrtDbgReport*, if we don't already export them

For some reason clang builds now want the ___chkstk_ms on x64 as well, so add it.
2024-04-27 14:59:06 +03:00
Marcin Jabłoński
dcf9eb060a [SHELL32] Fix Control_RunDLLW (#5400)
This commit makes Control_RunDLLW pass all but one tests from rostests (the one test that fails is the first one, but it only fails if the path to the test program contains a space).

- Rework string parsing in the Control_DoLaunch routine
- Do not send the CPL_STARTWPARMSW message, if no extra parameters were specified (fixes the failing Got NULL lParam2! and some CPL_STARTWPARMSW: expected -1 got %d tests)
- Do not resolve invalid dialog names to index zero, unless the name is empty (fixes some of the failing CPL_DBLCLK: expected -1 got %d tests)
- Handle quotes in the second part of wszCmd

CORE-8981
2024-04-26 18:28:46 -06:00
Timo Kreuzer
45aa8f8111 [CRT] Remove useless #undef abort from process.h 2024-04-26 15:16:31 +02:00
Timo Kreuzer
6beff505d7 [CRT] Add _Exit to process.h
This is already done this way in our stdlib.h. It is needed by GCC 13 C++ headers. The problem happens like this:
- telnet/precomp.h includes fstream from GCC
- fstream includes pthread.h from GCC
- pthread.h includes process.h from ReactOS
- process.h defines _CRT_TERMINATE_DEFINED, but doesn't declare _Exit
- fstream includes cstdlib from GCC
- cstdlib includes stdlib.h from GCC (#include_next)
- stdlib.h doesn't declare _Exit, because _CRT_TERMINATE_DEFINED is defined
- cstdlib uses _Exit
2024-04-26 15:16:31 +02:00
Thamatip Chitpong
cd0bb1af07 [TASKMGR] Process page: Allow using "Open File Location" functionality without running Explorer shell
If Explorer shell is not available, use ReactOS's alternative file browser instead.
2024-04-26 07:16:00 +07:00
Thamatip Chitpong
6d16d27462 [TASKMGR] Process page: Improve readability of command line string formatting code 2024-04-26 07:16:00 +07:00
Thamatip Chitpong
018264f38f [NTUSER] Release modifier keys when deactivating message queue (#6754)
CORE-14768
2024-04-26 07:12:02 +07:00
Katayama Hirofumi MZ
1331e2fb02 [KERNEL32_APITEST] Add LCMapString testcase (#6805)
@tkreuzer said he wants LCMapString testcase in chat.
JIRA issue: N/A
2024-04-26 08:39:45 +09:00
Doug Lyons
3693d55404 [SHELL32] Fix Desktop folder details view (#5743)
* [SHELL32] Fix Desktop Folder Details View

JIRA issue: [CORE-19177|https://jira.reactos.org/browse/CORE-19177]

* Remove Comments column from Desktop Folder Details View and simplify code.
* Revise date/time sort based on reviewer comments.
* Swap size and type column positions for desktop folder details view.

With help from Whindmar, most (hopefully all) of the magic number for the columns
have been removed in all of the shell folders.

Co-authored-by: Whindmar Saksit <whindsaks@proton.me>
Co-authored-by: Carl J. Bialorucki <cbialo2@outlook.com>
2024-04-25 17:20:28 -05:00
Timo Kreuzer
1f49173f82 [CRT] Massively improve performance of rand_s
Cache the pointer to RtlGenRandom instead of loading and unloading advapi32 every single time this function is called.
2024-04-25 05:25:12 +02:00
Timo Kreuzer
3c55252828 [CRT_APITEST] Add test for rand_s 2024-04-25 05:25:12 +02:00
Timo Kreuzer
f319538d98 [CRT] Move rand_s into it's own file 2024-04-25 05:25:12 +02:00
Timo Kreuzer
0ea48e79fc [CRT] Move _invalid_parameter into its own file
As the author of the code, I changed to license to MIT.
2024-04-25 05:25:12 +02:00
Timo Kreuzer
43beb913da [CRT] Move rand to stdlib, where it belongs 2024-04-25 05:25:12 +02:00
Katayama Hirofumi MZ
d55f49978d Revert "[SHELL32] SHChangeNotify: Use tree for CDirectoryList (#6784)" (#6800)
Reverts #6784 that was a guilty commit of CORE-19531 that causing performance regression.

JIRA issue: CORE-19531
2024-04-25 09:01:21 +09:00
Katayama Hirofumi MZ
91acf823d8 [SHELL32] SHChangeNotify: Use tree for CDirectoryList (#6784)
Optimize for speed and memory.
JIRA issue: CORE-13950
CDirectoryList class exists just for remembering which file item is a directory or
not, in order to notify the filesystem item changes. This information can
become a tree data structure.

- Add CFSPathIterator and CFSNode helper classes.
- CFSNode is a class for tree nodes.
- Re-implement CDirectoryList class by using tree nodes.
- Delete CDirectoryItem class.
2024-04-24 19:44:30 +09:00
Katayama Hirofumi MZ
c0c270e90e [SHELL32_APITEST] Delete obsolete "iexplore.exe" tests
Follow-up to 75cc5b2. CORE-13950
2024-04-24 19:06:48 +09:00
Katayama Hirofumi MZ
75cc5b2b1c [SHELL32_APITEST] Commonize FindSubProgram function
and delete obsolete "iexplore.exe" tests. CORE-13950
2024-04-24 19:03:10 +09:00
Katayama Hirofumi MZ
8337df2bd1 [SHELL32_APITEST] SHChangeNotify: Improve coverity (#6798)
Improve coverity and speed.
JIRA issue: CORE-13950
- Move NUM_STAGE to the header file.
- Add stages.
- Add DIRTYPE_DESKTOP_DIR and
  DIRTYPE_PRINTERS directory types.
- Improve speed more.
2024-04-24 18:25:15 +09:00
Oleg Dubinskiy
24e088daa8 [MMEBUDDY] Implement support for looped wave playback (#6761)
Fix playing wave header multiple times in case the caller requests to do it.
In Windows, it is supported by WHDR_BEGINLOOP and WHDR_ENDLOOP flags (specified together) and dwLoops member of WAVEHDR structure (ususally set to 0xFFFFFFFF (INFINITE constant)).
- Check whenther WHDR_BEGINLOOP | WHDR_ENDLOOP flags are set by the caller.
- If they are, get the amount of times to play the header from WAVEHDR.dwLoops.
- Perform wave header competion only when the loop count is equal to zero. Otherwise, don't do it.
- When the header is entirely committed, in case completion is not needed, reset committed bytes count to the starting value to allow the header play again.
- Decrement loop count in case it isn't set to INFINITE, to mark loop as played correctly. When this count becomes zero, then the playback is finished.
- Get rid from SOUND_OVERLAPPED.PerformCompletion member. Use SOUND_DEVICE_INSTANCE.LoopsRemaining == 0 condition instead.
- Do this only for WaveOut devices, since MSDN states it works only with output buffers. Hence, there is nothing changed for WaveIn.
- Update an appropriate statement about unimplemented functionality from mmebuddy notes.
TODO: handle the case when multiple headers are requested to be looped (WHDR_BEGINLOOP and WHDR_ENDLOOP are set separatedly: 1st flag - in the 1st header, and 2nd in the last header). Currently, only looping a single wave header is supported.
This fixes the playback in the apps those request looped wave playback of some audio data (e. g., BRD Demo app, which did play its sound only first 500 ms before, now it plays endlessly until closing it manually).
CORE-10118
2024-04-24 11:08:40 +02:00
Katayama Hirofumi MZ
d23573beed [SHELL32_APITEST] Follow-up to #6796 (25e2f5f)
This change will massively improve speed.
JIRA issue: CORE-13950
- Set zero to INTERVAL.
- Remove SHCNF_FLUSHNOWAIT.
2024-04-24 10:22:42 +09:00
Katayama Hirofumi MZ
25e2f5f277 [SHELL32_APITEST] Make SHChangeNotify testcase more stable (#6796)
Make the testcase more stable and faster. Reduce code.
JIRA issue: CORE-13950
- Use WM_COPYDATA message to communicate with shell32_apitest_sub.exe.
- Use concept of "stage" and "step".
- Do multiple checks in one step.
- Flush notification by using (SHCNF_FLUSH | SHCNF_FLUSHNOWAIT) flags.
2024-04-24 09:10:29 +09:00
Timo Kreuzer
6ac260dcec [NTOS:KE/x64] Handle NMI vs swapgs race condition 2024-04-23 15:50:06 +02:00
Timo Kreuzer
72fd54a7f4 [NTOS:KE/x64] Implement Kd processor switching 2024-04-23 15:50:06 +02:00
Timo Kreuzer
9229709312 [NTOS:KE/x64] Implement processor freeze code 2024-04-23 15:50:06 +02:00
Timo Kreuzer
af2ce4d08f [NTOS:KE/x64] Implement KiSaveProcessorState / KiRestoreProcessorState 2024-04-23 15:50:06 +02:00
Timo Kreuzer
1d289fec77 [NTOS:KE] Improve freeze code in KeBugCheckWithTf
- Don't wait 1 second for each processor
- Use AFFINITY_MASK
- Use Prcb->Number, which is more future proof than KeGetCurrentProcessorNumber
- Improve for loop
2024-04-23 15:50:06 +02:00
Timo Kreuzer
d96f01b5dc [NTOS:KE/x64] Add KiNmiInterruptHandler
So far it only calls KiHandleNmi. It will also handle processor freeze later.

TODO: Pass TF_WITH_EF to directly generate a KEXCEPTION_FRAME
2024-04-23 15:50:06 +02:00
Katayama Hirofumi MZ
1dc8d80ca1 [SHELL32] SHChangeNotify: Add drive, remove drive (#6782)
Implementing missing features...
JIRA issue: CORE-13950
- Add WM_DEVICECHANGE message handler in the shell window to detect
  DBT_DEVICEARRIVAL and DBT_DEVICEREMOVECOMPLETE.
- Use GetLogicalDrives function to detect drives.
- Use SHChangeNotify to send SHCNE_DRIVEADD and
  SHCNE_DRIVEREMOVED notifications.
- Modify CDefView::OnChangeNotify.
2024-04-23 08:28:38 +09:00
Timo Kreuzer
a8ece7e81a [EVTLIB] Fix size of event log record
The size is 32bit, don't read a SIZE_T. Fixes crashes of advapi32_winetest eventlog on x64.
2024-04-22 16:42:02 +02:00
Timo Kreuzer
565828127f [WIN32U_VISTA] Add win32u.dll for Vista 2024-04-22 10:15:40 +02:00
Serge Gautherie
fd331f1494 [NTUSER] UserSetCursorPos(): Use an early return
Addendum to 76290a6 (0.4.15-dev-7889).
2024-04-20 13:57:35 -06:00
Serge Gautherie
8b9bf3369c [DOC] 3rd Party Files.txt: Update 3 unknown versions (#6771) 2024-04-20 21:29:26 +02:00
Katayama Hirofumi MZ
0240a87618 [SHELL32] SHChangeNotify: SHCNF_DWORD and SHCNF_PRINTERA/W (#6777)
Implementing missing features...
JIRA issue: CORE-13950
- Add Shell_ParsePrinterName helper function.
- Implement SHCNF_DWORD, SHCNF_PRINTERA,
  and SHCNF_PRINTERW types of SHChangeNotify
  function.
2024-04-20 23:11:31 +09:00
Serge Gautherie
68a8619b7b [SHELL32] Remove 2 redundant initializations
Addendum to 6146fd0 (r54688) and 99b2e3d (r54979).
2024-04-20 01:50:14 +04:00
Whindmar Saksit
62c30d1f93 [SHELL32] SHCreateDefaultContextMenu: Pass HWND to callback (#6764)
The caller's callback function is supposed to receive the window handle
passed to SHCreateDefaultContextMenu / CDefFolderMenu_Create2.
2024-04-20 00:34:45 +03:00
Whindmar Saksit
dacdd80390 [ZIPFLDR] Fix ShellExecute opening a .zip (#6714)
ShellExecute on a .zip file fails because the command in the registry
uses rundll32 that passes in an ANSI string, which is the default for
exported functions without a W suffix.

- This should also fix RAPPS not being able to open downloaded .zip files
- I made it use the full path to Explorer for good measure

Fixes regression introduced by 0.4.15-dev-6343-g bf2cec186c (#5411)

CORE-19506
2024-04-20 00:12:56 +03:00
Hermès Bélusca-Maïto
5f3554a40c [FREELDR] Merge boot-drive and partition functionalities together (#6760)
And deprecate corresponding boot types "Drive" and "Partition".
These are replaced by the more general "BootSector" boot type.

Finish the unification of the code, started in commit ff85aa0c3,
that loads and boots disk MBR, partition VBR or boot sector in file.

A "WarnDeprecated()" helper is added to warn the user about the
deprecated features, and to inform them to adjust their FREELDR.INI
file in accordance.

In addition, bump FreeLoader version to 3.2 (at last!): a lot of
features have been added or deprecated since its last release.
2024-04-19 21:45:41 +02:00
Oleg Dubinskiy
5949c20d97 [MMIXER] Fix additional data size initialization for different audio formats (#6753)
Calculate size of the additinal data based on the format tag specified by the caller.
For PCM wave format, it should be zero, and for all others,
it should be taken from cbSize member of WAVEFORMATEX structure.
- Initialize data size for each format appropriately.
- Append it to the total pin connect allocation size, to allocate enough memory for it.
- Use it as additional data size for requested wave format.
- Append it to the total size of data format.
- Add SAL2 annotations for MMixerInitializeDataFormat function.
Fixes two crashes in winmm:capture and winmm:wave winetests, which have been introduced by 12b3272d9e.
So this is an addendum to that commit.
CORE-19514
2024-04-18 23:19:35 +02:00
Justin Miller
ad9c634efa [SDK] Don't just infinitely spam the DbgPrint in the bootloader (#6763) 2024-04-18 12:08:00 -07:00
Mark Harmstone
dd6c1c8843 [FREELDR] Allow Freeloader to boot Vista revamp of PR #1905 (#6479)
[FREELDR] Add "WindowsVista" boot type
[FREELDR] Set GDT correctly for Vista
[FREELDR] Map first page of memory, this is an observed behavior, and
also increases stability boot Checked windows 2003 SP2 ntoskrnl with
freeloader.
[SDK] Don't assert on big keys in bootloader

Co-authored-by: Justin Miller <justin.miller@reactos.org>
2024-04-18 09:28:54 -07:00
Stanislav Motylkov
6d853be981 [ZIPFLDR] Make function prototype consistent
It is the only function in that file that used this format, all the others are one line.

Spotted by Whindmar Saksit.
2024-04-18 18:22:17 +03:00
Stanislav Motylkov
359c9c7b42 [SHELL32] Update Russian (ru-RU) translation
Addendum to 9238a1762f.
2024-04-18 18:18:16 +03:00
Carlo Bramini
605fa32d45 [CALC] Fix input bug when display is in error. (#5988)
CORE-19191

Reproduce the same behaviour of the calculator for Windows XP when an error condition is met.
When the result is NaN and it cannot be printed, the error condition is cleared by pressing the CLEAR button.
2024-04-18 11:39:46 +02:00
Justin Miller
2a2556c5d0 [WIN32SS] Introduce the NATIVE_REACTX define and disable some Dx calls (#6025)
The code itself isn't wrong but we're entirely missing the logic needed
to make it work. This leads to spontaneous crashes with video drivers and
various unity games.
2024-04-17 21:47:49 -07:00
Justin Miller
9452b29c7f [VFDLIB] GitHub actions workaround - Disable PDB generation for vfd.dll (#6762)
After a back and fourth investigation I've just decided to disable pdb generation for this ROSAPP for now.
We tried taking the code apart a bit and only building parts but alas it didnt yield any sucess.

disabling the AV also didn't help.
2024-04-17 20:24:33 -07:00
Joachim Henze
21a9f78b2d [COMCTL32] Pt.rc: Place accelerator FIXMEs 2024-04-18 01:53:20 +02:00
Katayama Hirofumi MZ
d383b20b01 [REGEDIT] Correctly limit splitter's X coordinates (#6758)
JIRA issue: CORE-19516
- Add ClampSplitBarX helper function to delete
  duplicated code.
- Use a signed value in WM_LBUTTONUP handling.
- Use ClampSplitBarX in ResizeWnd function,
  WM_LBUTTONDOWN, WM_MOUSEMOVE, and
  WM_LBUTTONUP handling.
2024-04-18 06:09:58 +09:00
Hermès Bélusca-Maïto
7b4f42470f [FREELDR] Reformat the boot editor strings in the code. 2024-04-17 22:25:14 +02:00
Hermès Bélusca-Maïto
e5517176b8 [FREELDR] linuxboot: It doesn't need the BIOS boot drive number and partition.
Also document a little bit the RootDevice field in the boot sector;
add SAL2 annotations.
2024-04-17 22:25:13 +02:00
Hermès Bélusca-Maïto
c25a0e1919 [FREELDR:UI] Minor miscellaneous fixes.
- UiMessageBox(): Enlarge the default buffer used to printf msgbox strings.

- TuiUpdateDateTime(): When displaying the time, don't pad too much
  with spaces on the left.

- TuiDrawShadow():
  * Pre-calculate whether we need to show the right/bottom shadows,
    and whether the right-shadow has a double width.
  * Cap the right and bottom upper-bound coordinates before looping,
    in order to avoid buffer overflows if the given coordinates go
    beyond the screen.

- TuiDrawMsgBoxCommon(): Improve how the message box centering
  calculations are done:
  * When the "full-UI" is used (and center-menu is used), try to
    center the message box in the space between the header and
    the status bar.
  * Ensure the top-left box corner is inside the screen, in case
    the calculated message box borders go off-screen.

- TuiCalcMenuBoxSize():
  * Uniformize the way the menu box coordinates are calculated.
  * Reduce the space between menu box margins and the longest item.
  * Ensure the top-left menu corner is inside the screen, in case
    the calculated menu box borders go off-screen.
2024-04-17 22:19:43 +02:00
Hermès Bélusca-Maïto
c044201472 [FREELDR] Skip NULL-pointer entries in Argv when enumerating arguments.
A NULL pointer (not necessarily the terminating one) is a valid entry
in the Argv argument vector, according to the ARC specification
(Section 4.4 "Loaded-Program Conventions").
Thus, such pointer needs to be ignored when searching over the
argument vector.
2024-04-17 21:57:12 +02:00
Hermès Bélusca-Maïto
93245d385d [FREELDR] arcsupp.c: Relicense my code to MIT and use SAL2 annotations. 2024-04-17 21:57:11 +02:00
Hermès Bélusca-Maïto
5b2dcdd03d [FREELDR] BuildArgvForOsLoader: Add a terminating NULL pointer to the Argv vector.
Addendum to commits d05be0da3 and bd451f240.

This is required for POSIX compliance, which the ARC specification obeys.

See Section 2.1.2.2.1 (ANSI X3.159-1989) or 5.1.2.2.1 (ISO/IEC 9899:x)
"Program startup":
```
If they are declared, the parameters to the main function shall obey
the following constraints:
— The value of argc shall be nonnegative.
— argv[argc] shall be a null pointer.
[...]
```

See also https://pubs.opengroup.org/onlinepubs/9699919799/functions/exec.html
2024-04-17 21:57:09 +02:00
Joachim Henze
6cb18bc6a4 [COMDLG32] *.rc: Tweak spaces in IDS_INVALID_FILENAME (#6736)
This saves a few bytes in the binary, e.g.
comdlg32.dll master 0.4.15-dev-7887-g64a59a1 RosBEWin2.2.2 GCC8.4.0 dbg x86 shrinks
from 1.011.712 bytes to 1.009.664 bytes.

Furthermore it syncs the translations at this line, because pt-PT.rc already applied such a tweak.

Co-authored-by: Katayama Hirofumi MZ <katayama.hirofumi.mz@gmail.com>
2024-04-17 16:53:09 +02:00
Timo Kreuzer
95bf896b10 [CRT] crtdefs.h: Wrap localeinfo_struct in ifdef
This prevents a redefinition error, when GCC 13 host headers are included when compiling c++ code.
2024-04-16 20:10:38 +02:00
Katayama Hirofumi MZ
1b85a5fa06 [BROWSEUI] SHExplorerParseCmdLine: Fix parsing of /root (#6752)
Remove excessive (!pInfo->pidlPath) check in SHExplorerParseCmdLine
function.
JIRA issue: CORE-16939
2024-04-15 09:41:01 +09:00
Carl J. Bialorucki
ea34ecc9ec Check if dwBandID is NULL before getting band object (#6738)
fixes CORE-18807 'Our explorer.exe ATL-asserts when executed on XPSP3'
which most likely got unhidden when we enabled the ATL-assertions in
0.4.15-dev-5023-g 55343f04b0
2024-04-15 01:08:01 +02:00
Katayama Hirofumi MZ
b1de3bfb2b [SHELL32] Fix ParseDisplayName Part 4 (#6747)
Follow-up to #6746. Reduce SHParseDisplayName
failures.
JIRA issue: CORE-19495
- Re-implement CDrivesFolder::ParseDisplayName
  method.
2024-04-15 03:25:20 +09:00
Katayama Hirofumi MZ
63e5885b37 [SHELL32] Fix ParseDisplayName Part 3 (#6746)
Follow-up to #6740. Reduce SHParseDisplayName
failures.
JIRA issue: CORE-19495
- Add CRegFolder::_IsInNameSpace helper method.
- Half-implement CRegFolder::ParseDisplayName
  method.
- Parse class string by using GUIDFromStringW
  function.
- Return CO_E_CLASSSTRING for invalid CLSID
  string.
2024-04-15 03:24:09 +09:00
Timo Kreuzer
8feb078692 [NTOS:KE/x64] Use movaps instead of movdqa
It does the same thing, but is one byte shorter.
2024-04-14 16:09:20 +02:00
Timo Kreuzer
8d459f2820 [NTOS:KE/x64] Clean up EnterTrap/ExitTrap
- Always save and restore all non-volatile registers, including xmm
- Remove the obsolete flags
2024-04-14 16:09:20 +02:00
Timo Kreuzer
05456808e8 [NTOS:KE/x64] Fix handling of non-volatiles in trap vs exception frame
The registers that are saved/restored in the trap / exception frame need to be consistent between all entry/exit points as well as the functions that convert between trap/exception frame and context. The trap frame contains only the non-volatile registers and rbp, the rest is saved in the exception frame.
The previous code didn't save rbp in the syscall handler, which led to it being clobbered when exiting though KiServiceExit2 rather than returning back to the syscall exit path. Also KeContextToTrapFrame would use rbx, rsi and rdi from the trap frame, which wouldn't be saved there by the syscall handler.
2024-04-14 16:09:20 +02:00
Timo Kreuzer
83e741c643 [RTL/x64] Implement RtlRaiseException in asm
This fixes invalid contexts being passed to RtlDispatchException. Also update the ExceptionAddress field in the EXCEPTION_FRAME, to match the Rip value in the CONTEXT, which is required for proper unwinding.
2024-04-14 14:12:35 +02:00
Joachim Henze
ba170757d6 [REGEDIT] Anonymize CONTROL "List1" (#6735)
This saves a few bytes in the binary, e.g.
regedit.exe master 0.4.15-dev-7887-g64a59a1 RosBEWin2.2.2 GCC8.4.0 dbg x86 shrinks
from 1.049.600 bytes to 1.049.080 bytes.

Furthermore it syncs the translations at this line, because es-ES.rc even translated that identifier to "Lista1" already.
2024-04-14 11:10:01 +02:00
Carl J. Bialorucki
78dc504e72 [SHELL32] Initialize MenuItemInfoW struct in AddStaticContextMenusToMenu (#6737)
This prevents an issue where clicking on most of the icons on the desktop
that isn't the file explorer causes explorer to throw an exception,
and also prevents another issue where most applications won't launch from the start menu;
at least on MSVC builds running on VirtualBox 5.2.44.

^- I am pretty sure, that this was not always the case. The guilty rev is yet unknown though.
2024-04-14 00:12:35 +02:00
Serge Gautherie
b8abfa76ca [DOC] 3rd Party Files.txt: Complete 'win-iconv' (#6691)
Upstream (code) reads:
`win_iconv is placed in the public domain.`
2024-04-13 21:23:15 +02:00
Timo Kreuzer
fc6e23d6b8 [NDK/x64] Remove #pragma pack(push,4) around KPRCB/KPCR 2024-04-13 17:59:04 +02:00
Timo Kreuzer
bb444b93d9 [RTL/x64] Handle STATUS_UNWIND_CONSOLIDATE in RtlRestoreContext
It's not entirely correct yet and will probably fail on recursive c++ exceptions, but it fixes basic c++ exception handling.
2024-04-13 14:34:23 +02:00
Katayama Hirofumi MZ
ff282894a8 [SHELL32] Refactor and simplify CDesktopFolder (#6741)
Follow-up to #6721. This PR can reduce 1KB of
binary size.
JIRA issue: CORE-19495
- Delete CStubFolderBase and derived classes.
- Add
  CDesktopFolder::_ParseDisplayNameByParent
  method.
- Don't use excessive IShellFolder objects in
  parsing display names.
- Simplify and reduce code.
2024-04-13 21:08:39 +09:00
Katayama Hirofumi MZ
7fdec96009 [SHELL32] Fix ParseDisplayName Part 2 (#6740)
Follow-up to #6721. Reduce
SHParseDisplayName failures.
JIRA issue: CORE-19495
- Re-implement CFSFolder::ParseDisplayName
  method to validate the names.
- Add CFSFolder::_ParseSimple,
  CFSFolder::_GetFindDataFromName, and
  CFSFolder::_CreateIDListFromName helper
  methods.
- Add PathIsDotOrDotDotW, PathIsValidElement,
  PathIsDosDevice, and SHILAppend helper
  functions.
- Delete GetNextElementW and add
  Shell_NextElement function.
2024-04-13 21:07:12 +09:00
Ratin Gao
f61e14f554 [NTDLL][ADVAPI32][ADVAPI32_APITEST][CRYPTLIB] Add hash API exports for NT6+ and apitests with small fixes
- For NT6.0+, NTDLL exports those hash APIs that ADVAPI32 thunks forward to
- Fix undocumented context structure layout and content
- Add apitests to verify both of hash result and structure content
2024-04-13 12:41:36 +02:00
Timo Kreuzer
14beaec1d9 [SHELLBTRFS] Prevent redeclaration of __cpuidex with newer mingw-w64 headers 2024-04-13 10:01:46 +02:00
Doug Lyons
76290a6696 [NTUSER] Avoid sending superfluous WM_MOUSEMOVE messages (#6397)
Add a check so that mouse move messages are not generated unless
the mouse cursor X or Y position is changed.

This fixes extra mouse moves generated when clicking.
Patch by I_Kill_Bugs.

CORE-8394 CORE-18529 CORE-19422 CORE-19423
2024-04-12 23:58:52 +03:00
Katayama Hirofumi MZ
31ce37da2a [SHELL32][SHELL32_APITEST][SDK] Implement GUIDFromStringA (#6734)
Implementing missing features...
JIRA issue: CORE-19278
- Add GUIDFromString testcase.
- Implement GUIDFromStringA function.
- Add NULL check to GUIDFromStringW.
- Add GUIDFromStringA prototype to "undocshell.h".
2024-04-12 21:29:07 +09:00
Joachim Henze
64a59a17b5 [REGEDIT] RC: it-IT: Strip spaces, hu-HU,pt-PT,tr-TR: add FIXMEs
The it-IT.rc thingy I spotted when I wanted to port back the regedit-changes from
0.4.15-dev-6592-g 995d255962
The line definitely got improved by that commit, but it was still inferior.

In the other 3 langs it is just some stuff where master head is inferior to older branches,
I spotted them while porting back other things.
So I placed the FIXMEs to protect myself from porting it back accidentally,
and to help the native speakers with seeing them on master head.

The tr-TR.rc: "D&izi Değeri" -> "D&ize Değeri" was done for consistency, because we do have
that item 3 times, and 2 of them were using "D&ize Değeri" already.
2024-04-12 06:31:24 +02:00
Joachim Henze
938a39aee9 [COMDLG32] cdlg_Sq.rc: Strip 2 includes (#6730)
They do look weird/wrong and no other rcs do have them.
Builds fine on all bots.
I do have no clue, why they were added here historically.
2024-04-11 19:54:11 +02:00
Oleg Dubinskiy
12b3272d9e [AUDIO] Implement support for WAVE_FORMAT_EXTENSIBLE audio format (#6686)
[MMIXER] Implement hadling WAVE_FORMAT_EXTENSIBLE audio format
Fix opening audio device error when trying to open it with WAVE_FORMAT_EXTENSIBLE format tag set in wFormatTag member of WAVEFORMATEX:
- Pass additional data size from WAVEFORMATEX.cbSize to pin data format.
- Append it to the whole size of pin data format (KSDATAFORMAT.FormatSize).
- Set additional fields in WAVEFORMATEXTENSIBLE structure (data format, BPS and channel mask) when WAVE_FORMAT_EXTENSIBLE is used. They are used by our inbuilt Intel AC97 miniport driver at least. It simply fails when these members are not set.
- Fix pin connect allocation size by appending an additional data size from WAVEFORMATEX.cbSize to KSPIN_CONNECT + KSDATAFORMAT + WAVEFORMATEX. This allows to proerly initialize additional extensible data and avoids kernel memory leakage when using extensible audio format.
- Remove format tag check which allowed WAVE_FORMAT_PCM to be opened correctly. So now all possible audio formats can be opened properly at least (although it does not mean they may work correctly).
This fixes the audio playback for all apps those are supporting extensible audio data and use it by default (e. g. AIMP 5.30, QMMP 0.12.17, all Chrome/Chromium-based browsers, GameDev Tycoon Demo game etc.).
CORE-10907, CORE-14783

* [KS] Allow passing additional extensible audio data when extensible audio format is used
- Append additional data size from WAVEFORMATEX.cbSize to pin connect size passed to KsCreatePin. If the tag is WAVE_FORMAT_PCM, then this member should always be zero. So in that case, no any additional data is passed to creation request, and the passed data size is correct for PCM too (KSDATAFORMAT + WAVEFORMATEX).
This fixes audio playback in several apps those are supporting extensibble audio and use it by default (e. g. AIMP 5.30, QMMP 0.12.17, all Chrome/Chromium based browsers, GameDev Tycoon Demo game etc.).
CORE-10907, CORE-14783.

* [WDMAUD.DRV] Pass the correct additional data size to I/O control request
Store a correct size of additional data in WAVEFORMATEX.cbSize when performing open of audio device, when WAVE_FORMAT_EXTENSIBLE audio format is used.
It allows to properly open audio device with Legacy APIs enabled too.
This fixes audio playback in several apps those are using extensible audio data (e. g. AIMP 5.30, QMMP 0.12.17, all Chrome/Chromium based browsers, GameDevTycoon Demo game etc.).
CORE-10907, CORE-14783
2024-04-11 11:59:14 +02:00
Joachim Henze
d72d61fe47 [COMDLG32] *.rc Improve translations (#6729)
First an foremost this fixes "the copies-icon in the print-dlg not showing" for Taiwan as well.
That part is an addendum to 0.4.15-dev-3493-g a36cc8054d (#2831)
Taiwan is untypically placed in cdlg_Zh.rc as well for comdlg, next to the traditional chinese version and therefore was forgotten.

Furthermore improve many translations a little bit, where strings could be stolen from neighbor controls. This part focuses mostly on the NEWFILEOPENV2ORD.

Then add many FIXMEs for existing accelerator collisions, many of them were introduced by adding the "Help"-button retrospectively, when other translations existed already. Let the native speakers handle them later.

Strip accelerators from some "Cancel" buttons, e.g. in cdlg_Pt.rc, and the "Save as" button, e.g. within cdlg_Es.rc as those should not exist, which most languages did properly respect already.

Also fix a few text truncations and a few accelerators, e.g. for de-DE: stc3 was cutoff, and "Öffnen" had the wrong accelerator.
2024-04-11 00:56:04 +02:00
Whindmar Saksit
7a810c17e7 [SHELL32] Implement several ShellDispatch methods (#6145)
* Implement most of the methods

* Some suggested changes and better error handling (that I then mask like Windows)
2024-04-10 14:29:26 -07:00
Timo Kreuzer
c69371cced [NTOS:KE/x64] Improve KeGetTrapFrame 2024-04-10 23:27:53 +02:00
Timo Kreuzer
bedc16d46d [DEVMGR] Add DYNAMIC_FIELD_OFFSET macro
This replaces the usage of FIELD_OFFSET for dynamic indexing into array fields.
Sadly GCC has broken __builtin_offsetof and they don't seem to intend to fix it.
See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95942
2024-04-10 23:27:11 +02:00
Timo Kreuzer
f5e54015ee [KS] Fix a bug found by GCC 13 2024-04-10 21:47:38 +02:00
Timo Kreuzer
109b84826e [UDFS] Remove packing around include of ntifs.h
This is not just wrong, it is criminal.
2024-04-10 21:46:34 +02:00
Katayama Hirofumi MZ
d05dcf6a02 [SHELL32][SDK] Fix ParseDisplayName Part 1 (#6721)
JIRA issue: CORE-19495
- Implement SHParseDisplayName and
  CDesktopFolder::ParseDisplayName.
- Add CStubFolderBase, CShellUrlStub, CFileUrlStub,
  CIDListUrlStub, and CHttpUrlStub helper classes.
- Add SHGetSpecialFolderID and
  Shell_ParseSpecialFolder helper functions.
- Add BindCtx_ContainsObject,
  BindCtx_GetUIWindow, 
  BindCtx_RegisterObjectParam, SHBindToObject,
  SHBindToObjectEx, SHCoInitializeAnyApartment,
  SHGetAttributes, SHGetNameAndFlagsW,
  SHIsFileSysBindCtx, SHSkipJunctionBinding,
  Shell_DisplayNameOf, and Shell_FailForceReturn
  helper functions.
- Modify CSIDL data.
2024-04-10 09:32:13 +09:00
Andrei Miloiu
e85ef799fe [SHELL32] Update Romanian (ro-RO) translation (#6657)
Co-authored-by: Joachim Henze <joachim.henze@reactos.org>
2024-04-09 12:41:54 +02:00
Maj Soklič
2d79b751a4 [NOTEPAD] Fix english STRING_PRINTFAILED translation (#6722) 2024-04-09 11:46:52 +02:00
Katayama Hirofumi MZ
ff531eaade [SHLWAPI][SHLWAPI_APITEST] Fix NULL behavior of StrDupA/W (#6720)
Fix wrong behavior of shlwapi!StrDupA and shlwapi!StrDupW functions.
JIRA issue: CORE-19495
Return NULL when lpszStr == NULL.
2024-04-08 09:17:08 +09:00
Andrei Miloiu
0cfc9aba05 [STOBJECT] Update Romanian (ro-RO) translation (#6695) 2024-04-07 20:40:38 +02:00
Andrei Miloiu
608ed5619f [SHLWAPI] Update Romanian (ro-RO) translation (#6702) 2024-04-07 20:36:23 +02:00
Andrei Miloiu
3e4d8e6f6c [UMANDLG] Update Romanian (ro-RO) translation (#6699) 2024-04-07 20:34:38 +02:00
Katayama Hirofumi MZ
5eea72f61b [SHELL32] Use Uppercase in SHELL32_GUIDToStringA/W (#6719)
Improve consistency.
JIRA issue: CORE-19495
Reduced 4 failures in shell32:SHParseDisplayName.
2024-04-07 20:34:50 +09:00
Timo Kreuzer
713a360c74 [NTOS:KE/x64] Remove pointless loop in KiInitiateUserApc
Only one user APC can be delivered here. The next one can only be delivered, when KiUserApcDispatcher returns to the previous context with NtContinue.
2024-04-07 09:14:26 +02:00
Timo Kreuzer
7589238b68 [NTOS:KE/x64] Fix user APC delivery on syscall exit
We need to save the missing registers in the trap frame before calling KiInitiateUserApc, because they will be used to create the CONTEXT that is saved on the user mode stack, where KiUserApcDispatcher returns back to using NtContinue. This fixes remaining failures in kernel32_apitest QueueUserAPC.
2024-04-07 09:14:26 +02:00
Timo Kreuzer
c4498d751d [KERNEL32_APITEST] Add test for multiple queued user APCs 2024-04-07 09:14:26 +02:00
Timo Kreuzer
85fc290bb7 [KERNEL32_APITEST] Use InterlockedIncrement for proper synchronization 2024-04-07 09:14:26 +02:00
Timo Kreuzer
43b181309e [NTOS:KE] Fix calculation of timer expiration
Both due-times and interrupt time are unsigned, but were treated as signed in KiInsertTimerTable, which led to very long (e.g. INFINITE) waits being interpreted as having a negative due-time and being completed instantly.
Mostly fixes kernel32_apitest QueueUserAPC
2024-04-07 09:14:26 +02:00
Timo Kreuzer
34576c7015 [NTOS:KE/x64] Implement KiUserCallbackExit
This is used in KiUserModeCallout instead of KiServiceExit2. The latter is broken, leaks non-volatile registers and will need to be modified to handle an exception frame, which we don't need/have here. It will also use sysret instead of iret and is generally simpler/faster.
Eventually it would be desirable to skip the entire trap frame setup and do everything in KiCallUserMode. This requires some cleanup and special handling for user APC delivery.
2024-04-07 09:13:58 +02:00
Whindmar Saksit
9238a1762f [SHELL32] Copy as path shell extension (#6701)
* Added Copy as path menu extension

---------

Co-authored-by: Thamatip Chitpong <weedgamer131@gmail.com>
2024-04-06 14:01:32 -07:00
Oleg Dubinskiy
91be8bf0a1 [MSVCRT20][MSVCRT40] Fix heap initialization (#6713) CORE-19505
Fixes CORE-19505 'game "Hover!" from rapps does not start anymore'
It failed showing a msgbox
"There was an error allocating memory in Hover!"

the regression was introduced by
0.4.15-dev-5602-g c47506a5f4

Add missing heap initialization in DllMain entrypoints of msvcrt20.dll and msvcrt40.dll,
similarly to as it is done in msvcrt.dll (CRT).
The msvcrt.dll (CRT) initialization code was updated properly
during the last winesync, accordingly to the new changes,
but msvcrt20.dll/msvcrt40.dll one was not. So update it too.
This fixes the crash of HOVER 1.0 game from Rapps when
it tries to allocate a dynamical memory from the
unitialized heap via malloc() function exported from our msvcrt20.dll.
2024-04-06 17:46:11 +02:00
Timo Kreuzer
ea28951607 [UMKM_APITEST] Add a test for syscall handling
This is intentionally not part of ntdll_apitest, because that links to advapi32, which links to rpcrt4, which (wrongly!) links to ws2_32, which (wrongly!) links to user32, which breaks the test.
2024-04-06 08:14:52 +02:00
Doug Lyons
a771729e69 [COMCTL32] Fix Status Bar Updating (#6696)
This fixes CORE-19497 'Regression, part of the statusbar with the sizegrip is not redrawn properly'

The regression was introduced / unhidden by 0.4.15-dev-5617-g 7866eb2886

Author of the patch: JIRA-user: I_Kill_Bugs
turned into PR by @Doug-Lyons
Thank you both!

KVM: https://reactos.org/testman/compare.php?ids=94433,94435
VBox: Builder Broken atm unfortunately
2024-04-05 23:30:09 +02:00
Timo Kreuzer
b6987d1463 [RTL/x64] Remove an ASSERT in RtlpTryToUnwindEpilog
This can fail on optimized builds, where functions can end after a noreturn function call without an epilog / ret, but with an int 3. We simply fail gracefully, which is the right thing to do.
2024-04-05 18:18:45 +02:00
Whindmar Saksit
8841e3d7ba [SHELL32] Handle the Progman Folder options message and tab switching support (#5574)
* Handle the "OnShowOptionsDlg" message
* Support switching tabs
* Update dll/win32/shell32/dialogs/folder_options.cpp
* Update dll/win32/shell32/shelldesktop/CDesktopBrowser.cpp
* ShowFolderOptionsDialog workaround
* Added Vista pages, define for magic message

---------

Co-authored-by: Stanislav Motylkov <x86corez@gmail.com>
Co-authored-by: Thamatip Chitpong <weedgamer131@gmail.com>
2024-04-04 18:53:57 -07:00
Timo Kreuzer
5b82ada2ed [NTOS:Ke/x64] Improve KiDispatchExceptionToUser
Return back to the caller instead of exiting through KiServiceExit2, which is broken and needs to be changed to allow restoring of an exception frame.
2024-04-04 18:41:39 +02:00
Timo Kreuzer
24b4026ce8 [NTOS:KE/x64][SDK] Add HANDLE_USER_APCS asm macro
This also fixes delivering APCs from the system call handler, which previously would have clobbered rax. Also don't use the thread's TrapFrame member, which is not always set, when returning.
2024-04-01 20:15:49 +02:00
Timo Kreuzer
88e24bc463 [NTOS:KE/x64][SDK] Add some trap handling support asm macros 2024-04-01 20:15:49 +02:00
Thamatip Chitpong
5329e475db [NTOS:MM] MiDeleteVirtualAddresses: Update PrototypePte before exiting loop, when deleting PDE
Fix BSoD 0x1A introduced by commit c7e09061ca
CORE-18190
CORE-18818
CORE-19253
2024-04-02 00:14:57 +07:00
Thamatip Chitpong
588449c364 [NTOS:MM] Revert commit 0c612980ac
This revert commit 0c612980ac
2024-04-02 00:14:57 +07:00
Serge Gautherie
6dcf70f398 [DOC] 3rd Party Files.txt: Update/Complete 'CardLib' (#6688)
As mentioned in e.g. base/applications/games/solitaire/ReadMe.txt ,
CardLib is indeed freeware, in public domain.
2024-04-01 18:29:29 +02:00
Dmitry Borisov
5070e8960a [ACPI] Fix object evaluation (#6302)
CORE-17256

- Implement support for complex input buffers.
  This will enable the IDE driver with some hack
  to execute the _STM (channel timing settings) control method.
- Fix a memory leak.
- Fix returned status code.
- Correctly calculate the output buffer size.
- Improve buffer validation.
- Implement support for async control requests.
- Implement local reference conversion.
- Implement support for subpackage argument conversion.
- Place some code into INIT section.
2024-04-01 18:21:35 +02:00
Timo Kreuzer
1538712c0b [NTOS:KE/x64] Move setting the thread's trap frame to KiSystemCallEntry64
This is needed, because KiSystemCallHandler can be called multiple times for the same syscall entry, which would mess up the linkage. This replaces a previous hack and makes things cleaner.
2024-03-31 12:12:48 +02:00
Gleb Surikov
fc6bf61e4c [NTOS:CM] Avoid unnecessary ObDereferenceObject when handling an ObInsertObject failure (#6673)
In case of failure, ObInsertObject itself dereferences the object, so calling ObDereferenceObject one more time in the failure handler is redundant.

- Remove ObDereferenceObject call from CmpCreateRegistryRoot in case ObInsertObject fails.
- Add missing RootKey dereference if CmpCreateRegistryRoot failed to get the key cell (KeyCell).

CORE-17904
2024-03-30 22:10:17 +03:00
Ratin Gao
1cf8759d69 [KERNEL32][KERNEL32_VISTA][KERNEL32_APITEST] Implement and export NT6+ firmware API (#6580)
- Implement `GetFirmwareType` and improve existing API test for it
- Move (Get/Set)FirmwareEnvironmentVariableEx(A/W) to kernel32_vista_static and export them when NT version >= 6.2

Addendum to 4c8a2a8815. CORE-11954
2024-03-30 15:46:34 +03:00
Serge Gautherie
a68406bccf [DOC] 3rd Party Files.txt: Add 'AMD LibM for Windows' (#5945)
Addendum to 4afb647 (0.4.15-dev-5466).
2024-03-30 03:57:24 +01:00
Timo Kreuzer
43fc73207d [FREELDR/x64] Set up CR0/CR4 for SSE instructions
Newer GCC starts emitting SSE/SSE2 instructions, which would cause a triple fault, during early boot, if not enabled.
2024-03-29 19:39:01 +01:00
Thamatip Chitpong
8ba6c66890 [MSCONFIG] Update title for en-US and th-TH 2024-03-29 09:35:44 +07:00
Katayama Hirofumi MZ
84f15b15fb [SHELL32][SHELL32_APITEST] FindExecutable: Add PRF_FIRSTDIRDEF flag (#6681)
Follow-up to #6635. The directory search without this flag didn't work.
JIRA issue: CORE-19493
- Add PRF_FIRSTDIRDEF flag for PathResolveW call.
- Delete needless macro definitions in PathQualifyExW.
- Remove an assertion in IsLFNDriveW.
- Fix shell32_apitest:FindExecutable testcase.
2024-03-29 11:15:38 +09:00
Timo Kreuzer
5442f87080 [NTOS:KE/x64] Improve KiSystemCallHandler code a bit
- Use an index for the table instead of ugly pointer offset
- Invert the check for GUI calls
- Fail with proper status code on invalid win32k syscall ids
2024-03-28 22:26:42 +01:00
Timo Kreuzer
2ed8541dc8 [NTOS:KE/x64] Remove duplicated REX prefix from sysretq 2024-03-28 21:37:25 +01:00
Joachim Henze
558ab78fc5 [SHELL32] *.rc: Strip all unneeded WS_DISABLED in dlg style (#6675)
This is not intended to fix any specific bug. It is just meant for cleanup.
No noticable change in behavior at runtime.
Some rcs had 7 of those, some only 6. So this will also slightly improve sync between the rcs.
2024-03-27 23:37:41 +01:00
Doug Lyons
0c612980ac [NTOS:MM] Fix ntoskrnl/mm/ARM3/virtual.c causing BSOD 0x1a introduced by commit https://github.com/reactos/reactos/commit/c7e09061ca (#6633) 2024-03-27 23:50:45 +02:00
Adam Słaboń
fec827eeef [FREELDR][NTOS:MM] Add security cookie generation to FreeLoader (#6270)
* [NTOS:MM] Misc improvements for cookie generation code

- Improve support for 64 bit images
- Improve LdrpFetchAddressOfSecurityCookie code

* [FREELDR] Add security cookie generation to FreeLoader

CORE-17808
2024-03-27 23:33:06 +02:00
Timo Kreuzer
36fa628605 [NTOS:KE/x64] Loop in KiInitiateUserApc
This is required since while interrupts are enabled, another user APC could get queued and we want to guarantee that those are all delivered before returning to user mode.
2024-03-27 22:11:07 +01:00
Joachim Henze
e3bfcdf9e2 [SHELL32] pl-PL.rc: Fix IDD_FILE_PROPERTIES & IDD_FOLDER_PROPERTIES (#6678)
- This removes an ancient polish-only workaround/extrawurst of 0.4.13-dev-1171-g c81af08 which made the dialog bigger than allowed in y, and which reduced its usability on small monitor resolution.
- Sync the dialogs dimensions back to en-US and all other localizations. Notice also that both dialogs have the same height again afterwards.
- Maximizes the available space for the dynamic parts of the dialog on the right side. Historically even 160 turned out to be too short for that, e.g. EDITTEXT 14009, the dynamic part of "Lokalizacja:". and also EDITTEXT 14007, the dynamic part of "Program:". Therefore we used 170 everywhere for those widths in all other languages. But due to the polish workaround it was crippled to 155 here. Not good!
- Notice also how now the leftmost checkboxes position of the Attributes is perfectly aligned with the other dynamic content of that column above after the fix. This will be important in the future when we will restore the vertical layout of Attribute-checkboxes in both dlgs (Plik vs. checkbox, and Katalog vs. checkbox) to match 2k3sp2
---------
Co-authored-by: Adam Słaboń <asaillen@protonmail.com>
2024-03-27 21:08:17 +01:00
Gleb Surikov
a9d9f0de86 [CONFIGURE] Add support for MSVC Toolset 19.4x (#6677)
The MSVC toolset will increment its minor version number from 19.39 (VS 2022 v17.9) to 19.40 (VS 2022 v17.10). The MSVC toolset will be version 19.40.33521.0 in the preview 1 release. For more details, see the MSVC Toolset Minor Version Number 14.40 in VS 2022 v17.10 blog post: https://aka.ms/msvc-ver14.40
2024-03-27 21:04:18 +03:00
Katayama Hirofumi MZ
72a27e6d45 [SHELL32] CQueryAssociation: Add slash check (#6676)
Follow-up to #6656. I had forgotten to check the slash.
JIRA issue: CORE-19493
Add StrChrW(pszAssoc, L'\\') check before PathFindExtensionW call.
2024-03-27 17:36:48 +09:00
Katayama Hirofumi MZ
f9a5585870 [SHELL32] Improve FindExecutableW (#6635)
Follow-up to #6656. An approach to
implement ShellExecuteEx correctly.
JIRA issue: CORE-19493
- Rewrite code by using AssocQueryStringW
  and PathResolveW functions.
2024-03-27 17:04:49 +09:00
Joachim Henze
00c4b3d99f [SHELL32] *.rc: Anonymize the "LIST2" control in IDD_AUTOPLAY1 (#6672)
same as it is already the case in IDD_MIXED_CONTENT1, just 10 lines below it.
The controls name is not referenced from code. Will save a few bytes in the binary and shortens the rc-line.
2024-03-26 23:39:46 +01:00
Joachim Henze
ee0329e0e2 [SHELL32] *.rc: accelerator fixes, FIXMEs, drive-properties bg-BG and fr-FR (#6591)
* en-US.rc: create the TODO-list for the required menu-accel-changes

* some accelerator fixes, and add many FIXMEs for stuff that still needs to be improved

* beg the translators to shorten the "On Disk:" string in IDD_FILE_PROPERTIES and IDD_FOLDER_PROPERTIES

* strip superfluous spaces at some strings end and ':' within groupboxes, MS never does that

* bg-BG.rc & fr-FR.rc: Fix text-truncation, It got worse by 0.4.15-dev-5993-g a5bff2457a (#5239) A suggestion of Stasm, personally I dislike moving/resizing controls to dimenstions != en-US

* zh-CN.rc: China is the new land of capitalism, so CAPITALIZE the S. Grab another &W used in en-US/zh-TW

* he-IL.rc: strip a useless comment which just does repeat the string 1:1

* zh-TW: This taiwanese question-mark here is wrong, because the question spans over multiple controls, and the last one already ends with such a question mark.

* pt-PT.rc: Name the attributes-column 'Atributos', as that is the same name that is used in the file-properties-dlg

* sk-SK.rc: strip a comment that does not exist in any other lang

* Fix some lines which had 2 accelerators each, e.g. de-DE.
 IDD_FOLDER_OPTIONS_GENERAL has 100% correct german accelerators now (checked against german XPSP3).

* es-ES.rc: remove a stone-age-workaround, and use the height from en-US again here. The text fits the single line fine now.

* no-NO.rc: Fix a regression of 0.4.9-dev-794-g bf88116252 which added the 70 to the 3 PUSHBUTTONS for all languages, but for no-NO.rc the third button was forgotten

* pt-PT.rc: Fix 2 wrong accelerators. They have been added by a pt-PT.rc translator, but Windows doesn't have them. Windows uses ENTER and ESCAPE just here. And other translators are aware of that. The thing that actually SHOULD have an accelerator in that dialog is the LTEXT "Abrir", but ironically that one was forgotten / intentionally removed by the pt-PT.rc translator upon translation. A pity!

* pt-PT.rc: pt-PT.rc was crippled regarding accelerators, mostly during 0.4.14-dev'ing. Wisdom of the elders was trampled down here.

* pt-PT.rc: fix unintended "::"

* tr-TR.rc: During 0.4.15-dev'ing a lot of accelerators and capitalization were changed in this file, and during that the IDS_* accelerators at the bottom in that file in the
/* context menus */
section were changed, but the reminder-menu-layouts IDM_* and FCIDM_SHVIEW_* were forgotten to be kept in sync.
That is such a common pitfall. Happened to all of us more than one time already.
Sync the capitalization for that file at least. While knowing that there is still a lot of async left for other files.

* tr-TR.rc: Point with 2 FIXMEs to some accelerator-issues that only somebody with a real turkish Windows will be able to fix properly. Actually most likely at least 6 lines in this file are involved into that collision. Try to mention them within the comment at least.
IDM_COPY
IDM_CREATELINK
IDM_DELETE
and
IDS_COPY
IDS_CREATELINK
IDS_DELETE
This bug does only affect master, and no older releases in this form.

* en-US.rc: And finally add a big fat TODO comment for my future self, regarding dlg redesign where attrubutes will need to be laid out vertically in IDD_FILE_PROPERTIES and IDD_FOLDER_PROPERTIES
2024-03-26 17:07:33 +01:00
Maj Soklič
f92972efca [NOTEPAD] Update Slovenian (sl-SI) translation (#6599)
Reviewed-by: Rok Mandeljc <rok.mandeljc@gmail.com>
Reviewed-by: Jaka Kranjc <smgl@lynxlynx.info>
2024-03-25 20:02:15 +03:00
Katayama Hirofumi MZ
6ac153632f [SHELL32] IQueryAssociations: Fix path and length (#6656)
Implementing correct FindExecutable...
JIRA issue: CORE-19493
- If there were filename extension, then skip to the extension
  by using PathFindExtensionW.
- Use "open" verb if there is no default action if possible.
- Set outlen at CQueryAssociations::ReturnString.
2024-03-25 07:35:15 +09:00
Whindmar Saksit
a83e40f6d1 [SHELL32] Fix FS folder assoc array class order (#6047)
Fixes the reg class key order for FS items. The existing code was close,
but for some reason used `//` as the path separator for SystemFileAssociations!

- Fixed SystemFileAssociations.

- Swapped the order of `*` and `AllFilesystemObjects`. This is the documented
  order and can also be observed in Process Monitor.
  https://learn.microsoft.com/en-us/windows/win32/shell/fa-associationarray#about-association-arrays

- Removed `(..., L"%s//%s", extension, wszClass)`, this does not seem to be
  a valid thing (`.TestAAExtWeird` in my tests).

- Adds the `Unknown` class when appropriate. Not adding the `openas` verb
  to `Unknown` rgs registration now to mimic Windows, because ROS
  `CDefaultContextMenu` lacks verb de-duplication and the menu would end up
  with two "Open With" entries. This just uses `(cidl == 1)` to simulate
  Windows, while Windows on NT6 uses `MultiSelectModel=Single`, a NT6 feature
  not implemented in ROS.

- The class order for folders was wrong and is still "wrong" in this PR,
  but I chose to use the Windows menu display order until the exact mechanics
  required in `CDefaultContextMenu` can be understood.

- Extracts the extension from ANSI PIDLs.
2024-03-24 21:37:59 +01:00
Whindmar Saksit
f6cf6954eb [SHLEXTDBG] Added IQueryAssociations, SHGetFileInfo and ShellExecute actions (#6030)
Added multiple new actions, most of them will use the system default implementation but can be forced to use a specific CLSID or IShellFolder implementation.

-  /shgfi (SHGetFileInfo)
-  /assocq (IQueryAssociations)
-  /shellexec (ShellExecuteEx on pidl)
-  /dumpmenu (Dumps the HMENU of a IContextMenu with its menu ids and verbs)

Added /explorerinstance as a new wait mode and made it the default. All the other wait modes are hacks that just works around bugs in ROS.
2024-03-24 21:27:04 +01:00
George Bișoc
7dd8a30cf9 [NTOS:CM] Remove orphaned KCBs of keys during normal hive unload
A hive whose KCBs have a reference count of 0, meaning nobody is using these keys anymore, will not get removed from the cache table.
As a result during a normal hive unloading operation you will get orphaned KCBs which results in an unload failure.

This is wrong, because this is what a normal hive unloading is supposed to do. What it cannot do of course is that it cannot
scramble the references of opened keys by the users who use the Registry, as it is the job of force unloading mechanism to do that.

Also remove a misleading debug print. Force unloading works as intended by scrambling the references of keys and marking the KCB for deletion,
which is what how a force unload works. Namely Windows does exactly that.

CORE-10705
2024-03-24 19:03:47 +01:00
George Bișoc
f1d2a44859 [NTOS:CM] Lock the cached KCB before removing it from cache entries
- Annotate the CmpEnumerateOpenSubKeys function with SAL2
- When removing an orphaned cached KCB, ensure that it is locked before clearing it from cache table entries
2024-03-24 19:03:43 +01:00
Whindmar Saksit
2449ed5d85 [ADVAPI32] Handle HKCR in RegDeleteValueA+W and RegDeleteKeyValueW (#6033)
- HKCR delete handling; delete the value in HKCU if it exists there, otherwise delete it in HKLM.
- Changed RegDeleteKeyValueW to just use the regular Reg functions to get HKCR handling for free.
2024-03-24 18:28:26 +01:00
Whindmar Saksit
373816c729 [SHELL32] Support IDropTarget handler in IContextMenu static verbs (#5860)
This adds support for the `DropHandler` subkey in static verbs. `IDropTarget` is called when the verb is invoked. The advantage of this is that no library needs to be loaded until the verb is actually invoked unlike `IContextMenu` shell extensions that have to be loaded during menu creation.

This method is preferred for verb implementations that must work on Windows XP, see
https://learn.microsoft.com/en-us/previous-versions/windows/desktop/legacy/dd940354%28v%3Dvs.85%29?redirectedfrom=MSDN#description
2024-03-24 18:23:07 +01:00
Julen Urizar Compains
54df31ccac [TRANSLATION] Update Spanish (es-ES) translation (#6449)
- [REACTOS] es-ES: Fixes and typos
- [USETUP] es-ES: Fixes and typos
- [HOTPLUG] es-ES: Fixes and typos
- [OPENGLCFG] Add Spanish (es-ES) translation
- [NETSHELL] es-ES: Fixes and typos
- [SHELL32] es-ES: Fixes and typos
- [SYSSETUP] es-ES: Fixes and typos

Reviewed-by: Ismael Ferreras Morezuelas <swyterzone@gmail.com>
2024-03-24 12:30:56 +03:00
Timo Kreuzer
752c64d152 [USBOHCI] Fix broken indentation 2024-03-23 23:08:01 +01:00
Timo Kreuzer
5869af7821 [USBUHCI] Fix broken indentation 2024-03-23 23:08:01 +01:00
Whindmar Saksit
1408de02ce [SHELL32] SHOpenFolderAndSelectItems should handle children correctly (#6151)
- Free pidl from ILCombine.
- ILGetNext will never return NULL on valid input, it is not the correct way to check.
2024-03-23 22:24:04 +01:00
Andrei Miloiu
f9c93888b7 [CALC] Update Romanian (ro-RO) translation (#6601) 2024-03-23 22:22:50 +01:00
Andrei Miloiu
8d36ad1de6 [SOLITAIRE] Update Romanian (ro-RO) translation (#6600) 2024-03-23 22:21:32 +01:00
Andrei Miloiu
8eb80987e4 [TIMEDATE] Update Romanian (ro-RO) translation (#6613) 2024-03-23 22:20:24 +01:00
Andrei Miloiu
50a15424c8 [SNDVOL32] Update Romanian (ro-RO) translation (#6612) 2024-03-23 22:18:51 +01:00
Andrei Miloiu
269907e44c [HOTPLUG] Add Romanian (ro-RO) translation (#6644) 2024-03-23 22:17:20 +01:00
Andrei Miloiu
54c816d1f3 [MSCONFIG] Update Romanian (ro-RO) translation (#6533) 2024-03-23 22:16:14 +01:00
Andrei Miloiu
d0ce13a0e1 [APPWIZ] Improve Romanian (ro-RO) translation (#6532) 2024-03-23 22:12:30 +01:00
Andrei Miloiu
9b1d21dfa0 [CLIPBRD] Update Romanian (ro-RO) translation (#6535) 2024-03-23 21:18:20 +01:00
Andrei Miloiu
5e31354ff6 [DEVMGR] Update Romanian (ro-RO) translation (#6529) 2024-03-23 21:17:24 +01:00
Andrei Miloiu
ef4a2497d7 [NOTEPAD] Update Romanian (ro-RO) translation (#6528) 2024-03-23 21:16:07 +01:00
Andrei Miloiu
d1207f6f47 [WININET] Update Romanian (ro-RO) translation (#6527) 2024-03-23 21:14:12 +01:00
Andrei Miloiu
f9d2f84d4b [EVENTVWR] Update Romanian (ro-RO) translation (#6518) 2024-03-23 21:12:52 +01:00
Andrei Miloiu
0c2cc368e2 [MSPAINT] Update Romanian (ro-RO) translation (#6511) 2024-03-23 21:12:23 +01:00
Andrei Miloiu
202114f3ae [DISKPART][MC] Update Romanian (ro-RO) translation for message table (#6509) 2024-03-23 21:09:42 +01:00
Andrei Miloiu
7d45bb2a21 [OPENGLCFG] Update Romanian (ro-RO) translation (#6507) 2024-03-23 21:07:32 +01:00
Andrei Miloiu
c9bab6be25 [NET][MC] Update Romanian (ro-RO) translation for message table (#6506) 2024-03-23 21:07:05 +01:00
Hermès Bélusca-Maïto
3b62a89d4d [BOOTVID] Don't NTAPI non-exported functions; remove useless @implemented (#6650) 2024-03-23 15:16:00 +01:00
Hermès Bélusca-Maïto
ff790a9111 [BOOTVID] Add file copyright information headers (#6650) 2024-03-23 15:15:41 +01:00
Serge Gautherie
a8c52fa165 [RSYM/x64] Sync UNW_FLAG_* values (#6653)
Follow-up to PR #6641 and commit d45876b81
2024-03-23 15:13:23 +01:00
Katayama Hirofumi MZ
17b0623cf8 [EXPLORER] Start menu: Fix Small Icons flag (#6651)
Follow-up to #6646.
Fix wrong flag use: #6646 (comment)
JIRA issue: CORE-19494
- Delete SmallStartMenu flag (wrong) from
  _TW_STUCKRECTS2.
- Rename _TW_STUCKRECTS2.SmallIcons as
  SmSmallIcons.
- Use SmSmallIcons flag.
2024-03-22 21:15:22 +09:00
Stanislav Motylkov
2ec785b1ee [SHELL32] Update Russian (ru-RU) translation
Addendum to ad748b0b3b. CORE-19494
2024-03-20 12:26:58 +03:00
Katayama Hirofumi MZ
de5c472033 [WIN32SS][USER32] Refactor USER32 callbacks (#6619)
Refactoring kernel-to-USER32 callback code.
Localize USER32 callback entry definitions.
JIRA issue: N/A
- Add header file win32ss/include/u32cb.h and use it to define the
  USER32 callback entries.
2024-03-20 09:45:04 +09:00
Katayama Hirofumi MZ
3be8934107 [SHLWAPI_APITEST] Add AssocQueryString testcase (#6648)
JIRA issue: CORE-19493
- Add AssocQueryString testcase.
- Test AssocQueryStringA and AssocQueryStringW
  functions.
2024-03-20 07:37:37 +09:00
Katayama Hirofumi MZ
436cfa94c9 [SHELL32_APITEST] Add RealShellExecuteEx testcase (#6647)
Follow-up to #5849.
JIRA issue: CORE-19278
- Add closewnd.cpp, closewnd.h, and
  RealShellExecuteEx.cpp files.
- In closewnd.cpp, close newly-opened windows.
- Add RealShellExecuteEx testcase.
2024-03-20 07:36:14 +09:00
Katayama Hirofumi MZ
ad748b0b3b [EXPLORER][SHELL32] Smaller Start Menu (#6646)
Improve customization of Start Menu.
JIRA issue: CORE-19494
- Add SmallStartMenu flag to TW_STRUCKRECTS2
  structure.
- Add IDS_ADVANCED_SMALL_START_MENU
  resource string.
- Update g_TaskbarSettings.sr.SmallStartMenu via
  a callback function.
- Check g_TaskbarSettings.sr.SmallStartMenu
  when Start Menu is updated.
2024-03-20 07:32:52 +09:00
Timo Kreuzer
2f03b146da [CRT] intrin_x86.h: Use movsl instead of movsd to fix a GCC 13 warning 2024-03-19 07:44:40 +01:00
Timo Kreuzer
d45876b810 [DBGHELP] Remove useless broken CMake defines 2024-03-19 07:43:58 +01:00
Timo Kreuzer
2185848fc8 [HDAUDBUS] Silence debug spam
- Demote a DPRINT1 to a DPRINT
- Define NDEBUG
2024-03-19 07:43:39 +01:00
Timo Kreuzer
7fff216bed [NTOS:EX] Fix a loop bug 2024-03-19 07:43:20 +01:00
Timo Kreuzer
01c05f33dc [RTL/x64] Fix a GCC compiler warning 2024-03-19 07:42:35 +01:00
Katayama Hirofumi MZ
e27f06b889 [SHLWAPI] SHLWAPI_DEF_ASSOCF: Add ASSOCF_INIT_NOREMAPCLSID (#6636)
Step up to correct shell32!FindExecutable.
JIRA issue: CORE-19493
2024-03-19 09:44:10 +09:00
Katayama Hirofumi MZ
10d9e9de05 [SHELL32][SDK] Implement RealShellExecute(,Ex)(A,W) (#5849)
Implementing missing features...
JIRA issue: CORE-19278
- Modify shell32.spec.
- Implement RealShellExecuteA, RealShellExecuteW, RealShellExecuteExA,
  and RealShellExecuteExW functions.
- Add the prototypes to <undocshell.h>.
- Modify SEE_MASK_... constants.
2024-03-19 08:58:07 +09:00
Katayama Hirofumi MZ
1ad90967d7 [SHELL32_APITEST] Enhance FindExecutable testcase (#6634)
I want to know the details of FindExecutable
behavior.
JIRA issue: CORE-19493
Enhance the tests of return values.
2024-03-18 07:36:17 +09:00
Katayama Hirofumi MZ
6af1813fda [MSPAINT] Support JPEG/PNG/GIF/TIFF wallpapers (#6632)
Improve usability.
JIRA issue: CORE-19485
- Enable the menu items to set the wallpapars.
- Save the current bitmap as file Wallpaper1.bmp
  in CSIDL_LOCAL_APPDATA folder.
- Support JPEG/PNG/GIF/TIFF files in
  RegistrySettings::SetWallpaper.
2024-03-18 07:32:47 +09:00
Katayama Hirofumi MZ
c5e6456377 [MSCTFIME] Use QISearch for QueryInterface (#6630)
Simplify code and reduce binary size.
JIRA issue: CORE-19360
- Use shlwapi!QISearch for QueryInterface
  implementation.
- Add delay link to shlwapi.
2024-03-17 12:44:03 +09:00
Katayama Hirofumi MZ
1af0dbe36e [MSUTB][SDK] Use QISearch for QueryInterface (#6631)
Simplify code and reduce binary size.
JIRA issue: CORE-19363
- Use shlwapi!QISearch for QueryInterface
  implementation.
- Add delay link to shlwapi.
- Define QITABENT macro in <shlwapi.h>.
2024-03-17 11:55:19 +09:00
Katayama Hirofumi MZ
1fbf09f531 [RAPPS][SHLWAPI][SDK] Un-escape URL filename (#6626)
Choosing the better filename.
JIRA issue: CORE-19490
- Add UrlUnescapeAndMakeFileNameValid helper function.
- Use UrlUnescapeW and PathIsValidCharW.
- Add PATH_CHAR_CLASS_... flags for PathIsValidCharA/W.
2024-03-17 08:15:08 +09:00
Katayama Hirofumi MZ
dc4992ce4a [TOOLS] gen_baseaddress.py: Add '.ime' to ALL_EXTENSIONS (#6628)
We have dll/ime/msctfime for the DLL
file msctfime.ime.
JIRA issue: N/A
Add '.ime' to ALL_EXTENSIONS.
2024-03-16 19:37:26 +09:00
Katayama Hirofumi MZ
73d0d24d67 [CMAKE] Update sdk/cmake/baseaddress(,_msvc).cmake (#6627)
Follow-up to #6624 (fd96666). ReactOS got rekt in that PR
because kernel32.dll got so larger.
Fix base addresses of DLLs to boot successfully. Sorry.

(dll/ntdll/ldr/ldrutils.c:1423) Illegal DLL relocation!
C:\ReactOS\System32\ntdll.dll overlaps kernel32.dll
*** Fatal System Error: 0xc0000269

Proposed changes
After latest build:
python gen_baseaddress.py C:\Users\katahiromz\reactos-1\output-VS-i386
python gen_baseaddress.py C:\Users\katahiromz\reactos-1\output-MinGW-i386
2024-03-16 13:46:10 +09:00
Katayama Hirofumi MZ
fd9666630e [SDK][MC] errcodes.mc: Add Japanese (ja-JP) translation (#6624)
Localize the error messages.
JIRA issue: CORE-18706
Modify errcodes.mc for Japanese localization.
2024-03-16 00:11:53 +09:00
Katayama Hirofumi MZ
4854a1d7b6 [SHELL32_APITEST] ShellExecuteEx: Fix command line checker (#6618)
Follow-up to #6617.
JIRA issue: CORE-19482
Add traces for error checking.
2024-03-15 23:46:14 +09:00
Katayama Hirofumi MZ
cbad6cef24 [SHLWAPI] Implement SHSetDefaultDialogFont (#6620)
Implementing missing features...
JIRA issue: CORE-19278
- Implement SHSetDefaultDialogFont function.
- Add SHSetDefaultDialogFont prototype to
  <shlwapi_undoc.h>.
2024-03-15 21:25:53 +09:00
Oleg Dubinskiy
c6b8638815 [SHELL32] Add transparent icon resource (#6621) CORE-19471
Add transparent 16x16 icon (just small picec of transparent background) as resource and use it for 50, 51, 52, 53 resource IDs.
Define it as IDI_SHELL_NONE_XX for all four IDs appropriately (since the icon displays nothing).
These resources are not used by anything yet, but they are confirmed to exist as resources with 50, 51, 52, 53 IDs in shell32.dll from Windows XP/Server 2003.
This allows to correct the ordering of all other resources those come starting from index 54, and hence it fixes the following icons displayed incorrectly after restoring to default system icon set via Stardock IconPackager 5.1:
- Control Panel folder icon;
- Folder Options item icon in Control Panel;
- My Music special folder in My Documents;
- several File extensions icons (.ini, .txt etc).
The icons are fixed as in the preview of IconPackager app, same in ReactOS itself.
Now only Web Browser item icon on the Desktop remains invalid. All other icons are restored correctly.
CORE-19471
2024-03-14 20:58:12 +01:00
Katayama Hirofumi MZ
2f6b17593f [BROWSEUI] Delete WS_BORDER and owner-drawing from IDC_SEARCH_COMBOBOX (#6610)
Related to #6609.
Delete WM_BORDER and CBS_OWNERDRAWFIXED
styles from IDC_SEARCH_COMBOBOX.
JIRA issue: N/A
2024-03-13 20:04:39 +09:00
Katayama Hirofumi MZ
ab4c0d6afd [SHELL32_APITEST] Make ShellExecuteEx testcase stable (#6617)
Making the tests trustworthy.
JIRA issue: ROSTESTS-389
- Enable command line checking.
- Rewrite the tests for better tests.
- Remove dependency with shell32_apitest_sub.
- Close the newly opened windows by Alt+F4 at ending.
2024-03-13 17:09:20 +09:00
Doug Lyons
f132020d8b [NTUSER] Fix sticky mouse buttons (#6426)
Fix Mouse Buttons Sticking Down causing unexpected window dragging.
This is a patch supplied by @I_Kill_Bugs and seems to work well as tested by @julenuri.

JIRA issue: CORE-11775 'GIMP 2.6.12: Sticky issue when dragging with the mouse'
JIRA issue: CORE-14998 'Google Chrome 40.0.2214.115, when moving window position by dragging at the titlebar, the drag-end is not detected, the window may stick with the mouse pointer'
Improves JIRA issue: CORE-18511

Proposed changes
Add extra code into nonclient.c procedure DefWndDoSizeMove to drop tracking.
If we get a mouse move with the mouse left button down, then break out of testing.
2024-03-13 07:16:02 +01:00
Hermès Bélusca-Maïto
9ae73010c2 [FREELDR] Factor duplicated code into a GetOSLoadingMethod() helper
This removes duplicated code present in both LoadOperatingSystem()
and EditOperatingSystemEntry().

+ Add SAL annotations to the related functions.
2024-03-12 17:15:02 +01:00
Katayama Hirofumi MZ
458ca7766f [COMDLG32] Improve Japanese (ja-JP) translation, Part 2
Follow-up to 78f6179. CORE-18706
2024-03-12 21:12:43 +09:00
Piotr Hetnarowicz
52d0494242 [SHELL32] Update Polish (pl-PL) translation (#6597)
Addendum to 71285dff48 and 0241b5c4e9. CORE-16956
2024-03-12 15:02:29 +03:00
Stanislav Motylkov
b4c77d377c [SHELL32] Update Russian (ru-RU) translation
Addendum to 71285dff48 and 0241b5c4e9. CORE-16956
2024-03-12 14:56:53 +03:00
Katayama Hirofumi MZ
78f6179051 [COMDLG32] Improve Japanese (ja-JP) translation
CORE-18706
2024-03-12 20:55:47 +09:00
Katayama Hirofumi MZ
9c8924c173 [BROWSEUI] Search: Add WS_BORDER to IDC_SEARCH_COMBOBOX (#6609)
Fix a minor UI problem. IDC_SEARCH_COMBOBOX was border-less.
It was wrong.
JIRA issue: N/A
- Add WS_BORDER window style to IDC_SEARCH_COMBOBOX
  combo box in IDD_SEARCH_DLG dialog resource.
2024-03-12 20:06:24 +09:00
Katayama Hirofumi MZ
bbc455f77c [COMCTL32] TreeView: Fix selection display on checking checkbox (#6608)
Fix checkboxed treeview selection display.
JIRA issue: CORE-19480
- Make the first argument of TREEVIEW_ToggleItemState non-const.
- Select the item by calling TREEVIEW_SelectItem in TREEVIEW_ToggleItemState.
2024-03-12 18:49:52 +09:00
Doug Lyons
afd39cbc06 [USER32] Show Debug Log Message when unhandled PNG found in ICO file. (#5566)
Detect the PNG data in ICO files and print an appropriate message to the debug log.
JIRA issue: CORE-19107
2024-03-12 16:45:22 +09:00
Katayama Hirofumi MZ
88e1675ace [SHELL32] CGuidItemContextMenu: Fix pwszCLSID leak (#6607)
Fix memory leak.
JIRA issue: CORE-19478
- Use CoTaskMemFree for pwszCLSID to avoid memory leak
  in CGuidItemContextMenu_CreateInstance function.
2024-03-12 16:10:59 +09:00
Katayama Hirofumi MZ
5aaead3fdb [SHELL32] Start Menu: Enhance context menu (#6606)
Improve Start Menu usability.
JIRA issue: CORE-19477
- Add CSIDLFromID helper function.
- Return a context menu interface at CShellMenuCallback::OnGetContextMenu.
FIXME: CSIDL_CONTROLS, CSIDL_NETWORK, and CSIDL_PRINTERS context menu
wrongly open My Computer.
2024-03-12 15:58:22 +09:00
Katayama Hirofumi MZ
7b304b5b86 [MSUTB] Implement CLangBarItemList (#6605)
Supporting the Language bar...
JIRA issue: CORE-19363
- Define LANGBARITEMSTATE structure.
- Implement CLangBarItemList class.
2024-03-12 11:40:02 +09:00
Katayama Hirofumi MZ
57592b7e22 [SHELL32] Start Menu Customize: Fix bMustHideAdminTools (#6604)
Follow-up to #6603. Fix a bug in Admin Tools display.
JIRA issue: CORE-16956
Fix the value of bMustHideAdminTools in CMenuSFToolbar::FillToolbar.
2024-03-12 08:26:07 +09:00
Katayama Hirofumi MZ
7f8c502901 [EXPLORER] Start Menu Customize: Use TreeView_GetRoot (#6603)
Follow-up to #6596. Enable the Favorite menu setting.
JIRA issue: CORE-16956
- Use TreeView_GetRoot instead of TreeView_GetFirstVisible in
  CustomizeClassic_OnOK function.
2024-03-12 08:17:05 +09:00
Hermès Bélusca-Maïto
bbce6c3fdf [FREELDR] Deduplicate common message-box creation code.
Also, make the (T)uiSave/RestoreScreen() helpers manage themselves the
temporary memory buffer used to store the temporary screen snapshot.
2024-03-11 22:37:39 +01:00
Hermès Bélusca-Maïto
64155019df [FREELDR] Minor formatting for MsgBox functions + add SAL annotations 2024-03-11 22:37:38 +01:00
Hermès Bélusca-Maïto
dad056e06a [FREELDR] Move the arch-specific intrin_i.h inclusions to where they are actually needed (NTLDR) 2024-03-11 22:37:37 +01:00
Hermès Bélusca-Maïto
50e5f76212 [FREELDR] FrLdrHeapCreate: Show the memory type in the ERR(). 2024-03-11 22:37:36 +01:00
Hermès Bélusca-Maïto
9a707af2e3 [FREELDR] Initialize CandidatePageCount to zero, needed if the while-loop is not run.
Granted, if the while-loop is not run, this means there is no memory
available at all on the computer where FreeLdr is running, which is
quite unexpected. But do the initialization anyways, in order to avoid
more obscure bugs down the line.

On the other hand, PageLookupTableMemAddress doesn't need to be
pre-initialized, since it gets initialized unconditionally afterwards.
2024-03-11 22:37:35 +01:00
Hermès Bélusca-Maïto
61c4b5f615 [FREELDR] pcat.cmake: minor cleanup 2024-03-11 22:37:34 +01:00
Hermès Bélusca-Maïto
b790cfcef1 [FREELDR] Pre-initialize the INI section list, improve loops over sections and items.
Avoids dereferencing list entries to sections/items when these lists are empty.

IniParseFile(): Emit an error to the debug log when a candidate setting
is outside a section and skip it, instead of popping up an error on the UI.
2024-03-11 22:37:33 +01:00
Hermès Bélusca-Maïto
c8c32db8c5 [FREELDR] ueficon.c: Add missing support for HOME and END keys.
And reserve INSERT, PAGE_UP and PAGE_DOWN for future handling.
2024-03-11 22:37:33 +01:00
Hermès Bélusca-Maïto
f4ff0aba2f [FREELDR] Minor code cleanup in arch/uefi files 2024-03-11 22:37:32 +01:00
Hermès Bélusca-Maïto
1e409e6902 [FREELDR] i386/hwdisk.c: Use FIRST_BIOS_DISK and FIRST_PARTITION macros like what's done in UEFI code. 2024-03-11 22:37:30 +01:00
Serge Gautherie
6185c66c61 [DESK] SetScreenSaver(): Remove remnant 'DeleteMode' variable (#6593)
Addendum to commit d21e3a1d2 (r58360).
2024-03-11 15:35:34 +01:00
Doug Lyons
c17a6542ac [NTUSER] Fix PeekMessageA for MsgFilterLow/High mouse clicks (#6427)
Fix MSO and Word Viewer not closing when "X" on title bar is clicked.
This is another @I_Kill_Bugs patch.

CORE-14436 , CORE-16985
2024-03-11 14:34:34 +01:00
Katayama Hirofumi MZ
acb01cf568 [EXPLORER][SHELL32] Show/hide 'Admin tools' menu (#6598)
Improve Start Menu customization.
JIRA issue: CORE-16956
- Add IsPidlPrograms helper function.
- Specify a PIDL for Programs menu.
- Check the "StartMenuAdminTools" registry value.
- Don't add "Admin Tools" menu item into
  CMenuSFToolbar::FillToolbar if necessary.
2024-03-11 21:58:30 +09:00
Katayama Hirofumi MZ
8bd071a51e [EXPLORER][SHELL32] Fix and improve Start Menu customization (#6596)
Correct the details of Start Menu customization.
JIRA issue: CORE-16956
- Hide the setting item if the item is restricted.
- Don't change restriction in Explorer.
- Fix Start Menu settings for restriction and registry.
- Fix and simplify code.
2024-03-11 20:18:07 +09:00
Katayama Hirofumi MZ
0241b5c4e9 [EXPLORER][SHELL32] Expand/unexpand Control Panel menu (#6595)
Follow-up to #6594. Improve Start Menu customization.
JIRA issue: CORE-16956
- Add IDS_ADVANCED_EXPAND_CONTROL_PANEL, IDS_ADVANCED_EXPAND_PRINTERS,
  and IDS_ADVANCED_EXPAND_NET_CONNECTIONS resource strings.
- Check the "CascadeControlPanel", "CascadeNetworkConnections", and "CascadePrinters"
  registry values.
- Modify Start Menu by using AddOrSetMenuItem and AddStartMenuItems helper
  functions in CShellMenuCallback::OnGetSubMenu.
2024-03-11 16:19:46 +09:00
Katayama Hirofumi MZ
71285dff48 [EXPLORER][SHELL32] Expand/unexpand My Documents menu (#6594)
Follow-up to #6592. Improve Start Menu
customization.
JIRA issue: CORE-16956
- Add IDS_ADVANCED_EXPAND_MY_DOCUMENTS
  and IDS_ADVANCED_EXPAND_MY_PICTURES
  resource strings.
- Check L"CascadeMyDocuments" and
  L"CascadeMyPictures" registry values.
- Add GetAdvancedValue helper function.
- Implement CreateRecentMenu function.
2024-03-11 13:18:58 +09:00
Katayama Hirofumi MZ
4e10ebed40 [BOOT] Don't create CSIDL_ADMINTOOLS folder in initial (#6551)
We shouldn't create an empty CSIDL_ADMINTOOLS folder at initial status.
JIRA issue: CORE-12328
- Modify boot/boot_images.cmake.
2024-03-11 11:24:26 +09:00
Katayama Hirofumi MZ
5daab33c59 [EXPLORER][SHELL32][SDK] Show/hide 'Run' menu item (#6592)
Improve Start Menu customization.
JIRA issue: CORE-16956
- Add SHSettingsChanged prototype to
  <undocshell.h>.
- Add SetRestriction helper function.
- Implement showing/hiding Run menu
  item of Start Menu.
2024-03-11 10:54:12 +09:00
Katayama Hirofumi MZ
ede65b88bc [SHELL32][SHLWAPI][SDK] Implement SHRestricted etc. (#6560)
shell32!SHRestricted is necessary to make shell working well.
JIRA issue: CORE-11515
- Add dll/win32/shell32/wine/PolicyData.h to define the shell policy data.
- Define POLICYDATA structure and SHELL_NO_POLICY constant
  in <shlwapi_undoc.h>.
- Fix shell32!SHRestricted, shell32!SHSettingsChanged,
  shlwapi!SHGetRestriction, and shlwapi!SHRestrictionLookup functions.
2024-03-11 08:29:04 +09:00
Serge Gautherie
3e3594e3aa [KILL] ExecuteKill(): Return '1' on failures
and add a related 'CloseHandle()' call.

Also, enforce PID 'unsigned' type.
2024-03-10 17:16:56 +01:00
Serge Gautherie
5a30c71e70 [KILL] main(): Return actual return value
and get rid of 'tail' variable, which had wrong type anyway.

Also, be strict about parameter number: only 1 PID is supported.
2024-03-10 17:16:56 +01:00
Serge Gautherie
56baf8e2e8 [FORMATTING][KILL] kill.c: reformat it 2024-03-10 17:16:56 +01:00
Hermès Bélusca-Maïto
352b7f6785 [SDK:NDK/XDK] Sync NtCurrentTeb() definitions between NDK and PSDK winnt.h (#6542)
The definitions in the NDK inline_ntcurrentteb.h and psfuncs.h files are
synced togther with those of winnt.h (in the winnt_old.h generator file).

See commits c1929445d (r49627) and 925c587c8 (r56318).

IMPORTANT NOTE: The ARM64 definition does not exist yet in our headers!
2024-03-10 17:10:50 +01:00
Hermès Bélusca-Maïto
cec7adb97f [SDK:NDK/XDK] Adjust the KeGetPcr() ARM definition (#6542)
Re-enable the KIPCR() macro and use it for KeGetPcr()
and KeGetCurrentProcessorNumber() definitions.
2024-03-10 17:09:36 +01:00
Hermès Bélusca-Maïto
bf9cac8a67 [SDK:NDK/XDK] Remove x86 KeGetPcr() definition from the DDK (#6526)
The official MS DDK/WDK does not expose KeGetPcr() for x86, so do
not expose it there as well. Use instead the private NDK definition.

If it were exposed in the DDK/WDK, it would have to be a
multiprocessor-compatible definition.

Note that the broken definition was working only in single-processor
mode, using the PCR static memory pointer value.
The official MS DDK/WDK exposes KeGetPcr() as an alias to such a
PCR value only for IA64, MIPS and PPC, which is of course not great.
2024-03-10 16:55:44 +01:00
Katayama Hirofumi MZ
e6c0081c28 [IMM32_APITEST] Add KLID testcase (#6590)
Confirming keyboard layout
implementation by checking
HKL, KLID, and registry.
JIRA issue: CORE-19268
- Add KLID testcase.
- Check HKLs, KLIDs (Keyboard
  Layout IDs), and related
 registry, with using
  user32!GetKeyboardLayoutList
  function.
2024-03-10 22:36:40 +09:00
Katayama Hirofumi MZ
0c65ceca3c [MSCTF] Implement GetHKLSubstitute (#6589)
Implementing the back-end of
the Language bar...
JIRA issue: CORE-19361
- Rename GetLocaleInfoString
  as GetHKLName.
- Implement GetHKLSubstitute
  helper function.
- Fix GetHKLDesctription function.
2024-03-10 15:37:42 +09:00
Katayama Hirofumi MZ
fcbcc5b30c [KBSWITCH][INPUT][SDK] Use <imm32_undoc.h>'s IS_IME_HKL (#6588)
Unify the private IMM32 macro
definitions. Refactoring...
JIRA issue: CORE-19361
- Define IS_SPECIAL_HKL macro
  in <imm32_undoc.h>.
- Use IS_IME_HKL and
  IS_SPECIAL_HKL macros of
  <imm32_undoc.h>,
  in kbswitch and input modules.
2024-03-10 12:15:56 +09:00
Katayama Hirofumi MZ
e25d7d724d [MSCTF][SDK] Implement multi-language handling (#6587)
Implementing the back-end of
the Language bar...
JIRA issue: CORE-19361
- Add mlng.cpp and mlng.h.
- Modify msctf.spec.
- Implement MLNGINFO
  structure and CStaticIconList
  class.
- Implement TF_InitMlngInfo,
  TF_MlngInfoCount,
  TF_InatExtractIcon,
  TF_GetMlngIconIndex, and
  TF_GetMlngHKL functions.
2024-03-10 11:35:05 +09:00
Katayama Hirofumi MZ
efa86fff9f [MSCTFIME] Implement CicBridge::Notify (#6586)
Supporting TIPs...
JIRA issue: CORE-19360
- Implement CicBridge::Notify
  method.
- Implement CicBridge::
  SetCompositionString method.
- Add some CicInputContext
  methods (stub).
2024-03-09 12:57:50 +09:00
Katayama Hirofumi MZ
1ee014525c [MSCTFIME] Implement CicBridge::EscapeKorean (#6585)
Supporting TIPs...
JIRA issue: CORE-19360
- Add CicBridge::EscHanjaMode.
- Add code to CicBridge::EscapeKorean.
2024-03-09 11:59:37 +09:00
Katayama Hirofumi MZ
299abf7c87 [MSCTFIME][SDK] Add CInputContextOwner (stub) (#6584)
Supporting TIPs...
JIRA issue: CORE-19360
- Add ITfContextOwner
  interface to "msctf.idl".
- Stub-implement
  CInputContextOwner class.
2024-03-08 20:43:32 +09:00
Katayama Hirofumi MZ
b383b70089 [SHELL32_APITEST] Improve ShellHook testcase (#6582)
Make shell32:ShellHook testcase stable and trustworthy.
JIRA issue: ROSTESTS-389
- Use real shell hook.
- Delete HSHELL_RUDEAPPACTIVATED tests.
- Add HSHELL_WINDOWDESTROYED tests.
2024-03-08 18:17:09 +09:00
Katayama Hirofumi MZ
0709dff84c [SHELL32_APITEST] Improve FindExecutable testcase (#6583)
Make shell32:FindExecutable testcase stable and trustworthy.
JIRA issue: ROSTESTS-389
- Reduce dependency with sub-program (instead use copy of
  notepad.exe).
- Simplify.
2024-03-08 17:21:57 +09:00
Hermès Bélusca-Maïto
e1d334794a [FREELDR][ROSSYM(_NEW)] Remove last vestigial references to "NTOSAPI".
This was a MinGW-specific, non-MS-DDK/WDK-compatible define, that was
used to mark NTOS kernel/hal exports, instead of NTSYSAPI etc.

We have since fixed that, and changed the way Freeldr (and rossym)
manages these, see commits:
186c8b72d (r16028), 51f0dfd30 (r17651) and 526efd2ee (r24359)
2024-03-07 13:35:08 +01:00
Timo Kreuzer
def2fe5dc3 [HALAPIC] Rename a field for consistency 2024-03-06 19:04:41 +01:00
Timo Kreuzer
c5f93c50dd [CMLIB] Quick-fix a pool buffer overrun
A more complete fix is in PR #6064, but this needs to be fixed now.
2024-03-06 19:04:20 +01:00
Stanislav Motylkov
a69b0c9fd5 [MAIN] Fix icon identifiers and their order
Additionally:
- Reuse printers and fonts folder icons from shell32,
  the same way as it was done in c0dbde0436.
  The printers folder icon was missing here though.
- Fix "look_key" => "lock_key" typos.

This fixes Administrative Tools and Fonts Folder icons in Control Panel
when being restored to defaults with Stardock IconPackager 5.1.

CORE-19471
2024-03-06 19:18:18 +03:00
Hermès Bélusca-Maïto
3a49e26f13 [KERNEL32][PSDK][NTVDM][CONSRV] Use now-documented ReadConsoleInputEx() flag names.
Addendum to commit b8b8819c7 (r60920)

ReadConsoleInputEx() and its flags used to be undocumented.
In the meantime they became documented on MSDN, see:
https://learn.microsoft.com/en-us/windows/console/readconsoleinputex

We can therefore adopt these now-documented flag names.
2024-03-06 12:28:27 +01:00
Oleg Dubinskiy
c0dbde0436 [MYDOCS] Add missing icons expected by 3rd party applications (#6576)
Add "My Documents" and "My Pictures" icons, with 100 and 101 identifiers
accordingly. They are duplicating the icons from shell32.

This fixes My Documents desktop icon becoming blank when reverting back
to the system default icons after applying 3rd party icon set in Stardock
IconPackager 5.1, and also fixes icons of some items in the application
preview dialog.

It's confirmed that mydocs.dll on Windows XP SP3 and Server 2003 SP2
includes these two icon resources with the said identifiers.
The icons there are being an exact copy from shell32 as well.

CORE-19471 CORE-14758
2024-03-06 13:56:26 +03:00
Katayama Hirofumi MZ
361bf39872 [BROWSEUI] Fix CExplorerBand Right-Dragging menu (#6579)
Display correct menu on right-dragging
an item in Folder explorer bar to Desktop.
JIRA issue: CORE-19474
In CExplorerBand::OnTreeItemDragging
method:
- Use GetAttributesOf to get the
  attributes of a folder item.
- Use correct dwEffect value for
  DoDragDrop call.
2024-03-06 08:11:32 +09:00
Katayama Hirofumi MZ
1cc721e6d5 [NTDLL][NTDLL_APITEST] Add LdrLoadDll testcase (#6563)
JIRA issue: CORE-6585
- Add one comment into LdrpLoadDll function.
- Add LdrLoadDll testcase.
2024-03-06 07:58:07 +09:00
Katayama Hirofumi MZ
0d43ce7879 [USER32_APITEST][SDK] Add GW_ENABLEDPOPUP testcase (#6564)
JIRA issue: CORE-6920
- Add GW_ENABLEDPOPUP constant to
  <winuser.h>.
- Add GW_ENABLEDPOPUP testcase.
2024-03-06 07:52:30 +09:00
Vitaly Orekhov
c30b284373 [ATL] Implement CSimpleStringT::Preallocate (#6574)
Used in `ATL::CStringW` and `ATL::CStringA`, for example:

```
ATL::CStringW cswItemText = "";
cswItemText.Preallocate(64);

SendDlgItemMessageW(pdis->CtlID, LB_GETTEXT, pdis->itemID, reinterpret_cast<LPARAM>(cswItemText.GetBuffer()));
cswItemText.ReleaseBuffer();
```

This public function is used to allocate memory for the string via private PrepareWrite, but it's missing somehow. Now it shouldn't be.
2024-03-05 11:42:27 +03:00
Andrei Miloiu
4dc4ec2fe4 [MSHTML] Update Romanian (ro-RO) translation (#6519) 2024-03-05 04:46:29 +01:00
Katayama Hirofumi MZ
49b2b1dab1 [SHELL32] Use STDMETHOD macro and keyword override (#6570)
For simplicity and short typing.
JIRA issue: CORE-19469
- Replace "virtual HRESULT STDMETHODCALLTYPE
  m" with "STDMETHOD(m)" (m is a method name).
- Replace "virtual t STDMETHODCALLTYPE m" with
  "STDMETHOD_(t, m)" (t is a type. m is a method
  name).
- Use "override" keyword as possible.
- CDefView should inherit IShellView3 due to
  override CreateViewWindow3 method.
- Fix CDefView::CreateViewWindow3 (parameter
  prcView is const RECT *, not LPRECT).
2024-03-05 08:43:39 +09:00
Katayama Hirofumi MZ
bb297bc351 [BROWSEUI] Use STDMETHOD macro and keyword override (#6569)
For simplicity and short typing.
JIRA issue: CORE-19469
- Replace "virtual HRESULT 
  STDMETHODCALLTYPE m"
  with "STDMETHOD(m)"
  (m is a method name).
- Replace "virtual t
  STDMETHODCALLTYPE m"
  with "STDMETHOD_(t, m)"
 (t is a type. m is a method name).
- Use "override" keyword as possible.
2024-03-05 00:53:11 +09:00
Katayama Hirofumi MZ
de8e1553ec [NTOBJSHEX] Use STDMETHOD macro and keyword override (#6566)
For simplicity and short typing.
JIRA issue: CORE-19469
- Replace "virtual HRESULT 
  STDMETHODCALLTYPE m" with
  "STDMETHOD(m)" (m is a
  method name).
- Replace "virtual t
  STDMETHODCALLTYPE m"
  with "STDMETHOD_(t, m)"
  (t is a type. m is a method name).
- Use "override" keyword as possible.
2024-03-05 00:34:21 +09:00
Oleg Dubinskiy
eb96d377d1 [SHELL32] Allow custom shortcut overlay icon (#6419)
Use correct icon index in SIC_OverlayShortcutImage() to properly load
shortcut overlay icon from registry instead of always using default icon.
This allows to use custom shortcut icon set by user, in case it was
specified there.

As FIXME comment stated, the icon indexes were not implemented in the far
past, so this workaround was badly required. But now they are implemented,
so no need to always use default resource from shell32, enable the correct
code instead.

Also adapt this to CShellLink::CreateShortcutIcon() when the shortcut icon
is being changed in its properties dialog, as well as in CNewMenu class
when displaying menu items for creating a new folder or a shortcut.

Addendum to f9a5344254. CORE-14758
2024-03-04 16:30:43 +03:00
Timo Kreuzer
bbbcd8ed68 [NTOS:EX] Remove an ASSERT in ExpInsertPoolTracker 2024-03-03 07:19:35 +01:00
Katayama Hirofumi MZ
5627da4205 [RSHELL] Use STDMETHOD macro and keyword override (#6575)
For simplicity and short typing.
JIRA issue: CORE-19469
- Replace "virtual HRESULT
  STDMETHODCALLTYPE m" with
  "STDMETHOD(m)" (m is a method name).
- Replace "virtual t STDMETHODCALLTYPE
  m" with "STDMETHOD_(t, m)"
  (t is a type. m is a method name).
- Use "override" keyword as possible.
2024-03-03 10:14:05 +09:00
Katayama Hirofumi MZ
b2d56cf364 [NETSHELL] Use STDMETHOD macro and keyword override (#6568)
For simplicity and short typing.
JIRA issue: CORE-19469
- Replace "virtual HRESULT STDMETHODCALLTYPE m"
  with "STDMETHOD(m)" (m is a method name).
- Replace "virtual t STDMETHODCALLTYPE m" with
  "STDMETHOD_(t, m)" (t is a type. m is a method
  name).
- Use override keyword as possible.
2024-03-02 21:38:52 +09:00
Katayama Hirofumi MZ
24fb46c405 [ACPPAGE] Use STDMETHOD macro and keyword override (#6567)
For simplicity and short typing.
JIRA issue: CORE-19469
- Replace "virtual HRESULT STDMETHODCALLTYPE
  m" with "STDMETHOD(m)" (m is a method name).
- Replace "virtual t STDMETHODCALLTYPE m" with
  "STDMETHOD_(t, m)" (t is a type. m is a method
  name).
- Use "override" keyword as possible.
2024-03-02 21:37:05 +09:00
Timo Kreuzer
79aaee6aac [HALX86] Implement the clock IPI handler 2024-03-02 07:56:27 +01:00
Timo Kreuzer
d1c118b371 [HALX86] Move apicsmp.c to lib_hal_smp 2024-03-02 07:56:27 +01:00
Timo Kreuzer
2ce5d43a33 [NTOS/x64] Gracefully handle invalid Vector in KeConnectInterrupt
Fail instead of asserting. This is needed because a kmtest triggers it.
2024-03-02 07:30:06 +01:00
Katayama Hirofumi MZ
2320c37151 [CMD] Enable Ctrl+H (^H) as backspace (#6562)
Ctrl+H should pretend like BackSpace key
on Command Prompt.
JIRA issue: CORE-5702
- Add Ctrl+H action in ReadCommand function.
2024-03-01 22:51:57 +09:00
Katayama Hirofumi MZ
c07eb9fb1b [APPWIZ] Shortcut: Rename if there is a conflict (#6556)
Follow-up to #6550. Avoid same name
overwriting.
JIRA issue: CORE-5866
- Rename the filename if there was duplicate.
- Simplify CreateShortcut function.
- Rename IDC_SHORTCUT_LOCATION as
  IDC_LINK_LOCATION to resolve name conflict
  with shell32/shresdef.h.
2024-03-01 08:42:59 +09:00
Joachim Henze
0a587b9ccd [NETCFGX] Proper accelerators for en-US and de-DE (#6199)
proper accelerators for en-US (like english 2k3sp2)
proper accelerators for de-DE (like german XPSP3)
slightly improved accelerators for fr-FR
and mark existing accelerator collisions for all other languages with FIXME-comments.

Co-authored-by: Stanislav Motylkov <x86corez@gmail.com> for ukrainian header
Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org> for fr-FR
2024-02-29 22:17:27 +01:00
Piotr Hetnarowicz
d325c67223 [APPWIZ] Update Polish (pl-PL) translation (#6559) 2024-02-29 21:20:48 +03:00
Hermès Bélusca-Maïto
ea3e66d748 [SHELL32:WINE] Improve ROS-specific registry opening in SHRestricted() (#4275) 2024-02-29 13:29:10 +01:00
Hermès Bélusca-Maïto
9513d18f93 [SHELL32:WINE] Update the table of policy restrictions (#4275)
Our shell32's wine/shpolicy.c file, synced with Wine code (and which is
currently in master still up to date with Wine!), contains outdated or
incomplete definitions that date back from Windows 98/2000.

Update the restrictions with those from shell32 v6.0 of Windows Server 2003 SP2.

References:
https://www.geoffchappell.com/studies/windows/shell/shell32/api/util/restrictions.htm
https://docs.microsoft.com/en-us/windows/win32/api/shlobj_core/ne-shlobj_core-restrictions

"NoLogoff": http://systemmanager.ru/win2k_regestry.en/93519.htm
"StartMenuLogOff": http://systemmanager.ru/win2k_regestry.en/92884.htm
"GreyMSIAds": http://systemmanager.ru/win2k_regestry.en/93177.htm
2024-02-29 13:29:08 +01:00
Hermès Bélusca-Maïto
ea8ce25944 [SHELL32:WINE] Add Wine-version info to the Wine's shell32_main header. 2024-02-29 13:27:33 +01:00
Hermès Bélusca-Maïto
52dd07febd [SHELL32:WINE] Make the wine-imported files include shell32_main.h 2024-02-29 13:26:46 +01:00
Hermès Bélusca-Maïto
72b405549c [SHELL32] SHAddToRecentDocs(): Just use SHRestricted() to get the NoRecentDocsHistory policy...
... instead of redoing the manual work.
2024-02-29 12:54:10 +01:00
Hermès Bélusca-Maïto
fc1712e494 [SHELL32] Set a sane SHELL32 versioning, when compiled for NT 5.2 and NT 6+.
i.e. don't keep using version from Windows 2000...

Values taken from
https://www.geoffchappell.com/studies/windows/shell/shell32/history/index.htm
2024-02-29 12:38:50 +01:00
Katayama Hirofumi MZ
ac870f986d [SHLWAPI_APITEST] Add SHGetRestriction testcase (#6557)
I have a plan to implement
shell32!SHRestricted correctly.
JIRA issue: CORE-11515
In the testcase:
- Get procedure SHGetRestriction
  from shlwapi.dll.
- Call SHGetRestriction to test and
  check the results.
2024-02-29 20:28:10 +09:00
Katayama Hirofumi MZ
b944563c7b [SHELL32_APITEST] Add SHRestricted testcase (#6558)
I have a plan to implement
shell32!SHRestricted correctly.
JIRA issue: CORE-11515
- Get SHRestricted and
  SHSettingsChanged procedures
  from shell32.dll.
- Use them and check the results.
2024-02-29 20:26:01 +09:00
Katayama Hirofumi MZ
d0e29248e3 [SHELL32] Update Japanese (ja-JP) translation
Follow-up to #6544. CORE-18706
2024-02-29 09:23:46 +09:00
Joachim Henze
e341162dd1 [RASDLG] *.rc Trim unintended spaces (#6540)
- trim unintended spaces
- uk-UA.rc tweak the header (Ukraianian typo, strip FILE:)
2024-02-28 22:34:29 +01:00
Oleg Dubinskiy
f9a5344254 [SHELL32] Allow using custom desktop/folders/drives icons (#6421)
Implement proper reading the current user's icons from registry.

CORE-14758

- Load the icons specified by user in registry in the following keys:
  "HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CLSID\{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}\DefaultIcon"
  (virtual namespace folders)
  "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Icons"
  (filesystem folders and drives)
- Implement two functions HCU/HLM_GetIconW for reading the icons
  from mentioned HKCU and HKLM keys accordingly.
- Use HCR_RegGetIconW for falling back to default icons.
  This function always loads only default icons, even when
  the custom ones are specified by user.
- Refactor SIC_LoadOverlayIcon to use newly implemented HLM_GetIconW.

These changes apply to:
- virtual namespace folders and other desktop items (like My Computer,
  My Documents, Network Places, Recycle Bin, Web Browser (aka Internet
  Explorer), Control Panel and some of its items);
- normal filesystem directories;
- all types of drives (fixed disk drives, removable drives, CD-ROMs,
  RamDisks and network drives). Handle invalid drives, setting blank
  icon for them, since they cannot be recognized or mounted correctly.
  Also, load the autorun icons first to avoid overriding them by the
  icons defined in registry.

I've rechecked twice: excluding Start Menu icons, Desktop Workspace icon
and some FS folder icons that have their own desktop.ini configuration
files (we probably should write the custom icons we load to these configs,
as Windows does it, perhaps with WritePrivateProfileStringW), all other
icons can be changed now (only ones that can be changed on XP SP3 / 2003
SP2) via built-in system tools (like Desktop icons in desk.cpl) or any
3rd-party tools without modifying system resources.

Also all icons for the known file types can be changed,
same as before my changes.

Regarding Start Menu icons:
- changing them should be correctly implemented in explorer
  instead of shell32, as the former is responsible for the Start Menu
  and partially for the taskbar;
- in order to actually use all of them, we need to implement modern
  Start Menu first.

Useful reference: http://www.winfaq.de/faq_html/Content/tip0000/onlinefaq.php?h=tip0162.htm
2024-02-29 00:20:47 +03:00
Piotr Hetnarowicz
45321706dc [SHELL32] Update Polish (pl-PL) translation (#6553) 2024-02-28 21:26:15 +03:00
Stanislav Motylkov
29a5108a4d [MSPAINT] Update Russian (ru-RU) translation
Addendum to f53d7eeb4c. CORE-19466
2024-02-28 21:16:05 +03:00
Stanislav Motylkov
91caceaf02 [SHELL32] Update Russian (ru-RU) translation
Addendum to d1ac33a9bd. CORE-16956
2024-02-28 21:14:53 +03:00
Hermès Bélusca-Maïto
0d8a6a30cc [PSDK] Remove unused file; it doesn't also exist in official MS PSDK 2024-02-28 17:23:17 +01:00
Katayama Hirofumi MZ
e928b42758 [MSPAINT] Improve GetSelectionContents for free-shape selection (#6554)
Follow-up to #6552. There was
a bug that the cropped selection
image is not the shape of selection.
JIRA issue: CORE-19466
- Extend SelectionModel::
  DrawSelection for drawing
  selection flexibly.
- Improve SelectionModel::
  GetSelectionContents method.
2024-02-28 22:01:08 +09:00
Katayama Hirofumi MZ
f0e45f07e1 [MSPAINT] Update Japanese (ja-JP) translation
CORE-18706
2024-02-28 20:36:21 +09:00
Katayama Hirofumi MZ
f53d7eeb4c [MSPAINT] Implement 'Crop Selection' (#6552)
Improve usability.
JIRA issue: CORE-19466
- Add IDM_CROPSELECTION command in "Edit" menu.
- If no selection, then disable IDM_CROPSELECTION.
2024-02-28 19:27:37 +09:00
Katayama Hirofumi MZ
059fd8e551 [SHELL32] Fix CMenuBand's context menu (#6548)
JIRA issue: CORE-17453, CORE-12328
In CMenuBand::_TrackContextMenu method:
- Use 100 for idCmdFirst, instead of zero.
- Use uCommand - idCmdFirst for cmi.lpVerb.
Zero is an invalid command ID.
2024-02-28 16:54:15 +09:00
Katayama Hirofumi MZ
1d1472c78e [APPWIZ][SHELL32] Improve 'Create Shortcut' dialog (#6550)
Now we can open special folder shortcut, thanks to #6546.
Let's allow users to create various shortcut files.
JIRA issue: CORE-5866
- Remove BIF_RETURNONLYFSDIRS flag because
  the system can open special folder shortcuts now.
- Add LPITEMIDLIST pidlTarget to CREATE_LINK_CONTEXT
  structure.
- Use pidlTarget if the target is a special folder.
- Fix CShellLink::DoOpen for arguments.
2024-02-28 15:22:44 +09:00
Katayama Hirofumi MZ
776c3a3495 [SHELL32] SHBrowseForFolder: Fix pszDisplayName (#6549)
pszDisplayName is for display name, not for full path.
JIRA issue: CORE-5866
- If lpBrowseInfo->pszDisplayName is valid,
  use SHGetFileInfoW to get display name.
- Don't use SHGetPathFromIDListW to get
  display name. It's wrong.
2024-02-28 13:23:27 +09:00
Katayama Hirofumi MZ
d634ef54e4 [SHELL32] Opening Special Folder shortcut (#6546)
Fix opening special folder.
JIRA issue: CORE-19464
In CShellLink::DoOpen, if there is a PIDL, then use it and set SEE_MASK_IDLIST flag.
2024-02-28 12:17:04 +09:00
Katayama Hirofumi MZ
d1ac33a9bd [EXPLORER][SHELL32] Strengthen Start Menu Customize Part 1 (#6544)
Strengthen customization of Start menu.
JIRA issue: CORE-16956
- Modify IDD_CLASSICSTART_CUSTOMIZE dialog.
- Add some resource strings to shell32.dll.
- Add some helper functions.
- Disable Clear button if necessary.
- Add "Display Favorites" and "Display Log Off"
  items into IDC_CLASSICSTART_SETTINGS treeview
  control.
- Implement two items' action.
- Recreate the start menu if WM_SETTINGCHANGE
  message received.
2024-02-27 20:41:43 +09:00
Katayama Hirofumi MZ
281f7c4e38 [BROWSEUI] Implement 'Add to Favorites' (#6543)
Implement Explorer's "Add to Favorites" feature.
JIRA issue: CORE-16857
- Add CreateShortcut helper function.
- Add CShellBrowser::OnAddToFavorites.
2024-02-27 19:55:57 +09:00
Katayama Hirofumi MZ
8209aa528b [BROWSEUI] Enable Address bar access key (Alt+D) (#6534)
Retrial of #5052. Improve keyboard
interface usability.
JIRA issue: CORE-18823
- Add GetAddressBarAccessKey
  helper function to get the
  accelerator of Address bar from
  resource string
  IDS_ADDRESSBANDLABEL.
- Implement Alt+D (or something)
  accelerator in CAddressBand::
  TranslateAcceleratorIO method by
  handling WM_SYSKEYDOWN and
  WM_SYSCHAR messages.
2024-02-26 21:54:51 +09:00
Joachim Henze
a08b83a90b [SHELL32] Fix 2 compiler warnings for the rls-cfg 'unused variable' (#6539)
I noticed it on releases/0.4.10 with the RosBEWin2.1.6 GCC4.7.2 *rls* configuration:

C:/0410rls/reactos/dll/win32/shell32/dialogs/filetypes.cpp: In function 'BOOL FileTypesDlg_InsertToLV(HWND, LPCWSTR, INT, LPCWSTR)':
C:/0410rls/reactos/dll/win32/shell32/dialogs/filetypes.cpp:663:9: warning: variable 'iLargeImage' set but not used [-Wunused-but-set-variable]
C:/0410rls/reactos/dll/win32/shell32/dialogs/filetypes.cpp: In function 'BOOL EditTypeDlg_UpdateEntryIcon(HWND, PEDITTYPE_DIALOG, LPCWSTR, INT)':
C:/0410rls/reactos/dll/win32/shell32/dialogs/filetypes.cpp:1040:9: warning: unused variable 'iLargeImage' [-Wunused-variable]

But I do assume, that MSVC compilers would also complain about that in *rls* cfg.

Please notice that before 0.4.10-dev-202-g 698cbc6184 which did splitup and restructure the code
this function was placed within the file folder_options.cpp and was named
InsertFileType(HWND hDlgCtrl, WCHAR * szName, PINT iItem, WCHAR * szFile)
and not yet within file_types.cpp with the new name
FileTypesDlg_InsertToLV(HWND hListView, LPCWSTR szName, INT iItem, LPCWSTR szFile)
Back then it did not have the iLargeImage variable yet, and it also didn't warn upon rls-cfg-compilation.
Therefore 0.4.10-dev-202-g 698cbc6184 from (#582) is indeed the *guilty revision* (2018-06-06).
It was done in the very first commit of that PR 2fe0eab721
It's bad practice to move and refactor/extend code in functionality within the very same commit, as it makes reviewing the changes much harder.

That assert never fired for the last 6 years, therefore it would have been okay also to strip it together with the variable, but using DBG_UNREFERENCED_LOCAL_VARIABLE(iLargeImage); allows to keep the assert for master.
2024-02-26 13:42:13 +01:00
Hermès Bélusca-Maïto
ed7dc31103 [SETUP:REACTOS] Set the default language and keyboard layout at startup
Retrieve the current ambient language and keyboard layout, that has been
chosen in the "General language and keyboard layout selection" dialog
when starting the LiveCD.

A more robust solution will be developed later.
2024-02-26 12:45:43 +01:00
Katayama Hirofumi MZ
c0b4db14de [BOOTDATA][NTUSER] Prepare for CTF IME Part 1 (#6524)
Supporting TIPs...
JIRA issue: CORE-19360
- Add "IME File" registry value
  as "msctfime.ime" at
  HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\IMM.
- Modify UserIsCiceroEnabled
  function for preparation of
  CTF IME.
2024-02-24 01:53:16 +09:00
Katayama Hirofumi MZ
3768f0893d [WIN32SS] Fix const-ness of registry helper functions (#6525)
Improve code quality.
JIRA issue: CORE-19360
- Fix const-ness of the arguments
  of win32k registry helper functions.
- Compact UserIsIMMEnabled function.
2024-02-23 21:26:12 +09:00
Katayama Hirofumi MZ
febb589e00 [MSCTFIME] Finish msctfime.cpp (#6523)
Supporting TIPs...
JIRA issue: CORE-19360
- Add some CicBridge methods (stub).
- Implement ImeProcessKey,
  ImeToAsciiEx, ImeSetCompositionString,
  CtfImeEscapeEx, and CtfImeIsIME
  functions.
2024-02-23 19:58:21 +09:00
Katayama Hirofumi MZ
980ebf0694 [MSCTFIME] Implement CtfImeSetActiveContextAlways (#6522)
Supporting TIPs...
JIRA issue: CORE-19360
- Move code of functions.cpp
  into misc.cpp and delete functions.cpp.
- Add implementation to
  CicBridge::GetDocumentManager,
  CicBridge::CreateInputContext, and
  CicBridge::SetActiveContextAlways
  methods.
- Implement NotifyIME,
  CtfImeSetActiveContextAlways, and
  CtfImeCreateInputContext functions.
2024-02-23 17:43:13 +09:00
Katayama Hirofumi MZ
69b08be0e0 [MSCTFIME][CICERO] Half-implement CIMEUIWindowHandler (#6521)
Supporting TIPs...
JIRA issue: CORE-19360
- Add implementation to
  CIMEUIWindowHandler class.
2024-02-23 13:45:00 +09:00
Katayama Hirofumi MZ
353edbd3f4 [MSCTFIME] Add UIComposition Part 2 (#6520)
Supporting TIPs...
JIRA issue: CORE-19360
- Add implementation to
  UIComposition class.
2024-02-23 11:18:52 +09:00
Hermès Bélusca-Maïto
14d3b53cc6 [NTFS] Typo fix: "Steam" -> "Stream" 2024-02-22 22:43:40 +01:00
Hermès Bélusca-Maïto
59f8611321 [WINSRV] Delay-load psapi.dll
Note that it is used only in debug builds in order to display the list
of processes being terminated in the debug log.
2024-02-22 22:41:06 +01:00
Hermès Bélusca-Maïto
2c0af91ba1 [WINSRV] Use ARRAYSIZE() instead of hardcoding buffer size in GetProcessImageFileNameW call 2024-02-22 22:41:05 +01:00
Hermès Bélusca-Maïto
e5db85276e [PSAPI] Don't make the dll depend on MSVCRT
psapi.dll can also used by low-level DLLs, such as winsrv.dll,
therefore it is better to reduce its dependencies.
2024-02-22 22:41:04 +01:00
Hermès Bélusca-Maïto
047f1c3d55 [USETUP] Exchange SetupStartPage and LanguagePage 2024-02-22 22:41:03 +01:00
Katayama Hirofumi MZ
9262df661e [MSCTFIME] Implement CModeBias (#6515)
Supporting TIPs...
JIRA issue: CORE-19360
- Rename compartment.cpp as
  misc.cpp.
- Implement CModeBias class.
2024-02-22 18:43:08 +09:00
Katayama Hirofumi MZ
7d0b5482f6 [MSCTFIME] Implement CicBridge::OnSetOpenStatus (#6514)
Supporting TIPs...
JIRA issue: CORE-19360
- Add CicInputContext::EscbCompComplete
  method (stub).
- Implement CicBridge::OnSetOpenStatus
  method.
2024-02-22 17:28:40 +09:00
Katayama Hirofumi MZ
f53f1334ed [MSCTFIME][CICERO] Implement CFnDocFeed (#6513)
Supporting TIPs...
JIRA issue: CORE-19360
- Add missing CicInputContext methods.
- Implement CFnDocFeed class.
2024-02-22 15:46:05 +09:00
Serge Gautherie
0086d05007 [EXT2FS] Ext2Read(): Complete request on VCB_VOLUME_LOCKED case (#4770)
CORE-10645

Co-authored-by: Victor Martinez Calvo <vicmarcal@gmail.com>
2024-02-21 07:31:09 -08:00
Katayama Hirofumi MZ
a55345be29 [MSCTFIME][CICERO] Implement CDefCompFrameWindow (#6512)
Supporting TIPs...
JIRA issue: CORE-19360
- Add delay link to uxtheme.dll.
- Implement CDefCompFrameGripper,
  CCompFinalizeButton,
  CCompButtonFrameWindow, and
  CDefCompFrameWindow classes.
2024-02-21 10:36:32 +09:00
Hermès Bélusca-Maïto
b7ad4a2298 [SETUPLIB][USETUP] Some cleanup for partition code.
- Make the Create*Partition helpers take a size in bytes, not in sectors.

  This allows them to be easier to use by the caller, alleviating the
  need for making the size conversion into sectors. Instead it is done
  internally by the helpers.

- Introduce helper macros to easily retrieve the size of a partition
  entry or a disk in bytes, from their internal representation in number
  of sectors.

- The 'AutoCreate' variable being USETUP-specific, remove it from the
  PARTENTRY structure and use instead a flag set into the 'New' member.

- Rename IsDiskSizeValid to IsPartitionLargeEnough, to better describe
  what the function is for.
2024-02-20 15:52:37 +01:00
Katayama Hirofumi MZ
b2ec78673d [MSCTFIME] Restructuring (#6505)
Improve code flexibility. 3700+
lines of msctfime.cpp was too long.
JIRA issue: CORE-19360
- Split msctfime.cpp code to some
  source files and header files.
2024-02-20 21:11:08 +09:00
Jérôme Gardou
0610bcb3f9 [DBGHELP] Avoid call of wine_get_dos_file_name
CORE-19444
2024-02-20 08:56:53 +01:00
Jérôme Gardou
e706083d50 [LIBWINE] Return empty path when given a UNIX path
CORE-19444
2024-02-20 08:56:53 +01:00
Katayama Hirofumi MZ
6bc40d36f8 [CTFMON][MSCTFIME][MSCTF][MSUTB][CICERO] Fix TFUninitLib (#6504)
Supporting the Language bar...
JIRA issue: CORE-19363
- Delete TFInitLib and TFUninitLib
  calls from ctfmon.exe.
- Delete TFUninitLib from Cicero
  library.
- Implement InitDisplayAttrbuteLib
  in msctfime.ime.
- Improve CIC_LIBTHREAD structure.
2024-02-20 14:36:24 +09:00
Joachim Henze
6f91b6c0fe [SHELL32] Tweak formatting and logging
Some style-improvements I wanted to apply before a planned backport.
E.g. The biggest source-file CDefView.cpp in [SHELL32] can be shrinked considerably by stripping some outdated
comments from 10 and more years ago, when this class was still non-OOP and named ShellView.
Less excessive line-lengths also here and there.

In case it is not obvious when reviewing: In the beginning of CDevView.cpp in the declaration-part I just
reduced the indentation-level by 4 spaces for a big block.

Some shell classes were touched during 0.4.15-dev'ing for fixes like the 'unkown'-typo in
0.4.15-dev-6323-g 3854a5d8e9 for example
or missing \n were added to dbgprints like in
0.4.15-dev-4492-g 03422451b3
Touched again here, because I want to port those improvements back,
but don't intend to increase the size in older releases.

The commit looks big, but does consist solely of trivialities.
There is no functional change in this commit, aside the logging ofc.
2024-02-20 02:08:56 +01:00
Hermès Bélusca-Maïto
b02dd8eb22 [SETUPLIB] Make the settings' Process* functions take an actual value instead of a GENERIC_LIST
The reason is to avoid enforcing the usage of a specific list
container by the users of the setup library. This is a departure
of what I originally thought would be the best, in commits
92692eae3 (r74553), 8f2c4f7a6 (r75700)

This should actually make some parts of the GUI setup code simpler
(e.g. using the win32 comboboxes to store the list contents).
2024-02-18 16:30:46 +01:00
Katayama Hirofumi MZ
fc3eeb61f3 [SDK:LIB] Introduce Cicero static library (#6492)
Refactoring and reduce binary size.
JIRA issue: CORE-19268
- Add cicero static library in sdk/lib/cicero folder.
- Delete sdk/include/reactos/cicero folder.
- Adapt the dependencies to these changes.
- Make ctfmon, msutb, and msctf modules UNICODE.
2024-02-17 09:53:50 +09:00
Oleg Dubinskiy
21e139d1d1 [UXTHEME] Add Ukrainian (uk-UA) translation (#6502)
Addendum to d11582f0e. CORE-5991
2024-02-16 22:50:13 +03:00
Stanislav Motylkov
d8adb84641 [UXTHEME] Add Russian (ru-RU) translation
Addendum to d11582f0e. CORE-5991
2024-02-16 21:10:32 +03:00
Stanislav Motylkov
d11582f0e2 [UXTHEME] Localize string resources
- Adapt SetWindowResourceText() function from
  `msconfig_new/utils.c` LoadResourceStringEx() function.
- Drop `version.rc` in favor of `uxtheme.rc` since we have forked uxtheme.

Addendum to 118869f69. CORE-5991
2024-02-16 21:10:21 +03:00
Dmitry Borisov
e6cd9de3f1 [DC21X4] Recognize all ports emulated by VPC 2007 (#6501) 2024-02-16 16:56:07 +01:00
Adam Słaboń
20efea8fa4 [USBSTOR] Fix PdoHandleQueryInstanceId and increase serial number descriptor size to MAXIMUM_USB_STRING_LENGTH (#6413)
Serial number on some USB devices might exceed the number of 100 characters
(e.g. 120 characters on "SanDisk Ultra 3.2Gen1" pendrive) and cause buffer
overflow, resulting in usbstor.sys crash.

- Use pool allocation for instance ID generation.
  Fixes stack overflow on USB storage devices with large serial number.
- Print the LUN number as a hexadecimal, not as a character.
- Verify the serial number descriptor before using it.
- Increase the max descriptor size for serial number to
  MAXIMUM_USB_STRING_LENGTH. This fixes serial number string truncation.

Based on suggestions by disean and ThFabba.

CORE-17625
2024-02-16 18:48:33 +03:00
Katayama Hirofumi MZ
398201dca4 [NTUSER] Relax condition for IntImmProcessKey (#6500)
* [NTUSER] Loose condition for IntImmProcessKey

* key up

* improve

* improve 2

* improve 3
2024-02-16 21:31:13 +09:00
Katayama Hirofumi MZ
e0b67a2990 [MSVIDC32] Keep using CRAM_MAGIC for info structure validation (#6498)
CRAM_MAGIC is being used to validate the info context structure contents
when the driver routines are being called, so partially revert 8be912147.

Just report "MSVC" as the main FourCC handler in CRAM_GetInfo() instead.

CORE-19453 CORE-15382
2024-02-15 17:08:47 +04:00
Stanislav Motylkov
fa29a61271 [UXTHEME] nonclient.c: Formatting only 2024-02-15 14:22:02 +03:00
Ethan Rodensky
118869f69c [UXTHEME] Implement the rest of DrawNCPreview 2024-02-13 21:20:49 +01:00
Katayama Hirofumi MZ
8ea93d2ab2 [REACTOS] Standardize <imm.h> and <immdev.h> (#6493)
Improve header compatibility and
code quality.
JIRA issue: CORE-19268
- Improve <imm.h> and <immdev.h>
  compatibility by correctly choosing
  the items.
- Use <immdev.h> instead of
  <ddk/immdev.h>.
- Move INPUTCONTEXTDX, IMEINFOEX,
  IMEDPI, and CLIENTIMC into
  <imm32_undoc.h>.
- Adapt to these changes.
2024-02-13 20:33:14 +09:00
Andrei Miloiu
bdcfc6bc8e [CRYPTUI] Update Romanian (ro-RO) translation (#6487) 2024-02-12 18:10:25 +01:00
Andrei Miloiu
d8d4d8fa4e [CMD] Update Romanian (ro-RO) translation (#6488) 2024-02-12 17:59:02 +01:00
Andrei Miloiu
16c6f9ecb9 [RAPPS] Improve Romanian (ro-RO) translation (#6489) 2024-02-12 17:58:43 +01:00
Andrei Miloiu
64f0423904 [RASDLG] Update Romanian (ro-RO) translation (#6483) 2024-02-12 17:58:22 +01:00
Andrei Miloiu
61abe81c2e [FC] Update Romanian translation (#6491) 2024-02-12 17:56:09 +01:00
Katayama Hirofumi MZ
0ac79d7c45 [MSUTB] Improve English (#6473)
Follow-up to #6472. Improve UI/UX.
JIRA issue: CORE-19363
- Improve English text in resource.
- Reduce earth.ico icon file size.
2024-02-12 17:40:57 +09:00
Katayama Hirofumi MZ
019872dd12 [SDK] cicuif.h: Implement CUIFMenuItemSeparator::OnPaintO10 (#6490)
Supporting the Language bar...
JIRA issue: CORE-19363
- Implement CUIFMenuItemSeparator::OnPaintO10
  method.
- Implement CUIFSchemeDef::GetCtrlFaceOffset
  method.
- Implement CUIFWindow::PaintObject method.
- Implement cicDrawMaskBmpOnDC function.
2024-02-12 17:40:09 +09:00
Andrei Miloiu
a7ef18303a [COMDLG32] Update Romanian (ro-RO) translation (#6485) 2024-02-11 23:30:42 +01:00
Andrei Miloiu
e7ac792b11 [EXPLORER_OLD] Update Romanian (ro-RO) translation (#6482) 2024-02-11 23:25:55 +01:00
Andrei Miloiu
179c29dc08 [FLTMC] Update Romanian (ro-RO) translation (#6481) 2024-02-11 23:22:06 +01:00
Andrei Miloiu
b4217c1db4 [BROWSEUI] Update Romanian (ro-RO) translation (#6480) 2024-02-11 23:20:29 +01:00
Andrei Miloiu
7d7ea3d43c [REACTOS] Update Romanian (ro-RO) translation (#6479) 2024-02-11 23:16:51 +01:00
Andrei Miloiu
0a4ed87751 [SYSSETUP] Update Romanian (ro-RO) translation (#6475) 2024-02-11 23:15:44 +01:00
Andrei Miloiu
8ceb3e6d33 [USETUP] Update Romanian (ro-RO) translation (#6474) 2024-02-11 23:14:33 +01:00
Andrei Miloiu
0e933b7e71 [SYSTEMINFO] Update Romanian (ro-RO) translation (#6460) 2024-02-11 23:14:11 +01:00
Andrei Miloiu
c8fbd6d303 [SHUTDOWN] Update Romanian (ro-RO) translation (#6459) 2024-02-11 23:13:27 +01:00
Andrei Miloiu
cb3b5272a0 [CACLS] Update Romanian (ro-RO) translation (#6458) 2024-02-11 23:13:10 +01:00
Andrei Miloiu
07ec501d69 [NEWDEV] Update Romanian (ro-RO) translation (#6457) 2024-02-11 23:12:49 +01:00
Andrei Miloiu
2f1c6c02c1 [INTL] Update Romanian (ro-RO) translation (#6455) 2024-02-11 23:12:31 +01:00
Andrei Miloiu
9caa57b81c [MAIN] Update Romanian (ro-RO) translation (#6454) 2024-02-11 23:12:02 +01:00
Andrei Miloiu
f65bb1fbf2 [ZIPFLDR] Update Romanian (ro-RO) translation (#6453) 2024-02-11 23:11:26 +01:00
Andrei Miloiu
753f812477 [MYDOCS] Update Romanian (ro-RO) translation (#6442) 2024-02-11 23:10:23 +01:00
Andrei Miloiu
feabd323a2 [SHELL32] Update Romanian (ro-RO) translation (#6441) 2024-02-11 23:09:32 +01:00
Andrei Miloiu
027bd7a0e3 [EXPLORER] Update Romanian (ro-RO) translation (#6440) 2024-02-11 23:08:58 +01:00
Andrei Miloiu
0dedd17da0 [TASKMGR] Update Romanian (ro-RO) translation (#6439) 2024-02-11 23:08:23 +01:00
Andrei Miloiu
ac72fa9d0d [OLEACC] Update Romanian (ro-RO) translation (#6438) 2024-02-11 22:59:02 +01:00
Andrei Miloiu
c33cbb2d51 [CONSOLE] Update Romanian (ro-RO) translation (#6437) 2024-02-11 22:57:49 +01:00
Andrei Miloiu
17a7e8bb7c [DISKPART] Update Romanian (ro-RO) translation (#6436) 2024-02-11 22:56:56 +01:00
Andrei Miloiu
8ad62af971 [SNDREC32] Update Romanian (ro-RO) translation (#6435) 2024-02-11 22:56:35 +01:00
Andrei Miloiu
3fa8e4ca82 [SNDVOL32] Update Romanian (ro-RO) translation (#6434) 2024-02-11 22:54:59 +01:00
Andrei Miloiu
8f0657a33b [OSK] Update Romanian (ro-RO) translation (#6433) 2024-02-11 22:54:41 +01:00
Andrei Miloiu
21587a0e32 [INF] Update Romanian (ro-RO) translation (#6432) 2024-02-11 22:53:47 +01:00
Andrei Miloiu
1ea13606c4 [FRAGINATOR] Update Romanian (ro-RO) translation (#6431) 2024-02-11 22:53:04 +01:00
Andrei Miloiu
3ed8b90e47 [VDCCONTROLTOOL] Update Romanian (ro-RO) translation (#6430) 2024-02-11 22:52:17 +01:00
Joachim Henze
874b5a4e00 [NETSHELL] Trivial tweaks (#6484)
Some trivial tweaks that I saw while backporting other stuff:
- es-ES.rc/pt-PT.rc: undesired spaces at the end of groupboxes, which were used as a historic workaround ~ 10 years ago
- zh-TW.rc: wrong indentation (tabs instead of spaces)
- shfldr_netconnect.cpp: superfluous GPL duplication, unneeded exclamation-marks in dbg-prints, undesired double-space formatting

saves a few bytes
2024-02-11 22:51:54 +01:00
Andrei Miloiu
edf3cc7a7a [MSI] Update Romanian (ro-RO) translation (#6429) 2024-02-11 22:51:15 +01:00
Andrei Miloiu
a1756b347e [USETUP] Update Romanian (ro-RO) translation (#6428) 2024-02-11 22:50:49 +01:00
Hermès Bélusca-Maïto
46831c537f [HAL] HalInitializeBios() should not explicitly call HalpBiosDisplayReset().
While the BIOS support for INT10h emulation has been set up, any
modification of the display should wait until the kernel requests
video initialization with INBV/bootvid.
The latter will call HalResetDisplay() (that calls HalpBiosDisplayReset())
at the correct time.
This avoids an useless video mode change and reset when booting ReactOS.
2024-02-11 18:51:40 +01:00
Dmitry Borisov
adf534b284 [NTOS:IO] Initialize InterruptObject to NULL on failure
Fixes a pool corruption when trying to handle IRP_MN_REMOVE_DEVICE in the driver

CORE-17256
2024-02-11 20:24:15 +03:00
Dmitry Borisov
f4a38a05ec [KMTESTS:NTOS_IO] Add a simple test for IoConnectInterrupt
CORE-17256
2024-02-11 20:24:15 +03:00
Katayama Hirofumi MZ
f8cb6458e4 [MSUTB][SDK] Add CTipbarWnd Part 4 (#6478)
Supporting the Language bar...
JIRA issue: CORE-19363
- Add implementation to CTipbarWnd.
- Implement GetLibTls function.
2024-02-11 17:21:14 +09:00
Katayama Hirofumi MZ
23db429e42 [MSCTF][MSUTB][SDK] Add CTipbarItem and CTipbarThread (#6477)
Supporting the Language bar...
JIRA issue: CORE-19363
- Modify msctf.spec.
- Add CTipbarThread and
  CTipbarItem classes.
2024-02-11 13:24:41 +09:00
Serge Gautherie
eb55d984c0 [GITHUB] build.yml: Re-enable 'build-msbuild-i386' (#6470)
Something fixed it in the meantime.

Revert 0.4.15-dev-6069-g 56a45014. CORE-18911
2024-02-10 13:36:38 +03:00
Serge Gautherie
24dea07c3c [GITHUB] build.yml: Use all matrix values to restore Linux build cache (#5595)
Do not mix different build configurations. Extend cache key.

Addendum to 0.4.15-dev-2996-g f777e6bd and 0.4.15-dev-6472-g 732f223c.
2024-02-10 13:32:27 +03:00
Katayama Hirofumi MZ
b548b05e89 [MSUTB] Disable Desk Band (#6472)
Supporting Language Bar...
JIRA issue: CORE-19363
- Add IDD_CLOSELANGBARNOBAND and 
  IDD_MINIMIZELANGBARNOBAND resource dialogs.
- Add IDB_BITMAP154 and IDB_BITMAP155 resource
  bitmaps.
- Disable Desk Band by using g_bEnableDeskBand
  global variable.
2024-02-10 18:12:45 +09:00
Katayama Hirofumi MZ
152af475b1 [MSUTB][SDK] Implement SetRegisterLangBand (#6471)
Supporting Language Bar...
JIRA issue: CORE-19363
- Add some helper functions.
- Implement SetRegisterLangBand
  function.
2024-02-10 16:04:33 +09:00
Katayama Hirofumi MZ
463fec0503 [MSUTB] Implement GetPopupTipbar (#6469)
Supporting Language Bar...
JIRA issue: CORE-19363
- Add GetTipbarInternal helper function.
- Implement GetPopupTipbar function.
2024-02-10 15:14:21 +09:00
Katayama Hirofumi MZ
a6ab8ca780 [MSUTB] Implement ClosePopupTipbar (#6468)
Supporting Language Bar...
JIRA issue: CORE-19363
- Implement ClosePopupTipbar function.
2024-02-10 14:25:12 +09:00
Katayama Hirofumi MZ
c6ceae3440 [MSUTB] Add CTipbarWnd Part 3 (#6467)
Supporting Language Bar...
JIRA issue: CORE-19363
- Add implementation to
  CTipbarWnd class.
- Add delay link to imm32.dll.
2024-02-10 13:04:37 +09:00
Maj Soklič
5974982d9c [GITHUB] Update Actions for Node.js 16 deprecation preparation (#5819)
GitHub started to show deprecation warnings for all Node.js 16 based Actions:
https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/

In order to resolve this:
- build.yml: Update cache to v4
- labeler.yml:
  - Remove the now optional 'repo-token' argument
  - Add 'sync-labels' to remove non-actual labels on PR updates
- stale.yml: Remove useless issue permission since we don't have issues enabled
2024-02-10 02:50:59 +03:00
Stanislav Motylkov
6f874a4656 [GITHUB] Fix Labeler rule for 'drivers'
Addendum to d18b6fc4.
2024-02-10 02:08:04 +03:00
Stanislav Motylkov
d18b6fc437 [GITHUB] Upgrade Labeler rules for v5
Addendum to 51f3ef04.
2024-02-10 01:42:13 +03:00
Hermès Bélusca-Maïto
88891d2ce7 [SETUPLIB][USETUP] Convert MUI_LANGUAGE GeoID values to numbers. 2024-02-09 22:33:30 +01:00
Hermès Bélusca-Maïto
c26a2e89eb [SETUPLIB][USETUP] Convert MUI_LANGUAGE codepages to numbers. 2024-02-09 22:06:39 +01:00
Hermès Bélusca-Maïto
f0a1d766f1 [SETUPLIB][USETUP] Convert internal MUI_LAYOUTS data to numbers.
LangID is a LANGID and LayoutID is a KLID: keyboard layout ID.
See terminology at http://archives.miloush.net/michkap/archive/2004/11/27/270931.html

These tables of MUI_LAYOUTS for each language, correspond to the
intl.inf LCID map:
```
; List of locales.
; <LCID> = <Description>,<OEMCP>,<Language Group>,<langID:HKL pair>,<langID:HKL pair>,...
```
where:
- each MUI_LANGUAGE entry corresponds to one such locale description;
- each MUI_LAYOUTS entry corresponds to a <langID:HKL pair>.

See http://archives.miloush.net/michkap/archive/2006/10/14/825404.html
for some details.
2024-02-09 21:28:23 +01:00
Adam Stachowicz
51a446f966 [GITHUB] build.yml: Update actions to latest versions (#6327) 2024-02-09 22:54:15 +03:00
Adam Stachowicz
51f3ef04f2 [GITHUB] labeler.yml: Update to v5 (#6326)
Release notes: https://github.com/actions/labeler/releases
2024-02-09 22:52:12 +03:00
Adam Stachowicz
f0faa45159 [GITHUB] stale.yml: Update to v9 (#6325)
Release notes: https://github.com/actions/stale/releases
2024-02-09 22:50:40 +03:00
Hermès Bélusca-Maïto
475098c8b1 [NTOS:IO] Don't uppercase the ServiceName in IopDisplayLoadingMessage().
Problematic behaviour was added in commit a97f262ed (r26067), and
commit c39812d1b (r46193) converted to RtlUpcaseUnicodeString() call.

This was modifying the caller's given string. This is not really
a good practice to do so just to make display fancier.

For example, IopInitializeBuiltinDriver(), that calls the display
function, also uses the passed ServiceName later after.

Because IopDisplayLoadingMessage() executes only in SOS mode,
uppercasing the ServiceName in one case but not the other would
implicitly modify the observable OS behaviour.

IopSuffixUnicodeString() is adapted to be similar to RtlPrefixUnicodeString().
2024-02-09 17:16:20 +01:00
Hermès Bélusca-Maïto
3b60f4fa13 [NTOS:IO] Fix a count in characters vs. bytes mismatch. 2024-02-09 17:14:19 +01:00
Hermès Bélusca-Maïto
d1b3115afa [NTOS:IO] IopDisplayLoadingMessage(): Display the loading messages only in SOS mode.
- Make the boolean SosEnabled from ex/init.c visible globally so that
  it can be checked against by IopDisplayLoadingMessage().

- Also use RtlString* function to construct the string.
2024-02-09 17:13:30 +01:00
Hermès Bélusca-Maïto
17c59456cd [NTOS:IO] Minor formatting for IopSuffixUnicodeString and IopDisplayLoadingMessage.
- Doxygen comments;
- SAL annotations;
- These two functions are local to driver.c file only -> static'ify them.
- 2 -> sizeof(WCHAR);
- Rename Length to NumChars;
- static const'ify the L".SYS" string.
2024-02-09 17:00:25 +01:00
Hermès Bélusca-Maïto
08afb1f4b4 [NTOS:INBV] Don't include the fancy splashscreen logo as well
CORE-19449
2024-02-09 12:00:01 +01:00
Hermès Bélusca-Maïto
ee2e256ebf [NTOS:INBV] Disable fancy boot splashscreen features
CORE-19449
2024-02-09 11:52:23 +01:00
Katayama Hirofumi MZ
afaa05e366 [MSUTB][SDK] Add CTipbarWnd Part 2 (#6466)
Supporting Language Bar...
JIRA issue: CORE-19363
- Add implementation to
  CTipbarWnd class.
- Add delay link to uxtheme.dll.
2024-02-09 18:28:24 +09:00
Katayama Hirofumi MZ
f8b62abf16 [MSUTB][SDK] Add CTipbarWnd (stub) (#6465)
Supporting Language Bar...
JIRA issue: CORE-19363
- Add CTipbarWnd class (stub;
  empty implementation).
2024-02-09 15:04:45 +09:00
Hermès Bélusca-Maïto
87df3b548e [SETUP:REACTOS] Temporarily use USETUP file/cabinet extraction routines.
Do this until Wine's setupapi cabinet extraction becomes faster...
2024-02-08 19:08:46 +01:00
Hermès Bélusca-Maïto
bff31569e6 [USETUP] Make the "SpApiSup" files usable from e.g. the GUI setup. 2024-02-08 19:08:39 +01:00
Hermès Bélusca-Maïto
864aed6bcd [SDK:CRT] malloc.h: Use MS PSDK-compatible guard name instead of MinGW one.
Use the MS PSDK-compatible name _INC_MALLOC, instead of the MinGW one
_MALLOC_H_, so that code that may depend on this to determine whether
malloc.h functions are defined, can compile without problems.
2024-02-08 17:48:58 +01:00
Katayama Hirofumi MZ
362804169d [MSUTB] Add CShellWndThread (#6463)
Supporting Language Bar...
JIRA issue: CORE-19363
- Implement CShellWndThread class.
2024-02-08 22:13:44 +09:00
Katayama Hirofumi MZ
5901716c07 [MSUTB] Add CTipbarGripper (#6462)
Supporting Language Bar...
JIRA issue: CORE-19363
- Half-implement CTipbarGripper class.
2024-02-08 20:31:01 +09:00
Katayama Hirofumi MZ
3581a79ebf [SDK] cicutf.h: s/OnPointingEnded/OnMouseOutFromWindow/ (#6461)
Supporting Language Bar...
JIRA issue: CORE-19363
Renaming method.
2024-02-08 14:13:59 +09:00
Adam Słaboń
1f28f715ba [NTOS:FSTUB] Pack the MASTER_BOOT_RECORD structure (#6416)
Otherwise the USHORT members are aligned to 4-byte boundary space
which overflows the disk sector buffer and ultimately results in crash.
This can be reproduced by trying to format the USB drive with Rufus.

Also put some additional C_ASSERT checks for extra safety.
2024-02-08 01:02:19 +03:00
Katayama Hirofumi MZ
7dd3308828 [MSUTB][SDK] Add CUTBContextMenu (#6452)
Supporting Language Bar...
JIRA issue: CORE-19363
- Add some resource strings.
- Half-implement CUTBContextMenu
  class.
2024-02-07 16:47:10 +09:00
Katayama Hirofumi MZ
c9c5b3d3ae [MSUTB][SDK] Add CModalMenu (#6451)
Supporting Language Bar...
JIRA issue: CORE-19363
- Fix the return value type of
  CUIFObject::Initialize method.
- Implement CModalMenu class.
2024-02-07 14:11:21 +09:00
Doug Lyons
2bc44bf95c [MSI] Don't write past end of string when selecting parent directory (#6335)
Import Wine commit: bbce5d014d

Since there's not really something sensible to do in the
"path contains no backslashes" case (adding a backslash seems pointless),
move PathAddBackslashW call inside the if condition to avoid the crash.
Fix suggested by Thomas Faber.

This fixes heap assert in msi/dialog.c when installing Tortoise GIT.
CORE-16693

Co-authored-by: Thomas Faber <thomas.faber@reactos.org>
Co-authored-by: Fabian Maurer <dark.shadow4@web.de>
2024-02-06 23:20:57 +03:00
Katayama Hirofumi MZ
0bce79a50b [MSCTF][MSUTB][SDK] Add CLBarInatItem (#6447)
Supporting Language Bar...
JIRA issue: CORE-19363
- Modify msctf.spec.
- Add some helper functions.
- Half-implement CLBarInatItem class.
- Add some TF_... function prototypes
  to "msctf.idl".
2024-02-06 21:39:32 +09:00
Katayama Hirofumi MZ
8bf0854c8e [MSUTB] Add CLBarItemButtonBase (#6446)
Supporting Language Bar...
JIRA issue: CORE-19363
- Implement CLBarItemButtonBase class.
- Improve CLBarItemBase class.
2024-02-06 15:58:16 +09:00
Katayama Hirofumi MZ
8bfebdf444 [MSUTB] Add CUTBLBarMenu (#6445)
Supporting Language Bar...
JIRA issue: CORE-19363
- Implement CUTBLBarMenu class.
2024-02-06 13:34:34 +09:00
Katayama Hirofumi MZ
34705d1a5d [MSUTB][SDK] Add CLBarItemBase (#6444)
Supporting Language Bar...
JIRA issue: CORE-19363
- Implement CLBarItemBase class.
- Add TF_E_... flags to "msctf.idl".
2024-02-06 12:21:46 +09:00
Hervé Poussineau
9e43518da5 [NTOS:PO] Set SystemBatteriesPresent when having a battery device in the system
This is (at least) used by powercfg.cpl to know if it needs to display some additional pages.
2024-02-05 18:04:02 +01:00
Hervé Poussineau
dff8b93ee2 [NTOS:PO] Give the power device type to PopAddRemoveSysCapsCallback function 2024-02-05 18:04:02 +01:00
Hervé Poussineau
0be4e4aa6d [CMBATT] Correctly print UNICODE_STRING 2024-02-05 18:04:01 +01:00
Katayama Hirofumi MZ
c858429fb1 [COMCTL32] ToolTips: Don't set text on default LPSTR_TEXTCALLBACK (#6412)
Based on KRosUser's tooltip_fix.patch.
JIRA issue: CORE-19309
Don't set text on default processing
of LPSTR_TEXTCALLBACK.
2024-02-05 08:08:33 +09:00
Oleg Dubinskiy
290221ef5b [SHELL32] Sync HCR_RegGetIconW() function to Wine 9.1 (#6418)
Import the following fixes:
- Use the number of bytes instead of the number of characters in the length
  passed to RegQueryValueExW. Calculate this by multiplying the number of
  characters on the size of one wide character in bytes, since only length
  of characters is passed to the function. This fixes ERROR_MORE_DATA
  returned from RegQueryValueExW, because the passed number of bytes was
  less than the actual length of the output buffer, since it was calculated
  incorrectly, so the function failed even when it received the correct
  number of wide characters.
  This partially imports Wine commit:
  32584bb521.
- Limit the number of characters in registry icon index buffer from 7 to 5,
  as it done in ANSI version of this function, since registry index number
  can contain up to 4 digits + space for the null-terminator.

This fixes problems when loading custom (user-defined) icons from registry,
like icons defined by the current user or for all users, instead of just
default icons from the root classes.

CORE-14758

Co-authored-by: Zhiyi Zhang <zzhang@codeweavers.com>
2024-02-02 18:10:36 +03:00
Hervé Poussineau
913235952c [ACPI] Return success even if AcpiInterfaceNotificationsRegister is not implemented
Drivers calling this function still won't be notified in case of event,
but they will at least succeed their initialization.

CORE-18309
2024-02-01 10:08:58 +01:00
Hervé Poussineau
7f1025dcce [CMBATT] Send correct tag on IoAcquireRemoveLock
This prevents an assert in IoReleaseRemoveLock in debug builds, which
already receives the 'Irp' tag.
2024-02-01 10:08:58 +01:00
Hervé Poussineau
6b5ee5ccc7 [BATTC] Make input buffer on IOCTL_BATTERY_QUERY_TAG optional
In that case, don't wait to get battery tag.
2024-02-01 10:08:51 +01:00
Hervé Poussineau
385ac5d4d2 [DEVMGR] Fix diagnostic message when device is failing with CM_PROB_FAILED_ADD
In this specific case, we don't have more information to show.
This prevents using "FIXME" string as a placeholder for device details.

CORE-18309
2024-02-01 09:57:02 +01:00
Katayama Hirofumi MZ
c1dfd580ab [MSUTB][SDK] Add InitFromReg (#6425)
Supporting Language Bar...
JIRA issue: CORE-19363
- Add many global variables
  to add UTB settings.
- Add IsSkipRedrawHKL, IsBiDiLocalizedSystem,
  InitSkipRedrawHKLArray helper functions.
- Add InitFromReg helper function to
  load the settings from registry.
- Add CicRegKey::EnumValue method.
2024-01-31 20:32:21 +09:00
Katayama Hirofumi MZ
5e4fe2cf40 [MSCTF][MSUTB][SDK] Add CTrayIconWnd and CMainIconItem (#6424)
Supporting Language Bar...
JIRA issue: CORE-19363
- Add CTrayIconWnd, CMainIconItem,
  and CButtonIconItem classes.
- Modify msctf.spec for TF_GetLangIcon
  function.
- Add main icon IDI_MAINICON
  ("res/earth.ico").
2024-01-31 16:52:02 +09:00
Katayama Hirofumi MZ
1311537435 [MSUTB][SDK] Implement DoCloseLangbar (#6423)
Supporting Language Bar...
JIRA issue: CORE-19363
- Implement GetGlobalCompartment function.
- Implement GetGlobalCompartmentDWORD and
  SetGlobalCompartmentDWORD helper functions.
- Implement TurnOffSpeechIfItsOn and
  DoCloseLangbar functions.
2024-01-31 12:21:09 +09:00
Katayama Hirofumi MZ
934cd46df5 [MSUTB][SDK] Add Language Bar dialogs (#6422)
Supporting Language Bar...
JIRA issue: CORE-19363
- Add IDD_CLOSELANGBAR and
  IDD_MINIMIZELANGBAR
  resource dialogs.
- Implement CUTBLangBarDlg class.
- Implement CUTBCloseLangBarDlg
  and CUTBMinimizeLangBarDlg
  classes.
2024-01-30 15:38:53 +09:00
Katayama Hirofumi MZ
1001b59a06 [MSUTB][SDK] Add CUTBMenuWnd and CUTBMenuItem (#6420)
Supporting Language Bar...
JIRA issue: CORE-19363
- Implement CUTBMenuWnd and
  CUTBMenuItem classes.
- Add IDS_MENUWND and
  IDS_LEFTCLICK resource strings.
2024-01-29 18:38:59 +09:00
Katayama Hirofumi MZ
c0020b6821 [MSUTB] Add CTipbarAccessible (#6417)
Supporting Language Bar...
JIRA issue: CORE-19363
- Implement CTipbarAccessible class.
- Add delay link to oleacc.dll.
2024-01-28 11:35:44 +09:00
Stanislav Motylkov
b50dfbcee4 [DESK][SHELL32] Improve French (fr-FR) translation
Make "My Network Places" translation consistent.
Fix suggested by Hermès Bélusca-Maïto.
2024-01-27 15:06:12 +03:00
Katayama Hirofumi MZ
883863fa50 [MSUTB] Add CTipbarAccItem (#6415)
Supporting Language Bar...
JIRA issue: CORE-19363
Half-implement CTipbarAccItem class.
2024-01-27 19:25:17 +09:00
Katayama Hirofumi MZ
d6caac3056 [MSUTB] Add CCicLibMenu and CCicLibMenuItem (#6414)
Supporting Language Bar...
JIRA issue: CORE-19363
- Implement CCicLibMenu and
  CCicLibMenuItem classes.
2024-01-27 14:06:25 +09:00
Stanislav Motylkov
deee8aaec1 [REGEDIT] edit.c: Display bus number as signed (it can be -1) 2024-01-26 01:18:20 +03:00
Stanislav Motylkov
c9985e48d3 [REGEDIT] Update Russian (ru-RU) translation 2024-01-26 01:08:43 +03:00
Stanislav Motylkov
889cfee653 [FORMAT] Fix translation headers (+ miscellaneous fixes) 2024-01-26 00:02:38 +03:00
Stanislav Motylkov
e480a7d17c [INF] Shortcuts: Remove remaining trailing dots. Addendum to 92a36b3613. 2024-01-25 21:58:40 +03:00
Katayama Hirofumi MZ
6b0ee735c7 [SDK] cicuif.h: Add CUIFMenuItemSeparator (#6411)
Supporting Language Bar...
JIRA issue: CORE-19363
- Add CUIFMenuItemSeparator class.
- Implement CUIFMenu::InsertSeparator
  method.
2024-01-25 12:35:04 +09:00
Katayama Hirofumi MZ
a88c85259b [SDK] cicuif.h: Fix CUIFMenuItem::OnPaintO10 (#6410)
Supporting Language Bar...
JIRA issue: CORE-19363
Implement CUIFMenuItem::OnPaintO10 method.
2024-01-25 12:09:56 +09:00
Katayama Hirofumi MZ
6634f66e0e [SDK] cicuif.h: Fix CUIFMenuItem::OnPaintDef (#6409)
Supporting Language Bar...
JIRA issue: CORE-19363
Implement CUIFMenuItem::OnPaintDef method.
2024-01-25 12:09:02 +09:00
Oleg Dubinskiy
5abf0c76b7 [NTOS:KE/x86/arm] Use a better boot process affinity value (#6399)
Use a value that is independent of the CPU bitness.
Addendum to commit 96d5b6281
2024-01-24 17:52:56 +01:00
Katayama Hirofumi MZ
927b183aa9 [SDK] cicuif.h: Fix CUIFMenuItem::DrawUnderline (#6406)
Supporting Language Bar...
JIRA issue: CORE-19363
Implement CUIFMenuItem::DrawUnderline
method.
2024-01-24 19:13:24 +09:00
Katayama Hirofumi MZ
3ac5de4102 [SDK] cicuif.h: Fix CUIFMenu::OnKeyDown (#6408)
Supporting Language Bar...
JIRA issue: CORE-19363
Implement CUIFMenu::OnKeyDown
method.
2024-01-24 17:52:36 +09:00
Katayama Hirofumi MZ
76c898ca8e [SDK] cicuif.h: Fix CUIFMenuItem::InitMenuExtent (#6407)
Supporting Language Bar...
JIRA issue: CORE-19363
Implement CUIFMenuItem::InitMenuExtent
method.
2024-01-24 17:51:59 +09:00
Katayama Hirofumi MZ
3056f253e4 [SDK] cicuif.h: Fix CUIFMenu::SetMenuFont (#6403)
Supporting Language Bar...
JIRA issue: CORE-19363
Implement CUIFMenu::SetMenuFont
method.
2024-01-24 15:57:45 +09:00
Katayama Hirofumi MZ
f465035cd9 [SDK] cicuif.h: Fix CUIFMenuItem::Init (#6405)
Supporting Language Bar...
JIRA issue: CORE-19363
Implement CUIFMenuItem::Init method.
2024-01-24 14:42:17 +09:00
Katayama Hirofumi MZ
21e759735e [SDK] cicuif.h: Fix CUIFMenuItem::DrawBitmapProc (#6404)
Supporting Language Bar...
JIRA issue: CORE-19363
Implement CUIFMenuItem::DrawBitmapProc
method.
2024-01-24 14:41:46 +09:00
Katayama Hirofumi MZ
f170276fd2 [SDK] cicuif.h: Fix CUIFMenu::InitShow (#6402)
Supporting Language Bar...
JIRA issue: CORE-19363
Implement CUIFMenu::InitShow method.
2024-01-24 14:41:04 +09:00
Katayama Hirofumi MZ
f3ae595df9 [SDK] cicuif.h: Fix CUIFBalloonWindow::CreateRegion (#6401)
Implementing Language Bar...
JIRA issue: CORE-19363
- Implement CUIFBalloonWindow::CreateRegion
  method.
2024-01-24 14:40:31 +09:00
Katayama Hirofumi MZ
062890ac5f [SDK] cicuif.h: Add CUIFMenu and CUIFMenuItem (#6400)
Supporting Language Bar...
JIRA issue: CORE-19363
- Half-implement CUIFMenu
  and CUIFMenuItem.
- Reduce lines.
2024-01-23 20:33:43 +09:00
Andrei Miloiu
e4344ad152 [DOC] Update Romanian translation notes.txt (#6239) 2024-01-21 22:53:35 +01:00
Andrei Miloiu
62f645b753 [SYSSETUP] Update Romanian (ro-RO) translation (#6344) 2024-01-21 22:44:42 +01:00
Andrei Miloiu
7d77a9713e [CHKSDK] Update Romanian (ro-RO) translation (#6354) 2024-01-21 22:42:41 +01:00
Eric Kohl
d3d67bf5bd [SERVICES] Separate the start tag and the service tag of the manages services
This fixes two winetest errors.
2024-01-21 22:42:26 +01:00
Andrei Miloiu
835942fbf6 [FORMAT] Update Romanian (ro-RO) translation (#6355) 2024-01-21 22:30:00 +01:00
Andrei Miloiu
85ad46099c [TREE] Update Romanian (ro-RO) translation (#6358) 2024-01-21 22:25:20 +01:00
Andrei Miloiu
92a36b3613 [INF] Update Romanian (ro-RO) translation (#6359) 2024-01-21 22:25:00 +01:00
Andrei Miloiu
15beb9d754 [NOTEPAD] Update Romanian (ro-RO) translation (#6372) 2024-01-21 22:22:46 +01:00
Andrei Miloiu
189e81d131 [MPLAY32] Update Romanian (ro-RO) translation (#6373) 2024-01-21 22:13:19 +01:00
Andrei Miloiu
735b06bf0a [CHARMAP] Improve Romanian (ro-RO) translation (#6374) 2024-01-21 22:12:15 +01:00
Andrei Miloiu
bc326b966a [SERVMAN] Update Romanian (ro-RO) translation (#6375) 2024-01-21 22:11:41 +01:00
Andrei Miloiu
9e03f07a71 [WINMM] Update Romanian (ro-RO) translation (#6376) 2024-01-21 22:11:26 +01:00
Andrei Miloiu
46edca2036 [MORE] Update Romanian (ro-RO) translation (#6377) 2024-01-21 22:10:54 +01:00
Andrei Miloiu
0b22bf25fc [BROWSEUI] Update Romanian translation (#6378) 2024-01-21 22:10:39 +01:00
Andrei Miloiu
bff61ed75f [SYSDM] Update Romanian (ro-RO) translation (#6379) 2024-01-21 22:10:20 +01:00
Andrei Miloiu
f805438e70 [LSASRV] Update Romanian (ro-RO) translation (#6380) 2024-01-21 22:08:19 +01:00
Andrei Miloiu
aa8069b0f8 [SAMSRV] Update Romanian (ro-RO) translation (#6381) 2024-01-21 22:07:35 +01:00
Andrei Miloiu
b9de02ceec [DISKPART][MC] Update Romanian (ro-RO) translation for message table (#6382) 2024-01-21 22:05:38 +01:00
Andrei Miloiu
a62cc5f9da [EXPLORER_OLD] Update Romanian (ro-RO) translation (#6388) 2024-01-21 22:05:11 +01:00
Andrei Miloiu
846980f299 [USERENV] Update Romanian (ro-RO) translation (#6389) 2024-01-21 21:56:37 +01:00
Andrei Miloiu
cb97d8eaef [COMDLG32] Update Romanian (ro-RO) translation (#6390) 2024-01-21 21:56:11 +01:00
Andrei Miloiu
559933d6de [LABEL] Update Romanian (ro-RO) translation (#6392) 2024-01-21 21:32:41 +01:00
Andrei Miloiu
1c5b5ce8a4 [NETPLWIZ] Update Romanian (ro-RO) translation (#6393) 2024-01-21 21:32:09 +01:00
Andrei Miloiu
a0d7030a06 [ACPPAGE] Update Romanian (ro-RO) translation (#6394) 2024-01-21 21:28:27 +01:00
Andrei Miloiu
82e6688e4d [SUBST] Update Romanian (ro-RO) translation (#6395) 2024-01-21 21:26:30 +01:00
Andrei Miloiu
34d63501ba [SETUPAPI] Update Romanian (ro-RO) translation (#6396) 2024-01-21 21:07:06 +01:00
Justin Miller
748a2e1655 [NTOS] Fix boot on UP build - PrcbLocks are not used on UP (#6391)
On the uniprocessor kernel KiAcquirePrcbLock is a stub that doesn't modify the current Prcb's PrcbLock value.
Quickly protect this assert around CONFIG_SMP
2024-01-20 08:59:13 -08:00
Oleg Dubinskiy
ab528ac6ae [NTOS:KE] Acquire PRCB lock before marking thread ready for execution in dispatch interrupt routine (#6387)
Fixed in x86 and ARM (this was already done in x64).

This is needed because thread preparation routine KxQueueReadyThread()
releases PRCB lock, but does not acquire it, so that the locking must
always be done outside the function, same as in all its other usage cases.
This fixes an assert from release PRCB routine, when booting x86 ReactOS
in SMP mode, because it attempts to release the lock when it is not
actually acquired.

Addendum to commit a011d19ed.

+ Add an assert in KxQueueReadyThread() to ensure the PRCB lock is actually acquired.
2024-01-20 15:58:39 +01:00
Oleg Dubinskiy
f72d6dd4c5 [NTOS:KE] Set IRQL to SYNCH_LEVEL when exiting from idle after the thread is ready for execution (#6386)
CORE-1697

Raise IRQL to SYNCH_LEVEL when exiting from the idle thread in the
idle loop, in case it is scheduled for execution. Then restore it
back to DISPATCH_LEVEL, after this is done.
This behaviour is a bit similar to the way it's done on x64.

This IRQL raise is necessary only in SMP builds.
Calls are placed in CONFIG_SMP ifdef: this avoids unnecessary IRQL
changes on UP, since SYNCH_LEVEL and DISPATCH_LEVEL are identical
there, unlike in MP, where SYNCH_LEVEL is IPI_LEVEL - 2 actually.

This prevents bugcheck DRIVER_IRQL_NOT_LESS_OR_EQUAL when booting
SMP x86 ReactOS, in KiTimerExpiration when calling it 2nd time.
The BSOD happened due to IRQL levels mismatch.
2024-01-20 15:55:20 +01:00
Justin Miller
3306a16e84 [HALX86] Fix SYNCH_LEVEL differences between UP and SMP in HAL (#5874)
First step to fixing the multiprocessor kernel when booting on a single core.
2024-01-20 06:26:59 -08:00
Timo Kreuzer
9c1cfe0587 [NTOS:KE] Fix initialization of node block for application processors
- Initialize KeNodeBlock[0] statically
- Update Prcb->ParentNode->ProcessorMask for all processors
2024-01-18 22:41:46 +01:00
Doug Lyons
619ff7c429 [WS2_32_WINETEST] Patch ws2_32:sock wine test to run on ReactOS (#5609)
Disable ReactOS specific tests which are not implemented yet.
ROSTESTS-385

- Bypass part of test that uses MEM_WRITE_WATCH.
- Bypass three tests that are unimplemented: 1) WSPAcceptEx, 2) WSPConnectEx, and 3) WSPDisconnectEx
2024-01-18 12:11:25 +01:00
Katayama Hirofumi MZ
73ba03add1 [SDK] cicuif.h: Add CUIFBalloonButton and CUIFBalloonWindow (#6384)
Supporting TIPs...
JIRA issue: CORE-19360
- Implement CUIFBalloonButton class.
- Half-implement CUIFBalloonWindow class.
2024-01-18 19:25:46 +09:00
Hermès Bélusca-Maïto
feb67576dd [NTOS:CM][CMLIB] In PE mode, allow registry hives (except system ones) to use read/write access.
+ Improve related comments.

Registry hives are opened in shared read access when NT is loaded in PE
mode (MININT) or from network (the hives residing on a network share).
This is true in particular for the main system hives (SYSTEM, SOFTWARE,
DEFAULT, ...).

However, in PE mode, we can allow other hives, e.g. those loaded by the
user (with NtLoadKey) to be loaded with full read/write access, since we
boot from a local computer.
2024-01-17 22:13:03 +01:00
Hermès Bélusca-Maïto
793ee786cd [NTOS:CM] Initially start the registry in read-only mode.
Disable registry hive writes, until the IO subsystem is initialized
and disk access is enabled (when the SM signals so after AUTOCHK).
2024-01-17 22:09:45 +01:00
Hermès Bélusca-Maïto
76f1da5631 [NTOS:CM][CMLIB] Minor code styling
In particular remove some extra-parentheses around single code tokens,
and replace few "DPRINT1 + while (TRUE);" by UNIMPLEMENTED_DBGBREAK.

+ Improve some comments.
2024-01-17 22:09:37 +01:00
Whindmar Saksit
d41dec2e07 [SHELL32][CONTROL] Added basic IOpenControlPanel support (#6248)
Add a basic IOpenControlPanel implementation that supports Vista canonical registry names.

Implements `control.exe /name company.name [/page id]` and `IOpenControlPanel`
handling of Vista-style canonical registry names.

The documented `Microsoft.*` names don't work because they are simply not
in our registry but "[Executable Control Panel Items](https://learn.microsoft.com/en-us/windows/win32/shell/how-to-register-an-executable-control-panel-item-registration-)" registered by 3rd-party ISVs
will function correctly in control.exe and the COM API.

Notes:

- `IOpenControlPanel` is implemented in CControlPanelFolder.cpp because
  it is supposed to have tighter integration with that shell folder than
  it does in this PR.

- `IOpenControlPanel` is also supposed to handle .cpl files with canonical
  names registered under [`Extended Properties`](https://learn.microsoft.com/en-us/windows/win32/shell/how-to-register-dll-control-panel-item-registration-#step-3) but the control panel folder
  does not implement `IShellFolder2::GetDetailsEx` yet, so it will have to wait.

- These "Executable Control Panel Items" are also supposed to be displayed
  in the control panel itself but this PR does not address that. The
  `ITEMIDLIST` format for those needs investigation...

- The Wow64 handling is perhaps not correct but it does not matter,
  `ShellExecuteEx` gets to deal with whatever is in the `...\shell\open\command` key.
  `CControlPanelFolder` would have to take more care when it starts
  reading those keys so it knows when to append "(32-bit)" to the display name.

- `%s%s` because .cpl canonical names don't have the `::` prefix according
  to Geoff Chappell.

- Always returns `CPVIEW_CLASSIC` because our `CControlPanelFolder` does
  not support the category view.
2024-01-17 17:07:21 +01:00
Doug Lyons
fb43301bad Fix Cursor Position in "...file name:" box when opening from Explorer 'Search' toolbar (#6333)
Original patch by @I_Kill_Bugs.
Fix Cursor being in middle of '...file name:' edit box when using 'Search' from the Explorer toolbar.

JIRA issue: CORE-19407
2024-01-17 07:42:18 -08:00
Serge Gautherie
2505489d29 [MKISOFS] CMakeLists.txt: Add a check for Clang and its version (#6369)
GCC 8.4 and Clang 13.0.1:
`cc1: note: unrecognized command-line option ‘-Wno-deprecated-non-prototype’ may have been intended to silence earlier diagnostics`

Addendum to commit 4e3bf252d
2024-01-17 16:32:46 +01:00
Jose Carlos Jesus
d4a453ca2e [TRANSLATION] Improve Portuguese (pt-PT) translation (#6171)
Updates for DESK.CPL, INPUT.CPL, EXPLORER.EXE, SHELL32.DLL
2024-01-17 16:07:21 +01:00
Katayama Hirofumi MZ
89d8b472af [MSUTB] Add CTrayIconItem (#6371)
Supporting Language Bar...
JIRA issue: CORE-19363
- Implement CTrayIconItem class.
- Add delay link to shell32.dll.
2024-01-17 12:42:54 +09:00
Katayama Hirofumi MZ
ae54529024 [SDK] cicuif.h: Add CUIFWndFrame (#6370)
Supporting TIPs...
JIRA issue: CORE-19360
Implement CUIFWndFrame class.
2024-01-17 12:42:18 +09:00
Adam Słaboń
823fdb19d7 [SDK][VIRTIO][NETKVM] Make VirtIO a separate library (#6280)
* [SDK][VIRTIO][NETKVM] Make VirtIO a separate library

This is to avoid code duplication when more VirtIO drivers are brought in. This will also be used on development of a VirtIO XDDM GPU Driver.

* [VIRTIO] Sync with upstream
2024-01-16 17:55:35 -08:00
Timo Kreuzer
96d5b6281d [NTOS:KE/x64] Fix boot process affinity 2024-01-16 08:15:53 +01:00
Timo Kreuzer
1ee23d33ac [NTOS:KE] Fix some KAFFINITYs 2024-01-16 08:15:53 +01:00
Andrei Miloiu
a175a88fcb [DESK] Update Romanian (ro-RO) translation (#6350) 2024-01-15 22:25:11 +01:00
Andrei Miloiu
e084cbc7c3 [CMD] Update Romanian (ro-RO) translation (#6366) 2024-01-15 22:23:07 +01:00
Andrei Miloiu
d1097a2b16 [CALCULATOR] Update Romanian (ro-RO) translation (#6362) 2024-01-15 22:20:50 +01:00
Andrei Miloiu
fe4a7918d3 [WINMINE] Update Romanian (ro-RO) translation (#6363) 2024-01-15 22:20:27 +01:00
Andrei Miloiu
bfe233912d [SHIMGVW] Update Romanian (ro-RO) translation (#6356) 2024-01-15 22:19:09 +01:00
Andrei Miloiu
cb53a0df1b [SHDOCLC] Update Romanian (ro-RO) translation (#6357) 2024-01-15 22:15:57 +01:00
Andrei Miloiu
cd4c1c563b [SOLITAIRE] Update Romanian (ro-RO) translation (#6361) 2024-01-15 22:13:04 +01:00
Andrei Miloiu
7cf14d6d34 [SPIDER] Update Romanian (ro-RO) translation (#6360) 2024-01-15 22:08:26 +01:00
Andrei Miloiu
ea06bf8cb1 [RASDLG] Update Romanian (ro-RO) translation (#6345) 2024-01-15 22:07:35 +01:00
Andrei Miloiu
d089dccdde [EXPLORER] Update Romanian (ro-RO) translation (#6351) 2024-01-15 22:06:54 +01:00
Andrei Miloiu
fd573dee26 [SHELL32] Update Romanian (ro-RO) translation (#6352) 2024-01-15 22:06:16 +01:00
Andrei Miloiu
c54f935918 [MSPAINT] Update Romanian (ro-RO) translation (#6364) 2024-01-15 22:05:02 +01:00
Andrei Miloiu
10e6061bb9 [SENDMAIL] Update Romanian (ro-RO) translation (#6353) 2024-01-15 21:59:19 +01:00
Andrei Miloiu
703e2cd1bb [SYSDM] Update Romanian (ro-RO) translation (#6367) 2024-01-15 21:58:35 +01:00
Andrei Miloiu
6f90b43f8a [APPWIZ] Improve Romanian (ro-RO) translation (#6343) 2024-01-15 21:57:52 +01:00
Andrei Miloiu
293aa53c62 [HDWWIZ] Update Romanian (ro-RO) translation (#6342) 2024-01-15 21:56:51 +01:00
Andrei Miloiu
0830e7a445 [REACTOS] Update Romanian (ro-RO) translation (#6341) 2024-01-15 21:56:32 +01:00
Andrei Miloiu
744c1395fd [USERINIT] Update Romanian (ro-RO) translation (#6340) 2024-01-15 21:55:34 +01:00
Andrei Miloiu
12056e88eb [WINLOGON] Update Romanian (ro-RO) translation (#6261) 2024-01-15 21:54:11 +01:00
Andrei Miloiu
8080492b39 [MORE] Update Romanian (ro-RO) translation (#6259) 2024-01-15 21:53:42 +01:00
Katayama Hirofumi MZ
6294f5b3ff [SDK] cicuif.h: Fix CUIFSchemeDef::DrawCtrlEdge (#6347)
Supporting TIPs...
JIRA issue: CORE-19360
Implement CUIFSchemeDef::DrawCtrlEdge method.
2024-01-15 10:36:42 +09:00
Katayama Hirofumi MZ
1156249d63 [SDK] cicuif.h: Fix CUIFSchemeDef::DrawCtrlBitmap (#6348)
Supporting TIPs...
JIRA issue: CORE-19360
Implement CUIFSchemeDef::DrawCtrlBitmap method.
2024-01-15 10:36:12 +09:00
Hervé Poussineau
922757e2e3 [FREELDR:UI] Update display after restoring screen contents
JIRA issue: CORE-18186
2024-01-14 19:12:11 +01:00
Serge Gautherie
2c895c986f [CMAKE][WIN32U_APITEST] Remove 3 useless 'set_module_type(... IMAGEBASE default)' (#6328)
And add an explicit documentation comment.

Addendum to commit 2b7246fd3.
2024-01-14 16:07:00 +01:00
Katayama Hirofumi MZ
cbc3ee2287 [JOY] Add IDCANCEL action to MainPageProc (#6346)
Based on KRosUser's joycancel.patch. Enable Esc key and Close button.
JIRA issue: CORE-19424
Insert a line of "case IDCANCEL:".
2024-01-14 20:48:34 +09:00
Timo Kreuzer
92db51883a [MSVCRT] Add asm wrapper around RtlUnwind for Wine code
This is needed, because Wine code expects RtlUnwind to restore the non-volatile registers, before returning, but ours / the native one doesn't do that.
Should fix CORE-19392 and CORE-19397
2024-01-13 19:39:23 +02:00
Timo Kreuzer
d52b70a73e [NTDLL_APITEST] Add test for x86 RtlUnwind 2024-01-13 19:39:23 +02:00
Hervé Poussineau
382836f087 [TCPIP] Remove code duplication to get max link speed, MTU and max packet size
This is already done when link goes up, in ReconfigureAdapter() function.
2024-01-13 15:23:46 +01:00
Hervé Poussineau
89b685007a [TCPIP] Call netif_set_link_up/netif_set_link_down after link status change
- Update TCP cached information only after updating adapter information
  (so that TCPUpdateInterfaceIPInformation/TCPUpdateInterfaceLinkStatus
  gets new status)
- Call netif_set_link_up/netif_set_link_down in TCPUpdateInterfaceLinkStatus

This fixes a lwIP requirement:
  2007-07-13 Jared Grubb (integrated by Frédéric Bernon)
  * [...] Be carefull for port maintainers to add the NETIF_FLAG_LINK_UP
    flag (like in ethernetif.c) if you want to be sure to be compatible with
    future changes...
2024-01-13 15:23:46 +01:00
Hervé Poussineau
3e3d34d97b [TCPIP] Get max link speed, MTU and max packet size when adapter is connected 2024-01-13 15:23:46 +01:00
Timo Kreuzer
4c9037fff1 [CRT_APITEST] Fix some Vista+ tests 2024-01-13 15:15:47 +02:00
Katayama Hirofumi MZ
d6b5c19233 [SDK] cicuif.h: Add CUIFToolbarButton (#6338)
Supporting TIPs...
JIRA issue: CORE-19360
- Add CUIFToolbarButton class.
2024-01-13 18:21:03 +09:00
Katayama Hirofumi MZ
fa2715fb6b [SDK] cicuif.h: Add CUIFToolbarMenuButton (#6336)
Supporting TIPs...
JIRA issue: CORE-19360
- Add CUIFToolbarMenuButton class.
- Add CUIFToolbarButtonElement class.
2024-01-13 16:02:36 +09:00
Thomas Faber
286d460b45 [CRTDLL_APITEST] Oops. Fix that other compiler. CORE-16933 2024-01-12 12:58:27 -05:00
Thomas Faber
c8aba5a172 [CRT_APITEST] Add tests for _mbsncmp and _mbsstr. CORE-16933 2024-01-12 12:36:43 -05:00
Katayama Hirofumi MZ
4490a053d0 [SHELL32] Improve error message on copying files (#6290)
Based on KRosUser's copyerrorfix.patch.
JIRA issue: CORE-19414
- If feFrom->szFilename was empty,
  then use feFrom->szFullPath instead.
2024-01-12 16:01:21 +09:00
Katayama Hirofumi MZ
f51258ae51 [SDK] cicuif.h: Reduce magic numbers (#6334)
Improve human readability.
JIRA issue: CORE-19360
- Define some flags of m_style.
- Define some flags of dwDrawFlags.
- Reduce some magic numbers.
2024-01-12 13:40:28 +09:00
Katayama Hirofumi MZ
4287f07c75 [SDK] cicuif.h: Add CUIFGripper (#6332)
Supporting TIPs...
JIRA issue: CORE-19360
- Add CUIFGripper class.
2024-01-11 22:09:19 +09:00
Muhammad Faathin Abdurrahman
5391eaadff [KERNEL32] OpenFile(): Use InitializeObjectAttributes (#6323)
Use InitializeObjectAttributes macro instead of initializing the members manually.
2024-01-11 12:31:12 +01:00
Adam Słaboń
8d1beca119 [NTOSKRNL_VISTA] IoQueueWorkItemEx: Pass new context for the queue (#6276)
Passing parameter-provided context results in missing WorkerRoutine and WorkItem when callback is executed.
2024-01-11 12:29:53 +01:00
Jose Carlos Jesus
2f2167abb0 [BOOTDATA] Add Portuguese (pt-PT) translation to hivecls.inf (#6218) 2024-01-11 11:59:11 +01:00
Katayama Hirofumi MZ
74ff3844cc [SDK] cicuif.h: Add CUIFButton2 (#6331)
Supporting TIPs...
JIRA issue: CORE-19360
- Improve CUIFScheme class.
- Add CUIFButton2 class.
2024-01-11 18:44:43 +09:00
Katayama Hirofumi MZ
5719896650 [SDK] cicuif.h: Refactoring Part 2 (#6330)
Supporting TIPs...
JIRA issue: CORE-19360
- Fix some mistakes of
  CUIFButton::OnMouseIn and
  CUIFButton::OnMouseOut.
- Fix some mistakes of CUIFObject
  and CUIFWindow.
2024-01-10 13:13:21 +09:00
Katayama Hirofumi MZ
e694e24720 [RAPPS] Don't download database at startup if appwiz mode (#6319)
Providing quick access of Control
Panel "Add/Remove Programs".
JIRA issue: CORE-19419
- Don't download the database if
  bAppwizMode in ParseCmdAndExecute
  function.
- Add CAppDB::GetAvailableCount method.
- Add CMainWindow::CheckAvailable method.
- Use CMainWindow::CheckAvailable in
  some cases of TVN_SELCHANGED handling.
2024-01-10 11:36:30 +09:00
Katayama Hirofumi MZ
d3ae8258c2 [SDK] cicuif.h: Add CUIFSchemeDef (#6329)
Supporting TIPs...
JIRA issue: CORE-19360
- Add CUIFSchemeDef class.
- Improve CUIFWindow class.
2024-01-10 11:25:59 +09:00
Katayama Hirofumi MZ
9a9b22aac1 [NTUSER] Check class name existence on IntGetAtomFromStringOrAtom (#6184)
Based on I_Kill_Bugs' class_error.patch.
JIRA issue: CORE-13422, CORE-7531, CORE-18639
2024-01-10 08:01:37 +09:00
Katayama Hirofumi MZ
8b5c5fb913 [SDK] cicuif.h: Refactoring (#6321)
Improve readability and reduce code.
JIRA issue: CORE-19268
- Delete cicSetLayout function and
  use gdi32!SetLayout function directly.
- Don't use ::SetRect and ::SetRectEmpty.
- s/CUIFButton::m_dwUnknown10/CUIFButton::m_bPressed/.
- Reduce lines.
2024-01-10 03:05:38 +09:00
Katayama Hirofumi MZ
3299e96e91 [SHELL32] SHFileOperation: Fail elegantly if source doesn't exist (#6318)
Based on KRosUser's dragdropfixpart2.patch.
JIRA issue: CORE-19417, CORE-19211
- Check source file existence.
2024-01-09 19:38:34 +09:00
Andrei Miloiu
f105b50c4f [ZIPFLDR] Update Romanian (ro-RO) translation (#6271) 2024-01-09 11:12:01 +01:00
Andrei Miloiu
22ca537be3 [WLDAP32] Improve Romanian (ro-RO) translation (#6275) 2024-01-09 11:11:04 +01:00
Andrei Miloiu
114ef5f14a [CMD] Update Romanian (ro-RO) translation (#6277) 2024-01-09 11:10:35 +01:00
Andrei Miloiu
fe2f718bf2 [NEWDEV] Update Romanian (ro-RO) translation (#6278) 2024-01-09 11:09:37 +01:00
Andrei Miloiu
30ded664fc [RAPPS] Improve Romanian (ro-RO) translation (#6279) 2024-01-09 11:08:53 +01:00
Andrei Miloiu
7aa48a3824 [TASKKILL] Update Romanian (ro-RO) translation (#6282) 2024-01-09 11:07:31 +01:00
Andrei Miloiu
290f6a5ad0 [FORMAT] Update Romanian (ro-RO) translation (#6283) 2024-01-09 11:07:08 +01:00
Andrei Miloiu
8f62437352 [CRYPTUI] Update Romanian (ro-RO) translation (#6292) 2024-01-09 11:05:54 +01:00
Andrei Miloiu
ba7c50edce [OLEDLG] Update Romanian (ro-RO) translation (#6293) 2024-01-09 11:05:31 +01:00
Andrei Miloiu
cf2c1e93a5 [IPCONFIG] Update Romanian (ro-RO) translation (#6294) 2024-01-09 11:05:01 +01:00
Andrei Miloiu
97e45e2ad1 [ACPPAGE] Update Romanian (ro-RO) translation (#6296) 2024-01-09 11:04:41 +01:00
Andrei Miloiu
5bc6fe88e8 [RASDLG] Update Romanian (ro-RO) translation (#6298) 2024-01-09 11:04:05 +01:00
Andrei Miloiu
3f6c57279d [MSCONFIG_NEW] Update Romanian (ro-RO) translation (#6299) 2024-01-09 11:03:37 +01:00
Andrei Miloiu
25ca5ea537 [MODEMUI] Update Romanian (ro-RO) translation (#6300) 2024-01-09 11:03:12 +01:00
Andrei Miloiu
22719c8097 [DESK] Update Romanian (ro-RO) translation (#6301) 2024-01-09 11:02:41 +01:00
Andrei Miloiu
9b2627f4ba [DISKPART] Update Romanian (ro-RO) translation (#6303) 2024-01-09 11:01:59 +01:00
Andrei Miloiu
5adb252fea [OPENGLCFG] Update Romanian (ro-RO) translation (#6304) 2024-01-09 11:01:30 +01:00
Andrei Miloiu
84de569349 [WINMM] Update Romanian (ro-RO) translation (#6309) 2024-01-09 11:00:42 +01:00
Andrei Miloiu
4d0080db9b [INF] Update Romanian (ro-RO) translation (#6310) 2024-01-09 11:00:25 +01:00
Andrei Miloiu
8a5fe3818e [MSCONFIG_NEW] Update Romanian (ro-RO) translation (#6311) 2024-01-09 10:58:40 +01:00
Katayama Hirofumi MZ
0b3756044f [MSCTFIME][MSUTB][SDK] cicuif.h: Add CUIFButton (#6320)
Supporing TIPs...
JIRA issue: CORE-19268
- Add CUIFButton, CUIFSolidBrush, and CUIFIcon classes.
2024-01-09 16:57:30 +09:00
Whindmar Saksit
55a5d7a177 [SHELL32] RegFolder must correctly handle GetDisplayNameOf parsing paths (#6265) 2024-01-08 17:02:59 +01:00
Whindmar Saksit
7c2e8c67f1 [CONSRV] Don't blink cursor if the console window is not active (#5601)
Co-authored-by: Stanislav Motylkov <x86corez@gmail.com>
2024-01-08 13:49:28 +01:00
Katayama Hirofumi MZ
710df1361c [COMCTL32] ToolTip: Expand tabs (#6315)
Based on KRosUser's tooltip_tabfix.patch.
ToolTip should expand tabs.
JIRA issue: CORE-5635, CORE-13651
- Add DT_EXPANDTABS flag for DrawText.
2024-01-08 19:51:42 +09:00
Katayama Hirofumi MZ
4ee54e2519 [SDK] cicuif.h: Add CUIFToolTip (#6317)
Supporting TIPs...
JIRA issue: CORE-19360
- Half-implement CUIFToolTip.
- Strengthen some classes.
2024-01-08 16:44:38 +09:00
Katayama Hirofumi MZ
7898297c53 [SDK] cicuif.h: Add CUIFShadow (#6316)
Supporting TIPs...
JIRA issue: CORE-19360
- Half-implement CUIFShadow class.
2024-01-08 12:52:37 +09:00
Timo Kreuzer
9be24a9d51 [CMAKE] Add GCC options to make a long double 64 bits
This adds -mlong-double-64 to make the size of a long double 64 bits in GCC builds to match MSVC builds.
2024-01-07 11:03:08 +02:00
Katayama Hirofumi MZ
469e7c6d4e [SDK] cicuif.h: Add CUIFWindow (#6313)
Supporting TIPs...
JIRA issue: CORE-19360
- Strengthen CUIFObject.
- Add CUIFWindow.
2024-01-07 16:49:31 +09:00
Andrei Miloiu
55bc06fa7a [LABEL] Update Romanian (ro-RO) translation (#6258) 2024-01-06 23:01:23 +01:00
Andrei Miloiu
0103c55fa8 [IPCONFIG] Update Romanian (ro-RO) translation (#6281) 2024-01-06 22:58:31 +01:00
Andrei Miloiu
d882d57046 [APPWIZ] Improve Romanian (ro-RO) translation (#6272) 2024-01-06 22:56:56 +01:00
Andrei Miloiu
048ea61adb [SHUTDOWN] Update Romanian (ro-RO) translation (#6264) 2024-01-06 22:47:08 +01:00
Andrei Miloiu
f320804f24 [MSI] Update Romanian (ro-RO) translation (#6260) 2024-01-06 22:46:33 +01:00
Andrei Miloiu
166d9c8ac1 [DESKMON] Update Romanian (ro-RO) translation (#6257) 2024-01-06 22:27:19 +01:00
Andrei Miloiu
eba2a77baf [MSPORTS] Update Romanian (ro-RO) translation (#6256) 2024-01-06 22:26:42 +01:00
Andrei Miloiu
7ce3f91993 [ACCESS] Update Romanian (ro-RO) translation (#6255) 2024-01-06 22:25:32 +01:00
Andrei Miloiu
37344a6dfc [INTL] Update Romanian (ro-RO) translation (#6247) 2024-01-06 22:25:04 +01:00
Andrei Miloiu
4a68b08198 [FONTVIEW] Update Romanian (ro-RO) translation (#6245) 2024-01-06 22:24:12 +01:00
Andrei Miloiu
acf170c95d [MSPAINT] Update Romanian (ro-RO) translation (#6241) 2024-01-06 22:22:43 +01:00
Andrei Miloiu
44fa14b337 [NETSHELL] Update Romanian (ro-RO) translation (#6246) 2024-01-06 22:19:00 +01:00
Andrei Miloiu
7c5204b9b2 [REGEDIT] Update Romanian (ro-RO) translation (#6223) 2024-01-06 22:18:17 +01:00
Katayama Hirofumi MZ
bf92fa2386 [MSCTFIME][MSUTB][SDK] Add cicInitUIFLib and cicDoneUIFLib (#6307)
Supporting TIPs...
JIRA issue: CORE-19360
- Implement cicInitUIFLib and cicDoneUIFLib functions.
- Use them in msctfime and msutb.
- Add CUIFSystemInfo class in <cicero/cicuif.h>.
2024-01-06 19:21:37 +09:00
Katayama Hirofumi MZ
afb132a90b [SDK] cicuif.h: Add CUIFBitmapDC (#6306)
Supporting TIPs...
JIRA issue: CORE-19360
- Add CUIFBitmapDC class.
- Add cicInitUIFUtil and
  cicDoneUIFUtil functions.
- Add cicSetLayout, cicMirrorBitmap,
  cicCreateDitherBrush,
  cicCreateDisabledBitmap,
  and cicCreateShadowMaskBmp
  utility functions.
2024-01-06 17:44:57 +09:00
Katayama Hirofumi MZ
46cf45414c [SDK] cicuif.h: Add CUIFColorTable (#6305)
Supporting TIPs...
JIRA issue: CORE-19360
- Improve cicGetFN function.
- Add CUIFColorTable, CUIFColorTableSys,
  and CUIFColorTableOff10 classes.
- Implement cicInitUIFScheme,
  cicUpdateUIFScheme, and
  cicDoneUIFScheme functions.
2024-01-06 14:45:23 +09:00
Katayama Hirofumi MZ
d689cfe158 [SHELL32] Don't crash on Control Panel item D&D (#6289)
Based on @douglyons 's control-panel-copy-to-desktop-fix.patch.
JIRA issue: CORE-19210
- Delete needless #ifdef __REACTOS__ guards because
  shlfileop.cpp is a forked file.
- Do NULL check against feFrom->szFilename.
2024-01-06 11:00:36 +09:00
Katayama Hirofumi MZ
8d7a8f0ec1 [DESK] Find best display settings (#6288)
Based on KRosUser's desk.patch.
JIRA issue: CORE-18187, CORE-16878
- Add FindBestElement helper function.
- Use FindBestElement to find the best
  display settings.
2024-01-06 10:59:05 +09:00
Katayama Hirofumi MZ
267a1c9cda [MSCTFIME] Reduce comment lines (#6297)
Improve readability.
JIRA issue: CORE-19360
- Reduce the lines of comments
  by using C++ comments.
2024-01-05 18:36:30 +09:00
Katayama Hirofumi MZ
6df2af2610 [SDK] Add CUIFObject and CUIFObjectArray (#6295)
Supporting TIPs...
JIRA issue: CORE-19360
- Add CUIFObjectArray and CUIFObject classes.
- Strenthen CicArray and CUIFTheme classes.
2024-01-05 17:43:06 +09:00
Thamatip Chitpong
90ed686209 [NTUSER] Use UserHMGetHandle macro (#6244)
Use UserHMGetHandle macro everywhere instead of obj->head.h for consistency.
2024-01-05 07:16:44 +07:00
Katayama Hirofumi MZ
90432c1a4c [COMCTL32][USER32] EDIT & ListView & TreeView: Fix HRGN leaks (#6268)
Based on KRosUser's memleak_comctl32.patch.
JIRA issue: CORE-19405
Fix HRGN handle leaks.
2024-01-04 18:05:39 +09:00
Katayama Hirofumi MZ
77c5aea41f [MSCTFIME][SDK] Add <cicero/cicuif.h> (#6291)
Supporting TIPs...
JIRA issue: CORE-19360
- Add cicGetFN helper function
  in <cicero/cicbase.h>.
- Add <cicero/cicuif.h>.
- Add CUIFTheme class in
  <cicero/cicuif.h>.
2024-01-04 17:32:43 +09:00
Katayama Hirofumi MZ
35f83286c5 [MSCTFIME][SDK] Implement CicCaret class (#6287)
Supporting TIPs... UIComposition class requires a caret class.
JIRA issue: CORE-19360
- Add <cicero/ciccaret.h> header.
- Add CicCaret class for displaying a caret.
2024-01-03 19:55:14 +09:00
Katayama Hirofumi MZ
b48e77e15b [CTFMON][MSCTFIME][SDK] Define new(cicNoThrow) and use it (#6286)
Use new(cicNoThrow) instead of plain operator new.
JIRA issue: CORE-19360
- Define CicNoThrow structure and
  cicNoThrow macro in <cicero/cicbase.h>.
- Use new(cicNoThrow) instead of
  plain operator new.
2024-01-03 16:45:23 +09:00
Katayama Hirofumi MZ
6cde331a89 [MSCTFIME] Half-implement UIWndProc (#6285)
Supporting TIPs...
JIRA issue: CORE-19360
- Add UIComposition and UI classes.
- Add CIMEUIWindowHandler structure.
- Half-implement UIWndProc by using them.
2024-01-03 13:52:54 +09:00
Katayama Hirofumi MZ
0e9939bd42 [MSCTFIME] Implement CTextEventSink::_Advise and _Unadvise (#6284)
Supporting TIPs...
JIRA issue: CORE-19360
2024-01-03 10:50:48 +09:00
Katayama Hirofumi MZ
b59bf8a3f4 [COMCTL32][USER32] ComboBox: Don't close listbox on letter type (#6227)
Based on KRosUser's combo_v3.patch.
JIRA issue: CORE-16376
- Set CBF_NOROLLUP flag on (WM_CHAR or
  WM_IME_CHAR) and CBF_DROPPED state.
2024-01-03 08:45:24 +09:00
Katayama Hirofumi MZ
006bdfa234 [MSCTFIME][SDK] Half-implement CTextEventSink (#6274)
Supporting TIPs...
JIRA issue: CORE-19360
- Add CTextEventSink class.
- Add ITfTextLayoutSink interface
  into "msctf.idl".
2024-01-02 19:45:03 +09:00
Katayama Hirofumi MZ
f9489f4876 [MSCTFIME] Strengthen CicInputContext (#6273)
Supporting Text Input Processors (TIPs)...
JIRA issue: CORE-19360
2024-01-02 15:33:37 +09:00
Katayama Hirofumi MZ
88107adc92 [MSCTFIME][SDK] Implement CFunctionProvider (#6269)
Supporting TIPs...
JIRA issue: CORE-19360
Define CFunctionProviderBase class.
Define CFunctionProvider class.
Strengthen <cicero/cictf.h>.
2024-01-01 16:36:49 +09:00
Katayama Hirofumi MZ
e5548aa501 [MSCTFIME][SDK] Improve human readability (#6240)
Improve code quality.
JIRA issue: CORE-19360
- Add some SAL annotations.
- Add readable comments more.
- Rename some member variables.
2024-01-01 11:05:49 +09:00
Katayama Hirofumi MZ
d6c70f0864 [COMCTL32][USER32] RadioButton: Notify BN_CLICKED on WM_SETFOCUS (#6266)
Based on KRosUser's button_fixnotif.patch.
JIRA issue: CORE-6542, CORE-19384
Notify BN_CLICKED to the parent on WM_SETFOCUS message
handling if the button type was either BS_RADIOBUTTON or
BS_AUTORADIOBUTTON, and if the button was unchecked.
2024-01-01 11:01:59 +09:00
Katayama Hirofumi MZ
a842a92260 [RAPPS] Don't ask for 'remote from registry' when no selection (#6267)
Based on KRosUser's RAPPS.patch.
JIRA issue: CORE-19409
If m_ApplicationView->GetFocusedItemData was NULL, then do not ask for removal.
2024-01-01 10:12:51 +09:00
Hermès Bélusca-Maïto
a70ce994f0 🎊 🍾 🥳 Happy New Year 2024 to the ReactOS Community! 🎆 ⚛️ ☢️
.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:.██████╗  ██████╗ ██████╗ ██╗  ██╗
 __,  ,__)            __,  ,__)       __, ,__)         ╚════██╗██╔═████╗╚════██╗██║  ██║
(--|__| _ ,_ ,_      (--|\ | _       (--\ | _  _ ,_     █████╔╝██║██╔██║ █████╔╝███████║
  _|  |(_||_)|_)(_|    _| \|(/_(_|_)     \|(/_(_||     ██╔═══╝ ████╔╝██║██╔═══╝ ╚════██║
 (        |  |  ,_|   (                (__|            ███████╗╚██████╔╝███████╗     ██║
.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:.╚══════╝ ╚═════╝ ╚══════╝     ╚═╝
2024-01-01 00:00:00 +01:00
Eric Kohl
f5346cbc1b [ADVAPI32][IDL][SERVICES] Implement I_ScValidatePnPService
This is actually a Vista+ function, but we need it enable umpnpmgr.dll to notify services of device events. Up until WinXP it was possible to make direct calls to the service manager by umpnpmgr.dll because umpnpmgr.dll was loaded into the service manager process. From Vista onwards umpnpmgr.dll is run as a separate service host process. And since ReactOS always ran umpnpmgr.dll as a separate process, we have to use the Vista RPC functions to notify services.
2023-12-31 15:33:19 +01:00
Timo Kreuzer
10bb50b456 [HAL] Fix SMP initialization
- Don't use CONFIG_SMP, this isn't handled in (most of) hal
- Add a dummy HalpSetupProcessorsTable for UP
- Call HalpRegisterKdSupportFunctions only for processor 0
2023-12-30 12:53:18 +02:00
Timo Kreuzer
86b82e4ce7 [CRT] Sync $I10_OUTPUT and test with wine head
Both were broken on MSVC builds, where a long double is 64 bits and not 80 bits like on GCC. The new code works on MSVC builds, too.
2023-12-30 12:51:22 +02:00
Katayama Hirofumi MZ
40131fd1ca [WINHLP32] Don't show file path in title (#6250)
Based on KRosUser's winhlp.patch. This PR will supersede #5401.
JIRA issue: CORE-18679
Just copy help file title.
2023-12-29 21:16:20 +09:00
hpoussin
9cfd8dd918 [LWIP] Correctly synchronize to lwIP 1.4.1 (#6123)
* [TCPIP] Rename lwip library to lwipcore

* [TCPIP] Remove ReactOS-specific code from LWIP library

* [TCPIP] Synchronize LWIP code to 1.4.1

Update to LWIP 1.4.1 should have been done by bd3b0e8ef4
However, I was unable to find the exact revision used in this commit.

So, do the following
- take code from STABLE-1_4_1 commit on https://git.savannah.gnu.org/git/lwip.git
- cherry-pick LWIP 32aa9a41e2013e5ee6eee09317a848647e37badf (CORE-8978)
- cherry-pick LWIP c0b534e5318baf870e2152c70d4d11a3a86181f3
- add a ReactOS-specific change in src/api/tcpip.c (missing include)
- add ReactOS specific file CMakeLists.txt

NOTE: Changes are mostly in unit test files (not used) and CHANGELOG file.

CORE-7140
2023-12-29 13:05:41 +01:00
Katayama Hirofumi MZ
d8108a64a4 [COMDLG32] Color Picker: Fix black cross (#6242)
JIRA issue: CORE-19403, CORE-19405
- Fix HRGN handle leak.
- Fix black cross coordinates.
2023-12-29 20:58:51 +09:00
Katayama Hirofumi MZ
8e01ab830b [IMM32] Disable some annoying logging (#6249)
@HBelusca said in ReactOS Chat:

> hi, is it possible to disable those two dprints?
> err:(../dll/win32/imm32/imm.c:949) pIMC was NULL
> err:(../dll/win32/imm32/imm.c:849) pClientImc was NULL
> they come out every other second of usage of any app in ReactOS.

JIRA issue: CORE-19268
Disable logging on two points by not using IS_NULL_UNEXPECTEDLY macro.
2023-12-29 20:57:27 +09:00
Katayama Hirofumi MZ
1aeac0bf24 [REGEDIT] Fix condition of enabling load/unload hive menu item (#6251)
Based on KRosUser's regedit_loadfix.patch.
JIRA issue: CORE-19298
Fix the condition of enabling/disabling the
"Load Hive" and Unload Hive menu items.
2023-12-29 20:56:01 +09:00
Katayama Hirofumi MZ
d46d3167a3 [SHELL32] Fix status bar part sizes (#6243)
Based on KRosUser's cdefview_fixstatus.patch.
JIRA issue: CORE-19406
In CDefView::OnSize, call _ForceStatusBarResize function
instead of _HandleStatusBarResize function.
2023-12-29 13:34:23 +09:00
Hermès Bélusca-Maïto
b5f9e1c2dc [PSDK] ntddvdeo.h: Add missing GUIDs.
References:
- MS WDK from Windows 2k3, 7, 10.
- https://naughter.wordpress.com/2016/08/20/changes-in-the-windows-v10-0-14393-sdk-compared-to-windows-v10-0-10240-sdk-part-one/
2023-12-28 22:11:05 +01:00
Hermès Bélusca-Maïto
6c93f3ca6b [MSI_WINETEST][BASEADDRESS] Rename the 'custom' and 'selfreg' build targets.
They are renamed to 'msi_custom' and 'msi_selfreg', respectively.
This is to avoid any future build target name collisions with other
tests that would also use similarly-named targets. (For example, a
future setupapi wine-synced commit.)
2023-12-27 21:50:32 +01:00
Katayama Hirofumi MZ
73a1c9d418 [MSCTFIME][SDK] Implement CtfImeSelectEx (#6238)
Supporting TIPs...
JIRA issue: CORE-19360
- Add GetCharsetFromLangId and
  InternalSelectEx helper functions.
- Add CicBridge::GetInputContext
  and CicBridge::SelectEx.
- Implement CtfImeSelectEx function.
- CTFIMECONTEXT structure moved
  into <cicero/cicimc.h>.
2023-12-27 20:29:02 +09:00
Katayama Hirofumi MZ
d528cc4013 [MSCTFIME][SDK] Implement CicBridge::ActivateIMMX etc. (#6237)
Supporting TIPs...
JIRA issue: CORE-19360
- Implement CicBridge::ActivateIMMX and
  CicBridge::DeactivateIMMX functions.
2023-12-27 16:19:47 +09:00
Katayama Hirofumi MZ
b9e8fb9ea4 [MSCTFIME][SDK] Implement CtfImeProcessCicHotkey (#6236)
Supporting TIPs...
JIRA issue: CORE-19360
- Define ITfSysHookSink and IID_ITfThreadMgr_P
  interfaces in <cicero/cictf.h>.
- Implement CtfImeProcessCicHotkey function.
2023-12-27 15:08:17 +09:00
Katayama Hirofumi MZ
cfff2dbd12 [MSCTF] Implement InitCUASFlag (#6235)
Implementing TIPs and Language Bar...
JIRA issue: CORE-19361
- Add InitCUASFlag function.
- Use it in ProcessAttach function.
2023-12-27 12:32:01 +09:00
Katayama Hirofumi MZ
ec0695c26b [MSCTF][SDK] Implement InitLangChangeHotKey (#6234)
Supporting TIPs and Language Bar...
JIRA issue: CORE-19361
- Implement InitLangChangeHotKey function.
- Add some global variables about hot-keys.
- Fix CicRegKey in <cicero/cicreg.h>.
2023-12-27 11:43:01 +09:00
Katayama Hirofumi MZ
7f1df040ed [COMDLG32] Color Picker: Limit value by maxval (#6225)
Set maximum value to value if
value was beyond maximum value.
CORE-19402
2023-12-26 21:50:41 +09:00
Katayama Hirofumi MZ
6e5fde7ebb [COMCTL32] Property Sheet: Use PROPSHEET_IsDialogMessage in message loop (#6226)
Fix Ctrl+Tab and Shift+Ctrl+Tab key
combination action in property sheet.
JIRA issue: CORE-17941
Use PROPSHEET_IsDialogMessage in
the message loop of PropertySheetA/W
function, instead of IsDialogMessage.
2023-12-26 21:49:04 +09:00
Katayama Hirofumi MZ
449a08a6a8 [COMDLG32] Fix IDC_TOOLBARPLACES size (#6228)
Based on KRosUser's comdlg_resbug.patch.
Change IDC_TOOLBARPLACES control
extent of NEWFILEOPENV2ORD
resource dialog.
CORE-16925
2023-12-26 21:46:35 +09:00
Katayama Hirofumi MZ
07a22af58b [MSCTF][SDK] Implement TF_IsCtfmonRunning (#6233)
- Add many global variables.
- Add GetUserSIDString, InitUserSidString,
  InitUniqueString, and
  GetDesktopUniqueName helper functions.
- Implement TF_IsCtfmonRunning function.
- Fix CicFileMapping class in
  <cicero/cicfmap.h>.
- Modify msctf.spec.
- Half-implement ProcessAttach and
  ProcessDetach functions.
CORE-19361
2023-12-26 16:17:06 +09:00
Katayama Hirofumi MZ
4293704ecb [CTFMON] Unlink RegNotifyChangeKeyValue (#6232)
Dynamic load advapi32!RegNotifyChangeKeyValue function.
Output log if RegNotifyChangeKeyValue failed.
CORE-19362
2023-12-26 15:21:39 +09:00
Katayama Hirofumi MZ
69a925cae8 [MSCTF] Implement TF_RunInputCPL (#6231)
- Add FullPathExec, and RunCPLSetting
  helper functions.
- Implement TF_RunInputCPL function
  by using them.
- Modify msctf.spec.
CORE-19361
2023-12-26 13:39:56 +09:00
Katayama Hirofumi MZ
bfa3e554d4 [CTFMON][MSCTFIME][MSCTF][MSUTB][SDK] Cicero is ANSI, not Unicode (#6230)
Cicero interface is not Unicode (W)
but ANSI (A).
- ctfmon.exe is ANSI, not Unicode.
- msutb.dll is ANSI, not Unicode.
- Apply generic text mapping to the
  cicero headers.
- Include <tchar.h> to use generic
  text mapping.
CORE-19361, CORE-19362, CORE-19363
2023-12-26 12:07:01 +09:00
Katayama Hirofumi MZ
a8a4703699 [MSCTF][SDK] Implement TF_RegisterLangBarAddIn etc. (#6229)
- Add dll/win32/msctf/utils.cpp.
- Implement TF_RegisterLangBarAddIn
  and TF_UnregisterLangBarAddIn.
- Strengthen <cicero/cicreg.h>.
- Modify msctf.spec.
CORE-19361
2023-12-26 10:31:53 +09:00
Hermès Bélusca-Maïto
434ac241df [NTOS:INBV:PO] Consolidate shutdown logo routines where all the boot theming is implemented.
And it's late now, but... Merry Christmas 2023 as well! 🎄
Logo design by contributor 'TheCustomFHD'

"From ReactOS with Love" ;^)
2023-12-25 21:43:20 +01:00
Katayama Hirofumi MZ
f4460c3fcd [CTFMON][MSCTF][MSUTB][SDK] Add msutb.dll (stub) (#6222)
msutb.dll is the GUI back-end
of Language Bar (Tipbar).
- Add msutb.dll module at
  dll/win32/msutb/.
- The implementation of
  msutb.dll is currently stub.
- Modify msctf.spec and msctf.idl.
- Add <cicero/cicutb.h>.
- Adapt ctfmon.exe to these changes.
CORE-19362, CORE-19363
2023-12-25 22:29:57 +09:00
Katayama Hirofumi MZ
5d9f622eeb [SHLWAPI] Fix SHCreateMemStream corner case (#6224)
When the system run out of memory,
check NULL and fail elegantly if
necessary.
This doesn't fix CORE-19229 but I
think it needs a fix.
CORE-19229
2023-12-25 08:22:08 +09:00
Hermès Bélusca-Maïto
6d265d1fd8 [NTOS:INBV] Isolate the bitmap resources pertaining to the boot theme/animation into their resource sub-file. 2023-12-24 22:39:36 +01:00
Hermès Bélusca-Maïto
0f3da97456 [NTOS:KE:EX] Fix comment typo. 2023-12-24 22:39:35 +01:00
Hermès Bélusca-Maïto
7b410fb8ca [NTOS:INBV] Don't hardcode the off-screen rot-bar-bits buffer size. 2023-12-24 21:54:24 +01:00
Hermès Bélusca-Maïto
81dc30a434 [NTOS:INBV] Improve comment & define name. 2023-12-24 21:54:23 +01:00
Hermès Bélusca-Maïto
7aec73a76c [NTOS:INBV] Minor code style. 2023-12-24 21:54:16 +01:00
Hermès Bélusca-Maïto
7b956a0a1f [BOOTVID] Fix definition of GetFontPtr(). 2023-12-24 21:41:09 +01:00
Hermès Bélusca-Maïto
3812996042 [NTOS:INBV] Fix build when INBV_ROTBAR_IMPLEMENTED is not defined. 2023-12-24 21:40:36 +01:00
Thamatip Chitpong
f74a2aac8c [NTUSER] Add UserHMSetHandle macro (#6164) 2023-12-24 23:42:15 +07:00
Katayama Hirofumi MZ
758fff284d [COMDLG32] Color Picker: Fix cursor clipping (#6219)
- ClipCursor(NULL) for WM_LBUTTONUP
  and WM_NCDESTROY.
- ClipCursor(...) for WM_LBUTTONDOWN.
CORE-17002
2023-12-24 22:10:26 +09:00
Katayama Hirofumi MZ
4a3a78857f [SDK] Add <cicero/cicfmap.h> for File Mapping
CORE-19361
2023-12-24 11:50:11 +09:00
Elliot Killick
932aef40f7 [LDR][NDK] Fix inconsistent Cookie type (#6188)
Make LdrUnlockLoaderLock Cookie type consistent with LdrLockLoaderLock
and LdrpMakeCookie functions.

In addition:
* Adjustment of the formatting string for ULONG_PTR;
* ntdll.spec: specify ptr for 2nd parameter of LdrUnlockLoaderLock:
  This is a parameter whose length is pointer-like, platform-dependent.

Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2023-12-23 22:13:47 +01:00
Adam Słaboń
fcaa38c705 [NETKVM] Don't restrict driver setup to x86 builds (#6221) 2023-12-23 22:00:34 +01:00
Whindmar Saksit
83bc98f96a [DESK] Remember icon picker custom colors between invocations (#6215)
This makes editing a theme slightly less annoying, if you can define custom colors.
2023-12-23 22:00:11 +01:00
Serge Gautherie
48909364db [REGEDIT] *.rc: Fix 3 caption copy-pastas (#6212)
Addendum to commit 54adb5e45
2023-12-23 21:53:17 +01:00
Serge Gautherie
df81dadd9c [UMPNPMGR] PNP_RegisterNotification(): Fix a string format (#6211)
Type was changed from DWORD to DWORD_PTR (as handle).
Addendum to commit 71df39b02
2023-12-23 21:50:47 +01:00
Serge Gautherie
ffc99d08e8 [SETUPAPI] CMP_RegisterNotification(): Remove useless/broken check (#6210)
Revert new broken check from commit  b0a73746c,
and even remove initial a6eabc004 (r73394) useless check.
2023-12-23 21:49:47 +01:00
Serge Gautherie
8943354d17 [SETUPAPI] cfgmgr.c: Remove 5 useless '= NULL' initializations (#6209) 2023-12-23 21:38:36 +01:00
Serge Gautherie
74a82c831b [SETUPAPI] CMP_RegisterNotification(): Remove duplicated code (#6207)
Addendum to commit 9277f5352
2023-12-23 21:38:09 +01:00
Ratin Gao
ffb20d3330 [REACTOS] Fix typos (#6198)
- Adress -> Address
- Currupted -> Corrupted

3rd-party files are not modified.
2023-12-23 21:37:08 +01:00
Whindmar Saksit
f380a51040 [WSHOM.OCX] WshShell::Run intWindowStyle parameter is optional (#6180)
The last two parameters are optional, see
https://learn.microsoft.com/en-us/previous-versions/d5fk67ky(v=vs.85)

Test case:
```
' test.vbs
Set objShell = Wscript.CreateObject("Wscript.Shell")
objShell.Run "calc.exe" ' Should work because the arguments are optional
objShell.Run "winver.exe", invalidnumber ' Windows treats this as SW_HIDE because it can convert VT_EMPTY
objShell.Run "notepad.exe", "invalidnumber" ' Windows fails with error
```
2023-12-23 21:27:00 +01:00
Serge Gautherie
3558b7b985 [VFATFS] FATGetNextDirEntry(): Fix 1 MSVC 'warning C4267' (#6179)
Fix `warning C4267: '=': conversion from 'size_t' to 'USHORT', possible loss of data`
by explicitly casting to USHORT.
This is OK as the line immediately before NULL-terminates the buffer within boundary.

Addendum to commit 096a69471 (r6279).
2023-12-23 21:24:51 +01:00
Carl J. Bialorucki
77653462a9 [EXPLORER] Notification area icon improvements (#6169)
Automatically adjusts the spacing of the tray icons according to the small
or large taskbar icons setting. Also, a minor bug fix to the clock spacing
when switching between taskbar icon sizes.

CORE-19380

Update the ROS-specific CompactTrayIcons registry value from a binary
yes/no to have three states. The three states are as follows:

  0 (default) - Automatic. When small taskbar icons are used, the
  notification area will use compact tray icon spacing. When large
  taskbar icons are used, the notification area will use larger tray
  icon spacing. While no version of Windows behaves this way, I believe
  this is a smart default choice for ReactOS since users wanting large
  taskbar icons will generally expect larger tray icon spacing, while
  users with small taskbar icons may want more compact spacing.

  1 - Never Compact. Regardless of the taskbar icon size setting, the
  notification area will always use the larger spacing. This follows
  the behavior of Windows 7 and newer versions.

  2 - Always Compact. Regardless of the taskbar icon size setting, the
  notification area will always use the compact spacing. This follows
  the behavior of Windows Vista and older versions.

Fix a clock spacing bug that occurs when changing the taskbar size
before advancing to the next minute. The taskbar clock now adjusts
its spacing when the size of the taskbar changes.
2023-12-23 21:21:12 +01:00
Katayama Hirofumi MZ
f2d34ab4c9 [SDK] Add cicRealCoCreateInstance into <cicero/cicbase.h>
It looks like Cicero wants to hook CoCreateInstance.
CORE-19363
2023-12-23 11:02:40 +09:00
Katayama Hirofumi MZ
eb72347672 [CTFMON][MSCTFIME][SDK] Refactoring on Cicero design
CORE-19362
2023-12-23 09:34:41 +09:00
Katayama Hirofumi MZ
50755684cf [CTFMON][SDK] Move ClosePopupTipbar and GetPopupTipbar
Refactoring. CORE-19362
2023-12-23 08:27:47 +09:00
Katayama Hirofumi MZ
ac1a96477b [BROWSEUI] Clear pidlLastParsed on CAddressEditBox::Execute (#6183)
Based on KRosUser's gopidlparsed.patch.
Clear pidlLastParsed if necessary.
CORE-19019
2023-12-23 08:16:01 +09:00
Katayama Hirofumi MZ
19f3d6bd8d [MSCTFIME] Delay-import msctf, oleaut32, and imm32 (#6220)
Reduce DLL initialization cost.
- Delay-import msctf.dll, oleaut32.dll, and imm32.dll.
- Unlink comctl32.dll.
CORE-19360
2023-12-22 20:21:25 +09:00
Katayama Hirofumi MZ
1726ee83e7 [MSCTFIME][SDK] s/IMCCLock/CicIMCCLock/ and s/IMCLock/CicIMCLock/
Refactoring. CORE-19360
2023-12-22 14:52:49 +09:00
Katayama Hirofumi MZ
91b740f900 [SDK] Add <cicero/cicevent.h>
CORE-19361
2023-12-22 12:26:43 +09:00
Katayama Hirofumi MZ
eaa975c54e [SDK] Add <cicero/cicmutex.h>
CORE-19361
2023-12-22 12:13:27 +09:00
Katayama Hirofumi MZ
c4308d1e49 [CTFMON][MSCTFIME][SDK] Improve cicGetOSInfo
and s/OSINFO_/CIC_OSINFO/.
Adapt ctfmon and msctfime to these changes.
CORE-19360
2023-12-22 11:52:06 +09:00
Katayama Hirofumi MZ
96d525959b [BROWSEUI] Load settings on CInternetToolbar::OnContextMenu (#6182)
Based on KRosUser's go.patch.
CORE-19145
2023-12-22 06:57:33 +09:00
Thamatip Chitpong
986809c719 [NTUSER] menu.c: Fix readability after commit 1df52257
Add comments for default return value.
2023-12-22 00:22:07 +07:00
Николай Димитров
4514e91dd6 [TRANSLATION] Update and fix Bulgarian (bg-BG) translation (#5581)
NOTE: IDS_ADMINISTRATOR_NAME translation excluded for the time being.

It should be "Администратор", but bg-BG translation missing in samsrv.dll,
therefore don't translate it because otherwise this would introduce a mismatch
(samsrv falls back into english when translation is missing).

Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2023-12-21 18:09:34 +01:00
Thamatip Chitpong
979551e33e [NTUSER] accelerator.c: Fix readability after commit 95657698
Add comments for default return value.
2023-12-22 00:01:02 +07:00
Thamatip Chitpong
26f8b97886 [NTUSER] window.c: Fix readability after commit 3f5fd1d0
Add comments for default return value.
2023-12-21 23:49:03 +07:00
Katayama Hirofumi MZ
34068456a5 [COMCTL32][USER32] EDIT control: Check bCaptureState on WM_CHAR (#6206)
Based on KRosUser's edit_v2.patch.
Edit control should stop processing
characters when left mouse button
is down.
If es->bCaptureState is set, then
ignore WM_CHAR message.
CORE-10259
2023-12-21 20:24:44 +09:00
Katayama Hirofumi MZ
df9c535542 [MSCTFIME][SDK] Improve CicArray (#6217)
- Add template type parameter.
- Use size_t for indexing instead of INT.
- Protect CicArray members.
- Adapt msctfime to new CicArray.
CORE-19360
2023-12-21 20:17:35 +09:00
Katayama Hirofumi MZ
7d6fc57ec9 [CTFMON][MSCTFIME][SDK] Renaming for Cicero (#6216)
Keep consistency with Cicero naming rule.
- s/CModulePath/CicSystemModulePath/.
- s/GetOSInfo/cicGetOSInfo/.
- s/IsWow64/cicIsWow64/.
- s/GetSystemModuleHandle/cicGetSystemModuleHandle/.
- s/LoadSystemLibrary/cicLoadSystemLibrary/.
- Move cicGetOSInfo and cicIsWow64
  to <cicero/cicbase.h>.
- Delete some Cicero headers.
- Adapt ctfmon and msctfime to
  these changes.
CORE-19360
2023-12-21 19:05:33 +09:00
Katayama Hirofumi MZ
814cb188c6 [MSCTFIME][SDK] Implement CicInputContext::OnCleanupContext (#6213)
- Strengthen CicInputContext class.
- Modify <cicero/imclock.h>.
- add __cxa_pure_virtual function.
CORE-19360
2023-12-21 16:23:23 +09:00
Thamatip Chitpong
533d877aaf [NTUSER] Remove RETURN() macro (#6194)
Remove macro definition and the remaining uses.
RETURN() macro is just a wrapper for goto, most of the time it makes the code more complicated than using goto directly.
2023-12-21 11:10:46 +07:00
Katayama Hirofumi MZ
f5b0c66a05 [SDK] msctf.idl: Add ITfCleanupContextSink
CORE-19360
2023-12-21 12:44:07 +09:00
Katayama Hirofumi MZ
3401a99e0f [MSCTFIME] Half-implement CicBridge::ActivateIMMX/DeactivateIMMX
CORE-19360
2023-12-21 12:02:21 +09:00
Katayama Hirofumi MZ
e6cb6d257a [MSCTFIME] Implement CicInputContext::GetGuidAtom
CORE-19360
2023-12-21 11:04:02 +09:00
Katayama Hirofumi MZ
ee73267db8 [MSCTFIME] Fix compartment code
Fix some mistakes. CORE-19360
2023-12-21 10:42:06 +09:00
Eric Kohl
9277f5352a [SETUPAPI] CMP_RegisterNotification: Do not fail if we cannot retrieve a window title 2023-12-20 15:20:01 +01:00
Eric Kohl
92942fbbd8 [IDL] Revert commit c03899fc 2023-12-20 15:13:40 +01:00
Eric Kohl
c03899fc7f [IDL] Add missing PNP_VETO_TYPE 2023-12-20 15:09:03 +01:00
Eric Kohl
71df39b027 [IDL][SETUPAPI][UMPNPMGR] Improve PNP_RegisterNotification
- The 2nd parameter is the handle to the recipient.
- The 8th parameter is the callers process id.
2023-12-20 14:49:30 +01:00
Katayama Hirofumi MZ
954598037f [MSCTFIME][SDK] Implement CCompartmentEventSink (#6205)
- Modify <cicero/cicbase.h> and
  <cicero/cicarray.h>.
- Add CCompartmentEventSink class.
CORE-19360
2023-12-20 22:01:39 +09:00
Katayama Hirofumi MZ
209e9a7c1d [SDK] Add <cicero/cicarray.h> and <cicero/cicreg.h>
CORE-19360
2023-12-20 20:49:21 +09:00
Katayama Hirofumi MZ
9d495475f0 [MSCTFIME][MSCTF][SDK] Add compartment helper functions (#6202)
- Implement GetCompartment,
  SetCompartmentDWORD,
  GetCompartmentDWORD,
  SetCompartmentUnknown, and
  ClearCompartment helper functions.
- Add TF_DllDetachInOther prototype
  to "msctf.idl".
CORE-19360
2023-12-20 17:51:37 +09:00
Katayama Hirofumi MZ
0d8e6e781c [MSCTFIME] Implemenet CicBridge::InitIMMX/UnInitIMMX (#6201)
- Define LIBTHREAD structure.
- Add InitDisplayAttrbuteLib and
  UninitDisplayAttrbuteLib helper functions.
- Define CThreadMgrEventSink class.
- Strengthen CicBridge class.
CORE-19360
2023-12-20 16:12:57 +09:00
Katayama Hirofumi MZ
0b7405abf2 [MSCTFIME] Implement CActiveLanguageProfileNotifySink (#6200)
- Add link to msctf.dll.
- Implement CActiveLanguageProfileNotifySink class.
- Strengthen CicProfile class.
CORE-19360
2023-12-20 12:29:03 +09:00
Katayama Hirofumi MZ
f889c29af6 [MSCTFIME] Fix build of #6197 (6c438e4) Part 2
Add link to oleaut32.dll.
CORE-19360
2023-12-19 20:10:53 +09:00
Katayama Hirofumi MZ
a449125692 [MSCTFIME] Fix build of #6197 (6c438e4)
CORE-19360
2023-12-19 19:36:53 +09:00
Katayama Hirofumi MZ
6c438e4530 [MSCTFIME] Implement ImeConfigure (#6197)
Add code to CicInputContext and CicBridge classes.
Implement ImeConfigure function by using them.
CORE-19360
2023-12-19 19:23:52 +09:00
Katayama Hirofumi MZ
dfd6d7f32a [MSCTFIME] Add TLS::PeekTLS and use it
Refactoring. CORE-19360
2023-12-19 18:34:08 +09:00
Katayama Hirofumi MZ
e0eab48aee [MSCTFIME] Implement CtfImeDestroyInputContext
CORE-19360
2023-12-19 16:40:03 +09:00
Katayama Hirofumi MZ
5197d36839 [MSCTFIME] Refactor on IMC/IMCC locking
- Rename _IMCCLock as IMCCLOCK.
- Rename InternalIMCCLock as IMCCLock.
- Rename _IMCLock as IMCLOCK.
- Add get() pointer accessor of IMCCLock and IMCLOCK.
- Protect the pointer of IMCCLOCK and IMCLOCK.
CORE-19360
2023-12-19 16:12:12 +09:00
Katayama Hirofumi MZ
52bd0c0c18 [MSCTFIME][SDK] Implement CtfImeGuidAtom (#6196)
- Add CTFIMECONTEXT structure.
- Add CicInputContext class.
- Rename INPUTCONTEXTDX.dwUnknown5 as
  hCtfImeContext and retype it as HIMCC.
- Implement CtfImeGetGuidAtom by using them.
CORE-19360
2023-12-19 15:46:13 +09:00
Katayama Hirofumi MZ
6d100d5b29 [MSCTFIME][SDK] Implement CtfImeIsGuidMapEnable (#6195)
- Add link to imm32.dll.
- Add <cicero/imclock.h>.
- Add INIT_GUIDMAP constant to <immdev.h>.
- Implement CtfImeIsGuidMapEnable by using them.
CORE-19360
2023-12-19 15:23:12 +09:00
Katayama Hirofumi MZ
64378a88ba [MSCTFIME] Implement CtfImeDispatchDefImeMessage (#6193)
and add IsMsImeMessage helper funciton.
CORE-19360
2023-12-19 14:24:48 +09:00
Katayama Hirofumi MZ
084fae1eb4 [SHIMGVW] Add 'rotate and save image' buttons (#6186)
- Add IDC_ROT_CWSAVE and IDC_ROT_CCWSAVE buttons.
- Add Preview_pSaveImage helper function.
- Use it in IDC_ROT_CWSAVE and IDC_ROT_CCWSAVE
  command handling.
CORE-19358, CORE-19387
2023-12-19 13:22:53 +09:00
Hermès Bélusca-Maïto
53cc92613f [WINESYNC] Support improvements for staging patches (#5898)
- Simplify patch directory usage;
- Fix the path shown in the warning message.

The staging patch path in the warning message didn't show the correct
sub-directory where the patch resides.
2023-12-18 22:21:41 +01:00
Hermès Bélusca-Maïto
32b81a9157 [WINESYNC] When initially reverting wine-staging patches, ignore whitespace.
This fixes in particular problems when reverting created new files (i.e.
they are deleted). I suspect this is due to an endline-format "expectation"
from the git apply command.
2023-12-18 22:21:40 +01:00
Hermès Bélusca-Maïto
1d92196d2a [WINESYNC] Use the same 'winesync' author as for all the other commits the script generates.
This now correctly sets the commit author as 'winesync' (before it was
the committer's developer name) for the following types of commits:

`[WINESYNC]: revert wine-staging patchset for <MODULE_NAME>`

and

`[WINESYNC]: <MODULE_NAME> is now in sync with wine-staging <WINE_TAG>`
2023-12-18 22:21:39 +01:00
Hermès Bélusca-Maïto
f8569465ce [WINESYNC] Make the wine-staging tag optional, in which case Wine-Staging is not used. 2023-12-18 22:21:38 +01:00
Hermès Bélusca-Maïto
7f8d2d14b7 [WINESYNC] Elegantly handle empty 'files' and 'directories' lists.
Expand on Timo's commit 4b5a55516.
We may encounter cases where either the 'directories' or 'files' lists
in the .cfg YAML files are empty, and we don't want the script to throw
an exception in that case.

Furthermore, explicitly check for such empty lists when calling PyGit2
index.add_all(...) function, because if it's called on a None or empty
list, _all_ untracked files in the selected git repository get added,
which is not what we want there.
2023-12-18 22:21:37 +01:00
Hermès Bélusca-Maïto
67ca439d06 [WINESYNC] Allow using the "new" Wine-Staging patchinstall.py script.
Wine-Staging switched to staging/patchinstall.py , removing the
deprecated patches/patchinstall.sh in Feb.16, 2023 commit
c1b4af92f7
just before the v8.2 release.

In order to maintain interoperability between older and newer
Wine-Staging versions, try to run first the new script; if it fails,
fall back to the older script.
2023-12-18 22:21:36 +01:00
Hermès Bélusca-Maïto
454901ab0b [WINESYNC] Explicitly use posix paths for git file manipulations.
Whenever using git, be it on Windows CMD, git-bash on Windows, or in
*nix systems, git appears to always use posix-like paths internally.
So, enforce them with posixpath when building/concatenating paths that
are going to be passed to pygit2 functions.

Otherwise, exceptions like the following one happens:

```
  File "./winesync.py", line 296, in revert_staged_patchset
    self.reactos_index.remove(os.path.join(self.staged_patch_dir, patch_file_name))
[... skipped ...]
OSError: index does not contain sdk\tools\winesync\setupapi_staging\0002-wine-staging-4.0-setupapi_winetest.patch at stage 0
```

(The git index actually contains the specified path, but in "posix" form
with slash-separators.)

On *nix platforms, these changes should not matter.
2023-12-18 22:21:35 +01:00
Hermès Bélusca-Maïto
e638ff59d1 [WINESYNC] Fix some apparent problems with commits manipulation with pygit2. 2023-12-18 22:21:34 +01:00
Hermès Bélusca-Maïto
d566273583 [WINESYNC] Minor formatting. 2023-12-18 22:21:33 +01:00
Timo Kreuzer
1831bc6add [NTOS:KE/x64] Implement initial IPI code 2023-12-18 23:16:39 +02:00
Timo Kreuzer
e6201ea61e [USERENV] Use RegCopyTreeW from advapi32_vista 2023-12-18 23:14:14 +02:00
Timo Kreuzer
0db5d8a388 [SERVICES] Use RegCopyTreeW from advapi32_vista 2023-12-18 23:14:14 +02:00
Timo Kreuzer
eef22cc036 [ADVAPI32] Unify source for vista registry functions
- In advapi32_vista compile the code from advapi32/reg/reg.c
- Export RegCopyTreeW from advapi32_vista
2023-12-18 23:14:14 +02:00
Timo Kreuzer
d28bbf458a [ADVAPI32] Fix bugs in RegpCopyTree 2023-12-18 23:14:14 +02:00
Katayama Hirofumi MZ
a3288862e1 [MSCTFIME] Implement ImeDestroy and CtfImeDestroyThreadMgr (#6189)
- Define ITfSysHookSink interface.
- Add implementation to CicBridge class.
- Implement ImeDestroy and CtfImeDestroyThreadMgr functions.
- Implement CtfImeCreateThreadMgr function.
CORE-19360
2023-12-18 21:56:21 +09:00
Eric Kohl
ec0a300f2b [UMPNPMGR] Broadcast a WM_DEVICECHANGE message after a device install was queued 2023-12-18 11:17:08 +01:00
Katayama Hirofumi MZ
8f8db4ddb6 [MSCTFIME][IMM32][SDK] Implement CtfImeInquireExW (#6187)
- Use C++.
- Adapt INPUTCONTEXTDX to C++.
- Add some global variables.
- Add DllShutDownInProgress function.
- Add TLS class.
- Modify CtfImeInquireExW prototype.
- Modify Imm32InquireIme for
  CtfImeInquireExW.
CORE-19360
2023-12-18 19:11:17 +09:00
Eric Kohl
54adb5e45c [REGEDIT] Display REG_RESOURCES_REQUIREMENTS_LIST 2023-12-18 09:08:27 +01:00
Joachim Henze
1061ed4d28 [SHELL32] *.rc 640x480-ify IDD_FOLDER_OPTIONS_* (#6165) CORE-1762
This makes the 3 dlgs fit the screen in y for 640x480 desktop resolution like their MS role-models.

Beside that also fixes:
- the wrong vertical position of IDC_FOLDER_OPTIONS_TASKICON and wrong horizontal position of ICON IDI_SHELL_PROGRAMS_FOLDER2 for all translations
- fix some accelerator collisions for de-DE and place many FIXMEs for other translations that still have some
- improve the distance on the lower end (height) of the 3 groupboxes to look much better than before in IDD_FOLDER_OPTIONS_GENERAL for all langs
- bg-BC.rc in 1st dlg IDD_FOLDER_OPTIONS_GENERAL the text of the radiobuttons was historically shifted to the left (as part of an ancient workaround for the too long strings) and as a consquence the text was at the same area where the icons are. Fixed now.
- en-US: text truncation for IDC_FOLDER_OPTIONS_DOUBLECLICK string (affected also many other langs)
- es-ES: fix text truncation on button IDC_FOLDER_OPTIONS_RESTORE
- id-ID: BS_MULTILINE in IDC_FOLDER_OPTIONS_ULBROWSER and IDC_FOLDER_OPTIONS_ULPOINT. Added missing spacing between IDC_VIEW_APPLY_TO_ALL and IDC_VIEW_RESET_ALL buttons
- it-IT.rc fix text truncation in IDC_FOLDER_OPTIONS_RESTORE
- ro-RO.rc fix text truncation in IDC_FOLDER_OPTIONS_RESTORE
- uk-UA.rc lacked the ICON IDI_SHELL_PROGRAMS_FOLDER2 entirely (as a consequence of a historic workaround)
- fix text truncation for many languages for the radiobuttons in IDD_FOLDER_OPTIONS_GENERAL (1st dlg)
- fix text truncation for all languages for the "Opens with:" text in IDD_FOLDER_OPTIONS_FILETYPES (3rd dlg)
- strip unneeded dummy texts for IDC_FILETYPES_APPNAME
- take over "Free Space" instead of "Size available" for IDS_SHV_COLUMN_DISK_AVAILABLE which was done for en-US.rc some years ago, but was forgotten to do as well for other languages back then
- ... and so on

CORE-1762
2023-12-18 07:05:07 +01:00
Thamatip Chitpong
1df5225708 [NTUSER] menu.c: Don't use RETURN() macro (#6185)
Also remove parentheses around return value.
2023-12-18 12:04:57 +07:00
Katayama Hirofumi MZ
b6274fdde1 [SHIMGVW] Unlock file (#6181)
- Add m_pMemStream to PREVIEW_DATA structure.
- Add Preview_pFreeImage helper function.
- Add MemStreamFromFile helper function to make
  a memory stream.
- Avoid file locking by using a memory stream and
  GdipLoadImageFromStream.
CORE-19183
2023-12-18 12:37:50 +09:00
Mark Jansen
e8f9564c20 [NTDLL_APITEST] Add test for RtlGetProcessHeaps 2023-12-17 22:28:40 +01:00
Mark Jansen
b8cdd1a879 [RTL] Implement RtlGetProcessHeaps 2023-12-17 22:28:24 +01:00
Serge Gautherie
0ba94c83b5 [SHELL32] AddStaticContextMenusToMenu(): Fix 3 MSVC 'warning C4805' (#6177)
- Use 'bool' type.
- Do not abuse '|=' operator.

Addendum to commit 7fb91d98f
2023-12-17 22:20:06 +01:00
Serge Gautherie
e1c68dcba0 [APISETS] Forward _seh_longjmp_unwind4() to msvcrt (#6176)
Addendum to commit 1a6b6a27b
2023-12-17 22:19:00 +01:00
Whindmar Saksit
c1f9ea10aa [REGEDIT] Fix inverted case matching when searching value data (#6159) 2023-12-17 22:16:34 +01:00
Whindmar Saksit
5be53f553c [BROWSEUI] Don't call SHOpenFolderAndSelectItems with full pidls and don't leak them (#6153)
- The children passed to SHOpenFolderAndSelectItems are not supposed to be full pidls.
- Don't leak the array from IShellFolderView::GetSelectedObjects.
2023-12-17 22:16:19 +01:00
Whindmar Saksit
7ffc31554d [CSCRIPT][WSCRIPT] Implement Sleep (#6146) 2023-12-17 22:14:45 +01:00
Serge Gautherie
bf7e7c2383 [WIN32SS:GDI] eng/error.c: Minor code tweaks (#6128)
- Remove a useless debug.h include.
- Use the initialized pTeb pointer.
- Remove a useless else.
- Add a SAL2 annotation.
2023-12-17 22:13:45 +01:00
Serge Gautherie
91d291f766 [SDK:CMAKE] writing_CmakeLists_for_ReactOS.txt: Fix typos (#6105) 2023-12-17 22:12:25 +01:00
Whindmar Saksit
82c07abf1a [USER32] Support loading icons from data file module (#6065)
GetModuleFileName() fails on LOAD_LIBRARY_AS_DATAFILE causing LoadImage to fail.
Use a fake filename for LR_SHARED (with same format as Windows).
This may not be a good design, but it does match Windows' behaviour.

+ Added test.
2023-12-17 22:11:50 +01:00
Eric Kohl
8f349ab3c2 [NETCFGX] Create only one "Alternative Configuration" tab
- Check for the presence of the second tab.
- Remove unnecessary checks for checked radiobuttons.

CORE-19328
2023-12-17 21:50:20 +01:00
Hermès Bélusca-Maïto
bb7661312e [SETUP:REACTOS] Fix identical expression in treelist.c
Supersedes PRs #3226 and #5199 by Kyle_Katarn.
CORE-16036
2023-12-17 20:58:32 +01:00
Hermès Bélusca-Maïto
63d5423853 [SETUP:REACTOS] Simplify CONTROL "ComboBox" to COMBOBOX resource declaration. 2023-12-17 20:57:11 +01:00
Hermès Bélusca-Maïto
bd51cd14d6 [SETUP:REACTOS] Fix layout of the Restart-page. 2023-12-17 20:57:10 +01:00
Mark Jansen
474a8ea46b Remove liberapay 2023-12-17 16:27:45 +01:00
Andrew Shelkovenko
44c7d9ad42 [DXHALTEST] Correct some typos (#5737)
I.e. translate GreatLordish into proper English :)

Reviewed-by: Robert Naumann <gonzomdx@gmail.com>
Reviewed-by: Joachim Henze <joachim.henze@reactos.org>
Reviewed-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
Reviewed-by: Carl J. Bialorucki <cbialo2@outlook.com>
2023-12-17 15:56:39 +03:00
Whindmar Saksit
19a0f14bb1 [SHELL32] ShellDispatch::ShellExecute must default to displaying the window (#6143)
SW_HIDE is not the correct default show mode.

This can be reproduced by simple script:
WScript.CreateObject("Shell.Application").ShellExecute("calc.exe");
2023-12-17 15:48:24 +03:00
Thamatip Chitpong
95657698e7 [NTUSER] accelerator.c: Don't use RETURN() macro (#6166) 2023-12-17 17:22:58 +07:00
Dmitry Borisov
bbe6b07612 [DC21X4] Fix minor issues (#6161)
- The return value got lost when refactoring the setup function
- The check against 0xFFFFFFFF was meant to reject an empty EEPROM image
- Add missing PAGED_CODE(); macros

CORE-8724
2023-12-17 12:00:25 +03:00
Serge Gautherie
f7d612f3e3 [BASESRV][CSRLIB][NTVDM] Add missing \n to DPRINT() calls (#5951)
and promote 1 DPRINT().
2023-12-16 23:57:35 +01:00
Jose Carlos Jesus
80751952ba [USETUP] Shorten the Portuguese translation to fit on one line (#6174) 2023-12-16 20:58:08 +00:00
Hermès Bélusca-Maïto
231ac99414 [BROWSEUI] Fix item deletion in CExplorerBand::OnTreeItemDeleted().
Addendum to commit 1b634b38e (r73706)
CORE-10838

The TVN_DELETEITEM notification sends the info about the item to be
deleted in the itemOld member of the NMTREEVIEW structure, and not in
the itemNew one!
2023-12-16 15:25:52 +01:00
Timo Kreuzer
835438f614 [NDK] Sync KUSER_SHARED_DATA with XDK 2023-12-16 14:04:36 +02:00
Timo Kreuzer
5f0e98ea3c [XDK] Add offsets to KUSER_SHARED_DATA and improve structure
Offsets taken from vergiliusproject.com.
2023-12-16 14:04:36 +02:00
Timo Kreuzer
aafe33ca85 [XDK] Remove obsolete _ANONYMOUS_STRUCT/UNION 2023-12-16 14:04:36 +02:00
Timo Kreuzer
f42e9029f7 [XDK] Apply standard formatting to KUSER_SHARED_DATA 2023-12-16 14:04:36 +02:00
Timo Kreuzer
766a093f70 [XDK][NDK] Update XSTATE definitions 2023-12-16 14:04:36 +02:00
Timo Kreuzer
1a6b6a27b2 [MSVCRT] Initialize exception support in DllMain 2023-12-16 13:52:15 +02:00
Timo Kreuzer
86f2d4cd4e [NTDLL] Initialize keyed event for condition variables 2023-12-16 13:52:15 +02:00
Katayama Hirofumi MZ
fed7ee70a6 [SHIMGVW] Enable middle button dragging (#6173) 2023-12-16 20:46:40 +09:00
Katayama Hirofumi MZ
e62d12b140 [SHIMGVW] Enable scrolling (#6172)
- Add m_xScrollOffset and m_yScrollOffset to
  PREVIEW_DATA structure.
- Add ZoomWnd_UpdateScroll helper function.
- Handle WM_HSCROLL and WM_VSCROLL messages.
- Enable mouse wheel scrolling.
CORE-19358
2023-12-16 19:45:37 +09:00
Katayama Hirofumi MZ
69fb160a48 [SHELL32] Improve Japanese (ja-JP) translation
CORE-18706
2023-12-16 12:57:17 +09:00
Katayama Hirofumi MZ
de7f1ceeef [BOOTDATA][INF] hivecls.inf: Add Japanese (ja-JP) translation
CORE-18706
2023-12-16 12:55:01 +09:00
Katayama Hirofumi MZ
e320346e9e [EVENTVWR] Improve Japanese (ja-JP) translation
CORE-18706
2023-12-16 12:42:58 +09:00
Katayama Hirofumi MZ
98b2451dfe [CHARMAP] BM_CLICK's wParam must be zero 2023-12-16 10:33:03 +09:00
Katayama Hirofumi MZ
d55add359c [COMCTL32][USER32] Button: Fix DLGC_... handling (#6168)
Based on KRosUser's button.patch.
- Fix DLGC_... handling by using & operator
  in BUTTON_CheckAutoRadioButton
  in button.c.
- Fix DLGC_... handling by using & operator
  in IsDialogMessageW in dialog.c.
- BM_CLICK's wParam must be zero.
CORE-17210
2023-12-16 09:29:13 +09:00
Andrei Miloiu
8ab2e5a28a [REG] Update Romanian (ro-RO) translation (#6137) 2023-12-15 11:39:56 +01:00
Andrei Miloiu
40f17bc9f2 [HDWWIZ] Update Romanian (ro-RO) translation (#6080) 2023-12-15 11:38:38 +01:00
Katayama Hirofumi MZ
f0179741d1 [SHIMGVW] Fix and improve zooming (#6167)
- Add WC_ZOOM window class and
  use it for zooming.
- Add ZoomWnd_OnDraw function
  and use it in ZoomWnd_OnPaint.
- Use memory bitmap to reduce flickering.
- Make rendering pixel-perfect.
CORE-19220
2023-12-15 15:16:50 +09:00
Serge Gautherie
ae534e8cee [USER32] GetNextDlgGroupItem(): Remove WineSync copy-pasta (#6162)
Improve WineSync.
Addendum to 61fb8a2 (r19831).
2023-12-14 14:41:58 +00:00
Thamatip Chitpong
3f5fd1d09e [NTUSER] window.c: Don't use RETURN() macro (#6150) 2023-12-14 14:36:38 +00:00
Joachim Henze
d387c799ed [SHELL32] 640x480-ify four dialogs (#6004)
IDD_DRIVE_PROPERTIES
IDD_DRIVE_TOOLS
IDD_DRIVE_HARDWARE
IDD_FOLDER_CUSTOMIZE

Afterwards all 4 dialogs do display fine even with 640x480 screen resolution. Same as their MS role-models do.

I also fixed some accelerator collisions FCIDM_SHVIEW_CUT and synced some forgotten syncs for IDM_CUT accel.
I also moved checkboxes further to the left in the checkdisk dialog, as it was done for en-US and some other languages before, but it was forgotten in other languages (AUTOCHECKBOX.*14000 and AUTOCHECKBOX.*14001)

the french accelerator-changes were
Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2023-12-14 13:54:11 +00:00
Serge Gautherie
1244659d4c [NTOSKRNL] Remove remnant internal/arm/asmmacro.S (#6052)
Addendum to 6212c82 (r67715).
2023-12-14 13:48:31 +00:00
Katayama Hirofumi MZ
946b906ec8 [SHIMGVW] Initial implementation of Slide Show (#6163)
Add Slide Show feature.
- Add Preview_StartSlideShow and Preview_EndSlideShow functions.
- Add g_hMainWnd and g_hwndFullscreen global variables.
- Modify ZoomWnd_OnPaint to display Slide Show correctly.
- Add a timer to proceed Slide Show.
CORE-19358
2023-12-14 17:38:08 +09:00
Katayama Hirofumi MZ
079b36542c [CTFMON][SDK] Add ctfmon.exe (#6149)
ctfmon.exe will be a replacement of our
kbswitch.exe in the future. That is the
front-end of Language Bar. It is needed
to support TIPs.
- Add ctfmon.exe at base/applications/ctfmon.
- Add <cicero/cicbase.h>,
  <cicero/CModulePath.h>, and
  <cicero/osinfo.h> headers and use them.
CORE-19362
2023-12-13 21:37:15 +09:00
Katayama Hirofumi MZ
a19ba4760e [MSCTF] Add ADD_IMPORTLIB to CMakeLists.txt spec2def
CORE-19361
2023-12-13 11:10:06 +09:00
Katayama Hirofumi MZ
bfd5d37fe6 [MSCTF][SDK][UUID] Strengthen msctf.idl and msctf.spec (#6158)
- Add some function prototypes to
  sdk/include/psdk/msctf.idl.
- Modify dll/win32/msctf/msctf.spec.
- Modify uuid.
CORE-19362
2023-12-13 07:37:45 +09:00
Katayama Hirofumi MZ
3a2c2cbe60 [SDK][UUID] Add ctffunc.idl (#6157)
- Add ctffunc.idl to sdk/include/psdk.
- Modify uuid.
CORE-19362
2023-12-13 07:36:20 +09:00
Katayama Hirofumi MZ
db10ce0f9f [USER32] Skip STATIC controls on arrow keys (#6142)
- Skip DLGC_STATIC controls on array keys.
- Avoid infinite loop by using hwndFirst variable.
CORE-6127
2023-12-13 07:04:52 +09:00
Katayama Hirofumi MZ
be8e4c691d [MSCTFIME] Implement ImeRegisterWord etc. (#6160)
- Implement ImeRegisterWord, ImeUnregisterWord,
  ImeGetRegisterWordStyle, ImeEnumRegisterWord,
  ImeConversionList, ImeEscape, ImeSelect, and
  ImeSetActiveContext functions.
- These functions in MSCTFIME basically do
  nothing.
CORE-19360
2023-12-12 22:43:36 +09:00
Katayama Hirofumi MZ
9b8a5fc5f0 [COMCTL32] Tab control: Use InvalidateRect in TAB_SetItemT update (#6154)
Based on KRosUser's tab.patch.
- In TAB_SetItemT function, use
  InvalidateRect instead of
  TAB_InvalidateTabArea.
CORE-11454
2023-12-12 06:27:46 +09:00
Katayama Hirofumi MZ
17617221ce [MSCTFIME][SDK][USER32] Add msctfime.ime (stub) (#6141)
## Overview
1. msctfime.ime is an IME file interface
  for new-style IMEs a.k.a. "Text Input
  Processors" (TIPs).
2. msctfime.ime is loaded as old-style
  IME file at ImmLoadLayout in specific
  condition.
3. msctfime.ime communicates with
  the current TIP (This feature is not
  implemented yet).

## Proposed changes
- Add msctfime module at dll/ime/msctfime.
- The functions in this module are currently
  stub.
- Move IME file interface declarations from
  <imm.h> to <ddk/immdev.h>.
- Modify ImmNotifyIME, NotifyIME, and
  ImeProcessKey prototypes for x64
  compliance.
CORE-19360
2023-12-11 22:37:25 +09:00
Katayama Hirofumi MZ
04b1e8945b [COMCTL32][USER32] ComboBox: Do default processing on WM_SYSKEYDOWN (#6152)
Based on KRosUser's combo.patch. Enable Alt+F4 on ComboBox.
Do default processing on WM_SYSKEYDOWN if necessary.
CORE-18231
2023-12-11 22:04:18 +09:00
Katayama Hirofumi MZ
ea59e93e31 [FONTS] Make Arial gender glyphs +66% larger (#6156)
Make U+2642 and U+2640 glyphs +66% larger in
ReactOS "Arial" font.

- Modify arial.ttf, ariali.ttf, arialbd.ttf, and
  arialbi.ttf font files by FontForge.
- Modify media/fonts/doc/Arial/ChangeLog.txt.
- Underline values are hacked to do workaround on
  FontForge's bug.

Copyright text:
Digitized data copyright (c) 2010 Google Corporation.
Copyright (c) 2012 Red Hat, Inc.
Copyright (c) 2019-2023 Katayama Hirofumi MZ.

License: SIL Open Font License, Version 1.1
Font File Version: 2.00.1
CORE-19346
2023-12-11 20:53:45 +09:00
Katayama Hirofumi MZ
e2b1ee9a53 [SETUP][BOOTDATA][INF] Add font substitute ('Segoe UI Symbol' to 'Arial') (#6155)
Based on CORE-19346 "segoe-ui-symbo.patch".
In order to display gender glyphs (U+2642 and
U+2640; ♂ and ♀), we add a font substitute from
"Segoe UI Symbol" to "Arial".

ReactOS Arial has many symbol glyphs, so I think
we can use it for "Segoe UI Symbol" font substitute.

The glyph size problem will be fixed in #6156.
CORE-19346
2023-12-11 20:51:04 +09:00
Katayama Hirofumi MZ
a837138dfc [SHIMGVW] Destroy window to exit app in Preview_Edit
CORE-19358
2023-12-11 15:51:55 +09:00
Katayama Hirofumi MZ
2de6e7559e [SHIMGVW] Refactor Part 3 (#6148)
Improve code flexibility.
- Remove g_fnPrevProc, g_hDispWnd, g_hToolBar, and g_Anime global variables.
- Declare PREVIEW_DATA structure and use it.
- Encapsulate preview window by using user data.
CORE-19358
2023-12-11 07:52:18 +09:00
Katayama Hirofumi MZ
045e9dee58 [SDK][UUID] Strengthen <ctfutb.h> (#6135)
For supporting Text Input Processors (TIPs).
Add many TSF interfaces and definitions into "ctfutb.idl".
CORE-19268
2023-12-11 07:51:17 +09:00
Katayama Hirofumi MZ
dc2d2232f4 [SHIMGVW] Use HeapAlloc/HeapFree instead of malloc/calloc/free
malloc/free are slow. CORE-19358
2023-12-10 18:09:59 +09:00
Katayama Hirofumi MZ
468a5492a9 [SHIMGVW] Support Drag & Drop
- Use DragAcceptFiles and WM_DROPFILES.
CORE-19358
2023-12-10 16:55:34 +09:00
Katayama Hirofumi MZ
0b1d6d6b20 [SHIMGVW] Refactoring Part 2 (#6147)
- Move Anime_GetFrameDelay and Anime_Step.
- Remove one parameter from ImageView_SaveSettings.
- Rename some preview-window functions as "Preview_...".
- Rename ImageView_CreateWindow as ImageView_Main.
- Use lParam of WM_CREATE.
CORE-19358
2023-12-10 16:42:22 +09:00
Katayama Hirofumi MZ
0fe0b40ee1 [SHIMGVW] Split animation code to anime.c (#6144)
Improve code flexibility.
Add anime.c and move animation code to anime.c.
CORE-19358
2023-12-10 14:07:46 +09:00
Katayama Hirofumi MZ
5a2c451696 [SHIMGVW] Some minor refactoring (#6139)
Improve human readability. Reduce code amount.
CORE-19358
2023-12-10 08:20:17 +09:00
Katayama Hirofumi MZ
8be912147b [ICCVID][MSRLE32][MSVIDC32] Add VfW codecs version info (#6118)
Based on KRosUser's vfw.patch.
CORE-15382
2023-12-10 06:50:58 +09:00
Andrei Miloiu
623e857a43 [MAIN] Update Romanian (ro-RO) translation (#6013) 2023-12-09 20:24:42 +01:00
Andrei Miloiu
63276e6343 [MYEVENTPROVIDER_DLL][MC] Update Romanian (ro-RO) translation to message table (#6075) 2023-12-09 20:23:30 +01:00
Andrei Miloiu
3c2e1c182e [LSASRV] Update Romanian (ro-RO) translation (#6078) 2023-12-09 20:23:03 +01:00
Andrei Miloiu
053caa1dff [NEWDEV] Update Romanian (ro-RO) translation (#6084) 2023-12-09 20:21:36 +01:00
Andrei Miloiu
8fe995f978 [DXDIAG] Update Romanian (ro-RO) translation (#6085) 2023-12-09 20:21:06 +01:00
Andrei Miloiu
0be73e7253 [RAPPS] Improve Romanian (ro-RO) translation (#6086) 2023-12-09 20:20:31 +01:00
Andrei Miloiu
ec0e51a265 [SHELL32] Update Romanian (ro-RO) translation (#6087) 2023-12-09 20:20:12 +01:00
Andrei Miloiu
9ecf552fe4 [DRIVERS][INF] Update Romanian (ro-RO) translation (#6088) 2023-12-09 20:19:54 +01:00
Andrei Miloiu
28dcfe246d [APPWIZ] Improve Romanian (ro-RO) translation (#6090) 2023-12-09 20:19:09 +01:00
Andrei Miloiu
512715bd89 [LABEL] Update Romanian (ro-RO) translation (#6091) 2023-12-09 20:18:34 +01:00
Andrei Miloiu
8f0885d069 [AT] Update Romanian (ro-RO) translation (#6092) 2023-12-09 20:18:05 +01:00
Andrei Miloiu
ec2465218f [CTM] Update Romanian (ro-RO) translation (#6093) 2023-12-09 20:17:44 +01:00
Andrei Miloiu
2c427f647a [EXPLORER] Update Romanian (ro-RO) translation (#6094) 2023-12-09 20:17:06 +01:00
Andrei Miloiu
5cdee40fa4 [MAGNIFY] Update Romanian (ro-RO) translation (#6095) 2023-12-09 20:15:19 +01:00
Andrei Miloiu
2498935acd [COMCTL32] Update Romanian (ro-RO) translation (#6096) 2023-12-09 20:14:55 +01:00
Andrei Miloiu
e198f54624 [RUNONCE] Update Romanian (ro-RO) translation (#6098) 2023-12-09 20:14:32 +01:00
Andrei Miloiu
814b9e3f2c [DEVMGR] Update Romanian (ro-RO) translation (#6099) 2023-12-09 20:13:43 +01:00
Andrei Miloiu
5c77620c17 [SYSSETUP] Update Romanian (ro-RO) translation (#6100) 2023-12-09 20:13:20 +01:00
Andrei Miloiu
3d75fddb25 [ZIPFLDR] Update Romanian (ro-RO) translation (#6101) 2023-12-09 20:12:47 +01:00
Andrei Miloiu
ea858b3d98 [STOBJECT] Update Romanian (ro-RO) translation (#6102) 2023-12-09 20:12:07 +01:00
Andrei Miloiu
a4f4a2b199 [HDWWIZ] Update Romanian (ro-RO) translation (#6103) 2023-12-09 20:11:19 +01:00
Andrei Miloiu
9b69ef3692 [NTVDM] Update Romanian (ro-RO) translation (#6104) 2023-12-09 20:10:47 +01:00
Andrei Miloiu
75de397181 [ACCESS] Update Romanian (ro-RO) translation (#6111) 2023-12-09 20:09:58 +01:00
Andrei Miloiu
787b41680c [NETSHELL] Update Romanian (ro-RO) translation (#6112) 2023-12-09 20:09:25 +01:00
Andrei Miloiu
5d57e0d81b [NETID] Update Romanian (ro-RO) translation (#6113) 2023-12-09 20:07:23 +01:00
Andrei Miloiu
bd04ddc294 [SYSDM] Update Romanian (ro-RO) translation (#6114) 2023-12-09 20:06:46 +01:00
Andrei Miloiu
2d8e4911a2 [RASDLG] Update Romanian (ro-RO) translation (#6115) 2023-12-09 20:06:04 +01:00
Andrei Miloiu
ffb7f0ea1b [PCICLASS][MC] Update Romanian (ro-RO) translation (#6116) 2023-12-09 20:04:43 +01:00
Andrei Miloiu
6b82ed575c [CMD] Update Romanian (ro-RO) translation (#6117) 2023-12-09 20:04:09 +01:00
Andrei Miloiu
39ac6187db [OPENGLCFG] Update Romanian (ro-RO) translation (#6119) 2023-12-09 20:03:38 +01:00
Andrei Miloiu
53b195f49f [HELP] Update Romanian (ro-RO) translation (#6120) 2023-12-09 20:03:12 +01:00
Andrei Miloiu
3c5bbd4e95 [DISKPART] Update Romanian translation (#6121) 2023-12-09 20:02:34 +01:00
Andrei Miloiu
4c9c49aa64 [TAPIUI] Improve Romanian (ro-RO) translation (#6124) 2023-12-09 20:01:57 +01:00
Andrei Miloiu
35f386bf0c [WINMM] Update Romanian (ro-RO) translation (#6125) 2023-12-09 20:01:09 +01:00
Andrei Miloiu
48e276b180 [IERNONCE] Update Romanian (ro-RO) translation (#6126) 2023-12-09 20:00:40 +01:00
Andrei Miloiu
d7e4bda3ed [TIMEDATE] Update Romanian (ro-RO) translation (#6136) 2023-12-09 20:00:11 +01:00
Katayama Hirofumi MZ
b7dcc1024b [IMM32] Rewrite ImmLoadLayout (#6138)
ImmLoadLayout was buggy.
- Don't do zero fill pImeInfoEx.
- Simplify registry handling.
- Don't reset pImeInfoEx->fLoadFlag if failed early.
CORE-19268
2023-12-09 09:49:57 +09:00
Katayama Hirofumi MZ
414f3da7a6 [COMCTL32] IP Address control: Fix background drawing (#6133)
Based on KRosUser's suggestion.
bgCol is a COLORREF value, not a color index.
Create a brush from bgCol.
CORE-9853
2023-12-09 05:00:39 +09:00
Timo Kreuzer
e5c5efe2ad [NTOS:KE/x64] Set the idle thread's IdealProcessor for application processors 2023-12-08 20:16:51 +02:00
Timo Kreuzer
b1a9e72e92 [NTOS:KE/x64] Do not call HalInitSystem from application processors 2023-12-08 20:16:51 +02:00
Timo Kreuzer
d0f6874d92 [NTOS:KE/x64] Factor out KiIntializeProcessorBootStructures 2023-12-08 20:16:51 +02:00
Timo Kreuzer
8c466c3e36 [NTOS:KE/x64] Improve KiInitializePcr 2023-12-08 20:16:51 +02:00
Timo Kreuzer
d2a3b1c791 [NTOS:KE/x64] Factor out KiInitializeP0BootStructures 2023-12-08 20:16:51 +02:00
Timo Kreuzer
e655594609 [NTOS:KE/x64] (Re)move initialization of IRQL and TR 2023-12-08 20:16:51 +02:00
Timo Kreuzer
0a7255e4bf [NTOS:KE/x64] Move Initialization of TSS 2023-12-08 20:16:51 +02:00
Timo Kreuzer
160980aba1 [NTOS:KE/x64] Move initialization of PCR 2023-12-08 20:16:51 +02:00
Timo Kreuzer
ba62dd0aaa [NTOS:KE/x64] Move initialization of KeLoaderBlock 2023-12-08 20:16:51 +02:00
Timo Kreuzer
e1497d43d7 [NTOS:KE/x64] Improve KiInitializeTss 2023-12-08 20:16:51 +02:00
Timo Kreuzer
bbe16859b5 [NTOS:KE/x64] Rename P0 boot stacks 2023-12-08 20:16:51 +02:00
Timo Kreuzer
6c5b3f203d [NTOS:KE/x64] Add back a stubs.c file 2023-12-08 19:38:59 +02:00
Timo Kreuzer
57c7f06004 [NTOS:KE/x64] Rename stubs.c to traphandler.c 2023-12-08 19:38:59 +02:00
Timo Kreuzer
230f7c7f3c [HALX86] Some improvements / bugfixes for IPI support functions 2023-12-08 19:28:57 +02:00
Timo Kreuzer
d8d46a00c3 [HALX86] Use InterlockedBitTestAndSetAffinity instead of InterlockedBitTestAndSet 2023-12-08 19:28:57 +02:00
Timo Kreuzer
d87b45bee7 [NDK] Add Affinity helper inline functions 2023-12-08 19:28:57 +02:00
Katayama Hirofumi MZ
57e7f0b321 [SHIMGVW] Add g_ or s_ prefix to global variables (#6134)
Renaming global variables:
- s/hInstance/g_hInstance/
- s/shiSettings/g_Settings/
- s/currentFile/g_pCurrentFile/
- s/image/g_pImage/
- s/PrevProc/g_fnPrevProc/
- s/hDispWnd/g_hDispWnd/
- s/hToolBar/g_hToolBar/
- s/ZoomPercents/s_nZoomPercents/
- s/ZoomSteps/s_ZoomSteps/
- s/Buttons/s_Buttons/
- s/BtnConfig/s_ButtonConfig/
CORE-19358
2023-12-08 21:35:43 +09:00
Katayama Hirofumi MZ
e7f6b473e6 [SHIMGVW] Implement ImageView_Delete (#6132)
- Call SHFileOperation to delete.
- Rebuild the file list and load the
  next file.
CORE-19358
2023-12-08 15:30:55 +09:00
Katayama Hirofumi MZ
0faa1561a6 [SHIMGVW] Check VK_CONTROL on ImageView_OnMouseWheel
CORE-19358
2023-12-08 15:03:18 +09:00
Katayama Hirofumi MZ
77ab709b61 [SHIMGVW] Improve window size handling
CORE-19358
2023-12-08 14:56:12 +09:00
Katayama Hirofumi MZ
a500b513b0 [SHIMGVW] Use WM_GETMINMAXINFO instead of WM_SIZING
to limit window size. CORE-19358
2023-12-08 14:30:35 +09:00
Katayama Hirofumi MZ
d178e6bb41 [SHIMGVW] Add VK_OEM_PLUS and VK_OEM_MINUS to IDR_ACCELERATOR
Improve keyboard usability. CORE-19358
2023-12-08 14:22:56 +09:00
Katayama Hirofumi MZ
0f519a783c [SHIMGVW] Implement IDC_BEST_FIT
- Add two parameters to UpdateZoom.
- Enable/disable IDC_BEST_FIT and IDC_REAL_SIZE
  buttons in UpdateZoom.
- Call ResetZoom on IDC_BEST_FIT.
CORE-19358
2023-12-08 11:44:03 +09:00
Katayama Hirofumi MZ
02312c7bf1 [SHIMGVW] Main window class must be "ShImgVw:CPreviewWnd"
and window style is (WS_VISIBLE | WS_CLIPSIBLINGS | WS_OVERLAPPEDWINDOW).
CORE-19358
2023-12-08 11:01:00 +09:00
Whindmar Saksit
e4d03f471b [REGEDIT][REG] Limit registry type to 8 hex digits when importing (#6063)
Matches Windows and lets the Wine13i test in regedit_winetest pass.
2023-12-04 16:46:06 +01:00
Serge Gautherie
0c568c0c90 [XDK] kefuncs.h: Unduplicate 2 function definitions (#6057) 2023-12-04 13:49:57 +01:00
Hermès Bélusca-Maïto
1797566d73 [IMM32] Include ldrfuncs.h for RtlDllShutdownInProgress (#6071) 2023-12-04 13:47:39 +01:00
Hermès Bélusca-Maïto
48456d9108 [NDK] ldrfuncs.h: Add RtlDllShutdownInProgress; make the header C++-compatible (#6071)
The function is added here, because it is loader-related
and thus making sense there, instead of in rtlfuncs.h.
2023-12-04 13:47:33 +01:00
Thamatip Chitpong
2dd0c6c32b [ACPI] Add acpi.rc to CMakeLists (#6089)
Fix missing version info.
2023-12-04 07:17:08 +07:00
Joachim Henze
a6341b49d8 [NETSHELL] 640x480-ify complete that module (#6109)
Addendum to (#5899)

The change in sk-SK.rc
IDD_NETPROPERTIES DIALOGEX 0, 0, 246, 246
to
IDD_NETPROPERTIES DIALOGEX 0, 0, 246, 216
is an addendum to (#5899). In sk-SK.rc that line was accidentally forgotten to be changed.

The change to "all" rc's:
IDD_STATUS DIALOGEX 0, 0, 200, 280
to
IDD_STATUS DIALOGEX 0, 0, 200, 180
changes the last dialog, that had a greater value here than 220 (which is the max we can use for 640x480-ability).
I decided to use 180 for 2 reasons:
1.) bg-BG.rc already used IDD_STATUS DIALOGEX 0, 0, 200, 180 here, so we can sync all langs to that.
2.) We have some dialogs nearby which do use that same dimension for all langs, e.g.:
IDD_LAN_NETSTATUS DIALOGEX 0, 0, 200, 180
IDD_LAN_NETSTATUSADVANCED DIALOGEX 0, 0, 200, 180
2023-12-03 21:35:57 +00:00
Joachim Henze
471cceb14f [TASKMGR] RC trivia el-GR.rc pt-BR.rc pt-PT.rc ru-RU.rc sv-SE.rc (#6097)
As the title says: Just some trivia
2023-12-03 21:35:01 +00:00
Joachim Henze
6a7315228c [NETCFGX] IDD_TCPIP_ALTCF_DLG Fix radiobutton (#6083)
Do to the 2nd dialog the same what (#6049) did for the first dialog:
- Flip the controls

- move vertical position of the groupbox from 55 to 57 to make it look better
- sync vertical position of 2 more controls for fr-FR.rc
2023-12-03 21:34:29 +00:00
Stanislav Motylkov
7c5f93a582 [HOTPLUG] Update Russian (ru-RU) translation 2023-12-04 00:20:40 +03:00
Stanislav Motylkov
0fd51c9fe3 [STOBJECT] Update Russian (ru-RU) translation 2023-12-03 23:56:07 +03:00
Stanislav Motylkov
8bc6c8fa56 [USETUP] Update Russian (ru-RU) translation
- Translate one untranslated string
- Fix some "е" -> "ё" occurences and punctuation.
2023-12-03 23:40:45 +03:00
Stanislav Motylkov
6295c61f3f [SHELL32] Update resource file headers
Only update files that already have a non-standard header.
There are still resource files that just don't have it.

Dedicated to Joachim Henze - PR #6004 commit 273a6e2575.
2023-12-03 22:42:10 +03:00
Stanislav Motylkov
51f9b86cbc [REACTOS] Omit "aka" for the authors' nicknames
Based on grep query: https://git.reactos.org/?p=reactos.git&a=search&h=c00d41d91c181746563e689d3390228f703053f5&st=grep&s=+%28aka+
Dedicated to Joachim Henze - PR #5978 commit 4c7222bab3.
2023-12-03 22:08:20 +03:00
Hermès Bélusca-Maïto
2f0a5e546f [NTOS:KE] Don't hardcode pool tag and TSS flag values (#6051)
Co-authored-by: Serge Gautherie <32623169+SergeGautherie@users.noreply.github.com>
2023-12-03 17:33:10 +01:00
Katayama Hirofumi MZ
6e449d47e8 [IMM32][KERNEL32][SDK] Half-implement BaseCheckAppcompatCache (#6069)
- And add it to <compat_undoc.h>.
- Use <compat_undoc.h> in IMM32.
- Modify kernel32.spec.
CORE-19268
2023-12-03 23:40:49 +09:00
Eric Kohl
d8ba5920a2 [NTOS:PNP][UMPNPMGR] GUID_DEVICE_ENUMERATED should be a DeviceInstallEvent
- Move the GUID_DEVICE_ENUMERATED event from the TargetDeviceChangeEvent category to the DeviceInstallEvent category
- Create a new function that handles DeviceInstallEvent category events
2023-12-03 14:00:34 +01:00
Eric Kohl
30b9be047f [UMPNPMGR] Split the notification code by event category
- Move the TargetDeviceChangeEvent code into a separate function.
- Add a new function for the DeviceClassChangeEvent category.
2023-12-03 11:08:57 +01:00
Katayama Hirofumi MZ
75cf6920bc [IMM32][SDK][NTUSER] Implement ImmProcessKey for Cicero (#6106)
Complete CTF IMM.
- Add CtfImeProcessCicHotkey and CtfImeSetActiveContextAlways
  to access CTF IMEs.
- Check whether Cicero is started in the current thread in ImmProcessKey.
- Call CtfImeProcessCicHotkey if necessary in ImmProcessKey.
- Modify <CtfImeTable.h>.
- Add CI_CICERO_STARTED flag to "ntuser.h".
- Fix Imm32JCloseOpen.
CORE-19268
2023-12-03 17:33:22 +09:00
Thamatip Chitpong
9ea2222967 [HH] Check LoadLibrary and GetProcAddress return value (#6082)
Handle failure cases.
2023-12-03 08:15:08 +07:00
Katayama Hirofumi MZ
d795021a75 [IMM32][SDK] Implement GetKeyboardLayoutCP (#6068)
- Add IMM32!GetKeyboardLayoutCP function.
- Add it to <imm32_undoc.h>.
- Delete ImmDisableLegacyIME and
  ImmSendMessageToActiveDefImeWndW functions
  (2k3/xp IMM32 doesn't have such functions).
- Modify imm32.spec.
- Refer ntdll!RtlDllShutdownInProgress function (that is WinXP+).
CORE-19268
2023-12-03 07:46:35 +09:00
Timo Kreuzer
40b6b1dab3 [HAL] Implement IPI support functions 2023-12-03 00:07:53 +02:00
Katayama Hirofumi MZ
4bccb6e6c9 [SHELL32][SDK][SHELL32_APITEST] Add PathIsTemporaryA/W (#6067)
- Implement PathIsTemporaryA and
  PathIsTemporaryW functions.
- Add them to <undocshell.h>.
- Add PathIsTemporary testcase.
CORE-19278
2023-12-02 23:07:28 +09:00
Whindmar Saksit
f31f9facc9 [URL] Add icon resource for .url files (#6081)
Otherwise, the registration for .url files and the http/https protocols point to a missing icon in url.dll.
2023-12-02 12:38:09 +01:00
Andrei Miloiu
1cf6ce6b5a [CRYPTUI] Update Romanian (ro-RO) translation (#6077) 2023-12-01 15:43:58 +01:00
Andrei Miloiu
2c1dacc0c6 [OPENGLCFG] Update Romanian (ro-RO) translation (#6073)
Co-authored-by: Stanislav Motylkov <x86corez@gmail.com>
2023-12-01 15:40:13 +01:00
Andrei Miloiu
0e42ffb716 [WINMM] Update Romanian (ro-RO) translation (#6074) 2023-12-01 15:39:23 +01:00
Andrei Miloiu
98d652e6b7 [REACTOS] Update Romanian (ro-RO) translation (#6079) 2023-12-01 15:38:01 +01:00
Andrei Miloiu
bb97f0d1c3 [RASDLG] Update Romanian (ro-RO) translation (#6059) 2023-12-01 15:35:23 +01:00
Andrei Miloiu
77ed2e2fb0 [EVENTVWR] Update Romanian (ro-RO) translation (#6060) 2023-12-01 15:34:22 +01:00
Andrei Miloiu
64fe3347e9 [DESK] Update Romanian (ro-RO) translation (#5958) (#6061) 2023-12-01 15:33:35 +01:00
Andrei Miloiu
212f3eaf00 [MSGINA] Update Romanian (ro-RO) translation (#6062) 2023-12-01 15:32:38 +01:00
Andrei Miloiu
8ed370c86e [COMDLG32] Update Romanian (ro-RO) translation (#6076) 2023-12-01 15:27:36 +01:00
Joachim Henze
5012c6a2b0 [NETCFGX] IDD_TCPIP_BASIC_DLG Radiobuttons need 2 arrow-down-presses instead of one (#6049)
We do have to reorder the controls.
We do have to add some missing WS_TABSTOP in some languages.
We do have to strip some dots in some languages.
2023-12-01 14:19:32 +00:00
Thamatip Chitpong
e0c17c3f46 [DXG] Don't repeat "DXG" module name in version info 2023-12-01 08:23:13 +07:00
Katayama Hirofumi MZ
84e8ea0dd5 [USER32] Fix IsWindow by not using WNDS2_INDESTROY (#6066)
Based on I_Kill_Bugs' IsWinodw.patch.
CORE-11722, CORE-16432
2023-12-01 09:08:58 +09:00
Timo Kreuzer
f92c44b217 [NTOS:KE] Remove KiMask32Array
It's useless and also broken in the way it is used. Replace it with a simple shift and make it correct for 64 bit.
2023-11-30 13:03:52 +02:00
Timo Kreuzer
642c795531 [KERNEL32] Fix 64-bit bug in SetProcessAffinityMask 2023-11-30 13:01:14 +02:00
Katayama Hirofumi MZ
931224fbe1 [IMM32][SDK][NTUSER] Implement CtfImmTIMActivate (#6041)
- Add Imm32InitTLS, Imm32AllocateTLS, Imm32GetTLS,
  Imm32GetCoInitCountSkip, Imm32IncCoInitCountSkip, and
  Imm32DecCoInitCountSkip helper functions to
  control the TLS data.
- Introduce "CoInitialize Spy" (ISPY) to manage COM
  initialization status.
- Implement CtfImmCoInitialize and CtfImmCoUninitialize.
- Implement CtfImmEnterCoInitCountSkipMode and
  CtfImmLeaveCoInitCountSkipMode.
- Implement CtfImmLastEnabledWndDestroy,
  ImmDisableTextFrameService, and CtfImmTIMActivate.
CORE-19268
2023-11-30 17:22:50 +09:00
Eric Kohl
01a8288d28 [UMPNPMGR] Move the pnp event thread to a separate file 2023-11-29 23:03:00 +01:00
Hermès Bélusca-Maïto
8ed5151d33 [BOOTDATA] Add explicit value types as we do for the others.
Addendum to commit fce106ab2.
2023-11-29 19:02:38 +01:00
Whindmar Saksit
fce106ab25 [BOOTDATA] hivesft: Fix URL Protocol registry value (#6058)
"URL Protocol" is a registry value, not a key!

IEFrame later comes along and adds the value covering up the issue for everyone except poor gopher.
2023-11-29 20:40:19 +03:00
Katayama Hirofumi MZ
2aeda3dc15 [SHELL32][SHELL32_APITEST][SDK] Implement PathIsEqualOrSubFolder (#5714)
Implement PathIsEqualOrSubFolder function.
- Add it to <undocshell.h>.
- Add PathIsEqualOrSubFolder testcase.
- Add SHGetPathCchFromIDListW as an
  extension of SHGetPathFromIDListW.
CORE-19278
2023-11-29 22:50:01 +09:00
Thamatip Chitpong
ea8a49d81f [PORTCLS] Don't repeat "PORTCLS" module name in version info 2023-11-29 10:31:14 +07:00
Thamatip Chitpong
82e81b2342 [WS2HELP] Add ws2help.rc to CMakeLists (#6055)
Fix missing dll version info
2023-11-29 07:03:28 +07:00
Thamatip Chitpong
a79bd4d0cc [SETUPAPI] Add dll version info (#6050) 2023-11-28 19:30:34 +07:00
Hermès Bélusca-Maïto
8c3f7b1027 [HALARM] HalpActiveProcessors is a KAFFINITY (see headers) 2023-11-28 12:17:48 +01:00
Eric Kohl
12a5971b7a [NTOS:PNP] Queue a device change event on interface enable or disable 2023-11-27 22:36:52 +01:00
Timo Kreuzer
a64a674980 [TASKMGR] Fix 64-bit bugs 2023-11-27 23:30:51 +02:00
Serge Gautherie
b386ea728f [NTOSKRNL] Remove unused internal/amd64/asmmacro.S
Added, but never(?) used.

Addendum to 99e6ad7 (r46620).
2023-11-27 22:51:51 +02:00
Joachim Henze
628d4a92e9 [TASKMGR] Fix text cutoff statusbar2 CPU%, improve statusbar3 Mem (#5978)
ReactOS taskmgr writes a bit more *useful* dynamically
generated strings in the status-bar field 3 with the memory
than MS Windows XP taskmgr does for example.
Available space in the statusbar is very limited,
therefore we use the following trick to get as much as possible of that helpful text visible
for the majority of the translations:
- We do shrink the CPU% column a bit in width and static text lengths, as it is the one which
has very little variety in length of its dynamic part: 0% to 100%

This improves the display for all languages, and for some languages it also fixes
text-cutoff that we even had with the wider width in the CPU% column already.

also fix an accelerator collision in nl-NL.rc
2023-11-27 17:53:34 +00:00
Doug Lyons
75c67f9b51 [USER32] Fix F1'97 Demo icon not showing in explorer (#5268)
Fixes the F1'97 Demo program (a racing game) not showing an icon in explorer.
This fixes a very special kind of icons which are embedded into the
executable by ancient Watcom C/C++ compilers.
Windows XP/2k3sp2 can show that icon.
Windows Vista/7 cannot show that icon.

Due to the different behavior of the various Windows versions, we
also added a testcase for our bots to protect that functionality in the future,
we committed that test by 0.4.15-dev-7076-g c00d41d91c (#6020)

JIRA issue: CORE-10726
2023-11-27 17:02:08 +00:00
Katayama Hirofumi MZ
f630bbce0a [IEXPLORE][INF] Follow-up of 76b25a7
Adapt icon location to ReactOS. CORE-18625
2023-11-27 21:19:05 +09:00
Katayama Hirofumi MZ
76b25a747a [IEXPLORE][INF] Fix 'Internet Browser' registry settings
HKCR\CLSID\%CLSID_Internet%\ShellFolder" was wrong.
CORE-18625
2023-11-27 21:07:54 +09:00
Katayama Hirofumi MZ
f7a4c26322 [INPUT] Fix exception on SPI_SETDEFALTINPUTLANG (#6043)
Follow-up to #4666. Fix an abnormal termination at setting the default language.
- pCurrent was NULL at the scene. Don't use it there for SPI_SETDEFALTINPUTLANG.
- Save the default keyboard layout. Use it.
CORE-11700, CORE-13244, CORE-18364
2023-11-27 20:25:58 +09:00
Katayama Hirofumi MZ
fb642f727f [IMM32] s/CopyMemory/RtlCopyMemory/
CORE-19268
2023-11-27 16:21:34 +09:00
Doug Lyons
c00d41d91c [USER32_APITEST] Add test for bad 'Icon Groups' but good 'Icons' such as F1'97 (#6020)
Add test for bad 'Icon Groups' but good 'Icons' such as created
by old versions of Watcom C/C++
That icon shows fine in Windows Explorer WinXP/Win2K3,
but does not show in WinVista/Win7 anymore.
A very special corner case.

We will commit the proposed fix shortly after committing the new test.
2023-11-26 15:26:05 +00:00
Andrei Miloiu
e3d97d7dde [PING] Update Romanian (ro-RO) translation (#6010)
Co-authored-by: Joachim Henze <joachim.henze@reactos.org>
Co-authored-by: Stanislav Motylkov <x86corez@gmail.com>
2023-11-26 14:11:45 +00:00
Andrei Miloiu
624b36ad59 [WINLOGON] Update Romanian (ro-RO) translation (#6011)
Co-authored-by: Stanislav Motylkov <x86corez@gmail.com>
2023-11-26 14:10:12 +00:00
Hermès Bélusca-Maïto
d0e1d36009 [SDK:LIB] Import PathCch* functions from Wine (#5842)
CORE-12686

Isolate PathCch* functions from Wine implementation in kernelbase
(which are mixed with a ton of unrelated stuff).

These functions are compiled into a pathcch.lib library, similarly
to the one in the official MS PSDK. Excepting that here, their actual
implementation is in the library. This contrasts with the one in the
MS PSDK, which is an import library to an apiset DLL.

The pathcch.h header is an original one, that contains SAL annotations
and descriptive parameter names, based on the MinGW and MS PSDK headers.
Wine's header was not used as it is poor and incomplete.

Co-authored-by: Katayama Hirofumi MZ <katayama.hirofumi.mz@gmail.com>
2023-11-26 13:43:15 +01:00
Whindmar Saksit
c7777f5963 [ZIPFLDR] Fix off-by-one count error during enumeration (#6040)
CORE-19342
2023-11-26 13:41:02 +01:00
Katayama Hirofumi MZ
af7defb556 [KERNEL32] Implement SetComPlusPackageInstallStatus 2023-11-26 21:30:00 +09:00
Katayama Hirofumi MZ
f3bd8ffb20 [GDI32_APITEST] Strengthen PatBlt with negative values
CORE-19334
2023-11-26 15:31:00 +09:00
Katayama Hirofumi MZ
0bfa0cd0d2 [NTGDI] Fix PatBlt with negative values (#6038)
When I am implementing the IME soft keyboard (#6021 and #6036),
I noticed an issue with PatBlt function.

- Fix the rectangle coordinates when the value was
  negative in NtGdiPatBlt function.
- Fix NC_DrawFrame function.
- Fix UserDrawWindowFrame function.

CORE-19334
2023-11-26 11:46:42 +09:00
Katayama Hirofumi MZ
90e17817fe [IMM32] Implement CtfImmTIMCreateInputContext
CORE-19268
2023-11-26 09:20:07 +09:00
Katayama Hirofumi MZ
9d0b6f3185 [IMM32][SDK] Implement CtfImmSetCiceroStartInThread
- Add CtfImmSetCiceroStartInThread function.
- Add its prototype to <imm32_undoc.h>
- Modify imm32.spec.

CORE-19268
2023-11-26 08:58:59 +09:00
Katayama Hirofumi MZ
d74d4e0395 [NETCFGX] Fix TCP/IP alternate radiobutton behaviour (#6039)
Based on KRosUser's netaltconf_fix.patch.
CORE-19336
2023-11-25 22:47:46 +09:00
Katayama Hirofumi MZ
3b2fdc56bd [IMM32][SDK][NTUSER][IMM32_WINETEST] Add CtfImmGenerateMessage (#6037)
Implementing advanced text service...

- Add CtfImmGenerateMessage function.
- Modify imm32.spec.
- Move TRANSMSG, TRANSMSGLIST etc. in
  win32ss/include/ntuser.h to <immdev.h>.
- Move win32ss/include/imetable.h to
  sdk/include/reactos/imetable.h.
- Move dll/win32/imm32/CtfImeTable.h to
  sdk/include/reactos/CtfImeTable.h.
- Fix build failure of imm32_winetest due
  to TRANSMSG redefinition.

CORE-19268
2023-11-25 22:46:00 +09:00
Katayama Hirofumi MZ
6783061894 [IMM32] Implement Soft Keyboard Type C1 (#6036)
Follow-up to #6021. This PR will finish ImmCreateSoftKeyboard implementation.

- Add c1key.h to define C1 internal codes.
- The tests are done, using FreeCJ2004 on Chinese/Taiwanese system.

FreeCJ2004: https://web.archive.org/web/20061208204431/http://input.foruto.com/download/Forum/freecj2004.exe

CORE-19268
2023-11-25 18:56:33 +09:00
Katayama Hirofumi MZ
3799d37a48 [MSPAINT] mouse.cpp: Renaming some items for human readability
CORE-19094
2023-11-25 14:14:14 +09:00
Katayama Hirofumi MZ
fd38a6f788 [MSPAINT] mouse.cpp: Erase type warnings of SIZE_T vs. INT
CORE-19094
2023-11-25 14:09:20 +09:00
Katayama Hirofumi MZ
b8598e095d [MSPAINT] Improve Undo/Redo handling of selection (#6035)
Consistent behavior of the application.
- Add ShiftPtStack and BuildMaskFromPtStack
  helper functions.
- Move some codes of selectionModel to
  mouse.cpp.
CORE-19226
2023-11-25 13:44:31 +09:00
Thamatip Chitpong
ab0119c61f [SETUPAPI] cfgmgr.c: Minor debug strings fix 2023-11-25 07:50:23 +07:00
Katayama Hirofumi MZ
bd06299059 [IMM32][SDK] Implement IME Soft Keyboard Type T1 (#6021)
- Rename version.rc as imm32.rc.
- Add resource.h and t1keys.h.
- Add some resource bitmaps.
- Modify <immdev.h>.

Test:
Press Ctrl+Alt+comma on FreeCJ2004.

NOTE: There's a visual bug in PatBlt with negative values.
CORE-19268
2023-11-24 23:02:19 +09:00
Katayama Hirofumi MZ
f710e5a260 [MSPAINT] Define SelectionBaseTool and use it (#6034)
Refactoring and arrangement for selection handling.
- Move some selection-related codes in canvas.cpp to mouse.cpp.
- Add SelectionBaseTool structure for FreeSelTool and RectSelTool.
CORE-19094
2023-11-24 15:44:16 +09:00
Katayama Hirofumi MZ
898fb5f414 [MSPAINT] Move CHECKED_IF and ENABLED_IF macros and improve
Refactoring. CORE-19094
2023-11-24 10:39:16 +09:00
Katayama Hirofumi MZ
e52379a61c [MSPAINT] Delete redundant comments
Refactoring. CORE-19094
2023-11-24 10:34:39 +09:00
Katayama Hirofumi MZ
2d5bb5ffbf [MSPAINT] Delete common.h and move code to precomp.h
Refactoring. CORE-19094
2023-11-24 10:25:47 +09:00
Katayama Hirofumi MZ
470d86f1e5 [MSPAINT] Delete globalvar.h and move code to precomp.h
Refactoring. CORE-19094
2023-11-24 10:12:37 +09:00
Thamatip Chitpong
40bc5bf489 [SETUPAPI] CM_Request_Device_Eject_ExW: Allow ulNameLength to be zero when pszVetoName is not NULL (#6031)
Addendum to 7f346b1aa (#5943)
2023-11-24 07:47:01 +07:00
Hermès Bélusca-Maïto
c77a5ff99b Revert my last commits that break build.
Revert "[PSDK][AFD][VGADDI] Further build and MS PSDK compatibility fixes."
This reverts commit 99efc2ae50.

Revert "[PSDK] Sync winresrc.h with wine-8.20"
This reverts commit 3e83562aa7.

Revert "[OSK][PROGMAN] Fix resource file build."
This reverts commit 84e4ad0a82.

Revert "[PSDK] Use the new .rh files in winresrc.h"
This reverts commit f6fb7c48c9.
2023-11-23 17:20:47 +01:00
Hermès Bélusca-Maïto
99efc2ae50 [PSDK][AFD][VGADDI] Further build and MS PSDK compatibility fixes.
- windows.h:
  * should define _WINDOWS_ and _INC_WINDOWS instead of _WINDOWS_H
  * include winresrc.h if RC_INVOKED and not NOWINRES (Wine also agrees
    with that)
  * also, some .h included from there should _not_ be included if their
    respective NO*** flags are defined.

- batclass.h: Use correct _WINDOWS_ guard.

- winsnmp.h:
  * should define _INC_WINSNMP instead of _WINSNMP_H
  * use _INC_WINDOWS instead of _WINDOWS_H

- afd.h, vgaddi.h: Use the correct guards.

- winnt.rh: Define the (SUB)LANG_* exactly as they are in the winnt.h,
  otherwise we get macro redefinition compile errors.

NOTE: Ideally these .rh files should be auto-generated from their
corresponding .h files.

- afxres.h: Do not include the whole windows.h, but instead, only
  the winres.h file, and only if RC_INVOKED is defined.

NOTE: Both afxres.h and winres.h do not really belong to the PSDK,
but belong instead to MFC. The reason why we have them here is twofold:

1. Wine used to have also winres.h (from where we got ours). This is
   because the .rc resource files of some non-MFC modules were generated
   with Visual Studio, which always includes afxres.h for these, and the
   solution was to use a slightly less MFC-specific header: winres.h
   (Wine commit cb08c82244673f26842e7a0766de90f091b5a493).
   However, this winres.h has been since removed from Wine tree
   (Wine commit 197f4059ab2af5f13f9c56faa26e3b4af902f869).

2. Few of our modules either use afxres.h or winres.h in their resource
   files, and we still want to be able to compile them.
2023-11-23 16:26:30 +01:00
Hermès Bélusca-Maïto
3e83562aa7 [PSDK] Sync winresrc.h with wine-8.20
It is also compatible with MS PSDK file.

NOTE: I have observed that at least one .rh file (commctrl.rh) we have
from Wine, is not yet fully compatible with its MS PSDK counterpart
(for example it misses the TBSTYLE_* defines).
2023-11-23 16:25:35 +01:00
Hermès Bélusca-Maïto
84e4ad0a82 [OSK][PROGMAN] Fix resource file build. 2023-11-23 16:25:33 +01:00
Hermès Bélusca-Maïto
f6fb7c48c9 [PSDK] Use the new .rh files in winresrc.h 2023-11-23 13:04:32 +01:00
Hermès Bélusca-Maïto
9384e742eb [PSDK] Import commctrl.rh, dde.rh, winnt.rh from wine-8.20 2023-11-23 12:45:55 +01:00
Hermès Bélusca-Maïto
1a3c479b62 [PSDK] Make winuser.rh more compatible with the one from MS PSDK
Note that this file is already in sync with wine-8.20

NOWINMESSAGES, NOWINSTYLES, NOCLIPBOARD, NOMENUS, NOSYSCOMMANDS,
OEMRESOURCE and NOICONS #ifndef guards should not be present in the
.rh file, contrary to the .h file.

However, #ifndef NONCMESSAGES guard should be present.

Finally, remove the useless SC_SIZE redefinition
("At least HP-UX defines it in /usr/include/sys/signal.h" -- like,
what the hell, we are developing ReactOS...)
2023-11-23 12:44:50 +01:00
Hermès Bélusca-Maïto
0c2827a3f3 [USER32] Fix OEM resources compilation due to missing OBM_, OIC_, OCR_ defines...
... addendum to commits 072965eb0 and 6cdaad13b.

Due to the wrapping of these defines within an #ifdef OEMRESOURCE block
in winuser.h (for MS PSDK compatibility), these defines became unavailable
in user32.rc resource file. Thus, during user32 resources compilation,
the resource compiler fell back to the behaviour of considering these
resource IDs as literal string IDs (not numerical ones).

Thus, whenever code was trying to refer to these resources via their
numerical IDs, these resources could not be found now, rendering ReactOS
unusuable.
2023-11-23 11:39:57 +01:00
Katayama Hirofumi MZ
bf13ebda44 [MSPAINT] Delete winproc.cpp and move code to main.cpp
Refactoring. This will reduce build time a little.
CORE-19094
2023-11-23 17:14:32 +09:00
Katayama Hirofumi MZ
af4a3fac7d [MSPAINT] Rename winproc.h as main.h
Refactoring. CORE-19094
2023-11-23 17:06:32 +09:00
Katayama Hirofumi MZ
c20b4ca29e [MSPAINT] Simplify mouse.cpp with deleting ctors
Refactoring. CORE-19094
2023-11-23 16:46:40 +09:00
Katayama Hirofumi MZ
96e48dcd01 [MSPAINT] ToolBase::m_tool is not used. Delete it
Refactoring. CORE-19094
2023-11-23 16:37:13 +09:00
Katayama Hirofumi MZ
1aeebfdacb [MSPAINT] Simplify RECT/CRect handling
Refactoring. CORE-19094
2023-11-23 15:19:50 +09:00
Katayama Hirofumi MZ
f935132fbe [MSPAINT] Add selectionModel.moveSelection and use it
Refactoring. CORE-19094
2023-11-23 14:44:27 +09:00
Katayama Hirofumi MZ
58c26d3fe6 [MSPAINT] Simplify CanvasToImage
Refactoring. CORE-19094
2023-11-23 14:22:40 +09:00
Katayama Hirofumi MZ
4a52a4b04c [MSPAINT] Add selectionModel.drawFrameOnCanvas and use it
Refactoring. CORE-19094
2023-11-23 11:03:10 +09:00
Katayama Hirofumi MZ
c2bb5aa01d [MSPAINT] Add selectionModel.hitTest and use it
Refactoring. CORE-19094
2023-11-23 10:31:24 +09:00
Katayama Hirofumi MZ
df54fb01fd [VGAFONTEDIT] Fix exception on New
Based on KRosUser's vgafont.patch. CORE-19192
2023-11-23 08:34:56 +09:00
Katayama Hirofumi MZ
e579220098 [MSPAINT] Introduce partial image history, Part 2 (#6005)
Follow-up to #5994. Reduce the lag and the
cost of drawing on large image.
- Introduce partial image history on
  SmoothDrawTool and ShapeTool.
- We can draw with pen smoothly even
  when the image is huge (10000x10000).
CORE-19237
2023-11-23 07:14:57 +09:00
Serge Gautherie
5b5aaf6687 [SETUPAPI] cfgmgr.c: Do not debugstr_*(pszVetoName) (#6027)
which is an _Out_ parameter. Fixes "uninitialized" data read.
2023-11-22 22:35:00 +01:00
Hermès Bélusca-Maïto
6cdaad13bd Add missing OEMRESOURCE for using the OBM_, OIC_, OCR_ defines from winuser.h
Fix build by commit 072965eb0 for modules:
EXPLORER, COMCTL32, IERNONCE, URLMON, USER32_(API|WINE)TESTS

Note that some of these modules (from Wine) already have the OEMRESOURCE
defined; however, only in one of their files. But we have added
precompiled headers for them where we have included either windows.h
or winuser.h in them, without OEMRESOURCE. The result is, that when
compiling these modules with PCH support, the OEMRESOURCE define was
_not_ satisfied and thus, compile errors arose.

Fix this by adding #define OEMRESOURCE before the windows headers also
in the precompiled headers we have added for these modules.
2023-11-22 17:02:45 +01:00
Hermès Bélusca-Maïto
072965eb0a [PSDK] winuser.h: Enclose the OBM/OCR/OIC defines in OEMRESOURCE guard (see also winuser.rh) 2023-11-22 15:46:19 +01:00
Hermès Bélusca-Maïto
0e88f0485c [PSDK][WIN32SS] Fix WINNT in ddraw.h; remove NT_BUILD_ENVIRONMENT usage
Keep compatibility with MS PSDK ddraw.h file by using WINNT instead of
_WINNT_ in the preprocessor conditional test.
Incidentally this allows also removing those #define NT_BUILD_ENVIRONMENT
in the win32ss modules.

See commit 5fcfaf2e1 (r42346).
2023-11-22 15:46:06 +01:00
Hermès Bélusca-Maïto
f5563ad22c [WIN32SS:REACTX] Remove INTERNAL_CALL, deprecated since commit 24abf1b22 (r53467) 2023-11-22 15:46:05 +01:00
Hermès Bélusca-Maïto
6ddfe7e5dd [WIN32K] Re-order some of the includes in pch.h
First the C headers, then the DDK followed by the Win32 PSDK ones,
only then the NDK headers, and finally the rest.
2023-11-22 15:46:00 +01:00
Thamatip Chitpong
7f346b1aa3 [SETUPAPI] CM_Request_Device_Eject_ExA/W: Fix pszVetoName buffer size validation (#5943)
- Return CR_INVALID_POINTER if pszVetoName is NULL and ulNameLength is not zero
- CM_Request_Device_Eject_ExA: Allow ulNameLength to be zero when pszVetoName is not NULL

Verified with Windows 2003 SP2.
2023-11-22 08:58:27 +07:00
Hermès Bélusca-Maïto
9578bae858 [PSDK] Minor cleanup and fixes in headers
- Remove nonsensical XFree86 stuff;
- Add missing #ifndef NORESOURCE around RT_* defines.
2023-11-21 22:23:55 +01:00
Hermès Bélusca-Maïto
16b4c9ff3c [NTDLL] Fix long vs. ptr in some Ldr* exports 2023-11-21 22:23:54 +01:00
3049 changed files with 149250 additions and 69060 deletions

1
.github/FUNDING.yml vendored
View File

@@ -1,2 +1 @@
custom: ['https://reactos.org/donate/', 'https://www.paypal.me/ReactOS']
liberapay: ReactOS

55
.github/labeler.yml vendored
View File

@@ -1,29 +1,56 @@
# Labelling by the files touched
ATL:
- sdk/lib/atl/**
- changed-files:
- any-glob-to-any-file:
- sdk/lib/atl/**
drivers:
- drivers/**
- sdk/lib/drivers/**
- any: ["win32ss/drivers/**", "!win32ss/drivers/font/**"]
- changed-files:
- any-glob-to-any-file:
- drivers/**
- sdk/lib/drivers/**
- all-globs-to-any-file:
- win32ss/drivers/**
- '!win32ss/drivers/font/**'
freeldr:
- boot/freeldr/**
- changed-files:
- any-glob-to-any-file:
- boot/freeldr/**
"kernel&hal":
- hal/**
- ntoskrnl/**
- changed-files:
- any-glob-to-any-file:
- hal/**
- ntoskrnl/**
ROSTESTS:
- modules/rostests/**
- changed-files:
- any-glob-to-any-file:
- modules/rostests/**
shell:
- base/shell/explorer/**
- base/shell/rshell/**
- dll/shellext/**
- dll/win32/browseui/**
- dll/win32/shell32/**
- changed-files:
- any-glob-to-any-file:
- base/shell/explorer/**
- base/shell/rshell/**
- dll/shellext/**
- dll/win32/browseui/**
- dll/win32/shell32/**
Win32SS:
- win32ss/**
- changed-files:
- any-glob-to-any-file:
- win32ss/**
"input method":
- changed-files:
- any-glob-to-any-file:
- base/applications/ctfmon/**
- dll/ime/**
- dll/win32/imm32/**
- dll/win32/msctf/**
- dll/win32/msutb/**
- win32ss/user/ntuser/ime.c
- win32ss/user/user32/misc/imm.c

View File

@@ -15,7 +15,7 @@ jobs:
- dllver: 0x600
config: Release
fail-fast: false
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
steps:
- name: Get RosBE build specifics
id: get_rosbe_spec
@@ -26,7 +26,7 @@ jobs:
wget https://gist.githubusercontent.com/zefklop/b2d6a0b470c70183e93d5285a03f5899/raw/build_rosbe_ci.sh
- name: Get RosBE
id: get_rosbe
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: RosBE-CI
key: RosBE-CI-${{runner.os}}-${{steps.get_rosbe_spec.outputs.march-sha}}-${{steps.get_rosbe_spec.outputs.git-sha}}-${{hashfiles('./build_rosbe_ci.sh')}}
@@ -46,16 +46,16 @@ jobs:
sudo ./llvm.sh $LLVM_VERSION
echo "D_CLANG_VERSION=-DCLANG_VERSION=$LLVM_VERSION" >> $GITHUB_ENV
- name: Source checkout
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
path: src
- name: Set up cache for ccache
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: ccache
key: ccache-${{matrix.compiler}}-${{matrix.arch}}-${{matrix.config}}-${{github.sha}}
key: ccache-${{matrix.compiler}}-${{matrix.arch}}-${{matrix.config}}-${{matrix.dllver}}-${{github.sha}}
restore-keys: |
ccache-${{matrix.compiler}}-${{matrix.arch}}-
ccache-${{matrix.compiler}}-${{matrix.arch}}-${{matrix.config}}-${{matrix.dllver}}-
- name: Set ccache settings
run: |
echo "CCACHE_BASEDIR=${{github.workspace}}" >> $GITHUB_ENV
@@ -74,7 +74,7 @@ jobs:
- name: Print ccache statistics
run: ccache -s
- name: Upload ISOs
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: reactos-${{matrix.compiler}}-${{matrix.arch}}-${{matrix.config}}-${{matrix.dllver}}-${{github.sha}}
path: |
@@ -84,24 +84,14 @@ jobs:
build-msvc:
strategy:
matrix:
os: [windows-latest, windows-2019]
toolset: ['14.2', '14.1', '14.0'] # VS 2019, 2017, and 2015 (see below)
os: [windows-latest]
toolset: ['14','14.2'] # VS 2022, and 2019 (see below)
arch: [i386, amd64]
config: [Debug, Release]
dllver: ['0x502', '0x600']
exclude: # VS 2019, 2017 only with windows-latest; VS 2015 only with windows-2019
- os: windows-2019
toolset: '14.2'
- os: windows-2019
toolset: '14.1'
- os: windows-latest
toolset: '14.0'
exclude: # Build NT6 ISOs only with the latest toolset when compiled as a debug build
- dllver: 0x600
os: windows-2019
- dllver: 0x600
toolset: '14.1'
- dllver: 0x600
toolset: '14.0'
toolset: 14.2
- dllver: 0x600
config: Release
fail-fast: false
@@ -129,17 +119,17 @@ jobs:
arch: amd64
toolset: ${{matrix.toolset}}
- name: Source checkout
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
path: src
- name: Configure
run: cmake -S src -B build -G Ninja -DCMAKE_TOOLCHAIN_FILE:FILEPATH=toolchain-msvc.cmake -DARCH:STRING=${{matrix.arch}} -DCMAKE_BUILD_TYPE=${{matrix.config}} -DENABLE_ROSTESTS=1 -DENABLE_ROSAPPS=1 -DDLL_EXPORT_VERSION=${{matrix.dllver}}
run: cmake -S src -B build -G Ninja -DCMAKE_TOOLCHAIN_FILE:FILEPATH=toolchain-msvc.cmake -DARCH:STRING=${{matrix.arch}} -DCMAKE_BUILD_TYPE=${{matrix.config}} -DDLL_EXPORT_VERSION=${{matrix.dllver}} -DENABLE_ROSTESTS=1 -DENABLE_ROSAPPS=1
- name: Build
run: cmake --build build -- -k0
- name: Generate ISOs
run: cmake --build build --target bootcd --target livecd
- name: Upload ISOs
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: reactos-msvc${{matrix.toolset}}-${{matrix.arch}}-${{matrix.config}}-${{matrix.dllver}}-${{github.sha}}
path: |
@@ -147,7 +137,7 @@ jobs:
build/livecd.iso
- name: Upload debug symbols
if: ${{ matrix.config == 'Debug' }}
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: reactos-syms-msvc${{matrix.toolset}}-${{matrix.arch}}-${{matrix.config}}-${{matrix.dllver}}-${{github.sha}}
path: build/msvc_pdb
@@ -155,7 +145,7 @@ jobs:
build-msvc-arm:
strategy:
matrix:
toolset: ['14.2', '14.1'] # VS 2019, 2017
toolset: ['14','14.2'] # VS 2022, 2019
arch: [arm, arm64]
config: [Debug, Release]
fail-fast: false
@@ -175,6 +165,7 @@ jobs:
uses: ilammy/msvc-dev-cmd@v1
with:
arch: amd64_arm
sdk: 10.0.22621.0 # Windows SDK 10.0.26100.0 dropped support for 32-bit ARM
toolset: ${{matrix.toolset}}
- name: Activate VS cmd (arm64)
if: ${{ matrix.arch == 'arm64' }}
@@ -183,7 +174,7 @@ jobs:
arch: amd64_arm64
toolset: ${{matrix.toolset}}
- name: Source checkout
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
path: src
- name: Configure
@@ -204,7 +195,7 @@ jobs:
if: ${{ matrix.arch == 'arm64' }}
run: cmake --build build --target calc magnify mstsc notepad osk regedit taskmgr winmine wordpad base/applications/screensavers/all -- -k0
- name: Upload compiled binaries
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: reactos-msvc${{matrix.toolset}}-${{matrix.arch}}-${{matrix.config}}-${{github.sha}}
path: |
@@ -227,11 +218,12 @@ jobs:
!**/*.tlb
- name: Upload debug symbols
if: ${{ matrix.config == 'Debug' }}
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: reactos-syms-msvc${{matrix.toolset}}-${{matrix.arch}}-${{matrix.config}}-${{github.sha}}
path: build/msvc_pdb
# FIXME: Does not boot on toolset 14.1, 14.3+ is untested
build-clang-cl:
strategy:
matrix:
@@ -258,17 +250,17 @@ jobs:
uses: ilammy/msvc-dev-cmd@v1
with:
arch: amd64_x86
toolset: '14.1' # latest masm build known to make bootable builds
toolset: '14'
- name: Activate VS cmd (amd64)
if: ${{ matrix.arch == 'amd64' }}
uses: ilammy/msvc-dev-cmd@v1
with:
arch: amd64
toolset: '14.1' # latest masm build known to make bootable builds
toolset: '14'
- name: Add LLVM to PATH
run: echo "${env:LLVM_PATH}" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
- name: Source checkout
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
path: src
- name: Configure
@@ -278,7 +270,7 @@ jobs:
- name: Generate ISOs
run: cmake --build build --target bootcd --target livecd
- name: Upload ISOs
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: reactos-clang-cl-${{matrix.arch}}-${{matrix.config}}-${{github.sha}}
path: |
@@ -286,34 +278,33 @@ jobs:
build/livecd.iso
- name: Upload debug symbols
if: ${{ matrix.config == 'Debug' }}
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: reactos-syms-clang-cl-${{matrix.arch}}-${{matrix.config}}-${{github.sha}}
path: build/msvc_pdb
# Disable MSBuild for the moment being until a proper fix is provided -- see CORE-18911
# build-msbuild-i386:
# name: MSBuild (i386)
# runs-on: windows-2019
# steps:
# - name: Install Flex and Bison
# run: |
# curl -O https://svn.reactos.org/storage/vperevertkin/flexbison.7z
# 7z x flexbison.7z -O${{github.workspace}}\bin
# echo "${{github.workspace}}\bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
# echo "BISON_PKGDATADIR=${{github.workspace}}\bin\share\bison" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
# echo "M4=${{github.workspace}}\bin\m4.exe" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
# - name: Add CL to PATH
# uses: ilammy/msvc-dev-cmd@v1
# with:
# arch: amd64_x86
# - uses: actions/checkout@v3
# with:
# path: src
# - name: Configure
# run: |
# mkdir build
# cd build
# cmake -G "Visual Studio 16 2019" -A Win32 -DCMAKE_TOOLCHAIN_FILE:FILEPATH=toolchain-msvc.cmake -DARCH:STRING=i386 -DENABLE_ROSTESTS=1 -DENABLE_ROSAPPS=1 ${{github.workspace}}\src
# - name: Build
# run: cmake --build ${{github.workspace}}\build --target bootcd --target livecd
build-msbuild-i386:
name: MSBuild (i386)
runs-on: windows-latest
steps:
- name: Install Flex and Bison
run: |
curl -O https://svn.reactos.org/storage/vperevertkin/flexbison.7z
7z x flexbison.7z -O${{github.workspace}}\bin
echo "${{github.workspace}}\bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
echo "BISON_PKGDATADIR=${{github.workspace}}\bin\share\bison" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
echo "M4=${{github.workspace}}\bin\m4.exe" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
- name: Add CL to PATH
uses: ilammy/msvc-dev-cmd@v1
with:
arch: amd64_x86
- uses: actions/checkout@v4
with:
path: src
- name: Configure
run: |
mkdir build
cd build
cmake -G "Visual Studio 17 2022" -A Win32 -DCMAKE_TOOLCHAIN_FILE:FILEPATH=toolchain-msvc.cmake -DARCH:STRING=i386 -DENABLE_ROSTESTS=1 -DENABLE_ROSAPPS=1 ${{github.workspace}}\src
- name: Build
run: cmake --build ${{github.workspace}}\build --target bootcd --target livecd

View File

@@ -6,6 +6,6 @@ jobs:
triage:
runs-on: ubuntu-latest
steps:
- uses: actions/labeler@v3
- uses: actions/labeler@v5
with:
repo-token: "${{ secrets.GITHUB_TOKEN }}"
sync-labels: true

View File

@@ -14,11 +14,10 @@ jobs:
runs-on: ubuntu-latest
permissions:
issues: write
pull-requests: write
steps:
- uses: actions/stale@v5
- uses: actions/stale@v9
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
days-before-stale: 120

View File

@@ -8,23 +8,17 @@
<p align=center>
<a href="https://reactos.org/project-news/reactos-0414-released/">
<img alt="ReactOS 0.4.14 Release" src="https://img.shields.io/badge/release-0.4.14-0688CB.svg">
</a>
<img alt="ReactOS 0.4.14 Release" src="https://img.shields.io/badge/release-0.4.14-0688CB.svg"></a>
<a href="https://reactos.org/download/">
<img alt="Download ReactOS" src="https://img.shields.io/badge/download-latest-0688CB.svg">
</a>
<img alt="Download ReactOS" src="https://img.shields.io/badge/download-latest-0688CB.svg"></a>
<a href="https://sourceforge.net/projects/reactos/">
<img alt="SourceForge Download" src="https://img.shields.io/sourceforge/dm/reactos.svg?colorB=0688CB">
</a>
<img alt="SourceForge Download" src="https://img.shields.io/sourceforge/dm/reactos.svg?colorB=0688CB"></a>
<a href="https://github.com/reactos/reactos/blob/master/COPYING">
<img alt="License" src="https://img.shields.io/badge/license-GNU_GPL_2.0-0688CB.svg">
</a>
<img alt="License" src="https://img.shields.io/badge/license-GNU_GPL_2.0-0688CB.svg"></a>
<a href="https://reactos.org/donate/">
<img alt="Donate" src="https://img.shields.io/badge/%24-donate-E44E4A.svg">
</a>
<img alt="Donate" src="https://img.shields.io/badge/%24-donate-E44E4A.svg"></a>
<a href="https://twitter.com/reactos">
<img alt="Follow on Twitter" src="https://img.shields.io/twitter/follow/reactos.svg?style=social&label=Follow%20%40reactos">
</a>
<img alt="Follow on Twitter" src="https://img.shields.io/twitter/follow/reactos.svg?style=social&label=Follow%20%40reactos"></a>
</p>
## Quick Links
@@ -56,7 +50,7 @@ The code of ReactOS is licensed under [GNU GPL 2.0](https://github.com/reactos/r
To build the system it is strongly advised to use the _ReactOS Build Environment (RosBE)._
Up-to-date versions for Windows and for Unix/GNU-Linux are available from our download page at: ["Build Environment"](https://reactos.org/wiki/Build_Environment).
Alternatively one can use Microsoft Visual C++ (MSVC) version 2015+. Building with MSVC is covered here: ["Visual Studio or Microsoft Visual C++"](https://reactos.org/wiki/CMake#Visual_Studio_or_Microsoft_Visual_C.2B.2B).
Alternatively one can use Microsoft Visual C++ (MSVC) version 2019+. Building with MSVC is covered here: ["Visual Studio or Microsoft Visual C++"](https://reactos.org/wiki/CMake#Visual_Studio_or_Microsoft_Visual_C.2B.2B).
See ["Building ReactOS"](https://reactos.org/wiki/Building_ReactOS) article for more details.
@@ -127,10 +121,10 @@ The main development is done on [GitHub](https://github.com/reactos/reactos). We
There is also an obsolete [SVN archive repository](https://svn.reactos.org/reactos/) that is kept for historical purposes.
[coverity.badge]: https://scan.coverity.com/projects/205/badge.svg?flat=1
[rosbewin.badge]: https://img.shields.io/badge/RosBE_Windows-2.2.0-0688CB.svg
[rosbeunix.badge]: https://img.shields.io/badge/RosBE_Unix-2.2-0688CB.svg
[rosbewin.badge]: https://img.shields.io/badge/RosBE_Windows-2.2.1-0688CB.svg
[rosbeunix.badge]: https://img.shields.io/badge/RosBE_Unix-2.2.1-0688CB.svg
[prwelcome.badge]: https://img.shields.io/badge/PR-welcome-0688CB.svg
[coverity.link]: https://scan.coverity.com/projects/205
[rosbewin.link]: https://sourceforge.net/projects/reactos/files/RosBE-Windows/i386/2.2.0/
[rosbeunix.link]: https://sourceforge.net/projects/reactos/files/RosBE-Unix/2.2/
[rosbewin.link]: https://sourceforge.net/projects/reactos/files/RosBE-Windows/i386/2.2.1/
[rosbeunix.link]: https://sourceforge.net/projects/reactos/files/RosBE-Unix/2.2.1/

View File

@@ -6,6 +6,7 @@ add_subdirectory(charmap)
add_subdirectory(clipbrd)
add_subdirectory(cmdutils)
add_subdirectory(control)
add_subdirectory(ctfmon)
add_subdirectory(drwtsn32)
add_subdirectory(dxdiag)
add_subdirectory(extrac32)

View File

@@ -1,4 +1,11 @@
/* Translator: Ștefan Fulea (stefan dot fulea at mail dot com) */
/*
* PROJECT: ReactOS CACLS
* LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
* PURPOSE: Romanian resource file
* TRANSLATORS: Copyright 2011-2018 Ștefan Fulea <stefan.fulea@mail.com>
* Copyright 2024 Andrei Miloiu <miloiuandrei@gmail.com>
*/
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
STRINGTABLE
@@ -34,7 +41,7 @@ Abrevieri:\n\
OI - Moștenire obiecte.\n\
ACE moștenită de fișiere.\n\
IO - Moștenire simplă.\n\
ACE neaplicată dosarelor/fișierelor curente.\n"
ACE neaplicată folderelor/fișierelor curente.\n"
IDS_ABBR_CI "(CI)"
IDS_ABBR_OI "(OI)"
IDS_ABBR_IO "(IO)"

View File

@@ -181,7 +181,7 @@ static const conv_t conv_CURRENCY[] = {
DECLARE_CONV_UNIT(CURRENCY, LITHUANIAN_LITAS, "$/3,45280", "$*3,45280")
DECLARE_CONV_UNIT(CURRENCY, LUXEMBOURG_FRANC, "$/40,3399", "$*40,3399")
DECLARE_CONV_UNIT(CURRENCY, MALTESE_LIRA, "$/0.42930", "$*0.42930")
DECLARE_CONV_UNIT(CURRENCY, PORTOGUESE_ESCUDO, "$/200,482", "$*200,482")
DECLARE_CONV_UNIT(CURRENCY, PORTUGUESE_ESCUDO, "$/200,482", "$*200,482")
DECLARE_CONV_UNIT(CURRENCY, SLOVAK_KORUNA, "$/30,126", "$*30,126")
DECLARE_CONV_UNIT(CURRENCY, SLOVENIAN_TOLAR, "$/239,640", "$*239,640")
DECLARE_CONV_UNIT(CURRENCY, SPANISH_PESETA, "$/166,386", "$*166,386")

View File

@@ -1,7 +1,5 @@
/* Превод на Български/ Bulgarian translation
* https://reactos.org/wiki/Bulgarian_translation
* FILE: base/applications/calc/lang/bg-BG.rc
* Недовършен / Incomplete
*/
LANGUAGE LANG_BULGARIAN, SUBLANG_DEFAULT
@@ -10,15 +8,15 @@ LANGUAGE LANG_BULGARIAN, SUBLANG_DEFAULT
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Калкулатор за ReactOS"
CAPTION "Калкулатор"
MENU IDR_MENU_SCIENTIFIC_1
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
GROUPBOX "", IDC_STATIC, 5 ,14, 141, 20
CONTROL "Шстн", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 8, 21, 30, 10
CONTROL "Дстн", IDC_RADIO_DEC, "Button", BS_AUTORADIOBUTTON, 41, 21, 30, 10
CONTROL "Осм", IDC_RADIO_OCT, "Button", BS_AUTORADIOBUTTON, 74, 21, 30, 10
CONTROL "Двоич", IDC_RADIO_BIN, "Button", BS_AUTORADIOBUTTON, 107, 21, 30, 10
AUTORADIOBUTTON "Шстн", IDC_RADIO_HEX, 8, 21, 30, 10
AUTORADIOBUTTON "Дстн", IDC_RADIO_DEC, 41, 21, 30, 10
AUTORADIOBUTTON "Осм", IDC_RADIO_OCT, 74, 21, 30, 10
AUTORADIOBUTTON "Двоич", IDC_RADIO_BIN, 107, 21, 30, 10
GROUPBOX "", IDC_STATIC, 5, 34, 84, 20
CONTROL "Обр", IDC_CHECK_INV, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 8, 41, 26, 10
CONTROL "Хип", IDC_CHECK_HYP, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 49, 41, 29, 10
@@ -135,17 +133,13 @@ BEGIN
PUSHBUTTON "Дроб", IDC_BUTTON_F, 286, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
GROUPBOX "", IDC_STATIC, 147, 14, 163, 20
CONTROL "ЧДума", IDC_RADIO_QWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 150, 21, 38, 10
CONTROLДума", IDC_RADIO_DWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 190, 21, 38, 10
CONTROL "Дума", IDC_RADIO_WORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 230, 21, 38, 10
CONTROL "Байт", IDC_RADIO_BYTE, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 270, 21, 38, 10
CONTROL "Градуси", IDC_RADIO_DEG, "Button", BS_AUTORADIOBUTTON, 150, 21, 45, 10
CONTROL "Радиани", IDC_RADIO_RAD, "Button", BS_AUTORADIOBUTTON, 204, 21, 45, 10
CONTROL "Градиани", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 258, 21, 45, 10
AUTORADIOBUTTON "ЧДума", IDC_RADIO_QWORD, 150, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "ДДума", IDC_RADIO_DWORD, 190, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Дума", IDC_RADIO_WORD, 230, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Байт", IDC_RADIO_BYTE, 270, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Градуси", IDC_RADIO_DEG, 150, 21, 45, 10
AUTORADIOBUTTON "Радиани", IDC_RADIO_RAD, 204, 21, 45, 10
AUTORADIOBUTTON "Градиани", IDC_RADIO_GRAD, 258, 21, 45, 10
PUSHBUTTON "C", IDC_BUTTON_CANC, 267, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 222, 38, 43, 18, BS_CENTER | BS_VCENTER |
@@ -158,7 +152,7 @@ END
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Калкулатор за ReactOS"
CAPTION "Калкулатор"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
@@ -223,7 +217,7 @@ END
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Калкулатор за ReactOS"
CAPTION "Калкулатор"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg"
BEGIN
@@ -315,8 +309,8 @@ IDR_MENU_SCIENTIFIC_1 MENU
BEGIN
POPUP "&Обработка"
BEGIN
MENUITEM "Запомняне\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Поставяне\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "Запомняне\tCtrl-C", IDM_EDIT_COPY
MENUITEM "Поставяне\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "Изглед"
BEGIN
@@ -347,8 +341,8 @@ IDR_MENU_SCIENTIFIC_2 MENU
BEGIN
POPUP "&Обработка"
BEGIN
MENUITEM "Запомняне\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Поставяне\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "Запомняне\tCtrl-C", IDM_EDIT_COPY
MENUITEM "Поставяне\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "Изглед"
BEGIN
@@ -380,8 +374,8 @@ IDR_MENU_STANDARD MENU
BEGIN
POPUP "&Обработка"
BEGIN
MENUITEM "Запомняне\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Поставяне\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "Запомняне\tCtrl-C", IDM_EDIT_COPY
MENUITEM "Поставяне\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "Изглед"
BEGIN
@@ -510,7 +504,7 @@ BEGIN
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
IDS_CURRENCY_LUXEMBOURG_FRANC "Люксембургски франк"
IDS_CURRENCY_MALTESE_LIRA "Малтийска лира"
IDS_CURRENCY_PORTOGUESE_ESCUDO "Португалско ескудо"
IDS_CURRENCY_PORTUGUESE_ESCUDO "Португалско ескудо"
IDS_CURRENCY_SLOVAK_KORUNA "Словашка крона"
IDS_CURRENCY_SLOVENIAN_TOLAR "Словенси толар"
IDS_CURRENCY_SPANISH_PESETA "Испанска песета"

View File

@@ -1,6 +1,5 @@
/* FILE: base/applications/calc/lang/cs-CZ.rc
* TRANSLATOR: Radek Liska aka Black_Fox (radekliska at gmail dot com)
* UPDATED: 2010-05-30
/*
* TRANSLATOR: 2010 Radek Liska (Black_Fox) <radekliska@gmail.com>
*/
LANGUAGE LANG_CZECH, SUBLANG_DEFAULT
@@ -9,15 +8,15 @@ LANGUAGE LANG_CZECH, SUBLANG_DEFAULT
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS kalkulačka"
CAPTION "Kalkulačka"
MENU IDR_MENU_SCIENTIFIC_1
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
GROUPBOX "", IDC_STATIC, 5 ,14, 141, 20
CONTROL "Hex", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 8, 21, 30, 10
CONTROL "Dec", IDC_RADIO_DEC, "Button", BS_AUTORADIOBUTTON, 41, 21, 30, 10
CONTROL "Oct", IDC_RADIO_OCT, "Button", BS_AUTORADIOBUTTON, 74, 21, 30, 10
CONTROL "Bin", IDC_RADIO_BIN, "Button", BS_AUTORADIOBUTTON, 107, 21, 30, 10
AUTORADIOBUTTON "Hex", IDC_RADIO_HEX, 8, 21, 30, 10
AUTORADIOBUTTON "Dec", IDC_RADIO_DEC, 41, 21, 30, 10
AUTORADIOBUTTON "Oct", IDC_RADIO_OCT, 74, 21, 30, 10
AUTORADIOBUTTON "Bin", IDC_RADIO_BIN, 107, 21, 30, 10
GROUPBOX "", IDC_STATIC, 5, 34, 84, 20
CONTROL "Inv", IDC_CHECK_INV, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 8, 41, 26, 10
CONTROL "Hyp", IDC_CHECK_HYP, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 49, 41, 29, 10
@@ -134,17 +133,13 @@ BEGIN
PUSHBUTTON "F", IDC_BUTTON_F, 286, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
GROUPBOX "", IDC_STATIC, 147, 14, 163, 20
CONTROL "Qword", IDC_RADIO_QWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 150, 21, 38, 10
CONTROL "Dword", IDC_RADIO_DWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 190, 21, 38, 10
CONTROL "Word", IDC_RADIO_WORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 230, 21, 38, 10
CONTROL "Byte", IDC_RADIO_BYTE, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 270, 21, 38, 10
CONTROL "Stupně", IDC_RADIO_DEG, "Button", BS_AUTORADIOBUTTON, 150, 21, 45, 10
CONTROL "Radiány", IDC_RADIO_RAD, "Button", BS_AUTORADIOBUTTON, 204, 21, 45, 10
CONTROL "Grady", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 258, 21, 45, 10
AUTORADIOBUTTON "Qword", IDC_RADIO_QWORD, 150, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Dword", IDC_RADIO_DWORD, 190, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Word", IDC_RADIO_WORD, 230, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Byte", IDC_RADIO_BYTE, 270, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Stupně", IDC_RADIO_DEG, 150, 21, 45, 10
AUTORADIOBUTTON "Radiány", IDC_RADIO_RAD, 204, 21, 45, 10
AUTORADIOBUTTON "Grady", IDC_RADIO_GRAD, 258, 21, 45, 10
PUSHBUTTON "C", IDC_BUTTON_CANC, 267, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 222, 38, 43, 18, BS_CENTER | BS_VCENTER |
@@ -157,7 +152,7 @@ END
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Kalkulačka"
CAPTION "Kalkulačka"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
@@ -222,7 +217,7 @@ END
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Kalkulačka"
CAPTION "Kalkulačka"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg"
BEGIN
@@ -314,8 +309,8 @@ IDR_MENU_SCIENTIFIC_1 MENU
BEGIN
POPUP "Úpravy"
BEGIN
MENUITEM "Kopírovat\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Vložit\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "Kopírovat\tCtrl-C", IDM_EDIT_COPY
MENUITEM "Vložit\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "Zobrazit"
BEGIN
@@ -346,8 +341,8 @@ IDR_MENU_SCIENTIFIC_2 MENU
BEGIN
POPUP "Úpravy"
BEGIN
MENUITEM "Kopírovat\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Vložit\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "Kopírovat\tCtrl-C", IDM_EDIT_COPY
MENUITEM "Vložit\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "Zobrazit"
BEGIN
@@ -379,8 +374,8 @@ IDR_MENU_STANDARD MENU
BEGIN
POPUP "Úpravy"
BEGIN
MENUITEM "Kopírovat\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Vložit\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "Kopírovat\tCtrl-C", IDM_EDIT_COPY
MENUITEM "Vložit\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "Zobrazit"
BEGIN
@@ -509,7 +504,7 @@ BEGIN
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
IDS_CURRENCY_LUXEMBOURG_FRANC "Lucemburský frank"
IDS_CURRENCY_MALTESE_LIRA "Maltská lira"
IDS_CURRENCY_PORTOGUESE_ESCUDO "Portugalské escudo"
IDS_CURRENCY_PORTUGUESE_ESCUDO "Portugalské escudo"
IDS_CURRENCY_SLOVAK_KORUNA "Slovenská koruna"
IDS_CURRENCY_SLOVENIAN_TOLAR "Slovinský tolar"
IDS_CURRENCY_SPANISH_PESETA "Španělská peseta"

View File

@@ -4,15 +4,15 @@ LANGUAGE LANG_GERMAN, SUBLANG_NEUTRAL
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Rechner"
CAPTION "Rechner"
MENU IDR_MENU_SCIENTIFIC_1
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
GROUPBOX "", IDC_STATIC, 5 ,14, 141, 20
CONTROL "Hex", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 8, 21, 30, 10
CONTROL "Dez", IDC_RADIO_DEC, "Button", BS_AUTORADIOBUTTON, 41, 21, 30, 10
CONTROL "Okt", IDC_RADIO_OCT, "Button", BS_AUTORADIOBUTTON, 74, 21, 30, 10
CONTROL "Bin", IDC_RADIO_BIN, "Button", BS_AUTORADIOBUTTON, 107, 21, 30, 10
AUTORADIOBUTTON "Hex", IDC_RADIO_HEX, 8, 21, 30, 10
AUTORADIOBUTTON "Dez", IDC_RADIO_DEC, 41, 21, 30, 10
AUTORADIOBUTTON "Okt", IDC_RADIO_OCT, 74, 21, 30, 10
AUTORADIOBUTTON "Bin", IDC_RADIO_BIN, 107, 21, 30, 10
GROUPBOX "", IDC_STATIC, 5, 34, 84, 20
CONTROL "Inv", IDC_CHECK_INV, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 8, 41, 26, 10
CONTROL "Hyp", IDC_CHECK_HYP, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 49, 41, 29, 10
@@ -129,17 +129,13 @@ BEGIN
PUSHBUTTON "F", IDC_BUTTON_F, 286, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
GROUPBOX "", IDC_STATIC, 147, 14, 163, 20
CONTROL "Qword", IDC_RADIO_QWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 150, 21, 38, 10
CONTROL "Dword", IDC_RADIO_DWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 190, 21, 38, 10
CONTROL "Word", IDC_RADIO_WORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 230, 21, 38, 10
CONTROL "Byte", IDC_RADIO_BYTE, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 270, 21, 38, 10
CONTROL "Degree", IDC_RADIO_DEG, "Button", BS_AUTORADIOBUTTON, 150, 21, 45, 10
CONTROL "Radiant", IDC_RADIO_RAD, "Button", BS_AUTORADIOBUTTON, 204, 21, 45, 10
CONTROL "Grad", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 258, 21, 45, 10
AUTORADIOBUTTON "Qword", IDC_RADIO_QWORD, 150, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Dword", IDC_RADIO_DWORD, 190, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Word", IDC_RADIO_WORD, 230, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Byte", IDC_RADIO_BYTE, 270, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Degree", IDC_RADIO_DEG, 150, 21, 45, 10
AUTORADIOBUTTON "Radiant", IDC_RADIO_RAD, 204, 21, 45, 10
AUTORADIOBUTTON "Grad", IDC_RADIO_GRAD, 258, 21, 45, 10
PUSHBUTTON "C", IDC_BUTTON_CANC, 267, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 222, 38, 43, 18, BS_CENTER | BS_VCENTER |
@@ -152,7 +148,7 @@ END
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Rechner"
CAPTION "Rechner"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
@@ -217,7 +213,7 @@ END
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Rechner"
CAPTION "Rechner"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg"
BEGIN
@@ -307,89 +303,89 @@ END
IDR_MENU_SCIENTIFIC_1 MENU
BEGIN
POPUP "Bearbeiten"
POPUP "&Bearbeiten"
BEGIN
MENUITEM "Kopieren\tSTRG-C", IDM_EDIT_COPY
MENUITEM "Einfügen\tSTRG-V", IDM_EDIT_PASTE
MENUITEM "&Kopieren\tStrg-C", IDM_EDIT_COPY
MENUITEM "&Einfügen\tStrg-V", IDM_EDIT_PASTE
END
POPUP "Ansicht"
POPUP "&Ansicht"
BEGIN
MENUITEM "Standard", IDM_VIEW_STANDARD
MENUITEM "Wissenschaftlich", IDM_VIEW_SCIENTIFIC
MENUITEM "Konversion", IDM_VIEW_CONVERSION
MENUITEM "&Standard", IDM_VIEW_STANDARD
MENUITEM "&Wissenschaftlich", IDM_VIEW_SCIENTIFIC
MENUITEM "Kon&version", IDM_VIEW_CONVERSION
MENUITEM SEPARATOR
MENUITEM "Hex\tF5", IDM_VIEW_HEX, CHECKED
MENUITEM "Dezimal\tF6", IDM_VIEW_DEC, CHECKED
MENUITEM "Oktal\tF7", IDM_VIEW_OCT, CHECKED
MENUITEM "Binär\tF8", IDM_VIEW_BIN, CHECKED
MENUITEM "&Hex\tF5", IDM_VIEW_HEX, CHECKED
MENUITEM "De&zimal\tF6", IDM_VIEW_DEC, CHECKED
MENUITEM "O&ktal\tF7", IDM_VIEW_OCT, CHECKED
MENUITEM "&Binär\tF8", IDM_VIEW_BIN, CHECKED
MENUITEM SEPARATOR
MENUITEM "Degree\tF2", IDM_VIEW_DEG, CHECKED
MENUITEM "Radiant\tF3", IDM_VIEW_RAD, CHECKED
MENUITEM "Grad\tF4", IDM_VIEW_GRAD, CHECKED
MENUITEM "&Deg\tF2", IDM_VIEW_DEG, CHECKED
MENUITEM "&Rad\tF3", IDM_VIEW_RAD, CHECKED
MENUITEM "&Grad\tF4", IDM_VIEW_GRAD, CHECKED
MENUITEM SEPARATOR
MENUITEM "Zifferngruppierung", IDM_VIEW_GROUP, CHECKED
MENUITEM "Zifferngr&uppierung", IDM_VIEW_GROUP, CHECKED
END
POPUP "Hilfe"
POPUP "&?"
BEGIN
MENUITEM "Hilfethemen", IDM_HELP_HELP
MENUITEM "&Hilfethemen", IDM_HELP_HELP
MENUITEM SEPARATOR
MENUITEM "Info", IDM_HELP_ABOUT
MENUITEM "&Info", IDM_HELP_ABOUT
END
END
IDR_MENU_SCIENTIFIC_2 MENU
BEGIN
POPUP "Bearbeiten"
POPUP "&Bearbeiten"
BEGIN
MENUITEM "Kopieren\tSTRG-C", IDM_EDIT_COPY
MENUITEM "Einfügen\tSTRG-V", IDM_EDIT_PASTE
MENUITEM "&Kopieren\tStrg-C", IDM_EDIT_COPY
MENUITEM "&Einfügen\tStrg-V", IDM_EDIT_PASTE
END
POPUP "Ansicht"
POPUP "&Ansicht"
BEGIN
MENUITEM "Standard", IDM_VIEW_STANDARD
MENUITEM "Wissenschaftlich", IDM_VIEW_SCIENTIFIC
MENUITEM "Konversion", IDM_VIEW_CONVERSION
MENUITEM "&Standard", IDM_VIEW_STANDARD
MENUITEM "&Wissenschaftlich", IDM_VIEW_SCIENTIFIC
MENUITEM "Kon&version", IDM_VIEW_CONVERSION
MENUITEM SEPARATOR
MENUITEM "Hex\tF5", IDM_VIEW_HEX, CHECKED
MENUITEM "Dezimal\tF6", IDM_VIEW_DEC, CHECKED
MENUITEM "Oktal\tF7", IDM_VIEW_OCT, CHECKED
MENUITEM "Binär\tF8", IDM_VIEW_BIN, CHECKED
MENUITEM "&Hex\tF5", IDM_VIEW_HEX, CHECKED
MENUITEM "&Dezimal\tF6", IDM_VIEW_DEC, CHECKED
MENUITEM "O&ktal\tF7", IDM_VIEW_OCT, CHECKED
MENUITEM "Bi&när\tF8", IDM_VIEW_BIN, CHECKED
MENUITEM SEPARATOR
MENUITEM "Qword\tF12", IDM_VIEW_QWORD, CHECKED
MENUITEM "Dword\tF2", IDM_VIEW_DWORD, CHECKED
MENUITEM "Word\tF3", IDM_VIEW_WORD, CHECKED
MENUITEM "Byte\tF4", IDM_VIEW_BYTE, CHECKED
MENUITEM "&Qword\tF12", IDM_VIEW_QWORD, CHECKED
MENUITEM "Dw&ord\tF2", IDM_VIEW_DWORD, CHECKED
MENUITEM "Wo&rd\tF3", IDM_VIEW_WORD, CHECKED
MENUITEM "&Byte\tF4", IDM_VIEW_BYTE, CHECKED
MENUITEM SEPARATOR
MENUITEM "Zifferngruppierung", IDM_VIEW_GROUP, CHECKED
MENUITEM "Zifferngr&uppierung", IDM_VIEW_GROUP, CHECKED
END
POPUP "Hilfe"
POPUP "&?"
BEGIN
MENUITEM "Hilfethemen", IDM_HELP_HELP
MENUITEM "&Hilfethemen", IDM_HELP_HELP
MENUITEM SEPARATOR
MENUITEM "Über ReactOS Rechner", IDM_HELP_ABOUT
MENUITEM "&Info", IDM_HELP_ABOUT
END
END
IDR_MENU_STANDARD MENU
BEGIN
POPUP "Bearbeiten"
POPUP "&Bearbeiten"
BEGIN
MENUITEM "Kopieren\tSTRG-C", IDM_EDIT_COPY
MENUITEM "Einfügen\tSTRG-V", IDM_EDIT_PASTE
MENUITEM "&Kopieren\tStrg-C", IDM_EDIT_COPY
MENUITEM "&Einfügen\tStrg-V", IDM_EDIT_PASTE
END
POPUP "Ansicht"
POPUP "&Ansicht"
BEGIN
MENUITEM "Standard", IDM_VIEW_STANDARD
MENUITEM "Wissenschaftlich", IDM_VIEW_SCIENTIFIC
MENUITEM "Konversion", IDM_VIEW_CONVERSION
MENUITEM "&Standard", IDM_VIEW_STANDARD
MENUITEM "&Wissenschaftlich", IDM_VIEW_SCIENTIFIC
MENUITEM "Kon&version", IDM_VIEW_CONVERSION
MENUITEM SEPARATOR
MENUITEM "Zifferngruppierung", IDM_VIEW_GROUP, CHECKED
MENUITEM "Zifferngr&uppierung", IDM_VIEW_GROUP, CHECKED
END
POPUP "Hilfe"
POPUP "&?"
BEGIN
MENUITEM "Hilfethemen", IDM_HELP_HELP
MENUITEM "&Hilfethemen", IDM_HELP_HELP
MENUITEM SEPARATOR
MENUITEM "Über ReactOS Rechner", IDM_HELP_ABOUT
MENUITEM "&Info", IDM_HELP_ABOUT
END
END
@@ -504,7 +500,7 @@ BEGIN
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
IDS_CURRENCY_LUXEMBOURG_FRANC "Luxemburgische Franc"
IDS_CURRENCY_MALTESE_LIRA "Maltesische Lire"
IDS_CURRENCY_PORTOGUESE_ESCUDO "Portugiesische Escudo"
IDS_CURRENCY_PORTUGUESE_ESCUDO "Portugiesische Escudo"
IDS_CURRENCY_SLOVAK_KORUNA "Slowakische Krone"
IDS_CURRENCY_SLOVENIAN_TOLAR "Slovenische Tolar"
IDS_CURRENCY_SPANISH_PESETA "Spanische Peseta"

View File

@@ -9,10 +9,10 @@ MENU IDR_MENU_SCIENTIFIC_1
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
GROUPBOX "", IDC_STATIC, 5 ,14, 141, 20
CONTROL "Hex", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 8, 21, 30, 10
CONTROL "Dec", IDC_RADIO_DEC, "Button", BS_AUTORADIOBUTTON, 41, 21, 30, 10
CONTROL "Oct", IDC_RADIO_OCT, "Button", BS_AUTORADIOBUTTON, 74, 21, 30, 10
CONTROL "Bin", IDC_RADIO_BIN, "Button", BS_AUTORADIOBUTTON, 107, 21, 30, 10
AUTORADIOBUTTON "Hex", IDC_RADIO_HEX, 8, 21, 30, 10
AUTORADIOBUTTON "Dec", IDC_RADIO_DEC, 41, 21, 30, 10
AUTORADIOBUTTON "Oct", IDC_RADIO_OCT, 74, 21, 30, 10
AUTORADIOBUTTON "Bin", IDC_RADIO_BIN, 107, 21, 30, 10
GROUPBOX "", IDC_STATIC, 5, 34, 84, 20
CONTROL "Inv", IDC_CHECK_INV, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 8, 41, 26, 10
CONTROL "Hyp", IDC_CHECK_HYP, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 49, 41, 29, 10
@@ -129,17 +129,13 @@ BEGIN
PUSHBUTTON "F", IDC_BUTTON_F, 286, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
GROUPBOX "", IDC_STATIC, 147, 14, 163, 20
CONTROL "Qword", IDC_RADIO_QWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 150, 21, 38, 10
CONTROL "Dword", IDC_RADIO_DWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 190, 21, 38, 10
CONTROL "Word", IDC_RADIO_WORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 230, 21, 38, 10
CONTROL "Byte", IDC_RADIO_BYTE, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 270, 21, 38, 10
CONTROL "Βαθμοί", IDC_RADIO_DEG, "Button", BS_AUTORADIOBUTTON, 150, 21, 45, 10
CONTROL "Μοίρες", IDC_RADIO_RAD, "Button", BS_AUTORADIOBUTTON, 204, 21, 45, 10
CONTROL "Ακτίνια", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 258, 21, 45, 10
AUTORADIOBUTTON "Qword", IDC_RADIO_QWORD, 150, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Dword", IDC_RADIO_DWORD, 190, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Word", IDC_RADIO_WORD, 230, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Byte", IDC_RADIO_BYTE, 270, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Βαθμοί", IDC_RADIO_DEG, 150, 21, 45, 10
AUTORADIOBUTTON "Μοίρες", IDC_RADIO_RAD, 204, 21, 45, 10
AUTORADIOBUTTON "Ακτίνια", IDC_RADIO_GRAD, 258, 21, 45, 10
PUSHBUTTON "C", IDC_BUTTON_CANC, 267, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 222, 38, 43, 18, BS_CENTER | BS_VCENTER |
@@ -309,8 +305,8 @@ IDR_MENU_SCIENTIFIC_1 MENU
BEGIN
POPUP "Επεξεργασία"
BEGIN
MENUITEM "Αντιγραφή\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Επικόλληση\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "Αντιγραφή\tCtrl-C", IDM_EDIT_COPY
MENUITEM "Επικόλληση\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "View"
BEGIN
@@ -341,8 +337,8 @@ IDR_MENU_SCIENTIFIC_2 MENU
BEGIN
POPUP "Επεξεργασία"
BEGIN
MENUITEM "Αντιγραφή\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Επικόλληση\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "Αντιγραφή\tCtrl-C", IDM_EDIT_COPY
MENUITEM "Επικόλληση\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "View"
BEGIN
@@ -374,8 +370,8 @@ IDR_MENU_STANDARD MENU
BEGIN
POPUP "Επεξεργασία"
BEGIN
MENUITEM "Αντιγραφή\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Επικόλληση\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "Αντιγραφή\tCtrl-C", IDM_EDIT_COPY
MENUITEM "Επικόλληση\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "View"
BEGIN
@@ -504,7 +500,7 @@ BEGIN
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
IDS_CURRENCY_LUXEMBOURG_FRANC "Luxembourg franc"
IDS_CURRENCY_MALTESE_LIRA "Μαλτέζικη λίρα"
IDS_CURRENCY_PORTOGUESE_ESCUDO "Πορτογαλικό εσκούδο"
IDS_CURRENCY_PORTUGUESE_ESCUDO "Πορτογαλικό εσκούδο"
IDS_CURRENCY_SLOVAK_KORUNA "Slovak koruna"
IDS_CURRENCY_SLOVENIAN_TOLAR "Slovenian tolar"
IDS_CURRENCY_SPANISH_PESETA "Ισπανική πεσέτα"

View File

@@ -4,15 +4,15 @@ LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Calculator"
CAPTION "Calculator"
MENU IDR_MENU_SCIENTIFIC_1
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
GROUPBOX "", IDC_STATIC, 5 ,14, 141, 20
CONTROL "Hex", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 8, 21, 30, 10
CONTROL "Dec", IDC_RADIO_DEC, "Button", BS_AUTORADIOBUTTON, 41, 21, 30, 10
CONTROL "Oct", IDC_RADIO_OCT, "Button", BS_AUTORADIOBUTTON, 74, 21, 30, 10
CONTROL "Bin", IDC_RADIO_BIN, "Button", BS_AUTORADIOBUTTON, 107, 21, 30, 10
AUTORADIOBUTTON "Hex", IDC_RADIO_HEX, 8, 21, 30, 10
AUTORADIOBUTTON "Dec", IDC_RADIO_DEC, 41, 21, 30, 10
AUTORADIOBUTTON "Oct", IDC_RADIO_OCT, 74, 21, 30, 10
AUTORADIOBUTTON "Bin", IDC_RADIO_BIN, 107, 21, 30, 10
GROUPBOX "", IDC_STATIC, 5, 34, 84, 20
CONTROL "Inv", IDC_CHECK_INV, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 8, 41, 26, 10
CONTROL "Hyp", IDC_CHECK_HYP, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 49, 41, 29, 10
@@ -129,17 +129,13 @@ BEGIN
PUSHBUTTON "F", IDC_BUTTON_F, 286, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
GROUPBOX "", IDC_STATIC, 147, 14, 163, 20
CONTROL "Qword", IDC_RADIO_QWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 150, 21, 38, 10
CONTROL "Dword", IDC_RADIO_DWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 190, 21, 38, 10
CONTROL "Word", IDC_RADIO_WORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 230, 21, 38, 10
CONTROL "Byte", IDC_RADIO_BYTE, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 270, 21, 38, 10
CONTROL "Degrees", IDC_RADIO_DEG, "Button", BS_AUTORADIOBUTTON, 150, 21, 45, 10
CONTROL "Radians", IDC_RADIO_RAD, "Button", BS_AUTORADIOBUTTON, 204, 21, 45, 10
CONTROL "Gradians", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 258, 21, 45, 10
AUTORADIOBUTTON "Qword", IDC_RADIO_QWORD, 150, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Dword", IDC_RADIO_DWORD, 190, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Word", IDC_RADIO_WORD, 230, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Byte", IDC_RADIO_BYTE, 270, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Degrees", IDC_RADIO_DEG, 150, 21, 45, 10
AUTORADIOBUTTON "Radians", IDC_RADIO_RAD, 204, 21, 45, 10
AUTORADIOBUTTON "Gradians", IDC_RADIO_GRAD, 258, 21, 45, 10
PUSHBUTTON "C", IDC_BUTTON_CANC, 267, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 222, 38, 43, 18, BS_CENTER | BS_VCENTER |
@@ -152,7 +148,7 @@ END
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Calculator"
CAPTION "Calculator"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
@@ -217,7 +213,7 @@ END
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Calculator"
CAPTION "Calculator"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg"
BEGIN
@@ -504,7 +500,7 @@ BEGIN
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
IDS_CURRENCY_LUXEMBOURG_FRANC "Luxembourg franc"
IDS_CURRENCY_MALTESE_LIRA "Maltese lira"
IDS_CURRENCY_PORTOGUESE_ESCUDO "Portuguese escudo"
IDS_CURRENCY_PORTUGUESE_ESCUDO "Portuguese escudo"
IDS_CURRENCY_SLOVAK_KORUNA "Slovak koruna"
IDS_CURRENCY_SLOVENIAN_TOLAR "Slovenian tolar"
IDS_CURRENCY_SPANISH_PESETA "Spanish peseta"

View File

@@ -10,15 +10,15 @@ LANGUAGE LANG_SPANISH, SUBLANG_NEUTRAL
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Calculadora de ReactOS"
CAPTION "Calculadora"
MENU IDR_MENU_SCIENTIFIC_1
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
GROUPBOX "", IDC_STATIC, 5 ,14, 141, 20
CONTROL "Hex", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 8, 21, 30, 10
CONTROL "Dec", IDC_RADIO_DEC, "Button", BS_AUTORADIOBUTTON, 41, 21, 30, 10
CONTROL "Oct", IDC_RADIO_OCT, "Button", BS_AUTORADIOBUTTON, 74, 21, 30, 10
CONTROL "Bin", IDC_RADIO_BIN, "Button", BS_AUTORADIOBUTTON, 107, 21, 30, 10
AUTORADIOBUTTON "Hex", IDC_RADIO_HEX, 8, 21, 30, 10
AUTORADIOBUTTON "Dec", IDC_RADIO_DEC, 41, 21, 30, 10
AUTORADIOBUTTON "Oct", IDC_RADIO_OCT, 74, 21, 30, 10
AUTORADIOBUTTON "Bin", IDC_RADIO_BIN, 107, 21, 30, 10
GROUPBOX "", IDC_STATIC, 5, 34, 84, 20
CONTROL "Inv", IDC_CHECK_INV, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 8, 41, 26, 10
CONTROL "Hipotenusa", IDC_CHECK_HYP, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 37, 41, 48, 10
@@ -135,17 +135,13 @@ BEGIN
PUSHBUTTON "F", IDC_BUTTON_F, 286, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
GROUPBOX "", IDC_STATIC, 147, 14, 163, 20
CONTROL "Qword", IDC_RADIO_QWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 150, 21, 38, 10
CONTROL "Dword", IDC_RADIO_DWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 190, 21, 38, 10
CONTROL "Word", IDC_RADIO_WORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 230, 21, 38, 10
CONTROL "Byte", IDC_RADIO_BYTE, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 270, 21, 38, 10
CONTROL "Grados", IDC_RADIO_DEG, "Button", BS_AUTORADIOBUTTON, 151, 21, 45, 10
CONTROL "Radianes", IDC_RADIO_RAD, "Button", BS_AUTORADIOBUTTON, 198, 21, 45, 10
CONTROL "Gradianes", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 248, 21, 45, 10
AUTORADIOBUTTON "Qword", IDC_RADIO_QWORD, 150, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Dword", IDC_RADIO_DWORD, 190, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Word", IDC_RADIO_WORD, 230, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Byte", IDC_RADIO_BYTE, 270, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Grados", IDC_RADIO_DEG, 150, 21, 45, 10
AUTORADIOBUTTON "Radianes", IDC_RADIO_RAD, 204, 21, 45, 10
AUTORADIOBUTTON "Gradianes", IDC_RADIO_GRAD, 258, 21, 45, 10
PUSHBUTTON "C", IDC_BUTTON_CANC, 267, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 222, 38, 43, 18, BS_CENTER | BS_VCENTER |
@@ -158,7 +154,7 @@ END
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Calculadora de ReactOS"
CAPTION "Calculadora"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
@@ -223,7 +219,7 @@ END
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Calculadora de ReactOS"
CAPTION "Calculadora"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg"
BEGIN
@@ -315,8 +311,8 @@ IDR_MENU_SCIENTIFIC_1 MENU
BEGIN
POPUP "Edición"
BEGIN
MENUITEM "Copiar\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Pegar\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "Copiar\tCtrl-C", IDM_EDIT_COPY
MENUITEM "Pegar\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "Ver"
BEGIN
@@ -347,8 +343,8 @@ IDR_MENU_SCIENTIFIC_2 MENU
BEGIN
POPUP "Edición"
BEGIN
MENUITEM "Copiar\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Pegar\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "Copiar\tCtrl-C", IDM_EDIT_COPY
MENUITEM "Pegar\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "Ver"
BEGIN
@@ -380,8 +376,8 @@ IDR_MENU_STANDARD MENU
BEGIN
POPUP "Edición"
BEGIN
MENUITEM "Copiar\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Pegar\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "Copiar\tCtrl-C", IDM_EDIT_COPY
MENUITEM "Pegar\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "Ver"
BEGIN
@@ -510,7 +506,7 @@ BEGIN
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
IDS_CURRENCY_LUXEMBOURG_FRANC "Franco luxemburgués"
IDS_CURRENCY_MALTESE_LIRA "Lira maltesa"
IDS_CURRENCY_PORTOGUESE_ESCUDO "Escudo portugués"
IDS_CURRENCY_PORTUGUESE_ESCUDO "Escudo portugués"
IDS_CURRENCY_SLOVAK_KORUNA "Corona eslovaca"
IDS_CURRENCY_SLOVENIAN_TOLAR "Tolar esloveno"
IDS_CURRENCY_SPANISH_PESETA "Peseta española"

View File

@@ -4,15 +4,15 @@ LANGUAGE LANG_FRENCH, SUBLANG_NEUTRAL
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Calculatrice ReactOS"
CAPTION "Calculatrice"
MENU IDR_MENU_SCIENTIFIC_1
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
GROUPBOX "", IDC_STATIC, 5 ,14, 141, 20
CONTROL "Hex", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 8, 21, 30, 10
CONTROL "Dec", IDC_RADIO_DEC, "Button", BS_AUTORADIOBUTTON, 41, 21, 30, 10
CONTROL "Oct", IDC_RADIO_OCT, "Button", BS_AUTORADIOBUTTON, 74, 21, 30, 10
CONTROL "Bin", IDC_RADIO_BIN, "Button", BS_AUTORADIOBUTTON, 107, 21, 30, 10
AUTORADIOBUTTON "Hex", IDC_RADIO_HEX, 8, 21, 30, 10
AUTORADIOBUTTON "Dec", IDC_RADIO_DEC, 41, 21, 30, 10
AUTORADIOBUTTON "Oct", IDC_RADIO_OCT, 74, 21, 30, 10
AUTORADIOBUTTON "Bin", IDC_RADIO_BIN, 107, 21, 30, 10
GROUPBOX "", IDC_STATIC, 5, 34, 84, 20
CONTROL "Inv", IDC_CHECK_INV, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 8, 41, 26, 10
CONTROL "Hyp", IDC_CHECK_HYP, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 49, 41, 29, 10
@@ -129,17 +129,13 @@ BEGIN
PUSHBUTTON "F", IDC_BUTTON_F, 286, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
GROUPBOX "", IDC_STATIC, 147, 14, 163, 20
CONTROL "Q-mot", IDC_RADIO_QWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 150, 21, 38, 10
CONTROL "D-mot", IDC_RADIO_DWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 190, 21, 38, 10
CONTROL "Mot", IDC_RADIO_WORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 230, 21, 38, 10
CONTROL "Octet", IDC_RADIO_BYTE, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 270, 21, 38, 10
CONTROL "Degrés", IDC_RADIO_DEG, "Button", BS_AUTORADIOBUTTON, 150, 21, 45, 10
CONTROL "Radians", IDC_RADIO_RAD, "Button", BS_AUTORADIOBUTTON, 204, 21, 45, 10
CONTROL "Grades", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 258, 21, 45, 10
AUTORADIOBUTTON "Q-mot", IDC_RADIO_QWORD, 150, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "D-mot", IDC_RADIO_DWORD, 190, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Mot", IDC_RADIO_WORD, 230, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Octet", IDC_RADIO_BYTE, 270, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Degrés", IDC_RADIO_DEG, 150, 21, 45, 10
AUTORADIOBUTTON "Radians", IDC_RADIO_RAD, 204, 21, 45, 10
AUTORADIOBUTTON "Grades", IDC_RADIO_GRAD, 258, 21, 45, 10
PUSHBUTTON "C", IDC_BUTTON_CANC, 267, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 222, 38, 43, 18, BS_CENTER | BS_VCENTER |
@@ -152,7 +148,7 @@ END
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Calculatrice ReactOS"
CAPTION "Calculatrice"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
@@ -217,7 +213,7 @@ END
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Calculatrice ReactOS"
CAPTION "Calculatrice"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg"
BEGIN
@@ -309,8 +305,8 @@ IDR_MENU_SCIENTIFIC_1 MENU
BEGIN
POPUP "Édition"
BEGIN
MENUITEM "Copier\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Coller\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "Copier\tCtrl-C", IDM_EDIT_COPY
MENUITEM "Coller\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "Affichage"
BEGIN
@@ -341,8 +337,8 @@ IDR_MENU_SCIENTIFIC_2 MENU
BEGIN
POPUP "Édition"
BEGIN
MENUITEM "Copier\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Coller\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "Copier\tCtrl-C", IDM_EDIT_COPY
MENUITEM "Coller\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "Affichage"
BEGIN
@@ -374,8 +370,8 @@ IDR_MENU_STANDARD MENU
BEGIN
POPUP "Édition"
BEGIN
MENUITEM "Copier\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Coller\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "Copier\tCtrl-C", IDM_EDIT_COPY
MENUITEM "Coller\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "Affichage"
BEGIN
@@ -504,7 +500,7 @@ BEGIN
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
IDS_CURRENCY_LUXEMBOURG_FRANC "Franc luxembourgeois"
IDS_CURRENCY_MALTESE_LIRA "Lire maltaise"
IDS_CURRENCY_PORTOGUESE_ESCUDO "Escudo portugaise"
IDS_CURRENCY_PORTUGUESE_ESCUDO "Escudo portugaise"
IDS_CURRENCY_SLOVAK_KORUNA "Couronne slovaque"
IDS_CURRENCY_SLOVENIAN_TOLAR "Tolar slovène"
IDS_CURRENCY_SPANISH_PESETA "Peseta espagnole"

View File

@@ -1,4 +1,4 @@
/* Translated by Baruch Rutman */
/* TRANSLATOR: Baruch Rutman */
LANGUAGE LANG_HEBREW, SUBLANG_DEFAULT
@@ -7,15 +7,15 @@ LANGUAGE LANG_HEBREW, SUBLANG_DEFAULT
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
EXSTYLE WS_EX_LAYOUTRTL
CAPTION "מחשבון ReactOS"
CAPTION "מחשבון"
MENU IDR_MENU_SCIENTIFIC_1
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
GROUPBOX "", IDC_STATIC, 4 ,14, 141, 20
CONTROL "הקס", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 6, 21, 30, 10
CONTROL "עשרוני", IDC_RADIO_DEC, "Button", BS_AUTORADIOBUTTON, 36, 21, 34, 10
CONTROL "אוקטלי", IDC_RADIO_OCT, "Button", BS_AUTORADIOBUTTON, 73, 21, 37, 10
CONTROL "בינרי", IDC_RADIO_BIN, "Button", BS_AUTORADIOBUTTON, 113, 21, 30, 10
AUTORADIOBUTTON "הקס", IDC_RADIO_HEX, 6, 21, 30, 10
AUTORADIOBUTTON "עשרוני", IDC_RADIO_DEC, 36, 21, 34, 10
AUTORADIOBUTTON "אוקטלי", IDC_RADIO_OCT, 73, 21, 37, 10
AUTORADIOBUTTON "בינרי", IDC_RADIO_BIN, 113, 21, 30, 10
GROUPBOX "", IDC_STATIC, 4, 34, 84, 20
CONTROL "Inv", IDC_CHECK_INV, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 8, 41, 26, 10
CONTROL "Hyp", IDC_CHECK_HYP, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 49, 41, 29, 10
@@ -132,17 +132,13 @@ BEGIN
PUSHBUTTON "A", IDC_BUTTON_A, 286, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
GROUPBOX "", IDC_STATIC, 147, 14, 163, 20
CONTROL "Qword", IDC_RADIO_QWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 150, 21, 38, 10
CONTROL "Dword", IDC_RADIO_DWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 190, 21, 38, 10
CONTROL "Word", IDC_RADIO_WORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 230, 21, 38, 10
CONTROL "Byte", IDC_RADIO_BYTE, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 270, 21, 38, 10
CONTROL "מעלות", IDC_RADIO_DEG, "Button", BS_AUTORADIOBUTTON, 150, 21, 45, 10
CONTROL "רדיאנים", IDC_RADIO_RAD, "Button", BS_AUTORADIOBUTTON, 204, 21, 45, 10
CONTROL "גרדיאנים", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 258, 21, 45, 10
AUTORADIOBUTTON "Qword", IDC_RADIO_QWORD, 150, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Dword", IDC_RADIO_DWORD, 190, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Word", IDC_RADIO_WORD, 230, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Byte", IDC_RADIO_BYTE, 270, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "מעלות", IDC_RADIO_DEG, 150, 21, 45, 10
AUTORADIOBUTTON "רדיאנים", IDC_RADIO_RAD, 204, 21, 45, 10
AUTORADIOBUTTON "גרדיאנים", IDC_RADIO_GRAD, 258, 21, 45, 10
PUSHBUTTON "C", IDC_BUTTON_CANC, 267, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 222, 38, 43, 18, BS_CENTER | BS_VCENTER |
@@ -156,7 +152,7 @@ END
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
EXSTYLE WS_EX_LAYOUTRTL
CAPTION "מחשבון ReactOS"
CAPTION "מחשבון"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
@@ -222,7 +218,7 @@ END
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
EXSTYLE WS_EX_LAYOUTRTL
CAPTION "מחשבון ReactOS"
CAPTION "מחשבון"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg"
BEGIN
@@ -510,7 +506,7 @@ BEGIN
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
IDS_CURRENCY_LUXEMBOURG_FRANC "פרנק לוקסמבורגי"
IDS_CURRENCY_MALTESE_LIRA "לירה מלטזי"
IDS_CURRENCY_PORTOGUESE_ESCUDO "אסקודו פורטגלי"
IDS_CURRENCY_PORTUGUESE_ESCUDO "אסקודו פורטגלי"
IDS_CURRENCY_SLOVAK_KORUNA "קורונה סלובקית"
IDS_CURRENCY_SLOVENIAN_TOLAR "טולר סלובני"
IDS_CURRENCY_SPANISH_PESETA "פזטה ספרדית"

View File

@@ -1,9 +1,8 @@
/*
* PROJECT: ReactOS Calculator
* LICENSE: GPL - See COPYING in the top level directory
* FILE: base/applications/calc/lang/hu-HU.rc
* PURPOSE: Hungarian Language File for ReactOS Calc
* TRANSLATOR: Nagy Tibor (xnagytibor at gmail dot com)
* TRANSLATOR: Nagy Tibor <xnagytibor@gmail.com>
*/
LANGUAGE LANG_HUNGARIAN, SUBLANG_DEFAULT
@@ -12,15 +11,15 @@ LANGUAGE LANG_HUNGARIAN, SUBLANG_DEFAULT
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Számológép"
CAPTION "Számológép"
MENU IDR_MENU_SCIENTIFIC_1
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
GROUPBOX "", IDC_STATIC, 5 ,14, 141, 20
CONTROL "Hex", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 8, 21, 30, 10
CONTROL "Dec", IDC_RADIO_DEC, "Button", BS_AUTORADIOBUTTON, 41, 21, 30, 10
CONTROL "Oct", IDC_RADIO_OCT, "Button", BS_AUTORADIOBUTTON, 74, 21, 30, 10
CONTROL "Bin", IDC_RADIO_BIN, "Button", BS_AUTORADIOBUTTON, 107, 21, 30, 10
AUTORADIOBUTTON "Hex", IDC_RADIO_HEX, 8, 21, 30, 10
AUTORADIOBUTTON "Dec", IDC_RADIO_DEC, 41, 21, 30, 10
AUTORADIOBUTTON "Oct", IDC_RADIO_OCT, 74, 21, 30, 10
AUTORADIOBUTTON "Bin", IDC_RADIO_BIN, 107, 21, 30, 10
GROUPBOX "", IDC_STATIC, 5, 34, 84, 20
CONTROL "Inv", IDC_CHECK_INV, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 8, 41, 26, 10
CONTROL "Hyp", IDC_CHECK_HYP, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 49, 41, 29, 10
@@ -137,17 +136,13 @@ BEGIN
PUSHBUTTON "F", IDC_BUTTON_F, 286, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
GROUPBOX "", IDC_STATIC, 147, 14, 163, 20
CONTROL "Négyszó", IDC_RADIO_QWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 150, 21, 38, 10
CONTROL "Duplaszó", IDC_RADIO_DWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 190, 21, 38, 10
CONTROL "Szó", IDC_RADIO_WORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 230, 21, 38, 10
CONTROL "Bájt", IDC_RADIO_BYTE, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 270, 21, 38, 10
CONTROL "Fok", IDC_RADIO_DEG, "Button", BS_AUTORADIOBUTTON, 150, 21, 45, 10
CONTROL "Radián", IDC_RADIO_RAD, "Button", BS_AUTORADIOBUTTON, 204, 21, 45, 10
CONTROL "Gradián", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 258, 21, 45, 10
AUTORADIOBUTTON "Négyszó", IDC_RADIO_QWORD, 150, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Duplaszó", IDC_RADIO_DWORD, 190, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Szó", IDC_RADIO_WORD, 230, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Bájt", IDC_RADIO_BYTE, 270, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Fok", IDC_RADIO_DEG, 150, 21, 45, 10
AUTORADIOBUTTON "Radián", IDC_RADIO_RAD, 204, 21, 45, 10
AUTORADIOBUTTON "Gradián", IDC_RADIO_GRAD, 258, 21, 45, 10
PUSHBUTTON "C", IDC_BUTTON_CANC, 267, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 222, 38, 43, 18, BS_CENTER | BS_VCENTER |
@@ -160,7 +155,7 @@ END
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Számológép"
CAPTION "Számológép"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
@@ -225,7 +220,7 @@ END
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Számológép"
CAPTION "Számológép"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg"
BEGIN
@@ -452,12 +447,12 @@ BEGIN
IDS_AREA_ACRES_FRANCE "Acre (Franciaország)"
IDS_AREA_ACRES_SCOTS "Acre (Skót)"
IDS_AREA_ACRES_US "Acre (Egyesült Államok)"
IDS_AREA_ARES "Are" // ?
IDS_AREA_ARES "Are"
IDS_AREA_CHOU "Chou"
IDS_AREA_DANBO "Danbo"
IDS_AREA_HECTARES "Hektár"
IDS_AREA_JEONGBO "Jeongbo"
IDS_AREA_MORGEN_HUNGARY "Hold (Magyarország)" // ?
IDS_AREA_MORGEN_HUNGARY "Hold (Magyarország)"
IDS_AREA_MU "Mu"
IDS_AREA_PING "Ping"
IDS_AREA_PYEONG "Pyeong"
@@ -465,19 +460,19 @@ BEGIN
IDS_AREA_RAI "Rai"
IDS_AREA_SE "Se"
IDS_AREA_SQUARE_CENTIMETERS "Négyzetcentiméter"
IDS_AREA_SQUARE_CHR "Négyzetchr" // ?
IDS_AREA_SQUARE_FATHOMS "Négyzetöl" // Alt.: Négyszögöl
IDS_AREA_SQUARE_FATHOMS_HUNGARY "Négyzetöl (Magyarország)" // Alt.: Négyszögöl (Magyarország)
IDS_AREA_SQUARE_FEET "Négyzetláb" // Alt.: Négyszögláb
IDS_AREA_SQUARE_INCHES "Négyzethüvelyk" // Alt.: Négyszöghüvelyk
IDS_AREA_SQUARE_CHR "Négyzetchr"
IDS_AREA_SQUARE_FATHOMS "Négyzetöl"
IDS_AREA_SQUARE_FATHOMS_HUNGARY "Négyzetöl (Magyarország)"
IDS_AREA_SQUARE_FEET "Négyzetláb"
IDS_AREA_SQUARE_INCHES "Négyzethüvelyk"
IDS_AREA_SQUARE_KILOMETERS "Négyzetkilométer"
IDS_AREA_SQUARE_LAR "Négyzetlar" // ?
IDS_AREA_SQUARE_LAR "Négyzetlar"
IDS_AREA_SQUARE_METER "Négyzetméter"
IDS_AREA_SQUARE_MILES "Négyzetmérföld"
IDS_AREA_SQUARE_MILLIMETERS "Négyzetmilliméter"
IDS_AREA_SQUARE_SHAKU "Négyzetshaku" // ?
IDS_AREA_SQUARE_TSUEN "Négyzettsuen" // ?
IDS_AREA_SQUARE_VA "Négyzetva" // ?
IDS_AREA_SQUARE_SHAKU "Négyzetshaku"
IDS_AREA_SQUARE_TSUEN "Négyzettsuen"
IDS_AREA_SQUARE_VA "Négyzetva"
IDS_AREA_SQUARE_YARD "Négyzetyard"
IDS_AREA_TAN "Tan"
IDS_AREA_TSUBO "Tsubo"
@@ -512,7 +507,7 @@ BEGIN
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
IDS_CURRENCY_LUXEMBOURG_FRANC "Luxemburgi frank"
IDS_CURRENCY_MALTESE_LIRA "Máltai líra"
IDS_CURRENCY_PORTOGUESE_ESCUDO "Portugál escudo"
IDS_CURRENCY_PORTUGUESE_ESCUDO "Portugál escudo"
IDS_CURRENCY_SLOVAK_KORUNA "Szlovák korona"
IDS_CURRENCY_SLOVENIAN_TOLAR "Szlovén tolár"
IDS_CURRENCY_SPANISH_PESETA "Spanyol pezeta"

View File

@@ -11,15 +11,15 @@ LANGUAGE LANG_INDONESIAN, SUBLANG_DEFAULT
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Kalkulator ReactOS"
CAPTION "Kalkulator"
MENU IDR_MENU_SCIENTIFIC_1
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
GROUPBOX "", IDC_STATIC, 5 ,14, 141, 20
CONTROL "Hex", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 8, 21, 30, 10
CONTROL "Dec", IDC_RADIO_DEC, "Button", BS_AUTORADIOBUTTON, 41, 21, 30, 10
CONTROL "Oct", IDC_RADIO_OCT, "Button", BS_AUTORADIOBUTTON, 74, 21, 30, 10
CONTROL "Bin", IDC_RADIO_BIN, "Button", BS_AUTORADIOBUTTON, 107, 21, 30, 10
AUTORADIOBUTTON "Hex", IDC_RADIO_HEX, 8, 21, 30, 10
AUTORADIOBUTTON "Dec", IDC_RADIO_DEC, 41, 21, 30, 10
AUTORADIOBUTTON "Oct", IDC_RADIO_OCT, 74, 21, 30, 10
AUTORADIOBUTTON "Bin", IDC_RADIO_BIN, 107, 21, 30, 10
GROUPBOX "", IDC_STATIC, 5, 34, 84, 20
CONTROL "Inv", IDC_CHECK_INV, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 8, 41, 26, 10
CONTROL "Hyp", IDC_CHECK_HYP, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 49, 41, 29, 10
@@ -136,17 +136,13 @@ BEGIN
PUSHBUTTON "F", IDC_BUTTON_F, 286, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
GROUPBOX "", IDC_STATIC, 147, 14, 163, 20
CONTROL "Qword", IDC_RADIO_QWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 150, 21, 38, 10
CONTROL "Dword", IDC_RADIO_DWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 190, 21, 38, 10
CONTROL "Word", IDC_RADIO_WORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 230, 21, 38, 10
CONTROL "Byte", IDC_RADIO_BYTE, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 270, 21, 38, 10
CONTROL "Derajat", IDC_RADIO_DEG, "Button", BS_AUTORADIOBUTTON, 150, 21, 45, 10
CONTROL "Radian", IDC_RADIO_RAD, "Button", BS_AUTORADIOBUTTON, 204, 21, 45, 10
CONTROL "Gradian", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 258, 21, 45, 10
AUTORADIOBUTTON "Qword", IDC_RADIO_QWORD, 150, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Dword", IDC_RADIO_DWORD, 190, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Word", IDC_RADIO_WORD, 230, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Byte", IDC_RADIO_BYTE, 270, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Derajat", IDC_RADIO_DEG, 150, 21, 45, 10
AUTORADIOBUTTON "Radian", IDC_RADIO_RAD, 204, 21, 45, 10
AUTORADIOBUTTON "Gradian", IDC_RADIO_GRAD, 258, 21, 45, 10
PUSHBUTTON "C", IDC_BUTTON_CANC, 267, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 222, 38, 43, 18, BS_CENTER | BS_VCENTER |
@@ -159,7 +155,7 @@ END
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Kalkulator ReactOS"
CAPTION "Kalkulator"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
@@ -224,7 +220,7 @@ END
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Kalkulator ReactOS"
CAPTION "Kalkulator"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg"
BEGIN
@@ -511,7 +507,7 @@ BEGIN
IDS_CURRENCY_LITHUANIAN_LITAS "Litas Lithuania"
IDS_CURRENCY_LUXEMBOURG_FRANC "Franc Luksemburg"
IDS_CURRENCY_MALTESE_LIRA "Lira Malta"
IDS_CURRENCY_PORTOGUESE_ESCUDO "Escudo Portugis"
IDS_CURRENCY_PORTUGUESE_ESCUDO "Escudo Portugis"
IDS_CURRENCY_SLOVAK_KORUNA "Koruna Slovakia"
IDS_CURRENCY_SLOVENIAN_TOLAR "Tolar Slovenia"
IDS_CURRENCY_SPANISH_PESETA "Peseta Spanyol"

View File

@@ -4,15 +4,15 @@ LANGUAGE LANG_ITALIAN, SUBLANG_NEUTRAL
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Calcolatrice ReactOS"
CAPTION "Calcolatrice"
MENU IDR_MENU_SCIENTIFIC_1
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
GROUPBOX "", IDC_STATIC, 5 ,14, 141, 20
CONTROL "Hex", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 8, 21, 30, 10
CONTROL "Dec", IDC_RADIO_DEC, "Button", BS_AUTORADIOBUTTON, 41, 21, 30, 10
CONTROL "Oct", IDC_RADIO_OCT, "Button", BS_AUTORADIOBUTTON, 74, 21, 30, 10
CONTROL "Bin", IDC_RADIO_BIN, "Button", BS_AUTORADIOBUTTON, 107, 21, 30, 10
AUTORADIOBUTTON "Hex", IDC_RADIO_HEX, 8, 21, 30, 10
AUTORADIOBUTTON "Dec", IDC_RADIO_DEC, 41, 21, 30, 10
AUTORADIOBUTTON "Oct", IDC_RADIO_OCT, 74, 21, 30, 10
AUTORADIOBUTTON "Bin", IDC_RADIO_BIN, 107, 21, 30, 10
GROUPBOX "", IDC_STATIC, 5, 34, 84, 20
CONTROL "Inv", IDC_CHECK_INV, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 8, 41, 26, 10
CONTROL "Hyp", IDC_CHECK_HYP, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 49, 41, 29, 10
@@ -129,17 +129,13 @@ BEGIN
PUSHBUTTON "F", IDC_BUTTON_F, 286, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
GROUPBOX "", IDC_STATIC, 147, 14, 163, 20
CONTROL "Qword", IDC_RADIO_QWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 150, 21, 38, 10
CONTROL "Dword", IDC_RADIO_DWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 190, 21, 38, 10
CONTROL "Word", IDC_RADIO_WORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 230, 21, 38, 10
CONTROL "Byte", IDC_RADIO_BYTE, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 270, 21, 38, 10
CONTROL "Gradi", IDC_RADIO_DEG, "Button", BS_AUTORADIOBUTTON, 150, 21, 45, 10
CONTROL "Radianti", IDC_RADIO_RAD, "Button", BS_AUTORADIOBUTTON, 204, 21, 45, 10
CONTROL "Gradienti", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 258, 21, 45, 10
AUTORADIOBUTTON "Qword", IDC_RADIO_QWORD, 150, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Dword", IDC_RADIO_DWORD, 190, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Word", IDC_RADIO_WORD, 230, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Byte", IDC_RADIO_BYTE, 270, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Gradi", IDC_RADIO_DEG, 150, 21, 45, 10
AUTORADIOBUTTON "Radianti", IDC_RADIO_RAD, 204, 21, 45, 10
AUTORADIOBUTTON "Gradienti", IDC_RADIO_GRAD, 258, 21, 45, 10
PUSHBUTTON "C", IDC_BUTTON_CANC, 267, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 222, 38, 43, 18, BS_CENTER | BS_VCENTER |
@@ -152,7 +148,7 @@ END
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Calcolatrice ReactOS"
CAPTION "Calcolatrice"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
@@ -217,7 +213,7 @@ END
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Calcolatrice ReactOS"
CAPTION "Calcolatrice"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg"
BEGIN
@@ -309,8 +305,8 @@ IDR_MENU_SCIENTIFIC_1 MENU
BEGIN
POPUP "Modifica"
BEGIN
MENUITEM "Copia\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Incolla\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "Copia\tCtrl-C", IDM_EDIT_COPY
MENUITEM "Incolla\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "Visualizza"
BEGIN
@@ -341,8 +337,8 @@ IDR_MENU_SCIENTIFIC_2 MENU
BEGIN
POPUP "Modifica"
BEGIN
MENUITEM "Copia\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Incolla\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "Copia\tCtrl-C", IDM_EDIT_COPY
MENUITEM "Incolla\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "Visualizza"
BEGIN
@@ -374,8 +370,8 @@ IDR_MENU_STANDARD MENU
BEGIN
POPUP "Modifica"
BEGIN
MENUITEM "Copia\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Incolla\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "Copia\tCtrl-C", IDM_EDIT_COPY
MENUITEM "Incolla\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "Visualizza"
BEGIN
@@ -504,7 +500,7 @@ BEGIN
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
IDS_CURRENCY_LUXEMBOURG_FRANC "Franco Lussemburghese"
IDS_CURRENCY_MALTESE_LIRA "Lira maltese"
IDS_CURRENCY_PORTOGUESE_ESCUDO "Escudo portoghese"
IDS_CURRENCY_PORTUGUESE_ESCUDO "Escudo portoghese"
IDS_CURRENCY_SLOVAK_KORUNA "Corona slovacca"
IDS_CURRENCY_SLOVENIAN_TOLAR "Tallero sloveno"
IDS_CURRENCY_SPANISH_PESETA "Peseta spagnola"

View File

@@ -4,15 +4,15 @@ LANGUAGE LANG_JAPANESE, SUBLANG_DEFAULT
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 電卓"
CAPTION "電卓"
MENU IDR_MENU_SCIENTIFIC_1
FONT 9, "MS UI Gothic", 0, 0, 0x1
BEGIN
GROUPBOX "", IDC_STATIC, 5 ,14, 141, 20
CONTROL "16進", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 8, 21, 30, 10
CONTROL "10進", IDC_RADIO_DEC, "Button", BS_AUTORADIOBUTTON, 41, 21, 30, 10
CONTROL "8進", IDC_RADIO_OCT, "Button", BS_AUTORADIOBUTTON, 74, 21, 30, 10
CONTROL "2進", IDC_RADIO_BIN, "Button", BS_AUTORADIOBUTTON, 107, 21, 30, 10
AUTORADIOBUTTON "16進", IDC_RADIO_HEX, 8, 21, 30, 10
AUTORADIOBUTTON "10進", IDC_RADIO_DEC, 41, 21, 30, 10
AUTORADIOBUTTON "8進", IDC_RADIO_OCT, 74, 21, 30, 10
AUTORADIOBUTTON "2進", IDC_RADIO_BIN, 107, 21, 30, 10
GROUPBOX "", IDC_STATIC, 5, 34, 84, 20
CONTROL "Inv", IDC_CHECK_INV, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 8, 41, 26, 10
CONTROL "Hyp", IDC_CHECK_HYP, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 49, 41, 29, 10
@@ -129,17 +129,13 @@ BEGIN
PUSHBUTTON "F", IDC_BUTTON_F, 286, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
GROUPBOX "", IDC_STATIC, 147, 14, 163, 20
CONTROL "Qword", IDC_RADIO_QWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 150, 21, 38, 10
CONTROL "Dword", IDC_RADIO_DWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 190, 21, 38, 10
CONTROL "Word", IDC_RADIO_WORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 230, 21, 38, 10
CONTROL "Byte", IDC_RADIO_BYTE, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 270, 21, 38, 10
CONTROL "Degrees", IDC_RADIO_DEG, "Button", BS_AUTORADIOBUTTON, 150, 21, 45, 10
CONTROL "Radians", IDC_RADIO_RAD, "Button", BS_AUTORADIOBUTTON, 204, 21, 45, 10
CONTROL "Gradians", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 258, 21, 45, 10
AUTORADIOBUTTON "Qword", IDC_RADIO_QWORD, 150, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Dword", IDC_RADIO_DWORD, 190, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Word", IDC_RADIO_WORD, 230, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Byte", IDC_RADIO_BYTE, 270, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Degrees", IDC_RADIO_DEG, 150, 21, 45, 10
AUTORADIOBUTTON "Radians", IDC_RADIO_RAD, 204, 21, 45, 10
AUTORADIOBUTTON "Gradians", IDC_RADIO_GRAD, 258, 21, 45, 10
PUSHBUTTON "C", IDC_BUTTON_CANC, 267, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 222, 38, 43, 18, BS_CENTER | BS_VCENTER |
@@ -152,7 +148,7 @@ END
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 電卓"
CAPTION "電卓"
MENU IDR_MENU_STANDARD
FONT 9, "MS UI Gothic", 0, 0, 0x1
BEGIN
@@ -217,7 +213,7 @@ END
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 電卓"
CAPTION "電卓"
MENU IDR_MENU_STANDARD
FONT 9, "MS UI Gothic"
BEGIN
@@ -377,7 +373,7 @@ BEGIN
MENUITEM "コピー(&C)\tCtrl+C", IDM_EDIT_COPY
MENUITEM "貼り付け(&P)\tCtrl+V", IDM_EDIT_PASTE
END
POPUP "表示"
POPUP "表示(&V)"
BEGIN
MENUITEM "標準(&T)", IDM_VIEW_STANDARD
MENUITEM "関数電卓(&S)", IDM_VIEW_SCIENTIFIC
@@ -504,7 +500,7 @@ BEGIN
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
IDS_CURRENCY_LUXEMBOURG_FRANC "ルクセンブルク フラン"
IDS_CURRENCY_MALTESE_LIRA "マルタ リラ"
IDS_CURRENCY_PORTOGUESE_ESCUDO "ポルトガル エスクード"
IDS_CURRENCY_PORTUGUESE_ESCUDO "ポルトガル エスクード"
IDS_CURRENCY_SLOVAK_KORUNA "スロバキア コルナ"
IDS_CURRENCY_SLOVENIAN_TOLAR "スロベニア tolar"
IDS_CURRENCY_SPANISH_PESETA "スペイン ペセタ"

View File

@@ -6,15 +6,15 @@ LANGUAGE LANG_KOREAN, SUBLANG_DEFAULT
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 계산기"
CAPTION "계산기"
MENU IDR_MENU_SCIENTIFIC_1
FONT 9, "굴림", 0, 0, 0x1
BEGIN
GROUPBOX "", IDC_STATIC, 5 ,14, 141, 20
CONTROL "Hex", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 8, 21, 30, 10
CONTROL "Dec", IDC_RADIO_DEC, "Button", BS_AUTORADIOBUTTON, 41, 21, 30, 10
CONTROL "Oct", IDC_RADIO_OCT, "Button", BS_AUTORADIOBUTTON, 74, 21, 30, 10
CONTROL "Bin", IDC_RADIO_BIN, "Button", BS_AUTORADIOBUTTON, 107, 21, 30, 10
AUTORADIOBUTTON "Hex", IDC_RADIO_HEX, 8, 21, 30, 10
AUTORADIOBUTTON "Dec", IDC_RADIO_DEC, 41, 21, 30, 10
AUTORADIOBUTTON "Oct", IDC_RADIO_OCT, 74, 21, 30, 10
AUTORADIOBUTTON "Bin", IDC_RADIO_BIN, 107, 21, 30, 10
GROUPBOX "", IDC_STATIC, 5, 34, 84, 20
CONTROL "Inv", IDC_CHECK_INV, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 8, 41, 26, 10
CONTROL "Hyp", IDC_CHECK_HYP, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 49, 41, 29, 10
@@ -131,17 +131,13 @@ BEGIN
PUSHBUTTON "F", IDC_BUTTON_F, 286, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
GROUPBOX "", IDC_STATIC, 147, 14, 163, 20
CONTROL "Qword", IDC_RADIO_QWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 150, 21, 38, 10
CONTROL "Dword", IDC_RADIO_DWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 190, 21, 38, 10
CONTROL "Word", IDC_RADIO_WORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 230, 21, 38, 10
CONTROL "Byte", IDC_RADIO_BYTE, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 270, 21, 38, 10
CONTROL "Degrees", IDC_RADIO_DEG, "Button", BS_AUTORADIOBUTTON, 150, 21, 45, 10
CONTROL "Radians", IDC_RADIO_RAD, "Button", BS_AUTORADIOBUTTON, 204, 21, 45, 10
CONTROL "Gradians", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 258, 21, 45, 10
AUTORADIOBUTTON "Qword", IDC_RADIO_QWORD, 150, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Dword", IDC_RADIO_DWORD, 190, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Word", IDC_RADIO_WORD, 230, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Byte", IDC_RADIO_BYTE, 270, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Degrees", IDC_RADIO_DEG, 150, 21, 45, 10
AUTORADIOBUTTON "Radians", IDC_RADIO_RAD, 204, 21, 45, 10
AUTORADIOBUTTON "Gradians", IDC_RADIO_GRAD, 258, 21, 45, 10
PUSHBUTTON "C", IDC_BUTTON_CANC, 267, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 222, 38, 43, 18, BS_CENTER | BS_VCENTER |
@@ -154,7 +150,7 @@ END
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 계산기"
CAPTION "계산기"
MENU IDR_MENU_STANDARD
FONT 9, "굴림", 0, 0, 0x1
BEGIN
@@ -219,7 +215,7 @@ END
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 계산기 정보"
CAPTION "계산기"
MENU IDR_MENU_STANDARD
FONT 9, "굴림"
BEGIN
@@ -311,8 +307,8 @@ IDR_MENU_SCIENTIFIC_1 MENU
BEGIN
POPUP "편집"
BEGIN
MENUITEM "복사\tCTRL-C", IDM_EDIT_COPY
MENUITEM "붙여넣기\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "복사\tCtrl-C", IDM_EDIT_COPY
MENUITEM "붙여넣기\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "보기"
BEGIN
@@ -343,8 +339,8 @@ IDR_MENU_SCIENTIFIC_2 MENU
BEGIN
POPUP "편집"
BEGIN
MENUITEM "복사\tCTRL-C", IDM_EDIT_COPY
MENUITEM "붙여넣기\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "복사\tCtrl-C", IDM_EDIT_COPY
MENUITEM "붙여넣기\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "보기"
BEGIN
@@ -376,8 +372,8 @@ IDR_MENU_STANDARD MENU
BEGIN
POPUP "편집"
BEGIN
MENUITEM "복사\tCTRL-C", IDM_EDIT_COPY
MENUITEM "붙여넣기\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "복사\tCtrl-C", IDM_EDIT_COPY
MENUITEM "붙여넣기\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "보기"
BEGIN
@@ -506,7 +502,7 @@ BEGIN
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
IDS_CURRENCY_LUXEMBOURG_FRANC "Luxembourg franc"
IDS_CURRENCY_MALTESE_LIRA "Maltese lira"
IDS_CURRENCY_PORTOGUESE_ESCUDO "Portoguese escudo"
IDS_CURRENCY_PORTUGUESE_ESCUDO "Portuguese escudo"
IDS_CURRENCY_SLOVAK_KORUNA "Slovak koruna"
IDS_CURRENCY_SLOVENIAN_TOLAR "Slovenian tolar"
IDS_CURRENCY_SPANISH_PESETA "Spanish peseta"

View File

@@ -4,15 +4,15 @@ LANGUAGE LANG_DUTCH, SUBLANG_NEUTRAL
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Rekenmachine"
CAPTION "Rekenmachine"
MENU IDR_MENU_SCIENTIFIC_1
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
GROUPBOX "", IDC_STATIC, 5 ,14, 141, 20
CONTROL "Hex", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 8, 21, 30, 10
CONTROL "Dec", IDC_RADIO_DEC, "Button", BS_AUTORADIOBUTTON, 41, 21, 30, 10
CONTROL "Oct", IDC_RADIO_OCT, "Button", BS_AUTORADIOBUTTON, 74, 21, 30, 10
CONTROL "Bin", IDC_RADIO_BIN, "Button", BS_AUTORADIOBUTTON, 107, 21, 30, 10
AUTORADIOBUTTON "Hex", IDC_RADIO_HEX, 8, 21, 30, 10
AUTORADIOBUTTON "Dec", IDC_RADIO_DEC, 41, 21, 30, 10
AUTORADIOBUTTON "Oct", IDC_RADIO_OCT, 74, 21, 30, 10
AUTORADIOBUTTON "Bin", IDC_RADIO_BIN, 107, 21, 30, 10
GROUPBOX "", IDC_STATIC, 5, 34, 84, 20
CONTROL "Inv", IDC_CHECK_INV, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 8, 41, 26, 10
CONTROL "Hyp", IDC_CHECK_HYP, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 49, 41, 29, 10
@@ -129,17 +129,13 @@ BEGIN
PUSHBUTTON "F", IDC_BUTTON_F, 286, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
GROUPBOX "", IDC_STATIC, 147, 14, 163, 20
CONTROL "Qword", IDC_RADIO_QWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 150, 21, 38, 10
CONTROL "Dword", IDC_RADIO_DWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 190, 21, 38, 10
CONTROL "Word", IDC_RADIO_WORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 230, 21, 38, 10
CONTROL "Byte", IDC_RADIO_BYTE, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 270, 21, 38, 10
CONTROL "Graden", IDC_RADIO_DEG, "Button", BS_AUTORADIOBUTTON, 150, 21, 45, 10
CONTROL "Radialen", IDC_RADIO_RAD, "Button", BS_AUTORADIOBUTTON, 204, 21, 45, 10
CONTROL "Gradiënten", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 258, 21, 45, 10
AUTORADIOBUTTON "Qword", IDC_RADIO_QWORD, 150, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Dword", IDC_RADIO_DWORD, 190, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Word", IDC_RADIO_WORD, 230, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Byte", IDC_RADIO_BYTE, 270, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Graden", IDC_RADIO_DEG, 150, 21, 45, 10
AUTORADIOBUTTON "Radialen", IDC_RADIO_RAD, 204, 21, 45, 10
AUTORADIOBUTTON "Gradiënten", IDC_RADIO_GRAD, 258, 21, 45, 10
PUSHBUTTON "C", IDC_BUTTON_CANC, 267, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 222, 38, 43, 18, BS_CENTER | BS_VCENTER |
@@ -152,7 +148,7 @@ END
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Rekenmachine"
CAPTION "Rekenmachine"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
@@ -217,7 +213,7 @@ END
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Rekenmachine"
CAPTION "Rekenmachine"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg"
BEGIN
@@ -309,8 +305,8 @@ IDR_MENU_SCIENTIFIC_1 MENU
BEGIN
POPUP "Bewerken"
BEGIN
MENUITEM "Kopiëren\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Plakken\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "Kopiëren\tCtrl-C", IDM_EDIT_COPY
MENUITEM "Plakken\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "Beeld"
BEGIN
@@ -341,8 +337,8 @@ IDR_MENU_SCIENTIFIC_2 MENU
BEGIN
POPUP "Edit"
BEGIN
MENUITEM "Kopiëren\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Plakken\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "Kopiëren\tCtrl-C", IDM_EDIT_COPY
MENUITEM "Plakken\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "Beeld"
BEGIN
@@ -374,8 +370,8 @@ IDR_MENU_STANDARD MENU
BEGIN
POPUP "Edit"
BEGIN
MENUITEM "Kopiëren\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Plakken\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "Kopiëren\tCtrl-C", IDM_EDIT_COPY
MENUITEM "Plakken\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "View"
BEGIN
@@ -504,7 +500,7 @@ BEGIN
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
IDS_CURRENCY_LUXEMBOURG_FRANC "Luxemburgse franc"
IDS_CURRENCY_MALTESE_LIRA "Maltese lira"
IDS_CURRENCY_PORTOGUESE_ESCUDO "Portugese escudo"
IDS_CURRENCY_PORTUGUESE_ESCUDO "Portugese escudo"
IDS_CURRENCY_SLOVAK_KORUNA "Slowaakse kroon"
IDS_CURRENCY_SLOVENIAN_TOLAR "Sloveense tolar"
IDS_CURRENCY_SPANISH_PESETA "Spaanse peseta"

View File

@@ -4,15 +4,15 @@ LANGUAGE LANG_NORWEGIAN, SUBLANG_NEUTRAL
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Kalkulator"
CAPTION "Kalkulator"
MENU IDR_MENU_SCIENTIFIC_1
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
GROUPBOX "", IDC_STATIC, 5 ,14, 141, 20
CONTROL "Heks", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 8, 21, 30, 10
CONTROL "Des", IDC_RADIO_DEC, "Button", BS_AUTORADIOBUTTON, 41, 21, 30, 10
CONTROL "Okt", IDC_RADIO_OCT, "Button", BS_AUTORADIOBUTTON, 74, 21, 30, 10
CONTROL "Bin", IDC_RADIO_BIN, "Button", BS_AUTORADIOBUTTON, 107, 21, 30, 10
AUTORADIOBUTTON "Heks", IDC_RADIO_HEX, 8, 21, 30, 10
AUTORADIOBUTTON "Des", IDC_RADIO_DEC, 41, 21, 30, 10
AUTORADIOBUTTON "Okt", IDC_RADIO_OCT, 74, 21, 30, 10
AUTORADIOBUTTON "Bin", IDC_RADIO_BIN, 107, 21, 30, 10
GROUPBOX "", IDC_STATIC, 5, 34, 84, 20
CONTROL "Inv", IDC_CHECK_INV, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 8, 41, 26, 10
CONTROL "Hyp", IDC_CHECK_HYP, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 49, 41, 29, 10
@@ -129,17 +129,13 @@ BEGIN
PUSHBUTTON "F", IDC_BUTTON_F, 286, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
GROUPBOX "", IDC_STATIC, 147, 14, 163, 20
CONTROL "Qword", IDC_RADIO_QWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 150, 21, 38, 10
CONTROL "Dword", IDC_RADIO_DWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 190, 21, 38, 10
CONTROL "Word", IDC_RADIO_WORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 230, 21, 38, 10
CONTROL "Tegn", IDC_RADIO_BYTE, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 270, 21, 38, 10
CONTROL "Grader", IDC_RADIO_DEG, "Button", BS_AUTORADIOBUTTON, 150, 21, 45, 10
CONTROL "Radianer", IDC_RADIO_RAD, "Button", BS_AUTORADIOBUTTON, 204, 21, 45, 10
CONTROL "Gradienter", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 258, 21, 45, 10
AUTORADIOBUTTON "Qword", IDC_RADIO_QWORD, 150, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Dword", IDC_RADIO_DWORD, 190, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Word", IDC_RADIO_WORD, 230, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Tegn", IDC_RADIO_BYTE, 270, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Grader", IDC_RADIO_DEG, 150, 21, 45, 10
AUTORADIOBUTTON "Radianer", IDC_RADIO_RAD, 204, 21, 45, 10
AUTORADIOBUTTON "Gradienter", IDC_RADIO_GRAD, 258, 21, 45, 10
PUSHBUTTON "C", IDC_BUTTON_CANC, 267, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 222, 38, 43, 18, BS_CENTER | BS_VCENTER |
@@ -152,7 +148,7 @@ END
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Kalkulator"
CAPTION "Kalkulator"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
@@ -217,7 +213,7 @@ END
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Kalkulator"
CAPTION "Kalkulator"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg"
BEGIN
@@ -309,8 +305,8 @@ IDR_MENU_SCIENTIFIC_1 MENU
BEGIN
POPUP "Rediger"
BEGIN
MENUITEM "Kopier\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Lim inn\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "Kopier\tCtrl-C", IDM_EDIT_COPY
MENUITEM "Lim inn\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "Vis"
BEGIN
@@ -341,8 +337,8 @@ IDR_MENU_SCIENTIFIC_2 MENU
BEGIN
POPUP "Rediger"
BEGIN
MENUITEM "Kopier\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Lim inn\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "Kopier\tCtrl-C", IDM_EDIT_COPY
MENUITEM "Lim inn\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "Vis"
BEGIN
@@ -374,8 +370,8 @@ IDR_MENU_STANDARD MENU
BEGIN
POPUP "Rediger"
BEGIN
MENUITEM "Kopier\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Lim inn\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "Kopier\tCtrl-C", IDM_EDIT_COPY
MENUITEM "Lim inn\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "Vis"
BEGIN
@@ -504,7 +500,7 @@ BEGIN
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
IDS_CURRENCY_LUXEMBOURG_FRANC "Luxembourg franc"
IDS_CURRENCY_MALTESE_LIRA "Maltesisk lira"
IDS_CURRENCY_PORTOGUESE_ESCUDO "Portogisisk escudo"
IDS_CURRENCY_PORTUGUESE_ESCUDO "Portugisisk escudo"
IDS_CURRENCY_SLOVAK_KORUNA "Slovansk koruna"
IDS_CURRENCY_SLOVENIAN_TOLAR "Slovenansk tolar"
IDS_CURRENCY_SPANISH_PESETA "Spansk peseta"

View File

@@ -1,10 +1,8 @@
/*
* Translated by Caemyr - Olaf Siejka (Feb, Jun 2008)
* Use ReactOS forum PM or IRC to contact me
* https://reactos.org
* IRC: irc.freenode.net #reactos-pl;
* Updated by Saibamen - Adam Stachowicz (saibamenppl@gmail.com) (Apr, 2011)
* UTF-8 conversion by Caemyr (May, 2011)
* Translated by Caemyr - Olaf Siejka 2008-2011
* Use ReactOS forum PM or IRC to contact me
* IRC: irc.freenode.net #reactos-pl;
* Updated by Saibamen - Adam Stachowicz <saibamenppl@gmail.com> 2011
*/
LANGUAGE LANG_POLISH, SUBLANG_DEFAULT
@@ -13,15 +11,15 @@ LANGUAGE LANG_POLISH, SUBLANG_DEFAULT
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Kalkulator ReactOS"
CAPTION "Kalkulator"
MENU IDR_MENU_SCIENTIFIC_1
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
GROUPBOX "", IDC_STATIC, 5 ,14, 141, 20
CONTROL "Hex", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 8, 21, 30, 10
CONTROL "Dec", IDC_RADIO_DEC, "Button", BS_AUTORADIOBUTTON, 41, 21, 30, 10
CONTROL "Oct", IDC_RADIO_OCT, "Button", BS_AUTORADIOBUTTON, 74, 21, 30, 10
CONTROL "Bin", IDC_RADIO_BIN, "Button", BS_AUTORADIOBUTTON, 107, 21, 30, 10
AUTORADIOBUTTON "Hex", IDC_RADIO_HEX, 8, 21, 30, 10
AUTORADIOBUTTON "Dec", IDC_RADIO_DEC, 41, 21, 30, 10
AUTORADIOBUTTON "Oct", IDC_RADIO_OCT, 74, 21, 30, 10
AUTORADIOBUTTON "Bin", IDC_RADIO_BIN, 107, 21, 30, 10
GROUPBOX "", IDC_STATIC, 5, 34, 84, 20
CONTROL "Inv", IDC_CHECK_INV, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 8, 41, 26, 10
CONTROL "Hyp", IDC_CHECK_HYP, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 49, 41, 29, 10
@@ -138,17 +136,13 @@ BEGIN
PUSHBUTTON "F", IDC_BUTTON_F, 286, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
GROUPBOX "", IDC_STATIC, 147, 14, 163, 20
CONTROL "Qword", IDC_RADIO_QWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 150, 21, 38, 10
CONTROL "Dword", IDC_RADIO_DWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 190, 21, 38, 10
CONTROL "Word", IDC_RADIO_WORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 230, 21, 38, 10
CONTROL "Bajt", IDC_RADIO_BYTE, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 270, 21, 38, 10
CONTROL "Stopnie", IDC_RADIO_DEG, "Button", BS_AUTORADIOBUTTON, 150, 21, 45, 10
CONTROL "Radiany", IDC_RADIO_RAD, "Button", BS_AUTORADIOBUTTON, 204, 21, 45, 10
CONTROL "Gradusy", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 258, 21, 45, 10
AUTORADIOBUTTON "Qword", IDC_RADIO_QWORD, 150, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Dword", IDC_RADIO_DWORD, 190, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Word", IDC_RADIO_WORD, 230, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Bajt", IDC_RADIO_BYTE, 270, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Stopnie", IDC_RADIO_DEG, 150, 21, 45, 10
AUTORADIOBUTTON "Radiany", IDC_RADIO_RAD, 204, 21, 45, 10
AUTORADIOBUTTON "Gradusy", IDC_RADIO_GRAD, 258, 21, 45, 10
PUSHBUTTON "C", IDC_BUTTON_CANC, 267, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 222, 38, 43, 18, BS_CENTER | BS_VCENTER |
@@ -161,7 +155,7 @@ END
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Kalkulator ReactOS"
CAPTION "Kalkulator"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
@@ -226,7 +220,7 @@ END
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Kalkulator ReactOS"
CAPTION "Kalkulator"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg"
BEGIN
@@ -318,8 +312,8 @@ IDR_MENU_SCIENTIFIC_1 MENU
BEGIN
POPUP "Edycja"
BEGIN
MENUITEM "Kopiuj\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Wklej\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "Kopiuj\tCtrl-C", IDM_EDIT_COPY
MENUITEM "Wklej\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "Wygląd"
BEGIN
@@ -350,8 +344,8 @@ IDR_MENU_SCIENTIFIC_2 MENU
BEGIN
POPUP "Edycja"
BEGIN
MENUITEM "Kopiuj\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Wklej\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "Kopiuj\tCtrl-C", IDM_EDIT_COPY
MENUITEM "Wklej\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "Wygląd"
BEGIN
@@ -383,8 +377,8 @@ IDR_MENU_STANDARD MENU
BEGIN
POPUP "Edycja"
BEGIN
MENUITEM "Kopiuj\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Wklej\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "Kopiuj\tCtrl-C", IDM_EDIT_COPY
MENUITEM "Wklej\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "Wygląd"
BEGIN
@@ -513,7 +507,7 @@ BEGIN
IDS_CURRENCY_LITHUANIAN_LITAS "Litewski lit"
IDS_CURRENCY_LUXEMBOURG_FRANC "Luksemburski frank"
IDS_CURRENCY_MALTESE_LIRA "Maltańskie liry"
IDS_CURRENCY_PORTOGUESE_ESCUDO "Portugalskie escudo"
IDS_CURRENCY_PORTUGUESE_ESCUDO "Portugalskie escudo"
IDS_CURRENCY_SLOVAK_KORUNA "Słowacka korona"
IDS_CURRENCY_SLOVENIAN_TOLAR "Słoveński tolar"
IDS_CURRENCY_SPANISH_PESETA "Hiszpańska peseta"

View File

@@ -1,4 +1,4 @@
/* Translation and UTF-8 Conversion by mkbu95 <mkbu95@gmail.com> (August, 2011) */
/* TRANSLATOR: 2011 mkbu95 <mkbu95@gmail.com> */
LANGUAGE LANG_PORTUGUESE, SUBLANG_PORTUGUESE_BRAZILIAN
@@ -6,15 +6,15 @@ LANGUAGE LANG_PORTUGUESE, SUBLANG_PORTUGUESE_BRAZILIAN
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Calculadora ReactOS"
CAPTION "Calculadora"
MENU IDR_MENU_SCIENTIFIC_1
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
GROUPBOX "", IDC_STATIC, 5 ,14, 141, 20
CONTROL "Hex", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 8, 21, 30, 10
CONTROL "Dec", IDC_RADIO_DEC, "Button", BS_AUTORADIOBUTTON, 41, 21, 30, 10
CONTROL "Oct", IDC_RADIO_OCT, "Button", BS_AUTORADIOBUTTON, 74, 21, 30, 10
CONTROL "Bin", IDC_RADIO_BIN, "Button", BS_AUTORADIOBUTTON, 107, 21, 30, 10
AUTORADIOBUTTON "Hex", IDC_RADIO_HEX, 8, 21, 30, 10
AUTORADIOBUTTON "Dec", IDC_RADIO_DEC, 41, 21, 30, 10
AUTORADIOBUTTON "Oct", IDC_RADIO_OCT, 74, 21, 30, 10
AUTORADIOBUTTON "Bin", IDC_RADIO_BIN, 107, 21, 30, 10
GROUPBOX "", IDC_STATIC, 5, 34, 84, 20
CONTROL "Inv", IDC_CHECK_INV, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 8, 41, 26, 10
CONTROL "Hyp", IDC_CHECK_HYP, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 49, 41, 29, 10
@@ -131,17 +131,13 @@ BEGIN
PUSHBUTTON "F", IDC_BUTTON_F, 286, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
GROUPBOX "", IDC_STATIC, 147, 14, 163, 20
CONTROL "Qword", IDC_RADIO_QWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 150, 21, 38, 10
CONTROL "Dword", IDC_RADIO_DWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 190, 21, 38, 10
CONTROL "Word", IDC_RADIO_WORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 230, 21, 38, 10
CONTROL "Byte", IDC_RADIO_BYTE, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 270, 21, 38, 10
CONTROL "Graus", IDC_RADIO_DEG, "Button", BS_AUTORADIOBUTTON, 150, 21, 45, 10
CONTROL "Radianos", IDC_RADIO_RAD, "Button", BS_AUTORADIOBUTTON, 204, 21, 45, 10
CONTROL "Grados", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 258, 21, 45, 10
AUTORADIOBUTTON "Qword", IDC_RADIO_QWORD, 150, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Dword", IDC_RADIO_DWORD, 190, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Word", IDC_RADIO_WORD, 230, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Byte", IDC_RADIO_BYTE, 270, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Graus", IDC_RADIO_DEG, 150, 21, 45, 10
AUTORADIOBUTTON "Radianos", IDC_RADIO_RAD, 204, 21, 45, 10
AUTORADIOBUTTON "Grados", IDC_RADIO_GRAD, 258, 21, 45, 10
PUSHBUTTON "C", IDC_BUTTON_CANC, 267, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 222, 38, 43, 18, BS_CENTER | BS_VCENTER |
@@ -154,7 +150,7 @@ END
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Calculadora ReactOS"
CAPTION "Calculadora"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
@@ -219,7 +215,7 @@ END
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Calculadora ReactOS"
CAPTION "Calculadora"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg"
BEGIN
@@ -506,7 +502,7 @@ BEGIN
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
IDS_CURRENCY_LUXEMBOURG_FRANC "Franco luxemburguês"
IDS_CURRENCY_MALTESE_LIRA "Lira maltesa"
IDS_CURRENCY_PORTOGUESE_ESCUDO "Escudo português"
IDS_CURRENCY_PORTUGUESE_ESCUDO "Escudo português"
IDS_CURRENCY_SLOVAK_KORUNA "Coroa eslovaca"
IDS_CURRENCY_SLOVENIAN_TOLAR "Tolar"
IDS_CURRENCY_SPANISH_PESETA "Peseta"

View File

@@ -1,4 +1,4 @@
/* Translation and UTF-8 Conversion by Gabriel Aguiar <fgygh5804@gmail.com,fgsoftwarestudio@gmail.com> (July, 2021) */
/* TRANSLATOR: 2021 Gabriel Aguiar <fgygh5804@gmail.com,fgsoftwarestudio@gmail.com> */
LANGUAGE LANG_PORTUGUESE, SUBLANG_NEUTRAL
@@ -6,15 +6,15 @@ LANGUAGE LANG_PORTUGUESE, SUBLANG_NEUTRAL
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Calculadora ReactOS"
CAPTION "Calculadora"
MENU IDR_MENU_SCIENTIFIC_1
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
GROUPBOX "", IDC_STATIC, 5 ,14, 141, 20
CONTROL "Hex", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 8, 21, 30, 10
CONTROL "Dec", IDC_RADIO_DEC, "Button", BS_AUTORADIOBUTTON, 41, 21, 30, 10
CONTROL "Oct", IDC_RADIO_OCT, "Button", BS_AUTORADIOBUTTON, 74, 21, 30, 10
CONTROL "Bin", IDC_RADIO_BIN, "Button", BS_AUTORADIOBUTTON, 107, 21, 30, 10
AUTORADIOBUTTON "Hex", IDC_RADIO_HEX, 8, 21, 30, 10
AUTORADIOBUTTON "Dec", IDC_RADIO_DEC, 41, 21, 30, 10
AUTORADIOBUTTON "Oct", IDC_RADIO_OCT, 74, 21, 30, 10
AUTORADIOBUTTON "Bin", IDC_RADIO_BIN, 107, 21, 30, 10
GROUPBOX "", IDC_STATIC, 5, 34, 84, 20
CONTROL "Inv", IDC_CHECK_INV, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 8, 41, 26, 10
CONTROL "Hyp", IDC_CHECK_HYP, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 49, 41, 29, 10
@@ -131,17 +131,13 @@ BEGIN
PUSHBUTTON "F", IDC_BUTTON_F, 286, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
GROUPBOX "", IDC_STATIC, 147, 14, 163, 20
CONTROL "Qword", IDC_RADIO_QWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 150, 21, 38, 10
CONTROL "Dword", IDC_RADIO_DWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 190, 21, 38, 10
CONTROL "Word", IDC_RADIO_WORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 230, 21, 38, 10
CONTROL "Byte", IDC_RADIO_BYTE, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 270, 21, 38, 10
CONTROL "Graus", IDC_RADIO_DEG, "Button", BS_AUTORADIOBUTTON, 150, 21, 45, 10
CONTROL "Radianos", IDC_RADIO_RAD, "Button", BS_AUTORADIOBUTTON, 204, 21, 45, 10
CONTROL "Grados", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 258, 21, 45, 10
AUTORADIOBUTTON "Qword", IDC_RADIO_QWORD, 150, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Dword", IDC_RADIO_DWORD, 190, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Word", IDC_RADIO_WORD, 230, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Byte", IDC_RADIO_BYTE, 270, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Graus", IDC_RADIO_DEG, 150, 21, 45, 10
AUTORADIOBUTTON "Radianos", IDC_RADIO_RAD, 204, 21, 45, 10
AUTORADIOBUTTON "Grados", IDC_RADIO_GRAD, 258, 21, 45, 10
PUSHBUTTON "C", IDC_BUTTON_CANC, 267, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 222, 38, 43, 18, BS_CENTER | BS_VCENTER |
@@ -154,7 +150,7 @@ END
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Calculadora ReactOS"
CAPTION "Calculadora"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
@@ -219,7 +215,7 @@ END
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Calculadora ReactOS"
CAPTION "Calculadora"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg"
BEGIN
@@ -506,7 +502,7 @@ BEGIN
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
IDS_CURRENCY_LUXEMBOURG_FRANC "Franco luxemburguês"
IDS_CURRENCY_MALTESE_LIRA "Lira maltesa"
IDS_CURRENCY_PORTOGUESE_ESCUDO "Escudo português"
IDS_CURRENCY_PORTUGUESE_ESCUDO "Escudo português"
IDS_CURRENCY_SLOVAK_KORUNA "Coroa eslovaca"
IDS_CURRENCY_SLOVENIAN_TOLAR "Tolar"
IDS_CURRENCY_SPANISH_PESETA "Peseta"

View File

@@ -4,7 +4,7 @@
* PURPOSE: Romanian resource file
* TRANSLATORS: Copyright 2009 Petru Dimitriu <petrimetri@gmail.com>
* Copyright 2011-2018 Ștefan Fulea <stefan.fulea@mail.com>
* Copyright 2022 Andrei Miloiu <miloiuandrei@gmail.com>
* Copyright 2022-2024 Andrei Miloiu <miloiuandrei@gmail.com>
*/
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
@@ -13,15 +13,15 @@ LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Minicalculator"
CAPTION "Calculator"
MENU IDR_MENU_SCIENTIFIC_1
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
GROUPBOX "", IDC_STATIC, 5 ,14, 141, 20
CONTROL "Hex", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 8, 21, 30, 10
CONTROL "Dec", IDC_RADIO_DEC, "Button", BS_AUTORADIOBUTTON, 41, 21, 30, 10
CONTROL "Oct", IDC_RADIO_OCT, "Button", BS_AUTORADIOBUTTON, 74, 21, 30, 10
CONTROL "Bin", IDC_RADIO_BIN, "Button", BS_AUTORADIOBUTTON, 107, 21, 30, 10
AUTORADIOBUTTON "Hex", IDC_RADIO_HEX, 8, 21, 30, 10
AUTORADIOBUTTON "Dec", IDC_RADIO_DEC, 41, 21, 30, 10
AUTORADIOBUTTON "Oct", IDC_RADIO_OCT, 74, 21, 30, 10
AUTORADIOBUTTON "Bin", IDC_RADIO_BIN, 107, 21, 30, 10
GROUPBOX "", IDC_STATIC, 5, 34, 84, 20
CONTROL "Inv", IDC_CHECK_INV, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 8, 41, 26, 10
CONTROL "Hyp", IDC_CHECK_HYP, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 49, 41, 29, 10
@@ -138,22 +138,18 @@ BEGIN
PUSHBUTTON "F", IDC_BUTTON_F, 286, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
GROUPBOX "", IDC_STATIC, 147, 14, 163, 20
CONTROL "64 biți", IDC_RADIO_QWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 150, 21, 38, 10
CONTROL "32 biți", IDC_RADIO_DWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 190, 21, 38, 10
CONTROL "16 biți", IDC_RADIO_WORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 230, 21, 38, 10
CONTROL "8 biți", IDC_RADIO_BYTE, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 270, 21, 38, 10
CONTROL "Grade", IDC_RADIO_DEG, "Button", BS_AUTORADIOBUTTON, 150, 21, 45, 10
CONTROL "Radiani", IDC_RADIO_RAD, "Button", BS_AUTORADIOBUTTON, 204, 21, 45, 10
CONTROL "Gradiani", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 258, 21, 45, 10
AUTORADIOBUTTON "64 biți", IDC_RADIO_QWORD, 150, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "32 biți", IDC_RADIO_DWORD, 190, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "16 biți", IDC_RADIO_WORD, 230, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "8 biți", IDC_RADIO_BYTE, 270, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Grade", IDC_RADIO_DEG, 150, 21, 45, 10
AUTORADIOBUTTON "Radiani", IDC_RADIO_RAD, 204, 21, 45, 10
AUTORADIOBUTTON "Gradiani", IDC_RADIO_GRAD, 258, 21, 45, 10
PUSHBUTTON "C", IDC_BUTTON_CANC, 267, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 222, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Înapoi", IDC_BUTTON_BACK, 177, 38, 43, 18, BS_CENTER |
PUSHBUTTON "Backspace", IDC_BUTTON_BACK, 177, 38, 43, 18, BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
RTEXT "", IDC_TEXT_OUTPUT, 5, 1, 305, 14, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
@@ -161,7 +157,7 @@ END
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Minicalculator"
CAPTION "Calculator"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
@@ -169,7 +165,7 @@ BEGIN
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 80, 23, 41, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Înapoi", IDC_BUTTON_BACK, 36, 23, 42, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "Backspace", IDC_BUTTON_BACK, 36, 23, 42, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
RTEXT "", IDC_TEXT_OUTPUT, 5, 1, 159, 14, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
PUSHBUTTON "7", IDC_BUTTON_7, 36, 45, 24, 18, BS_CENTER | BS_VCENTER |
@@ -226,7 +222,7 @@ END
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Minicalculator"
CAPTION "Calculator"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg"
BEGIN
@@ -244,7 +240,7 @@ BEGIN
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 276, 24, 40, 17
CONTROL "CE", IDC_BUTTON_CE, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 232, 24, 40, 17
CONTROL "Înapoi", IDC_BUTTON_BACK, "Button", BS_OWNERDRAW | BS_CENTER |
CONTROL "Backspace", IDC_BUTTON_BACK, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 188, 24, 40,17
RTEXT "", IDC_TEXT_OUTPUT, 5, 1, 312, 14, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
CONTROL "7", IDC_BUTTON_7, "Button", BS_OWNERDRAW | BS_CENTER |
@@ -318,31 +314,31 @@ IDR_MENU_SCIENTIFIC_1 MENU
BEGIN
POPUP "&Editare"
BEGIN
MENUITEM "&Copiază\tCtrl-C", IDM_EDIT_COPY
MENUITEM "&Lipește\tCtrl-V", IDM_EDIT_PASTE
MENUITEM "&Copiere\tCtrl-C", IDM_EDIT_COPY
MENUITEM "&Lipire\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "&Afișare"
POPUP "&Vizualizare"
BEGIN
MENUITEM "Mod st&andard", IDM_VIEW_STANDARD
MENUITEM "Mod știi&nțific", IDM_VIEW_SCIENTIFIC
MENUITEM "Con&versie", IDM_VIEW_CONVERSION
MENUITEM "&Standard", IDM_VIEW_STANDARD
MENUITEM "&Ştiinţific", IDM_VIEW_SCIENTIFIC
MENUITEM "Co&nversie", IDM_VIEW_CONVERSION
MENUITEM SEPARATOR
MENUITEM "&Hexazecimal\tF5", IDM_VIEW_HEX, CHECKED
MENUITEM "&Zecimal\tF6", IDM_VIEW_DEC, CHECKED
MENUITEM "&Octal\tF7", IDM_VIEW_OCT, CHECKED
MENUITEM "O&ctal\tF7", IDM_VIEW_OCT, CHECKED
MENUITEM "&Binar\tF8", IDM_VIEW_BIN, CHECKED
MENUITEM SEPARATOR
MENUITEM "&Grade\tF2", IDM_VIEW_DEG, CHECKED
MENUITEM "&Radiani\tF3", IDM_VIEW_RAD, CHECKED
MENUITEM "Gra&diani\tF4", IDM_VIEW_GRAD, CHECKED
MENUITEM SEPARATOR
MENUITEM "Grupează &cifrele", IDM_VIEW_GROUP, CHECKED
MENUITEM "G&ruparea cifrelor", IDM_VIEW_GROUP, CHECKED
END
POPUP "Aj&utor"
BEGIN
MENUITEM "&Manual…", IDM_HELP_HELP
MENUITEM "&Termeni din Ajutor", IDM_HELP_HELP
MENUITEM SEPARATOR
MENUITEM "&Despre", IDM_HELP_ABOUT
MENUITEM "&Despre Calculator ReactOS", IDM_HELP_ABOUT
END
END
@@ -350,32 +346,32 @@ IDR_MENU_SCIENTIFIC_2 MENU
BEGIN
POPUP "&Editare"
BEGIN
MENUITEM "&Copiază\tCTRL-C", IDM_EDIT_COPY
MENUITEM "&Lipește\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "&Copiere\tCtrl-C", IDM_EDIT_COPY
MENUITEM "&Lipire\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "&Afișare"
POPUP "&Vizualizare"
BEGIN
MENUITEM "Mod st&andard", IDM_VIEW_STANDARD
MENUITEM "Mod știi&nțific", IDM_VIEW_SCIENTIFIC
MENUITEM "Con&versie", IDM_VIEW_CONVERSION
MENUITEM "&Standard", IDM_VIEW_STANDARD
MENUITEM "&Ştiinţific", IDM_VIEW_SCIENTIFIC
MENUITEM "G&ruparea cifrelor", IDM_VIEW_CONVERSION
MENUITEM SEPARATOR
MENUITEM "&Hexazecimal\tF5", IDM_VIEW_HEX, CHECKED
MENUITEM "&Zecimal\tF6", IDM_VIEW_DEC, CHECKED
MENUITEM "&Octal\tF7", IDM_VIEW_OCT, CHECKED
MENUITEM "&Binar\tF8", IDM_VIEW_BIN, CHECKED
MENUITEM SEPARATOR
MENUITEM "&64 biți\tF12", IDM_VIEW_QWORD, CHECKED
MENUITEM "&32 biți\tF2", IDM_VIEW_DWORD, CHECKED
MENUITEM "&64 de biți\tF12", IDM_VIEW_QWORD, CHECKED
MENUITEM "&32 de biți\tF2", IDM_VIEW_DWORD, CHECKED
MENUITEM "&16 biți\tF3", IDM_VIEW_WORD, CHECKED
MENUITEM "&8 biți\tF4", IDM_VIEW_BYTE, CHECKED
MENUITEM SEPARATOR
MENUITEM "Grupează &cifrele", IDM_VIEW_GROUP, CHECKED
MENUITEM "Gr&uparea cifrelor", IDM_VIEW_GROUP, CHECKED
END
POPUP "Aj&utor"
BEGIN
MENUITEM "&Manual…", IDM_HELP_HELP
MENUITEM "&Termeni din Ajutor", IDM_HELP_HELP
MENUITEM SEPARATOR
MENUITEM "&Despre", IDM_HELP_ABOUT
MENUITEM "&Despre Calculator ReactOS", IDM_HELP_ABOUT
END
END
@@ -383,22 +379,22 @@ IDR_MENU_STANDARD MENU
BEGIN
POPUP "&Editare"
BEGIN
MENUITEM "&Copiază\tCTRL-C", IDM_EDIT_COPY
MENUITEM "&Lipește\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "&Copiere\tCtrl-C", IDM_EDIT_COPY
MENUITEM "&Lipire\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "&Afișare"
POPUP "&Vizualizare"
BEGIN
MENUITEM "Mod st&andard", IDM_VIEW_STANDARD
MENUITEM "Mod știi&nțific", IDM_VIEW_SCIENTIFIC
MENUITEM "Con&versie", IDM_VIEW_CONVERSION
MENUITEM "&Standard", IDM_VIEW_STANDARD
MENUITEM "&Ştiinţific", IDM_VIEW_SCIENTIFIC
MENUITEM "Co&nversie", IDM_VIEW_CONVERSION
MENUITEM SEPARATOR
MENUITEM "Grupează &cifre", IDM_VIEW_GROUP, CHECKED
MENUITEM "Gr&uparea cifrelor", IDM_VIEW_GROUP, CHECKED
END
POPUP "Aj&utor"
BEGIN
MENUITEM "&Manual…", IDM_HELP_HELP
MENUITEM "&Termeni din Ajutor", IDM_HELP_HELP
MENUITEM SEPARATOR
MENUITEM "&Despre", IDM_HELP_ABOUT
MENUITEM "&Despre Calculator ReactOS", IDM_HELP_ABOUT
END
END
@@ -407,13 +403,13 @@ END
STRINGTABLE
BEGIN
IDS_MATH_ERROR "Eroare"
IDS_QUICKHELP "Manual"
IDS_QUICKHELP "Termeni din Ajutor"
END
/* About */
STRINGTABLE
BEGIN
IDS_CALC_NAME "Minicalculator ReactOS"
IDS_CALC_NAME "Calculator ReactOS"
IDS_AUTHOR "Scris de Carlo Bramini"
END
@@ -438,8 +434,8 @@ END
/* Angles */
STRINGTABLE
BEGIN
IDS_ANGLE_ARCMINUTES "Minute of arc"
IDS_ANGLE_ARCSECONDS "Second of arc"
IDS_ANGLE_ARCMINUTES "Minut de arc"
IDS_ANGLE_ARCSECONDS "Secundă de arc"
IDS_ANGLE_DEGREES "Grade"
IDS_ANGLE_GRADIANS "Gradiani"
IDS_ANGLE_RADIANS "Radiani"
@@ -470,7 +466,7 @@ BEGIN
IDS_AREA_SQUARE_FATHOMS "Fathomi pătrați"
IDS_AREA_SQUARE_FATHOMS_HUNGARY "Fathomi pătrați (Ungaria)"
IDS_AREA_SQUARE_FEET "Picioare pătrate"
IDS_AREA_SQUARE_INCHES "Țoli pătrați"
IDS_AREA_SQUARE_INCHES "Inci pătrați"
IDS_AREA_SQUARE_KILOMETERS "Kilometri pătrați"
IDS_AREA_SQUARE_LAR "Lar pătrați"
IDS_AREA_SQUARE_METER "Metri pătrați"
@@ -513,7 +509,7 @@ BEGIN
IDS_CURRENCY_LITHUANIAN_LITAS "Litas lituanian"
IDS_CURRENCY_LUXEMBOURG_FRANC "Franc luxemburghez"
IDS_CURRENCY_MALTESE_LIRA "Litră malteză"
IDS_CURRENCY_PORTOGUESE_ESCUDO "Escudo portughez"
IDS_CURRENCY_PORTUGUESE_ESCUDO "Escudo portughez"
IDS_CURRENCY_SLOVAK_KORUNA "Coroană slovacă"
IDS_CURRENCY_SLOVENIAN_TOLAR "Tolar sloven"
IDS_CURRENCY_SPANISH_PESETA "Peseta spaniolă"
@@ -524,7 +520,7 @@ STRINGTABLE
BEGIN
IDS_ENERGY_15_C_CALORIES "Calorii 15 °C"
IDS_ENERGY_BTUS "Unități termale britanice"
IDS_ENERGY_ERGS "Erg"
IDS_ENERGY_ERGS "Ergi"
IDS_ENERGY_EVS "Electroni-Volt"
IDS_ENERGY_FOOT_POUNDS "Picioare-Livră"
IDS_ENERGY_IT_CALORIES "Calorii Tabel Internațional"
@@ -555,7 +551,7 @@ BEGIN
IDS_LENGTH_GAN "Gan"
IDS_LENGTH_HANDS "Palme"
IDS_LENGTH_HUNH "Hunh"
IDS_LENGTH_INCHES "Țoli"
IDS_LENGTH_INCHES "Inci"
IDS_LENGTH_JA "Ja"
IDS_LENGTH_JEONG "Jeong"
IDS_LENGTH_KABIET "Kabiet"
@@ -592,7 +588,7 @@ END
STRINGTABLE
BEGIN
IDS_POWER_BTUS_PER_MINUTE "Unități termice britanice pe minut"
IDS_POWER_FPS_PER_MINUTE "Picior-livre pe minut"
IDS_POWER_FPS_PER_MINUTE "Picior-lire pe minut"
IDS_POWER_HORSEPOWER "Cai putere"
IDS_POWER_KILOWATTS "Kilowați"
IDS_POWER_MEGAWATTS "Megawați"
@@ -608,7 +604,7 @@ BEGIN
IDS_PRESSURE_KILOPASCALS "Kilopascali"
IDS_PRESSURE_MM_OF_MERCURY "Milimetri coloană de mercur"
IDS_PRESSURE_PASCALS "Pascali"
IDS_PRESSURE_PSI "Livre-forță pe țol pătrat"
IDS_PRESSURE_PSI "Livre-forță pe inci pătrați"
END
/* Temperatures */
@@ -657,7 +653,7 @@ BEGIN
IDS_VOLUME_BUSHELS_US "Bushel (SUA)"
IDS_VOLUME_CUBIC_CENTIMETERS "Centrimetri cubi"
IDS_VOLUME_CUBIC_FEET "Picioare^3"
IDS_VOLUME_CUBIC_INCHES "Țoli cubi"
IDS_VOLUME_CUBIC_INCHES "Inci cubi"
IDS_VOLUME_CUBIC_METERS "Metri cubi"
IDS_VOLUME_CUBIC_YARDS "Yarzi cubi"
IDS_VOLUME_DOE "Doe"
@@ -708,11 +704,11 @@ BEGIN
IDS_WEIGHT_OUNCES_AVOIRDUPOIS "Uncii, avoirdupois"
IDS_WEIGHT_OUNCES_TROY "Uncii, troy"
IDS_WEIGHT_POUNDS "Livre"
IDS_WEIGHT_QUINTAL_METRIC "Chintale (metric)"
IDS_WEIGHT_QUINTAL_METRIC "Quintale (metric)"
IDS_WEIGHT_SALOUNG "Saloung"
IDS_WEIGHT_STONES "Stones"
IDS_WEIGHT_TAMLUNG "Tamlung"
IDS_WEIGHT_TONNES "Tonni"
IDS_WEIGHT_TONNES "Tone"
IDS_WEIGHT_TONS_UK "Tone (Marea Britanie)"
IDS_WEIGHT_TONS_US "Tone (SUA)"
END

View File

@@ -9,10 +9,10 @@ MENU IDR_MENU_SCIENTIFIC_1
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
GROUPBOX "", IDC_STATIC, 5 ,14, 141, 20
CONTROL "Hex", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 8, 21, 30, 10
CONTROL "Dec", IDC_RADIO_DEC, "Button", BS_AUTORADIOBUTTON, 41, 21, 30, 10
CONTROL "Oct", IDC_RADIO_OCT, "Button", BS_AUTORADIOBUTTON, 74, 21, 30, 10
CONTROL "Bin", IDC_RADIO_BIN, "Button", BS_AUTORADIOBUTTON, 107, 21, 30, 10
AUTORADIOBUTTON "Hex", IDC_RADIO_HEX, 8, 21, 30, 10
AUTORADIOBUTTON "Dec", IDC_RADIO_DEC, 41, 21, 30, 10
AUTORADIOBUTTON "Oct", IDC_RADIO_OCT, 74, 21, 30, 10
AUTORADIOBUTTON "Bin", IDC_RADIO_BIN, 107, 21, 30, 10
GROUPBOX "", IDC_STATIC, 5, 34, 84, 20
CONTROL "Inv", IDC_CHECK_INV, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 8, 41, 26, 10
CONTROL "Hyp", IDC_CHECK_HYP, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 49, 41, 29, 10
@@ -129,17 +129,13 @@ BEGIN
PUSHBUTTON "F", IDC_BUTTON_F, 286, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
GROUPBOX "", IDC_STATIC, 147, 14, 163, 20
CONTROL "8 байт", IDC_RADIO_QWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 150, 21, 38, 10
CONTROL "4 байт", IDC_RADIO_DWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 190, 21, 38, 10
CONTROL "2 байт", IDC_RADIO_WORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 230, 21, 38, 10
CONTROL "1 байт", IDC_RADIO_BYTE, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 270, 21, 38, 10
CONTROL "Градусы", IDC_RADIO_DEG, "Button", BS_AUTORADIOBUTTON, 150, 21, 45, 10
CONTROL "Радианы", IDC_RADIO_RAD, "Button", BS_AUTORADIOBUTTON, 204, 21, 45, 10
CONTROL "Грады", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 258, 21, 45, 10
AUTORADIOBUTTON "8 байт", IDC_RADIO_QWORD, 150, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "4 байт", IDC_RADIO_DWORD, 190, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "2 байт", IDC_RADIO_WORD, 230, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "1 байт", IDC_RADIO_BYTE, 270, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Градусы", IDC_RADIO_DEG, 150, 21, 45, 10
AUTORADIOBUTTON "Радианы", IDC_RADIO_RAD, 204, 21, 45, 10
AUTORADIOBUTTON "Грады", IDC_RADIO_GRAD, 258, 21, 45, 10
PUSHBUTTON "C", IDC_BUTTON_CANC, 267, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 222, 38, 43, 18, BS_CENTER | BS_VCENTER |
@@ -309,8 +305,8 @@ IDR_MENU_SCIENTIFIC_1 MENU
BEGIN
POPUP "&Правка"
BEGIN
MENUITEM "&Копировать\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Вст&авить\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "&Копировать\tCtrl-C", IDM_EDIT_COPY
MENUITEM "Вст&авить\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "В&ид"
BEGIN
@@ -341,8 +337,8 @@ IDR_MENU_SCIENTIFIC_2 MENU
BEGIN
POPUP "&Правка"
BEGIN
MENUITEM "&Копировать\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Вст&авить\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "&Копировать\tCtrl-C", IDM_EDIT_COPY
MENUITEM "Вст&авить\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "В&ид"
BEGIN
@@ -374,8 +370,8 @@ IDR_MENU_STANDARD MENU
BEGIN
POPUP "&Правка"
BEGIN
MENUITEM "&Копировать\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Вст&авить\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "&Копировать\tCtrl-C", IDM_EDIT_COPY
MENUITEM "Вст&авить\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "В&ид"
BEGIN
@@ -504,7 +500,7 @@ BEGIN
IDS_CURRENCY_LITHUANIAN_LITAS "Литовский лит"
IDS_CURRENCY_LUXEMBOURG_FRANC "Люксембургский франк"
IDS_CURRENCY_MALTESE_LIRA "Мальтийская лира"
IDS_CURRENCY_PORTOGUESE_ESCUDO "Португальское эскудо"
IDS_CURRENCY_PORTUGUESE_ESCUDO "Португальское эскудо"
IDS_CURRENCY_SLOVAK_KORUNA "Словацкая крона"
IDS_CURRENCY_SLOVENIAN_TOLAR "Словенский толар"
IDS_CURRENCY_SPANISH_PESETA "Испанская песета"

View File

@@ -1,7 +1,4 @@
/* TRANSLATOR : Mário Kačmár /Mario Kacmar/ aka Kario (kario@szm.sk)
* DATE OF TR.: 30-01-2008
* LAST CHANGE: 09-08-2011
* ---------------------------------------
/* TRANSLATOR: 2008-2011 Mário Kačmár /Mario Kacmar/ aka Kario <kario@szm.sk>
* TODO: pridanie navigačných značiek "&" ?
*/
@@ -11,15 +8,15 @@ LANGUAGE LANG_SLOVAK, SUBLANG_DEFAULT
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Kalkulačka systému ReactOS"
CAPTION "Kalkulačka"
MENU IDR_MENU_SCIENTIFIC_1
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
GROUPBOX "", IDC_STATIC, 5 ,14, 141, 20
CONTROL "Hex", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 8, 21, 30, 10
CONTROL "Dec", IDC_RADIO_DEC, "Button", BS_AUTORADIOBUTTON, 41, 21, 30, 10
CONTROL "Oct", IDC_RADIO_OCT, "Button", BS_AUTORADIOBUTTON, 74, 21, 30, 10
CONTROL "Bin", IDC_RADIO_BIN, "Button", BS_AUTORADIOBUTTON, 107, 21, 30, 10
AUTORADIOBUTTON "Hex", IDC_RADIO_HEX, 8, 21, 30, 10
AUTORADIOBUTTON "Dec", IDC_RADIO_DEC, 41, 21, 30, 10
AUTORADIOBUTTON "Oct", IDC_RADIO_OCT, 74, 21, 30, 10
AUTORADIOBUTTON "Bin", IDC_RADIO_BIN, 107, 21, 30, 10
GROUPBOX "", IDC_STATIC, 5, 34, 84, 20
CONTROL "Inv", IDC_CHECK_INV, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 8, 41, 26, 10
CONTROL "Hyp", IDC_CHECK_HYP, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 49, 41, 29, 10
@@ -136,17 +133,13 @@ BEGIN
PUSHBUTTON "F", IDC_BUTTON_F, 286, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
GROUPBOX "", IDC_STATIC, 147, 14, 163, 20
CONTROL "Qword", IDC_RADIO_QWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 150, 21, 38, 10
CONTROL "Dword", IDC_RADIO_DWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 190, 21, 38, 10
CONTROL "Word", IDC_RADIO_WORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 230, 21, 38, 10
CONTROL "Bajt", IDC_RADIO_BYTE, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 270, 21, 38, 10
CONTROL "Stupne", IDC_RADIO_DEG, "Button", BS_AUTORADIOBUTTON, 150, 21, 45, 10
CONTROL "Radiány", IDC_RADIO_RAD, "Button", BS_AUTORADIOBUTTON, 204, 21, 45, 10
CONTROL "Grady", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 258, 21, 45, 10
AUTORADIOBUTTON "Qword", IDC_RADIO_QWORD, 150, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Dword", IDC_RADIO_DWORD, 190, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Word", IDC_RADIO_WORD, 230, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Bajt", IDC_RADIO_BYTE, 270, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Stupne", IDC_RADIO_DEG, 150, 21, 45, 10
AUTORADIOBUTTON "Radiány", IDC_RADIO_RAD, 204, 21, 45, 10
AUTORADIOBUTTON "Grady", IDC_RADIO_GRAD, 258, 21, 45, 10
PUSHBUTTON "C", IDC_BUTTON_CANC, 267, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 222, 38, 43, 18, BS_CENTER | BS_VCENTER |
@@ -159,7 +152,7 @@ END
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Kalkulačka systému ReactOS"
CAPTION "Kalkulačka"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
@@ -224,7 +217,7 @@ END
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Kalkulačka systému ReactOS"
CAPTION "Kalkulačka"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg"
BEGIN
@@ -316,8 +309,8 @@ IDR_MENU_SCIENTIFIC_1 MENU
BEGIN
POPUP "Úpravy"
BEGIN
MENUITEM "Kopírovať\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Prilepiť\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "Kopírovať\tCtrl-C", IDM_EDIT_COPY
MENUITEM "Prilepiť\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "Zobraziť"
BEGIN
@@ -348,8 +341,8 @@ IDR_MENU_SCIENTIFIC_2 MENU
BEGIN
POPUP "Úpravy"
BEGIN
MENUITEM "Kopírovať\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Prilepiť\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "Kopírovať\tCtrl-C", IDM_EDIT_COPY
MENUITEM "Prilepiť\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "Zobraziť"
BEGIN
@@ -381,8 +374,8 @@ IDR_MENU_STANDARD MENU
BEGIN
POPUP "Úpravy"
BEGIN
MENUITEM "Kopírovať\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Prilepiť\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "Kopírovať\tCtrl-C", IDM_EDIT_COPY
MENUITEM "Prilepiť\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "Zobraziť"
BEGIN
@@ -511,7 +504,7 @@ BEGIN
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
IDS_CURRENCY_LUXEMBOURG_FRANC "Luxemburský frank"
IDS_CURRENCY_MALTESE_LIRA "Maltská líra"
IDS_CURRENCY_PORTOGUESE_ESCUDO "Portugalské escudo"
IDS_CURRENCY_PORTUGUESE_ESCUDO "Portugalské escudo"
IDS_CURRENCY_SLOVAK_KORUNA "Slovenská koruna"
IDS_CURRENCY_SLOVENIAN_TOLAR "Slovinský toliar"
IDS_CURRENCY_SPANISH_PESETA "Španielska peseta"

View File

@@ -1,5 +1,4 @@
/* TRANSLATOR : Ardit Dani (Ard1t) (ardit.dani@gmail.com)
* DATE OF TR: 29-11-2013
/* TRANSLATOR: 2013 Ardit Dani (Ard1t) <ardit.dani@gmail.com>
*/
LANGUAGE LANG_ALBANIAN, SUBLANG_NEUTRAL
@@ -8,15 +7,15 @@ LANGUAGE LANG_ALBANIAN, SUBLANG_NEUTRAL
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Makine Llogaritje"
CAPTION "Makine Llogaritje"
MENU IDR_MENU_SCIENTIFIC_1
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
GROUPBOX "", IDC_STATIC, 5 ,14, 141, 20
CONTROL "Hex", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 8, 21, 30, 10
CONTROL "Dec", IDC_RADIO_DEC, "Button", BS_AUTORADIOBUTTON, 41, 21, 30, 10
CONTROL "Oct", IDC_RADIO_OCT, "Button", BS_AUTORADIOBUTTON, 74, 21, 30, 10
CONTROL "Bin", IDC_RADIO_BIN, "Button", BS_AUTORADIOBUTTON, 107, 21, 30, 10
AUTORADIOBUTTON "Hex", IDC_RADIO_HEX, 8, 21, 30, 10
AUTORADIOBUTTON "Dec", IDC_RADIO_DEC, 41, 21, 30, 10
AUTORADIOBUTTON "Oct", IDC_RADIO_OCT, 74, 21, 30, 10
AUTORADIOBUTTON "Bin", IDC_RADIO_BIN, 107, 21, 30, 10
GROUPBOX "", IDC_STATIC, 5, 34, 84, 20
CONTROL "Inv", IDC_CHECK_INV, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 8, 41, 26, 10
CONTROL "Hyp", IDC_CHECK_HYP, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 49, 41, 29, 10
@@ -133,17 +132,13 @@ BEGIN
PUSHBUTTON "F", IDC_BUTTON_F, 286, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
GROUPBOX "", IDC_STATIC, 147, 14, 163, 20
CONTROL "Qword", IDC_RADIO_QWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 150, 21, 38, 10
CONTROL "Dword", IDC_RADIO_DWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 190, 21, 38, 10
CONTROL "Word", IDC_RADIO_WORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 230, 21, 38, 10
CONTROL "Byte", IDC_RADIO_BYTE, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 270, 21, 38, 10
CONTROL "Degrees", IDC_RADIO_DEG, "Button", BS_AUTORADIOBUTTON, 150, 21, 45, 10
CONTROL "Radians", IDC_RADIO_RAD, "Button", BS_AUTORADIOBUTTON, 204, 21, 45, 10
CONTROL "Gradians", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 258, 21, 45, 10
AUTORADIOBUTTON "Qword", IDC_RADIO_QWORD, 150, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Dword", IDC_RADIO_DWORD, 190, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Word", IDC_RADIO_WORD, 230, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Byte", IDC_RADIO_BYTE, 270, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Degrees", IDC_RADIO_DEG, 150, 21, 45, 10
AUTORADIOBUTTON "Radians", IDC_RADIO_RAD, 204, 21, 45, 10
AUTORADIOBUTTON "Gradians", IDC_RADIO_GRAD, 258, 21, 45, 10
PUSHBUTTON "C", IDC_BUTTON_CANC, 267, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 222, 38, 43, 18, BS_CENTER | BS_VCENTER |
@@ -156,7 +151,7 @@ END
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Makine Llogaritje"
CAPTION "Makine Llogaritje"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
@@ -221,7 +216,7 @@ END
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Makine Llogaritje"
CAPTION "Makine Llogaritje"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg"
BEGIN
@@ -508,7 +503,7 @@ BEGIN
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
IDS_CURRENCY_LUXEMBOURG_FRANC "Luxembourg franc"
IDS_CURRENCY_MALTESE_LIRA "Lira Maltese"
IDS_CURRENCY_PORTOGUESE_ESCUDO "Escudo Portugez"
IDS_CURRENCY_PORTUGUESE_ESCUDO "Escudo Portugez"
IDS_CURRENCY_SLOVAK_KORUNA "Koruna Sllovake"
IDS_CURRENCY_SLOVENIAN_TOLAR "Tolari Slloven"
IDS_CURRENCY_SPANISH_PESETA "Peseta Spanjolle"

View File

@@ -1,6 +1,5 @@
/*
* PROJECT: ReactOS CALC
* FILE: base/applications/calc/lang/sv-SE.rc
* PURPOSE: Swedish resource file
* Translation: Jaix Bly
*/
@@ -11,15 +10,15 @@ LANGUAGE LANG_SWEDISH, SUBLANG_NEUTRAL
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Kalkylator"
CAPTION "Kalkylator"
MENU IDR_MENU_SCIENTIFIC_1
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
GROUPBOX "", IDC_STATIC, 5 ,14, 141, 20
CONTROL "Hex", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 8, 21, 30, 10
CONTROL "Dec", IDC_RADIO_DEC, "Button", BS_AUTORADIOBUTTON, 41, 21, 30, 10
CONTROL "Okt", IDC_RADIO_OCT, "Button", BS_AUTORADIOBUTTON, 74, 21, 30, 10
CONTROL "Bin", IDC_RADIO_BIN, "Button", BS_AUTORADIOBUTTON, 107, 21, 30, 10
AUTORADIOBUTTON "Hex", IDC_RADIO_HEX, 8, 21, 30, 10
AUTORADIOBUTTON "Dec", IDC_RADIO_DEC, 41, 21, 30, 10
AUTORADIOBUTTON "Okt", IDC_RADIO_OCT, 74, 21, 30, 10
AUTORADIOBUTTON "Bin", IDC_RADIO_BIN, 107, 21, 30, 10
GROUPBOX "", IDC_STATIC, 5, 34, 84, 20
CONTROL "Inv", IDC_CHECK_INV, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 8, 41, 26, 10
CONTROL "Hyp", IDC_CHECK_HYP, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 49, 41, 29, 10
@@ -136,17 +135,13 @@ BEGIN
PUSHBUTTON "F", IDC_BUTTON_F, 286, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
GROUPBOX "", IDC_STATIC, 147, 14, 163, 20
CONTROL "Qword", IDC_RADIO_QWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 150, 21, 38, 10
CONTROL "Dword", IDC_RADIO_DWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 190, 21, 38, 10
CONTROL "Word", IDC_RADIO_WORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 230, 21, 38, 10
CONTROL "Byte", IDC_RADIO_BYTE, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 270, 21, 38, 10
CONTROL "Grader", IDC_RADIO_DEG, "Button", BS_AUTORADIOBUTTON, 150, 21, 45, 10
CONTROL "Radianer", IDC_RADIO_RAD, "Button", BS_AUTORADIOBUTTON, 204, 21, 45, 10
CONTROL "Gradienter", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 258, 21, 45, 10
AUTORADIOBUTTON "Qword", IDC_RADIO_QWORD, 150, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Dword", IDC_RADIO_DWORD, 190, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Word", IDC_RADIO_WORD, 230, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Byte", IDC_RADIO_BYTE, 270, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Grader", IDC_RADIO_DEG, 150, 21, 45, 10
AUTORADIOBUTTON "Radianer", IDC_RADIO_RAD, 204, 21, 45, 10
AUTORADIOBUTTON "Gradienter", IDC_RADIO_GRAD, 258, 21, 45, 10
PUSHBUTTON "C", IDC_BUTTON_CANC, 267, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 222, 38, 43, 18, BS_CENTER | BS_VCENTER |
@@ -159,7 +154,7 @@ END
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Kalkylator"
CAPTION "Kalkylator"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
@@ -224,7 +219,7 @@ END
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Kalkylator"
CAPTION "Kalkylator"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg"
BEGIN
@@ -316,8 +311,8 @@ IDR_MENU_SCIENTIFIC_1 MENU
BEGIN
POPUP "Redigera"
BEGIN
MENUITEM "Kopiera\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Klistra in\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "Kopiera\tCtrl-C", IDM_EDIT_COPY
MENUITEM "Klistra in\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "Visa"
BEGIN
@@ -348,8 +343,8 @@ IDR_MENU_SCIENTIFIC_2 MENU
BEGIN
POPUP "Redigera"
BEGIN
MENUITEM "Kopiera\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Klistra in\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "Kopiera\tCtrl-C", IDM_EDIT_COPY
MENUITEM "Klistra in\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "Vis"
BEGIN
@@ -381,8 +376,8 @@ IDR_MENU_STANDARD MENU
BEGIN
POPUP "Redigera"
BEGIN
MENUITEM "Kopiera\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Klistra in\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "Kopiera\tCtrl-C", IDM_EDIT_COPY
MENUITEM "Klistra in\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "Visa"
BEGIN
@@ -511,7 +506,7 @@ BEGIN
IDS_CURRENCY_LITHUANIAN_LITAS "Litauenisk litas"
IDS_CURRENCY_LUXEMBOURG_FRANC "Luxembourg franc"
IDS_CURRENCY_MALTESE_LIRA "Maltesisk lire"
IDS_CURRENCY_PORTOGUESE_ESCUDO "Portugisisk escudo"
IDS_CURRENCY_PORTUGUESE_ESCUDO "Portugisisk escudo"
IDS_CURRENCY_SLOVAK_KORUNA "Slovakisk koruna"
IDS_CURRENCY_SLOVENIAN_TOLAR "Slovensk tolar"
IDS_CURRENCY_SPANISH_PESETA "Spansk peseta"

View File

@@ -4,15 +4,15 @@ LANGUAGE LANG_THAI, SUBLANG_DEFAULT
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "เครื่องคิดเลข ReactOS"
CAPTION "เครื่องคิดเลข"
MENU IDR_MENU_SCIENTIFIC_1
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
GROUPBOX "", IDC_STATIC, 5 ,14, 141, 20
CONTROL "สิบหก", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 8, 21, 30, 10
CONTROL "สิบ", IDC_RADIO_DEC, "Button", BS_AUTORADIOBUTTON, 41, 21, 30, 10
CONTROL "แปด", IDC_RADIO_OCT, "Button", BS_AUTORADIOBUTTON, 74, 21, 30, 10
CONTROL "สอง", IDC_RADIO_BIN, "Button", BS_AUTORADIOBUTTON, 107, 21, 30, 10
AUTORADIOBUTTON "สิบหก", IDC_RADIO_HEX, 8, 21, 30, 10
AUTORADIOBUTTON "สิบ", IDC_RADIO_DEC, 41, 21, 30, 10
AUTORADIOBUTTON "แปด", IDC_RADIO_OCT, 74, 21, 30, 10
AUTORADIOBUTTON "สอง", IDC_RADIO_BIN, 107, 21, 30, 10
GROUPBOX "", IDC_STATIC, 5, 34, 84, 20
CONTROL "Inv", IDC_CHECK_INV, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 8, 41, 26, 10
CONTROL "Hyp", IDC_CHECK_HYP, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 49, 41, 29, 10
@@ -129,17 +129,13 @@ BEGIN
PUSHBUTTON "F", IDC_BUTTON_F, 286, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
GROUPBOX "", IDC_STATIC, 147, 14, 163, 20
CONTROL "สี่เวิร์ด", IDC_RADIO_QWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 150, 21, 38, 10
CONTROL "สองเวิร์ด", IDC_RADIO_DWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 190, 21, 38, 10
CONTROL "เวิร์ด", IDC_RADIO_WORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 230, 21, 38, 10
CONTROL "ไบต์", IDC_RADIO_BYTE, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 270, 21, 38, 10
CONTROL "องศา", IDC_RADIO_DEG, "Button", BS_AUTORADIOBUTTON, 150, 21, 45, 10
CONTROL "เรเดียน", IDC_RADIO_RAD, "Button", BS_AUTORADIOBUTTON, 204, 21, 45, 10
CONTROL "เกรเดียน", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 258, 21, 45, 10
AUTORADIOBUTTON "สี่เวิร์ด", IDC_RADIO_QWORD, 150, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "สองเวิร์ด", IDC_RADIO_DWORD, 190, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "เวิร์ด", IDC_RADIO_WORD, 230, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "ไบต", IDC_RADIO_BYTE, 270, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "องศา", IDC_RADIO_DEG, 150, 21, 45, 10
AUTORADIOBUTTON "เกรเดียน", IDC_RADIO_RAD, 204, 21, 45, 10
AUTORADIOBUTTON "Gradians", IDC_RADIO_GRAD, 258, 21, 45, 10
PUSHBUTTON "C", IDC_BUTTON_CANC, 267, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 222, 38, 43, 18, BS_CENTER | BS_VCENTER |
@@ -217,7 +213,7 @@ END
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "เครื่องคิดเลข ReactOS"
CAPTION "เครื่องคิดเลข"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg"
BEGIN
@@ -309,8 +305,8 @@ IDR_MENU_SCIENTIFIC_1 MENU
BEGIN
POPUP "แ&ก้ไข"
BEGIN
MENUITEM "คัดลอก\tCTRL-C", IDM_EDIT_COPY
MENUITEM "วาง\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "คัดลอก\tCtrl-C", IDM_EDIT_COPY
MENUITEM "วาง\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "&มุมมอง"
BEGIN
@@ -341,8 +337,8 @@ IDR_MENU_SCIENTIFIC_2 MENU
BEGIN
POPUP "แ&ก้ไข"
BEGIN
MENUITEM "คัดลอก\tCTRL-C", IDM_EDIT_COPY
MENUITEM "วาง\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "คัดลอก\tCtrl-C", IDM_EDIT_COPY
MENUITEM "วาง\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "&มุมมอง"
BEGIN
@@ -374,8 +370,8 @@ IDR_MENU_STANDARD MENU
BEGIN
POPUP "แ&ก้ไข"
BEGIN
MENUITEM "คัดลอก\tCTRL-C", IDM_EDIT_COPY
MENUITEM "วาง\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "คัดลอก\tCtrl-C", IDM_EDIT_COPY
MENUITEM "วาง\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "&มุมมอง"
BEGIN
@@ -504,7 +500,7 @@ BEGIN
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
IDS_CURRENCY_LUXEMBOURG_FRANC "Luxembourg franc"
IDS_CURRENCY_MALTESE_LIRA "Maltese lira"
IDS_CURRENCY_PORTOGUESE_ESCUDO "Portoguese escudo"
IDS_CURRENCY_PORTUGUESE_ESCUDO "Portuguese escudo"
IDS_CURRENCY_SLOVAK_KORUNA "Slovak koruna"
IDS_CURRENCY_SLOVENIAN_TOLAR "Slovenian tolar"
IDS_CURRENCY_SPANISH_PESETA "Spanish peseta"

View File

@@ -1,6 +1,6 @@
/* TRANSLATOR:
2013-2014, 2016, 2019 Erdem Ersoy (eersoy93) (erdemersoy [at] erdemersoy [dot] net),
2021 Süleyman Poyraz (zaryob [dot] dev [at] gmail [dot] com)
2013-2019 Erdem Ersoy (eersoy93) <erdemersoy@erdemersoy.net>
2021 Süleyman Poyraz <zaryob.dev@gmail.com>
*/
LANGUAGE LANG_TURKISH, SUBLANG_DEFAULT
@@ -9,15 +9,15 @@ LANGUAGE LANG_TURKISH, SUBLANG_DEFAULT
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Hesap Makinesi"
CAPTION "Hesap Makinesi"
MENU IDR_MENU_SCIENTIFIC_1
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
GROUPBOX "", IDC_STATIC, 5 ,14, 141, 20
CONTROL "Onaltılık", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 8, 21, 30, 10
CONTROL "Onluk", IDC_RADIO_DEC, "Button", BS_AUTORADIOBUTTON, 41, 21, 30, 10
CONTROL "Sekizlik", IDC_RADIO_OCT, "Button", BS_AUTORADIOBUTTON, 74, 21, 30, 10
CONTROL "İkilik", IDC_RADIO_BIN, "Button", BS_AUTORADIOBUTTON, 107, 21, 30, 10
AUTORADIOBUTTON "Onaltılık", IDC_RADIO_HEX, 8, 21, 30, 10
AUTORADIOBUTTON "Onluk", IDC_RADIO_DEC, 41, 21, 30, 10
AUTORADIOBUTTON "Sekizlik", IDC_RADIO_OCT, 74, 21, 30, 10
AUTORADIOBUTTON "İkilik", IDC_RADIO_BIN, 107, 21, 30, 10
GROUPBOX "", IDC_STATIC, 5, 34, 84, 20
CONTROL "Inv", IDC_CHECK_INV, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 8, 41, 26, 10
CONTROL "Hyp", IDC_CHECK_HYP, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 49, 41, 29, 10
@@ -134,17 +134,13 @@ BEGIN
PUSHBUTTON "F", IDC_BUTTON_F, 286, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
GROUPBOX "", IDC_STATIC, 147, 14, 163, 20
CONTROL "Qword", IDC_RADIO_QWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 150, 21, 38, 10
CONTROL "Dword", IDC_RADIO_DWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 190, 21, 38, 10
CONTROL "Word", IDC_RADIO_WORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 230, 21, 38, 10
CONTROL "Byte", IDC_RADIO_BYTE, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 270, 21, 38, 10
CONTROL "Derece", IDC_RADIO_DEG, "Button", BS_AUTORADIOBUTTON, 150, 21, 45, 10
CONTROL "Radian", IDC_RADIO_RAD, "Button", BS_AUTORADIOBUTTON, 204, 21, 45, 10
CONTROL "Gradian", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 258, 21, 45, 10
AUTORADIOBUTTON "Qword", IDC_RADIO_QWORD, 150, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Dword", IDC_RADIO_DWORD, 190, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Word", IDC_RADIO_WORD, 230, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Byte", IDC_RADIO_BYTE, 270, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Derece", IDC_RADIO_DEG, 150, 21, 45, 10
AUTORADIOBUTTON "Radian", IDC_RADIO_RAD, 204, 21, 45, 10
AUTORADIOBUTTON "Gradian", IDC_RADIO_GRAD, 258, 21, 45, 10
PUSHBUTTON "C", IDC_BUTTON_CANC, 267, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 222, 38, 43, 18, BS_CENTER | BS_VCENTER |
@@ -157,7 +153,7 @@ END
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Hesap Makinesi"
CAPTION "Hesap Makinesi"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
@@ -222,7 +218,7 @@ END
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Hesap Makinesi"
CAPTION "Hesap Makinesi"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg"
BEGIN
@@ -509,7 +505,7 @@ BEGIN
IDS_CURRENCY_LITHUANIAN_LITAS "Litvanya litas"
IDS_CURRENCY_LUXEMBOURG_FRANC "Lüksemburg Frangı"
IDS_CURRENCY_MALTESE_LIRA "Malta Lirası"
IDS_CURRENCY_PORTOGUESE_ESCUDO "Portekiz Esküdosu"
IDS_CURRENCY_PORTUGUESE_ESCUDO "Portekiz Esküdosu"
IDS_CURRENCY_SLOVAK_KORUNA "Slovak Korunası"
IDS_CURRENCY_SLOVENIAN_TOLAR "Slovenya Toları"
IDS_CURRENCY_SPANISH_PESETA "İspanyol Pesetası"

View File

@@ -1,8 +1,7 @@
/*
* PROJECT: ReactOS Calculator
* PROJECT: ReactOS Calc
* LICENSE: GPL - See COPYING in the top level directory
* FILE: base/applications/calc/lang/uk-UA.rc
* PURPOSE: Ukraianian Language File for ReactOS Calc
* PURPOSE: Ukrainian Language File
* TRANSLATORS: Artem Reznikov & Sakara Yevhen
*/
@@ -12,15 +11,15 @@ LANGUAGE LANG_UKRAINIAN, SUBLANG_DEFAULT
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Калькулятор ReactOS"
CAPTION "Калькулятор"
MENU IDR_MENU_SCIENTIFIC_1
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
GROUPBOX "", IDC_STATIC, 5 ,14, 141, 20
CONTROL "Hex", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 8, 21, 30, 10
CONTROL "Dec", IDC_RADIO_DEC, "Button", BS_AUTORADIOBUTTON, 41, 21, 30, 10
CONTROL "Oct", IDC_RADIO_OCT, "Button", BS_AUTORADIOBUTTON, 74, 21, 30, 10
CONTROL "Bin", IDC_RADIO_BIN, "Button", BS_AUTORADIOBUTTON, 107, 21, 30, 10
AUTORADIOBUTTON "Hex", IDC_RADIO_HEX, 8, 21, 30, 10
AUTORADIOBUTTON "Dec", IDC_RADIO_DEC, 41, 21, 30, 10
AUTORADIOBUTTON "Oct", IDC_RADIO_OCT, 74, 21, 30, 10
AUTORADIOBUTTON "Bin", IDC_RADIO_BIN, 107, 21, 30, 10
GROUPBOX "", IDC_STATIC, 5, 34, 84, 20
CONTROL "Inv", IDC_CHECK_INV, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 8, 41, 26, 10
CONTROL "Hyp", IDC_CHECK_HYP, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 49, 41, 29, 10
@@ -137,17 +136,13 @@ BEGIN
PUSHBUTTON "F", IDC_BUTTON_F, 286, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
GROUPBOX "", IDC_STATIC, 147, 14, 163, 20
CONTROL "8 байт", IDC_RADIO_QWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 150, 21, 38, 10
CONTROL "4 байт", IDC_RADIO_DWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 190, 21, 38, 10
CONTROL "2 байт", IDC_RADIO_WORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 230, 21, 38, 10
CONTROL "1 байт", IDC_RADIO_BYTE, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 270, 21, 38, 10
CONTROL "Градуси", IDC_RADIO_DEG, "Button", BS_AUTORADIOBUTTON, 150, 21, 45, 10
CONTROL "Радіани", IDC_RADIO_RAD, "Button", BS_AUTORADIOBUTTON, 204, 21, 45, 10
CONTROL "Гради", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 258, 21, 45, 10
AUTORADIOBUTTON "8 байт", IDC_RADIO_QWORD, 150, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "4 байт", IDC_RADIO_DWORD, 190, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "2 байт", IDC_RADIO_WORD, 230, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "1 байт", IDC_RADIO_BYTE, 270, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Градуси", IDC_RADIO_DEG, 150, 21, 45, 10
AUTORADIOBUTTON "Радіани", IDC_RADIO_RAD, 204, 21, 45, 10
AUTORADIOBUTTON "Гради", IDC_RADIO_GRAD, 258, 21, 45, 10
PUSHBUTTON "C", IDC_BUTTON_CANC, 267, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 222, 38, 43, 18, BS_CENTER | BS_VCENTER |
@@ -160,7 +155,7 @@ END
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Калькулятор ReactOS"
CAPTION "Калькулятор"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
@@ -225,7 +220,7 @@ END
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Калькулятор ReactOS"
CAPTION "Калькулятор"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg"
BEGIN
@@ -317,8 +312,8 @@ IDR_MENU_SCIENTIFIC_1 MENU
BEGIN
POPUP "Правка"
BEGIN
MENUITEM "Копіювати\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Вставити\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "Копіювати\tCtrl-C", IDM_EDIT_COPY
MENUITEM "Вставити\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "Вигляд"
BEGIN
@@ -349,8 +344,8 @@ IDR_MENU_SCIENTIFIC_2 MENU
BEGIN
POPUP "Правка"
BEGIN
MENUITEM "Копіювати\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Вставити\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "Копіювати\tCtrl-C", IDM_EDIT_COPY
MENUITEM "Вставити\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "Вигляд"
BEGIN
@@ -382,8 +377,8 @@ IDR_MENU_STANDARD MENU
BEGIN
POPUP "Правка"
BEGIN
MENUITEM "Копіювати\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Вставити\tCTRL-V", IDM_EDIT_PASTE
MENUITEM "Копіювати\tCtrl-C", IDM_EDIT_COPY
MENUITEM "Вставити\tCtrl-V", IDM_EDIT_PASTE
END
POPUP "Вигляд"
BEGIN
@@ -512,7 +507,7 @@ BEGIN
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
IDS_CURRENCY_LUXEMBOURG_FRANC "Люксембургський франк"
IDS_CURRENCY_MALTESE_LIRA "Мальтийськая ліра"
IDS_CURRENCY_PORTOGUESE_ESCUDO "Португальське ескудо"
IDS_CURRENCY_PORTUGUESE_ESCUDO "Португальське ескудо"
IDS_CURRENCY_SLOVAK_KORUNA "Словацька крона"
IDS_CURRENCY_SLOVENIAN_TOLAR "Словенський толар"
IDS_CURRENCY_SPANISH_PESETA "Іспанська песета"

View File

@@ -12,15 +12,15 @@ LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 计算器"
CAPTION "计算器"
MENU IDR_MENU_SCIENTIFIC_1
FONT 9, "宋体", 0, 0, 0x1
BEGIN
GROUPBOX "", IDC_STATIC, 5 ,14, 141, 20
CONTROL "Hex", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 8, 21, 30, 10
CONTROL "Dec", IDC_RADIO_DEC, "Button", BS_AUTORADIOBUTTON, 41, 21, 30, 10
CONTROL "Oct", IDC_RADIO_OCT, "Button", BS_AUTORADIOBUTTON, 74, 21, 30, 10
CONTROL "Bin", IDC_RADIO_BIN, "Button", BS_AUTORADIOBUTTON, 107, 21, 30, 10
AUTORADIOBUTTON "Hex", IDC_RADIO_HEX, 8, 21, 30, 10
AUTORADIOBUTTON "Dec", IDC_RADIO_DEC, 41, 21, 30, 10
AUTORADIOBUTTON "Oct", IDC_RADIO_OCT, 74, 21, 30, 10
AUTORADIOBUTTON "Bin", IDC_RADIO_BIN, 107, 21, 30, 10
GROUPBOX "", IDC_STATIC, 5, 34, 84, 20
CONTROL "Inv", IDC_CHECK_INV, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 8, 41, 26, 10
CONTROL "Hyp", IDC_CHECK_HYP, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 49, 41, 29, 10
@@ -137,17 +137,13 @@ BEGIN
PUSHBUTTON "F", IDC_BUTTON_F, 286, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
GROUPBOX "", IDC_STATIC, 147, 14, 163, 20
CONTROL "四字", IDC_RADIO_QWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 150, 21, 38, 10
CONTROL "字", IDC_RADIO_DWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 190, 21, 38, 10
CONTROL "字", IDC_RADIO_WORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 230, 21, 38, 10
CONTROL "字节", IDC_RADIO_BYTE, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 270, 21, 38, 10
CONTROL "角度", IDC_RADIO_DEG, "Button", BS_AUTORADIOBUTTON, 150, 21, 45, 10
CONTROL "弧度", IDC_RADIO_RAD, "Button", BS_AUTORADIOBUTTON, 204, 21, 45, 10
CONTROL "梯度", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 258, 21, 45, 10
AUTORADIOBUTTON "四字", IDC_RADIO_QWORD, 150, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "双字", IDC_RADIO_DWORD, 190, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "字", IDC_RADIO_WORD, 230, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "字节", IDC_RADIO_BYTE, 270, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "角度", IDC_RADIO_DEG, 150, 21, 45, 10
AUTORADIOBUTTON "弧度", IDC_RADIO_RAD, 204, 21, 45, 10
AUTORADIOBUTTON "梯度", IDC_RADIO_GRAD, 258, 21, 45, 10
PUSHBUTTON "C", IDC_BUTTON_CANC, 267, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 222, 38, 43, 18, BS_CENTER | BS_VCENTER |
@@ -160,7 +156,7 @@ END
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 计算器"
CAPTION "计算器"
MENU IDR_MENU_STANDARD
FONT 9, "宋体", 0, 0, 0x1
BEGIN
@@ -225,7 +221,7 @@ END
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 计算器"
CAPTION "计算器"
MENU IDR_MENU_STANDARD
FONT 9, "宋体"
BEGIN
@@ -512,7 +508,7 @@ BEGIN
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
IDS_CURRENCY_LUXEMBOURG_FRANC "卢森堡法郎"
IDS_CURRENCY_MALTESE_LIRA "马耳他里拉"
IDS_CURRENCY_PORTOGUESE_ESCUDO "葡萄牙埃斯库多"
IDS_CURRENCY_PORTUGUESE_ESCUDO "葡萄牙埃斯库多"
IDS_CURRENCY_SLOVAK_KORUNA "斯洛伐克克朗"
IDS_CURRENCY_SLOVENIAN_TOLAR "斯洛文尼亚拖拉"
IDS_CURRENCY_SPANISH_PESETA "西班牙比塞塔"

View File

@@ -12,15 +12,15 @@ LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_HONGKONG
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 計數機"
CAPTION "計數機"
MENU IDR_MENU_SCIENTIFIC_1
FONT 9, "新細明體", 0, 0, 0x1
BEGIN
GROUPBOX "", IDC_STATIC, 5 ,14, 141, 20
CONTROL "Hex", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 8, 21, 30, 10
CONTROL "Dec", IDC_RADIO_DEC, "Button", BS_AUTORADIOBUTTON, 41, 21, 30, 10
CONTROL "Oct", IDC_RADIO_OCT, "Button", BS_AUTORADIOBUTTON, 74, 21, 30, 10
CONTROL "Bin", IDC_RADIO_BIN, "Button", BS_AUTORADIOBUTTON, 107, 21, 30, 10
AUTORADIOBUTTON "Hex", IDC_RADIO_HEX, 8, 21, 30, 10
AUTORADIOBUTTON "Dec", IDC_RADIO_DEC, 41, 21, 30, 10
AUTORADIOBUTTON "Oct", IDC_RADIO_OCT, 74, 21, 30, 10
AUTORADIOBUTTON "Bin", IDC_RADIO_BIN, 107, 21, 30, 10
GROUPBOX "", IDC_STATIC, 5, 34, 84, 20
CONTROL "Inv", IDC_CHECK_INV, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 8, 41, 26, 10
CONTROL "Hyp", IDC_CHECK_HYP, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 49, 41, 29, 10
@@ -137,17 +137,13 @@ BEGIN
PUSHBUTTON "F", IDC_BUTTON_F, 286, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
GROUPBOX "", IDC_STATIC, 147, 14, 163, 20
CONTROL "Qword", IDC_RADIO_QWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 150, 21, 38, 10
CONTROL "Dword", IDC_RADIO_DWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 190, 21, 38, 10
CONTROL "Word", IDC_RADIO_WORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 230, 21, 38, 10
CONTROL "位元組", IDC_RADIO_BYTE, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 270, 21, 38, 10
CONTROL "角度", IDC_RADIO_DEG, "Button", BS_AUTORADIOBUTTON, 150, 21, 45, 10
CONTROL "弧度", IDC_RADIO_RAD, "Button", BS_AUTORADIOBUTTON, 204, 21, 45, 10
CONTROL "梯度", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 258, 21, 45, 10
AUTORADIOBUTTON "Qword", IDC_RADIO_QWORD, 150, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Dword", IDC_RADIO_DWORD, 190, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Word", IDC_RADIO_WORD, 230, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "位元組", IDC_RADIO_BYTE, 270, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "角度", IDC_RADIO_DEG, 150, 21, 45, 10
AUTORADIOBUTTON "弧度", IDC_RADIO_RAD, 204, 21, 45, 10
AUTORADIOBUTTON "梯度", IDC_RADIO_GRAD, 258, 21, 45, 10
PUSHBUTTON "C", IDC_BUTTON_CANC, 267, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 222, 38, 43, 18, BS_CENTER | BS_VCENTER |
@@ -160,7 +156,7 @@ END
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 計數機"
CAPTION "計數機"
MENU IDR_MENU_STANDARD
FONT 9, "新細明體", 0, 0, 0x1
BEGIN
@@ -225,7 +221,7 @@ END
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 計數機"
CAPTION "計數機"
MENU IDR_MENU_STANDARD
FONT 9, "新細明體"
BEGIN
@@ -512,7 +508,7 @@ BEGIN
IDS_CURRENCY_LITHUANIAN_LITAS "拉脫維亞拉分"
IDS_CURRENCY_LUXEMBOURG_FRANC "盧森堡法郎"
IDS_CURRENCY_MALTESE_LIRA "馬爾他里拉"
IDS_CURRENCY_PORTOGUESE_ESCUDO "葡萄牙埃斯庫多"
IDS_CURRENCY_PORTUGUESE_ESCUDO "葡萄牙埃斯庫多"
IDS_CURRENCY_SLOVAK_KORUNA "斯洛伐克克朗"
IDS_CURRENCY_SLOVENIAN_TOLAR "斯洛維尼亞拖拉"
IDS_CURRENCY_SPANISH_PESETA "西班牙比塞塔"

View File

@@ -1,4 +1,4 @@
// Traditional Chinese translation by 2021 Chan Chilung <eason066@gmail.com>
// TRANSLATOR: 2021 Chan Chilung <eason066@gmail.com>
LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_TRADITIONAL
@@ -6,15 +6,15 @@ LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_TRADITIONAL
IDD_DIALOG_SCIENTIFIC DIALOGEX CW_USEDEFAULT16, 0, 316, 163
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 計算機"
CAPTION "計算機"
MENU IDR_MENU_SCIENTIFIC_1
FONT 9, "新細明體", 0, 0, 0x1
BEGIN
GROUPBOX "", IDC_STATIC, 5 ,14, 141, 20
CONTROL "Hex", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 8, 21, 30, 10
CONTROL "Dec", IDC_RADIO_DEC, "Button", BS_AUTORADIOBUTTON, 41, 21, 30, 10
CONTROL "Oct", IDC_RADIO_OCT, "Button", BS_AUTORADIOBUTTON, 74, 21, 30, 10
CONTROL "Bin", IDC_RADIO_BIN, "Button", BS_AUTORADIOBUTTON, 107, 21, 30, 10
AUTORADIOBUTTON "Hex", IDC_RADIO_HEX, 8, 21, 30, 10
AUTORADIOBUTTON "Dec", IDC_RADIO_DEC, 41, 21, 30, 10
AUTORADIOBUTTON "Oct", IDC_RADIO_OCT, 74, 21, 30, 10
AUTORADIOBUTTON "Bin", IDC_RADIO_BIN, 107, 21, 30, 10
GROUPBOX "", IDC_STATIC, 5, 34, 84, 20
CONTROL "Inv", IDC_CHECK_INV, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 8, 41, 26, 10
CONTROL "Hyp", IDC_CHECK_HYP, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 49, 41, 29, 10
@@ -131,17 +131,13 @@ BEGIN
PUSHBUTTON "F", IDC_BUTTON_F, 286, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
GROUPBOX "", IDC_STATIC, 147, 14, 163, 20
CONTROL "Qword", IDC_RADIO_QWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 150, 21, 38, 10
CONTROL "Dword", IDC_RADIO_DWORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 190, 21, 38, 10
CONTROL "Word", IDC_RADIO_WORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 230, 21, 38, 10
CONTROL "位元組", IDC_RADIO_BYTE, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 270, 21, 38, 10
CONTROL "角度", IDC_RADIO_DEG, "Button", BS_AUTORADIOBUTTON, 150, 21, 45, 10
CONTROL "弧度", IDC_RADIO_RAD, "Button", BS_AUTORADIOBUTTON, 204, 21, 45, 10
CONTROL "梯度", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 258, 21, 45, 10
AUTORADIOBUTTON "Qword", IDC_RADIO_QWORD, 150, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Dword", IDC_RADIO_DWORD, 190, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "Word", IDC_RADIO_WORD, 230, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "位元組", IDC_RADIO_BYTE, 270, 21, 38, 10, NOT WS_VISIBLE
AUTORADIOBUTTON "角度", IDC_RADIO_DEG, 150, 21, 45, 10
AUTORADIOBUTTON "弧度", IDC_RADIO_RAD, 204, 21, 45, 10
AUTORADIOBUTTON "梯度", IDC_RADIO_GRAD, 258, 21, 45, 10
PUSHBUTTON "C", IDC_BUTTON_CANC, 267, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 222, 38, 43, 18, BS_CENTER | BS_VCENTER |
@@ -154,7 +150,7 @@ END
IDD_DIALOG_STANDARD DIALOGEX CW_USEDEFAULT16, 0, 169, 128
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 計算機"
CAPTION "計算機"
MENU IDR_MENU_STANDARD
FONT 9, "新細明體", 0, 0, 0x1
BEGIN
@@ -219,7 +215,7 @@ END
IDD_DIALOG_CONVERSION DIALOGEX CW_USEDEFAULT16, 0, 320, 130
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 計算機"
CAPTION "計算機"
MENU IDR_MENU_STANDARD
FONT 9, "新細明體"
BEGIN
@@ -506,7 +502,7 @@ BEGIN
IDS_CURRENCY_LITHUANIAN_LITAS "拉脫維亞拉分"
IDS_CURRENCY_LUXEMBOURG_FRANC "盧森堡法郎"
IDS_CURRENCY_MALTESE_LIRA "馬爾他里拉"
IDS_CURRENCY_PORTOGUESE_ESCUDO "葡萄牙埃斯庫多"
IDS_CURRENCY_PORTUGUESE_ESCUDO "葡萄牙埃斯庫多"
IDS_CURRENCY_SLOVAK_KORUNA "斯洛伐克克朗"
IDS_CURRENCY_SLOVENIAN_TOLAR "斯洛維尼亞拖拉"
IDS_CURRENCY_SPANISH_PESETA "西班牙比塞塔"

View File

@@ -194,7 +194,7 @@
#define IDS_CURRENCY_LITHUANIAN_LITAS 2414
#define IDS_CURRENCY_LUXEMBOURG_FRANC 2415
#define IDS_CURRENCY_MALTESE_LIRA 2416
#define IDS_CURRENCY_PORTOGUESE_ESCUDO 2417
#define IDS_CURRENCY_PORTUGUESE_ESCUDO 2417
#define IDS_CURRENCY_SLOVAK_KORUNA 2418
#define IDS_CURRENCY_SLOVENIAN_TOLAR 2419
#define IDS_CURRENCY_SPANISH_PESETA 2420

View File

@@ -1015,10 +1015,16 @@ static void handle_copy_command(HWND hWnd)
TCHAR display[MAX_CALC_SIZE];
UINT n;
// Read current text from output display
n = GetDlgItemText(hWnd, IDC_TEXT_OUTPUT, display, SIZEOF(display));
if (calc.base == IDC_RADIO_DEC && _tcschr(calc.buffer, _T('.')) == NULL)
display[n - calc.sDecimal_len] = _T('\0');
// Check if result is a true number
if (!calc.is_nan)
{
// Remove trailing decimal point if no decimal digits exist
if (calc.base == IDC_RADIO_DEC && _tcschr(calc.buffer, _T('.')) == NULL)
display[n - calc.sDecimal_len] = _T('\0');
}
CopyMemToClipboard(display);
}
@@ -1635,7 +1641,7 @@ static INT_PTR CALLBACK DlgMainProc(HWND hWnd, UINT msg, WPARAM wp, LPARAM lp)
case IDC_BUTTON_D:
case IDC_BUTTON_E:
case IDC_BUTTON_F:
calc.is_nan = FALSE;
if (calc.is_nan) break;
build_operand(hWnd, LOWORD(wp));
return TRUE;
case IDC_BUTTON_PERCENT:
@@ -1701,6 +1707,7 @@ static INT_PTR CALLBACK DlgMainProc(HWND hWnd, UINT msg, WPARAM wp, LPARAM lp)
}
return TRUE;
case IDC_BUTTON_BACK:
if (calc.is_nan) break;
if (calc.sci_in) {
if (calc.esp == 0) {
TCHAR *ptr;

View File

@@ -2,7 +2,7 @@
* FILE: base/applications/charmap/lang/ro-RO.rc
* ReactOS Project (https://reactos.org)
* TRANSLATORS: Copyright 2011-2018 Ștefan Fulea <stefan.fulea@mail.com>
* Copyright 2023 Andrei Miloiu <miloiuandrei@gmail.com>
* Copyright 2023-2024 Andrei Miloiu <miloiuandrei@gmail.com>
*/
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
@@ -11,18 +11,18 @@ IDD_CHARMAP DIALOGEX 6, 6, 292, 224
FONT 8, "MS Shell Dlg", 0, 0
STYLE DS_SHELLFONT | WS_CHILD | WS_VISIBLE
BEGIN
LTEXT "F&ont:", IDC_STATIC, 6, 7, 24, 9
LTEXT "&Font:", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE | WS_TABSTOP |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
PUSHBUTTON "&Manual…", IDC_CMHELP, 249, 5, 35, 13
PUSHBUTTON "Ajut&or", IDC_CMHELP, 249, 5, 35, 13
CONTROL "", IDC_FONTMAP, "FontMapWnd", WS_CHILD | WS_VISIBLE | WS_TABSTOP |
WS_VSCROLL, 20, 22, 266, 156
LTEXT "C&aractere de copiat:", IDC_STATIC, 6, 188, 66, 9
CONTROL "", IDC_TEXTBOX, RICHEDIT_CLASS, ES_AUTOHSCROLL | WS_BORDER |
WS_CHILD | WS_VISIBLE | WS_TABSTOP, 74, 186, 114, 13
DEFPUSHBUTTON "S&electează", IDC_SELECT, 194, 186, 44, 13
PUSHBUTTON "&Copiază", IDC_COPY, 242, 186, 44, 13, WS_DISABLED
CONTROL "Mod a&vansat", IDC_CHECK_ADVANCED, "Button", BS_AUTOCHECKBOX |
DEFPUSHBUTTON "Se&lectare", IDC_SELECT, 194, 186, 44, 13
PUSHBUTTON "&Copiere", IDC_COPY, 242, 186, 44, 13, WS_DISABLED
CONTROL "&Vizualizare complexă", IDC_CHECK_ADVANCED, "Button", BS_AUTOCHECKBOX |
WS_TABSTOP, 8, 208, 95, 10
END
@@ -30,14 +30,14 @@ IDD_ADVANCED DIALOGEX 0, 0, 292, 64
STYLE DS_SHELLFONT | WS_CHILD
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Co&dificare:", IDC_STATIC, 8, 8, 48, 8
LTEXT "Se&t de caractere:", IDC_STATIC, 8, 8, 60, 8
COMBOBOX IDC_COMBO_CHARSET, 72, 4, 116, 80, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "&Grupare după:", IDC_STATIC, 8, 28, 50, 8
COMBOBOX IDC_COMBO_GROUPBY, 72, 24, 116, 80, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
PUSHBUTTON "&Caută", IDC_BUTTON_SEARCH, 200, 44, 50, 14
PUSHBUTTON "Căutar&e", IDC_BUTTON_SEARCH, 200, 44, 50, 14
EDITTEXT IDC_EDIT_SEARCH, 72, 44, 116, 14, ES_AUTOHSCROLL
LTEXT "Căuta&re:", IDC_STATIC, 8, 48, 42, 8
LTEXT "&Unicode:", IDC_STATIC, 200, 8, 30, 8
LTEXT "Că&utare:", IDC_STATIC, 8, 48, 42, 8
LTEXT "U&nicode:", IDC_STATIC, 200, 8, 30, 8
EDITTEXT IDC_EDIT_UNICODE, 236, 4, 28, 12, ES_AUTOHSCROLL
END
@@ -46,7 +46,7 @@ CAPTION "Despre"
FONT 8, "MS Shell Dlg", 0, 0
STYLE DS_SHELLFONT | WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
BEGIN
LTEXT "Hartă de caractere v0.1\nDrept de autor (C) 2007 Ged Murphy (gedmurphy@reactos.org)\nTraducere de Ștefan Fulea (stefan.fulea@mail.com)", IDC_STATIC, 48, 7, 210, 36
LTEXT "Plan caractere v0.1\nDrept de autor (C) 2007 Ged Murphy (gedmurphy@reactos.org)\nTraducere de Ștefan Fulea (stefan.fulea@mail.com)", IDC_STATIC, 48, 7, 210, 36
PUSHBUTTON "Î&nchide", IDOK, 105, 162, 44, 15
ICON IDI_ICON, IDC_STATIC, 10, 10, 7, 30
EDITTEXT IDC_LICENSE_EDIT, 8, 44, 254, 107, WS_VISIBLE | WS_VSCROLL |
@@ -57,7 +57,7 @@ STRINGTABLE
BEGIN
IDS_LICENSE "Această aplicație este publică; fiind permisă modificarea și/sau (re)distribuția sa în termenii Licenței Publice Generale GNU publicată de Free Software Foundation; sau versiunea 2 a Licenței, sau (la alegere) a oricărei versiuni ulterioare.\r\n\r\nAceastă aplicație este distribuită doar în speranța de a fi utilă, FĂRĂ însă NICI O GARANȚIE; nici măcar cu garanția implicită a VANDABILITĂȚII sau a UTILITĂȚII ÎNTR-UN SCOP ANUME. Pentru mai multe detalii consultați Licența Publică Generală GNU.\r\n\r\nPuteți vedea această licență aici:\r\nhttp://www.gnu.org/licenses/gpl.html\r\n\r\nDe asemenea puteți consulta traduceri neoficiale ale acestei licențe aici:\r\nhttp://www.gnu.org/licenses/translations.html"
IDS_ABOUT "&Despre…"
IDS_TITLE "Hartă de caractere"
IDS_TITLE "Plan caractere"
IDS_UNICODE "Unicode"
IDS_ALL "Toate"
END

View File

@@ -93,7 +93,7 @@ extern void LoadSettings(void)
lstatus = RegQueryValueEx(hKey, _T("Advanced"), NULL, &type, (LPBYTE)&dwAdvancedChecked, &size);
if (lstatus == ERROR_SUCCESS && type == REG_DWORD && dwAdvancedChecked != FALSE)
{
SendDlgItemMessage(hCharmapDlg, IDC_CHECK_ADVANCED, BM_CLICK, MF_CHECKED, 0);
SendDlgItemMessage(hCharmapDlg, IDC_CHECK_ADVANCED, BM_CLICK, 0, 0);
}
RegCloseKey(hKey);

View File

@@ -2,8 +2,8 @@
* PROJECT: ReactOS Clipboard
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
* PURPOSE: Romanian resource file
* TRANSLATORS: Copyright 2011-2019 Ștefan Fulea <stefan.fulea@mail.com>
* Copyright 2023 Andrei Miloiu <miloiuandrei@gmail.com>
* TRANSLATORS: Copyright 2011-2018 Ștefan Fulea <stefan.fulea@mail.com>
* Copyright 2023-2024 Andrei Miloiu <miloiuandrei@gmail.com>
*/
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
@@ -18,23 +18,23 @@ BEGIN
POPUP "&Fișier"
BEGIN
MENUITEM "&Deschidere…", CMD_OPEN
MENUITEM "S&alvează ca…", CMD_SAVE_AS
MENUITEM "&Salvare ca…", CMD_SAVE_AS
MENUITEM SEPARATOR
MENUITEM "I&eșire", CMD_EXIT
END
POPUP "&Editare"
BEGIN
MENUITEM "Șt&erge\tDel", CMD_DELETE
MENUITEM "Ș&tergere\tDel", CMD_DELETE
END
POPUP "&Afișare"
BEGIN
MENUITEM "&Automată", CMD_AUTOMATIC
MENUITEM "A&utomată", CMD_AUTOMATIC
END
POPUP "Aj&utor"
POPUP "A&jutor"
BEGIN
MENUITEM "&Manual…", CMD_HELP
MENUITEM "Aj&utor", CMD_HELP
MENUITEM SEPARATOR
MENUITEM "&Despre", CMD_ABOUT
MENUITEM "&Despre", CMD_ABOUT
END
END
@@ -42,8 +42,8 @@ STRINGTABLE
BEGIN
STRING_CLIPBOARD "Inspector de Clipboard"
STRING_CLIPFILE "Element de Clipboard"
STRING_DELETE_MSG "Elimină conținutul din Clipboard?"
STRING_DELETE_TITLE "Curăță Clipboard"
STRING_DELETE_MSG "Eliminare conținut din Clipboard?"
STRING_DELETE_TITLE "Curățare Clipboard"
STRING_FORMAT_NT "Fișiere clipboard pentru ReactOS (*.clp)"
STRING_FORMAT_GEN "Fișiere clipboard (*.clp)"
END
@@ -60,10 +60,10 @@ BEGIN
STRING_CF_ENHMETAFILE "Metafișier îmbunătățit"
STRING_CF_METAFILEPICT "Metafișier"
STRING_CF_PALETTE "Paletă de culori"
STRING_CF_DIBV5 "Bitmap DIB (versiune 5)"
STRING_CF_DIBV5 "Bitmap DIB (versiunea 5)"
STRING_CF_SYLK "Format de legătură simbolică"
STRING_CF_DIF "Format de transfer al datelor"
STRING_CF_HDROP "Abandon date"
STRING_CF_DIF "Format de schimb de date"
STRING_CF_HDROP "Ștergere a datelor"
END
STRINGTABLE

View File

@@ -19,6 +19,7 @@ add_subdirectory(mode)
add_subdirectory(mofcomp)
add_subdirectory(more)
add_subdirectory(reg)
add_subdirectory(replace)
add_subdirectory(schtasks)
add_subdirectory(sort)
add_subdirectory(taskkill)

View File

@@ -1,4 +1,10 @@
/* Translator: Ștefan Fulea (stefan dot fulea at mail dot com) */
/*
* PROJECT: ReactOS AT utility
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
* PURPOSE: Romanian resource file
* TRANSLATORS: Copyright 2011-2019 Ștefan Fulea <stefan.fulea@mail.com>
* Copyright 2023 Andrei Miloiu <miloiuandrei@gmail.com>
*/
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
@@ -33,7 +39,7 @@ timp Specifică timpul de lansare a comenzii.\n\
IDS_JOBS_LIST "ID stare Zi Oră Comanda\n"
IDS_NO_ENTRIES "Nu există comenzi planificate.\n"
IDS_CONFIRM_QUESTION "Sigur doriți continuarea acestei operații? (D|N) [N]: "
IDS_CONFIRM_QUESTION "Sigur doriți continuarea acestei operații? (D/N) [N]: "
IDS_CONFIRM_INVALID "\nAcesta nu este un răspuns valid.\n"
IDS_CONFIRM_YES "D"
IDS_CONFIRM_NO "N"

View File

@@ -15,6 +15,7 @@ add_typelib(ihost.idl)
set_source_files_properties(rsrc.rc PROPERTIES OBJECT_DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/ihost.tlb)
target_link_libraries(cscript uuid wine)
set_module_type(cscript win32cui UNICODE)
add_delay_importlibs(cscript shlwapi)
add_importlibs(cscript shell32 oleaut32 ole32 advapi32 user32 msvcrt kernel32 ntdll)
add_dependencies(cscript stdole2 cscript_idlheader)
add_pch(cscript ${wscript_folder}/precomp.h SOURCE)

View File

@@ -2,7 +2,7 @@
* PROJECT: ReactOS FC Command
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
* PURPOSE: Romanian resource file
* TRANSLATORS: Copyright 2022 Andrei Miloiu <miloiuandrei@gmail.com>
* TRANSLATORS: Copyright 2022-2024 Andrei Miloiu <miloiuandrei@gmail.com>
*/
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
@@ -39,7 +39,7 @@ FC /B [discul1:][calea1]numele fișierului1 [drive2:][path2]numele fișierului2\
IDS_OUT_OF_MEMORY "FC: Fără memorie\n"
IDS_CANNOT_READ "FC: nu poate fi citit din %ls\n"
IDS_INVALID_SWITCH "FC: Comutator nevalidh\n"
IDS_CANNOT_OPEN "FC: nu poate fi deschis %ls - Nu există un astfel de fișier sau dosar\n"
IDS_CANNOT_OPEN "FC: nu poate fi deschis %ls - Nu există un astfel de fișier sau folder\n"
IDS_NEEDS_FILES "FC: Număr insuficient de specificații pentru fișiere\n"
IDS_CANT_USE_WILDCARD "Semnele speciale ('*' și '?') nu sunt acceptate deocamdată\n"
IDS_DIFFERENT "FC: Fișierele %ls și %ls sunt diferite\n"

View File

@@ -1,8 +1,9 @@
/*
* FILE: base/applications/cmdutils/help/lang/ro-RO.rc
* ReactOS Project (https://reactos.org)
* AUTHOR: Magnus Olsen, 2005
* TRANSLATOR: Ștefan Fulea (stefan dot fulea at mail dot com)
* PROJECT: ReactOS help utility
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
* PURPOSE: Romanian resource file
* TRANSLATORS: Copyright 2014-2018 Ștefan Fulea <stefan.fulea@mail.com>
* Copyright 2023 Andrei Miloiu <miloiuandrei@gmail.com>
*/
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
@@ -21,7 +22,7 @@ HELP [comandă]\n\n\
help comandă\n\
comandă /? Pentru mai multe informații referitoare la o anume comandă.\n\n\
? Enumeră toate comenzile disponibile (fără descriere).\n\
ALIAS Instituie, destituie sau afișează alias.\n\
ALIAS Setează, șterge sau afișează aliasuri.\n\
ASSOC Modifică asocierile extensiilor de fișiere.\n\
ATTRIB Afișează sau modifică atributele fișierelor.\n\
BEEP Semnalizează utilizând difuzorul intern.\n\

View File

@@ -3,24 +3,23 @@
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
* PURPOSE: Romanian resource file
* TRANSLATORS: Copyright 2011-2019 Ștefan Fulea <stefan.fulea@mail.com>
* Copyright 2023 Andrei Miloiu <miloiuandrei@gmail.com>
* Copyright 2023-2024 Andrei Miloiu <miloiuandrei@gmail.com>
*/
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
STRINGTABLE
BEGIN
// STRING_LABEL_HELP "Afișează sau modifică eticheta unei unități (de stocare).\n\nLABEL [unitate:][etichetă]\n"
STRING_LABEL_HELP "Crează, schimbă sau șterge denumirea unui dispozitiv.\n\n\
LABEL [dispozitiv:][denumire]\n\n\
dispozitiv: Specifică litera unui dispozitiv.\n\
denumire Specifică denumirea unui dispozitiv."
STRING_LABEL_TEXT1 "Volumul unității %c: este denumit ca %s\n"
STRING_LABEL_TEXT2 "Volumul unității %c: nu este denumit.\n"
STRING_LABEL_HELP "Crează, schimbă sau șterge denumirea unui disc.\n\n\
LABEL [disc:][denumire]\n\n\
disc: Specifică litera unui disc.\n\
denumire Specifică denumirea unui disc."
STRING_LABEL_TEXT1 "Volumul discului %c: este %s\n"
STRING_LABEL_TEXT2 "Volumul discului %c: nu are denumire.\n"
STRING_LABEL_TEXT3 "Numărul de serie al volumului este %04X-%04X\n"
STRING_LABEL_TEXT4 "Introduceți denumirea unității (opțională, de 32 caractere), apoi ENTER "
STRING_LABEL_PROMPT "Ștergeți denumirea actuală a volumului (Da/Nu)? "
STRING_LABEL_OPTIONS "DaNu"
STRING_ERROR_INVALID_DRIVE "Specificarea unității este eronată\n"
STRING_LABEL_TEXT4 "Denumirea volumului (32 de caractere, ENTER dacă dacă nu există)?"
STRING_LABEL_PROMPT "Ștergeți denumirea actuală a volumului (D/N)? "
STRING_LABEL_OPTIONS "DN"
STRING_ERROR_INVALID_DRIVE "Specificarea discului este nevalidă\n"
STRING_ERROR_INVALID_LABEL "Denumirea volumului e nevalidă\n"
END

View File

@@ -3,7 +3,7 @@
* LICENSE: GPL-2.0+ (https://spdx.org/licenses/GPL-2.0+)
* PURPOSE: Romanian resource file
* TRANSLATORS: Copyright 2011-2019 Ștefan Fulea <stefan.fulea@mail.com>
* Copyright 2023 Andrei Miloiu <miloiuandrei@gmail.com>
* Copyright 2023-2024 Andrei Miloiu <miloiuandrei@gmail.com>
*/
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
@@ -12,15 +12,15 @@ STRINGTABLE
BEGIN
IDS_USAGE "Afișarea datelor pe ecran, pagină cu pagină.\n\
\n\
MORE [/E [opțiuni]] < [dispozitiv:][cale]numele fișierului\n\
MORE [/E [opțiuni]] < [disc:][cale]numele fișierului\n\
command | MORE [/E [opțiuni]\n\
\n\
[dispozitiv:][cale]numele fișierului Un fișier al cărui conținut\n\
[disc:][cale]numele fișierului Un fișier al cărui conținut\n\
urmează să fie afișat.\n\
comandă O comandă a cărei ieșire\n\
urmează să fie afișată.\n\
\n\
Atunci când opțiunea Caracteristici extinse e activată,\n\
Atunci când Caracteristicile extinse sunt activate,\n\
următoarea formă este acceptată:\n\
MORE [/E] [opțiuni] [fișiere]\n\
\n\

View File

@@ -276,7 +276,12 @@ static BOOL parse_data_type(struct parser *parser, WCHAR **line)
/* "hex(xx):" is special */
val = wcstoul(*line, &end, 16);
#ifdef __REACTOS__
/* Up to 8 hex digits, "hex(000000002)" is invalid */
if (*end != ')' || *(end + 1) != ':' || (val == ~0u && errno == ERANGE) || end - *line > 8)
#else
if (*end != ')' || *(end + 1) != ':' || (val == ~0u && errno == ERANGE))
#endif
return FALSE;
parser->data_type = val;

View File

@@ -1,100 +1,104 @@
/*
* Translators: Claudia Cotună
* Michael Stefaniuc
* Ștefan Fulea (stefan dot fulea at mail dot com)
* PROJECT: ReactOS Registry Console Tool
* LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
* PURPOSE: Romanian resource file
* TRANSLATORS: Copyright 2010 Claudia Cotună <special4ti@gmail.com>
* Copyright 2010 Michael Stefaniuc <mstefani@redhat.com>
* Copyright 2014-2018 Ștefan Fulea <stefan.fulea@mail.com>
* Copyright 2023 Andrei Miloiu <miloiuandrei@gmail.com>
*/
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
STRINGTABLE
{
STRING_USAGE, "Usage:\n\
REG [operation] [parameters]\n\n\
Supported operations:\n\
STRING_USAGE, "Utilizare:\n\
REG [operațiune] [parametri]\n\n\
Operațiuni suportate:\n\
ADD | COPY | DELETE | EXPORT | IMPORT | QUERY\n\n\
For help on a specific operation, type:\n\
REG [operation] /?\n\n"
Pentru ajutor la o operațiune specifică, tastați:\n\
REG [operațiune] /?\n\n"
STRING_ADD_USAGE, "REG ADD <key> [/v value_name | /ve] [/t type] [/s separator] [/d data] [/f]\n\n\
Adds a key to the registry or adds a new value to a given registry key.\n\n\
<key>\n\
The registry key to add or, if either [/v] or [/ve] is specified,\n\
the key in which to add the new registry data.\n\n\
Format: ROOT\\Subkey\n\n\
ROOT: A predefined registry key. This must be one of the following:\n\n\
STRING_ADD_USAGE, "REG ADD <cheie> [/v numele_valorii | /ve] [/t tip] [/s separator] [/d date] [/f]\n\n\
Adaugă o cheie la registru sau adaugă o valoare nouă la o cheie dată a registrului.\n\n\
<cheie>\n\
Cheia registrului de adăugat sau dacă e specificat fie [/v], fie [/ve],\n\
cheia în care urmează să fie adăugate noile date de registru.\n\n\
Format: ROOT\\Subcheie\n\n\
ROOT: O cheie de registru predefinită. Aceasta trebuie să fie una dintre următoarele:\n\n\
HKEY_LOCAL_MACHINE | HKLM\n\
HKEY_CURRENT_USER | HKCU\n\
HKEY_CLASSES_ROOT | HKCR\n\
HKEY_USERS | HKU\n\
HKEY_CURRENT_CONFIG | HKCC\n\n\
Subkey: The full path to a registry key under a given ROOT key.\n\n\
/v <value_name>\n\
The name of the registry value to add.\n\n\
Subcheie: Calea completă către o cheie de registru de sub o anumită cheie dată ROOT.\n\n\
/v <numele_valorii>\n\
Numele valorii registrului de adăugat.\n\n\
/ve\n\
Add an unnamed registry value. This option modifies the (Default)\n\
registry value.\n\n\
/t <type>\n\
The type of data to add to the registry. If [/t] is specified,\n\
<type> must be one of the following:\n\n\
Adaugă o valoare de registru fără nume. Această opțiune modifică valoarea\n\
(Implicită) a registrului.\n\n\
/t <tip>\n\
Tipul de date ce urmează să fie adăugate în registru. Dacă [/t] e specificat,\n\
<tip> trebuie să fie una din următoarele:\n\n\
REG_SZ | REG_MULTI_SZ | REG_EXPAND_SZ\n\
REG_DWORD | REG_BINARY | REG_NONE\n\n\
If [/t] is not specified, the default data type is REG_SZ.\n\n\
Dacă [/t] nu e specificat, tipul implicit de date este REG_SZ.\n\n\
/s <separator>\n\
The character used to separate strings in REG_MULTI_SZ data.\n\
If [/s] is not specified, the default separator is \\0.\n\n\
/d <data>\n\
The data to add to the new registry value.\n\n\
Caracterul folosit ca să separe șiruri în datele REG_MULTI_SZ.\n\
Dacă [/s] nu e specificat, separatorul implicit este \\0.\n\n\
/d <date>\n\
Datele ce urmează să fie adăugate la noua valoare a registrului.\n\n\
/f\n\
Modify the registry without prompting for confirmation.\n\n"
Modifică regiștrul fără să fie cerută vreo confirmare.\n\n"
STRING_DELETE_USAGE, "REG DELETE <key> [/v value_name | /ve | /va] [/f]\n\n\
Deletes a registry key (including all subkeys and values), or deletes\n\
one or more values from a given registry key.\n\n\
<key>\n\
The registry key to delete or, if one of [/v], [/ve] or [/va] is\n\
specified, the registry key in which to delete one or more values.\n\n\
Format: ROOT\\Subkey\n\n\
ROOT: A predefined registry key. This must be one of the following:\n\n\
STRING_DELETE_USAGE, "REG DELETE <cheie> [/v numele_valorii | /ve | /va] [/f]\n\n\
Șterge o cheie de registru (incluzând toate subcheile și valorile) sau șterge\n\
una sau mai multe valori dintr-o cheie de registru dată.\n\n\
<cheie>\n\
Cheia de registru ce urmează să fie ștearsă sau dacă una din [/v], [/ve] sau [/va] e\n\
specificată, cheia de registru în care urmează să fie ștearsă/șterse una sau mai multe valori.\n\n\
Format: ROOT\\Subcheie\n\n\
ROOT: O cheie de registru predefinită. Aceasta trebuie să fie una dintre următoarele:\n\n\
HKEY_LOCAL_MACHINE | HKLM\n\
HKEY_CURRENT_USER | HKCU\n\
HKEY_CLASSES_ROOT | HKCR\n\
HKEY_USERS | HKU\n\
HKEY_CURRENT_CONFIG | HKCC\n\n\
Subkey: The full path to a registry key under a given ROOT key.\n\n\
Subcheie: Calea completă a cheii de registru cu o cheie ROOT dată.\n\n\
/v <value_name>\n\
The name of the registry value to delete.\n\n\
Numele valorii de registru ce urmează să fie ștearsă\n\n\
/ve\n\
Delete an unnamed registry value. This option deletes the (Default)\n\
registry value.\n\n\
Șterge o valoare de registru nedenumită. Această opțiune șterge\n\
valoarea (Implicită) a registrului.\n\n\
/va\n\
Delete all values from a registry key.\n\n\
Șterge toate valorile dintr-o cheie de registru.\n\n\
/f\n\
Delete a registry key (including all subkeys and values) without\n\
prompting for confirmation.\n\n"
Șterge o cheie de registru (incluzând toate subcheile și valorile) fără\n\
să necesite confirmare.\n\n"
STRING_QUERY_USAGE, "REG QUERY <key> [/v value_name | /ve] [/s]\n\n\
Queries a specified registry key and lists all immediate subkeys, values\n\
and data within that key. Use [/s] to recursively query each subkey.\n\n\
<key>\n\
The registry key to query.\n\n\
Format: ROOT\\Subkey\n\n\
ROOT: A predefined registry key. This must be one of the following:\n\n\
STRING_QUERY_USAGE, "REG QUERY <cheie> [/v numele_valorii | /ve] [/s]\n\n\
Interoghează o cheie de registru specificată și listează toate subcheile, valorile și datele\n\
ce urmează imediat în acea cheie. Folosiți [/s] pentru a interoga recursiv fiecare subcheie.\n\n\
<cheie>\n\
Cheia de registru de interogat.\n\n\
Format: ROOT\\Subcheie\n\n\
ROOT: O cheie de registru predefinită. Aceasta trebuie să aibă una dintre următoarele:\n\n\
HKEY_LOCAL_MACHINE | HKLM\n\
HKEY_CURRENT_USER | HKCU\n\
HKEY_CLASSES_ROOT | HKCR\n\
HKEY_USERS | HKU\n\
HKEY_CURRENT_CONFIG | HKCC\n\n\
Subkey: The full path to a registry key under a given ROOT key.\n\n\
/v <value_name>\n\
The name of the registry value to query. If neither [/v] nor [/ve] is\n\
specified, all values under <key> are listed.\n\n\
Subcheie: Calea completă către o cheie de registru de sub o anumită cheie dată ROOT.\n\n\
/v <numele_valorii>\n\
Numele valorii de registru ce urmează să fie interogată. Dacă nu se specifică nici [/v],\n\
nici [/ve], toate valorile de sub <cheie> sunt listate.\n\n\
/ve\n\
Query an unnamed registry value. This option queries the (Default)\n\
registry value.\n\n\
Interoghează o valoare de registru nedenumită. Această opțiune interoghează\n\
valoarea (Implicită) a registrului.\n\n\
/s\n\
List all registry entries under <key> and its subkeys.\n\n"
Listează toate intrările registrului de sub <cheie> și subcheile sale.\n\n"
STRING_SUCCESS, "Operația a fost îndeplinită cu succes\n"
STRING_SUCCESS, "Operațiunea a fost îndeplinită cu succes\n"
STRING_INVALID_KEY, "Eroare: Nume de cheie nevalid\n"
STRING_INVALID_CMDLINE, "Eroare: Parametri nevalizi pentru linia de comandă\n"
STRING_NO_REMOTE, "Eroare: Nu pot fi adăugate chei într-un calculator la distanță\n"
@@ -104,18 +108,18 @@ For help on a specific operation, type:\n\
STRING_MISSING_HEXDATA, "reg: Opțiunea [/d] trebuie să fie urmată de o valoare hexezecimală\n"
STRING_UNHANDLED_TYPE, "reg: Tip de dată nerecunoscut [/t 0x%1!x!, /d %2]\n"
STRING_OVERWRITE_VALUE, "Valoarea de registru «%1» deja există. Doriți s-o suprascrieți?"
STRING_YES, "Y"
STRING_YES, "D"
STRING_NO, "N"
STRING_ALL, "A"
STRING_YESNO, " (Yes|No)"
STRING_YESNOALL, " (Yes|No|All)"
STRING_CANCELLED, "Operația de registru a fost anulată\n"
STRING_ALL, "T"
STRING_YESNO, " (Da|Nu)"
STRING_YESNOALL, " (Da|Nu|Toate)"
STRING_CANCELLED, "Operațiunea de registru a fost anulată\n"
STRING_DEFAULT_VALUE, "(Implicită)"
STRING_DELETE_VALUE, "Sigur doriți ștergerea valorii de registru «%1»?"
STRING_DELETE_VALUEALL, "Sigur doriți ștergerea tuturor valorilor de registru din «%1»?"
STRING_DELETE_SUBKEY, "Sigur doriți ștergerea cheii de registru «%1»?"
STRING_INVALID_STRING, "reg: Opțiunea [/d] trebuie urmată de un șir valid\n"
STRING_VALUEALL_FAILED, "reg: Nu au putut fi șterse toate valorile de registru din «%1». A survenit o eroare neașteptată.\n"
STRING_VALUEALL_FAILED, "reg: Nu au putut fi șterse toate valorile de registru din «%1». A apărut o eroare neașteptată.\n"
STRING_MATCHES_FOUND, "Căutare efectuată. Numărul de potriviri găsite: %1!d!\n"
STRING_INVALID_SYNTAX, "reg: Sintaxă nerespectată. "
STRING_INVALID_OPTION, "reg: Opțiune nevalidă [%1]. "
@@ -123,65 +127,65 @@ For help on a specific operation, type:\n\
STRING_FUNC_HELP, "Tastați «REG %1 /?» pentru mai multe informații.\n"
STRING_VALUE_NOT_SET, "(valoare nealocată)"
STRING_IMPORT_USAGE, "REG IMPORT <file>\n\n\
Imports keys, values and data from a given file into the registry.\n\n\
<file>\n\
The name and path of the registry file to import.\n\n"
STRING_IMPORT_USAGE, "REG IMPORT <fișier>\n\n\
Importă chei, valori și date dintr-un fișier dat în regiștri.\n\n\
<fișier>\n\
Numele și calea fișierului de regiștri de importat.\n\n"
STRING_FILE_NOT_FOUND, "reg: Fișierul «%1» nu a putut fi găsit.\n"
STRING_ESCAPE_SEQUENCE, "reg: Secvența de sustracție [\\%1!c!] nu este recunoscută.\n"
STRING_ESCAPE_SEQUENCE, "reg: Secvența de ieșire [\\%1!c!] nu este recunoscută.\n"
STRING_EXPORT_USAGE, "REG EXPORT <key> <file> [/y]\n\n\
Exports a specified registry key (including all subkeys and values)\n\
to a file.\n\n\
<key>\n\
The registry key to export.\n\n\
Format: ROOT\\Subkey\n\n\
ROOT: A predefined registry key. This must be one of the following:\n\n\
STRING_EXPORT_USAGE, "REG EXPORT <cheie> <fișier> [/y]\n\n\
Exportă o cheie de registru specificată (incluzând toate subcheile și valorile)\n\
într-un fișier.\n\n\
<cheie>\n\
Cheia de registru ce urmează să fie exportată.\n\n\
Format: ROOT\\Subcheie\n\n\
ROOT: O cheie de registru predefinită. Aceasta trebuie să aibă una dintre următoarele:\n\n\
HKEY_LOCAL_MACHINE | HKLM\n\
HKEY_CURRENT_USER | HKCU\n\
HKEY_CLASSES_ROOT | HKCR\n\
HKEY_USERS | HKU\n\
HKEY_CURRENT_CONFIG | HKCC\n\n\
Subkey: The full path to a registry key under a given ROOT key.\n\n\
<file>\n\
The name and path of the registry file that will be created.\n\
This file must have a .reg extension.\n\n\
Subcheie: Calea completă către o cheie de registru de sub o anumită cheie dată ROOT.\n\n\
<fișier>\n\
Numele și calea fișierului de regiștri ce urmează să fie creat.\n\
Fișierul trebuie să aibă extensia .reg.\n\n\
/y\n\
Overwrite <file> without prompting for confirmation.\n\n"
Suprascrieți <fișierul> fără să se necesite confirmarea.\n\n"
STRING_INVALID_SYSTEM_KEY, "reg: Cheia de sistem [%1] nu este una validă.\n"
STRING_OVERWRITE_FILE, "Fișierul «%1» deja există. Doriți suprascrierea lui?"
STRING_KEY_NONEXIST, "reg: Unable to find the specified registry key\n"
STRING_KEY_IMPORT_FAILED, "reg: Unable to import the registry key '%1'\n"
STRING_KEY_NONEXIST, "reg: Nu a putut fi găsită cheia de registru specificată\n"
STRING_KEY_IMPORT_FAILED, "reg: Nu a putut fi importată cheia de registru '%1'\n"
STRING_REG_VIEW_USAGE, " /reg:32\n\
Access the registry using the 32-bit view.\n\n\
Accesează regiștrii folosind vizualizatorul de 32 de biți.\n\n\
/reg:64\n\
Access the registry using the 64-bit view.\n\n"
STRING_ACCESS_DENIED, "reg: Unable to access or create the specified registry key\n"
Accesează regiștrii folosind vizualizatorul de 64 de biți.\n\n"
STRING_ACCESS_DENIED, "reg: Cheia de registru specificată nu a putut fi accesată sau creată\n"
STRING_COPY_USAGE, "REG COPY <key1> <key2> [/s] [/f]\n\n\
Copies the contents of a specified registry key to another location.\n\
By default, this operation only copies registry values. Use [/s] to\n\
recursively copy all subkeys and values.\n\n\
<key1>, <key2>\n\
Registry keys specifying the source (<key1>) and destination (<key2>)\n\
of the data. If <key2> does not exist, it is created.\n\n\
Format: ROOT\\Subkey\n\n\
ROOT: A predefined registry key. This must be one of the following:\n\n\
STRING_COPY_USAGE, "REG COPY <cheia1> <cheia2> [/s] [/f]\n\n\
Copiază conținutul unei chei de registru specificată în altă locație.\n\
Implicit, această operațiune copiază numai valorile de registru. Folosiți [/s] pentru\n\
a copia în mod recursiv toate subcheile și valorile.\n\n\
<cheia1>, <cheia2>\n\
Cheile de registru care specifică sursa (<cheia1>) și destinația (<cheia2>)\n\
a datelor. Dacă <cheia2> nu există, este creată.\n\n\
Format: ROOT\\Subcheie\n\n\
ROOT: O cheie de registru predefinită. Aceasta trebuie să aibă una dintre următoarele:\n\n\
HKEY_LOCAL_MACHINE | HKLM\n\
HKEY_CURRENT_USER | HKCU\n\
HKEY_CLASSES_ROOT | HKCR\n\
HKEY_USERS | HKU\n\
HKEY_CURRENT_CONFIG | HKCC\n\n\
Subkey: The full path to a registry key under a given ROOT key.\n\n\
Subcheie: Calea completă către o cheie de registru de sub o anumită cheie dată ROOT.\n\n\
/s\n\
Copy all subkeys and values from <key1> to <key2>.\n\n\
Copiază toate subcheile și valorile din <cheia1> în <cheia2>.\n\n\
/f\n\
Overwrite all registry data in <key2> without prompting for confirmation.\n\
This option does not modify subkeys and values that only exist in <key2>.\n\n"
Suprascrie toate datele registrului în <cheia2> fără să se necesite confirmare.\n\
Această opțiune nu modifică subcheile și valorile ce există doar în <cheia2>.\n\n"
STRING_COPY_SRC_DEST_SAME, "reg: The source and destination keys cannot be the same\n"
STRING_COPY_CONFIRM, "The value '%1\\%2' already exists in the destination key. Do you want to overwrite it?"
STRING_COPY_SRC_DEST_SAME, "reg: Cheile sursă și destinație nu pot fi aceleași\n"
STRING_COPY_CONFIRM, "Valoarea '%1\\%2' există deja în cheia de destinație. Doriți să o suprascrieți?"
}

View File

@@ -0,0 +1,8 @@
include_directories(${REACTOS_SOURCE_DIR}/sdk/lib/conutils)
add_executable(replace replace.c util.c replace.rc)
set_module_type(replace win32cui UNICODE)
target_link_libraries(replace conutils ${PSEH_LIB})
add_importlibs(replace user32 msvcrt kernel32)
add_cd_file(TARGET replace DESTINATION reactos/system32 FOR all)

View File

@@ -0,0 +1,54 @@
/*
* PROJECT: ReactOS Replace Command
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
* PURPOSE: Czech resource file
* TRANSLATOR: Copyright 2015 Radek Liška (Black_Fox) <radekliska@gmail.com>
*/
LANGUAGE LANG_CZECH, SUBLANG_DEFAULT
STRINGTABLE
BEGIN
STRING_REPLACE_HELP1 "Replaces files.\n\n\
REPLACE [drive1:][path1]filename [drive2:][path2] [/A] [/P] [/R] [/W]\n\
REPLACE [drive1:][path1]filename [drive2:][path2] [/P] [/R] [/S] [/W] [/U]\n\n\
[drive1:][path1]filename Specifies the source file or files.\n\
[drive2:][path2] Specifies the directory where files are to be\n\
replaced.\n\
/A Adds new files to destination directory. Cannot\n\
use with /S or /U switches.\n\
/P Prompts for confirmation before replacing a file or\n\
adding a source file.\n\
/R Replaces read-only files as well as unprotected\n\
files.\n\
/S Replaces files in all subdirectories of the\n\
destination directory. Cannot use with the /A\n\
switch.\n\
/W Waits for you to insert a disk before beginning.\n\
/U Replaces (updates) only files that are older than\n\
source files. Cannot use with the /A switch.\n"
STRING_REPLACE_HELP2 "Source path required\n"
STRING_REPLACE_HELP3 "No files replaced\n"
STRING_REPLACE_HELP4 "%lu file(s) replaced\n"
STRING_REPLACE_HELP5 "Replacing %s\n"
STRING_REPLACE_HELP7 "No files added\n"
STRING_REPLACE_HELP8 "%lu file(s) added\n"
STRING_REPLACE_HELP9 "Add %s (Y/N)? "
STRING_REPLACE_HELP10 "Replace %s (Y/N)? "
STRING_REPLACE_HELP11 "Adding %s\n"
STRING_REPLACE_ERROR1 "Neplatný přepínač - %s\n"
STRING_REPLACE_ERROR2 "Cesta nenalezena - %s\n"
STRING_REPLACE_ERROR3 "Název souboru, adresáře nebo popisek svazku je neplatný.\n"
STRING_REPLACE_ERROR4 "Neplatná kombinace parametrů\n"
STRING_REPLACE_ERROR5 "Přístup odepřen - %s\n"
STRING_REPLACE_ERROR6 "Nebyly nazeleny žádné soubory - %s\n"
STRING_REPLACE_ERROR7 "Rozšířená chyba 32\n"
STRING_COPY_OPTION "ANV"
STRING_COPY_ERROR1 "Chyba: Nelze otevřít zdroj - %s!\n"
STRING_COPY_ERROR3 "Chyba při zápisu do cíle!\n"
STRING_CONSOLE_ERROR "Neznámá chyba: %d\n"
STRING_ERROR_OUT_OF_MEMORY "Chyba - nedostatek paměti.\n"
STRING_ERROR_D_PAUSEMSG "Pokračujte stisknutím libovolné klávesy . . . "
END

View File

@@ -0,0 +1,56 @@
/*
* PROJECT: ReactOS Replace Command
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
* PURPOSE: German (Germany) resource file
* TRANSLATORS: Copyright 2005 Klemens Friedl <frik85@gmail.com>
* Copyright 2007 Daniel Reimer <reimer.daniel@freenet.de>
*/
LANGUAGE LANG_GERMAN, SUBLANG_NEUTRAL
STRINGTABLE
BEGIN
STRING_REPLACE_HELP1 "Ersetzt Dateien.\n\n\
REPLACE [Laufwerk1:][Pfad1]Dateiname [Laufwerk2:][Pfad2] [/A] [/P] [/R] [/W]\n\
REPLACE [Laufwerk1:][Pfad1]Dateiname [Laufwerk2:][Pfad2] [/P] [/R] [/S] [/W] [/U]\n\n\
[Laufwerk1:][Pfad1]Dateiname Bezeichnet die Quelldatei(en).\n\
[Laufwerk2:][Pfad2] Bezeichnet den Pfad in dem die Dateien ersetzt\n\
werden sollen.\n\
/A Fügt neue Dateien dem Zielpfad hinzu. Kann nicht\n\
mit /S oder /U Parameter genutzt werden.\n\
/P Wartet auf Bestätigung bevor eine Datei ersetzt\n\
oder eine Quelldatei hinzugefügt wird.\n\
/R Ersetzt schreibgeschützte Dateien.\n\
/S Ersetzt Dateien in allen Unterordnern des Ziel-\n\
pfades. Kann nicht mit Parameter /A genutzt\n\
werden.\n\
/W Wartet vor dem Start, bis ein Datenträger\n\
eingelegt wurde.\n\
/U Ersetzt (aktualisiert) nur Dateien, die älter\n\
sind als die Quelldaten. Kann nicht mit Parameter\n\
/A genutzt werden.\n"
STRING_REPLACE_HELP2 "Quellpfad benötigt\n"
STRING_REPLACE_HELP3 "Keine Dateien ersetzt\n"
STRING_REPLACE_HELP4 "%lu Datei(en) ersetzt\n"
STRING_REPLACE_HELP5 "Ersetze %s\n"
STRING_REPLACE_HELP7 "Keine Dateien hinzugefügt\n"
STRING_REPLACE_HELP8 "%lu Datei(en) hinzugefügt\n"
STRING_REPLACE_HELP9 "Füge %s hinzu (J/N)? "
STRING_REPLACE_HELP10 "Ersetze %s (J/N)? "
STRING_REPLACE_HELP11 "Füge %s hinzu\n"
STRING_REPLACE_ERROR1 "Ungültiger Parameter - %s\n"
STRING_REPLACE_ERROR2 "Pfad wurde nicht gefunden - %s\n"
STRING_REPLACE_ERROR3 "Der Dateiname, Ordnername oder die Syntax der Volumenbezeichung sind inkorrekt.\n"
STRING_REPLACE_ERROR4 "Ungültige Parameterkombination\n"
STRING_REPLACE_ERROR5 "Zugriff verweigert - %s\n"
STRING_REPLACE_ERROR6 "Keine Dateien gefunden - %s\n"
STRING_REPLACE_ERROR7 "Erweiterter Fehler 32\n"
STRING_COPY_OPTION "JNA"
STRING_COPY_ERROR1 "Fehler: Quelle kann nicht geöffnet werden - %s!\n"
STRING_COPY_ERROR3 "Fehler: Schreibziel!\n"
STRING_ERROR_D_PAUSEMSG "Drücken Sie eine beliebige Taste . . . "
STRING_CONSOLE_ERROR "Unbekannter Fehler: %d\n"
STRING_ERROR_OUT_OF_MEMORY "Fehler: Zu wenig Speicher verfügbar.\n"
END

View File

@@ -0,0 +1,54 @@
/*
* PROJECT: ReactOS Replace Command
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
* PURPOSE: Greek resource file
* TRANSLATOR: Copyright 2008 Apostolos Alexiadis <djapal@gmail.com>
*/
LANGUAGE LANG_GREEK, SUBLANG_DEFAULT
STRINGTABLE
BEGIN
STRING_REPLACE_HELP1 "Replaces files.\n\n\
REPLACE [drive1:][path1]filename [drive2:][path2] [/A] [/P] [/R] [/W]\n\
REPLACE [drive1:][path1]filename [drive2:][path2] [/P] [/R] [/S] [/W] [/U]\n\n\
[drive1:][path1]filename Specifies the source file or files.\n\
[drive2:][path2] Specifies the directory where files are to be\n\
replaced.\n\
/A Adds new files to destination directory. Cannot\n\
use with /S or /U switches.\n\
/P Prompts for confirmation before replacing a file or\n\
adding a source file.\n\
/R Replaces read-only files as well as unprotected\n\
files.\n\
/S Replaces files in all subdirectories of the\n\
destination directory. Cannot use with the /A\n\
switch.\n\
/W Waits for you to insert a disk before beginning.\n\
/U Replaces (updates) only files that are older than\n\
source files. Cannot use with the /A switch.\n"
STRING_REPLACE_HELP2 "Απαιτείται το μονοπάτι-πηγή\n"
STRING_REPLACE_HELP3 "Δεν έγινε αντικατάσταση αρχείων\n"
STRING_REPLACE_HELP4 "%lu αρχείο(α) αντικαταστάθηκαν\n"
STRING_REPLACE_HELP5 "Γίνεται αντικατάσταση του %s\n"
STRING_REPLACE_HELP7 "Δεν προστέθηκαν αρχεία\n"
STRING_REPLACE_HELP8 "%lu αρχείο(α) προστέθηκαν\n"
STRING_REPLACE_HELP9 "Προσθήκη %s (Y/N)? "
STRING_REPLACE_HELP10 "Αντικατάσταση %s (Y/N)? "
STRING_REPLACE_HELP11 "Γίνεται προσθήκη του %s\n"
STRING_REPLACE_ERROR1 "Invalid switch - %s\n"
STRING_REPLACE_ERROR2 "Δε βρέθηκε το μονοπάτι - %s\n"
STRING_REPLACE_ERROR3 "The filename, directory name, or volume label syntax is incorrect.\n"
STRING_REPLACE_ERROR4 "Invalid parameter combination\n"
STRING_REPLACE_ERROR5 "Δεν επιτρέπεται η πρόσβαση - %s\n"
STRING_REPLACE_ERROR6 "Δε βρέθηκαν αρχεία - %s\n"
STRING_REPLACE_ERROR7 "Extended Error 32\n"
STRING_COPY_OPTION "YNA"
STRING_COPY_ERROR1 "Σφάλμα: Δεν ήταν δυνατό το άνοιγμα της πηγής - %s!\n"
STRING_COPY_ERROR3 "Σφάλμα: writing destination!\n"
STRING_ERROR_D_PAUSEMSG "Πατήστε οποιοδήποτε πλήκτρο για συνέχεια . . . "
STRING_CONSOLE_ERROR "Άγνωστο σφάλμα: %d\n"
STRING_ERROR_OUT_OF_MEMORY "Out of memory error.\n"
END

View File

@@ -0,0 +1,54 @@
/*
* PROJECT: ReactOS Replace Command
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
* PURPOSE: English (United States) resource file
* TRANSLATOR: Copyright 2007 Samuel Erdtman <samuel@erdtman.se>
*/
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
STRINGTABLE
BEGIN
STRING_REPLACE_HELP1 "Replaces files.\n\n\
REPLACE [drive1:][path1]filename [drive2:][path2] [/A] [/P] [/R] [/W]\n\
REPLACE [drive1:][path1]filename [drive2:][path2] [/P] [/R] [/S] [/W] [/U]\n\n\
[drive1:][path1]filename Specifies the source file or files.\n\
[drive2:][path2] Specifies the directory where files are to be\n\
replaced.\n\
/A Adds new files to destination directory. Cannot\n\
use with /S or /U switches.\n\
/P Prompts for confirmation before replacing a file or\n\
adding a source file.\n\
/R Replaces read-only files as well as unprotected\n\
files.\n\
/S Replaces files in all subdirectories of the\n\
destination directory. Cannot use with the /A\n\
switch.\n\
/W Waits for you to insert a disk before beginning.\n\
/U Replaces (updates) only files that are older than\n\
source files. Cannot use with the /A switch.\n"
STRING_REPLACE_HELP2 "Source path required\n"
STRING_REPLACE_HELP3 "No files replaced\n"
STRING_REPLACE_HELP4 "%lu file(s) replaced\n"
STRING_REPLACE_HELP5 "Replacing %s\n"
STRING_REPLACE_HELP7 "No files added\n"
STRING_REPLACE_HELP8 "%lu file(s) added\n"
STRING_REPLACE_HELP9 "Add %s (Y/N)? "
STRING_REPLACE_HELP10 "Replace %s (Y/N)? "
STRING_REPLACE_HELP11 "Adding %s\n"
STRING_REPLACE_ERROR1 "Invalid switch - %s\n"
STRING_REPLACE_ERROR2 "Path not found - %s\n"
STRING_REPLACE_ERROR3 "The filename, directory name, or volume label syntax is incorrect.\n"
STRING_REPLACE_ERROR4 "Invalid parameter combination\n"
STRING_REPLACE_ERROR5 "Access denied - %s\n"
STRING_REPLACE_ERROR6 "No files found - %s\n"
STRING_REPLACE_ERROR7 "Extended Error 32\n"
STRING_COPY_OPTION "YNA"
STRING_COPY_ERROR1 "Error: Cannot open source - %s!\n"
STRING_COPY_ERROR3 "Error writing destination!\n"
STRING_ERROR_D_PAUSEMSG "Press any key to continue . . . "
STRING_CONSOLE_ERROR "Unknown error: %d\n"
STRING_ERROR_OUT_OF_MEMORY "Out of memory error.\n"
END

View File

@@ -0,0 +1,57 @@
/*
* PROJECT: ReactOS Replace Command
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
* PURPOSE: Spanish (Spain) resource file
* TRANSLATORS: Copyright 2005 Jose Pedro Fernández Pascual <huma2000@terra.es>
* Copyright 2015 Ismael Ferreras Morezuelas <swyterzone+ros@gmail.com>
* Copyright 2020 Catalin Gabriel Draghita <catalin.draghita@hotmail.es>
*/
LANGUAGE LANG_SPANISH, SUBLANG_NEUTRAL
STRINGTABLE
BEGIN
STRING_REPLACE_HELP1 "Reemplaza archivos.\n\n\
REPLACE [drive1:][path1]filename [drive2:][path2] [/A] [/P] [/R] [/W]\n\
REPLACE [drive1:][path1]filename [drive2:][path2] [/P] [/R] [/S] [/W] [/U]\n\n\
[drive1:][path1]filename Especifica el archivo o archivos de origen.\n\
[drive2:][path2] Especifica el nombre de la carpeta donde se\n\
reemplacen los archivos.\n\
/A Añade nuevos archivos al directorio destino. No\n\
se puede usar con las opciones /S o /U.\n\
/P Pregunta para confirmación antes de reemplazar un\n\
archivo o añadir un archivo origen.\n\
/R Reemplaza todos los archivos solo lectura y los\n\
archivos no protegidos.\n\
/S Reemplaza todos los archivos en todos los\n\
subdirectorios\n\
del directorio destino. No se puede usar con la opción /A.\n\
/W Espera que insertes un disco antes de empezar.\n\
/U Reemplaza (actualiza) solo los archivos que son más\n\
antiguos que los de origen. No se puede usar con\n\
la opción /A.\n"
STRING_REPLACE_HELP2 "Ruta de origen requerida\n"
STRING_REPLACE_HELP3 "No se han reemplazado archivos\n"
STRING_REPLACE_HELP4 "Se han reemplazado %lu archivo(s)\n"
STRING_REPLACE_HELP5 "Reemplazando %s\n"
STRING_REPLACE_HELP7 "No se han añadido archivos\n"
STRING_REPLACE_HELP8 "%lu archivo(s) añadidos\n"
STRING_REPLACE_HELP9 "Añadir %s (S/N)? "
STRING_REPLACE_HELP10 "Reemplazar %s (S/N)? "
STRING_REPLACE_HELP11 "Añadiendo %s\n"
STRING_REPLACE_ERROR1 "Argumento no válido - %s\n"
STRING_REPLACE_ERROR2 "Ruta no encontrada - %s\n"
STRING_REPLACE_ERROR3 "La sintaxis del nombre de archivo, carpeta o volúmen es incorrecta.\n"
STRING_REPLACE_ERROR4 "Combinación de parámetros incorrecta\n"
STRING_REPLACE_ERROR5 "Acceso denegado - %s\n"
STRING_REPLACE_ERROR6 "No se han encontrado archivos - %s\n"
STRING_REPLACE_ERROR7 "Error extendido 32\n"
STRING_COPY_OPTION "SNT"
STRING_COPY_ERROR1 "Error: No se puede abrir el origen - %s!\n"
STRING_COPY_ERROR3 "¡Error escribiendo destino!\n"
STRING_ERROR_D_PAUSEMSG "Pulse una tecla para continuar ... "
STRING_CONSOLE_ERROR "Error desconocido: %d\n"
STRING_ERROR_OUT_OF_MEMORY "Error fuera de memoria.\n"
END

View File

@@ -0,0 +1,55 @@
/*
* PROJECT: ReactOS Replace Command
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
* PURPOSE: French (France) resource file
* TRANSLATORS: Copyright 2005 Sylvain Pétréolle <spetreolle@yahoo.fr>
* Copyright 2007 Pierre Schweitzer <heis_spiter@hotmail.com>
* Copyright 2018 Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
*/
LANGUAGE LANG_FRENCH, SUBLANG_NEUTRAL
STRINGTABLE
BEGIN
STRING_REPLACE_HELP1 "Remplace les fichiers.\n\n\
REPLACE [lecteur1:][chemin1]nomdefichier [lecteur2:][chemin2] [/A] [/P] [/R] [/W]\n\
REPLACE [lecteur1:][chemin1]nomdefichier [lecteur2:][chemin2] [/P] [/R] [/S] [/W] [/U]\n\n\
[lecteur1:][chemin1]nomdefichier Spécifie le ou les fichier(s) source.\n\
[lecteur2:][chemin2] Spécifie le répertoire où les fichiers doivent être\n\
remplacés.\n\
/A Ajoute les nouveaux fichiers dans le répertoire de destination. Ne peut\n\
être utilisé avec /S ou /U.\n\
/P Demande une confirmation avant de remplacer un fichier ou\n\
d'ajouter un fichier source.\n\
/R Remplace les fichiers en lecture-seule aussi bien que les\n\
fichiers sans protection.\n\
/S Remplace les fichiers dans tous les sous-répertoires du\n\
répertoire de destination. Ne peut être utilisé avec /A.\n\
/W Attend que vous insériez un disque avant de commencer.\n\
/U Remplace (met à jour) uniquement les fichiers qui sont plus anciens que\n\
les fichiers sources. Ne peut être utilisé avec /A.\n"
STRING_REPLACE_HELP2 "Chemin source requis\n"
STRING_REPLACE_HELP3 "Aucun fichier remplacé\n"
STRING_REPLACE_HELP4 "%lu fichier(s) remplacé(s)\n"
STRING_REPLACE_HELP5 "Remplace %s\n"
STRING_REPLACE_HELP7 "Aucun fichier ajouté\n"
STRING_REPLACE_HELP8 "%lu fichier(s) ajouté(s)\n"
STRING_REPLACE_HELP9 "Ajouter %s (O/N) ? "
STRING_REPLACE_HELP10 "Remplacer %s (O/N) ? "
STRING_REPLACE_HELP11 "Ajoute %s\n"
STRING_REPLACE_ERROR1 "Commutateur invalide - %s\n"
STRING_REPLACE_ERROR2 "Chemin introuvable - %s\n"
STRING_REPLACE_ERROR3 "La syntaxe du nom de fichier, du répertoire, ou du nom de volume est incorrecte.\n"
STRING_REPLACE_ERROR4 "Combinaison de paramètres invalide\n"
STRING_REPLACE_ERROR5 "Accès refusé - %s\n"
STRING_REPLACE_ERROR6 "Aucun fichier trouvé - %s\n"
STRING_REPLACE_ERROR7 "Erreur étendue 32\n"
STRING_COPY_OPTION "ONT"
STRING_COPY_ERROR1 "Erreur : Ne peut ouvrir la source - %s !\n"
STRING_COPY_ERROR3 "Erreur à l'écriture de la destination !\n"
STRING_ERROR_D_PAUSEMSG "Appuyez sur une touche pour continuer . . . "
STRING_CONSOLE_ERROR "Erreur inconnue : %d\n"
STRING_ERROR_OUT_OF_MEMORY "Pas assez de mémoire.\n"
END

View File

@@ -0,0 +1,53 @@
/*
* PROJECT: ReactOS Replace Command
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
* PURPOSE: Hungarian resource file
* TRANSLATORS: Copyright 2005 Robert Horvath <talley@cubeclub.hu>
* Copyright 2020 Tibor Lajos Füzi <tibor.fuzi@gmail.com>
*/
LANGUAGE LANG_HUNGARIAN, SUBLANG_DEFAULT
STRINGTABLE
BEGIN
STRING_REPLACE_HELP1 "Fájlok cseréje.\n\n\
REPLACE [meghajt1:][útvonal1]fájl [meghajt2:][útvonal2] [/A] [/P] [/R] [/W]\n\
REPLACE [meghajt1:][útvonal1]fájl [meghajt2:][útvonal2] [/P] [/R] [/S] [/W] [/U]\n\n\
[meghajt1:][útvonal1]fájl A forrás fájl vagy fájlok.\n\
[meghajt2:][útvonal2] A cél mappa, ahol a fájlok lecserélődnek.\n\
/A Új fájlokat ad a cél mappába. Nem lehet\n\
a /S vagy /U kapcsolókkal együtt használni.\n\
/P Rákérdez fájlcsere vagy fájl hozzáadása előtt.\n\
/R A csak olvasható fájlokat is ugyanúgy cseréli, mint\n\
a védelem nélküli fájlokat.\n\
/S Az célmappa összes almappájában cseréli a fájlokat.\n\
Nem lehet a /A kapcsolóval együtt használni.\n\
/W Lemez behelyezésére vár a kezdés előtt.\n\
/U Csak azokat a fájlokat cseréli (frissíti), amik\n\
régebbiek mint a forrás fájl.\n\
Nem lehet a /A kapcsolóval együtt használni.\n"
STRING_REPLACE_HELP2 "Meg kell adni a forrás útvonalat\n"
STRING_REPLACE_HELP3 "Egy fájl sem lett cserélve\n"
STRING_REPLACE_HELP4 "%lu fájl lett cserélve\n"
STRING_REPLACE_HELP5 "Csere: %s\n"
STRING_REPLACE_HELP7 "Egy fájl sem lett hozzáadva\n"
STRING_REPLACE_HELP8 "%lu fájl lett hozzáadva\n"
STRING_REPLACE_HELP9 "Hozzáadja %s (I/N)? "
STRING_REPLACE_HELP10 "Cseréli %s (I/N)? "
STRING_REPLACE_HELP11 "Hozzáadás: %s\n"
STRING_REPLACE_ERROR1 "Érvénytelen kapcsoló - %s\n"
STRING_REPLACE_ERROR2 "Útvonal nem található - %s\n"
STRING_REPLACE_ERROR3 "A fájlnév, mappanév, vagy kötetcímke szintaxis hibás.\n"
STRING_REPLACE_ERROR4 "Érvénytelen paraméter kombináció\n"
STRING_REPLACE_ERROR5 "Hozzáférés megtagadva - %s\n"
STRING_REPLACE_ERROR6 "Nem találhatóak fájlok - %s\n"
STRING_REPLACE_ERROR7 "Kiterjesztett hiba 32\n"
STRING_COPY_OPTION "INM"
STRING_COPY_ERROR1 "Hiba: a forrás nem nyitható meg - %s!\n"
STRING_COPY_ERROR3 "Hiba a cél írása közben!\n"
STRING_ERROR_D_PAUSEMSG "A folytatáshoz nyomjon meg egy billentyűt . . . "
STRING_CONSOLE_ERROR "Ismeretlen hiba: %d\n"
STRING_ERROR_OUT_OF_MEMORY "Nincs elég memória.\n"
END

View File

@@ -0,0 +1,55 @@
/*
* PROJECT: ReactOS Replace Command
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
* PURPOSE: Indonesian resource file
* TRANSLATORS: Copyright 2007 Zaenal Mutaqin <ade999@gmail.com>
* Copyright 2021 Reinhart Previano Koentjoro <reinhart_previano@yahoo.com>
*/
LANGUAGE LANG_INDONESIAN, SUBLANG_DEFAULT
STRINGTABLE
BEGIN
STRING_REPLACE_HELP1 "Replaces files.\n\n\
REPLACE [drive1:][path1]filename [drive2:][path2] [/A] [/P] [/R] [/W]\n\
REPLACE [drive1:][path1]filename [drive2:][path2] [/P] [/R] [/S] [/W] [/U]\n\n\
[drive1:][path1]filename Specifies the source file or files.\n\
[drive2:][path2] Specifies the directory where files are to be\n\
replaced.\n\
/A Adds new files to destination directory. Cannot\n\
use with /S or /U switches.\n\
/P Prompts for confirmation before replacing a file or\n\
adding a source file.\n\
/R Replaces read-only files as well as unprotected\n\
files.\n\
/S Replaces files in all subdirectories of the\n\
destination directory. Cannot use with the /A\n\
switch.\n\
/W Waits for you to insert a disk before beginning.\n\
/U Replaces (updates) only files that are older than\n\
source files. Cannot use with the /A switch.\n"
STRING_REPLACE_HELP2 "Source path required\n"
STRING_REPLACE_HELP3 "No files replaced\n"
STRING_REPLACE_HELP4 "%lu file(s) replaced\n"
STRING_REPLACE_HELP5 "Replacing %s\n"
STRING_REPLACE_HELP7 "No files added\n"
STRING_REPLACE_HELP8 "%lu file(s) added\n"
STRING_REPLACE_HELP9 "Add %s (Y/N)? "
STRING_REPLACE_HELP10 "Replace %s (Y/N)? "
STRING_REPLACE_HELP11 "Adding %s\n"
STRING_REPLACE_ERROR1 "Saklar perintah tidak valid - %s\n"
STRING_REPLACE_ERROR2 "Alamat file/direktori tidak ditemukan - %s\n"
STRING_REPLACE_ERROR3 "Sintaks nama file, direktori, atau label volume tidak benar.\n"
STRING_REPLACE_ERROR4 "Kombinasi parameter tidak valid\n"
STRING_REPLACE_ERROR5 "Akses ditolak - %s\n"
STRING_REPLACE_ERROR6 "No files found - %s\n"
STRING_REPLACE_ERROR7 "Extended Error 32\n"
STRING_COPY_OPTION "YTS"
STRING_COPY_ERROR1 "Salah: Tidak dapat membuka sumber - %s!\n"
STRING_COPY_ERROR3 "Kesalahan menulis tujuan!\n"
STRING_ERROR_D_PAUSEMSG "Tekan tombol untuk melanjutkan . . . "
STRING_CONSOLE_ERROR "Kesalahan tidak dikenal: %d\n"
STRING_ERROR_OUT_OF_MEMORY "Kesalahan kekurangan memori.\n"
END

View File

@@ -0,0 +1,54 @@
/*
* PROJECT: ReactOS Replace Command
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
* PURPOSE: Italian resource file
* TRANSLATOR: Copyright 2007-2008 Paolo Devoti <devotip@tiscali.it>
*/
LANGUAGE LANG_ITALIAN, SUBLANG_NEUTRAL
STRINGTABLE
BEGIN
STRING_REPLACE_HELP1 "Sostituisce i file.\n\n\
REPLACE [disco1:][percorso1]nomefile [disco2:][percorso2] [/A] [/P] [/R] [/W]\n\
REPLACE [disco1:][percorso1]nomefile [disco2:][percorso2] [/P] [/R] [/S] [/W] [/U]\n\n\
[drive1:][path1]nomefile Specifica il o i file sorgenti.\n\
[disco2:][percorso2] Specifica la cartella dove i file devono essere\n\
sostituiti.\n\
/A Aggiunge i file alla cartella di destinazione. Non può\n\
essere usato con /S o /U .\n\
/P Chiede conferma prima di sostituire o aggiungere\n\
un file.\n\
/R Sostituisce sia i file in sola lettura che quelli\n\
non protetti.\n\
/S Sostituisce i file in tutte le sottocartelle\n\
della cartella di destinazione. Non può essere\n\
usato con /A .\n\
/W Aspetta che sia inserito un disco prima di iniziare.\n\
/U Sostituisce (aggiorna) solo i file più vecchi\n\
dei file sorgenti. Non può essere usato con /A .\n"
STRING_REPLACE_HELP2 "Il percorso sorgente è obbligatorio\n"
STRING_REPLACE_HELP3 "Nessun file sostituito\n"
STRING_REPLACE_HELP4 "%lu file sostituiti\n"
STRING_REPLACE_HELP5 "Sostituzione di %s in corso\n"
STRING_REPLACE_HELP7 "Nessun file aggiunto\n"
STRING_REPLACE_HELP8 "%lu file aggiunti\n"
STRING_REPLACE_HELP9 "Aggiungere %s (S/N)? "
STRING_REPLACE_HELP10 "Sostituire %s (S/N)? "
STRING_REPLACE_HELP11 "Aggiunta di %s in corso\n"
STRING_REPLACE_ERROR1 "Parametro non valido - %s\n"
STRING_REPLACE_ERROR2 "Percorso non trovato - %s\n"
STRING_REPLACE_ERROR3 "Il nome del file, della cartella o della etichetta di volume è errato.\n"
STRING_REPLACE_ERROR4 "Combinazione di parametri non valida\n"
STRING_REPLACE_ERROR5 "Accesso negato - %s\n"
STRING_REPLACE_ERROR6 "Nessun file trovato - %s\n"
STRING_REPLACE_ERROR7 "Errore esteso 32\n"
STRING_COPY_OPTION "SNT"
STRING_COPY_ERROR1 "Errore: Impossibile aprire il file sorgente - %s!\n"
STRING_COPY_ERROR3 "Errore durante la scrittura della destinazione!\n"
STRING_ERROR_D_PAUSEMSG "Premi un tasto per continuare . . . "
STRING_CONSOLE_ERROR "Errore sconosciuto: %d\n"
STRING_ERROR_OUT_OF_MEMORY "Errore di memoria esaurita.\n"
END

View File

@@ -0,0 +1,56 @@
/*
* PROJECT: ReactOS Replace Command
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
* PURPOSE: Japanese resource file
* TRANSLATORS: Copyright 2005 tsk <tsk_n@mail.goo.ne.jp>
* Copyright 2024 Katayama Hirofumi MZ <katayama.hirofumi.mz@gmail.com>
*/
LANGUAGE LANG_JAPANESE, SUBLANG_DEFAULT
STRINGTABLE
BEGIN
STRING_REPLACE_HELP1 "ファイルを置き換えます。\n\n\
REPLACE [ドライブ1:][パス1]ファイル名 [ドライブ2:][パス2] [/A] [/P] [/R] [/W]\n\
REPLACE [ドライブ1:][パス1]ファイル名 [ドライブ2:][パス2] [/P] [/R] [/S] [/W]\n\
[/U]\n\n\
[ドライブ1:][パス1]ファイル名 ソースファイルを指定します(複数可)。\n\
[ドライブ2:][パス2] 置き換えるファイルのあるディレクトリを\n\
指定します。\n\
/A 新しいファイルを転送先ディレクトリに追加\n\
します。/S や /U とは一緒には使えません。\n\
/P 置き換えまたは追加の前に確認プロンプトを表示\n\
します。\n\
/R 読み込み専用のファイルを書き込み可能にして\n\
ファイルを置き換えます。\n\
/S 転送先ディレクトリのすべての子ディレクトリ\n\
でファイルを置き換えます。/A と一緒には使え\n\
ません。\n\
/W 開始前にディスクの挿入を待ちます。\n\
/U 転送先の古いファイルのみを置き換えまたは\n\
更新します。/A と一緒には使えません。\n"
STRING_REPLACE_HELP2 "ソースパスが必要です。\n"
STRING_REPLACE_HELP3 "何も置き換えていません。\n"
STRING_REPLACE_HELP4 "%lu 個のファイルを置き換えました。\n"
STRING_REPLACE_HELP5 "置き換え中: %s\n"
STRING_REPLACE_HELP7 "何も追加していません。\n"
STRING_REPLACE_HELP8 "%lu 個のファイルを追加しました。\n"
STRING_REPLACE_HELP9 "%s を追加しますか (Y/N) ?"
STRING_REPLACE_HELP10 "%s を置き換えますか (Y/N) ?"
STRING_REPLACE_HELP11 "追加中: %s\n"
STRING_REPLACE_ERROR1 "無効なスイッチ - %s\n"
STRING_REPLACE_ERROR2 "パスが見つかりません - %s\n"
STRING_REPLACE_ERROR3 "ファイル名、ディレクトリ名、ボリュームラベルの文法が不正です。\n"
STRING_REPLACE_ERROR4 "無効なパラメータの組み合わせです。\n"
STRING_REPLACE_ERROR5 "アクセスが拒否されました - %s\n"
STRING_REPLACE_ERROR6 "ファイルが見つかりませんでした - %s\n"
STRING_REPLACE_ERROR7 "拡張エラー 32\n"
STRING_COPY_OPTION "YNA"
STRING_COPY_ERROR1 "エラー: 元のファイル %s を開けません!\n"
STRING_COPY_ERROR3 "指定先への書き込みでエラーが発生しました!\n"
STRING_ERROR_D_PAUSEMSG "続行するには何かキーを押してください . . . "
STRING_CONSOLE_ERROR "不明なエラー: %d\n"
STRING_ERROR_OUT_OF_MEMORY "メモリ不足エラー。\n"
END

View File

@@ -0,0 +1,55 @@
/*
* PROJECT: ReactOS Replace Command
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
* PURPOSE: Norwegian resource file
* TRANSLATORS: Copyright 2007 Frode Lillerud (Scalpel78) <frode@enkelt.no>
* Copyright 2009 Lars Martin Hambro (LMH1) <lars_martin4@hotmail.com>
*/
LANGUAGE LANG_NORWEGIAN, SUBLANG_NEUTRAL
STRINGTABLE
BEGIN
STRING_REPLACE_HELP1 "Replaces files.\n\n\
REPLACE [drive1:][path1]filename [drive2:][path2] [/A] [/P] [/R] [/W]\n\
REPLACE [drive1:][path1]filename [drive2:][path2] [/P] [/R] [/S] [/W] [/U]\n\n\
[drive1:][path1]filename Specifies the source file or files.\n\
[drive2:][path2] Specifies the directory where files are to be\n\
replaced.\n\
/A Adds new files to destination directory. Cannot\n\
use with /S or /U switches.\n\
/P Prompts for confirmation before replacing a file or\n\
adding a source file.\n\
/R Replaces read-only files as well as unprotected\n\
files.\n\
/S Replaces files in all subdirectories of the\n\
destination directory. Cannot use with the /A\n\
switch.\n\
/W Waits for you to insert a disk before beginning.\n\
/U Replaces (updates) only files that are older than\n\
source files. Cannot use with the /A switch.\n"
STRING_REPLACE_HELP2 "Source path required\n"
STRING_REPLACE_HELP3 "No files replaced\n"
STRING_REPLACE_HELP4 "%lu file(s) replaced\n"
STRING_REPLACE_HELP5 "Replacing %s\n"
STRING_REPLACE_HELP7 "No files added\n"
STRING_REPLACE_HELP8 "%lu file(s) added\n"
STRING_REPLACE_HELP9 "Add %s (Y/N)? "
STRING_REPLACE_HELP10 "Replace %s (Y/N)? "
STRING_REPLACE_HELP11 "Adding %s\n"
STRING_REPLACE_ERROR1 "Invalid switch - %s\n"
STRING_REPLACE_ERROR2 "Mappen ble ikke funnet - %s\n"
STRING_REPLACE_ERROR3 "The filename, directory name, or volume label syntax is incorrect.\n"
STRING_REPLACE_ERROR4 "Invalid parameter combination\n"
STRING_REPLACE_ERROR5 "Tilgang nektet - %s\n"
STRING_REPLACE_ERROR6 "Ingen filer ble funnet - %s\n"
STRING_REPLACE_ERROR7 "Extended Error 32\n"
STRING_COPY_OPTION "YNA"
STRING_COPY_ERROR1 "Feil: kan ikke åpne kilden - %s!\n"
STRING_COPY_ERROR3 "Feil ved skriving til destinasjon!\n"
STRING_ERROR_D_PAUSEMSG "Trykk en tast for å fortsette . . . "
STRING_CONSOLE_ERROR "Ukjent feil: %d\n"
STRING_ERROR_OUT_OF_MEMORY "Feil: Minne fullt.\n"
END

View File

@@ -0,0 +1,53 @@
/*
* PROJECT: ReactOS Replace Command
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
* PURPOSE: Polish resource file
* TRANSLATOR: Copyright 2007-2011 Olaf Siejka <caemyr@gmail.com>
*/
LANGUAGE LANG_POLISH, SUBLANG_DEFAULT
STRINGTABLE
BEGIN
STRING_REPLACE_HELP1 "Zamienia pliki.\n\n\
REPLACE [napęd1:][ścieżka1] pliki [napęd2:][ścieżka2] [/A] [/P] [/R] [/W]\n\
REPLACE [napęd1:][ścieżka1] pliki [napęd2:][ścieżka2] [/P] [/R] [/S] [/W] [/U]\n\n\
[napęd1:][ścieżka1]nazwa_pliku Wyznacza źródło pliku bądź plików.\n\
[napęd2:][ścieżka2] Wyznacza lokalizacje gdzie pliki mają być\n\
zamienione.\n\
/A Dodaje nowe pliki do lokalizacji docelowej. Nie można\n\
łączyć z opcjami /S lub /U.\n\
/P Żąda potwierdzenia przed zamianą istniejącego lub\n\
dodaniem nowego pliku.\n\
/R Zamienia pliki tylko do odczytu na równi z niezabez-\n\
pieczonymi.\n\
/S Zamienia pliki we wszystkich podkatalogach w lokazlizacji\n\
docelowej. Nie można łączyć z opcją /A.\n\
/W Czeka na włożenie dyskietki przed rozpoczęciem zamiany.\n\
/U Zamienia (aktualizuje) wyłącznie pliki starsze od\n\
źródłowych. Nie można łączyć z opcją /A.\n"
STRING_REPLACE_HELP2 "Brak ścieżki do źródła\n"
STRING_REPLACE_HELP3 "Nie zamieniono żadnego pliku\n"
STRING_REPLACE_HELP4 "Zamieniono %lu plik(i/ów)\n"
STRING_REPLACE_HELP5 "Zamiana %s\n"
STRING_REPLACE_HELP7 "Nie dodano nowych plików\n"
STRING_REPLACE_HELP8 "Dodano %lu plik(i/ów)\n"
STRING_REPLACE_HELP9 "Czy dodać %s (T/N)? "
STRING_REPLACE_HELP10 "Czy zamienić %s (T/N)? "
STRING_REPLACE_HELP11 "Dodawanie %s\n"
STRING_REPLACE_ERROR1 "Nieprawidłowy parametr - %s\n"
STRING_REPLACE_ERROR2 "Ścieżka nie została odnaleziona - %s\n"
STRING_REPLACE_ERROR3 "Nazwa pliku, katalogu lub napędu nie jest prawidłowa.\n"
STRING_REPLACE_ERROR4 "Nieprawidłowa kombinacja parametrów\n"
STRING_REPLACE_ERROR5 "Dostęp zabroniony - %s\n"
STRING_REPLACE_ERROR6 "Nie znaleziono plików - %s\n"
STRING_REPLACE_ERROR7 "Extended Error 32 - Błąd współdzielenia\n"
STRING_COPY_OPTION "TNZ"
STRING_COPY_ERROR1 "Błąd: Nie można otworzyć źródła - %s!\n"
STRING_COPY_ERROR3 "Błąd zapisu na miejscu docelowym!\n"
STRING_ERROR_D_PAUSEMSG "Naciśnij dowolny klawisz, aby kontynuować . . . "
STRING_CONSOLE_ERROR "Nieznany błąd: %d\n"
STRING_ERROR_OUT_OF_MEMORY "Błąd - brak pamięci.\n"
END

View File

@@ -0,0 +1,54 @@
/*
* PROJECT: ReactOS Replace Command
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
* PURPOSE: Portuguese (Brazilian) resource file
* TRANSLATOR: Copyright 2022 Fernando Isnaldo Silva de Faria <fernando-i@outlook.com>
*/
LANGUAGE LANG_PORTUGUESE, SUBLANG_PORTUGUESE_BRAZILIAN
STRINGTABLE
BEGIN
STRING_REPLACE_HELP1 "Substitui arquivos.\n\n\
REPLACE [unidade1:][caminho1]arquivo [unidade2:][caminho2][/A][/P][/R][/W]\n\
REPLACE [unidade1:][caminho1]arquivo [unidade2:][caminho2][/P][/R][/S][/W][/U]\n\n\
[unidade1:] [caminho1] arquivo\n\
Especifica o arquivo ou arquivos de origem.\n\
[unidade2:] [caminho2]\n\
Especifica o diretório onde os arquivos devem ser\n\
substituídos.\n\
/A Adiciona novos arquivos ao diretório de destino.\n\
Não pode usar com as opções /S ou /U.\n\
/P Solicita confirmação antes de substituir ou adicionar\n\
um arquivo.\n\
/R Substitui arquivos só de leitura e arquivos desprotegidos\n\
/S Substitui os arquivos em todos os subdiretórios do\n\
diretório de destino. Não é possível usar com a opção /A.\n\
/W Espera que insira um disco antes de começar.\n\
/U Substitui (atualiza) apenas os arquivos mais antigos que os\n\
arquivos fonte. Não é possível usar com a opção /A.\n"
STRING_REPLACE_HELP2 "Caminho de origem obrigatório\n"
STRING_REPLACE_HELP3 "Nenhum arquivo substituído\n"
STRING_REPLACE_HELP4 "%lu arquivo(s) substituído(s)\n"
STRING_REPLACE_HELP5 "A substituir %s\n"
STRING_REPLACE_HELP7 "Nenhum arquivo adicionado\n"
STRING_REPLACE_HELP8 "%lu arquivo(s) adicionado(s)\n"
STRING_REPLACE_HELP9 "Adicionar %s (S/N)?"
STRING_REPLACE_HELP10 "Substituir %s (S/N)?"
STRING_REPLACE_HELP11 "A adicionar %s\n"
STRING_REPLACE_ERROR1 "Opção inválida - %s\n"
STRING_REPLACE_ERROR2 "Caminho não encontrado - %s\n"
STRING_REPLACE_ERROR3 "O nome do arquivo, nome do diretório ou sintaxe do rótulo do volume está incorreto.\n"
STRING_REPLACE_ERROR4 "Combinação de parâmetro inválida\n"
STRING_REPLACE_ERROR5 "Acesso negado - %s\n"
STRING_REPLACE_ERROR6 "Nenhum arquivo encontrado - %s\n"
STRING_REPLACE_ERROR7 "Erro estendido 32\n"
STRING_COPY_OPTION "SNT"
STRING_COPY_ERROR1 "Erro: Não é possível abrir o código - %s!\n"
STRING_COPY_ERROR3 "Erro ao escrever destino!\n"
STRING_ERROR_D_PAUSEMSG "Pressione qualquer tecla para continuar..."
STRING_CONSOLE_ERROR "Erro desconhecido: %d\n"
STRING_ERROR_OUT_OF_MEMORY "Erro de falta de memória.\n"
END

View File

@@ -0,0 +1,54 @@
/*
* PROJECT: ReactOS Replace Command
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
* PURPOSE: Portuguese (Portugal) resource file
* TRANSLATOR: Copyright 2020 Jose Carlos Jesus <zecarlos1957@hotmail.com>
*/
LANGUAGE LANG_PORTUGUESE, SUBLANG_PORTUGUESE
STRINGTABLE
BEGIN
STRING_REPLACE_HELP1 "Substitui ficheiros.\n\n\
REPLACE [unidade1:][caminho1]ficheiro [unidade2:][caminho2][/A][/P][/R][/W]\n\
REPLACE [unidade1:][caminho1]ficheiro [unidade2:][caminho2][/P][/R][/S][/W][/U]\n\n\
[unidade1:] [caminho1] ficheiro\n\
Especifica o ficheiro ou ficheiros de origem.\n\
[unidade2:] [caminho2]\n\
Especifica o directório onde os ficheiros devem ser\n\
substituídos.\n\
/A Adiciona novos ficheiros ao directório de destino.\n\
Não pode usar com as opções /S ou /U.\n\
/P Solicita confirmação antes de substituir ou adicionar\n\
um ficheiro.\n\
/R Substitui ficheiros só de leitura e ficheiros desprotegidos\n\
/S Substitui os ficheiros em todos os subdiretórios do\n\
directório de destino. Não é possível usar com a opção /A.\n\
/W Espera que insira um disco antes de começar.\n\
/U Substitui (atualiza) apenas os ficheiros mais antigos que os\n\
arquivos fonte. Não é possível usar com a opção /A.\n"
STRING_REPLACE_HELP2 "Caminho de origem obrigatório\n"
STRING_REPLACE_HELP3 "Nenhum ficheiro substituído\n"
STRING_REPLACE_HELP4 "%lu ficheiro(s) substituído(s)\n"
STRING_REPLACE_HELP5 "A substituir %s\n"
STRING_REPLACE_HELP7 "Nenhum ficheiro adicionado\n"
STRING_REPLACE_HELP8 "%lu ficheiro(s) adicionado(s)\n"
STRING_REPLACE_HELP9 "Adicionar %s (S/N)?"
STRING_REPLACE_HELP10 "Substituir %s (S/N)?"
STRING_REPLACE_HELP11 "A adicionar %s\n"
STRING_REPLACE_ERROR1 "Opção inválida - %s\n"
STRING_REPLACE_ERROR2 "Caminho não encontrado - %s\n"
STRING_REPLACE_ERROR3 "O nome do ficheiro, nome do directório ou sintaxe do rótulo do volume está incorrecto.\n"
STRING_REPLACE_ERROR4 "Combinação de parâmetro inválida\n"
STRING_REPLACE_ERROR5 "Acesso negado - %s\n"
STRING_REPLACE_ERROR6 "Nenhum ficheiro encontrado - %s\n"
STRING_REPLACE_ERROR7 "Erro estendido 32\n"
STRING_COPY_OPTION "SNT"
STRING_COPY_ERROR1 "Erro: Não é possível abrir o código - %s!\n"
STRING_COPY_ERROR3 "Erro ao escrever destino!\n"
STRING_ERROR_D_PAUSEMSG "Pressione qualquer tecla para continuar..."
STRING_CONSOLE_ERROR "Erro desconhecido: %d\n"
STRING_ERROR_OUT_OF_MEMORY "Erro de falta de memória.\n"
END

View File

@@ -0,0 +1,54 @@
/*
* PROJECT: ReactOS Replace Command
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
* PURPOSE: Romanian resource file
* TRANSLATORS: Copyright 2011-2019 Ștefan Fulea <stefan.fulea@mail.com>
* Copyright 2023-2024 Andrei Miloiu <miloiuandrei@gmail.com>
*/
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
STRINGTABLE
BEGIN
STRING_REPLACE_HELP1 "Înlocuiește fișiere.\n\n\
REPLACE [disc1:][cale1]fișier [disc2:][cale2] [/A] [/P] [/R] [/W]\n\
REPLACE [disc1:][cale1]fișier [disc2:][cale2] [/P] [/R] [/S] [/W] [/U]\n\n\
[disc1:][cale1]fișier Specifică fișierul sau fișierele sursă.\n\
[disc2:][cale2] Specifică directorul unde vor fi înlocuite fișiere.\n\
/A Adaugă fișiere noi în directorul destinație. Nu se\n\
poate folosi cu argumentele /S sau /U.\n\
/P Cere confirmare înaintea înlocuirii unui fișier sau\n\
a adăugării unui fișier sursă.\n\
/R Înlocuiește atât fișierele modificabile, cât și\n\
fișierele nemodificabile.\n\
/S Înlocuiește fișierele în toate subdirectoarele\n\
directorului destinație. Nu se poate folosi\n\
cu argumentul /A.\n\
/W Așteaptă inserția unui disc înainte de a începe.\n\
/U Înlocuiește (actualizează) doar fișierele mai vechi\n\
decât fișierele sursă. Nu se poate folosi cu /A.\n"
STRING_REPLACE_HELP2 "Este necesară calea sursă\n"
STRING_REPLACE_HELP3 "Nu a fost înlocuit nici un fișier\n"
STRING_REPLACE_HELP4 "A(u) fost înlocuit(e) %lu fișier(e)\n"
STRING_REPLACE_HELP5 "Înlocuire «%s»\n"
STRING_REPLACE_HELP7 "Nu au fost adăugate fișiere\n"
STRING_REPLACE_HELP8 "A(u) fost adăugat(e) %lu fișier(e)\n"
STRING_REPLACE_HELP9 "Adaugă «%s» (Da/Nu)? "
STRING_REPLACE_HELP10 "Înlocuiește «%s» (Da/Nu)? "
STRING_REPLACE_HELP11 "Adăugare «%s»\n"
STRING_REPLACE_ERROR1 "Argument eronat - %s\n"
STRING_REPLACE_ERROR2 "Calea nu este găsită - %s\n"
STRING_REPLACE_ERROR3 "Numele fișierului, directorului sau eticheta volumului este incorectă.\n"
STRING_REPLACE_ERROR4 "Combinația de argumente nu este validă!\n"
STRING_REPLACE_ERROR5 "Acces respins - %s\n"
STRING_REPLACE_ERROR6 "Fișierele nu au fost găsite - %s\n"
STRING_REPLACE_ERROR7 "Eroare extinsă 32\n"
STRING_COPY_OPTION "DNT"
STRING_COPY_ERROR1 "Eroare: Nu se poate deschide sursa - %s!\n"
STRING_COPY_ERROR3 "Eroare de scriere în destinație!\n"
STRING_ERROR_D_PAUSEMSG "Tastați pentru a continua... "
STRING_CONSOLE_ERROR "Eroare necunoscută: %d\n"
STRING_ERROR_OUT_OF_MEMORY "Eroare de exces de memorie.\n"
END

View File

@@ -0,0 +1,56 @@
/*
* PROJECT: ReactOS Replace Command
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
* PURPOSE: Russian resource file
* TRANSLATORS: Copyright 2005 Aleksey Bragin <aleksey@reactos.org>
* Copyright 2007 Dmitry Chapyshev <dmitry@reactos.org>
* Copyright 2014-2015 Kudratov Olimjon <olim98@bk.ru>
*/
LANGUAGE LANG_RUSSIAN, SUBLANG_DEFAULT
STRINGTABLE
BEGIN
STRING_REPLACE_HELP1 "Замена файлов.\n\n\
REPLACE [диск1:][путь1]имя_файла [диск2:][путь2] [/A] [/P] [/R] [/W]\n\
REPLACE [диск1:][путь1]имя_файла [диск2:][путь2] [/P] [/R] [/S] [/W] [/U]\n\n\
[диск1:][путь1]имя_файла Один или несколько исходных файлов.\n\
[диск2:][путь2] Каталог, в котором следует заменить\n\
файлы.\n\
/A Добавление новых файлов в конечный каталог.\n\
Этот ключ несовместим с ключами /S и /U.\n\
/P Вывод запроса перед заменой или\n\
добавлением файла.\n\
/R Разрешение замены файлов, предназначенных\n\
только для чтения (среди прочих).\n\
/S Замена файлов во всех подкаталогах\n\
конечного каталога.\n\
Этот ключ несовместим с ключом /A.\n\
/W Ожидание вставки диска перед началом выполнения.\n\
/U Замена только файлов, более старых, чем исходные.\n\
Этот ключ несовместим с ключом /A.\n"
STRING_REPLACE_HELP2 "Необходимо указать путь к исходным файлам\n"
STRING_REPLACE_HELP3 "Ни один файл не заменен\n"
STRING_REPLACE_HELP4 "%lu файл(ов) заменено\n"
STRING_REPLACE_HELP5 "Замена %s\n"
STRING_REPLACE_HELP7 "Нет новых файлов\n"
STRING_REPLACE_HELP8 "%lu файл(ов) добавлено\n"
STRING_REPLACE_HELP9 "Добавить %s (Y/N)? "
STRING_REPLACE_HELP10 "Заменить %s (Y/N)? "
STRING_REPLACE_HELP11 "Добавление %s\n"
STRING_REPLACE_ERROR1 "Неверный ключ - %s\n"
STRING_REPLACE_ERROR2 "Путь не найден - %s\n"
STRING_REPLACE_ERROR3 "Имя файла, папки или метка диска неверная.\n"
STRING_REPLACE_ERROR4 "Неверная комбинация параметров\n"
STRING_REPLACE_ERROR5 "Доступ запрещён - %s\n"
STRING_REPLACE_ERROR6 "Не найдено файлов - %s\n"
STRING_REPLACE_ERROR7 "Расширенная ошибка 32\n"
STRING_COPY_OPTION "YNA"
STRING_COPY_ERROR1 "Ошибка: Невозможно открыть источник - %s!\n"
STRING_COPY_ERROR3 "Ошибка записи!\n"
STRING_ERROR_D_PAUSEMSG "Для продолжения нажмите любую клавишу . . . "
STRING_CONSOLE_ERROR "Неизвестная ошибка: %d\n"
STRING_ERROR_OUT_OF_MEMORY "Нехватка памяти.\n"
END

View File

@@ -0,0 +1,54 @@
/*
* PROJECT: ReactOS Replace Command
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
* PURPOSE: Slovak resource file
* TRANSLATOR: Copyright 2009-2010 Mário Kačmár <kario@szm.sk>
*/
LANGUAGE LANG_SLOVAK, SUBLANG_DEFAULT
STRINGTABLE
BEGIN
STRING_REPLACE_HELP1 "Replaces files.\n\n\
REPLACE [drive1:][path1]filename [drive2:][path2] [/A] [/P] [/R] [/W]\n\
REPLACE [drive1:][path1]filename [drive2:][path2] [/P] [/R] [/S] [/W] [/U]\n\n\
[drive1:][path1]filename Specifies the source file or files.\n\
[drive2:][path2] Specifies the directory where files are to be\n\
replaced.\n\
/A Adds new files to destination directory. Cannot\n\
use with /S or /U switches.\n\
/P Prompts for confirmation before replacing a file or\n\
adding a source file.\n\
/R Replaces read-only files as well as unprotected\n\
files.\n\
/S Replaces files in all subdirectories of the\n\
destination directory. Cannot use with the /A\n\
switch.\n\
/W Waits for you to insert a disk before beginning.\n\
/U Replaces (updates) only files that are older than\n\
source files. Cannot use with the /A switch.\n"
STRING_REPLACE_HELP2 "Source path required\n"
STRING_REPLACE_HELP3 "No files replaced\n"
STRING_REPLACE_HELP4 "%lu file(s) replaced\n"
STRING_REPLACE_HELP5 "Replacing %s\n"
STRING_REPLACE_HELP7 "No files added\n"
STRING_REPLACE_HELP8 "%lu file(s) added\n"
STRING_REPLACE_HELP9 "Add %s (Y/N)? "
STRING_REPLACE_HELP10 "Replace %s (Y/N)? "
STRING_REPLACE_HELP11 "Adding %s\n"
STRING_REPLACE_ERROR1 "Neplatný prepínač - %s\n"
STRING_REPLACE_ERROR2 "Cesta sa nenašla - %s\n"
STRING_REPLACE_ERROR3 "The filename, directory name, or volume label syntax is incorrect.\n"
STRING_REPLACE_ERROR4 "Invalid parameter combination\n"
STRING_REPLACE_ERROR5 "Prístup zamietnutý - %s\n"
STRING_REPLACE_ERROR6 "Žiadne súbory sa nenašli - %s\n"
STRING_REPLACE_ERROR7 "Extended Error 32\n"
STRING_COPY_OPTION "YNA"
STRING_COPY_ERROR1 "Chyba: Cannot open source - %s!\n"
STRING_COPY_ERROR3 "Error writing destination!\n"
STRING_ERROR_D_PAUSEMSG "Pokračujte stlačením ľubovoľného klávesu ... "
STRING_CONSOLE_ERROR "Neznáma chyba: %d\n"
STRING_ERROR_OUT_OF_MEMORY "Chyba (z) nedostatku pamäte.\n"
END

View File

@@ -0,0 +1,54 @@
/*
* PROJECT: ReactOS Replace Command
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
* PURPOSE: Albanian resource file
* TRANSLATOR: Copyright 2013 Ardit Dani (Ard1t) <ardit.dani@gmail.com>
*/
LANGUAGE LANG_ALBANIAN, SUBLANG_NEUTRAL
STRINGTABLE
BEGIN
STRING_REPLACE_HELP1 "zëvendëson dokumentat.\n\n\
REPLACE [drive1:][rrugë1]emri [drive2:][rrugë2] [/A] [/P] [/R] [/W]\n\
REPLACE [drive1:][rrugë1]emri [drive2:][rrugë2] [/P] [/R] [/S] [/W] [/U]\n\n\
[drive1:][rrugë1]emri Specifikon e dokumentit ose dokumentëve.\n\
[drive2:][rrugë2] Specifikon directorine ku dokumentet do të\n\
zëvendësohen.\n\
/A Shton dokumente të reja tek directoria e destinacionit. Nuk\n\
përdoret me /S ose /U.\n\
/P Shfaw konfirmimim para se të zëvendësosh një dokument apo\n\
shtimit të burimit të dokumentit.\n\
/R Zëvendëso dokumentat vetëm-lexohet, si dhe dokumentet e\n\
pambrojtur.\n\
/S Zëvendëson dokumentet në të gjitha nën-direktoritë e\n\
directorite. Nuk mund të përdorë me/A\n\
parametra.\n\
/W Pret për ju për të futur një disk para fillimit të.\n\
/U Zëvendëso (update) vetem dokumenta që janë më të vjetër se\n\
dokumentat e burimit. Nuk mund ta përdorësh me /A.\n"
STRING_REPLACE_HELP2 "Rruga e Burimi kërkohet\n"
STRING_REPLACE_HELP3 "Nuk zëvendësohen dokumentat\n"
STRING_REPLACE_HELP4 "%lu dokumenta(t) zëvendësohen\n"
STRING_REPLACE_HELP5 "Zëvendësohen %s\n"
STRING_REPLACE_HELP7 "S'ka dokumentat te shtuar\n"
STRING_REPLACE_HELP8 "%lu dokumenta(t) u shtuan\n"
STRING_REPLACE_HELP9 "Shto %s (P/J)? "
STRING_REPLACE_HELP10 "Zëvendëso %s (P/J)? "
STRING_REPLACE_HELP11 "Shtim %s\n"
STRING_REPLACE_ERROR1 "Qeles invalid - %s\n"
STRING_REPLACE_ERROR2 "Rruga nuk u gjet - %s\n"
STRING_REPLACE_ERROR3 "Dokumenti, emri i direktorise, ose syntaksi i etiketes volumetrike eshte gabim.\n"
STRING_REPLACE_ERROR4 "Kombimi i parametrave invalid\n"
STRING_REPLACE_ERROR5 "Refuzot hyrja - %s\n"
STRING_REPLACE_ERROR6 "Nuk u gjet dokumenti - %s\n"
STRING_REPLACE_ERROR7 "Error i zgjatur 32\n"
STRING_COPY_OPTION "PJT"
STRING_COPY_ERROR1 "Error: Nuk mund të hapni burim - %s!\n"
STRING_COPY_ERROR3 "Gabim gjatë shkrimit në destinacion!\n"
STRING_ERROR_D_PAUSEMSG "Shtypni një buton për të vazhduar . . . "
STRING_CONSOLE_ERROR "Error i paditur: %d\n"
STRING_ERROR_OUT_OF_MEMORY "Error ska memorie te mjaftueshme.\n"
END

View File

@@ -0,0 +1,55 @@
/*
* PROJECT: ReactOS Replace Command
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
* PURPOSE: Swedish resource file
* TRANSLATORS: Copyright 2011 Jan Blomqvist Kinander (Jaix Bly) <jaixbly@spray.se>
* Copyright 2017 Markus Gothe <nietzsche@lysator.liu.se>
*/
LANGUAGE LANG_SWEDISH, SUBLANG_NEUTRAL
STRINGTABLE
BEGIN
STRING_REPLACE_HELP1 "Ersätter filer.\n\n\
REPLACE [drive1:][path1]filnamn [drive2:][path2] [/A] [/P] [/R] [/W]\n\
REPLACE [drive1:][path1]filnamn [drive2:][path2] [/P] [/R] [/S] [/W] [/U]\n\n\
[drive1:][path1]filename Specifies the source file or files.\n\
[drive2:][path2] Specifies the directory where files are to be\n\
replaced.\n\
/A Adds new files to destination directory. Cannot\n\
use with /S or /U switches.\n\
/P Prompts for confirmation before replacing a file or\n\
adding a source file.\n\
/R Replaces read-only files as well as unprotected\n\
files.\n\
/S Replaces files in all subdirectories of the\n\
destination directory. Cannot use with the /A\n\
switch.\n\
/W Waits for you to insert a disk before beginning.\n\
/U Replaces (updates) only files that are older than\n\
source files. Cannot use with the /A switch.\n"
STRING_REPLACE_HELP2 "Source path required\n"
STRING_REPLACE_HELP3 "No files replaced\n"
STRING_REPLACE_HELP4 "%lu file(s) replaced\n"
STRING_REPLACE_HELP5 "Replacing %s\n"
STRING_REPLACE_HELP7 "No files added\n"
STRING_REPLACE_HELP8 "%lu file(s) added\n"
STRING_REPLACE_HELP9 "Add %s (Y/N)? "
STRING_REPLACE_HELP10 "Replace %s (Y/N)? "
STRING_REPLACE_HELP11 "Adding %s\n"
STRING_REPLACE_ERROR1 "Felaktig växel - %s\n"
STRING_REPLACE_ERROR2 "Mappen ble inte funnet - %s\n"
STRING_REPLACE_ERROR3 "The filename, directory name, or volume label syntax is incorrect.\n"
STRING_REPLACE_ERROR4 "Invalid parameter combination\n"
STRING_REPLACE_ERROR5 "Tillgång nekas - %s\n"
STRING_REPLACE_ERROR6 "Ingna filer hittades - %s\n"
STRING_REPLACE_ERROR7 "Extended Error 32\n"
STRING_COPY_OPTION "YNA"
STRING_COPY_ERROR1 "Fel: kan inte öppna källan - %s!\n"
STRING_COPY_ERROR3 "Fel vid skriving till destinationen!\n"
STRING_ERROR_D_PAUSEMSG "Tryck på valfri tangent för att fortsätta . . . "
STRING_CONSOLE_ERROR "Okänt fel: %d\n"
STRING_ERROR_OUT_OF_MEMORY "Fel: Minnet fullt.\n"
END

View File

@@ -0,0 +1,52 @@
/*
* PROJECT: ReactOS Replace Command
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
* PURPOSE: Turkish resource file
* TRANSLATORS: Copyright 2015 Erdem Ersoy (eersoy93) <erdemersoy@erdemersoy.net>
* Copyright 2021 Süleyman Poyraz <zaryob.dev@gmail.com>
*/
LANGUAGE LANG_TURKISH, SUBLANG_DEFAULT
STRINGTABLE
BEGIN
STRING_REPLACE_HELP1 "Replaces files.\n\n\
REPLACE [sürücü1:][yol1]filename [sürücü2:][yol2] [/A] [/P] [/R] [/W]\n\
REPLACE [sürücü1:][yol1]filename [sürücü2:][yol2] [/P] [/R] [/S] [/W] [/U]\n\n\
[drive1:][yol1]dosya adı Kaynak dosyayı veya dosyaları belirtir.\n\
[drive2:][yol2] Dosyaların aktarılacağı dizini belirtir.\n\
/A Hedef dizine yeni dosyalar ekler. /S veya /U\n\
anahtarlarıyla kullanılamaz.\n\
/P Bir dosyayı değiştirmeden veya bir kaynak dosya eklemeden\n\
önce onay ister.\n\
/R Salt okunur dosyaları da normal dosyalar gibi değiştirir\n\
/S Hedef dizinin tüm alt dizinlerindeki dosyaları değiştirir.\n\
/A anahtarıyla kullanılamaz.\n\
/W Başlamadan önce bir disk yerleştirmenizi bekler.\n\
/U Yalnızca kaynak dosyalardan daha eski dosyaları\n\
değiştirir (günceller). /A anahtarıyla kullanılamaz.\n"
STRING_REPLACE_HELP2 "Kaynak konum gerekli\n"
STRING_REPLACE_HELP3 "Herhangi bir dosya değiştirilmedi\n"
STRING_REPLACE_HELP4 "%lu dosya değiştirildi\n"
STRING_REPLACE_HELP5 "Değiştiriliyor: %s\n"
STRING_REPLACE_HELP7 "Herhangi bir dosya eklenemedi\n"
STRING_REPLACE_HELP8 "%lu dosya(lar) eklendi\n"
STRING_REPLACE_HELP9 "Şunu ekle %s (E/H)? "
STRING_REPLACE_HELP10 "Şunu değiştir %s (E/H)? "
STRING_REPLACE_HELP11 "Ekleniyor: %s\n"
STRING_REPLACE_ERROR1 "Geçersiz anahtar - %s\n"
STRING_REPLACE_ERROR2 "Yol bulunamadı - %s\n"
STRING_REPLACE_ERROR3 "Dosya adı, dizin adı veya birim etiketi sözdizimi yanlış.\n"
STRING_REPLACE_ERROR4 "Hatalı parametre kombinasyonu\n"
STRING_REPLACE_ERROR5 "Erişim reddedildi - %s\n"
STRING_REPLACE_ERROR6 "Hiçbir dosya bulunamadı - %s\n"
STRING_REPLACE_ERROR7 "Genişletilmiş Hata 32\n"
STRING_COPY_OPTION "EHT"
STRING_COPY_ERROR1 "Hata: Kaynak açılamadı - %s!\n"
STRING_COPY_ERROR3 "Hata: Hedefe yazılırken hata oluştu!\n"
STRING_ERROR_D_PAUSEMSG "Devam etmek için herhangi bir tuşa basın . . . "
STRING_CONSOLE_ERROR "Bilinmeyen Hata: %d\n"
STRING_ERROR_OUT_OF_MEMORY "Yetersiz bellek.\n"
END

View File

@@ -0,0 +1,54 @@
/*
* PROJECT: ReactOS Replace Command
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
* PURPOSE: Ukrainian resource file
* TRANSLATORS: Copyright 2007 Artem Reznikov <temarez@yandex.ru>
* Copyright 2011 Igor Paliychuk <mansonigor@gmail.com>
*/
LANGUAGE LANG_UKRAINIAN, SUBLANG_DEFAULT
STRINGTABLE
BEGIN
STRING_REPLACE_HELP1 "Замiна файлiв.\n\n\
REPLACE [диск1:][шлях1]iм'я_файлу [диск2:][шлях2] [/A] [/P] [/R] [/W]\n\
REPLACE [диск1:][шлях1]iм'я_файлу [диск2:][шлях2] [/P] [/R] [/S] [/W] [/U]\n\n\
[диск1:][шлях1]iм'я_файлу Задає файл(и) для замiни.\n\
[диск2:][шлях2] Задає каталог, в якому будуть замiненi файли\n\
файли.\n\
/A Додати новi файли в кiнцеву теку. Неможливе\n\
при використаннi ключiв /S чи /U.\n\
/P Запит на пiдтвердження замiни файлу чи\n\
додавання початкового файлу.\n\
/R Замiнює також файли лише для читання.\n\
/S Замiнює файли у всiх пiдкаталогах каталогу\n\
призначення. Неможливе при використаннi\n\
ключа /A.\n\
/W Чекає поки ви вставите диск перед початком.\n\
/U Замiнює (оновлює) лише файли, що старiшi нiж\n\
копiйованi. Неможливе при використаннi ключа /A.\n"
STRING_REPLACE_HELP2 "Необхiдний шлях джерела\n"
STRING_REPLACE_HELP3 "Не замiнено жодних файлiв\n"
STRING_REPLACE_HELP4 "%lu файл(iв) замiнено\n"
STRING_REPLACE_HELP5 "Замiна %s\n"
STRING_REPLACE_HELP7 "Не додано жодних файлiв\n"
STRING_REPLACE_HELP8 "%lu файл(iв) додано\n"
STRING_REPLACE_HELP9 "Додати %s (Y/N)? "
STRING_REPLACE_HELP10 "Замiнити %s (Y/N)? "
STRING_REPLACE_HELP11 "Додавання %s\n"
STRING_REPLACE_ERROR1 "Невiрний ключ - %s\n"
STRING_REPLACE_ERROR2 "Шлях не знайдено - %s\n"
STRING_REPLACE_ERROR3 "Синтаксис iменi файлу, теки чи мiтки диску некоректнi.\n"
STRING_REPLACE_ERROR4 "Невiрна комбацiя параметрiв\n"
STRING_REPLACE_ERROR5 "Немає доступу - %s\n"
STRING_REPLACE_ERROR6 "Файли не знайдено - %s\n"
STRING_REPLACE_ERROR7 "Розширена помилка 32\n"
STRING_COPY_OPTION "YNA"
STRING_COPY_ERROR1 "Помилка: Неможливо вiдкрити джерело - %s!\n"
STRING_COPY_ERROR3 "Помилка запису призначення!\n"
STRING_ERROR_D_PAUSEMSG "Натиснiть будь-яку клавiшу для продовження . . . "
STRING_CONSOLE_ERROR "Невiдома помилка: %d\n"
STRING_ERROR_OUT_OF_MEMORY "Недостатньо пам'ятi.\n"
END

View File

@@ -0,0 +1,48 @@
/*
* PROJECT: ReactOS Replace Command
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
* PURPOSE: Chinese (Simplified) resource file
* TRANSLATORS: Copyright 2011 Song Fuchang (0xfc) <sfc_0@yahoo.com.cn>
* Copyright 2021 Wu Haotian <rigoligo03@gmail.com>
*/
LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED
STRINGTABLE
BEGIN
STRING_REPLACE_HELP1 "替换文件。\n\n\
REPLACE [驱动器1:][路径1]文件名 [驱动器2:][路径2] [/A] [/P] [/R] [/W]\n\
REPLACE [驱动器1:][路径1]文件名 [驱动器2:][路径2] [/P] [/R] [/S] [/W] [/U]\n\n\
[驱动器1:][路径1]文件名 指定一个或多个源文件。\n\
[驱动器2:][路径2] 指定要被替换文件所在的目录。\n\
/A 将新文件添加到目标目录。不能和 /S 或 /U 同时使用。\n\
/P 在替换一个文件或添加一个源文件之前请求确认。\n\
/R 将只读文件视为未保护文件并替换。\n\
/S 替换目标目录中所有子目录中的文件。不能与 /A 同时使用。\n\
/W 在开始前等待您插入一张磁盘。\n\
/U 仅替换(更新)比原文件老的文件。不能和 /A 同时使用。\n"
STRING_REPLACE_HELP2 "需要源路径\n"
STRING_REPLACE_HELP3 "没有文件被替换\n"
STRING_REPLACE_HELP4 "%lu 个文件已被替换\n"
STRING_REPLACE_HELP5 "正在替换 %s\n"
STRING_REPLACE_HELP7 "没有文件被添加\n"
STRING_REPLACE_HELP8 "%lu 个文件已被添加\n"
STRING_REPLACE_HELP9 "添加 %s 吗 (Y/N) "
STRING_REPLACE_HELP10 "替换 %s 吗 (Y/N) "
STRING_REPLACE_HELP11 "正在添加 %s\n"
STRING_REPLACE_ERROR1 "无效开关 - %s\n"
STRING_REPLACE_ERROR2 "路径未找到 - %s\n"
STRING_REPLACE_ERROR3 "文件名、目录名或卷标语法不正确。\n"
STRING_REPLACE_ERROR4 "无效的参数组合\n"
STRING_REPLACE_ERROR5 "禁止访问 - %s\n"
STRING_REPLACE_ERROR6 "没有文件被发现 - %s\n"
STRING_REPLACE_ERROR7 "扩展错误 32\n"
STRING_COPY_OPTION "YNA"
STRING_COPY_ERROR1 "错误:无法打开源文件 - %s\n"
STRING_COPY_ERROR3 "写入目标文件时出错!\n"
STRING_ERROR_D_PAUSEMSG "按任意键继续... "
STRING_CONSOLE_ERROR "未知错误:%d\n"
STRING_ERROR_OUT_OF_MEMORY "内存不足。\n"
END

View File

@@ -0,0 +1,48 @@
/*
* PROJECT: ReactOS Replace Command
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
* PURPOSE: Chinese (Traditional) resource file
* TRANSLATORS: Copyright 2015 Henry Tang Ih <henrytang2@hotmail.com>
* Copyright 2021 Chan Chilung <eason066@gmail.com>
*/
LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_TRADITIONAL
STRINGTABLE
BEGIN
STRING_REPLACE_HELP1 "取代檔案。\n\n\
REPLACE [磁碟機1:][路徑1]檔案名稱 [磁碟機2:][路徑2] [/A] [/P] [/R] [/W]\n\
REPLACE [磁碟機1:][路徑1]檔案名稱 [磁碟機2:][路徑2] [/P] [/R] [/S] [/W] [/U]\n\n\
[磁碟機1:][路徑1]檔案名稱 指定一個或多個原始檔。\n\
[磁碟機2:][路徑2] 指定要被取代檔案所在的目錄。\n\
/A 將新檔案新增到目標目錄。不能和 /S 或 /U 同時使用。\n\
/P 在取代一個檔案或新增一個原始檔之前請求確認。\n\
/R 將只讀檔案視為未保護檔案並取代。\n\
/S 取代目標目錄中所有子目錄中的檔案。不能與 /A 同時使用。\n\
/W 在開始前等待您插入一張磁碟。\n\
/U 僅取代(更新)比原檔案舊的檔案。不能和 /A 同時使用。\n"
STRING_REPLACE_HELP2 "需要來源路徑\n"
STRING_REPLACE_HELP3 "沒有檔案被取代\n"
STRING_REPLACE_HELP4 "%lu 個檔案已被取代\n"
STRING_REPLACE_HELP5 "正在取代 %s\n"
STRING_REPLACE_HELP7 "沒有檔案被新增\n"
STRING_REPLACE_HELP8 "%lu 個檔案已被新增\n"
STRING_REPLACE_HELP9 "新增 %s 嗎 (Y/N)"
STRING_REPLACE_HELP10 "取代 %s 嗎 (Y/N)"
STRING_REPLACE_HELP11 "正在新增 %s\n"
STRING_REPLACE_ERROR1 "無效開關 - %s\n"
STRING_REPLACE_ERROR2 "找不到路徑 - %s\n"
STRING_REPLACE_ERROR3 "檔案名稱、目錄名稱或磁碟區標籤語法不正確。\n"
STRING_REPLACE_ERROR4 "無效的參陣組合\n"
STRING_REPLACE_ERROR5 "存取被拒 - %s\n"
STRING_REPLACE_ERROR6 "找不到檔案 - %s\n"
STRING_REPLACE_ERROR7 "擴展錯誤 32\n"
STRING_COPY_OPTION "YNA"
STRING_COPY_ERROR1 "錯誤:無法開啟來源 - %s\n"
STRING_COPY_ERROR3 "寫入目的時出錯!\n"
STRING_ERROR_D_PAUSEMSG "按任意鍵繼續... "
STRING_CONSOLE_ERROR "未知錯誤:%d\n"
STRING_ERROR_OUT_OF_MEMORY "記憶體不足。\n"
END

View File

@@ -1,18 +1,12 @@
/*
* PROJECT: ReactOS Command shell
* LICENSE: GPL - See COPYING in the top level directory
* FILE: base/shell/cmd/replace.c
* PURPOSE: Implements 'replace' cmd command
* PROGRAMMERS: Samuel Erdtman (samuel@erdtman.se)
* PROJECT: ReactOS Replace Command
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
* PURPOSE: Implements 'replace' command
* COPYRIGHT: Copyright Samuel Erdtman (samuel@erdtman.se)
* COPYRIGHT: Copyright 2024 Katayama Hirofumi MZ (katayama.hirofumi.mz@gmail.com)
*/
/* INCLUDES ******************************************************************/
#include "precomp.h"
#ifdef INCLUDE_CMD_REPLACE
/* GLOBALS *******************************************************************/
#include "replace.h"
enum
{
@@ -24,13 +18,11 @@ enum
REPLACE_UPDATE = 0x020, /* /U */
};
/* FUNCTIONS *****************************************************************/
/* just makes a print out if there is a problem with the switches */
void invalid_switch(LPTSTR is)
{
ConOutResPrintf(STRING_REPLACE_ERROR1,is);
ConOutResPaging(TRUE,STRING_REPLACE_HELP3);
ConOutResPrintf(STRING_REPLACE_HELP3);
}
/* retrieves the path dependent on the input file name */
@@ -42,7 +34,6 @@ void getPath(TCHAR* out, LPTSTR in)
GetFullPathName (in, MAX_PATH, out, NULL);
}
/* makes the replace */
INT replace(TCHAR source[MAX_PATH], TCHAR dest[MAX_PATH], DWORD dwFlags, BOOL *doMore)
{
@@ -147,7 +138,7 @@ INT replace(TCHAR source[MAX_PATH], TCHAR dest[MAX_PATH], DWORD dwFlags, BOOL *d
/* Make sure source and destination is not the same */
if (!_tcscmp(s, d))
{
ConOutResPaging(TRUE, STRING_REPLACE_ERROR7);
ConOutResPrintf(STRING_REPLACE_ERROR7);
CloseHandle (hFileSrc);
*doMore = FALSE;
return 0;
@@ -158,7 +149,7 @@ INT replace(TCHAR source[MAX_PATH], TCHAR dest[MAX_PATH], DWORD dwFlags, BOOL *d
if (hFileDest == INVALID_HANDLE_VALUE)
{
CloseHandle (hFileSrc);
ConOutResPaging(TRUE, STRING_REPLACE_ERROR7);
ConOutResPrintf(STRING_REPLACE_ERROR7);
*doMore = FALSE;
return 0;
}
@@ -169,7 +160,7 @@ INT replace(TCHAR source[MAX_PATH], TCHAR dest[MAX_PATH], DWORD dwFlags, BOOL *d
{
CloseHandle (hFileDest);
CloseHandle (hFileSrc);
ConOutResPaging(TRUE, STRING_ERROR_OUT_OF_MEMORY);
ConOutResPrintf(STRING_ERROR_OUT_OF_MEMORY);
return 0;
}
@@ -189,13 +180,12 @@ INT replace(TCHAR source[MAX_PATH], TCHAR dest[MAX_PATH], DWORD dwFlags, BOOL *d
WriteFile (hFileDest, buffer, dwRead, &dwWritten, NULL);
/* Done! or ctrl break! */
if (dwWritten != dwRead || CheckCtrlBreak(BREAK_INPUT))
if (dwWritten != dwRead || bCtrlBreak)
{
ConOutResPuts(STRING_COPY_ERROR3);
VirtualFree (buffer, 0, MEM_RELEASE);
CloseHandle (hFileDest);
CloseHandle (hFileSrc);
nErrorLevel = 1;
return 0;
}
}
@@ -242,10 +232,8 @@ INT recReplace(DWORD dwFlags,
/* Go through all the sourcefiles and copy/replace them */
do
{
if (CheckCtrlBreak(BREAK_INPUT))
{
if (bCtrlBreak)
return filesReplaced;
}
/* Problem with file handler */
if (hFile == INVALID_HANDLE_VALUE)
@@ -389,23 +377,26 @@ INT recFindSubDirs(DWORD dwFlags,
return filesReplaced;
}
INT cmd_replace (LPTSTR param)
INT cmd_replace(INT argc, WCHAR **argv)
{
LPTSTR *arg;
INT argc, i,filesReplaced = 0, nFiles, srcIndex = -1, destIndex = -1;
INT i, filesReplaced = 0, nFiles, srcIndex = -1, destIndex = -1;
DWORD dwFlags = 0;
TCHAR szDestPath[MAX_PATH], szSrcPath[MAX_PATH], tmpSrcPath[MAX_PATH];
BOOL doMore = TRUE;
--argc;
++argv;
/* Help wanted? */
if (!_tcsncmp (param, _T("/?"), 2))
if (argc == 1 && !_tcscmp(argv[0], _T("/?")))
{
ConOutResPaging(TRUE,STRING_REPLACE_HELP1);
return 0;
ConOutResPrintf(STRING_REPLACE_HELP1);
return EXIT_SUCCESS;
}
/* Divide the argument in to an array of c-strings */
arg = split (param, &argc, FALSE, FALSE);
arg = argv;
nFiles = argc;
/* Read options */
@@ -437,15 +428,13 @@ INT cmd_replace (LPTSTR param)
break;
default:
invalid_switch(arg[i]);
freep(arg);
return 0;
return 11; /* Error */
}
}
else
{
invalid_switch(arg[i]);
freep(arg);
return 0;
return 11; /* Error */
}
nFiles--;
}
@@ -462,8 +451,7 @@ INT cmd_replace (LPTSTR param)
else
{
invalid_switch(arg[i]);
freep(arg);
return 0;
return 11; /* Error */
}
}
}
@@ -471,18 +459,17 @@ INT cmd_replace (LPTSTR param)
/* See so that at least source is there */
if (nFiles < 1)
{
ConOutResPaging(TRUE,STRING_REPLACE_HELP2);
ConOutResPaging(TRUE,STRING_REPLACE_HELP3);
freep(arg);
return 1;
ConOutResPrintf(STRING_REPLACE_HELP2);
ConOutResPrintf(STRING_REPLACE_HELP3);
return 11; /* Error */
}
/* Check so that not both update and add switch is added and subdir */
if ((dwFlags & REPLACE_UPDATE || dwFlags & REPLACE_SUBDIR) && (dwFlags & REPLACE_ADD))
{
ConOutResPaging(TRUE,STRING_REPLACE_ERROR4);
ConOutResPaging(TRUE,STRING_REPLACE_HELP7);
freep(arg);
return 1;
ConOutResPrintf(STRING_REPLACE_ERROR4);
ConOutResPrintf(STRING_REPLACE_HELP7);
return 11; /* Error */
}
/* If we have a destination get the full path */
@@ -497,18 +484,16 @@ INT cmd_replace (LPTSTR param)
_tcschr (arg[destIndex], _T('?')) != NULL)
{
ConOutResPrintf(STRING_REPLACE_ERROR2,arg[destIndex]);
ConOutResPaging(TRUE,STRING_REPLACE_HELP3);
freep(arg);
return 1;
ConOutResPrintf(STRING_REPLACE_HELP3);
return 3; /* Error */
}
getPath(szDestPath, arg[destIndex]);
/* Make sure that destination exists */
if (!IsExistingDirectory(szDestPath))
{
ConOutResPrintf(STRING_REPLACE_ERROR2, szDestPath);
ConOutResPaging(TRUE,STRING_REPLACE_HELP3);
freep(arg);
return 1;
ConOutResPrintf(STRING_REPLACE_HELP3);
return 3; /* Error */
}
}
}
@@ -532,18 +517,17 @@ INT cmd_replace (LPTSTR param)
if (IsExistingDirectory(szSrcPath))
{
ConOutResPrintf(STRING_REPLACE_ERROR6, szSrcPath);
ConOutResPaging(TRUE,STRING_REPLACE_HELP3);
freep(arg);
return 1;
ConOutResPrintf(STRING_REPLACE_HELP3);
return 2; /* Error */
}
/* Check if the file exists */
if (!IsExistingFile(szSrcPath))
{
ConOutResPaging(TRUE,STRING_REPLACE_HELP3);
freep(arg);
return 1;
ConOutResPrintf(STRING_REPLACE_HELP3);
return 2; /* Error */
}
}
/* /w switch is set so wait for any key to be pressed */
if (dwFlags & REPLACE_DISK)
{
@@ -573,9 +557,9 @@ INT cmd_replace (LPTSTR param)
{
/* Add switch dependent output */
if (dwFlags & REPLACE_ADD)
ConOutResPaging(TRUE,STRING_REPLACE_HELP7);
ConOutResPrintf(STRING_REPLACE_HELP7);
else
ConOutResPaging(TRUE,STRING_REPLACE_HELP3);
ConOutResPrintf(STRING_REPLACE_HELP3);
}
/* Some files replaced */
else
@@ -587,8 +571,33 @@ INT cmd_replace (LPTSTR param)
ConOutResPrintf(STRING_REPLACE_HELP4, filesReplaced);
}
}
/* Return memory */
freep(arg);
return 1;
return EXIT_SUCCESS;
}
static BOOL CALLBACK
CtrlHandlerRoutine(DWORD dwCtrlType)
{
switch (dwCtrlType)
{
case CTRL_C_EVENT: /* Ctrl+C */
case CTRL_CLOSE_EVENT: /* Closing console? */
bCtrlBreak = TRUE;
return TRUE; /* Handled */
default:
return FALSE; /* Ignored */
}
}
int wmain(int argc, WCHAR **argvW)
{
/* Handle Ctrl+C and console closing */
SetConsoleCtrlHandler(CtrlHandlerRoutine, TRUE);
/* Initialize the Console Standard Streams */
ConInitStdStreams();
return cmd_replace(argc, argvW);
}
#endif /* INCLUDE_CMD_REPLACE */

View File

@@ -0,0 +1,54 @@
/*
* PROJECT: ReactOS Replace Command
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
* PURPOSE: Main header
* COPYRIGHT: Copyright Samuel Erdtman (samuel@erdtman.se)
* COPYRIGHT: Copyright 2024 Katayama Hirofumi MZ (katayama.hirofumi.mz@gmail.com)
*/
#pragma once
#define WIN32_LEAN_AND_MEAN
#include <windows.h>
#include <tchar.h>
#include <stdlib.h>
#include <conutils.h>
#include "resource.h"
#define RC_STRING_MAX_SIZE 3072
#define PROMPT_NO 0
#define PROMPT_YES 1
#define PROMPT_ALL 2
#define PROMPT_BREAK 3
/* 16k = max buffer size */
#define BUFF_SIZE 16384
#define ConOutResPuts(uID) \
ConResPuts(StdOut, (uID))
#define ConOutResPrintf(uID, ...) \
ConResPrintf(StdOut, (uID), ##__VA_ARGS__)
#define ConOutFormatMessage(MessageId, ...) \
ConFormatMessage(StdOut, (MessageId), ##__VA_ARGS__)
/* util.c */
VOID ConInString(LPTSTR lpInput, DWORD dwLength);
VOID __cdecl ConFormatMessage(PCON_STREAM Stream, DWORD MessageId, ...);
VOID ConOutChar(TCHAR c);
VOID GetPathCase(TCHAR * Path, TCHAR * OutPath);
BOOL IsExistingFile(IN LPCTSTR pszPath);
BOOL IsExistingDirectory(IN LPCTSTR pszPath);
INT FilePromptYNA(UINT resID);
VOID msg_pause(VOID);
TCHAR cgetchar(VOID);
INT
GetRootPath(
IN LPCTSTR InPath,
OUT LPTSTR OutPath,
IN INT size);
extern BOOL bCtrlBreak;

View File

@@ -0,0 +1,83 @@
#include <windef.h>
#include "resource.h"
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
#define REACTOS_STR_FILE_DESCRIPTION "ReactOS Replace Command"
#define REACTOS_STR_INTERNAL_NAME "replace"
#define REACTOS_STR_ORIGINAL_FILENAME "replace.exe"
#include <reactos/version.rc>
/* UTF-8 */
#pragma code_page(65001)
#ifdef LANGUAGE_CS_CZ
#include "lang/cs-CZ.rc"
#endif
#ifdef LANGUAGE_DE_DE
#include "lang/de-DE.rc"
#endif
#ifdef LANGUAGE_EL_GR
#include "lang/el-GR.rc"
#endif
#ifdef LANGUAGE_EN_US
#include "lang/en-US.rc"
#endif
#ifdef LANGUAGE_ES_ES
#include "lang/es-ES.rc"
#endif
#ifdef LANGUAGE_FR_FR
#include "lang/fr-FR.rc"
#endif
#ifdef LANGUAGE_HU_HU
#include "lang/hu-HU.rc"
#endif
#ifdef LANGUAGE_ID_ID
#include "lang/id-ID.rc"
#endif
#ifdef LANGUAGE_IT_IT
#include "lang/it-IT.rc"
#endif
#ifdef LANGUAGE_NB_NO
#include "lang/no-NO.rc"
#endif
#ifdef LANGUAGE_JA_JP
#include "lang/ja-JP.rc"
#endif
#ifdef LANGUAGE_PL_PL
#include "lang/pl-PL.rc"
#endif
#ifdef LANGUAGE_PT_BR
#include "lang/pt-BR.rc"
#endif
#ifdef LANGUAGE_PT_PT
#include "lang/pt-PT.rc"
#endif
#ifdef LANGUAGE_RO_RO
#include "lang/ro-RO.rc"
#endif
#ifdef LANGUAGE_RU_RU
#include "lang/ru-RU.rc"
#endif
#ifdef LANGUAGE_SK_SK
#include "lang/sk-SK.rc"
#endif
#ifdef LANGUAGE_SV_SE
#include "lang/sv-SE.rc"
#endif
#ifdef LANGUAGE_SQ_AL
#include "lang/sq-AL.rc"
#endif
#ifdef LANGUAGE_TR_TR
#include "lang/tr-TR.rc"
#endif
#ifdef LANGUAGE_UK_UA
#include "lang/uk-UA.rc"
#endif
#ifdef LANGUAGE_ZH_CN
#include "lang/zh-CN.rc"
#endif
#ifdef LANGUAGE_ZH_TW
#include "lang/zh-TW.rc"
#endif

View File

@@ -0,0 +1,27 @@
#define STRING_CONSOLE_ERROR 316
#define STRING_REPLACE_ERROR1 351
#define STRING_REPLACE_ERROR2 352
#define STRING_REPLACE_ERROR3 353
#define STRING_REPLACE_ERROR4 354
#define STRING_REPLACE_ERROR5 355
#define STRING_REPLACE_ERROR6 356
#define STRING_REPLACE_ERROR7 357
#define STRING_REPLACE_HELP1 727
#define STRING_REPLACE_HELP2 728
#define STRING_REPLACE_HELP3 729
#define STRING_REPLACE_HELP4 730
#define STRING_REPLACE_HELP5 731
#define STRING_REPLACE_HELP7 733
#define STRING_REPLACE_HELP8 734
#define STRING_REPLACE_HELP9 735
#define STRING_REPLACE_HELP10 736
#define STRING_REPLACE_HELP11 737
#define STRING_COPY_OPTION 201
#define STRING_COPY_ERROR1 320
#define STRING_COPY_ERROR3 322
#define STRING_ERROR_OUT_OF_MEMORY 109
#define STRING_ERROR_D_PAUSEMSG 111

View File

@@ -0,0 +1,282 @@
/*
* PROJECT: ReactOS Replace Command
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
* PURPOSE: Internal helpers. See cmd/internal.c
* COPYRIGHT: Copyright Samuel Erdtman (samuel@erdtman.se)
* COPYRIGHT: Copyright 2024 Katayama Hirofumi MZ (katayama.hirofumi.mz@gmail.com)
*/
#include "replace.h"
BOOL bCtrlBreak = FALSE; /* Ctrl-Break or Ctrl-C hit */
/*
* Helper function for getting the current path from drive
* without changing the drive. Return code: 0 = ok, 1 = fail.
* 'InPath' can have any size; if the two first letters are
* not a drive with ':' it will get the current path on
* the current drive exactly as GetCurrentDirectory() does.
*/
INT
GetRootPath(
IN LPCTSTR InPath,
OUT LPTSTR OutPath,
IN INT size)
{
if (InPath[0] && InPath[1] == _T(':'))
{
INT t = 0;
if ((InPath[0] >= _T('0')) && (InPath[0] <= _T('9')))
{
t = (InPath[0] - _T('0')) + 28;
}
else if ((InPath[0] >= _T('a')) && (InPath[0] <= _T('z')))
{
t = (InPath[0] - _T('a')) + 1;
}
else if ((InPath[0] >= _T('A')) && (InPath[0] <= _T('Z')))
{
t = (InPath[0] - _T('A')) + 1;
}
return (_tgetdcwd(t, OutPath, size) == NULL);
}
/* Get current directory */
return !GetCurrentDirectory(size, OutPath);
}
/*
* Takes a path in and returns it with the correct case of the letters
*/
VOID GetPathCase( TCHAR * Path, TCHAR * OutPath)
{
UINT i = 0;
TCHAR TempPath[MAX_PATH];
WIN32_FIND_DATA FindFileData;
HANDLE hFind;
_tcscpy(TempPath, _T(""));
_tcscpy(OutPath, _T(""));
for(i = 0; i < _tcslen(Path); i++)
{
if (Path[i] != _T('\\'))
{
_tcsncat(TempPath, &Path[i], 1);
if (i != _tcslen(Path) - 1)
continue;
}
/* Handle the base part of the path different.
Because if you put it into findfirstfile, it will
return your current folder */
if (_tcslen(TempPath) == 2 && TempPath[1] == _T(':'))
{
_tcscat(OutPath, TempPath);
_tcscat(OutPath, _T("\\"));
_tcscat(TempPath, _T("\\"));
}
else
{
hFind = FindFirstFile(TempPath,&FindFileData);
if (hFind == INVALID_HANDLE_VALUE)
{
_tcscpy(OutPath, Path);
return;
}
_tcscat(TempPath, _T("\\"));
_tcscat(OutPath, FindFileData.cFileName);
_tcscat(OutPath, _T("\\"));
FindClose(hFind);
}
}
}
/*
* Checks if a file exists (is accessible)
*/
BOOL IsExistingFile(IN LPCTSTR pszPath)
{
DWORD attr = GetFileAttributes(pszPath);
return ((attr != INVALID_FILE_ATTRIBUTES) && !(attr & FILE_ATTRIBUTE_DIRECTORY));
}
BOOL IsExistingDirectory(IN LPCTSTR pszPath)
{
DWORD attr = GetFileAttributes(pszPath);
return ((attr != INVALID_FILE_ATTRIBUTES) && (attr & FILE_ATTRIBUTE_DIRECTORY));
}
INT FilePromptYNA (UINT resID)
{
TCHAR szMsg[RC_STRING_MAX_SIZE];
// TCHAR cKey = 0;
// LPTSTR szKeys = _T("yna");
TCHAR szIn[10];
LPTSTR p;
if (resID != 0)
ConOutResPrintf (resID);
/* preliminary fix */
ConInString(szIn, 10);
_tcsupr (szIn);
for (p = szIn; _istspace (*p); p++)
;
LoadString(NULL, STRING_COPY_OPTION, szMsg, ARRAYSIZE(szMsg));
if (_tcsncmp(p, &szMsg[0], 1) == 0)
return PROMPT_YES;
else if (_tcsncmp(p, &szMsg[1], 1) == 0)
return PROMPT_NO;
else if (_tcsncmp(p, &szMsg[2], 1) == 0)
return PROMPT_ALL;
#if 0
else if (*p == _T('\03'))
return PROMPT_BREAK;
#endif
return PROMPT_NO;
/* unfinished solution */
#if 0
RemoveBreakHandler();
ConInDisable();
do
{
ConInKey (&ir);
cKey = _totlower (ir.Event.KeyEvent.uChar.AsciiChar);
if (_tcschr (szKeys, cKey[0]) == NULL)
cKey = 0;
}
while ((ir.Event.KeyEvent.wVirtualKeyCode == VK_SHIFT) ||
(ir.Event.KeyEvent.wVirtualKeyCode == VK_MENU) ||
(ir.Event.KeyEvent.wVirtualKeyCode == VK_CONTROL));
AddBreakHandler();
ConInEnable();
if ((ir.Event.KeyEvent.wVirtualKeyCode == VK_ESCAPE) ||
((ir.Event.KeyEvent.wVirtualKeyCode == _T('C')) &&
(ir.Event.KeyEvent.dwControlKeyState & (LEFT_CTRL_PRESSED | RIGHT_CTRL_PRESSED))))
return PROMPT_BREAK;
return PROMPT_YES;
#endif
}
VOID ConInString(LPTSTR lpInput, DWORD dwLength)
{
DWORD dwOldMode;
DWORD dwRead = 0;
HANDLE hFile;
LPTSTR p;
PCHAR pBuf;
#ifdef _UNICODE
pBuf = (PCHAR)malloc(dwLength - 1);
#else
pBuf = lpInput;
#endif
ZeroMemory(lpInput, dwLength * sizeof(TCHAR));
hFile = GetStdHandle(STD_INPUT_HANDLE);
GetConsoleMode(hFile, &dwOldMode);
SetConsoleMode(hFile, ENABLE_PROCESSED_INPUT | ENABLE_LINE_INPUT | ENABLE_ECHO_INPUT);
ReadFile(hFile, (PVOID)pBuf, dwLength - 1, &dwRead, NULL);
#ifdef _UNICODE
MultiByteToWideChar(GetConsoleCP(), 0, pBuf, dwRead, lpInput, dwLength - 1);
free(pBuf);
#endif
for (p = lpInput; *p; p++)
{
if (*p == _T('\r')) // Terminate at the carriage-return.
{
*p = _T('\0');
break;
}
}
SetConsoleMode(hFile, dwOldMode);
}
VOID msg_pause(VOID)
{
ConOutResPuts(STRING_ERROR_D_PAUSEMSG);
}
VOID __cdecl ConFormatMessage(PCON_STREAM Stream, DWORD MessageId, ...)
{
INT Len;
va_list arg_ptr;
va_start(arg_ptr, MessageId);
Len = ConMsgPrintfV(Stream,
FORMAT_MESSAGE_FROM_SYSTEM,
NULL,
MessageId,
LANG_USER_DEFAULT,
&arg_ptr);
va_end(arg_ptr);
if (Len <= 0)
ConResPrintf(Stream, STRING_CONSOLE_ERROR, MessageId);
}
VOID ConOutChar(TCHAR c)
{
ConWrite(StdOut, &c, 1);
}
/*
* get a character out-of-band and honor Ctrl-Break characters
*/
TCHAR
cgetchar (VOID)
{
HANDLE hInput = GetStdHandle (STD_INPUT_HANDLE);
INPUT_RECORD irBuffer;
DWORD dwRead;
do
{
ReadConsoleInput (hInput, &irBuffer, 1, &dwRead);
if ((irBuffer.EventType == KEY_EVENT) &&
(irBuffer.Event.KeyEvent.bKeyDown != FALSE))
{
if (irBuffer.Event.KeyEvent.dwControlKeyState &
(LEFT_CTRL_PRESSED | RIGHT_CTRL_PRESSED))
{
if (irBuffer.Event.KeyEvent.wVirtualKeyCode == 'C')
{
bCtrlBreak = TRUE;
break;
}
}
else if ((irBuffer.Event.KeyEvent.wVirtualKeyCode == VK_SHIFT) ||
(irBuffer.Event.KeyEvent.wVirtualKeyCode == VK_MENU) ||
(irBuffer.Event.KeyEvent.wVirtualKeyCode == VK_CONTROL))
{
// Nothing to do
}
else
{
break;
}
}
}
while (TRUE);
#ifndef _UNICODE
return irBuffer.Event.KeyEvent.uChar.AsciiChar;
#else
return irBuffer.Event.KeyEvent.uChar.UnicodeChar;
#endif /* _UNICODE */
}

View File

@@ -3,7 +3,7 @@
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
* PURPOSE: Romanian resource file
* TRANSLATORS: Copyright 2011-2019 Ștefan Fulea <stefan.fulea@mail.com>
* Copyright 2023 Andrei Miloiu <miloiuandrei@gmail.com>
* Copyright 2023-2024 Andrei Miloiu <miloiuandrei@gmail.com>
*/
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
@@ -20,8 +20,8 @@ STRINGTABLE
STRING_CLOSE_PROC_SRCH, "Către fereastra procesului «%1» cu PID %2!u! a fost emis un mesaj de închidere.\n"
STRING_TERM_PID_SEARCH, "Procesul cu PID %1!u! a fost oprit în mod forțat.\n"
STRING_TERM_PROC_SEARCH, "Procesul «%1» cu PID %2!u! a fost oprit în mod forțat.\n"
STRING_SEARCH_FAILED, "Eroare: Procesul «%1» nu poate fi găsit.\n"
STRING_ENUM_FAILED, "Eroare: Procesele nu au putut fi enumerate.\n"
STRING_SEARCH_FAILED, "Eroare: Nu se poate găsi procesul «%1».\n"
STRING_ENUM_FAILED, "Eroare: Nu se poate enumera lista de procese.\n"
STRING_TERMINATE_FAILED, "Eroare: Procesul «%1» nu poate fi oprit.\n"
STRING_SELF_TERMINATION, "Eroare: Auto-terminarea nu este permisă.\n"
STRING_PARAM_TOO_MUCH, "Eroare: Sintaxă nevalidă. Opțiunea '%1' nu este permisă mai mult de '%2!d!' dată(dăți).\n"

View File

@@ -1,11 +1,17 @@
/* Translator: Ștefan Fulea (stefan dot fulea at mail dot com) */
/*
* PROJECT: ReactOS Tree Walk Utility
* LICENSE: GPL-2.0 (https://spdx.org/licenses/GPL-2.0)
* PURPOSE: Romanian resource file
* TRANSLATORS: Copyright 2018 Ștefan Fulea <stefan.fulea@mail.com>
* Copyright 2024 Andrei Miloiu <miloiuandrei@gmail.com>
*/
LANGUAGE LANG_ROMANIAN, SUBLANG_DEFAULT
STRINGTABLE
BEGIN
IDS_USAGE "Afișează o structură de fișiere a unui director sau unități de stocare.\n\n\
TREE [unitate:][cale] [/F] [/A]\n\n\
TREE [disc:][cale] [/F] [/A]\n\n\
\t/F Afișează numele fișierelor din fiecare director.\n\
\t/A Folosește ASCII în loc de caractere extinse.\n"
IDS_NO_SUBDIRECTORIES "Nu există subdirectoare"

View File

@@ -13,6 +13,7 @@ add_typelib(ihost.idl)
set_source_files_properties(rsrc.rc PROPERTIES OBJECT_DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/ihost.tlb)
target_link_libraries(wscript uuid wine)
set_module_type(wscript win32gui UNICODE)
add_delay_importlibs(wscript shlwapi)
add_importlibs(wscript shell32 oleaut32 ole32 user32 advapi32 msvcrt kernel32 ntdll)
add_dependencies(wscript stdole2 wscript_idlheader)
add_pch(wscript precomp.h SOURCE)

View File

@@ -407,8 +407,16 @@ static HRESULT WINAPI Host_DisconnectObject(IHost *iface, IDispatch *Object)
static HRESULT WINAPI Host_Sleep(IHost *iface, LONG Time)
{
#ifdef __REACTOS__
UNREFERENCED_PARAMETER(iface);
if (Time < 0)
return E_INVALIDARG;
Sleep(Time);
return S_OK;
#else
WINE_FIXME("(%d)\n", Time);
return E_NOTIMPL;
#endif
}
static HRESULT WINAPI Host_ConnectObject(IHost *iface, IDispatch *Object, BSTR Prefix)

View File

@@ -60,6 +60,141 @@ ITypeInfo *arguments_ti;
static HRESULT query_interface(REFIID,void**);
#ifdef __REACTOS__
#include <commctrl.h>
typedef struct {
UINT itemsize, count;
void *mem;
} SIMPLEVECTOR;
static void SVect_Free(SIMPLEVECTOR *pV)
{
if (pV->mem)
LocalFree(pV->mem);
pV->mem = NULL;
}
static void* SVect_Add(SIMPLEVECTOR *pV)
{
void *p = NULL;
if (pV->mem)
{
p = LocalReAlloc(pV->mem, pV->itemsize * (pV->count + 1), LMEM_FIXED | LMEM_MOVEABLE);
if (p)
{
pV->mem = p;
p = (char*)p + (pV->count * pV->itemsize);
pV->count++;
}
}
else
{
p = pV->mem = LocalAlloc(LMEM_FIXED, pV->itemsize);
if (p)
{
pV->count = 1;
}
}
return p;
}
#define SVect_Delete(pV, pItem) ( (pV), (pItem) ) /* Should not be required for global items */
static void* SVect_Get(SIMPLEVECTOR *pV, UINT i)
{
return pV->mem && i < pV->count ? (char*)pV->mem + (i * pV->itemsize) : NULL;
}
typedef struct {
BSTR name;
IUnknown *punk;
} GLOBAL_ITEM;
SIMPLEVECTOR g_global_items = { sizeof(GLOBAL_ITEM) };
static void free_globals(void)
{
UINT i;
for (i = 0;; ++i)
{
GLOBAL_ITEM *p = (GLOBAL_ITEM*)SVect_Get(&g_global_items, i);
if (!p)
break;
IUnknown_Release(p->punk);
SysFreeString(p->name);
}
SVect_Free(&g_global_items);
}
static HRESULT add_globalitem(IActiveScript *script, BSTR name, IUnknown *punk, DWORD siflags)
{
GLOBAL_ITEM *item;
HRESULT hr;
name = SysAllocString(name);
if (!name)
return E_OUTOFMEMORY;
item = SVect_Add(&g_global_items);
if (item)
{
item->name = name;
item->punk = punk;
hr = IActiveScript_AddNamedItem(script, name, siflags);
if (SUCCEEDED(hr))
{
IUnknown_AddRef(punk);
return hr;
}
SVect_Delete(&g_global_items, item);
}
SysFreeString(name);
return E_OUTOFMEMORY;
}
static HRESULT add_globalitem_from_clsid(IActiveScript *script, BSTR name, REFCLSID clsid, DWORD siflags)
{
IUnknown *punk;
HRESULT hr = CoCreateInstance(clsid, NULL, CLSCTX_INPROC_SERVER, &IID_IUnknown, (void**)&punk);
if (SUCCEEDED(hr))
{
hr = add_globalitem(script, name, punk, siflags);
IUnknown_Release(punk);
}
return hr;
}
static HRESULT get_globalitem_info(LPCOLESTR Name, DWORD Mask, IUnknown **ppunk, ITypeInfo **ppti, BOOL *pHandled)
{
HRESULT hr = S_FALSE;
UINT i;
for (i = 0;; ++i)
{
GLOBAL_ITEM *p = (GLOBAL_ITEM*)SVect_Get(&g_global_items, i);
if (!p)
break;
if (!lstrcmpiW(Name, p->name))
{
if (ppti)
*ppti = NULL;
if (Mask & SCRIPTINFO_IUNKNOWN)
{
*ppunk = p->punk;
if (p->punk)
{
IUnknown_AddRef(p->punk);
*pHandled = TRUE;
}
return S_OK;
}
break;
}
}
return hr;
}
#endif
static HRESULT WINAPI ActiveScriptSite_QueryInterface(IActiveScriptSite *iface,
REFIID riid, void **ppv)
{
@@ -89,6 +224,15 @@ static HRESULT WINAPI ActiveScriptSite_GetItemInfo(IActiveScriptSite *iface,
{
WINE_TRACE("(%s %x %p %p)\n", wine_dbgstr_w(pstrName), dwReturnMask, ppunkItem, ppti);
#ifdef __REACTOS__
{
BOOL handled = FALSE;
HRESULT hr = get_globalitem_info(pstrName, dwReturnMask, ppunkItem, ppti, &handled);
if (handled)
return hr;
}
#endif
if(lstrcmpW(pstrName, wshW) && lstrcmpW(pstrName, wscriptW))
return E_FAIL;
@@ -388,6 +532,231 @@ static void run_script(const WCHAR *filename, IActiveScript *script, IActiveScri
WINE_FIXME("SetScriptState failed: %08x\n", hres);
}
#ifdef __REACTOS__
#include <msxml2.h>
#include <shlwapi.h>
static HRESULT xmldomnode_getattributevalue(IXMLDOMNode *pnode, LPCWSTR name, BSTR *pout)
{
IXMLDOMNamedNodeMap *pmap;
HRESULT hr = E_OUTOFMEMORY;
BSTR bsname = SysAllocString(name);
*pout = NULL;
if (bsname && SUCCEEDED(hr = IXMLDOMNode_get_attributes(pnode, &pmap)))
{
if (SUCCEEDED(hr = IXMLDOMNamedNodeMap_getNamedItem(pmap, bsname, &pnode)))
{
hr = HRESULT_FROM_WIN32(ERROR_NOT_FOUND);
if (pnode)
{
hr = IXMLDOMNode_get_text(pnode, pout);
if (SUCCEEDED(hr) && !*pout)
hr = HRESULT_FROM_WIN32(ERROR_NOT_FOUND);
IXMLDOMNode_Release(pnode);
}
}
IXMLDOMNamedNodeMap_Release(pmap);
}
SysFreeString(bsname);
return hr;
}
static HRESULT xmldomelem_getelembytag(IXMLDOMElement *pelem, LPCWSTR name, long index, IXMLDOMNode**ppout)
{
HRESULT hr = E_OUTOFMEMORY;
IXMLDOMNodeList *pnl;
BSTR bsname = SysAllocString(name);
*ppout = NULL;
if (bsname && SUCCEEDED(hr = IXMLDOMElement_getElementsByTagName(pelem, bsname, &pnl)))
{
hr = IXMLDOMNodeList_get_item(pnl, index, ppout);
if (SUCCEEDED(hr) && !*ppout)
hr = HRESULT_FROM_WIN32(ERROR_NO_MORE_ITEMS);
IUnknown_Release(pnl);
}
SysFreeString(bsname);
return hr;
}
static HRESULT xmldomelem_getelembytagasdomelem(IXMLDOMElement *pelem, LPCWSTR name, long index, IXMLDOMElement**ppout)
{
IXMLDOMNode *pnode;
HRESULT hr = xmldomelem_getelembytag(pelem, name, index, &pnode);
*ppout = NULL;
if (SUCCEEDED(hr))
{
hr = IUnknown_QueryInterface(pnode, &IID_IXMLDOMElement, (void**)ppout);
IUnknown_Release(pnode);
}
return hr;
}
static void wsf_addobjectfromnode(IActiveScript *script, IXMLDOMNode *obj)
{
BSTR bsid, bsclsid = NULL;
if (SUCCEEDED(xmldomnode_getattributevalue(obj, L"id", &bsid)))
{
CLSID clsid;
HRESULT hr;
hr = xmldomnode_getattributevalue(obj, L"clsid", &bsclsid);
if (FAILED(hr) || FAILED(CLSIDFromString(bsclsid, &clsid)))
{
SysFreeString(bsclsid);
if (SUCCEEDED(hr = xmldomnode_getattributevalue(obj, L"progid", &bsclsid)))
{
hr = CLSIDFromProgID(bsclsid, &clsid);
SysFreeString(bsclsid);
}
}
if (SUCCEEDED(hr))
{
hr = add_globalitem_from_clsid(script, bsid, &clsid, SCRIPTITEM_ISVISIBLE);
}
SysFreeString(bsid);
}
}
static HRESULT run_wsfjob(IXMLDOMElement *jobtag)
{
// FIXME: We are supposed to somehow handle multiple languages in the same IActiveScript.
IActiveScript *script;
LPCWSTR deflang = L"JScript";
IXMLDOMNode *scripttag;
HRESULT hr = S_OK;
if (SUCCEEDED(xmldomelem_getelembytag(jobtag, L"script", 0, &scripttag)))
{
CLSID clsid;
IActiveScriptParse *parser;
BSTR lang, code;
if (FAILED(xmldomnode_getattributevalue(scripttag, L"language", &lang)))
lang = NULL;
hr = CLSIDFromProgID(lang ? lang : deflang, &clsid);
SysFreeString(lang);
if (SUCCEEDED(hr))
{
hr = E_FAIL;
if (create_engine(&clsid, &script, &parser))
{
if (init_engine(script, parser))
{
long index;
for (index = 0; index < 0x7fffffff; ++index)
{
IXMLDOMNode *obj;
if (SUCCEEDED(xmldomelem_getelembytag(jobtag, L"object", index, &obj)))
{
wsf_addobjectfromnode(script, obj);
IUnknown_Release(obj);
}
else
{
break;
}
}
if (SUCCEEDED(hr = IXMLDOMNode_get_text(scripttag, &code)))
{
hr = IActiveScriptParse_ParseScriptText(parser, code, NULL, NULL, NULL, 1, 1,
SCRIPTTEXT_HOSTMANAGESSOURCE|SCRIPTITEM_ISVISIBLE,
NULL, NULL);
if (SUCCEEDED(hr))
{
hr = IActiveScript_SetScriptState(script, SCRIPTSTATE_STARTED);
IActiveScript_Close(script);
}
SysFreeString(code);
}
ITypeInfo_Release(host_ti);
}
IUnknown_Release(parser);
IUnknown_Release(script);
}
}
IUnknown_Release(scripttag);
}
return hr;
}
/*
.WSF files can contain a single job, or multiple jobs if contained in a package.
Jobs are identified by their id and if no id is specified, the first job is used.
Each job can contain multiple script tags and all scripts are merged into one.
<job><script language="JScript">WScript.Echo("JS");</script></job>
or
<package>
<job><script language="JScript">WScript.Echo("JS");</script></job>
</package>
or
<?xml version="1.0" ?>
<job>
<script language="JScript"><![CDATA[function JS(s) {WScript.Echo(s)}]]></script>
<script language="VBScript">JS "VB2JS"</script>
</job>
*/
static HRESULT run_wsf(LPCWSTR xmlpath)
{
WCHAR url[ARRAY_SIZE("file://") + max(ARRAY_SIZE(scriptFullName), MAX_PATH)];
DWORD cch = ARRAY_SIZE(url);
IXMLDOMDocument *pdoc;
HRESULT hr = UrlCreateFromPathW(xmlpath, url, &cch, 0), hrCom;
if (FAILED(hr))
return hr;
hrCom = CoInitialize(NULL);
hr = CoCreateInstance(&CLSID_DOMDocument30, NULL, CLSCTX_INPROC_SERVER,
&IID_IXMLDOMDocument, (void**)&pdoc);
if (SUCCEEDED(hr))
{
VARIANT_BOOL succ = VARIANT_FALSE;
IXMLDOMElement *pdocelm;
BSTR bsurl = SysAllocString(url);
VARIANT v;
V_VT(&v) = VT_BSTR;
V_BSTR(&v) = bsurl;
if (!bsurl || (hr = IXMLDOMDocument_load(pdoc, v, &succ)) > 0 || (SUCCEEDED(hr) && !succ))
{
hr = E_FAIL;
}
if (SUCCEEDED(hr) && SUCCEEDED(hr = IXMLDOMDocument_get_documentElement(pdoc, &pdocelm)))
{
BSTR tagName = NULL;
if (SUCCEEDED(hr = IXMLDOMElement_get_tagName(pdocelm, &tagName)))
{
if (lstrcmpiW(tagName, L"package") == 0)
{
// FIXME: Accept job id as a function parameter and find the job here
IXMLDOMElement *p;
if (SUCCEEDED(hr = xmldomelem_getelembytagasdomelem(pdocelm, L"job", 0, &p)))
{
IUnknown_Release(pdocelm);
pdocelm = p;
}
}
else if (lstrcmpiW(tagName, L"job") != 0)
{
hr = 0x800400C0ul;
}
SysFreeString(tagName);
}
if (SUCCEEDED(hr))
{
// FIXME: Only support CDATA blocks if the xml tag is present?
hr = run_wsfjob(pdocelm);
}
IUnknown_Release(pdocelm);
}
VariantClear(&v);
IUnknown_Release(pdoc);
}
free_globals();
if (SUCCEEDED(hrCom))
CoUninitialize();
return hr;
}
#endif
static BOOL set_host_properties(const WCHAR *prop)
{
static const WCHAR nologoW[] = {'n','o','l','o','g','o',0};
@@ -453,6 +822,11 @@ int WINAPI wWinMain(HINSTANCE hInst, HINSTANCE hPrevInst, LPWSTR cmdline, int cm
return 1;
ext = wcsrchr(filepart, '.');
#ifdef __REACTOS__
if (ext && !lstrcmpiW(ext, L".wsf")) {
return run_wsf(scriptFullName);
}
#endif
if(!ext || !get_engine_clsid(ext, &clsid)) {
WINE_FIXME("Could not find engine for %s\n", wine_dbgstr_w(ext));
return 1;
@@ -477,6 +851,10 @@ int WINAPI wWinMain(HINSTANCE hInst, HINSTANCE hPrevInst, LPWSTR cmdline, int cm
IActiveScript_Release(script);
IActiveScriptParse_Release(parser);
#ifdef __REACTOS__
free_globals();
#endif
CoUninitialize();
return 0;

View File

@@ -2,5 +2,7 @@
add_rc_deps(control.rc ${CMAKE_CURRENT_SOURCE_DIR}/resources/config.ico)
add_executable(control control.c control.rc)
set_module_type(control win32gui UNICODE)
add_delay_importlibs(control ole32)
target_link_libraries(control uuid)
add_importlibs(control advapi32 shell32 user32 msvcrt kernel32)
add_cd_file(TARGET control DESTINATION reactos/system32 FOR all)

View File

@@ -4,12 +4,14 @@
* PURPOSE: ReactOS System Control Panel
* COPYRIGHT: Copyright 2004 Gero Kuehn (reactos.filter@gkware.com)
* Copyright 2008 Colin Finck (colin@reactos.org)
* Copyright 2014 Herm<EFBFBD>s B<EFBFBD>lusca-Ma<EFBFBD>to (hermes.belusca-maito@reactos.org)
* Copyright 2014 Hermès Bélusca-Maïto (hermes.belusca-maito@reactos.org)
*/
#include <stdio.h>
#define WIN32_NO_STATUS
#define COBJMACROS
#include <windef.h>
#include <winbase.h>
@@ -17,6 +19,9 @@
#include <winreg.h>
#include <shellapi.h>
#include <strsafe.h>
#include <objbase.h>
#include <shobjidl.h>
#include <shlguid.h>
#include "resource.h"
@@ -34,21 +39,51 @@ VOID
WINAPI
Control_RunDLLW(HWND hWnd, HINSTANCE hInst, LPCWSTR cmd, DWORD nCmdShow);
static BOOL
IsSwitch(LPCWSTR Switch, LPCWSTR Arg)
{
if (*Arg == '/' || *Arg == '-')
{
return !lstrcmpiW(Arg+1, Switch);
}
return FALSE;
}
static HRESULT
OpenControlPanelItem(LPCWSTR Name, LPCWSTR Page)
{
HRESULT hr = CoInitialize(0);
if (SUCCEEDED(hr))
{
IOpenControlPanel *pOCP;
hr = CoCreateInstance(&CLSID_OpenControlPanel, NULL, CLSCTX_INPROC_SERVER,
&IID_IOpenControlPanel, (void**)&pOCP);
if (SUCCEEDED(hr))
{
hr = IOpenControlPanel_Open(pOCP, Name, Page, NULL);
IOpenControlPanel_Release(pOCP);
}
CoUninitialize();
}
return hr;
}
static INT
OpenShellFolder(LPWSTR lpFolderCLSID)
{
WCHAR szParameters[MAX_PATH];
/*
* Open a shell folder using "explorer.exe". The passed CLSIDs
* are all subfolders of the "Control Panel" shell folder.
* Open a shell folder using "explorer.exe". If Explorer shell is not
* available, use ReactOS's alternative file browser instead.
* The passed CLSIDs are all subfolders of the "Control Panel" shell folder.
*/
StringCbCopyW(szParameters, sizeof(szParameters), L"/n,::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\\::{21EC2020-3AEA-1069-A2DD-08002B30309D}");
StringCbCatW(szParameters, sizeof(szParameters), lpFolderCLSID);
return (INT_PTR)ShellExecuteW(NULL,
L"open",
L"explorer.exe",
GetShellWindow() ? L"explorer.exe" : L"filebrowser.exe",
szParameters,
NULL,
SW_SHOWDEFAULT) > 32;
@@ -73,11 +108,16 @@ wWinMain(HINSTANCE hInstance,
INT nCmdShow)
{
HKEY hKey;
LPWSTR *argv;
int argc;
/* Show the control panel window if no argument or "panel" was passed */
if (*lpCmdLine == 0 || !_wcsicmp(lpCmdLine, L"panel"))
return OpenShellFolder(L"");
/* Map legacy control panels */
if (!_wcsicmp(lpCmdLine, L"sticpl.cpl")) lpCmdLine = (LPWSTR) L"scannercamera";
/* Check one of the built-in control panel handlers */
if (!_wcsicmp(lpCmdLine, L"admintools")) return OpenShellFolder(L"\\::{D20EA4E1-3957-11d2-A40B-0C5020524153}");
else if (!_wcsicmp(lpCmdLine, L"color")) return RunControlPanel(L"desk.cpl,,2");
@@ -99,6 +139,28 @@ wWinMain(HINSTANCE hInstance,
else if (!_wcsicmp(lpCmdLine, L"userpasswords")) return RunControlPanel(L"nusrmgr.cpl"); /* Graphical User Account Manager */
else if (!_wcsicmp(lpCmdLine, L"userpasswords2")) return RUNDLL(L"netplwiz.dll,UsersRunDll"); /* Dialog based advanced User Account Manager */
/* https://learn.microsoft.com/en-us/windows/win32/shell/executing-control-panel-items#windows-vista-canonical-names */
argv = CommandLineToArgvW(lpCmdLine, &argc);
if (argv)
{
UINT argi = 0;
HRESULT hr = -1;
if (argc >= 2 && IsSwitch(L"name", argv[argi + 0]))
{
LPCWSTR pszPage = NULL;
if (argc >= 4 && IsSwitch(L"page", argv[argi + 2]))
{
pszPage = argv[argi + 3];
}
hr = OpenControlPanelItem(argv[argi + 1], pszPage);
}
LocalFree(argv);
if (hr != -1)
{
return SUCCEEDED(hr);
}
}
/* It is none of them, so look for a handler in the registry */
if (RegOpenKeyExW(HKEY_LOCAL_MACHINE,
L"Software\\Microsoft\\Windows\\CurrentVersion\\Control Panel\\Cpls",

View File

@@ -0,0 +1,100 @@
/*
* PROJECT: ReactOS CTF Monitor
* LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
* PURPOSE: Cicero Tipbar (Language Bar) loader window
* COPYRIGHT: Copyright 2023 Katayama Hirofumi MZ <katayama.hirofumi.mz@gmail.com>
*/
#include "precomp.h"
#include "CLoaderWnd.h"
#include "CRegWatcher.h"
BOOL CLoaderWnd::s_bUninitedSystem = FALSE;
BOOL CLoaderWnd::s_bWndClassRegistered = FALSE;
BOOL CLoaderWnd::Init()
{
if (s_bWndClassRegistered)
return TRUE; // Already registered
// Register a window class
WNDCLASSEX wc;
ZeroMemory(&wc, sizeof(wc));
wc.cbSize = sizeof(wc);
wc.style = CS_HREDRAW | CS_VREDRAW;
wc.hInstance = g_hInst;
wc.hCursor = LoadCursor(NULL, IDC_ARROW);
wc.lpfnWndProc = WindowProc;
wc.lpszClassName = TEXT("CiCTipBarClass");
if (!::RegisterClassEx(&wc))
return FALSE;
s_bWndClassRegistered = TRUE; // Remember
return TRUE;
}
HWND CLoaderWnd::CreateWnd()
{
m_hWnd = ::CreateWindowEx(0, TEXT("CiCTipBarClass"), NULL, WS_DISABLED,
0, 0, 0, 0, NULL, NULL, g_hInst, NULL);
return m_hWnd;
}
LRESULT CALLBACK
CLoaderWnd::WindowProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
switch (uMsg)
{
case WM_CREATE:
break;
case WM_DESTROY:
::PostQuitMessage(0);
break;
case WM_QUERYENDSESSION:
// NOTE: We don't support Win95/98/Me
#ifdef SUPPORT_WIN9X
if (!(g_dwOsInfo & CIC_OSINFO_NT) && (!g_fWinLogon || (lParam & ENDSESSION_LOGOFF)))
{
ClosePopupTipbar();
TF_UninitSystem();
CLoaderWnd::s_bUninitedSystem = TRUE;
}
#endif
return TRUE;
case WM_ENDSESSION:
if (wParam) // The session is being ended?
{
if (!s_bUninitedSystem)
{
// Un-initialize now
UninitApp();
TF_UninitSystem();
s_bUninitedSystem = TRUE;
}
}
else if (s_bUninitedSystem) // Once un-initialized?
{
// Re-initialize
TF_InitSystem();
if (!g_bOnWow64)
GetPopupTipbar(hwnd, !!g_fWinLogon);
s_bUninitedSystem = FALSE;
}
break;
case WM_SYSCOLORCHANGE:
case WM_DISPLAYCHANGE:
if (!g_bOnWow64) // Is the system x86/x64 native?
CRegWatcher::StartSysColorChangeTimer();
break;
default:
return DefWindowProc(hwnd, uMsg, wParam, lParam);
}
return 0;
}

View File

@@ -0,0 +1,26 @@
/*
* PROJECT: ReactOS CTF Monitor
* LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
* PURPOSE: Cicero Tipbar (Language Bar) loader window
* COPYRIGHT: Copyright 2023 Katayama Hirofumi MZ <katayama.hirofumi.mz@gmail.com>
*/
#pragma once
class CLoaderWnd
{
public:
HWND m_hWnd;
static BOOL s_bUninitedSystem;
static BOOL s_bWndClassRegistered;
CLoaderWnd() : m_hWnd(NULL) { }
~CLoaderWnd() { }
BOOL Init();
HWND CreateWnd();
protected:
static LRESULT CALLBACK
WindowProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam);
};

View File

@@ -0,0 +1,14 @@
list(APPEND SOURCE
ctfmon.cpp
CLoaderWnd.cpp
CRegWatcher.cpp)
add_rc_deps(ctfmon.rc ${CMAKE_CURRENT_SOURCE_DIR}/res/ctfmon.ico)
add_executable(ctfmon ${SOURCE} ctfmon.rc)
set_module_type(ctfmon win32gui UNICODE)
add_dependencies(ctfmon msctf msutb)
target_link_libraries(ctfmon uuid cicero)
add_importlibs(ctfmon msctf msutb advapi32 shell32 user32 msvcrt kernel32)
add_pch(ctfmon precomp.h SOURCE)
add_cd_file(TARGET ctfmon DESTINATION reactos/system32 FOR all)

View File

@@ -0,0 +1,369 @@
/*
* PROJECT: ReactOS CTF Monitor
* LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
* PURPOSE: Registry watcher
* COPYRIGHT: Copyright 2023 Katayama Hirofumi MZ <katayama.hirofumi.mz@gmail.com>
*/
#include "precomp.h"
#include "CRegWatcher.h"
// The event handles to use in watching
HANDLE CRegWatcher::s_ahWatchEvents[WATCHENTRY_MAX] = { NULL };
// The registry entries to watch
WATCHENTRY CRegWatcher::s_WatchEntries[WATCHENTRY_MAX] =
{
{ HKEY_CURRENT_USER, TEXT("Keyboard Layout\\Toggle") }, // WI_TOGGLE
{ HKEY_LOCAL_MACHINE, TEXT("SOFTWARE\\Microsoft\\CTF\\TIP") }, // WI_MACHINE_TIF
{ HKEY_CURRENT_USER, TEXT("Keyboard Layout\\Preload") }, // WI_PRELOAD
{ HKEY_CURRENT_USER, TEXT("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run") }, // WI_RUN
{ HKEY_CURRENT_USER, TEXT("SOFTWARE\\Microsoft\\CTF\\TIP") }, // WI_USER_TIF
{ HKEY_CURRENT_USER, TEXT("SOFTWARE\\Microsoft\\Speech") }, // WI_USER_SPEECH
{ HKEY_CURRENT_USER, TEXT("Control Panel\\Appearance") }, // WI_APPEARANCE
{ HKEY_CURRENT_USER, TEXT("Control Panel\\Colors") }, // WI_COLORS
{ HKEY_CURRENT_USER, TEXT("Control Panel\\Desktop\\WindowMetrics") }, // WI_WINDOW_METRICS
{ HKEY_LOCAL_MACHINE, TEXT("SOFTWARE\\Microsoft\\Speech") }, // WI_MACHINE_SPEECH
{ HKEY_CURRENT_USER, TEXT("Keyboard Layout") }, // WI_KEYBOARD_LAYOUT
{ HKEY_CURRENT_USER, TEXT("SOFTWARE\\Microsoft\\CTF\\Assemblies") }, // WI_ASSEMBLIES
};
// The timer IDs: For delaying ignitions
UINT CRegWatcher::s_nSysColorTimerId = 0;
UINT CRegWatcher::s_nKbdToggleTimerId = 0;
UINT CRegWatcher::s_nRegImxTimerId = 0;
// %WINDIR%/IME/sptip.dll!TF_CreateLangProfileUtil
typedef HRESULT (WINAPI* FN_TF_CreateLangProfileUtil)(ITfFnLangProfileUtil**);
BOOL
CRegWatcher::Init()
{
// NOTE: We don't support Win95/98/Me
#ifdef SUPPORT_WIN9X
if (!(g_dwOsInfo & CIC_OSINFO_NT))
s_WatchEntries[WI_RUN].hRootKey = HKEY_LOCAL_MACHINE;
#endif
// Create some nameless events and initialize them
for (SIZE_T iEvent = 0; iEvent < _countof(s_ahWatchEvents); ++iEvent)
{
s_ahWatchEvents[iEvent] = ::CreateEvent(NULL, TRUE, FALSE, NULL);
InitEvent(iEvent, FALSE);
}
// Internat.exe is an enemy of ctfmon.exe
KillInternat();
UpdateSpTip();
return TRUE;
}
VOID
CRegWatcher::Uninit()
{
for (SIZE_T iEvent = 0; iEvent < _countof(s_ahWatchEvents); ++iEvent)
{
// Close the key
WATCHENTRY& entry = s_WatchEntries[iEvent];
if (entry.hKey)
{
::RegCloseKey(entry.hKey);
entry.hKey = NULL;
}
// Close the event handle
HANDLE& hEvent = s_ahWatchEvents[iEvent];
if (hEvent)
{
::CloseHandle(hEvent);
hEvent = NULL;
}
}
}
// advapi32!RegNotifyChangeKeyValue
typedef LONG (WINAPI *FN_RegNotifyChangeKeyValue)(HKEY, BOOL, DWORD, HANDLE, BOOL);
LONG WINAPI
DelayedRegNotifyChangeKeyValue(
HKEY hKey,
BOOL bWatchSubtree,
DWORD dwNotifyFilter,
HANDLE hEvent,
BOOL fAsynchronous)
{
static FN_RegNotifyChangeKeyValue s_fnRegNotifyChangeKeyValue = NULL;
if (!s_fnRegNotifyChangeKeyValue)
{
HINSTANCE hAdvApi32 = cicGetSystemModuleHandle(TEXT("advapi32.dll"), FALSE);
s_fnRegNotifyChangeKeyValue =
(FN_RegNotifyChangeKeyValue)GetProcAddress(hAdvApi32, "RegNotifyChangeKeyValue");
if (!s_fnRegNotifyChangeKeyValue)
return ERROR_CALL_NOT_IMPLEMENTED;
}
return s_fnRegNotifyChangeKeyValue(hKey, bWatchSubtree, dwNotifyFilter, hEvent, fAsynchronous);
}
BOOL
CRegWatcher::InitEvent(
_In_ SIZE_T iEvent,
_In_ BOOL bResetEvent)
{
// Reset the signal status
if (bResetEvent)
::ResetEvent(s_ahWatchEvents[iEvent]);
// Close once to re-open
WATCHENTRY& entry = s_WatchEntries[iEvent];
if (entry.hKey)
{
::RegCloseKey(entry.hKey);
entry.hKey = NULL;
}
// Open or create a registry key to watch registry key
LSTATUS error;
error = ::RegOpenKeyEx(entry.hRootKey, entry.pszSubKey, 0, KEY_READ, &entry.hKey);
if (error != ERROR_SUCCESS)
{
error = ::RegCreateKeyEx(entry.hRootKey, entry.pszSubKey, 0, NULL, 0,
KEY_ALL_ACCESS, NULL, &entry.hKey, NULL);
if (error != ERROR_SUCCESS)
return FALSE;
}
// Start registry watching
error = DelayedRegNotifyChangeKeyValue(entry.hKey,
TRUE,
REG_NOTIFY_CHANGE_LAST_SET | REG_NOTIFY_CHANGE_NAME,
s_ahWatchEvents[iEvent],
TRUE);
#ifndef NDEBUG
if (error != ERROR_SUCCESS)
OutputDebugStringA("RegNotifyChangeKeyValue failed\n");
#endif
return error == ERROR_SUCCESS;
}
VOID
CRegWatcher::UpdateSpTip()
{
// Post message 0x8002 to "SapiTipWorkerClass" windows
::EnumWindows(EnumWndProc, 0);
// Clear "ProfileInitialized" value
HKEY hKey;
LSTATUS error = ::RegOpenKeyEx(HKEY_CURRENT_USER,
TEXT("SOFTWARE\\Microsoft\\CTF\\Sapilayr"),
0, KEY_WRITE, &hKey);
if (error == ERROR_SUCCESS)
{
DWORD dwValue = 0, cbValue = sizeof(dwValue);
::RegSetValueEx(hKey, TEXT("ProfileInitialized"), NULL, REG_DWORD, (LPBYTE)&dwValue, cbValue);
::RegCloseKey(hKey);
}
// Get %WINDIR%/IME/sptip.dll!TF_CreateLangProfileUtil function
HINSTANCE hSPTIP = cicLoadSystemLibrary(TEXT("IME\\sptip.dll"), TRUE);
FN_TF_CreateLangProfileUtil fnTF_CreateLangProfileUtil =
(FN_TF_CreateLangProfileUtil)::GetProcAddress(hSPTIP, "TF_CreateLangProfileUtil");
if (fnTF_CreateLangProfileUtil)
{
// Call it
ITfFnLangProfileUtil *pProfileUtil = NULL;
HRESULT hr = fnTF_CreateLangProfileUtil(&pProfileUtil);
if ((hr == S_OK) && pProfileUtil) // Success!
{
// Register profile
hr = pProfileUtil->RegisterActiveProfiles();
if (hr == S_OK)
TF_InvalidAssemblyListCacheIfExist(); // Invalidate the assembly list cache
pProfileUtil->Release();
}
}
if (hSPTIP)
::FreeLibrary(hSPTIP);
}
VOID
CRegWatcher::KillInternat()
{
HKEY hKey;
WATCHENTRY& entry = s_WatchEntries[WI_RUN];
// Delete internat.exe from registry "Run" key
LSTATUS error = ::RegOpenKeyEx(entry.hRootKey, entry.pszSubKey, 0, KEY_ALL_ACCESS, &hKey);
if (error == ERROR_SUCCESS)
{
::RegDeleteValue(hKey, TEXT("internat.exe"));
::RegCloseKey(hKey);
}
// Kill the "Indicator" window (that internat.exe creates)
HWND hwndInternat = ::FindWindow(TEXT("Indicator"), NULL);
if (hwndInternat)
::PostMessage(hwndInternat, WM_CLOSE, 0, 0);
}
// Post message 0x8002 to every "SapiTipWorkerClass" window.
// Called from CRegWatcher::UpdateSpTip
BOOL CALLBACK
CRegWatcher::EnumWndProc(
_In_ HWND hWnd,
_In_ LPARAM lParam)
{
TCHAR ClassName[MAX_PATH];
UNREFERENCED_PARAMETER(lParam);
if (::GetClassName(hWnd, ClassName, _countof(ClassName)) &&
_tcsicmp(ClassName, TEXT("SapiTipWorkerClass")) == 0)
{
PostMessage(hWnd, 0x8002, 0, 0); // FIXME: Magic number
}
return TRUE;
}
VOID CALLBACK
CRegWatcher::SysColorTimerProc(
_In_ HWND hwnd,
_In_ UINT uMsg,
_In_ UINT_PTR idEvent,
_In_ DWORD dwTime)
{
UNREFERENCED_PARAMETER(hwnd);
UNREFERENCED_PARAMETER(uMsg);
UNREFERENCED_PARAMETER(idEvent);
UNREFERENCED_PARAMETER(dwTime);
// Cancel the timer
if (s_nSysColorTimerId)
{
::KillTimer(NULL, s_nSysColorTimerId);
s_nSysColorTimerId = 0;
}
TF_PostAllThreadMsg(15, 16);
}
VOID
CRegWatcher::StartSysColorChangeTimer()
{
// Call SysColorTimerProc 0.5 seconds later (Delayed)
if (s_nSysColorTimerId)
{
::KillTimer(NULL, s_nSysColorTimerId);
s_nSysColorTimerId = 0;
}
s_nSysColorTimerId = ::SetTimer(NULL, 0, 500, SysColorTimerProc);
}
VOID CALLBACK
CRegWatcher::RegImxTimerProc(
_In_ HWND hwnd,
_In_ UINT uMsg,
_In_ UINT_PTR idEvent,
_In_ DWORD dwTime)
{
UNREFERENCED_PARAMETER(hwnd);
UNREFERENCED_PARAMETER(uMsg);
UNREFERENCED_PARAMETER(idEvent);
UNREFERENCED_PARAMETER(dwTime);
// Cancel the timer
if (s_nRegImxTimerId)
{
::KillTimer(NULL, s_nRegImxTimerId);
s_nRegImxTimerId = 0;
}
TF_InvalidAssemblyListCache();
TF_PostAllThreadMsg(12, 16);
}
VOID CALLBACK
CRegWatcher::KbdToggleTimerProc(
_In_ HWND hwnd,
_In_ UINT uMsg,
_In_ UINT_PTR idEvent,
_In_ DWORD dwTime)
{
UNREFERENCED_PARAMETER(hwnd);
UNREFERENCED_PARAMETER(uMsg);
UNREFERENCED_PARAMETER(idEvent);
UNREFERENCED_PARAMETER(dwTime);
// Cancel the timer
if (s_nKbdToggleTimerId)
{
::KillTimer(NULL, s_nKbdToggleTimerId);
s_nKbdToggleTimerId = 0;
}
TF_PostAllThreadMsg(11, 16);
}
VOID
CRegWatcher::OnEvent(
_In_ SIZE_T iEvent)
{
InitEvent(iEvent, TRUE);
switch (iEvent)
{
case WI_TOGGLE:
{
// Call KbdToggleTimerProc 0.5 seconds later (Delayed)
if (s_nKbdToggleTimerId)
{
::KillTimer(NULL, s_nKbdToggleTimerId);
s_nKbdToggleTimerId = 0;
}
s_nKbdToggleTimerId = ::SetTimer(NULL, 0, 500, KbdToggleTimerProc);
break;
}
case WI_MACHINE_TIF:
case WI_PRELOAD:
case WI_USER_TIF:
case WI_MACHINE_SPEECH:
case WI_KEYBOARD_LAYOUT:
case WI_ASSEMBLIES:
{
if (iEvent == WI_MACHINE_SPEECH)
UpdateSpTip();
// Call RegImxTimerProc 0.2 seconds later (Delayed)
if (s_nRegImxTimerId)
{
::KillTimer(NULL, s_nRegImxTimerId);
s_nRegImxTimerId = 0;
}
s_nRegImxTimerId = ::SetTimer(NULL, 0, 200, RegImxTimerProc);
break;
}
case WI_RUN: // The "Run" key is changed
{
KillInternat(); // Deny internat.exe the right to live
break;
}
case WI_USER_SPEECH:
case WI_APPEARANCE:
case WI_COLORS:
case WI_WINDOW_METRICS:
{
StartSysColorChangeTimer();
break;
}
default:
{
break;
}
}
}

View File

@@ -0,0 +1,45 @@
/*
* PROJECT: ReactOS CTF Monitor
* LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
* PURPOSE: Registry watcher
* COPYRIGHT: Copyright 2023 Katayama Hirofumi MZ <katayama.hirofumi.mz@gmail.com>
*/
#pragma once
struct WATCHENTRY
{
HKEY hRootKey;
LPCTSTR pszSubKey;
HKEY hKey;
};
#define WATCHENTRY_MAX 12
struct CRegWatcher
{
static HANDLE s_ahWatchEvents[WATCHENTRY_MAX];
static WATCHENTRY s_WatchEntries[WATCHENTRY_MAX];
static UINT s_nSysColorTimerId, s_nKbdToggleTimerId, s_nRegImxTimerId;
static BOOL Init();
static VOID Uninit();
static BOOL InitEvent(_In_ SIZE_T iEvent, _In_ BOOL bResetEvent);
static VOID UpdateSpTip();
static VOID KillInternat();
static VOID StartSysColorChangeTimer();
static VOID OnEvent(_In_ SIZE_T iEvent);
protected:
static BOOL CALLBACK
EnumWndProc(_In_ HWND hWnd, _In_ LPARAM lParam);
static VOID CALLBACK
SysColorTimerProc(_In_ HWND hWnd, _In_ UINT uMsg, _In_ UINT_PTR idEvent, _In_ DWORD dwTime);
static VOID CALLBACK
KbdToggleTimerProc(_In_ HWND hWnd, _In_ UINT uMsg, _In_ UINT_PTR idEvent, _In_ DWORD dwTime);
static VOID CALLBACK
RegImxTimerProc(_In_ HWND hWnd, _In_ UINT uMsg, _In_ UINT_PTR idEvent, _In_ DWORD dwTime);
};

View File

@@ -0,0 +1,365 @@
/*
* PROJECT: ReactOS CTF Monitor
* LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
* PURPOSE: Providing Language Bar front-end
* COPYRIGHT: Copyright 2023 Katayama Hirofumi MZ <katayama.hirofumi.mz@gmail.com>
*/
#include "precomp.h"
#include "CRegWatcher.h"
#include "CLoaderWnd.h"
// kernel32!SetProcessShutdownParameters
typedef BOOL (WINAPI *FN_SetProcessShutdownParameters)(DWORD, DWORD);
FN_SetProcessShutdownParameters g_fnSetProcessShutdownParameters = NULL;
// kernel32!GetSystemWow64DirectoryA
typedef UINT (WINAPI *FN_GetSystemWow64DirectoryA)(LPSTR, UINT);
FN_GetSystemWow64DirectoryA g_fnGetSystemWow64DirectoryA = NULL;
// kernel32!GetSystemWow64DirectoryW
typedef UINT (WINAPI *FN_GetSystemWow64DirectoryW)(LPWSTR, UINT);
FN_GetSystemWow64DirectoryW g_fnGetSystemWow64DirectoryW = NULL;
HINSTANCE g_hInst = NULL; // The application instance
HINSTANCE g_hKernel32 = NULL; // The "kernel32.dll" instance
UINT g_uACP = CP_ACP; // The active codepage
BOOL g_fWinLogon = FALSE; // Is it a log-on process?
HANDLE g_hCicMutex = NULL; // The Cicero mutex
BOOL g_bOnWow64 = FALSE; // Is the app running on WoW64?
BOOL g_fNoRunKey = FALSE; // Don't write registry key "Run"?
BOOL g_fJustRunKey = FALSE; // Just write registry key "Run"?
DWORD g_dwOsInfo = 0; // The OS version info. See cicGetOSInfo
CLoaderWnd* g_pLoaderWnd = NULL; // Tipbar loader window
static VOID
ParseCommandLine(
_In_ LPCTSTR pszCmdLine)
{
g_fNoRunKey = g_fJustRunKey = FALSE;
for (LPCTSTR pch = pszCmdLine; *pch; ++pch)
{
// Skip space
while (*pch == TEXT(' '))
++pch;
if (*pch == TEXT('\0'))
return;
if ((*pch == TEXT('-')) || (*pch == TEXT('/')))
{
++pch;
switch (*pch)
{
case TEXT('N'): case TEXT('n'): // Found "/N" option
g_fNoRunKey = TRUE;
break;
case TEXT('R'): case TEXT('r'): // Found "/R" option
g_fJustRunKey = TRUE;
break;
case UNICODE_NULL:
return;
default:
break;
}
}
}
}
static VOID
WriteRegRun(VOID)
{
if (g_fNoRunKey) // If "/N" option is specified
return; // Don't write
// Open "Run" key
HKEY hKey;
LSTATUS error = ::RegCreateKey(HKEY_CURRENT_USER,
TEXT("Software\\Microsoft\\Windows\\CurrentVersion\\Run"),
&hKey);
if (error != ERROR_SUCCESS)
return;
// Write the module path
CicSystemModulePath ModPath;
if (ModPath.Init(TEXT("ctfmon.exe"), FALSE))
{
DWORD cbData = (ModPath.m_cchPath + 1) * sizeof(TCHAR);
::RegSetValueEx(hKey, TEXT("ctfmon.exe"), 0, REG_SZ, (BYTE*)ModPath.m_szPath, cbData);
}
::RegCloseKey(hKey);
}
static HRESULT
GetGlobalCompartment(
_In_ REFGUID guid,
_Inout_ ITfCompartment **ppComp)
{
*ppComp = NULL;
ITfCompartmentMgr *pCompMgr = NULL;
HRESULT hr = TF_GetGlobalCompartment(&pCompMgr);
if (FAILED(hr))
return hr;
if (!pCompMgr)
return E_FAIL;
hr = pCompMgr->GetCompartment(guid, ppComp);
pCompMgr->Release();
return hr;
}
static HRESULT
SetGlobalCompartmentDWORD(
_In_ REFGUID guid,
_In_ DWORD dwValue)
{
HRESULT hr;
VARIANT vari;
ITfCompartment *pComp;
hr = GetGlobalCompartment(guid, &pComp);
if (FAILED(hr))
return hr;
V_VT(&vari) = VT_I4;
V_I4(&vari) = dwValue;
hr = pComp->SetValue(0, &vari);
pComp->Release();
return hr;
}
static BOOL
CheckX64System(
_In_ LPTSTR lpCmdLine)
{
// Is the system x64?
SYSTEM_INFO SystemInfo;
::GetSystemInfo(&SystemInfo);
if (SystemInfo.wProcessorArchitecture != PROCESSOR_ARCHITECTURE_IA64 ||
SystemInfo.wProcessorArchitecture != PROCESSOR_ARCHITECTURE_AMD64)
{
return FALSE;
}
// Get GetSystemWow64DirectoryW function
g_hKernel32 = cicGetSystemModuleHandle(TEXT("kernel32.dll"), FALSE);
#ifdef UNICODE
g_fnGetSystemWow64DirectoryW =
(FN_GetSystemWow64DirectoryW)::GetProcAddress(g_hKernel32, "GetSystemWow64DirectoryW");
if (!g_fnGetSystemWow64DirectoryW)
return FALSE;
#else
g_fnGetSystemWow64DirectoryA =
(FN_GetSystemWow64DirectoryA)::GetProcAddress(g_hKernel32, "GetSystemWow64DirectoryA");
if (!g_fnGetSystemWow64DirectoryA)
return FALSE;
#endif
// Build WoW64 ctfmon.exe pathname
TCHAR szPath[MAX_PATH];
#ifdef UNICODE
UINT cchPath = g_fnGetSystemWow64DirectoryW(szPath, _countof(szPath));
#else
UINT cchPath = g_fnGetSystemWow64DirectoryA(szPath, _countof(szPath));
#endif
if (!cchPath && FAILED(StringCchCat(szPath, _countof(szPath), TEXT("\\ctfmon.exe"))))
return FALSE;
// Create a WoW64 ctfmon.exe process
PROCESS_INFORMATION pi;
STARTUPINFO si = { sizeof(si) };
si.wShowWindow = SW_SHOWMINNOACTIVE;
if (!::CreateProcess(szPath, lpCmdLine, NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi))
return FALSE;
::CloseHandle(pi.hThread);
::CloseHandle(pi.hProcess);
return TRUE;
}
static BOOL
InitApp(
_In_ HINSTANCE hInstance,
_In_ LPTSTR lpCmdLine)
{
g_hInst = hInstance; // Save the instance handle
g_bOnWow64 = cicIsWow64(); // Is the current process on WoW64?
cicGetOSInfo(&g_uACP, &g_dwOsInfo); // Get OS info
// Create a mutex for Cicero
g_hCicMutex = TF_CreateCicLoadMutex(&g_fWinLogon);
if (!g_hCicMutex)
return FALSE;
// Write to "Run" registry key for starting up
WriteRegRun();
// Call SetProcessShutdownParameters if possible
if (g_dwOsInfo & CIC_OSINFO_NT)
{
g_hKernel32 = cicGetSystemModuleHandle(TEXT("kernel32.dll"), FALSE);
g_fnSetProcessShutdownParameters =
(FN_SetProcessShutdownParameters)
::GetProcAddress(g_hKernel32, "SetProcessShutdownParameters");
if (g_fnSetProcessShutdownParameters)
g_fnSetProcessShutdownParameters(0xF0, SHUTDOWN_NORETRY);
}
// Start text framework
TF_InitSystem();
// Start watching registry if x86/x64 native
if (!g_bOnWow64)
CRegWatcher::Init();
// Create Tipbar loader window
g_pLoaderWnd = new(cicNoThrow) CLoaderWnd();
if (!g_pLoaderWnd || !g_pLoaderWnd->Init())
return FALSE;
if (g_pLoaderWnd->CreateWnd())
{
// Go to the bottom of the hell
::SetWindowPos(g_pLoaderWnd->m_hWnd, HWND_BOTTOM, 0, 0, 0, 0,
SWP_NOACTIVATE | SWP_NOMOVE | SWP_NOSIZE);
}
// Display Tipbar Popup if x86/x64 native and necessary
if (!g_bOnWow64)
GetPopupTipbar(g_pLoaderWnd->m_hWnd, g_fWinLogon);
// Do x64 stuffs
CheckX64System(lpCmdLine);
return TRUE;
}
VOID
UninitApp(VOID)
{
// Close Tipbar Popup
ClosePopupTipbar();
// Close the mutex
::CloseHandle(g_hCicMutex);
g_hCicMutex = NULL;
// Quit watching registry if x86/x64 native
if (!g_bOnWow64)
CRegWatcher::Uninit();
}
static INT
DoMainLoop(VOID)
{
MSG msg;
if (g_bOnWow64) // Is the current process on WoW64?
{
// Just a simple message loop
while (::GetMessage(&msg, NULL, 0, 0))
{
::TranslateMessage(&msg);
::DispatchMessage(&msg);
}
return (INT)msg.wParam;
}
// Open the existing event by the name
HANDLE hSwitchEvent = ::OpenEvent(SYNCHRONIZE, FALSE, TEXT("WinSta0_DesktopSwitch"));
// The target events to watch
HANDLE ahEvents[WATCHENTRY_MAX + 1];
// Borrow some handles from CRegWatcher
CopyMemory(ahEvents, CRegWatcher::s_ahWatchEvents, WATCHENTRY_MAX * sizeof(HANDLE));
ahEvents[WI_DESKTOP_SWITCH] = hSwitchEvent; // Add it
// Another message loop
for (;;)
{
// Wait for target signal
DWORD dwWait = ::MsgWaitForMultipleObjects(_countof(ahEvents), ahEvents, 0, INFINITE,
QS_ALLINPUT);
if (dwWait == (WAIT_OBJECT_0 + _countof(ahEvents))) // Is input available?
{
// Do the events
while (::PeekMessage(&msg, NULL, 0, 0, PM_REMOVE))
{
if (msg.message == WM_QUIT)
goto Quit;
::TranslateMessage(&msg);
::DispatchMessage(&msg);
}
}
else if (dwWait == (WAIT_OBJECT_0 + WI_DESKTOP_SWITCH)) // Desktop switch?
{
SetGlobalCompartmentDWORD(GUID_COMPARTMENT_SPEECH_OPENCLOSE, 0);
::ResetEvent(hSwitchEvent);
}
else // Do the other events
{
CRegWatcher::OnEvent(dwWait - WAIT_OBJECT_0);
}
}
Quit:
::CloseHandle(hSwitchEvent);
return (INT)msg.wParam;
}
// The main function for Unicode Win32
EXTERN_C INT WINAPI
_tWinMain(
HINSTANCE hInstance,
HINSTANCE hPrevInst,
LPTSTR lpCmdLine,
INT nCmdShow)
{
UNREFERENCED_PARAMETER(hPrevInst);
UNREFERENCED_PARAMETER(nCmdShow);
// Parse command line
ParseCommandLine(lpCmdLine);
if (g_fJustRunKey) // If "/R" option is specified
{
// Just write registry and exit
WriteRegRun();
return 1;
}
// Initialize the application
if (!InitApp(hInstance, lpCmdLine))
return 0;
// The main loop
INT ret = DoMainLoop();
// Clean up the loader
if (g_pLoaderWnd)
{
delete g_pLoaderWnd;
g_pLoaderWnd = NULL;
}
// Un-initialize app and text framework
if (!CLoaderWnd::s_bUninitedSystem)
{
UninitApp();
TF_UninitSystem();
}
return ret;
}

View File

@@ -0,0 +1,19 @@
/*
* PROJECT: ReactOS CTF Monitor
* LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
* PURPOSE: Providing Language Bar front-end
* COPYRIGHT: Copyright 2023 Katayama Hirofumi MZ <katayama.hirofumi.mz@gmail.com>
*/
#include <windef.h>
#include "resource.h"
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
#define REACTOS_STR_FILE_DESCRIPTION "ReactOS CTF Monitor"
#define REACTOS_STR_INTERNAL_NAME "ctfmon"
#define REACTOS_STR_ORIGINAL_FILENAME "ctfmon.exe"
#include <reactos/version.rc>
IDI_MAIN ICON "res/ctfmon.ico"

View File

@@ -0,0 +1,47 @@
/*
* PROJECT: ReactOS CTF Monitor
* LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
* PURPOSE: Providing Language Bar front-end
* COPYRIGHT: Copyright 2023 Katayama Hirofumi MZ <katayama.hirofumi.mz@gmail.com>
*/
#pragma once
#define WIN32_NO_STATUS
#include <windows.h>
#include <shellapi.h>
#include <shlwapi.h>
#include <stdlib.h>
#include <tchar.h>
#include <strsafe.h>
#include <msctf.h>
#include <ctfutb.h>
#include <ctffunc.h>
#include <cicbase.h>
#include <cicutb.h>
#include "resource.h"
extern HINSTANCE g_hInst;
extern BOOL g_bOnWow64;
extern BOOL g_fWinLogon;
extern DWORD g_dwOsInfo;
VOID UninitApp(VOID);
typedef enum WATCH_INDEX
{
WI_TOGGLE = 0,
WI_MACHINE_TIF = 1,
WI_PRELOAD = 2,
WI_RUN = 3,
WI_USER_TIF = 4,
WI_USER_SPEECH = 5,
WI_APPEARANCE = 6,
WI_COLORS = 7,
WI_WINDOW_METRICS = 8,
WI_MACHINE_SPEECH = 9,
WI_KEYBOARD_LAYOUT = 10,
WI_ASSEMBLIES = 11,
WI_DESKTOP_SWITCH = 12,
} WATCH_INDEX;

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

View File

@@ -0,0 +1,4 @@
#pragma once
/* Icons */
#define IDI_MAIN 100

View File

@@ -1,9 +1,8 @@
/*
* PROJECT: ReactX Diagnosis Application
* LICENSE: LGPL - See COPYING in the top level directory
* FILE: base/applications/dxdiag/ddtest.c
* PURPOSE: ReactX DirectDraw tests
* COPYRIGHT: Copyright 2008 Kamil Hornicek
* COPYRIGHT: Copyright 2008 Kamil Horníček
*
*/

View File

@@ -72,8 +72,8 @@ BEGIN
EDITTEXT IDC_STATIC_ADAPTER_MEM, 95, 50, 150, 10, ES_LEFT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP | ES_AUTOHSCROLL
EDITTEXT IDC_STATIC_ADAPTER_MODE, 95, 60, 150, 10, ES_LEFT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP | ES_AUTOHSCROLL
EDITTEXT IDC_STATIC_ADAPTER_MONITOR, 95, 70, 150, 10, ES_LEFT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP | ES_AUTOHSCROLL
GROUPBOX "Modúl-pilot", IDC_STATIC, 260, 0, 197, 95
RTEXT "Modulul-pilot primar:", IDC_STATIC, 275, 10, 55, 10
GROUPBOX "Driver", IDC_STATIC, 260, 0, 197, 95
RTEXT "Driver primar:", IDC_STATIC, 275, 10, 55, 10
RTEXT "Versiune:", IDC_STATIC, 275, 20, 55, 10
RTEXT "Dată:", IDC_STATIC, 275, 30, 55, 10
RTEXT "Semnăt. WHQL:", IDC_STATIC, 275, 40, 55, 10
@@ -120,7 +120,7 @@ BEGIN
EDITTEXT IDC_STATIC_DSOUND_PRODUCTID, 95, 40, 150, 10, ES_LEFT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP | ES_AUTOHSCROLL
EDITTEXT IDC_STATIC_DSOUND_TYPE, 95, 50, 150, 10, ES_LEFT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP | ES_AUTOHSCROLL
EDITTEXT IDC_STATIC_DSOUND_STANDARD, 95, 60, 150, 10, ES_LEFT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP | ES_AUTOHSCROLL
GROUPBOX "Modúl-pilot", IDC_STATIC, 260, 0, 197, 95
GROUPBOX "Driver", IDC_STATIC, 260, 0, 197, 95
RTEXT "Nume:", IDC_STATIC, 275, 10, 55, 10
RTEXT "Versiune:", IDC_STATIC, 275, 20, 55, 10
RTEXT "Dată:", IDC_STATIC, 275, 30, 55, 10
@@ -220,7 +220,7 @@ BEGIN
IDS_DEVICE_CONTROLLER "ID controlor"
IDS_DEVICE_MANUFACTURER "ID producător"
IDS_DEVICE_PRODUCT "ID produs"
IDS_DEVICE_FORCEFEEDBACK "Forțează reacția modulului-pilot"
IDS_DEVICE_FORCEFEEDBACK "Forțează reacția driverului"
IDS_NOT_APPLICABLE "n/a"
IDS_OPTION_YES "Da"
IDS_DIRECTPLAY_COL_NAME1 "Nume"

Some files were not shown because too many files have changed in this diff Show More