Exontrol! ExSuite Package - Release Notes (https://exontrol.com/exsuite.jsp)
18.0.0.4 Apr 01, 2025
ExCalc: *NEW: The ex-HTML tags, including fgcolor, bgcolor, gra, out, sha, solidline, and dotline, now support 150 named colors, such as <fgcolor red>, as well as RGB format specifications like <fgcolor rgb(255,0,0)>. This enhancement offers more flexibility in defining colors within ex-HTML tags
ExCalc: *Added: The ExecuteTemplate() method can return the value of a variable. For instance, the eXSurface's PointToPosition method uses variables by reference which is not supported in PowerBuilder. For that you can use a code like ExecuteTemplate("dim x,y;x=-1;y=-1;PointToPosition(x,y);x") that returns the x-position (surface's coordinates) of the current mouse pointer. In the same manner you can use ExecuteTemplate("dim x,y;x=-1;y=-1;PointToPosition(x,y);y") to return the y-position.
ExCalc: *Fixed: Prevent returning the event parameter by reference when accessing the EventParam(index) property. For example, PowerBuilder generates a 'Bad runtime function reference' error if an event parameter passed by reference is accessed through the EventParam(index) property
ExEdit: *Added: Enhances the loading speed of EBN files
ExEdit: *Fixed: The Background(exToolTipAppearance) call might be time-consuming
ExEdit: *Fixed: Prevent returning the event parameter by reference when accessing the EventParam(index) property. For example, PowerBuilder generates a 'Bad runtime function reference' error if an event parameter passed by reference is accessed through the EventParam(index) property
ExFileView: *NEW: Show the column's drop down filter bar button differently, while the column has a filter applied
ExFileView: *Added: The Background(exHeaderFilterBarActive) property specifies the visual appearance of the drop down filter bar button, while filter is applied to the column
ExFileView: *Fixed: Expand/collapse glyphs are DPI aware
ExG2antt: *Added: The Items.EnsureVisibleBar(Item,Key) method ensures that the item-bar fits the chart's visible area. The EnsureVisibleBar method scrolls vertically the items section and horizontally the chart so the item-bar fits the chart visible area.
ExG2antt: *Added: The Background(exChartCreateBar) property specifies the visual appearance to show the frame to create newly bars by drag and drop in the chart panel (the exChartCreateBar property supports solid or EBN colors)
ExG2antt: *Added: The Background(exCreateBarHeight) property specifies the height of the frame to create newly bars by drag and drop in the chart panel. If the Background(exCreateBarHeight) property is negative the item's height determines the height of the create-bar frame.
ExG2antt: *Fixed: Ensures that the cell being edited/focused fits the control's client area when it is used in a higher item (CRD, ScrollBySingleLine, Column.Def(exCellFormatLevel))
ExG2antt: *Fixed: The column is not visible anymore, once you ungroup it (remove it from the control's sort/group bar), after the control's layout/arrangement has been restored using the Layout property (SortBarVisible, AllowGroupBy property)
ExG2antt: *Fixed: The cell's content is refreshed only if the cursor hovers it (ComputedField, Editor.EditType)
ExG2Host: *NEW: Support for "FileGroupDescriptor" and "FileContents" clipboard format, or ability to accept messages or attachments by drag and drop from the MS Outlook application (or any other applications that use these clipboard format)
ExG2Host: *Added: During the OLEDragDrop event the Data.Files.Count property returns the number of messages or attachments being dropped, while Data.Files(index) property returns the fully path-name of the file that contains the message or the attachment. The control automatically extracts the message/attachment's content to a temporarily file, as you would drop a file from Windows Explorer.
ExG2Host: *Added: The Items.CellMerge(Item,Column) supports a string value that holds the list of identifiers separated by comma. For instance, Items.CellMerge(Item,0) = "1,2,3", specifies that the cell on column 0, merges with cells of columns 1, 2, 3. The syntax is equivalent with Items.CellMerge(Item,0) = 1; Items.CellMerge(Item,0) = 2; Items.CellMerge(Item,0) = 3;
ExGauge: *Added: Delphi 12 sample
ExGauge: *Added: Enhances the loading speed of EBN files
ExGauge: *Fixed: Prevent returning the event parameter by reference when accessing the EventParam(index) property. For example, PowerBuilder generates a 'Bad runtime function reference' error if an event parameter passed by reference is accessed through the EventParam(index) property
ExGrid: *NEW: Multiple improvements for expression-like properties such as: ConditionalFormat.Expression, Column.FormatColumn, Items.FormatCell and so on
ExGrid: *Added: a `like` b binary-operator compares the string a against the pattern b. The pattern b may contain wild-characters such as *, ?, # or [] and can have multiple patterns separated by space character. In order to have the space, or any other wild-character inside the pattern, it has to be escaped, or in other words it should be preceded by a \ character. For instance "value like `F*e`" matches all strings that start with F and ends on e, or "value like `a* b*`? indicates any strings that start with a or b character.
ExGrid: *Added: The 0x or 0X sequence proceed the hexa-representation of a number, in properties that support expressions. For instance, "value = 0x100" specifies whether the value is 256 ( 0x100 in hexa-representation )
ExGrid: *Added: `hex` a unary-operator converts the giving string from hexa-representation to a numeric value, or converts the giving numeric value to hexa-representation. For instance, hex(`FF`) returns 255, while the hex(255) or hex(0xFF) returns the `FF` string. The hex(hex(`FFFFFFFF`)) always returns `FFFFFFFF` string, as the second hex call converts the giving string to a number, and the first hex call converts the returned number to string representation (hexa-representation).
ExGrid: *Added: a `bitand`, `bitor`, `bitxor` b binary/bitwise-operator computes the AND/OR/XOR operation on bits of a and b, and returns the unsigned value. For instance, 0x01001000 bitand 0x10111000 returns 0x00001000, 0x01001000 bitor 0x10111000 returns 0x11111000, 0x01110010 bitxor 0x10101010 returns 0x11011000.
ExGrid: *Added: a `bitshift` b, binary/bitwise-operator shifts every bit of a value to the left if b is negative, or to the right if b is positive, for b times, and returns the unsigned value. For instance, 128 bitshift 1 returns 64 ( dividing by 2 ) or 128 bitshift (-1) returns 256 ( multiplying by 2 )
ExGrid: *Added: `bitnot` x unary/bitwise-operator flips every bit of x, and returns the unsigned value. For instance, bitnot(0x00FF0000) returns 0xFF00FFFF.
ExHTML: *Added: The `format` operator of expression properties supports formatting the date values, using d, dd, ddd, ddd (day of the month as digits, with or without leading zeros, abbreviated day of the week, day of the week as specified by the current locale ), m, mm, mmm, mmmm (month as digits, with or without leading zeros, abbreviated month, month as specified by the current locale), y, yy, yyy, yyyy (year represented only by the last digits, by a full four or five digits, depending on the calendar used) literals. For instance, the "date(value) format `mmm d, yyyy`" gets the value in MMM d, YYYY format using the current locale, such as "Jan 12, 2023"
ExHTML: *Fixed: The <solidline>, <a id;options> tags are lost once the user types characters
ExHTML: *Fixed: No control frame is shown in design-mode under MS Excel's spreadsheet
ExListBar: *Added: Delphi 12 sample
ExListBar: *Fixed: Declares event parameters as [in, out] in the control's Type library to ensure that the class wrapper correctly generates code for parameters passed by reference. For example, in Delphi, the wrapper class now displays the NewValue parameter of the Change event as var NewValue: OleVariant rather than const NewValue: OleVariant.
ExListBar: *Fixed: The ReplaceIcon method fails to load icons using handles in x64 applications.
ExMiller: *Fixed: The Layout property does not refresh the control, if using uncoded format, such 'HScroll=100'
ExMiller: *Fixed: The Layout property does not work on empty control
ExMiller: *Fixed: The ScrollPos(False) property may not work properly if the ContinueColumnScroll property is False
EXMLGrid: *NEW: The ex-HTML tags, including fgcolor, bgcolor, gra, out, sha, solidline, and dotline, now support 150 named colors, such as <fgcolor red>, as well as RGB format specifications like <fgcolor rgb(255,0,0)>. This enhancement offers more flexibility in defining colors within ex-HTML tags
EXMLGrid: *Added: Minimize unnecessary invalidation calls during drag and drop operations
EXMLGrid: *Fixed: Sometimes, the Data.Files.Count property returns a wrong number of files, during OLE drag and drop events (/COM version)
ExPopupMenu: *Added: Delphi 12 sample
ExPopupMenu: *Fixed: Prevent returning the event parameter by reference when accessing the EventParam(index) property. For example, PowerBuilder generates a 'Bad runtime function reference' error if an event parameter passed by reference is accessed through the EventParam(index) property
ExPopupMenu: *Fixed: Clicking (Custom) property generates "Class Not Registered" error (Windows x64, 'Looking for object with CLSID:{7EBDAAE1-8120-11CF-899F-00AA00688B10}')
ExRibbon: *Added: Delphi 12 sample
ExRibbon: *Fixed: Declares event parameters as [in, out] in the control's Type library to ensure that the class wrapper correctly generates code for parameters passed by reference. For example, in Delphi, the wrapper class now displays the NewValue parameter of the Change event as var NewValue: OleVariant rather than const NewValue: OleVariant.
ExRibbon: *Fixed: Prevent returning the event parameter by reference when accessing the EventParam(index) property. For example, PowerBuilder generates a 'Bad runtime function reference' error if an event parameter passed by reference is accessed through the EventParam(index) property
ExSwimlane: *NEW: Undo/Redo items into control's toolbar
ExSwimlane: *Added: The ToolBarFormat property supports 103 and 104 identifiers to handle the Undo and Redo operations for the control. Use the ToolBarCaption, ToolBarToolTip properties to change the Undo/Redo's captions and tooltips. The Undo/Redo items are automatically enabled or disabled based on the control's AllowUndoRedo, CanUndo, CanRedo properties. For instance, the Undo/Redo toolbar items are automatically disabled if the AllowUndoRedo property is False.
ExSwimlane: *Added: Element.EnsureVisible method scrolls the surface to ensure that the current element fits the control's visible area (expands the parent-elements as well)
ExSwimlane: *Fixed: The element's Caption is empty during the AddElement event
ExSwimlane: *Fixed: The expropertieslist/com fails if the user is trying to spy the control (x64 version only, AllowSpy property, browses the object by drag and drop)
ExTreeCube: *Added: Enhances the loading speed of EBN files
ExTreeCube: *Fixed: The Background(exToolTipAppearance) call might be time-consuming
ExTreeCube: *Fixed: Occasionally, the Column.Position property returns negative or duplicate values when columns are dynamically added or removed
18.0.0.3 Mar 03, 2025
ExButton: *Added: The Icon parameter of the ReplaceIcon method supports loading an icon in various ways. If the ICON is not provided via its handle, it will attempt to load it from a picture using its reference, the full path to the picture file, or the picture's content encoded as BASE64 strings using the eXImages tool.
ExButton: *Fixed: The ReplaceIcon method fails to load icons using handles in x64 applications.
ExButton: *Fixed: Prevent returning the event parameter by reference when accessing the EventParam(index) property. For example, PowerBuilder generates a 'Bad runtime function reference' error if an event parameter passed by reference is accessed through the EventParam(index) property
ExCalendar: *Added: Delphi 12 sample
ExCalendar: *Added: exPatternF2Diagonal(13), exPatternB2Diagonal(14) new flags for PatternEnum type, that defines new patterns similar with exPatternFDiagonal(5) and exPatternB2Diagonal(6) flags
ExCalendar: *Fixed: Prevent returning the event parameter by reference when accessing the EventParam(index) property. For example, PowerBuilder generates a 'Bad runtime function reference' error if an event parameter passed by reference is accessed through the EventParam(index) property
ExEMail: *Added: Delphi 12 sample
ExEMail: *Fixed: Declares event parameters as [in, out] in the control's Type library to ensure that the class wrapper correctly generates code for parameters passed by reference. For example, in Delphi, the wrapper class now displays the NewValue parameter of the Change event as var NewValue: OleVariant rather than const NewValue: OleVariant.
ExEMail: *Fixed: The files attached to the email appear to be corrupted, meaning their content cannot be properly accessed or read.
ExFolderView: *Added: The control's tooltip is shown when the cursor hovers it no matter if the window that hosts the control is activated
ExFolderView: *Added: The Appearance property supports values Flat, Sunken and Raised
ExFolderView: *Fixed: The expropertieslist/com fails if the user is trying to spy the control (x64 version only, AllowSpy property, browses the object by drag and drop)
ExGraph: *Added: The MultiColorSerie {boolean}, determines whether a single data series (single-valid serie) in a chart can use multiple colors for its data points instead of a single uniform color
ExGraph: *Added: The Icon parameter of the ReplaceIcon method supports loading an icon in various ways. If the ICON is not provided via its handle, it will attempt to load it from a picture using its reference, the full path to the picture file, or the picture's content encoded as BASE64 strings using the eXImages tool.
ExGraph: *Fixed: Declares event parameters as [in, out] in the control's Type library to ensure that the class wrapper correctly generates code for parameters passed by reference. For example, in Delphi, the wrapper class now displays the NewValue parameter of the Change event as var NewValue: OleVariant rather than const NewValue: OleVariant.
ExGrid: *Added: Support for multiple-lines for column's caption (including Column.HTMLCaption) when it is vertically displayed ( Column.HeaderVertical property is True, control's HeaderSingleLine property is False )
ExGrid: *Added: Update the column's sort icon, so it won't be shown as distorted on DPI systems.
ExGrid: *Fixed: The column's caption is not displayed if the control's font is "MS Sans Serif" and the Column.HeaderVertical property is True
ExPivot: *Added: New visual appearance for all internal icons to support high DPI resolution (100%, 125%, 150%, 175%, 200% and 300%)
ExPivot: *Fixed: The internal icons are stretched and look distorted when DPI scaling is not 100%
ExPivot: *Fixed: The Visual Studio 2022 (64-bit IDE) crashes if you try to place the /NET assembly in the form (design mode)
ExplorerBar: *Added: The Icon parameter of the ReplaceIcon method supports loading an icon in various ways. If the ICON is not provided via its handle, it will attempt to load it from a picture using its reference, the full path to the picture file, or the picture's content encoded as BASE64 strings using the eXImages tool.
ExplorerBar: *Fixed: The ReplaceIcon method fails to load icons using handles in x64 applications.
ExplorerBar: *Fixed: Prevent returning the event parameter by reference when accessing the EventParam(index) property. For example, PowerBuilder generates a 'Bad runtime function reference' error if an event parameter passed by reference is accessed through the EventParam(index) property
ExRolList: *Added: Enhances the loading speed of EBN files
ExRolList: *Fixed: The Background(exToolTipAppearance) call might be time-consuming
ExRolList: *Fixed: Prevent returning the event parameter by reference when accessing the EventParam(index) property. For example, PowerBuilder generates a 'Bad runtime function reference' error if an event parameter passed by reference is accessed through the EventParam(index) property
ExScrollBar: *Added: Enhances the loading speed of EBN files
ExScrollBar: *Added: The `format` operator of expression properties supports formatting the time values, using h, hh, H, HH (hours with no/leading zero for single-digit hours; 12/24-hour clock), m, mm (minutes with no/leading zero for single-digit minutes), s, ss (seconds with no leading zero for single-digit seconds), t, tt (one character time marker string, such as A or P, or multi-character time marker string, such as AM or PM). For instance, the "date(value) format `hh:mm:ss tt`" returns the time in a 12-hour clock representation with hours, minutes, seconds, and an AM/PM indicator.
ExScrollBar: *Fixed: The Background(exToolTipAppearance) call might be time-consuming
ExShellView: *NEW: Ability to change the parameters passed by reference of the control's events for environments that does not support events with parameters by reference, such as uniPaas 1.5 (formerly known as eDeveloper), DBase, and so on (available for /COM only)
ExShellView: *Added: Event event, notifies the application once the control fires an event
ExShellView: *Added: EventParam() property accesses a specified parameter of the current event. This property has effect only during an event, and can be used to change or retrieve a specified parameter of the current event. Use the EventParam(-2) to display entire information about fired event ( such as name, identifier, and properties ). The EventParam(-1) retrieves the number of parameters of fired event.
ExSlider: *NEW: The ex-HTML tags, including fgcolor, bgcolor, gra, out, sha, solidline, and dotline, now support 150 named colors, such as <fgcolor red>, as well as RGB format specifications like <fgcolor rgb(255,0,0)>. This enhancement offers more flexibility in defining colors within ex-HTML tags
ExSlider: *Added: The `format` operator of expression properties supports formatting the date values, using d, dd, ddd, ddd (day of the month as digits, with or without leading zeros, abbreviated day of the week, day of the week as specified by the current locale ), m, mm, mmm, mmmm (month as digits, with or without leading zeros, abbreviated month, month as specified by the current locale), y, yy, yyy, yyyy (year represented only by the last digits, by a full four or five digits, depending on the calendar used) literals. For instance, the "date(value) format `mmm d, yyyy`" gets the value in MMM d, YYYY format using the current locale, such as "Jan 12, 2023"
ExSlider: *Added: The ExecuteTemplate() method can return the value of a variable. For instance, the eXSurface's PointToPosition method uses variables by reference which is not supported in PowerBuilder. For that you can use a code like ExecuteTemplate("dim x,y;x=-1;y=-1;PointToPosition(x,y);x") that returns the x-position (surface's coordinates) of the current mouse pointer. In the same manner you can use ExecuteTemplate("dim x,y;x=-1;y=-1;PointToPosition(x,y);y") to return the y-position.
ExSplitBar: *Added: Enhances the loading speed of EBN files
ExSplitBar: *Fixed: The Background(exToolTipAppearance) call might be time-consuming
ExSplitBar: *Fixed: Prevent returning the event parameter by reference when accessing the EventParam(index) property. For example, PowerBuilder generates a 'Bad runtime function reference' error if an event parameter passed by reference is accessed through the EventParam(index) property
ExStatusBar: *NEW: The ex-HTML tags, including fgcolor, bgcolor, gra, out, sha, solidline, and dotline, now support 150 named colors, such as <fgcolor red>, as well as RGB format specifications like <fgcolor rgb(255,0,0)>. This enhancement offers more flexibility in defining colors within ex-HTML tags
ExStatusBar: *Added: Enhances the loading speed of EBN files
ExStatusBar: *Fixed: The Background(exToolTipAppearance) call might be time-consuming
ExTab: *Added: Update the samples to support x64 configuration (/COM version)
ExTab: *Fixed: No control frame is shown in design-mode under MS Excel's spreadsheet
ExTab: *Fixed: The AttachTemplate method fails if using "handle" keyword on x64 version
ExToolbar.CRD: *Added: Delphi 12 sample
ExToolbar.CRD: *Added: Enhances the loading speed of EBN files
ExToolbar.CRD: *Fixed: Prevent returning the event parameter by reference when accessing the EventParam(index) property. For example, PowerBuilder generates a 'Bad runtime function reference' error if an event parameter passed by reference is accessed through the EventParam(index) property
ExToolBar: *NEW: Ability to display scroll buttons when necessary
ExToolBar: *Added: The exArrangeItemsScroll flag displays the scroll buttons if needed
ExToolBar: *Added: The Background(exScrollBackColor) property defines the visual appearance or solid color of the toolbar's menu scroll buttons. Setting the Background(exScrollBackColor) property to -1 prevents the scroll buttons from being displayed, but you can still scroll the toolbar using drag and drop.
18.0.0.2 Feb 03, 2025
ExCalcEdit: *NEW: The ex-HTML tags, including fgcolor, bgcolor, gra, out, sha, solidline, and dotline, now support 150 named colors, such as <fgcolor red>, as well as RGB format specifications like <fgcolor rgb(255,0,0)>. This enhancement offers more flexibility in defining colors within ex-HTML tags
ExCalcEdit: *Added: Delphi 12 sample
ExCalcEdit: *Added: The `format` operator of expression properties supports formatting the time values, using h, hh, H, HH (hours with no/leading zero for single-digit hours; 12/24-hour clock), m, mm (minutes with no/leading zero for single-digit minutes), s, ss (seconds with no leading zero for single-digit seconds), t, tt (one character time marker string, such as A or P, or multi-character time marker string, such as AM or PM). For instance, the "date(value) format `hh:mm:ss tt`" returns the time in a 12-hour clock representation with hours, minutes, seconds, and an AM/PM indicator.
ExCascadeTree: *Fixed: Can't generate portrait orientation for PDF documents using the CopyTo method. For instance, the CopyTo("preview.pdf|210mm x 297mm") generates landscape instead portrait orentation.
ExCascadeTree: *Fixed: The CopyTo() method for PDF documents, converts missing units for paper's size or margins to mm (previously points if no other unit is specified). For instance, CopyTo("preview.pdf|297 x 210mm") generates a PDF document of "8.27 x 4.13 in" instead of "11.69 x 8.27 in" (the mm is missing right after 297)
ExCascadeTree: *Fixed: The control's list is not updated with new items once the Requery method of DataSource (ADO) is called
ExComboBox: *Fixed: Sometimes, the CellButtonClick event is not fired ( for instance, click outside the button's caption)
ExComboBox: *Fixed: The Column.Def(exCellButtonAutoWidth) property has no effect for HTML buttons (Column.Def(exCellValueFormat) is exHTML)
ExComboBox: *Fixed: Improves the conversion of the string to date, while using Regional settings (Windows System) for date like ddd.dd.mm.yyyy (Su.15.02.2021)
ExContextMenu: *Added: Delphi 12 sample
ExContextMenu: *Fixed: Declares event parameters as [in, out] in the control's Type library to ensure that the class wrapper correctly generates code for parameters passed by reference. For example, in Delphi, the wrapper class now displays the NewValue parameter of the Change event as var NewValue: OleVariant rather than const NewValue: OleVariant.
ExContextMenu: *Fixed: Prevent returning the event parameter by reference when accessing the EventParam(index) property. For example, PowerBuilder generates a 'Bad runtime function reference' error if an event parameter passed by reference is accessed through the EventParam(index) property
ExEditors: *NEW: The ex-HTML tags, including fgcolor, bgcolor, gra, out, sha, solidline, and dotline, now support 150 named colors, such as <fgcolor red>, as well as RGB format specifications like <fgcolor rgb(255,0,0)>. This enhancement offers more flexibility in defining colors within ex-HTML tags
ExEditors: *Fixed: Prevent returning the event parameter by reference when accessing the EventParam(index) property. For example, PowerBuilder generates a 'Bad runtime function reference' error if an event parameter passed by reference is accessed through the EventParam(index) property
ExEditors: *Fixed: The ReplaceIcon method fails to load icons using handles in x64 applications.
ExG2antt: *NEW: Ability to specify the size to show the icons/images/check-boxes/radio-buttons within the control
ExG2antt: *Added: ImageSize property specifies the size of control' icons/check-boxes/radio-buttons. By default, the ImageSize property is 16. The control's Images collection is cleared if the ImageSize property is changed, so it is recommended to set the ImageSize property before calling the Images method. The ImageSize property specifies the size to show the icons using the Column.HeaderImage, Items.CellImage or Items.CellImages property, the cell's check-box or radio-button using the Column.Def(exCellHasCheckBox), Column.Def(exCellHasRadioButton), Items.CellHasCheckBox, Items.CellHasRadioButton property, the default-size of <img>number[:width]</img> tags within ex-html captions, unless the width is not specified, the size of expand/collapse glyphs, sorting icon (ascending or descending), drop-down or close filter button. The ImageSize property defines the size (width/height) of the icons within the control's Images collection. For instance, if the ICO file to load includes different types the one closest with the size specified by ImageSize property is loaded by Images method. The ImageSize property does NOT change the height for the control's font(Font), sort-bar (SortBarHeight), header (HeaderHeight), item(DefaultItemHeight) or filter-bar(FilterBarHeight)
ExG2antt: *Fixed: The Chart.LinkFromPoint(-1, -1) property returns the link under the cursor, even if the point does not directly hover over the lines composing the link, provided the link is either direct (exLinkShowRound property is 1) or straight (exLinkShowRound property is 2)
ExG2antt: *Added: The default value for Column.GroupByFormatCell property is "'<b><caption></b> (' + value + ')'" instead of "'<caption>'"
ExG2antt: *Fixed: The critical path may include non critical-bars, if the chart includes SS/FF links (Items.DefSchedulePDM(exPDMCriticalPathBarColor), Items.Link(exLinkStartPos), Items.Link(exLinkEndPos))
ExG2antt: *Fixed: The critical path may exclude critical-bars, if the chart includes links with non-zero lags (Items.DefSchedulePDM(exPDMCriticalPathBarColor), Items.Link(exLinkPDMDelay))
ExGantt: *Added: Serializes the visibility and position of the columns float bar using the Layout property. The "ColumnsFloatBar" and "ColumnsFloatBarRect" fields of Layout content save/load the visibility/position of the columns float bar. In other words, the Layout property serializes the columns float bar (visibility and position)
ExGantt: *Fixed: FormatAnchor(False) = vbNullString fails (vbNullString is a special VB constant that denotes a null string. The "" literal is an empty string)
ExGantt: *Fixed: The vertical-scroll bar is not shown/hidden once the column gets resized (Def(exCellSingleLine) property)
ExHTML: *Added: The CTRL + R removes the current or selection formatting. The keys combination works if the AllowShortcutFormat property is True (similar with CTRL + B for bold, CTRL + I for italic, CTRL + U for underline and CTRL + S for strikeout)
ExHTML: *Fixed: The tolbar's dropdown-menu is not closed when the user presses ESC key while available shortcut-keys are visible. For instance, CTRL + J displays the line's alignment and pressing ESC does not close the drop down.
ExHTML: *Fixed: The Enter key on a field of Edit type (such as ID or Options of the anchor item) resets field's content instead setting it as it is, on the control's default context-menu
ExPropertiesList: *Added: The <solidline> and <dotline> HTML tags support color in RGB format using the <solidline RRGGBB> or <dotline RRGGBB> syntax, which indicates the color to show the solid or dotted line
ExPropertiesList: *Fixed: The ColumnsAllowSizing property does not work if the HeaderAppearance property is 0
ExPropertiesList: *Fixed: Can't resize the column's width to 0
ExRecord: *Added: EditorOptionEnum.exSliderTickStyle option specifies the style to show the slider's ticks according with the EditorOptionEnum.exSliderTickFrequency option
ExRecord: *Fixed: The edit-field is shifting 2-pixels to the right when selecting a new value from a DropDownType or PickeEditType editor
ExRecord: *Fixed: Aligns the ticks with the slider's thumb indicator, if using the Editor.Option(exSliderTickFrequency) property
ExScehdule: *Added: UndoRemoveAction([Action], [Count]) method removes the last undo actions that can be performed on the control
ExScehdule: *Added: RedoRemoveAction([Action], [Count]) method Removes the first redo actions that can be performed on the control
ExScehdule: *Fixed: Ignores the time-part of the Date when using the EnsureVisible(Date) method
ExTexture: *Added: TemplateDef/TemplatePut property allows defining inside variables for the Template feature ( available for /COM only, and useful to assign properties with multiple parameters, which is not supported in dBASE )
ExTexture: *Fixed: A GPF may occur on closing the form/window/dialog if one or more events are handled by AttachTemplate method
ExTexture: *Fixed: The AttachTemplate method fails if using "handle" keyword on x64 version
ExThumbnail: *Added: Delphi 12 sample
ExThumbnail: *Added: Enhances the loading speed of EBN files
ExThumbnail: *Fixed: Prevent returning the event parameter by reference when accessing the EventParam(index) property. For example, PowerBuilder generates a 'Bad runtime function reference' error if an event parameter passed by reference is accessed through the EventParam(index) property
ExTree: *Fixed: The Items.SelectableItem property returns 1 instead of -1 / True value.
ExTree: *Fixed: The Items.SelectItem property returns 1 instead of -1 / True value.
ExTree: *Fixed: "The current version, supports ADO and DAO Recordsets. Make sure that the object is an ADO recordset, or a DAO recordset" error may occur if using ADO objects.
ExTree: *Fixed: Prevents showing the column being dropped to the Columns floating-bar with a different background color ( ColumnsFloatBarVisible, Background(exCursorHoverColumn) )
18.0.0.1 Jan 06, 2025
ExEdit: *NEW: The ex-HTML tags, including fgcolor, bgcolor, gra, out, sha, solidline, and dotline, now support 150 named colors, such as <fgcolor red>, as well as RGB format specifications like <fgcolor rgb(255,0,0)>. This enhancement offers more flexibility in defining colors within ex-HTML tags
ExEdit: *Fixed: Sometimes, the Data.Files.Count property returns a wrong number of files, during OLE drag and drop events (/COM version)
ExEdit: *Added: The `format` operator of expression properties supports formatting the time values, using h, hh, H, HH (hours with no/leading zero for single-digit hours; 12/24-hour clock), m, mm (minutes with no/leading zero for single-digit minutes), s, ss (seconds with no leading zero for single-digit seconds), t, tt (one character time marker string, such as A or P, or multi-character time marker string, such as AM or PM). For instance, the "date(value) format `hh:mm:ss tt`" returns the time in a 12-hour clock representation with hours, minutes, seconds, and an AM/PM indicator.
ExFileView: *NEW: Z-Events support (Standard .NET event patterns)
ExFileView: *Added: Every event of the control (/NET assembly) provides a Z-Event alternative, of "void OnEventRaised(object sender, EventArgs args)" type. The .NET convention is for an event (Z-event) signature to have a void return and 2 parameters. The first parameter is of type System.Object and is the sender of the event. The second parameter must be of type System.EventArgs or derived from System.EventArgs and contains data passed between sender and receiver. For instance, the "DblClick(object sender, short Shift, int X, int Y)" event is equivalent to "ZDblClick(object sender, ZDblClickArgs e)", where "ZDblClickArgs" type is derived from System.EventArgs and includes definitions for Shift, X and Y properties
ExFileView: *Fixed: "Warning: The <event-name> event is a .NET event that does not follow the .NET convention for event signatures (OpenEdge, ABL code)". To prevent this warning, under OpenEdge environment you must use the Z-event alternatives
ExG2antt: *Added: Aligns the check-box, icon and caption of the item to the right, within the drop down filter window, if control's RightToLeft property is True
ExG2antt: *Fixed: Can't type SPACE within the edit field of the drop down column's filter (Column.DisplayFilterPattern property)
ExG2antt: *Fixed: The internal icons are stretched and look distorted when DPI scaling is not 100%
ExGantt: *Added: Improves the speed to scroll/display the control on 4K applications.
ExGantt: *Added: The Description(exFilterBarExclude) allows ex-html format (ability to replace the "Exclude" field with your custom ex-html string)
ExGantt: *Fixed: The Items.ItemHasChildren property returns 1, instead of True(-1) value
ExGrid: *NEW: Support for "FileGroupDescriptor" and "FileContents" clipboard format, or ability to accept messages or attachments by drag and drop from the MS Outlook application (or any other applications that use these clipboard format)
ExGrid: *Added: During the OLEDragDrop event the Data.Files.Count property returns the number of messages or attachments being dropped, while Data.Files(index) property returns the fully path-name of the file that contains the message or the attachment. The control automatically extracts the message/attachment's content to a temporarily file, as you would drop a file from Windows Explorer.
ExGrid: *Added: The Items.CellMerge(Item,Column) supports a string value that holds the list of identifiers separated by comma. For instance, Items.CellMerge(Item,0) = "1,2,3", specifies that the cell on column 0, merges with cells of columns 1, 2, 3. The syntax is equivalent with Items.CellMerge(Item,0) = 1; Items.CellMerge(Item,0) = 2; Items.CellMerge(Item,0) = 3;
ExLabel: *Added: The Icon parameter of the ReplaceIcon method supports loading an icon in various ways. If the ICON is not provided via its handle, it will attempt to load it from a picture using its reference, the full path to the picture file, or the picture's content encoded as BASE64 strings using the eXImages tool.
ExLabel: *Fixed: The ReplaceIcon method fails to load icons using handles in x64 applications.
ExLabel: *Fixed: Prevent returning the event parameter by reference when accessing the EventParam(index) property. For example, PowerBuilder generates a 'Bad runtime function reference' error if an event parameter passed by reference is accessed through the EventParam(index) property
ExMaskEdit: *Added: Enhances the loading speed of EBN files
ExMaskEdit: *Fixed: The Background(exToolTipAppearance) call might be time-consuming
ExMaskEdit: *Fixed: Prevent returning the event parameter by reference when accessing the EventParam(index) property. For example, PowerBuilder generates a 'Bad runtime function reference' error if an event parameter passed by reference is accessed through the EventParam(index) property
ExMenu: *NEW: The ex-HTML tags, including fgcolor, bgcolor, gra, out, sha, solidline, and dotline, now support 150 named colors, such as <fgcolor red>, as well as RGB format specifications like <fgcolor rgb(255,0,0)>. This enhancement offers more flexibility in defining colors within ex-HTML tags
ExMenu: *Added: Enhances the loading speed of EBN files
ExMenu: *Fixed: The Background(exToolTipAppearance) call might be time-consuming
ExOrgChart: *Added: Enhances the loading speed of EBN files
ExOrgChart: *Added: exPatternF2Diagonal(13), exPatternB2Diagonal(14) new flags for PatternEnum type, that defines new patterns similar with exPatternFDiagonal(5) and exPatternB2Diagonal(6) flags
ExOrgChart: *Fixed: The Background(exToolTipAppearance) call might be time-consuming
ExplorerTree: *Added: The Background(exScrollHoverAll/500) property specifies whether the hover-all feature is by default (0), always on (-1) or disabled(1). By default (Background(exScrollHoverAll) = 0), the left/top, right/bottom and thumb parts of the control' scrollbars are displayed in hover state while the cursor hovers any part of the scroll bar (hover-all feature). The hover-all feature is available on Windows 11 or greater, if only left/top, right/bottom, thumb, lower and upper-background parts of the scrollbar are visible, no custom visual-appearance is applied to any visible part. The hover-all feature is always on If Background(exScrollHoverAll) = -1. The Background(exScrollHoverAll) = 1 disables the hover-all feature.
ExplorerTree: *Added: Show the Left/Top or Right/Bottom buttons of the control's scrollbar on Windows 11 or greater, while the cursor hovers the scrollbar's background.
ExplorerTree: *Fixed: The scroll button's appearance is restored to normal instead of hover state when the mouse button is released
Expression: *Added: The `format` operator of expression properties supports formatting the date values, using d, dd, ddd, ddd (day of the month as digits, with or without leading zeros, abbreviated day of the week, day of the week as specified by the current locale ), m, mm, mmm, mmmm (month as digits, with or without leading zeros, abbreviated month, month as specified by the current locale), y, yy, yyy, yyyy (year represented only by the last digits, by a full four or five digits, depending on the calendar used) literals. For instance, the "date(value) format `mmm d, yyyy`" gets the value in MMM d, YYYY format using the current locale, such as "Jan 12, 2023"
Expression: *Added: The <solidline> and <dotline> HTML tags support color in RGB format using the <solidline RRGGBB> or <dotline RRGGBB> syntax, which indicates the color to show the solid or dotted line
Expression: *Added: The ExecuteTemplate() method can return the value of a variable. For instance, the eXSurface's PointToPosition method uses variables by reference which is not supported in PowerBuilder. For that you can use a code like ExecuteTemplate("dim x,y;x=-1;y=-1;PointToPosition(x,y);x") that returns the x-position (surface's coordinates) of the current mouse pointer. In the same manner you can use ExecuteTemplate("dim x,y;x=-1;y=-1;PointToPosition(x,y);y") to return the y-position.
ExPrint: *Added: The Icon parameter of the ReplaceIcon method supports loading an icon in various ways. If the ICON is not provided via its handle, it will attempt to load it from a picture using its reference, the full path to the picture file, or the picture's content encoded as BASE64 strings using the eXImages tool.
ExPrint: *Added: The `format` operator of expression properties supports formatting the time values, using h, hh, H, HH (hours with no/leading zero for single-digit hours; 12/24-hour clock), m, mm (minutes with no/leading zero for single-digit minutes), s, ss (seconds with no leading zero for single-digit seconds), t, tt (one character time marker string, such as A or P, or multi-character time marker string, such as AM or PM). For instance, the "date(value) format `hh:mm:ss tt`" returns the time in a 12-hour clock representation with hours, minutes, seconds, and an AM/PM indicator.
ExPrint: *Fixed: The ReplaceIcon method fails to load icons using handles in x64 applications.
ExSurface: *Fixed: Prevent any default action on mouse down event, if the application 's mouse down handler invokes any message box, popup or shortcut menu.
ExSurface: *Fixed: The AttachTemplate method fails if using "handle" keyword on x64 version
ExSurface: *Fixed: An infinite loop may occur if calling the Arrange method while DefArrange(exDefArrangeDir) = 1 (vertical arrangement)
ExToolTip: *Added: Enhances the loading speed of EBN files
ExToolTip: *Fixed: The Background(exToolTipAppearance) call might be time-consuming
ExToolTip: *Fixed: Prevent returning the event parameter by reference when accessing the EventParam(index) property. For example, PowerBuilder generates a 'Bad runtime function reference' error if an event parameter passed by reference is accessed through the EventParam(index) property