================================================================================
Version 2.1
================================================================================

Solved bugs

SelectFolder method of TOrtusShellTreeView only works when RootFolder property is sfDesktop.
OLE Drag & Drop: dropping data from other applications is not accepted by TOrtusShellTreeView and TOrtusShellListView.
OLE Drag & Drop: dropping Outlook2000 messages in TOrtusShellListView raises an exception.
Multi-threading problem in TOrtusShellTrayIcon: animation stops during execution of Synchronize method.
Shortcut keys in TOrtusShellListView do not work on multi-selected items.


New types

TOrtusShellNavigateFolderEvent= procedure(Sender: TObject; const Folder: string; var Accept: Boolean) of object;


TOrtusShellTreeView

new properties

AutoDefaultCommand: Boolean;
ShowHiddenAsTransparent: Boolean;


TOrtusShellListView

new properties

AutoDefaultCommand: Boolean;
AutoNavigate: Boolean;
ShowHiddenAsTransparent: Boolean;

new events

OnAfterPopluate: TNotifyEvent;
OnBeforePopluate: TNotifyEvent;
OnNavigateFolder: TOrtusShellNavigateFolderEvent;


================================================================================
Version 2.0
================================================================================

Solved bugs

Listview does not show contents at design time.


General changes

Combined units OrtusShellConstants, OrtusShellTypes and OrtusShellFunctions into one unit OrtusShellGlobal.
Combined units OrtusShellComboBox, OrtusShellTreeView and OrtusShellListView into one unit OrtusShellExplorer.


New types

TOrtusShellItemType= (itFolders, itNonFolders, itIncludeHidden);
TOrtusShellItemTypes= set of TOrtusShellItemType;
TOrtusShellOleDragEffect= (deCopy, deMove, deLink);
TOrtusShellOleDragEffects= set of TOrtusShellOleDragEffect;
TOrtusShellOleDropEffect= (deDefault, deCopyOnly, deMoveOnly, deLinkOnly);
TOrtusShellOleDropResult= (drNone, drCopy, drMove, drLink);

TOrtusShellContextMenuCommandEvent= procedure(Sender: TObject; Items: TOrtusShellItems; const Command: string; var Accept: Boolean) of object;
TOrtusShellContextMenuPopupEvent= procedure(Sender: TObject; Items: TOrtusShellItems; var Accept: Boolean) of object;
TOrtusShellSelectionChangedEvent= procedure(Sender: TObject) of object;
TOrtusShellDriveAddedEvent= procedure(Sender: TObject; const RootFolder: TOrtusShellFolder) of object;
TOrtusShellDriveRemovedEvent= procedure(Sender: TObject; const RootFolder: TOrtusShellFolder) of object;
TOrtusShellMediaInsertedEvent= procedure(Sender: TObject; const RootFolder: TOrtusShellFolder) of object;
TOrtusShellMediaRemovedEvent= procedure(Sender: TObject; const RootFolder: TOrtusShellFolder) of object;


New classes

TOrtusShellItem
TOrtusShellItems
TOrtusShellOleDragDropInfo


TOrtusShellComboBox

new properties

SelectedItems: TOrtusShellItems;

new events

OnSelectionChanged: TOrtusShellSelectionChangedEvent;


TOrtusShellTreeView

removed or changed properties

AutoPropertiesDialog: Boolean;
AutoRefresh: Boolean;
DragEnabled: Boolean;
DropEnabled: Boolean;
DragEffect: TOrtusShellDragEffects;
DropEffect: TOrtusShellDropEffect;
ListView: TOrtusShellListView;
ObjectTypes: TOrtusShellObjectTypes;
Root: TOrtusRootFolder;

new properties

AutoExpandInterval: Integer;
AutoKeyboardShortcuts: Boolean;
AutoRefreshContents: Boolean;
AutoScrollInterval: Integer;
BorlandDragDropBehavior: Boolean;
ComboBox: TCustomOrtusShellComboBox;
ItemTypes: TOrtusShellItemTypes;
ListView: TCustomOrtusShellListView;
OleDragEffects: TOrtusShellOleDragEffects;
OleDragEnabled: Boolean;
OleDropEffect: TOrtusShellOleDropEffect;
OleDropEnabled: Boolean;
RootFolder: TOrtusShellFolder;
SelectedItems: TOrtusShellItems;

removed or changed methods

procedure SelectFolder(const Folder: string);

new methods

function CreateNewFolder(const Folder: string): Boolean;
procedure SelectFolder(const Folder: TOrtusShellFolder);
procedure RefreshContents;

removed or changed events

OnSelectItem: TOrtusShellTreeViewSelectItemEvent;
OnDragDropItems: TOrtusShellTreeViewDragDropItemsEvent;

new events

OnContextMenuCommand: TOrtusShellContextMenuCommandEvent;
OnContextMenuPopup: TOrtusShellContextMenuPopupEvent;
OnDriveAdded: TOrtusShellDriveAddedEvent;
OnDriveRemoved: TOrtusShellDriveRemovedEvent;
OnMediaInserted: TOrtusShellMediaInsertedEvent;
OnMediaRemoved: TOrtusShellMediaRemovedEvent;
OnSelectionChanged: TOrtusShellSelectionChangedEvent;

existing events used for OLE Drag & Drop feedback

OnDragDrop
OnDragOver
OnEndDrag
OnStartDrag


TOrtusShellListView

removed or changed properties

AutoPropertiesDialog: Boolean;
AutoRefresh: Boolean;
DragEnabled: Boolean;
DropEnabled: Boolean;
DragEffect: TOrtusShellDragEffects;
DropEffect: TOrtusShellDropEffect;
ObjectTypes: TOrtusShellObjectTypes;
Root: TOrtusRootFolder;

new properties

AutoKeyboardShortcuts: Boolean;
AutoRefreshContents: Boolean;
AutoScrollInterval: Integer;
BorlandDragDropBehavior: Boolean;
ItemTypes: TOrtusShellItemTypes;
OleDragEffects: TOrtusShellOleDragEffects;
OleDragEnabled: Boolean;
OleDropEffect: TOrtusShellOleDropEffect;
OleDropEnabled: Boolean;
RootFolder: TOrtusShellFolder;
SelectedItems: TOrtusShellItems;
TreeView: TCustomOrtusShellTreeView;

new methods

function CreateNewFolder(const Folder: string): Boolean;
procedure RefreshContents;
procedure UpFolder;

removed or changed events

OnDragDropItems: TOrtusShellListViewDragDropItemsEvent;

new events

OnContextMenuCommand: TOrtusShellContextMenuCommandEvent;
OnContextMenuPopup: TOrtusShellContextMenuPopupEvent;
OnSelectionChanged: TOrtusShellSelectionChangedEvent;

existing events used for OLE Drag & Drop feedback

OnDragDrop
OnDragOver
OnEndDrag
OnStartDrag


TOrtusShellChangeNotifier

new properties

Folders: TOrtusShellChangeNotifierFolders;


================================================================================
Version 1.0
================================================================================

Initial release
