#766
|
||||
|
||||
FMXInno - Final Release
Quote:
FMXInno - Final Release [2024-Mar-20] What's new: Quote:
Code:
function FCreateFluentBlendedColor(WParent: HWND; DarkTheme, NoBorder: Boolean; Opacity: Single; BrightnessPct: Byte; BlendColorMode: TBlendColorMode): HWND; function FCreateFluentBlendedColorEx(WParent: HWND; DarkTheme, NoBorder: Boolean; Opacity: Single; BrightnessPct: Byte; BlendColorMode: TBlendColorMode; BlendColorLvl: Integer): HWND; function FCreateFluentBlendedColorEx2(WParent: HWND; VCLColor: TColor; DarkTheme, NoBorder: Boolean; Opacity: Single; BrightnessPct: Byte; BlendColorLvl: Integer): HWND; Note: The first post has been updated; check it out. . |
The Following 9 Users Say Thank You to BLACKFIRE69 For This Useful Post: | ||
audiofeel (19-03-2024), Behnam2018 (20-03-2024), Cesar82 (20-03-2024), Ele (24-03-2024), Fak Eid (18-05-2024), hitman797 (20-03-2024), JIEXA MEDVED (19-03-2024), Lord.Freddy (20-03-2024), Tihiy_Don (20-03-2024) |
Sponsored Links |
#767
|
||||
|
||||
FMXInno: Minor Update
FMXInno: Minor Update for [Mar-20]
Quote:
UWP Tile Selection: Code:
procedure TileSelect(ATile: LongInt); procedure TileSelectEx(ATile: LongInt; MouseOverColor: TAlphaColor); Example: UWPTiles.TileSelect(Tile[5]); UWPTiles.TileSelectEx(Tile[5], ALRed); How to update: Code:
1. Download the latest update from the first post. 2. Replace the 'FMXInno.dll' and 'FMXInnoHandle.iss' with the provided ones. . Last edited by BLACKFIRE69; 30-04-2024 at 11:07. |
The Following 8 Users Say Thank You to BLACKFIRE69 For This Useful Post: | ||
audiofeel (20-03-2024), Behnam2018 (20-03-2024), Cesar82 (20-03-2024), Ele (24-03-2024), hitman797 (20-03-2024), Lord.Freddy (20-03-2024), ScOOt3r (20-03-2024), Tihiy_Don (20-03-2024) |
#768
|
||||
|
||||
FMXInno: Minor Update
FMXInno: Minor Update - [2024-Mar-27]
Code:
* Added the FColorComboBox class. * Prevented forms from being resized. * Added the following new functions: function IsValidVCLColor(const AColor: TColor): Boolean; function IsValidFMXColor(const AColor: TAlphaColor): Boolean; function IsLightFMXColor(const AColor: TAlphaColor): Boolean; function IsLightVCLColor(const AColor: TColor): Boolean; IsLightFMXColor: Quote:
Code:
procedure ClrBxOnChange(Sender: TObject); var CtrlClr: TAlphaColor; begin CtrlClr := AClrBx.GetColor; if IsLightFMXColor(CtrlClr) then AText.Color(ALBlack) else AText.Color(ALWhite); ARect.FillColor(CtrlClr); end; Code:
Extra: function DesktopImgExist: Boolean; function GetDesktopImgColorFMX: TAlphaColor; function GetDesktopSolidColorFMX: TAlphaColor; function GetImgColorFMX(const Image: UnicodeString): TAlphaColor; function GetImgPartColorFMX(const Image: UnicodeString; const PixelX, PixelY, PixelW, PixelH: Single): TAlphaColor; How to update: Code:
1. Download the latest update from the first post. 2. Replace the 'FMXInno.dll' and 'FMXInnoHandle.iss' with the provided ones. . Last edited by BLACKFIRE69; 30-04-2024 at 11:07. |
The Following 5 Users Say Thank You to BLACKFIRE69 For This Useful Post: | ||
audiofeel (27-03-2024), hitman797 (27-03-2024), Lord.Freddy (27-03-2024), ScOOt3r (27-03-2024), Tihiy_Don (27-03-2024) |
#769
|
||||
|
||||
FMXInno - Windows 8
FMXInno - Windows 8
Quote:
Last edited by BLACKFIRE69; 11-05-2024 at 08:56. |
The Following 8 Users Say Thank You to BLACKFIRE69 For This Useful Post: | ||
ADMIRAL (29-03-2024), audiofeel (28-03-2024), Behnam2018 (28-03-2024), hitman797 (29-03-2024), JIEXA MEDVED (02-04-2024), Lord.Freddy (28-03-2024), ScOOt3r (28-03-2024), Tihiy_Don (28-03-2024) |
#770
|
||||
|
||||
@BLACKFIRE69
In this regard, I would like to know. How to implement a full-screen installer? Something like this (I don't remember the exact command) is "WindowVisible". Well, that is, it starts in full screen, it can be closed by "Alt+F4" (By the way, in my opinion, it does not work on FMXInno now). How to implement this correctly and what type of form is better to apply, I would like to see your answer. Most likely, in the future there will be questions like "how to implement both the size of the interfaces and their coordinates with a change in resolution"? |
The Following 2 Users Say Thank You to audiofeel For This Useful Post: | ||
Behnam2018 (12-04-2024), hitman797 (02-04-2024) |
#771
|
|||
|
|||
Link dwnlad
Quote:
|
#772
|
||||
|
||||
FMXInno - Update
FMXInno - Final Release [2024-Apr-29]
* What's New: Quote:
Code:
Example: procedure DeinitializeSetup(); begin AWebView.Stop; AWebView.Shutdown; FMXInnoShutDown; end; Quote:
Note: The first post has been updated; check it out. . |
#773
|
|||
|
|||
Good afternoon! Some users, on any systems, have a problem when the installer process hangs in the processes and the form does not open. It occurs extremely rarely, in about 5-10 percent of users. I hope this issue has been fixed in this version. I tried to change different types of forms, the result is the same.
|
#774
|
||||
|
||||
Quote:
users sometimes report this issue, but until now, i couldn't come up with a better solution. let's dive a little deeper into this. in FMXInno, all the forms (FluentForm, BlankForm, ImageForm, etc.) are based on a single form called 'TFMXFluentF', which is a modified Firemonkey TForm specifically used for FMXInno. i think this could be the main reason for all of this. So, that's how i came up with this new idea. i've introduced a new form called 'ClassicForm' into FMXInno. so, what is the 'ClassicForm'? Is it another blank form or something else? actually not, it's an original Firemonkey TForm which is exactly the same as the one Mr. Jiva Newstone used in 'ISFMXFW'. First of all, let's check out the key differences between FMXInno's TFMXFluentF and ISFMXFW's TForm: Code:
- FMXInno's TFMXFluentF: 1. This replaces the WizardForm when creating. 2. It has more control over this. 3. It can have Fluent effects on this. - ISFMXFW's TForm: 1. This is parented to the WizardForm, nothing is replaced. 2. It has limited controls. 3. Fluent effects cannot be used on this. so, how is the 'Classic' form gonna fix this issue? my idea is to have two modes for the same installer as a backup using 'Classic' forms. to do so, we can use command-line parameters in case the setup is unable to run with the 'TFMXFluentF'. we can easily do that using a batch file, and the following simple example will show you how to do that. Code:
var IsClassicMode: Boolean; function InitializeSetup(): Boolean; begin IsClassicMode := CmdLineParamExist('/Classic'); FMXInnoInit; Result := True; end; procedure InitializeWizard(); begin EmptyWizardForm(True, 640, 480); // Music ... FMXDesigning; FMXForm.Show; if IsClassicMode then pTaskbarPreview(True) // or pTaskbarPreviewEx(WizardForm.Handle, True); else pTaskbarPreviewEx(FMXForm.HandleHWND, True); end; procedure FMXDesigning; begin { FMX Form } if IsClassicMode then FMXForm.FCreateClassicForm(WizardForm.Handle, ALMoneyGreen, '') else FMXForm.FCreateFluent(WizardForm.Handle, False, False, 0.56, 0); FMXForm.SetCursor(ExtractAndLoad('Dark.cur')); ... end; Code:
Bat File: @echo off cd /d "%~dp0" start "" "_Setup1.exe" /Classic in this way, you can try the classic mode if the installer is unable to run with modern forms. (because of the classic form, FMXInno may support old OS like Windows 7. i'm not sure because i don't have any virtual machine or bare metal right now to test it out.) there're some facts you should notice when using the classic forms: Code:
1. EmptyWizardForm - the 'Buttons' parameter should always be 'True'. eg: EmptyWizardForm(True, 640, 480); 2. pTaskbarPreviewEx - the 'hwnd' parameter should always be 'WizardForm.Handle'. eg: pTaskbarPreviewEx(WizardForm.Handle, True); in the attachment, i've included two examples: a simple example and the Modern FitGirl Installer example with both Normal and Classic modes. run the batch files to see the differences. the following screenshot will show you the Modern FitGirl installer in both normal and classic mode. (remember, classic forms are always borderless rectangle forms, and we cannot control the border style.) also, the first post has been updated with the new update. . Last edited by BLACKFIRE69; 11-05-2024 at 08:56. |
#775
|
|||
|
|||
Thank you - this is exactly what I need, I will try to implement the installer on it and test it on users. Unfortunately, I also could not identify any consistency with this problem, it sometimes occurs on windows 11, 10 and 7. Someone solved this problem by rebooting the operating system, but others did not. I also sent you a message on krinkels related to unpacking the archives, please read it as you have free time.
|
The Following User Says Thank You to Tihiy_Don For This Useful Post: | ||
BLACKFIRE69 (02-05-2024) |
#776
|
|||
|
|||
Hi @Blackfire69,
Can you please help me with following additions/workaround to FMX Libraries as I require them on a Project I'm working in: 1. Can we fetch the drive's name (Picture 1)? 2. Functionality to have sharp corners on FCustomFluentWindow? Edit: Audiofeel helped with this. Thank you Code:
InstallPage.FCreateBlankForm(FMXForm.HandleHWND, HTMLColorStrToFMXColor('#25282f'), ''); InstallPage.Show; SetWin11FormCorners(InstallPage.ParentHandleHWND, ctw11Sharp); 4. A variable on ProgressCallback to fetch the total disk size extracted in case of multiple disks. I tried doing (Installation % * Size) div 100 but it is just workaround. (Picture 2 & 3 for reference) 5. In some cases, the CpuUsage.Name gives value seperated by Tabs. Any way to remove that? Like: Processor: { Tab Space } AMD Ryzen 9 6. How to right align a FLabel/FText? It is not working or an example please. Edit: Audiofeel helped with this. Thank you Code:
ALabel.FCreate(PageContent[3].Handle, '57.2 GB'); ALabel.SetBounds(500, 165, 70, 20); ALabel.FontSetting('{#FontName}', 11, {#SelectedFontColor}); ALabel.FontStyle([fsBold]); ALabel.TextSetting(False, txTrailing, txCenter); With the new FMXInno, so many error messages keep popping up. Can you please have a toggle to turn them off or bypass? Last edited by Fak Eid; 12-05-2024 at 22:52. |
The Following User Says Thank You to Fak Eid For This Useful Post: | ||
Tihiy_Don (10-05-2024) |
#777
|
||||
|
||||
FMXInno - Updates
FMXInno Cumulative Update - [2024 May 11]
Code:
* Improvements in the code. * Cleaned up the code a bit and removed duplications. * More stable. * This build could be more efficient than the previous one. - Ensured compatibility with Windows 11 24H2. * Added a new class to deal with INI files. - Now you can handle even complex INI files more easily. - Check the example in the attachment. * Added a new class for All-in-One array. - Now you can have multiple data types in one array. - Supports 11+ data types by default. - More data types will be added upon request. - Easy to manipulate. - Check the example in the attachment. * Updated FLogicalDrives class. - Added a new property called 'Disk Name'. - Check out the 'Example_LogicalDrives.iss'. * Updated FXStream. - FXPckr can hold InnoSetup's encrypted password. - Updated encryption. - Fixed minor bugs related to FCreateFXStream. - This version doesn't support previous versions. * Updated FCheckboxTree class. - Now, the OnChange events of checkboxes are handled automatically by the FMXInno internally. - To override it and have manual OnChange events, you have to call 'OverrideDefaultOnChangeEvent'. eg: Pg4ChkbxTree.OverrideDefaultOnChangeEvent; * Updated WebView2 class. * Updated license agreement. ================================================== ================= >> FMXInno hangs on Taskbar << Now we've evidence that the main cause of this issue is the custom font. Generally, I use the following three functions to install custom fonts into the installer: Code:
1. InstallFMXFont 2. DeleteFMXFont 3. InvalidateFMXFont Code:
1. AddFontResource2 2. RemoveFontResource2 Thanks to @Tihiy_Don for conducting some tests on this. The first post has been updated. . Last edited by BLACKFIRE69; 21-05-2024 at 08:47. |
#778
|
|||
|
|||
Thanks @Blackfire69 this fixes my issue of the same thing to.. works Great!
ScOOt3r |
The Following User Says Thank You to ScOOt3r For This Useful Post: | ||
BLACKFIRE69 (13-05-2024) |
#779
|
||||
|
||||
Quote:
Quote:
Code:
WaterMark.FCreate(WizardLayer.Handle); WaterMark.Text(FMXInnoBuildDate); WaterMark.SetBounds(730, 468, 210, 20); WaterMark.FontSetting('{#FontName}', 12, FMXColorSetOpacity({#FontColor2}, 0.1)); WaterMark.FontStyle([fsBold]); WaterMark.TextSetting(False, txTrailing, txLeading); |
The Following 2 Users Say Thank You to audiofeel For This Useful Post: | ||
BLACKFIRE69 (13-05-2024), Fak Eid (12-05-2024) |
#780
|
||||
|
||||
Quote:
Quote:
The error handler will remain active; I won't permit bypassing it. . Last edited by BLACKFIRE69; 14-07-2024 at 02:19. |
Thread Tools | |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Windows Fluent Effects Standalone API - InnoSetup / VCL / FXM | BLACKFIRE69 | Conversion Tutorials | 0 | 15-11-2023 17:35 |
Windows Phone Installer similar to razor12911's original design? | Kitsune1982 | Conversion Tutorials | 0 | 02-07-2020 13:04 |
INDEX - Conversion Tutorial Index | Razor12911 | Conversion Tutorials | 5 | 11-06-2020 02:05 |
Frequently Asked Questions | Joe Forster/STA | PC Games - Frequently Asked Questions | 0 | 29-11-2005 09:48 |