exribbon - what's new
19.0.0.6 Feb 21, 2024
*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
*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"

19.0.0.5 Nov 27, 2023
*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.
*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.
*Fixed: The scroll button's appearance is restored to normal instead of hover state when the mouse button is released

19.0.0.4 Sep 13, 2023
*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
*Fixed: The AttachTemplate method fails if using "handle" keyword on x64 version

19.0.0.3 Jun 05, 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)

19.0.0.2 Mar 09, 2023
*Added: New visual appearance for all internal icons to support high DPI resolution (100%, 125%, 150%, 175% , 200% and , 300%)
*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: The internal icons are stretched and look distorted when DPI scalling is not 100%

19.0.0.1 Jan 04, 2023
*NEW:   Ability to specify the size to show the icons within the control
*Added: ImageSize property specifies the size to show the icons, check-boxes, radio-buttons, drop-down arrows and so on. 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: A GPF may occur on closing the form/window/dialog if one or more events are handled by AttachTemplate method

18.0.0.2 Aug 29, 2022
*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)
*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

18.0.0.1 Jun 27, 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 

17.0.0.2 Sep 06, 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

17.0.0.1 Apr 12, 2021
*Added: ExRibbon.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)
*Added: Sets or gets the control's Font property in design mode, for the /NET version

16.0.0.1 Dec 14, 2020
*Fixed: The scroll bar's thumb minimum-size is equivalent with the size of the size of scroll's buttons. In other words, the size of the scroll's buttons specify the thumb minimum-size. Previously, the thumb's minimum-size was 6-pixels.
*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

15.0.0.2 Aug 17, 2020
*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.
*Fixed: A GPF occurs if using right, readonly, multiline or password options into an item of mask-editor.
*Fixed: Any expression that includes the "in" operator fails.

15.0.0.1 Jun 24, 2020
*Added: lpad keyword (available for properties that support expressions) , as a lpad b, pads the value of a to the left with b padding pattern.
*Added: rpad keyword (available for properties that support expressions), as a rpad b, pads the value of a to the right with b padding pattern. For instance, 12 lpad "____" generates the string "12__".
*Added: concat keyword (available for properties that support expressions), as a concat b concatenates the a (as string) for b times. For instance, "x" concat 5, generates the string "xxxxx"
*Fixed: The item's EditValue property returns the masking/placeholder characters, even the second parameter of the mask, includes 1, 2 or 3 values. For instance, "[mask=0000;1]" specifies the item's editing-mask displays 4 digits place-holders, and the item's EditValue returns the value(number) without including the masking/placeholder characters. So if the item's mask diplays: 12__, the item's EditValue returns "12" rather than "12__".

14.0.0.1 Apr 29, 2020
*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). 
*Fixed: The sub-menu's / select drop down's arrow shows distorted when Windows's DPI is on.

13.0.1.2 Mar 04, 2020
*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: Miscellaneous changes for control's scrollbar-extension such as: contiguously scrolls the control's content line by line, or page by page ( if CTRL is pressed ) while the user keeps clicking the up/left top/right side of the thumb-extension, closes the scrollbar-extension as soon as the user presses ALT + F4, ALT + TAB, shows the scrollbar-extension only if effective mouse movement occurs, hides the scrollbar-extension as soon as the owner control loses the focus
*Added: Displays all available UI shortcut key combinations when the user presses the base key combination ( extended shortcut keys ). For instance, you have items with extended shortcut keys like CTRL + P + M, CTRL + P + N, and so on. The M and N shortcut keys will be displayed as soon as the user presses the CTRL + P base key combination.
*Added: DBase Plus samples

13.0.1.1 Jan 15, 2020
*Fixed: Prevents showing duplicate shortcut keys. In case duplicate shortcut keys are found, the only enabled shortcut key is displayed.
*Fixed: Invokes the first enabled shortcut in case the control includes multiple items with the same shortcut keys. 
*Fixed: The user can't remove the current incremental search, if the user presses the Backspace key.
*Fixed: The SelectItem event is not fired if the user presses the button's shortcut ( Item.Shortcut, Item.ShowAsButton property )

13.0.1.0 Sep 25, 2019
*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.9 Jun 26, 2019
*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. 
*Fixed: Resizes the drop down popup / select arrow based on the current DPI settings.

13.0.0.8 Apr 29, 2019
*Added: The Version property includes the SpecialBuild number of the assembly so it provides information like Major.Minor.Build.Revison.SpecialBuild.Type...
*Fixed: "The object invoked has disconnected from its clients (Run-time error '-2147417848 (80010108)' )" may occur in MS Access, when calling the Items.Remove method, within a UserForm
*Fixed: Prevents "Do you want to save ..." / "Save changes...' input box, when the user opens the form in design mode, and close it.

13.0.0.7 Jan 23, 2019
*Added: Item.Position property specifies the position of the item within its collection. You can use the Item.Position to insert an item at specified position.
*Added: ShortcutKeysInfo property returns the list of shortcut keys that are currently available.
*Fixed: A popup menu may be shown to the left instead of right, if it does not fit the current monitor.
*Fixed: Prevents displaying the item's debug information, for item with empty caption (Debug property on True)

13.0.0.6 Nov 19, 2018
*NEW:   Improvements for EditToolBar WSYIWYG tool.
*Added: The "X-Script: Copy" context menu, generates the x-script / template code and copies to the clipboard, that can be pasted to eXHelper tool to generate source code for other programming languages such as VBA, VB6, VB.NET, VB.NET for COM, VFP 6,VFP 9, C++, C++ Builder, C#, C# for /COM, X++ (Dynamics Ax 2009), Delphi 8 (. NET only), Delphi (standard), Visual Objects, PowerBuilder (Classic ), dBASE Plus, JavaScript, VBScript, Xbasic (Alpha Five), Visual DataFlex, Xbase++, and so on. 
*Added: The "X-Script: Invoke/Execute" context menu can be used to change the control, using the x-script code.
*Added: "key" option in the EditToolBar tool
*Fixed: Sometimes the item's editor is losing the caret (Item.AllowEdit property).

13.0.0.5 Sep 05, 2018
*NEW:   Ability to save the control's content in template/x-script format
*Added: AllowCopyTemplate property specifies whether the Shift + Ctrl + Alt + Insert sequence copies the control's content to the clipboard, in template form. For instance, you can press the Shift + Ctrl + Alt + Insert sequence, the control's generates its content in x-script format. Open the control's eXHelper, paste the generated x-script to the middle panel, and run it. Now, you can generate the source code, in different programming language such as: VBA, VB6, VB.NET, VB.NET for COM, VFP 6,VFP 9, C++, C++ Builder, C#, C# for /COM, X++ (Dynamics Ax 2009), Delphi 8 (. NET only), Delphi (standard), Visual Objects, PowerBuilder (Classic ), dBASE Plus, JavaScript, VBScript, Xbasic (Alpha Five), Visual DataFlex, Xbase++, and so on
*Added: ToTemplate property generates the control's template.
*Added: The [key=shortcut] field in the Item(s).ToString property indicates the value of the Item.Shortcut property ( serialize the Items.Shortcut property in ToString representation )
*Fixed: The Item.Items / SubMenu property returns nothing, if the item's Tab property is not -1 ( the item shows it's items to a page )

13.0.0.4 Jul 25, 2018
*Added: The ShortcutKeyFormat property specifies the expression that determines the format (including HTML tags) to display the shortcut keys. For instance, ShortcutKeyFormat property on "`<font ;14>` + caption" defines a bigger font to display the shortcut keys. The new keywords the ShortcutKeyFormat property knows are: caption keyword indicates a string as it is displayed, sca keyword specifies whether SHIFT, CTRL or ALT keys are pressed in the shortcut, and keys keywords indicates the base ( and extended ) key(s) the shortcut is defined.
*Added: Item.Shortcut property can specify no modifier key, and so the item's shortcut became the parent's shortcut modifier plus the shortcut itself. For instance, if the parent item has the shortcut "CTRL + A", and the item's shortcut is "P", it indicates that the item's shortcut is actually "CTRL + A + P", which indicates that the item is selected as soon as the user presses the CTRL + A, and then P key. You can use this option to easily assign shortcut to items, by inheriting the parent's shortcut. At least one shortcut of any parent should have a modifier key, else the shortcut of the item itself can not be invoked.
*Added: The Item.Shortcut property supports combination of letters/digits without using + separator. For instance: "CTRL + AAP" is equivalent with "CTRL + A + A + P"
*Fixed: Closes all popups if the user presses the ALT + SPACE to show the system menu.

13.0.0.3 Mar 26, 2018
*Added: The ShortcutKeyPressedModifers property indicates the combination of modifier keys whose shortcut keys are currently visible. For instance, call the ShortcutKeyPressedModifers property on exModifierAny and the control will show all available shortcut keys, for any combination of modifier keys ( even if they are not pressed ), of if exModifierCtrl + exModifierAlt it shows all short cut keys available when user presses the CTRL + ALT
*Added: The ShortcutKeyTransparent property ondicates the percent of transparency the shortcut keys are being displayed with.
*Added: Improves the way the control displays information in Debug mode. ( Debug property )
*Added: The Backspace does the same thing as Escape key ( closes the current popup )

13.0.0.2 Jan 31, 2018
*Added: The ShortcutKeyPadding property specifies the UI shortcut key's content padding.
*Added: The ShortcutKeyExtPaddingH property specifies the padding to be applied to the item (arranged horizontally) that displays the UI shortcut, so the ShortcutKeyAlign property aligns the UI shortcut relative to this.
*Added: The ShortcutKeyExtPaddingV property specifies the padding to be applied to the item (arranged vertically) that displays the UI shortcut, so the ShortcutKeyAlign property aligns the UI shortcut relative to this.
*Added: The Background(exShortcutKeyAppearance) specifies the visual appearance of the shortcut keys, using EBN objects
*Added: The Background(exShortcutKeyBackColor) specifies shortcut keys's background color
*Added: The Background(exShortcutKeyForeColor) specifies shortcut keys's foreground color

13.0.0.1 Jan 17, 2018
*NEW:   Advanced Shortcut Keys Support, including UI visual appearance when the user presses modifier keys, such as CTRL, ALT or SHIFT, or a combination of any of them
*Added: ShortcutKeyVisible property gets or sets a value that specifies whether the control's shortcut keys are visible or hidden.
*Added: Item.Shortcut property specifies the keys combination to invoke it. For instance, Shortcut property on "CTRL + A", indicates that the user can automatically select the item pressing the CTRL + A combination, or "CTRL + F1 + B", indicates that the item is being invoked as soon as the user presses CTRL + F1 and then B key. This is valid while the control's ShortcutKeyVisible property is exShowShortcutKeysToggle or exShowShortcutKeysToggleDelayed
*Added: ShortcutKeyAlignH property defines the alignment of the UI shortcut keys relative to the item that displays it, when the holder arranges the items horizontally.
*Added: ShortcutKeyAlignV property defines the alignment of the UI shortcut keys relative to the item that displays it, when the holder arranges the items vertically.

12.0.0.5 Dec 18, 2017
*Fixed: Prevents closing the current popup / sub-menu once the user presses the Alt modifier-key.
*Fixed: The CTRL + Escape closes all popups / sub-menus.
*Fixed: The control fails if adding a popup item with no sub-items
*Fixed: Un-highlights all visible items, when cursor leaves the control.

12.0.0.4 Oct 02, 2017
*NEW:   Multiple Improvements for the EditRibbon tool
*Added: Ability to create/load a new sample. Select the "New Sample" from the tool's system menu, select a folder and there you can create a new sample. If the folder contains the EBN file, those will be loaded, in order to use them into the new sample
*Added: Update the exHTML.dll, into the EditRibbon tool

12.0.0.3 Jun 07, 2017
*Fixed: The "Ribbon Like" samples do not work properly, if the AllowToggleRadio property is True. In other words, an item with the Tab property set can not set it's state to zero, or an item in the radio-group is always checked.
*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 )

12.0.0.2 Apr 10, 2017
*Added: The "[hid]" flag in Item.ToString representation specifies whether the item is hidden. By default, if the flag is missing, the item is visible.
*Added: "Hidden" option in the EditRibbon tool
*Fixed: A GPF may occur if using the EditRibbon tool, with DEBUG version

12.0.0.1 Mar 06, 2017
*NEW:   Minimize Support
*Added: The Item.Visible property on False, for an item (or any parent) that hosts pages of the control (Tab), displays the minimize state of the of control. In other words, the pages of the control shows up, once the user clicks the header.
*Added: Increases the speed to find the items based on its ID or Caption
*Added: Minimized sample

11.1.0.1 Jan 11, 2017
*Added: Background(exMenuHotBorderColor) property specifies the color to show the frame around the item from the cursor.
*Added: Background(exMenuSelHotBorderColor) property specifies the color to show the frame around the selected item from the cursor.
*Fixed: The buttons are not size correctly, with the Windows set to Classic theme.

11.0.0.1 Nov 21, 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%.
*Added: The expression properties support `dpi`, `dpix` and `dpiy` constants that returns the current DPI setting on x/y scale. For instance, the "value * dpi" returns the value if the DPI setting is 100%, or value * 1.5 in case, the DPI setting is 150%
*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: The number parameter of the Item.ShowPopupOffset property, can be followed by a D character which indicates that the coordinate is giving in dots, rather than pixels, and depends on the current DPI settings. For instance, ShowPopupOffset = "12D,12D", indicates that the inner popup is moved by 18,18 pixels if the DPI settings is 150%, while if DPI settings is 100% the popup is moved by 12,12 pixels, relative to its current position. The numberD converted in pixels is number * DPI / 100.

10.0.0.9 Sep 19, 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.8 Jun 01, 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 pictures of a disabled item are not visible, while hovering the item.
*Fixed: Prevents showing the control's view in design mode, while running on FORTH system ( /COM version )

10.0.0.7 Mar 21, 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"

10.0.0.6 Feb 24, 2016
*NEW:   Ability to display the drop down menu ( popup menus ) aligned to sides of the control or screen, rather than its item.
*Added: Item.ShowPopupOffset property indicates a pair of values separated by comma, such as "x,y", where x or/and y can be a number that specifies the offset relative to its default position, a number followed by :control keyword, which indicates the offset relative to the control, or a number followed by :screen keyword, where the number indicates the absolute screen position. For instance, "10,10" shows the drop down with a relative offset of 10, 10 pixels. The "0,4:control", specifies that the y-coordinate of the drop down panel, is aligned to the control, by applying a 4 pixel offset to that. In other words, the drop down will be shown bellow the control, rather that showing it right under the item itself. The "0:screen,0:screen", specifies that the drop down panel, is shown at absolute-screen position (0,0).
*Fixed: Shows the item's drop down panel as close as the control, when its size exceeds the control's client area.

10.0.0.5 Dec 07, 2015
*Added: The Version property for /NET or /WPF version returns more information about the component/assembly/file.
*Fixed: The user can't scroll to the scrollbar's minimum value if it is negative ( while dragging the scrollbar's thumb )
*Fixed: An ICO file shows as 18x18 instead of 16x16 pixels if it is loaded using the HTMLPicture method.

10.0.0.4 Oct 07, 2015
*Fixed: Un-highlights the last item from the cursor when the cursor leaves the control ( Background(exMenuHotBackColor), Item.HotBackColor, ... )
*Fixed: The SelectItem event occurs for all items from the cursor ( when two or more controls overrides one with another )
*Fixed: The item's editor is still displayed, if the item's Visible property is set on False

10.0.0.3 Aug 03, 2015
*Added: Toggling the open/close state of the drop down item's submenu when the user clicks the same item ( has effect for items of the ribbon control, not items of sub-menus )
*Fixed: Prevents showing the item's popup when the cursor hovers it, while the item is displayed directly into ribbon, not in any sub-menus. 
*Fixed: The item over the cursor is not highlighted, if multiple instances of ribbon control are placed in the same form, on the same time.
*Fixed: The /NET assembly fails if the cursor is hovering a slider field while the ribbon has opened popup menus.

10.0.0.2 Apr 27, 2015
*Added: The WYSIWYS EditRibbon Tool is UNICODE aware
*Added: Mock-up Samples: Microsoft Office, Paint and Windows 8.1 Ribbon-Like
*Fixed: The control fails if Item.ToString is called several times
*Fixed: Prevents re-opening the drop down portion of the button, if the user clicks twice the drop down arrow.

10.0.0.1 Feb 05, 2015
*Initial Release