FileForums

FileForums (https://fileforums.com/index.php)
-   Conversion Tutorials (https://fileforums.com/forumdisplay.php?f=55)
-   -   FMXInno - Windows Fluent Design Installer UI for Inno (https://fileforums.com/showthread.php?t=104852)

Gummy Bear 18-05-2024 07:20

Quote:

Originally Posted by BLACKFIRE69 (Post 503474)
Modern FitGirl Installer for Windows 11+













.

Looks very cool, is there a script with working functionality?

ScOOt3r 18-05-2024 08:12

@GummyBear yes there is a script that works just fine, its on the first page, it has several installers in it so choose the one you like. if you still want the fitgirl installer then look for the fitgirl script. this is currently my favourite script.

ScOOt3r

Gummy Bear 19-05-2024 00:35

Quote:

Originally Posted by ScOOt3r (Post 504544)
@GummyBear yes there is a script that works just fine, its on the first page, it has several installers in it so choose the one you like. if you still want the fitgirl installer then look for the fitgirl script. this is currently my favourite script.

ScOOt3r

Thank you, is there a translation into Russian?

BLACKFIRE69 19-05-2024 05:10

FMXInno
 
guys, if you recall, in a previous build of FMXInno, even though 'SetActiveThemeModeAwareness' is enabled, if the installer is minimized, i ignore the installer’s color mode change. this means that for 'SetActiveThemeModeAwareness' to take effect, the installer shouldn't be minimized.

someone asked me if this is an issue with FMXInno. No, FMXInno is just fine, but there's an issue that comes from Windows itself. i'm not a Windows developer, so i can't fix it. therefore, FMXInno ignores 'SetActiveThemeModeAwareness' if the installer is minimized.

check the screenshot below:



.

BLACKFIRE69 19-05-2024 10:24

Quote:

Originally Posted by Fak Eid (Post 504540)
17th May version has some more issues.
But I figured, in 14th May version. This anomaly is only happening in InstallPage @1080p 125% resolution only which is FCustomFluentWindow with both FCreateBlankForm only(not any other FCreate functions).

For the rest other resolutions, it is working fine. Sharing you files to look and please let me know if I'm doing something wrong as well. I'll try correcting it from next time as well. [This is just dummy code set]

Required Files in 'Game' folder.
FMX files in Files/Modules
Section to review: Search by keyword 'InstallPage'

PS: Please also add GetSelectedDiskName (to get the name of the selected drive) on FDiskList.


  • adding compatibility for higher DPI is a headache, but anyway, we've to deal with it.
  • this update will fix the issue that shows the titlebar at higher DPI settings (>= 125%).
  • feel free to report back if there are other issues.

(Tested at 125% scale)

Fak Eid 20-05-2024 12:09

1 Attachment(s)
Quote:

Originally Posted by BLACKFIRE69 (Post 504565)
  • adding compatibility for higher DPI is a headache, but anyway, we've to deal with it.
  • this update will fix the issue that shows the titlebar at higher DPI settings (>= 125%).
  • feel free to report back if there are other issues.

(Tested at 125% scale)

I have actually figured out the reason why the header was displayed. Maybe, it can help you debug better. It was due to the content overflow (leak) out the FCustomFluentWindow at different scales.

The Piece of code which I tested in the video @1080p 125%:
Code:

  { Exit Form }
  ExitForm.FCreateBlankForm(FMXForm.HandleHWND, $FF161616, ExtractAndLoad('exit.jpg'));
  ExitForm.Height(160);      //If you make this 165, the form will display fine
  ExitForm.Width(420);
  ExitForm.DisableFluentEffects;

  ExitShadowLayer.FCreate(ExitForm.Handle);
  ExitShadowLayer.Align(Client);
  ExitShadowLayer.FillColor(ALBlack);
  ExitShadowLayer.Opacity(0.5);
  ExitShadowLayer.HitTest(False);

  ExitLbl[2].FCreate(ExitForm.Handle);
  ExitLbl[2].Text('Quit Installer');
  ExitLbl[2].TextSetting(False, txLeading, txLeading);
  ExitLbl[2].FontSetting('Segoe UI SemiLight', VCLFontSizeToFMX(15), {#TextColor});
  ExitLbl[2].AutoSize(True);
  ExitLbl[2].Position(20, 10);
  ExitLbl[2].HitTest(False);

  ExitLbl[3].FCreate(ExitForm.Handle);
  ExitLbl[3].Text('Setup is not complete. If you exit now, the progam will not be installed.' + #13 + 'Exit now?');
  ExitLbl[3].TextSetting(True, txLeading, txLeading);
  ExitLbl[3].FontSetting('Segoe UI', VCLFontSizeToFMX(9), ALWhite);
  ExitLbl[3].AutoSize(False);
  ExitLbl[3].SetBounds(20, 55, 420, 115);
  ExitLbl[3].HitTest(False);
  // Yes
  ExitBtnLbl[1].FCreate(ExitForm.Handle);
  ExitBtnLbl[1].Text('Yes');
  ExitBtnLbl[1].AutoSize(True);
  ExitBtnLbl[1].FontSetting('Segoe UI', VCLFontSizeToFMX(9), ALWhite);
  ExitBtnLbl[1].TextSetting(False, txLeading, txLeading);
  ExitBtnLbl[1].Position(220, 115);

  ExitBtn[1].FCreate(ExitForm.Handle);
  ExitBtn[1].SetBounds(180, 110, 100, 25);
  ExitBtn[1].Opacity(0.2);
  ExitBtn[1].CornerStyle(3, 3, [tcTopLeft, tcTopRight, tcBottomLeft, tcBottomRight], ctRound);
  ExitBtn[1].OnClick(@CommonOnClick);
  ExitBtn[1].OnMouseEnter(@CommonButtonEnter);
  ExitBtn[1].OnMouseLeave(@CommonButtonLeave);
  // No
  ExitBtnLbl[2].FCreate(ExitForm.Handle);
  ExitBtnLbl[2].Text('No');
  ExitBtnLbl[2].AutoSize(True);
  ExitBtnLbl[2].FontSetting('Segoe UI', VCLFontSizeToFMX(9), ALWhite);
  ExitBtnLbl[2].TextSetting(False, txLeading, txLeading);
  ExitBtnLbl[2].Position(340, 115);

  ExitBtn[2].FCreate(ExitForm.Handle);
  ExitBtn[2].SetBounds(300, 110, 100, 25);
  ExitBtn[2].Opacity(0.2);
  ExitBtn[2].CornerStyle(3, 3, [tcTopLeft, tcTopRight, tcBottomLeft, tcBottomRight], ctRound);
  ExitBtn[2].OnClick(@CommonOnClick);
  ExitBtn[2].OnMouseEnter(@CommonButtonEnter);
  ExitBtn[2].OnMouseLeave(@CommonButtonLeave);
end;


Fak Eid 20-05-2024 12:35

1 Attachment(s)
A false screen pops-up for a few second and disappears every time the Setup.exe file is run. This was not happening in the 14th May or older version.

BLACKFIRE69 21-05-2024 03:27

FMXInno - Updates
 
Just forget about the previous builds (May 19, etc.) because they had some issues. 'FMXForm.Show' didn't work properly, 'Translucent' objects didn't function, and 'BeginHaltProc' was broken, etc.

This update addresses those issues.




FMXInno - Final Release [2024-May-21]


Code:

* Integrated all the updates so far.
* Made some improvements and fixed bugs.
* Added new properties to classes.
* Updated Fluent API.

* Improved 'SetActiveThemeModeAwareness':
  -- It now supports all the forms except 'NormalForm' and 'ClassicForm'.

  > Fluent: ChangeFluentTheme (Dark/Light)
  > FluentColor: ChangeFluentColor
  > FluentBlendedColor: ChangeBlendedColor
  > BlankForm: ChangeBlankFormColor

* Optimized for higher DPI.
* Ensured FMXForm and MsgForms are shown in the desktop center.

* The package now includes InnoSetup v6.0.5 + ResTools IDE instead of InnoSetup v5.6.1:
  -- Make sure to use 'EmptyWizardForm' to resize the setup, especially for InnoSetup 6+.

* All basic tests were done with InnoSetup v6.3.0 Dev:
  -- To ensure FMXInno works with the latest updates of InnoSetup.

* Compiled in RadStudio 12.1 + Patch 01.



Quote:

Originally Posted by Fak Eid (Post 504540)
PS: Please also add GetSelectedDiskName (to get the name of the selected drive) on FDiskList.

A new property, 'GetSelectedDiskName', is available under 'FDiskList'.


The first post has been updated.


.

Tihiy_Don 21-05-2024 04:23

Please add the Cursor method for the FColorButton component.

Fak Eid 23-05-2024 12:29

Quote:

Originally Posted by Fak Eid (Post 504574)
A false screen pops-up for a few second and disappears every time the Setup.exe file is run. This was not happening in the 14th May or older version.

This issue is still happening in FMXInno [21-May] for all types of forms, at all resolutions and in both Inno Setup version, that is, 6.3.0 and 5.6.0

Tihiy_Don 24-05-2024 03:40

I also have this problem, a white square appears briefly on blankform. There is no such problem with imageform.

BLACKFIRE69 26-05-2024 10:19

Quote:

Originally Posted by Fak Eid (Post 504614)
This issue is still happening in FMXInno [21-May] for all types of forms, at all resolutions and in both Inno Setup version, that is, 6.3.0 and 5.6.0


Windows gets new updates regularly, and i've upgraded to the newest version of RadStudio, so anything could be affect this. this is the best optimization that i can do on my part. if it doesn't work, then i can't do anything about it.

check the attachment.



Quote:

Originally Posted by Tihiy_Don (Post 504581)
Please add the Cursor method for the FColorButton component.


Added the 'cursor' property for custom blueprints.



InnoSetup 6.3.0 Dev:

Code:

* Compiled with the latest source code (2024-May-26).

* Added missing help files.

* Corrected custom syntax highlighting.
  -- In the previous build, i might have done something wrong. this build will fix it.


Fak Eid 27-05-2024 01:54

Help for FNewINI
 
I still need help with this
Earlier to read AppName from .ini file we used to:
Code:

#define AppName ReadIni(SourcePath + "Game\Installer.ini", "Installer", "Name", "")

[Setup]
AppName={#AppName}

Is it possible to do it using the new FNewINI command like:
Code:

[Setup]
AppName=ANewInI.ReadString('Installer', 'Name', '')


BLACKFIRE69 28-05-2024 13:29

9 Attachment(s)
Quote:

Originally Posted by Fak Eid (Post 504649)
I still need help with this
Earlier to read AppName from .ini file we used to:
Code:

#define AppName ReadIni(SourcePath + "Game\Installer.ini", "Installer", "Name", "")

[Setup]
AppName={#AppName}

Is it possible to do it using the new FNewINI command like:
Code:

[Setup]
AppName=ANewInI.ReadString('Installer', 'Name', '')




this tool is the CLI version of 'FNewINI' and can be used for preprocessing and automating everything at compile-time.

in the attachment, you'll find a simple example of how to read and configure the setup with the following INI file.



.

Fak Eid 28-05-2024 22:44

Hi @Blackfire,

It is good that we now have a preprocessor for Read INI, but personally I think that we only need that to pass {#AppName} and {#DirName} at the compile time during the setup creation process. Rest everything can be handled without preprocessor. The FNewINI is written well enough. Please consider an example I shared above for Icons creation. It is easy to read, has a common procedure for all AppExe, less code, has ability to add more parameters in future and doesn't use preprocessor. You can definitely enhance and add to FMXInno (if you feel)

If I have to use the preprocessor only, I'd rather use the older reliable method. But, thank you so much for the enhancements.

I'd be posting more on Redist installation handling and Data extraction handling. I'm coding and testing on them.


All times are GMT -7. The time now is 09:31.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2026, vBulletin Solutions Inc.
FileForums @ https://fileforums.com