Exontrol ExShellView Component - Release Notes (http://www.exontrol.com/exshellview.jsp)

18.0.0.1 Aug 23, 2023
*Added: ColumnNames property defines a list of column's name replacements, separated by comma as "Name1(NewName1),..". For instance "Name(Ime),Date modified(Datum),Type(Tip),Size(Velikost)" changes the name for Name, Date modified, Type and Size columns.
*Added: AllowContextMenu property enables or disables the control's context-menu. The AllowContextMenu property can disable using the context menu for list-view section or header portion.
*Added: TemplatePut method ( equivalent with TemplateDef property) allows defining inside variables for the Template feature ( available for /COM only )

17.0.0.2 May 22, 2023
*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: 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 )

17.0.0.1 Feb, 15 2023
*NEW:   Template support (The Template/x-script code is a simple way of calling control/object's properties, methods/events using strings. Exontrol owns the x-script implementation in its easiest way and it does not require any VB engine to get executed. Our simple rule is using the component alone without any other dependency than the Windows system)
*Added: Template property, applies the giving x-script code
*Added: ExecuteTemplate property, executes a template and returns the result

15.0.0.2 Oct 03, 2022
*Added: PowerBuilder 21.0 sample
*Fixed: Clicking (Custom) property generates "Class Not Registered" error (Windows x64, 'Looking for object with CLSID:{7EBDAAE1-8120-11CF-899F-00AA00688B10}')

15.0.0.1 May 25, 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 

14.0.0.1 Apr 21, 2021
*Added: ExShellView.pdf (include the control's documentation in PDF format)
*Added: Sets or gets the control's Font property in design mode, for the /NET version
*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)

13.0.0.2 Dec 09, 2019
*Fixed: The SmallIcon view cannot be set programmatically, although the context menu works fine.

13.0.0.1 Apr 10, 2019
*Added: Prevents showing the control's header while the control's ViewMode is not Details
*Fixed: The ViewMode property does not return Extra_Large_Icons, Large_Icons or Medium_Icons values
*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.

12.0.0.1 Apr 30, 2018
*Added: The ExShellObject.InvokeCommand method can use predefined commands such as: properties, print, cut, copy or delete ( language-independent name of the command )
*Added: The ExShellObject.InvokeCommand method can use predefined IDs like 17 for Create Shortcut, 18 for Delete, 20 for Properties, 25 for Cut, 26 for Copy command

11.0.0.1 Dec 13, 2017
*Added: DisableDragDrop property disables the OLE Drag and Drop within the control.
*Fixed: The control's InvokeItemMenu or InvokeMenuCommand may be fired more than once.
*Fixed: Removes the flickering cursor, while using the evaluation version of the control.

10.0.0.1 Aug 16, 2017
*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).

9.0.0.1 Aug 03, 2016
*Added: DPI-Aware Support
*Fixed: Prevents showing the control's view in design mode, while running on FORTH system ( /COM version )

8.0.0.2 Aug 26, 2015
*Added: The Version property for /NET or /WPF version returns more information about the component/assembly/file.

8.0.0.1 Mar 09, 2015
*NEW:   Ability to browse files from different folders to a single view
*Added: BrowseFiles property specifies a list ( separated by | character ) or safe array of files to be shown in the shell view. Each existing file can have a different extension, by adding > extension to the name of the file, such as "C:\exontrol\images\auction.gif>PNG" which will show the auction item with the PNG associated icon. For instance, the BrowseFiles = Array("document.doc", "text.txt", "executable.exe") displays a three items, while BrowseFiles = "C:\Program Files\Microsoft Visual FoxPro 9\vfp9.exe|C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\devenv.exe" shows the VFP9 and DEVENV tools in the same view
*Added: OverlayIcons property prevents showing the overlay images. Windows uses Overlay-ed icons to notify the user that some item has special function or attribute. For example, shortcut icons have a small arrow in lower-left corner, shared folders have a hand that shows that folder is shared, etc.
*Added: DrawGridLines property specifies whether the control shows the grid lines around items, when the control's view is details.

7.0.0.1 Apr 09, 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, ...

5.0.0.1 Feb 13, 2012
*Added: Prevents browsing the parent folder if user presses the Backspace key, if the KeyCode parameter of the KeyDown event is set on 0.
*Fixed: The KeyUp, KeyPress events are never fired.

4.0.0.4 Aug 30, 2011
*Added: SelectAll property selects or unselects all files in the control when the multiple selection is enabled.
*Added: ObjectTypeEnum.AsDisplayed flag indicates to get the collection of files in the order as they are displayed. For instance Objects.Get( AllItems or AsDisplayed ) indicates the list of files as they are displayed.
*Fixed: Sometimes the Objects.Get(AllItems) retrieves an empty collection

4.0.0.3 May 30, 2011
*Added: HeaderVisible property specifies whether the view shows or hides its header.
*Added: HideToolTips property specifies whether the file displays a tooltip whether the cursor hovers the shell view.
*Added: CurrentFolder property specifies the folder to be browsed ( Similar with BrowseFolder, excepts that the property supports string directly )
*Fixed: The control's Refresh method reloads data from the disk, instead recreating the control, ( aka the layout of the columns is not lost ).

4.0.0.2 Mar 16, 2011
*Added: AutoArrange property specifies whether the files are automatically kept arranged in icon and small icon view.
*Added: HideFileNames property specifies whether the files hides the names in icon and small icon view.
*Added: AlignToGrid property Specifies whether in icon view, icons automatically snap into a grid.
*Fixed: Double clicking or pressing ENTER on a shell link in the control fails ( A shell link is a shortcut file ).

4.0.0.1 Feb 16, 2011
*NEW:   Ability to specify the control's view mode on Extra Large, Large and Medium Icons( available on Windows Vista, Windows 7, ... )
*Added: ViewModeType.Extra_Large_Icons shows the current view using extra large icons.
*Added: ViewModeType.Large_Icons shows the current view using large icons.
*Added: ViewModeType.Medium_Icons shows the current view using medium icons.

3.0.0.8 Dec 06, 2010
*Added: CancelObjectSelect method cancels selecting the object being double clicked. For instance, you can prevent opening the zip files, when user double click or press ENTER. This method has effect during the ObjectSelect event.
*Added: Ability to explore the shortcuts/shell links within the control.
*Fixed: Focuses the /NET assembly when using the keyboard/TAB navigation
*Fixed: Prevents using the backspace to navigate up to the desktop folder

3.0.0.7 Oct 01, 2010
*Added: The Refresh method is called automatically if the ModifyFlagStyle or ViewMode method is invoked.
*Fixed: The Refresh method restores the scroll position and the selected file or folder.
*Fixed: The zip files are included in the control's list even if the control's FilePattern property is not including a *.zip file pattern ( seen as folders ).
*Fixed: All objects in the browser are being selected if calling ModifyFolderFlags NoFlag,SingleSel method to enable multiple selection

3.0.0.6 June 10, 2010
*Added: Lists all files if the IncludeObjectType property is PatternObjects and the FilePattern property is empty
*Fixed: The focused field loses the focus when updating the browser.
*Fixed: Speeds up filtering the files, when the IncludeObjectType property is PatternObjects.

3.0.0.5 Mar 08, 2010
*Added: (globbing) The filter allows using [] for group of characters. The "[CB]at" matches Cat or Bat but not cat or mat.
*Fixed: The control looks for the first match instead looking for all possibilities, if the pattern contains more than one * character (any)
*Fixed: The filter is not showing any object, if it contains more than one pattern.

3.0.0.4 Jan 22, 2010
*Added: InvokeItemMenu( ID ) event notifies your application once the user selects an item in the context menu.
*Added: The ViewMode property retrieves the mode being curently shown.
*Fixed: Removes the Scroll event definition from the /NET assembly.

3.0.0.3 Dec 08, 2009
*Added: ViewModeType.Thumbnail, ViewModeType.Tile, ViewModeType.Thumbstrip, ViewModeType.Content shows the view as thumbnail, tile, thumbstrip or content ( Windows 7, Vista )
*Fixed: The /NET Assembly does not update at runtime the properties saved in design-mode.
*Fixed: Removes the Rename menu item from the context menu, if the CanRename property is False.

3.0.0.2 Nov 2, 2009
*Added: Signing the /NET Assembly with a strong name (exontrol.exshellview, PublicKeyToken=7a5888c61958221f)
*Added: CanRename property specifies whether the user can rename a file / folder in the shell view.
*Fixed: The /NET assembly shows a black frame when the parent form changes its parent using the MDIParent property.

3.0.0.1 Oct 01, 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: 64-bit support
*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.

2.0.0.2 April 21, 2009
*Added: The BrowseFolder property may take a string that represents the path to the browsed folder, or an integer value that specifies a SpecialFolderPathConstants value.
*Fixed: The ExShellFolder object is properly built if the ShellFolder property takes a folder's ITEMIDLIST structure.
*Fixed: The ExShellFolder.Path property retrieves wrong path for the UNICODE configuration

2.1	eXShellView/NET

2.0.0.1 November 11, 2008
*Added: Compatible with the Data Execution Prevention (DEP). (SpecialBuild:10000)
*Added: UNICODE configuration
*Added: Fade effect for browsing a new date in a date type editor.
*Fixed: The excel vba fires "Run-time error '28', Out of Stack space", when running an user-form. ( IQuickActivate )
*Fixed: Memory leaks when releasing the control.

1.0.0.2 January 10, 2007
*Added: ExShellObject.InvokeCommand method invokes a specified command from the object's context menu.
*Added: ExShellObject.InvokeRename method renames the shell object.

1.0.0.1 December 08, 2006
* Initial Release