New 2024 roadmap is announced
We are happy to announce our new roadmap.
For full article please visit below link:
uniGUI introduces WebSockets
We are happy to announce that uniGUI has implemented support for WebSockets technology. This will open a whole new door to the way developers can manage events in a uniGUI web application.
For main article please follow below link:
New Roadmap is announced!
We are happy to announce our new roadmap!
Please follow this link for more details.
uniGUI Trial Edition updated to build 1308
We have updated trial edition to the most recent version. This update will fix an issue which prevented trial editions from creating new ISAPI DLL applications. This build fixes this issue, so you will be able to evaluate ISAPI DLL in uniGUI Trial Edition.
As always trial edition can be downloaded from our download page.
Version 0.99.95 is available
We are glad to announce that version 0.99.95 is available for all uniGUI editions. Trial edition can be downloaded from download section.
This version includes many fixes and new features. Most probably it is the last version right before version 1.00RC which will be announced soon. Thanks to all developers around the world by supporting us especially those who have ordered a license.
Starting from this edition we have renamed project group file names to avoid confusion. In previous versions project groups were named with a number representing Delphi version. For example, uniGUI2011Group was name of project group for Delphi XE. In this new version we have renamed it to uniGUI_XE_StdGroup, so respected project group can be easily spotted.
ChangeLog for this version:
0.99.95
+----------------------------------------------------------------------------------------
[UNG-1783] - UniComboBox: Wrong text is diplayed when deleting item at current index
[UNG-1782] - UniDBLookupCombo: Execption raised when clearing filter edit
[UNG-1781] - Project groups renamed to match actual Delphi edition names
[UNG-1779] - UniDBLookupCombo: Execption raised while debugging
[UNG-1780] - UniDBLookupCombo: Issue when list is created at runtime and KeyValue is set to Null
[UNG-1778] - UniPropertyGrid broken functionality
[UNG-1777] - CoInitialize is not called properly.
[UNG-1765] - JS error when uniDBGrid LoadMask is not enabled.
[UNG-1762] - TUniImageListAdapter memory issue when attached to an Action
[UNG-1761] - TUniImageListAdapter scalability issue
[UNG-1756] - Action Lists implementation
[UNG-1757] - Action List support for Menus (MainMenu, PopupMenu, MenuItem)
[UNG-1758] - ToolBar with Action List and button with Action
[UNG-1760] - Broken LoadMask property of uniDBGrid
- 0002325: In Combo controls EmptyText is not published.
- 0002324: Bug when UniDataTimePicker is editor in DBGrid.
- 0002323: UniDBGrid: Filter doesn't work correctly after clear button.
- 0002322: UniDBLookupCombo: Component is not reset when filter is cleared.
- 0002321: UniImageList/UniNativeImageList: New UseGlobalCache property.
- 0002320: UniImageList/UniNativeImageList: Draw method implemented.
- 0002319: Issue when CoInitialize is called after ServerModule is inited.
- 0002078: Use global cache for ImageLists and other objects where possible.
- 0002313: Bug in uniNativeImage list GetPng and GetBitmap methods.
- 0002312: Recent issue in uniDBGrid which prevents mobile grids from working properly.
- 0002311: Delphi 10.1 Berlin support.
- 0002310: ShowMessage issue when active form is a LoginForm.
- 0002307: DateTimePicker: Can't set time @runtime when Kind = tUniTime.
- 0002302: OnColumnFilter event must return KeyValue when Filter is a DBLookupCombo.
- 0002301: Columns[n].Filtering.VarValue must return KeyValue when filter is a DBLookupCombo.
- 0002300: UniDBLookupCombo: Style property is published.
- 0002298: UniComboBox: New AnyMatch property.
- 0002295: Grid column Filter doesn't resize with the column.
- 0002294: Bug when UniContainerPanel is Mask target.
- 0002293: Issue when UniDBLookupCombo is a grid editor and field is a Lookup field.
New Demo: DBLookupComboBox
New Demo: ImageLists
New Demo: ActionList
Client side scripting with uniGUI
One of the exciting new features in version 0.86 is ability to write client side JavaScript event handlers from within Delphi IDE. Each uniGUI control is attached to an Ext JS control. In some cases there are more than one Ext JS controls for a uniGUI control. For example a TUniForm is a combination of an ext.Window and an ext.form.FormPanel.
Migration to version 0.86
As we discussed earlier versions 0.85 and 0.86 will be new milestones for uniGUI library. They will introduce new framework core which brings lots of architectural changes and improvements.
Here is a brief list of these changes:
- All controls will be descendant of a common root opposed to previous releases where each Control had a different ancestor.
- Only implemented properties and events are published. This will avoid confusion in previous versions where lots of public and published features in VCL mode were not implemented in Web mode.
- Class types no longer change among Web and VCL. Now TUniButton is always a TUniButton regardless of the displayed mode.
- In event handlers Sender parameter will always contain correct class type.
- As a result of above changes you can safely use as and is operators.
- Advanced client side event scripting.
- Extended Server side event handling for click and mouse events.
Form Inheritance
Form Inheritance is one of the advanced features in Delphi. I've never used it much myself, but I know without it uniGUI can not be considered as complete. Some users asked about it and I decided to speed up its implementation.Currently it is implemented and being tested.
Procedure to create a new Inherited Form is a bit different than Delphi. You must use the newly added uniGUI Inherited Form function in the Wizard to create a new Inherited Form. It will display a list of available forms in your project. By simply selecting a Form from this list a new Inherited Form will be created. This feature will be available in next version 0.71.0