Reference Codebot.Windows.Explorer.pas
Part of the Codebot Windows Shell package
The Codebot.Windows.Explorer unit gives you controls that host the parts of Windows Explorer itself. They show the same folders, icons, columns, context menus, and previews as Windows Explorer, and they work with any shell folder, including virtual folders such as This PC, Control Panel, and the Recycle Bin.
| Control | Description |
|---|---|
| TExplorerView | Shows the items of a folder using the explorer browser, with the view modes, columns, sorting, grouping, filtering, and search of Windows Explorer. It keeps a history for GoBack and GoForward, and can copy, paste, rename, and delete the selected items. |
| TExplorerTree | Shows the folder tree of the navigation pane, optionally with checkboxes. |
| TExplorerEdit | Shows the path of a folder as an edit with autocomplete, as a breadcrumb with a menu of subfolders for each folder, or as an edit with a drop down tree. |
| TExplorerPreview | Shows a file using the preview handlers of Windows. For files without one, it shows their thumbnail and details such as their size, version, dimensions, or duration. |
| TExplorerBinding | Keeps views, trees, edits, and previews in sync. When one of them moves to a folder the others follow, and previews show the item selected in a view. |
You can give any of these controls a file system path, a shell parsing name such as ::{20D04FE0-3AEA-1069-A2D8-08002B30309D} for This PC, or a known folder such as shell:Downloads. The empty path is the desktop. A path is kept as you give it, so a view set to shell:Downloads reports shell:Downloads while it shows that folder. If you need item ID lists, ShellPathToIDList and ShellIDListToPath convert paths to them and back.
The windows Windows creates inside these controls pass their mouse and keyboard input on to the control, so the usual events such as OnMouseDown, OnKeyDown, OnContextPopup, and OnDragOver work just as you would expect. At design time those windows let the mouse pass through, so you can select the controls in the form designer.
The unit is for Windows only.
Items 325 items
| Name | Kind | Line |
|---|---|---|
| DefaultTreeOptions | constant | 60 |
| ShellIDListToPath | function | 801 |
| ShellPathToIDList | function | 798 |
| TExplorerBinding | class | 783 |
| Create | constructor | 789 |
| DoChange | procedure | 786 |
| Preview | procedure | 791 |
| TExplorerCheckEvent | procedural | 75 |
| TExplorerControl | class | 84 |
| CreateWnd | procedure | 88 |
| Destroy | destructor | 101 |
| DestroyWnd | procedure | 89 |
| HookChildWindows | procedure | 94 |
| InputMessage | function | 91 |
| ShowContextPopup | function | 97 |
| InContextMenu | property | 99 |
| TExplorerEdit | class | 513 |
| BeginEdit | procedure | 594 |
| CloseUp | procedure | 598 |
| Create | constructor | 590 |
| CreateWnd | procedure | 579 |
| Destroy | destructor | 591 |
| DropDown | procedure | 596 |
| FontChanged | procedure | 580 |
| GoUp | procedure | 600 |
| KeyDown | procedure | 581 |
| MouseDown | procedure | 582 |
| MouseLeave | procedure | 583 |
| MouseMove | procedure | 584 |
| MouseUp | procedure | 585 |
| Paint | procedure | 586 |
| Resize | procedure | 587 |
| Align | property | 626 |
| Anchors | property | 627 |
| AutoComplete | property | 607 |
| BorderSpacing | property | 628 |
| BorderStyle | property | 629 |
| Color | property | 630 |
| Constraints | property | 631 |
| DragCursor | property | 632 |
| DropDownHeight | property | 609 |
| DroppedDown | property | 602 |
| Edit | property | 604 |
| Enabled | property | 633 |
| Font | property | 634 |
| Hint | property | 635 |
| Mode | property | 611 |
| OnChange | property | 615 |
| OnChangeBounds | property | 644 |
| OnClick | property | 645 |
| OnCloseUp | property | 617 |
| OnContextPopup | property | 646 |
| OnDblClick | property | 647 |
| OnDragDrop | property | 648 |
| OnDragOver | property | 649 |
| OnDropDown | property | 619 |
| OnEnter | property | 650 |
| OnExit | property | 651 |
| OnKeyDown | property | 652 |
| OnKeyPress | property | 653 |
| OnKeyUp | property | 654 |
| OnMouseDown | property | 655 |
| OnMouseMove | property | 656 |
| OnMouseUp | property | 657 |
| OnMouseWheel | property | 658 |
| OnMouseWheelDown | property | 659 |
| OnMouseWheelUp | property | 660 |
| OnNavigate | property | 622 |
| OnNavigationFailed | property | 625 |
| OnResize | property | 661 |
| OnShowHint | property | 662 |
| OnUTF8KeyPress | property | 663 |
| ParentColor | property | 636 |
| ParentFont | property | 637 |
| ParentShowHint | property | 638 |
| Path | property | 613 |
| PopupMenu | property | 639 |
| ShowHint | property | 640 |
| TabOrder | property | 641 |
| TabStop | property | 642 |
| Visible | property | 643 |
| TExplorerEditMode | enum | 57 |
| emEdit | enum value | 57 |
| emBreadcrumb | enum value | 57 |
| emDropDown | enum value | 57 |
| TExplorerFolderEvent | procedural | 71 |
| TExplorerPathEvent | procedural | 66 |
| TExplorerPreview | class | 678 |
| Clear | procedure | 728 |
| Create | constructor | 725 |
| CreateWnd | procedure | 719 |
| Destroy | destructor | 726 |
| DestroyWnd | procedure | 720 |
| Paint | procedure | 721 |
| Refresh | procedure | 730 |
| Resize | procedure | 722 |
| Align | property | 746 |
| Anchors | property | 747 |
| BorderSpacing | property | 748 |
| BorderStyle | property | 749 |
| Color | property | 750 |
| Constraints | property | 751 |
| DragCursor | property | 752 |
| EmptyText | property | 737 |
| Enabled | property | 753 |
| FileName | property | 740 |
| Font | property | 754 |
| Handler | property | 732 |
| Hint | property | 755 |
| OnChangeBounds | property | 764 |
| OnClick | property | 765 |
| OnContextPopup | property | 766 |
| OnDblClick | property | 767 |
| OnDragDrop | property | 768 |
| OnDragOver | property | 769 |
| OnEnter | property | 770 |
| OnExit | property | 771 |
| OnMouseDown | property | 772 |
| OnMouseMove | property | 773 |
| OnMouseUp | property | 774 |
| OnPreview | property | 742 |
| OnPreviewFailed | property | 745 |
| OnResize | property | 775 |
| OnShowHint | property | 776 |
| ParentColor | property | 756 |
| ParentFont | property | 757 |
| ParentShowHint | property | 758 |
| PopupMenu | property | 759 |
| Previewing | property | 734 |
| ShowHint | property | 760 |
| TabOrder | property | 761 |
| TabStop | property | 762 |
| Visible | property | 763 |
| TExplorerTree | class | 359 |
| CollapseAll | procedure | 431 |
| Create | constructor | 428 |
| CreateWnd | procedure | 423 |
| Destroy | destructor | 429 |
| DestroyWnd | procedure | 424 |
| EnsureVisible | procedure | 433 |
| GetCheckedItems | procedure | 435 |
| ItemAtPos | function | 438 |
| Refresh | procedure | 440 |
| Resize | procedure | 425 |
| Align | property | 470 |
| Anchors | property | 471 |
| BorderSpacing | property | 472 |
| BorderStyle | property | 473 |
| Checked | property | 442 |
| Constraints | property | 474 |
| Control | property | 444 |
| DragCursor | property | 475 |
| Enabled | property | 476 |
| Expanded | property | 446 |
| Hint | property | 477 |
| OnChange | property | 461 |
| OnChangeBounds | property | 484 |
| OnCheck | property | 463 |
| OnClick | property | 485 |
| OnContextPopup | property | 486 |
| OnDblClick | property | 487 |
| OnDragDrop | property | 488 |
| OnDragOver | property | 489 |
| OnEnter | property | 490 |
| OnExit | property | 491 |
| OnExpanded | property | 465 |
| OnExpanding | property | 467 |
| OnIncludeItem | property | 469 |
| OnKeyDown | property | 492 |
| OnKeyPress | property | 493 |
| OnKeyUp | property | 494 |
| OnMouseDown | property | 495 |
| OnMouseMove | property | 496 |
| OnMouseUp | property | 497 |
| OnMouseWheel | property | 498 |
| OnMouseWheelDown | property | 499 |
| OnMouseWheelUp | property | 500 |
| OnResize | property | 501 |
| OnShowHint | property | 502 |
| OnUTF8KeyPress | property | 503 |
| Options | property | 451 |
| ParentShowHint | property | 478 |
| Path | property | 448 |
| PopupMenu | property | 479 |
| Root | property | 454 |
| Roots | property | 457 |
| ShowFiles | property | 459 |
| ShowHint | property | 480 |
| TabOrder | property | 481 |
| TabStop | property | 482 |
| Visible | property | 483 |
| TExplorerTreeOption | enum | 48 |
| toHasLines | enum value | 48 |
| toSingleClickExpand | enum value | 48 |
| toSpringExpand | enum value | 48 |
| toFullRowSelect | enum value | 49 |
| toShowSelectionAlways | enum value | 49 |
| toHorizontalScroll | enum value | 49 |
| toAutoHorizontalScroll | enum value | 50 |
| toFadeExpandos | enum value | 50 |
| toEvenHeight | enum value | 50 |
| toNoInfoTips | enum value | 50 |
| toNoEditLabels | enum value | 51 |
| toNoDragDrop | enum value | 51 |
| toFavoritesMode | enum value | 51 |
| toCheckBoxes | enum value | 51 |
| TExplorerTreeOptions | set | 53 |
| TExplorerView | class | 108 |
| ClearHistory | procedure | 215 |
| ClearSelection | procedure | 242 |
| Copy | procedure | 226 |
| Create | constructor | 206 |
| CreateWnd | procedure | 201 |
| Cut | procedure | 228 |
| Delete | procedure | 232 |
| Destroy | destructor | 207 |
| DestroyWnd | procedure | 202 |
| ExecuteVerb | procedure | 222 |
| GetItems | procedure | 245 |
| GoBack | procedure | 209 |
| GoForward | procedure | 211 |
| GoToHistory | procedure | 213 |
| GoUp | procedure | 217 |
| NewFolder | procedure | 236 |
| Paste | procedure | 230 |
| Properties | procedure | 234 |
| Refresh | procedure | 219 |
| Rename | procedure | 224 |
| Resize | procedure | 203 |
| Search | procedure | 251 |
| Select | procedure | 238 |
| SelectAll | procedure | 240 |
| Align | property | 320 |
| Anchors | property | 321 |
| BorderSpacing | property | 322 |
| BorderStyle | property | 323 |
| Browser | property | 253 |
| CanGoBack | property | 255 |
| CanGoForward | property | 257 |
| Columns | property | 280 |
| Constraints | property | 324 |
| DragCursor | property | 325 |
| EmptyText | property | 282 |
| Enabled | property | 326 |
| Filter | property | 285 |
| FocusedItem | property | 269 |
| GroupBy | property | 288 |
| Hint | property | 327 |
| History | property | 259 |
| HistoryCount | property | 261 |
| HistoryIndex | property | 263 |
| IconSize | property | 290 |
| ItemCount | property | 271 |
| OnChangeBounds | property | 334 |
| OnClick | property | 335 |
| OnContextMenuClose | property | 304 |
| OnContextMenuOpen | property | 306 |
| OnContextPopup | property | 336 |
| OnDblClick | property | 337 |
| OnDefaultAction | property | 308 |
| OnDragDrop | property | 338 |
| OnDragOver | property | 339 |
| OnEnter | property | 340 |
| OnExit | property | 341 |
| OnIncludeItem | property | 311 |
| OnKeyDown | property | 342 |
| OnKeyPress | property | 343 |
| OnKeyUp | property | 344 |
| OnMouseDown | property | 345 |
| OnMouseMove | property | 346 |
| OnMouseUp | property | 347 |
| OnMouseWheel | property | 348 |
| OnMouseWheelDown | property | 349 |
| OnMouseWheelUp | property | 350 |
| OnNavigate | property | 313 |
| OnNavigated | property | 315 |
| OnNavigationFailed | property | 317 |
| OnResize | property | 351 |
| OnSelectionChanged | property | 319 |
| OnShowHint | property | 352 |
| OnUTF8KeyPress | property | 353 |
| Options | property | 292 |
| ParentShowHint | property | 328 |
| Path | property | 294 |
| PopupMenu | property | 329 |
| Searching | property | 265 |
| SearchText | property | 267 |
| SelectedCount | property | 273 |
| ShellView | property | 275 |
| ShowHidden | property | 296 |
| ShowHint | property | 330 |
| SortColumn | property | 299 |
| SortDescending | property | 301 |
| TabOrder | property | 331 |
| TabStop | property | 332 |
| ViewMode | property | 302 |
| Visible | property | 333 |
| TExplorerViewMode | enum | 33 |
| evIcon | enum value | 33 |
| evSmallIcon | enum value | 33 |
| evList | enum value | 33 |
| evDetails | enum value | 33 |
| evThumbnail | enum value | 33 |
| evTile | enum value | 34 |
| evThumbstrip | enum value | 34 |
| TExplorerViewOption | enum | 38 |
| voAutoArrange | enum value | 38 |
| voSnapToGrid | enum value | 38 |
| voSingleSelect | enum value | 38 |
| voNoSubfolders | enum value | 39 |
| voShowSelectionAlways | enum value | 39 |
| voSingleClickActivate | enum value | 39 |
| voHideFileNames | enum value | 40 |
| voCheckBoxes | enum value | 40 |
| voAutoCheckSelect | enum value | 40 |
| voTriCheckSelect | enum value | 40 |
| voFullRowSelect | enum value | 41 |
| voNoGrouping | enum value | 41 |
| voNoFilters | enum value | 41 |
| voNoColumnHeader | enum value | 41 |
| voNoHeaderInAllViews | enum value | 42 |
| voExtendedTiles | enum value | 42 |
| TExplorerViewOptions | set | 44 |
| WM_EXPLORERCHECK | constant | 26 |
| WM_EXPLORERCLOSEUP | constant | 28 |