Releases: vczh-libraries/Release
GacUI 1.2.10.2
GacUI 1.2.10.2
GacUI / C++ Interoperable Script Engine (Apache License 2.0 with extra conditions)
Website for this project: https://vczh-libraries.github.io/ -> 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 .
Version
This version is a sub release towards GacUI 2.0.
Please check out 1.0-rc-3 for GacUI 1.0.
- Fixed
GuiGraphicsComposition::GetGlobalBounds
double calculateInternalMargin
.INVOKEGET_INTERFACE_PROXY
andINVOKEGET_INTERFACE_PROXY_NOPARAMS
break build when returningLazyList<T>
.- button behavior when not IgnoreChildControlMouseEvents.
- control not losing focus when disabled.
- progress bar is focusable.
GuiListControl
incompatible with non-default axis.GuiTextList::SelectionChanged
not raised when changing properties of the only selectedlist::TextItem
.GuiVirtualListView
inDetails
view column header height doesn't sync to item arranger in real-time.DataColumn::SetSorter
andDataColumn::SetFilter
doesn't refresh data grid items.GuiBindableDataGrid
not implements stable sorting.GuiBindableDataGrid
[UP]
and[DOWN]
not working properly right after changing selection by callingSelectCell
.- UnitTestSnapshotViewer always not render the second loaded images.
- Crash when closing the (even disabled) main window with pending modal windows exist.
- Added
/F:EnabledTestFile
to unit test CLI parameters. GuiTreeItemTemplate
change base class toGuiListItemTemplate
GuiListControl::IItemProvider(Callback)?
moved tovl::presentation::controls::list
.- Make
ItemSource
class of bindable list controls reflectable. - New theme name/virtual control:
ToolstripToolBarInMenu
,ToolstripSplitterInMenu
IGuiMenuService::GetHostThemeName
ListViewColumnItemArranger
addedColumnButtons
andColumnSplitters
properties.GuiMenuButton
exposedSubMenuHost
property.GuiVirtualDataGrid
exposedOpenedEditor
property.
GacUI 1.2.10.1
GacUI 1.2.10.1
GacUI / C++ Interoperable Script Engine (Apache License 2.0 with extra conditions)
Website for this project: https://vczh-libraries.github.io/ -> 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 .
Version
This version is a sub release towards GacUI 2.0.
Please check out 1.0-rc-3 for GacUI 1.0.
Fixed Bugs:
- Incorrect configuration in
SampleForDoc/GacUI/GacUI.sln
with x64.
GacUI 1.2.10.0
GacUI 1.2.10.0
GacUI / C++ Interoperable Script Engine (Apache License 2.0 with extra conditions)
Website for this project: https://vczh-libraries.github.io/ -> 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 .
Version
This version is a sub release towards GacUI 2.0.
Please check out 1.0-rc-3 for GacUI 1.0.
Improvements
- Vlpp
vl::char16be_t
vl::InjectDateTimeImpl
- VlppOS
- Removed
SERIALIZE_ENUM
, enum will be automatically registered UtfBase64(En|De)coder
- Removed
- GacUI
NativeImageFrameBase
for common implementation ofINativeImageFrame
bool controllerUnrelatedPlugins
andbool controllerRelatedPlugins
added toIGuiPlugin
GuiCustomControl::SetFocusableComposition
GetHostedApplication
to access the instance ofIGuiHostedApplication
in hosted mode- Add
@cpp:Private
for GacGen generated<parameter>ViewModel
variable
- GacUI Unit Test Framework
- An alpha version of GacUI unit test framework, to render UI in unit test frameworks and save the UI to files. UI file could be
git diff
or opened by a unit test snapshot viewer. The viewer is implemented inGacUI.UnitTest.UI.cpp
and you need to make it an application by yourself at this moment. (Try)?FindObjectByName
(Try)?FindControlByText
- An alpha version of GacUI unit test framework, to render UI in unit test frameworks and save the UI to files. UI file could be
- Release
- vlpp.natvis updated
Fixed Bugs:
Restore
button not renderered correctly. In both hosted and normal mode- Making a composition invisible doesn't refresh the application
- Selection of a list control is not cleared when objects of selected items are replaced
- Missing arguments in
GUI_VALUE
andGUI_RUN
macros. ShowMaximized
insideWindowOpened
doesn't work with hosted mode.
GacUI 1.2.9.1
GacUI 1.2.9.1
GacUI / C++ Interoperable Script Engine (Apache License 2.0 with extra conditions)
Website for this project: https://vczh-libraries.github.io/ -> 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 .
Version
This version is a sub release towards GacUI 2.0.
Please check out 1.0-rc-3 for GacUI 1.0.
Fixed bugs in 1.2.9.0:
- Tutorials can't start.
GacUI 1.2.9.0
GacUI 1.2.9.0
GacUI / C++ Interoperable Script Engine (Apache License 2.0 with extra conditions)
Website for this project: https://vczh-libraries.github.io/ -> 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 .
Version
This version is a sub release towards GacUI 2.0.
Please check out 1.0-rc-3 for GacUI 1.0.
Features:
- Vlpp
vl::Variant
, but without smart type conversion and comparison.vl::Overloading
.
- GacUI
- Incomplete implementation of remote protocol.
- Added macro
GUI_DEFINE_KEYBOARD_CODE_ADDITIONAL
for suggested key names. - Added
GuiGraphicsComposition::GetRelatedHitTestResult
.
Breaking Changes:
- GacUI
- Removed
DEFINE_GUI_GRAPHICS_ELEMENT(TYPE, NAME)
- private:
friend class GuiElementBase<TYPE>;
- private:
static constexpr const wchar_t* ElementTypeName = NAME;
- private:
- Removed
DEFINE_CACHED_RESOURCE_ALLOCATOR(TKEY, TVALUE)
- New base class:
GuiCachedResourceAllocatorBase<Self, TKEY, TVALUE>
- New base class:
- Removed
DEFINE_GUI_GRAPHICS_RENDERER(TELEMENT, TRENDERER, TTARGET)
- New base class:
GuiElementRendererBase<TELEMENT, TRENDERER, TTARGET>
- private:
friend class GuiElementRendererBase<TELEMENT, TRENDERER, TTARGET>;
- New base class:
- Renamed:
GuiGraphicsComposition::FindComposition
->FindVisibleComposition
IGuiGraphicsRenderTarget
andGuiGraphicsRenderTarget
associates a generator to a clipper.
- Removed
GacUI 1.2.8.1
GacUI 1.2.8.1
GacUI / C++ Interoperable 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 .
Version
This version is a sub release towards GacUI 2.0.
Please check out 1.0-rc-3 for GacUI 1.0.
Fixed Bugs:
- GacUI
- Adding item to item source of
<BindableDataGrid>
doesn't trigger refresh as expected. - NOTE: For all list controls, adding item could cause flashing during rendering for about 1 flame. To workaround this issue, call
GuiControlHost::ForceCalculateSizeImmediately
after finishing editing all items in a rendering cycle, in either C++ or Workflow. A control host is a top level window like window or menu. You could also call the same function inContainerComposition
of any list controls, but this function is only available to C++.
- Adding item to item source of
GacUI 1.2.8.0
GacUI 1.2.8.0
GacUI / C++ Interoperable 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 .
Version
This version is a sub release towards GacUI 2.0.
Please check out 1.0-rc-3 for GacUI 1.0.
Tutorials:
- Updated GacUI_Layout/Flow: New alignment:
Right
.
Fixed Bugs:
- GacUI
- Give the handler of a scroll bar a minimum size, so it doesn't disappear when a list control has too many list items.
Update:
- VlppParser2
- Improve the grammar so that it could parse an input as complex as C++20.
- GlrParserGen allows multiple AST and Syntax files.
- New
@public
keyword on Ast, only@public
types are available in other AST files, but all types are available for syntax. - New
@public
keyword on Syntax, only@public
rules are available in other Syntax files.
- New
- GacUI
- New compositions
<RepeatFreeHeightItem>
<RepeatFixedHeightItem>
<RepeatFixedHeightMultiColumnItem>
<RepeatFixedSizeMultiColumnItem>
- Rewrite implementations of
GuiListControl::IItemArranger
based on new compositions listed above. - New methods on list controls to refresh content of consecutive items in-place, without having to recreating item template objects.
- New control template entry:
RibbonGroupMenu
.
- New compositions
- Release
- Makefiles available for tools.
GacUI 1.2.7.0
GacUI 1.2.7.0
GacUI / C++ Interoperable 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 .
Version
This version is a sub release towards GacUI 2.0.
Please check out 1.0-rc-3 for GacUI 1.0.
Tutorials:
- Created UI_Controls/Dialogs: Demo system dialogs.
- Created GacUI_Controls/GlobalHotKey: Demo global hotkey.
- Updated GacUI_Controls/LocalizedStrings: Demo adding new languages outside of
<LocalizedStrings/>
.
Fixed Bugs:
- VlppReflection
- Fix issue of DateTime parsing
Breaking Chages:
- GacUI
- Size and location of compositions are no longer calculated as required, you can only accessed
Cached*
properties for results from the last layout, which triggeredCached*Changed
events when being updated. GacUI will trigger layout at appropriate timing. DO NOT program relying on the timing since it could be changed in future optimizations. GuiGraphicsComposition
- Remove
Margin
propertyIsTrivialComposition
ClientArea
propertyMinPreferredClientSize
propertyPreferredBounds
propertyPreviousCalculatedBounds
propertyBounds
property
- Add
CachedMinSize
propertyCachedMinClientSize
propertyCachedBounds
propertyCachedClientArea
property
- Remove
GuiBoundsComposition
Bounds
->ExpectedBounds
AlignmentToParent
property will no longer consider parent'sInternalMargin
property in layout.
GuiTableComposition
- Remove
GetCellArea
UpdateCellBounds
- When
MinSizeLimitation
property is notLimitToElementAndChildren
, sizes of cells will not be considered in its minimum size.
- Remove
- Remove
GuiGraphicsSite
, merge intoGuiGraphicsComposition
. FlowAlignment::Right
.GuiRepeatCompositionBase
- Add
Context
property.
- Add
- Size and location of compositions are no longer calculated as required, you can only accessed
GacUI 1.2.6.0
GacUI 1.2.6.0
GacUI / C++ Interoperable 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 .
Version
This version is a sub release towards GacUI 2.0.
Please check out 1.0-rc-3 for GacUI 1.0.
Tutorials:
- Created UI_Controls/Dialogs: Demo system dialogs.
- Created GacUI_Controls/GlobalHotKey: Demo global hotkey.
- Updated GacUI_Controls/LocalizedStrings: Demo adding new languages outside of
<LocalizedStrings/>
.
Update:
- Workflow
- Added
static{}
statement for module initialization. - Disallow
struct X
to haveX?
field.
- Added
- GacUI
- Support
[LEFT]
and[RIGHT]
keyboard navigation for tree view controls. - Remove
SysKeyDown
andSysKeyUp
, all events go toKeyDown
andKeyUp
. ThemeName::SystemFrameWindow
andThemeName::CustomFrameWindow
.<ToolstripCommand Shortcut="global:Ctrl+C"/>
.
- Support
- GacGen
<LocalizedStringsInjection/>
.- DarkSkin types are included as predefined types.
GacUI 1.2.5.0
GacUI 1.2.5.0
GacUI / C++ Interoperable 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 .
Version
This version is a sub release towards GacUI 2.0.
Please check out 1.0-rc-3 for GacUI 1.0.
Tutorials:
- Created ColorPicker2: Demo
<ComboButton/>
. - Updated WindowSkin: Add an "Open New Window" button that recursively creates sub windows.
Fixed Bugs:
- GuiSharedSizeRootComposition makes rendering non-stopped.
- Hosted mode dialog service: message box is not shown at the center.
Adapting C++20
- Use
std::string_ordering
andoperator<=>
everywhere. - Added
LazyList<T>::OrderBySelf
andLazyList<T>::OrderByKey
. - Refactor
Tuple
,Pair
,Nullable
. - Remove
Lazy
.