Skip to content

Releases: vczh-libraries/Release

GacUI 1.2.9.1

20 Feb 08:06
Compare
Choose a tag to compare

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

16 Feb 22:03
Compare
Choose a tag to compare

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;
    • Removed DEFINE_CACHED_RESOURCE_ALLOCATOR(TKEY, TVALUE)
      • New base class: GuiCachedResourceAllocatorBase<Self, TKEY, TVALUE>
    • Removed DEFINE_GUI_GRAPHICS_RENDERER(TELEMENT, TRENDERER, TTARGET)
      • New base class: GuiElementRendererBase<TELEMENT, TRENDERER, TTARGET>
      • private: friend class GuiElementRendererBase<TELEMENT, TRENDERER, TTARGET>;
    • Renamed: GuiGraphicsComposition::FindComposition -> FindVisibleComposition
    • IGuiGraphicsRenderTarget and GuiGraphicsRenderTarget associates a generator to a clipper.

GacUI 1.2.8.1

07 Jan 05:48
Compare
Choose a tag to compare

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 in ContainerComposition of any list controls, but this function is only available to C++.

GacUI 1.2.8.0

06 Jan 13:35
Compare
Choose a tag to compare

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.
  • 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.
  • Release
    • Makefiles available for tools.

GacUI 1.2.7.0

09 Jul 06:49
Compare
Choose a tag to compare

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 triggered Cached*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 property
        • IsTrivialComposition
        • ClientArea property
        • MinPreferredClientSize property
        • PreferredBounds property
        • PreviousCalculatedBounds property
        • Bounds property
      • Add
        • CachedMinSize property
        • CachedMinClientSize property
        • CachedBounds property
        • CachedClientArea property
    • GuiBoundsComposition
      • Bounds -> ExpectedBounds
      • AlignmentToParent property will no longer consider parent's InternalMargin property in layout.
    • GuiTableComposition
      • Remove
        • GetCellArea
        • UpdateCellBounds
      • When MinSizeLimitation property is not LimitToElementAndChildren, sizes of cells will not be considered in its minimum size.
    • Remove GuiGraphicsSite, merge into GuiGraphicsComposition.
    • FlowAlignment::Right.
    • GuiRepeatCompositionBase
      • Add Context property.

GacUI 1.2.6.0

26 Apr 12:02
Compare
Choose a tag to compare

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 have X? field.
  • GacUI
    • Support [LEFT] and [RIGHT] keyboard navigation for tree view controls.
    • Remove SysKeyDown and SysKeyUp, all events go to KeyDown and KeyUp.
    • ThemeName::SystemFrameWindow and ThemeName::CustomFrameWindow.
    • <ToolstripCommand Shortcut="global:Ctrl+C"/>.
  • GacGen
    • <LocalizedStringsInjection/>.
    • DarkSkin types are included as predefined types.

GacUI 1.2.5.0

11 Apr 06:10
Compare
Choose a tag to compare

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 and operator<=> everywhere.
  • Added LazyList<T>::OrderBySelf and LazyList<T>::OrderByKey.
  • Refactor Tuple, Pair, Nullable.
  • Remove Lazy.

GacUI 1.2.4.0

22 Mar 08:50
Compare
Choose a tag to compare

GacUI 1.2.4.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:

  • Workflow generated incorrect C++ code for event declaration with arguments.
  • GacGen generated incorrect C++ code for handling non-standard event with arguments.

Enhancement:

-GacUI

  • Rename SetCurrentController to SetNativeController.
  • GetNativeServiceSubstitution allow substitution to some services (Clipboard and `Dialog) before they are used.
  • Added SharedAsyncService
  • Added SharedCallbackService
  • Added FakeDialogService for hosted mode. It replaces the dialog service with GacUI created windows. It keeps everything inside the main window, truely hosted.

GacUI 1.2.3.0

06 Feb 18:07
Compare
Choose a tag to compare

GacUI 1.2.3.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.

Fixed Bugs:

-VlppParser2

  • Incorrect token regular expression definition for XML's CDATA.
  • Windows
    • Incorrect NativeWindowMouseInfo arguments.

Gaclib 1.2.2.0

21 Jan 13:05
Compare
Choose a tag to compare

GacUI 1.2.2.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.

Enhancements:

  • Release
    • One GacGen.exe can compile a resource and generate code for both x86 and x64.
    • Executables no longer commited to Tools, please read README.md for details.