TCustomShellListView class
The base class that defines a list view control to display files or directories found on the local file system.
Declaration
TCustomShellListView = class(TCustomListView)Inheritance
- TCustomShellListView
- TCustomListView
- TWinControl
- TControl
- TLCLComponent
- TComponent
- TPersistent
- TObject
Descends from it: TShellListView
Description
TCustomShellListView is a
TCustomListView descendant
which defines a list view control for file system objects on the local file
system.
TCustomShellListView extends the ancestor class with
properties, methods, and events needed to access and maintain the items
displayed on the list view control.
Use ViewStyle to control the layout used on the list view control.
The default setting is vsReport.
Use ObjectTypes to specify which file system entries are visible on
the control. The default setting [otNonFolders] causes only files
to be displayed. [otFolders, otNonFolders, otHidden] causes all
directories and files to be displayed (including hidden files or folders).
Use Columns to specify which file system information is displayed
on the list view control. By default, columns are created for file or
directory name, file size, and file type information. Additional columns can
be added to display attributes or permissions for the file system objects, or
their last modification date/time stamp. A custom column type is available
where the column content is provided by the OnGetCellText event
handler in the control.
Use Root to specify the initial directory displayed on the list
view control. Or, use the ShellTreeView property to associate a
tree view control which can be used to navigate the directory structure on the
file system and to provide the current directory visible on the list view
control.
Use Mask to specify which files or folders are displayed on the
control. Use MaskCaseSensitivity to control whether the file masks
case sensitive.
Use Items to access the list of TFileItem instances
displayed on the control.
Use the event handlers like OnAddItem and OnFileAdded to
examine or validate file system objects before and after they are added to
the Items collection.
Use FileSortType, SortType, and SortColumn to
control sorting of the visible objects on the control. Use
OnSortCompare to implement a user-specified sort order.
Use Selected, LastSelected, and MultiSelect
to access the selected items on the control. Use RowSelect to
control whether the entire row is selected or only the affected cell is
selected on the control.
Applications should not create instance of TCustomShellListView;
use the TShellListView descendant which sets the scope for members
in the class. See TListView for more information about methods,
properties, and events introduced in the ancestor class.
See also
- Mask
- MaskCaseSensitivity
- ObjectTypes
- Root
- ShellTreeView
- Items
- GetPathFromItem
- OnAddItem
- OnFileAdded
- TCustomListView
- TListView
Properties
AutoSizeColumns | public | Indicates if columns in the control are automatically resized to fill the client display area. |
Mask | public | File mask used to select items displayed in the shell control. |
MaskCaseSensitivity | public | Case Sensitivity option enabled for file masks in the shell control. |
ObjectTypes | public | Controls which file system objects are visible on the list view control. |
FileSortType | public | Controls the sort order for object types displayed on the control. |
Root | public | Indicates the initial directory path whose objects are displayed in the control. |
ShellTreeView | public | Used to connect the ShellListView to a ShellTreeView. |
UseBuiltInIcons | public | Indicates if icons provided by the OS or platform are used for items in the list. |
Items | public | Provides access to the list of items visible on the list view control. |
Methods
WSRegisterClass | protected | Registers an association between the class type and its widgetset class. |
CreateHandle | protected | Creates the handle for the control and populates the Items property. |
CreateListColumns | protected | Creates the collection used in the Columns property in the shell control. |
CreateListItem | protected | Create a new entry added to the Items for the shell control. |
PopulateWithRoot | protected | Fills the list view with file system information for the directory in Root. |
DoOnResize | protected | Adjusts column widths when the control is resized. |
GetCellText | protected | |
InitColumns | protected | |
Loaded | protected | Performs actions when LCL component streaming is completed for the component. |
SetAutoSizeColumns | protected | Sets the value for the AutoSizeColumns property. |
DoAddItem | protected | Signals the OnAddItem event handler when an entry is added to the Items in the control. |
GetBuiltinImageIndex | protected | Gets the index position for the built-in icon used for the specified path or file name. |
GetListColumnClass | protected | |
Create | public | Constructor for the class instance. |
Destroy | public | Destructor for the class instance. |
AdjustColWidths | public | Adjusts the width of columns in the list view according to the overall width for the control. |
FindColumn | public | |
FindAndSelectItem | public | |
GetPathFromItem | public | Gets the path on the local file system for the specified item. |
Sort | public | Sorts the values in Items using the SortType, SortColumn, and SortDirection for the control. |
UpdateColumn | public | |
UpdateView | public | Reloads the contents for the list view control and restores the Selected item. |
Events
OnFileAdded | protected | Event handler signalled when a file is added to the Items in the control. |
OnAddItem | public | Event handler signalled to determine if the specified file information can be added to the Items for the list view. |
OnGetCellText | public | |
OnSortCompare | public | Event handler signalled to perform a custom sort for the ObjectTypes in Items. |
Fields
FSizeFunc | protected |
Inherited
From TCustomListView (132)
AddItem AllocBy AlphaSort AutoSort AutoSortIndicator AutoWidthLastColumn BeginAutoDrag BeginUpdate BorderStyle BoundingRect CanChange CanEdit Canvas Change Checkboxes Clear ClearSelection ColClick Column ColumnClick ColumnCount Columns CreateListItems CustomDraw CustomDrawItem CustomDrawSubItem CustomSort DblClick DefaultItemHeight Delete DestroyWnd DoAutoAdjustLayout DoDeletion DoEndEdit DoGetOwnerData DoInsert DoItemChecked DoOwnerDataFind DoOwnerDataHint DoOwnerDataStateChange DoSelectItem DoSetBounds DrawItem DropTarget Edit EndUpdate FastClear FinalizeWnd FindCaption FindData FlatScrollBars FullDrag GetControlClassDefaultSize GetFirstSelected GetHitTestInfoAt GetItemAt GetNearestItem GetNextItem GetNextSelected GetUpdateCount GridLines HideSelection HotTrack HotTrackStyles HoverTime IconOptions ImageChanged InitializeWnd InitMultiSelList InsertItem IntfCustomDraw IsCustomDrawn IsEditing ItemDeleted ItemFocused ItemIndex ItemInserted KeyDown LargeImages LargeImagesWidth LastSelected MultiSelect Notification OnAdvancedCustomDraw OnAdvancedCustomDrawItem OnAdvancedCustomDrawSubItem OnChange OnChanging OnColumnClick OnCompare OnCreateItemClass OnCustomDraw OnCustomDrawItem OnCustomDrawSubItem OnData OnDataFind OnDataHint OnDataStateChange OnDeletion OnDrawItem OnEdited OnEditing OnInsert OnItemChecked OnSelectItem OwnerData OwnerDraw ReadOnly Repaint RowSelect ScrollBars SelCount SelectAll Selected ShowColumnHeaders ShowWorkAreas SmallImages SmallImagesWidth SortColumn SortDirection SortType SortWithParams StateImages StateImagesWidth TabStop ToolTips TopItem Update UpdateMultiSelList ViewOrigin ViewStyle VisibleRowCount
From TWinControl (232)
AddControl AdjustClientRect AlignControls AllAutoSized AutoAdjustLayout AutoSizeDelayed AutoSizeDelayedHandle AutoSizeDelayedReport AutoSizePhases BeginUpdateBounds BorderWidth BoundsLockCount BroadCast Brush BrushCreated CachedClientHeight CachedClientWidth CalculatePreferredSize CanFocus CanSetFocus CanTab ChangeScale ChildClassAllowed ChildHandlesCreated ChildKey ChildSizing ClientRectNeedsInterfaceUpdate CMBiDiModeChanged CMBorderChanged CMDoubleBufferedChanged CMEnabledChanged CMEnter CMExit CMParentDoubleBufferedChanged CMShowHintChanged CMShowingChanged CMVisibleChanged CNChar CNKeyDown CNKeyUp CNSysKeyDown CNSysKeyUp ContainsControl ControlAtPos ControlCount ControlKeyDown ControlKeyUp Controls ControlsAligned CreateBrush CreateDockManager CreateParams CreateParented CreateParentedControl CreateSubClass CreateWnd CustomAlignInsertBefore CustomAlignPosition DefaultHandler DefWndProc DesignerDeleting DestroyHandle DialogChar DisableAlign DoAddDockClient DoAdjustClientRectChange DoAlignChildControls DoAllAutoSize DoAutoSize DoChildSizingChange DockClientCount DockClients DockDrop DockManager DockOver DockSite DoConstraintsChange DoDockClientMsg DoDockOver DoDragMsg DoEnter DoExit DoFlipChildren DoFloatMsg DoGetDockCaption DoKeyDownBeforeInterface DoKeyPress DoKeyUpBeforeInterface DoRemainingKeyDown DoRemainingKeyUp DoRemoveDockClient DoSendBoundsToInterface DoSendShowHideToInterface DoubleBuffered DoUnDock DoUndockClientMsg DoUTF8KeyPress EnableAlign EndUpdateBounds EraseBackground FindChildControl FindNextControl FixDesignFontsPPIWithChildren FixupTabList FlipChildren Focused FontChanged FormEndUpdated GetAdjustedLogicalClientRect GetBorderStyle GetChildren GetChildrenRect GetClientOrigin GetClientRect GetControlIndex GetControlOrigin GetDeviceContext GetDockCaption GetEnumeratorControls GetEnumeratorControlsReverse GetMouseCapture GetParentHandle GetPreferredSizeClientFrame GetSiteInfo GetTabOrderList GetTextLen GetTopParentHandle Handle HandleAllocated HandleNeeded InsertControl IntfGetDropFilesTarget IntfUTF8KeyPress Invalidate InvalidateBoundsRealized InvalidateClientRectCache InvalidatePreferredChildSizes IsClientHeightStored IsClientWidthStored IsControlMouseMsg IsFlipped IsResizing IsSpecialSubControl KeyDownAfterInterface KeyDownBeforeInterface KeyPress KeyUp KeyUpAfterInterface KeyUpBeforeInterface LockRealizeBounds MainWndProc NotifyControls OnAlignInsertBefore OnAlignPosition OnDockDrop OnDockOver OnEnter OnExit OnGetDockCaption OnGetSiteInfo OnKeyDown OnKeyPress OnKeyUp OnUnDock OnUTF8KeyPress PaintControls PaintHandler PaintTo PaintWindow ParentDoubleBuffered ParentFormHandleInitialized ParentHandlesAllocated ParentWindow PerformTab RealGetText ReAlign RealizeBounds RealizeBoundsRecursive RealSetText ReloadDockedControl RemoveControl RemoveFocus ScaleBy ScaleControls ScrollBy ScrollBy_WS SelectFirst SelectNext SendDialogChar SendMoveSizeMessages SetBorderStyle SetBounds SetChildZPosition SetColor SetControlIndex SetDockManager SetFocus SetShape SetTempCursor ShowControl Showing TabOrder UnlockRealizeBounds UpdateControlState UpdateDockCaption UpdateShowing UseDockManager UTF8KeyPress VisibleDockClientCount WindowHandle WMChar WMContextMenu WMDestroy WMEnter WMEraseBkgnd WMExit WMKeyDown WMKeyUp WMKillFocus WMMove WMNotify WMPaint WMSetFocus WMShowWindow WMSize WMSysChar WMSysKeyDown WMSysKeyUp WMWindowPosChanged WndProc WriteLayoutDebugReport WSSetText
From TControl (361)
AccessibleDescription AccessibleName AccessibleRole AccessibleValue Action ActionChange ActionLink ActiveDefaultControlChanged AddHandler AddHandlerOnBeforeDestruction AddHandlerOnChangeBounds AddHandlerOnEnabledChanged AddHandlerOnEnabledChanging AddHandlerOnKeyDown AddHandlerOnMouseWheel AddHandlerOnResize AddHandlerOnVisibleChanged AddHandlerOnVisibleChanging AdjustSize Align AnchorAsAlign AnchorClient AnchoredControlCount AnchoredControls AnchorHorizontalCenterTo AnchorParallel Anchors AnchorSame AnchorSide AnchorSideBottom AnchorSideChanged AnchorSideLeft AnchorSideRight AnchorSideTop AnchorToCompanion AnchorToNeighbour AnchorVerticalCenterTo AssignTo AutoSize AutoSizing AutoSizingAll AutoSizingLockCount BaseBounds BaseParentClientSize BeforeDestruction BeforeDragStart BeginAutoSizing BeginDrag BiDiMode BorderSpacing BoundsChanged BoundsRect BoundsRectForNewParent BringToFront CalculateDockSizes CanAutoSize Caption CaptureChanged CaptureMouseButtons ChangeBounds Changed CheckChildClassAllowed CheckNewParent CheckOnChangeBounds Click ClientHeight ClientOrigin ClientRect ClientToParent ClientToScreen ClientWidth CMChanged CMCursorChanged CMHintShow CMHitTest CMMouseEnter CMMouseLeave CMParentBiDiModeChanged CMParentColorChanged CMParentFontChanged CMParentShowHintChanged CMSysFontChanged CMTextChanged CNPreferredSizeChanged Color ColorIsStored ConstrainedResize Constraints ControlFontClass ControlOrigin ControlState ControlStyle ControlToScreen CreateAccessibleObject CreateControlBorderSpacing CreateFloatingDockSite Cursor DefineProperties DesktopFont DisableAutoSizing DoBorderSpacingChange DoCallKeyEventHandler DoCallMouseWheelEventHandler DoCallNotifyHandler Dock Docked DockOrientation DockTrackNoTarget DoContextPopup DoDock DoEndDock DoEndDrag DoFixDesignFontPPI DoMouseDown DoMouseUp DoMouseWheel DoMouseWheelDown DoMouseWheelHorz DoMouseWheelLeft DoMouseWheelRight DoMouseWheelUp DoOnChangeBounds DoOnParentHandleDestruction DoOnShowHint DoScaleFontPPI DoStartDock DoStartDrag DragCanceled DragCursor DragDrop Dragging DragKind DragMode DragOver EditingDone EnableAutoSizing Enabled EnabledChanged EnabledChanging EndAutoSizing EndDrag ExecuteCancelAction ExecuteDefaultAction FindSubComponent FixDesignFontsPPI Floating FloatingDockSiteClass Font ForeignAnchorSideChanged FormIsUpdating GetAccessibleObject GetAction GetActionLinkClass GetAnchorsDependingOnParent GetCachedText GetCanvasScaleFactor GetChildAccessibleObjectAtPos GetClientScrollOffset GetColorResolvingParent GetCursor GetDefaultColor GetDefaultDockCaption GetDefaultHeight GetDefaultWidth GetDockEdge GetDragImages GetEnabled GetFloating GetFloatingDockSiteClass GetLogicalClientRect GetMousePosFromMessage GetPalette GetParentBackground GetParentComponent GetPopupMenu GetPreferredSize GetRGBColorResolvingParent GetScrolledClientRect GetSelectedChildAccessibleObject GetSidePosition GetTextBuf GetTopParent HandleObjectShouldBeVisible HasHelp HasParent Height HeightIsAnchored HelpContext HelpKeyword HelpType Hide Hint HostDockSite InitiateAction InvalidateControl InvalidatePreferredSize IsAParentAligning IsBorderSpacingInnerBorderStored IsCaptionStored IsControl IsControlVisible IsEnabled IsParentColor IsParentFont IsParentOf IsProcessingPaintMsg IsRightToLeft IsVisible Left LMCaptureChanged LoadedAll LRDockWidth ManualDock ManualFloat MouseCapture MouseDown MouseEnter MouseInClient MouseLeave MouseMove MouseUp OnChangeBounds OnClick OnConstrainedResize OnContextPopup OnDblClick OnDragDrop OnDragOver OnEditingDone OnEndDock OnEndDrag OnMouseDown OnMouseEnter OnMouseLeave OnMouseMove OnMouseUp OnMouseWheel OnMouseWheelDown OnMouseWheelHorz OnMouseWheelLeft OnMouseWheelRight OnMouseWheelUp OnQuadClick OnResize OnShowHint OnStartDock OnStartDrag OnTripleClick Parent ParentBackground ParentBiDiMode ParentColor ParentDestroyingHandle ParentFont ParentFontChanged ParentShowHint ParentToClient Perform PopupMenu PositionDockRect QuadClick ReadBounds ReadState Refresh RemoveAllHandlersOfObject RemoveHandler RemoveHandlerOnBeforeDestruction RemoveHandlerOnChangeBounds RemoveHandlerOnEnabledChanged RemoveHandlerOnEnabledChanging RemoveHandlerOnKeyDown RemoveHandlerOnMouseWheel RemoveHandlerOnResize RemoveHandlerOnVisibleChanged RemoveHandlerOnVisibleChanging ReplaceDockedControl RequestAlign Resize Scale96ToFont Scale96ToForm Scale96ToScreen ScaleConstraints ScaleDesignToForm ScaleFontsPPI ScaleFontTo96 ScaleFontToScreen ScaleFormTo96 ScaleFormToDesign ScaleScreenTo96 ScaleScreenToFont ScreenToClient ScreenToControl SendToBack SessionProperties SetAction SetAlign SetAnchors SetAutoSize SetBiDiMode SetBoundsKeepBase SetCursor SetDragMode SetEnabled SetHint SetInitialBounds SetName SetParent SetParentBackground SetParentBiDiMode SetParentComponent SetTextBuf SetVisible SetZOrder ShouldAutoAdjust Show ShowHelp ShowHint TBDockHeight Text TextChanged Top TripleClick UndockHeight UndockWidth UpdateAnchorRules UpdateBaseBounds UpdateMouseCursor UpdateRolesForForm UseRightToLeftAlignment UseRightToLeftReading UseRightToLeftScrollBar Visible VisibleChanged VisibleChanging Width WidthIsAnchored WindowProc WMCancelMode WMLButtonDBLCLK WMLButtonDown WMLButtonQuadCLK WMLButtonTripleCLK WMLButtonUp WMMButtonDBLCLK WMMButtonDown WMMButtonQuadCLK WMMButtonTripleCLK WMMButtonUp WMMouseHWheel WMMouseMove WMMouseWheel WMRButtonDBLCLK WMRButtonDown WMRButtonQuadCLK WMRButtonTripleCLK WMRButtonUp WMXButtonDBLCLK WMXButtonDown WMXButtonQuadCLK WMXButtonTripleCLK WMXButtonUp
From TLCLComponent (6)
DecLCLRefCount GetWSComponentClass IncLCLRefCount LCLRefCount NewInstance WidgetSetClass
From TComponent (64)
_AddRef _Release CanObserve ChangeName ComObject ComponentCount ComponentIndex Components ComponentState ComponentStyle DesignInfo DestroyComponents Destroying ExecuteAction FindComponent FreeNotification FreeOnRelease GetChildOwner GetChildParent GetDeltaStreams GetEnumerator GetIDsOfNames GetNamePath GetObservers GetOwner GetTypeInfo GetTypeInfoCount iicrGetComponent InsertComponent Invoke IsImplementorOf Loading Name ObserverAdded Observers OnGetDeltaStreams Owner PaletteCreated QueryInterface ReadDeltaState ReadDeltaStream ReferenceInterface RemoveComponent RemoveFreeNotification RemoveFreeNotifications SafeCallException SetAncestor SetChildOrder SetDesigning SetDesignInstance SetInline SetSubComponent Tag ToString TToStringNameMode UpdateAction Updated UpdateRegistry Updating ValidateContainer ValidateInsert ValidateRename VCLComObject WriteState
From TPersistent (4)
Assign FPOAttachObserver FPODetachObserver FPONotifyObservers
From TObject (35)
AfterConstruction CheckDisposed ClassInfo ClassName ClassNameIs ClassParent ClassType CleanupInstance DefaultHandlerStr Dispatch DispatchStr Disposed DisposeOf Equals FieldAddress Free FreeInstance GetDisposed GetHashCode GetInterface GetInterfaceByStr GetInterfaceEntry GetInterfaceEntryByStr GetInterfaceTable GetInterfaceWeak GetLastCastErrorInfo InheritsFrom InitInstance InstanceSize MethodAddress MethodName QualifiedClassName StringMessageTable SystemHasExtendedRTTI UnitName
An experiment, built from development snapshots. Not the official Free Pascal or Lazarus documentation.
