- Once doing that, including more headers to PCH, not just vcl.h
- Clang won't need explicit include, but we will probably keep it anyway.
- #pragma hdrstop has no effect in Clang
Source commit: adc8a268b6907c5337ccaa430cca7526793a3019
Additionally, completely dropping the PreserveFileName. Even from Copy dialog, where it might had some use in the past, but now it does seem to be doing anything useful. The Directory includes a trailing backslash, so there's no "filename".
Source commit: ddde0fd680ac03a120e3df88f82767cb5382e44d
Mostly
– explicit static global variables
– const, sign and down casts safety
– same-named variables in nested scopes
– incorrectly identified uninitialized variables
– semicolon after function implementation
– unused variables, fields, arguments and macros
– exact include filename case
– field initialization order
– typename use
– struct vs class declarations
– incorrectly identified uninitialized variables
– refactoring to solve Clang internal compiler error when using new variable in __finally block
Source commit: 3da995ff5169eefcfe3b3b7cc0d019c660096c07
Buttons done in c1ccbe1e
Might also revert the combobox Style changes in TLoginDialog from a90827e6, if they have some negative side effects.
The dark mode now works without the change, if system theme is dark.
Part of Issue 1696.
Source commit: 2ce0e4b4c87878113010a06de4d51e1caf20df86
... and did already in XE6.
Getting rid of TPasswordEdit will also make it easier to subclass edits by reducing number of classes in use.
Source commit: 0f32c7a6cdb1bab0c966215770ea923cfdae5c58
https://winscp.net/tracker/2345
Comboboxes with csDropDownList style do not reflect the Color, but do with csOwnerDrawFixed.
csOwnerDrawFixed seems to behave the same, except for the height, which needs to be explicitly set slightly higher
Buttons are still white - they'd have to be custom-drawn (using "Windows10 Dark" custom style)?)
SetParentColor is probably obsoleted by 3a887624
Source commit: 851489ffff36845467f664a8a4a08d0556c1d2eb
Reverts e55f27da
Fixing some anchors and tab order on the way
Dialogs (and controls with specific width or height) are now about 10% wider
Note that main form already used the Segoe UI:9 by explicitly using UseDesktopFont for most/all of its controls
Layout rules
- follow IDE design guidelines in general
- controls start at 8x8, but at 9x9 in group boxes and 22v if group has title
- right and bottom padding in groupbox is the same as left padding
-for checkboxes the bottom padding of the checkmark is the same as left padding = 10
- buttons are 80x25 by default, with +14v with dropdown
- checkboxes/radiobuttons are +2h
- labels are 15 high, textboxes/comboxes 23
- indentation is controls under checkboxes is +16h
Source commit: 09a558e92af838e142d3624cb433cc052782881c
- Not sure if the "push -vi" workaround was obsoleted by BCB11, but it does not seem to be needed anymore
- TCustomPathLabel.CMStyleChanged workaround was obsoleted by change in TCustomLabel.CMStyleChanged
- status bar scaling is not implemented in TCustomStatusBar.ChangeScale
Source commit: 7de59e2226d9d96aecb0fc78cef01a6bd6fce1d6
With Tahoma font it does not work nicely. But the news browser control on Update box works well. It turned out to be due to Segoe UI font.
While it can just be coincidence, we want to move to Segoe UI anyway. So let's do it for About dialog already now.
Source commit: 3e6f173cb37d2e594de5d3bb2fdc2b6eec0e08d5
– Control's Canvas does not have Font updated when painting, so it needs to be set explicitly in some places
– Page control drawing was not only incompatible, but broken in general, so it was refactored – giving up on trying to make it 100% mimic system drawing
– CM_DPICHANGED replaced with OnAfterMonitorDpiChanged for form-level scaling. Not really necessary, just for style. Though it is not called for initial resize (at least when starting on primary monitor with temporary non-system DPI)
– OnResize is not called for DPI change, so in some instances, some OnResize call was duplicated in OnAfterMonitorDpiChanged/CM_DPICHANGED
– Scaling of thirdparty box still does not work correctly (but Updates box works??)
– Scaling on primary monitor with temporary non-system DPI is bad
– TTreeView enabled DPI scaling when using Images that is not Scaled
– Discaring obsolete FSiteButtonsPadding workaround
– Controls programmatically added to form are automatically scaled to the form's DPI (relevant for message boxes)
Source commit: a86dddbfada30a5bc409687489bdcd12842050af
Comments:
- .res files seem to be linked automatically, so explicit entries in project files caused duplicates
- JCL updated for compatibility with BCB11 (jcld28win32.inc obtained by running JCJ installer [uninstalled afterwards])
Source commit: ec28d10a0bbb346ed2bb3940aed37e777342e663