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.
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
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).
- 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.
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
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".
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
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.)
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.
- 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>
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.
* [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
- 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
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
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.
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.
- 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.
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.aspxhttps://technet.microsoft.com/en-us/library/cc940805.aspx
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.
- 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
- 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
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.
* 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.
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.
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>
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
* 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
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.
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.
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.
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.
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.
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).