Page 14 of 15

Re: ProGUI V3 Alpha 3 Ready for testing!

Posted: Sun Apr 06, 2025 9:29 pm
by PrincieD
Thanks Zach and Quin, yeah it's bugger to maintain / create - thankfully Gemini 2.5 pro experminental has generated the grunt of it, so it's just been a case of manually going through all the docs and correcting/refinining - which is no different to the auto doc generator in PB itself except the AI is smart enough to figure out the bulk of it and generate good examples. As a rough ratio for every code example the AI generates 1 will work flawlessly (without any kind of modification) the other will need tweaking a bit. So yep not long now until the first beta (which will be going on sale), I'm currently filling in some 'blanks' in the API such as WindowFree(), LayoutFree(), WidgetSetLayout(), LayoutInsertWidget() etc (which have been low priority but fairly essential lol) and then finishing of the skin API with a DrawSkinText() command (fairly straight forward with the rest of the architecture working well), so quite exciting! nearly 2 years in development!

Re: ProGUI V3 Alpha 3 Ready for testing!

Posted: Sun Apr 06, 2025 10:55 pm
by PrincieD
So this is draft v2 of the docs (bare in mind Alpha 3 code may need some tweaking to work correctly with the current build) https://www.progui.co.uk/downloads/testhelp/index.html - the skinning section is also work in progress.

In the current build, CreateWIndow() just needs an x, y, width, height and the flags defaults to #PG_Window_Default which is #PG_Window_MinimizeWidget | #PG_Window_MaximizeWidget | #PG_Window_Sizeable), you don't need to specify a draw event handler now too, it will use a default. The same again with creating a widget, if you don't specify a draw event handler you'll now either get the yellow / black stripe WIP widget or if it has a skin class the rendered skin.

Re: ProGUI V3 Alpha 3 Ready for testing!

Posted: Sun Apr 06, 2025 11:57 pm
by Quin
Chris,
Awesome work so far, I'll look over this documentation later today. Has there been any progress made on the accessibility front, like we talked about months ago? If not I'd be more than happy to be a tester/feedback reporter for such functionality. If interested just shoot me a PM. :)

Re: ProGUI V3 Alpha 3 Ready for testing!

Posted: Mon Apr 07, 2025 12:38 am
by PrincieD
Quin wrote: Sun Apr 06, 2025 11:57 pm Chris,
Awesome work so far, I'll look over this documentation later today. Has there been any progress made on the accessibility front, like we talked about months ago? If not I'd be more than happy to be a tester/feedback reporter for such functionality. If interested just shoot me a PM. :)
Thanks man, I've not thought too much about it to be honest Quin, it's in the back of my mind but yep just still concentrating on getting the core framework up and running, thanks I appreciate that and will do - once into the beta release!

Re: ProGUI V3 Alpha 3 Ready for testing!

Posted: Sat Apr 19, 2025 12:45 am
by PrincieD
Hi guys, quick update. V3 beta is inching ever closer, I've been fixing bugs (quite a few) and filling in the blanks of the API. One of the main features is layouts can now be swapped and interchanged "willy nilly" (including root window layouts) with the WindowSetLayout() and WidgetSetLayout() commands. This easily allows "docking" functionality in the future and "pages" for panel type widgets. There is also now a LayoutInsertWidget() command, again widgets can be moved and inserted to different layouts by an index. The scrollbar widgets now use the DrawSkinBackground() command with loaded (from the skin) arrow images (instead of the hard coded ones) - default Windows 10 skin. Some of the changes are:

StopAnimation(Object, ID, Flags = #Null) -> new #PG_Animation_Kill and #PG_Any for ID
WidgetFree -> FreeWidget
FreeLayout
FreeWindow
WidgetSetLayout -> updated
WindowSetLayout
LayoutInsertWidget
WidgetGetLayoutIndex
WidgetGetParentLayout
WidgetGetParentWidget
LayoutGetParentWindow
LayoutGetParentWidget
LayoutGetParentLayout
SaveImg
LoadImg -> upgraded to handle multiple altSize imgs in path and snaptosize e.g. "Icons\arrowSmall.png; arrowMedium.png; arrowBig.png; snaptosize"
new dark theme for scrollbars
CreateText uses default system font and point size if not specified
TextSetFontName
TextSetPointSize
DrawSkinText

DrawSkinText() is almost complete supporting most CSS properties and transition animations (more will come later). I'm currently implementing automatic inheritance for text properties and a new "root" class, so for example setting the root classs (CSS) for "font-family" will change the font for all widgets/windows unless specifically overridden (in a cascading fashion). Which makes it super easy to change the font for your app.

Re: ProGUI V3 Alpha 3 Ready for testing!

Posted: Sat Apr 19, 2025 10:54 pm
by PrincieD
There was a nice anecdote my auntie said today about in-laws making the garden look nice without pulling any of the weeds - you absolutely need a solid foundation in anything you build, otherwise the weeds will grow and forever haunt you. Hopefully I've created a solid foundation without any weeds.

Re: ProGUI V3 Alpha 3 Ready for testing!

Posted: Fri Apr 25, 2025 11:17 pm
by PrincieD
Hi Guys,

There's now a ":root" pseudo class for the CSS engine (the same as Web CSS) and the engine now supports inheritence with the "inherit" keyword for property values, also the engine now supports individual widget styling by name/id (#myWidgetName) with WidgetSetName() as well as class with missing properties inherited from the widget class (if set). The CSS engine automatically inherits font and text properties (if missing).

There's also now 2 new commands added to GFX API: DrawImgShadow() and DrawImgShadowInset() - I think you can see where this is going ;) (very important for the borderless window mode - with full window skinning).

Chris.

Re: ProGUI V3 Alpha 3 Ready for testing!

Posted: Sat Apr 26, 2025 1:51 am
by Quin
Very cool! Looking forward to the release!

Re: ProGUI V3 Alpha 3 Ready for testing!

Posted: Sun Apr 27, 2025 1:53 am
by PrincieD
Quin wrote: Sat Apr 26, 2025 1:51 am Very cool! Looking forward to the release!
Thanks mate! yup me too :)

Re: ProGUI V3 Alpha 3 Ready for testing!

Posted: Sun May 18, 2025 11:53 pm
by PrincieD
Hi guys quick update! CSS box-shadow is working for widgets now :)

https://www.youtube.com/shorts/9MA2Zn5SaWs

Current list of new stuff:

Code: Select all

StopAnimation(Object, ID, Flags = #Null) -> new #PG_Animation_Kill and #PG_Any for ID
WidgetFree -> FreeWidget
FreeLayout
FreeWindow
WidgetSetLayout -> updated
WindowSetLayout
LayoutInsertWidget
WidgetGetLayoutIndex
WidgetGetParentLayout
WidgetGetParentWidget
LayoutGetParentWindow
LayoutGetParentWidget
LayoutGetParentLayout
SaveImg
LoadImg -> upgraded to handle multiple altSize imgs in path and snaptosize
dark theme for scrollbars
CreateText uses default system font and point size if not specified
TextSetFontName
TextSetPointSize
DrawSkinText
New root CSS class
CSS engine now supports inheritence with "inherit" keyword for property value
CSS engine automatically inherits font and text properties
CSS engine now supports individual widget styling by name/id (#myWidgetName) as well as class with missing properties inherited from the class if set
DrawImgShadow
DrawImgShadowEx
DrawImgShadowInset
DrawImgShadowInsetEx
DrawSkinBoxShadow
CSS "box-shadow" property now working complete with animation transitions, additional none standard CSS flags "inside" (shadow is rendered from inside the border radius), "outside" (shadow is rendered from the outside border radius), "background" (inset shadow is rendered on top of the background), "above" (inset shadow is rendered on top of the draw event rendering), "infront" (inset shadow is rendered on top of all widgets in the widget's layout), "ontop" (inset shadow is rendered on top of widgets and scrollbars)
Widgets now handle rendering the skin background and box-shadow automatically (as well as borders) so a draw event handler isn't always needed (only for rendering specific parts/elements inside the widget).
DrawBorder now has extra #PG_DrawBorder_MaskInside, #PG_DrawBorder_MaskOutside flags
Cheers!

Chris.

Re: ProGUI V3 Alpha 3 Ready for testing!

Posted: Tue May 20, 2025 12:45 am
by Zach
that looks really cool

Re: ProGUI V3 Alpha 3 Ready for testing!

Posted: Tue May 20, 2025 2:08 pm
by PrincieD
Zach wrote: Tue May 20, 2025 12:45 am that looks really cool
Cheers mate! nearly there now, I'm currently working on getting full window skinning working (progressing well)

Image

Re: ProGUI V3 Alpha 3 Ready for testing!

Posted: Sun May 25, 2025 11:06 pm
by PrincieD

Re: ProGUI V3 Alpha 3 Ready for testing!

Posted: Sat Jul 19, 2025 9:48 pm
by PrincieD
Image

Hi guys could you test out the following full window skinning demo for me please? :-

https://www.progui.co.uk/downloads/Wind ... ngTest.zip

Window resizing should behave identically to a system window and Aero Snapping/resizing should work.
The resizing should be silky smooth without any glitching or artifacts (bare in mind these are DirectX 11 Windows!)

Thanks!

Chris.

P.s hopefully if I've done a good job it should look like nothing spectacular (apart from the red drop-shadow and super fast glitch free rendering when resizing) - everything is custom code even down to the mouse cursor changing at the edge of the window which is why I need to know if it's working how it should or if there are any bugs! so yep cheers!

Re: ProGUI V3 Alpha 3 Ready for testing!

Posted: Sun Jul 20, 2025 3:24 pm
by Zach
The resizing works smooth and looks pretty good. I do not see any snapping functionality, so I'm not sure what is supposed to happen there, but it opened two windows I assume they were supposed to snap to each other when hovered near.

Windows 10 Pro, 22H2
Build 19045.4894
Windows Feature Experience Pack 1000.19060.1000.0