Releases: vczh-libraries/Release
Gaclib 0.9.7.3
Gaclib 0.9.7.3
GPU Accelerated C++ User Interface/Script Engine (Apache License 2.0 with extra conditions)
Website for this project: http://www.gaclib.net/
This repository contains the latest release for the GacUI project, including packed library source codes, development tools, demos and documents. Complete source code can be accessed in https://github.com/vczh-libraries .
Here is a simple description to the code
- Import Gaclib source code
- Skins Predefined control templates. You will need to call
vl::presentation::theme::RegisterTheme
to set a default skin before creating any controls. Read WinMain.cpp for details.
- Skins Predefined control templates. You will need to call
- Tools
- GacGen32.exe / GacGen64.exe GacUI resource compiler and C++ code generator for x86 and x64
- CppMerge.exe Merge GacUI generated code for x86 and x64 to architecture-independent code
- ParserGen.exe General LR parser to C++ code generator
- GacGen.ps1 Do everything for you if you don't want to understand build steps
- Tutorial Sample code
- Lib Static library projects for all tutorials
- GacUI_HelloWorlds Different ways to create a GacUI hello world project
- GacUI_Layout Demo how to use GacUI layout
- GacUI_Controls Demo how to use GacUI controls
- GacUI_ControlTemplate Demo how to create control templates (skin) for GacUI controls
- GacUI_Xml Demo how to author GacUI XML resource file
- GacUI_Windows Demo how to interact with native Windows OS features.
Improvements
- Allow resource to depend on other resources so that generated types can be used.
GacBuild.ps1
andGacClear.ps1
is created, see the comment inGacBuild.ps1
for more information.- Now only types from depended resources are imported. In a future release, data resources (like images) can also be imported.
- In this particular moment you can only share images in different resources by
<Folder content="Link">Images.xml</Folder>
, which duplicates images in resources. This issue will be solved.
Updated Demos:
- GacUI_Controls\DocumentEditor(Toolstrip|Ribbon)?: Split resources and projects
Gaclib 0.9.7.2
Gaclib 0.9.7.2
GPU Accelerated C++ User Interface/Script Engine (Apache License 2.0 with extra conditions)
Website for this project: http://www.gaclib.net/
This repository contains the latest release for the GacUI project, including packed library source codes, development tools, demos and documents. Complete source code can be accessed in https://github.com/vczh-libraries .
Here is a simple description to the code
- Import Gaclib source code
- Skins Predefined control templates. You will need to call
vl::presentation::theme::RegisterTheme
to set a default skin before creating any controls. Read WinMain.cpp for details.
- Skins Predefined control templates. You will need to call
- Tools
- GacGen32.exe / GacGen64.exe GacUI resource compiler and C++ code generator for x86 and x64
- CppMerge.exe Merge GacUI generated code for x86 and x64 to architecture-independent code
- ParserGen.exe General LR parser to C++ code generator
- GacGen.ps1 Do everything for you if you don't want to understand build steps
- Tutorial Sample code
- Lib Static library projects for all tutorials
- GacUI_HelloWorlds Different ways to create a GacUI hello world project
- GacUI_Layout Demo how to use GacUI layout
- GacUI_Controls Demo how to use GacUI controls
- GacUI_ControlTemplate Demo how to create control templates (skin) for GacUI controls
- GacUI_Xml Demo how to author GacUI XML resource file
- GacUI_Windows Demo how to interact with native Windows OS features.
Improvements
- Allow
GuiDocumentViewer
andGuiDocumentLabel
control to copy rich text document to clipboard as- Plain text
- A private format that is recognizable by GacUI
- RTF Document (recognizable by Word and Wordpad for example)
- HTML Document (recognizable by Word for example)
- Image, if only an image is selected to copy
Updated Demos:
- GacUI_Controls\DocumentEditor: Demonstrates ribbons and inheritable custom controls.
Gaclib 0.9.7.1
Gaclib 0.9.7.1
GPU Accelerated C++ User Interface/Script Engine (Apache License 2.0 with extra conditions)
Website for this project: http://www.gaclib.net/
This repository contains the latest release for the GacUI project, including packed library source codes, development tools, demos and documents. Complete source code can be accessed in https://github.com/vczh-libraries .
Here is a simple description to the code
- Import Gaclib source code
- Skins Predefined control templates. You will need to call
vl::presentation::theme::RegisterTheme
to set a default skin before creating any controls. Read WinMain.cpp for details.
- Skins Predefined control templates. You will need to call
- Tools
- GacGen32.exe / GacGen64.exe GacUI resource compiler and C++ code generator for x86 and x64
- CppMerge.exe Merge GacUI generated code for x86 and x64 to architecture-independent code
- ParserGen.exe General LR parser to C++ code generator
- GacGen.ps1 Do everything for you if you don't want to understand build steps
- Tutorial Sample code
- Lib Static library projects for all tutorials
- GacUI_HelloWorlds Different ways to create a GacUI hello world project
- GacUI_Layout Demo how to use GacUI layout
- GacUI_Controls Demo how to use GacUI controls
- GacUI_ControlTemplate Demo how to create control templates (skin) for GacUI controls
- GacUI_Xml Demo how to author GacUI XML resource file
- GacUI_Windows Demo how to interact with native Windows OS features.
Improvements
- Fix ribbon layout issues
<InnerShadow>
renders nothing instead of crashes under GDI- Ribbon
- RibbonIconLabel
Updated Demos:
- GacUI_Controls\DocumentEditor: Demonstrates ribbons and inheritable custom controls.
Gaclib 0.9.7.0
Gaclib 0.9.7.0
GPU Accelerated C++ User Interface/Script Engine (Apache License 2.0 with extra conditions)
Website for this project: http://www.gaclib.net/
This repository contains the latest release for the GacUI project, including packed library source codes, development tools, demos and documents. Complete source code can be accessed in https://github.com/vczh-libraries .
Here is a simple description to the code
- Import Gaclib source code
- Skins Predefined control templates. You will need to call
vl::presentation::theme::RegisterTheme
to set a default skin before creating any controls. Read WinMain.cpp for details.
- Skins Predefined control templates. You will need to call
- Tools
- GacGen32.exe / GacGen64.exe GacUI resource compiler and C++ code generator for x86 and x64
- CppMerge.exe Merge GacUI generated code for x86 and x64 to architecture-independent code
- ParserGen.exe General LR parser to C++ code generator
- GacGen.ps1 Do everything for you if you don't want to understand build steps
- Tutorial Sample code
- Lib Static library projects for all tutorials
- GacUI_HelloWorlds Different ways to create a GacUI hello world project
- GacUI_Layout Demo how to use GacUI layout
- GacUI_Controls Demo how to use GacUI controls
- GacUI_ControlTemplate Demo how to create control templates (skin) for GacUI controls
- GacUI_Xml Demo how to author GacUI XML resource file
- GacUI_Windows Demo how to interact with native Windows OS features.
Improvements
- $ReturnAndExit for GuiAnimationCoroutine
- Inheritable xml-authored windows and custom controls if there is no
<ref.Parameter>
. This contraint will be removed in the future. - Ribbon
- RibbonTab
- RibbonTabPage
- RibbonGroup
- RibbonButtons
- RibbonGalleryList
Updated Demos:
- GacUI_Controls\DocumentEditor: Demonstrates ribbons and inheritable custom controls.
Known issues
- There are some layout issues in ribbons, See TODO.md for details and tracking progress. Expect them to be fixed in the next release.
Gaclib 0.9.6.0
Gaclib 0.9.6.0
GPU Accelerated C++ User Interface/Script Engine (Apache License 2.0 with extra conditions)
Website for this project: http://www.gaclib.net/
This repository contains the latest release for the GacUI project, including packed library source codes, development tools, demos and documents. Complete source code can be accessed in https://github.com/vczh-libraries .
Here is a simple description to the code
- Import Gaclib source code
- Skins Predefined control templates. You will need to call
vl::presentation::theme::RegisterTheme
to set a default skin before creating any controls. Read WinMain.cpp for details.
- Skins Predefined control templates. You will need to call
- Tools
- GacGen32.exe / GacGen64.exe GacUI resource compiler and C++ code generator for x86 and x64
- CppMerge.exe Merge GacUI generated code for x86 and x64 to architecture-independent code
- ParserGen.exe General LR parser to C++ code generator
- GacGen.ps1 Do everything for you if you don't want to understand build steps
- Tutorial Sample code
- Lib Static library projects for all tutorials
- GacUI_HelloWorlds Different ways to create a GacUI hello world project
- GacUI_Layout Demo how to use GacUI layout
- GacUI_Controls Demo how to use GacUI controls
- GacUI_ControlTemplate Demo how to create control templates (skin) for GacUI controls
- GacUI_Xml Demo how to author GacUI XML resource file
- GacUI_Windows Demo how to interact with native Windows OS features.
Improvements
- Localized string
New Demos:
- GacUI_Controls\Localization: Switching between languages and displaying localized text.
Gaclib 0.9.5.0
Gaclib 0.9.5.0
GPU Accelerated C++ User Interface/Script Engine (Apache License 2.0 with extra conditions)
Website for this project: http://www.gaclib.net/
This repository contains the latest release for the GacUI project, including packed library source codes, development tools, demos and documents. Complete source code can be accessed in https://github.com/vczh-libraries .
Here is a simple description to the code
- Import Gaclib source code
- Skins Predefined control templates. You will need to call
vl::presentation::theme::RegisterTheme
to set a default skin before creating any controls. Read WinMain.cpp for details.
- Skins Predefined control templates. You will need to call
- Tools
- GacGen32.exe / GacGen64.exe GacUI resource compiler and C++ code generator for x86 and x64
- CppMerge.exe Merge GacUI generated code for x86 and x64 to architecture-independent code
- ParserGen.exe General LR parser to C++ code generator
- GacGen.ps1 Do everything for you if you don't want to understand build steps
- Tutorial Sample code
- Lib Static library projects for all tutorials
- GacUI_HelloWorlds Different ways to create a GacUI hello world project
- GacUI_Layout Demo how to use GacUI layout
- GacUI_Controls Demo how to use GacUI controls
- GacUI_ControlTemplate Demo how to create control templates (skin) for GacUI controls
- GacUI_Xml Demo how to author GacUI XML resource file
- GacUI_Windows Demo how to interact with native Windows OS features.
Improvements
- New menu features:
GuiToolstripCollection
: Hide spaces of invisible itemsGuiToolstripGroupContainer
: Insert splitters between itemsGuiToolstripGroup
: Insert multiple items in one control, often put insideGuiToolstripGroupContainer
- Responsive layout:
GuiResponsiveViewComposition
: Explicitly define views for different size level, with shared item, views should beGuiResponsiveCompositionBase
GuiResponsiveGroupComposition
: All childGuiResponsiveCompositionBase
transform at the same timeGuiResponsiveStackComposition
: All childGuiResponsiveCompositionBase
transform one by oneGuiResponsiveFixedComposition
: No transformationGuiResponsiveContainerComposition
: Automatically tell the targetGuiResponsiveCompositionBase
how to transform, which is put inResponsiveTarget
property
- Add
Context
property in both control and control template. They are connected. This property is designed for adding custom properties to controls for the need of control templates, like adding state images to buttons.
Updated Demos:
- GacUI_Controls\TextEditor: New menu features
New Demos:
- GacUI_Windows\Direct2DClock: Draw a moving clock using Direct2D API
- GacUI_Layout\Responsive1: Demo how different types of responsive layout algorithm works
- GacUI_Layout\Responsive2: An example of responsive layout
Gaclib 0.9.4.0
Gaclib 0.9.4.0
GPU Accelerated C++ User Interface/Script Engine (Apache License 2.0 with extra conditions)
Website for this project: http://www.gaclib.net/
This repository contains the latest release for the GacUI project, including packed library source codes, development tools, demos and documents. Complete source code can be accessed in https://github.com/vczh-libraries .
Here is a simple description to the code
- Import Gaclib source code
- Skins Predefined control templates. You will need to call
vl::presentation::theme::RegisterTheme
to set a default skin before creating any controls. Read WinMain.cpp for details.
- Skins Predefined control templates. You will need to call
- Tools
- GacGen32.exe / GacGen64.exe GacUI resource compiler and C++ code generator for x86 and x64
- CppMerge.exe Merge GacUI generated code for x86 and x64 to architecture-independent code
- ParserGen.exe General LR parser to C++ code generator
- GacGen.ps1 Do everything for you if you don't want to understand build steps
- Tutorial Sample code
- Lib Static library projects for all tutorials
- GacUI_HelloWorlds Different ways to create a GacUI hello world project
- GacUI_Layout Demo how to use GacUI layout
- GacUI_Controls Demo how to use GacUI controls
- GacUI_ControlTemplate Demo how to create control templates (skin) for GacUI controls
- GacUI_Xml Demo how to author GacUI XML resource file
Improvements
- Update all project files to VS 2017
- Add StateMachine feature to Workflow script
- Refactored element classes:
- Remove
GuiRoundBorderElement
, addRoundRect
inElementShapeType
, now other elements have the round border feature - Add
GuiInnerShadowElement
- Remove
- Add animation API
- Gradient animation can be defined using XML and custom Workflow/C++ types
- New coroutine operators
IGuiAnimation^
return value
New Demos:
- GacUI_Controls\CalculatorAndStateMachine
- GacUI_Controls\Animation
Gaclib 0.9.3.1
Gaclib 0.9.3.1
GPU Accelerated C++ User Interface/Script Engine (Apache License 2.0 with extra conditions)
Website for this project: http://www.gaclib.net/
This repository contains the latest release for the GacUI project, including packed library source codes, development tools, demos and documents. Complete source code can be accessed in https://github.com/vczh-libraries .
Here is a simple description to the code
- Import Gaclib source code
- Skins Predefined control templates. You will need to call
vl::presentation::theme::RegisterTheme
to set a default skin before creating any controls. Read WinMain.cpp for details.
- Skins Predefined control templates. You will need to call
- Tools
- GacGen32.exe / GacGen64.exe GacUI resource compiler and C++ code generator for x86 and x64
- CppMerge.exe Merge GacUI generated code for x86 and x64 to architecture-independent code
- ParserGen.exe General LR parser to C++ code generator
- GacGen.ps1 Do everything for you if you don't want to understand build steps
- Tutorial Sample code
- Lib Static library projects for all tutorials
- GacUI_HelloWorlds Different ways to create a GacUI hello world project
- GacUI_Layout Demo how to use GacUI layout
- GacUI_Controls Demo how to use GacUI controls
- GacUI_ControlTemplate Demo how to create control templates (skin) for GacUI controls
- GacUI_Xml Demo how to author GacUI XML resource file
Improvements
- Fix found issues in the previous release 0.9.3.0
Gaclib 0.9.3.0
Gaclib 0.9.3.0
GPU Accelerated C++ User Interface/Script Engine (Apache License 2.0 with extra conditions)
Website for this project: http://www.gaclib.net/
This repository contains the latest release for the GacUI project, including packed library source codes, development tools, demos and documents. Complete source code can be accessed in https://github.com/vczh-libraries .
Here is a simple description to the code
- Import Gaclib source code
- Skins Predefined control templates. You will need to call
vl::presentation::theme::RegisterTheme
to set a default skin before creating any controls. Read WinMain.cpp for details.
- Skins Predefined control templates. You will need to call
- Tools
- GacGen32.exe / GacGen64.exe GacUI resource compiler and C++ code generator for x86 and x64
- CppMerge.exe Merge GacUI generated code for x86 and x64 to architecture-independent code
- ParserGen.exe General LR parser to C++ code generator
- GacGen.ps1 Do everything for you if you don't want to understand build steps
- Tutorial Sample code
- Lib Static library projects for all tutorials
- GacUI_HelloWorlds Different ways to create a GacUI hello world project
- GacUI_Layout Demo how to use GacUI layout
- GacUI_Controls Demo how to use GacUI controls
- GacUI_ControlTemplate Demo how to create control templates (skin) for GacUI controls
- GacUI_Xml Demo how to author GacUI XML resource file
Improvements
- Updated tool chain
- All bat files are replaced by PowerShell scripts.
- Controls now have a ControlTemplate property that can be updated in runtime.
- Moved all the logic away from template classes. Now template classes are only a bindable object.
vl::presentation::templates::GuiCommon*
are provided for helping to create some templates that should looks similar between all the skins, like scroll views or scroll bars.
Known issues
- GuiScrollContainer's scroll bars cannot hide very quickly
- One of the AddressBook tutorial windows has wrong initial size.
Gaclib 0.9.2.0
Gaclib 0.9.2.0
GPU Accelerated C++ User Interface/Script Engine (Apache License 2.0 with extra conditions)
Website for this project: http://www.gaclib.net/
This repository contains the latest release for the GacUI project, including packed library source codes, development tools, demos and documents. Complete source code can be accessed in https://github.com/vczh-libraries .
Here is a simple description to the code
- Import Gaclib source code
- Tools
- GacGen32.exe / GacGen64.exe GacUI resource compiler and C++ code generator for x86 and x64
- CppMerge.exe Merge GacUI generated code for x86 and x64 to architecture-independent code
- ParserGen.exe General LR parser to C++ code generator
- GacGen.bat Do everything for you if you don't want to understand build steps
- Tutorial Sample code
- Lib Static library projects for all tutorials
- GacUI_HelloWorlds Different ways to create a GacUI hello world project
- GacUI_Layout Demo how to use GacUI layout
- GacUI_Controls Demo how to use GacUI controls
- GacUI_ControlTemplate Demo how to create control templates (skin) for GacUI controls
- GacUI_Xml Demo how to author GacUI XML resource file
Improvements
- Updated tool chain
- GacGen.bat will generate architecture-independent code
- New demo
- GacUI_Controls\DataGrid: Bind to the data grid control
- GacUI_Controls\ListControls: Binding to list controls
- GacUI_Controls\DocumentEditor: Using rich text control
- Remove Win7 / Win8 skins
- Temporary add DarkSkin as the default skin for tutorials
- Files are put in
Import\Skins\DarkSkin
, you must link them if you want this skin - You will need to call
vl::presentation::theme::RegisterTheme
to set a default skin before creating any controls. Read WinMain.cpp for details.
- Files are put in