ProGUI V3 Alpha Sneak Peek!
-
- Enthusiast
- Posts: 646
- Joined: Wed Aug 10, 2005 2:08 pm
- Location: Yorkshire, England
- Contact:
ProGUI V3 Alpha Sneak Peek!
Hi guys! This is a sneak peek of the new ProGUI V3 alpha which I've spent the past 7 months or so developing and is a total re-write from the ground-up.
https://www.youtube.com/shorts/joYegMLUxyc
More dev diary videos: https://www.youtube.com/channel/UCBcx4x ... R0b_uQ4Cwg
Core features implemented:
* Cross platform, currently Windows and Linux (although the Linux code is a little behind at the moment).
* Unified GFX API - DirectX 11/ Direct2D / DirectWrite on Windows and Cairo / Pango on Linux.
* Automatic per monitor DPI scaling using Device Independant Pixels.
* Advanced layout engines including Basic, Flex and Grid which can handle updating tens of thousands of items without breaking a sweat.
* Overflow and dynamic bucket system for virtual scrolling in layouts.
* Event handler engine that can be easily subclassed with many handlers per event.
* Animation with all rendering synced to the animation and render threads.
* Easily create custom widgets using the GFX API.
Windows specific features:
* Super fast rendering and glitch-free window resizing with direct integration with the Desktop Window Manager.
* Diverted rendering of all Win32 common controls (also includes PB Canvas and Scintilla) directly onto the Direct2D bitmaps (including UXTheme animation), allowing alpha transparency and masking.
* Native WebView2 widget with rendering diverted directly onto the Direct2D bitmaps.
Layout features:
All layouts support padding and item margins along with overflow and scrolling.
Layouts support automatic 'fit-to-content' and can be nested.
Layout Items:
#PG_Layout_Item_Visiblity
#PG_Layout_Item_MinWidth
#PG_Layout_Item_MinHeight
#PG_Layout_Item_IdealWidth
#PG_Layout_Item_IdealHeight
#PG_Layout_Item_Margin
#PG_Layout_Item_MarginTop
#PG_Layout_Item_MarginLeft
#PG_Layout_Item_MarginBottom
#PG_Layout_Item_MarginRight
#PG_Layout_Item_Justify
#PG_Layout_Item_Align
#PG_Layout_Item_Justify_Start
#PG_Layout_Item_Justify_Center
#PG_Layout_Item_Justify_End
#PG_Layout_Item_Align_Start
#PG_Layout_Item_Align_Center
#PG_Layout_Item_Align_End
Flex:
#PG_Flex_Direction
#PG_Flex_Wrap
#PG_Flex_Justify
#PG_Flex_AlignItems
#PG_Flex_AlignContent
#PG_Flex_Direction_Row
#PG_Flex_Direction_RowReverse
#PG_Flex_Direction_Column
#PG_Flex_Direction_ColumnReverse
#PG_Flex_Justify_Start
#PG_Flex_Justify_Center
#PG_Flex_Justify_End
#PG_Flex_Justify_SpaceAround
#PG_Flex_Justify_SpaceBetween
#PG_Flex_AlignContent_Start
#PG_Flex_AlignContent_Center
#PG_Flex_AlignContent_End
#PG_Flex_AlignContent_SpaceAround
#PG_Flex_AlignContent_SpaceBetween
#PG_Flex_AlignContent_Stretch
Grid:
#PG_Layout_Item_RowStart
#PG_Layout_Item_RowSpan
#PG_Layout_Item_ColumnStart
#PG_Layout_Item_ColumnSpan
#PG_Grid_TemplateColumnSize
#PG_Grid_TemplateColumnMinSize
#PG_Grid_TemplateColumnMaxSize
#PG_Grid_TemplateRowSize
#PG_Grid_TemplateRowMinSize
#PG_Grid_TemplateRowMaxSize
#PG_Grid_GapSize
#PG_Grid_GapSizeColumns
#PG_Grid_GapSizeRows
#PG_Grid_JustifyContent
#PG_Grid_AlignContent
#PG_Grid_JustifyItems
#PG_Grid_AlignItems
#PG_Grid_Flow
#PG_Grid_DefaultColumnSize
#PG_Grid_DefaultColumnMinSize
#PG_Grid_DefaultColumnMaxSize
#PG_Grid_DefaultRowSize
#PG_Grid_DefaultRowMinSize
#PG_Grid_DefaultRowMaxSize
#PG_Grid_SpanMode
#PG_Grid_SpanModeColumns
#PG_Grid_SpanModeRows
#PG_Grid_JustifyContent_Start
#PG_Grid_JustifyContent_Center
#PG_Grid_JustifyContent_End
#PG_Grid_JustifyContent_SpaceAround
#PG_Grid_JustifyContent_SpaceBetween
#PG_Grid_JustifyContent_SpaceEvenly
#PG_Grid_AlignContent_Start
#PG_Grid_AlignContent_Center
#PG_Grid_AlignContent_End
#PG_Grid_AlignContent_SpaceAround
#PG_Grid_AlignContent_SpaceBetween
#PG_Grid_AlignContent_SpaceEvenly
#PG_Grid_JustifyItems_Start
#PG_Grid_JustifyItems_Center
#PG_Grid_JustifyItems_End
#PG_Grid_AlignItems_Start
#PG_Grid_AlignItems_Center
#PG_Grid_AlignItems_End
#PG_Grid_Flow_Row
#PG_Grid_Flow_RowDense
#PG_Grid_SpanMode_Tight
#PG_Grid_SpanMode_Even
#PG_Grid_MaxContent
#PG_Grid_Auto
#PG_Grid_Default
#PG_Grid_Percent
Hopefully I'll have the first alpha version ready for you guys to test soon, it's not quite ready yet.
Cheers! Chris.
https://www.youtube.com/shorts/joYegMLUxyc
More dev diary videos: https://www.youtube.com/channel/UCBcx4x ... R0b_uQ4Cwg
Core features implemented:
* Cross platform, currently Windows and Linux (although the Linux code is a little behind at the moment).
* Unified GFX API - DirectX 11/ Direct2D / DirectWrite on Windows and Cairo / Pango on Linux.
* Automatic per monitor DPI scaling using Device Independant Pixels.
* Advanced layout engines including Basic, Flex and Grid which can handle updating tens of thousands of items without breaking a sweat.
* Overflow and dynamic bucket system for virtual scrolling in layouts.
* Event handler engine that can be easily subclassed with many handlers per event.
* Animation with all rendering synced to the animation and render threads.
* Easily create custom widgets using the GFX API.
Windows specific features:
* Super fast rendering and glitch-free window resizing with direct integration with the Desktop Window Manager.
* Diverted rendering of all Win32 common controls (also includes PB Canvas and Scintilla) directly onto the Direct2D bitmaps (including UXTheme animation), allowing alpha transparency and masking.
* Native WebView2 widget with rendering diverted directly onto the Direct2D bitmaps.
Layout features:
All layouts support padding and item margins along with overflow and scrolling.
Layouts support automatic 'fit-to-content' and can be nested.
Layout Items:
#PG_Layout_Item_Visiblity
#PG_Layout_Item_MinWidth
#PG_Layout_Item_MinHeight
#PG_Layout_Item_IdealWidth
#PG_Layout_Item_IdealHeight
#PG_Layout_Item_Margin
#PG_Layout_Item_MarginTop
#PG_Layout_Item_MarginLeft
#PG_Layout_Item_MarginBottom
#PG_Layout_Item_MarginRight
#PG_Layout_Item_Justify
#PG_Layout_Item_Align
#PG_Layout_Item_Justify_Start
#PG_Layout_Item_Justify_Center
#PG_Layout_Item_Justify_End
#PG_Layout_Item_Align_Start
#PG_Layout_Item_Align_Center
#PG_Layout_Item_Align_End
Flex:
#PG_Flex_Direction
#PG_Flex_Wrap
#PG_Flex_Justify
#PG_Flex_AlignItems
#PG_Flex_AlignContent
#PG_Flex_Direction_Row
#PG_Flex_Direction_RowReverse
#PG_Flex_Direction_Column
#PG_Flex_Direction_ColumnReverse
#PG_Flex_Justify_Start
#PG_Flex_Justify_Center
#PG_Flex_Justify_End
#PG_Flex_Justify_SpaceAround
#PG_Flex_Justify_SpaceBetween
#PG_Flex_AlignContent_Start
#PG_Flex_AlignContent_Center
#PG_Flex_AlignContent_End
#PG_Flex_AlignContent_SpaceAround
#PG_Flex_AlignContent_SpaceBetween
#PG_Flex_AlignContent_Stretch
Grid:
#PG_Layout_Item_RowStart
#PG_Layout_Item_RowSpan
#PG_Layout_Item_ColumnStart
#PG_Layout_Item_ColumnSpan
#PG_Grid_TemplateColumnSize
#PG_Grid_TemplateColumnMinSize
#PG_Grid_TemplateColumnMaxSize
#PG_Grid_TemplateRowSize
#PG_Grid_TemplateRowMinSize
#PG_Grid_TemplateRowMaxSize
#PG_Grid_GapSize
#PG_Grid_GapSizeColumns
#PG_Grid_GapSizeRows
#PG_Grid_JustifyContent
#PG_Grid_AlignContent
#PG_Grid_JustifyItems
#PG_Grid_AlignItems
#PG_Grid_Flow
#PG_Grid_DefaultColumnSize
#PG_Grid_DefaultColumnMinSize
#PG_Grid_DefaultColumnMaxSize
#PG_Grid_DefaultRowSize
#PG_Grid_DefaultRowMinSize
#PG_Grid_DefaultRowMaxSize
#PG_Grid_SpanMode
#PG_Grid_SpanModeColumns
#PG_Grid_SpanModeRows
#PG_Grid_JustifyContent_Start
#PG_Grid_JustifyContent_Center
#PG_Grid_JustifyContent_End
#PG_Grid_JustifyContent_SpaceAround
#PG_Grid_JustifyContent_SpaceBetween
#PG_Grid_JustifyContent_SpaceEvenly
#PG_Grid_AlignContent_Start
#PG_Grid_AlignContent_Center
#PG_Grid_AlignContent_End
#PG_Grid_AlignContent_SpaceAround
#PG_Grid_AlignContent_SpaceBetween
#PG_Grid_AlignContent_SpaceEvenly
#PG_Grid_JustifyItems_Start
#PG_Grid_JustifyItems_Center
#PG_Grid_JustifyItems_End
#PG_Grid_AlignItems_Start
#PG_Grid_AlignItems_Center
#PG_Grid_AlignItems_End
#PG_Grid_Flow_Row
#PG_Grid_Flow_RowDense
#PG_Grid_SpanMode_Tight
#PG_Grid_SpanMode_Even
#PG_Grid_MaxContent
#PG_Grid_Auto
#PG_Grid_Default
#PG_Grid_Percent
Hopefully I'll have the first alpha version ready for you guys to test soon, it's not quite ready yet.
Cheers! Chris.
ProGUI - Professional Graphical User Interface Library - http://www.progui.co.uk
Re: ProGUI V3 Alpha Sneak Peek!
Looks sleek. Curious why you decided against an html/css approach with the new webviewgadget?
The nice thing about standards is there are so many to choose from. ~ Andrew Tanenbaum
Re: ProGUI V3 Alpha Sneak Peek!
Sounds very interesting, impressive, can't wait to see more, will be better than a mobile capture
Good progress to the alpha version.
Good progress to the alpha version.
Re: ProGUI V3 Alpha Sneak Peek!
Looks good. I just visited your website and the price seems to be good too. If I purchase it, will I get updates forever or will I (maybe) have to repurchase it again at one point?
PureBasic 6.04/XProfan X4a/Embarcadero RAD Studio 11/Perl 5.2/Python 3.10
Windows 11/Ryzen 5800X/32GB RAM/Radeon 7770 OC/3TB SSD/11TB HDD
Synology DS1821+/36GB RAM/130TB
Synology DS920+/20GB RAM/54TB
Synology DS916+ii/8GB RAM/12TB
Windows 11/Ryzen 5800X/32GB RAM/Radeon 7770 OC/3TB SSD/11TB HDD
Synology DS1821+/36GB RAM/130TB
Synology DS920+/20GB RAM/54TB
Synology DS916+ii/8GB RAM/12TB
Re: ProGUI V3 Alpha Sneak Peek!
I bought a few years ago a license for Progui 1.41.
Can't wait to see the next release...
Can't wait to see the next release...
Purebasic 6.04 64 bits - Windows 11 Pro 64 bits 23H2
-
- Enthusiast
- Posts: 108
- Joined: Wed May 13, 2009 8:38 am
- Location: Arizona, USA
Re: ProGUI V3 Alpha Sneak Peek!
I purchased the previous version and am looking forward to trying the new version.
-
- Enthusiast
- Posts: 646
- Joined: Wed Aug 10, 2005 2:08 pm
- Location: Yorkshire, England
- Contact:
Re: ProGUI V3 Alpha Sneak Peek!
Thanks! Versatility, speed and performance. The Webview uses a lot of memory so for a lot of apps it's kind of like cracking an egg with a sledge hammer. With the Direct2D backend you can mix and match ProGUI 'windowless' widgets with native OS controls as well as Webview widgets and control the compositing of them all. There's nothing stopping you from slapping a Webview into a one column/row grid layout though with the size set to auto (which is the default) and having all your UI web based.
Thanks! yes I need a better screen capture software that doesn't throttle the frame-rate
Thanks! So I'm thinking you'll recieve free updates for a year and then have to re-purchase with a discount. (bare in mind, the price for V3 will be going up)
Thanks GG!
Thanks GoodNPlenty!GoodNPlenty wrote: ↑Mon Mar 18, 2024 9:59 pm I purchased the previous version and am looking forward to trying the new version.
Thanks! yep it was one of the core features (that was requested a lot) and has been designed using a 'driver' like system.
Cheers guys, I appreciate the good feedback!
ProGUI - Professional Graphical User Interface Library - http://www.progui.co.uk
Re: ProGUI V3 Alpha Sneak Peek!
Looks exciting! I look forward to seeing more.
-
- Enthusiast
- Posts: 646
- Joined: Wed Aug 10, 2005 2:08 pm
- Location: Yorkshire, England
- Contact:
Re: ProGUI V3 Alpha Sneak Peek!
Thanks wombats!
ProGUI - Professional Graphical User Interface Library - http://www.progui.co.uk
Re: ProGUI V3 Alpha Sneak Peek!
that looks amazing, you've spent a good seven months.
Re: ProGUI V3 Alpha Sneak Peek!
So the application and the code it creates will be cross-platform? Mac is planned as well, and: if ProGUI won't run, would the generated code run?
Edit: will SpiderBasic still be supported?
Edit: will SpiderBasic still be supported?
cheers,
bembulak
bembulak
-
- Enthusiast
- Posts: 646
- Joined: Wed Aug 10, 2005 2:08 pm
- Location: Yorkshire, England
- Contact:
Re: ProGUI V3 Alpha Sneak Peek!
Thank you very much idle! it's been a lot of hard work getting the core tech up and running!
So the API will be the same on both Windows and Linux (Mac will come a bit later). For windows it's a DLL that you just import using the provided include and on Linux it's an SO (Shared Object). SpiderBasic should run fine inside the Webview widget.
ProGUI - Professional Graphical User Interface Library - http://www.progui.co.uk
-
- Addict
- Posts: 1656
- Joined: Sun Dec 12, 2010 12:36 am
- Location: Somewhere in the midwest
- Contact:
Re: ProGUI V3 Alpha Sneak Peek!
Nice to see you resuming work on this. I'll be interested to see V3 when it's officially released.
Any plans for a richedit control (or something of similar functionality) ?
Any plans for a richedit control (or something of similar functionality) ?
-
- Enthusiast
- Posts: 646
- Joined: Wed Aug 10, 2005 2:08 pm
- Location: Yorkshire, England
- Contact:
Re: ProGUI V3 Alpha Sneak Peek!
Hi Zach, I've no immediate plans for a richedit replacement just yet as it's a lot of work replicating the functionality and you can just use a richedit (you can mix and match between the ProGUI widgets and OS controls) or Scintilla or the Webview widget (if you need alpha transparency). I'm concentrating on getting the core framework ready at the moment.
ProGUI - Professional Graphical User Interface Library - http://www.progui.co.uk