Exontrol ExSlider Component - Release Notes (http://www.exontrol.com/exslider.jsp)

21.0.0.3 Dec 07, 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 Background (exToolTipForeColor) property does not apply to the tooltip's title

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

21.0.0.1 Jan 25, 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: On some machines, the format keyword (within expression properties) provides more than 2 decimals for French(Canada) regional settings (for instance "12.3456 format ``" displays 12.3456 instead of 12.35)

20.0.0.1 Jul 11, 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 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 

19.0.0.2 Aug 11, 2021
*Added: The expression properties supports `bias` constant that defines the difference, in minutes, between Coordinated Universal Time (UTC) and local time. For example, Middle European Time (MET, GMT+01:00) has a time zone bias of "-60" because it is one hour ahead of UTC. Pacific Standard Time (PST, GMT-08:00) has a time zone bias of "+480" because it is eight hours behind UTC. For instance, date(value - bias/24/60) converts the UTC time to local time, or date(date('now') + bias/24/60) converts the current local time to UTC time
*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

19.0.0.1 May 17, 2021
*Added: Sets or gets the control's Font property in design mode, for the /NET version
*Added: ExSlider.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)

18.0.0.1 Nov 30, 2020
*Fixed: Any expression that includes the "in" operator fails.
*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.2 Nov 20, 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.

17.0.0.1 Nov 12, 2018
*NEW:   Ability to specify the position of the control's tooltip
*Added: ToolTipX property indicates an expression that determines the horizontal-position of the tooltip, in screen coordinates. By default, the ToolTipX property is empty, which indicates that the tooltip is shown at its default position. The expression supports predefined keys such as value, x, y, width and height among other general constants, operators and functions. The value indicates the current horizontal-position the tooltip is shown, in screen coordinates. The x, y indicates the horizontal/vertical position the tooltip is shown expressed in screen coordinates. The width an height keywords specifies the size of the tooltip is about to be shown. For instance, ToolTipX = "value + 16", indicates that the tooltip should be shown 16-pixels right to the default position, or ToolTipX = "128" specifies a fixed horizontal-position for the tooltip, no matter where the thumb is dragged, ToolTipX = "1024 - width" shows the tooltip left to 1024 x-coordinate.
*Added: ToolTipY property indicates an expression that determines the vertical-position of the tooltip, in screen coordinates. By default, the ToolTipY property is empty, which indicates that the tooltip is shown at its default position. The expression supports predefined keys such as value, x, y, width and height among other general constants, operators and functions. The value indicates the current vertical-position the tooltip is shown, in screen coordinates. The x, y indicates the horizontal/vertical position the tooltip is shown expressed in screen coordinates. The width an height keywords specifies the size of the tooltip is about to be shown. For instance, ToolTipY = "value + 16", indicates that the tooltip should be shown 16-pixels down to the default position, or ToolTipY = "128" specifies a fixed vertical-position for the tooltip, no matter where the thumb is dragged, ToolTipX = "1024 - height" shows the tooltip up to the 1024 y-coordinate.

16.0.0.1 Aug 23, 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.1 Apr 30, 2018
*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).

14.0.0.1 Oct 23, 2017
*NEW:   Multiple improvements for expression-like properties
*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.
*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 ) 
*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). 
*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.
*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 )
*Added: `bitnot` x unary/bitwise-operator flips every bit of x, and returns the unsigned value. For instance, bitnot(0x00FF0000) returns 0xFF00FFFF.

13.0.0.2 Sep 28, 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 )
*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.

13.0.0.1 Jul 30, 2016
*Added: DPI-Aware Support
*NEW:   Support for EBN 1004 version ( DPI-Aware support ).
*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%.
*Added: Restores the slider's position, once the user presses the ESC key while dragging the thumb.
*Fixed: Prevents showing the control's view in design mode, while running on FORTH system ( /COM version )

12.0.0.2 Apr 20, 2016
*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"

12.0.0.1 Jan 25, 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.

11.0.0.3 Oct 05, 2015
*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.

11.0.0.2 May 27, 2015
*Fixed: A Click event occurs right after DblClick event.
*Fixed: Can't change the slider's value with the fingers if touching the slider's background part.
*Fixed: The SelStart/SelLength values are not shown properly, if control's AllowFloat property is True

11.0.0.1 Mar 11, 2015
*NEW:   Ability to display the values in reverse order.
*Added: OrientationEnum.exReverseValue flag indicates that the values in the control are displayed in the reverse order. For instance, if the Orientation property on exVertical, displays the min value on top, and the max value on bottom, the  Orientation property on exVertical + exReverseValue makes the control to display the max value on the top of the control, and the min value in the bottom part of the control. The  exReverseValue flag is valid for exVertical as ell for the exHorizonal.
*Added: Ctrl + Left/Right or Ctrl + Up/Down advances the current slider's position using the LargeChange property ( similar to PageUp/PageDown keys )
*Added: Better arrangement of the track and thumb bars when the slider is smaller, to include the labels to be shown on the ticks.

10.0.0.2 Dec 22, 2014
*Added: The HTML tags are case insensitive, so the < b > is equivalent with < B >
*Added: Prevents showing the ,.;!?'")}] characters at the beginning of a new line, when html text is word-wrapping.
*Added: , ,  HTML tags ends the solid, up or dotted line
*Fixed: The last italic character of a HTML caption may be shown as clipped

10.0.0.1 Nov 17, 2104
*NEW:   Subscript and Superscript implementation in HTML captions, using the  HTML tag
*Added: ,  built-in HTML tags defines the vertical offset to display the element, relative to the current position. This tag is inheritable. The , where, pixels indicates the vertical offset to be applied ). For instance, the following text displays a text with Subscript and Superscript such as: "Text with subscript and superscript support"
*Added: The  and , or  and , so no = or full 6 hexa-digits are required to define the color to be applied
*Fixed: The  HTML tag is not overwritten when using inside another  tag
*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  HTML tag.

9.0.0.1 May 07, 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, ...
*Fixed: "Visual C++ Runtime Error!" occurs if using the  or  with no indicating the color. Correct is , instead 

8.0.0.1 Nov 06, 2013
*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: MS Access plays a beep, when the user presses the Backspace key while the control has the focus.
*Fixed: In MS Access, can't use the CTRL+F4 key to close the current form.

7.1.0.3  Feb 04, 2013
*NEW:   Support for 'array' or 'split' operators in formatting/computed expressions 
*Added: The 'array' binary operator gets the element from an array giving its index ( 0-based), or empty if not found. For instance the "month(value)-1 array ('J','F','M','A','M','Jun','J','A','S','O','N','D')" returns the initials of the months.
*Added: The 'A split B' binary operator splits the A using the B as separator, and returns the array of values being found. For instance, the "weekday(value) array 'Sun Mon Thu Wed Thu Fri Sat' split ' '" gets the weekday as string.
*Added: Increases performances by optimization the expression. For instance, the -1 + 2/1.3, gets directly the result instead computing at runtime.
*Fixed: Any + or - operation after a 'case' statement into a formatting/computing expression fails. Properties such as Column.FormatColumn, Column.FormatedColumn, and so on.
*Fixed: The 'format' operator is not working properly on Spanish, German, Romanian, ... where the '.' character is using for grouping, instead decimal separator.

7.1.0.2 Nov 26, 2012
*NEW:   New text decorations support for HTML captions, like outlined characters, shadow, ....
*Added: ,  built-in HTML tags define a gradient text ( the  supports color, mode and blending, like , 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: ,  built-in HTML tags define a text to show with outlined characters ( the  supports color and width, like , 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: ,  built-in HTML tags define a text with a shadow ( the  supports color, width and offset, like , 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.1.0.1 Aug 30, 2012
*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.
*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.
*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 )

7.0.0.1 Feb 29, 2012
*Added: The /COM version can be dropped to the eXPropertiesList control as an object.
*Added: The Template or ExecuteTemplate properties may contain several commands separated by ; not only cariage returns.
*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.

6.1.0.2 Jan 25, 2012
*Fixed: Clicking the slider jumps to the value from point, instead increasing the value by LargeChange property.
*Fixed: Disables changing the slider's value when user right clicks the control.
*Fixed: Prevents changing the slider's value when the cursor is outside the control.
*Fixed: Fires the MouseUp event if the user releases the mouse outside of the control.

6.1.0.1 Oct 26, 2011
*NEW:   Ability to show the customizable HTML values for control's ticks
*Added: LabelTick property indicates the expression to show the HTML value on ticks
*Fixed: The TickFrequency property has no effect, instead the SmallChange indicates the tick ratio.
*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.3 Aug 20, 2011
*Added: The Value/ValueF property is adjusted based on the SmallChange property
*Fixed: The get_HTMLPicture property gets empty object on the /NET version.
*Fixed: Ignores the ending HTML tags, if they are not used previously ( for instance, the < /b > is not displayed in the sequence "ABC< /b >" )

6.0.0.2 May 02, 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.

6.0.0.1 Feb 16, 2011
*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.
*Fixed: Extra characters are inserted in the next line if the breaking element is a picture that does not fit the current line.

5.0.0.1 Nov 11, 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: 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: 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 rgb ). For instance, 0x1A88A5D indicates that EBN with the identifier 1 is displaying in Air Force blue color (#5D8AA8).

4.0.0.3 Sep 20, 2010
*NEW:   Ability to specify double/float expression for the limits/margins of the slider.
*Added: AllowFloat property specifies whether the slider's range may contains floating numbers.
*Added: MinimumF property specifies the lower limit value of the scrollable range ( as float number ).
*Added: MaximumF property specifies the upper limit value of the scrollable range ( as float number ).
*Added: SmallChangeF property gets or sets the value added to or subtracted from the Value property when the slider is moved a small distance ( as float number ).
*Added: LargeChangeF property specified the amount by which the slider position changes when the user clicks in the slider or presses the PAGE UP or PAGE DOWN keys ( as float number ).
*Added: The ValueF property specifies a numeric expression that indicates the control's value ( as float number ).
*Added: The ValueFromPointF property specifies a numeric expression that indicates the control's value ( as float number ).

4.0.0.2 Aug 19, 2010
*NEW:   PNG support for picture properties.
*Added: PNG, TIFF, EXIF or WMF image format support.
*Fixed: Sometimes, the lower value can not be reach by dragging the mouse, if Minimum property is negative.
*Fixed: The mouse or key events could be fired while user scrolls the control's content.
*Fixed: The slider's thumb position is not updated while scrolling using the mouse.

4.0.0.1 Apr 15, 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: Changing the way the colors are being applied to EBN objects.
*Fixed: The user can not change the slider's value by clicking the control's thumb, if "Switch primary and secondary buttons" is checked.

3.1.0.4 Feb 11, 2010
*Fixed: Rarely, right clicking while dragging the thumb ( left button is still pressed ) of the scroll bar fires an access violation.
*Fixed: Removes the Scroll event definition from the /NET assembly.
*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 /NET Assembly does not update at runtime the properties saved in design-mode.

3.1.0.3 Sep 28, 2009
*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.
*Fixed: The associated ContextMenuStrip component is not shown when right clicking the /NET Assembly component.

3.1.0.2 June 12, 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.1.0.1 April 14, 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 (AssemblyName: exontrol.exslider, PublicKeyToken=14eef8327216bffe )
*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.

2.1.0.2 March 12, 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.
*Fixed: The path to load pictures from, is limited to 127 characters. 
*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 19, 2008
*Added: Compatible with the Data Execution Prevention (DEP). (SpecialBuild:4000)
*Fixed: The IDE Visual Studio 2008 on Windows Vista crashes when accessing the properties of exlistbar/net component.
*Fixed: The excel vba fires "Run-time error '28', Out of Stack space", when running an user-form. ( IQuickActivate )

2.1	eXSlider/NET

2.0.0.1 May 26, 2008
*Fixed: The slider is not functional if your mouse buttons configuration in the Control Panel is for Left-Handed.

1.0.0.1 May 11, 2007
* Initial Release