View Single Post
  #13  
Old 27-04-2026, 13:13
audiofeel's Avatar
audiofeel audiofeel is offline
Registered User
 
Join Date: Jan 2013
Location: Russia
Posts: 51
Thanks: 480
Thanked 1,090 Times in 377 Posts
audiofeel is on a distinguished road
Arrow A small update with new features and expanded capabilities.

A small update with new features and expanded capabilities.

Windows 11 detection feature has been added
Code:
function IsWindows11: Boolean;
  external 'IsWindows11@files:FMXBridge.dll stdcall delayload';
Code:
if IsWindows11 then
begin
  FMXForm.FCreateTabbedForm(WizardForm.Handle, IsWinDark, True);
end
else
begin
  if IsWinDark then
    FMXForm.FCreateBlurForm(WizardForm.Handle, ColorSetOpacity($FF000000, 0.7), True)
  else
    FMXForm.FCreateBlurForm(WizardForm.Handle, ColorSetOpacity($FFFFFFFF, 0.7), True);
end;

if IsWinDark then
  FMXForm.LoadStyleFromFile(ExtractAndLoad('dark.style'), GetWinAccentColor)
else
  FMXForm.LoadStyleFromFile(ExtractAndLoad('light.style'), GetWinAccentColor);
A new FNumberBox component has been added
numeric wrapper with advanced settings:

Basic methods:
Code:
procedure DecimalDigits(FDigits: Integer);
procedure HorzIncrement(FValue: Single);
procedure VertIncrement(FValue: Single);
procedure VerticalMode(FEnabled: Boolean);
procedure Max(FMax: Single);
procedure Min(FMin: Single);
procedure Value(FValue: Single);
procedure ValueType(FFloat: Boolean);

function GetHorzIncrement: Single;
function GetVertIncrement: Single;
function IsVerticalMode: Boolean;
function GetValue: Single;
Extended FUserInfo wrapper
The user interface has been updated: (upon request, account type localization was required)

Code:
type
  FUserInfo = interface(IUnknown)
    '{FF655E8A-2C5A-4DF4-80EB-81CBAFD100C1}'
    function Name: WideString;
    function Domain: WideString;
    function ProfilePath: WideString;
    function UserType: TUserType;
    function IsElevated: Boolean;
  end;
Code:
TUserType = (utUnknown, utUser, utAdmin, utGuest, utSystem);
Code:
function UserTypeToStr(AType: TUserType): string;
begin
  case AType of
    utUser:   Result := 'User';
    utAdmin:  Result := 'Admin';
    utGuest:  Result := 'Guest';
    utSystem: Result := 'System';
  else
    Result := 'Unknown';
  end;
end;
Other changes
Minor internal edits and stabilization of component operation.
__________________
https://t.me/FMXInno
Reply With Quote
The Following User Says Thank You to audiofeel For This Useful Post:
hitman797 (16-05-2026)