The movie illustrates how the ExGantt/JS can manage and adjust resource usage:

For instance, when a task necessitates the allocation of particular resources, the target control can be configured to display detailed information about how these resources are being utilized. To ensure that the resource data remains consistent across different parts of the system, you can employ the PutRes method to synchronize the source control with the target control. This synchronization mechanism ensures that any modifications made in the source control--such as updates to resource data, allocation adjustments, or changes in status--are automatically reflected in the target control. Conversely, any alterations made in the target control will also be communicated back to the source control, maintaining an up-to-date and accurate representation of resource usage in both controls.

The following movie shows the first look of the newly eXGraph/COM component

The Exontrol's ExGraph component is a versatile tool designed to meet the diverse needs of data visualization. With support for numerous chart types, it empowers users to represent their data in various formats, from simple line charts to complex radar charts, all within the same view. In addition to its extensive charting capabilities, our graph control offers seamless printing and print preview functionality, ensuring that users can easily generate hard copies of their charts with precision and clarity. The exGraph library lets the user changes its visual appearance using skins, each one providing an additional visual experience that enhances viewing pleasure.

The following movie shows the first look of the newly eXGraph/JS component

ExGraph/JS is a component that offers excellent graphical data visualization. It has many different types and styles of charts. Easy to use, zoom, resize, scroll, overview, legend, cursor view, owner-draw, numerous chart types to different axes in the same view, multiple views, and much more are features of the ExGraph/JS package. The ExGraph/JS is a HTML standalone-component, written in JavaScript, that uses no third-party libraries. The version of eXGraph for /COM, /NET and /WPF will be available in the near future.

The following movie shows the Predecessor/Successor feature

Tasks may have multiple predecessors or multiple successors. Before you begin establishing dependencies, it's important to understand that there are four types: Finish to Start (FS), the predecessor ends before the successor can begin, Start to Start (SS), the predecessor begins before the successor can begin, Finish to Finish (FF), the predecessor ends before the successor can end, Start to Finish (SF), the predecessor begins before the successor can end. The Predecessor/Successor columns show the bar's predecessor/successor based on its incoming/outgoing links. The control allows you to highlight the selected link, to add or remove the links based on the dependencies you type.

The following movie shows the expandable HTML caption feature

The expandable-captions allow you to expand(show)/collapse(hide) different information using "<a ;exp=>" or "<a ;e64=>" anchor ex-HTML tag. The exp/e64 field of the anchor stores the information to show once the user collapses/expands the caption. Any ex-HTML caption can be transformed to an expandable-caption, by inserting the anchor ex-HTML tag. For instance, "<solidline><b>Header</b></solidline><br>Line1<r><a ;exp=show lines>+</a><br>Line2<br>Line3" shows the Header in underlined and bold on the first line and Line1, Line2, Line3 on the rest. The "show lines" is shown instead of Line1, Line2, Line3 once the user clicks the + sign. The feature will be available for almost all components that provide the AnchorClick event, such as eXSwimlane, eXSurface, eXHTML, eXG2antt, and so on (/COM, /NET, /WPF and Javascript as well)
Oct02
ExG2antt, 25.1.0.2
*Added: Serializes the Items.ItemDivider, Items.ItemDividerLine, Items.ItemDividerLineAlignment and Items.ItemHeight properties to XML file using the LoadXML / SaveXML method
*Fixed: Clicking (Custom) property generates "Class Not Registered" error (Windows x64, 'Looking for object with CLSID:{7EBDAAE1-8120-11CF-899F-00AA00688B10}')
*Fixed: The FilterBarBackColor property does not support EBN objects (The last 7 bits in the high significant byte of the color to indicates the identifier of the skin being used. Use the Add method to add new skins to the control. If you need to remove the skin appearance from a part of the control you need to reset the last 7 bits in the high significant byte of the color being applied to the background's part)
ExG2Host, 21.0.0.2
*Added: The Description(exFilterBarExclude) allows ex-html format (ability to replace the "Exclude" field with your custom ex-html string)
*Added: The Items.ItemBar(exBarHAlignCaption) / Items.ItemBar(exBarExtraCaptionHAlign) supports 32(0x20) flag which indicates that the bar's caption fits the bar and view (that bar's caption is aligned relative to the intersection of the bar with the view)
*Added: The Items.ItemBar(exBarCaptionHOffset) / Items.ItemBar(exBarCaptionVOffset) property gets or sets the horizontal / vertical offset to show the bar's caption relative to its default position
Oct01
ExSuite/JS, 3.3
*NEW: Ability to group item-bars so that when one is moved, they all move together (exontrol.gantt)
*NEW: Ability to define the total columns without the need to set the total formula for each parent cell (exontrol.tree, exontrol.gantt, exontrol.pivot)
*NEW: The ConditionalFormat.Expression, Cell.Format, and Column.Format now includes new keywords to enhance functionality. These keywords enable retrieval of the number of child items (%CC0, %CC1, ...), verification of whether an item is expanded or collapsed (%CX0, %CX1, ...), and determination of whether a cell is editable (%CE0, %CE1, ...) or a total field (%CT0, %CT1, ...) (exontrol.tree, exontrol.gantt, exontrol.pivot)
*Added: GroupBars(oItemBarA, startA, oItemBarB, startB, groupBarsOptions, options), groups two bars, allowing you to associate a starting or ending point of one bar with any starting or ending point of another bar. For example, to move both bars together, you need to group the starting point of bar A with the starting point of bar B, and the ending point of bar A with the ending point of bar B. Use the GroupBars method to manage or control the distance between two bars. When bars are grouped, resizing or moving one bar in the group will resize or move the other bars in the group accordingly. Similarly, all related groups will also be adjusted when one group is resized or moved. You can group bars from different items. The GroupBars method can preserve the length of the bars, restrict the interval between bars, and perform other adjustments when changes occur in the group (exontrol.gantt)
*Added: UngroupBars(oItemBarA, oItemBarB), ungroups two or more item-bars (exontrol.gantt)
...
Sep25
ExFolderView, 18.0.0.2
*Added: Update the samples to support x64 configuration (/COM version)
*Added: Excel sample
*Fixed: The AttachTemplate method fails if using "handle" keyword on x64 version
ExToolBar.CRD, 18.0.0.1
*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
*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.
*Fixed: The Background(exToolTipAppearance) call might be time-consuming
Sep23
ExList, 19.1.0.4
*Fixed: Prevents showing the vertical scroll bar, when it is not required when control is running in virtual mode ( ScrollBars, VirtualMode, UnboundHandler, DataSource property )
*Fixed: The Items.SelectableItem property returns 1 instead of -1 / True value.
*Fixed: The Items.SelectItem property returns 1 instead of -1 / True value.
*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.
ExToolBar, 20.0.0.1
*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
*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.
*Fixed: The Background(exToolTipAppearance) call might be time-consuming
Sep18
ExFileView, 17.0.0.6
*Added: PowerBuilder 21.0 sample
*Fixed: The control hangs is it displays large ZIP files (that includes sub-folders)
*Fixed: Sometimes, the control displays the ZIP files as a folder, rather than a file
ExOrgChart, 21.0.0.3
*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
*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.
*Added: Minimize unnecessary invalidation calls during drag and drop operations
Sep16
ExGantt, 19.0.0.8
*Added: The 0x200(exGridLinesGeometric) flag draws the grid lines using a geometric pen (geometric pens are generally slower than cosmetic pens)
*Added: The option "Roll the mouse wheel to scroll" of Window's mouse & touchpad settings specifies the number of items to vertically scroll. Previously, scrolling vertical with the mouse wheel takes 3 items at a time
*Fixed: Scrolling is slower if the control displays grid-lines (DrawGridLines property)
ExSlider, 21.0.0.5
*Added: The control's tooltip is shown when the cursor hovers it no matter if the window that hosts the control is activated
*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
*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)
Sep11
ExSwimLane, 21.0.0.3
*Added: Update the samples to support x64 configuration (/COM version)
*Fixed: No control frame is shown in design-mode under MS Excel's spreadsheet
*Fixed: The Data.Files(i) property returns only the first letter of the file rather than the full name of the dragged file (/COM version)
ExToolTip, 18.0.0.1
*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
*Added: The ToolTipMargin property defines the size of the control's tooltip margins. By default, the size of the tooltip margin is "4" (horizontal and vertical). For instance, ToolTipMargin = "8" changes the horizontal and vertical margins are set to 8 pixels. ToolTipMargin = "8,4" changes the horizontal margin to 8 pixels and the vertical margin to 4 pixels.
*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.
Sep09
ExGrid, 18.0.1.2
*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)
*Fixed: The HeaderSingleLine property is ignored if the control's header displays multiple levels of columns (Column.LevelKey property)
*Added: The state of the newly inserted child-item is automatically set on 1, if the column-partial check feature is enabled and the parent-item's state is 1 (Items.CellState, Column.PartialCheck)
ExPivot, 17.1.0.5
*Added: GridLinesStyleEnum.exGridlinesGeometric flag. The control's gridlines are drawn using a geometric pen. A geometric pen can have any width and can have any of the attributes of a brush, such as dithers and patterns (a cosmetic pen can only be a single pixel wide and must be a solid color, but cosmetic pen are generally faster than geometric pens.
*Added: Serializes the ScrollBySingleLine, Items.ItemHeight, Items.ItemMinHeight, Items.ItemMaxHeight, to XML format the LoadXML/SaveXML method
*Added: Serializes the Items.ItemDivider, Items.ItemDividerLine, Items.ItemDividerLineAlignment and Items.ItemHeight properties to XML file using the LoadXML / SaveXML method
Sep04
ExG2antt, 25.1.0.1
*NEW: Z-Events support (Standard .NET event patterns)
*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
*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
ExEMail, 11.0.0.1
*NEW: Ability to send emails with TXT attachments, not just files. For example, you can send an email with attachments using plain text content, even if you don't have physical files
*Added: The Attachment parameter of the Message.Send method (or Message.Attachment) supports a list of files separated by the ; character, or a multi-line string where the first line defines the file name and the subsequent lines contain the TXT content.
Sep02
ExTab, 19.0.0.4
*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 )
*Fixed: Clicking (Custom) property generates "Class Not Registered" error (Windows x64, 'Looking for object with CLSID:{7EBDAAE1-8120-11CF-899F-00AA00688B10}')
*Fixed: A GPF may occur on closing the form/window/dialog if one or more events are handled by AttachTemplate method
ExRollist 16.0.0.2
*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
*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
*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.
Aug30
ExSuite/JS, 3.2
*NEW: Ability to display task resource usage in a target exgantt/js control
*NEW: Ability to load data from objects of the {columns, items} type (exontrol.tree, exontrol.pivot, exontrol.gantt)
*Added: The Resources/GetResources()/SetResources(value) {string}, specifies the resources to be used by the current bar, separated by commas. The <%=%49%> sequence within the item-bar's caption displays the item's bar resource usage, including the percentage if applicable. (exontrol.gantt)
*Added: The ResourceFormat/GetResourceFormat()/SetResourceFormat(value) {string}, specifies the format for displaying a bar's resource. To get the HTML value of the formatted string using the bar's resources, use resourcesFormat(266) (note: not 'resourceFormat', which lacks the 's'). The <%=%266%> sequence within the item-bar's caption displays the item's bar resource usage according to 'resourceFormat' field. (exontrol.gantt)
*Added: Data/GetData()/SetData(value) {any} and Import(source, importOpts) now support objects of the {columns, items} type, where 'columns' is an array of [(string|ColumnOpts)] type and 'items' is an array of [(string|ItemsOpts)] type; the ItemsOpts object supports a recursive 'items' property to specify child items. For instance, {columns: "Def", items: {value: "Root", expanded: false, items:["Child 1", "Child 2", "Child 3"]}} defines a single-column control with a collapsed root item labeled 'Root' and three child items named 'Child 1', 'Child 2', and 'Child 3', or {columns: [{caption: "C1", displayFilterButton: true}, "C2"], items: [{value: ["R1.1", "R1.2"], items: [["C1.1", "C1.2"], ["C2.1", "C2.2"], ["C3.1", "C3.2"]]}, ["R2.1", "R2.2"]]} defines a dataset with two columns labeled as C1 (with a filter button for user value filtering) and C2. It includes two root items and three child items under the first root, each specifying values for their respective cells in the table (exontrol.tree, exontrol.pivot, exontrol.gantt)
...
Aug29
ExG2Host, 21.0.0.1
*Fixed: The Items.ItemHasChildren property returns 1, instead of True(-1) value
*Fixed: The vertical-scroll bar is not shown/hidden once the column gets resized (Def(exCellSingleLine) property)
*Fixed: The HeaderSingleLine property is ignored if the control's header displays multiple levels of columns (Column.LevelKey property)
ExGraph, 10.0.0.3
*Fixed: The Stack property does not work for radarArea and radarLine chart types
*Fixed: The plots of the polarscatter chart type are not visible
*Fixed: For certain chart types, the Color property of the Serie object is ignored
ExTree, 19.1.0.3
*Added: FormatABC method formats the A,B,C values based on the giving expression and returns the result. For instance, FormatABC("dpi") returns a numeric value that indicates the display settings ( aspect ratio ).
*Added: Expands or collapses the entire selection if the user clicks any +/- glitch, presses Left/Right/+ or- key inside the selection, while the CTRL is pressed. This option is valid, while the control's SingleSel property is False.
*Fixed: The EnsureVisibleItem method does not vertically scroll the control's content, if previously the control's list has been sorted ( Column.SortOrder property, Layout property, ... )
ExRecord, 17.0.0.2
*Added: The Editor.Option(exDropDownColumnAutoResize) property specifies whether the drop down list resizes automatically its visible columns to fit the drop down width. In other words, the Editor.Option(exDropDownColumnAutoResize) property specifies whether the drop down list shows or hides the horizontal scroll-bar (boolean expression)
*Fixed: The Editor.Option(exDropDownBackColor) / Column.Editor.Option(exDropDownForeColor) properties changes the control's BackColor / ForeColor properties
*Added: Background(exCheckBoxState0) Specifies the visual appearance for the check box in 0 state (unchecked). Similar for exCheckBoxState1, exCheckBoxState2
Aug07
ExGrid, 18.0.1.1
*Fixed: FormatAnchor(False) = vbNullString fails (vbNullString is a special VB constant that denotes a null string. The "" literal is an empty string)
*Fixed: The tooltip for an item of the drop down list editor is not shown, when the cursor hovers the item (Editor.ItemToolTip property).
*Fixed: The vertical-scroll bar is not shown/hidden once the column gets resized (Def(exCellSingleLine) property)
ExMenu, 18.0.0.2
*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
*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.
*Fixed: No control frame is shown in design-mode under MS Excel's spreadsheet
Aug05
ExG2antt, 25.0.0.3
*NEW: Ability to re-position the tooltip of objects from the chart (level, bar, link, overview or note)
*Added: The Tooltip(0, -1, Visible, X, Y, CX, CY) event occurs once the level's tooltip is about to be shown (-1 if the mouse pointer hovers the levels of the chart). The Tooltip(0, -2, Visible, X, Y, CX, CY) event occurs once the bar's tooltip (exBarToolTip) is about to be shown (-2 if the mouse pointer hovers the bars of the chart). The Tooltip(0, -3, Visible, X, Y, CX, CY) event occurs once the link's tooltip (exLinkToolTip) is about to be shown (-3 if the mouse pointer hovers the links of the chart). The Tooltip(0, -4, Visible, X, Y, CX, CY) event occurs once the note's tooltip (Note.PartToolTip) is about to be shown (-4 if the mouse pointer hovers the notes of the chart). The Tooltip(0, -5, Visible, X, Y, CX, CY) event occurs once the overview's tooltip (Chart.OverviewToolTip) is about to be shown (-5 if the mouse pointer hovers the overview section of the chart). In other words the ColIndex parameter of the Tooltip event could one of the above negative values. For instance, you can change the X or Y parameters to re-position the tooltip relative to its default position or fixed to the screen. X = X + 8, makes the tooltip to be shown 8 pixels to the right, while X = 100 specifies that always the tolltip will be shown at fixed horizontal position.
*Added: GridLinesStyleEnum.exGridlinesGeometric flag. The control's gridlines are drawn using a geometric pen. A geometric pen can have any width and can have any of the attributes of a brush, such as dithers and patterns (a cosmetic pen can only be a single pixel wide and must be a solid color, but cosmetic pen are generally faster than geometric pens.
ExCascadeTree, 17.0.0.2
*Fixed: The Column.Def(exCellDrawPartsOrder) property works correctly for ex-html cells only (The cell's caption overwrites the cell's check, icons or picture)
*Fixed: Sometimes, the control may hang up in virtual-mode if the user presses PageUp/PageDown several times
*Fixed: The AttachTemplate method fails if using "handle" keyword on x64 version

2024.........................