exlabel - what's new
Exontrol ExLabel Component - Release Notes (https://exontrol.com/exlabel.jsp)

22.0.0.1 Oct 09, 2024
*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: Enhances the loading speed of EBN files
*Fixed: The Background(exToolTipAppearance) call might be time-consuming

21.0.0.1 Apr 01, 2024
*NEW:   Expandable-captions support, or ability to expand/collapse the captions using HTML tags such as <a id;exp=text> or <a id;e64=encode64>
*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.

20.0.0.3 Jan 10, 2024
*Added: The ShowToolTip method can be used to update the object's tooltip, title or position. For instance, ShowToolTip(`<null>`,`<null>`,,`+8`,`+8`) during MouseMove event, shows the tooltip of the object moved relative to its default position.
*Fixed: The ShowToolTip() method works improperly as it may show the tooltip to a different position
*Added: The control's tooltip is shown when the cursor hovers it no matter if the window that hosts the control is activated

20.0.0.2 Jun 28, 2023
*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 expropertieslist/com fails if the user is trying to spy the control (x64 version only, AllowSpy property, browses the object by drag and drop)

20.0.0.1 Mar 29, 2023
*NEW:   Ability to specify the size to show the icons within the control
*Added: ImageSize property specifies the size of the control' icons. 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.
*Fixed: The AttachTemplate method fails if using "handle" keyword on x64 version

19.0.0.3 Dec 19, 2022
*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: A GPF may occur on closing the form/window/dialog if one or more events are handled by AttachTemplate method

19.0.0.2 Sep 04, 2022
*Added: PowerBuilder 21.0 sample
*Fixed: Clicking (Custom) property generates "Class Not Registered" error (Windows x64, 'Looking for object with CLSID:{7EBDAAE1-8120-11CF-899F-00AA00688B10}')
*Fixed: The Background (exToolTipForeColor) property does not apply to the tooltip's title

19.0.0.1 May 30, 2022
*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 

18.0.0.2 Jul 14, 2021
*Added: Sets or gets the control's Font property in design mode, for the /NET version
*Fixed: The BackColor/ForeColor properties of the /NET version are not serialized once the user changes in design mode (the control's background/foreground is set to the default value once the form is started)
*Fixed: The BackColor/ForeColor properties of the /NET version are not copied in design mode, when the user copies the control in design-mode using CTRL + C (copy) and CTRL + V (paste) combination

18.0.0.1 May 03, 2021
*Added: ExLabel.pdf (include the control's documentation in PDF format)
*Added: The Images method supports the Microsoft ImageList ( mscomctl.ocx, MSComctlLib.ImageList type) object directly. Shortly, you can define the control's images by calling Images(ImageList1.Object). The ImageList1.Object returns the object of MSComctlLib.ImageList type. The Microsoft ImageList object is available for /COM on x86 and x64 machines (starting from Access 2016)
*Fixed: The "Do you want to save changes to the design of form ''? Yes, No, Cancel" message occurs in MS Access, every time the form is closed in design mode

17.0.0.1 May 13, 2020
*Fixed: FormatAnchor(False) = vbNullString fails (vbNullString is a special VB constant that denotes a null string. The "" literal is an empty string)

16.0.0.2 Nov 11, 2019
*Fixed: Prevents showing the "This application is about to initialize ActiveX controls that might be unsafe. If you trust the source of this file, select OK and the controls will be initialized using your current workspace settings." warning message while the control is running into MS Office forms or user-forms.

16.0.0.1 June 13, 2018
*NEW:   Ability to executes x-script code ( including events ), from a string, file or a safe array of bytes. This feature allows you to load the control's visual appearance and behavior, without having to write any line of code. The x-script code can save EBNs, icons, pictures into BASE64 encoded strings, and so everything can be put into a single file, that should be invoked by AttachTemplate method. This feature allows you to run any x-script code for any configuration of the component (/COM, /NET or /WPF). 
*Added: AttachTemplate method executes the giving x-script code, and attach events if found. The x-script code can contain handle keyword that defines a handler for the specified event. For instance, the AttachTemplate("handle Click() { print(Version) }") sends the control's Version property to the debugger for display. All you need is to open the DebugView tool, and click the control.
*Added: The control's Template page supports AttachTemplate so you can assign x-script code ( including events )  in design mode, and so the control's visual appearance and behavior is changed once the control is created at runtime (/COM version only). 

15.0.0.2 Nov 27, 2017
*Added: The Version property includes the SpecialBuild number of the assembly so it provides information like Major.Minor.Build.Revison.SpecialBuild.Type...
*Fixed: Prevents a memory leak when loading icons, pictures, from BASE64 encoded strings (Images method, HTMLPicture picture).
*Fixed: A GPF occurs if the application is started from design mode ( demo / evaluation / trial version only )
*Fixed: Prevents "Do you want to save ..." / "Save changes...' input box, when the user opens the form in design mode, and close it.

15.0.0.1 Sep 13, 2017
*NEW:   Display a placeholder for missing icons, images in HTML captions.
*Added: The Key parameter of the HTMLPicture property is case insensitive, so you can display the picture using the insensitive key. For instance, <img>picA</img> is equivalent with <img>pica</img>, or <img>PICA</img> and so on.
*Added: The HTML caption shows a missing image placeholder for images whose source is missing. The missing placeholder displays the index of the icon being missing, or the key of the HTML picture being missing. 

14.0.0.2 Oct 19, 2016
*NEW:   Ability to show the HTML caption vertically, or mirrored.
*Added: Rotate property rotates the HTML caption. For instance,  Rotate property on exHTMLVertical, displays vertically the HTML control from the left-bottom to the top-right, while the exHTMLVertical or exHTMLMirror, displays vertically the HTML control from top-right to left-bottom 
*Added: The Handle parameter of Images method can be a string that specifies the ICO file to be loaded. The ICO file format is an image file format for computer icons in Microsoft Windows. ICO files contain one or more small images at multiple sizes and color depths, such that they may be scaled appropriately. For instance, Images("e:\working\sync.ico") method  adds the sync.ico file to the control's Images collection.

14.0.0.1 Aug 24, 2016
*Added: DPI-Aware Support
*NEW:   Support for EBN 1004 version ( DPI-Aware support ).
*Added: The exClientExt attribute of the EBN/BackgroundExt/BackgroundExtValue supports DPI values, if the number is followed by a D character. For instance, if the DPI scaling is 100%, the 16d is 16, while for a 150% DPI scaling, the 16d is 24. In other words, "top[4,back=RGB(0,0,255)]", draws a blue line on the top side of the object's background, of 4-pixels wide, no matter of DPI scaling, while "top[4D,back=RGB(0,0,255)]", draws the line of 4-pixels wide if DPI scaling is 100%, or 6-pixels wide if DPI scaling is 150% )
*Added: The coordinates of the CP clause of the Skin parameter of VisualAppearance.Add method can be followed by a D character, which indicates the value according to the current DPI settings. For instance, "CP:1 -2 -2 2 2", copies the EBN with the identifier 1, and displays it on a 2-pixels wider rectangle no matter of the DPI settings, while "CP:1 -2D -2D 2D 2D" displays it on a 2-pixels wider rectangle if DPI settings is 100%, and on on a 3-pixels wider rectangle if DPI settings is 150%.

13.0.0.1 May 09, 2016
*NEW:   Support for EBN 1003 version.
*Added: EBN 1003 implements Colorable Region Support which defines a portion/region of the EBN object where the color of the EBN is applied. For instance, at runtime the identifier 0x1FF0000 applies blue color to all colorable parts that compose the EBN object. The EBN color is not applied to not-colorable portions of the EBNs.
*Fixed: Prevents showing the control's view in design mode, while running on FORTH system ( /COM version )

12.0.0.2 Feb 22, 2016
*Added: The Version property for /NET version returns more information about the component/assembly/file.
*Fixed: An ICO file shows as 18x18 instead of 16x16 pixels if it is loaded using the HTMLPicture method.
*Fixed: The bold/italic parts of the HTML captions may be slightly vertically-misaligned, if the control's default font is large ( 16.5 or greater )

12.0.0.1 Dec 02, 2015
*Added: The HTML tags are case insensitive, so the < b > is equivalent with < B >
*Added: </solidline>, </upline>, </dotline> HTML tags ends the solid, up or dotted line
*Added: Prevents showing the ,.;!?'")}] characters at the beginning of a new line, when html text is word-wrapping.

11.0.0.4 Sep 28, 2015
*Fixed: The parts of the line with different fonts in the HTML caption are vertically aligned ( instead aligning to the font's baseline ) if the line displays a picture or an icon using the <img> HTML tag.
*Fixed: The element's tooltip is not shown if the user hovers again the object, if previously its tooltip was automatically hidden by elapsing the time specified by the ToolTipPopDelay property.
*Fixed: The show message is shown on the debugger ( dbgview ), when the tooltip is about to be shown.

11.0.0.3 May 04, 2015
*NEW:   Subscript and Superscript implementation in HTML captions, using the <off> HTML tag
*Added: <off>, </off> built-in HTML tags defines the vertical offset to display the element, relative to the current position. This tag is inheritable. The <off pixels>, where, pixels indicates the vertical offset to be applied ). For instance, the following text displays a text with Subscript and Superscript such as: "Text <off 4>with subscript</off> <off -4>and superscript</off> support"
*Added: The <fgcolor=0000FF> and <fgcolor FF>, or <bgcolor=00FF00> and <bgcolor FF00>, so no = or full 6 hexa-digits are required to define the color to be applied
*Fixed: The <font> HTML tag is not overwritten when using inside another <font> tag

11.0.0.2 Feb 17, 2015
*Added: Prevents showing the ,.;!?'")}] characters at the beginning of a new line, when html text is word-wrapping.
*Fixed: The last italic character of a HTML caption may be shown as clipped
*Added: Ability to print the control's content on Excel applications, using the Excel's print and print preview mainframe.

11.0.0.1 Oct 27, 2014
*NEW:   Native Print and Print-Preview support in Microsoft Office Applications, such as Access, Excel or Word (/COM version)
*Added: Ability to print the control's content on Access's forms directly, using the DoCmd.PrintOut command.
*Added: Ability to print the control's content on Word applications, using the Word's print and print preview mainframe.

10.0.0.1 Aug 13, 2014
*NEW:   Windows 8.1 64-bit compatibility
*Added: The /COM 64-bit version is compatible with Microsoft Office Applications: Excel 2013, Access 2013,...
*Added: The /NET(/WPF) 64-bit version is compatible with Microsoft NET Framework 4, 4.5, 4.5.1, ...

9.0.0.1 Apr 16, 2014
*NEW:   Unlimited options to show any HTML text, images, colors, EBNs, patterns, frames anywhere on the label's background. Ability to draw additional EBN/Color/Text/Patterns/Images on the label, using the EBN String Format (create and run at runtime EBN objects)
*Added: Label.BackgroundExt property indicates additional colors, text, patterns, images that can be displayed on the label's background using the EBN string format. For instance, Label.BackgroundExt = "bottom[4,back=RGB(0,0,0)],top[4,back=RGB(0,0,0)]" draws a 4-pixels wide line aligned to the top and bottom sides of the label. The Label.BackgroundExt = "bottom[10%+12,back=RGB(255,0,0),text=`<img>alert</img><b>Alert!`,align=0x11]" displays the alert picture and the Alert! caption as bold, on the RED background, on the bottom portion of the label (10%+12 pixels-wide from the object's client area). 
*Added: Label.BackgroundExtValue(Index,Property) property gets or sets a value that indicates the value of giving property for the object with indicated index. This property has effect only if the BackgroundExt property is set. The BackgroundExtValue property allows you to change programmatically, the properties of the parts that composes the EBN object. For instance, BackgroundExtValue(0,exFrameColorExt) = RGB(255,0,0) draws a red frame around the root part of the object. For instance, you can use this property to change properties ( like colors ) of the EBN without having to assign a new EBN string format 
*Tip:   The EBN is a set of UI elements that are built as a tree where each element is anchored to its parent element. The BackgroundExtValue property can change properties like: exBackColorExt (element's background color, including other EBN objects), exClientExt (position/size of the element), exAnchorExt (element's alignment relative to its parent), exTextExt (associates a HTML text on the element), exTextExtWordWrap (word wrapping of the elements text), exTextExtAlignment (alignment of the element's text), exPatternExt (pattern to be shown on the element), exPatternColorExt ( color of the pattern on the element ), exFrameColorExt (color to show the border-frame on the element), exFrameThickExt (shows a thick-frame around the element), exUserDataExt (associates an extra-data with the element)
*Tip:   The eXButtons's builder WYSWYG tool provides the To String field, that indicates the EBN string format that can be used by BackgroundExt/BackgroundExtValue properties.

8.0.0.1 Feb 26, 2014
*NEW:   Support for EBN 1002 version.
*Added: The EBN 1002 allows using skin objects with horizontal, vertical stretch and colorable/not-colorable parts of the EBNs.
*Fixed: On terminal-servers (citrix), CPU-consumption varying from 1-4%, if multiple instances of the control is opened in the same time ( Exontrol.CommentWindow )
*Fixed: "Visual C++ Runtime Error!" occurs if using the <fgcolor> or <bgcolor> with no indicating the color. Correct is <fgcolor RRGGBB>, instead <fgcolor>

7.2.0.1 Nov 28, 2012
*NEW:   Ability to show the label with a transparent background color ( use the parent's background appearance )
*Added: Transparent property indicates whether the control's background is transparent.
*Fixed: In MS Access, the control loses its data once the Visible property is set on False or when the control is hosted to a tab control, and user changes the pages.

7.1.0.2 Sep 05, 2012
*Added: The Template or ExecuteTemplate properties may contain several commands separated by ; not only cariage returns.
*Added: "Property let procedure not defined and property get procedure did not return an object" runtime-error '451' occurs in VB if calling to assign a picture using its reference when using the Set .HTMLPicture statement.
*Added: Increases the performance of parsing HTML captions.

7.1.0.1 Aug 01, 2012
*NEW:   New text decorations support for HTML captions, like outlined characters, shadow, ....
*Added: <gra>, </gra> built-in HTML tags define a gradient text ( the <gra> supports color, mode and blending, like <gra rrggbb;mode;blend>, where, rr/gg/bb represents the red/green/blue values of the ending color, 808080 if missing as gray, mode a value between 0 and 4, 1 if missing, and blend 0 or 1, 0 if missing )
*Added: <out>, </out> built-in HTML tags define a text to show with outlined characters ( the <out> supports color and width, like <out rrggbb;width>, where rr/gg/bb represents the red/green/blue values of the outline color, 808080 if missing as gray, width indicates the size of outline, 1 if missing.
*Added: <sha>, </sha> built-in HTML tags define a text with a shadow ( the <sha> supports color, width and offset, like <out rrggbb;width;offset>, where rr/gg/bb represents the red/green/blue values of the shadow color, 808080 if missing as gray, width indicates the size of shadow, 4 if missing, and offset indicates the offset from the origin to display the text's shadow, 2 if missing.

7.0.0.1 Feb 01, 2012
*Added: The /COM version can be dropped to the eXPropertiesList control as an object.
*Fixed: Removes the tooltip's shadow if time to show the tooltip is less than 250 ms, as on Windows 7, the tooltip may be displayed slower.
*Fixed: Changing the ShowImageList property in design mode fails, if the component is hosted in a VC++ 2005, 2008 and 2010 application ( available for /COM only ).

6.0.0.2 June 22, 2011
*Fixed: Extra characters are inserted in the next line if the breaking element is a picture that does not fit the current line.
*Fixed: Ignores the ending HTML tags, if they are not used previously ( for instance, the < /b > is not displayed in the sequence "ABC< /b >" )
*Fixed: The get_HTMLPicture property gets empty object on the /NET version.

6.0.0.1 Mar 21, 2011
*NEW:   Inheritance for HTML attributes on multiple line ( for instance, the < b > is inherited on multiple lines, until the < /b > tag is found)
*NEW:   The < font > or < img > can change the height of the HTML line, so HTML captions can display lines with different heights.
*Added: The HTML captions allow using not-nested elements to be used. (for instance the sequence "< b >1< s >23< /b >4< /s>" displays 123 in bold while the 234 are shown in strikeout )
*Added: The < c > HTML tag centers the line. Simiar with < r > HTML tag.

5.0.0.2 Nov 17, 2010
*NEW:   Ability to specify any COLOR for the control's frame/border/appearance if using EBN objects.
*Added: The Appearance property may specify any color to apply the EBN object to define the control's border. In other words, you can define the color and the visual aspect of the control's border/appearance.
*Added: The Background(exToolTipAppearance) property may specify any color to apply to tooltip's EBN so the control's tooltip can be shown using different colors.

5.0.0.1 Sep 03, 2010
*NEW:   Ability to specify ANY color to an EBN object, so you can use one EBN object to display it in any nuance, without embossing the shape and look of the EBN ( including transparent regions, and so on )
*Added: Significant improvements for control's performance while using a large number of EBN objects.
*Added: The EBN can be displayed using ANY color ( not only FF for Red, Green or Blue component ). For instance, 0x1A88A5D indicates that EBN with the identifier 1 is displaying in Air Force blue color (#5D8AA8).

4.0.0.2 July 27, 2010
*NEW:   PNG support for picture properties.
*Added: PNG, TIFF, EXIF or WMF image format support.
*Fixed: If the AutoSize property is set on True, the BorderStyle/Appearance, BorderWidth and BorderHeight properties are not included in the required size.
*Fixed: Resizes automatically the control when Caption property is changed and the AutoSize property is set on True.

4.0.0.1 May 03, 2010
*NEW:   VisualAppearance.Add reads EBN files from byte[] or safe arrays of VT_I1 or VT_UI1. In other words, you can add EBN files directly to resources and use them as .VisualAppearance.Add(ID, Namespace.My.Resources.EBN) for vb/net or .VisualAppearance.Add(ID, Namespace.Properties.Resources.EBN) for c#, where the ID is the new identifier to be added, and the EBN is the identifier in the resource for the EBN file.
*Added: RequiredWidth property returns the width of the label required to display its entire contents.
*Added: RequiredHeight property returns the height of the label required to display its entire contents.

3.0.0.6 Mar 24, 2010
*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
*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
*Added: EventParam(-1) retrieves the number of parameters that can be accessed.

3.0.0.5 Jan 14, 2010
*Added: Changing the way the colors are being applied to EBN objects.
*Fixed: Removes the Scroll event definition from the /NET assembly.
*Fixed: Displays the first line of the HTML text, if it does not fit entirely the field

3.0.0.4 Nov 05, 2009
*Fixed: The /NET Assembly does not update at runtime the properties saved in design-mode.
*Fixed: The MDI form requires an extra click to activate it, once a modeless dialog is closed. The dialog contains a VB6 UserControl that hosts the control. ATL3.0 BUG
*Fixed: The associated ContextMenuStrip component is not shown when right clicking the /NET Assembly component.

3.0.0.3 Oct 08, 2009
*NEW:   Ability to display semi-transparent skins using different colors ie 0x1FF0000 displays the skin with more blue color, or 0x10000FF displays the skin using more blue color.
*Added: The Template feature supports hexa values being specified using format 0x prefix.
*Fixed: The /NET assembly shows a black frame when the parent form changes its parent using the MDIParent property.

3.0.0.2 May 14, 2009
*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
*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
*Added: EventParam(-1) retrieves the number of parameters that can be accessed.

3.0.0.1 April 17, 2009
*Added: 64-bit support
*Added: Updates the visual aspect of the control's tooltip based on the current theme, if active, and not using EBN object for its appearance.
*Added: Signing the /NET Assembly with a strong name (exontrol.exlabel, PublicKeyToken=90be24ccd0578da0)
*Fixed: The IDE flickers when the component is placed on a form, due ShowImageList property that creates a hidden top-most window, to store the icons.
*Fixed: In the /NET Assembly, the accelerator key on the dialog/form may be called without pressing the ALT key.

2.1.0.1 Aug 14, 2008
*Added: Compatible with the Data Execution Prevention (DEP). (SpecialBuild:1500)
*Added: VAlignment property specifies the caption's vertical alignment.
*Fixed: The Caption property is limited to 2048 characters.

2.0.0.1 May 13, 2008
*Added: The Appearance property paints the control's background using the associated EBN if the EBN's client area is not transparent.

1.0.0.2 October 24, 2007
*Added: The HTML captions handles the glyph characters as follows: & ( & ), < ( < ), > ( > ), &qout ( " ), &#number. For instance, the € displays the EUR character, in UNICODE configuration. The & ampersand is only recognized as markup when it is followed by a known letter or a `#' and a digit.
*Added: The x-script supports dates as #12/31/2007 10:00# indicates the December 31, 2007, 10:00

1.0.0.1 May 03, 2007
* Initial Release