Exontrol ExHTML Component - Release Notes (http://www.exontrol.com/exhtml.jsp)

12.0.0.3 Sep 27, 2017
*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: The toolbar's buttons are not size correctly, with the Windows set to Classic theme.

12.0.0.2 May 10, 2017
*Added: The CursorPos property ensures that the line fits the edit's client area. For instance, the CursorPos = CursorPos, ensures that the caret's position is visible.
*Fixed: The control shows the first line, when the control is resized.
*Fixed: Can't select a word that contains accented(acute, circumflexm umlaut and dieresis) characters, if the user double clicks it, or using the CTRL + SHIFT + Right key.

12.0.0.1 Mar 29, 2017
*Added: FormatSelection(exHTMLFormatRemove) removes the formatting from the current selection.
*Fixed: Keeps the attributes at the cursor position, when the selection is replaced. 
*Fixed: Code generation for property 'ToolBarAnchor' failed.  Error was: 'The value '0' is not a valid value for the enum 'ToolBarAnchorEnum'.' ( /NET only )

11.0.0.3 Feb 22, 2017
*NEW:   Indentation support
*Added: AutoIndent property specifies whether the control indents the line when ENTER key is pressed.
*Added: IndentSel(Forward) method indents the selection forward or backward.
*Added: IndentOnTab property indicates that the selection is indented as soon as user presses the TAB key. The IndentOnTab property has effect, if the UseTabKey property is True. Pressing TAB indents forwards the selection, or SHIFT + TAB indents backwards the selection. If no selection TAB inserts a TAB character, Shift + TAB removes the TAB character to the left of the current cursor.

11.0.0.2 Jan 09, 2017
*NEW:   Customization of the control's built-in toolBar
*Added: ToolBarSize / ToolBarBorderSize property specifies the size of the control's toolbar / border
*Added: ToolBarImages property assigns a new image list to the control's toolbar, so you can provided different icons to be shown on the control's toolbar
*Added: ToolBarHTMLPicture property adds or replaces a picture in HTML captions (toolbar). Using the ToolBarHTMLPicture property you can provide custom-sized pictures in the control's toolbar.
*Added: Background(exToolBarAppearance) property specifies the control's toolbar visual appearance / background color.
*Added: Background(exToolBarPopupAppearance) property specifies the visual appearance of the contro's toolbar popups
*Added: Background(exToolBarLocalAppearance) property specifies the visual appearance of the contro's toolbar local popups

11.0.0.1 Nov 09, 2016
*NEW:   Built-in ToolBar Support, or ability to format text using the control's toolbar
*Added: ToolBarItems property specifies the control's toolbar format
*Added: ToolBarAnchor property gets or sets the edge of the control to which the toolbar is bound and determines how the toolbar is resized with its control.
*Added: The CTRL + B, I or U, toggles the Bold, Italic or Underline attribute, while changes, or until the user selects a new caret position.
*Fixed: The SHIFT + Click selects randomly the text, instead selecting the text from the current caret position to clicked position.

10.0.0.3 Oct 12, 2016
*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.
*Added: lfind binary-operator for format/expression. The a lfind b searches the first occurrence of the string b within string a, and returns -1 if not found, or the position of the result ( zero-index ). For instance, `ABCABC` lfind `D` returns -1, while  `ABCABC` lfind `C` returns 2.
*Added: rfind binary-operator for format/expression. The a rfind b searches the last occurrence of the string b within string a, and returns -1 if not found, or the position of the result ( zero-index ). For instance, `ABCABC` rfind `D` returns -1, while  `ABCABC` rfind `C` returns 5.
*Added: reverse unary-operator for format/expression. The reverse(a) reverses the order of the characters in the string a, For instance, the reverse("Mihai") returns "iahiM"
*Fixed: The the context's menu copy, paste, etc buttons are not size correctly, with the Windows set to Classic theme.

10.0.0.2 Aug 26, 2016
*Added: `MIN` and `MAX` binary-operators to get the MIN and MAX value. For instance, the expression `value MIN 10 MAX 100` returns always a value between 10 and 100.
*Added: `sin`, `asin`, `cos`, `acos` unary-operators to get the associated trigonometric functions. For instance `2 * asin(1)` returns the value of PI
*Added: `sqrt` unary-operator returns the square root of the element, so sqrt(81) returns 9, as 9^2 is 81
*Added: date(`now`) unary-operator returns the current date-time ( as double ), while the date(``) returns the current date ( no time included )

10.0.0.1 Jul 29, 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%.

9.0.0.5 Jun 29, 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: The line's height is not updated once you paste lines with different heights

9.0.0.4 Apr 18, 2016
*Added: The FormatSelection property retrieves the value of the font's attribute from the cursor, in case there is no selection available ( Previously, the FormatSelection property retrieves empty, in case no selection is available, SelLength property is 0)
*Fixed: Prevents extending the B,I,U,S attributes (Type category) once A,G,O or S attribute is selected, in the context-menu of HTML editor.
*Fixed: Prevents showing the control's view in design mode, while running on FORTH system ( /COM version )

9.0.0.3 Feb 29, 2016
*NEW:   Ability to programmatically format the selection
*Added: FormatSelection(HTMLAttributeEnum) as Variant property formats the selection giving the attribute, with specified value. For instance, FormatSelection(exFormatBold) property on True, bolds the selection, while FormatSelection(exFormatBold) property on False, removes any bold attribute from the selection. The Debug.Print(FormatSelection(exFormatBold)) displays True, if the entire selection is shown in bold, else False is returned.
*Added: The Version property for /NET or /WPF 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.

9.0.0.2 Dec 07, 2015
*NEW:   Ability to convert the cursor coordinates to (column,line)-coordinates, and reverse
*Added: PositionToXY( Position ) property converts the cursor position to (x,y)-coordinates ( column, line ). The Position indicates a number between CursorStart and CursorEnd properties. The x/column-coordinate is in the low-order short of the return value and the y/line-coordinate is in the high-order short.
*Added: PositionToX( Position ) property converts the cursor position to x-coordinate (column). The Position indicates a number between CursorStart and CursorEnd properties.
*Added: PositionToY( Position ) property converts the cursor position to y-coordinate (line). The Position indicates a number between CursorStart and CursorEnd properties.
*Added: XYToPosition( X, Y ) property converts the (x,y)-coordinates ( column, line ) to cursor position. The result indicates a number between CursorStart and CursorEnd properties.

9.0.0.1 Oct 12, 2015
*NEW:   Windows Touch/Pointer Support ( ability to scroll the control's content by touching and dragging )
*Added: Using the mouse, you can scroll the control's content by long clicking the control and dragging the cursor to any direction.
*Fixed: Can't scroll the control if touching with fingers the buttons of the scroll bar.
*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 )
*Fixed: The keys are disabled into a dialog/input box during the ExecuteContextMenu event.

8.0.0.6 Sep 09, 2015
*Added: Find(What,Options) method finds and selects the text by code.
*Added: By default, the control's context menu filters items that contain typing characters ( exISearchContains + exISearchFilterFor )
*Added: ClientPos property returns the position of the mouse pointer inside the text.

8.0.0.5 June 22, 2015
*NEW:   Ability to retrieve the text ( formatted or un-formatted ) from the cursor position
*Added: CursorText(Position,Length,PlainText) property sets or gets the formatted or unformatted text between giving coordinates
*Added: CursorPos property returns or sets the position of the cursor inside the text.
*Added: CursorStart property gives the starting position of the text ( CursorPos property goes between  CursorStart and CursorEnd properties )
*Added: CursorEnd property gives the ending position of the text ( CursorPos property goes between  CursorStart and CursorEnd properties )

8.0.0.4 May 18, 2015
*Added: SingleLine property specifies whether the control's text is displayed on single or multiple lines.
*Fixed: Updates the enable/disable states of the Undo/Redo commands while the control's context menu is visible.
*Fixed: Prevents adding intermediate Undo/Redo actions when multiple changes occurs in the control's context menu, such as modifying the value of the slider position
*Fixed: Text's attributes (background, foreground) may be lost if changing a value in the control's context menu, if AllowUndoRedo property is True. 

8.0.0.3 Mar 23, 2015
*NEW:   Ability to change the visual appearance of selected items in the control's context menu using EBN objects
*Added: Background(exContextMenuSelBackColor) property specifies the solid/EBN selection's background color in the control's context menu. The Background(exContextMenuSelBackColor) is valid while it is not zero.
*Added: Background(exContextMenuSelBorderColor) property specifies the solid color to show the selection in the control's context menu. The Background(exContextMenuSelBorderColor) is valid while it is not zero.
*Added: Background(exContextMenuSelForeColor) property specifies the selection's text foreground color in the control's context menu. The Background(exContextMenuSelForeColor) is valid while it is not zero.

8.0.0.2 Jan 21, 2015
*NEW:   Ability to change the control's content menu visual appearance using EBN objects
*Added: Background(exContextMenuAppearance) property indicates the visual appearance of the borders / inside of the control's context menu. For instance, Background(exContextMenuAppearance) = 0x2000000, indicates that the control's context menu shows the EBN (borders and client area) with the identifier 2 in the control's VisualAppearance collection. The Background(exContextMenuAppearance) is valid while it is not zero. 
*Added: Background(exContextMenuBackColor) property specifies the solid background color for the control's context menu. The Background(exContextMenuBackColor) is valid while it is not zero.
*Added: Background(exContextMenuForeColor) property specifies the text foreground color for the control's context menu. The Background(exContextMenuForeColor) is valid while it is not zero.

8.0.0.1 Nov 18, 2014
*Initial Release