It may happen that the time-zone information in the registry key
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation
contains an empty StandardName / DaylightName, or is too long for the
standard maximum 32-character length, and therefore is returned empty.
And/or it may happen as well that some of the standard names (value "Std")
present in some of the time zones listed in
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones
are similarly too long, and therefore are returned as empty strings.
In case this happens, perform comparisons instead with the numerical
values Bias, StandardBias, DaylightBias, StandardDate and DaylightDate
in order to find a match.
It is interesting to note also that in Vista+ there is an additional
REG_SZ value "TimeZoneKeyName" in
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation
that allows to directly find a match in the time zones list in
"Windows NT\CurrentVersion\Time Zones".
This small win32 library provides time-zone utility wrappers around
Win32 functions, that are used by different ReactOS modules such as
timedate.cpl, syssetup.dll, and a possible future 'tzutil' tool.
The code has been extracted from the common code found in both
timedate.cpl and syssetup.dll.
This occurred in the file explorer because the menu isn't destroyed and recreated each time, so the menu item, once checked, will stay checked forever. We must call CheckMenuItem with MF_UNCHECKED to clear the check when necessary
The return result of ParseNow was never checked, but contained useful information on what type of error may have occurred. If the error is an issue with the path not existing the explorer will now show an error message notifying the user of the problem instead of silently failing.
Note: Shell32 does not properly return ERROR_INVALID_DRIVE when the drive path does not exist. For that reason, it is still possible to browse to a non-existent drive. However, once shell32 is patched this code will work properly, as it checks for both ERROR_INVALID_DRIVE and ERROR_FILE_NOT_FOUND.
Some 'BindToObject' methods are incomplete, and in some cases relative paths are simply not possible (especially in special folders such as the desktop)
-Avoid text truncations regarding the checkbox
in a uniform way
-Reduce chance of text truncations for a button
in a uniform way
-Fix es-ES dlg layout and harmonize its dlg Size
with other languages
-de-DE fix double accelerator
-Some inspiration from de-DE which I improved years ago
-Avoid text truncations and control overlapping that
happened in almost all other languages
-Increase the size of the listView for all except es-ES & pt-PT
-es-ES & pt-PT had different dlgs sizes, I only slightly tweaked
those therefore
-In sum this brings the RCs much closer to each other
-Unrelated: fix a white-space-typo we had in some but not all RCs
DD_LAN_NETSTATUS & IDD_LAN_NETSTATUSADVANCED
Reason for the change:
-dlgs sizes did differ (between langs and also within same lang)
-groupboxes sizes did differ (between langs and also within same lang)
-tabbing through both dlgs looked poorly therefore in almost all langs
(margin and groupbox jumping)
-in some languages we had truncation
-in some languages we had unintended scaling for the icon
-after the change all controls and dlgs have the exact same size for all languages,
I managed to achieve the common detominator for
everything that looks good in all languages and guarantees to not introduce any truncation
Only exception is the icons horizontal position which may require individual tweaking!
* [TRANSLATION] New PT translation to inetcpl
* [TRANSLATION] Fix SUBLANG in file cpl/joy/lang/pt-PT.rc to SUBLAG_NEUTRAL
* [TRANSLATION] New PT translation to cpl/mmsys/lang/pt-PT.rc
* [TRANSLATION] Fix SUBLANG in cryptui_Pt.rc file