Difference between revisions of "Win32MenuStyler"

From Lazarus wiki
(About)
(About: pic)
Line 3: Line 3:
 
This is helper unit win32menustyler, which helps to theme TMainMenu for Lazarus Windows apps.
 
This is helper unit win32menustyler, which helps to theme TMainMenu for Lazarus Windows apps.
 
Sometimes app has dark theme, so it's needed to make TMainMenu also dark.
 
Sometimes app has dark theme, so it's needed to make TMainMenu also dark.
 +
 +
[[File:win32menustyler.png]]
  
 
Author: Alexey Torgashin
 
Author: Alexey Torgashin

Revision as of 17:05, 18 September 2020

About

This is helper unit win32menustyler, which helps to theme TMainMenu for Lazarus Windows apps. Sometimes app has dark theme, so it's needed to make TMainMenu also dark.

win32menustyler.png

Author: Alexey Torgashin

License: MPL 2.0 or LGPL

Usage

  • add "uses win32menustyler"
  • in form's OnCreate, call
procedure TForm1.FormCreate(Sender: TObject);
begin
  MenuStyler.ApplyToForm(Self);
end;

Unit gives global var to change all theming details:

type
  TWin32MenuStylerTheme = record
    ColorBk: TColor;
    ColorBkSelected: TColor;
    ColorFont: TColor;
    ColorFontDisabled: TColor;
    CharCheckmark: Widechar;
    CharRadiomark: Widechar;
    FontName: string;
    FontSize: integer;
    IndentX: integer;
    IndentX2: integer;
    IndentY: integer;
  end;
var
  MenuStylerTheme: TWin32MenuStylerTheme;

Download

GitHub: https://github.com/Alexey-T/Win32MenuStyler