excontextmenu - what's new
17.0.0.4 Jan 17, 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 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.

17.0.0.3 Oct 02, 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

17.0.0.2 Jul 21, 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 AttachTemplate method fails if using "handle" keyword on x64 version

17.0.0.1 Mar 13, 2023
*NEW: Ability to specify the size to show the icons/images/check-boxes/radio-buttons within the control
*Added: ImageSize property specifies the size of control' icons/check-boxes/radio-buttons. 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. The ImageSize property defines the size (width/height) of the icons within the control's Images collection. For instance, if the ICO file to load includes different types the one closest with the size specified by ImageSize property is loaded by Images method. The ImageSize property does NOT change the height for the control's font(Font)

16.0.0.2 Nov 23, 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

16.0.0.1 Aug 17, 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 

15.0.0.1 Apr 13, 2022
*Added: New visual appearance for all internal icons to support high DPI resolution (100%, 125%, 150%, 175%, 200% and 300%)
*Fixed: The Background (exToolTipForeColor) property does not apply to the tooltip's title
*Fixed: The internal icons are stretched and look distorted when DPI scaling is not 100%

14.0.0.4 Sep 22, 2021
*Added: PowerBuilder 21.0 sample
*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
*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)

14.0.0.3 Aug 25, 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: Improves the conversion of the string to date, while using Regional settings (Windows System) for date like ddd.dd.mm.yyyy (Su.15.02.2021)

14.0.0.2 May 31, 2021
*Added: ExContextMenu.pdf (include the control's documentation in PDF format)
*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

14.0.0.1 Jan 25, 2021
*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.
*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__".
*Fixed: A GPF occurs if using right, readonly, multiline or password options into an item of mask-editor.

13.0.0.6 Dec 02, 2020
*Added: dBASE Plus samples
*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
*Fixed: The sub-menu's / select drop down's arrow shows distorted when Windows's DPI is on.

13.0.0.5 Oct 19, 2020
*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.4 Aug 24, 2020
*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.3 Jul 01, 2020
*Added: The Version property includes the SpecialBuild number of the assembly so it provides information like Major.Minor.Build.Revison.SpecialBuild.Type...
*Fixed: A GPF occurs if the application is started from design mode ( demo / evaluation / trial version only )
*Fixed: Prevents a memory leak when loading icons, pictures, from BASE64 encoded strings (Images method, HTMLPicture picture).
*Fixed: Prevents showing the control's view in design mode, while running on FORTH system ( /COM version )

13.0.0.2 May 13, 2020
*NEW:   Support for EBN 1004 version ( DPI-Aware support ).
*Added: 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 Mar 18, 2020
*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.
*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.
*Fixed: The buttons are not size correctly, with the Windows set to Classic theme.

12.0.0.3 Jan 22, 2020
*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 )

12.0.0.2 Sep 23, 2019
*Added: ToString property Loads or saves the Items collection using string representation (shortcut of Items.ToString property).
*Added: Item.ToString property loads or saves the item using string representation.
*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 Jun 24, 2019
*NEW:   Template/X-Script support
*Added: The Event(EventID) event occurs once the control fires an event (available for /COM version only)
*Added: EventParam(Parameter) property retrieves or sets a value that indicates the current's event parameter ( Event(ID) event ).
*Added: Template property specifies the control's template.
*Added: ExecuteTemplate(script) property executes the giving x-script and returns the result
*Added: TemplateDef 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 )

11.2.0.3 Apr 23, 2019
*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.
*Fixed: In xBase++, the context menu is shown at position 0, 0 once the Select method is called.
*Fixed: "Error executing code: FormActiveXControl (data source), method ... called with invalid parameters" on Dynamics AX environment is fired, if the application handles events with parameters passed by reference. On X++ you should use the Event event and EventParams method to handle this exception. The X++ is not able to handle the events with parameters passed by reference.

11.2.0.2 Feb 04, 2019
*Added: The ShowCheckedAsSelectedTransparency property specifies the transparency ( percent ) to show the checked items when selected.
*Added: /WPF version
*Fixed: Code generation for property 'IncrementalSearch' failed.  Error was: 'The value '17' is not a valid value for the enum 'IncrementalSearchEnum'.' ( /NET version, IncrementalSearchEnum type specified as [Flags] )
*Fixed: The grouped items shows the menu's BackColor property instead the background of the menu specified by Appearance property, when it refers an EBN object.

11.2.0.1 Nov 26, 2018
*NEW:   Ability to group and displays the sub-menu items arranged as Left-To-Right/Top-To-Bottom on the current item
*Added: The Item.GroupPopup property of GroupPopupEnum specifies the way the sub-menu items are shown for the current item ( sub-menu item ) 
*Added: The Item.ShowPopupOnChecked property specifies whether the item's submenu is shown if the current item is checked.
*Added: The Item.ShowAsButton property specifies whether the item is shown as a button.

11.1.0.6 Oct 01, 2018
*NEW:   Ability to display and edit data using a font control
*Added: The Item.AllowEdit property on exItemEditFont assigns a font editor to the current item.
*Added: The Item.AllowEdit on (exItemEditFont + exItemEditSpin) displays font editor associated with a spin editor, which can be used to select next/previously font.
*Added: CTRL + Left/Right into a font editor selects the next/previously font.

11.1.0.5 Aug 06, 2018
*NEW:   Ability to display and edit data using a color control
*Added: The Item.AllowEdit property on exItemEditColor assigns a color editor to the current item.
*Added: The Item.EditValue property gets or sets the color to be shown on the item.

11.1.0.4 Apr 04, 2018
*NEW:   Ability to display and edit data using a spin control (up/down)
*Added: The Item.AllowEdit property on exItemEditSpin assigns a spin editor to the current item. The Item.EditValue/EditCaption property gets or sets the value of the spin.
*Added: The Item.EditOption(exItemEditSpin) property specifies the step to advance the item's value when the user presses the up/down buttons.
*Added: The exItemEditSpin flag on Item.AllowEdit property associates a spin control to the current editor. For instance, exItemEditSpin + exItemEditText associates a text box and a spin control to the current item

11.1.0.3 Dec 18, 2017
*NEW:   Ability to display and edit data using a progress control
*Added: The Item.AllowEdit property on exItemEditProgress assigns a progress editor to the current item. The Item.EditValue property gets or sets the value of the progress.
*Added: The exItemEditReadOnly flag on Item.AllowEdit property specifies a disabled/read-only editor assigned to the current item. For instance, exItemEditReadOnly + exItemEditProgress creates a read-only progress ( the user can't change the progress value at runtime )

11.1.0.2 Sep 29, 2017
*NEW:   Ability to display and edit data using a scroll-bar control
*Added: The Item.AllowEdit property on exItemEditScrollBar assigns a scrollbar editor to the current item. The Item.EditValue property gets or sets the value of the scrollbar.
*Added: The Item.EditOption property retrieves or sets options to be assigned to the item's editor. For instance Item.EditOption(exEditMaxValue) property specifies the maximum value when the item displays a scrollbar control.

11.1.0.1 May 29, 2017
*NEW:   Ability to display and edit data using a slider control
*Added: The Item.AllowEdit property on exItemEditSlider assigns a slider editor to the current item. The Item.EditValue property gets or sets the value of the slider.
*Added: The Item.EditOption property retrieves or sets options to be assigned to the item's editor. For instance Item.EditOption(exEditMaxValue) property specifies the maximum value when the item displays a slider control.
*Fixed: The exItemEditVertical flag is missing from the AllowEditEnum type ( applies to /NET assembly only )
*Fixed: The definition of PopupAppearance, Padding, HotBackColor, BackColor and BackgroundExt properties of Items object are missing ( applies to /NET assembly only )
*Fixed: A stack overflow occurs if using the Items.Add(,,) method with generic types, such as (string, object, object) instead of  string, ItemTypeEnum, int ( applies to /NET assembly only )

11.0.1.3 May 15, 2017
*NEW:   Ability to input data using masking edit fields.
*Added: The Item.AllowEdit property on exItemEditMask assigns a masking editor to the current item, while the Item.EditMask property specifies the edit's mask.
*Added: The Item.EditMask property retrieves or sets a string expression that indicates the mask of the item's text box. The Item.EditMask property, supports up to four parts, separated by a semicolon (;). For instance, "`#`XXXXXX;;0;overtype,insertype,warning=Wrong!,beep", indicates the pattern "XXXXXX" with the prefix #, the masking character being the 0, instead _, the field enters in over-type mode, insert-type mode is not allowed, and the field beeps and displays a tooltip Wrong if any invalid character is entered.
*Added: The Item.EditValue property gets the value of the item's edit including no literals.
*Added: The Item.EditOption(exEditMaskFloat) property (of boolean type) specifies whether the Item.EditMask masks numbers such as integers or float/decimal numbers.

11.0.1.2 Mar 20, 2017
*NEW:   Ability to display items with different heights
*Added: The <font> HTML tag in the item's caption specifies the height to display the item.
*Added: The CTRL + BACKSPACE removes the currently incremental search ( if applied ). The Backspace key erases the last typed character in the incremental search.
*Fixed: Prevents adding the box character (127) when the user presses the CTRL + BACKSPACE character on an item with an text-box associated.

11.0.1.1 Feb 13, 2017
*Added: The SelectItem event occurs if the user presses the SPACE key on an item that display no edit or check/radio buttons.
*Added: Opens the item's sub-menu when pressing the SPACE key ( valid if no edit inside or check/radio buttons ).
*Added: The Ctrl + SPACE on an item of edit type simulates a simple SPACE key, like toggling the item's checkbox state.
*Added: Item.ShowAsDisabled property specifies whether the item is shown as disabled.

11.0.1.0 Jan 04, 2017
*Added: Support for ActiveX over the /NET Framework ( ActiveX control written in C#, VB/NET, Regasm - Assembly Registration Tool, CSActiveX) 
*Added: Retrieves or sets the handle of the window that receives notifications/WM_COMMAND messages. The control sends a WM_COMMAND message to the parent window, when the control fires an event. For instance In VFP9, you can use the BINDEVENT( thisform.hWnd, 273, thisform, "myselect" ) to catch the WM_COMMAND messages, instead catching the control's event which is not fired from modal forms, for _SCREEN object. The wParam indicates the identifier of the event that occurs, while lParam indicates the identifier of the item that fired the event.
*Fixed: Resets the auto-increment identifier to be used by Item.ID property when Items.ToString property is called. In other words, use the same ID for new items being added by the  Items.ToString property method.
*Fixed: The control shows no buttons if the UseVisualTheme property is exNoVisualTheme

11.0.0.9 Nov 07, 2016
*NEW:   Tabbed View Support, or ability to display information in pages of a tab
*Added: Item.Tab property specifies the identifier of the item that displays the current submenu ( grouping items ). For instance "[group=0x103]([group](P1[rad=1][group=3][spchk][tab=999][show=1](1,2,3),P2[rad][group=3][spchk][tab=999][show=1](4,5,6)),[id=999])" displays two pages, and each page displays 1, 2, 3, while the other displays 4 5 and 6.
*Added: Item.Padding property specifies the padding (space between the menu border and the item content) to display the item.
*Added: Item.HotBackColor property specifies the visual appearance / background color of the item, when the cursor hovers it.
*Added: Item.SelBackColor property specifies the visual appearance / background color of the item, when it is selected.
*Added: Item.SelHotBackColor property specifies the visual appearance / background color of the selected item, when the cursor hovers it.

11.0.0.8 Sep 21, 2016
*NEW:   Ability to arrange vertically the grouping items. Previously, the grouping items may be arranged horizontally only.
*Added: GroupPopupEnum.exGroupPopupVertical flag arranges vertically the items that compose the group.
*Added: Background(exGroupPopupFrameVStart) specifies the visual appearance/solid color of the frame around the first item ( vertically arranged ), when the its group includes more items.
*Added: Background(exGroupPopupFrameVIntermediate)  specifies the visual appearance/solid color of the frame around an intermediate item ( not start or end item, vertically arranged ), when the its group includes more items.
*Added: Background(exGroupPopupFrameVEnd)  specifies the visual appearance/solid color of the frame around the last item ( not intermediate or end item, vertically arranged ), when the its group includes more items.

11.0.0.7 Jun 08, 2016
*NEW:   Unlimited options to show any HTML text, images, colors, EBNs, patterns, frames anywhere on the Items/SubMenu's background. Ability to draw additional EBN/Color/Text/Patterns/Images on the Items/SubMenu, using the EBN String Format (create and run at runtime EBN objects)
*Added: Items.BackgroundExt property indicates additional colors, text, patterns, images that can be displayed on the Items/SubMenu's background using the EBN string format. For instance, Items.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 Items/SubMenu. The Items.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 Items/SubMenu (10%+12 pixels-wide from the object's client area). 
*Fixed: Safely removing the item(s), during any event of the control.
*Tip:   The eXButtons's builder WYSWYG tool provides the To String field, that indicates the EBN string format that can be used by BackgroundExt property.

11.0.0.6 Mar 23, 2016
*NEW:   Ability to define the padding and the visual appearance for items when displayed as a menu/group
*Added: Items.Padding property specifies the padding (space between the menu border and the item content) to display the items.
*Added: Items.BackColor property specifies the visual appearance / background color of the items/sub-menu.
*Added: Items.HotBackColor property specifies the visual appearance / background color of the items/sub-menu, when cursor hovers it

11.0.0.5 Jan 20, 2016
*NEW:   Ability to specify different visual appearance for any sub-menu.
*Added: LocalAppearance property specifies the visual appearance of the local popup, if not -1, else it inherits the menu's appearance (Item.ShowLocalPopup property)
*Added: Items.PopupAppearance property specifies the visual appearance of the giving popup ( that hosts the items ).
*Added: Background(exMenuSeparatorSelectButton) property specifies the visual appearance/color to show the separator between select and drop down button.
*Added: Background(exMenuSeparatorSelectButtonBottom) property specifies the visual appearance/color to show the separator between select and drop down button ( show the drop-down button to the bottom )

11.0.0.4 Nov 04, 2015
*NEW:   Select Button Support, indicates a button associated with a drop down button to select items from.
*Added: Item.ShowAsButton property of  ShowAsButtonEnum indicates the type of the button to be displayed on the item ( previously the Item.ShowAsButton property was of boolean type )
*Added: Item.ShowAsButton property on exShowAsSelectButton property indicates that the current item displays a select button. The select button is displayed if the current item has a sub-menu, which indicates the list of items to choose from. If the item has no sub-menu, the item is displayed as a normal button, with no drop down button.
*Added: The ShowAsButtonEnum.exShowAsButtonAutoSize property indicates that the size of the button's caption fits the item's caption.
*Added: Item.ShowLocalPopup property specifies whether the item's popup is shown as local. Clicking any item inside a local popup makes the popup itself to close including all its descendent sub-menus, without closing any ascendant sub-menus.

11.0.0.3 Aug 10, 2015
*Added: GroupPopupEnum.exGroupPopupEqualWidth, Shows the items that make the group of the same width.
*Added: GroupPopupEnum.exGroupPopupEqualHeight, Shows the items that make the group of the same height.
*Added: Background(exMenuHotBackColor) property specifies the visual appearance/color to show the item from the cursor.
*Added: Background(exMenuHotForeColor) property specifies the foreground color to show the item from the cursor.
*Added: Background(exMenuSelHotBackColor) property specifies the visual appearance/color to show the selected item from the cursor.
*Added: Background(exMenuSelHotForeColor) property specifies the foreground color to show the selected item from the cursor.

11.0.0.2 Apr 22, 2015
*NEW:   Ability to define the way each particular item could be closed.
*Added: Item.CloseOnClick property specifies the way the owner menu is closed once the user clicks the item. If not specified, the control's CloseOnClick property specifies how the menu is closed when user clicks the giving item.
*Added: GroupPopupEnum.exGroupPopupFrameSolidBox, forces the grouping items to show the solid frame (exGroupPopupFrameSolid) rather than EBN frame.
*Added: GroupPopupEnum.exGroupPopupFrameThickBox, Specifies that the grouping items shows a ticker frame.
*Fixed: Prevents flickering items that host edit fields.

11.0.0.1
 Feb 11, 2015
*NEW:   Ability to specify the visual appearance for grouping items frame using EBN/solid colors.
*Added: Background(exGroupPopupFrameSolid), specifies the solid color to show the frame around the grouping items.
*Added: Background(exGroupPopupFrameSingle), specifies the visual appearance/solid color of the frame around the grouping items, when its group includes a single item.
*Added: Background(exGroupPopupFrameHStart), specifies the visual appearance/solid color of the frame around the first item, when the its group includes more items.
*Added: Background(exGroupPopupFrameHIntermediate), specifies the visual appearance/solid color of the frame around an intermediate item ( not start or end item ), when the its group includes more items.
*Added: Background(exGroupPopupFrameHEnd), specifies the visual appearance/solid color of the frame around the last item ( not start or end item ), when the its group includes more items.

10.0.0.1 Dec 03, 2014
*Added: Item.ShowCheckedAsSelected property specifies whether the individual item of check/radio type, displays buttons and/or un-highlighting/highlighting the item 
*Added: ShowCheckedAsSelected property of ShowCheckedAsSelectedEnum, specifies whether the check/radio items displays check/radio buttons and/or highlighting the item.
*Added: Allow displaying the check/radio for items that displays sub-menus (Item.SubMenu.Count property is not zero).
*Fixed: Shows the item's sub-menu as soon as user clicks the item, or it hovers the item for a while.

9.0.0.5 Nov 10, 2014
*Added: Prevents showing the ,.;!?'")}] characters at the beginning of a new line, when html text is word-wrapping.
*Added: The Items.VisibleItemsCount property specifies the maximum number of visible items in the current sub-menu.
*Fixed: The Items.Item returns nothing, if ID property points to a short rather than long expression
*Fixed: The last italic character of a HTML caption may be shown as clipped
*Fixed: The CPU goes to 25% when the context menu is opened.

9.0.0.4 Oct 15, 2014
*Added: FlatImageWidth property specifies the width of the column to display the icons/images when the control's MenuAppearance is exMenuFlat. For instance, you can use the Item.HTMLImage property to assign a custom-size picture to the item.
*Added: ShowPopupArrow(ItemHighlited) property indicates the type of the arrow to be shown when the item displays the sub-menu.
*Added: Open the sub-menu, when the user presses the shortcut assigned to the item.

9.0.0.3 Jul 09, 2014
*NEW:   Shortcut Keys Support
*Added: Item.Shortcut property specifies the key combination that the user can press to select the item quickly. By default, the Shortcut property is initialized with the first character between a <u> and </u> HTML tags. The item's shortcut has effect ONLY if the control's IncrementalSearch property is 0 ( no incremental search ).
*Added: Prevents jumping to the first visible item on the sub-menu when the last item is highlighted and the user presses the Down key.
*Added: Prevents jumping to the last visible item on the sub-menu when the first item is highligted and the user presses the Up key.

9.0.0.2 Apr 10, 2014
*NEW:   Ability to sort the items
*Added: Items.SortOrder property specifies the way the items in the submenu are displayed such as ascending, descending, reverse order or unsorted.
*Added: Item.HTMLImage property retrieves or sets a value that indicates the key of the image (HTMLPicture method) to be displayed on the item ( left side ). The Item.HTMLImage property does not override the Item.Image property, so the Item.HTMLImage property has effect only when the Item.Image property is -1.
*Added: The [himg=key] tag indicates the key of the image to be displayed on the item when the item is loaded using the Items.ToString property. The Item.HTMLImage = "key" is equivalent with [himg=key]

9.0.0.1 Apr 02, 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, ...

8.1.0.1 Oct 21, 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.
*Added: The HTML tags are case insensitive, so the < b > is equivalent with < B >

8.0.0.3 Jun 10, 2013
*Fixed: Sometimes, the state of the highlighted item is not changed when pressing the SPACE key or clicking it, if the control' items has been filtered using the control's incremental search.
*Fixed: The check box associated to an item shows as disabled, if the Item.Enabled property is False.
*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.

8.0.0.2 Apr 08, 2013
*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 elemenet, 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

8.0.0.1 Feb 13, 2013
*NEW:   Ability to incremental search or filter the items of the context menu, as you type
*Added: IncrementalSearch property specifies the type of operation that control performs as the user types characters. For instance, the IncrementalSearch on exContains + exFilterFor specifies that the context menu displays JUST the items that contains the typed characters.
*Added: Pressing the Up/Down keys on the first or last visible item, the current focus item goes to last or first visible item
*Added: The Home/End keys highlights the first or last visible item in the current context menu.


7.0.0.1 Jan 10, 2013
* Initial Release