• 1
  • 2
  • 3
  • 4
Monday, 07 August 2017 10:58

uniGUI comes out of beta

It was almost seven years ago since my first blog posted in this site. Yes, uniGUI has been in beta stage for seven years. It may look like a long time. Indeed, it is a long time for a beta period. We can mention several reasons for this.

The most important reason is that uniGUI initially started as a product for both VCL and web platforms. Many of you may still remember this feature. It allowed developers to create both VCL and web applications using a single source base. However, after a while, we realized that it is too hard to keep the same level of quality and richness for VCL. The Ext JS framework was growing steadily, adding new features with each new edition, and many of those features were difficult to implement for VCL. In time, the VCL part of the framework turned into an outdated and incomplete version of the web interface. This fact was unacceptable, and we decided to drop support for VCL and continue with a web-only framework. Our decision was supported by the majority of our community, and after that, we left the VCL mode behind and accelerated web only development. This was the first major architectural change in uniGUI framework.

Another major architectural change happened because we were not happy with the component hierarchy built in the initial versions of uniGUI. It was complicated and difficult to maintain. In the new architecture, the design-time code and the run-time code are fully separated. Also, the run-time code was divided into two libraries named Core and Components. The component hierarchy was also recreated and reorganized. This architecture of uniGUI is still used today.  Obviously, we were not in a rush to release version 1.00. uniGUI was developed in the form of a community project, with quality and stability as the highest priority. Of course, uniGUI could not be free because from the first day it was intended to become a commercial product. The included Ext JS library is also a commercial product which can not be deployed without an OEM license. In the year 2014, we started selling uniGUI Beta licenses. The main reason for this was that uniGUI could not continue distributing fully functional beta builds without including an OEM Ext JS license, so it became inevitable to make an OEM agreement with Sencha Inc. After that date, all uniGUI beta builds could only be obtained by purchasing a beta license from us.

According to our community our beta builds were stable enough to be used in production. Indeed many developers are using uniGUI in production for many years. Again, we decided to continue in beta mode until we are fully confident that uniGUI can be labeled as version 1.00. Fortunately we are happy to announce that uniGUI has finally came out of beta mode. Yes, eventually we have removed the phrase beta and build 1404 is our first official non-beta build. From our point of view build 1404 is just yet another build in or long chain of builds. We are aware of all  imperfections and lackings. Documentation is still not complete and component reference manual must be finished. Our highest priority is documents for now and with each new build we will continue improving uniGUI documents.

By ending the beta phase, we can say that a new era started for uniGUI. There is still much to do. Among the high priority tasks, we can count porting uniGUI to Ext JS 6.5, implementing our load balancing server and adding support for the Linux operating system. We will be busy with these tasks and continue improving uniGUI.  At this point, let me express my sincere gratitude to all developers who have supported us during the beta stage by buying beta licenses. uniGUI could not thrive without your support.
 

 

We are happy to announce that a new build for Trial Edition of uniGUI is available. It contains many bug fixes, new features and improvements. It can be downloaded from here.

Changelog Build 1393:

1.00RC
+----------------------------------------------------------------------------------------

Example

    [UNG-2005] - ChartDemo - SaveImage
    [UNG-2006] - ChartDemo - DB
    [UNG-2007] - FastReport - Dynamic
    [UNG-2008] - Revised: FastReport - MultiReport
    [UNG-2009] - Revised: FastReport
    [UNG-2045] - Grid - DBTreeGrid
    [UNG-2046] - ClientEvents-HtmlToAjax
    [UNG-2047] - Grid - DBVerticalTreeGrid
    [UNG-2049] - Grid - DBVerticalGrid
    [UNG-2062] - DBLookupComboBox - GridMode
    [UNG-2068] - PDFView (Mobile)
    [UNG-2078] - PDFViewer - UniPDFFrame

Improvement

    [UNG-1962] - Theme and Runtime should install as separate products
    [UNG-1965] - UniTreeNode: GetPrev and GetPrevSibling methods.
    [UNG-1969] - TUniFormattedNumberEdit: Ability to set FormattedInput parameters at runtime.
    [UNG-1971] - TUniChart.Axes: Min ans Max properties
    [UNG-1975] - UniMainModule: New ExtLocale property
    [UNG-1976] - UniMainModule: New ServerMessages property
    [UNG-1977] - UniServerModule: UnavailableErrMsg property moved to TUniServerMessages class
    [UNG-1978] - UniServerModule: LoadingMessage property moved to TUniServerMessages class
    [UNG-1983] - Improved error message when a blocking modal is called in OnShow/OnCreate
    [UNG-1984] - TUniFileUpload: New ExecuteN procedure
    [UNG-1991] - New TUniLibraryFileOption set "upoDefer" member.
    [UNG-1992] - TUniTreeNode: GetNext & GetNextSibling methods
    [UNG-1993] - TUniStatusBar: SimpleText property
    [UNG-1998] - TUniTreeNode: New TopItem property.
    [UNG-1999] - TUniTrackBar: New LineSize property.
    [UNG-2000] - TUniTrackBar: New UseTips property.
    [UNG-2003] - Prevent calling unsafe methods ProcessMessages & HandleMessages in DLL mode.
    [UNG-2004] - Prevent calling unsafe methods AllocateHWnd & DeallocateHWnd in DLL mode.
    [UNG-2012] - Support for full links in ServerModule.CustomFiles.
    [UNG-2014] - Corrected member visibility for TUniCustomLayoutAttribs and TUniCustomLayoutConfig classes
    [UNG-2020] - DBLookup controls: New ListFecthAll property.
    [UNG-2035] - TUniTreeView: New ShowIcon property.
    [UNG-2040] - UniServerModule: New PatchVCL option.
    [UNG-2056] - Application Icon creation logic changed.
    [UNG-2058] - New MainModule.BrowserOptions member boDisableChromeRefresh
    [UNG-2065] - UniDBGrid: Allow editor in memo field.
    [UNG-2071] - TUniFileUpload: New Width Property
    [UNG-2072] - UniNativeImageList: Improved IDE design editor.
    [UNG-2083] - All DBGrids: New EmptyText property.
    [UNG-2095] - TUniControl: New JSId property.
    [UNG-2096] - TUniFormControl: New FormControlJSId Property.

Task

    [UNG-1954] - TUniSpeedButton should publish TabStop and TabOrder
    [UNG-1955] - Fix all compile warning messages.
    [UNG-2036] - TUniImageList marked as deprecated. (Use TUniNativeImageList instead)
    [UNG-2039] - Kaspersky virus warning for installer
    [UNG-2059] - Sessions must be freed before ServerModule.OnDestroy event.
    [UNG-2063] - Delphi 10.2 Tokyo support
    [UNG-2085] - OpenSSL dlls updated to version 1.0.2k

New Feature

    [UNG-1963] - New Documentation installer
    [UNG-1973] - New methods: ShowMessageN & ShowModalN.
    [UNG-1981] - TUniFormControl: New FieldLabelFont property
    [UNG-1986] - TUniChart: New AutoRefresh property
    [UNG-1987] - TUniChart: New RefreshData method
    [UNG-1988] - TUniChartSeries: New DataSource property
    [UNG-1989] - TUniChartSeries: New YValues & XLabelsSource property
    [UNG-1990] - TUniDBGridColumn: New Flex property
    [UNG-1994] - TUniDBGrid: New ForceFit property
    [UNG-1995] - TUniChart: New OnChartImage event
    [UNG-1996] - TUniChart: New SaveImage method.
    [UNG-2001] - TUniCalendarDialog: New Execute (Blocking) function and ExecuteN methods.
    [UNG-2002] - UniMainModule: OnNewComponent event
    [UNG-2015] - TUniDBGrid: New dgColumnMove option.
    [UNG-2016] - Capability to specify worker thread stack size for ISAPI modules
    [UNG-2017] - UniServerModule: ISAPIOptions.ThreadStackSize property
    [UNG-2023] - UniServerModule: New soWipeShadowSessions option.
    [UNG-2029] - UnimMemo, UnimDBMemo: New MaxRows property
    [UNG-2042] - New Component: TUniDBTreeGrid
    [UNG-2043] - New Component: TUniDBVerticalGrid
    [UNG-2044] - New Component: TUniDBVerticalTreeGrid
    [UNG-2052] - Functions uniGUIApplication.FmtSettings and uniGUIApplication.PFmtSettings.
    [UNG-2055] - New Server Monitor statistic: Handles
    [UNG-2060] - ServerModule: New OnBeforeShutdown event.
    [UNG-2061] - UniDBLookupCombo: New GridMode property
    [UNG-2066] - New Component: TUniPDFFrame
    [UNG-2067] - New Component: TUnimPDFFrame
    [UNG-2077] - New Component: TUniSyntaxEditEx based on CodeMirror 5.25
    [UNG-2080] - ServerModule: New soControlNameAsId option.
    [UNG-2094] - TUniStringGrid: New Objects property.

Bug

    [UNG-1952] - UniThreadTimer: Changing Enabled or Interval in Timer event causes high CPU usage
    [UNG-1953] - UniDBGrid: Could not convert variant of type (UnicodeString) into type (Date)
    [UNG-1956] - Bug when login background image is blank.
    [UNG-1957] - Incoming requests may overflow when an event handler is busy for a long time
    [UNG-1958] - Unnecessary lock is performed when processing requests.
    [UNG-1959] - Design time Font.Style is wrong when ParentFont is false.
    [UNG-1960] - EmptyText can not be set at runtime
    [UNG-1961] - UniNumberEdit: OnChangeValue is not called.
    [UNG-1964] - UniTreeNode: AbsoluteIndex returns wrong value.
    [UNG-1966] - CoInitialize is not called in worker thread.
    [UNG-1967] - UniTabControl: Tabs.AddObject doesn't create new tab.
    [UNG-1968] - UniTabControl: Tabs.Insert() doesn't insert tab at correct postion.
    [UNG-1970] - Stored cookies are cleared if a new cookie is set at session startup.
    [UNG-1972] - Broken MessageDlg functionality.
    [UNG-1974] - Issue when a non-RTL control is inside a RTL parent.
    [UNG-1979] - Issue when editor KeyUp event has a handler.
    [UNG-1980] - Issue with TUniDateTimePicker and layout management when Kind = tUniDateTime
    [UNG-1982] - Issue when EurekaLog is active and there are blocking modals
    [UNG-1985] - Issue when ComboBox items contain trailing spaces.
    [UNG-1997] - Inherited grid wrongly saves properties in DFM file.
    [UNG-2010] - Tab navigation suspends when form has a UniRadioGroup
    [UNG-2011] - TUniTreeView: Change event is executed in wrong order.
    [UNG-2018] - Async request handling issue on ISAPI startup
    [UNG-2019] - UniCharInSet(): Char is casted to AnsiChar causing unicode chars to truncate.
    [UNG-2021] - TUniEdit: FormattedEdit: DecimalSeparator & DecimalPrecision can't be changed at runtime.
    [UNG-2022] - In OnSessionTimeout event timeout can not be extended beyond SessionTimeout interval.
    [UNG-2024] - TUniTreeView: AbsoluteIndex bug.
    [UNG-2025] - RefreshCurrentRow doesn't work when DataSet.RecordCount returns 0.
    [UNG-2027] - Issue with TActionList in Service/ISAPI mode.
    [UNG-2028] - Issue with UnimMemo Height and Client mode alignment
    [UNG-2030] - UniDBGrid: OnCellClick event is not fired if a CheckBox editor is directly clicked.
    [UNG-2031] - UniDBGrid: Incorrect selection list in CellClick event.
    [UNG-2032] - UniDBGrid: Null value is ignored for date field in a row editor.
    [UNG-2033] - Issue when TUniDateTimePicker is created dynamically
    [UNG-2034] - Component initialization order problem when components are dynamically added in OnShow event
    [UNG-2037] - setFieldStyle is not a function error in mobile session
    [UNG-2038] - BDS2006 Package install issue
    [UNG-2041] - UniDBGrid: Column move index bug.
    [UNG-2048] - TUniContainer client height issue when menu is attached.
    [UNG-2050] - UniDBGrid: Issue when TField returns NAN
    [UNG-2051] - Issue when Panel has docked children
    [UNG-2053] - Ajax Error issue in build 1381
    [UNG-2054] - TUniFrame.ClientEvents not implemented correctly.
    [UNG-2057] - TUniListBox: Bug when Selected Item is deleted.
    [UNG-2064] - In grid date editor fails to show after columns are reconfigured.
    [UNG-2069] - UniDBGrid: Focus is lost when tabbing through grid editors.
    [UNG-2070] - Workaround for Delphi x64 code generation bug
    [UNG-2073] - TUniDBVerticalGrid and TUniDBVerticalTreeGrid : Fields column is not shown when record count is zero.
    [UNG-2074] - TUniDBVerticalGrid and TUniDBVerticalTreeGrid : Grid doesn't start from current db row.
    [UNG-2075] - Service app freezes on stop.
    [UNG-2076] - In DLL mode variable ARequestInfo.CommandType returns hcUnknown.
    [UNG-2079] - Locale format conversion issue in UniDBGrid
    [UNG-2081] - TUniDBVerticalTreeGrid : Fields column can not be ordered according DBColumns order.
    [UNG-2082] - TUniDBVerticalGrid: Grid data is loaded twice.
    [UNG-2084] - UniDBGrid: Issue when RowEditor is active and row has a checkbox column.
    [UNG-2086] - TUniDBVerticalTreeGrid: Fields order issue.
    [UNG-2087] - TUniMenuItem does not execute ActionLink when an Action is associated.
    [UNG-2088] - Issue when CheckColumn field is in a DBTreeGrid.
    [UNG-2089] - SSL files can not be loaded in Windows Service project.
    [UNG-2090] - UniDBGrid: Value is not shown when OnGetText returns a non-numeric value for a numeric field.
    [UNG-2091] - UniDBGrid: CheckBox column issue with row select.
    [UNG-2092] - UniDBGrid: Various issues with CheckBox columns.
    [UNG-2093] - C++ Builder: New project with a blank form can not compile
    [UNG-2097] - Various persistent classes do not implement AssignTo().
    [UNG-2098] - OnChange event doesn't encode values.
    [UNG-2099] - UniDBGrid: View does not scroll to focused row.

Saturday, 25 March 2017 10:53

uniGUI Trial Edition updated to build 1384

 

We are happy to announce that a new build for Trial Edition of uniGUI is available. It contains many bug fixes, new features and improvements. It can be downloaded from here.

Changelog:

1.00RC
+----------------------------------------------------------------------------------------

Example

    [UNG-2005] - ChartDemo - SaveImage
    [UNG-2006] - ChartDemo - DB
    [UNG-2007] - FastReport - Dynamic
    [UNG-2008] - Revised: FastReport - MultiReport
    [UNG-2009] - Revised: FastReport
    [UNG-2045] - Grid - DBTreeGrid
    [UNG-2046] - ClientEvents-HtmlToAjax
    [UNG-2047] - Grid - DBVerticalTreeGrid
    [UNG-2049] - Grid - DBVerticalGrid
    [UNG-2062] - DBLookupComboBox - GridMode

Improvement

    [UNG-1962] - Theme and Runtime should install as separate products
    [UNG-1965] - UniTreeNode: GetPrev and GetPrevSibling methods.
    [UNG-1969] - TUniFormattedNumberEdit: Ability to set FormattedInput parameters at runtime.
    [UNG-1971] - TUniChart.Axes: Min ans Max properties
    [UNG-1975] - UniMainModule: New ExtLocale property
    [UNG-1976] - UniMainModule: New ServerMessages property
    [UNG-1977] - UniServerModule: UnavailableErrMsg property moved to TUniServerMessages class
    [UNG-1978] - UniServerModule: LoadingMessage property moved to TUniServerMessages class
    [UNG-1983] - Improved error message when a blocking modal is called in OnShow/OnCreate
    [UNG-1984] - TUniFileUpload: New ExecuteN procedure
    [UNG-1991] - New TUniLibraryFileOption set "upoDefer" member.
    [UNG-1992] - TUniTreeNode: GetNext & GetNextSibling methods
    [UNG-1993] - TUniStatusBar: SimpleText property
    [UNG-1998] - TUniTreeNode: New TopItem property.
    [UNG-1999] - TUniTrackBar: New LineSize property.
    [UNG-2000] - TUniTrackBar: New UseTips property.
    [UNG-2003] - Prevent calling unsafe methods ProcessMessages & HandleMessages in DLL mode.
    [UNG-2004] - Prevent calling unsafe methods AllocateHWnd & DeallocateHWnd in DLL mode.
    [UNG-2012] - Support for full links in ServerModule.CustomFiles.
    [UNG-2014] - Corrected member visibility for TUniCustomLayoutAttribs and TUniCustomLayoutConfig classes
    [UNG-2020] - DBLookup controls: New ListFecthAll property.
    [UNG-2035] - TUniTreeView: New ShowIcon property.
    [UNG-2040] - UniServerModule: New PatchVCL option.
    [UNG-2056] - Application Icon creation logic changed.
    [UNG-2058] - New MainModule.BrowserOptions member boDisableChromeRefresh

Task

    [UNG-1954] - TUniSpeedButton should publish TabStop and TabOrder
    [UNG-1955] - Fix all compile warning messages.
    [UNG-2036] - TUniImageList marked as deprecated. (Use TUniNativeImageList instead)
    [UNG-2039] - Kaspersky virus warning for installer
    [UNG-2059] - Sessions must be freed before ServerModule.OnDestroy event.
    [UNG-2063] - Delphi 10.2 Tokyo support

New Feature

    [UNG-1963] - New Documentation installer
    [UNG-1973] - New methods: ShowMessageN & ShowModalN.
    [UNG-1981] - TUniFormControl: New FieldLabelFont property
    [UNG-1986] - TUniChart: New AutoRefresh property
    [UNG-1987] - TUniChart: New RefreshData method
    [UNG-1988] - TUniChartSeries: New DataSource property
    [UNG-1989] - TUniChartSeries: New YValues & XLabelsSource property
    [UNG-1990] - TUniDBGridColumn: New Flex property
    [UNG-1994] - TUniDBGrid: New ForceFit property
    [UNG-1995] - TUniChart: New OnChartImage event
    [UNG-1996] - TUniChart: New SaveImage method.
    [UNG-2001] - TUniCalendarDialog: New Execute (Blocking) function and ExecuteN methods.
    [UNG-2002] - UniMainModule: OnNewComponent event
    [UNG-2015] - TUniDBGrid: New dgColumnMove option.
    [UNG-2016] - Capability to specify worker thread stack size for ISAPI modules
    [UNG-2017] - UniServerModule: ISAPIOptions.ThreadStackSize property
    [UNG-2023] - UniServerModule: New soWipeShadowSessions option.
    [UNG-2029] - UnimMemo, UnimDBMemo: New MaxRows property
    [UNG-2042] - New Component: TUniDBTreeGrid
    [UNG-2043] - New Component: TUniDBVerticalGrid
    [UNG-2044] - New Component: TUniDBVerticalTreeGrid
    [UNG-2052] - Functions uniGUIApplication.FmtSettings and uniGUIApplication.PFmtSettings.
    [UNG-2055] - New Server Monitor statistic: Handles
    [UNG-2060] - ServerModule: New OnBeforeShutdown event.
    [UNG-2061] - UniDBLookupCombo: New GridMode property

Bug

    [UNG-1952] - UniThreadTimer: Changing Enabled or Interval in Timer event causes high CPU usage
    [UNG-1953] - UniDBGrid: Could not convert variant of type (UnicodeString) into type (Date)
    [UNG-1956] - Bug when login background image is blank.
    [UNG-1957] - Incoming requests may overflow when an event handler is busy for a long time
    [UNG-1958] - Unnecessary lock is performed when processing requests.
    [UNG-1959] - Design time Font.Style is wrong when ParentFont is false.
    [UNG-1960] - EmptyText can not be set at runtime
    [UNG-1961] - UniNumberEdit: OnChangeValue is not called.
    [UNG-1964] - UniTreeNode: AbsoluteIndex returns wrong value.
    [UNG-1966] - CoInitialize is not called in worker thread.
    [UNG-1967] - UniTabControl: Tabs.AddObject doesn't create new tab.
    [UNG-1968] - UniTabControl: Tabs.Insert() doesn't insert tab at correct postion.
    [UNG-1970] - Stored cookies are cleared if a new cookie is set at session startup.
    [UNG-1972] - Broken MessageDlg functionality.
    [UNG-1974] - Issue when a non-RTL control is inside a RTL parent.
    [UNG-1979] - Issue when editor KeyUp event has a handler.
    [UNG-1980] - Issue with TUniDateTimePicker and layout management when Kind = tUniDateTime
    [UNG-1982] - Issue when EurekaLog is active and there are blocking modals
    [UNG-1985] - Issue when ComboBox items contain trailing spaces.
    [UNG-1997] - Inherited grid wrongly saves properties in DFM file.
    [UNG-2010] - Tab navigation suspends when form has a UniRadioGroup
    [UNG-2011] - TUniTreeView: Change event is executed in wrong order.
    [UNG-2018] - Async request handling issue on ISAPI startup
    [UNG-2019] - UniCharInSet(): Char is casted to AnsiChar causing unicode chars to truncate.
    [UNG-2021] - TUniEdit: FormattedEdit: DecimalSeparator & DecimalPrecision can't be changed at runtime.
    [UNG-2022] - In OnSessionTimeout event timeout can not be extended beyond SessionTimeout interval.
    [UNG-2024] - TUniTreeView: AbsoluteIndex bug.
    [UNG-2025] - RefreshCurrentRow doesn't work when DataSet.RecordCount returns 0.
    [UNG-2027] - Issue with TActionList in Service/ISAPI mode.
    [UNG-2028] - Issue with UnimMemo Height and Client mode alignment
    [UNG-2030] - UniDBGrid: OnCellClick event is not fired if a CheckBox editor is directly clicked.
    [UNG-2031] - UniDBGrid: Incorrect selection list in CellClick event.
    [UNG-2032] - UniDBGrid: Null value is ignored for date field in a row editor.
    [UNG-2033] - Issue when TUniDateTimePicker is created dynamically
    [UNG-2034] - Component initialization order problem when components are dynamically added in OnShow event
    [UNG-2037] - setFieldStyle is not a function error in mobile session
    [UNG-2038] - BDS2006 Package install issue
    [UNG-2041] - UniDBGrid: Column move index bug.
    [UNG-2048] - TUniContainer client height issue when menu is attached.
    [UNG-2050] - UniDBGrid: Issue when TField returns NAN
    [UNG-2051] - Issue when Panel has docked children
    [UNG-2053] - Ajax Error issue in build 1381
    [UNG-2054] - TUniFrame.ClientEvents not implemented correctly.
    [UNG-2057] - TUniListBox: Bug when Selected Item is deleted.

Tuesday, 24 January 2017 15:12

uniGUI Release Candidate is here!

We are happy to announce that uniGUI has switch from beta to RC stage. Finally, we have a Release Candidate for uniGUI!

The new RC build is available for all editions including uniGUI Trial edition.

It contains many bug fixes, new features and improvements.
 

Changelog:

1.00RC
+----------------------------------------------------------------------------------------

Improvement

    [UNG-1962] - Theme and Runtime should install as separate products
    [UNG-1965] - UniTreeNode: GetPrev and GetPrevSibling methods.
    [UNG-1969] - TUniFormattedNumberEdit: Abbility to set FormattedInput parameters at runtime.
    [UNG-1971] - TUniChart.Axes: Min ans Max properties

Task

    [UNG-1954] - TUniSpeedButton should publish TabStop and TabOrder
    [UNG-1955] - Fix all compile warning messages.

New Feature

    [UNG-1963] - New Documentation installer
    [UNG-1973] - New methods: ShowMessageN & ShowModalN.

Bug

    [UNG-1952] - UniThreadTimer: Changing Enabled or Interval in Timer event causes high CPU usage
    [UNG-1953] - UniDBGrid: Could not convert variant of type (UnicodeString) into type (Date)
    [UNG-1956] - Bug when login background image is blank.
    [UNG-1957] - Incoming requests may overflow when an event handler is busy for a long time
    [UNG-1958] - Unnecessary lock is performed when processing requests.
    [UNG-1959] - Design time Font.Style is wrong when ParentFont is false.
    [UNG-1960] - EmptyText can not be set at runtime
    [UNG-1961] - UniNumberEdit: OnChangeValue is not called.
    [UNG-1964] - UniTreeNode: AbsoluteIndex returns wrong value.
    [UNG-1966] - CoInitialize is not called in worker thread.
    [UNG-1967] - UniTabControl: Tabs.AddObject doesn't create new tab.
    [UNG-1968] - UniTabControl: Tabs.Insert() doesn't insert tab at correct postion.
    [UNG-1970] - Stored cookies are cleared if a new cookie is set at session startup.
    [UNG-1972] - Broken MessageDlg functionality.

We are happy to announce that a new build for Trial Edition of uniGUI is available. It contains many bug fixes, new features and improvements.
 

Changelog:

0.99.96
+----------------------------------------------------------------------------------------

Example

    [UNG-1838] - BlockingModals
    [UNG-1839] - SyncClientUpdate - 1
    [UNG-1840] - SyncClientUpdate - 2
    [UNG-1841] - SyncClientUpdate - 3
    [UNG-1885] - FileUpload - Filter
    [UNG-1888] - SyncClientUpdate - 4 - ShowMask
    [UNG-1893] - SyncClientUpdate - 5
    [UNG-1910] - DBGridImages
    [UNG-1911] - DBLookupComboBox - Custom Remote Query
    [UNG-1914] - DBLookupComboBox - Custom Remote Query (CDS)
    [UNG-1922] - Grid - DragDrop - Custom Handler
    [UNG-1926] - GridCellStyle

Improvement

    [UNG-1855] - TUnimDBListGrid: Column.Alignment implemented.
    [UNG-1858] - Server Monitor session should be created even if current session > MaxSessions
    [UNG-1871] - Hacking Preventation: Avoid processing events from controls that are disabled or hidden.
    [UNG-1881] - SendFile should disable browser cache
    [UNG-1884] - TUniFileUpload: Filter property implemented
    [UNG-1887] - UniSession.Synchronize() method no longer needs Timer events to operate.
    [UNG-1889] - UniDBGrid: Grouping can be disabled/enabled at runtime
    [UNG-1895] - Grid row selection improvement for custom uniGUI themes
    [UNG-1898] - Session should create restart url based on HTTP Referer.
    [UNG-1901] - New TUniChart, TUnimChart Axes property
    [UNG-1912] - All Combo boxes: New RemoteQueryRetainResult property.
    [UNG-1915] - Issue when a blocking modal is called during MainForm initialization
    [UNG-1917] - TUnimEdit: CharCase property implemented.

Task

    [UNG-1011] - Integrate SynEdit in framework with different unit names
    [UNG-1843] - Indy version upgraded to 10.6.2
    [UNG-1844] - OpenSSL dlls updated to version 1.0.2
    [UNG-1846] - Now jQuery is included for mobile platform by default.

New Feature

    [UNG-1835] - Ability to show blocking modal dialogs
    [UNG-1836] - UniMainModule: New EnableSynchronousOperations property
    [UNG-1837] - New functions: ShowModal, Prompt and MessageDlg
    [UNG-1850] - TUniForm: OnAfterShow event
    [UNG-1853] - UniFileUpload: Execute method now is a function.
    [UNG-1879] - UniDBNavigator: New BeforeAction event.
    [UNG-1880] - Methods NewCacheFileUrl() & NewCacheFile(): "AvoidBrowserCache" parameter added.
    [UNG-1890] - TUniControl/Form/Frame new ShowMask / HideMask methods
    [UNG-1897] - ServerModule.UrlReferer property
    [UNG-1899] - UniSession.UrlReferer property
    [UNG-1907] - New OnChangeValue event for form controls
    [UNG-1908] - UnimDBGrid: ImageOptions property
    [UNG-1909] - UnimDBGrid: OnFieldImage, OnFieldImageURL events
    [UNG-1925] - ServerModule: New UniPackagesRoot property
    [UNG-1927] - Class TUniCellAttribs: New Style property
    [UNG-1930] - TUniDBRadioGroup: New Values property

Bug

    [UNG-1746] - UnimDBDatePicker: null date issue (ShowBlankDate property does not work)
    [UNG-1831] - Column.Alignment is not set to Field's default value
    [UNG-1832] - UniContainerPanel contents are not clipped at borders.
    [UNG-1833] - Session is terminated when exception occurs during form creation
    [UNG-1834] - UniTimer does not stop when ChainMode is True
    [UNG-1842] - TUniDateTimePicker bug when using property - FieldLabelAlign
    [UNG-1845] - TUnimHTMLFrame: Scripts are not executed.
    [UNG-1847] - UniPanel doesn't start as collapsed if Collapsed property is True.
    [UNG-1848] - Top most nested blocking uniForm can not be closed.
    [UNG-1849] - When EnableSynchronousOperations = true, UniForm with Callback can not be closed
    [UNG-1851] - MSVCR120.dll dependency in the installer
    [UNG-1852] - Bug in ShowModal when Form is blocking
    [UNG-1854] - TUnimDBGrid: Columns width are incorrect when columns are automatically created
    [UNG-1856] - Grid filter and editor fields are destroyed manually when owner is destroying
    [UNG-1857] - Screen size is not sent to the server when MainForm mode is uniAlignmentClient
    [UNG-1859] - Editor ClearButton doesn't work in RTL mode.
    [UNG-1860] - Initial UniTrackBar position is always 0
    [UNG-1861] - UniDBGrid: Summary, SummaryTotal background issue
    [UNG-1862] - TUniGroupBox Align/Anchor issue
    [UNG-1863] - MenuItem events are not removed when destroyed dynamically.
    [UNG-1864] - Synchronization issue when multiple requests hit same session
    [UNG-1865] - UniDBGrid: Grouping display error when ShowCaption and ShowValue are False
    [UNG-1866] - TUniFrame: Wrong declaration of Prompt and MessageDlg functions
    [UNG-1867] - Form parameters are not handled in correct order
    [UNG-1868] - UniPageControl: TabBar is not set to Visible when a new Tab is added.
    [UNG-1869] - JS events are not released when removed on server side
    [UNG-1870] - TUniGroupBox: Client area is not positioned correctly.
    [UNG-1872] - Recent issue in build 1326: Synchronization problem when multiple requests hit same session
    [UNG-1873] - TUniEdit: Setting MaxLength at runtime
    [UNG-1874] - Issues related to AlwaysOnTop and menus.
    [UNG-1875] - Issues related to AlwaysOnTop and MessageBox.
    [UNG-1876] - Issue in build 1328 related to disabled controls
    [UNG-1877] - CalendarPanel and Brazilian Daylight Saving issue
    [UNG-1878] - uniUrlFrame : Console error "Uncaught ReferenceError : iframe_loadUniUrl"
    [UNG-1883] - TabSheet is not closable.
    [UNG-1891] - DateTimePicker is always placed at bottom when parent is a FieldSet
    [UNG-1892] - UniEdit.InputMask is not filtered correctly when text contains mask characters.
    [UNG-1894] - In DBGrid # sign in DisplayFormat is ignored.
    [UNG-1896] - Dynamically created controls are not aligned correctly if Align is set after setting Parent
    [UNG-1900] - RadioGroup runtime font issue
    [UNG-1902] - UniApplicatiopn.Parameters are not set correctly if url contains a ServerModule.UrlPath
    [UNG-1903] - UniGUIFrame initialization order issue
    [UNG-1904] - TUniChart: chart data is not inited if prepared in Form.OnShow event.
    [UNG-1905] - Mobile Form Show method call order is wrong.
    [UNG-1906] - Issue when a Mobile form containing TabPanel is closed.
    [UNG-1913] - UniDBLookupCombo: Issue with custom queries when RemoteQuery is enabled.
    [UNG-1916] - Missing ";" in CSS code of uniGUI visual themes.
    [UNG-1918] - Firefox 49 and Mobile display issues
    [UNG-1919] - In mobile Firefox browser phone platform is not recognized.
    [UNG-1920] - Putting a UniListBox on a disabled Panel throws a JS error.
    [UNG-1921] - Designer bug when deleting a UniTabSheet
    [UNG-1923] - UniPanel: Collapse / Expand events should not be fired when client side alignment is active
    [UNG-1924] - UniNativeImageList: Bug when used in an inherited Frame/Form
    [UNG-1928] - UniDBNumberEdit error when field has a DisplayFormat.
    [UNG-1929] - DBLookup controls sometimes doesn't fetch all records.

We are happy to announce that a new version for Trial Edition of uniGUI is available.

This new version contains an exciting new feature which enables modal forms and windows to be shown in a true modal state.

It means that modal forms will execute code execution until user closes the modal form. This will simplifies code migration between legacy VCL apps to uniGUI web apps.

 

Changelog:

0.99.96
+----------------------------------------------------------------------------------------
Example

    [UNG-1838] - BlockingModals
    [UNG-1839] - SyncClientUpdate - 1
    [UNG-1840] - SyncClientUpdate - 2
    [UNG-1841] - SyncClientUpdate - 3

Task

    [UNG-1011] - Integrate SynEdit in framework with different unit names
    [UNG-1843] - Indy version upgraded to 10.6.2
    [UNG-1844] - OpenSSL dlls updated to version 1.0.2
    [UNG-1846] - Now jQuery is included for mobile platform by default.

New Feature

    [UNG-1835] - Ability to show blocking modal dialogs
    [UNG-1836] - UniMainModule: New EnableSynchronousOperations property
    [UNG-1837] - New functions: ShowModal, Prompt and MessageDlg
    [UNG-1850] - TUniForm: OnAfterShow event
    [UNG-1853] - UniFileUpload: Execute method now is a function.

Bug

    [UNG-1831] - Column.Alignment is not set to Field's default value
    [UNG-1832] - UniContainerPanel contents are not clipped at borders.
    [UNG-1833] - Session is terminated when exception occurs during form creation
    [UNG-1834] - UniTimer does not stop when ChainMode is True
    [UNG-1842] - TUniDateTimePicker bug when using property - FieldLabelAlign
    [UNG-1845] - TUnimHTMLFrame: Scripts are not executed.
    [UNG-1847] - UniPanel doesn't start as collapsed if Collapsed property is True.
    [UNG-1848] - Top most nested blocking uniForm can not be closed.
    [UNG-1849] - When EnableSynchronousOperations = true, UniForm with Callback can not be closed
    [UNG-1851] - MSVCR120.dll dependency in the installer
    [UNG-1852] - Bug in ShowModal when Form is blocking

Friday, 20 May 2016 11:17

Welcome to Our New Website

Finally our new site is online! It adopts a modern responsive design which makes it compatible will all desktop and mobile browsers. We will continue improving the layout and adding more content to uniGUI website.

Thursday, 01 January 2015 17:06

Version 0.98 is available

We are happy to announce that a new of uniGUI version is available. Version 0.98 brings lots of new features and bug fixes. Please see changelog.txt file after installation for details.

As we have announced in a previous blog there are two versions of uniGUI. A feature limited trial edition for evaluation purpose only and a full commercial edition.

In order to get the trail edition if you have not already joined please join our forums first, then visit downloads section to get the latest available trial edition.

Those who want to get the unlimited full version of the framework should order a subscription. Please join our forums and then visit here for details.

Best regards,

Farshad Mohajeri

Thursday, 16 October 2014 18:05

Recent news!

After a long intermission; almost more than two years here is a new blog about uniGUI. Those of you who were following our forums are already aware of current state of the project. Beta development continues and we are about to publish version 0.98. Interesting that our last blog was about version 0.89.

As you may estimate framework has become mature enough to be used in production. Many members of our community are using uniGUI in production. So what happened with versions between 0.90 through 0.97?

Wednesday, 27 June 2012 18:03

Version 0.89 is available

Here is another beta build for uniGUI available for public download.

0.89 is another step towards stability and a major step towards scalability.

In past we have had reports regarding server crashes when there was an overrun condition in system resources. A close examine showed us that some of the sensitive and limited OS resources such as GDI objects could overrun when there are hunderds of sessions. To resolve this issue  some of the imaging components such as TImageList and TUniImage was redesigned to avoid excessive Memory and GDI resource consumption.

We also added a new and detailed server monitor which gives more detailed information regarding resource consumption and other sensitive information.


Warning: There is a
breaking change in this new version: Delphi's standard TImageList is no longer supported. You must replace all instances of TImageList with TUniImageList.

 

Instructions:

  • Open your uniGUI project.
  • Open forms containing TImageList.
  • Switch to DFM mode.
  • Find & Replace all instances of TImageList with TUniImageList.
  • Switch back to Form mode and rebind all ImageLists to related controls.
  • Save your form. You'll be prompted to fix all instances with mismatched type. Answer Yes to all prompts.
Page 1 of 4

Lastest Blog Posts

  • uniGUI comes out of beta +

    It was almost seven years ago since my first blog posted in this site. Yes, uniGUI has been in beta Read More
  • uniGUI Trial Edition updated to build 1393 +

    We are happy to announce that a new build for Trial Edition of uniGUI is available. It contains many bug Read More
  • uniGUI Trial Edition updated to build 1384 +

    We are happy to announce that a new build for Trial Edition of uniGUI is available. It contains many bug Read More
  • uniGUI Release Candidate is here! +

    We are happy to announce that uniGUI has switch from beta to RC stage. Finally, we have a Release Candidate Read More
  • uniGUI Trial edition upgraded to version 0.99.96 build 1346 +

    We are happy to announce that a new build for Trial Edition of uniGUI is available. It contains many bug Read More
  • Trial edition is upgraded to version 0.99.96 build 1321 +

    We are happy to announce that a new version for Trial Edition of uniGUI is available. This new version contains Read More
  • 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 Read More
  • 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 Read More
  • Welcome to Our New Website +

    Finally our new site is online! It adopts a modern responsive design which makes it compatible will all desktop and Read More
  • Version 0.98 is available +

    We are happy to announce that a new of uniGUI version is available. Version 0.98 brings lots of new features Read More
  • 1
  • 2
  • 3
  • 4