-
Controls::Edit— EDIT control customization with dark theme matchingControls::Button:- Custom
WinProcwithWM_ERASEBKGND(dark background),WM_PAINT(flat border),WM_NCPAINTpassthrough Subclass/UnsubclassAPI, removesWS_EX_CLIENTEDGEAutoHideScrollbar— hides vertical scrollbar when text fits the client area- Applied to input fields in
PromptDialogProcandMessageBoxDialogProc2
- Custom
-
Controls::Tooltip— Public reusable tooltip popup control:Create,SetText,SetPosition,DestroyAPI- Dark-themed round-cornered window (
RoundRectborder + clip region for text)
-
CtrlDraw::DrawFrame— Utility to draw a flat (non-rounded) rectangle frame with 1px border -
DynamicColorPicker— New non-blocking dynamic color picker dialog:- HSL colour wheel (2D canvas: saturation × lightness)
- Hue strip + alpha strip sliders
- RGBA / HSL / HEX numeric input fields
- Old vs new color preview
- Screen color picker (eyedropper tool)
- Runs in a separate thread; uses
Controls::Button::SubclassandControls::Edit::Subclass - Factory function:
CreateDynamicColorPicker(title, r, g, b, a, hParent)
- Dark theme consistency — All hardcoded
RGB()colors inPromptDialogProc,MessageBoxDialogProc2,DynamicProgressBar, andDynamicSliderreplaced withtheme.*colors PromptDialogProc— Now callsControls::InitWindowColor,Controls::Button::Subclasson OK/Cancel buttons, andControls::Edit::Subclasson the input field. All color handlers (WM_CTLCOLOREDIT,WM_CTLCOLORSTATIC,WM_CTLCOLORBTN) use theme colors.MessageBoxDialogProc2— AddedWM_CTLCOLORSTATIChandler (forES_READONLYEDIT), all color handlers use theme colors.Controls::Edit::Subclassapplied.DynamicSlider— Removed staticValue:label; current value shown as a tooltip thumb when dragging. Slider track moved up to fill the space.- Build flags — Added
-ldwmapilinker flag (forDwmSetWindowAttribute)