Introduction

Features overview
Introduction
Send Feedback

Virtual Treeview is a tree view control built from ground up. More than 3 years of development made it one of the most flexible and advanced tree controls available today. Virtual Treeview starts off with the claim to improve many aspects of existing solutions and introduces some new technologies and principles which were not available before.

As the name already indicates, this control uses a different paradigm for tree management than other controls of this kind. It does not know anything about the data it manages (except its size), not even the captions of a node. Everything is retrieved from the application via events (or descendants via overridden methods).

Virtual Treeview has been carefully designed and thoroughly tested. The control proved its concept as well as everyday fitness already in many commercial products and freeware projects.

Virtual Treeview can be characterized by the following core capabilities:

  • Extremely fast and designed for high speed access.
  • Memory sparing which is the premise for speed and capacity.
  • A high capacity control.
  • Highly customizable.
  • Designed for professionals, implements a virtual paradigm with a new serialization concept.
  • Newest technologies and platforms are supported (e.g. Windows XP).
  • Unique features like Unicode, right-to-left directionality and layout, alpha blending and OLE drag'n drop and clipboard operations.

Homepage: www.soft-gems.net

E-Mail: support@soft-gems.net

Support center: support.soft-gems.net

News group: delphi-gems.support.virtualtreeview

Web based forums: support.soft-gems.net/forums

Issue Tracker: support.soft-gems.net/mantis

What do you think about this topic? Send feedback!


Features overview
Send Feedback

Virtual Treeview is "pure VCL" which means it is not based on any of the system controls but was written from scratch. As the name already indicates, this control uses a different paradigm for tree management than other controls of this kind. It does not know anything about the data it manages (except its size), not even the captions of a node. Everything is retrieved from the application via events (or descendants via overridden methods). Virtual Treeview has been carefully designed and thoroughly tested. The control proved its concept as well as everyday fitness already in many commercial products and freeware projects.The following list summarizes in categories the most important features:

General

  • Virtual Treeview is extremely fast. Adding one million nodes takes only 700 milliseconds* ! This makes it currently the fastest treeview publicly available on the Delphi/BCB market.
  • Virtual Treeview has a very small memory foot print. By only allocating about 60 bytes per node (in the string tree, the base tree uses only 56 bytes) it is well prepared to hold a million of them.
  • Virtual Treeview is optimized for high speed access. It takes as few as 0.5 seconds to traverse one million nodes* depending on needed validation and node validation states.
  • Multiselection is supported, including constrained selection so that only nodes of a certain initial level can be selected. A lot of effort has been put into the development of effective algorithms e.g. to allow for modifying an already large selection set still interactively.
  • Drawing the entire tree to a bitmap or the printer is supported by the central PaintTree method. The messages WM_PRINT and WM_PRINTCLIENT are handled correctly which allow things like drawing a tree into a bitmap (e.g. for layered windows or to implement animated drop down of controls which use VT as drop down control).
  • There is an OnHint event to display node specific hints.
  • There is an OnGetHelpContext event to retrieve node specific help context IDs. This includes automatic tree and window parent control traversal as is invoked when the user pressed F1
  • There is an OnGetPopupMenu event to retrieve node specific popup menus, includes automatic tree traversal.
  • Middle and right mouse buttons can be used in addition to the left button and support everything which is possible with the left button (dragging, selection etc.). These alternative buttons can be switched, of course.
  • A fixed background image can be used in the tree and can be given a certain offset, e.g. to simulate shared backgrounds.
  • Hot style for nodes is supported (just like links in a browser window). A special cursor can be assigned for this task.
  • String trees support so called static text which appears after a node's caption (in every column) and which can be formatted differently to the caption but cannot be edited, selected etc.
  • An auto span column mode is supported which allows a column to take up more space for its caption if there are empty columns to its right. This avoids clipping of long captions but still allows using multiple columns.
  • A node can be selected in every column (this is switchable) as well as edited, making Virtual Treeview some kind of a grid too. The tabulator key can be used to switch the focus between cells. A special option (toGridExtensions) exist to support grid specific tasks.
  • Nodes can have individual heights and the vertical alignment of a node's images and lines can be adjusted individually.
  • Virtual Treeview exposes its internal states like pending drag or edit events, multi selection or expanding in progress. Using this information an application can optimize its code execution (state updates etc.).
  • Sorting a node is supported via an application defined compare call back. Additionally, a tree can be set to auto sort.
  • Hints can contain multiple lines of text and mirror the alignment and directionality of the node or column they are displayed for. For their animation sliding and alpha blending is available.
  • Incremental search with various options and directions is available too.
  • Auto scrolling of the client area happens when the mouse is near the borders while dragging and draw selecting (multi selection).
  • Default node height and default node text for string trees can be used to avoid setting many nodes explicitly to the same start value.
Newest technologies

  • For smooth animations (e.g. hint fading) Virtual Treeview uses hand optimized MMX assembler routines. This code is also used to draw the translucent selection rectangle in multi selection mode. This is very much like what Windows 2000 and Windows XP support but works also on Windows 95/98/Me.
  • An alpha blended image of the tree window is shown while doing drag and drop. On Windows 2000 and Windows XP IDropTargetHelper and IDragSourceHelper interfaces are supported which allow for some very neat effects (as used by Explorer). On older consumer Windows versions the drag image is simulated by the tree but underlies there some minor limitations.
  • Virtual Treeview supports Windows XP themes. It acts properly on theme changes and uses for all visual elements which are themed the correct image by using native APIs. Under other Windows systems these styles are supported by separate legacy code. Theme awareness can be switched.
  • Virtual Treeview supports the 64Bit compiler of Delphi XE2
Unicode

  • TVirtualStringTree is implemented using Unicode/wide strings exclusively.
  • The tree saves and reads all Unicode properties (e.g. column captions, default node text and the like) correctly to/from DFM.
  • All Unicode drawing fully supports bidirectionality (i.e. right-to-left drawing), column alignment (left, center, right) and correctly aligned hints. Of course also this feature is available on Windows 95/98/Me.
  • On Windows NT/2000/XP multiline captions are fully supported (on Win9x/Me there is limited support).
  • In order to have also Unicode editing capabilities Virtual Treeview supports the TNT controls written by Troy Wolbrink. This support can be enabled via a compiler switch named TntSupport. You must download and install the TNT package first, however.
Drag'n drop and clipboard support

  • OLE drag and drop and OLE clipboard transfers are supported with the tree as source and target. Alternatively, VCL drag'n drop can still be used for compatibility.

These formats are support by the standard implementation:

  • Native serialized format (CF_VIRTUALTREE and CF_VTREFERENCE), which is a compact form to exchange data between Virtual Treeviews (also between applications). Two storage formats are available: HGlobal and IStream.
  • Plain ANSI text string format.
  • Plain Unicode text string format.
  • Rich Text (RTF) string format (with Unicode text).
  • HTML text string format (UTF-8). This is the preferred clipboard format for Word 2000 etc. and allows copy and paste tree content to a word document with nearly no application code.

There is a registration scheme which allows descendants to specify and implement their own clipboard formats. Via a drop handler the application can accept any OLE format without deriving an own tree class. In order to aid processing of the native tree data specialized methods are implemented. See also: ProcessOLEData and ProcessDrop.Dropmarks show during drag'n drop where data will be inserted. This works also with VCL drag'n drop. The drop target model has been extended to allow drop actions above, below or on a node. Meanwhile vendors of other treeview controls have started using this little but powerfull idea too.Auto expand of nodes which are the drop target for more than an adjustable time interval is performed if enabled.

Header and columns

  • Multiple columns are supported by an own header implementation. This header takes up space in the non-client area of the tree control and supports various buttons styles (standard listview thick buttons, flat buttons, plates, Windows XP style and owner draw).
  • Columns can appear in every order in the tree window.
  • Each column can be hidden including the main column which holds the actual tree.
  • Each column can become the main column.
  • Columns can be shown also without the header.
  • Columns can have various options (visible, clickable, resizable, draggable etc.).
  • You can set individual alignments for each column as well as right-to-left or left-to-right directionality (again: available also on non-middle-east and older Windows consumer systems).
  • Each column can have an own color.
  • The header as well as the columns collection class and the actual column classes support streaming. This is independant from the treeview streaming.
  • Each column can individually be customized by the application. An advance custom draw handling is implemented, which allows for very sophisticated effects, including animations.
Check support

  • Each node in the tree can have its own check type. This can either be check box (also tristate), radio button or node button. These types can freely be mixed so you can for instance have a node with 10 nodes of which 5 comprise a radio group (where only one of these 5 nodes can be checked) and the other 5 nodes can have a check box (or no check type at all).
  • Mixed (tri-state) check boxes with proper handling for partial checking of child nodes are supported (as often used in install and backup programs).
  • Automatic state change propagation for mixed check button type is possible (if enabled).
  • Check events OnChecking and OnCheck events are supplied too.
  • For special purposes a small flat button can be used, which is called a node button.
  • 7 different kinds of check images are possible. Dark and light check marks, dark and light tick marks, flat check images, Windows XP style check images and application defined check images. For an overview see property CheckImageKind.
Design time

  • Virtual Treeview's properties and methods are registered with Delphi categories (Delphi 5 and BCB 5 or higher).
  • A special property editor for the clipboard formats is included which allows a simple format choice. This is particularly important since the available clipboard formats must be given as strings and it is also quite handy to have a list of available formats, even if they are not enabled yet (to know what can be enabled).
Customization

  • Custom draw and paint cycles are supported via paint events (for the entire tree and for each node)
  • Apart from the built-in check types a user defined check image can be used which is supported by a separate image list.
  • Each button in the header can be drawn individually.
  • Three different lines styles are available: dotted lines, solid lines and application defined lines.
  • Applications and descendants can provide their own node editor (which has not necessarily to be a single control) by handling the OnCreateEditor event or overriding DoCreateEditor. This allows to completely replace node editing by own (business) rules.

*

  • Applications and descendants can provide their own drag manager interface by handling the
  • OnCreateDragManager event or overriding DoCreateDragManager. This allows to customize the entire OLE drag handling of the
  • tree. Note: VCL drag'n drop is managed by the VCL so this cannot be customized.
  • Applications and descendants can provide their own data object interface by handling the OnCreateDataObject event or overriding DoCreateDataObject. This allows to provide own clipboard formats.
  • There is registration function (RegisterVTClipboardFormat) which allows to register tree descendants with own clipboard and/or storage formats. Applications get provide own clipboard formats (without deriving new tree classes) by handling the GetUserClipboardFormats event.
  • Applications and descendants can completely modify the tree's key handling by handling the OnKeyAction event or overriding DoKeyAction. This works also for incremental search.
  • Applications and descendants can customize the tree's background which is not covered by nodes by handling the OnPaintBackground event or overriding DoPaintBackground. For nodes there are further events for customization.
  • Applications and descendants can customize how the string tree shortens too long captions by handling the OnShortenString event or overriding DoShortenString.
Scrolling

  • Flat scroll bars are supported. But since they conflict with Windows XP this support is switched off by a compiler symbol (UseFlatScrollbars). Enable this symbol if you really want to use flat scroll bars before compiling the tree unit.
  • Every scroll operation triggers an OnScroll event. This allows to synchronize trees with other controls.
  • There are properties (e.g. OffsetXY) which allow to scroll the tree content to any postion in code without sending messages around.
Streaming

  • Sophisticated tree content serialization has been implemented to allow saving and restoring a tree to/from streams. This includes also user data as long as it can be written to a stream.
  • Virtual Treeview allows also to add data from stream instead replacing the entire content.
  • The internal format of the stream is chunk based which makes it very flexible for future enhancements but still keeps compatibility with older implementations.
  • There is a user chunk which takes data written to the stream in the OnSaveNode event. The data of this user chunk is can be read in OnLoadNode.
Developer support

  • Special care has been taken to format the source code of Virtual Treeview consistently.
  • A large part of the entire implementation are comments which describe the inner workings.
  • Methods and properties are consequently ordered alphabetically within their scope (private, protected, public, published). The only exception are the constructors and destructors which always appear at the top of the public section in the class declaration and are always the first methods in the class implementation.
  • For every event there is a virtual method which calls the event handler. This allows descendants to get notice of every event without assigning a handler. The names of these methods correspond directly to the events by using the pattern: DoEventName.
  • Many measures have been taken to ensure Borland C++ Builder compatibility. This is particularly difficult because the automatic translation from Delphi to C++ code in BCB is buggy.
  • There is an easy and powerfull mechanism for descendants writers to allocate their own data on a per node basis. Simply call AllocateInternalData to register your needs. This will not influence existing or future application code if it consequently uses GetNodeData for user data access.
Editing

  • Application defined editors are supported via an edit link interface. A generic (non-Unicode) editor implementation is available too.
  • Every column in the tree is editable if enabled (see toExtendedFocus).
  • By supporting the TNT controls library (see chapter Unicode above) it is also possible to have full Unicode editing capabilities.
Utilities

For your convenience some of the internally used functions which are of general interest are exposed.

  • AlphaBlend: a general purpose procedure to blend a source onto a target bitmap using several different modes.
  • DrawTextW: a partial implementation of the DrawText API which supports Unicode. This method is not used on Windows NT/2000/XP machines.
  • ShortenString: a general purpose function which makes a given WideString fitting into a given space. This is partially implemented by the Windows DrawText API but takes additionally care for right-to-left alignment and works with Unicode also on Windows 95/98/Me.

* Times given here are taken on a Windws XP professional system running on an Athlon 650 MHz with 256MB RAM. All possible optimization were applied.


Installation
Send Feedback

Virtual Treeview is designed for Delphi 7 and higher and can also be used with Borland C++ Builder 2006 and up. It is however not designed to work directly with Kylix, Lazarus, Free Pascal or Delphi for .NET.

The initial core source files are:

Compilers.inc

Include file which contains various compiler switches which determine the target compiler and the target operating system.

VTConfig.inc

Include file which contains version neutral compiler switches which control certain things that can be compiled into the tree view (e.g. Windows XP theme support, Unicode controls, a specialized node memory manager etc.).

VirtualTrees.pas

The actual implementation of Virtual Treeview and its descendants and support classes.

VirtualTrees.res

Resource file containing some check and miscellaneous images used for all Virtual Treeviews.

VTHeaderPopup.pas

Unit containing a TPopupMenu descendant which provides a convenient way to implement a header popup used to switch visibility of columns.

Installation

Please have a look at the file INSTALL.txt for installation instructions. the installer which was formerly available is no longer maintained.


Version history
Send Feedback

Since 2006 the history is maintained in the file CHANGES.txt in the root of this archive.

Version 4.3.0 - 4.4.2 (December 2004 - November 2005)
  • Improvement: fixed column implementation completed (code donation by Igor Savkic)
  • Improvement: ShowScrollbar calls with conditional defines extracted into a new method. Added event that can be hooked by the application to get notified if a scrollbar is about to show or hide. Introduced OnShowScrollbar event.
  • Improvement: OnGetImageEx event to allow specifying a custom imagelist.
  • Improvement: GetFirstChecked, GetNextChecked, ClearChecked helper methods (code donation by Azza).
  • Bug fix: Reselection of a node in multi selection node did not refresh its visual selection appearance.
  • Bug fix: root node total count not updated during load of streamed nodes.
  • Bug fix: When loading a node from stream the initial total height is always set to the current default height of the tree, not the height of the node that is being loaded.
  • Bug fix: Mantis #260, TBaseVirtualTree.ReadChunk has applied total height of loaded nodes multiple times.
  • Change: Moved DoCancelEdit and DoEndEdit to the protected section. Don't know it ever could end up in the public section. Use CancelEditNode and EndEditNode instead.
  • Improvement: Hint window class dynamically assignable. TBaseVirtualTree.GetHintWindowClass
  • Change: A few GetPrevious* methods were still testing for an initialized parameter.
  • Change: OnMouseWheel published.
  • Improvement: Painting of normal, selected, state and overlay image is now done using standard image list access. This allows to use specialized image lists (e.g. with full alpha channel support).

Version 4.0.16 - 4.3.0 (December 2003 - December 2004)
  • Improvement: Delphi 2005 compatibility.
  • Bug fix: InternalData may return nil, so its result must be checked before accessing it.
  • Bug fix: WM_CURSOR in TVTHeader.HandleMessage used the screen standard cursors as default instead that of the tree.
  • Change: If the hot tracking cursor is crDefault when hot tracking is enabled then that of the tree is used instead.
  • Bug fix: TVirtualTreeColumn.SetIndex removed as it caused reindexing of the position array (which is wrong).
  • Bug fix: check for existing window handle before posting a message for the node editor.
  • Change: published events OnAdvancedHeaderDraw and OnHeaderDrawQueryElements in TVirtualDrawTree.
  • Improvement: tree state tsCheckPropagation is now only reset after a tristate check operation has finished (before the final OnChecked event). Therefore the tree state will include tsCheckPropagation while child nodes are checked or unchecked.
  • Change: ExecuteAction fixed (incorrect conditional definitions)
  • Change: DoBeforeItemErase was in the wrong place.
  • Bug fix in InternalDisconnectNode: When an invisble node is removed from its parent the height of this parent node no longer is changed.
  • Bug fix: Char handling for incremental search killed the dead char due to a problem with ToASCII.
  • Improvement: Removed ParentBackground property (also for D7), it is useless because of the own background handling of VT
  • Improvement: (better multimonitor support) Checks for true screen location for the hint.
  • Bug fix: TVirtualTreeColumn.SetOptions + : Check for a valid window handle of the tree before doing invalidation.
  • Improvement: In VT.WMKeyDown additional checks for page up/down, to scroll not more than what fits in one page under all conditions.
  • Bug fix: In VT.HandleMouseDown check for assigned hit node before doing selection with alt key.
  • Bug fix: VST.DoNewText, inserted call to UpdateHorizontalScrollbar to account for edited nodes, which now have a significant other length.
  • Change: Moved some methods to higher visibility.
  • Improvement: non-tiled background images (code donation by Richard Pringle).
  • Improvement: Configuration compiler switches are now located in an additional file (VTConfig.inc).
  • Improvement: Reset of all global objects to nil on finalization. Explicit initialization of Initialized and NeedToUnitialize because of trouble when VT is used in dynamically loaded packages.
  • Bug fix: Dragging did not work with full row selection and toFullRowDrag switched on while drag mode is dmManual.
  • Improvement: Mouse button flags are now passed through OnDragOver and OnDragDrop.
  • Bug fix: The internal node edit now uses clWindowText instead of clBlack as text color to work properly on high contrast color schemes.
  • Improvement: Introduction of toDisableAutoscrollOnEdit. It prevents a node with a large caption to scroll horizontally when is edited.
  • Change: Added test for HandleAllocated to TVirtualTreeHintWindow.AnimationCallback.
  • Improvement: Update edit bounds when a node's height is changed and editing is active.
  • Change: Partly took back the change for overlay images. VT still must support overlay indices the old way (e.g. for system image lists). Overlay indices >= 15 now use the new mechanism and are drawn without the need to set TCustomImagelist.Overlay.
  • Bug fix: Insertion order of nodes was wrong in MoveTo for amAddChildLast.
  • Change: removed change lock from worker thread. It isn't used any longer.
  • Bug fixes: Mantis bug entries #158, 162-172, 174-191, 192-196, 199, 202, 204, 205, 208, 212, 215, 216, 218, 220, 221, 228.
  • Other small improvements.

Version 3.8.3 - 4.0.15 (May - November 2003)
  • Bug fix: Initial draw selection with the mouse at the end of large trees (1+ million nodes) started with a huge delay.
  • Improvement: Better synchronization of tree windows and the worker thread.
  • Change: WM_RELEASEEDITLINK removed. It is sometimes problematic to release the link asynchroniously. Another mechanism is used instead.
  • Improvement: check images are now public, to allow to use them for own drawing code.
  • Bug fix: using Tree.CheckState[Node] in OnInitNode caused an infinite recursion.
  • Improvement: toFullRowDrag introduced
  • Improvement: tsCheckPropagation introduced
  • Improvement: node selection change with the mouse and modifier keys is now more consistent to Windows standard controls.
  • Improvement: new event OnGetCellIsEmpty
  • Improvement: TVTColors.HeaderHotColor introduced, default value is clBtnShadow as it was hard wired before.
  • Improvement: Auto spring feature. Size changes of the header are evenly spread over all columns, which are enabled for this feature. New options introduced: coAutoSpring, hoAutoSpring.
  • Change: Header stream version increased to 3. This was necessary because the new coAutoSpring options increased a column's option size from byte to word (now there are 9 options).
  • Improvement: Edit property of TStringEditLink promoted to public.
  • Improvement: ShortenString better takes right-to-left contexts into account.
  • Improvement: toAlwaysHideSelection introduced. Allows to hide node selections entirely.
  • Improvement: toUseBlendedSelection introduced. Allows to have translucent node selections.
  • Bug fix: Mantis bug entries #140, 144, 125, 122, 129, 147, 148, 149, 152 - 157.
  • Improvement: Mantis feature request #113, toSimpleDrawSelection introduced.
  • Improvement: ComputeNodeHeight introduced. Helper method to delegate node height calculation to the tree.
  • Improvement: Alt key might be pressed when clicking in the tree. This allows to start drawing the selection rectangle also on node captions and images (which would otherwise start dragging).
  • Bug fix: ValidateCache was not always called in ToggleNode when InvalidateCache was used.
  • Bug fix: FLastHintRect was sometimes not reset preventing so a new hint to appear.
  • Bug fix: Redundant ChangeCheckState in HandleMouseDown removed.
  • Bug fix: OnHeaderDblClick was triggered even if the column was set to be unclickable.
  • Bug fix: Wheel panning and scrolling was not possible if toAutoScroll was not set. This option has another meaning and should not impact wheel handling.
  • Bug fix: VT control could not be set as ActiveControl at design time.
  • Bug fix: In method ContentToText it could be that the text contained the separator char as regular character, so it was necessary to wrap the text with quotation marks then.
  • Bug fix: Bidi mode and aligment was not correctly considered in UpdateEditBounds when grid extensions were enabled.
  • Improvement: Check for nil hint data in TVirtualTreeHintWindow.CalcHintRect just to be on the safe side.
  • Improvement: TVirtualTreeColumn.ComputeHeaderLayout is now virtual to allow descendants to change the layout.
  • Improvement: toFullVertGridLines, vertical grid lines can be drawn over the full client area height.
  • Improvement: flickering on column resizing is gone.
  • Improvement: System conformal border width calculation for certain tasks.
  • Improvement: Animation parameter for TVTHeader.AutoFitColumns to avoid the size animation (default: True).
  • Improvement: ParentFont property for the header. Default is False to stay compatible with older tree versions.
  • Bug fix: cursor rectangle for spanned columns in normal hint mode was too small.
  • Feature: the implementation is now more than 30.000 lines in size.
  • Bug fix: Access violation fixed, which was sometimes caused by setting VT to edit mode if the old edit link was not freed yet (because it was still handling a message).
  • Improvement: Hint animation now does no longer stop quick switches to new hints.
  • Improvement: ParentBackground property published.
  • Bug fix: vsAllChildrenHidden and vsExpanded are now removed from a node's state if there are no child nodes anymore
  • Improvement: column width limit to 10000 is now only applied on non-NT systems (Win9x/Me).
  • Improvement: single letter mode in incremental search is not used if the current node also fits the repeated character.
  • Bug fix: correct theme change handling when switching to classic mode.
  • Improvement: new event OnMeasureItem, new handling for application driven node heights. TCustomVirtualStringTree.ComputeNodeHeight implementation to easy node height computation for multi line nodes.
  • Improvement: Header is nil'ed when the tree is destroyed and checked before used in TBaseVirtualTree.Notification in order to avoid potential problems accessing an invalid address.
  • Bug fix: The cut and copy pending states in the tree and participating nodes were not removed.
  • Bug fix: csPaintCopy was not considered when painting (used for TWinControl.PaintTo, e.g. in Form.Print).
  • Bug fix: DT_NOPREFIX added for header text output.
  • Bug fix: Thread safe check for current tree reference in the worker thread, as it can be reset before it was used.
  • Bug fix: Color change for non-standard background colors after all columns were hidden.
  • Improvement: new node background erase action (eaNone).

Version 3.6.3 - 3.8.2 (February - April 2003)
  • Bug fix: Local tree reference in worker thread is erased when a tree removes itself from the waiter list.
  • Improvement: TStringEditLink public methods are now virtual.
  • Change: A couple more methods in the header and columns are virtual now.
  • Improvement: Introduction of TVirtualTreeColumnsClass and GetColumnsClass in TVTHeader. This allows for more customization.
  • Improvement: DetermineHiddenChildrenFlagAllNodes, tsUpdateHiddenChildrenNeeded, Optimized flag determination to speed up mass changes of the visiblity state of nodes.
  • Improvement: Unicode support for inplace editing by utilizing the TNT controls package. This support is by default disabled and can be made active by enabling the compiler symbol TntSupport.
  • Improvement: MoveTo is now allowed with Source and Target being the same node, but only for amInsertBefore/After and child nodes only.
  • Bug fix: Mantis bug entry #112, #108, #100, #103, #119
  • Improvement: All public images properties changed from TImageList to TCustomImageList. (Mantis entry #110)
  • Bug fix: Handling for manipulating columns via index and manual deletion.
  • Improvement: Some small additions to aid customizations by descendants.
  • Bug fix: GetMaxColumnWidth did not consider if there were vertical tree lines.
  • Improvement: The internally used edit control in the tree edit link can be changed now by assigning a new control to the Edit property. The edit link will take over the ownership of the new control then!
  • Improvement: Header paint info in advanced custom draw events is now changable (declared as var instead const).
  • Bug fix: The number of visible nodes was not updated correctly under certain circumstances.
  • Bug fix: Invalid tree data in TVirtualTreeHintWindow.IsHintMsg was used under rare conditions.
  • Bug fix: Exception in FindInPositionCache due to invalid position cache data.
  • Improvement: VT may optionally use a local node memory manager for node allocations. This will increase allocation speed by about 200% for large trees (so node creation and destruction is about 3 times faster). Small trees do not benefit that much from it, so the node memory manager is disabled by default. See UseLocalMemoryManager for more information.
  • Bug fix: State change management used in the worker thread sometimes caused a deadlock.
  • Improvement: UpdateScrollBars is now virtual.
  • Bug fix: The structure change event was not triggered during ProcessOLEData when nodes were copied.
  • Bug fix: Failure to initialize the OLE subsystem does no longer throw an exception. It is a non-critical problem if it fails, only OLE drag'n drop and clipboard operations do not work then.
  • Bug fix: Check state changing did not consider the permission of the OnChecking event. Fixing this has the wanted side effect that you cannot change a node's check state if it has a tristate checkbox and none of its child nodes are initialized yet.
  • Bug fix: DT_NOPREFIX was not used for single line nodes.
  • Improvement: speed up for column erasing
  • Improvement: Advanced header custom drawing with the ability to schedule element drawing either by the application or the tree.
  • Bug fix: Node rectangle calculation in ClearSelection is wrong.
  • Bug fix: all remaining (and fixable) Mantis bug entries fixed.
  • Improvement: OnStateChange, DoStateChange, centralized state change method with notification for event sink.
  • Improvement: DeleteSelectedNodes is now virtual

Version 3.5.8 - 3.6.2 (December 2002, January 2003)
  • Improvement: hint flickering on key press is gone.
  • Improvement: Position cache filling is now more fail save.
  • Bug fix: Mantis bug entry #75.
  • Bug fix: Mantis bug entry #74.
  • Bug fix: Mantis bug entry #77.
  • Bug fix: Mantis bug entry #82.
  • Bug fix: system check images size does not fit.
  • Optimization: minimal change in HandleIncrementalSearch.
  • Improvement: Full boolean evaluation is permanently switched off as VT heavily relies on that setting.
  • Improvement: The buffer for incremental search is now public.
  • Bug fix: Column additions now set a column's default properties first before doing default notification handling in order to have them available when updating the header/tree as result of the TCollection.Changed event.
  • Improvement: The header font is adjusted according to the system font settings.
  • Improvement: Exit code for internal node editor does no longer prevent focus switch to other controls.
  • Improvement: Multiline support for node captions. New node state vsMultiline (default: off). Note: This support requires Windows NT (4.0/2000/XP and up) for word breaking. The word breaking feature is not available on Windows 95/98/Me systems.

Version 3.5.1 - 3.5.7 (November 2002)
  • Improvement: CanFocus is not virtual in Delphi 4 (-> conditional defination of the override keyword).
  • Improvement: Most of the properties for the internal edit control are now public.
  • Improvement: Edit control in the standard edit link is now accessible via a protected read only property.
  • Improvement: Initialization of global structures is now delayed until the first tree is created. This allows use of VT also in special applications like property sheet extensions.
  • Improvement: Updating/Updated pair included in VT.Loaded to avoid design time modification state changes.
  • Work around: CM_AUTOADJUST introduced to decouple edit window notification and resizing for Win9x/Me systems.
  • Improvement: Reintroduction of automatic exit handling for the internal node editor.
  • Improvement: System check and flat check images introduced.
  • Improvement: Exchanged 'x' for ' ' as the dummy hint string to avoid showing up a 'x' when using TAppliction.Hint.
  • Improvement: The virtual string tree does incremental search independently. Use OnIncrementalSearch if you want to override the default behavior.
  • Improvement: VK_BACK can be used in incremental search to return to the previous pattern (deletes the last char in the current pattern and search temporarily backwards).

Version 3.4.10 - 3.5.0 (October 2002)
  • License: Virtual Treeview is now released under a double license: MPL or LGPL.
  • Bug fix: hit test in other than the main column sometimes returned a check box hit.
  • Improvement: new property SelectionBlendFactor. Can be used to adjust the blend effect of the selection rectangle (if it is used).
  • Improvement: Painting of node images improved to have it exactly as used in standard controls.
  • Bug fix: pressed state for a checked node is now reset if another key than VK_SAPCE is pressed.
  • Bug fix: font handling in Print caused wrong output on screen after print.
  • Improvement: Ability to link Troy Wolbrink's Unicode aware popup menu added. See VTHeaderPopup.pas for more details.
  • Bug fix: vsAllChildrenHidden is now removed from the parent node in AddChild.
  • Work around: focus changes between VT and wrapped non-VCL controls like TWebBrowser should be accompanied by resetting the ActiveControl property of the tree's owner form.
  • Improvement: Consideration of drag objects not derived from the base control drag object.
  • Improvement: Keyboard handling for expand/collapse extended to main keyboard (formerly only numpad).
  • Improvement: Consideration of the parent form when checking if focusing of a tree is allowed (the VCL doesn't this).
  • Work around: When used in a package the special hint window is not freed correctly by the VCL, which causes an access violation on shut down.
  • Bug fix: Clipboard format enumeration should be sorted by priority.
  • Improvement: TVTHeader.CanWriteColumns introduced to allow descendants to avoid writing columns to the DFM.
  • Renamed Canvas to TargetCanvas in TVTBeforeItemEraseEvent (for consistency).
  • Support for application defined drag objects (VCL drag'n drop only).
  • Bug fix: NC border painting considers now client edge too (if border width is > 0 and border style = bsSingle).
  • ChangeScale implementation / toAutoChangeScale, This is used for big fonts to scale the default node height automatically.
  • Text alignment is preserved in DrawTextW.
  • WM_THEMECHANGED also wrapped with ifdef ThemeSupport.
  • More default values added.
  • Tree states property is now writable. Writing to it will not trigger any action, but can be used by descendants.

Version 3.4.1 - 3.4.9 (August - September 2002)
  • Bug fix: Delphi Gems Issue Tracker #41.
  • Bug fix: Delphi Gems Issue Tracker # 38, The MDI problem work around code in TBaseVirtualTree.WMKillFocus was removed as the problem it was to fix does no longer appear but another problem was created by it.
  • Bug fix: The tree options were freed in the tree's destructor but used again afterwards (in Clear).
  • Bug fix: inherited call in TBaseVirtualTree.Notification included.
  • Selection with Ctrl-klick is handle the same way as Explorer does it (selection on mouse up instead down).
  • Added reset for last searched node (incrementals search) when the search timer is deactivated.
  • Work around problems with keypresses while doing hint animation in IsHintMsg
  • Change in Animate, use Cardinal instead Integer.
  • Bug fix in ScrollIntoView, scrollbar visibility was not correctly tested.
  • Bug fix in WMKillFocus, if toGhostedIfUnfocused is used then the focused node should be redrawn too.
  • Bug fix in CopyTo, if user canceled node copy then result is nil now.
  • Correction, NewParent in TVTNodeMovingEvent and TVTNodeCopyingEvent is now Target, because the attach operation might have been a sibling action, where NewParent would be inappropriate.
  • Added all possible default values to TVirtualTreeColumn.
  • Drop effect support for VCL drag'n drop.

Version 3.3.3 - 3.4.0 (July 2002)
  • Delphi 7 compatibility.
  • Bug fix for clipboard formats. The internal clipboard formats array was erronously never used.
  • Bug fix for freeing image lists if they can get destroyed before the tree.
  • Bug fix for ChildrenOnly in IterateSubtree, if the given node has no child nodes.
  • Introduced NodeParent property in Virtual Treeview to ease navigation and manipulations.
  • Improved client area invalidation check.
  • New paint option introduced (toGhostedIfUnfocused).
  • New option toDisableAutoscrollOnFocus introduced, to prevent a tree from scrolling horizontally after a column received the focus, but was not fully visible.
  • GetTotalCount does not use BeginUpdate/EndUpdate but simple increment/decrement of FUpdateCount to avoid recursion problems.
  • DetermineHitPositionLTR and DetermineHitPositionRTL are now virtual.
  • PaintCheckImage, PaintImage, PaintNodeButton and PaintTreeLines are now protected (instead private) and also virtual. This will allow for even further customizations of VT.
  • Check for FSelectionCount > 0 in RemoveFromSelection to improve stability.
  • toReadOnly introduced.
  • SetItemHeight renamed to SetDefaultNodeHeight.
  • TVTHeader.Invalidate promoted to public.
  • Update lock for DeleteChildren operations to avoid access to invalid pointers under certain circumstances.

Version 3.2.0 - 3.3.2 (May - June 2002)
  • Fixed hit determination bug (appeared when using margins in the tree).
  • Support for Visual Form Inheritance (VFI) for the header.
  • Bug fix for loading nodes from stream which are invisible but their parent is expanded.
  • Improved theme support. Now TThemeServices from the Windows XP Theme Services (another free software from Delphi Gems) is used. You must now explicitely add a manifest to your application! This is no longer done automatically by the tree.
  • Bug fix: autoscroll in VCL drag mode.
  • Bug fix: shifted characters for incremental search.
  • VST lets now first the ancestor/application render to clipboard before it tries itself.
  • Application might modify TargetCanvas.TextFlags in OnPaintText to control the output of normal and static text (currently background only).
  • Correct bidi mode window styles.
  • Bug fix regarding vsAllChildrenHidden node state (DetermineHiddenChildrenFlag).
  • Bug fix in NC painting (removed child window clipping).
  • Bug fix horizontal scrolling (ScrollIntoView). Improved horizontal scroll into view.
  • InternalConnectNode and InternalDisconnectNode are protected now.
  • InitNode in GetHitTestInfoAt to avoid access to uninitialized nodes under certain circumstances.
  • Default node text is only stored if it differs from 'Node'.
  • Printer font assignment fixed.
  • Bug PaintTree for OnPaintBackground fixed. The owner draw mode is now called with the correct window origin set.
  • New event OnHeaderDraggedOut.
  • Switch to minor version 3.2.
  • Hide selection in full row selection mode.
  • bug fixes
  • other small changes

Version 3.0 - 3.1.9 (January - April 2002)
  • First public beta version of the Virtual Treeview CLX version.
  • DetermineNextCheckState is now protected and virtual.
  • Tree printing.
  • UpdateAction only if tree is focused.
  • Consideration of the user setting for wheel scroll lines.
  • Limit drag over node hits for report mode (like listview).
  • All column indexes are now consistently using TColumnIndex (instead Integer).
  • Minor changes to make custom implementations of auto column resize possible.
  • Wheel panning and auto scrolling, option toWheelPanning.
  • vsClearing node state for optimizations.
  • Update*Scrollbar methods are now public.
  • toAutoAcceptEditChange.
  • MoveTo within a tree now keeps focused node instead resetting it.
  • WMContextMenu cancels now also drag operations.
  • PaintTree is now public.
  • WM_CANCELMODE included.
  • Bug fix: IStream storage format does not work with OLEFlushClipboard -> had to remove it (HGlobal is still available).
  • Other bug fixes.

Version 2.7. build 2-6 (December 2001)
  • child controls are now correctly scrolled too if there is a background image
  • tree cursor is now only applied when there is no global cursor (Screen.Cursor) is set
  • prevented resize of the edit when grid extensions are active
  • selection anchor setting when the first selected node is set in code
  • compiler switch ReverseFullExpandHotKey introduced
  • Renamed CreateEditor to DoCreateEditor to be consistent with similar methods (DoCreateDataObject
  • drastically simplified auto expand code, it also works now as in Explorer
  • space handling limited to nodes which have a check box/radio button and if check support is enabled, otherwise space characters are used for incremental search
  • change events rework
  • ScrollIntoView allows now for vertical centering, option toCenterScrollIntoView
  • help contexts for exceptions, EVirtualTreeError now in interface section to allow testing for it in apps.
  • ResetRangeAnchor
  • VT allows now two storage formats for drag'n drop and clipboard transfers (HGlobal and IStream). Default format is IStream as it does not need as much memory during construction as HGlobal. It is also a faster in usage.
  • implementation of events in IDataObject (advise/unadvise sinks etc.) using IDataAdviseHolder
  • overloaded GetNodeAt variant which only takes X and Y (in client coordinates)
  • ILC_COLOR32 for image lists is only used for Windows NT systems, this will help avoiding GDI trouble on Win9x/Me
  • small changes
  • bug fixes

Version 2.6, build 3-14, Version 2.7.1 (November 2001)
  • F2 alone makes the tree going into edit mode, no longer any modifier key allowed
  • added Canvas.Lock/Unlock in PaintTree
  • added TDragControlObject assignment in CMDrag
  • further small changes for BCB compatiblity
  • drag imager helper interface support included thank Jim Kueneman's excellent preparatory work
  • structure change event trigger in AddChild
  • some minor optimizations
  • initial check state setting when changing a check box type
  • fmTransparent (button fill mode)
  • correct tree window border for themes (still flickers a bit, need any documentation for this)
  • theme style is cached now to speed up frequent checks
  • improved editing (default editor behavior), correct frame for themed application
  • custom checkimages work now also with a themed tree
  • OnGetCursor, OnGetHeaderCursor, TVTGetCursorEvent, TVTGetHeaderCursorEvent, DoGetCursor, DoGetHeaderCursor
  • changed coMovable to coDraggable, (it was never used so far) and made it actually working
  • published Action property
  • categorisation of properties for the IDE
  • toAutoDeleteMovedNodes
  • visible count bug fix
  • improved header rect determination and usage
  • reset of hot node if focused node is changed
  • check button improvement for XP styles
  • small tree painting rework
  • TColumnIndex, TColumnPosition (to utilize better type checking)
  • overloaded ColumnFromPosition variant to get a column index from a position index
  • TVTHeaderDraggedEvent, new parameter in OnHeaderDraggedEvent
  • scrollbar reset when hiding it
  • Ctrl-A now considers selection constraints
  • no image blending if the tree is unfocused
  • improved VCL drag handling
  • HasPopupMenu
  • other small changes
  • bug fixes

Version 2.5, build 39-40; 2.6, build 0-2 (October 2001)
  • Release candidate 2 for the beta testers and early adopters
  • Full Windows XP theme support
  • Legacy code included for XP style support on non-XP systems (TCheckImageKind, TVTHeaderStyle, TVTButtonFillMode, XPImages, DrawXPButton, node buttons)
  • Node height bug fix for loading trees from stream
  • VCL drag handling improved
  • Update blocker in AddChild
  • Property DragCursor published
  • ILC_COLOR32 is now used for image list creation (instead ILC_COLOR16) to allow for XP alpha blending
  • ContentToXXX routines consider now hidden columns
  • toFullRepaintOnResize
  • Header drop mark is not shown if the column being dragged is also the current drop target
  • TBaseVirtualTree.GetHeaderClass (allows creating an own header class)
  • Correct space distribution for centered column headers showing also the sort indicator
  • Reset of FRangeAnchor when node is deleted
  • Conditional compilation of flat scroll bars (see symbol UseFlatScrollbars)
  • Synchronous update mode (BeginSynch, EndSynch, tsSynchMode, usBeginSynch, usSynch, usEndSynch)
  • toReportMode in TreeOptions.MiscOptions, to even better simulate TListView
  • TVTDropMarkMode for header custom draw
  • Other small changes
  • Bug fixes

Version 2.5, build 23-38 (September 2001)
  • Windows XP style check images
  • more available check images
  • MDI child parent form problem work around in TBaseVirtualTree.WMKillFocus
  • check for destruction of the header popup
  • published OnContextPopup
  • stop draw selection mode before inherited mouse button up handler opens a popup menu
  • corrected some spelling errors
  • SetVisible improvements
  • FullCollapse changed again, it does not initialize nodes anymore
  • CanShowDragImage is now virtual
  • changes to provide a drag image of the tree without showing it (for descendants which have own image handling)
  • conditional focus setting
  • GetFirstVisibleChild(NoInit), GetNextVisibleSibling(NoInit), GetPreviousVisibleSibling(NoInit)
  • VisiblePath now checks for vsVisible style and sets it if VisiblePath is set to True
  • bug fixes in visibility setting
  • toAutoHideButtons auto option
  • vsAllChildrenHidden node flag
  • VCL drag image bug fix (external drag images)
  • small improvement in DrawTextW
  • bug fixes background painting
  • bug fixes VCL drag image painting (for external drag images)
  • changed OnDrawHeader to OnHeaderDraw to fit it closer to the other header events
  • shadows for hints and tooltips
  • Windows XP style header drawing
  • TVTButtonFillMode, ButtonFillMode
  • alpha blended selection rectangle
  • properties DrawSelectionMode, SelectionRectangleBlendColor and SelectionRectangleBorderColor
  • OnHeaderDragged published
  • removed TVTEdit.WMKillFocus
  • TCustomStringTreeOptions
  • adjustments so that TCustom... trees only use and return TCustom... options versions
  • other small changes
  • bug fixes

Version 2.5, build 1-22 (August 2001)
  • removed TVTEdit.WMKillFocus
  • TCustomStringTreeOptions
  • adjustments so that TCustom... trees only use and return TCustom... options versions
  • hint positioning
  • tree options are now really overrideable and extendable
  • IsVisible[Node] := True now makes a node really visible (expands all parent nodes)
  • significant speed improvements for ContentToXXX routines
  • better Delphi 6 compliance
  • EndUpdate does nothing if the tree is being destroyed
  • double click on state icon does toggle node too
  • InvalidateNode checks now for allocated handle
  • GetMaxRightExtend now correctly includes FMargin in entire width
  • DoCanEdit, GetImageIndex (separated from DoGetImageIndex), DoGetText called by GetText
  • improved key conversion for incremental search
  • support for standard actions
  • options splitted into sub-options, property Options is now a class instead of a set
  • new options toUseBlendedImages and toAutoScrollOnExpand
  • DoBeforeCellPaint is now called in PrepareCell to allow customization after column color application
  • consolidated DoDrag* and Drag* methods, DoDrag* methods only call their appropriate events
  • AddChild and InsertNode can now take a pointer to user data which is placed into the first four bytes of a node's user data area (there must of course at least be 4 bytes user data).
  • vsInitialUserData to indicate a node needs OnFreeNode even if it is not "officially" initialized
  • FDragSelection is now also a protected property
  • LineMode
  • ContentToRTF improvements for correct table building
  • ContentToHTML improvments and bug fixes
  • changed CF_RTF* to CF_VRTF* to avoid identifier conflicts
  • internal data handling improved, method AllocateInternalDataArea, method InternalData
  • improved text painting
  • rounded selection rectangles, property SelectionCurveRadius
  • selection border colors
  • hatSystemDefault, DoGetAnimationType
  • small changes
  • bug fixes

Version 2.4, build 1-34 (May to June 2001)
  • introduced build numbers
  • Delphi 6 compatibility
  • brush alignment bug for dotted lines fixed
  • test for TYMED_HGLOBAL is now done using a mask instead of direct comparation
  • tree column classes can now be changed by descendants, see TBaseVirtualTree.GetColumnClass
  • TVTRenderOLEDataEvent, property OnRenderOLEData, DoRenderOLEData TVTGetUserClipboardFormats, DoGetUserClipboardFormats, property OnGetUserClipboardFormats
  • removed ScrollIntoView from AddChild and InsertNode
  • property OnPaintBackground, DoPaintBackground
  • TVirtualTreeColumn.LoadFromStream adjustments for the new header stream version
  • BeginDrag is again public, TControl already has this method in the public section
  • GetFirstSelected and GetNextSelected iterate now through the tree as every other of those methods returning so the nodes in logical order
  • GetFirstCutCopy, GetNextCutCopy
  • ContentToRTF, ...HTML, ...CSV, ContentToClipboard
  • GetFirstInitialized, GetNextInitialized, GetPreviousInitialized, GetLastInitialized
  • on expanding scroll child nodes into view
  • new property editor for clipboard formats
  • procedures RegisterVTClipboardFormat etc. added
  • property ClipboardFormats added
  • IDataObject handling and customization added
  • trees render their clipboard formats now on their own behalf, IDataObject does only dispatch calls
  • OLEFormats property removed
  • clipboard handling reworked
  • TVTDataObject, to have two instances (one for dragging, one for clipboard)
  • IDataObject is no longer implemented by the drag manager
  • renamed TVTMoveRestriction to TVTDragMoveRestriction
  • correct background erasing for animated toggle
  • Incremental search included in WM_KEYDOWN handling instead WM_CHAR with proper ANSI to Unicode char conversion.
  • OnUpdating event, DoUpdating method
  • improved FullExpand, FullCollapse
  • improved AutoFitColumns
  • header stream version increase
  • Color, coParentColor, poColumnColor for columns (streaming and assignment updated accordingly)
  • no scrollbar updates anymore in AdjustTotalHeight to avoid unwanted side effects
  • Editors can now prevent node edit stop. CancelEditNode, EndEditNode, DoCancelEdit and DoEndEdit are now functions and return True if editing was stopped.
  • small changes in ReinitNode/Children
  • workaround for an unwanted drop action when dropping while auto scrolling
  • IVTDragManager
  • tsNeedRootCountUpdate
  • WM_NCRBUTTONDOWN in header
  • change of focused column with hot keys in grid mode is now limited to not-full-row-select mode
  • checks for update count in ToggleNode
  • CM_FONTCHANGED
  • SetChildCount/property ChildCount accepts now nil to change the top level node count
  • improved GetHasChildren
  • incremental search improvements
  • GetLastVisible, GetLastVisibleNoInit
  • Changed semantic for GetLastChild, GetLastVisibleChild, GetLastChildNoInit and GetLastVisibleChildNoInit. They do not iterate the entire child and grand child list but only the child list of the given node.
  • Deeper iteration to grand children is done via GetLast, GetLastNoInit, GetLastVisible and GetLastVisibleNoInit
  • customizable line styles
  • DoGetPopupMenu
  • OnDragDrop event has a changed parameter list (no open array as parameter to avoid trouble with BCB)
  • public property Image of TVTDragImage to have access to the internal drag image bitmap
  • TVTNodeAlignment, property NodeAlignment
  • incremental search
  • key handling for non-grid mode improved
  • small improvements
  • bug fixes

Version 2.4 (April to May 2001)
  • key handling for non-grid mode improved
  • voDisableDrawSelection (32 bits are now used for options, can't add any more)
  • voHideSelection
  • GetLast, GetLastNoInit
  • incremental search (TVTSearchDirection, TVTIncrementalSearch, SearchTimer, event OnIncrementalSearch, DoIncrementalSearch, TVTIncrementalSearchEvent, TVTSearchStart, IncrementalSearchStart)
  • improved header timer handling
  • improved key navigation in grid mode
  • Virtual Explorer Tree (VET) written by Jim Kueneman is now part of the package
  • VK_HOME and VK_END set now first and last column correctly
  • removed ivsVisible style because of unpredictable interferences with other code
  • columns store their last width and can restore it
  • TVirtualTreeColumn.RestoreLastWidth, TVTHeader.RestoreColumns
  • restore last column widths
  • workaround for bad implementation of disabled images in TImageList
  • brush alignment for drawing of nodes with odd height
  • dotted lines implementation improved, tree lines are now dotted drawn too
  • Column parameter in TVTDragAllowedEvent
  • flat check images, ckFlat
  • InvalidateChildren
  • arrow key navigation limited to grid extension, otherwise (extended focus) normal behavior
  • VK_TAB handling, WantTabs property
  • published OnShortenString in the string tree
  • introduced a build number in the main version number
  • toggle animation only if not the last visible node to be expanded
  • CharCode in OnKeyAction is now a variable to allow changing it
  • nodes in SelectAll are now initialized
  • Position in TVTPopupMenu event
  • tsVCLDragging, tsOLEDragPending, tsOLEDragging
  • limited auto scroll to draw selection and dragging
  • AutoFitColumns
  • public property EditLink
  • ProcessMessage in IVTEditLink
  • improved change handling
  • InvalidateColumn
  • TVirtualTreeColumns.IsValidColumn
  • draw selection is now also possible with full row select
  • OnScroll, DoOnScroll, TVTOnScrollEvent
  • scrolling if scrollbar is not visible
  • UnselectNodes
  • deselection with Ctrl+Shift if last focused node is not selected
  • node toggle improvements
  • background image offsets as properties
  • more BCB adjustments
  • animated hints improved
  • animated toggle improved
  • method Animate (general animation support)
  • initial range anchor setting if there was not yet a focused node
  • animation duration
  • PaintImage improvements for transparent images and full row selection
  • function Path
  • other small changes
  • bug fixes

Version 2.3 (March to April 2001)
  • tsIterating state (checks in DeleteNode and DeleteChildren)
  • paint optimizations
  • selected images are dimmed now
  • ShortenString, DoShortenString, OnShortenString event
  • OnKeyAction
  • scroll bar improvements
  • application defined check image list
  • internal data handling
  • drag image implementation finished (finally, this was really tough stuff because of the alpha blended image and updates in non client area)
  • FormatEtcList in the drag manager is now accessible through a property
  • clipboard handling
  • GetFirstNoInit (renamed GetFirstNode to GetFirst as it is more consistent)
  • small changes in TBaseVirtualTree.DoEdit;
  • restructuring of node checking
  • high color format for internal image lists
  • NewParent in OnNodeCopying
  • other small changes
  • bug fixes

Version 2.2 (March 2001)
  • MMX feature check
  • property OffsetXY
  • drag image
  • improved dragging
  • general drag management improvements
  • TVTDragImage
  • alpha blending
  • Watcher (critical section) introduced
  • MMX AlphaBlend implementation
  • improved image painting (ghosted, overlay etc.)
  • hoDblClickResize
  • TVirtualTreeColumns.AnimatedResize
  • column resize on double click
  • GetMaxColumnWidth
  • poDrawFocusRect, poDrawSelection in paint options
  • ChildNodesOnly in IterateSubtree
  • OnColumnClick, OnColumnDblClick
  • HandleMouseDblClick, WM_RBUTTONDBLCLK, WM_MBUTTONDBLCLK
  • TVTDragDropManager.SetOLEFormats is now overridable
  • hint positioning
  • reset of node widths on main column switch
  • optimized tree and header painting
  • edit mode for item clicks beside the label when grid extensions are set
  • TVirtualTreeColumn.GetAbsoluteBounds
  • tsPainting state
  • simple DrawTextW implementation (works also on Win9x)
  • improved selection rect painting
  • tsValidationNeeded
  • check event rework
  • PrepareGridExtensions
  • CM_ENABLEDCHANGED for desgin time
  • public header click index
  • draw selection improvement for all text alignments and bidi modes
  • more header mouse events (OnHeaderDblClick, OnHeaderMouseDown, OnHeaderMouseMove, OnHeaderMouseUp)
  • virtual event trigger methods for those mouse events
  • multiline hints
  • THitPositions
  • other small changes
  • bug fixes

Version 2.0 to 2.1 (January to February 2001)
  • improved hinting (accounts now for alignment and directionality)
  • improved GetDisplayRect
  • FNodeCache removed
  • BidiMode in OnDrawNode
  • DetermineHitPositionLTR, DetermineHitPositionRTL
  • improved GetHitTestInfoAt
  • improved GetNodeAt method
  • FindInPositionCache
  • made the header the sender in all events related to the header (e.g. OnHeaderClick)
  • WM_PRINT, WM_PRINTCLIENT
  • Text property for TVirtualStringTree
  • corrected header painting for various border style combinations (WS_BORDER, WS_THICKFRAME, WS_EX_CLIENTEDGE)
  • check for recursive hint animation loop entrance
  • voPopupMode
  • Tree.Assign
  • Ctrl-A handling (select all)
  • context menu key handling (popup menu)
  • DoPopupMenu
  • right-to-left drawing
  • some more adjustments for C++ Builder
  • improved column auto sizing and recover for zero-sized columns
  • columns can now be used even if the header is invisible
  • column autosizing and hints while editing
  • GetNodeAt can now take absolute and relative coordinates
  • TWMContextMenu declaration for Delphi 4
  • TChangeReason for OnStructureChange
  • hint window improvements for RTL columns and user defined fonts
  • drag manager referencing redesigned, no explicit reference count modifications necessary anymore
  • complete paint restructuring, now there is only one method to paint the tree: PaintTree, which can be used for normal paint, printing, drag image etc.
  • TVirtualTreeColumn.GetDisplayName changed to show a column's name in the property inspector if it only contains ANSI characters
  • column alignment and bidi consideration, added general property in TVirtualTreeColumn
  • properties IsVisible (changed semantic), VisiblePath, FullyVisible
  • filtered IterateSubtree
  • WM_CONTEXTMENU
  • vsVisible, full visibility implementation for individual nodes (see also GetVisibleParent, GetNextVisibleNoInit etc.)
  • included FlatSB.pas in uses list to use the flat scrollbar wrapper in case there is a system not providing flat scrollbars
  • ShortenString speed improvements
  • introduced stream version for header
  • OnCreateDragManager event
  • EditDelay property
  • dropmark can now be switched off (voShowDropmark)
  • tree colors class which unites all customizable colors into one tree property
  • sort enhancements (auto sort option, sort column, sort direction and sort glyph in header)
  • new tree states for left, middle and right mouse button presses
  • VCL drag'n drop is now also possible (left mouse button only)
  • many minor changes
  • bug fixes

Versions 1.30 to 1.31 (December 2000 to January 2001)
  • adjustments for C++ Builder (some type declarations moved)
  • voSiblingSelectConstraint
  • full MainColumn implementation, the column containing the tree can now freely be chosen
  • DragOperations property
  • AutoExpandDelay
  • header image list
  • canvas font change tracking during paint cycles
  • WM_ENABLE
  • Tag property for a column
  • OnAfterCellPaint, OnBeforeCellPaint
  • item customization reworked, TDrawInfo as well as OnGetDrawInfo is no longer needed
  • InitNode in DoGetText
  • BeginDrag is now protected and should no longer be used by applications
  • many minor changes
  • bug fixes

Versions 1.22 to 1.29 (November 2000)
  • many other minor adjustments
  • OnDragAllowed for selective drag start
  • edit improvements
  • VK_MULTIPLY handling
  • TScreen.HintFont replacement and Rectangle() version for Delphi 4
  • column options
  • bug fixes

Version 1.21 (Oktober 2000)
  • header drag mark improvements
  • utility images (internal use, e.g. for header drag mark)
  • node focus change events
  • column options
  • collapse/expand animations
  • hint animations
  • paint improvements
  • splitted stream and tree versions
  • property IsDisabled
  • bug fixes

Versions 1.17 to 1.20 (September 2000 to Oktober 2000)
  • single scroll bar properties class
  • property IsDisabled
  • separate tree and stream versions
  • bug fixes

Versions 1.5 to 1.16 (August 2000 to September 2000)
  • small improvments
  • InternalAddFromStream, AddFromStream
  • grid and tree line colors
  • improved constrained selection
  • bug fixes

Versions 1.8 to 1.14 (June 2000 to August 2000)
  • header streaming
  • header hints
  • header drag events
  • node button
  • wide string streaming support
  • margins
  • gridline color
  • improved drag image handling
  • generic editing
  • non-client area clipping
  • worker thread improvements (for use in DLLs, services etc.)
  • initial help file and preparation for first public release
  • hit test for spanned columns
  • clipboard and drag'n drop improvements
  • header owner draw
  • node sorting (merge sort)
  • bug fixes

Versions 1.6 to 1.7 (May 2000)
  • initial expand state (ivsExpanded)
  • node sort
  • MarkCutCopyNodes
  • InitChildren, ValidateChildren
  • improved clipboard handling (WM_CUT, WM_COPY, WM_PASTE and more)
  • voInitOnSave
  • overlay images
  • no width cache anymore, GetMaxRightExtend instead
  • column resize event
  • header popup menus, custom draw, dragging, switchable images
  • new tree states (expanding, collapsing, updating)
  • header options
  • auto span coulumns
  • bug fixes

Version 1.5 (April 2000)
  • own implementation for scroll bars
  • background image
  • improved NC painting
  • improved hit test
  • new events and methods (OnNodeCopying, ReinitNode etc.)
  • generic node edit improved
  • property vsHasChildren for nodes, properties ChildCount, ChildrenInitialized and HasChildren in tree
  • header painting improved (is now also double buffered)
  • node hint improvements
  • improved/extended column handling (hit test, FocusedColumn, voExtendedFocus, GetNext(Visible)Column, GetPrevious(Visible)Column, improved autoexpand, voAutoSpanColumns)
  • custom draw (paint cycles introduced: On(Before/After)[Item]Paint)
  • many other small improvements and bug fixes

Version 1.4 (February 2000 to March 2000)
  • node editing, IVTEditLink, WM_RELEASEEDITLINK, application defined node editor
  • streaming, tree virtualization, application driven save and restore nodes
  • OLE clipboard support
  • OLE support by the tree to simplify the work the app. must do (ProcessDrop, ProcessOLEData)
  • switchable OLE formats the tree should provide
  • tooltips, node hints
  • GetSortedSelection, GetSortedCutCopySet
  • improved accessibility like: TopNode, auto expand/collapes on node focuse change, DeleteSelectedNodes, SelectAll, InvertSelection, GetNext(Previous)Sibling
  • splitted change event into two, one for node focus change and one for structure change (Add, Delete etc.)
  • disabled nodes, disabled tree, cutted nodes (with proper visual feedback)
  • column images
  • hideable columns, columns auto sizing and reordering
  • normal and static text for captions
  • general optimizations
  • application driven help and popup menu
  • compatibility for Delphi 4
  • bug fixes

Versions 1.2 to 1.3 (January 2000)
  • various new navigation functions (GetFirstSelected etc.)
  • VCL and OLE drag'n drop united (accept only) plus some support routines (e.g. MoveTo, ConvertSubTree)
  • new options (auto tristate, auto focus etc.), constrained selection
  • header and columns (plus support functions)
  • crossed 10.000 code lines boundary on 31. January
  • bug fixes

Version 1.1 (December 1999)
  • OLE drag'n drop
  • check support
  • multi selection and other optimizations
  • bug fixes

Version 1.0 (July 1999 to November 1999)
  • base implementation (buttons, lines, general window handling, base mouse handling)
  • caching for optimal speed
  • multi selection
  • OLE drag'n drop
  • common tree functions and properties (InvalidateNode, GetNodeData, Visible, Selected, Expanded...)


Inner fundamentals
Topics | Send Feedback

If you would like to understand certain things going on in Virtual Treeview you should read on in this chapter. Herein I will explain what was my motiviation to create Virtual Treeview, why I based everything on the design you see now, how painting in the tree is organized and can be customized, what are the key navigation commands in the control and many more things. Particularly if you want to derive your own descendant from Virtual Treeview you should read everything here.

Topics

The virtual paradigm
Interested in the story of Virtual Treeview? Well, here is a part of it.
Paint cycles and stages
The most complex process in Virtual Treeview is without doubts its painting. Read here what stages Virtual Treeview enters during paint and how you can customize this process.
Tree image and tree window
If you are one of those developers who want to create tree descendants, which perhaps involve visual changes in Virtual Treeview then you need to know how the control paints itself (as outlined in Paint cycles and stages). What happens with the resulting image and how it can be used for certain tasks like printing? Some answers are in this topic.
Data handling
An important aspect of the tree is the handling of data for each node. Read here how Virtual Treeview manages your data.
Editors and editing
Because of the virtual nature of Virtual Treeview editing becomes a difficult issue. Read here what needs to be considered and where you can hook in to allow any editor for a node.
Keyboard, hotkeys and incremental search
Virtual Treeview handles most of the important keyboard actions on its own. Also here you can inject your own handling to modify the control's behavior. Read also about incremental search and how it is implemented.
Drag'n drop and clipboard handling
Virtual Treeview behaves also well when it comes to data exchange with other applications or structural manipulations using the mouse. In both cases the prerred method is using OLE. Read here why and what's behind it.
Additional information
This chapter collects everything else which is important or very helpful to know but which does not justify an own chapter.

Links
Topics
What do you think about this topic? Send feedback!


The virtual paradigm
Inner fundamentals | Send Feedback

Interested in the story of Virtual Treeview? Well, here is a part of it.

Description
The History

Years ago I wrote a treeview implementation called TreeNT (see also [image] TreeNT at the Delphi Gems homepage). This control is a wrapper around the system tree control provided by ComCtl32.dll. Over the time while I developed the control I encountered many limitations, either introduced by the Delphi VCL or "intended" by the underlying system control. The most annoying problems were the dependency on specific ComCtl32.dll versions and the slow behavior of the control when more than a couple of nodes had to be managed. In fact Microsoft's tree view has been designed to ease life for small node sets only.

The problems

Despite the problems with the system tree control TreeNT worked quite well and has meanwhile been downloaded several thousands of times from my web site and those many other Delphi sites around the world. When I started working for a software house in Munich I quickly included TreeNT into the company's inhouse library. But then the problems which were formerly only annoying started to make the tree nearly unusable. I realized how much the requirements in the private and professional/commercial environment actually differ.

Aside many other problems one was especially annoying: How can adding some 5000-6000 nodes take a minute or so to finish? This question was the reason that I created the very first version of Virtual Treeview. What I actually did was to recall my studies where I learned my trade. Why, on earth, must everything be wrapped into an object? In Java and the like even simple data types like strings are objects. While this kind of abstraction provides some additional conveniences it costs quite a lot in terms of CPU power and memory, particularly if it comes to many instances of such simple type pretenders.

The nodes

These thoughts inspired the idea of using small records as nodes only and putting them into a doubly linked list (see also TVirtualNode). Well, this idea is not very new (in fact I used to write many code parts using linked lists), but together with other principles it got a new quality. The key points are

  • node minimalism and
  • pull over push.

Pull over push means here that the tree asks for the data it must display instead of having the application to push it into the tree during creation. A node stays uninitialized and dataless until it is touched the first time. Only its existence and place in the tree is known. The assumption that this would be much better in terms of speed and responsiveness was based on the thought that only very few nodes need really to be accessed usually (mainly to display a handful of nodes in the tree window). Tests confirmed quickly that this was indeed the case.

The node minimalism lead to the approach to leave out everything from the node structure which can be determined dynamically and/or is used very rarely. One example is the owner tree of the node. There are only very few cases where the knowledge about it is necessary. So a standalone method (TreeFromNode) has been created to allow retrieval of the owner tree. Another omitted member was the absolute position of a node which is needed e.g. for invalidation of a certain node or start of tree window painting. For this decision however another fact was more relevant: inserting, deleting, collapsing, expanding and hiding nodes makes all following positions obsolete and requires a rescan and update of the tree. Since this would be much too expensive a node cache has been introduced. This cache is a simple one-dimensional array which holds node references in increasing absolute position order. A separate thread (which is shared between all Virtual Treeview instances in a program) is used to collect the references in the background. Well, one could say that all these updates are still necessary (even with a cache because it must be held coherent) and the thread could well work directly in the node records. The most valuable advantage of the array like cache is however that you can query it for a node at a particular position by using binary search which is not possible with linked lists.

The paradigm

Being virtual is more than requesting data on demand. Although this is an important aspect some additional things are considered in Virtual Tree. The pull over push principle for data can be extended for the structure as well. It means then to create nodes or entire branches only on demand (e.g. when expanding a node or iterating through its child nodes for incremental search etc.). This allows to fill a tree view with only the top nodes and initialize only those of them which are currently in view. Clearly this increases start up times a lot for large trees.

The core sequence for filling the tree is an iteration, which runs over initializing a node (to tell if it has children at all, see OnInitNode) and initializing its children (see OnInitChildren), which only means to tell the tree how many child nodes should be there. The tree will automatically allocate memory and set up the structure in the most efficient way but does not yet query for data. This will then again be done in OnInitNode for each of the newly created child nodes as soon as they are touched the first time. For compatibility reasons also AddChild and InsertNode have been implemented but are not as efficient as the iterative approach just explained. For obvious reasons these compatibility methods have to trigger some updates for the tree implicitly unless updates are locked. It is therefore strongly recommended to put calls to AddChild and InsertNode always into a BeginUpdate/EndUpdate frame (if there is more than one call).

Records instead classes

Basically, the idea of virtualizing the tree control and using records instead of classes were two ideas which are born nearly at the same time. It was quite clear from the very first moment that classes can never be as effective as a simple record structures (in terms of size, access speed and management). Sure, a TPersistent only needs 4 bytes more than a record (the pointer to the class' VMT), but these are still too many extra bytes if you consider that I have wrestled quite a while with myself about every byte in a tree node (and want the minimalism principle). Another point you should not underestimate is that classes as nodes would of course also mean to put node specific methods into this class too, which will be overridden at times (this is the main argument to use a class after all). This will require additional CPU cycles just to lookup access methods, to dereference etc. which in turn will cost extra time. Trees with only some 1000 nodes will never see a large difference but for big trees this is significant and Virtual Treeview has mainly been created to address high capacity tree views.

With choosing records I also gave up the VCL concept of having a tree nodes class which is responsible to manage tree nodes and is secondary to the control itself. In Virtual Treeview every access to the tree content is done via methods and properties provided by the tree control. Keep also in mind that nobody prevents you from using classes and store their references in the node's data area. It is only just so that the node (as internal management structure) is as small as possible, opening so all possibilities: from smallest memory footprint to highest comfort.

19.09.2003
Times are changing

With the advent of .NET and C# things outlined in the previous paragraphs need rethinking. The software world is changing and so must Virtual Treeview if it wants to stay. Don't get me wrong, all the nice principles in the control have proved their usefulness and fitness for the purpose they were designed. However one could see that there are still flaws and probably will ever be, regardless of the actual design. Still, nothing is so good that it couldn't get better and the approach using records/structs instead of classes not only made it sometimes hard to get used to Virtual Treeview but it makes the control as a whole incompatible to the intrinsic values of Microsoft's new concept. And here lies the next natural step for it: Virtual Treeview must go .NET. So stay tuned for the things to come...

Group

Inner fundamentals

Links
Inner fundamentals
What do you think about this topic? Send feedback!


Paint cycles and stages
Inner fundamentals | Send Feedback

The most complex process in Virtual Treeview is without doubts its painting. Read here what stages Virtual Treeview enters during paint and how you can customize this process.

Description

Similar to the system tree view Virtual Treeview defines so called paint cycles. A paint cycle is one run of the paint code which draws a part or the entire window. In Virtual Treeview this task is accomplished by the method PaintTree which centralizes the paint management into one place and is called for various tasks like window painting, drag image painting, WM_PRINTCLIENT handling and so on.

This paint method is able to draw the entire tree regardless of its window to the target canvas and optimizes painting by considering the update/clipping rectangle, which is passed in via the Window parameter (see also PaintTree).

Usually the following paint stages are executed during a paint cycle:

  • before paint (OnBeforePaint)
  • before item paint (OnBeforeItemPaint)
  • before item erase (OnBeforeItemErase)
  • after item erase (OnAfterItemErase)
  • before cell draw (OnBeforeCellPaint)
  • on paint text (string trees only, OnPaintText)
  • after cell draw (OnAfterCellPaint)

after item paint (OnAfterItemPaint) after paint (OnAfterPaint)

The cell and node events are of course not executed if there is no node to be drawn. A special flag (tsPainting) in TreeStates indicates when a paint cycle is in progress. Using this flag an application can for instance determine whether a node is initialized because it is about to be drawn or for other reasons.

Every of the stages above is accompanied by a specific event which allows the application to customize a particular aspect in the painting. The following list discusses tasks which can be done during the various stages.

Stage | Description | Comments
before paint | This stage is entered only once per paint cycle. After setting the vsPainting state it is the very first instruction in a cycle. | This stage is typically used to do any further setup of the target canvas of the paint operation (e.g. the window or a printer canvas), like changing the mapping mode or setting another clipping region. Since the passed canvas is not directly used to do the actual painting setting its font or colors has no effect. Basically only properties which affect blitting a bitmap to the target canvas have an effect at all.
before item paint | This stage is entered once per node to be drawn and allows directly to control the path which is the taken to paint the node. | In the event for this stage you can tell the tree whether you want to paint the node entirely on your own or let the tree paint it. As this happens on a per node basis it is the perfect place to maintain a special layout without doing everything in the paint cycle. Note: setting the CustomDraw parameter in the event to True will skip the node entirely, without painting anything of the standard things like tree lines, button, images or erasing the background. Hence to display any useful information for the node do it in the OnBeforeItemPaint event. This is the first stage which gets the double buffer canvas which is used to draw a node so if you want to set special properties this is a good opportunity. Keep in mind though that in particular the colors are set by the tree according to specific rules (focus, selection etc.).
before item erase | This stage is also entered only once per node and allows to customize the node's background. | This stage and its associated event is usually used to give the node a different background color or erase the background with a special pattern which is different to what the tree would draw.
after item erase | This stage is also entered only once per node. | This stage and its associated event is used to do additional drawings after the background has been erased.
before cell paint | This paint stage is the first of the cell specific stages used to customize a single cell of a node and is called several times per node, depending on the number of columns. If no columns are used then it is called once. | While internally a full setup for this node happened before the stage is entered (if it is the first run) the only noticeable effect for the application which has changed compared to after item erase is that the painting is limited to the current column. There are still no lines or images painted yet.
on paint text | After default stuff like lines and images has been painted the paint node/paint text stage is entered. | Because Virtual Treeview does not know how to draw the content of a node it delegates this drawing to a virtual method called DoPaintNode. Descendants override this method and do whatever is appropriate. For instance TVirtualDrawTree simply triggers its OnDrawNode event while the TVirtualStringTree prepares the target canvas and allows the application to override some or all canvas settings (font etc.) by triggering OnPaintText. After this event returned the text/caption of the node is drawn. Changed font properties are taken into account when aligning and painting the text. Note: The string tree triggers the OnGetText event two times if toShowStaticText is enabled in the TVirtualStringTree.TreeOptions.StringOptions property. Once for the normal text and once for the static text. Use the event's parameter to find out what is required.
after cell paint | This stage is entered immediately after the cell is drawn. | This stage can be used to add whatever you like to a single cell after everything has been painted there and is triggered once per column.
after item paint | This stage is entered after all cells of an item are drawn. | The after item paint stage is used to add node specific stuff like frames and the like which concern all columns of that node and is called once per node.
after paint | The after paint stage is the last stage in the long chain of paint stages and is entered after when paint cycle is complete. | In this stage everything of the tree (related to the current update area) has been drawn, including the selection rectangle.
Group

Inner fundamentals

Links
Inner fundamentals
What do you think about this topic? Send feedback!


Tree image and tree window
Inner fundamentals | Send Feedback

If you are one of those developers who want to create tree descendants, which perhaps involve visual changes in Virtual Treeview then you need to know how the control paints itself (as outlined in Paint cycles and stages). What happens with the resulting image and how it can be used for certain tasks like printing? Some answers are in this topic.

Description

Some methods in Virtual Treeview work with an internal tree image, e.g. painting or hit determination. This tree image does not really exist but is rather an imagination of the entire tree drawn to an infinitely sized sheet. In this picture the tree is always drawn at position (0, 0) and advances to positive horizontal and vertical values which reach out to the right and down, respectively. This also means that coordinates given in this fictional image are always positive.

A display function like the WM_PAINT handler can now take a rectangle of this full image (in PaintTree this is called the window) and let it draw to any location in a target canvas. This allows to draw a part of the entire image even if the tree window is scrolled or needs otherwise to be moved (e.g. when dragging or printing). In order to get the full dimension of the tree image call GetTreeRect, which returns a rectangle always starting at (0, 0) and extending at least to client area size but usually much further (determined by the private variables FRangeX and FRangeY which also determine the scroll bar values).

In order to maintain the visual portion of the tree image two offset values are maintained which specify the horizontal and vertical distance relative to the client area of the tree control. These offsets (OffsetX, OffsetY and OffsetXY) are therefore negative. This means 0 means no offset at all and -100 means the tree is scrolled by 100 pixels. Values > 0 are always made to 0.

How does this now fit together when you want, say, to print a part of the tree to a memory or printer canvas? Have a look at the image below:

On the left pane you can see a typical tree view of which only a specific part is visible. This situation is visualized by the non-shaded rectangular region. The right pane shows the reproduction of the visible part to different locations. The entire tree image size corresponds to the internal FRangeX and FRangeY variables of the tree view. When drawing a part of the window the method PaintTree needs to know the size and position of the part to draw. This is given by a TRect structure passed in the Window parameter. For normal screen display this rectangle structure consists of the current scroll offsets (properties OffsetX and OffsetY or OffsetXY for both together given as TPoint) and the size of the client area of the tree control. This rectangle is usually also intersected with the current clipping region to avoid painting parts of the tree which are not invalid.

The place where the image is to be painted is given in the parameter Target. This point specifies the physical location in the target canvas where to draw the content of the region specified by Window. Note that these coordinates are usually (but wrongly) considered as being physical pixels. This might be true for screen or bitmap output but is not for the printer where a single pixel would be much too small. Hence another term is used here: logical coordinates. The actual size of one unit of these coordinates can either be a single pixel but also a millimeter, inch or even some other odd size. The interpretation is determined by the mapping mode of the target canvas (device context, DC) and its window and viewport extents. For more information about mapping modes see the online help or MSDN under SetMapMode and for DC extents under SetWindowExtEx as well as SetViewportExtEx. With the help of mapping modes and window/viewport extents you can greatly customize the outcome of PaintTree. These APIs are usually also used to provide a print preview.

Group

Inner fundamentals

Links
Inner fundamentals
What do you think about this topic? Send feedback!


Data handling
Inner fundamentals | Send Feedback

An important aspect of the tree is the handling of data for each node. Read here how Virtual Treeview manages your data.

Description

Usually single items (as in TTreeview and TListView) only have a simple data member which can take a pointer to the actual data an application maintains for this item in an external structure. This principle can be used with Virtual Treeview too. But the control goes a step further by letting the application decide how much data per node is needed and providing this space implicitly. This way the application is freed from maintaining an extra structure sometimes.

Application view

The core point behind this technique is that the tree has to allocate and deallocate memory for each node anyway. The amount to allocate does not matter with respect to node handling. So it is easy for the tree to allocate some more bytes for the application. To know how much memory is to be allocated there are several ways to tell. Firstly there is the property NodeDataSize which can be set already at design time and describes the required user memory per node in bytes. If you don't know this size (because it depends on a structure which you want to be examined by SizeOf) then simply assign your size in the form creation process to the tree via the NodeDataSize property.

Secondly, use the event OnGetNodeDataSize. This event may occasionally be useful for values which are neither known at design time nor can they be determined at compile time (as the size of a record). The event is triggered when the NodeDataSize property is -1 (which is by default the case). This value will be replaced by the actual data size returned in the event.

Note: If you want to store application data in a node (e.g. the caption) then you must allocate node data as outlined above. If you get an access violation in OLE32.dll then you have likely forgotten to allocate this node data and tried to assign a string.

The allocated bytes per node are an inherent part of the node record and follow the last internal member in the TVirtualNode structure (symbolized by the Data member). In order for the application to access this memory it needs to map its node data structure to this tree internal memory. To simplify this task the application can use GetNodeData. This method returns the address of the data area in a node record. This address can then be assigned to a local pointer variable (or can be type casted) as shown in the chapter code repository. I strongly recommend that you always use the GetNodeData method to get the data address instead of simply using @Node.Data because a tree class may add internal data to this area which starts then at this address while the actual application data begins a few bytes later.

Tree Control view

Depending on its tasks a tree may need to store data on a per node basis (e.g. TCustomVirtualStringTree keeps the width of a node to allow quick response on DoGetNodeWidth which is used for various tasks including draw selection). Particularly multi selection with the mouse (draw selection) depends on very quick width determination to allow interactivity even with 100,000 selected nodes.

In order to avoid access conflicts between the tree and the application a simple mechanism has been implemented to allow flexible internal node data handling (in addition to the normal node record and application data handling). Following functions have been added to the base tree:

  • InternalData
  • AllocateInternalDataArea

Note: A tree descendant which requires additional internal data must call AllocateInternalDataArea to register its need.

InternalData is a virtual function which does nothing in the base tree class (returns nil). I recommend to override this method in descendants however and return the address of the internal data for that tree. This address can easily be determined by adding the offset returned from AllocateInternalDataArea to the start of the node record. To make this work you have of course to keep the offset somewhere, just like TVirtualStringTree does.

AllocateInternalDataArea is the function which sums up all requests for internal data and keeps this sum which must be added to each node data offset to return the correct address for user data. Note: call this method only once (e.g. during tree creation) to register the data area you need.

Group

Inner fundamentals

Links
Inner fundamentals
What do you think about this topic? Send feedback!


Editors and editing
Inner fundamentals | Send Feedback

Because of the virtual nature of Virtual Treeview editing becomes a difficult issue. Read here what needs to be considered and where you can hook in to allow any editor for a node.

Description

Generally it cannot be said what data a user will edit when he or she edits a node. In the case of the string tree it becomes a lot easier to decide because we have, as the name implies, strings and captions to edit. But this is only a special case and the underlaying edit principle must be flexible to allow editing various different data of a node, including several items instead of only single ones.

Since you cannot generally tell what will be edited the used solution does not assume anything. Instead it delegates the entire process to the application or derived trees via the IVTEditLink class. This interface defines some necessary methods which allow interaction between the tree and the editor but the actual editor implementation is up to the edit link (which can of course delegate this task to even another instance like the application). The edit link is responsible for everything including to hide and show the editor, reading the old values of a node and setting the new values etc. The tree only signals some general states like the edit start, end or cancellation.

Editing starts with the protected DoEdit method which may be triggered by the edit timer (which in turn is triggered by clicking again on the focused node), by pressing F2 or by calling EditNode. DoEdit creates an editor (actually only the edit link) via the virtual CreateEditor method which should be overridden by descendant trees to return a valid edit link (as TVirtualStringTree does). Otherwise the method will query the application for an editor link. Actual editing starts only if CreateEditor returns a valid edit link.

After the tree received a valid edit link it initiates communication by calling PrepareEdit which can be used by the link to retrieve the values to be edited using the given node and column. If the edit link returns True in this call another call is initiated by the tree telling the link where to place the editor using the SetBounds method. Finally the tree calls BeginEdit to actually start the edit operation. From now on the edit link is responsible for any further action including passing on key presses like VK_UP and VK_DOWN to select a new node to edit etc. The link must also be aware that editing might be stopped at any time by EndEdit or CancelEdit. Otherwise however the edit link (and its editor(s)) is completely autonomous and can use whatever it considers as being appropriate for the editing task. It isn't even limited to use an in-place editor.

With the class TStringEditLink you will find a sample implementation used in the string tree to edit single node captions. By examining the used editor (a normal TEdit control) you will find some things which should be handled the same or in a similar way to make editing smooth.

Starting with version 3.8 Virtual Treeview allows to use the TNT controls suite from Troy Wolbrink, which allow to edit node captions with Unicode content. Download the latest package and add its path after installation to your project. Enable the TntSupport compiler switch by changing it from {.$define TntSupport} to {$define TntSupport} and recompile.

Group

Inner fundamentals

Links
Inner fundamentals
What do you think about this topic? Send feedback!


Keyboard, hotkeys and incremental search
Inner fundamentals | Send Feedback

Virtual Treeview handles most of the important keyboard actions on its own. Also here you can inject your own handling to modify the control's behavior. Read also about incremental search and how it is implemented.

Description

Particularly key navigation is implicitly handled in various ways. A full list of hot keys currently supported by the tree view is shown below. Note that the control key has precedence over the shift key if both are pressed at the same time. This means that in this case the shift key has no meaning.

The tree view supports the same hot keys as the Windows system tree control and allows to customize key messages to change the meaning of the particular key (see also OnKeyAction). Generally speaking all navigation keys change the current selection if no modifier key (like control or shift) is pressed together with the navigator key. Like the system tree control Virtual Treeview allows to modify the current selection by holding down the shift key and pressing home, page up or any other of those keys at the same time. The control key neither changes the selection nor the focused node but can be used to scroll the tree window.

For special handling a grid mode is supported (see toGridExtensions in Options) which changes (among other things) some key semantics. These changes are explicitly marked in the table below.

Key | Modifier | Function
Home | none | Selects the first visible node (the focused column does not change). This node also receives the input focus. Modifications in grid mode: The focused node does not change but the first visible column is focused instead.
 | shift | Moves the focus to the first visible node (the focused column does not change) and includes every visible node, from the previously focused to the newly focused one, into the current selection. Modifications in grid mode: Not the focused node is changed but the first visible column is focused instead. The selection does not change (note: you cannot select several columns of the same node).
 | control | Scrolls the tree to the top left corner without change of any selection or focused state.
End | none | Selects the last visible node (the focused column does not change). This node also receives the input focus. Modifications in grid mode: The focused node does not change but the last visible column is focused.
 | shift | Moves the focus to the last visible node (the focused column does not change) and includes every visible node, from the previously focused to the newly focused one, into the current selection. Modifications in grid mode: Not the focused node is changed but the last visible column is focused instead. The selection does not change.
 | control | Scrolls the tree to the bottom right corner without change of selection or focused node.
Prior (page up) | none | Scrolls the tree window and single selects a node one page up. This node receive also the current focus.
 | shift | Like without modifier key but includes a page of nodes into the current selection.
 | control | Scrolls the tree window one page up without change of selection or focused node.
Next (page down) | none | Same as prior but one page down instead.
 | shift | Same as prior but one page down instead.
 | control | Same as prior but one page down instead.
Up | none | Advances the focus from the currently focused node to the previous visible node.
 | shift | Advances the focus and adds the newly focused node to the current selection.
 | control | Scrolls the tree window one line up. One line is defined as the DefaultNodeHeight.
Down | none | Same as up but one line down instead.
 | shift | Same as up but one line down instead.
 | control | Same as up but one line down instead.
Left | none | Moves the focus to the parent of the currently focused node and selects it if the current node does not have children or is already collapsed. Otherwise the focus is not changed but the node will be collapsed. In both cases the focused node will be the only selected node afterwards. Modifications in grid mode: If extended focus is enabled (see toExtendedFocus in Options) then the behavior changes to a simple navigation to the previous visible column.
 | shift | In opposition to the none-modifier case the expand state of the node does not matter nor is it changed. The focus is advanced in any case and sibling nodes as well as the parent node are added to the current selection.
 | control | The tree window is scrolled to the left by the amount pixel given in the indent property.
Right | none | Moves the focus to the first child node of the currently focused node and selects it if the current node has children and is already expanded. Otherwise the focus is not changed but the node will be expanded. In both cases the focused node will be the only selected node afterwards. Modifications in grid mode: If extended focus is enabled (see toExtendedFocus in Options) then the behavior changes to a simple navigation to the next visible column.
 | shift | Same as the none-modifier case but the selection is extended with the first child node.
 | control | Same as left but the tree window is scrolled to the right.
Back | none | Moves the focus to the parent of the currently focused node and selects it as only node.
 | shift | Modifier keys have no meaning for this case.
 | control | Modifier keys have no meaning for this case.
Tabulator | none | The tabulator key is a bit special because it is only used with grid extensions to advance from cell to cell. Without modifier the focus changes from left to right and from top to bottom. It is necessary that you enable TAB support by setting property WantTabs to True.
 | shift | Same as without modifier key but the focus advances backwards, from right to left and bottom to top.
 | control | This modifier has no effect.
F1 | none | This function key triggers node specific help support. Via the OnGetHelp event the application is queried for a help context to show.
 | shift | This modifier has no effect.
 | control | This modifier has no effect.
F2 | none | This function key turns the tree view into edit mode if there is a focused node, the tree is editable and the application allows to edit the node.
 | shift | This modifier has no effect.
 | control | This modifier has no effect.
+ (add) | none | Expands the currently focused node.
 | shift | This modifier alone has no effect, but see the following comment.
 | control | Pressing the control key together with + will start auto sizing all columns in the tree. If the shift key is also pressed then the whole tree is expanded instead.
- (subtract) | none | Collapses the currently focused node.
 | shift | This modifier alone has no effect, but see the following comment.
 | control | Pressing the control key together with - will restore all columns to their previous widths. If the shift key is also pressed then the whole tree is collapsed instead.
* (multiply) | none | Expands the currently focused node and all its children and grand children.
 | shift | This modifier has no effect.
 | control | This modifier has no effect.
/ (divide) | none | Collapses the currently focused node and all its children and grand children.
 | shift | This modifier has no effect.
 | control | This modifier has no effect.
Escape | none | Stops actions which require a specific state in the tree like editing, mouse selecting, drag'n drop etc.
 | shift | This modifier has no effect.
 | control | This modifier has no effect.
Space | none | Used only if check support is enabled (see toCheckSupport in Options) and the currently focused node has got a check type other than ctNone. In this case the space key switches the check state.
 | shift | This modifier has no effect.
 | control | This modifier has no effect.
Apps (menu key) | none | Similar to F1 triggers the apps key popup menus on a node by node basis. For more information see also the event OnGetPopupMenu.
 | shift | This modifier has no effect.
 | control | This modifier has no effect.
A | none | This is the only "normal" character used as hotkey so far. It has only an effect together with the control key.
 | shift | This modifier has no effect.
 | control | Pressing 'A' together with the control key will select all currently visible nodes in the tree view.

Incremental search

Incremental search is a commonly used term to describe the effect that the user types some letters while the tree view has the focus and the control will try to locate a node whose caption matches the letters. Because Virtual Treeview does not know what caption a node has it cannot compare the incoming letters and uses therefore again an event to ask the application to do the comparison. By using the lesser of both string lengths and a partial comparison in this event the tree will be able to select also partial matches. Note: Virtual Treeview tries to mimic the UI of the system list view and system tree view as close as possible and uses therefore two modes when searching. One is used when there is no key or only one key pressed and the new key is the same as the already recorded one. In this case the search always starts with the next node and only nodes which match the single new key will be found. This allows to quickly cycle through a number of nodes all matching/beginning with the same letter. The other mode is normal linear search where all key presses are recorded and compared with the nodes in the tree. Whenever the application considers a node as match (it even hasn't to have a caption the same as the search string) this node is returned as new target and focused.

Group

Inner fundamentals

Links
Inner fundamentals
What do you think about this topic? Send feedback!


Drag'n drop and clipboard handling
Inner fundamentals | Send Feedback

Virtual Treeview behaves also well when it comes to data exchange with other applications or structural manipulations using the mouse. In both cases the prerred method is using OLE. Read here why and what's behind it.

Description

One important aspect for system integration under Windows is the ability to use OLE (object linking and embedding) to transfer data from and to other applications. Unfortunately this is a dark chapter in Delphi's feature list because there has never been support for either OLE drag'n drop or OLE clipboard handling (until Delphi 6 at least). Instead a proprietary mechanism had been invented which is not at all compatible with the rest of the system.

Drag'n drop

Virtual Treeview supports both kinds of drag'n drop (VCL and OLE) and tries to present a single interface to the application. This means that those (already existing) events which can be reused are used in the process (like OnStartDrag and OnEndDrag). Other events however differ significantly from the VCL variants because of the additional information available during OLE drag'n drop. These events are OnDragOver and OnDragDrop. Read there for a detail description of the parameters. Since in a VCL drag'n drop operation the source is always known as being a VCL control it is relatively easy to determine the participants. This however is not very data-oriented and OLE drag'n drop focuses exactly on this issue. In such an operation a so called data object is passed to the receiver which is a COM interface (IDataObject) and can be used to retrieve the dragged data in various formats.

To accept OLE drag'n drop an application has basically the same steps to perform as always used for VCL drag'n drop plus some extra work to handle the different data coming in during the drop event. Usually there is an event handler for OnDragOver which tells not only whether dropping is allowed on a particular position but also which effect should then take place. Allowed effects are copy, move and link. This is the first new aspect which is not possible with VCL drag'n drop. As always the real work must be done in the drop event and Virtual Treeview supports processing its own native data format (which is a stream of chunks to represent the tree structure) by a special method called ProcessDrop. Note that this method can only be used for the internal format and does not process other formats like text or images. From this information you can easily conclude that a lot of other formats can be passed around with the mighty OLE drag'n drop mechanism. It is however out of the scope of this help to describe how this mechanism works or to give an overview of possible data formats. Please read the Win32 SDK documentation as it comes with your Delphi copy or browse the MSDN online documents at MSDN online for a detailed description. The only interesting aspect you should keep in mind at the moment is that the data object used in a drag'n drop operation is the same as used for OLE clipboard data. Hence you can share code for handling of both and you don't have to learn different ways or data structures.

Step by step

The typical approach to determine how to handle data during the drop event in Virtual Treeview is as follows:

  • If the given data object is nil then the source of the drag operation is the VCL and you have to figure out yourself what and how to process the drop. The other parameters contain also mostly useful data (Effects is set to default values however). Read more details at OnDragDrop.
  • With a valid data object you know OLE data is being passed. Check the source parameter to learn whether a Virtual Treeview is the source or something else. Although further processing can successfully be done without this information it is still useful if you want to optimize data transition and source as well as target tree are in the same process (in which case source memory can be accessed from the target tree).
  • Loop through the given formats list to find a format you can handle. Since it is recommended to sort this list so that preferred formats come first you can simply accept the first format you find in the array which you are able to handle. With a Virtual Treeview as source usually already the second entry represents the native format (the first is a special reference format which is not useful for an application) and can be passed to ProcessDrop. The native format is registered as CF_VIRTUALTREE while other typical formats include CF_TEXT or CF_HDROP. Note that, because Virtual Treeview is already OLE drag'n drop aware, you do not need to register its window for accepting file drops. If the user drops files onto a Virtual Treeview window you will get the CF_HDROP format in the format list passed to OnDragDrop.
  • Depending on the data formats you might want to take various actions. For the native tree format you will likely want ProcessDrop to handle the data. If you made sure source and target tree are in the same application (process) you can even omit the entire handling and simply call MoveTo or CopyTo.
  • If you do not call any tree method or handle the dropped data somehow yourself nothing will happen. No data will be added.
Group

Inner fundamentals

Links
Inner fundamentals
What do you think about this topic? Send feedback!


Additional information
Inner fundamentals | Send Feedback

This chapter collects everything else which is important or very helpful to know but which does not justify an own chapter.

Description
  • Special care has been taken to wrap every event call by a DoXXX method (e.g. for OnBeforeItem paint there is a protected DoBeforeItemPaint method) which is always virtual to allow descendants to override it and intercept so calls to events regardless whether there is actually an event handler assigned or not.
  • During a locked update stage (entered by BeginUpdate) there will be no updates of the tree nor the selection. If you change the selection in such a stage then it is temporarily accumulated and applied if, during an EndUpdate call, the inner update counter reaches zero.

Borland C++ Builder:

  • Define the constant NO_WIN32_LEAN_AND_MEAN in your environment/project options to avoid problems with undefined interfaces.
  • The automatic conversion process from Delphi source code to C++ code has unfortunately some bugs. Most of them could be solved by rearranging the Delphi code, but one problem still remains and must be solved manually. The translator does not automatically consider default parameters in functions. The parameters are correctly converted but without the default value. Usually the problem will appear when you try to compile and there is a call of the function with fewer than expected parameters.
Group

Inner fundamentals

Links
Inner fundamentals
What do you think about this topic? Send feedback!


Virtual Treeview step by step
Send Feedback

Often a simple step by step tutorial gets you much faster started than a long list of features and possibilities. This topic describes the basic usage on the basis of a simple project.

Description
Written by Sven H. (  h.sven@gmx.at), Revision and translation by Mike Lischke (  public@delphi-gems.com)

At the time when this description was created I had not much Delphi knowledge and had not yet read through any of my two Delphi books. But I was quite impatient and wanted to try out what is possible. Although I have some knowledge about object oriented programming and C++ (I have learned something about it during my studies), this project was my first attempt to program in Delphi. It could be that I have not provided the most elegant solutions und I am always open for improvement suggestions. But all principles I demonstrated here do work (at least for me J). I have implemented them in my first project this way. This guidance is made in the first place for programmers who are not yet familiar with Virtual Treeview and will so perhaps have an easier start. If you have questions or suggestions regarding this guidance please forward them to [image] h.sven@gmx.at. For other questions you can contact Mike and use the dedicated newsgroup, respectively.

I am neither a Virtual Treeview nor a Delphi expert and have collected all the answers (with the help of Mike) with quite some effort. In order to avoid the afterwards relatively simple things to become problematic I have written this short guidance. The real problems will appear later.

© 2001 The parts in this guidance beyond the text from the online help are copyrighted. Every publication requires my admission.

Have fun with it, Sven.

Preparations

Before we start some preparations are necessary:

  • Place a Virtual Treeview component on a form.
  • Change the properties as you like.
  • A record for node data must be defined.

In order to store the own node data some musing is important. How shall the record look like?

a) All nodes in the tree are equal

In this case a simple record defines the necessary data structure, e.g.:

type
  rTreeData = record
  Text: WideString;
  URL: string[255];
  CRC: LongInt;
  isOpened: Boolean;
  ImageIndex: Integer;
end;

b) There are different nodes in the tree (e.g. folders that can have sub nodes)

I will follow this case because my tree will hold folders, which can in turn get own nodes. Since I intent to store created trees in a file in order to restore them later further deliberations are necessary: Suppose a folder node has only a name and a leaf node has a name and a text info field. Potentially, I also want to store a second kind of leaf node, which will for instance have a number instead of the text field. The problem in the context of reading data form a stream is that I must know which data is stored in which order in the stream, because I have to read it in exactly the same order again. Hence I have to determine from the very first information in the stream what information will follow. For instance there is a node name, but then? Is there nothing more or another text information (string) or even an integer value? I think the point is clear. The first data, which I read, has to carry this information.

These deliberations have leaded me to the following solution: I save now in the stream [label]->[name]->[following data]

0 -> 'Folder'

1 -> 'Info node' -> 'Blabla'

2 -> 'Number node' -> 123

I know from the stream I always read an integer value first. Depending whether this is 0, 1 or 2 I have to read - now known - following values. Now let us consider the record.

type
  rTreeData = record
  Typ: Integer;
  Name: string[255];
  pNodeData: Pointer;
end;

Hey, there is suddenly a pointer in the record. Well, here are some additional comments:

  1. Typ is an integer value, from which I can determine what kind of node this is, in my example 1, 2 or 3.
  2. Name is the name of the node. This will be needed relatively often because it is also seen as part of the tree and I want to access this information easily (man, I am lazy).
  3. The pointer allows (similar to the data property of the tree) a record or even better a class instance to connect.

Now I still have the freedom to define a base class of node. It contains all properties and methods, which all classes will share. And from this I can derive proper sub classes (e.g. text nodes, value nodes etc.). An additional advantage of this record is its fixed size. Hence you can always return the same size in case the tree asks for it (see also property NodeDataSize), but more about that later.

Just one remark: If you don't want to use classes you can also simply define 3 records, which define as first element, a type and which react differently depending on this type.

Alternative solution:

Okay, I admit it. It would of course also be possible to write the type into the stream and read it from the stream separately without saving it as part of the record. The type of the node class is indirectly known because you can ask a class which class name it has (see e.g. class function ClassName) and the class knows it too. So I shall store a node, okay. I pass on the stream to the Node.SaveToFile(Stream) method, which writes, depending on which node class we actually have, automatically the value 1, 2 or 3 into the stream.

During load from stream I read first the value 1, 2 or 3 and decide what class is meant. Then I create an instance of this class and call its LoadFromFile method. Well, this solution is my most preferred and before another one enters my brain I will implement it (Note: in step 5 I will change something).

So I do following:

As you can see from the declaration of the internal node of Virtual Tree

TVirtualNode = packed record
  Index, // index of node with regard to its parent
  ChildCount: Cardinal; // number of child nodes
  ...
  ...
  LastChild: PVirtualNode; // link to the node's last child...
  Data: record end; // this is a placeholder, each node gets extra
  // data determined by NodeDataSize
end;

there is another record at the end of the record structure. Which exact structure this is will be determined indirectly.

type
  rTreeData = record
    Name: string[255]; // the identifier of the node
    ImageIndex: Integer; // the image index of the node
    pNodeData: Pointer;
  end;

Let the above record be the structure. The Virtual Treeview does not really know this structure, but it knows how much space must be reserved. We tell it by

myVirtualTree.NodeDataSize := SizeOf(rTreeData);

Note, even if you want to store only one value, e.g. a pointer as node data, simply return the size, which should be reserved.

Implementation

An empty tree

I begin with an empty tree (no top level nodes are created at design time):

  • Either an existing tree is read from a file or
  • A top-level node is created.

Before a node can be created you have to determine the size of the actual node data. According to the docs there are three opportunities:

  • In the object inspector
  • In the OnGetNodeDataSize - event or
  • During creation of the form

I decide to use the last variant and will now do the following during form creation:

procedure TMyForm.FormCreate(Sender: TObject);

var
  Node: PVirtualNode;

begin
  ...
  // create tree
  MyTree.NodeDataSize := SizeOf(TTreeData);
  if MyForm.filename = '' then begin // if there is no tree to load
    // create tree with top level node
    Node := BookmarkForm.BookmarkTree.AddChild(nil); // adds a top level node
  end
  else
  begin
    // load tree
    ....
  end;
  ....
end;

Data for the node

After the call of AddChild data can be assigned. For this a pointer to the self-defined record will be declared and via the function GetNodeData connected with the correct address. By using this pointer we can now access the elements of the record and assign them values.

var
  ...
  NodeData: ^rTreeData;

begin
  ...
  // determine data for node
  NodeData := BookmarkForm.BookmarkTree.GetNodeData(Node);
  NodeData.Name := 'new project';
  NodeData.ImageIndex := 0;
  ...

Show the node name

The name of the node shall now appear as node identification in the tree. All data about the node as well as the name are unknown to the treeview and it has to query for them.

Every time the identification of the node is needed an event OnGetText will be triggered. In the event handler we return the name of the node in the variable Text. Nothing more is needed.

procedure TBookmarkForm.BookmarkTreeGetText(Sender: TBaseVirtualTree;
  Node: PVirtualNode; Column: Integer; TextType: TVSTTextType; var Text: WideString);

var
  NodeData: ^rTreeData;

begin
  NodeData := Sender.GetNodeData(Node);
  // return identifier of the node
  Text := NodeData.Name;
end;

The icon for the node

Because I like it colorful I want also to provide an icon for the top-level node. Following steps are necessary to accomplish that:

  • A TImageList must be placed onto the form and filled with images
  • The property Images of the VirtualTreeview gets assigned this image list
  • Implement an OnGetImageIndex event handler.

In the event OnGetImageIndex you can the index be determine which determines in turn which image form the list must be shown.

Because the method is also called for the state icons but I do not want yet to state icons (but I already have assigned and image list to the property StateImages) the value for this case (Kind à ikState) is -1.

procedure TBookmarkForm.BookmarkTreeGetImageIndex(Sender: TBaseVirtualTree;
  Node: PVirtualNode; Kind: TVTImageKind; Column: Integer; var Index: Integer);

var
  NodeData: ^rTreeData;

begin
  NodeData := Sender.GetNodeData(Node);
  case Kind of
    ikState: // for the case the state icon has been requested
      Index := -1;
    ikNormal, ikSelected: // normal or the selected icon is required
      Index := NodeData.ImageIndex;
  end;
end;

Depending on whether a node is selected or not, different icons shall be shown (see step 6).

Only one node class in the record

Since I want to avoid mixing data in the record and later then data in the node class I decided to change this record

type
  TTreeData = record
    Name: string[255]; // the identifier of the node
    ImageIndex: Integer; // the image index of the node
    pNodeData: Pointer;
end;

into a record which contains only one pointer to a node class. I declare therefore first a node class

TBasicNodeData = class
  ...
end;

and then a structure of the form:

rTreeData = record
  BasicND: TBasicNodeData;
end;

This record always needs 4 bytes for the pointer to the class.

Particular attention is to direct to the event OnGetText. This event will already be called during creation of the node with Tree.AddChild(nil) in order to determine the space the new node's caption will need (but only if no columns were created). At this point however the node class could not yet be initialised (no constructor call yet). Hence for this case

if NodeD.BasicND = nil then
  Text := ''

must be returned or you wrap the entire initialization into a BeginUpdate/EndUpdate block and initialized the nodes before EndUpdate is called (e.g. by ValidateNode(Node)).*

Without this provision an access violation would be the result.

Example class declaration

unit TreeData;

interface

//===========================================

type
  // declare common node class
  TBasicNodeData = class
  protected
    cName: ShortString;
    cImageIndex: Integer;
  public
    constructor Create; overload;
    constructor Create(vName: ShortString; vIIndex: Integer = 0); overload;

    property Name: ShortString read cName write cName;
    property ImageIndex: Integer read cImageIndex write cImageIndex;
  end;

  // declare new structure for node data
  rTreeData = record
    BasicND: TBasicNodeData;
  end;

implementation

constructor TBasicNodeData.Create;
begin
   { not necessary
   cName := '';
   cImageIndex := 0;
   }
end;

constructor TBasicNodeData.Create(vName: ShortString; vIIndex: Integer = 0);
begin
  cName := vName;
  cImageIndex := vIIndex;
end;

end.

Example creation of the tree

// Tree will be created when the form is created.
procedure TMyForm.FormCreate(Sender: TObject);

var
   Node: PVirtualNode;
   NodeD: ^rTreeData;

begin
  ....
  // create tree
  MyTree.NodeDataSize := SizeOf(rTreeData);
  if MainControlForm.filename = '' then
  begin
    // create tree with top level node
    Node := MyTree.AddChild(nil); // adds a node to the root of the tree
    // assign data for this node
    NodeD := MyTree.GetNodeData(Node);
    NodeD.BasicND := TBasicNodeData.Create('new project');
  end
  else
  begin
    // load tree
  end;
  ...
end;

// returns the text (the identification) of the node
procedure TMyForm.MyTreeGetText(Sender: TBaseVirtualTree; Node: PVirtualNode; Column: Integer;
  TextType: TVSTTextType; var Text: WideString);

var
   NodeD: ^rTreeData;

begin
  NodeD := Sender.GetNodeData(Node);

  // return the identifier of the node
  if NodeD.BasicND = nil then
    Text := ''
  else
    Text := NodeD.BasicND.Name;
end;

// returns the index for image display
procedure TMyForm.MyTreeGetImageIndex(Sender: TBaseVirtualTree;
   Node: PVirtualNode; Kind: TVTImageKind; Column: Integer; var Index: Integer);

var
   NodeD: ^rTreeData;

begin
  NodeD := Sender.GetNodeData(Node);

  case Kind of
    ikState: // for the case the state index has been requested
      Index := -1;
    ikNormal, ikSelected: // normal icon case
      Index := NodeD.BasicND.ImageIndex;
   end;
end;

Icons for selected nodes

If a node is selected a different symbol shall be shown. Therefore I implement a new method

  function GetImageIndex(focus: Boolean): Integer; virtual;

which gets the normal image index or the index for focused nodes depending on whether the node has the focus or not.

Call:

   Index := NodeD.BasicND.GetImageIndex(Node = Sender.FocusedNode);

Implementation of the method:

function TBasicNodeData.GetImageIndex(focus: Boolean): Integer;

begin
  if focus then
    Result := cImageIndexFocus
  else
    Result := cImageIndex;
end;

where cImageIndex has always the normal index and cImageIndex Focus the index for focused nodes. I assume in this case that the selected index is always one more than the normal index. To ensure this, the constructor is changed this way:

constructor TBasicNodeData.Create(vName: ShortString; vIIndex: Integer = 0);

begin
  cName := vName;
  cImageIndex := vIIndex;
  cImageIndexFocus := vIIndex + 1;
end;

Adding and deleting nodes

In order to implement and test more functions I want finally an opportunity to create the tree. By using a context menu is shall be possible to add and remove nodes.

Hence I define a popup menu with two entries: [Add] and [Remove]. To have the clicked node getting the focus the option voRightClickSelect must be set to True.

So if Add has been chosen a child node will be created for the focused node:

procedure TMyForm.addClick (Sender: TObject);

var
  Node: PVirtualNode;
  NodeD: ^rTreeData;

begin
  // Ok, a node must be added.
  Node := MyTree.AddChild(MyTree.FocusedNode); // adds a node as the last child
  // determine data of node
  NodeD := MyTree.GetNodeData(Node);
  NodeD.BasicND := TBasicNodeData.Create('Child');
end;

Caution: What must be done if no node has the focus?

-> e.g. insert the new node as child of a top level nodes.

  if BookmarkTree.FocusedNode = nil then
  begin
    // insert as child of the first top level node
    Node := BookmarkTree.AddChild(BookmarkTree.RootNode.FirstChild);
    // determine data for node
    NodeD := BookmarkTree.GetNodeData(Node);
    NodeD.BasicND := TFolderNodeData.Create('new folder');
  end
  else
  begin
    // Ok, a new node must be added.
    Node := BookmarkTree.AddChild(BookmarkTree.FocusedNode);
    // determine data of the node
    NodeD := BookmarkTree.GetNodeData(Node);
    NodeD.BasicND := TFolderNodeData.Create('new folder');
  end;

If the node with the focus must be deleted the following happens:

procedure TMyForm.delClick (Sender: TObject);

begin
  // The focused node should be removed. The top level must not be deleted however.
  if MyTree.FocusedNode = nil then
    MessageDlg('There was no node selected.', mtInformation, [mbOk], 0)
  else
    // Note: RootNode is the internal (hidden) root node and parent of all top
    // level nodes. To determine whether a node is a top level node you also use
    // GetNodeLevel which returns 0 for top level nodes.
  if MyTree.FocusedNode.Parent = MyTree.RootNode then
    MessageDlg('The project node must not be deleted.', mtInformation, [mbOk], 0)
  else
    MyTree.DeleteNode(MyTree.FocusedNode);
end;

I want to prevent, however, that the top-level node gets deleted. Hence I check with the comparison MyTree.FocusedNode.Parent = MyTree.RootNode whether the focused node is not a top-level node. Here you have to consider that the property RootNode returns the (hidden) internal root node, which is the common parent of all top-level nodes.

While we are at deleting nodes:

Every data of the record is automatically free as soon as this is required. In this case it is not enough, however, to free the memory, which holds the pointer to the class (object instance), but it is also necessary to free the memory, which is allocated by the class itself. This happens by calling the destructor of the class in the OnFreeNode event:

procedure TMyForm.MyTreeFreeNode(Sender: TBaseVirtualTree; Node: PVirtualNode);

begin
  // Free here the node data (Note: type PtreeData = ^rTreeData).
  PTreeData(Sender.GetNodeData(Node)).BasicND.Free;
end;

Adding folder and leafs

Now I am ready to add folders to the tree as well as final nodes, which do not have children. For this I derive two new node classes from the base class.

TFolderNodeData = class(TBasicNodeData)
TItemNodeData = class(TBasicNodeData)

Depending on which kind of node the user wants to create using the context menu I store a particular class in the node record.

NodeD.BasicND := TFolderNodeData.Create('new folder');
NodeD.BasicND := TItemNodeData.Create('new node');

These classes contain a new property ChildrenAllowed. Based on this property you can now distinct whether the node with the focus may get children (folder) or not (items).

Storing the tree

Now I can finally implement storing the tree. I have already thought a lot about this step. Let us see if this was worthwhile.

Again a quote from Preparations:

I want to store a node, okay. I hand over the stream to the MyNodeClass.SaveToFile method and this method writes depending upon which node class it actually is automatically the value 1, 2 or 3 as a kind of class ID into the stream (alternatively you can use an enumeration type).

During load I read first the value 1, 2 or 3 from the stream and decide based on it which class we deal with. Then I create an instance of this class and call its method LoadFromFile.

Hint:

It would also be possible to store the class name instead of the ID for the class. During read and creation of the class one could use class references and virtual constructors and save so the case-statement as I did in the OnLoadNode event, to decide which class instance must be created (example see Delphi 5, written by Elmar Warken, Addison-Wesley, chapter 4.3.3, page 439).

Before you can read something it must be written first. Hence I will first implement the necessary procedures to store the tree. Since we care ourselves that the identification of the node gets saved the option toSaveCaption can be removed from StringOptions. This way data is not stored twice.

For saving the tree the procedure

procedure TBaseVirtualTree.SaveToFile(const FileName: TFileName);

is called. Thereby the structure of the tree is automatically stored. In order to save our additional data there is an event OnSaveNode where we can simply store our data into the provided stream.

property OnSaveNode: TVTSaveNodeEvent read FOnSaveNode write FOnSaveNode;

If OnSaveNode is triggered then the method SaveNode of the particular node class will be called:

procedure TMyForm.MyTreeSaveNode(Sender: TBaseVirtualTree; Node: PVirtualNode; Stream: TStream);

begin
  PTreeData(Sender.GetNodeData(Node)).BasicND.SaveToFile(Stream);
end;

In the SaveNode method of the class fields like node name, image index etc. are stored in the tree:

procedure TBasicNodeData.SaveNode(Stream: TStream);

var
  size: Integer;

begin
  // save type of the node
  Stream.Write(Art, SizeOf(Art));

  // store cName
  Size := Length(cName) + 1; // include terminating #0
  Stream.Write(Size, SizeOf(Size)); // store length of the string
  Stream.Write(PChar(cName)^, Size); // now the string itself

  // store cImageIndex
  Stream.Write(cImageIndex, SizeOf(cImageIndex));

  // store cImageIndexFocus
  Stream.Write(cImageIndexFocus, SizeOf(cImageIndexFocus));

  // store cChildrenAllowed
  Stream.Write(cChildrenAllowed, SizeOf(cChildrenAllowed));
end;

Now we can the tree we save also load again. This process could look like:

try
  // load tree
  MyTree.LoadFromFile(MainControlForm.Filename);
except
  on E: Exception do
  begin
    Application.MessageBox(PChar(E.Message), PChar('Error while loading.'), MB_OK);
    MainControlForm.Filename := '';

    // create tree with top level node (since loading failed)
    Node := MyTree.AddChild(nil);
    NodeD := MyTree.GetNodeData(Node);
    NodeD.BasicND := TBasicNodeData.Create('new project');
  end;
end;

By the call of LoadFromFile the event OnLoadNode will be triggered and consequently the method LoadNode:

procedure TBasicNodeData.LoadNode(Stream: TStream);

var
  Size: Integer;
  StrBuffer: PChar;

begin
  // load cName
  Stream.Read(Size, SizeOf(Size)); // length of the string

  StrBuffer := AllocMem(Size); // get temporary memory
  Stream.Read(StrBuffer^, Size); // read the string
  cName := StrBuffer;
  FreeMem(StrBuffer);
  // Alternatively you can simply use:
  // SetLength(cName, Size);
  // Stream.Read(PChar(cName)^, Size);

  // load cImageIndex
  Stream.Read(cImageIndex, SizeOf(cImageIndex));

  // load cImageIndexFocus
  Stream.Read(cImageIndexFocus, SizeOf(cImageIndexFocus));

  // load cChildrenAllowed
  Stream.Read(cChildrenAllowed, SizeOf(cChildrenAllowed));
end;

Two columns in the treeview

Now I want to show two columns in the treeview. Therefore I set the new properties of the tree in the object inspector.

By using Header.Columns you can create the desired columns. After that, you only have to set Header.Options.hoVisible to True and the columns will appear in the treeview.

After you have set all necessary options you can give now the text and the icon for the particular column, respectively. This happens in the already existing event handlers OnGetText and OnGetImageIndex where now also the given column index must be taken into account.

procedure TMyForm.MyTreeGetText(Sender: TBaseVirtualTree; Node: PVirtualNode;
  Column: Integer; TextType: TVSTTextType; var Text: WideString);

var
  NodeD: ^rTreeData;

begin
  NodeD := Sender.GetNodeData(Node);

  // return the the identifier of the node
  if NodeD.BasicND = nil then
    Text := ''
  else
  begin
    case Column of
      -1,
      0: // main column, -1 if columns are hidden, 0 if they are shown
        Text := NodeD.BasicND.Name;
      1:
        Text := 'This text appears in column 2.';
    end;
  end;
end;

procedure TMyForm.MyTreeGetImageIndex(Sender: TBaseVirtualTree; Node: PVirtualNode;
  Kind: TVTImageKind; Column: Integer; var Index: Integer);

var
  NodeD: ^rTreeData;

begin
  NodeD := Sender.GetNodeData(Node);

  if Column = 0 then // icons only in the first column
    case Kind of
      ikState:
        Index := -1;
      ikNormal, ikSelected:
        Index := NodeD.BasicND.GetImageIndex(Node = Sender.FocusedNode);
      ikOverlay: // e.g. to mark a node whose content changed,
        // Note: don't forget to call ImageList.Overlay for the image.
        if NodeD.BasicND.ImageIndex = 4 then
          Index := 6;
    end;
end;

Accessing the columns

I want to demonstrate the access to the columns of a TVirtualStringTrees based on an example. In order to store global options, as in Point 2.12 I want to know the width of a column. This information is updated every time an OnColumnResize event is triggered:

procedure TBookmarkForm.BookmarkTreeColumnResize(Sender: TBaseVirtualTree; Column: Integer);

var
  NodeD: PTreeData;

begin
  NodeD := Sender.GetNodeData(Sender.RootNode.FirstChild);

  // Keep the new size of the column in the project node.
  TProjectNodeData(NodeD.BasicND).SetHColumnsWidth(
    TVirtualStringTree(Sender).Header.Columns.Items[Column].Width,Column);
end;

The exciting part is the type casting of the sender object. In TBaseVirtualTree the header property is protected and only after conversion (casting) to TVirtualTree it becomes accessible.

Global tree options

Global options like the sizes of the columns, which are adjusted in the project, will be stored as properties of the top-level node. It contains so all project related options.

In order to avoid that all derived classes inherit these fields the top-level node class will be build from a new project node class, which will be derived from the base node class.

The new hierarchy looks now so:

» Base node class... unites the properties of all nodes

» Project node class... enriches the base with management of project related options

» Folder node classes... enriches the base with default properties for all leaf nodes

» Leaf node class... the actual node class (special properties)

Since this involves already very application specific program details I want only make some notes.

The base node class has the ability to store node data. These methods must be declared as virtual and will be overridden in the project node class to allow saving the project data.

Well, now I am ready to work with VirtualTreeview. It will become interesting later again when I will try to drag data from other applications to the tree. But this is a different story...


A little code repository by John Knipper
Send Feedback

This is just written by me John Knipper. Don't bother Mike if something is wrong here. I am not related to Mikes company in any way. I'm just doing that because I believe so much in his component, that I would not give you the possibility to miss the opportunity to use it. You won't regret it. I'm not going to enumerate all the nice advantage it has on it's competitors. Because it has so many. The biggest I see is the speed improvement, the multi columns, the automatic allocation of node data and so many more.

You will see that the strong points of the Virtual tree view are not obvious. But you can believe me, this is the best Treeview ever. You will be kinda lost at the beginning, but it's only a matter of forgetting what you know about trees. This is the right way to do it. You will ask yourself why it has not be done like that at the beginning.

Q: How to initially fill the tree?

A: The only information VT needs at startup is the number of root nodes. All other information is queried from the application when they are needed (text, node height etc.). Hence all to do is to set property RootNodeCount to the number of nodes required.

E:

VirtualStringTree1.RootNodeCount := 5; // is adding 5 nodes at the root of your tree

To initialize the nodes, use the OnInitNode event

Q: How to add a node to the tree?

A: The technique is very similar to the one you used with the standard tree view. The only difference is that you fill the node's data after the insertion of the node

E:

var
  Node: PVirtualNode;
  Node := VirtualStringTree1.AddChild(nil); // Adds a node to the root of the Tree.
  Node := VirtualStringTree1.AddChild(ParentNode); // Adds a node as the last child of the given node.
  Node := VirtualStringTree1.InsertNode(Node, amInsertBefore); // Inserts a node as sibling just before the given node.

Alternatively you can use the OnInitChildren event. This event is used when a node is marked as having child nodes and these child nodes are somehow about to be accessed (like iteration, expanding, display etc.).

Q: Where is gone all the information about my node, like text for example ?

A: The text property is gone. You don't need it anymore. The basic idea behind Virtual Treeview is to leave all data management to the application which knows much better how to do this than the tree (see also Related Topics). Every node knows which is its parent and which are their children. Information like the text property, the new hint property, the ImageIndex property and everything else should be stored in the node's data. The tree will ask for it on demand, e.g. when it needs to show a certain node etc.

E:

TTreeData = record
  Text: WideString;
  URL: String[255];
  CRC: LongInt;
  isOpened: Boolean;
  ImageIndex: Integer;
end;
PTreeData = ^TTreeData; // This is a node example.

Q: When should I allocate memory for the node data?

A: Never, the VT does it for you. The only thing you have to do is to tell the VT how much memory you need for your node data.

E:

VirtualStringTree1.NodeDataSize := SizeOf(TTreeData); // The nodes are reinitialized when you change that value.

If you know how much memory it will take, you can use the NodeDataSize property of the VT and initialize it directly at design time.

Q: When should I fill my nodes data?

A: The ideal place for this is the OnInitNode event.

E:

procedure TMainForm.VTInitNode(Sender: TBaseVirtualTree; ParentNode, Node: PVirtualNode; var InitialStates: TVirtualNodeInitStates);

var
  Level: Integer;
  Data,
  ParentData: PMyNodeData;
  Count: Integer;

begin
  with Sender do
  begin
    Data := GetNodeData(Node);
    ParentData := GetNodeData(ParentNode);
    if Assigned(ParentData) then Level := ParentData.Level + 1
                            else Level := 0;

    case FFillMode of
      0: // fill tree with a specific amount of nodes and levels
        begin
          // determine new node level
          if Level < (LevelsUpDown.Position - 1) then Include(InitialStates, ivsHasChildren);
        end;
      1: // fill tree with one million root nodes (nothing special to do here)
        ;
      2: // fill tree with a certain amount of root nodes (they always get fixed text to test sorting)
        begin
          Data.FixedText := True;
          Data.NewText := Format('Node: %d', [Node.Index]);
        end;
      3: // fill tree with a certain amount of root nodes and a random amount of child nodes
         // up to an absolute amount of ~1 million nodes and with at most 10 levels
        begin
          if Assigned(ParentNode) then Count := ParentNode.ChildCount
                                  else Count := TVirtualStringTree(Sender).RootNodeCount;
          if (Level < 15) and
             (Random(Count) < (Count div 2)) and
             (FCurrentCount < 1000000) then Include(InitialStates, ivsHasChildren);
        end;
    end;

    Data.Level := Level;
    Node.CheckType := ctTriStateCheckBox;
    case Level of
      1:
        if Random(5) < 2 then Include(InitialStates, ivsDisabled);
    end;
  end;
end;

Q: How do I access a node's data?

A: Use GetNodeData(Node) to get a pointer on your nodes data

E: Either use

with PTreeData(VirtualStringTree1.GetNodeData(Node))^ do
begin
  Text:= ChangeFileExt(ExtractFileName(FileName), '');
  ImageIndex:= 1; //it's an example ;)
end;

Or in that case you can use

var
  NodeData: PTreeData;

begin
  NodeData := VirtualStringTree1.GetNodeData(Node);
  NodeData.Text := 'a test';
  NodeData.ImageIndex := 1;
  ...

Q: What else can I do with that nodes data pointer?

A: Usually you already have all data in your own structure (database, file etc.) so you need only to supply an identifier or a pointer into your own structure. This prevents your application from doubling the data just for display which in turn saves a remarkable amount of memory.

E: You could connect a TBookmark to the data. To display the name of your customer in a VT :

procedure TFRM_WWW_main.vFavTreeGetText(Sender: TBaseVirtualTree; Node: PVirtualNode; Column: Integer; TextType: TVSTTextType; var Text: WideString);

begin
  // Column is -1 if the header is hidden or no columns are defined
  if Column < 0 then Exit;
  if TVirtualStringTree(Sender).Header.Columns[Column].Text = 'Customer Name' then
  begin
    Table.GotoBookmark(TBookmark(Sender.GetNodeData(Node)));
    Text := Table.FieldByName('Name').asString;
  end;
end;

Q: A move of a scrollbar's thumb doesn't directly scroll the tree. What to do?

A:

VirtualStringTree1.VertScrollBar.Track := True;

Q: How can I display text for other columns?

A: In the OnGetText event, check the column index.

E:

procedure TFRM_WWW_main.vFavTreeGetText(Sender: TBaseVirtualTree; Node: PVirtualNode; Column: Integer; TextType: TVSTTextType; var Text: WideString);

begin
  case Column of
    -1, // main column, -1 if columns are hidden, 0 if they are shown
    0:
      Text := 'Text of column 1';
    1:
      Text := 'Text of column 2';
    2:
      Text := 'Text of column 3';
  end;
end;

Q: When do I tell which icon to use?

A: It's the same principle as for the OnGetText event. With the exception that you must tell which icon to use in 3 cases: the normal icon, the selected icon and the state icon.

E:

procedure TFRM_WWW_main.vFavTreeGetImageIndex(Sender: TBaseVirtualTree; Node: PVirtualNode; Kind: TVTImageKind; Column: Integer; var Index: Integer);

begin
  if Kind = ikState then
  begin
    Index := 2;
  end
  else
    if (Kind = ikNormal) or (Kind = ikSelected) then
    begin
      Index := 1;
    end;
end;

or just use

procedure TFRM_WWW_main.vFavTreeGetImageIndex(Sender: TBaseVirtualTree; Node: PVirtualNode; Kind: TVTImageKind; Column: Integer; var Index: Integer);

begin
  case Kind of
    ikState:
      Index := 2;
    ikNormal,
    ikSelected:
      Index := 1;
  end;
end;

Ok, here we are. This is only a small introduction to help you begin with Virtual Treeview. There are many more useful functions. Nearly everything was done for you. Thank you very much for your work Mike.


Questions and Answers
Send Feedback

Got some basic questions and need an answer - look here:

Q: How to initially fill the tree?

A: The only information VT needs at startup is the number of root nodes. All other information is queried from the application when they are needed (text, child count etc.). Hence all to do is to set property RootNodeCount to the number of nodes required.

Q: When I change the text of a node in code then often the display is not updated. What must I do to make selection etc. working again?

A: The Virtual String Tree class keeps the caption's width for each node to allow quick hit tests. But since the captions are not stored in the tree they might get out of synch with the cached width. So if you change a node's text or only its width somehow (e.g. making it bold in OnPaintText) then you have to tell the tree about this event. You can do this by calling InvalidateNode. For changes in an event, though, you should not call InvaldiateNode all the time but rather store the text attributes somewhere and force recalculation only once.

Q: Why doesn't the horizontal scroll bar stay constant while scrolling vertically and columns are unused?

A: VT holds (except a few important things for the overall structure) no information about a node to save memory and provide high speed access. This implies, though, that it only knows the width of the items currently displayed in the client area. Hence the horizontal scroll bar reflects only the width of the largest node currently in view. When columns are used then the width is determined by the overall width of the header.

Q: Why is the horizontal scroll bar not updated when scrolling vertically using the scroll thumb?

A: To avoid unnecessary flickering and to keep high speed response the horizontal scroll bar is updated after the scroll thumb has been released. You cannot scroll horizontally while scrolling vertically, so the horizontal scroll bar doesn't need to be updated while thumb tracking. When columns are used then the width is constant anyway and the horizontal scrollbar does not need an update.

Q: How to assign and access my own data to/on a node?

A: VT does not hide any information about the internal structure of the node from the application. And the best place to hold data specific to a node is the node itself. So there's a user definable area at the end of each node record which can be used to store application data. Usually you already have all data in your own structure (database, file etc.) so you need only to supply an identifier or a pointer (link) into your own structure. This prevents your application from doubling the data just for display which in turn can save a remarkable amount of memory. As the space requirements may vary from application to application the amount of user data space can be globally adjusted by the property NodeDataSize. In order to avoid ugly pointer math there's a function GetNodeData which returns a pointer which directly corresponds to the user data area (it points to the first byte in that area). I strongly recommend to use GetNodeData only (instead directly accessing a node's data area) because specific tree classes may additionally allocate data in the user data area and these parts needs to be taken into account. Assign the returned pointer to your own variable of the correct type (or just cast the pointer) and access your own data as usual. Note: Setting NodeDataSize will clear the entire tree and build it from scratch using this new size as all node records have to be reallocated.

Q: Do I need to check if a node's data is successfully allocated?

A: No, user data is allocated with the node (actually it is part of a node) so the memory allocation function takes care of initialization.

Q: How to get the currently focused node and the target node during a drag'n drop operation?

A: Just query property FocusedNode and DropTargetNode, respectively.

Q: When to free my own node specific data?

A: Use OnFreeNode as central routine to release/disconnect all your data (just like as you should use OnNodeInit to allocate/attach your data to the node).

Q: How can I know which node am I working on?

A: You might want to access the currently FocusedNode to add child nodes to etc. or you might want to use the drop target to act on during a drag'n drop operation etc. But usually you are working on the selection. You have two opportunities to get a list of currently selected nodes. One is the GetFirstSelected/GetNextSelected pair which is really fast but returns the nodes precisely as they are in the internal selection array (which is ordered by memory locations, not logically). Or you can use GetSortedSelection which fills a dynamic array with node references in logical (structural) order.

Q: Is user data saved while doing drag'n drop or saving/restoring nodes?

A: This question implies another question, which I want to answer first: Yes, the same mechanism to save and load nodes is used for drag'n drop as for streaming to/from a file. Because of potentially large node data and/or many nodes the user data is not saved by default with a node. There are the OnSaveNode and OnLoadNode events which provide the application with a stream to store its node data in.

Q: Where should I update my external resources (like a database) involved by any node manipulation?

A: There are several events which could be used. First there is the set of edit events (OnEditCancelled, OnEditing, TBaseVirtualTree) which indicate the cancellation, start and successful finish of an edit event, respectively. These events are used to generally indicate editing of a node. Especially for the node's text in a TVirtualStringTree another event might ease your life. It's the OnNewText event. This is a good place to set a record's description/caption in a database etc.

When it comes to structure changes then usually much more work is involved to keep external data in sync. For general notifications of such a change you might want to use OnStructureChange. This event might often be enough, in particular when also OnInitNode, OnInitChildren and OnFreeNode are considered. But for cut, copy and paste as well as drag'n drop even more care must be taken, since a node might move within the tree what then involves a move of a database record or a file etc. For this kind of action the event pairs OnNodeCopying/OnNodeCopied and OnNodeMoving/TBaseVirtualTree have been introduced. As with all those pairs you can reject copying or moving a node.

Note: These events do only appear for the top node which represents a sub tree! For example if the user drags the second and the third top level node of a tree to a Word document then you'll get only two events, one for each selected node, but not for any child node even if they are selected too. You can still walk through the child nodes if you need to by using e.g. IterateSubTree, but usually a tree represents a hierarchical structure which is recursively defined which avoids the need to update each and every of probably many child nodes.


Licensing
Send Feedback

Virtual Treeview License Agreement

The contents of this file are subject to the Mozilla Public License Version 1.1 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at [image] www.mozilla.org/MPL.

Alternatively, you may redistribute this library, use and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. You may obtain a copy of the LGPL at [image] www.gnu.org/copyleft.

Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the specific language governing rights and limitations under the License.

The original code is VirtualTrees.pas, released September 30, 2000.

The initial developer of the original code is digital publishing AG (www.digitalpublishing.de).

Virtual Treeview is written, published and maintaned by

Mike Lischke (public@soft-gems.net, www.soft-gems.net).

Joachim Marder (joachim.marder@gmail.com)

and many more


Virtual Treeview
Symbol Reference | Topics | Classes | Constants | Functions | Legend | Structs and Records | Types | Variables | Send Feedback

Interfaces
The following table lists interfaces in this documentation.

Topics

Classes
The following table lists classes in this documentation.
Functions
The following table lists functions in this documentation.
Structs and Records
The following table lists structs, records, enums in this documentation.
Types
The following table lists types in this documentation.
Variables
The following table lists variables in this documentation.
Constants
The following table lists constants in this documentation.
Symbol Reference
These are all symbols available in this documentation.

Classes

EVirtualTreeError
TBaseVirtualTree
TBaseVirtualTree is the main and base class for all other Virtual Treeview descendants.
TBufferedAnsiString
Not documented.
TCanvasEx
Not documented.
TClipboardFormatList
Not documented.
TClipboardFormats
List of strings describing clipboard formats.

TCriticalSection
Not documented.
TCustomStringTreeOptions
Enhanced options class for string trees.
TCustomVirtualDrawTree
Simple owner draw descendant of the base tree.
TCustomVirtualStringTree
Descendant of TBaseVirtualTree, which is able to manage node captions on its own
TCustomVirtualTreeOptions
Organizes all tree options into subproperties for easier managment.
TEnumFormatEtc
TScrollBarOptions
TStringEditLink
TStringEditLink is the standard node editor of a TVirtualStringTree.
TStringTreeOptions
Options class used in the string tree and its descentants.
TVirtualDrawTree
Descendant of TBaseVirtualTree, which passes node paint events through to the application (similar to a draw grid)
TVirtualStringTree
Descentant of TBaseVirtualTree which is able to manage node captions on its own.
TVirtualTreeColumn
Represents a column in a Virtual Treeview.
TVirtualTreeColumns
Collection class, which holds the columns for the tree.
TVirtualTreeHintWindow
Internally used hint window class to support Unicode hints.
TVirtualTreeOptions
Collects all binary options of the tree control into one place for easier access.
TVTColors
Collects all color related options for the tree control.
TVTDataObject
Implementation of an IDataObject interface.
TVTDragImage
Not documented.
TVTDragManager
Not documented.
TVTEdit
Not documented.
TVTFixedAreaConstraints
Not documented.
TVTHeader
Not documented.
TVTHeaderPopupMenu
Not documented.
TVTVirtualNodeEnumeration
Not documented.
TVTVirtualNodeEnumerator
Not documented.
TWideBufferedString
Not documented.
TWorkerThread
Not documented.

Constants

AlignmentToDrawFlag
Not documented.
AllocIncrement
Not documented.
BaseChunk
Not documented.
CacheThreshold
Number of nodes a tree must at least have to start caching and at the same time the maximum number of nodes between two cache entries.
CaptionChunk
Not documented.
CFSTR_CSV
Contains the registration string for certain clipboard formats.
CFSTR_HTML
Contains the registration string for certain clipboard formats.
CFSTR_RTF
Contains the registration string for certain clipboard formats.
CFSTR_RTFNOOBJS
Contains the registration string for certain clipboard formats.
CFSTR_VIRTUALTREE
Contains the registration string for certain clipboard formats.
CFSTR_VTREFERENCE
Contains the registration string for certain clipboard formats.
ChangeTimer
Not documented.
Check button image indices
ckButtonDisabled
ckButtonHot
ckButtonNormal
ckButtonPressed
ckCheckCheckedDisabled
ckCheckCheckedHot
ckCheckCheckedNormal
ckCheckCheckedPressed
ckCheckMixedDisabled
ckCheckMixedHot
ckCheckMixedNormal
ckCheckMixedPressed
ckCheckUncheckedDisabled
ckCheckUncheckedHot
ckCheckUncheckedNormal
ckCheckUncheckedPressed
ckEmpty
ckRadioCheckedDisabled
ckRadioCheckedHot
ckRadioCheckedNormal
ckRadioCheckedPressed
ckRadioUncheckedDisabled
ckRadioUncheckedHot
ckRadioUncheckedNormal
ckRadioUncheckedPressed
ClipboardStates
Not documented.
CLSID_DragDropHelper
Not documented.
CM_AUTOADJUST
Not documented.
CM_DENYSUBCLASSING
Not documented.
Copyright
Not documented.
crHeaderSplit
Not documented.
crVertSplit
Not documented.
DefaultAnimationOptions
Not documented.
DefaultAutoOptions
Not documented.
DefaultColumnOptions
Not documented.
DefaultMiscOptions
Not documented.
DefaultPaintOptions
Not documented.
DefaultScrollUpdateFlags
Not documented.
DefaultSelectionOptions
Not documented.
DefaultStringOptions
Not documented.
EditTimer
Not documented.
ExpandTimer
Not documented.
FadeAnimationStepCount
Not documented.
hcTFCannotSetUserData
Not documented.
hcTFClipboardFailed
Not documented.
hcTFCorruptStream1
Not documented.
hcTFCorruptStream2
Not documented.
hcTFEditLinkIsNil
Not documented.
hcTFStreamTooSmall
Not documented.
hcTFWrongMoveError
Not documented.
hcTFWrongStreamFormat
Not documented.
hcTFWrongStreamVersion
Not documented.
HeaderTimer
Not documented.
IID_IDragSourceHelper
Not documented.
IID_IDropTarget
Not documented.
IID_IDropTargetHelper
Not documented.
InvalidColumn
Not documented.
MagicID
Not documented.
MinimumTimerInterval
Not documented.
MouseButtonDown
Not documented.
NoColumn
Not documented.
NodeChunk
Not documented.
PressedState
Not documented.
RTLFlag
Not documented.
SCannotSetUserData
Not documented.
SClipboardFailed
Not documented.
SCorruptStream1
Not documented.
SCorruptStream2
Not documented.
ScrollTimer
Not documented.
SearchTimer
Not documented.
SEditLinkIsNil
Not documented.
ShadowSize
Size in pixels of the hint shadow.
SID_IDragSourceHelper
Not documented.
SID_IDropTarget
Not documented.
SID_IDropTargetHelper
Not documented.
SStreamTooSmall
Not documented.
StructureChangeTimer
Not documented.
SWrongMoveError
Not documented.
SWrongStreamFormat
Not documented.
TVP_HOTGLYPH
Not documented.
SWrongStreamVersion
Not documented.
TreeNodeSize
Not documented.
UnpressedState
Not documented.
UserChunk
Not documented.
UtilityImageSize
Not documented.
VTHeaderStreamVersion
Not documented.
VTTreeStreamVersion
Not documented.
VTVersion
Not documented.
WideCR
Not documented.
WideLF
Not documented.
WideLineSeparator
Not documented.
WideNull
Not documented.
WM_CHANGESTATE
Not documented.

Functions

AlphaBlend
General purpose procedure to blend one bitmap to another.
EnumerateVTClipboardFormats
Not documented.
EnumerateVTClipboardFormats
Not documented.
GetStringDrawRect
Not documented.
GetVTClipboardFormatDescription
Not documented.
PrtStretchDrawDIB
Not documented.
RegisterVTClipboardFormat
Methods to register a certain clipboard format for a given tree class.
RegisterVTClipboardFormat
Methods to register a certain clipboard format for a given tree class.
ShortenString
Not documented.
TreeFromNode
General purpose routine to get the tree to which a node belongs.
WrapString
Not documented.

Legend

Class
Record
Method
Enumeration
Type
Variable
Constant

Structs and Records

TBaseChunk
Not documented.
TBaseChunkBody
Not documented.
TCacheEntry
Not documented.
TChunkHeader
Not documented.
TClipboardFormatEntry
Not documented.
TClipboardFormatListEntry
Not documented.
THeaderPaintInfo
Not documented.
THitInfo
Not documented.
TInternalStgMedium
Not documented.
TRealWMNCPaint
Not documented.
TSHDragImage
Not documented.
TSmartAutoFitType
Not documented.
TToggleAnimationData
Not documented.
TToggleAnimationMode
Not documented.
TVirtualNode
Not documented.
TVTCellContentMarginType
Not documented.
TVTCellPaintMode
Not documented.
TVTExportMode
Not documented.
TVTExportType
Not documented.
TVTHeaderHitInfo
Not documented.
TVTHeaderHitPosition
Not documented.
TVTHintData
Not documented.
TVTImageInfo
Not documented.
TVTOperationKind
Not documented.
TVTPaintInfo
Not documented.
TVTReference
Not documented.
TVTTooltipLineBreakStyle
Not documented.
TVZVirtualNodeEnumerationMode
Not documented.
TWithSafeRect
Not documented.
TWMPrint
Not documented.

Types

PCardinal
Not documented.
PVirtualNode
Not documented.
TAddHeaderPopupItemEvent
Not documented.
TAddPopupItemType
Not documented.
TAutoScrollInterval
Not documented.
TBlendMode
Not documented.
TCache
Not documented.
TCardinalArray
Not documented.
TChangeReason
Not documented.
TChangeStates
Not documented.
TCheckImageKind
Determines which images should be used for checkboxes and radio buttons.
TCheckState
Returns the current state of a node's check box, radio button or node button.
TCheckType
Not documented.
TColumnChangeEvent
Not documented.
TColumnIndex
Not documented.
TColumnPosition
Not documented.
TColumnsArray
Not documented.
TDragOperation
Not documented.
TDragOperations
Not documented.
TDropMode
Not documented.
TFormatArray
Not documented.
TFormatEtcArray
Not documented.
TGetFirstNodeProc
Not documented.
TGetNextNodeProc
Not documented.
THeaderPaintElements
Not documented.
THeaderState
Not documented.
THeaderStates
Not documented.
THintAnimationType
Not documented.
THitPosition
Not documented.
THitPositions
Not documented.
TIndexArray
Not documented.
TInternalStgMediumArray
Not documented.
TItemEraseAction
Not documented.
TLineImage
Not documented.
TMagicID
Not documented.
TMouseButtons
Not documented.
TNodeArray
Not documented.
TScrollBarStyle
Not documented.
TScrollDirections
Not documented.
TScrollUpdateOptions
Not documented.
TSortDirection
Not documented.
TTreeOptionsClass
Not documented.
TVirtualNodeInitState
Not documented.
TVirtualNodeInitStates
Not documented.
TVirtualNodeState
Not documented.
TVirtualNodeStates
Not documented.
TVirtualTreeClass
Not documented.
TVirtualTreeColumnClass
Not documented.
TVirtualTreeColumnsClass
Not documented.
TVirtualTreeColumnStyle
Not documented.
TVirtualTreeStates
Not documented.
TVSTGetHintEvent
Not documented.
TVSTGetTextEvent
Not documented.
TVSTNewTextEvent
Not documented.
TVSTShortenStringEvent
Not documented.
TVSTTextSourceType
Not documented.
TVSTTextType
Not documented.
TVTAddToSelectionEvent
Not documented.
TVTAdvancedHeaderPaintEvent
Not documented.
TVTAfterAutoFitColumnEvent
Not documented.
TVTAfterAutoFitColumnsEvent
Not documented.
TVTAfterCellPaintEvent
Not documented.
TVTAfterColumnWidthTrackingEvent
Not documented.
TVTAfterGetMaxColumnWidthEvent
Not documented.
TVTAfterHeaderHeightTrackingEvent
Not documented.
TVTAfterItemEraseEvent
Not documented.
TVTAfterItemPaintEvent
Not documented.
TVTAnimationCallback
Not documented.
TVTAnimationOption
Not documented.
TVTAnimationOptions
Not documented.
TVTAutoOption
Not documented.
TVTAutoOptions
Not documented.
TVTBackgroundPaintEvent
Not documented.
TVTBeforeAutoFitColumnEvent
Not documented.
TVTBeforeAutoFitColumnsEvent
Not documented.
TVTBeforeCellPaintEvent
Not documented.
TVTBeforeColumnWidthTrackingEvent
Not documented.
TVTBeforeDrawLineImageEvent
Not documented.
TVTBeforeGetMaxColumnWidthEvent
Not documented.
TVTBeforeHeaderHeightTrackingEvent
Not documented.
TVTBeforeItemEraseEvent
Not documented.
TVTBeforeItemPaintEvent
Not documented.
TVTBias
Not documented.
TVTButtonFillMode
Determines how the interior of nodes buttons should be drawn.
TVTButtonStyle
Not documented.
TVTCanSplitterResizeColumnEvent
Not documented.
TVTCanSplitterResizeHeaderEvent
Not documented.
TVTCanSplitterResizeNodeEvent
Not documented.
TVTChangeEvent
Not documented.
TVTChangingEvent
Not documented.
TVTCheckChangingEvent
Not documented.
TVTColumnClickEvent
Not documented.
TVTColumnDblClickEvent
Not documented.
TVTColumnExportEvent
Not documented.
TVTColumnOption
Not documented.
TVTColumnOptions
Not documented.
TVTColumnWidthDblClickResizeEvent
Not documented.
TVTColumnWidthTrackingEvent
Not documented.
TVTCompareEvent
Not documented.
TVTConstraintPercent
Not documented.
TVTCreateDataObjectEvent
Not documented.
TVTCreateDragManagerEvent
Not documented.
TVTCreateEditorEvent
Not documented.
TVTDragAllowedEvent
Not documented.
TVTDragDropEvent
Not documented.
TVTDragImageKind
Not documented.
TVTDragImageStates
Not documented.
TVTDragMoveRestriction
Not documented.
TVTDragOverEvent
Not documented.
TVTDragType
Not documented.
TVTDrawHintEvent
Not documented.
TVTDrawNodeEvent
Not documented.
TVTDrawSelectionMode
Not documented.
TVTDrawTextEvent
Not documented.
TVTDropMarkMode
Not documented.
TVTEditCancelEvent
Not documented.
TVTEditChangeEvent
Not documented.
TVTEditChangingEvent
Not documented.
TVTFocusChangeEvent
Not documented.
TVTFocusChangingEvent
Not documented.
TVTFreeNodeEvent
Not documented.
TVTGetCellContentMarginEvent
Not documented.
TVTGetCellIsEmptyEvent
Not documented.
TVTGetCursorEvent
Not documented.
TVTGetHeaderCursorEvent
Not documented.
TVTGetHintSizeEvent
Not documented.
TVTGetImageEvent
Not documented.
TVTGetImageExEvent
Not documented.
TVTGetImageTextEvent
Not documented.
TVTGetLineStyleEvent
Not documented.
TVTGetNodeDataSizeEvent
Not documented.
TVTGetNodeProc
Not documented.
TVTGetNodeWidthEvent
Not documented.
TVTGetUserClipboardFormatsEvent
Not documented.
TVTHeaderClass
Not documented.
TVTHeaderClickEvent
Not documented.
TVTHeaderColumnLayout
Not documented.
TVTHeaderDraggedEvent
Not documented.
TVTHeaderDraggedOutEvent
Not documented.
TVTHeaderDraggingEvent
Not documented.
TVTHeaderHeightDblClickResizeEvent
Not documented.
TVTHeaderHeightTrackingEvent
Not documented.
TVTHeaderHitPositions
Not documented.
TVTHeaderMouseEvent
Not documented.
TVTHeaderMouseMoveEvent
Not documented.
TVTHeaderNotifyEvent
Not documented.
TVTHeaderOption
Not documented.
TVTHeaderOptions
Not documented.
TVTHeaderPaintEvent
Not documented.
TVTHeaderPaintQueryElementsEvent
Not documented.
TVTHeaderPopupOption
Not documented.
TVTHeaderPopupOptions
Not documented.
TVTHeaderStyle
Not documented.
TVTHelpContextEvent
Not documented.
TVTHintMode
Not documented.
TVTHotNodeChangeEvent
Not documented.
TVTImageInfoIndex
Not documented.
TVTImageKind
Not documented.
TVTIncrementalSearch
Not documented.
TVTIncrementalSearchEvent
Not documented.
TVTInitChildrenEvent
Not documented.
TVTInitNodeEvent
Not documented.
TVTInternalPaintOption
Not documented.
TVTInternalPaintOptions
Not documented.
TVTKeyActionEvent
Not documented.
TVTLineMode
Not documented.
TVTLineStyle
Not documented.
TVTLineType
Not documented.
TVTMeasureItemEvent
Not documented.
TVTMeasureTextEvent
Not documented.
TVTMenuItem
Not documented.
TVTMiscOption
Not documented.
TVTMiscOptions
Not documented.
TVTNodeAlignment
Not documented.
TVTNodeAttachMode
Not documented.
TVTNodeClickEvent
Not documented.
TVTNodeCopiedEvent
Not documented.
TVTNodeCopyingEvent
Not documented.
TVTNodeExportEvent
Not documented.
TVTNodeHeightDblClickResizeEvent
Not documented.
TVTNodeHeightTrackingEvent
Not documented.
TVTNodeMovedEvent
Not documented.
TVTNodeMovingEvent
Not documented.
TVTOperationEvent
Not documented.
TVTOperationKinds
Not documented.
TVTPaintEvent
Not documented.
TVTPaintOption
Not documented.
TVTPaintOptions
Not documented.
TVTPaintText
Not documented.
TVTPopupEvent
Not documented.
TVTRemoveFromSelectionEvent
Not documented.
TVTRenderOLEDataEvent
Not documented.
TVTSaveNodeEvent
Not documented.
TVTSaveTreeEvent
Not documented.
TVTScrollbarShowEvent
Not documented.
TVTScrollEvent
Not documented.
TVTScrollIncrement
Not documented.
TVTSearchDirection
Not documented.
TVTSearchStart
Not documented.
TVTSelectionOption
Not documented.
TVTSelectionOptions
Not documented.
TVTStateChangeEvent
Not documented.
TVTStringOption
Not documented.
TVTStringOptions
Not documented.
TVTStructureChangeEvent
Not documented.
TVTTransparency
Not documented.
TVTTreeExportEvent
Not documented.
TVTUpdateState
Not documented.
TVTUpdatingEvent
Not documented.
TWMPrintClient
Not documented.
UnicodeString
Not documented.

Variables

CF_CSV
Not documented.
CF_HTML
Not documented.
CF_VIRTUALTREE
Not documented.
CF_VRTF
Not documented.
CF_VRTFNOOBJS
Not documented.
CF_VTREFERENCE
Not documented.
ClipboardDescriptions
Not documented.
DarkCheckImages
Not documented.
DarkTickImages
Not documented.
FlatImages
Not documented.
Initialized
Not documented.
InternalClipboardFormats
Not documented.
IsWinVistaOrAbove
Not documented.
LightCheckImages
Not documented.
LightTickImages
Not documented.
MMXAvailable
Not documented.
NeedToUnitialize
Not documented.
StandardOLEFormat
Not documented.
SystemCheckImages
Not documented.
SystemFlatCheckImages
Not documented.
UtilityImages
Not documented.
Watcher
Not documented.
WorkerThread
Not documented.
WorkEvent
Not documented.
XPImages
Not documented.

Links
Symbol Reference, Topics, Classes, Constants, Functions, Legend, Structs and Records, Types, Variables


Classes
Classes | Virtual Treeview | Records | Legend | Send Feedback

The following table lists classes in this documentation.

Description

These are all classes that are contained in this documentation.

Classes

EVirtualTreeError
TBaseVirtualTree
TBaseVirtualTree is the main and base class for all other Virtual Treeview descendants.
TBufferedAnsiString
Not documented.
TCanvasEx
Not documented.
TClipboardFormatList
Not documented.
TClipboardFormats
List of strings describing clipboard formats.

TCriticalSection
Not documented.
TCustomStringTreeOptions
Enhanced options class for string trees.
TCustomVirtualDrawTree
Simple owner draw descendant of the base tree.
TCustomVirtualStringTree
Descendant of TBaseVirtualTree, which is able to manage node captions on its own
TCustomVirtualTreeOptions
Organizes all tree options into subproperties for easier managment.
TEnumFormatEtc
TScrollBarOptions
TStringEditLink
TStringEditLink is the standard node editor of a TVirtualStringTree.
TStringTreeOptions
Options class used in the string tree and its descentants.
TVirtualDrawTree
Descendant of TBaseVirtualTree, which passes node paint events through to the application (similar to a draw grid)
TVirtualStringTree
Descentant of TBaseVirtualTree which is able to manage node captions on its own.
TVirtualTreeColumn
Represents a column in a Virtual Treeview.
TVirtualTreeColumns
Collection class, which holds the columns for the tree.
TVirtualTreeHintWindow
Internally used hint window class to support Unicode hints.
TVirtualTreeOptions
Collects all binary options of the tree control into one place for easier access.
TVTColors
Collects all color related options for the tree control.
TVTDataObject
Implementation of an IDataObject interface.
TVTDragImage
Not documented.
TVTDragManager
Not documented.
TVTEdit
Not documented.
TVTFixedAreaConstraints
Not documented.
TVTHeader
Not documented.
TVTHeaderPopupMenu
Not documented.
TWideBufferedString
Not documented.
TWorkerThread
Not documented.

Group

Virtual Treeview

Records

TVTVirtualNodeEnumeration
Not documented.
TVTVirtualNodeEnumerator
Not documented.

Legend

Class
Record

Links
Classes, Virtual Treeview, Records, Legend


EVirtualTreeError Class
Classes | Send Feedback
EVirtualTreeError = class(Exception);
Description

EVirtualTreeError is a normal exception derivation especially for Virtual Treeview. This class does not add much value to its parent class but is rather there to better tell when an exception particularly from Virtual Treeview was raised.

Group

Classes

Class Hierarchy
  EVirtualTreeError
File

VirtualTrees

Links
Classes
What do you think about this topic? Send feedback!


TBaseVirtualTree Class
Classes | Topics | TBaseVirtualTree Methods | TBaseVirtualTree Constructors | TBaseVirtualTree Destructors | TBaseVirtualTree Properties | TBaseVirtualTree Events | TBaseVirtualTree Constructors | TBaseVirtualTree Destructors | TBaseVirtualTree Events | Legend | TBaseVirtualTree Methods | TBaseVirtualTree Properties | Send Feedback

TBaseVirtualTree is the main and base class for all other Virtual Treeview descendants.

Pascal
TBaseVirtualTree = class(TCustomControl);
Description

This class implements most of the base features and abilities and can be used to derive new classes, which want to hide most of the details of the tree, which other descendants like TVirtualStringTree publish. Do not use the base treeview as object. It is not meant to be instantiated directly, instead via an descendant.

Group

Classes

Members
TBaseVirtualTree Methods

AbsoluteIndex
Reads the overall index of a node.
AddChild
Creates and adds a new child node to given node.
AddFromStream
Adds the content from the given stream to the given node.
AddToSelection
This is the overview for the AddToSelection method overload.
AdjustImageBorder
Depending on the width of the image list as well as the given bidi mode R must be adjusted.
AdjustPaintCellRect
Used in descentants to modify the clip rectangle of the current column while painting a certain node.
AdjustPanningCursor
Loads the proper cursor which indicates into which direction scrolling is done.
AdviseChangeEvent
Used to register a delayed change event.
AllocateInternalDataArea
Registration method to allocate tree internal data per node.
Animate
Support method for animated actions in the tree view.
Assign
Used to copy properties from another Virtual Treeview.
BeginDrag
Starts an OLE drag'n drop operation.
BeginSynch
Enters the tree into a special synchronized mode.
BeginUpdate
Locks the tree view to perform several update operations.
CalculateSelectionRect
Support method for draw selection.
CanAutoScroll
Determines whether the tree can currently auto scroll its window.
CancelCutOrCopy
Canceles any pending cut or copy clipboard operation.
CancelEditNode
Cancel the current edit operation, if there is any.
CancelOperation
Not documented.
CanEdit
Determines whether a node can be edited or not.
CanFocus
Support method to determine whether the tree window can receive the input focus.
CanShowDragImage
Determines whether a drag image should be shown.
CanSplitterResizeNode
Not documented.
Change
Central method called when a node's selection state changes.
ChangeScale
Helper method called by the VCL when control resizing is due.
CheckedNodes
Not documented.
CheckParentCheckState
Helper method for recursive check state changes.
ChildNodes
Not documented.
Clear
Clears the tree and removes all nodes.
ClearChecked
Not documented.
ClearSelection
Removes all nodes from the current selection.
ClearTempCache
Helper method to clear the internal temporary node cache.
ColumnIsEmpty
Used to determine if a cell is considered as being empty.
ComputeRTLOffset
Not documented.
CopyTo
This is the overview for the CopyTo method overload.
CopyToClipBoard
Copies all currently selected nodes to the clipboard.
CountLevelDifference
Determines the level difference of two nodes.
CountVisibleChildren
Determines the number of visible child nodes of the given node.
CreateParams
Prepares the creation of the controls window handle.
CreateWnd
Initializes data, which depends on the window handle.
CutCopyNodes
Not documented.
CutToClipBoard
Copies the currently selected nodes to the clipboard and removes them once a consumer has taken the data.
DefineProperties
Helper method to customize loading and saving persistent tree data.
DeleteChildren
Removes all child nodes from the given node.
DeleteNode
Removes the given node from the tree.
DeleteSelectedNodes
Removes all currently selected nodes form the tree.
DetermineDropMode
Not documented.
DetermineHiddenChildrenFlag
Determines whether all children of a given node are hidden.
DetermineHiddenChildrenFlagAllNodes
Determines whether all children of all nodes are hidden.
DetermineHitPositionLTR
Determines the hit position within a node with left-to-right and right-to-left orientation.
DetermineHitPositionRTL
Determines the hit position within a node with left-to-right and right-to-left orientation.
DetermineLineImageAndSelectLevel
Not documented.
DetermineNextCheckState
Not documented.
DetermineScrollDirections
Not documented.
DoAdvancedHeaderDraw
Not documented.
DoAfterCellPaint
Not documented.
DoAfterItemErase
Not documented.
DoAfterItemPaint
Not documented.
DoAfterPaint
Not documented.
DoAutoScroll
Enables or disables the auto scroll timer.
DoBeforeCellPaint
Not documented.
DoBeforeDrag
Not documented.
DoBeforeDrawLineImage
Not documented.
DoBeforeItemErase
Not documented.
DoBeforeItemPaint
Not documented.
DoBeforePaint
Not documented.
DoCancelEdit
Called when the tree should stop editing without accepting changed values.
DoCanEdit
Not documented.
DoCanSplitterResizeNode
Not documented.
DoChange
Not documented.
DoCheckClick
Not documented.
DoChecked
Not documented.
DoChecking
Not documented.
DoCollapsed
Not documented.
DoCollapsing
Not documented.
DoColumnClick
Not documented.
DoColumnDblClick
Not documented.
DoColumnResize
Not documented.
DoCompare
Not documented.
DoCreateDataObject
Not documented.
DoCreateDragManager
Not documented.
DoCreateEditor
Not documented.
DoDragDrop
Not documented.
DoDragExpand
Not documented.
DoDragging
Internal method which handles drag' drop.
DoDragOver
Not documented.
DoEdit
Initiates editing of the currently set focused column and edit node.
DoEndDrag
Not documented.
DoEndEdit
Stops the current edit operation and takes over the new content.
DoEndOperation
Not documented.
DoExpanded
Not documented.
DoExpanding
Not documented.
DoFocusChange
Not documented.
DoFocusChanging
Not documented.
DoFocusNode
Internal method to set the focused node.
DoFreeNode
Not documented.
DoGetAnimationType
Determines the type of animation to be used.
DoGetCellContentMargin
Not documented.
DoGetCursor
Not documented.
DoGetHeaderCursor
Not documented.
DoGetImageIndex
Not documented.
DoGetImageText
Not documented.
DoGetLineStyle
Not documented.
DoGetNodeHint
Not documented.
DoGetNodeTooltip
Not documented.
DoGetNodeWidth
Overridable method which always retuns 0.
DoGetPopupMenu
Overridable method which triggers the OnGetPopup event.
DoGetUserClipboardFormats
Not documented.
DoHeaderClick
Not documented.
DoHeaderDblClick
Not documented.
DoHeaderDragged
Not documented.
DoHeaderDraggedOut
Not documented.
DoHeaderDragging
Not documented.
DoHeaderDraw
Not documented.
DoHeaderDrawQueryElements
Not documented.
DoHeaderMouseDown
Not documented.
DoHeaderMouseMove
Not documented.
DoHeaderMouseUp
Not documented.
DoHotChange
Not documented.
DoIncrementalSearch
Not documented.
DoInitChildren
Not documented.
DoInitNode
Not documented.
DoKeyAction
Not documented.
DoLoadUserData
Not documented.
DoMeasureItem
Not documented.
DoNodeClick
Not documented.
DoNodeCopied
Not documented.
DoNodeCopying
Not documented.
DoNodeDblClick
Not documented.
DoNodeHeightDblClickResize
Not documented.
DoNodeHeightTracking
Not documented.
DoNodeMoved
Not documented.
DoNodeMoving
Not documented.
DoPaintBackground
Not documented.
DoPaintDropMark
Overridable method which draws the small line on top of a nodes image depending on the current drop state.
DoPaintNode
Overridable method which does nothing.
DoPopupMenu
Overridable method which shows the popup menu for the given node.
DoRenderOLEData
Not documented.
DoReset
Not documented.
DoSaveUserData
Not documented.
DoScroll
Overridable method which triggers the OnScroll event.
DoSetOffsetXY
Internal core routine to set the tree's scroll position.
DoShowScrollbar
Not documented.
DoStartDrag
Not documented.
DoStartOperation
Not documented.
DoStateChange
Not documented.
DoStructureChange
Not documented.
DoTimerScroll
Callback method which is triggered whenever the scroll timer fires.
DoUpdating
Not documented.
DoValidateCache
Not documented.
DragAndDrop
Not documented.
DragCanceled
Called by the VCL when a drag'n drop operation was canceled by the user.
DragDrop
Helper method, which is used when a drag operation is finished.
DragEnter
Not documented.
DragFinished
Called when a drag operation is finished (accepted or cancelled).
Dragging
Returns true if a drag'n drop operation is in progress.
DragLeave
Not documented.
DragOver
Not documented.
DrawDottedHLine
Not documented.
DrawDottedVLine
Not documented.
EditNode
Starts editing the given node if allowed to.
EndEditNode
Stops node editing if it was started before.
EndOperation
Not documented.
EndSynch
Counterpart to BeginSynch.
EndUpdate
Resets the update lock set by BeginUpdate.
ExecuteAction
Not documented.
FindNodeInSelection
Helper method to find the given node in the current selection.
FinishChunkHeader
Not documented.
FinishCutOrCopy
Stops any pending cut or copy clipboard operation.
FlushClipboard
Renders all pending clipboard data.
FontChanged
Not documented.
FullCollapse
Collapses all nodes in the tree.
FullExpand
Expands all nodes in the tree.
GetBorderDimensions
Not documented.
GetCheckImage
Not documented.
GetCheckImageListFor
Not documented.
GetColumnClass
Returns the class to be used to manage columns in the tree.
GetControlsAlignment
Not documented.
GetDisplayRect
Not documented.
GetEffectivelyFiltered
Not documented.
GetEffectivelyVisible
Not documented.
GetFirst
Group of node navigation functions.
GetFirstChecked
Not documented.
GetFirstChild
Group of node navigation functions.
GetFirstCutCopy
Group of node navigation functions.
GetFirstInitialized
Group of node navigation functions.
GetFirstLeaf
Not documented.
GetFirstLevel
Not documented.
GetFirstNoInit
Group of node navigation functions.
GetFirstSelected
Group of node navigation functions.
GetFirstVisible
Group of node navigation functions.
GetFirstVisibleChild
Not documented.
GetFirstVisibleChildNoInit
Not documented.
GetFirstVisibleNoInit
Group of node navigation functions.
GetHeaderClass
Returns the header class to be used by the tree.
GetHintWindowClass
Not documented.
GetHitTestInfoAt
Returns information about the node at the given position.
GetImageIndex
Not documented.
GetLast
Not documented.
GetLastChild
GetLastChildNoInit
GetLastInitialized
Not documented.
GetLastNoInit
Not documented.
GetLastVisible
Not documented.
GetLastVisibleChild
Not documented.
GetLastVisibleChildNoInit
Not documented.
GetLastVisibleNoInit
Not documented.
GetMaxColumnWidth
Not documented.
GetMaxRightExtend
Determines the maximum with of the currently visible part of the tree.
GetNativeClipboardFormats
Used to let descendants and the application add their own supported clipboard formats.
GetNext
Not documented.
GetNextChecked
This is the overview for the GetNextChecked method overload.
GetNextCutCopy
Not documented.
GetNextInitialized
Not documented.
GetNextLeaf
Not documented.
GetNextLevel
Not documented.
GetNextNoInit
Not documented.
GetNextSelected
Not documented.
GetNextSibling
GetNextVisible
Not documented.
GetNextVisibleNoInit
Not documented.
GetNextVisibleSibling
Not documented.
GetNextVisibleSiblingNoInit
Not documented.
GetNodeAt
This is the overview for the GetNodeAt method overload.
GetNodeData
Returns the address of the user data area of the given node.
GetNodeLevel
Returns the indentation level of the given node.
GetOperationCanceled
Not documented.
GetOptionsClass
Customization helper to determine which options class the tree should use.
GetPrevious
Not documented.
GetPreviousChecked
Not documented.
GetPreviousCutCopy
Not documented.
GetPreviousInitialized
Not documented.
GetPreviousLeaf
Not documented.
GetPreviousLevel
Not documented.
GetPreviousNoInit
Not documented.
GetPreviousSelected
Not documented.
GetPreviousSibling
GetPreviousVisible
Not documented.
GetPreviousVisibleNoInit
Not documented.
GetPreviousVisibleSibling
Not documented.
GetPreviousVisibleSiblingNoInit
Not documented.
GetSortedCutCopySet
Returns a sorted list of nodes, which are marked for s cut or copy clipboard operation.
GetSortedSelection
Returns a sorted list of all currently selected nodes.
GetTextInfo
Not documented.
GetTreeFromDataObject
OLE drag'n drop and clipboard support method.
GetTreeRect
Returns the size of the virtual tree image.
GetVisibleParent
Not documented.
HandleHotTrack
Not documented.
HandleIncrementalSearch
Not documented.
HandleMouseDblClick
Not documented.
HandleMouseDown
Not documented.
HandleMouseUp
Not documented.
HasAsParent
Determines if the given node has got another node as one of its parents.
HasImage
Not documented.
HasPopupMenu
Determines whether there is a pop up menu assigned to the tree.
InitChildren
Not documented.
InitializedNodes
Not documented.
InitNode
Not documented.
InsertNode
Inserts a new node and returns it to the caller.
InternalAddFromStream
Not documented.
InternalAddToSelection
This is the overview for the InternalAddToSelection method overload.
InternalCacheNode
Not documented.
InternalClearSelection
Not documented.
InternalConnectNode
Not documented.
InternalData
Returns the address of the internal data for a tree class.
InternalDisconnectNode
Not documented.
InternalRemoveFromSelection
Not documented.
InvalidateCache
Empties the internal node cache and marks it as invalid.
InvalidateChildren
Invalidates all children of the given node.
InvalidateColumn
Invalidates the client area part of a column.
InvalidateNode
Invalidates the given node.
InvalidateToBottom
Invalidates the client area starting with the top position of the given node.
InvertSelection
Inverts the current selection.
IsEditing
Tells the caller whether the tree is currently in edit mode.
IsMouseSelecting
Tell the caller whether the tree is currently in draw selection mode.
IterateSubtree
Iterator method to go through all nodes of a given sub tree.
LeafNodes
Not documented.
LevelNodes
Not documented.
Loaded
Not documented.
LoadFromFile
Loads previously streamed out tree data back in again.
LoadFromStream
Loads previously streamed out tree data back in again.
MainColumnChanged
Not documented.
MarkCutCopyNodes
Not documented.
MeasureItemHeight
Not documented.
MouseMove
Not documented.
MoveTo
This is the overview for the MoveTo method overload.
Nodes
Not documented.
NoInitNodes
Not documented.
Notification
Not documented.
OriginalWMNCPaint
Not documented.
Paint
TControl's Paint method used here to display the tree.
PaintCheckImage
Not documented.
PaintImage
Not documented.
PaintNodeButton
Not documented.
PaintSelectionRectangle
Not documented.
PaintTree
Main paint routine for the tree image.
PaintTreeLines
Not documented.
PanningWindowProc
Not documented.
PasteFromClipboard
Inserts the content of the clipboard into the tree.
PrepareCell
This method is called immediately before a cell's content is drawn und is responsible to paint selection colors etc.
PrepareDragImage
Not documented.
Print
Not documented.
ProcessDrop
Helper method to ease OLE drag'n drop operations.
ProcessOLEData
Takes serialized OLE tree data and reconstructs the former structure.
ReadChunk
Not documented.
ReadNode
Not documented.
RedirectFontChangeEvent
Not documented.
ReinitChildren
Forces all child nodes of Node to be reinitialized.
ReinitNode
Forces a reinitialization of the given node.
RemoveFromSelection
Removes the given node from the current selection.
RenderOLEData
Renders pending OLE data.
RepaintNode
Causes the treeview to repaint the given node.
ResetNode
Resets the given node to uninitialized.
ResetRangeAnchor
Not documented.
RestoreFontChangeEvent
Not documented.
SaveToFile
Saves the entire content of the tree into a file or stream.
SaveToStream
Saves the entire content of the tree into a file or stream.
ScrollIntoView
This is the overview for the ScrollIntoView method overload.
SelectAll
Selects all nodes in the tree.
SelectedNodes
Not documented.
SelectNodes
Selects a range of nodes.
SetFocusedNodeAndColumn
Not documented.
SkipNode
Not documented.
Sort
Sorts the given node.
SortTree
Sorts the entire tree view.
StartOperation
Not documented.
StartWheelPanning
Not documented.
StopWheelPanning
Not documented.
StructureChange
Not documented.
SuggestDropEffect
Not documented.
ToggleNode
Changes a node's expand state to the opposite state.
ToggleSelection
Toggles the selection state of a range of nodes.
UnselectNodes
Deselects a range of nodes.
UpdateAction
Not documented.
UpdateColumnCheckState
Not documented.
UpdateDesigner
Not documented.
UpdateEditBounds
Not documented.
UpdateHeaderRect
Not documented.
UpdateHorizontalRange
Not documented.
UpdateHorizontalScrollBar
Applies changes to the horizontal and vertical scrollbars.
UpdateRanges
Not documented.
UpdateScrollBars
Applies changes to the horizontal and vertical scrollbars.
UpdateVerticalRange
Not documented.
UpdateVerticalScrollBar
Applies changes to the horizontal and vertical scrollbars.
UpdateWindowAndDragImage
Not documented.
UseRightToLeftReading
Helper method for right-to-left layout.
ValidateCache
Initiates the validation of the internal node cache.
ValidateChildren
Validates all children of a given node.
ValidateNode
Validates a given node.
ValidateNodeDataSize
Helper method for node data size initalization.
VisibleChildNodes
Not documented.
VisibleChildNoInitNodes
Not documented.
VisibleNodes
Not documented.
VisibleNoInitNodes
Not documented.
WndProc
Redirected window procedure to do some special processing.
WriteChunks
Writes the core chunks for the given node to the given stream.
WriteNode
Writes the cover (envelop) chunk for the given node to the given stream.

Topics

TBaseVirtualTree Methods
The methods of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Constructors
The constructors of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Destructors
The destructors of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Properties
The properties of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Events
The events of the TBaseVirtualTree class are listed here.

TBaseVirtualTree Constructors

Create
Constructor of the control

TBaseVirtualTree Destructors

Destroy
Destructor of the control.

TBaseVirtualTree Properties

Accessible
Not documented.
AccessibleItem
Not documented.
AccessibleName
Not documented.
Alignment
Determines the horizontal alignment of text if no columns are defined.
AnimationDuration
Determines the maximum duration the tree can use to play an animation.
AutoExpandDelay
Time delay after which a node gets expanded if it is the current drop target.
AutoScrollDelay
Time which determines when auto scrolling should start.
AutoScrollInterval
Time interval between scroll events when doing auto scroll.
Background
Holds a background image for the tree.
BackgroundOffsetX
Horizontal offset of the background image.
BackgroundOffsetY
Vertical offset of the background image.
BorderStyle
Same as TForm.BorderStyle.
BottomNode
Not documented.
BottomSpace
Not documented.
ButtonFillMode
Determines how to fill the background of the node buttons.
ButtonStyle
Determines the look of node buttons.
ChangeDelay
Time which determines when the OnChange event should be triggered after the actual change event.
CheckedCount
Not documented.
CheckImageKind
Determines which images should be used for checkboxes and radio buttons.
CheckImages
Not documented.
CheckState
Read or set the check state of a node.
CheckType
Read or set the check type of a node.
ChildCount
Read or set the number of child nodes of a node.
ChildrenInitialized
Read whether a node's child count has been initialized already.
ClipboardFormats
Special class to keep a list of clipboard format descriptions.
Colors
A collection of colors used in the tree.
CustomCheckImages
Assign your own image list to get the check images you like most.
CutCopyCount
Not documented.
DefaultNodeHeight
Read or set the height new nodes get as initial value.
DefaultPasteMode
Read or set the value, which determines where to add pasted nodes to.
DragHeight
Read or set the vertical limit of the internal drag image.
DragImage
Holds the instance of the internal drag image.
DragImageKind
Read or set what should be shown in the drag image.
DragManager
Holds the reference to the internal drag manager.
DragOperations
Read or set which drag operations may be allowed in the tree.
DragSelection
Keeps a temporary list of nodes during drag'n drop.
DragType
Read or set which subsystem should be used for dragging.
DragWidth
Read or set the horizontal limit of the internal drag image.
DrawSelectionMode
Read or set how multiselection with the mouse is to be visualized.
DropTargetNode
Contains the current drop target node if the tree is currently the target of a drag'n drop operation.
EditColumn
Not documented.
EditDelay
Read or set the maximum time between two single clicks on the same node, which should start node editing.
EditLink
Keeps a reference to the internal edit link during a node edit operation.
EffectiveOffsetX
Not documented.
EmptyListMessage
Not documented.
Expanded
Read or set the expanded state of a particular node.
FocusedColumn
Read or set the currently focused collumn.
FocusedNode
Read or set the currently focused node.
Font
Same as TWinControl.Font.
FullyVisible
Read or set whether a node is fully visible or not.
HasChildren
Read or set whether a node has got children.
Header
Provides access to the header instance.
HeaderRect
Returns the non-client-area rectangle used for the header.
HintAnimation
Read or set the current hint animation type.
HintData
Not documented.
HintMode
Read or set what type of hint you want for the tree view.
HotCursor
Read or set which cursor should be used for hot nodes.
HotMinusBM
Not documented.
HotNode
Read, which node is currently the hot node.
HotPlusBM
Not documented.
Images
Read or set the tree's normal image list.
IncrementalSearch
Read or set the current incremental search mode.
IncrementalSearchDirection
Read or set the direction to be used for incremental search.
IncrementalSearchStart
Read or set where to start incremental search.
IncrementalSearchTimeout
Read or set the maximum time, which is allowed between two consecutive key strokes so that incremental search stays active.
Indent
Read or set the indentation amount for node levels.
IsDisabled
Read or set the enabled state of the given node.
IsEffectivelyFiltered
Not documented.
IsEffectivelyVisible
Not documented.
IsFiltered
Not documented.
IsVisible
Read or set the visibility state of the given node.
LastClickPos
Used for retained drag start and wheel mouse scrolling.
LastDropMode
Read how the last drop operation finished.
LastHintRect
Not documented.
LineMode
Read or set the mode of the tree lines.
LineStyle
Read or set the mode of the tree lines.
Margin
Read or set the tree's node margin.
MinusBM
Not documented.
MultiLine
Read or toggle the multiline feature for a given node.
NodeAlignment
Read or set the node alignment value.
NodeDataSize
Read or set the extra data size for each node.
NodeHeight
Read or set a node's height.
NodeParent
Read or set a node's parent node.
OffsetX
Read or set the tree's current horizontal and vertical scroll offsets.
OffsetXY
Read or set the tree's current horizontal and vertical scroll offsets.
OffsetY
Read or set the tree's current horizontal and vertical scroll offsets.
OperationCanceled
Not documented.
OperationCount
Not documented.
PlusBM
Not documented.
RangeX
Not documented.
RangeY
Not documented.
RootNode
Reference to the internal root node which is the anchor of the entire tree node hierarchy.
RootNodeCount
Read or set the number of nodes on the top level.
ScrollBarOptions
Reference to the scroll bar options class.
SearchBuffer
Current input string for incremental search.
Selected
Property to modify or determine the selection state of a node.
SelectedCount
Contains the number of selected nodes.
SelectionBlendFactor
Read or set the current blend factor for the multi selection rectangle and the node selection rectangle.
SelectionCurveRadius
Read or set the current corner radius for node selection rectangles.
SelectionLocked
Not documented.
StateImages
Reference to the images list which is used for the state images.
TextMargin
Read or set the distance of the node caption to its borders.
TopNode
The top node is the node which is currently at the top border of the client area.
TotalCount
Returns the number of nodes in the tree.
TotalInternalDataSize
Keeps the currently accumulated data size for one node.
TreeOptions
Reference to the tree's options.
TreeStates
Property which keeps a set of flags which indicate current operation and states of the tree.
UpdateCount
Not documented.
VerticalAlignment
Used to set a node's vertical button aligment with regard to the entire node rectangle.
VisibleCount
Number of currently visible nodes.
VisiblePath
Property to set or determine a node parent's expand states.
WantTabs
Read or set whether the tree wants to process tabs on its own.

TBaseVirtualTree Events

OnAddToSelection
Not documented.
OnAdvancedHeaderDraw
Header paint support event.
OnAfterAutoFitColumn
Not documented.
OnAfterAutoFitColumns
Not documented.
OnAfterCellPaint
Paint support event.
OnAfterColumnExport
Not documented.
OnAfterColumnWidthTracking
Not documented.
OnAfterGetMaxColumnWidth
Not documented.
OnAfterHeaderExport
Not documented.
OnAfterHeaderHeightTracking
Not documented.
OnAfterItemErase
Paint support event.
OnAfterItemPaint
Paint support event.
OnAfterNodeExport
Not documented.
OnAfterPaint
Paint support event.
OnAfterTreeExport
Not documented.
OnBeforeAutoFitColumn
Not documented.
OnBeforeAutoFitColumns
Not documented.
OnBeforeCellPaint
Paint support event.
OnBeforeColumnExport
Not documented.
OnBeforeColumnWidthTracking
Not documented.
OnBeforeDrawTreeLine
Not documented.
OnBeforeGetMaxColumnWidth
Not documented.
OnBeforeHeaderExport
Not documented.
OnBeforeHeaderHeightTracking
Not documented.
OnBeforeItemErase
Paint support event.
OnBeforeItemPaint
Paint support event.
OnBeforeNodeExport
Not documented.
OnBeforePaint
Paint support event.
OnBeforeTreeExport
Not documented.
OnCanSplitterResizeColumn
Not documented.
OnCanSplitterResizeHeader
Not documented.
OnCanSplitterResizeNode
Not documented.
OnChange
Navigation support event.
OnChecked
Check support event.
OnChecking
Check support event.
OnCollapsed
Miscellaneous event.
OnCollapsing
Miscellaneous event.
OnColumnClick
Header and column support event.
OnColumnDblClick
Header and column support event.
OnColumnExport
Not documented.
OnColumnResize
Header and column support routine.
OnColumnWidthDblClickResize
Not documented.
OnColumnWidthTracking
Not documented.
OnCompareNodes
Sort and search support event.
OnCreateDataObject
Drag'n drop support event.
OnCreateDragManager
Drag'n drop support event.
OnCreateEditor
Editing support event.
OnDragAllowed
Drag'n drop support event.
OnDragDrop
Drag'n drop support event.
OnDragOver
Drag'n drop support event.
OnEditCancelled
Editing support event.
OnEdited
Editing support event.
OnEditing
Editing support event.
OnEndOperation
Not documented.
OnExpanded
Misscellaneous event.
OnExpanding
Miscellaneous event.
OnFocusChanged
Navigation support event.
OnFocusChanging
Navigation support event.
OnFreeNode
Data management node.
OnGetCellIsEmpty
Triggered when the tree control needs to know whether a given column is empty.
OnGetCursor
Miscellaneous event.
OnGetHeaderCursor
Header and column support event.
OnGetHelpContext
Miscellaneous event.
OnGetImageIndex
Display management event.
OnGetImageIndexEx
Not documented.
OnGetImageText
Not documented.
OnGetLineStyle
Display management event.
OnGetNodeDataSize
Data management event.
OnGetPopupMenu
Miscellaneous event.
OnGetUserClipboardFormats
Drag'n drop and clipboard support event.
OnHeaderClick
Header & column support event.
OnHeaderDblClick
Header & column support event.
OnHeaderDragged
Header & column support event.
OnHeaderDraggedOut
Header & column support event.
OnHeaderDragging
Header & column support event.
OnHeaderDraw
Header & column support event.
OnHeaderDrawQueryElements
Header & column support event.
OnHeaderHeightDblClickResize
Not documented.
OnHeaderHeightTracking
Not documented.
OnHeaderMouseDown
Header & column support event.
OnHeaderMouseMove
Header & column support event.
OnHeaderMouseUp
Header & column support event.
OnHotChange
Navigation support event.
OnIncrementalSearch
Miscellaneous event.
OnInitChildren
Node management event.
OnInitNode
Node management event.
OnKeyAction
Miscellaneous event.
OnLoadNode
Streaming support event.
OnLoadTree
Not documented.
OnMeasureItem
Miscellaneous event.
OnNodeClick
Not documented.
OnNodeCopied
Miscellaneous event.
OnNodeCopying
Miscellaneous event.
OnNodeDblClick
Not documented.
OnNodeExport
Not documented.
OnNodeHeightDblClickResize
Not documented.
OnNodeHeightTracking
Not documented.
OnNodeMoved
Miscellaneous event.
OnNodeMoving
Miscellaneous event.
OnPaintBackground
Paint support event.
OnRemoveFromSelection
Not documented.
OnRenderOLEData
Drag'n drop and clipboard support event.
OnResetNode
Node management event.
OnSaveNode
Streaming support event.
OnSaveTree
Not documented.
OnScroll
Miscellaneous event.
OnShowScrollbar
Not documented.
OnStartOperation
Not documented.
OnStateChange
Miscellaneous event.
OnStructureChange
Miscellaneous event.
OnUpdating
Miscellaneous event.

Topics

TBaseVirtualTree Methods
The methods of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Constructors
The constructors of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Destructors
The destructors of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Properties
The properties of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Events
The events of the TBaseVirtualTree class are listed here.

TBaseVirtualTree Constructors

Create
Constructor of the control

TBaseVirtualTree Destructors

Destroy
Destructor of the control.

TBaseVirtualTree Events

OnAddToSelection
Not documented.
OnAdvancedHeaderDraw
Header paint support event.
OnAfterAutoFitColumn
Not documented.
OnAfterAutoFitColumns
Not documented.
OnAfterCellPaint
Paint support event.
OnAfterColumnExport
Not documented.
OnAfterColumnWidthTracking
Not documented.
OnAfterGetMaxColumnWidth
Not documented.
OnAfterHeaderExport
Not documented.
OnAfterHeaderHeightTracking
Not documented.
OnAfterItemErase
Paint support event.
OnAfterItemPaint
Paint support event.
OnAfterNodeExport
Not documented.
OnAfterPaint
Paint support event.
OnAfterTreeExport
Not documented.
OnBeforeAutoFitColumn
Not documented.
OnBeforeAutoFitColumns
Not documented.
OnBeforeCellPaint
Paint support event.
OnBeforeColumnExport
Not documented.
OnBeforeColumnWidthTracking
Not documented.
OnBeforeDrawTreeLine
Not documented.
OnBeforeGetMaxColumnWidth
Not documented.
OnBeforeHeaderExport
Not documented.
OnBeforeHeaderHeightTracking
Not documented.
OnBeforeItemErase
Paint support event.
OnBeforeItemPaint
Paint support event.
OnBeforeNodeExport
Not documented.
OnBeforePaint
Paint support event.
OnBeforeTreeExport
Not documented.
OnCanSplitterResizeColumn
Not documented.
OnCanSplitterResizeHeader
Not documented.
OnCanSplitterResizeNode
Not documented.
OnChange
Navigation support event.
OnChecked
Check support event.
OnChecking
Check support event.
OnCollapsed
Miscellaneous event.
OnCollapsing
Miscellaneous event.
OnColumnClick
Header and column support event.
OnColumnDblClick
Header and column support event.
OnColumnExport
Not documented.
OnColumnResize
Header and column support routine.
OnColumnWidthDblClickResize
Not documented.
OnColumnWidthTracking
Not documented.
OnCompareNodes
Sort and search support event.
OnCreateDataObject
Drag'n drop support event.
OnCreateDragManager
Drag'n drop support event.
OnCreateEditor
Editing support event.
OnDragAllowed
Drag'n drop support event.
OnDragDrop
Drag'n drop support event.
OnDragOver
Drag'n drop support event.
OnEditCancelled
Editing support event.
OnEdited
Editing support event.
OnEditing
Editing support event.
OnEndOperation
Not documented.
OnExpanded
Misscellaneous event.
OnExpanding
Miscellaneous event.
OnFocusChanged
Navigation support event.
OnFocusChanging
Navigation support event.
OnFreeNode
Data management node.
OnGetCellIsEmpty
Triggered when the tree control needs to know whether a given column is empty.
OnGetCursor
Miscellaneous event.
OnGetHeaderCursor
Header and column support event.
OnGetHelpContext
Miscellaneous event.
OnGetImageIndex
Display management event.
OnGetImageIndexEx
Not documented.
OnGetImageText
Not documented.
OnGetLineStyle
Display management event.
OnGetNodeDataSize
Data management event.
OnGetPopupMenu
Miscellaneous event.
OnGetUserClipboardFormats
Drag'n drop and clipboard support event.
OnHeaderClick
Header & column support event.
OnHeaderDblClick
Header & column support event.
OnHeaderDragged
Header & column support event.
OnHeaderDraggedOut
Header & column support event.
OnHeaderDragging
Header & column support event.
OnHeaderDraw
Header & column support event.
OnHeaderDrawQueryElements
Header & column support event.
OnHeaderHeightDblClickResize
Not documented.
OnHeaderHeightTracking
Not documented.
OnHeaderMouseDown
Header & column support event.
OnHeaderMouseMove
Header & column support event.
OnHeaderMouseUp
Header & column support event.
OnHotChange
Navigation support event.
OnIncrementalSearch
Miscellaneous event.
OnInitChildren
Node management event.
OnInitNode
Node management event.
OnKeyAction
Miscellaneous event.
OnLoadNode
Streaming support event.
OnLoadTree
Not documented.
OnMeasureItem
Miscellaneous event.
OnNodeClick
Not documented.
OnNodeCopied
Miscellaneous event.
OnNodeCopying
Miscellaneous event.
OnNodeDblClick
Not documented.
OnNodeExport
Not documented.
OnNodeHeightDblClickResize
Not documented.
OnNodeHeightTracking
Not documented.
OnNodeMoved
Miscellaneous event.
OnNodeMoving
Miscellaneous event.
OnPaintBackground
Paint support event.
OnRemoveFromSelection
Not documented.
OnRenderOLEData
Drag'n drop and clipboard support event.
OnResetNode
Node management event.
OnSaveNode
Streaming support event.
OnSaveTree
Not documented.
OnScroll
Miscellaneous event.
OnShowScrollbar
Not documented.
OnStartOperation
Not documented.
OnStateChange
Miscellaneous event.
OnStructureChange
Miscellaneous event.
OnUpdating
Miscellaneous event.

Legend

Method
public
virtual
protected
Constructor
Property
read only
Event

TBaseVirtualTree Methods

AbsoluteIndex
Reads the overall index of a node.
AddChild
Creates and adds a new child node to given node.
AddFromStream
Adds the content from the given stream to the given node.
AddToSelection
This is the overview for the AddToSelection method overload.
AdjustImageBorder
Depending on the width of the image list as well as the given bidi mode R must be adjusted.
AdjustPaintCellRect
Used in descentants to modify the clip rectangle of the current column while painting a certain node.
AdjustPanningCursor
Loads the proper cursor which indicates into which direction scrolling is done.
AdviseChangeEvent
Used to register a delayed change event.
AllocateInternalDataArea
Registration method to allocate tree internal data per node.
Animate
Support method for animated actions in the tree view.
Assign
Used to copy properties from another Virtual Treeview.
BeginDrag
Starts an OLE drag'n drop operation.
BeginSynch
Enters the tree into a special synchronized mode.
BeginUpdate
Locks the tree view to perform several update operations.
CalculateSelectionRect
Support method for draw selection.
CanAutoScroll
Determines whether the tree can currently auto scroll its window.
CancelCutOrCopy
Canceles any pending cut or copy clipboard operation.
CancelEditNode
Cancel the current edit operation, if there is any.
CancelOperation
Not documented.
CanEdit
Determines whether a node can be edited or not.
CanFocus
Support method to determine whether the tree window can receive the input focus.
CanShowDragImage
Determines whether a drag image should be shown.
CanSplitterResizeNode
Not documented.
Change
Central method called when a node's selection state changes.
ChangeScale
Helper method called by the VCL when control resizing is due.
CheckedNodes
Not documented.
CheckParentCheckState
Helper method for recursive check state changes.
ChildNodes
Not documented.
Clear
Clears the tree and removes all nodes.
ClearChecked
Not documented.
ClearSelection
Removes all nodes from the current selection.
ClearTempCache
Helper method to clear the internal temporary node cache.
ColumnIsEmpty
Used to determine if a cell is considered as being empty.
ComputeRTLOffset
Not documented.
CopyTo
This is the overview for the CopyTo method overload.
CopyToClipBoard
Copies all currently selected nodes to the clipboard.
CountLevelDifference
Determines the level difference of two nodes.
CountVisibleChildren
Determines the number of visible child nodes of the given node.
CreateParams
Prepares the creation of the controls window handle.
CreateWnd
Initializes data, which depends on the window handle.
CutCopyNodes
Not documented.
CutToClipBoard
Copies the currently selected nodes to the clipboard and removes them once a consumer has taken the data.
DefineProperties
Helper method to customize loading and saving persistent tree data.
DeleteChildren
Removes all child nodes from the given node.
DeleteNode
Removes the given node from the tree.
DeleteSelectedNodes
Removes all currently selected nodes form the tree.
DetermineDropMode
Not documented.
DetermineHiddenChildrenFlag
Determines whether all children of a given node are hidden.
DetermineHiddenChildrenFlagAllNodes
Determines whether all children of all nodes are hidden.
DetermineHitPositionLTR
Determines the hit position within a node with left-to-right and right-to-left orientation.
DetermineHitPositionRTL
Determines the hit position within a node with left-to-right and right-to-left orientation.
DetermineLineImageAndSelectLevel
Not documented.
DetermineNextCheckState
Not documented.
DetermineScrollDirections
Not documented.
DoAdvancedHeaderDraw
Not documented.
DoAfterCellPaint
Not documented.
DoAfterItemErase
Not documented.
DoAfterItemPaint
Not documented.
DoAfterPaint
Not documented.
DoAutoScroll
Enables or disables the auto scroll timer.
DoBeforeCellPaint
Not documented.
DoBeforeDrag
Not documented.
DoBeforeDrawLineImage
Not documented.
DoBeforeItemErase
Not documented.
DoBeforeItemPaint
Not documented.
DoBeforePaint
Not documented.
DoCancelEdit
Called when the tree should stop editing without accepting changed values.
DoCanEdit
Not documented.
DoCanSplitterResizeNode
Not documented.
DoChange
Not documented.
DoCheckClick
Not documented.
DoChecked
Not documented.
DoChecking
Not documented.
DoCollapsed
Not documented.
DoCollapsing
Not documented.
DoColumnClick
Not documented.
DoColumnDblClick
Not documented.
DoColumnResize
Not documented.
DoCompare
Not documented.
DoCreateDataObject
Not documented.
DoCreateDragManager
Not documented.
DoCreateEditor
Not documented.
DoDragDrop
Not documented.
DoDragExpand
Not documented.
DoDragging
Internal method which handles drag' drop.
DoDragOver
Not documented.
DoEdit
Initiates editing of the currently set focused column and edit node.
DoEndDrag
Not documented.
DoEndEdit
Stops the current edit operation and takes over the new content.
DoEndOperation
Not documented.
DoExpanded
Not documented.
DoExpanding
Not documented.
DoFocusChange
Not documented.
DoFocusChanging
Not documented.
DoFocusNode
Internal method to set the focused node.
DoFreeNode
Not documented.
DoGetAnimationType
Determines the type of animation to be used.
DoGetCellContentMargin
Not documented.
DoGetCursor
Not documented.
DoGetHeaderCursor
Not documented.
DoGetImageIndex
Not documented.
DoGetImageText
Not documented.
DoGetLineStyle
Not documented.
DoGetNodeHint
Not documented.
DoGetNodeTooltip
Not documented.
DoGetNodeWidth
Overridable method which always retuns 0.
DoGetPopupMenu
Overridable method which triggers the OnGetPopup event.
DoGetUserClipboardFormats
Not documented.
DoHeaderClick
Not documented.
DoHeaderDblClick
Not documented.
DoHeaderDragged
Not documented.
DoHeaderDraggedOut
Not documented.
DoHeaderDragging
Not documented.
DoHeaderDraw
Not documented.
DoHeaderDrawQueryElements
Not documented.
DoHeaderMouseDown
Not documented.
DoHeaderMouseMove
Not documented.
DoHeaderMouseUp
Not documented.
DoHotChange
Not documented.
DoIncrementalSearch
Not documented.
DoInitChildren
Not documented.
DoInitNode
Not documented.
DoKeyAction
Not documented.
DoLoadUserData
Not documented.
DoMeasureItem
Not documented.
DoNodeClick
Not documented.
DoNodeCopied
Not documented.
DoNodeCopying
Not documented.
DoNodeDblClick
Not documented.
DoNodeHeightDblClickResize
Not documented.
DoNodeHeightTracking
Not documented.
DoNodeMoved
Not documented.
DoNodeMoving
Not documented.
DoPaintBackground
Not documented.
DoPaintDropMark
Overridable method which draws the small line on top of a nodes image depending on the current drop state.
DoPaintNode
Overridable method which does nothing.
DoPopupMenu
Overridable method which shows the popup menu for the given node.
DoRenderOLEData
Not documented.
DoReset
Not documented.
DoSaveUserData
Not documented.
DoScroll
Overridable method which triggers the OnScroll event.
DoSetOffsetXY
Internal core routine to set the tree's scroll position.
DoShowScrollbar
Not documented.
DoStartDrag
Not documented.
DoStartOperation
Not documented.
DoStateChange
Not documented.
DoStructureChange
Not documented.
DoTimerScroll
Callback method which is triggered whenever the scroll timer fires.
DoUpdating
Not documented.
DoValidateCache
Not documented.
DragAndDrop
Not documented.
DragCanceled
Called by the VCL when a drag'n drop operation was canceled by the user.
DragDrop
Helper method, which is used when a drag operation is finished.
DragEnter
Not documented.
DragFinished
Called when a drag operation is finished (accepted or cancelled).
Dragging
Returns true if a drag'n drop operation is in progress.
DragLeave
Not documented.
DragOver
Not documented.
DrawDottedHLine
Not documented.
DrawDottedVLine
Not documented.
EditNode
Starts editing the given node if allowed to.
EndEditNode
Stops node editing if it was started before.
EndOperation
Not documented.
EndSynch
Counterpart to BeginSynch.
EndUpdate
Resets the update lock set by BeginUpdate.
ExecuteAction
Not documented.
FindNodeInSelection
Helper method to find the given node in the current selection.
FinishChunkHeader
Not documented.
FinishCutOrCopy
Stops any pending cut or copy clipboard operation.
FlushClipboard
Renders all pending clipboard data.
FontChanged
Not documented.
FullCollapse
Collapses all nodes in the tree.
FullExpand
Expands all nodes in the tree.
GetBorderDimensions
Not documented.
GetCheckImage
Not documented.
GetCheckImageListFor
Not documented.
GetColumnClass
Returns the class to be used to manage columns in the tree.
GetControlsAlignment
Not documented.
GetDisplayRect
Not documented.
GetEffectivelyFiltered
Not documented.
GetEffectivelyVisible
Not documented.
GetFirst
Group of node navigation functions.
GetFirstChecked
Not documented.
GetFirstChild
Group of node navigation functions.
GetFirstCutCopy
Group of node navigation functions.
GetFirstInitialized
Group of node navigation functions.
GetFirstLeaf
Not documented.
GetFirstLevel
Not documented.
GetFirstNoInit
Group of node navigation functions.
GetFirstSelected
Group of node navigation functions.
GetFirstVisible
Group of node navigation functions.
GetFirstVisibleChild
Not documented.
GetFirstVisibleChildNoInit
Not documented.
GetFirstVisibleNoInit
Group of node navigation functions.
GetHeaderClass
Returns the header class to be used by the tree.
GetHintWindowClass
Not documented.
GetHitTestInfoAt
Returns information about the node at the given position.
GetImageIndex
Not documented.
GetLast
Not documented.
GetLastChild
GetLastChildNoInit
GetLastInitialized
Not documented.
GetLastNoInit
Not documented.
GetLastVisible
Not documented.
GetLastVisibleChild
Not documented.
GetLastVisibleChildNoInit
Not documented.
GetLastVisibleNoInit
Not documented.
GetMaxColumnWidth
Not documented.
GetMaxRightExtend
Determines the maximum with of the currently visible part of the tree.
GetNativeClipboardFormats
Used to let descendants and the application add their own supported clipboard formats.
GetNext
Not documented.
GetNextChecked
This is the overview for the GetNextChecked method overload.
GetNextCutCopy
Not documented.
GetNextInitialized
Not documented.
GetNextLeaf
Not documented.
GetNextLevel
Not documented.
GetNextNoInit
Not documented.
GetNextSelected
Not documented.
GetNextSibling
GetNextVisible
Not documented.
GetNextVisibleNoInit
Not documented.
GetNextVisibleSibling
Not documented.
GetNextVisibleSiblingNoInit
Not documented.
GetNodeAt
This is the overview for the GetNodeAt method overload.
GetNodeData
Returns the address of the user data area of the given node.
GetNodeLevel
Returns the indentation level of the given node.
GetOperationCanceled
Not documented.
GetOptionsClass
Customization helper to determine which options class the tree should use.
GetPrevious
Not documented.
GetPreviousChecked
Not documented.
GetPreviousCutCopy
Not documented.
GetPreviousInitialized
Not documented.
GetPreviousLeaf
Not documented.
GetPreviousLevel
Not documented.
GetPreviousNoInit
Not documented.
GetPreviousSelected
Not documented.
GetPreviousSibling
GetPreviousVisible
Not documented.
GetPreviousVisibleNoInit
Not documented.
GetPreviousVisibleSibling
Not documented.
GetPreviousVisibleSiblingNoInit
Not documented.
GetSortedCutCopySet
Returns a sorted list of nodes, which are marked for s cut or copy clipboard operation.
GetSortedSelection
Returns a sorted list of all currently selected nodes.
GetTextInfo
Not documented.
GetTreeFromDataObject
OLE drag'n drop and clipboard support method.
GetTreeRect
Returns the size of the virtual tree image.
GetVisibleParent
Not documented.
HandleHotTrack
Not documented.
HandleIncrementalSearch
Not documented.
HandleMouseDblClick
Not documented.
HandleMouseDown
Not documented.
HandleMouseUp
Not documented.
HasAsParent
Determines if the given node has got another node as one of its parents.
HasImage
Not documented.
HasPopupMenu
Determines whether there is a pop up menu assigned to the tree.
InitChildren
Not documented.
InitializedNodes
Not documented.
InitNode
Not documented.
InsertNode
Inserts a new node and returns it to the caller.
InternalAddFromStream
Not documented.
InternalAddToSelection
This is the overview for the InternalAddToSelection method overload.
InternalCacheNode
Not documented.
InternalClearSelection
Not documented.
InternalConnectNode
Not documented.
InternalData
Returns the address of the internal data for a tree class.
InternalDisconnectNode
Not documented.
InternalRemoveFromSelection
Not documented.
InvalidateCache
Empties the internal node cache and marks it as invalid.
InvalidateChildren
Invalidates all children of the given node.
InvalidateColumn
Invalidates the client area part of a column.
InvalidateNode
Invalidates the given node.
InvalidateToBottom
Invalidates the client area starting with the top position of the given node.
InvertSelection
Inverts the current selection.
IsEditing
Tells the caller whether the tree is currently in edit mode.
IsMouseSelecting
Tell the caller whether the tree is currently in draw selection mode.
IterateSubtree
Iterator method to go through all nodes of a given sub tree.
LeafNodes
Not documented.
LevelNodes
Not documented.
Loaded
Not documented.
LoadFromFile
Loads previously streamed out tree data back in again.
LoadFromStream
Loads previously streamed out tree data back in again.
MainColumnChanged
Not documented.
MarkCutCopyNodes
Not documented.
MeasureItemHeight
Not documented.
MouseMove
Not documented.
MoveTo
This is the overview for the MoveTo method overload.
Nodes
Not documented.
NoInitNodes
Not documented.
Notification
Not documented.
OriginalWMNCPaint
Not documented.
Paint
TControl's Paint method used here to display the tree.
PaintCheckImage
Not documented.
PaintImage
Not documented.
PaintNodeButton
Not documented.
PaintSelectionRectangle
Not documented.
PaintTree
Main paint routine for the tree image.
PaintTreeLines
Not documented.
PanningWindowProc
Not documented.
PasteFromClipboard
Inserts the content of the clipboard into the tree.
PrepareCell
This method is called immediately before a cell's content is drawn und is responsible to paint selection colors etc.
PrepareDragImage
Not documented.
Print
Not documented.
ProcessDrop
Helper method to ease OLE drag'n drop operations.
ProcessOLEData
Takes serialized OLE tree data and reconstructs the former structure.
ReadChunk
Not documented.
ReadNode
Not documented.
RedirectFontChangeEvent
Not documented.
ReinitChildren
Forces all child nodes of Node to be reinitialized.
ReinitNode
Forces a reinitialization of the given node.
RemoveFromSelection
Removes the given node from the current selection.
RenderOLEData
Renders pending OLE data.
RepaintNode
Causes the treeview to repaint the given node.
ResetNode
Resets the given node to uninitialized.
ResetRangeAnchor
Not documented.
RestoreFontChangeEvent
Not documented.
SaveToFile
Saves the entire content of the tree into a file or stream.
SaveToStream
Saves the entire content of the tree into a file or stream.
ScrollIntoView
This is the overview for the ScrollIntoView method overload.
SelectAll
Selects all nodes in the tree.
SelectedNodes
Not documented.
SelectNodes
Selects a range of nodes.
SetFocusedNodeAndColumn
Not documented.
SkipNode
Not documented.
Sort
Sorts the given node.
SortTree
Sorts the entire tree view.
StartOperation
Not documented.
StartWheelPanning
Not documented.
StopWheelPanning
Not documented.
StructureChange
Not documented.
SuggestDropEffect
Not documented.
ToggleNode
Changes a node's expand state to the opposite state.
ToggleSelection
Toggles the selection state of a range of nodes.
UnselectNodes
Deselects a range of nodes.
UpdateAction
Not documented.
UpdateColumnCheckState
Not documented.
UpdateDesigner
Not documented.
UpdateEditBounds
Not documented.
UpdateHeaderRect
Not documented.
UpdateHorizontalRange
Not documented.
UpdateHorizontalScrollBar
Applies changes to the horizontal and vertical scrollbars.
UpdateRanges
Not documented.
UpdateScrollBars
Applies changes to the horizontal and vertical scrollbars.
UpdateVerticalRange
Not documented.
UpdateVerticalScrollBar
Applies changes to the horizontal and vertical scrollbars.
UpdateWindowAndDragImage
Not documented.
UseRightToLeftReading
Helper method for right-to-left layout.
ValidateCache
Initiates the validation of the internal node cache.
ValidateChildren
Validates all children of a given node.
ValidateNode
Validates a given node.
ValidateNodeDataSize
Helper method for node data size initalization.
VisibleChildNodes
Not documented.
VisibleChildNoInitNodes
Not documented.
VisibleNodes
Not documented.
VisibleNoInitNodes
Not documented.
WndProc
Redirected window procedure to do some special processing.
WriteChunks
Writes the core chunks for the given node to the given stream.
WriteNode
Writes the cover (envelop) chunk for the given node to the given stream.

TBaseVirtualTree Properties

Accessible
Not documented.
AccessibleItem
Not documented.
AccessibleName
Not documented.
Alignment
Determines the horizontal alignment of text if no columns are defined.
AnimationDuration
Determines the maximum duration the tree can use to play an animation.
AutoExpandDelay
Time delay after which a node gets expanded if it is the current drop target.
AutoScrollDelay
Time which determines when auto scrolling should start.
AutoScrollInterval
Time interval between scroll events when doing auto scroll.
Background
Holds a background image for the tree.
BackgroundOffsetX
Horizontal offset of the background image.
BackgroundOffsetY
Vertical offset of the background image.
BorderStyle
Same as TForm.BorderStyle.
BottomNode
Not documented.
BottomSpace
Not documented.
ButtonFillMode
Determines how to fill the background of the node buttons.
ButtonStyle
Determines the look of node buttons.
ChangeDelay
Time which determines when the OnChange event should be triggered after the actual change event.
CheckedCount
Not documented.
CheckImageKind
Determines which images should be used for checkboxes and radio buttons.
CheckImages
Not documented.
CheckState
Read or set the check state of a node.
CheckType
Read or set the check type of a node.
ChildCount
Read or set the number of child nodes of a node.
ChildrenInitialized
Read whether a node's child count has been initialized already.
ClipboardFormats
Special class to keep a list of clipboard format descriptions.
Colors
A collection of colors used in the tree.
CustomCheckImages
Assign your own image list to get the check images you like most.
CutCopyCount
Not documented.
DefaultNodeHeight
Read or set the height new nodes get as initial value.
DefaultPasteMode
Read or set the value, which determines where to add pasted nodes to.
DragHeight
Read or set the vertical limit of the internal drag image.
DragImage
Holds the instance of the internal drag image.
DragImageKind
Read or set what should be shown in the drag image.
DragManager
Holds the reference to the internal drag manager.
DragOperations
Read or set which drag operations may be allowed in the tree.
DragSelection
Keeps a temporary list of nodes during drag'n drop.
DragType
Read or set which subsystem should be used for dragging.
DragWidth
Read or set the horizontal limit of the internal drag image.
DrawSelectionMode
Read or set how multiselection with the mouse is to be visualized.
DropTargetNode
Contains the current drop target node if the tree is currently the target of a drag'n drop operation.
EditColumn
Not documented.
EditDelay
Read or set the maximum time between two single clicks on the same node, which should start node editing.
EditLink
Keeps a reference to the internal edit link during a node edit operation.
EffectiveOffsetX
Not documented.
EmptyListMessage
Not documented.
Expanded
Read or set the expanded state of a particular node.
FocusedColumn
Read or set the currently focused collumn.
FocusedNode
Read or set the currently focused node.
Font
Same as TWinControl.Font.
FullyVisible
Read or set whether a node is fully visible or not.
HasChildren
Read or set whether a node has got children.
Header
Provides access to the header instance.
HeaderRect
Returns the non-client-area rectangle used for the header.
HintAnimation
Read or set the current hint animation type.
HintData
Not documented.
HintMode
Read or set what type of hint you want for the tree view.
HotCursor
Read or set which cursor should be used for hot nodes.
HotMinusBM
Not documented.
HotNode
Read, which node is currently the hot node.
HotPlusBM
Not documented.
Images
Read or set the tree's normal image list.
IncrementalSearch
Read or set the current incremental search mode.
IncrementalSearchDirection
Read or set the direction to be used for incremental search.
IncrementalSearchStart
Read or set where to start incremental search.
IncrementalSearchTimeout
Read or set the maximum time, which is allowed between two consecutive key strokes so that incremental search stays active.
Indent
Read or set the indentation amount for node levels.
IsDisabled
Read or set the enabled state of the given node.
IsEffectivelyFiltered
Not documented.
IsEffectivelyVisible
Not documented.
IsFiltered
Not documented.
IsVisible
Read or set the visibility state of the given node.
LastClickPos
Used for retained drag start and wheel mouse scrolling.
LastDropMode
Read how the last drop operation finished.
LastHintRect
Not documented.
LineMode
Read or set the mode of the tree lines.
LineStyle
Read or set the mode of the tree lines.
Margin
Read or set the tree's node margin.
MinusBM
Not documented.
MultiLine
Read or toggle the multiline feature for a given node.
NodeAlignment
Read or set the node alignment value.
NodeDataSize
Read or set the extra data size for each node.
NodeHeight
Read or set a node's height.
NodeParent
Read or set a node's parent node.
OffsetX
Read or set the tree's current horizontal and vertical scroll offsets.
OffsetXY
Read or set the tree's current horizontal and vertical scroll offsets.
OffsetY
Read or set the tree's current horizontal and vertical scroll offsets.
OperationCanceled
Not documented.
OperationCount
Not documented.
PlusBM
Not documented.
RangeX
Not documented.
RangeY
Not documented.
RootNode
Reference to the internal root node which is the anchor of the entire tree node hierarchy.
RootNodeCount
Read or set the number of nodes on the top level.
ScrollBarOptions
Reference to the scroll bar options class.
SearchBuffer
Current input string for incremental search.
Selected
Property to modify or determine the selection state of a node.
SelectedCount
Contains the number of selected nodes.
SelectionBlendFactor
Read or set the current blend factor for the multi selection rectangle and the node selection rectangle.
SelectionCurveRadius
Read or set the current corner radius for node selection rectangles.
SelectionLocked
Not documented.
StateImages
Reference to the images list which is used for the state images.
TextMargin
Read or set the distance of the node caption to its borders.
TopNode
The top node is the node which is currently at the top border of the client area.
TotalCount
Returns the number of nodes in the tree.
TotalInternalDataSize
Keeps the currently accumulated data size for one node.
TreeOptions
Reference to the tree's options.
TreeStates
Property which keeps a set of flags which indicate current operation and states of the tree.
UpdateCount
Not documented.
VerticalAlignment
Used to set a node's vertical button aligment with regard to the entire node rectangle.
VisibleCount
Number of currently visible nodes.
VisiblePath
Property to set or determine a node parent's expand states.
WantTabs
Read or set whether the tree wants to process tabs on its own.

Class Hierarchy
  TBaseVirtualTree
File

VirtualTrees

Links
Classes, Topics, TBaseVirtualTree Methods, TBaseVirtualTree Constructors, TBaseVirtualTree Destructors, TBaseVirtualTree Properties, TBaseVirtualTree Events, TBaseVirtualTree Constructors, TBaseVirtualTree Destructors, TBaseVirtualTree Events, Legend, TBaseVirtualTree Methods, TBaseVirtualTree Properties


TBaseVirtualTree Methods
TBaseVirtualTree Class | Methods | Legend | Send Feedback

The methods of the TBaseVirtualTree class are listed here.

Class

TBaseVirtualTree Class

Legend

Method
public
virtual
protected

Links
TBaseVirtualTree Class, Methods, Legend
What do you think about this topic? Send feedback!


TBaseVirtualTree.AbsoluteIndex Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Reads the overall index of a node.

Pascal
function AbsoluteIndex(Node: PVirtualNode): Cardinal;
Description

Indicates the index of the tree node relative to the first tree node in a tree.

Notes

Similar to TotalCount also with AbsoluteIndex the entire tree will be validated, with all consequences like high memory

usage etc. And since Virtual Treeview is a highly changing environment there is not much sense to use the absolute index.

You cannot use it in any method or property of the control.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.AddChild Method
TBaseVirtualTree Methods | See Also | TBaseVirtualTree Class | Send Feedback

Creates and adds a new child node to given node.

Pascal
function AddChild(Parent: PVirtualNode; UserData: Pointer = nil): PVirtualNode; virtual;
Description

The new node will be created as last child of Parent and is returned as result.

Notes

Using AddChild is not recommended. The method is merely there for easier migration from TTreeview. The reason is that the

method has to validate the node and does some other processing, which prevents the tree from utilizings its virtual

paradigm. Important advantages will so disappear. If possible you should restructure your design and try to use the right

way: via OnInitNode and OnInitChildren.

See Also

InsertNode, OnInitNode, OnInitChildren

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, See Also, TBaseVirtualTree Class


TBaseVirtualTree.AddFromStream Method
TBaseVirtualTree Methods | See Also | TBaseVirtualTree Class | Send Feedback

Adds the content from the given stream to the given node.

Pascal
procedure AddFromStream(Stream: TStream; TargetNode: PVirtualNode);
Description

AddFromStream restores the subtree stored in Stream and adds it to TargetNode. The content of the stream must have been saved previously with SaveToStream.

See Also

SaveToStream

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, See Also, TBaseVirtualTree Class


AddToSelection Method
TBaseVirtualTree Methods | Send Feedback

This is the overview for the AddToSelection method overload.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods
Overload List
Method | Description
TBaseVirtualTree.AddToSelection (PVirtualNode) | Adds one or more nodes to the current selection.
TBaseVirtualTree.AddToSelection (TNodeArray, Integer, Boolean) |


TBaseVirtualTree.AddToSelection Method (PVirtualNode)
AddToSelection Method | TBaseVirtualTree Class | Send Feedback

Adds one or more nodes to the current selection.

Pascal
procedure AddToSelection(Node: PVirtualNode); virtual; overload;
Description

AddToSelection either takes a single node or an array of nodes and adds them to the current seletion in the tree. In this process also the vsSelected state of the node is set. NewLength is the amount of nodes to add (necessary to allow NewItems to be larger than the actual used entries). ForceInsert is true if nodes must be inserted without consideration of level select constraint or already set selected flags (e.g. when loading from stream).

Notes

In the case ForceInsert is true the caller is responsible for making sure the new nodes aren't already in the

selection array!

Group

AddToSelection Method

Links
AddToSelection Method, TBaseVirtualTree Class


TBaseVirtualTree.AddToSelection Method (TNodeArray, Integer, Boolean)
AddToSelection Method | TBaseVirtualTree Class | Send Feedback
procedure AddToSelection(const NewItems: TNodeArray; NewLength: Integer; ForceInsert: Boolean = False); virtual; overload;
procedure AddToSelection(const NewItems: TNodeArray; NewLength: Integer; ForceInsert: Boolean = False); virtual; overload;
Group

AddToSelection Method

Links
AddToSelection Method, TBaseVirtualTree Class


TBaseVirtualTree.AdjustImageBorder Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Depending on the width of the image list as well as the given bidi mode R must be adjusted.

Pascal
procedure AdjustImageBorder(Images: TCustomImageList; BidiMode: TBidiMode; VAlign: Integer; var R: TRect; var ImageInfo: TVTImageInfo); virtual;
Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.AdjustPaintCellRect Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Used in descentants to modify the clip rectangle of the current column while painting a certain node.

Pascal
procedure AdjustPaintCellRect(var PaintInfo: TVTPaintInfo; var NextNonEmpty: TColumnIndex); virtual;
Description

The rectangle for the given cell (node, column pair in PaintInfo) can be adjusted by descendants to make room for special drawings, if necessary.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.AdjustPanningCursor Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Loads the proper cursor which indicates into which direction scrolling is done.

Pascal
procedure AdjustPanningCursor(X: Integer; Y: Integer); virtual;
Description

Wheel mice support a special mode for their wheel, which is used in many applications. By pressing the wheel (which is also a button) you can start so called wheell panning. In this mode the tree window is smoothly scrolled in the direction to which the mouse pointer is moved. As soon as you release the wheel button wheel panning is stopped. A second form of this feature is referred to as wheel scrolling. It is basically the same as wheel panning but is entered when you release the wheel button before you moved the mouse. In this mode you can move the mouse and do the tree scrolling without holding the wheel all the time. To stop this mode simple turn the wheel, or click any mouse button. Also pressing ESC will cause to leave the wheel scrolling mode.

Depending on the direction the tree content is scroll also the mouse cursor must be adjusted to indicate this direction. AdjustPanningCursor does this.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.AdviseChangeEvent Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Used to register a delayed change event.

Pascal
procedure AdviseChangeEvent(StructureChange: Boolean; Node: PVirtualNode; Reason: TChangeReason); virtual;
Description

Often there can be many change events in a row and calling the application for each of them might be too time costly. So they are by default accumulated until a certain time has elapsed (ChangeDelay) or, if BeginUpdate was called, until EndUpdate is executed. If StructureChange is False then we have a selection change event (without a specific reason) otherwise it is a structure change.

There are two possibilities to avoid delayed change events. One is the permanent way by setting ChangeDelay to 0, the other one is to enter the synchronous mode by calling BeginSynch.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.AllocateInternalDataArea Method
TBaseVirtualTree Methods | See Also | TBaseVirtualTree Class | Send Feedback

Registration method to allocate tree internal data per node.

Pascal
function AllocateInternalDataArea(Size: Cardinal): Cardinal; virtual;
Description

This method is used for descentants to specify their need for internal data. Each node contains some extra reserved bytes between the node's normal members and the user data area. This internal area can be used to cache additional information, e.g. the string tree keeps here the width of the node's caption in the main column for quick hit tests when doing draw selection with the mouse.

A tree implementation must call this method only once and before any node is created (except the hidden root node which is handled accordingly). The result value is the offset from the start of the node to the internal data area of the node for this tree class. I recommend to implement an access method called InternalData (as shown in TCustomVirtualStringTree) which does the pointer mathematic.

See Also

Data handling, TotalInternalDataSize

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, See Also, TBaseVirtualTree Class


TBaseVirtualTree.Animate Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Support method for animated actions in the tree view.

Pascal
procedure Animate(Steps: Cardinal; Duration: Cardinal; Callback: TVTAnimationCallback; Data: Pointer); virtual;
Description

This method is a general purpose helper to do an animation and is used for hint fading, animated node toggling etc. The method automatically takes care that the animation is done within the specified time interval. For each step in the animation loop the provided callback is called which gets Data passed as parameter.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.Assign Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Used to copy properties from another Virtual Treeview.

Pascal
procedure Assign(Source: TPersistent); override;
Description

Although this method assignes most tree properties it does not assign the header and the nodes to the new tree. There is an own method (TVTHeader.Assign) for the header assignment. In order to copy the nodes you must save them to a stream and restore them in the other control-

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.BeginDrag Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Starts an OLE drag'n drop operation.

Pascal
procedure BeginDrag(Immediate: Boolean; Threshold: Integer = -1);
Description

This method is called within the mouse down handler when DragMode is set to dmAutomatic. Manual start of a drag operation is not recommended as it confuses the correct mouse down handling which is quite complex in Virtual Treevew. If you selectively want to allow to start a drag operation then use the OnDragAllowed event which is called when DragMode is dmManual.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.BeginSynch Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Enters the tree into a special synchronized mode.

Pascal
procedure BeginSynch;
Description

Similar to BeginUpdate does BeginSynch provide a mechanism to bring certain events into a common line. That means, whenever you need to make sure change events are called before a modification in the tree is finished (e.g. when changing the focus or selection) then use the synchronous mode started with BeginSynch (and stopped with EndSynch).

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.BeginUpdate Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Locks the tree view to perform several update operations.

Pascal
procedure BeginUpdate; virtual;
Description

Call this method when a long lasting operation begins which might involve manipulation of many nodes.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.CalculateSelectionRect Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Support method for draw selection.

Pascal
function CalculateSelectionRect(X: Integer; Y: Integer): Boolean; virtual;
Description

Recalculates old and new selection rectangle given that X, Y are new mouse coordinates. The function returns true if there was a change since the last call.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.CanAutoScroll Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Determines whether the tree can currently auto scroll its window.

Pascal
function CanAutoScroll: Boolean; virtual;
Description

This method was created because the conditions when the tree may automatically scroll its content are quite complex. Additionally, tree descendants might want to add further limitations. Thus the determination has been put into an own method which returns true if the tree is allowed to scroll, otherwise False.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.CancelCutOrCopy Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Canceles any pending cut or copy clipboard operation.

Pascal
procedure CancelCutOrCopy;
Description

This method is used to stop any pending clipboard operation. No data is transfered nor are nodes deleted.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.CancelEditNode Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Cancel the current edit operation, if there is any.

Pascal
function CancelEditNode: Boolean;
Description

Used to stop the current edit operation.The node editor will get a CancelEdit call so that the node is not changed.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.CancelOperation Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure CancelOperation;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.CanEdit Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Determines whether a node can be edited or not.

Pascal
function CanEdit(Node: PVirtualNode; Column: TColumnIndex): Boolean; virtual;
Description

The method is called when the tree is about to start a node edit operation. Returns true if editing is allowed, otherwise false.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.CanFocus Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Support method to determine whether the tree window can receive the input focus.

Pascal
function CanFocus: Boolean; override;
Description

The method adds a check for the parent form of the control.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.CanShowDragImage Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Determines whether a drag image should be shown.

Pascal
function CanShowDragImage: Boolean; virtual;
Description

This overridable method is used to determine whether a drag image can be shown or not.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.CanSplitterResizeNode Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function CanSplitterResizeNode(P: TPoint; Node: PVirtualNode; Column: TColumnIndex): Boolean;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.Change Method
TBaseVirtualTree Methods | See Also | TBaseVirtualTree Class | Send Feedback

Central method called when a node's selection state changes.

Pascal
procedure Change(Node: PVirtualNode); virtual;
Description

The Change method is called to trigger the change notifcation chain. Depending on the sync and the update states of the tree as well as the ChangeDelay value either the application is directly notified about the change or a timer is started to accumulate several change events into one.

See Also

BeginSynch, EndSynch, BeginUpdate, EndUpdate, ChangeDelay

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, See Also, TBaseVirtualTree Class


TBaseVirtualTree.ChangeScale Method
TBaseVirtualTree Methods | See Also | TBaseVirtualTree Class | Send Feedback

Helper method called by the VCL when control resizing is due.

Pascal
procedure ChangeScale(M: Integer; D: Integer); override;
Description

ChangeScale is a method introduced by TControl. In Virtual Treeview it is responsible to change the tree's and the header's fonts as well as to compute the new default node height.

See Also

TVTHeader.ChangeScale, DefaultNodeHeight

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, See Also, TBaseVirtualTree Class


TBaseVirtualTree.CheckedNodes Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function CheckedNodes(State: TCheckState = csCheckedNormal; ConsiderChildrenAbove: Boolean = False): TVTVirtualNodeEnumeration;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.CheckParentCheckState Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Helper method for recursive check state changes.

Pascal
function CheckParentCheckState(Node: PVirtualNode; NewCheckState: TCheckState): Boolean; virtual;
Description

Checks all siblings of node to determine which check state Node's parent must get.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.ChildNodes Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function ChildNodes(Node: PVirtualNode): TVTVirtualNodeEnumeration;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.Clear Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Clears the tree and removes all nodes.

Pascal
procedure Clear; virtual;
Description

All pending operations are stopped and the tree is ready to receive new nodes.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.ClearChecked Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure ClearChecked;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.ClearSelection Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Removes all nodes from the current selection.

Pascal
procedure ClearSelection;
Description

ClearSelection empties the internal selection cache and resets the vsSelected state from all nodes, which were in this array.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.ClearTempCache Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Helper method to clear the internal temporary node cache.

Pascal
procedure ClearTempCache; virtual;
Description

The internal node cache is used when more than one node is involved in certain operations (e.g. including a range of nodes into the current selection).

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.ColumnIsEmpty Method
TBaseVirtualTree Methods | See Also | TBaseVirtualTree Class | Send Feedback

Used to determine if a cell is considered as being empty.

Pascal
function ColumnIsEmpty(Node: PVirtualNode; Column: TColumnIndex): Boolean; virtual;
Description

An empty cell might be used for the automatic column spanning feature. Descentants can override this method to modify the tree's behavior.

See Also

toAutoSpanColumns

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, See Also, TBaseVirtualTree Class


TBaseVirtualTree.ComputeRTLOffset Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function ComputeRTLOffset(ExcludeScrollbar: Boolean = False): Integer; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


CopyTo Method

TBaseVirtualTree.ComputeRTLOffset Method | TBaseVirtualTree Methods | TBaseVirtualTree.CopyTo Method (PVirtualNode, PVirtualNode, TVTNodeAttachMode, Boolean)
CopyTo Method
TBaseVirtualTree Methods | Send Feedback

This is the overview for the CopyTo method overload.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods
Overload List
Method | Description
TBaseVirtualTree.CopyTo (PVirtualNode, PVirtualNode, TVTNodeAttachMode, Boolean) | Copies Source and all its child nodes to Target.
TBaseVirtualTree.CopyTo (PVirtualNode, TBaseVirtualTree, TVTNodeAttachMode, Boolean) | Copies Source and all its child nodes to Target.


TBaseVirtualTree.CopyTo Method (PVirtualNode, PVirtualNode, TVTNodeAttachMode, Boolean)
CopyTo Method | TBaseVirtualTree Class | Send Feedback

Copies Source and all its child nodes to Target.

Pascal
function CopyTo(Source: PVirtualNode; Tree: TBaseVirtualTree; Mode: TVTNodeAttachMode; ChildrenOnly: Boolean): PVirtualNode; overload;
function CopyTo(Source: PVirtualNode; Target: PVirtualNode; Mode: TVTNodeAttachMode; ChildrenOnly: Boolean): PVirtualNode; overload;
Description

Mode is used to specify further where to add the new node actually (as sibling of Target or as child of Target). Result is the newly created node to which source has been copied if ChildrenOnly is False or just contains Target in the other case. ChildrenOnly determines whether to copy also the source node or only its child nodes.

The variant taking a tree reference as target can be used to transfer nodes to a different tree, without determining its root node first. However one can also pass in any virtual tree node as target, as long as it belongs to a tree. The owning tree is automatically determined.

Group

CopyTo Method

Links
CopyTo Method, TBaseVirtualTree Class
What do you think about this topic? Send feedback!


TBaseVirtualTree.CopyToClipBoard Method

TBaseVirtualTree.CopyTo Method (PVirtualNode, PVirtualNode, TVTNodeAttachMode, Boolean) | TBaseVirtualTree Methods | TBaseVirtualTree.CountLevelDifference Method
TBaseVirtualTree.CopyToClipBoard Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Copies all currently selected nodes to the clipboard.

Pascal
procedure CopyToClipBoard; virtual;
Description

CopyToClipboard causes the tree to copy the currently selected nodes to the clipboard. Actually, Virtual Treeview maintains socalled delayed rendering. This means the participating nodes are marked as being in the current clipboard set (see vsCutOrCopy in TVirtualNodeStates) and only an IDataObject interface is placed onto the clipboard but no data yet. This avoids not only possibly huge memory requirements but it also avoids rendering data in a format which is not necessary. The application which pastes the clipboard content later will get the IDataObject interface and requests the format it can handle. The actual data is then rendered when the target application calls IDataObject.GetData, which results in a call to RenderOLEData.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.CountLevelDifference Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Determines the level difference of two nodes.

Pascal
function CountLevelDifference(Node1: PVirtualNode; Node2: PVirtualNode): Integer; virtual;
Description

This method counts how many indentation levels the given nodes are apart. If both nodes have the same parent then the difference is 0 otherwise the result is basically GetNodeLevel(Node2) - GetNodeLevel(Node1), but with sign. If the result is negative then Node2 is less intended than Node1.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.CountVisibleChildren Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Determines the number of visible child nodes of the given node.

Pascal
function CountVisibleChildren(Node: PVirtualNode): Cardinal; virtual;
Description

CountVisibleChildren iterates through all child nodes of Node and counts how many of them have the vsVisible state set.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.CreateParams Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Prepares the creation of the controls window handle.

Pascal
procedure CreateParams(var Params: TCreateParams); override;
Description

CreateParams is overriden to allow to set certain window styles for the control.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.CreateWnd Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Initializes data, which depends on the window handle.

Pascal
procedure CreateWnd; override;
Description

Some properties must be preset first after the window handle was created. CreateWnd is the perfect place for this.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.CutCopyNodes Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function CutCopyNodes(ConsiderChildrenAbove: Boolean = False): TVTVirtualNodeEnumeration;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.CutToClipBoard Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Copies the currently selected nodes to the clipboard and removes them once a consumer has taken the data.

Pascal
procedure CutToClipBoard; virtual;
Description

Similar to CopyToClipboard only the nodes are deleted after they have been pasted into the target.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DefineProperties Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Helper method to customize loading and saving persistent tree data.

Pascal
procedure DefineProperties(Filer: TFiler); override;
Description

There were heavy changes in some properties during development of VT. This method helps to make migration easier by reading old properties manually and put them into the new properties as appropriate. These old properties are never written again and silently disappear.

Another task of this method is to work around the problem that TCollection is not streamed correctly when using Visual Form Inheritance (VFI).

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DeleteChildren Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Removes all child nodes from the given node.

Pascal
procedure DeleteChildren(Node: PVirtualNode; ResetHasChildren: Boolean = False);
Description

The method works recursively: all grandchildren and their children are removed as well.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DeleteNode Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Removes the given node from the tree.

Pascal
procedure DeleteNode(Node: PVirtualNode; Reindex: Boolean = True);
Description

This method deletes the given node. If the node was initialized or had gotten initial data via the AddChild or InsertNode then the event OnFreeNode is called to allow the application to free any user data attached to a node.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DeleteSelectedNodes Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Removes all currently selected nodes form the tree.

Pascal
procedure DeleteSelectedNodes; virtual;
Description

All nodes in the current selection are affected.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DetermineDropMode Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function DetermineDropMode(const P: TPoint; var HitInfo: THitInfo; var NodeRect: TRect): TDropMode; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DetermineHiddenChildrenFlag Method
TBaseVirtualTree Methods | See Also | TBaseVirtualTree Class | Send Feedback

Determines whether all children of a given node are hidden.

Pascal
procedure DetermineHiddenChildrenFlag(Node: PVirtualNode); virtual;
Description

Virtual Treeview supports a feature, which is called node button auto hide. What happens is that when all children of a node are hidden then the expand button for this node is automatically removed. In order to know about the visibility state of the child nodes an internal flag is maintained, which allows to quickly decide about the button display. DetermineHidenChildren is the update method for cases where more than one child node changed.

See Also

vsVisible, toAutoHideButtons

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, See Also, TBaseVirtualTree Class


TBaseVirtualTree.DetermineHiddenChildrenFlagAllNodes Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Determines whether all children of all nodes are hidden.

Pascal
procedure DetermineHiddenChildrenFlagAllNodes; virtual;
Description

As extension to DeterminHiddenChildren this method iteratively determines the hidden children flag for all existing nodes in the tree. This is only used for large updates. No node will be initialized in this process.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DetermineHitPositionLTR Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Determines the hit position within a node with left-to-right and right-to-left orientation.

Pascal
procedure DetermineHitPositionLTR(var HitInfo: THitInfo; Offset: Integer; Right: Integer; Alignment: TAlignment); virtual;
procedure DetermineHitPositionRTL(var HitInfo: THitInfo; Offset: Integer; Right: Integer; Alignment: TAlignment); virtual;
Description

This method, together with its counter part DetermineHitPositionRTL, is used in the process of figuring out where the a given position is located in relation to a node.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DetermineLineImageAndSelectLevel Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function DetermineLineImageAndSelectLevel(Node: PVirtualNode; var LineImage: TLineImage): Integer; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DetermineNextCheckState Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function DetermineNextCheckState(CheckType: TCheckType; CheckState: TCheckState): TCheckState; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DetermineScrollDirections Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function DetermineScrollDirections(X: Integer; Y: Integer): TScrollDirections; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoAdvancedHeaderDraw Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoAdvancedHeaderDraw(var PaintInfo: THeaderPaintInfo; const Elements: THeaderPaintElements); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoAfterCellPaint Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoAfterCellPaint(Canvas: TCanvas; Node: PVirtualNode; Column: TColumnIndex; CellRect: TRect); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoAfterItemErase Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoAfterItemErase(Canvas: TCanvas; Node: PVirtualNode; ItemRect: TRect); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoAfterItemPaint Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoAfterItemPaint(Canvas: TCanvas; Node: PVirtualNode; ItemRect: TRect); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoAfterPaint Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoAfterPaint(Canvas: TCanvas); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoAutoScroll Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Enables or disables the auto scroll timer.

Pascal
procedure DoAutoScroll(X: Integer; Y: Integer); virtual;
Description

This method determines whether the tree needs to be scrolled (the mouse is near the borders) and enables or disables the internal scroll timer which triggers the DoTimerScroll method.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoBeforeCellPaint Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoBeforeCellPaint(Canvas: TCanvas; Node: PVirtualNode; Column: TColumnIndex; CellPaintMode: TVTCellPaintMode; CellRect: TRect; var ContentRect: TRect); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoBeforeDrag Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function DoBeforeDrag(Node: PVirtualNode; Column: TColumnIndex): Boolean; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoBeforeDrawLineImage Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoBeforeDrawLineImage(Node: PVirtualNode; Level: Integer; var XPos: Integer); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoBeforeItemErase Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoBeforeItemErase(Canvas: TCanvas; Node: PVirtualNode; ItemRect: TRect; var Color: TColor; var EraseAction: TItemEraseAction); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoBeforeItemPaint Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function DoBeforeItemPaint(Canvas: TCanvas; Node: PVirtualNode; ItemRect: TRect): Boolean; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoBeforePaint Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoBeforePaint(Canvas: TCanvas); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoCancelEdit Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Called when the tree should stop editing without accepting changed values.

Pascal
function DoCancelEdit: Boolean; virtual;
Description

This method calls the edit link's IEditLink.CancelEdit method and stops the edit mode if this call returns True. If stopping is allowed then the event OnEditCancelled is triggered and a message is sent to release the edit link asynchronously.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoCanEdit Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoCanEdit(Node: PVirtualNode; Column: TColumnIndex; var Allowed: Boolean); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoCanSplitterResizeNode Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoCanSplitterResizeNode(P: TPoint; Node: PVirtualNode; Column: TColumnIndex; var Allowed: Boolean); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoChange Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoChange(Node: PVirtualNode); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoCheckClick Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoCheckClick(Node: PVirtualNode; NewCheckState: TCheckState); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoChecked Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoChecked(Node: PVirtualNode); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoChecking Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function DoChecking(Node: PVirtualNode; var NewCheckState: TCheckState): Boolean; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoCollapsed Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoCollapsed(Node: PVirtualNode); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoCollapsing Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function DoCollapsing(Node: PVirtualNode): Boolean; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoColumnClick Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoColumnClick(Column: TColumnIndex; Shift: TShiftState); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoColumnDblClick Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoColumnDblClick(Column: TColumnIndex; Shift: TShiftState); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoColumnResize Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoColumnResize(Column: TColumnIndex); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoCompare Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function DoCompare(Node1: PVirtualNode; Node2: PVirtualNode; Column: TColumnIndex): Integer; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoCreateDataObject Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function DoCreateDataObject: IDataObject; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoCreateDragManager Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function DoCreateDragManager: IVTDragManager; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoCreateEditor Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function DoCreateEditor(Node: PVirtualNode; Column: TColumnIndex): IVTEditLink; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoDragDrop Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoDragDrop(Source: TObject; DataObject: IDataObject; Formats: TFormatArray; Shift: TShiftState; Pt: TPoint; var Effect: Integer; Mode: TDropMode); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoDragExpand Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoDragExpand; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoDragging Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Internal method which handles drag' drop.

Pascal
procedure DoDragging(P: TPoint); virtual;
Description

This method starts the OLE drag'n drop operation and returns after this operation is finished.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoDragOver Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function DoDragOver(Source: TObject; Shift: TShiftState; State: TDragState; Pt: TPoint; Mode: TDropMode; var Effect: Integer): Boolean; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoEdit Method
TBaseVirtualTree Methods | See Also | TBaseVirtualTree Class | Send Feedback

Initiates editing of the currently set focused column and edit node.

Pascal
procedure DoEdit; virtual;
Description

This method takes care for editor creation and initialization. You can look for tsEditing in TreeStates to know whether editing is currently active.

See Also

tsEditing, OnCreateEditor, IVTEditLink

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, See Also, TBaseVirtualTree Class


TBaseVirtualTree.DoEndDrag Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoEndDrag(Target: TObject; X: Integer; Y: Integer); override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoEndEdit Method
TBaseVirtualTree Methods | See Also | TBaseVirtualTree Class | Send Feedback

Stops the current edit operation and takes over the new content.

Pascal
function DoEndEdit: Boolean; virtual;
Description

The method also sends a message to the tree window to asynchronously release the edit link which communicates to the actual editor. The edit link is responsible to propagate any changes made in its node editor to the tree.

Notes

TVirtualStringTree overrides this method to tell the application about the new caption by calling OnNewText.

See Also

DoEdit, OnNewText, EditNode

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, See Also, TBaseVirtualTree Class


TBaseVirtualTree.DoEndOperation Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoEndOperation(OperationKind: TVTOperationKind); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoExpanded Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoExpanded(Node: PVirtualNode); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoExpanding Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function DoExpanding(Node: PVirtualNode): Boolean; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoFocusChange Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoFocusChange(Node: PVirtualNode; Column: TColumnIndex); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoFocusChanging Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function DoFocusChanging(OldNode: PVirtualNode; NewNode: PVirtualNode; OldColumn: TColumnIndex; NewColumn: TColumnIndex): Boolean; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoFocusNode Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Internal method to set the focused node.

Pascal
procedure DoFocusNode(Node: PVirtualNode; Ask: Boolean); virtual;
Description

This methods is called by the property setter for the focused node as well as from other places to do the actual change. It takes the parameter Ask to optionally switch off (Ask = False) triggering the OnFocusChanging event.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoFreeNode Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoFreeNode(Node: PVirtualNode); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoGetAnimationType Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Determines the type of animation to be used.

Pascal
function DoGetAnimationType: THintAnimationType; virtual;
Description

Windows 98 and Windows 2000 introduced two ways of animating hints when they appear: a sliding window and a fading window. Virtual Treeview implements both animation types and also supports system dependent animations. This allows to use the animation type enabled in the particular system on which the tree currently runs. Additonally, there is a check for MMX to do a fallback if fade animation is specified but no MMX available. In this case sliding is used. Starting with Windows 2000 and Windows ME the hint animation can even be be switched off entirely. Also this case is handled by this method.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoGetCellContentMargin Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function DoGetCellContentMargin(Node: PVirtualNode; Column: TColumnIndex; CellContentMarginType: TVTCellContentMarginType = ccmtAllSides; Canvas: TCanvas = nil): TPoint; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoGetCursor Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoGetCursor(var Cursor: TCursor); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoGetHeaderCursor Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoGetHeaderCursor(var Cursor: HCURSOR); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoGetImageIndex Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function DoGetImageIndex(Node: PVirtualNode; Kind: TVTImageKind; Column: TColumnIndex; var Ghosted: Boolean; var Index: Integer): TCustomImageList; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoGetImageText Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoGetImageText(Node: PVirtualNode; Kind: TVTImageKind; Column: TColumnIndex; var ImageText: UnicodeString); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoGetLineStyle Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoGetLineStyle(var Bits: Pointer); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoGetNodeHint Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function DoGetNodeHint(Node: PVirtualNode; Column: TColumnIndex; var LineBreakStyle: TVTTooltipLineBreakStyle): UnicodeString; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoGetNodeTooltip Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function DoGetNodeTooltip(Node: PVirtualNode; Column: TColumnIndex; var LineBreakStyle: TVTTooltipLineBreakStyle): UnicodeString; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoGetNodeWidth Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Overridable method which always retuns 0.

Pascal
function DoGetNodeWidth(Node: PVirtualNode; Column: TColumnIndex; Canvas: TCanvas = nil): Integer; virtual;
Description

Descentants override this method to return a value which describes the width of a node. This is the inner width of the node excluding tree lines etc. So TVirtualStringTree returns the width of the node caption (plus text margin).

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoGetPopupMenu Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Overridable method which triggers the OnGetPopup event.

Pascal
function DoGetPopupMenu(Node: PVirtualNode; Column: TColumnIndex; Position: TPoint): TPopupMenu; virtual;
Description

This method does an automatic parent traversal in the tree hierarchy to find a matching popup menu.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoGetUserClipboardFormats Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoGetUserClipboardFormats(var Formats: TFormatEtcArray); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoHeaderClick Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoHeaderClick(HitInfo: TVTHeaderHitInfo); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoHeaderDblClick Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoHeaderDblClick(HitInfo: TVTHeaderHitInfo); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoHeaderDragged Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoHeaderDragged(Column: TColumnIndex; OldPosition: TColumnPosition); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoHeaderDraggedOut Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoHeaderDraggedOut(Column: TColumnIndex; DropPosition: TPoint); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoHeaderDragging Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function DoHeaderDragging(Column: TColumnIndex): Boolean; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoHeaderDraw Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoHeaderDraw(Canvas: TCanvas; Column: TVirtualTreeColumn; R: TRect; Hover: Boolean; Pressed: Boolean; DropMark: TVTDropMarkMode); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoHeaderDrawQueryElements Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoHeaderDrawQueryElements(var PaintInfo: THeaderPaintInfo; var Elements: THeaderPaintElements); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoHeaderMouseDown Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoHeaderMouseDown(Button: TMouseButton; Shift: TShiftState; X: Integer; Y: Integer); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoHeaderMouseMove Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoHeaderMouseMove(Shift: TShiftState; X: Integer; Y: Integer); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoHeaderMouseUp Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoHeaderMouseUp(Button: TMouseButton; Shift: TShiftState; X: Integer; Y: Integer); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoHotChange Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoHotChange(Old: PVirtualNode; New: PVirtualNode); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoIncrementalSearch Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function DoIncrementalSearch(Node: PVirtualNode; const Text: UnicodeString): Integer; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoInitChildren Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoInitChildren(Node: PVirtualNode; var ChildCount: Cardinal); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoInitNode Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoInitNode(Parent: PVirtualNode; Node: PVirtualNode; var InitStates: TVirtualNodeInitStates); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoKeyAction Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function DoKeyAction(var CharCode: Word; var Shift: TShiftState): Boolean; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoLoadUserData Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoLoadUserData(Node: PVirtualNode; Stream: TStream); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoMeasureItem Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoMeasureItem(TargetCanvas: TCanvas; Node: PVirtualNode; var NodeHeight: Integer); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoNodeClick Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoNodeClick(const HitInfo: THitInfo); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoNodeCopied Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoNodeCopied(Node: PVirtualNode); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoNodeCopying Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function DoNodeCopying(Node: PVirtualNode; NewParent: PVirtualNode): Boolean; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoNodeDblClick Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoNodeDblClick(const HitInfo: THitInfo); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoNodeHeightDblClickResize Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function DoNodeHeightDblClickResize(Node: PVirtualNode; Column: TColumnIndex; Shift: TShiftState; P: TPoint): Boolean; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoNodeHeightTracking Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function DoNodeHeightTracking(Node: PVirtualNode; Column: TColumnIndex; Shift: TShiftState; var TrackPoint: TPoint; P: TPoint): Boolean; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoNodeMoved Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoNodeMoved(Node: PVirtualNode); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoNodeMoving Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function DoNodeMoving(Node: PVirtualNode; NewParent: PVirtualNode): Boolean; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoPaintBackground Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function DoPaintBackground(Canvas: TCanvas; R: TRect): Boolean; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoPaintDropMark Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Overridable method which draws the small line on top of a nodes image depending on the current drop state.

Pascal
procedure DoPaintDropMark(Canvas: TCanvas; Node: PVirtualNode; R: TRect); virtual;
Description

This method draws a simple polyline using Colors.DropMarkColor. Descentant can override this method to customize the appearance of the drop mark.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoPaintNode Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Overridable method which does nothing.

Pascal
procedure DoPaintNode(var PaintInfo: TVTPaintInfo); virtual;
Description

Descentants override this method to paint the content of the node. For instance string trees draw the node's caption.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoPopupMenu Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Overridable method which shows the popup menu for the given node.

Pascal
procedure DoPopupMenu(Node: PVirtualNode; Column: TColumnIndex; Position: TPoint); virtual;
Description

Node and Column describe the cell for which the menu should be shown. Position determines the place (in client coordinates of the tree window) where to show the menu.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoRenderOLEData Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function DoRenderOLEData(const FormatEtcIn: TFormatEtc; out Medium: TStgMedium; ForClipboard: Boolean): HRESULT; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoReset Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoReset(Node: PVirtualNode); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoSaveUserData Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoSaveUserData(Node: PVirtualNode; Stream: TStream); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoScroll Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Overridable method which triggers the OnScroll event.

Pascal
procedure DoScroll(DeltaX: Integer; DeltaY: Integer); virtual;
Description

This method is the ideal place if you want to synchronize other controls with the tree. The event is triggered whenever the tree is scrolled (by the user or programmatically). DeltaX and DeltaY contain the relative values the position changed about.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoSetOffsetXY Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Internal core routine to set the tree's scroll position.

Pascal
function DoSetOffsetXY(Value: TPoint; Options: TScrollUpdateOptions; ClipRect: PRect = nil): Boolean; virtual;
Description

The method takes the Value structure which contains the new absolute scroll positions, both horizontal and vertical. Options specifies what should happen in the update process. A combination of the following values is possible:

  • suoRepaintHeader, If suoUpdateNCArea is also set then invalidate the header to refresh its screen image, otherwise it is ignored.
  • suoRepaintScrollbars, If suoUpdateNCArea is also set then repaint both scrollbars after updating them, otherwise it is ignored.
  • suoScrollClientArea, Scroll and invalidate the proper part of the client area.
  • suoUpdateNCArea, Update non-client area (scrollbars, header).
Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoShowScrollbar Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoShowScrollbar(Bar: Integer; Show: Boolean); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoStartDrag Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoStartDrag(var DragObject: TDragObject); override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoStartOperation Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoStartOperation(OperationKind: TVTOperationKind); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoStateChange Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoStateChange(Enter: TVirtualTreeStates; Leave: TVirtualTreeStates = []); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoStructureChange Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoStructureChange(Node: PVirtualNode; Reason: TChangeReason); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoTimerScroll Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Callback method which is triggered whenever the scroll timer fires.

Pascal
procedure DoTimerScroll; virtual;
Description

This method is called to do an automatic tree scroll when the user selects nodes with the mouse (multiselection only).

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoUpdating Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DoUpdating(State: TVTUpdateState); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DoValidateCache Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function DoValidateCache: Boolean; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DragAndDrop Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DragAndDrop(AllowedEffects: Integer; DataObject: IDataObject; var DragEffect: Integer); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DragCanceled Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Called by the VCL when a drag'n drop operation was canceled by the user.

Pascal
procedure DragCanceled; override;
Description

DragCanceled is used to do some housekeeping in the tree.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DragDrop Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Helper method, which is used when a drag operation is finished.

Pascal
function DragDrop(const DataObject: IDataObject; KeyState: Integer; Pt: TPoint; var Effect: Integer): HResult; virtual; reintroduce;
Description

This method is called by the TVTDragManager.Drop and prepares the list of available clipboard formats to be passed to DoDragDrop.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DragEnter Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function DragEnter(KeyState: Integer; Pt: TPoint; var Effect: Integer): HResult; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DragFinished Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Called when a drag operation is finished (accepted or cancelled).

Pascal
procedure DragFinished; virtual;
Description

This method is nternally used ito make up for the swallowed mouse-up messages during drag' drop.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.Dragging Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Returns true if a drag'n drop operation is in progress.

Pascal
function Dragging: Boolean;
Description

The method returns true if currently a drag'n drop operation is in progress, which involves this tree view.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DragLeave Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DragLeave; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DragOver Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function DragOver(Source: TObject; KeyState: Integer; DragState: TDragState; Pt: TPoint; var Effect: LongInt): HResult; virtual; reintroduce;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DrawDottedHLine Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DrawDottedHLine(const PaintInfo: TVTPaintInfo; Left: Integer; Right: Integer; Top: Integer); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.DrawDottedVLine Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure DrawDottedVLine(const PaintInfo: TVTPaintInfo; Top: Integer; Bottom: Integer; Left: Integer); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.EditNode Method
TBaseVirtualTree Methods | See Also | TBaseVirtualTree Class | Send Feedback

Starts editing the given node if allowed to.

Pascal
function EditNode(Node: PVirtualNode; Column: TColumnIndex): Boolean; virtual;
Description

This method can be used by the application to manually start editiing of a particular node. Column determines hereby in which column the node should be edited. This parameter determines the target column regardless whether toExtendedFocus is set in TreeOptions.SelectionOptions or not. The given node must be enabled, otherwise edit start fails.

See Also

DoEdit

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, See Also, TBaseVirtualTree Class


TBaseVirtualTree.EndEditNode Method
TBaseVirtualTree Methods | See Also | TBaseVirtualTree Class | Send Feedback

Stops node editing if it was started before.

Pascal
function EndEditNode: Boolean;
Description

EndEditNode stops node editing and accepts the result (which must be set by the edit link).

See Also

Editors and editing, EditNode, DoEdit

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, See Also, TBaseVirtualTree Class


TBaseVirtualTree.EndOperation Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure EndOperation(OperationKind: TVTOperationKind);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.EndSynch Method
TBaseVirtualTree Methods | See Also | TBaseVirtualTree Class | Send Feedback

Counterpart to BeginSynch.

Pascal
procedure EndSynch;
Description

Counts down the internal synchronous mode counter and ends synchronous mode when this counter reaches zero.

See Also

BeginSynch, BeginUpdate, EndUpdate

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, See Also, TBaseVirtualTree Class


TBaseVirtualTree.EndUpdate Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Resets the update lock set by BeginUpdate.

Pascal
procedure EndUpdate; virtual;
Description

This method is the counterpart to BeginUpdate and decreases the internal update count value. If this value reaches 0 then updates of the tree window will be allowed again. Additionally, some pending operations, which might be started during the update lock, are finished. This includes tasks like updating the selection list, validating the cache and sorting the tree if in auto sort mode.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.ExecuteAction Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function ExecuteAction(Action: TBasicAction): Boolean; override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.FindNodeInSelection Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Helper method to find the given node in the current selection.

Pascal
function FindNodeInSelection(P: PVirtualNode; var Index: Integer; LowBound: Integer; HighBound: Integer): Boolean; virtual;
Description

This method does a binary search of the given node in the internal selection array which is sorted by memory references. The search is limited to the area given by LowBound and HighBound. If the node could be found then true is returned and Index is set to the found node position.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.FinishChunkHeader Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure FinishChunkHeader(Stream: TStream; StartPos: Integer; EndPos: Integer); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.FinishCutOrCopy Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Stops any pending cut or copy clipboard operation.

Pascal
procedure FinishCutOrCopy;
Description

This method is used by the tree (and can be used by the application too) to stop any pending cut or copy clipboard operation. If a cut operation is pending then nodes currently marked with the vsCutOrCopy state are deleted.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.FlushClipboard Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Renders all pending clipboard data.

Pascal
procedure FlushClipboard;
Description

Used to render the data which is currently on the clipboard and finishes so the delayed rendering. This method is useful if the tree is about to be destroyed but data from this tree is still on the clipboard and should stay there. If this method is not used then any pending clipboard operation is cancelled on tree destruction (by the tree instance which currently has data on the clipboard) and the clipboard itself is cleared.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.FontChanged Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure FontChanged(AFont: TObject); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.FullCollapse Method
TBaseVirtualTree Methods | See Also | TBaseVirtualTree Class | Send Feedback

Collapses all nodes in the tree.

Pascal
procedure FullCollapse(Node: PVirtualNode = nil); virtual;
Description

Call this method to bring all nodes in the tree into a collapsed state. This method is used to reset the vsExpanded state in all nodes in the tree. Nodes which are not yet initialized are also not expanded by definition and therefore do not need initialization.

See Also

FullExpand

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, See Also, TBaseVirtualTree Class


TBaseVirtualTree.FullExpand Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Expands all nodes in the tree.

Pascal
procedure FullExpand(Node: PVirtualNode = nil); virtual;
Description

Call this method to bring all nodes in the tree into an expanded state. This method expands every node in the tree and initializes nodes which are not yet initialized to expand them too if necessary. Since this will validate every node in the tree it is counterproductive and against the Virtual Paradigm.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetBorderDimensions Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetBorderDimensions: TSize; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetCheckImage Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetCheckImage(Node: PVirtualNode; ImgCheckType: TCheckType = ctNone; ImgCheckState: TCheckState = csUncheckedNormal; ImgEnabled: Boolean = True): Integer; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetCheckImageListFor Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
class function GetCheckImageListFor(Kind: TCheckImageKind): TCustomImageList; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetColumnClass Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Returns the class to be used to manage columns in the tree.

Pascal
function GetColumnClass: TVirtualTreeColumnClass; virtual;
Description

GetColumnClass is a special purpose method to return a certain class which is used by the tree for the columns. TVirtualBaseTree always returns TVirtualTreeColumn but descentants can override this method to return own classes.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetControlsAlignment Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetControlsAlignment: TAlignment; override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetDisplayRect Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetDisplayRect(Node: PVirtualNode; Column: TColumnIndex; TextOnly: Boolean; Unclipped: Boolean = False; ApplyCellContentMargin: Boolean = False): TRect;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetEffectivelyFiltered Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetEffectivelyFiltered(Node: PVirtualNode): Boolean;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetEffectivelyVisible Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetEffectivelyVisible(Node: PVirtualNode): Boolean;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetFirst Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Group of node navigation functions.

Pascal
function GetFirst(ConsiderChildrenAbove: Boolean = False): PVirtualNode;
function GetFirstChild(Node: PVirtualNode): PVirtualNode;
function GetFirstCutCopy(ConsiderChildrenAbove: Boolean = False): PVirtualNode;
function GetFirstInitialized(ConsiderChildrenAbove: Boolean = False): PVirtualNode;
function GetFirstNoInit(ConsiderChildrenAbove: Boolean = False): PVirtualNode;
function GetFirstSelected(ConsiderChildrenAbove: Boolean = False): PVirtualNode;
function GetFirstVisible(Node: PVirtualNode = nil; ConsiderChildrenAbove: Boolean = True; IncludeFiltered: Boolean = False): PVirtualNode;
function GetFirstVisibleNoInit(Node: PVirtualNode = nil; ConsiderChildrenAbove: Boolean = True; IncludeFiltered: Boolean = False): PVirtualNode;
Description

This group of navigation functions is used to return the first node in the tree or first sub node with various properties.

GetFirst | First node in the tree with initialization.
GetFirstChild | First child node with initialization.
GetFirstCutCopy | First node in cut/copy set (no initialization needed).
GetFirstInitialized | First initialized node in the tree (no initialization needed).
GetFirstNoInit | First node in the tree without initialization.
GetFirstVisible | First visible node in the tree with initialization.
GetFirstVisibleChild | First visible child of a node with initialization.
GetFirstVisibleChildNoInit | First visible child of a node without initialization.
GetFirstVisibleNoInit | First visible node in the tree without initialization.
Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetFirstChecked Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetFirstChecked(State: TCheckState = csCheckedNormal; ConsiderChildrenAbove: Boolean = False): PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetFirstLeaf Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetFirstLeaf: PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetFirstLevel Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetFirstLevel(NodeLevel: Cardinal): PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetFirstVisibleChild Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetFirstVisibleChild(Node: PVirtualNode; IncludeFiltered: Boolean = False): PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetFirstVisibleChildNoInit Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetFirstVisibleChildNoInit(Node: PVirtualNode; IncludeFiltered: Boolean = False): PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetHeaderClass Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Returns the header class to be used by the tree.

Pascal
function GetHeaderClass: TVTHeaderClass; virtual;
Description

As with several other classes in Virtual Treeview (e.g. drag manager, options etc.) also a customized header class is supported, which allows applications or descendant classes to implement their very own header class with special behavior. This is a further element to make Virtual Treeview as flexible as possible.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetHintWindowClass Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetHintWindowClass: THintWindowClass; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetHitTestInfoAt Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Returns information about the node at the given position.

Pascal
procedure GetHitTestInfoAt(X: Integer; Y: Integer; Relative: Boolean; var HitInfo: THitInfo); virtual;
Description

This method returns information about the given hit position. If the position is not within the client area then the result is either of hiAbove, hiBelow, hiToLeft or hiToRight, depending on the side. If the position is within the client area but no node is hit (e.g. when the tree is empty) then hiNowhere is returned, otherwise the node is examined and HitInfo is filled with information about which node is hit by this position, which column is involved and where on the node is the hit (e.g. the caption, the expand/collapse button or the state image).

The parameter Relative is used to tell the method how to interpret the given coordinates. If this property is true then X and Y are given in client coordinates of the tree window, otherwise they represent absolute coordinates of the virtual tree image.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetImageIndex Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure GetImageIndex(var Info: TVTPaintInfo; Kind: TVTImageKind; InfoIndex: TVTImageInfoIndex; DefaultImages: TCustomImageList); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetLast Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetLast(Node: PVirtualNode = nil; ConsiderChildrenAbove: Boolean = False): PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetLastChild Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback
function GetLastChild(Node: PVirtualNode): PVirtualNode;
Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetLastChildNoInit Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback
function GetLastChildNoInit(Node: PVirtualNode): PVirtualNode;
Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetLastInitialized Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetLastInitialized(Node: PVirtualNode = nil; ConsiderChildrenAbove: Boolean = False): PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetLastNoInit Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetLastNoInit(Node: PVirtualNode = nil; ConsiderChildrenAbove: Boolean = False): PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetLastVisible Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetLastVisible(Node: PVirtualNode = nil; ConsiderChildrenAbove: Boolean = True; IncludeFiltered: Boolean = False): PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetLastVisibleChild Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetLastVisibleChild(Node: PVirtualNode; IncludeFiltered: Boolean = False): PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetLastVisibleChildNoInit Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetLastVisibleChildNoInit(Node: PVirtualNode; IncludeFiltered: Boolean = False): PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetLastVisibleNoInit Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetLastVisibleNoInit(Node: PVirtualNode = nil; ConsiderChildrenAbove: Boolean = True; IncludeFiltered: Boolean = False): PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetMaxColumnWidth Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetMaxColumnWidth(Column: TColumnIndex; UseSmartColumnWidth: Boolean = False): Integer; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetMaxRightExtend Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Determines the maximum with of the currently visible part of the tree.

Pascal
function GetMaxRightExtend: Cardinal; virtual;
Description

This method is similar to GetMaxColumnWidth, but determines the width of the tree if no columns are used. This method is used for determining the horizontal scroll range for the columnless case.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetNativeClipboardFormats Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Used to let descendants and the application add their own supported clipboard formats.

Pascal
procedure GetNativeClipboardFormats(var Formats: TFormatEtcArray); virtual;
Description

GetNativeClipboardFormats returns the supported clipboard formats of the tree in the native CF_* form as used in IDataObject. This includes all formats which are listed in the ClipboardFormats property as well as any changes made by the OnGetUserClipboardFormats event if a handler for it is attached.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetNext Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetNext(Node: PVirtualNode; ConsiderChildrenAbove: Boolean = False): PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


GetNextChecked Method
TBaseVirtualTree Methods | Send Feedback

This is the overview for the GetNextChecked method overload.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods
Overload List
Method | Description
TBaseVirtualTree.GetNextChecked (PVirtualNode, Boolean) | Not documented.
TBaseVirtualTree.GetNextChecked (PVirtualNode, TCheckState, Boolean) | Not documented.


TBaseVirtualTree.GetNextChecked Method (PVirtualNode, Boolean)
GetNextChecked Method | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetNextChecked(Node: PVirtualNode; ConsiderChildrenAbove: Boolean): PVirtualNode; overload;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

GetNextChecked Method

Links
GetNextChecked Method, TBaseVirtualTree Class


TBaseVirtualTree.GetNextChecked Method (PVirtualNode, TCheckState, Boolean)
GetNextChecked Method | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetNextChecked(Node: PVirtualNode; State: TCheckState = csCheckedNormal; ConsiderChildrenAbove: Boolean = False): PVirtualNode; overload;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

GetNextChecked Method

Links
GetNextChecked Method, TBaseVirtualTree Class


TBaseVirtualTree.GetNextCutCopy Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetNextCutCopy(Node: PVirtualNode; ConsiderChildrenAbove: Boolean = False): PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetNextInitialized Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetNextInitialized(Node: PVirtualNode; ConsiderChildrenAbove: Boolean = False): PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetNextLeaf Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetNextLeaf(Node: PVirtualNode): PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetNextLevel Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetNextLevel(Node: PVirtualNode; NodeLevel: Cardinal): PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetNextNoInit Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetNextNoInit(Node: PVirtualNode; ConsiderChildrenAbove: Boolean = False): PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetNextSelected Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetNextSelected(Node: PVirtualNode; ConsiderChildrenAbove: Boolean = False): PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetNextSibling Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback
function GetNextSibling(Node: PVirtualNode): PVirtualNode;
Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetNextVisible Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetNextVisible(Node: PVirtualNode; ConsiderChildrenAbove: Boolean = True): PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetNextVisibleNoInit Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetNextVisibleNoInit(Node: PVirtualNode; ConsiderChildrenAbove: Boolean = True): PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetNextVisibleSibling Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetNextVisibleSibling(Node: PVirtualNode; IncludeFiltered: Boolean = False): PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetNextVisibleSiblingNoInit Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetNextVisibleSiblingNoInit(Node: PVirtualNode; IncludeFiltered: Boolean = False): PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


GetNodeAt Method
TBaseVirtualTree Methods | Send Feedback

This is the overview for the GetNodeAt method overload.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods
Overload List
Method | Description
TBaseVirtualTree.GetNodeAt (Integer, Integer) | Not documented.
TBaseVirtualTree.GetNodeAt (Integer, Integer, Boolean, Integer) | Not documented.


TBaseVirtualTree.GetNodeAt Method (Integer, Integer)
GetNodeAt Method | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetNodeAt(X: Integer; Y: Integer): PVirtualNode; overload;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

GetNodeAt Method

Links
GetNodeAt Method, TBaseVirtualTree Class
What do you think about this topic? Send feedback!


TBaseVirtualTree.GetNodeAt Method (Integer, Integer, Boolean, Integer)
GetNodeAt Method | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetNodeAt(X: Integer; Y: Integer; Relative: Boolean; var NodeTop: Integer): PVirtualNode; overload;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

GetNodeAt Method

Links
GetNodeAt Method, TBaseVirtualTree Class
What do you think about this topic? Send feedback!


TBaseVirtualTree.GetNodeData Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Returns the address of the user data area of the given node.

Pascal
function GetNodeData(Node: PVirtualNode): Pointer;
Description

GetNodeData returns the address of the user data area for Node. It is strongly recommended to use this method instead directly accessing @Node.Data. Some trees require internal data for their own use which is also stored after Node.Data and the actual user data (application data) follows then this internal data. GetNodeData takes care of this situation.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetNodeLevel Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Returns the indentation level of the given node.

Pascal
function GetNodeLevel(Node: PVirtualNode): Cardinal;
Description

GetNodeLevel returns the level of Node. This level is determined by the number of parent nodes (excluding the hidden root node). Top level nodes have the level 0, their direct child nodes have level 1 etc.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetOperationCanceled Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetOperationCanceled: Boolean;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetOptionsClass Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Customization helper to determine which options class the tree should use.

Pascal
function GetOptionsClass: TTreeOptionsClass; virtual;
Description

GetOptionsClass is a special purpose method to return a certain class which is used by the tree for its options. TVirtualBaseTree always returns TCustomVirtualTreeOptions but descendants can override this method to return own classes.

For ease of use it makes much sense to always use the same name for the tree's options (which is TreeOptions). By using a customized options class, however, the wrong type is returned by this property. Hence it is meaningful to override TreeOptions and return the derived options class. To make this work the tree descendant must additionally provide new access methods for this property. An example can be seen in TVirtualStringTree:

  TVirtualStringTree = class(TCustomVirtualStringTree)
  private
    function GetOptions: TStringTreeOptions;
    procedure SetOptions(const Value: TStringTreeOptions);
  protected
    function GetOptionsClass: TTreeOptionsClass; override;
  public
    property Canvas;
  published
    ...
    property TreeOptions: TStringTreeOptions read GetOptions write SetOptions;
    ...
  end;

  ...

//----------------- TVirtualStringTree ---------------------------------------------------------------------------------

function TVirtualStringTree.GetOptions: TStringTreeOptions;

begin
  Result := FOptions as TStringTreeOptions;
end;

//----------------------------------------------------------------------------------------------------------------------

procedure TVirtualStringTree.SetOptions(const Value: TStringTreeOptions);

begin
  FOptions.Assign(Value);
end;

//----------------------------------------------------------------------------------------------------------------------

function TVirtualStringTree.GetOptionsClass: TTreeOptionsClass;

begin
  Result := TStringTreeOptions;
end;
Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetPrevious Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetPrevious(Node: PVirtualNode; ConsiderChildrenAbove: Boolean = False): PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetPreviousChecked Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetPreviousChecked(Node: PVirtualNode; State: TCheckState = csCheckedNormal; ConsiderChildrenAbove: Boolean = False): PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetPreviousCutCopy Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetPreviousCutCopy(Node: PVirtualNode; ConsiderChildrenAbove: Boolean = False): PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetPreviousInitialized Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetPreviousInitialized(Node: PVirtualNode; ConsiderChildrenAbove: Boolean = False): PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetPreviousLeaf Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetPreviousLeaf(Node: PVirtualNode): PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetPreviousLevel Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetPreviousLevel(Node: PVirtualNode; NodeLevel: Cardinal): PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetPreviousNoInit Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetPreviousNoInit(Node: PVirtualNode; ConsiderChildrenAbove: Boolean = False): PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetPreviousSelected Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetPreviousSelected(Node: PVirtualNode; ConsiderChildrenAbove: Boolean = False): PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetPreviousSibling Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback
function GetPreviousSibling(Node: PVirtualNode): PVirtualNode;
Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetPreviousVisible Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetPreviousVisible(Node: PVirtualNode; ConsiderChildrenAbove: Boolean = True): PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetPreviousVisibleNoInit Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetPreviousVisibleNoInit(Node: PVirtualNode; ConsiderChildrenAbove: Boolean = True): PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetPreviousVisibleSibling Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetPreviousVisibleSibling(Node: PVirtualNode; IncludeFiltered: Boolean = False): PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetPreviousVisibleSiblingNoInit Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetPreviousVisibleSiblingNoInit(Node: PVirtualNode; IncludeFiltered: Boolean = False): PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetSortedCutCopySet Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Returns a sorted list of nodes, which are marked for s cut or copy clipboard operation.

Pascal
function GetSortedCutCopySet(Resolve: Boolean): TNodeArray;
Description

Returns a list of nodes which are flagged with vsCutOrCopy, sorted in logical order, that is, as they appear in the tree. If Resolve is true then nodes which are children of other cut/copy nodes are not put into the new array. This feature is particularly important when doing drag'n drop as in this case all selected node plus their children need to be considered. A selected node, which is a child (grand child etc.) of another selected node is then automatically included and doesn't need to be explicitly mentioned in the returned selection array.

Notes

The caller is responsible for freeing the array. Allocation is done here. Usually, though, freeing the array doesn't need

additional attention as it is automatically freed by Delphi when it gets out of scope.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetSortedSelection Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Returns a sorted list of all currently selected nodes.

Pascal
function GetSortedSelection(Resolve: Boolean): TNodeArray;
Description

Returns a list of selected nodes sorted in logical order, that is, as they appear in the tree. If Resolve is true then nodes which are children of other selected nodes are not put into the new array. This feature is in particuar important when doing drag'n drop as in this case all selected node plus their children need to be considered. A selected node which is child (grand child etc.) of another selected node is then automatically included and doesn't need to be explicitely mentioned in the returned selection array.

Notes

The caller is responsible for freeing the array. Allocation is done here. Usually, though, freeing the array doesn't need

additional attention as it is automatically freed by Delphi when it gets out of scope.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetTextInfo Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure GetTextInfo(Node: PVirtualNode; Column: TColumnIndex; const AFont: TFont; var R: TRect; var Text: UnicodeString); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetTreeFromDataObject Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

OLE drag'n drop and clipboard support method.

Pascal
function GetTreeFromDataObject(const DataObject: IDataObject): TBaseVirtualTree; virtual;
Description

Returns the owner/sender of the given data object by means of a special clipboard format or nil if the sender is in another process or no virtual tree at all.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetTreeRect Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Returns the size of the virtual tree image.

Pascal
function GetTreeRect: TRect;
Description

GetTreeRect can be used to determine the full size of the tree image as used for painting etc.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.GetVisibleParent Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function GetVisibleParent(Node: PVirtualNode; IncludeFiltered: Boolean = False): PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.HandleHotTrack Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure HandleHotTrack(X: Integer; Y: Integer); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.HandleIncrementalSearch Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure HandleIncrementalSearch(CharCode: Word); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.HandleMouseDblClick Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure HandleMouseDblClick(var Message: TWMMouse; const HitInfo: THitInfo); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.HandleMouseDown Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure HandleMouseDown(var Message: TWMMouse; var HitInfo: THitInfo); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.HandleMouseUp Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure HandleMouseUp(var Message: TWMMouse; const HitInfo: THitInfo); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.HasAsParent Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Determines if the given node has got another node as one of its parents.

Pascal
function HasAsParent(Node: PVirtualNode; PotentialParent: PVirtualNode): Boolean;
Description

Determines whether Node has got PotentialParent as one of its parents.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.HasImage Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function HasImage(Node: PVirtualNode; Kind: TVTImageKind; Column: TColumnIndex): Boolean; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.HasPopupMenu Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Determines whether there is a pop up menu assigned to the tree.

Pascal
function HasPopupMenu(Node: PVirtualNode; Column: TColumnIndex; Pos: TPoint): Boolean; virtual;
Description

This overridable method is used to determine whether there is a pop up menu assigned to the tree or can be retrieve via the OnGetPopupMenu event for a particular node. This is necessary for the tree to know how to deal with various condition in an mouse button down event.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.InitChildren Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure InitChildren(Node: PVirtualNode); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.InitializedNodes Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function InitializedNodes(ConsiderChildrenAbove: Boolean = False): TVTVirtualNodeEnumeration;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.InitNode Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure InitNode(Node: PVirtualNode); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.InsertNode Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Inserts a new node and returns it to the caller.

Pascal
function InsertNode(Node: PVirtualNode; Mode: TVTNodeAttachMode; UserData: Pointer = nil): PVirtualNode;
Description

Adds a new node relative to Node. The final position is determined by Mode. UserData can be used to set the first 4 bytes of the user data area to an initial value, which can be used in OnInitNode and will also cause to trigger the OnFreeNode event (if <> nil) even if the node is not yet "officially" initialized.

InsertNode is a compatibility method and will implicitly validates the given node if the new node is to be added as child node. This is however against the virtual paradigm and hence I dissuade from its usage.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.InternalAddFromStream Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure InternalAddFromStream(Stream: TStream; Version: Integer; Node: PVirtualNode); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


InternalAddToSelection Method
TBaseVirtualTree Methods | Send Feedback

This is the overview for the InternalAddToSelection method overload.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods
Overload List
Method | Description
TBaseVirtualTree.InternalAddToSelection (PVirtualNode, Boolean) | Not documented.
TBaseVirtualTree.InternalAddToSelection (TNodeArray, Integer, Boolean) | Not documented.


TBaseVirtualTree.InternalAddToSelection Method (PVirtualNode, Boolean)
InternalAddToSelection Method | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function InternalAddToSelection(Node: PVirtualNode; ForceInsert: Boolean): Boolean; overload;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

InternalAddToSelection Method

Links
InternalAddToSelection Method, TBaseVirtualTree Class


TBaseVirtualTree.InternalAddToSelection Method (TNodeArray, Integer, Boolean)
InternalAddToSelection Method | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function InternalAddToSelection(const NewItems: TNodeArray; NewLength: Integer; ForceInsert: Boolean): Boolean; overload;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

InternalAddToSelection Method

Links
InternalAddToSelection Method, TBaseVirtualTree Class


TBaseVirtualTree.InternalCacheNode Method

TBaseVirtualTree.InternalAddToSelection Method (TNodeArray, Integer, Boolean) | TBaseVirtualTree Methods | TBaseVirtualTree.InternalClearSelection Method
TBaseVirtualTree.InternalCacheNode Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure InternalCacheNode(Node: PVirtualNode); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.InternalClearSelection Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure InternalClearSelection; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.InternalConnectNode Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure InternalConnectNode(Node: PVirtualNode; Destination: PVirtualNode; Target: TBaseVirtualTree; Mode: TVTNodeAttachMode); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.InternalData Method
TBaseVirtualTree Methods | See Also | TBaseVirtualTree Class | Send Feedback

Returns the address of the internal data for a tree class.

Pascal
function InternalData(Node: PVirtualNode): Pointer;
Description

In TBaseVirtualTreeview this method returns nil but should be overridden in descendants to allow proper access to the internal data of Node if the descendant tree has allocated internal data.

See Also

Data handling

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, See Also, TBaseVirtualTree Class


TBaseVirtualTree.InternalDisconnectNode Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure InternalDisconnectNode(Node: PVirtualNode; KeepFocus: Boolean; Reindex: Boolean = True); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.InternalRemoveFromSelection Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure InternalRemoveFromSelection(Node: PVirtualNode); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.InvalidateCache Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Empties the internal node cache and marks it as invalid.

Pascal
procedure InvalidateCache;
Description

Marks the internal node cache as being invalid. This will cause a cache validation run next time ValidateCache is called.

The internal node cache is used to speed up display in Virtual Treeview. It contains node references with a distance of CacheThreshold nodes along with their vertical absolute position, which makes it possible to quickly find the position of a node for display, hit tests and so on.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.InvalidateChildren Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Invalidates all children of the given node.

Pascal
procedure InvalidateChildren(Node: PVirtualNode; Recursive: Boolean);
Description

Invalidates Node and its immediate children. If Recursive is true then all grandchildren are invalidated as well. The node itself is initialized if necessary and its child nodes are recreated (and initialized too if Recursive is true).

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.InvalidateColumn Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Invalidates the client area part of a column.

Pascal
procedure InvalidateColumn(Column: TColumnIndex);
Description

Invalidates the client area part of a column.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.InvalidateNode Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Invalidates the given node.

Pascal
function InvalidateNode(Node: PVirtualNode): TRect; virtual;
Description

InvalidateNode initiates repaint of the given node by calling InvalidateRect with the node's display rectangel and returns this rectangle.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.InvalidateToBottom Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Invalidates the client area starting with the top position of the given node.

Pascal
procedure InvalidateToBottom(Node: PVirtualNode);
Description

InvalidateToBottom initiates repaint of client area starting at given node. If this node is not visible or not yet initialized then nothing happens.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.InvertSelection Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Inverts the current selection.

Pascal
procedure InvertSelection(VisibleOnly: Boolean);
Description

InvertSelection inverts the current selection, so nodes, which are selected become unselected and vice versa. If VisibleOnly is true then only visible nodes are considered.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.IsEditing Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Tells the caller whether the tree is currently in edit mode.

Pascal
function IsEditing: Boolean;
Description

Just a simple shortcut to test the tsEditing state.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.IsMouseSelecting Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Tell the caller whether the tree is currently in draw selection mode.

Pascal
function IsMouseSelecting: Boolean;
Description

IsMouseSelecting returns true if draw selection by the user is active or pending.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.IterateSubtree Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Iterator method to go through all nodes of a given sub tree.

Pascal
function IterateSubtree(Node: PVirtualNode; Callback: TVTGetNodeProc; Data: Pointer; Filter: TVirtualNodeStates = []; DoInit: Boolean = False; ChildNodesOnly: Boolean = False): PVirtualNode;
Description

IterateSubtree iterates through all children and grandchildren etc. of Node (or the entire tree if Node = nil) and calls for each node the provided callback method (which must not be empty). Filter determines which nodes are to be considered (an empty set denotes all nodes). If DoInit is true then nodes which aren't initialized yet will be initialized.

During execution of the callback the application can set Abort to true. In this case the iteration is stopped and the last accessed node (the one on which the callback set Abort to true) is returned to the caller. Otherwise (no abort) nil is returned.

Notes

An application should not modify the content of the tree (e.g. delete nodes) during the iteration, otherwise the

outcome is unpredictable and may result in an access violation.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.LeafNodes Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function LeafNodes: TVTVirtualNodeEnumeration;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.LevelNodes Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function LevelNodes(NodeLevel: Cardinal): TVTVirtualNodeEnumeration;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.Loaded Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure Loaded; override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.LoadFromFile Method
TBaseVirtualTree Methods | See Also | TBaseVirtualTree Class | Send Feedback

Loads previously streamed out tree data back in again.

Pascal
procedure LoadFromFile(const FileName: TFileName); virtual;
procedure LoadFromStream(Stream: TStream); virtual;
Description

LoadFromFile clears the current content of the tree and loads a new structure from the given file.

See Also

AddFromStream

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, See Also, TBaseVirtualTree Class


TBaseVirtualTree.MainColumnChanged Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure MainColumnChanged; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.MarkCutCopyNodes Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure MarkCutCopyNodes; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.MeasureItemHeight Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure MeasureItemHeight(const Canvas: TCanvas; Node: PVirtualNode);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.MouseMove Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure MouseMove(Shift: TShiftState; X: Integer; Y: Integer); override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


MoveTo Method
TBaseVirtualTree Methods | Send Feedback

This is the overview for the MoveTo method overload.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods
Overload List
Method | Description
TBaseVirtualTree.MoveTo (PVirtualNode, PVirtualNode, TVTNodeAttachMode, Boolean) | Moves Source and all its child nodes to Target.
TBaseVirtualTree.MoveTo (PVirtualNode, TBaseVirtualTree, TVTNodeAttachMode, Boolean) | Moves Source and all its child nodes to Target.


TBaseVirtualTree.MoveTo Method (PVirtualNode, PVirtualNode, TVTNodeAttachMode, Boolean)
MoveTo Method | TBaseVirtualTree Class | Send Feedback

Moves Source and all its child nodes to Target.

Pascal
procedure MoveTo(Source: PVirtualNode; Target: PVirtualNode; Mode: TVTNodeAttachMode; ChildrenOnly: Boolean); overload;
procedure MoveTo(Node: PVirtualNode; Tree: TBaseVirtualTree; Mode: TVTNodeAttachMode; ChildrenOnly: Boolean); overload;
Description

Moves the given node (and all its children) to Target. Source must belong to the tree instance which calls this MoveTo method. Mode determines how to connect Source to Target. This method might involve a change of the tree if Target belongs to a different tree than Source.

The variant taking a tree reference as target can be used to transfer nodes to a different tree, without determining its root node first. However one can also pass in any virtual tree node as target, as long as it belongs to a tree. The owning tree is automatically determined and an optimized path is taken if the operation happens within one tree. In this case simply the source node is disconnected from the old place and reconnected at the new location.

Group

MoveTo Method

Links
MoveTo Method, TBaseVirtualTree Class
What do you think about this topic? Send feedback!


TBaseVirtualTree.Nodes Method

TBaseVirtualTree.MoveTo Method (PVirtualNode, PVirtualNode, TVTNodeAttachMode, Boolean) | TBaseVirtualTree Methods | TBaseVirtualTree.NoInitNodes Method
TBaseVirtualTree.Nodes Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function Nodes(ConsiderChildrenAbove: Boolean = False): TVTVirtualNodeEnumeration;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.NoInitNodes Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function NoInitNodes(ConsiderChildrenAbove: Boolean = False): TVTVirtualNodeEnumeration;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.Notification Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure Notification(AComponent: TComponent; Operation: TOperation); override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.OriginalWMNCPaint Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure OriginalWMNCPaint(DC: HDC); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.Paint Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

TControl's Paint method used here to display the tree.

Pascal
procedure Paint; override;
Description

Overriden method to paint the tree image. The actual work is however done in PaintTree.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.PaintCheckImage Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure PaintCheckImage(Canvas: TCanvas; const ImageInfo: TVTImageInfo; Selected: Boolean); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.PaintImage Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure PaintImage(var PaintInfo: TVTPaintInfo; ImageInfoIndex: TVTImageInfoIndex; DoOverlay: Boolean); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.PaintNodeButton Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure PaintNodeButton(Canvas: TCanvas; Node: PVirtualNode; Column: TColumnIndex; const R: TRect; ButtonX: Integer; ButtonY: Integer; BidiMode: TBiDiMode); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.PaintSelectionRectangle Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure PaintSelectionRectangle(Target: TCanvas; WindowOrgX: Integer; const SelectionRect: TRect; TargetRect: TRect); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.PaintTree Method
TBaseVirtualTree Methods | See Also | TBaseVirtualTree Class | Send Feedback

Main paint routine for the tree image.

Pascal
procedure PaintTree(TargetCanvas: TCanvas; Window: TRect; Target: TPoint; PaintOptions: TVTInternalPaintOptions; PixelFormat: TPixelFormat = pfDevice); virtual;
Description

PaintTree is the core paint routine used to draw any part of the tree image to any canvas. It is responsible for maintaining the paint cycles per node as well as coordinating drawing of the various parts of the tree image. TargetCanvas is the canvas to which to draw the tree image. This is usually the tree window itself but could well be a bitmap or printer canvas. Window determines which part of the entire tree image to draw. The full size of the virtual image is determined by GetTreeRect. Target is the position in TargetCanvas where to draw the tree part specified by Window. PaintOptions determines what of the tree to draw. For different tasks usually different parts need to be drawn, with a full image in the window, selected only nodes for a drag image etc.

See Also

Tree image and tree window

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, See Also, TBaseVirtualTree Class


TBaseVirtualTree.PaintTreeLines Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure PaintTreeLines(const PaintInfo: TVTPaintInfo; VAlignment: Integer; IndentSize: Integer; LineImage: TLineImage); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.PanningWindowProc Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure PanningWindowProc(var Message: TMessage); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.PasteFromClipboard Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Inserts the content of the clipboard into the tree.

Pascal
function PasteFromClipboard: Boolean; virtual;
Description

PasteFromClipboar reads what is currently on the clipboard into the tree (if the format is supported). If the application wants to have text or special formats to be inserted then it must implement its own code (OLE). Here only the native tree format is accepted.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.PrepareCell Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

This method is called immediately before a cell's content is drawn und is responsible to paint selection colors etc.

Pascal
procedure PrepareCell(var PaintInfo: TVTPaintInfo; WindowOrgX: Integer; MaxWidth: Integer); virtual;
Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.PrepareDragImage Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure PrepareDragImage(HotSpot: TPoint; const DataObject: IDataObject);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.Print Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure Print(Printer: TPrinter; PrintHeader: Boolean);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.ProcessDrop Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Helper method to ease OLE drag'n drop operations.

Pascal
function ProcessDrop(DataObject: IDataObject; TargetNode: PVirtualNode; var Effect: Integer; Mode: TVTNodeAttachMode): Boolean;
Description

ProcessDrop can be used in a OnDragDrop handler to let the tree view handle a drop operation of native tree data. The method only prepares some variables and calls then the more universal ProcessOLEData method.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.ProcessOLEData Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Takes serialized OLE tree data and reconstructs the former structure.

Pascal
function ProcessOLEData(Source: TBaseVirtualTree; DataObject: IDataObject; TargetNode: PVirtualNode; Mode: TVTNodeAttachMode; Optimized: Boolean): Boolean;
Description

PrcessOLEData recreates the (sub) tree structure serialized into memory and provided by DataObject. The new nodes are attached to the passed node or the hidden root node if TargetNode is nil, according to Mode. Optimized can be set to true if the entire operation happens within the same process (i.e. sender and receiver of the OLE operation are located in the same process). Optimized = true makes only sense if the operation to carry out is a move hence it is also the indication of the operation to be done here. Source is the source of the OLE data and only of use (and usually assigned) when an OLE operation takes place in the same application.

The function returns true on success, i.e. the CF_VIRTUALTREE format is supported by the data object and the structure could be recreated, otherwise false.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.ReadChunk Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function ReadChunk(Stream: TStream; Version: Integer; Node: PVirtualNode; ChunkType: Integer; ChunkSize: Integer): Boolean; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.ReadNode Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure ReadNode(Stream: TStream; Version: Integer; Node: PVirtualNode); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.RedirectFontChangeEvent Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure RedirectFontChangeEvent(Canvas: TCanvas); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.ReinitChildren Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Forces all child nodes of Node to be reinitialized.

Pascal
procedure ReinitChildren(Node: PVirtualNode; Recursive: Boolean); virtual;
Description

ReinitChildren forces all child nodes of Node to be reinitialized. If Recursive is true then also the grandchildren are reinitialized.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.ReinitNode Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Forces a reinitialization of the given node.

Pascal
procedure ReinitNode(Node: PVirtualNode; Recursive: Boolean); virtual;
Description

ReinitNode forces Node and all its children (if Recursive is true) to be initialized again without modifying any data in the nodes nor deleting children (unless the application requests a different amount).

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.RemoveFromSelection Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Removes the given node from the current selection.

Pascal
procedure RemoveFromSelection(Node: PVirtualNode); virtual;
Description

Removes the vsSelected style from Node's states and also removes Node from the internal selection array.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.RenderOLEData Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Renders pending OLE data.

Pascal
function RenderOLEData(const FormatEtcIn: TFormatEtc; out Medium: TStgMedium; ForClipboard: Boolean): HResult; virtual;
Description

RenderOLData is called by TVTDataObject.GetData when a consumer of clipboard data actually requests the data. The base tree view only renders the native tree format, which is a chunk based stream of node data. The format to be rendered is specified in FormatEtcIn.cfFormat and is one of the formats which are returned from GetNativeClipboardFormats.

Descendants may override RenderOLEData in order to render other formats like HTML text. In TBaseVirtualTreeview this method calls the OnRenderOLEData event for all formats, except CF_VIRTUALTREE.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.RepaintNode Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Causes the treeview to repaint the given node.

Pascal
procedure RepaintNode(Node: PVirtualNode);
Description

RepaintNode causes an immediate repaint of Node and returns once repainting has finished.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.ResetNode Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Resets the given node to uninitialized.

Pascal
procedure ResetNode(Node: PVirtualNode); virtual;
Description

ResetNode deletes all children of Node and marks it as being uninitialized.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.ResetRangeAnchor Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure ResetRangeAnchor; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.RestoreFontChangeEvent Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure RestoreFontChangeEvent(Canvas: TCanvas); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.SaveToFile Method
TBaseVirtualTree Methods | See Also | TBaseVirtualTree Class | Send Feedback

Saves the entire content of the tree into a file or stream.

Pascal
procedure SaveToFile(const FileName: TFileName);
procedure SaveToStream(Stream: TStream; Node: PVirtualNode = nil); virtual;
Description

Saves the entire content of the tree into a file or stream.

See Also

LoadFromStream, AddFromStream

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, See Also, TBaseVirtualTree Class


ScrollIntoView Method
TBaseVirtualTree Methods | Send Feedback

This is the overview for the ScrollIntoView method overload.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods
Overload List
Method | Description
TBaseVirtualTree.ScrollIntoView (PVirtualNode, Boolean, Boolean) | Scrolls the tree so that the given node comes in the client area.
TBaseVirtualTree.ScrollIntoView (TColumnIndex, Boolean) | Not documented.


TBaseVirtualTree.ScrollIntoView Method (PVirtualNode, Boolean, Boolean)
ScrollIntoView Method | TBaseVirtualTree Class | Send Feedback

Scrolls the tree so that the given node comes in the client area.

Pascal
function ScrollIntoView(Node: PVirtualNode; Center: Boolean; Horizontally: Boolean = False): Boolean; overload;
Description

ScrollIntoView scrolls the tree so that the given node is in the client area and returns true if the tree really has been scrolled (e.g. to avoid further updates) else it returns false. If extened focus is enabled then the tree will also horizontally scrolled if needed. All collapsed parents of the node are expanded, forming so a visible path to Node.

Group

ScrollIntoView Method

Links
ScrollIntoView Method, TBaseVirtualTree Class


TBaseVirtualTree.ScrollIntoView Method (TColumnIndex, Boolean)
ScrollIntoView Method | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function ScrollIntoView(Column: TColumnIndex; Center: Boolean): Boolean; overload;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

ScrollIntoView Method

Links
ScrollIntoView Method, TBaseVirtualTree Class


TBaseVirtualTree.SelectAll Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Selects all nodes in the tree.

Pascal
procedure SelectAll(VisibleOnly: Boolean);
Description

SelectAll select all existing nodes in the tree. If VisibleOnly is true then only visible nodes are selected.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.SelectedNodes Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function SelectedNodes(ConsiderChildrenAbove: Boolean = False): TVTVirtualNodeEnumeration;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.SelectNodes Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Selects a range of nodes.

Pascal
procedure SelectNodes(StartNode: PVirtualNode; EndNode: PVirtualNode; AddOnly: Boolean); virtual;
Description

SelectNodes selects a range of nodes and unselects all other possibly selected nodes which are not in this range if AddOnly is false. EndNode must be visible while StartNode does not necessarily, as in the case where the last focused node is the start node but it is a child of a node which has been collapsed previously. In this case the first visible parent node is used as start node. StartNode can be nil in which case the very first node in the tree is used.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.SetFocusedNodeAndColumn Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure SetFocusedNodeAndColumn(Node: PVirtualNode; Column: TColumnIndex); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.SkipNode Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure SkipNode(Stream: TStream); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.Sort Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Sorts the given node.

Pascal
procedure Sort(Node: PVirtualNode; Column: TColumnIndex; Direction: TSortDirection; DoInit: Boolean = True); virtual;
Description

Sort sorts the child nodes of Node. The application is queried about how to sort via the OnCompareNodes event. Column is simply passed to the the compare function so the application can also sort in a particular column. In order to free the application from taking care about the sort direction the parameter Direction is used. This way the application can always compare as would the node be sorted in increasing direction , while Sort reorders nodes according to this flag.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.SortTree Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Sorts the entire tree view.

Pascal
procedure SortTree(Column: TColumnIndex; Direction: TSortDirection; DoInit: Boolean = True); virtual;
Description

SortTree sorts the entire tree by applying Sort to every node which has got children.

Notes

This method initializes all nodes in the tree which may not only take quite a while but is also against the virtual paradigm

and therefore usually not recommended.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.StartOperation Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure StartOperation(OperationKind: TVTOperationKind);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.StartWheelPanning Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure StartWheelPanning(Position: TPoint); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.StopWheelPanning Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure StopWheelPanning; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.StructureChange Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure StructureChange(Node: PVirtualNode; Reason: TChangeReason); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.SuggestDropEffect Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function SuggestDropEffect(Source: TObject; Shift: TShiftState; Pt: TPoint; AllowedEffects: Integer): Integer; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.ToggleNode Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Changes a node's expand state to the opposite state.

Pascal
procedure ToggleNode(Node: PVirtualNode);
Description

Toggle node expands Node if it is collapsed currently and vice versa.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.ToggleSelection Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Toggles the selection state of a range of nodes.

Pascal
procedure ToggleSelection(StartNode: PVirtualNode; EndNode: PVirtualNode); virtual;
Description

ToggleSelection switchs the selection state of a range of nodes, so selected nodes become unselected and vice versa. This method is specifically designed to help selecting ranges with the keyboard and considers therefore the range anchor.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.UnselectNodes Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Deselects a range of nodes.

Pascal
procedure UnselectNodes(StartNode: PVirtualNode; EndNode: PVirtualNode); virtual;
Description

UnselectNodes deselects a given range of nodes. EndNode must be visible while StartNode is not required to be so as in the case where the last focused node is the start node but it is a child of a node which has been collapsed previously. In this case the first visible parent node is used as start node. StartNode can be nil in which case the very first node in the tree is used.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.UpdateAction Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function UpdateAction(Action: TBasicAction): Boolean; override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.UpdateColumnCheckState Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure UpdateColumnCheckState(Col: TVirtualTreeColumn);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.UpdateDesigner Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure UpdateDesigner; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.UpdateEditBounds Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure UpdateEditBounds; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.UpdateHeaderRect Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure UpdateHeaderRect; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.UpdateHorizontalRange Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure UpdateHorizontalRange;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.UpdateRanges Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure UpdateRanges;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.UpdateScrollBars Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Applies changes to the horizontal and vertical scrollbars.

Pascal
procedure UpdateHorizontalScrollBar(DoRepaint: Boolean);
procedure UpdateScrollBars(DoRepaint: Boolean); virtual;
procedure UpdateVerticalScrollBar(DoRepaint: Boolean);
Description

UpdateScrollbars (and its counterparts for vertical and horizontal scrollbars) is the core method to set the scrollbar's properties like range, page size etc.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.UpdateVerticalRange Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure UpdateVerticalRange;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.UpdateWindowAndDragImage Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
procedure UpdateWindowAndDragImage(const Tree: TBaseVirtualTree; TreeRect: TRect; UpdateNCArea: Boolean; ReshowDragImage: Boolean); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.UseRightToLeftReading Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Helper method for right-to-left layout.

Pascal
function UseRightToLeftReading: Boolean;
Description

UseRightToLeftReading had to be overriden in order to overcome a limitation introduced by the VCL. The VCL only allows a window to be in right-to-left reading order if the operating system is prepared to handle this (e.g. an arabic Windows 98). Virtual Treeview however does most of the RTL stuff handle itself, also on non-RTL system.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.ValidateCache Method
TBaseVirtualTree Methods | See Also | TBaseVirtualTree Class | Send Feedback

Initiates the validation of the internal node cache.

Pascal
procedure ValidateCache; virtual;
Description

If the node cache is marked as being invalid then this method puts the tree into the worker thread's list and awakes then the thread so that the validation is performed in the background.

See Also

InvalidateCache

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, See Also, TBaseVirtualTree Class


TBaseVirtualTree.ValidateChildren Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Validates all children of a given node.

Pascal
procedure ValidateChildren(Node: PVirtualNode; Recursive: Boolean);
Description

ValidateChildren ensures that the children of the given node (and all their children, if Recursive is true) are initialized. Node must already be initialized. If nil is passed to the method the hidden root node is used (which makes only sense if Recursive is true, in which case the entire tree is validated).

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.ValidateNode Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Validates a given node.

Pascal
procedure ValidateNode(Node: PVirtualNode; Recursive: Boolean);
Description

ValidateNode ensures that the given node (and all its children, if Recursive is true) are initialized. If Node is nil then the hidden root node is used (which makes only sense if Recursive is true, in which case the entire tree is validated).

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.ValidateNodeDataSize Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Helper method for node data size initalization.

Pascal
procedure ValidateNodeDataSize(var Size: Integer); virtual;
Description

ValidateNodeDataSize is called from MakeNewNode if the currently set node data size is -1, which indicates it has not yet been determined. The method calls the event OnGetNodeDataSize allowing so the application to compute now its data requirement.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.VisibleChildNodes Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function VisibleChildNodes(Node: PVirtualNode; IncludeFiltered: Boolean = False): TVTVirtualNodeEnumeration;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.VisibleChildNoInitNodes Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function VisibleChildNoInitNodes(Node: PVirtualNode; IncludeFiltered: Boolean = False): TVTVirtualNodeEnumeration;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.VisibleNodes Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function VisibleNodes(Node: PVirtualNode = nil; ConsiderChildrenAbove: Boolean = True; IncludeFiltered: Boolean = False): TVTVirtualNodeEnumeration;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.VisibleNoInitNodes Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
function VisibleNoInitNodes(Node: PVirtualNode = nil; ConsiderChildrenAbove: Boolean = True; IncludeFiltered: Boolean = False): TVTVirtualNodeEnumeration;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.WndProc Method
TBaseVirtualTree Methods | TBaseVirtualTree Class | Send Feedback

Redirected window procedure to do some special processing.

Pascal
procedure WndProc(var Message: TMessage); override;
Description

WndProc has been overriden to allow the header to handle certain messages (which are forwarded by the tree) as well as to do some other special handling internal to the tree.

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, TBaseVirtualTree Class


TBaseVirtualTree.WriteChunks Method
TBaseVirtualTree Methods | See Also | TBaseVirtualTree Class | Send Feedback

Writes the core chunks for the given node to the given stream.

Pascal
procedure WriteChunks(Stream: TStream; Node: PVirtualNode); virtual;
Description

WriteChunks is part of the streaming system in Virtual Treeview and writes the core chunks for Node into Stream. Descentants can optionally override this method to add other node specific chunks. This streaming is used when the tree must be saved to disk or a stream used e.g. for clipboard operations.

Notes

Keep in mind that this method is also called for the hidden root node. Using this fact in descendants you can create a

kind of "global" chunk set not directly bound to a specific node.

See Also

WriteNode, SaveToStream

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, See Also, TBaseVirtualTree Class


TBaseVirtualTree.WriteNode Method
TBaseVirtualTree Methods | See Also | TBaseVirtualTree Class | Send Feedback

Writes the cover (envelop) chunk for the given node to the given stream.

Pascal
procedure WriteNode(Stream: TStream; Node: PVirtualNode); virtual;
Description

WriteNode writes the cover chunk for Node to Stream and initiates writing child nodes and chunks. This method is part of the streaming system used in Virtual Treeview.

See Also

WriteChunks, WriteToStream

Group

TBaseVirtualTree Methods

Links
TBaseVirtualTree Methods, See Also, TBaseVirtualTree Class


TBaseVirtualTree Constructors
TBaseVirtualTree Class | Methods | Legend | Send Feedback

The constructors of the TBaseVirtualTree class are listed here.

Class

TBaseVirtualTree Class

Legend

Constructor
public
virtual

Links
TBaseVirtualTree Class, Methods, Legend
What do you think about this topic? Send feedback!


TBaseVirtualTree.Create Constructor
TBaseVirtualTree Constructors | TBaseVirtualTree Class | Send Feedback

Constructor of the control

Pascal
constructor Create(AOwner: TComponent); override;
Description

The constructor initializes certain properties to their default values.

Group

TBaseVirtualTree Constructors

Links
TBaseVirtualTree Constructors, TBaseVirtualTree Class


TBaseVirtualTree Destructors
TBaseVirtualTree Class | Methods | Legend | Send Feedback

The destructors of the TBaseVirtualTree class are listed here.

Class

TBaseVirtualTree Class

Legend

Destructor
public
virtual

Links
TBaseVirtualTree Class, Methods, Legend
What do you think about this topic? Send feedback!


TBaseVirtualTree.Destroy Destructor
TBaseVirtualTree Destructors | TBaseVirtualTree Class | Send Feedback

Destructor of the control.

Pascal
destructor Destroy; override;
Description

Frees any allocated data in the tree. All pending operations will be stopped and any remaining node is freed.

Group

TBaseVirtualTree Destructors

Links
TBaseVirtualTree Destructors, TBaseVirtualTree Class


TBaseVirtualTree Properties
TBaseVirtualTree Class | Properties | Legend | Send Feedback

The properties of the TBaseVirtualTree class are listed here.

Class

TBaseVirtualTree Class

Legend

Property
public
protected
read only

Links
TBaseVirtualTree Class, Properties, Legend


TBaseVirtualTree.Accessible Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property Accessible: IAccessible;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.AccessibleItem Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property AccessibleItem: IAccessible;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.AccessibleName Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property AccessibleName: string;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.Alignment Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Determines the horizontal alignment of text if no columns are defined.

Pascal
property Alignment: TAlignment;
Description

This property is only used if there are no columns defined and applies only to the node captions. Right alignment means here the right client area border and left aligned means the node buttons/lines etc. (both less the text margin).

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.AnimationDuration Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Determines the maximum duration the tree can use to play an animation.

Pascal
property AnimationDuration: Cardinal;
Description

The value is specified in milliseconds and per default there are 200 ms as time frame, which is the recommended duration for such operations. On older systems (particularly Windows 95 and Windows 98) the animation process might not get enough CPU time to avoid expensive animations to finish properly. Still the animation loop tries to stay as close as possible to the given time.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.AutoExpandDelay Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Time delay after which a node gets expanded if it is the current drop target.

Pascal
property AutoExpandDelay: Cardinal;
Description

This value is specified in milliseconds and determines when to expand a node if it is the current drop target. This value is only used if voAutoDropExpand in Options is set.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.AutoScrollDelay Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Time which determines when auto scrolling should start.

Pascal
property AutoScrollDelay: Cardinal;
Description

Once the mouse pointer has been moved near to a border a timer is started using the interval specified by AutoScrollDelay. When the timer has fired auto scrolling starts provided it is enabled (see also TreeOptions). The value is specified in milliseconds.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.AutoScrollInterval Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Time interval between scroll events when doing auto scroll.

Pascal
property AutoScrollInterval: TAutoScrollInterval;
Description

This property determines the speed how the tree is scrolled vertically or horizontally when auto scrolling is in progress. The value is given in milliseconds.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.Background Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Holds a background image for the tree.

Pascal
property Background: TPicture;
Description

Virtual Treeview supports a fixed background image which does not scroll but can be adjusted by BackgroundOffsetX and BackgroundOffsetY.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.BackgroundOffsetX Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Horizontal offset of the background image.

Pascal
property BackgroundOffsetX: Integer;
Description

Determines the horizontal offset of the left border of the background image. This value is relative to the target canvas where the tree is painted to (usually the tree window).

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.BackgroundOffsetY Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Vertical offset of the background image.

Pascal
property BackgroundOffsetY: Integer;
Description

Determines the vertical offset of the top border of the background image. This value is relative to the target canvas where the tree is painted to (usually the tree window).

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.BorderStyle Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Same as TForm.BorderStyle.

Pascal
property BorderStyle: TBorderStyle;
Description

See TForm.BorderStyle.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.BottomNode Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property BottomNode: PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.BottomSpace Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property BottomSpace: Cardinal;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.ButtonFillMode Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Determines how to fill the background of the node buttons.

Pascal
property ButtonFillMode: TVTButtonFillMode;
Description

This property is used to specify how the interior of the little plus and minus node buttons should be drawn, if ButtonStyle is bsTriangle.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.ButtonStyle Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Determines the look of node buttons.

Pascal
property ButtonStyle: TVTButtonStyle;
Description

Determines the look of node buttons.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.ChangeDelay Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Time which determines when the OnChange event should be triggered after the actual change event.

Pascal
property ChangeDelay: Cardinal;
Description

In order to accumulate many quick changes in the tree you can use this delay value to specify after which wait time the OnChange event should occur. A value of 0 means to trigger OnChange immediately after the change (usually a selection or focus change) happend. Any value > 0 will start a timer which then triggers OnChange.

Note that there is the synchronous mode (started by BeginSynch) which effectively circumvents the change delay for the duration of the synchronous mode (stopped by EndSynch) regardless of the ChangeDelay setting.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.CheckedCount Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property CheckedCount: Integer;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.CheckImageKind Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Determines which images should be used for checkboxes and radio buttons.

Pascal
property CheckImageKind: TCheckImageKind;
Description

CheckImageKind can be used to switch the image set, which should be used for the tree. Read the description about TCheckImageKind for a list of all images, which can be used. CheckImageKind can also be set to ckCustom, which allows to supply a customized set of images to the tree. In order to have that working you must assign an image list (TCustomImageList) to the CustomCheckImages property.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.CheckImages Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property CheckImages: TCustomImageList;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.CheckState Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Read or set the check state of a node.

Pascal
property CheckState [Node: PVirtualNode]: TCheckState;
Description

The CheckState property can be used to read the current check state of a node or to set a new one. Virtual Treeview ensures that invalid check states (e.g. csMixedPressed for radio buttons) do not cause an error.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.CheckType Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Read or set the check type of a node.

Pascal
property CheckType [Node: PVirtualNode]: TCheckType;
Description

The CheckType property can be used to read the current check type of a node or to set a new one. Setting a new check type will reset a the node's check state to csUncheckedNormal.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.ChildCount Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Read or set the number of child nodes of a node.

Pascal
property ChildCount [Node: PVirtualNode]: Cardinal;
Description

ChildCount can be used to read the current number of child nodes or to change it. Assigning a lower value than there was before will automatically delete as many child nodes (starting from the last child) as there are more than what was set. Increasing the value will add new child nodes. Note: code behind this property is very effective, so it using ChildCount is highly recommended over manipulating the child count using AddChild, InsertNode and DeleteNode.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.ChildrenInitialized Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Read whether a node's child count has been initialized already.

Pascal
property ChildrenInitialized [Node: PVirtualNode]: Boolean;
Description

This read only property is used to determine whether a node's child count has been set. Alternatively, the child count value is not considered if vsHasChildren is not in the node states.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.ClipboardFormats Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Special class to keep a list of clipboard format descriptions.

Pascal
property ClipboardFormats: TClipboardFormats;
Description

This TStringList descendant is used to keep a number of clipboard format descriptions, which are usually used to register clipboard formats with the system. Using a string list for this task allows to store enabled clipboard formats in the DFM.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.Colors Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

A collection of colors used in the tree.

Pascal
property Colors: TVTColors;
Description

This property holds an instance of the TVTColors class, which is used to customize many of the colors used in a tree. Placing them all in a specialized class helps organizing the colors in the object inspector and improves general management.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.CustomCheckImages Property
TBaseVirtualTree Properties | See Also | TBaseVirtualTree Class | Send Feedback

Assign your own image list to get the check images you like most.

Pascal
property CustomCheckImages: TCustomImageList;
Description

The CustomCheckImages property is used when custom check images are enabled (see also ckCustom in TCheckImageKind).

See Also

TCheckImageKind

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, See Also, TBaseVirtualTree Class


TBaseVirtualTree.CutCopyCount Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property CutCopyCount: Integer;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.DefaultNodeHeight Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Read or set the height new nodes get as initial value.

Pascal
property DefaultNodeHeight: Cardinal;
Description

This property allows to read the current initial height for new nodes and to set a new value. Note that changing the property value does not change the height of existing nodes. Only new nodes are affected.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.DefaultPasteMode Property
TBaseVirtualTree Properties | See Also | TBaseVirtualTree Class | Send Feedback

Read or set the value, which determines where to add pasted nodes to.

Pascal
property DefaultPasteMode: TVTNodeAttachMode;
Description

The default paste mode is an attach mode, which is used when pasting data from the clipboard into the tree. Usually, you will want new nodes to be added as child nodes to the currently focused node (and this is also the default value), but you can also specify to add nodes only as siblings.

See Also

TVTNodeAttachMode

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, See Also, TBaseVirtualTree Class


TBaseVirtualTree.DragHeight Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Read or set the vertical limit of the internal drag image.

Pascal
property DragHeight: Integer;
Description

The DragHeight property (as well as the DragWidth property) are only for compatibility reason in the tree. If a platform does not support the IDropTargetHelper interface (Windows 9x/Me, Windows NT 4.0) then Virtual Treeview uses its own implementation of a DragImage. Since displaying a translucent drag image is performance hungry you should limit the image size shown for the drag operation.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.DragImage Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Holds the instance of the internal drag image.

Pascal
property DragImage: TVTDragImage;
Description

For older systems where the IDropTargetHelper interface is not supported Virtual Treeview simulates the translucent drag image during drag'n drop. The property DragImage makes the internal drag image instance accessible for special handling. The class itself is always created but is usually not visible when the IDropTargetHelper interface is supported.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.DragImageKind Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Read or set what should be shown in the drag image.

Pascal
property DragImageKind: TVTDragImageKind;
Description

DragImageKind allows to switch parts of the drag image off and on.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.DragManager Property
TBaseVirtualTree Properties | See Also | TBaseVirtualTree Class | Send Feedback

Holds the reference to the internal drag manager.

Pascal
property DragManager: IVTDragManager;
Description

The drag manager is the central point for the drag'n drop support in Virtual Treeview. Usually you do not need to access it but sometimes it might be necessary so the reference is accessible through this property.

See Also

TVTDragManager

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, See Also, TBaseVirtualTree Class


TBaseVirtualTree.DragOperations Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Read or set which drag operations may be allowed in the tree.

Pascal
property DragOperations: TDragOperations;
Description

Using this property you can determine, which actions may be performed when a drag operation is finished. The default value includes move, copy and link, where link is rather an esoteric value and only there because it is supported by OLE. The values used directly determine which image is shown for the drag cursor. The specified drag operations do not tell which actions will actually be performed but only, which actions are allowed. They still can be modified during drag'n drop by using a modifier key like the control, shift or alt key or can entirely be ignored by the drop handler.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.DragSelection Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Keeps a temporary list of nodes during drag'n drop.

Pascal
property DragSelection: TNodeArray;
Description

This list is a local copy of the current selection array and is only used during a drag operation.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.DragType Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Read or set which subsystem should be used for dragging.

Pascal
property DragType: TVTDragType;
Description

Traditionally, Delphi only supports its own drag mechanism, which is not compatible with the rest of the system. This VCL dragging also does not support to transport random data nor does it support drag operations between applications. Thus Virtual Treeview also supports the generally used OLE dragging, which in turn is incompatible with VCL dragging. Depending on your needs you can enable either VCL or OLE dragging as both together cannot be started. However, Virtual Treeview is able to act as drop target for both kind of data, independant of what is set in DragType.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.DragWidth Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Read or set the horizontal limit of the internal drag image.

Pascal
property DragWidth: Integer;
Description

The DragWidth property (as well as the DragHeight property) are only for compatibility reason in the tree. If a platform does not support the IDropTargetHelper interface (Windows 9x/Me, Windows NT 4.0) then Virtual Treeview uses its own implementation of a DragImage. Since displaying a translucent drag image is performance hungry you should limit the image size shown for the drag operation.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.DrawSelectionMode Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Read or set how multiselection with the mouse is to be visualized.

Pascal
property DrawSelectionMode: TVTDrawSelectionMode;
Description

Virtuall Treeview allows to display two different selection rectangles when doing multiselection with the mouse. One is the traditiional dotted focus rectangle and the other one is a translucent color rectangle. The latter is the preferred one but the former is set as default (for compatibility reasons).

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.DropTargetNode Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Contains the current drop target node if the tree is currently the target of a drag'n drop operation.

Pascal
property DropTargetNode: PVirtualNode;
Description

The drop target node has no meaning except during drag'n drop and only if the tree it belongs to is itself the current drop target. But even then DropTargetNode might be nil, particularly when the mouse hovers over an area in the tree, which is not covered by a node.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.EditColumn Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property EditColumn: TColumnIndex;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.EditDelay Property
TBaseVirtualTree Properties | See Also | TBaseVirtualTree Class | Send Feedback

Read or set the maximum time between two single clicks on the same node, which should start node editing.

Pascal
property EditDelay: Cardinal;
Description

A node edit operation can be started using the keyboard (F2 key), in code using EditNode or by clicking twice on the same node (but not doing a double click). EditDelay is the maxmimum time distance between both clicks in which the edit operation is started.

See Also

Editors and editing

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, See Also, TBaseVirtualTree Class


TBaseVirtualTree.EditLink Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Keeps a reference to the internal edit link during a node edit operation.

Pascal
property EditLink: IVTEditLink;
Description

During an edit operation a link is established between the tree and the editor for the current node. By default a simple TEdit control is used as editor but due to the great customization possibilities there can be any node editor you may want. In order to communicate with this potentially unknown node editor the edit link is used. The EditLink property holds this link during the edit operation, so you can manipulate the interface.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.EffectiveOffsetX Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property EffectiveOffsetX: Integer;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.EmptyListMessage Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property EmptyListMessage: UnicodeString;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.Expanded Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Read or set the expanded state of a particular node.

Pascal
property Expanded [Node: PVirtualNode]: Boolean;
Description

Using this property you can expand or collapse the given node. This method uses the central ToggleNode method.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.FocusedColumn Property
TBaseVirtualTree Properties | See Also | TBaseVirtualTree Class | Send Feedback

Read or set the currently focused collumn.

Pascal
property FocusedColumn: TColumnIndex;
Description

When toExtendedFocus in TVTSelectionOptions is enabled then the user can select node cells in others than the main column (the column with the tree structure). In order to keep track, which column is currently selected FocusedColumn is used (similar to FocusedNode).

See Also

FocusedNode, TVTSelectionOptions

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, See Also, TBaseVirtualTree Class


TBaseVirtualTree.FocusedNode Property
TBaseVirtualTree Properties | See Also | TBaseVirtualTree Class | Send Feedback

Read or set the currently focused node.

Pascal
property FocusedNode: PVirtualNode;
Description

One node (and only one) in the tree view can have the current input focus, marked as dotted rectangle around the node's caption. Having the input focus means this node can be edited by pressing F2 or clicking on it and user keyboard input is interpreted with respect to the focused node (e.g. tree navigation, expansion/collapsing etc.). If extended focus is enabled then also the FocusedColumn property is taken into account. Read there for more info about column focus.

See Also

FocusedColumn, TVTSelectionOptions

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, See Also, TBaseVirtualTree Class


TBaseVirtualTree.Font Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Same as TWinControl.Font.

Pascal
property Font;
Description

See TWinControl.Font.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.FullyVisible Property
TBaseVirtualTree Properties | See Also | TBaseVirtualTree Class | Send Feedback

Read or set whether a node is fully visible or not.

Pascal
property FullyVisible [Node: PVirtualNode]: Boolean;
Description

Beside the fact that a node can be out of the client area there are two possibilities for it to be hidden. One is the vsVisible state in TVirtualNodeState, which hides the node regardles of the current state of another node, if not specified. The other one is that one or more parent nodes might be collapsed, hiding so their entire child nodes structure. The visibility flag itself can be checked using the IsVisible property, while the expansion state of parents nodes can be examined via the VisiblePath property. If both are true then the node is said to be fully visible.

See Also

IsVisible, VisiblePath, vsVisible, TVirtualNodeStates

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, See Also, TBaseVirtualTree Class


TBaseVirtualTree.HasChildren Property
TBaseVirtualTree Properties | See Also | TBaseVirtualTree Class | Send Feedback

Read or set whether a node has got children.

Pascal
property HasChildren [Node: PVirtualNode]: Boolean;
Description

A node can be set to have children by assigning true to this property. Internally this will add the vsHasChildren state to the node but not add any child nodes. This state in turn will cause the node to be drawn with a plus sign in front of its caption, denoting so it can be expanded and will show child nodes. As long as the child nodes are not touch in any way (e.g. by expanding the parent node or by navigatin or searching/sorting the tree) there will be no actual child nodes. They simply do not exist yet. However they will be created as soon as an access is done.

Setting the HasChildren property to false will delete any existing child node.

See Also

vsHasChildren, TVirtualNodeStates

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, See Also, TBaseVirtualTree Class


TBaseVirtualTree.Header Property
TBaseVirtualTree Properties | See Also | TBaseVirtualTree Class | Send Feedback

Provides access to the header instance.

Pascal
property Header: TVTHeader;
Description

This property is used to allow access to the header instance, which manages all aspects of the tree's header image as well as the column settings.

See Also

TVTHeader

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, See Also, TBaseVirtualTree Class


TBaseVirtualTree.HeaderRect Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Returns the non-client-area rectangle used for the header.

Pascal
property HeaderRect: TRect;
Description

Use this property to determine the extents used by the header of Virtual Treeview.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.HintAnimation Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Read or set the current hint animation type.

Pascal
property HintAnimation: THintAnimationType;
Description

With this property you can specify what animation you would like to play when displaying a hint. For some applications it might not be good to animate hints, hence you can entirely switch them off. Usually however you will leave the system standard. This way the user can decide whether and which hint animation he or she likes.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.HintData Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property HintData: TVTHintData;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.HintMode Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Read or set what type of hint you want for the tree view.

Pascal
property HintMode: TVTHintMode;
Description

Virtual Treeview supports several hints modes. This includes the normal hint used for any other TControl class as well as a node specific hint, which is individual for each node or even each cell.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.HotCursor Property
TBaseVirtualTree Properties | See Also | TBaseVirtualTree Class | Send Feedback

Read or set which cursor should be used for hot nodes.

Pascal
property HotCursor: TCursor;
Description

When you enable toHotTrack in TreeOptions.PaintOptions then the node, which is currently under the mouse pointer becomes the hot node. This is a special state, which can be used for certain effects. Hot nodes have by default an underlined caption and may cause the cursor to change to what ever you like. The HotCursor property is used to specify, which cursor is to be used.

See Also

HotNode, TVTPaintOptions

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, See Also, TBaseVirtualTree Class


TBaseVirtualTree.HotMinusBM Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property HotMinusBM: TBitmap;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.HotNode Property
TBaseVirtualTree Properties | See Also | TBaseVirtualTree Class | Send Feedback

Read, which node is currently the hot node.

Pascal
property HotNode: PVirtualNode;
Description

When you enable toHotTrack in TreeOptions.PaintOptions then the node, which is currently under the mouse pointer becomes the hot node. The property HotNode can be used to access this node for special handling.

See Also

HotCursor, toHotTrack, TVTPaintOptions

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, See Also, TBaseVirtualTree Class


TBaseVirtualTree.HotPlusBM Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property HotPlusBM: TBitmap;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.Images Property
TBaseVirtualTree Properties | See Also | TBaseVirtualTree Class | Send Feedback

Read or set the tree's normal image list.

Pascal
property Images: TCustomImageList;
Description

Just like with TListView and TTreeview also Virtual Treeview can take an image list for its normal images. Additionally, there are image lists for state images and check images.

See Also

StateImages, CheckImages

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, See Also, TBaseVirtualTree Class


TBaseVirtualTree.IncrementalSearch Property
TBaseVirtualTree Properties | See Also | TBaseVirtualTree Class | Send Feedback

Read or set the current incremental search mode.

Pascal
property IncrementalSearch: TVTIncrementalSearch;
Description

Virtual Treeview can do an incremental search by calling back the application when comparing node captions. The IncrementalSearch property determines whether incremental search is enabled and which nodes should be searched through.

See Also

IncrementalSearchDirection, IncrementalSearchStart, IncrementalSearchTimeout

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, See Also, TBaseVirtualTree Class


TBaseVirtualTree.IncrementalSearchDirection Property
TBaseVirtualTree Properties | See Also | TBaseVirtualTree Class | Send Feedback

Read or set the direction to be used for incremental search.

Pascal
property IncrementalSearchDirection: TVTSearchDirection;
Description

When incremental search is enabled then Virtual Treeview can search forward and backward from the start point given by IncrementalSearchStart.

See Also

IncrementalSearch, IncrementalSearchStart, IncrementalSearchTime123out

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, See Also, TBaseVirtualTree Class


TBaseVirtualTree.IncrementalSearchStart Property
TBaseVirtualTree Properties | See Also | TBaseVirtualTree Class | Send Feedback

Read or set where to start incremental search.

Pascal
property IncrementalSearchStart: TVTSearchStart;
Description

When incremental search is enabled in the tree view then you can specify here, where to start the next incremental search operation from.

See Also

IncrementalSearch, IncrementalSearchDirection, IncrementalSearchTimeout

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, See Also, TBaseVirtualTree Class


TBaseVirtualTree.IncrementalSearchTimeout Property
TBaseVirtualTree Properties | See Also | TBaseVirtualTree Class | Send Feedback

Read or set the maximum time, which is allowed between two consecutive key strokes so that incremental search stays active.

Pascal
property IncrementalSearchTimeout: Cardinal;
Description

When incremental search is enabled in Virtual Treeview then you can specify here after what time incremental search should stop when no keyboard input is encountered any longer. This property so determines also the speed at which users have to type letters to keep the incremental search rolling.

See Also

IncrementalSearch, IncrementalSearchDirection, IncrementalSearchStart

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, See Also, TBaseVirtualTree Class


TBaseVirtualTree.Indent Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Read or set the indentation amount for node levels.

Pascal
property Indent: Cardinal;
Description

Each new level in the tree (child nodes of a parent node) are visually shifted to distinguish betwenn them and their parent node (that's the tree layout after all). The Indent property determines the shift distance in pixels.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.IsDisabled Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Read or set the enabled state of the given node.

Pascal
property IsDisabled [Node: PVirtualNode]: Boolean;
Description

A node can have many different states. One of them is its enabled state, which can be set via this property. Enabling a node means it can be focused and selected, so it can take part in clipboard and drag'n drop operations, and can be edited.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.IsEffectivelyFiltered Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property IsEffectivelyFiltered [Node: PVirtualNode]: Boolean;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.IsEffectivelyVisible Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property IsEffectivelyVisible [Node: PVirtualNode]: Boolean;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.IsFiltered Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property IsFiltered [Node: PVirtualNode]: Boolean;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.IsVisible Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Read or set the visibility state of the given node.

Pascal
property IsVisible [Node: PVirtualNode]: Boolean;
Description

A node can be made invisible using this property. That means, even if its parent nodes all are expanded the node is not shown and the visual image is as would the node not exist. However it still can be searched or take part in certain other operations.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.LastClickPos Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Used for retained drag start and wheel mouse scrolling.

Pascal
property LastClickPos: TPoint;
Description

This internal positions is made public to allow descendants to modify mainly the right click behavior of the tree control.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.LastDropMode Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Read how the last drop operation finished.

Pascal
property LastDropMode: TDropMode;
Description

In the case you don't handle drag'n drop operations directly in OnDragDrop it might be necessary to know how the last drag operation finshed. Read more in the drag mode enumeration about what is possible.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.LastHintRect Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property LastHintRect: TRect;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.LineMode Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Read or set the mode of the tree lines.

Pascal
property LineMode: TVTLineMode;
Description

Apart from the usual lines Virtual Treeview also supports a special draw mode named bands. This allows for neat visual effects.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.LineStyle Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Read or set the mode of the tree lines.

Pascal
property LineStyle: TVTLineStyle;
Description

Virtual Treeview allows to customize the lines used to display the node hierarchy. The default style is a dotted pattern, but you can also make solid lines or specify your own line pattern.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.Margin Property
TBaseVirtualTree Properties | See Also | TBaseVirtualTree Class | Send Feedback

Read or set the tree's node margin.

Pascal
property Margin: Integer;
Description

The node margin is the distance between the cell bounds and its content like the lines, images, check box and so on. However this border is only applied to the left and right side of the node cell.

Note: there is also a TextMargin property in TVirtualStringTree, which is an additional border for the cell text only.

See Also

TVirtualStringTree.TextMargin

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, See Also, TBaseVirtualTree Class


TBaseVirtualTree.MinusBM Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property MinusBM: TBitmap;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.MultiLine Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Read or toggle the multiline feature for a given node.

Pascal
property MultiLine [Node: PVirtualNode]: Boolean;
Description

Since multiline support for nodes requires extra processing this behavior is switchable. When switched on the node is wrapped into the available space until the node height is exhausted. By including carriage return/line feed pairs you can explicitely specify where to start new lines. The node's height is not automatically adjusted to the given text. Instead there is an event (OnMeasureItem), which can be used to compute a node's height before it is displayed the first time. In addition an application can use the ComputeNodeHeight method to compute the height of the node depending on its caption text.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.NodeAlignment Property
TBaseVirtualTree Properties | See Also | TBaseVirtualTree Class | Send Feedback

Read or set the node alignment value.

Pascal
property NodeAlignment: TVTNodeAlignment;
Description

Nodes have got an align member, which is used to determine the vertical position of the node's images and tree lines. The NodeAlignment property specifies how to interpret the value in the align member.

See Also

TVirtualNode

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, See Also, TBaseVirtualTree Class


TBaseVirtualTree.NodeDataSize Property
TBaseVirtualTree Properties | See Also | TBaseVirtualTree Class | Send Feedback

Read or set the extra data size for each node.

Pascal
property NodeDataSize: Integer;
Description

A node can have an area for user data, which can be used to store application defined, node specific data in. Use GetNodeData to get the address of this area. In addition to assigning a value here you can also use the OnGetNodeDataSize event, which is called when NodeDataSize is -1.

See Also

Data handling

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, See Also, TBaseVirtualTree Class


TBaseVirtualTree.NodeHeight Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Read or set a node's height.

Pascal
property NodeHeight [Node: PVirtualNode]: Cardinal;
Description

Each node can have its individual height, which is stored in the node's record. You could directly assign a value to this member but I strongly discourage this as it does not update certain other structures in the tree. Instead use the NodeHeight property here to modify a node's height.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.NodeParent Property
TBaseVirtualTree Properties | See Also | TBaseVirtualTree Class | Send Feedback

Read or set a node's parent node.

Pascal
property NodeParent [Node: PVirtualNode]: PVirtualNode;
Description

When reading this property then either the node's real parent node is returned or nil if the parent node is the internal, hidden root node. When writing to this property you will effectively move a node to a new location.

See Also

MoveTo, CopyTo

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, See Also, TBaseVirtualTree Class


TBaseVirtualTree.OffsetXY Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Read or set the tree's current horizontal and vertical scroll offsets.

Pascal
property OffsetX: Integer;
property OffsetXY: TPoint;
property OffsetY: Integer;
Description

Virtual Treeview allows to retrieve or set the internal scroll offset directly, without sending WM_HSCROLL/WM_VSCROLL message around. This allows also to link two or more trees together. This scroll offset is given in pixels and is always less or equal 0.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.OperationCanceled Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OperationCanceled: Boolean;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.OperationCount Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OperationCount: Cardinal;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.PlusBM Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property PlusBM: TBitmap;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.RangeX Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property RangeX: Cardinal;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.RangeY Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property RangeY: Cardinal;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.RootNode Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Reference to the internal root node which is the anchor of the entire tree node hierarchy.

Pascal
property RootNode: PVirtualNode;
Description

For anchoring the tree hierarchy an internal tree node is maintained which is mostly just like any other tree node but has sometimes differently handled. The root node is always expanded and initialized. Its parent member points to the treeview to which the node belongs to and its PreviousSibling and NextSibling members point to the root node itself to make it possible to actually recognize this node.

Notes

You should not use the root node to iterate through the tree. It is only publicly accessible because it is the parent of

all top level nodes and can be used to test a node whether it is a top level node or not.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.RootNodeCount Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Read or set the number of nodes on the top level.

Pascal
property RootNodeCount: Cardinal;
Description

Usually setting RootNodeCount is all what is needed to initially fill the tree. When one of the top level nodes is initialized you can set its ivsHasChildren style. This will then cause to ask to initialize the child nodes. Recursively applied, you can use this principle to create tree nodes on demand (e.g. when their parent is expanded).

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.ScrollBarOptions Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Reference to the scroll bar options class.

Pascal
property ScrollBarOptions: TScrollBarOptions;
Description

Like many other aspects in Virtual Treeview also scrollbars can be customized. See the class itself for further descriptions.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.SearchBuffer Property
TBaseVirtualTree Properties | See Also | TBaseVirtualTree Class | Send Feedback

Current input string for incremental search.

Pascal
property SearchBuffer: UnicodeString;
Description

When incremental search is active you can use SearchBuffer to get the input string typed by the user, which created the last match.

See Also

IncrementalSearch

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, See Also, TBaseVirtualTree Class


TBaseVirtualTree.Selected Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Property to modify or determine the selection state of a node.

Pascal
property Selected [Node: PVirtualNode]: Boolean;
Description

This array property is used to test whether a given node is selected or to switch its selection state. Note that the selection state has nothing to do with the focused state. Only one node can be focused while any number of nodes can be selected (read: can be marked with the selection flag to paint their caption differently). Selection is mainly used to mark nodes for clipboard and drag'n drop operations.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.SelectedCount Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Contains the number of selected nodes.

Pascal
property SelectedCount: Integer;
Description

If multiselection is enabled (toMultiSelect) then SelectedCount will contain the actual number of selected nodes. In order to change the selection state of a node use Selected or AddToSelection/RemoveFromSelection.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.SelectionBlendFactor Property
TBaseVirtualTree Properties | See Also | TBaseVirtualTree Class | Send Feedback

Read or set the current blend factor for the multi selection rectangle and the node selection rectangle.

Pascal
property SelectionBlendFactor: Byte;
Description

For a visually appealing tree some operations use alpha blending. One of these operations is multi selection using the mouse. Another one is the rectangle drawn around the caption of selected nodes. Both rectangles use the SelectionBlendFactor to determine how much of the underlying tree image and how much of the rectangles should be seen. The factor can be in the range of [0..255] where 0 means the rectangle is fully transparent and 255 it is fully opaque.

If you don't like to use blended node selection rectangles then switch them off by removing toUseBlendedSelection from TVTPaintOptions. For selecting a certain multi selection rectangle style use DrawSelectionMode.

Notes

Alpha blending is only enabled when the current processor supports MMX instructions. If MMX is not supported then a

dotted draw selection rectangle and an opaque node selection rectangle is used.

See Also

DrawSelectionMode, TVTPaintOptions

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, See Also, TBaseVirtualTree Class


TBaseVirtualTree.SelectionCurveRadius Property
TBaseVirtualTree Properties | See Also | TBaseVirtualTree Class | Send Feedback

Read or set the current corner radius for node selection rectangles.

Pascal
property SelectionCurveRadius: Cardinal;
Description

This is a special property to determine the radius of the corners of the selection rectangle for a node caption. Virtual Treeview supports not only simple rectangular selection marks but also such with rounded corners. This feature, however, is only available if blended node selection rectangles are disabled.

See Also

SelectionBlendFactor, DrawSelectionMode, TVTPaintOptions

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, See Also, TBaseVirtualTree Class


TBaseVirtualTree.SelectionLocked Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property SelectionLocked: Boolean;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.StateImages Property
TBaseVirtualTree Properties | See Also | TBaseVirtualTree Class | Send Feedback

Reference to the images list which is used for the state images.

Pascal
property StateImages: TCustomImageList;
Description

Each node can (in each column) have several images. One is the check image which is supplied by internal image lists or a special external list (see also CustomCheckImages). Another one is the state image and yet another one the normal/selected image.

See Also

CheckImages, Images

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, See Also, TBaseVirtualTree Class


TBaseVirtualTree.TextMargin Property
TBaseVirtualTree Properties | See Also | TBaseVirtualTree Class | Send Feedback

Read or set the distance of the node caption to its borders.

Pascal
property TextMargin: Integer;
Description

TextMargin is used to define a border like area within the content rectangle of a node. This rectangle is the area of the node less the space used for indentation, images, lines and node margins and usually contains the text of a node. In order to support finer adjustment there is another margin, which only applies to the left and right border in the content rectangle. This is the text margin.

See Also

Margin

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, See Also, TBaseVirtualTree Class


TBaseVirtualTree.TopNode Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

The top node is the node which is currently at the top border of the client area.

Pascal
property TopNode: PVirtualNode;
Description

This property is a reference to the node which is the first node which is at least partially visible in the client area.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.TotalCount Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Returns the number of nodes in the tree.

Pascal
property TotalCount: Cardinal;
Description

Use this property to get the overall number of nodes currently in the tree. This will validate all nodes in the control so that also not yet created child nodes are counted.

Notes

This property is quite counter productive as it causes the entire tree to be validated when queried. This means that each

node is initialized, including its children and grandchildren etc. creating so a full blown treeview (if not already

done) which might keep much memory allocated (not counted the time necessary to validate all nodes). Therefore I

discourage the use of the property unless it is really necessary.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.TotalInternalDataSize Property
TBaseVirtualTree Properties | See Also | TBaseVirtualTree Class | Send Feedback

Keeps the currently accumulated data size for one node.

Pascal
property TotalInternalDataSize: Cardinal;
Description

Each node in the tree not only supports user data but also an interal area where TVirtualBaseTree descentants can store their own data per node. This internal data area must be allocated by a tree class, that means it must register its need for internal data. The internal data size registered by each descendant is accumulated in the TotalInternalDataSize member and is used to compute the user data offset in the node record.

See Also

Data handling

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, See Also, TBaseVirtualTree Class


TBaseVirtualTree.TreeOptions Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Reference to the tree's options.

Pascal
property TreeOptions: TCustomVirtualTreeOptions;
Description

The tree options are one of the main switchs to modify a treeview's behavior. Virtual Treeview supports customizing tree options by descentants. This allows very fine adjustments for derived tree classes, including the decision which properties should be published. For more information about the base options see TCustomVirtualTreeOptions and its descentants.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.TreeStates Property
TBaseVirtualTree Properties | See Also | TBaseVirtualTree Class | Send Feedback

Property which keeps a set of flags which indicate current operation and states of the tree.

Pascal
property TreeStates: TVirtualTreeStates;
Description

Often it is extremly helpful to know what action is currently happening in the tree. TreeStates gives you this information, be it that the caches are currently validated, a drag operation is in progress, the tree has delayed data on the clipboard or a large update operation is under work. You can greatly optimize your code with this knowledge.

See Also

OnStateChange

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, See Also, TBaseVirtualTree Class


TBaseVirtualTree.UpdateCount Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property UpdateCount: Cardinal;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.VerticalAlignment Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Used to set a node's vertical button aligment with regard to the entire node rectangle.

Pascal
property VerticalAlignment [Node: PVirtualNode]: Byte;
Description

The given value is interpreted differently depending on the value of NodeAlignment. By default the alignment used relatively with regard to the top bound. In this case a range of 0 through 100 must be used which denotes the relative pixel amount in percent. The other variants work with absolute pixel values from top or bottom bound.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.VisibleCount Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Number of currently visible nodes.

Pascal
property VisibleCount: Cardinal;
Description

Visible nodes are those nodes which have the vsVisible flag set in their states.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree.VisiblePath Property
TBaseVirtualTree Properties | See Also | TBaseVirtualTree Class | Send Feedback

Property to set or determine a node parent's expand states.

Pascal
property VisiblePath [Node: PVirtualNode]: Boolean;
Description

A node has a visible path when all of its parent nodes are expanded. Setting this property to True will expand all parent nodes of Node if not yet done.

See Also

Visible

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, See Also, TBaseVirtualTree Class


TBaseVirtualTree.WantTabs Property
TBaseVirtualTree Properties | TBaseVirtualTree Class | Send Feedback

Read or set whether the tree wants to process tabs on its own.

Pascal
property WantTabs: Boolean;
Description

Usually tab kex strokes advance the input focus from one control to another on a form. For special processing however it is necessary to let the control decide what to do with the given tabulator character. Virtual Treeview needs this character mainly for its grid emulation.

Group

TBaseVirtualTree Properties

Links
TBaseVirtualTree Properties, TBaseVirtualTree Class


TBaseVirtualTree Events
Events | TBaseVirtualTree Class | Legend | Send Feedback

The events of the TBaseVirtualTree class are listed here.

Class

TBaseVirtualTree Class

Legend

Event
protected

Links
Events, TBaseVirtualTree Class, Legend
What do you think about this topic? Send feedback!


TBaseVirtualTree.OnAddToSelection Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnAddToSelection: TVTAddToSelectionEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnAdvancedHeaderDraw Event
TBaseVirtualTree Events | See Also | TBaseVirtualTree Class | Send Feedback

Header paint support event.

Pascal
property OnAdvancedHeaderDraw: TVTAdvancedHeaderPaintEvent;
Description

The OnAdvancedHeaderDraw event is used when owner draw is enabled for the header and a column is set to owner draw mode. It can be used to custom draw only certain parts of the header instead the whole thing. A good example for this event is customizing the background of the header for only one column. With the standard custom draw method (OnHeaderDraw) you are in an all-or-nothing situation and have to paint everything in the header including the text, images and sort direction indicator. OnAdvancedHeaderDraw however uses OnHeaderDrawQueryElements to ask for the elements the application wants to draw and acts accordingly.

See Also

OnHeaderDrawQueryElements, OnHeaderDraw

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, See Also, TBaseVirtualTree Class


TBaseVirtualTree.OnAfterAutoFitColumn Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnAfterAutoFitColumn: TVTAfterAutoFitColumnEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnAfterAutoFitColumns Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnAfterAutoFitColumns: TVTAfterAutoFitColumnsEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnAfterCellPaint Event
TBaseVirtualTree Events | See Also | TBaseVirtualTree Class | Send Feedback

Paint support event.

Pascal
property OnAfterCellPaint: TVTAfterCellPaintEvent;
Description

This event is called whenever a cell has been painted. A cell is defined as being one part of a node bound to a certain column. This event is called several times per node (the amount is determined by visible columns and size of the part to draw).

See Also

Paint cycles and stages

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, See Also, TBaseVirtualTree Class


TBaseVirtualTree.OnAfterColumnExport Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnAfterColumnExport: TVTColumnExportEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnAfterColumnWidthTracking Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnAfterColumnWidthTracking: TVTAfterColumnWidthTrackingEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnAfterGetMaxColumnWidth Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnAfterGetMaxColumnWidth: TVTAfterGetMaxColumnWidthEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnAfterHeaderExport Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnAfterHeaderExport: TVTTreeExportEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnAfterHeaderHeightTracking Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnAfterHeaderHeightTracking: TVTAfterHeaderHeightTrackingEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnAfterItemErase Event
TBaseVirtualTree Events | See Also | TBaseVirtualTree Class | Send Feedback

Paint support event.

Pascal
property OnAfterItemErase: TVTAfterItemEraseEvent;
Description

Called after the background of a node has been erased (erasing can also be filling with a background image). This event is called once per node in a paint cycle.

See Also

Paint cycles and stages

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, See Also, TBaseVirtualTree Class


TBaseVirtualTree.OnAfterItemPaint Event
TBaseVirtualTree Events | See Also | TBaseVirtualTree Class | Send Feedback

Paint support event.

Pascal
property OnAfterItemPaint: TVTAfterItemPaintEvent;
Description

Called after a node has been drawn. This event is called once per node.

See Also

Paint cycles and stages

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, See Also, TBaseVirtualTree Class


TBaseVirtualTree.OnAfterNodeExport Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnAfterNodeExport: TVTNodeExportEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnAfterPaint Event
TBaseVirtualTree Events | See Also | TBaseVirtualTree Class | Send Feedback

Paint support event.

Pascal
property OnAfterPaint: TVTPaintEvent;
Description

Called after all nodes which needed an update have been drawn. This event is called once per paint cycle.

See Also

Paint cycles and stages

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, See Also, TBaseVirtualTree Class


TBaseVirtualTree.OnAfterTreeExport Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnAfterTreeExport: TVTTreeExportEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnBeforeAutoFitColumn Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnBeforeAutoFitColumn: TVTBeforeAutoFitColumnEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnBeforeAutoFitColumns Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnBeforeAutoFitColumns: TVTBeforeAutoFitColumnsEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnBeforeCellPaint Event
TBaseVirtualTree Events | See Also | TBaseVirtualTree Class | Send Feedback

Paint support event.

Pascal
property OnBeforeCellPaint: TVTBeforeCellPaintEvent;
Description

This event is called immediately before a cell is painted.

See Also

Paint cycles and stages

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, See Also, TBaseVirtualTree Class


TBaseVirtualTree.OnBeforeColumnExport Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnBeforeColumnExport: TVTColumnExportEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnBeforeColumnWidthTracking Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnBeforeColumnWidthTracking: TVTBeforeColumnWidthTrackingEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnBeforeDrawTreeLine Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnBeforeDrawTreeLine: TVTBeforeDrawLineImageEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnBeforeGetMaxColumnWidth Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnBeforeGetMaxColumnWidth: TVTBeforeGetMaxColumnWidthEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnBeforeHeaderExport Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnBeforeHeaderExport: TVTTreeExportEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnBeforeHeaderHeightTracking Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnBeforeHeaderHeightTracking: TVTBeforeHeaderHeightTrackingEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnBeforeItemErase Event
TBaseVirtualTree Events | See Also | TBaseVirtualTree Class | Send Feedback

Paint support event.

Pascal
property OnBeforeItemErase: TVTBeforeItemEraseEvent;
Description

Called when the background of a node is about to be erased.

See Also

Paint cycles and stages

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, See Also, TBaseVirtualTree Class


TBaseVirtualTree.OnBeforeItemPaint Event
TBaseVirtualTree Events | See Also | TBaseVirtualTree Class | Send Feedback

Paint support event.

Pascal
property OnBeforeItemPaint: TVTBeforeItemPaintEvent;
Description

Called after the background of a node has been drawn and just before the node itself is painted. In this event the application gets the opportunity to decide whether a node should be drawn normally or should be skipped. The application can draw the node itself if necessary or leave the node area blank.

See Also

Paint cycles and stages

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, See Also, TBaseVirtualTree Class


TBaseVirtualTree.OnBeforeNodeExport Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnBeforeNodeExport: TVTNodeExportEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnBeforePaint Event
TBaseVirtualTree Events | See Also | TBaseVirtualTree Class | Send Feedback

Paint support event.

Pascal
property OnBeforePaint: TVTPaintEvent;
Description

Called as very first event in a paint cycle. In this event has the application the opportunity to do some special preparation of the canvas onto which the tree is painted, e.g. setting a special viewport and origin or a different mapping mode.

See Also

Paint cycles and stages

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, See Also, TBaseVirtualTree Class


TBaseVirtualTree.OnBeforeTreeExport Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnBeforeTreeExport: TVTTreeExportEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnCanSplitterResizeColumn Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnCanSplitterResizeColumn: TVTCanSplitterResizeColumnEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnCanSplitterResizeHeader Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnCanSplitterResizeHeader: TVTCanSplitterResizeHeaderEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnCanSplitterResizeNode Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnCanSplitterResizeNode: TVTCanSplitterResizeNodeEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnChange Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Navigation support event.

Pascal
property OnChange: TVTChangeEvent;
Description

Called when a node's selection state has changed.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnChecked Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Check support event.

Pascal
property OnChecked: TVTChangeEvent;
Description

Triggered when a node's check state has changed.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnChecking Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Check support event.

Pascal
property OnChecking: TVTCheckChangingEvent;
Description

Triggered when a node's check state is about to change and allows to prevent the change.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnCollapsed Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnCollapsed: TVTChangeEvent;
Description

Triggered after a node has been collapsed, that is, its child nodes are no longer displayed.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnCollapsing Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnCollapsing: TVTChangingEvent;
Description

Triggered when a node is about to be collapsed and allows to prevent collapsing the node by setting Allowed to false.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnColumnClick Event
TBaseVirtualTree Events | See Also | TBaseVirtualTree Class | Send Feedback

Header and column support event.

Pascal
property OnColumnClick: TVTColumnClickEvent;
Description

Triggered when the user released a mouse button over the same column in the client area on which the button was pressed previously.

See Also

OnHeaderClick

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, See Also, TBaseVirtualTree Class


TBaseVirtualTree.OnColumnDblClick Event
TBaseVirtualTree Events | See Also | TBaseVirtualTree Class | Send Feedback

Header and column support event.

Pascal
property OnColumnDblClick: TVTColumnDblClickEvent;
Description

Same as OnColumnClick but for double clicks.

See Also

OnColumnClick, OnHeaderDblClick

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, See Also, TBaseVirtualTree Class


TBaseVirtualTree.OnColumnExport Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnColumnExport: TVTColumnExportEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnColumnResize Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Header and column support routine.

Pascal
property OnColumnResize: TVTHeaderNotifyEvent;
Description

Triggered when a column is being resized. During resize OnColumnResize is frequently hence you should make any code in the associated event handle a short and fast as possible.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnColumnWidthDblClickResize Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnColumnWidthDblClickResize: TVTColumnWidthDblClickResizeEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnColumnWidthTracking Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnColumnWidthTracking: TVTColumnWidthTrackingEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnCompareNodes Event
TBaseVirtualTree Events | See Also | TBaseVirtualTree Class | Send Feedback

Sort and search support event.

Pascal
property OnCompareNodes: TVTCompareEvent;
Description

This event is the core event for all comparations between nodes. It is important that you write a handler for this event if you want to sort nodes!

Result must be set to less than 0 if Node1 is considered as being before Node2, equal to 0 if both a considered being the same and greater than 0 if the first node is considered as being after node 2. Keep in mind that you don't need to take sort direction into account. This is automatically handled by the tree. Simply return a comparation result as would there be an ascending sort order.

Below is some sample code taken from the Advanced Demo:

procedure TMainForm.VDT1CompareNodes(Sender: TBaseVirtualTree; Node1, Node2: PVirtualNode; Column: Integer;
  var Result: Integer);

// used to sort the image draw tree

var
  Data1,
  Data2: PImageData;

begin
  Data1 := Sender.GetNodeData(Node1);
  Data2 := Sender.GetNodeData(Node2);
  // folder are always before files
  if Data1.IsFolder <> Data2.IsFolder then
  begin
    // one of both is a folder the other a file
    if Data1.IsFolder then
      Result := -1
    else
      Result := 1;
  end
  else // both are of same type (folder or file)
    Result := CompareText(Data1.FullPath, Data2.FullPath);
end;
See Also

SortTree, Sort

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, See Also, TBaseVirtualTree Class


TBaseVirtualTree.OnCreateDataObject Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Drag'n drop support event.

Pascal
property OnCreateDataObject: TVTCreateDataObjectEvent;
Description

This event is called when the tree's drag manager needs a data object interface to start a drag'n drop operation. Descentants (which override DoGetDataObject) or the application can return an own IDataObject implementation to support special formats.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnCreateDragManager Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Drag'n drop support event.

Pascal
property OnCreateDragManager: TVTCreateDragManagerEvent;
Description

This event is usually not used but allows power users to create their own drag manager to have different actions and/or formats than the internal drag manager.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnCreateEditor Event
TBaseVirtualTree Events | See Also | TBaseVirtualTree Class | Send Feedback

Editing support event.

Pascal
property OnCreateEditor: TVTCreateEditorEvent;
Description

Allows to supply a customized node editor without changing the tree. TBaseVirtualTree triggers this event and raises an exception if there no editor is returned. If you don't want this then disable edit support for nodes in TreeOptions.MiscOptions. Descentants like TCustomVirtualStringTree supply a generic and simple string editor.

See Also

Editors and editing

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, See Also, TBaseVirtualTree Class


TBaseVirtualTree.OnDragAllowed Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Drag'n drop support event.

Pascal
property OnDragAllowed: TVTDragAllowedEvent;
Description

This event is called in the mouse button down handler to determine whether the application allows to start a drag operation. Since this check is done in sync with the other code it is much prefered over doing a manual BeginDrag.

Notes

The OnDragAllowed event is called only if the current DragMode is dmManual.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnDragDrop Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Drag'n drop support event.

Pascal
property OnDragDrop: TVTDragDropEvent;
Description

Triggered when either a VCL or a OLE drop action occured. Accepting drag and drop actions is not trivial. In order to maintain a minimum compatibility with the VCL drag'n drop system Virtual Tree accepts not only OLE drop actions but also those issued by the Delphi VCL (which is totally different to the OLE way, unfortunately), provided toAcceptOLEDrop is set in TreeOptions.MiscOptions. The code snippet below is taken from a sample project provided with Virtual Tree. It shows a general way to deal with dropped data. The following check list can be used as orientation and additional comment to the code:

  1. Determine what kind of drop data is passed. If DataObject is nil or Formats is empty then the drag source is a VCL control. The event is not triggered for OLE drag'n drop if there is no OLE format is available (which should never occur).
  2. If the event is triggered by a VCL control then use Source to access either the control or the drag object, depending on the circumstances of the action.
  3. For OLE drag'n drop iterate through the Formats list to find a format you can handle.
  4. If you find CF_VIRTUALTREE then the source of the drag operation is a Virtual Treeview. Since this is the native tree format you can pass it to the Sender's ProcessDrop method which will take care to retrieve the data and act depending on Effect and Mode. No further action by the application is usually required in this case.
  5. If you do not find CF_VIRTUALTREE then the operation has been initiated by another application, e.g. the Explorer (then you will find CF_HDROP or CF_SHELLIDLIST in formats) or Notepad (then you will get CF_TEXT and perhaps CF_UNICODETEXT) etc., depending on the data which is actually dropped.
  6. Use the provided DataObject to get the drop data via IDataObject.GetData and act depending on the format you get.
  7. Finally set Effect to either DROPEFFECT_COPY, DROPEFFECT_MOVE or DROPEFFECT_NONE to indicate which operation needs to be finished in Sender when the event returns. If you return DROPEFFECT_MOVE then all marked nodes in the source tree will be deleted, otherwise they stay where they are.

procedure TMainForm.VTDragDrop(Sender: TBaseVirtualTree; Source: TObject; DataObject: IDataObject;
  const Formats: array of Word; Shift: TShiftState; Pt: TPoint; var Effect: Integer; Mode: TDropMode);

var
  I: Integer;
  AttachMode: TVTNodeAttachMode;

begin
  if Length(Formats) > 0 then
  begin
    // OLE drag'n drop
    // If the native tree format is listed then use this and accept the drop, otherwise recject (ignore) it.
    // It is recommend by Microsoft to order available clipboard formats in decreasing detail richness so
    // the first best format which we can accept is usually the best format we can get at all.
    for I := 0 to High(Formats) do
      if Formats[I] = CF_VIRTUALTREE then
      begin
        case Mode of
          dmAbove:
            AttachMode := amInsertBefore;
          dmOnNode:
            AttachMode := amAddChildLast;
          dmBelow:
            AttachMode := amInsertAfter;
        else
          if Assigned(Source) and (Source is TBaseVirtualTree) and (Sender <> Source) then
            AttachMode := amInsertBefore
          else
            AttachMode := amNowhere;
        end;
        // in the case the drop target does an optimized move Effect is set to DROPEFFECT_NONE
        // to indicate this also to the drag source (so the source doesn't need to take any further action)
        Sender.ProcessDrop(DataObject, Sender.DropTargetNode, Effect, AttachMode);
        Break;
      end;
  end
  else
  begin
    // VCL drag'n drop, Effects contains by default both move and copy effect suggestion,
    // as usual the application has to find out what operation is finally to do
    Beep;
  end;
end;
Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnDragOver Event
TBaseVirtualTree Events | See Also | TBaseVirtualTree Class | Send Feedback

Drag'n drop support event.

Pascal
property OnDragOver: TVTDragOverEvent;
Description

Triggered when Sender is the potential target of a drag'n drop operation. You can use this event to allow or deny a drop operation by setting Allowed to True or False, respectively. For conditions of OLE or VCL drag source see OnDragDrop.

See Also

OnDragDrop

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, See Also, TBaseVirtualTree Class


TBaseVirtualTree.OnEditCancelled Event
TBaseVirtualTree Events | See Also | TBaseVirtualTree Class | Send Feedback

Editing support event.

Pascal
property OnEditCancelled: TVTEditCancelEvent;
Description

Triggered when an edit action has been cancelled.

See Also

Editors and editing

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, See Also, TBaseVirtualTree Class


TBaseVirtualTree.OnEdited Event
TBaseVirtualTree Events | See Also | TBaseVirtualTree Class | Send Feedback

Editing support event.

Pascal
property OnEdited: TVTEditChangeEvent;
Description

Triggered when an edit action has successfully been finished.

See Also

Editors and editing

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, See Also, TBaseVirtualTree Class


TBaseVirtualTree.OnEditing Event
TBaseVirtualTree Events | See Also | TBaseVirtualTree Class | Send Feedback

Editing support event.

Pascal
property OnEditing: TVTEditChangingEvent;
Description

Triggered when a node is about to be edited. Use Allowed to allow or deny this action.

See Also

Editors and editing

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, See Also, TBaseVirtualTree Class


TBaseVirtualTree.OnEndOperation Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnEndOperation: TVTOperationEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnExpanded Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Misscellaneous event.

Pascal
property OnExpanded: TVTChangeEvent;
Description

Triggered after a node has been expanded.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnExpanding Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnExpanding: TVTChangingEvent;
Description

Triggered just before a node is expanded. Use Allowed to allow or deny this action.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnFocusChanged Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Navigation support event.

Pascal
property OnFocusChanged: TVTFocusChangeEvent;
Description

Triggered after the focused node changed. When examining Node keep in mind that it can be nil, meaning there is no focused node.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnFocusChanging Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Navigation support event.

Pascal
property OnFocusChanging: TVTFocusChangingEvent;
Description

Triggered when the node focus is about to change. You can use Allowed to allow or deny a focus change. Keep in mind that either the old or the new node can be nil.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnFreeNode Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Data management node.

Pascal
property OnFreeNode: TVTFreeNodeEvent;
Description

Triggered when a node is about to be freed. This is the ideal place to free/disconnect your own data you associated with Node. Keep in mind, that data which is stored directly in the node does not need to be free by the application. This is part of the node record and will be freed when the node is freed. You should however finalize the data in such a case if it contains references to external memory objects (e.g. variants, strings, interfaces).

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnGetCellIsEmpty Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Triggered when the tree control needs to know whether a given column is empty.

Pascal
property OnGetCellIsEmpty: TVTGetCellIsEmptyEvent;
Description

Virtual Treeview supports the concept of column spanning where one cell with too much text to fit into its own space can expand to the right cell neighbors if they are empty. To make this work it is necessary to know if a cell is considered as being empty, whatever this means to an application. The string tree descendant simply checks the text for the given cell and calls back its ancestor if there is no text to further refine if the cell must stay as if it contained something. The ancestor (TBaseVirtualTree) now triggers OnGetCellIsEmpty to let the application decide.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnGetCursor Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnGetCursor: TVTGetCursorEvent;
Description

This event is triggered from the WM_SETCURSOR message to allow the application use several individual cursors for a tree. The Cursor property allows to set one cursor for the whole control but not to use separate cursors for different tree parts.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnGetHeaderCursor Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Header and column support event.

Pascal
property OnGetHeaderCursor: TVTGetHeaderCursorEvent;
Description

This event is triggered from the WM_SETCURSOR message to allow the application to define individual cursors for the header part of the tree control.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnGetHelpContext Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnGetHelpContext: TVTHelpContextEvent;
Description

This event is usually triggered when the user pressed F1 while the tree has the focus. The tree is iteratively traversed all the way up to the top level parent of the given node until a valid help context index is returned (via this event). When the loop reaches the top level without getting a help index then the tree control's help index is used. If the tree itself does not have a help context index then a further traversal is initiated going up parent by parent of each control in the current window hierarchy until either a valid index is found or there is no more window parent.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnGetImageIndex Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Display management event.

Pascal
property OnGetImageIndex: TVTGetImageEvent;
Description

This event is triggered whenever the tree needs the index of an image, be it the normal, the selected or the state image. The event should be as fast as possible because it is at times frequently called when the layout of the node must be determined, e.g. while doing draw selection with the mouse or painting the tree. Kind determines which image is needed and Column determines for which column of the node the image is needed. This value can be -1 to indicate there is no column used. The parameter Ghosted can be set to true to blend the image 50% against the tree background and can be used for instance in explorer trees to mark hidden file system objects. Additionally nodes are also drawn with a ghosted icon if the are part of a cut set during a pending cut-to-clipboard operation. In this case changing the ghosted parameter has no effect.

Notes

Blending nodes can be switched by using toUseBlendImages in TreeOptions.PaintOptions.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnGetImageIndexEx Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnGetImageIndexEx: TVTGetImageExEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnGetImageText Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnGetImageText: TVTGetImageTextEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnGetLineStyle Event
TBaseVirtualTree Events | See Also | TBaseVirtualTree Class | Send Feedback

Display management event.

Pascal
property OnGetLineStyle: TVTGetLineStyleEvent;
Description

This event is used to customize the appearance of the tree and grid lines and is only triggered if the LineStyle property is set to lsCustomStyle. The event must return a pointer to an array containing bits for an 8 x 8 pixel image with word aligned entries. For more info see PrepareBitmaps and the Windows APIs CreateBitmap and CreatePatternBrush.

Notes

It is important that you do not use dynamically allocated memory in this event (also no local variables on the stack). If

you do so then either the memory is not valid on return of the event (if allocated on stack) or will never be freed (if

allocated with a memory manager). Instead use a constant array and return its address.

See Also

PrepareBitmaps

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, See Also, TBaseVirtualTree Class


TBaseVirtualTree.OnGetNodeDataSize Event
TBaseVirtualTree Events | See Also | TBaseVirtualTree Class | Send Feedback

Data management event.

Pascal
property OnGetNodeDataSize: TVTGetNodeDataSizeEvent;
Description

Triggered when access to a node's data happens the first time but the actual data size is not yet set. Usually you would specify the size of the data you want to have added to each node by NodeDataSize, e.g. SizeOf(TMyRecord) is quite usual there (where TMyRecord is the structure you want to have stored in the node). Sometimes, however it is not possible to determine the node size in advance, so you can leave NodeDataSize being -1 (the default value) and the OnGetNodeDataSize event is triggered as soon as the first regular node is created (the hidden root node does not have user data but internal data which is determined by other means).

See Also

NodeDataSize, Data handling

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, See Also, TBaseVirtualTree Class


TBaseVirtualTree.OnGetPopupMenu Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnGetPopupMenu: TVTPopupEvent;
Description

This event allows the application to return a popup menu which is specific to a certain node. The tree does an automatic traversal all the way up to the top level node which is the parent of a given node to get a popup menu. If Menu is set then the traversal stops. Otherwise it continues until either a menu is set, AskParent is set to False or the top level parent has been reached.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnGetUserClipboardFormats Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Drag'n drop and clipboard support event.

Pascal
property OnGetUserClipboardFormats: TVTGetUserClipboardFormatsEvent;
Description

Whenever the tree needs to specify the available clipboard formats for a clipboard or drag'n drop operation it calls this event too, to allow the application or descentants (which would override DoGetUserClipboardFormats) to specify own formats which can be rendered. Since the build-in data object does not know how to render formats which are specified here you have to supply a handler for the OnRenderOLEData event or an own IDataObject implementation to fully support your own formats.

Use the Formats parameter which is an open array and add the identifiers of your formats (which you got when you registered the format).

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnHeaderClick Event
TBaseVirtualTree Events | See Also | TBaseVirtualTree Class | Send Feedback

Header & column support event.

Pascal
property OnHeaderClick: TVTHeaderClickEvent;
Description

This event is triggered when the user clicks on a header button and is usually a good place to set the current SortColumn and SortDirection.

See Also

SortColumn, SortDirection

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, See Also, TBaseVirtualTree Class


TBaseVirtualTree.OnHeaderDblClick Event
TBaseVirtualTree Events | See Also | TBaseVirtualTree Class | Send Feedback

Header & column support event.

Pascal
property OnHeaderDblClick: TVTHeaderClickEvent;
Description

Unlike OnHeaderClick this event is triggered for double clicks on any part of the header and comes with more detailed information like shift state, which mouse button caused the event and the mouse position.

See Also

OnHeaderClick

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, See Also, TBaseVirtualTree Class


TBaseVirtualTree.OnHeaderDragged Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Header & column support event.

Pascal
property OnHeaderDragged: TVTHeaderDraggedEvent;
Description

Triggered after the user has released the left mouse button when a header drag operation was active. Column contains the index of the column which was dragged. Use this index for the Columns property of the header to find out the current position. OldPosition is the position which Column occupied before it was dragged around.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnHeaderDraggedOut Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Header & column support event.

Pascal
property OnHeaderDraggedOut: TVTHeaderDraggedOutEvent;
Description

When during a header drag operation the mouse moves out of the header rectangle and the mouse button is released then an OnHeaderDraggedOut event will be fired with the target mouse position in screen coordinates.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnHeaderDragging Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Header & column support event.

Pascal
property OnHeaderDragging: TVTHeaderDraggingEvent;
Description

Triggered just before dragging of a header button starts. Set Allowed to False if you want to prevent the drag operation of the given column.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnHeaderDraw Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Header & column support event.

Pascal
property OnHeaderDraw: TVTHeaderPaintEvent;
Description

If you set the hoOwnerDraw style in TVTHeader.Options and a column has been set to vsOwnerDraw (see also TVirtualTreeColumn.Style) then OnDrawHeader is called whenever a column needs painting.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnHeaderDrawQueryElements Event
TBaseVirtualTree Events | See Also | TBaseVirtualTree Class | Send Feedback

Header & column support event.

Pascal
property OnHeaderDrawQueryElements: TVTHeaderPaintQueryElementsEvent;
Description

Used for advanced header painting to query the application for the elements, which are drawn by it and which should be drawn by the tree.

See Also

OnAdvancedHeaderDraw

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, See Also, TBaseVirtualTree Class


TBaseVirtualTree.OnHeaderHeightDblClickResize Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnHeaderHeightDblClickResize: TVTHeaderHeightDblClickResizeEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnHeaderHeightTracking Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnHeaderHeightTracking: TVTHeaderHeightTrackingEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnHeaderMouseDown Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Header & column support event.

Pascal
property OnHeaderMouseDown: TVTHeaderMouseEvent;
Description

This event is similar to OnHeaderClick but comes with more detailed information like shift state, which mouse button caused the event and the mouse position.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnHeaderMouseMove Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Header & column support event.

Pascal
property OnHeaderMouseMove: TVTHeaderMouseMoveEvent;
Description

This event is triggered when the mouse pointer is moved over the header area.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnHeaderMouseUp Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Header & column support event.

Pascal
property OnHeaderMouseUp: TVTHeaderMouseEvent;
Description

This event is very much like OnHeaderMouseDown but is triggered when a mouse button is released.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnHotChange Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Navigation support event.

Pascal
property OnHotChange: TVTHotNodeChangeEvent;
Description

This event is triggered if hot tracking is enabled (see also TreeOptions.PaintOptions) and when the mouse pointer moves from one node caption to another. In full row select mode most parts of a node are considered as being part of the caption.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnIncrementalSearch Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnIncrementalSearch: TVTIncrementalSearchEvent;
Description

This event is integral part of the incremental search functionality (see also Keyboard, hotkeys and incremental search). It is triggered during search for a node which matches the given string. Similar to other compare routines return a value < 0 if the node's caption is considered as being before the given text, = 0 if it is the same and > 0 if it is considered being after the given text.

procedure TfrmProperties.VST3IncrementalSearch(Sender: TBaseVirtualTree; Node: PVirtualNode; const Text: WideString;
  var Result: Integer);

var
  S, PropText: string;

begin
  // Note: This code requires a proper Unicode/WideString comparison routine which I did not want to link here for
  // size and clarity reasons. For now strings are (implicitly) converted to ANSI to make the comparison work.
  // Search is not case sensitive.
  S := Text;
  if Node.Parent = Sender.RootNode then
  begin
    // root nodes
    if Node.Index = 0 then
      PropText := 'Description'
    else
      PropText := 'Origin';
  end
  else
  begin
    PropText := PropertyTexts[Node.Parent.Index, Node.Index, ptkText];
  end;

  // By using StrLIComp we can specify a maximum length to compare. This allows us to find also nodes
  // which match only partially.
  Result := StrLIComp(PChar(S), PChar(PropText), Min(Length(S), Length(PropText)))
end;
Notes

Usually incremental search allows to match also partially. Hence it is recommended to do comparison only up to the length

of the shorter string.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnInitChildren Event
TBaseVirtualTree Events | See Also | TBaseVirtualTree Class | Send Feedback

Node management event.

Pascal
property OnInitChildren: TVTInitChildrenEvent;
Description

In order to allow the tree only to fill content where needed it is possible to set the vsHasChildren style in a node's initializaton whithout really adding any child nodes. These child nodes must be initialized first when they are about to be displayed or another access (like search, iteration etc.) occurs.

The application usually prepares data needed to fill child nodes when they are initialized and retrieves the actual number. Set ChildCount to the number of children you want.

See Also

The virtual paradigm

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, See Also, TBaseVirtualTree Class


TBaseVirtualTree.OnInitNode Event
TBaseVirtualTree Events | See Also | TBaseVirtualTree Class | Send Feedback

Node management event.

Pascal
property OnInitNode: TVTInitNodeEvent;
Description

This event is important to connect the tree to your internal data. It is the ideal place to put references or whatever you need into a node's data area. You can set some initial states like selection, expansion state or that a node has child nodes.

See Also

The virtual paradigm

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, See Also, TBaseVirtualTree Class


TBaseVirtualTree.OnKeyAction Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnKeyAction: TVTKeyActionEvent;
Description

This event is a convinient way for the application or descentant trees to change the semantic of a certain key stroke. It is triggered when the user presses a key and allows either to process that key normally (leave DoDefault being True) or change it to another key instead (set DoDefault to False then). This way a key press can change its meaning or entirely be ignored (if CharCode is set to 0).

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnLoadNode Event
TBaseVirtualTree Events | See Also | TBaseVirtualTree Class | Send Feedback

Streaming support event.

Pascal
property OnLoadNode: TVTSaveNodeEvent;
Description

This event is typically triggered when serialized tree data must be restored, e.g. when loading the tree from file or stream or during a clipboard/drag'n drop operation. You should only read in what you wrote out in OnSaveNode. For safety there is a check in the loader code which tries to keep the internal serialization structure intact in case the application does not read correctly.

See Also

OnSaveNode, LoadFromStream, SaveToStream, AddFromStream, VTTreeStreamVersion, TVTHeader.LoadFromStream, TVTHeader.SaveToStream

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, See Also, TBaseVirtualTree Class


TBaseVirtualTree.OnLoadTree Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnLoadTree: TVTSaveTreeEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnMeasureItem Event
TBaseVirtualTree Events | See Also | TBaseVirtualTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnMeasureItem: TVTMeasureItemEvent;
Description

Virtual Treeview supports individual node heights. However it might sometimes unpractical to set this height in advance (e.g. during OnInitNode). Another scenario might be that multi line nodes must size themselves to accomodate the entire node text without clipping. For such and similar cases the event OnMeasureItem is for. It is queried once for each node and allows to specify the node's future height. If you later want to have a new height applied (e.g. because the node's text changed) then call InvalidateNode for it and its vsHeightMeasured state is reset causing so the tree to trigger the OnMeasureItem event again when the node is painted the next time.

See Also

InvalidateNode, vsHeightMeasured

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, See Also, TBaseVirtualTree Class


TBaseVirtualTree.OnNodeClick Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnNodeClick: TVTNodeClickEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnNodeCopied Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnNodeCopied: TVTNodeCopiedEvent;
Description

This event is triggered during drag'n drop after a node has been copied to a new location. Sender is the target tree where the copy operation took place.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnNodeCopying Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnNodeCopying: TVTNodeCopyingEvent;
Description

This event is triggered when a node is about to be copied to a new location. Use Allowed to allow or deny the action. Sender is the target tree where the copy operation will take place.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnNodeDblClick Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnNodeDblClick: TVTNodeClickEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnNodeExport Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnNodeExport: TVTNodeExportEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnNodeHeightDblClickResize Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnNodeHeightDblClickResize: TVTNodeHeightDblClickResizeEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnNodeHeightTracking Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnNodeHeightTracking: TVTNodeHeightTrackingEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnNodeMoved Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnNodeMoved: TVTNodeMovedEvent;
Description

This event is very much like OnNodeCopied but used for moving nodes instead.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnNodeMoving Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnNodeMoving: TVTNodeMovingEvent;
Description

This event is very much like OnNodeCopying but used for moving nodes instead.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnPaintBackground Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Paint support event.

Pascal
property OnPaintBackground: TVTBackgroundPaintEvent;
Description

This event is triggered when the tree has finished its painting and there is an area which is not covered by nodes. For nodes there are various events to allow background customizaton. For the free area in the tree window there is this event.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnRemoveFromSelection Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnRemoveFromSelection: TVTRemoveFromSelectionEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnRenderOLEData Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Drag'n drop and clipboard support event.

Pascal
property OnRenderOLEData: TVTRenderOLEDataEvent;
Description

This event is triggered when the data in a clipboard or drag'n drop operation must be rendered but the built-in data object does not know the requested format. This is usually the case when the application (or descentants) have specified their own formats in OnGetUserClipboardFormats.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnResetNode Event
TBaseVirtualTree Events | See Also | TBaseVirtualTree Class | Send Feedback

Node management event.

Pascal
property OnResetNode: TVTChangeEvent;
Description

For large trees or simply because the content changed it is sometimes necessary to discard a certain node and release all its children. This can be done with ResetNode which will trigger this event.

See Also

ResetNode

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, See Also, TBaseVirtualTree Class


TBaseVirtualTree.OnSaveNode Event
TBaseVirtualTree Events | See Also | TBaseVirtualTree Class | Send Feedback

Streaming support event.

Pascal
property OnSaveNode: TVTSaveNodeEvent;
Description

This event is triggered whenever a certain node must be serialized into a stream, e.g. for saving to file or for copying to another tree/node during a clipboard or drag'n drop operation. Make sure you only store non-transient data into the stream. Pointers (including long/wide string references) are transient and the application cannot assume to find the data a pointer references on saving at the same place when the node is loaded (see also OnLoadNode). This is even more essential for nodes which are moved or copied between different trees in different processes (applications). Storing strings however is easily done by writing the strings as a whole into the stream.

Notes

For exchanging data between different trees and for general stability improvement I strongly recommend that you insert a

kind of identifier as first stream entry when saving a node. This identifier can then be used to determine what data will

follow when loading the node later and does normally not required to be stored in the node data.

See Also

OnLoadNode, LoadFromStream, SaveToStream, AddFromStream, VTTreeStreamVersion, TVTHeader.LoadFromStream, TVTHeader.SaveToStream

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, See Also, TBaseVirtualTree Class


TBaseVirtualTree.OnSaveTree Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnSaveTree: TVTSaveTreeEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnScroll Event
TBaseVirtualTree Events | See Also | TBaseVirtualTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnScroll: TVTScrollEvent;
Description

This event is triggered when the tree is scrolled horizontally or vertically. You can use it to synchronize scrolling of several trees or other controls.

See Also

OffsetXY

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, See Also, TBaseVirtualTree Class


TBaseVirtualTree.OnShowScrollbar Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnShowScrollbar: TVTScrollbarShowEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnStartOperation Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Not documented.

Pascal
property OnStartOperation: TVTOperationEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnStateChange Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnStateChange: TVTStateChangeEvent;
Description

For special effects or in order to increase performance it is sometimes useful to know when the tree changes one of its internal states like tsIncrementalSearching or tsOLEDragging. The OnStateChange event is triggered each time such a change occurs letting so the application take measures for it.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnStructureChange Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnStructureChange: TVTStructureChangeEvent;
Description

This event is triggered when a change in the tree structure is made. That means whenever a node is created or destroyed or a node's child list is change (because a child node was moved, copied etc.) then OnStructureChange is executed.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBaseVirtualTree.OnUpdating Event
TBaseVirtualTree Events | TBaseVirtualTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnUpdating: TVTUpdatingEvent;
Description

This event is triggered when the application or the tree call BeginUpdate or EndUpdate and indicate so when a larger update operation takes place. This can for instance be used to show a hour glass wait cursor.

Group

TBaseVirtualTree Events

Links
TBaseVirtualTree Events, TBaseVirtualTree Class


TBufferedAnsiString Class
Classes | Topics | TBufferedAnsiString Methods | TBufferedAnsiString Destructors | TBufferedAnsiString Properties | TBufferedAnsiString Destructors | Legend | TBufferedAnsiString Methods | TBufferedAnsiString Properties | Send Feedback

Not documented.

Pascal
TBufferedAnsiString = class;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Classes

Members
TBufferedAnsiString Methods

Add
Not documented.
AddNewLine
Not documented.

Topics

TBufferedAnsiString Methods
The methods of the TBufferedAnsiString class are listed here.
TBufferedAnsiString Destructors
The destructors of the TBufferedAnsiString class are listed here.
TBufferedAnsiString Properties
The properties of the TBufferedAnsiString class are listed here.

TBufferedAnsiString Destructors

Destroy
Not documented.

TBufferedAnsiString Properties

AsString
Not documented.

Topics

TBufferedAnsiString Methods
The methods of the TBufferedAnsiString class are listed here.
TBufferedAnsiString Destructors
The destructors of the TBufferedAnsiString class are listed here.
TBufferedAnsiString Properties
The properties of the TBufferedAnsiString class are listed here.

TBufferedAnsiString Destructors

Destroy
Not documented.

Legend

Method
public
Destructor
virtual
Property
read only

TBufferedAnsiString Methods

Add
Not documented.
AddNewLine
Not documented.

TBufferedAnsiString Properties

AsString
Not documented.

Class Hierarchy
  TBufferedAnsiString
File

VirtualTrees

Links
Classes, Topics, TBufferedAnsiString Methods, TBufferedAnsiString Destructors, TBufferedAnsiString Properties, TBufferedAnsiString Destructors, Legend, TBufferedAnsiString Methods, TBufferedAnsiString Properties


TBufferedAnsiString Methods
TBufferedAnsiString Class | Methods | Legend | Send Feedback

The methods of the TBufferedAnsiString class are listed here.

Class

TBufferedAnsiString Class

Legend

Method
public

Links
TBufferedAnsiString Class, Methods, Legend


TBufferedAnsiString.Add Method
TBufferedAnsiString Methods | TBufferedAnsiString Class | Send Feedback

Not documented.

Pascal
procedure Add(const S: AnsiString);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBufferedAnsiString Methods

Links
TBufferedAnsiString Methods, TBufferedAnsiString Class


TBufferedAnsiString.AddNewLine Method
TBufferedAnsiString Methods | TBufferedAnsiString Class | Send Feedback

Not documented.

Pascal
procedure AddNewLine;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBufferedAnsiString Methods

Links
TBufferedAnsiString Methods, TBufferedAnsiString Class


TBufferedAnsiString Destructors
TBufferedAnsiString Class | Methods | Legend | Send Feedback

The destructors of the TBufferedAnsiString class are listed here.

Class

TBufferedAnsiString Class

Legend

Destructor
public
virtual

Links
TBufferedAnsiString Class, Methods, Legend


TBufferedAnsiString.Destroy Destructor
TBufferedAnsiString Destructors | TBufferedAnsiString Class | Send Feedback

Not documented.

Pascal
destructor Destroy; override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBufferedAnsiString Destructors

Links
TBufferedAnsiString Destructors, TBufferedAnsiString Class


TBufferedAnsiString Properties
TBufferedAnsiString Class | Properties | Legend | Send Feedback

The properties of the TBufferedAnsiString class are listed here.

Class

TBufferedAnsiString Class

Legend

Property
public
read only

Links
TBufferedAnsiString Class, Properties, Legend


TBufferedAnsiString.AsString Property
TBufferedAnsiString Properties | TBufferedAnsiString Class | Send Feedback

Not documented.

Pascal
property AsString: AnsiString;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TBufferedAnsiString Properties

Links
TBufferedAnsiString Properties, TBufferedAnsiString Class


TCanvasEx Class
Classes | Send Feedback

Not documented.

Pascal
TCanvasEx = class(TCanvas);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Classes

Class Hierarchy
  TCanvasEx
File

VirtualTrees

Links
Classes
What do you think about this topic? Send feedback!


TClipboardFormatList Class
Classes | Topics | TClipboardFormatList Methods | TClipboardFormatList Constructors | TClipboardFormatList Destructors | TClipboardFormatList Constructors | TClipboardFormatList Destructors | Legend | TClipboardFormatList Methods | Send Feedback

Not documented.

Pascal
TClipboardFormatList = class;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Classes

Members
TClipboardFormatList Methods

Add
Adds the given data to the internal list.
Clear
Not documented.
EnumerateFormats
This is the overview for the EnumerateFormats method overload.
FindFormat
This is the overview for the FindFormat method overload.

Topics

TClipboardFormatList Methods
The methods of the TClipboardFormatList class are listed here.
TClipboardFormatList Constructors
The constructors of the TClipboardFormatList class are listed here.
TClipboardFormatList Destructors
The destructors of the TClipboardFormatList class are listed here.

TClipboardFormatList Constructors

Create
Not documented.

TClipboardFormatList Destructors

Destroy
Not documented.

Topics

TClipboardFormatList Methods
The methods of the TClipboardFormatList class are listed here.
TClipboardFormatList Constructors
The constructors of the TClipboardFormatList class are listed here.
TClipboardFormatList Destructors
The destructors of the TClipboardFormatList class are listed here.

TClipboardFormatList Constructors

Create
Not documented.

TClipboardFormatList Destructors

Destroy
Not documented.

Legend

Method
public
Constructor
virtual

TClipboardFormatList Methods

Add
Adds the given data to the internal list.
Clear
Not documented.
EnumerateFormats
This is the overview for the EnumerateFormats method overload.
FindFormat
This is the overview for the FindFormat method overload.

Class Hierarchy
  TClipboardFormatList
File

VirtualTrees

Links
Classes, Topics, TClipboardFormatList Methods, TClipboardFormatList Constructors, TClipboardFormatList Destructors, TClipboardFormatList Constructors, TClipboardFormatList Destructors, Legend, TClipboardFormatList Methods


TClipboardFormatList Methods
TClipboardFormatList Class | Methods | Legend | Send Feedback

The methods of the TClipboardFormatList class are listed here.

Class

TClipboardFormatList Class

Legend

Method
public

Links
TClipboardFormatList Class, Methods, Legend


TClipboardFormatList.Add Method
TClipboardFormatList Methods | TClipboardFormatList Class | Send Feedback

Adds the given data to the internal list.

Pascal
procedure Add(FormatString: string; AClass: TVirtualTreeClass; Priority: Cardinal; AFormatEtc: TFormatEtc);
Description

The priority value is used to sort formats for importance. Larger priority values mean less priority.

Group

TClipboardFormatList Methods

Links
TClipboardFormatList Methods, TClipboardFormatList Class


TClipboardFormatList.Clear Method
TClipboardFormatList Methods | TClipboardFormatList Class | Send Feedback

Not documented.

Pascal
procedure Clear;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TClipboardFormatList Methods

Links
TClipboardFormatList Methods, TClipboardFormatList Class


EnumerateFormats Method

TClipboardFormatList.Clear Method | TClipboardFormatList Methods | TClipboardFormatList.EnumerateFormats Method (TVirtualTreeClass, TFormatEtcArray, TClipboardFormats)
EnumerateFormats Method
TClipboardFormatList Methods | Send Feedback

This is the overview for the EnumerateFormats method overload.

Group

TClipboardFormatList Methods

Links
TClipboardFormatList Methods
Overload List
Method | Description
TClipboardFormatList.EnumerateFormats (TVirtualTreeClass, TFormatEtcArray, TClipboardFormats) | Returns a list of format records for the given class.
TClipboardFormatList.EnumerateFormats (TVirtualTreeClass, TStrings) | Returns a list of format descriptions for the given class.


TClipboardFormatList.EnumerateFormats Method (TVirtualTreeClass, TFormatEtcArray, TClipboardFormats)
EnumerateFormats Method | TClipboardFormatList Class | Send Feedback

Returns a list of format records for the given class.

Pascal
procedure EnumerateFormats(TreeClass: TVirtualTreeClass; var Formats: TFormatEtcArray; const AllowedFormats: TClipboardFormats = nil); overload;
Description

If assigned the AllowedFormats is used to limit the enumerated formats to those described in the list.

Group

EnumerateFormats Method

Links
EnumerateFormats Method, TClipboardFormatList Class


TClipboardFormatList.EnumerateFormats Method (TVirtualTreeClass, TStrings)
EnumerateFormats Method | TClipboardFormatList Class | Send Feedback

Returns a list of format descriptions for the given class.

Pascal
procedure EnumerateFormats(TreeClass: TVirtualTreeClass; const Formats: TStrings); overload;
Group

EnumerateFormats Method

Links
EnumerateFormats Method, TClipboardFormatList Class


FindFormat Method

TClipboardFormatList.EnumerateFormats Method (TVirtualTreeClass, TStrings) | TClipboardFormatList Methods | TClipboardFormatList.FindFormat Method (Word, string)
FindFormat Method
TClipboardFormatList Methods | Send Feedback

This is the overview for the FindFormat method overload.

Group

TClipboardFormatList Methods

Links
TClipboardFormatList Methods
Overload List
Method | Description
TClipboardFormatList.FindFormat (string) | Not documented.
TClipboardFormatList.FindFormat (string, Word) | Not documented.
TClipboardFormatList.FindFormat (Word, string) | Not documented.


TClipboardFormatList.FindFormat Method (Word, string)
FindFormat Method | TClipboardFormatList Class | Send Feedback

Not documented.

Pascal
function FindFormat(Fmt: Word; var Description: string): TVirtualTreeClass; overload;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

FindFormat Method

Links
FindFormat Method, TClipboardFormatList Class


TClipboardFormatList.FindFormat Method (string)
FindFormat Method | TClipboardFormatList Class | Send Feedback

Not documented.

Pascal
function FindFormat(FormatString: string): PClipboardFormatListEntry; overload;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

FindFormat Method

Links
FindFormat Method, TClipboardFormatList Class


TClipboardFormatList.FindFormat Method (string, Word)
FindFormat Method | TClipboardFormatList Class | Send Feedback

Not documented.

Pascal
function FindFormat(FormatString: string; var Fmt: Word): TVirtualTreeClass; overload;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

FindFormat Method

Links
FindFormat Method, TClipboardFormatList Class


TClipboardFormatList Constructors
TClipboardFormatList Class | Methods | Legend | Send Feedback

The constructors of the TClipboardFormatList class are listed here.

Class

TClipboardFormatList Class

Legend

Constructor
public

Links
TClipboardFormatList Class, Methods, Legend


TClipboardFormatList.Create Constructor
TClipboardFormatList Constructors | TClipboardFormatList Class | Send Feedback

Not documented.

Pascal
constructor Create;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TClipboardFormatList Constructors

Links
TClipboardFormatList Constructors, TClipboardFormatList Class


TClipboardFormatList Destructors
TClipboardFormatList Class | Methods | Legend | Send Feedback

The destructors of the TClipboardFormatList class are listed here.

Class

TClipboardFormatList Class

Legend

Destructor
public
virtual

Links
TClipboardFormatList Class, Methods, Legend


TClipboardFormatList.Destroy Destructor
TClipboardFormatList Destructors | TClipboardFormatList Class | Send Feedback

Not documented.

Pascal
destructor Destroy; override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TClipboardFormatList Destructors

Links
TClipboardFormatList Destructors, TClipboardFormatList Class


TClipboardFormats Class
Classes | Topics | TClipboardFormats Methods | TClipboardFormats Constructors | TClipboardFormats Properties | TClipboardFormats Constructors | Legend | TClipboardFormats Methods | TClipboardFormats Properties | Send Feedback

List of strings describing clipboard formats.

Pascal
TClipboardFormats = class(TStringList);
Description

This class is an extended string list which allows to enter description strings for clipboard formats which are checked agains registered formats and only accepted if the particular format could be found. This way there is an unambiqious and portable description of allowed clipboard formats possible.

Group

Classes

Members
TClipboardFormats Methods

Add
Adds a new format to the internal list.

Insert
Adds a new format to the internal list.

Topics

TClipboardFormats Methods
The methods of the TClipboardFormats class are listed here.
TClipboardFormats Constructors
The constructors of the TClipboardFormats class are listed here.
TClipboardFormats Properties
The properties of the TClipboardFormats class are listed here.

TClipboardFormats Constructors

Create
Constructor of the class.

TClipboardFormats Properties

Owner
Not documented.

Topics

TClipboardFormats Methods
The methods of the TClipboardFormats class are listed here.
TClipboardFormats Constructors
The constructors of the TClipboardFormats class are listed here.
TClipboardFormats Properties
The properties of the TClipboardFormats class are listed here.

TClipboardFormats Constructors

Create
Constructor of the class.

Legend

Method
public
virtual
Constructor
Property
read only

TClipboardFormats Methods

Add
Adds a new format to the internal list.

Insert
Adds a new format to the internal list.

TClipboardFormats Properties

Owner
Not documented.

Class Hierarchy
  TClipboardFormats
File

VirtualTrees

Links
Classes, Topics, TClipboardFormats Methods, TClipboardFormats Constructors, TClipboardFormats Properties, TClipboardFormats Constructors, Legend, TClipboardFormats Methods, TClipboardFormats Properties


TClipboardFormats Methods
TClipboardFormats Class | Methods | Legend | Send Feedback

The methods of the TClipboardFormats class are listed here.

Class

TClipboardFormats Class

Legend

Method
public
virtual

Links
TClipboardFormats Class, Methods, Legend
What do you think about this topic? Send feedback!


TClipboardFormats.Add Method
TClipboardFormats Methods | TClipboardFormats Class | Send Feedback

Adds a new format to the internal list.

Pascal
function Add(const S: string): Integer; override;
procedure Insert(Index: Integer; const S: string); override;
Description

Adds or inserts a new format to the internal list but restricts additions to the clipbard formats to only those which are registered with the owner tree or one of its ancestors.

Group

TClipboardFormats Methods

Links
TClipboardFormats Methods, TClipboardFormats Class


TClipboardFormats Constructors
TClipboardFormats Class | Methods | Legend | Send Feedback

The constructors of the TClipboardFormats class are listed here.

Class

TClipboardFormats Class

Legend

Constructor
public
virtual

Links
TClipboardFormats Class, Methods, Legend
What do you think about this topic? Send feedback!


TClipboardFormats.Create Constructor
TClipboardFormats Constructors | TClipboardFormats Class | Send Feedback

Constructor of the class.

Pascal
constructor Create(AOwner: TBaseVirtualTree); virtual;
Description

Create initializes the class.

Group

TClipboardFormats Constructors

Links
TClipboardFormats Constructors, TClipboardFormats Class


TClipboardFormats Properties
TClipboardFormats Class | Properties | Legend | Send Feedback

The properties of the TClipboardFormats class are listed here.

Class

TClipboardFormats Class

Legend

Property
public
read only

Links
TClipboardFormats Class, Properties, Legend


TClipboardFormats.Owner Property
TClipboardFormats Properties | TClipboardFormats Class | Send Feedback

Not documented.

Pascal
property Owner: TBaseVirtualTree;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TClipboardFormats Properties

Links
TClipboardFormats Properties, TClipboardFormats Class


TCriticalSection Class
Classes | Topics | TCriticalSection Fields | TCriticalSection Methods | TCriticalSection Constructors | TCriticalSection Destructors | TCriticalSection Constructors | TCriticalSection Destructors | TCriticalSection Fields | Legend | TCriticalSection Methods | Send Feedback

Not documented.

Pascal
TCriticalSection = class(TObject);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Classes

Members
TCriticalSection Fields

FSection
Not documented.

Topics

TCriticalSection Fields
The fields of the TCriticalSection class are listed here.
TCriticalSection Methods
The methods of the TCriticalSection class are listed here.
TCriticalSection Constructors
The constructors of the TCriticalSection class are listed here.
TCriticalSection Destructors
The destructors of the TCriticalSection class are listed here.

TCriticalSection Methods

Enter
Not documented.
Leave
Not documented.

TCriticalSection Constructors

Create
Not documented.

TCriticalSection Destructors

Destroy
Not documented.

Topics

TCriticalSection Fields
The fields of the TCriticalSection class are listed here.
TCriticalSection Methods
The methods of the TCriticalSection class are listed here.
TCriticalSection Constructors
The constructors of the TCriticalSection class are listed here.
TCriticalSection Destructors
The destructors of the TCriticalSection class are listed here.

TCriticalSection Constructors

Create
Not documented.

TCriticalSection Destructors

Destroy
Not documented.

TCriticalSection Fields

FSection
Not documented.

Legend

Data Member
protected
Method
public
Constructor
virtual

TCriticalSection Methods

Enter
Not documented.
Leave
Not documented.

Class Hierarchy
  TCriticalSection
File

VirtualTrees

Links
Classes, Topics, TCriticalSection Fields, TCriticalSection Methods, TCriticalSection Constructors, TCriticalSection Destructors, TCriticalSection Constructors, TCriticalSection Destructors, TCriticalSection Fields, Legend, TCriticalSection Methods


TCriticalSection Fields
Fields | TCriticalSection Class | Legend | Send Feedback

The fields of the TCriticalSection class are listed here.

Class

TCriticalSection Class

Legend

Data Member
protected

Links
Fields, TCriticalSection Class, Legend
What do you think about this topic? Send feedback!


TCriticalSection.FSection Field
TCriticalSection Fields | TCriticalSection Class | Send Feedback

Not documented.

Pascal
FSection: TRTLCriticalSection;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TCriticalSection Fields

Links
TCriticalSection Fields, TCriticalSection Class


TCriticalSection Methods
TCriticalSection Class | Methods | Legend | Send Feedback

The methods of the TCriticalSection class are listed here.

Class

TCriticalSection Class

Legend

Method
public

Links
TCriticalSection Class, Methods, Legend
What do you think about this topic? Send feedback!


TCriticalSection.Enter Method
TCriticalSection Methods | TCriticalSection Class | Send Feedback

Not documented.

Pascal
procedure Enter;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TCriticalSection Methods

Links
TCriticalSection Methods, TCriticalSection Class


TCriticalSection.Leave Method
TCriticalSection Methods | TCriticalSection Class | Send Feedback

Not documented.

Pascal
procedure Leave;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TCriticalSection Methods

Links
TCriticalSection Methods, TCriticalSection Class


TCriticalSection Constructors
TCriticalSection Class | Methods | Legend | Send Feedback

The constructors of the TCriticalSection class are listed here.

Class

TCriticalSection Class

Legend

Constructor
public

Links
TCriticalSection Class, Methods, Legend
What do you think about this topic? Send feedback!


TCriticalSection.Create Constructor
TCriticalSection Constructors | TCriticalSection Class | Send Feedback

Not documented.

Pascal
constructor Create;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TCriticalSection Constructors

Links
TCriticalSection Constructors, TCriticalSection Class


TCriticalSection Destructors
TCriticalSection Class | Methods | Legend | Send Feedback

The destructors of the TCriticalSection class are listed here.

Class

TCriticalSection Class

Legend

Destructor
public
virtual

Links
TCriticalSection Class, Methods, Legend
What do you think about this topic? Send feedback!


TCriticalSection.Destroy Destructor
TCriticalSection Destructors | TCriticalSection Class | Send Feedback

Not documented.

Pascal
destructor Destroy; override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TCriticalSection Destructors

Links
TCriticalSection Destructors, TCriticalSection Class


TCustomStringTreeOptions Class
Classes | Topics | TCustomStringTreeOptions Methods | TCustomStringTreeOptions Constructors | TCustomStringTreeOptions Properties | TCustomVirtualTreeOptions Constructors | Legend | TCustomVirtualTreeOptions Methods | TCustomVirtualTreeOptions Properties | Send Feedback

Enhanced options class for string trees.

Pascal
TCustomStringTreeOptions = class(TCustomVirtualTreeOptions);
Description

This class enhances the base class TCustomVirtualTreeOptions by options related to a string tree.

Group

Classes

Members
TCustomVirtualTreeOptions Methods

AssignTo
Used to copy this option class to another option collection.

TCustomStringTreeOptions Class

AssignTo
Used to copy the options class.

Topics

TCustomVirtualTreeOptions Methods
The methods of the TCustomVirtualTreeOptions class are listed here.
TCustomVirtualTreeOptions Constructors
The constructors of the TCustomVirtualTreeOptions class are listed here.
TCustomVirtualTreeOptions Properties
The properties of the TCustomVirtualTreeOptions class are listed here.

TCustomStringTreeOptions Class

TCustomStringTreeOptions Methods
The methods of the TCustomStringTreeOptions class are listed here.
TCustomStringTreeOptions Constructors
The constructors of the TCustomStringTreeOptions class are listed here.
TCustomStringTreeOptions Properties
The properties of the TCustomStringTreeOptions class are listed here.

TCustomVirtualTreeOptions Constructors

Create
Constructor of the class.

TCustomStringTreeOptions Class

Create
The constructor of the class.

TCustomVirtualTreeOptions Properties

AnimationOptions
Options related to animations.
AutoOptions
Options related to automatic actions.
ExportMode
Not documented.
MiscOptions
Options not related to any other category.
Owner
Owner tree to which the property class belongs.
PaintOptions
Options related to painting.
SelectionOptions
Options related to the way nodes can be selected.

TCustomStringTreeOptions Class

StringOptions
The new options introduced by the class.

Topics

TCustomVirtualTreeOptions Methods
The methods of the TCustomVirtualTreeOptions class are listed here.
TCustomVirtualTreeOptions Constructors
The constructors of the TCustomVirtualTreeOptions class are listed here.
TCustomVirtualTreeOptions Properties
The properties of the TCustomVirtualTreeOptions class are listed here.

TCustomStringTreeOptions Class

TCustomStringTreeOptions Methods
The methods of the TCustomStringTreeOptions class are listed here.
TCustomStringTreeOptions Constructors
The constructors of the TCustomStringTreeOptions class are listed here.
TCustomStringTreeOptions Properties
The properties of the TCustomStringTreeOptions class are listed here.

TCustomVirtualTreeOptions Constructors

Create
Constructor of the class.

TCustomStringTreeOptions Class

Create
The constructor of the class.

Legend

Method
public
virtual
Constructor
Property
protected
read only

TCustomVirtualTreeOptions Methods

AssignTo
Used to copy this option class to another option collection.

TCustomStringTreeOptions Class

AssignTo
Used to copy the options class.

TCustomVirtualTreeOptions Properties

AnimationOptions
Options related to animations.
AutoOptions
Options related to automatic actions.
ExportMode
Not documented.
MiscOptions
Options not related to any other category.
Owner
Owner tree to which the property class belongs.
PaintOptions
Options related to painting.
SelectionOptions
Options related to the way nodes can be selected.

TCustomStringTreeOptions Class

StringOptions
The new options introduced by the class.

Class Hierarchy
  TCustomStringTreeOptionsTCustomStringTreeOptions
File

VirtualTrees

Links
Classes, Topics, TCustomStringTreeOptions Methods, TCustomStringTreeOptions Constructors, TCustomStringTreeOptions Properties, TCustomVirtualTreeOptions Constructors, Legend, TCustomVirtualTreeOptions Methods, TCustomVirtualTreeOptions Properties


TCustomStringTreeOptions Methods
TCustomStringTreeOptions Class | Methods | Legend | Send Feedback

The methods of the TCustomStringTreeOptions class are listed here.

Class

TCustomStringTreeOptions Class

Legend

Method
public
virtual

Links
TCustomStringTreeOptions Class, Methods, Legend


TCustomStringTreeOptions.AssignTo Method
TCustomStringTreeOptions Methods | TCustomStringTreeOptions Class | Send Feedback

Used to copy the options class.

Pascal
procedure AssignTo(Dest: TPersistent); override;
Description

You can either call this method directly or use the Assign method of the target class to do the assignment. Implementing AssignTo instead of Assign allows for future enhancements. TPersistent will automatically call AssignTo if there was no Assign method.

Group

TCustomStringTreeOptions Methods

Links
TCustomStringTreeOptions Methods, TCustomStringTreeOptions Class


TCustomStringTreeOptions Constructors
TCustomStringTreeOptions Class | Methods | Legend | Send Feedback

The constructors of the TCustomStringTreeOptions class are listed here.

Class

TCustomStringTreeOptions Class

Legend

Constructor
public
virtual

Links
TCustomStringTreeOptions Class, Methods, Legend


TCustomStringTreeOptions.Create Constructor
TCustomStringTreeOptions Constructors | TCustomStringTreeOptions Class | Send Feedback

The constructor of the class.

Pascal
constructor Create(AOwner: TBaseVirtualTree); override;
Description

The constructor initializes the class.

Group

TCustomStringTreeOptions Constructors

Links
TCustomStringTreeOptions Constructors, TCustomStringTreeOptions Class


TCustomStringTreeOptions Properties
TCustomStringTreeOptions Class | Properties | Legend | Send Feedback

The properties of the TCustomStringTreeOptions class are listed here.

Class

TCustomStringTreeOptions Class

Legend

Property
protected

Links
TCustomStringTreeOptions Class, Properties, Legend


TCustomStringTreeOptions.StringOptions Property
TCustomStringTreeOptions Properties | TCustomStringTreeOptions Class | Send Feedback

The new options introduced by the class.

Pascal
property StringOptions: TVTStringOptions;
Description

StringOptions provides access to the newly introduced options by which the base class is extended.

Group

TCustomStringTreeOptions Properties

Links
TCustomStringTreeOptions Properties, TCustomStringTreeOptions Class


TCustomVirtualDrawTree Class
Classes | Topics | TCustomVirtualDrawTree Methods | TCustomVirtualDrawTree Events | TBaseVirtualTree Constructors | TBaseVirtualTree Destructors | TBaseVirtualTree Events | Legend | TBaseVirtualTree Methods | TBaseVirtualTree Properties | Send Feedback

Simple owner draw descendant of the base tree.

Pascal
TCustomVirtualDrawTree = class(TBaseVirtualTree);
Description

TCustomVirtualDrawTree is a simple TBaseVirtualTree descendant, which publishes the paint method through an event. This allows an application for self drawn tree views without overriding the base class.

Group

Classes

Members
TBaseVirtualTree Methods

AbsoluteIndex
Reads the overall index of a node.
AddChild
Creates and adds a new child node to given node.
AddFromStream
Adds the content from the given stream to the given node.
AddToSelection
This is the overview for the AddToSelection method overload.
AdjustImageBorder
Depending on the width of the image list as well as the given bidi mode R must be adjusted.
AdjustPaintCellRect
Used in descentants to modify the clip rectangle of the current column while painting a certain node.
AdjustPanningCursor
Loads the proper cursor which indicates into which direction scrolling is done.
AdviseChangeEvent
Used to register a delayed change event.
AllocateInternalDataArea
Registration method to allocate tree internal data per node.
Animate
Support method for animated actions in the tree view.
Assign
Used to copy properties from another Virtual Treeview.
BeginDrag
Starts an OLE drag'n drop operation.
BeginSynch
Enters the tree into a special synchronized mode.
BeginUpdate
Locks the tree view to perform several update operations.
CalculateSelectionRect
Support method for draw selection.
CanAutoScroll
Determines whether the tree can currently auto scroll its window.
CancelCutOrCopy
Canceles any pending cut or copy clipboard operation.
CancelEditNode
Cancel the current edit operation, if there is any.
CancelOperation
Not documented.
CanEdit
Determines whether a node can be edited or not.
CanFocus
Support method to determine whether the tree window can receive the input focus.
CanShowDragImage
Determines whether a drag image should be shown.
CanSplitterResizeNode
Not documented.
Change
Central method called when a node's selection state changes.
ChangeScale
Helper method called by the VCL when control resizing is due.
CheckedNodes
Not documented.
CheckParentCheckState
Helper method for recursive check state changes.
ChildNodes
Not documented.
Clear
Clears the tree and removes all nodes.
ClearChecked
Not documented.
ClearSelection
Removes all nodes from the current selection.
ClearTempCache
Helper method to clear the internal temporary node cache.
ColumnIsEmpty
Used to determine if a cell is considered as being empty.
ComputeRTLOffset
Not documented.
CopyTo
This is the overview for the CopyTo method overload.
CopyToClipBoard
Copies all currently selected nodes to the clipboard.
CountLevelDifference
Determines the level difference of two nodes.
CountVisibleChildren
Determines the number of visible child nodes of the given node.
CreateParams
Prepares the creation of the controls window handle.
CreateWnd
Initializes data, which depends on the window handle.
CutCopyNodes
Not documented.
CutToClipBoard
Copies the currently selected nodes to the clipboard and removes them once a consumer has taken the data.
DefineProperties
Helper method to customize loading and saving persistent tree data.
DeleteChildren
Removes all child nodes from the given node.
DeleteNode
Removes the given node from the tree.
DeleteSelectedNodes
Removes all currently selected nodes form the tree.
DetermineDropMode
Not documented.
DetermineHiddenChildrenFlag
Determines whether all children of a given node are hidden.
DetermineHiddenChildrenFlagAllNodes
Determines whether all children of all nodes are hidden.
DetermineHitPositionLTR
Determines the hit position within a node with left-to-right and right-to-left orientation.
DetermineHitPositionRTL
Determines the hit position within a node with left-to-right and right-to-left orientation.
DetermineLineImageAndSelectLevel
Not documented.
DetermineNextCheckState
Not documented.
DetermineScrollDirections
Not documented.
DoAdvancedHeaderDraw
Not documented.
DoAfterCellPaint
Not documented.
DoAfterItemErase
Not documented.
DoAfterItemPaint
Not documented.
DoAfterPaint
Not documented.
DoAutoScroll
Enables or disables the auto scroll timer.
DoBeforeCellPaint
Not documented.
DoBeforeDrag
Not documented.
DoBeforeDrawLineImage
Not documented.
DoBeforeItemErase
Not documented.
DoBeforeItemPaint
Not documented.
DoBeforePaint
Not documented.
DoCancelEdit
Called when the tree should stop editing without accepting changed values.
DoCanEdit
Not documented.
DoCanSplitterResizeNode
Not documented.
DoChange
Not documented.
DoCheckClick
Not documented.
DoChecked
Not documented.
DoChecking
Not documented.
DoCollapsed
Not documented.
DoCollapsing
Not documented.
DoColumnClick
Not documented.
DoColumnDblClick
Not documented.
DoColumnResize
Not documented.
DoCompare
Not documented.
DoCreateDataObject
Not documented.
DoCreateDragManager
Not documented.
DoCreateEditor
Not documented.
DoDragDrop
Not documented.
DoDragExpand
Not documented.
DoDragging
Internal method which handles drag' drop.
DoDragOver
Not documented.
DoEdit
Initiates editing of the currently set focused column and edit node.
DoEndDrag
Not documented.
DoEndEdit
Stops the current edit operation and takes over the new content.
DoEndOperation
Not documented.
DoExpanded
Not documented.
DoExpanding
Not documented.
DoFocusChange
Not documented.
DoFocusChanging
Not documented.
DoFocusNode
Internal method to set the focused node.
DoFreeNode
Not documented.
DoGetAnimationType
Determines the type of animation to be used.
DoGetCellContentMargin
Not documented.
DoGetCursor
Not documented.
DoGetHeaderCursor
Not documented.
DoGetImageIndex
Not documented.
DoGetImageText
Not documented.
DoGetLineStyle
Not documented.
DoGetNodeHint
Not documented.
DoGetNodeTooltip
Not documented.
DoGetNodeWidth
Overridable method which always retuns 0.
DoGetPopupMenu
Overridable method which triggers the OnGetPopup event.
DoGetUserClipboardFormats
Not documented.
DoHeaderClick
Not documented.
DoHeaderDblClick
Not documented.
DoHeaderDragged
Not documented.
DoHeaderDraggedOut
Not documented.
DoHeaderDragging
Not documented.
DoHeaderDraw
Not documented.
DoHeaderDrawQueryElements
Not documented.
DoHeaderMouseDown
Not documented.
DoHeaderMouseMove
Not documented.
DoHeaderMouseUp
Not documented.
DoHotChange
Not documented.
DoIncrementalSearch
Not documented.
DoInitChildren
Not documented.
DoInitNode
Not documented.
DoKeyAction
Not documented.
DoLoadUserData
Not documented.
DoMeasureItem
Not documented.
DoNodeClick
Not documented.
DoNodeCopied
Not documented.
DoNodeCopying
Not documented.
DoNodeDblClick
Not documented.
DoNodeHeightDblClickResize
Not documented.
DoNodeHeightTracking
Not documented.
DoNodeMoved
Not documented.
DoNodeMoving
Not documented.
DoPaintBackground
Not documented.
DoPaintDropMark
Overridable method which draws the small line on top of a nodes image depending on the current drop state.
DoPaintNode
Overridable method which does nothing.
DoPopupMenu
Overridable method which shows the popup menu for the given node.
DoRenderOLEData
Not documented.
DoReset
Not documented.
DoSaveUserData
Not documented.
DoScroll
Overridable method which triggers the OnScroll event.
DoSetOffsetXY
Internal core routine to set the tree's scroll position.
DoShowScrollbar
Not documented.
DoStartDrag
Not documented.
DoStartOperation
Not documented.
DoStateChange
Not documented.
DoStructureChange
Not documented.
DoTimerScroll
Callback method which is triggered whenever the scroll timer fires.
DoUpdating
Not documented.
DoValidateCache
Not documented.
DragAndDrop
Not documented.
DragCanceled
Called by the VCL when a drag'n drop operation was canceled by the user.
DragDrop
Helper method, which is used when a drag operation is finished.
DragEnter
Not documented.
DragFinished
Called when a drag operation is finished (accepted or cancelled).
Dragging
Returns true if a drag'n drop operation is in progress.
DragLeave
Not documented.
DragOver
Not documented.
DrawDottedHLine
Not documented.
DrawDottedVLine
Not documented.
EditNode
Starts editing the given node if allowed to.
EndEditNode
Stops node editing if it was started before.
EndOperation
Not documented.
EndSynch
Counterpart to BeginSynch.
EndUpdate
Resets the update lock set by BeginUpdate.
ExecuteAction
Not documented.
FindNodeInSelection
Helper method to find the given node in the current selection.
FinishChunkHeader
Not documented.
FinishCutOrCopy
Stops any pending cut or copy clipboard operation.
FlushClipboard
Renders all pending clipboard data.
FontChanged
Not documented.
FullCollapse
Collapses all nodes in the tree.
FullExpand
Expands all nodes in the tree.
GetBorderDimensions
Not documented.
GetCheckImage
Not documented.
GetCheckImageListFor
Not documented.
GetColumnClass
Returns the class to be used to manage columns in the tree.
GetControlsAlignment
Not documented.
GetDisplayRect
Not documented.
GetEffectivelyFiltered
Not documented.
GetEffectivelyVisible
Not documented.
GetFirst
Group of node navigation functions.
GetFirstChecked
Not documented.
GetFirstChild
Group of node navigation functions.
GetFirstCutCopy
Group of node navigation functions.
GetFirstInitialized
Group of node navigation functions.
GetFirstLeaf
Not documented.
GetFirstLevel
Not documented.
GetFirstNoInit
Group of node navigation functions.
GetFirstSelected
Group of node navigation functions.
GetFirstVisible
Group of node navigation functions.
GetFirstVisibleChild
Not documented.
GetFirstVisibleChildNoInit
Not documented.
GetFirstVisibleNoInit
Group of node navigation functions.
GetHeaderClass
Returns the header class to be used by the tree.
GetHintWindowClass
Not documented.
GetHitTestInfoAt
Returns information about the node at the given position.
GetImageIndex
Not documented.
GetLast
Not documented.
GetLastChild
GetLastChildNoInit
GetLastInitialized
Not documented.
GetLastNoInit
Not documented.
GetLastVisible
Not documented.
GetLastVisibleChild
Not documented.
GetLastVisibleChildNoInit
Not documented.
GetLastVisibleNoInit
Not documented.
GetMaxColumnWidth
Not documented.
GetMaxRightExtend
Determines the maximum with of the currently visible part of the tree.
GetNativeClipboardFormats
Used to let descendants and the application add their own supported clipboard formats.
GetNext
Not documented.
GetNextChecked
This is the overview for the GetNextChecked method overload.
GetNextCutCopy
Not documented.
GetNextInitialized
Not documented.
GetNextLeaf
Not documented.
GetNextLevel
Not documented.
GetNextNoInit
Not documented.
GetNextSelected
Not documented.
GetNextSibling
GetNextVisible
Not documented.
GetNextVisibleNoInit
Not documented.
GetNextVisibleSibling
Not documented.
GetNextVisibleSiblingNoInit
Not documented.
GetNodeAt
This is the overview for the GetNodeAt method overload.
GetNodeData
Returns the address of the user data area of the given node.
GetNodeLevel
Returns the indentation level of the given node.
GetOperationCanceled
Not documented.
GetOptionsClass
Customization helper to determine which options class the tree should use.
GetPrevious
Not documented.
GetPreviousChecked
Not documented.
GetPreviousCutCopy
Not documented.
GetPreviousInitialized
Not documented.
GetPreviousLeaf
Not documented.
GetPreviousLevel
Not documented.
GetPreviousNoInit
Not documented.
GetPreviousSelected
Not documented.
GetPreviousSibling
GetPreviousVisible
Not documented.
GetPreviousVisibleNoInit
Not documented.
GetPreviousVisibleSibling
Not documented.
GetPreviousVisibleSiblingNoInit
Not documented.
GetSortedCutCopySet
Returns a sorted list of nodes, which are marked for s cut or copy clipboard operation.
GetSortedSelection
Returns a sorted list of all currently selected nodes.
GetTextInfo
Not documented.
GetTreeFromDataObject
OLE drag'n drop and clipboard support method.
GetTreeRect
Returns the size of the virtual tree image.
GetVisibleParent
Not documented.
HandleHotTrack
Not documented.
HandleIncrementalSearch
Not documented.
HandleMouseDblClick
Not documented.
HandleMouseDown
Not documented.
HandleMouseUp
Not documented.
HasAsParent
Determines if the given node has got another node as one of its parents.
HasImage
Not documented.
HasPopupMenu
Determines whether there is a pop up menu assigned to the tree.
InitChildren
Not documented.
InitializedNodes
Not documented.
InitNode
Not documented.
InsertNode
Inserts a new node and returns it to the caller.
InternalAddFromStream
Not documented.
InternalAddToSelection
This is the overview for the InternalAddToSelection method overload.
InternalCacheNode
Not documented.
InternalClearSelection
Not documented.
InternalConnectNode
Not documented.
InternalData
Returns the address of the internal data for a tree class.
InternalDisconnectNode
Not documented.
InternalRemoveFromSelection
Not documented.
InvalidateCache
Empties the internal node cache and marks it as invalid.
InvalidateChildren
Invalidates all children of the given node.
InvalidateColumn
Invalidates the client area part of a column.
InvalidateNode
Invalidates the given node.
InvalidateToBottom
Invalidates the client area starting with the top position of the given node.
InvertSelection
Inverts the current selection.
IsEditing
Tells the caller whether the tree is currently in edit mode.
IsMouseSelecting
Tell the caller whether the tree is currently in draw selection mode.
IterateSubtree
Iterator method to go through all nodes of a given sub tree.
LeafNodes
Not documented.
LevelNodes
Not documented.
Loaded
Not documented.
LoadFromFile
Loads previously streamed out tree data back in again.
LoadFromStream
Loads previously streamed out tree data back in again.
MainColumnChanged
Not documented.
MarkCutCopyNodes
Not documented.
MeasureItemHeight
Not documented.
MouseMove
Not documented.
MoveTo
This is the overview for the MoveTo method overload.
Nodes
Not documented.
NoInitNodes
Not documented.
Notification
Not documented.
OriginalWMNCPaint
Not documented.
Paint
TControl's Paint method used here to display the tree.
PaintCheckImage
Not documented.
PaintImage
Not documented.
PaintNodeButton
Not documented.
PaintSelectionRectangle
Not documented.
PaintTree
Main paint routine for the tree image.
PaintTreeLines
Not documented.
PanningWindowProc
Not documented.
PasteFromClipboard
Inserts the content of the clipboard into the tree.
PrepareCell
This method is called immediately before a cell's content is drawn und is responsible to paint selection colors etc.
PrepareDragImage
Not documented.
Print
Not documented.
ProcessDrop
Helper method to ease OLE drag'n drop operations.
ProcessOLEData
Takes serialized OLE tree data and reconstructs the former structure.
ReadChunk
Not documented.
ReadNode
Not documented.
RedirectFontChangeEvent
Not documented.
ReinitChildren
Forces all child nodes of Node to be reinitialized.
ReinitNode
Forces a reinitialization of the given node.
RemoveFromSelection
Removes the given node from the current selection.
RenderOLEData
Renders pending OLE data.
RepaintNode
Causes the treeview to repaint the given node.
ResetNode
Resets the given node to uninitialized.
ResetRangeAnchor
Not documented.
RestoreFontChangeEvent
Not documented.
SaveToFile
Saves the entire content of the tree into a file or stream.
SaveToStream
Saves the entire content of the tree into a file or stream.
ScrollIntoView
This is the overview for the ScrollIntoView method overload.
SelectAll
Selects all nodes in the tree.
SelectedNodes
Not documented.
SelectNodes
Selects a range of nodes.
SetFocusedNodeAndColumn
Not documented.
SkipNode
Not documented.
Sort
Sorts the given node.
SortTree
Sorts the entire tree view.
StartOperation
Not documented.
StartWheelPanning
Not documented.
StopWheelPanning
Not documented.
StructureChange
Not documented.
SuggestDropEffect
Not documented.
ToggleNode
Changes a node's expand state to the opposite state.
ToggleSelection
Toggles the selection state of a range of nodes.
UnselectNodes
Deselects a range of nodes.
UpdateAction
Not documented.
UpdateColumnCheckState
Not documented.
UpdateDesigner
Not documented.
UpdateEditBounds
Not documented.
UpdateHeaderRect
Not documented.
UpdateHorizontalRange
Not documented.
UpdateHorizontalScrollBar
Applies changes to the horizontal and vertical scrollbars.
UpdateRanges
Not documented.
UpdateScrollBars
Applies changes to the horizontal and vertical scrollbars.
UpdateVerticalRange
Not documented.
UpdateVerticalScrollBar
Applies changes to the horizontal and vertical scrollbars.
UpdateWindowAndDragImage
Not documented.
UseRightToLeftReading
Helper method for right-to-left layout.
ValidateCache
Initiates the validation of the internal node cache.
ValidateChildren
Validates all children of a given node.
ValidateNode
Validates a given node.
ValidateNodeDataSize
Helper method for node data size initalization.
VisibleChildNodes
Not documented.
VisibleChildNoInitNodes
Not documented.
VisibleNodes
Not documented.
VisibleNoInitNodes
Not documented.
WndProc
Redirected window procedure to do some special processing.
WriteChunks
Writes the core chunks for the given node to the given stream.
WriteNode
Writes the cover (envelop) chunk for the given node to the given stream.

TCustomVirtualDrawTree Class

DoDrawHint
Overridable method which triggers OnDrawHint.
DoGetCellContentMargin
Not documented.
DoGetHintSize
Overridable method which triggers OnGetHintSize.
DoGetNodeWidth
Overridable method which triggers OnGetNodeWidth.
DoPaintNode
Overridable method which triggers OnPaintNode.

Topics

TBaseVirtualTree Methods
The methods of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Constructors
The constructors of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Destructors
The destructors of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Properties
The properties of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Events
The events of the TBaseVirtualTree class are listed here.

TCustomVirtualDrawTree Class

TCustomVirtualDrawTree Methods
The methods of the TCustomVirtualDrawTree class are listed here.
TCustomVirtualDrawTree Events
The events of the TCustomVirtualDrawTree class are listed here.

TBaseVirtualTree Constructors

Create
Constructor of the control

TBaseVirtualTree Destructors

Destroy
Destructor of the control.

TBaseVirtualTree Properties

Accessible
Not documented.
AccessibleItem
Not documented.
AccessibleName
Not documented.
Alignment
Determines the horizontal alignment of text if no columns are defined.
AnimationDuration
Determines the maximum duration the tree can use to play an animation.
AutoExpandDelay
Time delay after which a node gets expanded if it is the current drop target.
AutoScrollDelay
Time which determines when auto scrolling should start.
AutoScrollInterval
Time interval between scroll events when doing auto scroll.
Background
Holds a background image for the tree.
BackgroundOffsetX
Horizontal offset of the background image.
BackgroundOffsetY
Vertical offset of the background image.
BorderStyle
Same as TForm.BorderStyle.
BottomNode
Not documented.
BottomSpace
Not documented.
ButtonFillMode
Determines how to fill the background of the node buttons.
ButtonStyle
Determines the look of node buttons.
ChangeDelay
Time which determines when the OnChange event should be triggered after the actual change event.
CheckedCount
Not documented.
CheckImageKind
Determines which images should be used for checkboxes and radio buttons.
CheckImages
Not documented.
CheckState
Read or set the check state of a node.
CheckType
Read or set the check type of a node.
ChildCount
Read or set the number of child nodes of a node.
ChildrenInitialized
Read whether a node's child count has been initialized already.
ClipboardFormats
Special class to keep a list of clipboard format descriptions.
Colors
A collection of colors used in the tree.
CustomCheckImages
Assign your own image list to get the check images you like most.
CutCopyCount
Not documented.
DefaultNodeHeight
Read or set the height new nodes get as initial value.
DefaultPasteMode
Read or set the value, which determines where to add pasted nodes to.
DragHeight
Read or set the vertical limit of the internal drag image.
DragImage
Holds the instance of the internal drag image.
DragImageKind
Read or set what should be shown in the drag image.
DragManager
Holds the reference to the internal drag manager.
DragOperations
Read or set which drag operations may be allowed in the tree.
DragSelection
Keeps a temporary list of nodes during drag'n drop.
DragType
Read or set which subsystem should be used for dragging.
DragWidth
Read or set the horizontal limit of the internal drag image.
DrawSelectionMode
Read or set how multiselection with the mouse is to be visualized.
DropTargetNode
Contains the current drop target node if the tree is currently the target of a drag'n drop operation.
EditColumn
Not documented.
EditDelay
Read or set the maximum time between two single clicks on the same node, which should start node editing.
EditLink
Keeps a reference to the internal edit link during a node edit operation.
EffectiveOffsetX
Not documented.
EmptyListMessage
Not documented.
Expanded
Read or set the expanded state of a particular node.
FocusedColumn
Read or set the currently focused collumn.
FocusedNode
Read or set the currently focused node.
Font
Same as TWinControl.Font.
FullyVisible
Read or set whether a node is fully visible or not.
HasChildren
Read or set whether a node has got children.
Header
Provides access to the header instance.
HeaderRect
Returns the non-client-area rectangle used for the header.
HintAnimation
Read or set the current hint animation type.
HintData
Not documented.
HintMode
Read or set what type of hint you want for the tree view.
HotCursor
Read or set which cursor should be used for hot nodes.
HotMinusBM
Not documented.
HotNode
Read, which node is currently the hot node.
HotPlusBM
Not documented.
Images
Read or set the tree's normal image list.
IncrementalSearch
Read or set the current incremental search mode.
IncrementalSearchDirection
Read or set the direction to be used for incremental search.
IncrementalSearchStart
Read or set where to start incremental search.
IncrementalSearchTimeout
Read or set the maximum time, which is allowed between two consecutive key strokes so that incremental search stays active.
Indent
Read or set the indentation amount for node levels.
IsDisabled
Read or set the enabled state of the given node.
IsEffectivelyFiltered
Not documented.
IsEffectivelyVisible
Not documented.
IsFiltered
Not documented.
IsVisible
Read or set the visibility state of the given node.
LastClickPos
Used for retained drag start and wheel mouse scrolling.
LastDropMode
Read how the last drop operation finished.
LastHintRect
Not documented.
LineMode
Read or set the mode of the tree lines.
LineStyle
Read or set the mode of the tree lines.
Margin
Read or set the tree's node margin.
MinusBM
Not documented.
MultiLine
Read or toggle the multiline feature for a given node.
NodeAlignment
Read or set the node alignment value.
NodeDataSize
Read or set the extra data size for each node.
NodeHeight
Read or set a node's height.
NodeParent
Read or set a node's parent node.
OffsetX
Read or set the tree's current horizontal and vertical scroll offsets.
OffsetXY
Read or set the tree's current horizontal and vertical scroll offsets.
OffsetY
Read or set the tree's current horizontal and vertical scroll offsets.
OperationCanceled
Not documented.
OperationCount
Not documented.
PlusBM
Not documented.
RangeX
Not documented.
RangeY
Not documented.
RootNode
Reference to the internal root node which is the anchor of the entire tree node hierarchy.
RootNodeCount
Read or set the number of nodes on the top level.
ScrollBarOptions
Reference to the scroll bar options class.
SearchBuffer
Current input string for incremental search.
Selected
Property to modify or determine the selection state of a node.
SelectedCount
Contains the number of selected nodes.
SelectionBlendFactor
Read or set the current blend factor for the multi selection rectangle and the node selection rectangle.
SelectionCurveRadius
Read or set the current corner radius for node selection rectangles.
SelectionLocked
Not documented.
StateImages
Reference to the images list which is used for the state images.
TextMargin
Read or set the distance of the node caption to its borders.
TopNode
The top node is the node which is currently at the top border of the client area.
TotalCount
Returns the number of nodes in the tree.
TotalInternalDataSize
Keeps the currently accumulated data size for one node.
TreeOptions
Reference to the tree's options.
TreeStates
Property which keeps a set of flags which indicate current operation and states of the tree.
UpdateCount
Not documented.
VerticalAlignment
Used to set a node's vertical button aligment with regard to the entire node rectangle.
VisibleCount
Number of currently visible nodes.
VisiblePath
Property to set or determine a node parent's expand states.
WantTabs
Read or set whether the tree wants to process tabs on its own.

TBaseVirtualTree Events

OnAddToSelection
Not documented.
OnAdvancedHeaderDraw
Header paint support event.
OnAfterAutoFitColumn
Not documented.
OnAfterAutoFitColumns
Not documented.
OnAfterCellPaint
Paint support event.
OnAfterColumnExport
Not documented.
OnAfterColumnWidthTracking
Not documented.
OnAfterGetMaxColumnWidth
Not documented.
OnAfterHeaderExport
Not documented.
OnAfterHeaderHeightTracking
Not documented.
OnAfterItemErase
Paint support event.
OnAfterItemPaint
Paint support event.
OnAfterNodeExport
Not documented.
OnAfterPaint
Paint support event.
OnAfterTreeExport
Not documented.
OnBeforeAutoFitColumn
Not documented.
OnBeforeAutoFitColumns
Not documented.
OnBeforeCellPaint
Paint support event.
OnBeforeColumnExport
Not documented.
OnBeforeColumnWidthTracking
Not documented.
OnBeforeDrawTreeLine
Not documented.
OnBeforeGetMaxColumnWidth
Not documented.
OnBeforeHeaderExport
Not documented.
OnBeforeHeaderHeightTracking
Not documented.
OnBeforeItemErase
Paint support event.
OnBeforeItemPaint
Paint support event.
OnBeforeNodeExport
Not documented.
OnBeforePaint
Paint support event.
OnBeforeTreeExport
Not documented.
OnCanSplitterResizeColumn
Not documented.
OnCanSplitterResizeHeader
Not documented.
OnCanSplitterResizeNode
Not documented.
OnChange
Navigation support event.
OnChecked
Check support event.
OnChecking
Check support event.
OnCollapsed
Miscellaneous event.
OnCollapsing
Miscellaneous event.
OnColumnClick
Header and column support event.
OnColumnDblClick
Header and column support event.
OnColumnExport
Not documented.
OnColumnResize
Header and column support routine.
OnColumnWidthDblClickResize
Not documented.
OnColumnWidthTracking
Not documented.
OnCompareNodes
Sort and search support event.
OnCreateDataObject
Drag'n drop support event.
OnCreateDragManager
Drag'n drop support event.
OnCreateEditor
Editing support event.
OnDragAllowed
Drag'n drop support event.
OnDragDrop
Drag'n drop support event.
OnDragOver
Drag'n drop support event.
OnEditCancelled
Editing support event.
OnEdited
Editing support event.
OnEditing
Editing support event.
OnEndOperation
Not documented.
OnExpanded
Misscellaneous event.
OnExpanding
Miscellaneous event.
OnFocusChanged
Navigation support event.
OnFocusChanging
Navigation support event.
OnFreeNode
Data management node.
OnGetCellIsEmpty
Triggered when the tree control needs to know whether a given column is empty.
OnGetCursor
Miscellaneous event.
OnGetHeaderCursor
Header and column support event.
OnGetHelpContext
Miscellaneous event.
OnGetImageIndex
Display management event.
OnGetImageIndexEx
Not documented.
OnGetImageText
Not documented.
OnGetLineStyle
Display management event.
OnGetNodeDataSize
Data management event.
OnGetPopupMenu
Miscellaneous event.
OnGetUserClipboardFormats
Drag'n drop and clipboard support event.
OnHeaderClick
Header & column support event.
OnHeaderDblClick
Header & column support event.
OnHeaderDragged
Header & column support event.
OnHeaderDraggedOut
Header & column support event.
OnHeaderDragging
Header & column support event.
OnHeaderDraw
Header & column support event.
OnHeaderDrawQueryElements
Header & column support event.
OnHeaderHeightDblClickResize
Not documented.
OnHeaderHeightTracking
Not documented.
OnHeaderMouseDown
Header & column support event.
OnHeaderMouseMove
Header & column support event.
OnHeaderMouseUp
Header & column support event.
OnHotChange
Navigation support event.
OnIncrementalSearch
Miscellaneous event.
OnInitChildren
Node management event.
OnInitNode
Node management event.
OnKeyAction
Miscellaneous event.
OnLoadNode
Streaming support event.
OnLoadTree
Not documented.
OnMeasureItem
Miscellaneous event.
OnNodeClick
Not documented.
OnNodeCopied
Miscellaneous event.
OnNodeCopying
Miscellaneous event.
OnNodeDblClick
Not documented.
OnNodeExport
Not documented.
OnNodeHeightDblClickResize
Not documented.
OnNodeHeightTracking
Not documented.
OnNodeMoved
Miscellaneous event.
OnNodeMoving
Miscellaneous event.
OnPaintBackground
Paint support event.
OnRemoveFromSelection
Not documented.
OnRenderOLEData
Drag'n drop and clipboard support event.
OnResetNode
Node management event.
OnSaveNode
Streaming support event.
OnSaveTree
Not documented.
OnScroll
Miscellaneous event.
OnShowScrollbar
Not documented.
OnStartOperation
Not documented.
OnStateChange
Miscellaneous event.
OnStructureChange
Miscellaneous event.
OnUpdating
Miscellaneous event.

TCustomVirtualDrawTree Class

OnDrawHint
Triggered when a node hint or tooltip must be drawn.
OnDrawNode
Triggered when a node must be drawn.
OnGetCellContentMargin
Not documented.
OnGetHintSize
Triggered when a node hint or tooltip is about to show.
OnGetNodeWidth
Triggered when a node is about to be drawn.

Topics

TBaseVirtualTree Methods
The methods of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Constructors
The constructors of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Destructors
The destructors of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Properties
The properties of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Events
The events of the TBaseVirtualTree class are listed here.

TCustomVirtualDrawTree Class

TCustomVirtualDrawTree Methods
The methods of the TCustomVirtualDrawTree class are listed here.
TCustomVirtualDrawTree Events
The events of the TCustomVirtualDrawTree class are listed here.

TBaseVirtualTree Constructors

Create
Constructor of the control

TBaseVirtualTree Destructors

Destroy
Destructor of the control.

TBaseVirtualTree Events

OnAddToSelection
Not documented.
OnAdvancedHeaderDraw
Header paint support event.
OnAfterAutoFitColumn
Not documented.
OnAfterAutoFitColumns
Not documented.
OnAfterCellPaint
Paint support event.
OnAfterColumnExport
Not documented.
OnAfterColumnWidthTracking
Not documented.
OnAfterGetMaxColumnWidth
Not documented.
OnAfterHeaderExport
Not documented.
OnAfterHeaderHeightTracking
Not documented.
OnAfterItemErase
Paint support event.
OnAfterItemPaint
Paint support event.
OnAfterNodeExport
Not documented.
OnAfterPaint
Paint support event.
OnAfterTreeExport
Not documented.
OnBeforeAutoFitColumn
Not documented.
OnBeforeAutoFitColumns
Not documented.
OnBeforeCellPaint
Paint support event.
OnBeforeColumnExport
Not documented.
OnBeforeColumnWidthTracking
Not documented.
OnBeforeDrawTreeLine
Not documented.
OnBeforeGetMaxColumnWidth
Not documented.
OnBeforeHeaderExport
Not documented.
OnBeforeHeaderHeightTracking
Not documented.
OnBeforeItemErase
Paint support event.
OnBeforeItemPaint
Paint support event.
OnBeforeNodeExport
Not documented.
OnBeforePaint
Paint support event.
OnBeforeTreeExport
Not documented.
OnCanSplitterResizeColumn
Not documented.
OnCanSplitterResizeHeader
Not documented.
OnCanSplitterResizeNode
Not documented.
OnChange
Navigation support event.
OnChecked
Check support event.
OnChecking
Check support event.
OnCollapsed
Miscellaneous event.
OnCollapsing
Miscellaneous event.
OnColumnClick
Header and column support event.
OnColumnDblClick
Header and column support event.
OnColumnExport
Not documented.
OnColumnResize
Header and column support routine.
OnColumnWidthDblClickResize
Not documented.
OnColumnWidthTracking
Not documented.
OnCompareNodes
Sort and search support event.
OnCreateDataObject
Drag'n drop support event.
OnCreateDragManager
Drag'n drop support event.
OnCreateEditor
Editing support event.
OnDragAllowed
Drag'n drop support event.
OnDragDrop
Drag'n drop support event.
OnDragOver
Drag'n drop support event.
OnEditCancelled
Editing support event.
OnEdited
Editing support event.
OnEditing
Editing support event.
OnEndOperation
Not documented.
OnExpanded
Misscellaneous event.
OnExpanding
Miscellaneous event.
OnFocusChanged
Navigation support event.
OnFocusChanging
Navigation support event.
OnFreeNode
Data management node.
OnGetCellIsEmpty
Triggered when the tree control needs to know whether a given column is empty.
OnGetCursor
Miscellaneous event.
OnGetHeaderCursor
Header and column support event.
OnGetHelpContext
Miscellaneous event.
OnGetImageIndex
Display management event.
OnGetImageIndexEx
Not documented.
OnGetImageText
Not documented.
OnGetLineStyle
Display management event.
OnGetNodeDataSize
Data management event.
OnGetPopupMenu
Miscellaneous event.
OnGetUserClipboardFormats
Drag'n drop and clipboard support event.
OnHeaderClick
Header & column support event.
OnHeaderDblClick
Header & column support event.
OnHeaderDragged
Header & column support event.
OnHeaderDraggedOut
Header & column support event.
OnHeaderDragging
Header & column support event.
OnHeaderDraw
Header & column support event.
OnHeaderDrawQueryElements
Header & column support event.
OnHeaderHeightDblClickResize
Not documented.
OnHeaderHeightTracking
Not documented.
OnHeaderMouseDown
Header & column support event.
OnHeaderMouseMove
Header & column support event.
OnHeaderMouseUp
Header & column support event.
OnHotChange
Navigation support event.
OnIncrementalSearch
Miscellaneous event.
OnInitChildren
Node management event.
OnInitNode
Node management event.
OnKeyAction
Miscellaneous event.
OnLoadNode
Streaming support event.
OnLoadTree
Not documented.
OnMeasureItem
Miscellaneous event.
OnNodeClick
Not documented.
OnNodeCopied
Miscellaneous event.
OnNodeCopying
Miscellaneous event.
OnNodeDblClick
Not documented.
OnNodeExport
Not documented.
OnNodeHeightDblClickResize
Not documented.
OnNodeHeightTracking
Not documented.
OnNodeMoved
Miscellaneous event.
OnNodeMoving
Miscellaneous event.
OnPaintBackground
Paint support event.
OnRemoveFromSelection
Not documented.
OnRenderOLEData
Drag'n drop and clipboard support event.
OnResetNode
Node management event.
OnSaveNode
Streaming support event.
OnSaveTree
Not documented.
OnScroll
Miscellaneous event.
OnShowScrollbar
Not documented.
OnStartOperation
Not documented.
OnStateChange
Miscellaneous event.
OnStructureChange
Miscellaneous event.
OnUpdating
Miscellaneous event.

TCustomVirtualDrawTree Class

OnDrawHint
Triggered when a node hint or tooltip must be drawn.
OnDrawNode
Triggered when a node must be drawn.
OnGetCellContentMargin
Not documented.
OnGetHintSize
Triggered when a node hint or tooltip is about to show.
OnGetNodeWidth
Triggered when a node is about to be drawn.

Legend

Method
public
virtual
protected
Constructor
Property
read only
Event

TBaseVirtualTree Methods

AbsoluteIndex
Reads the overall index of a node.
AddChild
Creates and adds a new child node to given node.
AddFromStream
Adds the content from the given stream to the given node.
AddToSelection
This is the overview for the AddToSelection method overload.
AdjustImageBorder
Depending on the width of the image list as well as the given bidi mode R must be adjusted.
AdjustPaintCellRect
Used in descentants to modify the clip rectangle of the current column while painting a certain node.
AdjustPanningCursor
Loads the proper cursor which indicates into which direction scrolling is done.
AdviseChangeEvent
Used to register a delayed change event.
AllocateInternalDataArea
Registration method to allocate tree internal data per node.
Animate
Support method for animated actions in the tree view.
Assign
Used to copy properties from another Virtual Treeview.
BeginDrag
Starts an OLE drag'n drop operation.
BeginSynch
Enters the tree into a special synchronized mode.
BeginUpdate
Locks the tree view to perform several update operations.
CalculateSelectionRect
Support method for draw selection.
CanAutoScroll
Determines whether the tree can currently auto scroll its window.
CancelCutOrCopy
Canceles any pending cut or copy clipboard operation.
CancelEditNode
Cancel the current edit operation, if there is any.
CancelOperation
Not documented.
CanEdit
Determines whether a node can be edited or not.
CanFocus
Support method to determine whether the tree window can receive the input focus.
CanShowDragImage
Determines whether a drag image should be shown.
CanSplitterResizeNode
Not documented.
Change
Central method called when a node's selection state changes.
ChangeScale
Helper method called by the VCL when control resizing is due.
CheckedNodes
Not documented.
CheckParentCheckState
Helper method for recursive check state changes.
ChildNodes
Not documented.
Clear
Clears the tree and removes all nodes.
ClearChecked
Not documented.
ClearSelection
Removes all nodes from the current selection.
ClearTempCache
Helper method to clear the internal temporary node cache.
ColumnIsEmpty
Used to determine if a cell is considered as being empty.
ComputeRTLOffset
Not documented.
CopyTo
This is the overview for the CopyTo method overload.
CopyToClipBoard
Copies all currently selected nodes to the clipboard.
CountLevelDifference
Determines the level difference of two nodes.
CountVisibleChildren
Determines the number of visible child nodes of the given node.
CreateParams
Prepares the creation of the controls window handle.
CreateWnd
Initializes data, which depends on the window handle.
CutCopyNodes
Not documented.
CutToClipBoard
Copies the currently selected nodes to the clipboard and removes them once a consumer has taken the data.
DefineProperties
Helper method to customize loading and saving persistent tree data.
DeleteChildren
Removes all child nodes from the given node.
DeleteNode
Removes the given node from the tree.
DeleteSelectedNodes
Removes all currently selected nodes form the tree.
DetermineDropMode
Not documented.
DetermineHiddenChildrenFlag
Determines whether all children of a given node are hidden.
DetermineHiddenChildrenFlagAllNodes
Determines whether all children of all nodes are hidden.
DetermineHitPositionLTR
Determines the hit position within a node with left-to-right and right-to-left orientation.
DetermineHitPositionRTL
Determines the hit position within a node with left-to-right and right-to-left orientation.
DetermineLineImageAndSelectLevel
Not documented.
DetermineNextCheckState
Not documented.
DetermineScrollDirections
Not documented.
DoAdvancedHeaderDraw
Not documented.
DoAfterCellPaint
Not documented.
DoAfterItemErase
Not documented.
DoAfterItemPaint
Not documented.
DoAfterPaint
Not documented.
DoAutoScroll
Enables or disables the auto scroll timer.
DoBeforeCellPaint
Not documented.
DoBeforeDrag
Not documented.
DoBeforeDrawLineImage
Not documented.
DoBeforeItemErase
Not documented.
DoBeforeItemPaint
Not documented.
DoBeforePaint
Not documented.
DoCancelEdit
Called when the tree should stop editing without accepting changed values.
DoCanEdit
Not documented.
DoCanSplitterResizeNode
Not documented.
DoChange
Not documented.
DoCheckClick
Not documented.
DoChecked
Not documented.
DoChecking
Not documented.
DoCollapsed
Not documented.
DoCollapsing
Not documented.
DoColumnClick
Not documented.
DoColumnDblClick
Not documented.
DoColumnResize
Not documented.
DoCompare
Not documented.
DoCreateDataObject
Not documented.
DoCreateDragManager
Not documented.
DoCreateEditor
Not documented.
DoDragDrop
Not documented.
DoDragExpand
Not documented.
DoDragging
Internal method which handles drag' drop.
DoDragOver
Not documented.
DoEdit
Initiates editing of the currently set focused column and edit node.
DoEndDrag
Not documented.
DoEndEdit
Stops the current edit operation and takes over the new content.
DoEndOperation
Not documented.
DoExpanded
Not documented.
DoExpanding
Not documented.
DoFocusChange
Not documented.
DoFocusChanging
Not documented.
DoFocusNode
Internal method to set the focused node.
DoFreeNode
Not documented.
DoGetAnimationType
Determines the type of animation to be used.
DoGetCellContentMargin
Not documented.
DoGetCursor
Not documented.
DoGetHeaderCursor
Not documented.
DoGetImageIndex
Not documented.
DoGetImageText
Not documented.
DoGetLineStyle
Not documented.
DoGetNodeHint
Not documented.
DoGetNodeTooltip
Not documented.
DoGetNodeWidth
Overridable method which always retuns 0.
DoGetPopupMenu
Overridable method which triggers the OnGetPopup event.
DoGetUserClipboardFormats
Not documented.
DoHeaderClick
Not documented.
DoHeaderDblClick
Not documented.
DoHeaderDragged
Not documented.
DoHeaderDraggedOut
Not documented.
DoHeaderDragging
Not documented.
DoHeaderDraw
Not documented.
DoHeaderDrawQueryElements
Not documented.
DoHeaderMouseDown
Not documented.
DoHeaderMouseMove
Not documented.
DoHeaderMouseUp
Not documented.
DoHotChange
Not documented.
DoIncrementalSearch
Not documented.
DoInitChildren
Not documented.
DoInitNode
Not documented.
DoKeyAction
Not documented.
DoLoadUserData
Not documented.
DoMeasureItem
Not documented.
DoNodeClick
Not documented.
DoNodeCopied
Not documented.
DoNodeCopying
Not documented.
DoNodeDblClick
Not documented.
DoNodeHeightDblClickResize
Not documented.
DoNodeHeightTracking
Not documented.
DoNodeMoved
Not documented.
DoNodeMoving
Not documented.
DoPaintBackground
Not documented.
DoPaintDropMark
Overridable method which draws the small line on top of a nodes image depending on the current drop state.
DoPaintNode
Overridable method which does nothing.
DoPopupMenu
Overridable method which shows the popup menu for the given node.
DoRenderOLEData
Not documented.
DoReset
Not documented.
DoSaveUserData
Not documented.
DoScroll
Overridable method which triggers the OnScroll event.
DoSetOffsetXY
Internal core routine to set the tree's scroll position.
DoShowScrollbar
Not documented.
DoStartDrag
Not documented.
DoStartOperation
Not documented.
DoStateChange
Not documented.
DoStructureChange
Not documented.
DoTimerScroll
Callback method which is triggered whenever the scroll timer fires.
DoUpdating
Not documented.
DoValidateCache
Not documented.
DragAndDrop
Not documented.
DragCanceled
Called by the VCL when a drag'n drop operation was canceled by the user.
DragDrop
Helper method, which is used when a drag operation is finished.
DragEnter
Not documented.
DragFinished
Called when a drag operation is finished (accepted or cancelled).
Dragging
Returns true if a drag'n drop operation is in progress.
DragLeave
Not documented.
DragOver
Not documented.
DrawDottedHLine
Not documented.
DrawDottedVLine
Not documented.
EditNode
Starts editing the given node if allowed to.
EndEditNode
Stops node editing if it was started before.
EndOperation
Not documented.
EndSynch
Counterpart to BeginSynch.
EndUpdate
Resets the update lock set by BeginUpdate.
ExecuteAction
Not documented.
FindNodeInSelection
Helper method to find the given node in the current selection.
FinishChunkHeader
Not documented.
FinishCutOrCopy
Stops any pending cut or copy clipboard operation.
FlushClipboard
Renders all pending clipboard data.
FontChanged
Not documented.
FullCollapse
Collapses all nodes in the tree.
FullExpand
Expands all nodes in the tree.
GetBorderDimensions
Not documented.
GetCheckImage
Not documented.
GetCheckImageListFor
Not documented.
GetColumnClass
Returns the class to be used to manage columns in the tree.
GetControlsAlignment
Not documented.
GetDisplayRect
Not documented.
GetEffectivelyFiltered
Not documented.
GetEffectivelyVisible
Not documented.
GetFirst
Group of node navigation functions.
GetFirstChecked
Not documented.
GetFirstChild
Group of node navigation functions.
GetFirstCutCopy
Group of node navigation functions.
GetFirstInitialized
Group of node navigation functions.
GetFirstLeaf
Not documented.
GetFirstLevel
Not documented.
GetFirstNoInit
Group of node navigation functions.
GetFirstSelected
Group of node navigation functions.
GetFirstVisible
Group of node navigation functions.
GetFirstVisibleChild
Not documented.
GetFirstVisibleChildNoInit
Not documented.
GetFirstVisibleNoInit
Group of node navigation functions.
GetHeaderClass
Returns the header class to be used by the tree.
GetHintWindowClass
Not documented.
GetHitTestInfoAt
Returns information about the node at the given position.
GetImageIndex
Not documented.
GetLast
Not documented.
GetLastChild
GetLastChildNoInit
GetLastInitialized
Not documented.
GetLastNoInit
Not documented.
GetLastVisible
Not documented.
GetLastVisibleChild
Not documented.
GetLastVisibleChildNoInit
Not documented.
GetLastVisibleNoInit
Not documented.
GetMaxColumnWidth
Not documented.
GetMaxRightExtend
Determines the maximum with of the currently visible part of the tree.
GetNativeClipboardFormats
Used to let descendants and the application add their own supported clipboard formats.
GetNext
Not documented.
GetNextChecked
This is the overview for the GetNextChecked method overload.
GetNextCutCopy
Not documented.
GetNextInitialized
Not documented.
GetNextLeaf
Not documented.
GetNextLevel
Not documented.
GetNextNoInit
Not documented.
GetNextSelected
Not documented.
GetNextSibling
GetNextVisible
Not documented.
GetNextVisibleNoInit
Not documented.
GetNextVisibleSibling
Not documented.
GetNextVisibleSiblingNoInit
Not documented.
GetNodeAt
This is the overview for the GetNodeAt method overload.
GetNodeData
Returns the address of the user data area of the given node.
GetNodeLevel
Returns the indentation level of the given node.
GetOperationCanceled
Not documented.
GetOptionsClass
Customization helper to determine which options class the tree should use.
GetPrevious
Not documented.
GetPreviousChecked
Not documented.
GetPreviousCutCopy
Not documented.
GetPreviousInitialized
Not documented.
GetPreviousLeaf
Not documented.
GetPreviousLevel
Not documented.
GetPreviousNoInit
Not documented.
GetPreviousSelected
Not documented.
GetPreviousSibling
GetPreviousVisible
Not documented.
GetPreviousVisibleNoInit
Not documented.
GetPreviousVisibleSibling
Not documented.
GetPreviousVisibleSiblingNoInit
Not documented.
GetSortedCutCopySet
Returns a sorted list of nodes, which are marked for s cut or copy clipboard operation.
GetSortedSelection
Returns a sorted list of all currently selected nodes.
GetTextInfo
Not documented.
GetTreeFromDataObject
OLE drag'n drop and clipboard support method.
GetTreeRect
Returns the size of the virtual tree image.
GetVisibleParent
Not documented.
HandleHotTrack
Not documented.
HandleIncrementalSearch
Not documented.
HandleMouseDblClick
Not documented.
HandleMouseDown
Not documented.
HandleMouseUp
Not documented.
HasAsParent
Determines if the given node has got another node as one of its parents.
HasImage
Not documented.
HasPopupMenu
Determines whether there is a pop up menu assigned to the tree.
InitChildren
Not documented.
InitializedNodes
Not documented.
InitNode
Not documented.
InsertNode
Inserts a new node and returns it to the caller.
InternalAddFromStream
Not documented.
InternalAddToSelection
This is the overview for the InternalAddToSelection method overload.
InternalCacheNode
Not documented.
InternalClearSelection
Not documented.
InternalConnectNode
Not documented.
InternalData
Returns the address of the internal data for a tree class.
InternalDisconnectNode
Not documented.
InternalRemoveFromSelection
Not documented.
InvalidateCache
Empties the internal node cache and marks it as invalid.
InvalidateChildren
Invalidates all children of the given node.
InvalidateColumn
Invalidates the client area part of a column.
InvalidateNode
Invalidates the given node.
InvalidateToBottom
Invalidates the client area starting with the top position of the given node.
InvertSelection
Inverts the current selection.
IsEditing
Tells the caller whether the tree is currently in edit mode.
IsMouseSelecting
Tell the caller whether the tree is currently in draw selection mode.
IterateSubtree
Iterator method to go through all nodes of a given sub tree.
LeafNodes
Not documented.
LevelNodes
Not documented.
Loaded
Not documented.
LoadFromFile
Loads previously streamed out tree data back in again.
LoadFromStream
Loads previously streamed out tree data back in again.
MainColumnChanged
Not documented.
MarkCutCopyNodes
Not documented.
MeasureItemHeight
Not documented.
MouseMove
Not documented.
MoveTo
This is the overview for the MoveTo method overload.
Nodes
Not documented.
NoInitNodes
Not documented.
Notification
Not documented.
OriginalWMNCPaint
Not documented.
Paint
TControl's Paint method used here to display the tree.
PaintCheckImage
Not documented.
PaintImage
Not documented.
PaintNodeButton
Not documented.
PaintSelectionRectangle
Not documented.
PaintTree
Main paint routine for the tree image.
PaintTreeLines
Not documented.
PanningWindowProc
Not documented.
PasteFromClipboard
Inserts the content of the clipboard into the tree.
PrepareCell
This method is called immediately before a cell's content is drawn und is responsible to paint selection colors etc.
PrepareDragImage
Not documented.
Print
Not documented.
ProcessDrop
Helper method to ease OLE drag'n drop operations.
ProcessOLEData
Takes serialized OLE tree data and reconstructs the former structure.
ReadChunk
Not documented.
ReadNode
Not documented.
RedirectFontChangeEvent
Not documented.
ReinitChildren
Forces all child nodes of Node to be reinitialized.
ReinitNode
Forces a reinitialization of the given node.
RemoveFromSelection
Removes the given node from the current selection.
RenderOLEData
Renders pending OLE data.
RepaintNode
Causes the treeview to repaint the given node.
ResetNode
Resets the given node to uninitialized.
ResetRangeAnchor
Not documented.
RestoreFontChangeEvent
Not documented.
SaveToFile
Saves the entire content of the tree into a file or stream.
SaveToStream
Saves the entire content of the tree into a file or stream.
ScrollIntoView
This is the overview for the ScrollIntoView method overload.
SelectAll
Selects all nodes in the tree.
SelectedNodes
Not documented.
SelectNodes
Selects a range of nodes.
SetFocusedNodeAndColumn
Not documented.
SkipNode
Not documented.
Sort
Sorts the given node.
SortTree
Sorts the entire tree view.
StartOperation
Not documented.
StartWheelPanning
Not documented.
StopWheelPanning
Not documented.
StructureChange
Not documented.
SuggestDropEffect
Not documented.
ToggleNode
Changes a node's expand state to the opposite state.
ToggleSelection
Toggles the selection state of a range of nodes.
UnselectNodes
Deselects a range of nodes.
UpdateAction
Not documented.
UpdateColumnCheckState
Not documented.
UpdateDesigner
Not documented.
UpdateEditBounds
Not documented.
UpdateHeaderRect
Not documented.
UpdateHorizontalRange
Not documented.
UpdateHorizontalScrollBar
Applies changes to the horizontal and vertical scrollbars.
UpdateRanges
Not documented.
UpdateScrollBars
Applies changes to the horizontal and vertical scrollbars.
UpdateVerticalRange
Not documented.
UpdateVerticalScrollBar
Applies changes to the horizontal and vertical scrollbars.
UpdateWindowAndDragImage
Not documented.
UseRightToLeftReading
Helper method for right-to-left layout.
ValidateCache
Initiates the validation of the internal node cache.
ValidateChildren
Validates all children of a given node.
ValidateNode
Validates a given node.
ValidateNodeDataSize
Helper method for node data size initalization.
VisibleChildNodes
Not documented.
VisibleChildNoInitNodes
Not documented.
VisibleNodes
Not documented.
VisibleNoInitNodes
Not documented.
WndProc
Redirected window procedure to do some special processing.
WriteChunks
Writes the core chunks for the given node to the given stream.
WriteNode
Writes the cover (envelop) chunk for the given node to the given stream.

TCustomVirtualDrawTree Class

DoDrawHint
Overridable method which triggers OnDrawHint.
DoGetCellContentMargin
Not documented.
DoGetHintSize
Overridable method which triggers OnGetHintSize.
DoGetNodeWidth
Overridable method which triggers OnGetNodeWidth.
DoPaintNode
Overridable method which triggers OnPaintNode.

TBaseVirtualTree Properties

Accessible
Not documented.
AccessibleItem
Not documented.
AccessibleName
Not documented.
Alignment
Determines the horizontal alignment of text if no columns are defined.
AnimationDuration
Determines the maximum duration the tree can use to play an animation.
AutoExpandDelay
Time delay after which a node gets expanded if it is the current drop target.
AutoScrollDelay
Time which determines when auto scrolling should start.
AutoScrollInterval
Time interval between scroll events when doing auto scroll.
Background
Holds a background image for the tree.
BackgroundOffsetX
Horizontal offset of the background image.
BackgroundOffsetY
Vertical offset of the background image.
BorderStyle
Same as TForm.BorderStyle.
BottomNode
Not documented.
BottomSpace
Not documented.
ButtonFillMode
Determines how to fill the background of the node buttons.
ButtonStyle
Determines the look of node buttons.
ChangeDelay
Time which determines when the OnChange event should be triggered after the actual change event.
CheckedCount
Not documented.
CheckImageKind
Determines which images should be used for checkboxes and radio buttons.
CheckImages
Not documented.
CheckState
Read or set the check state of a node.
CheckType
Read or set the check type of a node.
ChildCount
Read or set the number of child nodes of a node.
ChildrenInitialized
Read whether a node's child count has been initialized already.
ClipboardFormats
Special class to keep a list of clipboard format descriptions.
Colors
A collection of colors used in the tree.
CustomCheckImages
Assign your own image list to get the check images you like most.
CutCopyCount
Not documented.
DefaultNodeHeight
Read or set the height new nodes get as initial value.
DefaultPasteMode
Read or set the value, which determines where to add pasted nodes to.
DragHeight
Read or set the vertical limit of the internal drag image.
DragImage
Holds the instance of the internal drag image.
DragImageKind
Read or set what should be shown in the drag image.
DragManager
Holds the reference to the internal drag manager.
DragOperations
Read or set which drag operations may be allowed in the tree.
DragSelection
Keeps a temporary list of nodes during drag'n drop.
DragType
Read or set which subsystem should be used for dragging.
DragWidth
Read or set the horizontal limit of the internal drag image.
DrawSelectionMode
Read or set how multiselection with the mouse is to be visualized.
DropTargetNode
Contains the current drop target node if the tree is currently the target of a drag'n drop operation.
EditColumn
Not documented.
EditDelay
Read or set the maximum time between two single clicks on the same node, which should start node editing.
EditLink
Keeps a reference to the internal edit link during a node edit operation.
EffectiveOffsetX
Not documented.
EmptyListMessage
Not documented.
Expanded
Read or set the expanded state of a particular node.
FocusedColumn
Read or set the currently focused collumn.
FocusedNode
Read or set the currently focused node.
Font
Same as TWinControl.Font.
FullyVisible
Read or set whether a node is fully visible or not.
HasChildren
Read or set whether a node has got children.
Header
Provides access to the header instance.
HeaderRect
Returns the non-client-area rectangle used for the header.
HintAnimation
Read or set the current hint animation type.
HintData
Not documented.
HintMode
Read or set what type of hint you want for the tree view.
HotCursor
Read or set which cursor should be used for hot nodes.
HotMinusBM
Not documented.
HotNode
Read, which node is currently the hot node.
HotPlusBM
Not documented.
Images
Read or set the tree's normal image list.
IncrementalSearch
Read or set the current incremental search mode.
IncrementalSearchDirection
Read or set the direction to be used for incremental search.
IncrementalSearchStart
Read or set where to start incremental search.
IncrementalSearchTimeout
Read or set the maximum time, which is allowed between two consecutive key strokes so that incremental search stays active.
Indent
Read or set the indentation amount for node levels.
IsDisabled
Read or set the enabled state of the given node.
IsEffectivelyFiltered
Not documented.
IsEffectivelyVisible
Not documented.
IsFiltered
Not documented.
IsVisible
Read or set the visibility state of the given node.
LastClickPos
Used for retained drag start and wheel mouse scrolling.
LastDropMode
Read how the last drop operation finished.
LastHintRect
Not documented.
LineMode
Read or set the mode of the tree lines.
LineStyle
Read or set the mode of the tree lines.
Margin
Read or set the tree's node margin.
MinusBM
Not documented.
MultiLine
Read or toggle the multiline feature for a given node.
NodeAlignment
Read or set the node alignment value.
NodeDataSize
Read or set the extra data size for each node.
NodeHeight
Read or set a node's height.
NodeParent
Read or set a node's parent node.
OffsetX
Read or set the tree's current horizontal and vertical scroll offsets.
OffsetXY
Read or set the tree's current horizontal and vertical scroll offsets.
OffsetY
Read or set the tree's current horizontal and vertical scroll offsets.
OperationCanceled
Not documented.
OperationCount
Not documented.
PlusBM
Not documented.
RangeX
Not documented.
RangeY
Not documented.
RootNode
Reference to the internal root node which is the anchor of the entire tree node hierarchy.
RootNodeCount
Read or set the number of nodes on the top level.
ScrollBarOptions
Reference to the scroll bar options class.
SearchBuffer
Current input string for incremental search.
Selected
Property to modify or determine the selection state of a node.
SelectedCount
Contains the number of selected nodes.
SelectionBlendFactor
Read or set the current blend factor for the multi selection rectangle and the node selection rectangle.
SelectionCurveRadius
Read or set the current corner radius for node selection rectangles.
SelectionLocked
Not documented.
StateImages
Reference to the images list which is used for the state images.
TextMargin
Read or set the distance of the node caption to its borders.
TopNode
The top node is the node which is currently at the top border of the client area.
TotalCount
Returns the number of nodes in the tree.
TotalInternalDataSize
Keeps the currently accumulated data size for one node.
TreeOptions
Reference to the tree's options.
TreeStates
Property which keeps a set of flags which indicate current operation and states of the tree.
UpdateCount
Not documented.
VerticalAlignment
Used to set a node's vertical button aligment with regard to the entire node rectangle.
VisibleCount
Number of currently visible nodes.
VisiblePath
Property to set or determine a node parent's expand states.
WantTabs
Read or set whether the tree wants to process tabs on its own.

Class Hierarchy
  TCustomVirtualDrawTreeTCustomVirtualDrawTree
File

VirtualTrees

Links
Classes, Topics, TCustomVirtualDrawTree Methods, TCustomVirtualDrawTree Events, TBaseVirtualTree Constructors, TBaseVirtualTree Destructors, TBaseVirtualTree Events, Legend, TBaseVirtualTree Methods, TBaseVirtualTree Properties


TCustomVirtualDrawTree Methods
TCustomVirtualDrawTree Class | Methods | Legend | Send Feedback

The methods of the TCustomVirtualDrawTree class are listed here.

Class

TCustomVirtualDrawTree Class

Legend

Method
protected
virtual

Links
TCustomVirtualDrawTree Class, Methods, Legend


TCustomVirtualDrawTree.DoDrawHint Method
TCustomVirtualDrawTree Methods | TCustomVirtualDrawTree Class | Send Feedback

Overridable method which triggers OnDrawHint.

Pascal
procedure DoDrawHint(Canvas: TCanvas; Node: PVirtualNode; R: TRect; Column: TColumnIndex);
Description

You can override DoDrawHint to customize the behavior for this request.

Group

TCustomVirtualDrawTree Methods

Links
TCustomVirtualDrawTree Methods, TCustomVirtualDrawTree Class


TCustomVirtualDrawTree.DoGetCellContentMargin Method
TCustomVirtualDrawTree Methods | TCustomVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
function DoGetCellContentMargin(Node: PVirtualNode; Column: TColumnIndex; CellContentMarginType: TVTCellContentMarginType = ccmtAllSides; Canvas: TCanvas = nil): TPoint; override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TCustomVirtualDrawTree Methods

Links
TCustomVirtualDrawTree Methods, TCustomVirtualDrawTree Class


TCustomVirtualDrawTree.DoGetHintSize Method
TCustomVirtualDrawTree Methods | TCustomVirtualDrawTree Class | Send Feedback

Overridable method which triggers OnGetHintSize.

Pascal
procedure DoGetHintSize(Node: PVirtualNode; Column: TColumnIndex; var R: TRect); virtual;
Description

You can override OnGetHintSize to customize the behavior for this request.

Group

TCustomVirtualDrawTree Methods

Links
TCustomVirtualDrawTree Methods, TCustomVirtualDrawTree Class


TCustomVirtualDrawTree.DoGetNodeWidth Method
TCustomVirtualDrawTree Methods | TCustomVirtualDrawTree Class | Send Feedback

Overridable method which triggers OnGetNodeWidth.

Pascal
function DoGetNodeWidth(Node: PVirtualNode; Column: TColumnIndex; Canvas: TCanvas = nil): Integer; override;
Description

You can override OnGetNodeWidth to customize the behavior for this request.

Group

TCustomVirtualDrawTree Methods

Links
TCustomVirtualDrawTree Methods, TCustomVirtualDrawTree Class


TCustomVirtualDrawTree.DoPaintNode Method
TCustomVirtualDrawTree Methods | TCustomVirtualDrawTree Class | Send Feedback

Overridable method which triggers OnPaintNode.

Pascal
procedure DoPaintNode(var PaintInfo: TVTPaintInfo); override;
Description

You can override OnPaintNode to customize the behavior for this request.

Group

TCustomVirtualDrawTree Methods

Links
TCustomVirtualDrawTree Methods, TCustomVirtualDrawTree Class


TCustomVirtualDrawTree Events
Events | TCustomVirtualDrawTree Class | Legend | Send Feedback

The events of the TCustomVirtualDrawTree class are listed here.

Class

TCustomVirtualDrawTree Class

Legend

Event
protected

Links
Events, TCustomVirtualDrawTree Class, Legend


TCustomVirtualDrawTree.OnDrawHint Event
TCustomVirtualDrawTree Events | TCustomVirtualDrawTree Class | Send Feedback

Triggered when a node hint or tooltip must be drawn.

Pascal
property OnDrawHint: TVTDrawHintEvent;
Description

Use an event handler for OnDrawHint to draw the hint or tooltip for the given node. You must implement this event and OnGetHintSize to get a hint at all.

Group

TCustomVirtualDrawTree Events

Links
TCustomVirtualDrawTree Events, TCustomVirtualDrawTree Class


TCustomVirtualDrawTree.OnDrawNode Event
TCustomVirtualDrawTree Events | TCustomVirtualDrawTree Class | Send Feedback

Triggered when a node must be drawn.

Pascal
property OnDrawNode: TVTDrawNodeEvent;
Description

Use an event handler for OnDrawNode to draw the actual content for the given node.

Group

TCustomVirtualDrawTree Events

Links
TCustomVirtualDrawTree Events, TCustomVirtualDrawTree Class


TCustomVirtualDrawTree.OnGetCellContentMargin Event
TCustomVirtualDrawTree Events | TCustomVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnGetCellContentMargin: TVTGetCellContentMarginEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TCustomVirtualDrawTree Events

Links
TCustomVirtualDrawTree Events, TCustomVirtualDrawTree Class


TCustomVirtualDrawTree.OnGetHintSize Event
TCustomVirtualDrawTree Events | TCustomVirtualDrawTree Class | Send Feedback

Triggered when a node hint or tooltip is about to show.

Pascal
property OnGetHintSize: TVTGetHintSizeEvent;
Description

Use an event handler for OnGetHintSize to return the size of the tooltip/hint window for the given node. You must implement this event and OnDrawHint to get a hint at all.

Group

TCustomVirtualDrawTree Events

Links
TCustomVirtualDrawTree Events, TCustomVirtualDrawTree Class


TCustomVirtualDrawTree.OnGetNodeWidth Event
TCustomVirtualDrawTree Events | TCustomVirtualDrawTree Class | Send Feedback

Triggered when a node is about to be drawn.

Pascal
property OnGetNodeWidth: TVTGetNodeWidthEvent;
Description

Use an event handler for OnGetNodeWidth to return your calculated width for the given node. Since the draw does not know the width of a node you have to tell it yourself.

Group

TCustomVirtualDrawTree Events

Links
TCustomVirtualDrawTree Events, TCustomVirtualDrawTree Class


TCustomVirtualStringTree Class
Classes | Topics | TCustomVirtualStringTree Methods | TCustomVirtualStringTree Constructors | TCustomVirtualStringTree Properties | TCustomVirtualStringTree Events | TBaseVirtualTree Constructors | TBaseVirtualTree Destructors | TBaseVirtualTree Events | Legend | TBaseVirtualTree Methods | TBaseVirtualTree Properties | Send Feedback

Descendant of TBaseVirtualTree, which is able to manage node captions on its own

Pascal
TCustomVirtualStringTree = class(TBaseVirtualTree);
Description

TCustomVirtualStringTree enhances the base tree to display and edit node captions. It implements a generic node editor which can be used as reference to build your own one.

Group

Classes

Members
TBaseVirtualTree Methods

AbsoluteIndex
Reads the overall index of a node.
AddChild
Creates and adds a new child node to given node.
AddFromStream
Adds the content from the given stream to the given node.
AddToSelection
This is the overview for the AddToSelection method overload.
AdjustImageBorder
Depending on the width of the image list as well as the given bidi mode R must be adjusted.
AdjustPaintCellRect
Used in descentants to modify the clip rectangle of the current column while painting a certain node.
AdjustPanningCursor
Loads the proper cursor which indicates into which direction scrolling is done.
AdviseChangeEvent
Used to register a delayed change event.
AllocateInternalDataArea
Registration method to allocate tree internal data per node.
Animate
Support method for animated actions in the tree view.
Assign
Used to copy properties from another Virtual Treeview.
BeginDrag
Starts an OLE drag'n drop operation.
BeginSynch
Enters the tree into a special synchronized mode.
BeginUpdate
Locks the tree view to perform several update operations.
CalculateSelectionRect
Support method for draw selection.
CanAutoScroll
Determines whether the tree can currently auto scroll its window.
CancelCutOrCopy
Canceles any pending cut or copy clipboard operation.
CancelEditNode
Cancel the current edit operation, if there is any.
CancelOperation
Not documented.
CanEdit
Determines whether a node can be edited or not.
CanFocus
Support method to determine whether the tree window can receive the input focus.
CanShowDragImage
Determines whether a drag image should be shown.
CanSplitterResizeNode
Not documented.
Change
Central method called when a node's selection state changes.
ChangeScale
Helper method called by the VCL when control resizing is due.
CheckedNodes
Not documented.
CheckParentCheckState
Helper method for recursive check state changes.
ChildNodes
Not documented.
Clear
Clears the tree and removes all nodes.
ClearChecked
Not documented.
ClearSelection
Removes all nodes from the current selection.
ClearTempCache
Helper method to clear the internal temporary node cache.
ColumnIsEmpty
Used to determine if a cell is considered as being empty.
ComputeRTLOffset
Not documented.
CopyTo
This is the overview for the CopyTo method overload.
CopyToClipBoard
Copies all currently selected nodes to the clipboard.
CountLevelDifference
Determines the level difference of two nodes.
CountVisibleChildren
Determines the number of visible child nodes of the given node.
CreateParams
Prepares the creation of the controls window handle.
CreateWnd
Initializes data, which depends on the window handle.
CutCopyNodes
Not documented.
CutToClipBoard
Copies the currently selected nodes to the clipboard and removes them once a consumer has taken the data.
DefineProperties
Helper method to customize loading and saving persistent tree data.
DeleteChildren
Removes all child nodes from the given node.
DeleteNode
Removes the given node from the tree.
DeleteSelectedNodes
Removes all currently selected nodes form the tree.
DetermineDropMode
Not documented.
DetermineHiddenChildrenFlag
Determines whether all children of a given node are hidden.
DetermineHiddenChildrenFlagAllNodes
Determines whether all children of all nodes are hidden.
DetermineHitPositionLTR
Determines the hit position within a node with left-to-right and right-to-left orientation.
DetermineHitPositionRTL
Determines the hit position within a node with left-to-right and right-to-left orientation.
DetermineLineImageAndSelectLevel
Not documented.
DetermineNextCheckState
Not documented.
DetermineScrollDirections
Not documented.
DoAdvancedHeaderDraw
Not documented.
DoAfterCellPaint
Not documented.
DoAfterItemErase
Not documented.
DoAfterItemPaint
Not documented.
DoAfterPaint
Not documented.
DoAutoScroll
Enables or disables the auto scroll timer.
DoBeforeCellPaint
Not documented.
DoBeforeDrag
Not documented.
DoBeforeDrawLineImage
Not documented.
DoBeforeItemErase
Not documented.
DoBeforeItemPaint
Not documented.
DoBeforePaint
Not documented.
DoCancelEdit
Called when the tree should stop editing without accepting changed values.
DoCanEdit
Not documented.
DoCanSplitterResizeNode
Not documented.
DoChange
Not documented.
DoCheckClick
Not documented.
DoChecked
Not documented.
DoChecking
Not documented.
DoCollapsed
Not documented.
DoCollapsing
Not documented.
DoColumnClick
Not documented.
DoColumnDblClick
Not documented.
DoColumnResize
Not documented.
DoCompare
Not documented.
DoCreateDataObject
Not documented.
DoCreateDragManager
Not documented.
DoCreateEditor
Not documented.
DoDragDrop
Not documented.
DoDragExpand
Not documented.
DoDragging
Internal method which handles drag' drop.
DoDragOver
Not documented.
DoEdit
Initiates editing of the currently set focused column and edit node.
DoEndDrag
Not documented.
DoEndEdit
Stops the current edit operation and takes over the new content.
DoEndOperation
Not documented.
DoExpanded
Not documented.
DoExpanding
Not documented.
DoFocusChange
Not documented.
DoFocusChanging
Not documented.
DoFocusNode
Internal method to set the focused node.
DoFreeNode
Not documented.
DoGetAnimationType
Determines the type of animation to be used.
DoGetCellContentMargin
Not documented.
DoGetCursor
Not documented.
DoGetHeaderCursor
Not documented.
DoGetImageIndex
Not documented.
DoGetImageText
Not documented.
DoGetLineStyle
Not documented.
DoGetNodeHint
Not documented.
DoGetNodeTooltip
Not documented.
DoGetNodeWidth
Overridable method which always retuns 0.
DoGetPopupMenu
Overridable method which triggers the OnGetPopup event.
DoGetUserClipboardFormats
Not documented.
DoHeaderClick
Not documented.
DoHeaderDblClick
Not documented.
DoHeaderDragged
Not documented.
DoHeaderDraggedOut
Not documented.
DoHeaderDragging
Not documented.
DoHeaderDraw
Not documented.
DoHeaderDrawQueryElements
Not documented.
DoHeaderMouseDown
Not documented.
DoHeaderMouseMove
Not documented.
DoHeaderMouseUp
Not documented.
DoHotChange
Not documented.
DoIncrementalSearch
Not documented.
DoInitChildren
Not documented.
DoInitNode
Not documented.
DoKeyAction
Not documented.
DoLoadUserData
Not documented.
DoMeasureItem
Not documented.
DoNodeClick
Not documented.
DoNodeCopied
Not documented.
DoNodeCopying
Not documented.
DoNodeDblClick
Not documented.
DoNodeHeightDblClickResize
Not documented.
DoNodeHeightTracking
Not documented.
DoNodeMoved
Not documented.
DoNodeMoving
Not documented.
DoPaintBackground
Not documented.
DoPaintDropMark
Overridable method which draws the small line on top of a nodes image depending on the current drop state.
DoPaintNode
Overridable method which does nothing.
DoPopupMenu
Overridable method which shows the popup menu for the given node.
DoRenderOLEData
Not documented.
DoReset
Not documented.
DoSaveUserData
Not documented.
DoScroll
Overridable method which triggers the OnScroll event.
DoSetOffsetXY
Internal core routine to set the tree's scroll position.
DoShowScrollbar
Not documented.
DoStartDrag
Not documented.
DoStartOperation
Not documented.
DoStateChange
Not documented.
DoStructureChange
Not documented.
DoTimerScroll
Callback method which is triggered whenever the scroll timer fires.
DoUpdating
Not documented.
DoValidateCache
Not documented.
DragAndDrop
Not documented.
DragCanceled
Called by the VCL when a drag'n drop operation was canceled by the user.
DragDrop
Helper method, which is used when a drag operation is finished.
DragEnter
Not documented.
DragFinished
Called when a drag operation is finished (accepted or cancelled).
Dragging
Returns true if a drag'n drop operation is in progress.
DragLeave
Not documented.
DragOver
Not documented.
DrawDottedHLine
Not documented.
DrawDottedVLine
Not documented.
EditNode
Starts editing the given node if allowed to.
EndEditNode
Stops node editing if it was started before.
EndOperation
Not documented.
EndSynch
Counterpart to BeginSynch.
EndUpdate
Resets the update lock set by BeginUpdate.
ExecuteAction
Not documented.
FindNodeInSelection
Helper method to find the given node in the current selection.
FinishChunkHeader
Not documented.
FinishCutOrCopy
Stops any pending cut or copy clipboard operation.
FlushClipboard
Renders all pending clipboard data.
FontChanged
Not documented.
FullCollapse
Collapses all nodes in the tree.
FullExpand
Expands all nodes in the tree.
GetBorderDimensions
Not documented.
GetCheckImage
Not documented.
GetCheckImageListFor
Not documented.
GetColumnClass
Returns the class to be used to manage columns in the tree.
GetControlsAlignment
Not documented.
GetDisplayRect
Not documented.
GetEffectivelyFiltered
Not documented.
GetEffectivelyVisible
Not documented.
GetFirst
Group of node navigation functions.
GetFirstChecked
Not documented.
GetFirstChild
Group of node navigation functions.
GetFirstCutCopy
Group of node navigation functions.
GetFirstInitialized
Group of node navigation functions.
GetFirstLeaf
Not documented.
GetFirstLevel
Not documented.
GetFirstNoInit
Group of node navigation functions.
GetFirstSelected
Group of node navigation functions.
GetFirstVisible
Group of node navigation functions.
GetFirstVisibleChild
Not documented.
GetFirstVisibleChildNoInit
Not documented.
GetFirstVisibleNoInit
Group of node navigation functions.
GetHeaderClass
Returns the header class to be used by the tree.
GetHintWindowClass
Not documented.
GetHitTestInfoAt
Returns information about the node at the given position.
GetImageIndex
Not documented.
GetLast
Not documented.
GetLastChild
GetLastChildNoInit
GetLastInitialized
Not documented.
GetLastNoInit
Not documented.
GetLastVisible
Not documented.
GetLastVisibleChild
Not documented.
GetLastVisibleChildNoInit
Not documented.
GetLastVisibleNoInit
Not documented.
GetMaxColumnWidth
Not documented.
GetMaxRightExtend
Determines the maximum with of the currently visible part of the tree.
GetNativeClipboardFormats
Used to let descendants and the application add their own supported clipboard formats.
GetNext
Not documented.
GetNextChecked
This is the overview for the GetNextChecked method overload.
GetNextCutCopy
Not documented.
GetNextInitialized
Not documented.
GetNextLeaf
Not documented.
GetNextLevel
Not documented.
GetNextNoInit
Not documented.
GetNextSelected
Not documented.
GetNextSibling
GetNextVisible
Not documented.
GetNextVisibleNoInit
Not documented.
GetNextVisibleSibling
Not documented.
GetNextVisibleSiblingNoInit
Not documented.
GetNodeAt
This is the overview for the GetNodeAt method overload.
GetNodeData
Returns the address of the user data area of the given node.
GetNodeLevel
Returns the indentation level of the given node.
GetOperationCanceled
Not documented.
GetOptionsClass
Customization helper to determine which options class the tree should use.
GetPrevious
Not documented.
GetPreviousChecked
Not documented.
GetPreviousCutCopy
Not documented.
GetPreviousInitialized
Not documented.
GetPreviousLeaf
Not documented.
GetPreviousLevel
Not documented.
GetPreviousNoInit
Not documented.
GetPreviousSelected
Not documented.
GetPreviousSibling
GetPreviousVisible
Not documented.
GetPreviousVisibleNoInit
Not documented.
GetPreviousVisibleSibling
Not documented.
GetPreviousVisibleSiblingNoInit
Not documented.
GetSortedCutCopySet
Returns a sorted list of nodes, which are marked for s cut or copy clipboard operation.
GetSortedSelection
Returns a sorted list of all currently selected nodes.
GetTextInfo
Not documented.
GetTreeFromDataObject
OLE drag'n drop and clipboard support method.
GetTreeRect
Returns the size of the virtual tree image.
GetVisibleParent
Not documented.
HandleHotTrack
Not documented.
HandleIncrementalSearch
Not documented.
HandleMouseDblClick
Not documented.
HandleMouseDown
Not documented.
HandleMouseUp
Not documented.
HasAsParent
Determines if the given node has got another node as one of its parents.
HasImage
Not documented.
HasPopupMenu
Determines whether there is a pop up menu assigned to the tree.
InitChildren
Not documented.
InitializedNodes
Not documented.
InitNode
Not documented.
InsertNode
Inserts a new node and returns it to the caller.
InternalAddFromStream
Not documented.
InternalAddToSelection
This is the overview for the InternalAddToSelection method overload.
InternalCacheNode
Not documented.
InternalClearSelection
Not documented.
InternalConnectNode
Not documented.
InternalData
Returns the address of the internal data for a tree class.
InternalDisconnectNode
Not documented.
InternalRemoveFromSelection
Not documented.
InvalidateCache
Empties the internal node cache and marks it as invalid.
InvalidateChildren
Invalidates all children of the given node.
InvalidateColumn
Invalidates the client area part of a column.
InvalidateNode
Invalidates the given node.
InvalidateToBottom
Invalidates the client area starting with the top position of the given node.
InvertSelection
Inverts the current selection.
IsEditing
Tells the caller whether the tree is currently in edit mode.
IsMouseSelecting
Tell the caller whether the tree is currently in draw selection mode.
IterateSubtree
Iterator method to go through all nodes of a given sub tree.
LeafNodes
Not documented.
LevelNodes
Not documented.
Loaded
Not documented.
LoadFromFile
Loads previously streamed out tree data back in again.
LoadFromStream
Loads previously streamed out tree data back in again.
MainColumnChanged
Not documented.
MarkCutCopyNodes
Not documented.
MeasureItemHeight
Not documented.
MouseMove
Not documented.
MoveTo
This is the overview for the MoveTo method overload.
Nodes
Not documented.
NoInitNodes
Not documented.
Notification
Not documented.
OriginalWMNCPaint
Not documented.
Paint
TControl's Paint method used here to display the tree.
PaintCheckImage
Not documented.
PaintImage
Not documented.
PaintNodeButton
Not documented.
PaintSelectionRectangle
Not documented.
PaintTree
Main paint routine for the tree image.
PaintTreeLines
Not documented.
PanningWindowProc
Not documented.
PasteFromClipboard
Inserts the content of the clipboard into the tree.
PrepareCell
This method is called immediately before a cell's content is drawn und is responsible to paint selection colors etc.
PrepareDragImage
Not documented.
Print
Not documented.
ProcessDrop
Helper method to ease OLE drag'n drop operations.
ProcessOLEData
Takes serialized OLE tree data and reconstructs the former structure.
ReadChunk
Not documented.
ReadNode
Not documented.
RedirectFontChangeEvent
Not documented.
ReinitChildren
Forces all child nodes of Node to be reinitialized.
ReinitNode
Forces a reinitialization of the given node.
RemoveFromSelection
Removes the given node from the current selection.
RenderOLEData
Renders pending OLE data.
RepaintNode
Causes the treeview to repaint the given node.
ResetNode
Resets the given node to uninitialized.
ResetRangeAnchor
Not documented.
RestoreFontChangeEvent
Not documented.
SaveToFile
Saves the entire content of the tree into a file or stream.
SaveToStream
Saves the entire content of the tree into a file or stream.
ScrollIntoView
This is the overview for the ScrollIntoView method overload.
SelectAll
Selects all nodes in the tree.
SelectedNodes
Not documented.
SelectNodes
Selects a range of nodes.
SetFocusedNodeAndColumn
Not documented.
SkipNode
Not documented.
Sort
Sorts the given node.
SortTree
Sorts the entire tree view.
StartOperation
Not documented.
StartWheelPanning
Not documented.
StopWheelPanning
Not documented.
StructureChange
Not documented.
SuggestDropEffect
Not documented.
ToggleNode
Changes a node's expand state to the opposite state.
ToggleSelection
Toggles the selection state of a range of nodes.
UnselectNodes
Deselects a range of nodes.
UpdateAction
Not documented.
UpdateColumnCheckState
Not documented.
UpdateDesigner
Not documented.
UpdateEditBounds
Not documented.
UpdateHeaderRect
Not documented.
UpdateHorizontalRange
Not documented.
UpdateHorizontalScrollBar
Applies changes to the horizontal and vertical scrollbars.
UpdateRanges
Not documented.
UpdateScrollBars
Applies changes to the horizontal and vertical scrollbars.
UpdateVerticalRange
Not documented.
UpdateVerticalScrollBar
Applies changes to the horizontal and vertical scrollbars.
UpdateWindowAndDragImage
Not documented.
UseRightToLeftReading
Helper method for right-to-left layout.
ValidateCache
Initiates the validation of the internal node cache.
ValidateChildren
Validates all children of a given node.
ValidateNode
Validates a given node.
ValidateNodeDataSize
Helper method for node data size initalization.
VisibleChildNodes
Not documented.
VisibleChildNoInitNodes
Not documented.
VisibleNodes
Not documented.
VisibleNoInitNodes
Not documented.
WndProc
Redirected window procedure to do some special processing.
WriteChunks
Writes the core chunks for the given node to the given stream.
WriteNode
Writes the cover (envelop) chunk for the given node to the given stream.

TCustomVirtualStringTree Class

AdjustPaintCellRect
Method which can be used by descentants to adjust the given rectangle during a paint cycle.
CalculateTextWidth
Not documented.
CanExportNode
Not documented.
ColumnIsEmpty
Used to determine if a cell is considered as being empty.
ComputeNodeHeight
Not documented.
ContentToClipboard
Not documented.
ContentToCustom
Not documented.
ContentToHTML
Not documented.
ContentToRTF
Not documented.
ContentToText
This is the overview for the ContentToText method overload.
ContentToUnicode
This is the overview for the ContentToUnicode method overload.
DefineProperties
Helper method to customize loading and saving persistent tree data.
DoCreateEditor
Not documented.
DoGetNodeHint
Not documented.
DoGetNodeTooltip
Not documented.
DoGetNodeWidth
Overridable method which always retuns 0.
DoGetText
Not documented.
DoIncrementalSearch
Not documented.
DoNewText
Not documented.
DoPaintNode
Overridable method which does nothing.
DoPaintText
Not documented.
DoShortenString
Not documented.
DoTextDrawing
Not documented.
DoTextMeasuring
Not documented.
GetOptionsClass
Customization helper to determine which options class the tree should use.
GetTextInfo
Not documented.
InternalData
Returns the address of the internal data for a tree class.
InvalidateNode
Invalidates the given node.
MainColumnChanged
Not documented.
Path
Not documented.
ReadChunk
Not documented.
ReadOldStringOptions
Not documented.
ReinitNode
Forces a reinitialization of the given node.
RenderOLEData
Renders pending OLE data.
SaveToCSVFile
Not documented.
WriteChunks
Writes the core chunks for the given node to the given stream.

Topics

TBaseVirtualTree Methods
The methods of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Constructors
The constructors of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Destructors
The destructors of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Properties
The properties of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Events
The events of the TBaseVirtualTree class are listed here.

TCustomVirtualStringTree Class

TCustomVirtualStringTree Methods
The methods of the TCustomVirtualStringTree class are listed here.
TCustomVirtualStringTree Constructors
The constructors of the TCustomVirtualStringTree class are listed here.
TCustomVirtualStringTree Properties
The properties of the TCustomVirtualStringTree class are listed here.
TCustomVirtualStringTree Events
The events of the TCustomVirtualStringTree class are listed here.

TBaseVirtualTree Constructors

Create
Constructor of the control

TCustomVirtualStringTree Class

Create
Constructor of the control

TBaseVirtualTree Destructors

Destroy
Destructor of the control.

TBaseVirtualTree Properties

Accessible
Not documented.
AccessibleItem
Not documented.
AccessibleName
Not documented.
Alignment
Determines the horizontal alignment of text if no columns are defined.
AnimationDuration
Determines the maximum duration the tree can use to play an animation.
AutoExpandDelay
Time delay after which a node gets expanded if it is the current drop target.
AutoScrollDelay
Time which determines when auto scrolling should start.
AutoScrollInterval
Time interval between scroll events when doing auto scroll.
Background
Holds a background image for the tree.
BackgroundOffsetX
Horizontal offset of the background image.
BackgroundOffsetY
Vertical offset of the background image.
BorderStyle
Same as TForm.BorderStyle.
BottomNode
Not documented.
BottomSpace
Not documented.
ButtonFillMode
Determines how to fill the background of the node buttons.
ButtonStyle
Determines the look of node buttons.
ChangeDelay
Time which determines when the OnChange event should be triggered after the actual change event.
CheckedCount
Not documented.
CheckImageKind
Determines which images should be used for checkboxes and radio buttons.
CheckImages
Not documented.
CheckState
Read or set the check state of a node.
CheckType
Read or set the check type of a node.
ChildCount
Read or set the number of child nodes of a node.
ChildrenInitialized
Read whether a node's child count has been initialized already.
ClipboardFormats
Special class to keep a list of clipboard format descriptions.
Colors
A collection of colors used in the tree.
CustomCheckImages
Assign your own image list to get the check images you like most.
CutCopyCount
Not documented.
DefaultNodeHeight
Read or set the height new nodes get as initial value.
DefaultPasteMode
Read or set the value, which determines where to add pasted nodes to.
DragHeight
Read or set the vertical limit of the internal drag image.
DragImage
Holds the instance of the internal drag image.
DragImageKind
Read or set what should be shown in the drag image.
DragManager
Holds the reference to the internal drag manager.
DragOperations
Read or set which drag operations may be allowed in the tree.
DragSelection
Keeps a temporary list of nodes during drag'n drop.
DragType
Read or set which subsystem should be used for dragging.
DragWidth
Read or set the horizontal limit of the internal drag image.
DrawSelectionMode
Read or set how multiselection with the mouse is to be visualized.
DropTargetNode
Contains the current drop target node if the tree is currently the target of a drag'n drop operation.
EditColumn
Not documented.
EditDelay
Read or set the maximum time between two single clicks on the same node, which should start node editing.
EditLink
Keeps a reference to the internal edit link during a node edit operation.
EffectiveOffsetX
Not documented.
EmptyListMessage
Not documented.
Expanded
Read or set the expanded state of a particular node.
FocusedColumn
Read or set the currently focused collumn.
FocusedNode
Read or set the currently focused node.
Font
Same as TWinControl.Font.
FullyVisible
Read or set whether a node is fully visible or not.
HasChildren
Read or set whether a node has got children.
Header
Provides access to the header instance.
HeaderRect
Returns the non-client-area rectangle used for the header.
HintAnimation
Read or set the current hint animation type.
HintData
Not documented.
HintMode
Read or set what type of hint you want for the tree view.
HotCursor
Read or set which cursor should be used for hot nodes.
HotMinusBM
Not documented.
HotNode
Read, which node is currently the hot node.
HotPlusBM
Not documented.
Images
Read or set the tree's normal image list.
IncrementalSearch
Read or set the current incremental search mode.
IncrementalSearchDirection
Read or set the direction to be used for incremental search.
IncrementalSearchStart
Read or set where to start incremental search.
IncrementalSearchTimeout
Read or set the maximum time, which is allowed between two consecutive key strokes so that incremental search stays active.
Indent
Read or set the indentation amount for node levels.
IsDisabled
Read or set the enabled state of the given node.
IsEffectivelyFiltered
Not documented.
IsEffectivelyVisible
Not documented.
IsFiltered
Not documented.
IsVisible
Read or set the visibility state of the given node.
LastClickPos
Used for retained drag start and wheel mouse scrolling.
LastDropMode
Read how the last drop operation finished.
LastHintRect
Not documented.
LineMode
Read or set the mode of the tree lines.
LineStyle
Read or set the mode of the tree lines.
Margin
Read or set the tree's node margin.
MinusBM
Not documented.
MultiLine
Read or toggle the multiline feature for a given node.
NodeAlignment
Read or set the node alignment value.
NodeDataSize
Read or set the extra data size for each node.
NodeHeight
Read or set a node's height.
NodeParent
Read or set a node's parent node.
OffsetX
Read or set the tree's current horizontal and vertical scroll offsets.
OffsetXY
Read or set the tree's current horizontal and vertical scroll offsets.
OffsetY
Read or set the tree's current horizontal and vertical scroll offsets.
OperationCanceled
Not documented.
OperationCount
Not documented.
PlusBM
Not documented.
RangeX
Not documented.
RangeY
Not documented.
RootNode
Reference to the internal root node which is the anchor of the entire tree node hierarchy.
RootNodeCount
Read or set the number of nodes on the top level.
ScrollBarOptions
Reference to the scroll bar options class.
SearchBuffer
Current input string for incremental search.
Selected
Property to modify or determine the selection state of a node.
SelectedCount
Contains the number of selected nodes.
SelectionBlendFactor
Read or set the current blend factor for the multi selection rectangle and the node selection rectangle.
SelectionCurveRadius
Read or set the current corner radius for node selection rectangles.
SelectionLocked
Not documented.
StateImages
Reference to the images list which is used for the state images.
TextMargin
Read or set the distance of the node caption to its borders.
TopNode
The top node is the node which is currently at the top border of the client area.
TotalCount
Returns the number of nodes in the tree.
TotalInternalDataSize
Keeps the currently accumulated data size for one node.
TreeOptions
Reference to the tree's options.
TreeStates
Property which keeps a set of flags which indicate current operation and states of the tree.
UpdateCount
Not documented.
VerticalAlignment
Used to set a node's vertical button aligment with regard to the entire node rectangle.
VisibleCount
Number of currently visible nodes.
VisiblePath
Property to set or determine a node parent's expand states.
WantTabs
Read or set whether the tree wants to process tabs on its own.

TCustomVirtualStringTree Class

DefaultText
Not documented.
EllipsisWidth
Not documented.
ImageText
Not documented.
Text
Not documented.
TreeOptions
Reference to the tree's options.

TBaseVirtualTree Events

OnAddToSelection
Not documented.
OnAdvancedHeaderDraw
Header paint support event.
OnAfterAutoFitColumn
Not documented.
OnAfterAutoFitColumns
Not documented.
OnAfterCellPaint
Paint support event.
OnAfterColumnExport
Not documented.
OnAfterColumnWidthTracking
Not documented.
OnAfterGetMaxColumnWidth
Not documented.
OnAfterHeaderExport
Not documented.
OnAfterHeaderHeightTracking
Not documented.
OnAfterItemErase
Paint support event.
OnAfterItemPaint
Paint support event.
OnAfterNodeExport
Not documented.
OnAfterPaint
Paint support event.
OnAfterTreeExport
Not documented.
OnBeforeAutoFitColumn
Not documented.
OnBeforeAutoFitColumns
Not documented.
OnBeforeCellPaint
Paint support event.
OnBeforeColumnExport
Not documented.
OnBeforeColumnWidthTracking
Not documented.
OnBeforeDrawTreeLine
Not documented.
OnBeforeGetMaxColumnWidth
Not documented.
OnBeforeHeaderExport
Not documented.
OnBeforeHeaderHeightTracking
Not documented.
OnBeforeItemErase
Paint support event.
OnBeforeItemPaint
Paint support event.
OnBeforeNodeExport
Not documented.
OnBeforePaint
Paint support event.
OnBeforeTreeExport
Not documented.
OnCanSplitterResizeColumn
Not documented.
OnCanSplitterResizeHeader
Not documented.
OnCanSplitterResizeNode
Not documented.
OnChange
Navigation support event.
OnChecked
Check support event.
OnChecking
Check support event.
OnCollapsed
Miscellaneous event.
OnCollapsing
Miscellaneous event.
OnColumnClick
Header and column support event.
OnColumnDblClick
Header and column support event.
OnColumnExport
Not documented.
OnColumnResize
Header and column support routine.
OnColumnWidthDblClickResize
Not documented.
OnColumnWidthTracking
Not documented.
OnCompareNodes
Sort and search support event.
OnCreateDataObject
Drag'n drop support event.
OnCreateDragManager
Drag'n drop support event.
OnCreateEditor
Editing support event.
OnDragAllowed
Drag'n drop support event.
OnDragDrop
Drag'n drop support event.
OnDragOver
Drag'n drop support event.
OnEditCancelled
Editing support event.
OnEdited
Editing support event.
OnEditing
Editing support event.
OnEndOperation
Not documented.
OnExpanded
Misscellaneous event.
OnExpanding
Miscellaneous event.
OnFocusChanged
Navigation support event.
OnFocusChanging
Navigation support event.
OnFreeNode
Data management node.
OnGetCellIsEmpty
Triggered when the tree control needs to know whether a given column is empty.
OnGetCursor
Miscellaneous event.
OnGetHeaderCursor
Header and column support event.
OnGetHelpContext
Miscellaneous event.
OnGetImageIndex
Display management event.
OnGetImageIndexEx
Not documented.
OnGetImageText
Not documented.
OnGetLineStyle
Display management event.
OnGetNodeDataSize
Data management event.
OnGetPopupMenu
Miscellaneous event.
OnGetUserClipboardFormats
Drag'n drop and clipboard support event.
OnHeaderClick
Header & column support event.
OnHeaderDblClick
Header & column support event.
OnHeaderDragged
Header & column support event.
OnHeaderDraggedOut
Header & column support event.
OnHeaderDragging
Header & column support event.
OnHeaderDraw
Header & column support event.
OnHeaderDrawQueryElements
Header & column support event.
OnHeaderHeightDblClickResize
Not documented.
OnHeaderHeightTracking
Not documented.
OnHeaderMouseDown
Header & column support event.
OnHeaderMouseMove
Header & column support event.
OnHeaderMouseUp
Header & column support event.
OnHotChange
Navigation support event.
OnIncrementalSearch
Miscellaneous event.
OnInitChildren
Node management event.
OnInitNode
Node management event.
OnKeyAction
Miscellaneous event.
OnLoadNode
Streaming support event.
OnLoadTree
Not documented.
OnMeasureItem
Miscellaneous event.
OnNodeClick
Not documented.
OnNodeCopied
Miscellaneous event.
OnNodeCopying
Miscellaneous event.
OnNodeDblClick
Not documented.
OnNodeExport
Not documented.
OnNodeHeightDblClickResize
Not documented.
OnNodeHeightTracking
Not documented.
OnNodeMoved
Miscellaneous event.
OnNodeMoving
Miscellaneous event.
OnPaintBackground
Paint support event.
OnRemoveFromSelection
Not documented.
OnRenderOLEData
Drag'n drop and clipboard support event.
OnResetNode
Node management event.
OnSaveNode
Streaming support event.
OnSaveTree
Not documented.
OnScroll
Miscellaneous event.
OnShowScrollbar
Not documented.
OnStartOperation
Not documented.
OnStateChange
Miscellaneous event.
OnStructureChange
Miscellaneous event.
OnUpdating
Miscellaneous event.

TCustomVirtualStringTree Class

OnDrawText
Not documented.
OnGetHint
Virtual string tree event to query for a custom hint text.
OnGetText
Virtual string tree event to query for a node's normal or static text.
OnMeasureTextHeight
Not documented.
OnMeasureTextWidth
Not documented.
OnNewText
Virtual string tree event to pass edited text.
OnPaintText
Event to change text formatting for particular nodes.
OnShortenString
String tree event for custom handling of string abbreviations.

Topics

TBaseVirtualTree Methods
The methods of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Constructors
The constructors of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Destructors
The destructors of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Properties
The properties of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Events
The events of the TBaseVirtualTree class are listed here.

TCustomVirtualStringTree Class

TCustomVirtualStringTree Methods
The methods of the TCustomVirtualStringTree class are listed here.
TCustomVirtualStringTree Constructors
The constructors of the TCustomVirtualStringTree class are listed here.
TCustomVirtualStringTree Properties
The properties of the TCustomVirtualStringTree class are listed here.
TCustomVirtualStringTree Events
The events of the TCustomVirtualStringTree class are listed here.

TBaseVirtualTree Constructors

Create
Constructor of the control

TCustomVirtualStringTree Class

Create
Constructor of the control

TBaseVirtualTree Destructors

Destroy
Destructor of the control.

TBaseVirtualTree Events

OnAddToSelection
Not documented.
OnAdvancedHeaderDraw
Header paint support event.
OnAfterAutoFitColumn
Not documented.
OnAfterAutoFitColumns
Not documented.
OnAfterCellPaint
Paint support event.
OnAfterColumnExport
Not documented.
OnAfterColumnWidthTracking
Not documented.
OnAfterGetMaxColumnWidth
Not documented.
OnAfterHeaderExport
Not documented.
OnAfterHeaderHeightTracking
Not documented.
OnAfterItemErase
Paint support event.
OnAfterItemPaint
Paint support event.
OnAfterNodeExport
Not documented.
OnAfterPaint
Paint support event.
OnAfterTreeExport
Not documented.
OnBeforeAutoFitColumn
Not documented.
OnBeforeAutoFitColumns
Not documented.
OnBeforeCellPaint
Paint support event.
OnBeforeColumnExport
Not documented.
OnBeforeColumnWidthTracking
Not documented.
OnBeforeDrawTreeLine
Not documented.
OnBeforeGetMaxColumnWidth
Not documented.
OnBeforeHeaderExport
Not documented.
OnBeforeHeaderHeightTracking
Not documented.
OnBeforeItemErase
Paint support event.
OnBeforeItemPaint
Paint support event.
OnBeforeNodeExport
Not documented.
OnBeforePaint
Paint support event.
OnBeforeTreeExport
Not documented.
OnCanSplitterResizeColumn
Not documented.
OnCanSplitterResizeHeader
Not documented.
OnCanSplitterResizeNode
Not documented.
OnChange
Navigation support event.
OnChecked
Check support event.
OnChecking
Check support event.
OnCollapsed
Miscellaneous event.
OnCollapsing
Miscellaneous event.
OnColumnClick
Header and column support event.
OnColumnDblClick
Header and column support event.
OnColumnExport
Not documented.
OnColumnResize
Header and column support routine.
OnColumnWidthDblClickResize
Not documented.
OnColumnWidthTracking
Not documented.
OnCompareNodes
Sort and search support event.
OnCreateDataObject
Drag'n drop support event.
OnCreateDragManager
Drag'n drop support event.
OnCreateEditor
Editing support event.
OnDragAllowed
Drag'n drop support event.
OnDragDrop
Drag'n drop support event.
OnDragOver
Drag'n drop support event.
OnEditCancelled
Editing support event.
OnEdited
Editing support event.
OnEditing
Editing support event.
OnEndOperation
Not documented.
OnExpanded
Misscellaneous event.
OnExpanding
Miscellaneous event.
OnFocusChanged
Navigation support event.
OnFocusChanging
Navigation support event.
OnFreeNode
Data management node.
OnGetCellIsEmpty
Triggered when the tree control needs to know whether a given column is empty.
OnGetCursor
Miscellaneous event.
OnGetHeaderCursor
Header and column support event.
OnGetHelpContext
Miscellaneous event.
OnGetImageIndex
Display management event.
OnGetImageIndexEx
Not documented.
OnGetImageText
Not documented.
OnGetLineStyle
Display management event.
OnGetNodeDataSize
Data management event.
OnGetPopupMenu
Miscellaneous event.
OnGetUserClipboardFormats
Drag'n drop and clipboard support event.
OnHeaderClick
Header & column support event.
OnHeaderDblClick
Header & column support event.
OnHeaderDragged
Header & column support event.
OnHeaderDraggedOut
Header & column support event.
OnHeaderDragging
Header & column support event.
OnHeaderDraw
Header & column support event.
OnHeaderDrawQueryElements
Header & column support event.
OnHeaderHeightDblClickResize
Not documented.
OnHeaderHeightTracking
Not documented.
OnHeaderMouseDown
Header & column support event.
OnHeaderMouseMove
Header & column support event.
OnHeaderMouseUp
Header & column support event.
OnHotChange
Navigation support event.
OnIncrementalSearch
Miscellaneous event.
OnInitChildren
Node management event.
OnInitNode
Node management event.
OnKeyAction
Miscellaneous event.
OnLoadNode
Streaming support event.
OnLoadTree
Not documented.
OnMeasureItem
Miscellaneous event.
OnNodeClick
Not documented.
OnNodeCopied
Miscellaneous event.
OnNodeCopying
Miscellaneous event.
OnNodeDblClick
Not documented.
OnNodeExport
Not documented.
OnNodeHeightDblClickResize
Not documented.
OnNodeHeightTracking
Not documented.
OnNodeMoved
Miscellaneous event.
OnNodeMoving
Miscellaneous event.
OnPaintBackground
Paint support event.
OnRemoveFromSelection
Not documented.
OnRenderOLEData
Drag'n drop and clipboard support event.
OnResetNode
Node management event.
OnSaveNode
Streaming support event.
OnSaveTree
Not documented.
OnScroll
Miscellaneous event.
OnShowScrollbar
Not documented.
OnStartOperation
Not documented.
OnStateChange
Miscellaneous event.
OnStructureChange
Miscellaneous event.
OnUpdating
Miscellaneous event.

TCustomVirtualStringTree Class

OnDrawText
Not documented.
OnGetHint
Virtual string tree event to query for a custom hint text.
OnGetText
Virtual string tree event to query for a node's normal or static text.
OnMeasureTextHeight
Not documented.
OnMeasureTextWidth
Not documented.
OnNewText
Virtual string tree event to pass edited text.
OnPaintText
Event to change text formatting for particular nodes.
OnShortenString
String tree event for custom handling of string abbreviations.

Legend

Method
public
virtual
protected
Constructor
Property
read only
Event

TBaseVirtualTree Methods

AbsoluteIndex
Reads the overall index of a node.
AddChild
Creates and adds a new child node to given node.
AddFromStream
Adds the content from the given stream to the given node.
AddToSelection
This is the overview for the AddToSelection method overload.
AdjustImageBorder
Depending on the width of the image list as well as the given bidi mode R must be adjusted.
AdjustPaintCellRect
Used in descentants to modify the clip rectangle of the current column while painting a certain node.
AdjustPanningCursor
Loads the proper cursor which indicates into which direction scrolling is done.
AdviseChangeEvent
Used to register a delayed change event.
AllocateInternalDataArea
Registration method to allocate tree internal data per node.
Animate
Support method for animated actions in the tree view.
Assign
Used to copy properties from another Virtual Treeview.
BeginDrag
Starts an OLE drag'n drop operation.
BeginSynch
Enters the tree into a special synchronized mode.
BeginUpdate
Locks the tree view to perform several update operations.
CalculateSelectionRect
Support method for draw selection.
CanAutoScroll
Determines whether the tree can currently auto scroll its window.
CancelCutOrCopy
Canceles any pending cut or copy clipboard operation.
CancelEditNode
Cancel the current edit operation, if there is any.
CancelOperation
Not documented.
CanEdit
Determines whether a node can be edited or not.
CanFocus
Support method to determine whether the tree window can receive the input focus.
CanShowDragImage
Determines whether a drag image should be shown.
CanSplitterResizeNode
Not documented.
Change
Central method called when a node's selection state changes.
ChangeScale
Helper method called by the VCL when control resizing is due.
CheckedNodes
Not documented.
CheckParentCheckState
Helper method for recursive check state changes.
ChildNodes
Not documented.
Clear
Clears the tree and removes all nodes.
ClearChecked
Not documented.
ClearSelection
Removes all nodes from the current selection.
ClearTempCache
Helper method to clear the internal temporary node cache.
ColumnIsEmpty
Used to determine if a cell is considered as being empty.
ComputeRTLOffset
Not documented.
CopyTo
This is the overview for the CopyTo method overload.
CopyToClipBoard
Copies all currently selected nodes to the clipboard.
CountLevelDifference
Determines the level difference of two nodes.
CountVisibleChildren
Determines the number of visible child nodes of the given node.
CreateParams
Prepares the creation of the controls window handle.
CreateWnd
Initializes data, which depends on the window handle.
CutCopyNodes
Not documented.
CutToClipBoard
Copies the currently selected nodes to the clipboard and removes them once a consumer has taken the data.
DefineProperties
Helper method to customize loading and saving persistent tree data.
DeleteChildren
Removes all child nodes from the given node.
DeleteNode
Removes the given node from the tree.
DeleteSelectedNodes
Removes all currently selected nodes form the tree.
DetermineDropMode
Not documented.
DetermineHiddenChildrenFlag
Determines whether all children of a given node are hidden.
DetermineHiddenChildrenFlagAllNodes
Determines whether all children of all nodes are hidden.
DetermineHitPositionLTR
Determines the hit position within a node with left-to-right and right-to-left orientation.
DetermineHitPositionRTL
Determines the hit position within a node with left-to-right and right-to-left orientation.
DetermineLineImageAndSelectLevel
Not documented.
DetermineNextCheckState
Not documented.
DetermineScrollDirections
Not documented.
DoAdvancedHeaderDraw
Not documented.
DoAfterCellPaint
Not documented.
DoAfterItemErase
Not documented.
DoAfterItemPaint
Not documented.
DoAfterPaint
Not documented.
DoAutoScroll
Enables or disables the auto scroll timer.
DoBeforeCellPaint
Not documented.
DoBeforeDrag
Not documented.
DoBeforeDrawLineImage
Not documented.
DoBeforeItemErase
Not documented.
DoBeforeItemPaint
Not documented.
DoBeforePaint
Not documented.
DoCancelEdit
Called when the tree should stop editing without accepting changed values.
DoCanEdit
Not documented.
DoCanSplitterResizeNode
Not documented.
DoChange
Not documented.
DoCheckClick
Not documented.
DoChecked
Not documented.
DoChecking
Not documented.
DoCollapsed
Not documented.
DoCollapsing
Not documented.
DoColumnClick
Not documented.
DoColumnDblClick
Not documented.
DoColumnResize
Not documented.
DoCompare
Not documented.
DoCreateDataObject
Not documented.
DoCreateDragManager
Not documented.
DoCreateEditor
Not documented.
DoDragDrop
Not documented.
DoDragExpand
Not documented.
DoDragging
Internal method which handles drag' drop.
DoDragOver
Not documented.
DoEdit
Initiates editing of the currently set focused column and edit node.
DoEndDrag
Not documented.
DoEndEdit
Stops the current edit operation and takes over the new content.
DoEndOperation
Not documented.
DoExpanded
Not documented.
DoExpanding
Not documented.
DoFocusChange
Not documented.
DoFocusChanging
Not documented.
DoFocusNode
Internal method to set the focused node.
DoFreeNode
Not documented.
DoGetAnimationType
Determines the type of animation to be used.
DoGetCellContentMargin
Not documented.
DoGetCursor
Not documented.
DoGetHeaderCursor
Not documented.
DoGetImageIndex
Not documented.
DoGetImageText
Not documented.
DoGetLineStyle
Not documented.
DoGetNodeHint
Not documented.
DoGetNodeTooltip
Not documented.
DoGetNodeWidth
Overridable method which always retuns 0.
DoGetPopupMenu
Overridable method which triggers the OnGetPopup event.
DoGetUserClipboardFormats
Not documented.
DoHeaderClick
Not documented.
DoHeaderDblClick
Not documented.
DoHeaderDragged
Not documented.
DoHeaderDraggedOut
Not documented.
DoHeaderDragging
Not documented.
DoHeaderDraw
Not documented.
DoHeaderDrawQueryElements
Not documented.
DoHeaderMouseDown
Not documented.
DoHeaderMouseMove
Not documented.
DoHeaderMouseUp
Not documented.
DoHotChange
Not documented.
DoIncrementalSearch
Not documented.
DoInitChildren
Not documented.
DoInitNode
Not documented.
DoKeyAction
Not documented.
DoLoadUserData
Not documented.
DoMeasureItem
Not documented.
DoNodeClick
Not documented.
DoNodeCopied
Not documented.
DoNodeCopying
Not documented.
DoNodeDblClick
Not documented.
DoNodeHeightDblClickResize
Not documented.
DoNodeHeightTracking
Not documented.
DoNodeMoved
Not documented.
DoNodeMoving
Not documented.
DoPaintBackground
Not documented.
DoPaintDropMark
Overridable method which draws the small line on top of a nodes image depending on the current drop state.
DoPaintNode
Overridable method which does nothing.
DoPopupMenu
Overridable method which shows the popup menu for the given node.
DoRenderOLEData
Not documented.
DoReset
Not documented.
DoSaveUserData
Not documented.
DoScroll
Overridable method which triggers the OnScroll event.
DoSetOffsetXY
Internal core routine to set the tree's scroll position.
DoShowScrollbar
Not documented.
DoStartDrag
Not documented.
DoStartOperation
Not documented.
DoStateChange
Not documented.
DoStructureChange
Not documented.
DoTimerScroll
Callback method which is triggered whenever the scroll timer fires.
DoUpdating
Not documented.
DoValidateCache
Not documented.
DragAndDrop
Not documented.
DragCanceled
Called by the VCL when a drag'n drop operation was canceled by the user.
DragDrop
Helper method, which is used when a drag operation is finished.
DragEnter
Not documented.
DragFinished
Called when a drag operation is finished (accepted or cancelled).
Dragging
Returns true if a drag'n drop operation is in progress.
DragLeave
Not documented.
DragOver
Not documented.
DrawDottedHLine
Not documented.
DrawDottedVLine
Not documented.
EditNode
Starts editing the given node if allowed to.
EndEditNode
Stops node editing if it was started before.
EndOperation
Not documented.
EndSynch
Counterpart to BeginSynch.
EndUpdate
Resets the update lock set by BeginUpdate.
ExecuteAction
Not documented.
FindNodeInSelection
Helper method to find the given node in the current selection.
FinishChunkHeader
Not documented.
FinishCutOrCopy
Stops any pending cut or copy clipboard operation.
FlushClipboard
Renders all pending clipboard data.
FontChanged
Not documented.
FullCollapse
Collapses all nodes in the tree.
FullExpand
Expands all nodes in the tree.
GetBorderDimensions
Not documented.
GetCheckImage
Not documented.
GetCheckImageListFor
Not documented.
GetColumnClass
Returns the class to be used to manage columns in the tree.
GetControlsAlignment
Not documented.
GetDisplayRect
Not documented.
GetEffectivelyFiltered
Not documented.
GetEffectivelyVisible
Not documented.
GetFirst
Group of node navigation functions.
GetFirstChecked
Not documented.
GetFirstChild
Group of node navigation functions.
GetFirstCutCopy
Group of node navigation functions.
GetFirstInitialized
Group of node navigation functions.
GetFirstLeaf
Not documented.
GetFirstLevel
Not documented.
GetFirstNoInit
Group of node navigation functions.
GetFirstSelected
Group of node navigation functions.
GetFirstVisible
Group of node navigation functions.
GetFirstVisibleChild
Not documented.
GetFirstVisibleChildNoInit
Not documented.
GetFirstVisibleNoInit
Group of node navigation functions.
GetHeaderClass
Returns the header class to be used by the tree.
GetHintWindowClass
Not documented.
GetHitTestInfoAt
Returns information about the node at the given position.
GetImageIndex
Not documented.
GetLast
Not documented.
GetLastChild
GetLastChildNoInit
GetLastInitialized
Not documented.
GetLastNoInit
Not documented.
GetLastVisible
Not documented.
GetLastVisibleChild
Not documented.
GetLastVisibleChildNoInit
Not documented.
GetLastVisibleNoInit
Not documented.
GetMaxColumnWidth
Not documented.
GetMaxRightExtend
Determines the maximum with of the currently visible part of the tree.
GetNativeClipboardFormats
Used to let descendants and the application add their own supported clipboard formats.
GetNext
Not documented.
GetNextChecked
This is the overview for the GetNextChecked method overload.
GetNextCutCopy
Not documented.
GetNextInitialized
Not documented.
GetNextLeaf
Not documented.
GetNextLevel
Not documented.
GetNextNoInit
Not documented.
GetNextSelected
Not documented.
GetNextSibling
GetNextVisible
Not documented.
GetNextVisibleNoInit
Not documented.
GetNextVisibleSibling
Not documented.
GetNextVisibleSiblingNoInit
Not documented.
GetNodeAt
This is the overview for the GetNodeAt method overload.
GetNodeData
Returns the address of the user data area of the given node.
GetNodeLevel
Returns the indentation level of the given node.
GetOperationCanceled
Not documented.
GetOptionsClass
Customization helper to determine which options class the tree should use.
GetPrevious
Not documented.
GetPreviousChecked
Not documented.
GetPreviousCutCopy
Not documented.
GetPreviousInitialized
Not documented.
GetPreviousLeaf
Not documented.
GetPreviousLevel
Not documented.
GetPreviousNoInit
Not documented.
GetPreviousSelected
Not documented.
GetPreviousSibling
GetPreviousVisible
Not documented.
GetPreviousVisibleNoInit
Not documented.
GetPreviousVisibleSibling
Not documented.
GetPreviousVisibleSiblingNoInit
Not documented.
GetSortedCutCopySet
Returns a sorted list of nodes, which are marked for s cut or copy clipboard operation.
GetSortedSelection
Returns a sorted list of all currently selected nodes.
GetTextInfo
Not documented.
GetTreeFromDataObject
OLE drag'n drop and clipboard support method.
GetTreeRect
Returns the size of the virtual tree image.
GetVisibleParent
Not documented.
HandleHotTrack
Not documented.
HandleIncrementalSearch
Not documented.
HandleMouseDblClick
Not documented.
HandleMouseDown
Not documented.
HandleMouseUp
Not documented.
HasAsParent
Determines if the given node has got another node as one of its parents.
HasImage
Not documented.
HasPopupMenu
Determines whether there is a pop up menu assigned to the tree.
InitChildren
Not documented.
InitializedNodes
Not documented.
InitNode
Not documented.
InsertNode
Inserts a new node and returns it to the caller.
InternalAddFromStream
Not documented.
InternalAddToSelection
This is the overview for the InternalAddToSelection method overload.
InternalCacheNode
Not documented.
InternalClearSelection
Not documented.
InternalConnectNode
Not documented.
InternalData
Returns the address of the internal data for a tree class.
InternalDisconnectNode
Not documented.
InternalRemoveFromSelection
Not documented.
InvalidateCache
Empties the internal node cache and marks it as invalid.
InvalidateChildren
Invalidates all children of the given node.
InvalidateColumn
Invalidates the client area part of a column.
InvalidateNode
Invalidates the given node.
InvalidateToBottom
Invalidates the client area starting with the top position of the given node.
InvertSelection
Inverts the current selection.
IsEditing
Tells the caller whether the tree is currently in edit mode.
IsMouseSelecting
Tell the caller whether the tree is currently in draw selection mode.
IterateSubtree
Iterator method to go through all nodes of a given sub tree.
LeafNodes
Not documented.
LevelNodes
Not documented.
Loaded
Not documented.
LoadFromFile
Loads previously streamed out tree data back in again.
LoadFromStream
Loads previously streamed out tree data back in again.
MainColumnChanged
Not documented.
MarkCutCopyNodes
Not documented.
MeasureItemHeight
Not documented.
MouseMove
Not documented.
MoveTo
This is the overview for the MoveTo method overload.
Nodes
Not documented.
NoInitNodes
Not documented.
Notification
Not documented.
OriginalWMNCPaint
Not documented.
Paint
TControl's Paint method used here to display the tree.
PaintCheckImage
Not documented.
PaintImage
Not documented.
PaintNodeButton
Not documented.
PaintSelectionRectangle
Not documented.
PaintTree
Main paint routine for the tree image.
PaintTreeLines
Not documented.
PanningWindowProc
Not documented.
PasteFromClipboard
Inserts the content of the clipboard into the tree.
PrepareCell
This method is called immediately before a cell's content is drawn und is responsible to paint selection colors etc.
PrepareDragImage
Not documented.
Print
Not documented.
ProcessDrop
Helper method to ease OLE drag'n drop operations.
ProcessOLEData
Takes serialized OLE tree data and reconstructs the former structure.
ReadChunk
Not documented.
ReadNode
Not documented.
RedirectFontChangeEvent
Not documented.
ReinitChildren
Forces all child nodes of Node to be reinitialized.
ReinitNode
Forces a reinitialization of the given node.
RemoveFromSelection
Removes the given node from the current selection.
RenderOLEData
Renders pending OLE data.
RepaintNode
Causes the treeview to repaint the given node.
ResetNode
Resets the given node to uninitialized.
ResetRangeAnchor
Not documented.
RestoreFontChangeEvent
Not documented.
SaveToFile
Saves the entire content of the tree into a file or stream.
SaveToStream
Saves the entire content of the tree into a file or stream.
ScrollIntoView
This is the overview for the ScrollIntoView method overload.
SelectAll
Selects all nodes in the tree.
SelectedNodes
Not documented.
SelectNodes
Selects a range of nodes.
SetFocusedNodeAndColumn
Not documented.
SkipNode
Not documented.
Sort
Sorts the given node.
SortTree
Sorts the entire tree view.
StartOperation
Not documented.
StartWheelPanning
Not documented.
StopWheelPanning
Not documented.
StructureChange
Not documented.
SuggestDropEffect
Not documented.
ToggleNode
Changes a node's expand state to the opposite state.
ToggleSelection
Toggles the selection state of a range of nodes.
UnselectNodes
Deselects a range of nodes.
UpdateAction
Not documented.
UpdateColumnCheckState
Not documented.
UpdateDesigner
Not documented.
UpdateEditBounds
Not documented.
UpdateHeaderRect
Not documented.
UpdateHorizontalRange
Not documented.
UpdateHorizontalScrollBar
Applies changes to the horizontal and vertical scrollbars.
UpdateRanges
Not documented.
UpdateScrollBars
Applies changes to the horizontal and vertical scrollbars.
UpdateVerticalRange
Not documented.
UpdateVerticalScrollBar
Applies changes to the horizontal and vertical scrollbars.
UpdateWindowAndDragImage
Not documented.
UseRightToLeftReading
Helper method for right-to-left layout.
ValidateCache
Initiates the validation of the internal node cache.
ValidateChildren
Validates all children of a given node.
ValidateNode
Validates a given node.
ValidateNodeDataSize
Helper method for node data size initalization.
VisibleChildNodes
Not documented.
VisibleChildNoInitNodes
Not documented.
VisibleNodes
Not documented.
VisibleNoInitNodes
Not documented.
WndProc
Redirected window procedure to do some special processing.
WriteChunks
Writes the core chunks for the given node to the given stream.
WriteNode
Writes the cover (envelop) chunk for the given node to the given stream.

TCustomVirtualStringTree Class

AdjustPaintCellRect
Method which can be used by descentants to adjust the given rectangle during a paint cycle.
CalculateTextWidth
Not documented.
CanExportNode
Not documented.
ColumnIsEmpty
Used to determine if a cell is considered as being empty.
ComputeNodeHeight
Not documented.
ContentToClipboard
Not documented.
ContentToCustom
Not documented.
ContentToHTML
Not documented.
ContentToRTF
Not documented.
ContentToText
This is the overview for the ContentToText method overload.
ContentToUnicode
This is the overview for the ContentToUnicode method overload.
DefineProperties
Helper method to customize loading and saving persistent tree data.
DoCreateEditor
Not documented.
DoGetNodeHint
Not documented.
DoGetNodeTooltip
Not documented.
DoGetNodeWidth
Overridable method which always retuns 0.
DoGetText
Not documented.
DoIncrementalSearch
Not documented.
DoNewText
Not documented.
DoPaintNode
Overridable method which does nothing.
DoPaintText
Not documented.
DoShortenString
Not documented.
DoTextDrawing
Not documented.
DoTextMeasuring
Not documented.
GetOptionsClass
Customization helper to determine which options class the tree should use.
GetTextInfo
Not documented.
InternalData
Returns the address of the internal data for a tree class.
InvalidateNode
Invalidates the given node.
MainColumnChanged
Not documented.
Path
Not documented.
ReadChunk
Not documented.
ReadOldStringOptions
Not documented.
ReinitNode
Forces a reinitialization of the given node.
RenderOLEData
Renders pending OLE data.
SaveToCSVFile
Not documented.
WriteChunks
Writes the core chunks for the given node to the given stream.

TBaseVirtualTree Properties

Accessible
Not documented.
AccessibleItem
Not documented.
AccessibleName
Not documented.
Alignment
Determines the horizontal alignment of text if no columns are defined.
AnimationDuration
Determines the maximum duration the tree can use to play an animation.
AutoExpandDelay
Time delay after which a node gets expanded if it is the current drop target.
AutoScrollDelay
Time which determines when auto scrolling should start.
AutoScrollInterval
Time interval between scroll events when doing auto scroll.
Background
Holds a background image for the tree.
BackgroundOffsetX
Horizontal offset of the background image.
BackgroundOffsetY
Vertical offset of the background image.
BorderStyle
Same as TForm.BorderStyle.
BottomNode
Not documented.
BottomSpace
Not documented.
ButtonFillMode
Determines how to fill the background of the node buttons.
ButtonStyle
Determines the look of node buttons.
ChangeDelay
Time which determines when the OnChange event should be triggered after the actual change event.
CheckedCount
Not documented.
CheckImageKind
Determines which images should be used for checkboxes and radio buttons.
CheckImages
Not documented.
CheckState
Read or set the check state of a node.
CheckType
Read or set the check type of a node.
ChildCount
Read or set the number of child nodes of a node.
ChildrenInitialized
Read whether a node's child count has been initialized already.
ClipboardFormats
Special class to keep a list of clipboard format descriptions.
Colors
A collection of colors used in the tree.
CustomCheckImages
Assign your own image list to get the check images you like most.
CutCopyCount
Not documented.
DefaultNodeHeight
Read or set the height new nodes get as initial value.
DefaultPasteMode
Read or set the value, which determines where to add pasted nodes to.
DragHeight
Read or set the vertical limit of the internal drag image.
DragImage
Holds the instance of the internal drag image.
DragImageKind
Read or set what should be shown in the drag image.
DragManager
Holds the reference to the internal drag manager.
DragOperations
Read or set which drag operations may be allowed in the tree.
DragSelection
Keeps a temporary list of nodes during drag'n drop.
DragType
Read or set which subsystem should be used for dragging.
DragWidth
Read or set the horizontal limit of the internal drag image.
DrawSelectionMode
Read or set how multiselection with the mouse is to be visualized.
DropTargetNode
Contains the current drop target node if the tree is currently the target of a drag'n drop operation.
EditColumn
Not documented.
EditDelay
Read or set the maximum time between two single clicks on the same node, which should start node editing.
EditLink
Keeps a reference to the internal edit link during a node edit operation.
EffectiveOffsetX
Not documented.
EmptyListMessage
Not documented.
Expanded
Read or set the expanded state of a particular node.
FocusedColumn
Read or set the currently focused collumn.
FocusedNode
Read or set the currently focused node.
Font
Same as TWinControl.Font.
FullyVisible
Read or set whether a node is fully visible or not.
HasChildren
Read or set whether a node has got children.
Header
Provides access to the header instance.
HeaderRect
Returns the non-client-area rectangle used for the header.
HintAnimation
Read or set the current hint animation type.
HintData
Not documented.
HintMode
Read or set what type of hint you want for the tree view.
HotCursor
Read or set which cursor should be used for hot nodes.
HotMinusBM
Not documented.
HotNode
Read, which node is currently the hot node.
HotPlusBM
Not documented.
Images
Read or set the tree's normal image list.
IncrementalSearch
Read or set the current incremental search mode.
IncrementalSearchDirection
Read or set the direction to be used for incremental search.
IncrementalSearchStart
Read or set where to start incremental search.
IncrementalSearchTimeout
Read or set the maximum time, which is allowed between two consecutive key strokes so that incremental search stays active.
Indent
Read or set the indentation amount for node levels.
IsDisabled
Read or set the enabled state of the given node.
IsEffectivelyFiltered
Not documented.
IsEffectivelyVisible
Not documented.
IsFiltered
Not documented.
IsVisible
Read or set the visibility state of the given node.
LastClickPos
Used for retained drag start and wheel mouse scrolling.
LastDropMode
Read how the last drop operation finished.
LastHintRect
Not documented.
LineMode
Read or set the mode of the tree lines.
LineStyle
Read or set the mode of the tree lines.
Margin
Read or set the tree's node margin.
MinusBM
Not documented.
MultiLine
Read or toggle the multiline feature for a given node.
NodeAlignment
Read or set the node alignment value.
NodeDataSize
Read or set the extra data size for each node.
NodeHeight
Read or set a node's height.
NodeParent
Read or set a node's parent node.
OffsetX
Read or set the tree's current horizontal and vertical scroll offsets.
OffsetXY
Read or set the tree's current horizontal and vertical scroll offsets.
OffsetY
Read or set the tree's current horizontal and vertical scroll offsets.
OperationCanceled
Not documented.
OperationCount
Not documented.
PlusBM
Not documented.
RangeX
Not documented.
RangeY
Not documented.
RootNode
Reference to the internal root node which is the anchor of the entire tree node hierarchy.
RootNodeCount
Read or set the number of nodes on the top level.
ScrollBarOptions
Reference to the scroll bar options class.
SearchBuffer
Current input string for incremental search.
Selected
Property to modify or determine the selection state of a node.
SelectedCount
Contains the number of selected nodes.
SelectionBlendFactor
Read or set the current blend factor for the multi selection rectangle and the node selection rectangle.
SelectionCurveRadius
Read or set the current corner radius for node selection rectangles.
SelectionLocked
Not documented.
StateImages
Reference to the images list which is used for the state images.
TextMargin
Read or set the distance of the node caption to its borders.
TopNode
The top node is the node which is currently at the top border of the client area.
TotalCount
Returns the number of nodes in the tree.
TotalInternalDataSize
Keeps the currently accumulated data size for one node.
TreeOptions
Reference to the tree's options.
TreeStates
Property which keeps a set of flags which indicate current operation and states of the tree.
UpdateCount
Not documented.
VerticalAlignment
Used to set a node's vertical button aligment with regard to the entire node rectangle.
VisibleCount
Number of currently visible nodes.
VisiblePath
Property to set or determine a node parent's expand states.
WantTabs
Read or set whether the tree wants to process tabs on its own.

TCustomVirtualStringTree Class

DefaultText
Not documented.
EllipsisWidth
Not documented.
ImageText
Not documented.
Text
Not documented.
TreeOptions
Reference to the tree's options.

Class Hierarchy
  TCustomVirtualStringTreeTCustomVirtualStringTree
File

VirtualTrees

Links
Classes, Topics, TCustomVirtualStringTree Methods, TCustomVirtualStringTree Constructors, TCustomVirtualStringTree Properties, TCustomVirtualStringTree Events, TBaseVirtualTree Constructors, TBaseVirtualTree Destructors, TBaseVirtualTree Events, Legend, TBaseVirtualTree Methods, TBaseVirtualTree Properties


TCustomVirtualStringTree Methods
TCustomVirtualStringTree Class | Methods | Legend | Send Feedback

The methods of the TCustomVirtualStringTree class are listed here.

Class

TCustomVirtualStringTree Class

Legend

Method
protected
virtual
public

Links
TCustomVirtualStringTree Class, Methods, Legend


TCustomVirtualStringTree.AdjustPaintCellRect Method
TCustomVirtualStringTree Methods | TCustomVirtualStringTree Class | Send Feedback

Method which can be used by descentants to adjust the given rectangle during a paint cycle.

Pascal
procedure AdjustPaintCellRect(var PaintInfo: TVTPaintInfo; var NextNonEmpty: TColumnIndex); override;
Description

For some special behaviour, like the auto span column feature, it is necessary to tell the base treeview which rectangle is to be considered as the current paint cell when drawing the tree. ClipRect is set to a rectangle which corresponds to the current node and the current column in the paint cycle.

Group

TCustomVirtualStringTree Methods

Links
TCustomVirtualStringTree Methods, TCustomVirtualStringTree Class


TCustomVirtualStringTree.CalculateTextWidth Method
TCustomVirtualStringTree Methods | TCustomVirtualStringTree Class | Send Feedback

Not documented.

Pascal
function CalculateTextWidth(Canvas: TCanvas; Node: PVirtualNode; Column: TColumnIndex; Text: UnicodeString): Integer; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TCustomVirtualStringTree Methods

Links
TCustomVirtualStringTree Methods, TCustomVirtualStringTree Class


TCustomVirtualStringTree.CanExportNode Method
TCustomVirtualStringTree Methods | TCustomVirtualStringTree Class | Send Feedback

Not documented.

Pascal
function CanExportNode(Node: PVirtualNode): Boolean;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TCustomVirtualStringTree Methods

Links
TCustomVirtualStringTree Methods, TCustomVirtualStringTree Class


TCustomVirtualStringTree.ColumnIsEmpty Method
TCustomVirtualStringTree Methods | See Also | TCustomVirtualStringTree Class | Send Feedback

Used to determine if a cell is considered as being empty.

Pascal
function ColumnIsEmpty(Node: PVirtualNode; Column: TColumnIndex): Boolean; override;
Description

An empty cell might be used for the automatic column spanning feature. Descentants can override this method to modify the tree's behavior.

See Also

toAutoSpanColumns

Group

TCustomVirtualStringTree Methods

Links
TCustomVirtualStringTree Methods, See Also, TCustomVirtualStringTree Class


TCustomVirtualStringTree.ComputeNodeHeight Method
TCustomVirtualStringTree Methods | TCustomVirtualStringTree Class | Send Feedback

Not documented.

Pascal
function ComputeNodeHeight(Canvas: TCanvas; Node: PVirtualNode; Column: TColumnIndex; S: UnicodeString = ''): Integer; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TCustomVirtualStringTree Methods

Links
TCustomVirtualStringTree Methods, TCustomVirtualStringTree Class


TCustomVirtualStringTree.ContentToClipboard Method
TCustomVirtualStringTree Methods | TCustomVirtualStringTree Class | Send Feedback

Not documented.

Pascal
function ContentToClipboard(Format: Word; Source: TVSTTextSourceType): HGLOBAL;
function ContentToRTF(Source: TVSTTextSourceType): AnsiString;
function ContentToUnicode(Source: TVSTTextSourceType; Separator: WideChar): UnicodeString; overload;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TCustomVirtualStringTree Methods

Links
TCustomVirtualStringTree Methods, TCustomVirtualStringTree Class


TCustomVirtualStringTree.ContentToCustom Method
TCustomVirtualStringTree Methods | TCustomVirtualStringTree Class | Send Feedback

Not documented.

Pascal
procedure ContentToCustom(Source: TVSTTextSourceType);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TCustomVirtualStringTree Methods

Links
TCustomVirtualStringTree Methods, TCustomVirtualStringTree Class


TCustomVirtualStringTree.ContentToHTML Method
TCustomVirtualStringTree Methods | TCustomVirtualStringTree Class | Send Feedback

Not documented.

Pascal
function ContentToHTML(Source: TVSTTextSourceType; Caption: UnicodeString = ''): AnsiString;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TCustomVirtualStringTree Methods

Links
TCustomVirtualStringTree Methods, TCustomVirtualStringTree Class


ContentToText Method

TCustomVirtualStringTree.ContentToHTML Method | TCustomVirtualStringTree Methods | TCustomVirtualStringTree.ContentToText Method (TVSTTextSourceType, AnsiChar)
ContentToText Method
TCustomVirtualStringTree Methods | Send Feedback

This is the overview for the ContentToText method overload.

Group

TCustomVirtualStringTree Methods

Links
TCustomVirtualStringTree Methods
Overload List
Method | Description
TCustomVirtualStringTree.ContentToText (TVSTTextSourceType, AnsiChar) | Not documented.
TCustomVirtualStringTree.ContentToText (TVSTTextSourceType, AnsiString) | Not documented.


TCustomVirtualStringTree.ContentToText Method (TVSTTextSourceType, AnsiChar)
ContentToText Method | TCustomVirtualStringTree Class | Send Feedback

Not documented.

Pascal
function ContentToText(Source: TVSTTextSourceType; Separator: AnsiChar): AnsiString; overload;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

ContentToText Method

Links
ContentToText Method, TCustomVirtualStringTree Class


TCustomVirtualStringTree.ContentToText Method (TVSTTextSourceType, AnsiString)
ContentToText Method | TCustomVirtualStringTree Class | Send Feedback

Not documented.

Pascal
function ContentToText(Source: TVSTTextSourceType; const Separator: AnsiString): AnsiString; overload;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

ContentToText Method

Links
ContentToText Method, TCustomVirtualStringTree Class


ContentToUnicode Method

TCustomVirtualStringTree.ContentToText Method (TVSTTextSourceType, AnsiString) | TCustomVirtualStringTree Methods | TCustomVirtualStringTree.ContentToUnicode Method (TVSTTextSourceType, UnicodeString)
ContentToUnicode Method
TCustomVirtualStringTree Methods | Send Feedback

This is the overview for the ContentToUnicode method overload.

Group

TCustomVirtualStringTree Methods

Links
TCustomVirtualStringTree Methods
Overload List
Method | Description
TCustomVirtualStringTree.ContentToUnicode (TVSTTextSourceType, UnicodeString) | Not documented.
TCustomVirtualStringTree.ContentToUnicode (TVSTTextSourceType, WideChar) | Not documented.


TCustomVirtualStringTree.ContentToUnicode Method (TVSTTextSourceType, UnicodeString)
ContentToUnicode Method | TCustomVirtualStringTree Class | Send Feedback

Not documented.

Pascal
function ContentToUnicode(Source: TVSTTextSourceType; const Separator: UnicodeString): UnicodeString; overload;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

ContentToUnicode Method

Links
ContentToUnicode Method, TCustomVirtualStringTree Class


TCustomVirtualStringTree.DefineProperties Method

TCustomVirtualStringTree.ContentToUnicode Method (TVSTTextSourceType, UnicodeString) | TCustomVirtualStringTree Methods | TCustomVirtualStringTree.DoCreateEditor Method
TCustomVirtualStringTree.DefineProperties Method
TCustomVirtualStringTree Methods | TCustomVirtualStringTree Class | Send Feedback

Helper method to customize loading and saving persistent tree data.

Pascal
procedure DefineProperties(Filer: TFiler); override;
Description

There were heavy changes in some properties during development of VT. This method helps to make migration easier by reading old properties manually and put them into the new properties as appropriate. These old properties are never written again and silently disappear.

Another task of this method is to work around the problem that TCollection is not streamed correctly when using Visual Form Inheritance (VFI).

Group

TCustomVirtualStringTree Methods

Links
TCustomVirtualStringTree Methods, TCustomVirtualStringTree Class


TCustomVirtualStringTree.DoCreateEditor Method
TCustomVirtualStringTree Methods | TCustomVirtualStringTree Class | Send Feedback

Not documented.

Pascal
function DoCreateEditor(Node: PVirtualNode; Column: TColumnIndex): IVTEditLink; override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TCustomVirtualStringTree Methods

Links
TCustomVirtualStringTree Methods, TCustomVirtualStringTree Class


TCustomVirtualStringTree.DoGetNodeHint Method
TCustomVirtualStringTree Methods | TCustomVirtualStringTree Class | Send Feedback

Not documented.

Pascal
function DoGetNodeHint(Node: PVirtualNode; Column: TColumnIndex; var LineBreakStyle: TVTTooltipLineBreakStyle): UnicodeString; override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TCustomVirtualStringTree Methods

Links
TCustomVirtualStringTree Methods, TCustomVirtualStringTree Class


TCustomVirtualStringTree.DoGetNodeTooltip Method
TCustomVirtualStringTree Methods | TCustomVirtualStringTree Class | Send Feedback

Not documented.

Pascal
function DoGetNodeTooltip(Node: PVirtualNode; Column: TColumnIndex; var LineBreakStyle: TVTTooltipLineBreakStyle): UnicodeString; override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TCustomVirtualStringTree Methods

Links
TCustomVirtualStringTree Methods, TCustomVirtualStringTree Class


TCustomVirtualStringTree.DoGetNodeWidth Method
TCustomVirtualStringTree Methods | TCustomVirtualStringTree Class | Send Feedback

Overridable method which always retuns 0.

Pascal
function DoGetNodeWidth(Node: PVirtualNode; Column: TColumnIndex; Canvas: TCanvas = nil): Integer; override;
Description

Descentants override this method to return a value which describes the width of a node. This is the inner width of the node excluding tree lines etc. So TVirtualStringTree returns the width of the node caption (plus text margin).

Group

TCustomVirtualStringTree Methods

Links
TCustomVirtualStringTree Methods, TCustomVirtualStringTree Class


TCustomVirtualStringTree.DoGetText Method
TCustomVirtualStringTree Methods | TCustomVirtualStringTree Class | Send Feedback

Not documented.

Pascal
procedure DoGetText(Node: PVirtualNode; Column: TColumnIndex; TextType: TVSTTextType; var Text: UnicodeString); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TCustomVirtualStringTree Methods

Links
TCustomVirtualStringTree Methods, TCustomVirtualStringTree Class


TCustomVirtualStringTree.DoIncrementalSearch Method
TCustomVirtualStringTree Methods | TCustomVirtualStringTree Class | Send Feedback

Not documented.

Pascal
function DoIncrementalSearch(Node: PVirtualNode; const Text: UnicodeString): Integer; override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TCustomVirtualStringTree Methods

Links
TCustomVirtualStringTree Methods, TCustomVirtualStringTree Class


TCustomVirtualStringTree.DoNewText Method
TCustomVirtualStringTree Methods | TCustomVirtualStringTree Class | Send Feedback

Not documented.

Pascal
procedure DoNewText(Node: PVirtualNode; Column: TColumnIndex; Text: UnicodeString); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TCustomVirtualStringTree Methods

Links
TCustomVirtualStringTree Methods, TCustomVirtualStringTree Class


TCustomVirtualStringTree.DoPaintNode Method
TCustomVirtualStringTree Methods | TCustomVirtualStringTree Class | Send Feedback

Overridable method which does nothing.

Pascal
procedure DoPaintNode(var PaintInfo: TVTPaintInfo); override;
Description

Descentants override this method to paint the content of the node. For instance string trees draw the node's caption.

Group

TCustomVirtualStringTree Methods

Links
TCustomVirtualStringTree Methods, TCustomVirtualStringTree Class


TCustomVirtualStringTree.DoPaintText Method
TCustomVirtualStringTree Methods | TCustomVirtualStringTree Class | Send Feedback

Not documented.

Pascal
procedure DoPaintText(Node: PVirtualNode; const Canvas: TCanvas; Column: TColumnIndex; TextType: TVSTTextType); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TCustomVirtualStringTree Methods

Links
TCustomVirtualStringTree Methods, TCustomVirtualStringTree Class


TCustomVirtualStringTree.DoShortenString Method
TCustomVirtualStringTree Methods | TCustomVirtualStringTree Class | Send Feedback

Not documented.

Pascal
function DoShortenString(Canvas: TCanvas; Node: PVirtualNode; Column: TColumnIndex; const S: UnicodeString; Width: Integer; EllipsisWidth: Integer = 0): UnicodeString; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TCustomVirtualStringTree Methods

Links
TCustomVirtualStringTree Methods, TCustomVirtualStringTree Class


TCustomVirtualStringTree.DoTextDrawing Method
TCustomVirtualStringTree Methods | TCustomVirtualStringTree Class | Send Feedback

Not documented.

Pascal
procedure DoTextDrawing(var PaintInfo: TVTPaintInfo; Text: UnicodeString; CellRect: TRect; DrawFormat: Cardinal); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TCustomVirtualStringTree Methods

Links
TCustomVirtualStringTree Methods, TCustomVirtualStringTree Class


TCustomVirtualStringTree.DoTextMeasuring Method
TCustomVirtualStringTree Methods | TCustomVirtualStringTree Class | Send Feedback

Not documented.

Pascal
function DoTextMeasuring(Canvas: TCanvas; Node: PVirtualNode; Column: TColumnIndex; Text: UnicodeString): TSize; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TCustomVirtualStringTree Methods

Links
TCustomVirtualStringTree Methods, TCustomVirtualStringTree Class


TCustomVirtualStringTree.GetOptionsClass Method
TCustomVirtualStringTree Methods | TCustomVirtualStringTree Class | Send Feedback

Customization helper to determine which options class the tree should use.

Pascal
function GetOptionsClass: TTreeOptionsClass; override;
Description

GetOptionsClass is a special purpose method to return a certain class which is used by the tree for its options. TVirtualBaseTree always returns TCustomVirtualTreeOptions but descendants can override this method to return own classes.

For ease of use it makes much sense to always use the same name for the tree's options (which is TreeOptions). By using a customized options class, however, the wrong type is returned by this property. Hence it is meaningful to override TreeOptions and return the derived options class. To make this work the tree descendant must additionally provide new access methods for this property. An example can be seen in TVirtualStringTree:

  TVirtualStringTree = class(TCustomVirtualStringTree)
  private
    function GetOptions: TStringTreeOptions;
    procedure SetOptions(const Value: TStringTreeOptions);
  protected
    function GetOptionsClass: TTreeOptionsClass; override;
  public
    property Canvas;
  published
    ...
    property TreeOptions: TStringTreeOptions read GetOptions write SetOptions;
    ...
  end;

  ...

//----------------- TVirtualStringTree ---------------------------------------------------------------------------------

function TVirtualStringTree.GetOptions: TStringTreeOptions;

begin
  Result := FOptions as TStringTreeOptions;
end;

//----------------------------------------------------------------------------------------------------------------------

procedure TVirtualStringTree.SetOptions(const Value: TStringTreeOptions);

begin
  FOptions.Assign(Value);
end;

//----------------------------------------------------------------------------------------------------------------------

function TVirtualStringTree.GetOptionsClass: TTreeOptionsClass;

begin
  Result := TStringTreeOptions;
end;
Group

TCustomVirtualStringTree Methods

Links
TCustomVirtualStringTree Methods, TCustomVirtualStringTree Class


TCustomVirtualStringTree.GetTextInfo Method
TCustomVirtualStringTree Methods | TCustomVirtualStringTree Class | Send Feedback

Not documented.

Pascal
procedure GetTextInfo(Node: PVirtualNode; Column: TColumnIndex; const AFont: TFont; var R: TRect; var Text: UnicodeString); override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TCustomVirtualStringTree Methods

Links
TCustomVirtualStringTree Methods, TCustomVirtualStringTree Class


TCustomVirtualStringTree.InternalData Method
TCustomVirtualStringTree Methods | See Also | TCustomVirtualStringTree Class | Send Feedback

Returns the address of the internal data for a tree class.

Pascal
function InternalData(Node: PVirtualNode): Pointer;
Description

In TBaseVirtualTreeview this method returns nil but should be overridden in descendants to allow proper access to the internal data of Node if the descendant tree has allocated internal data.

See Also

Data handling

Group

TCustomVirtualStringTree Methods

Links
TCustomVirtualStringTree Methods, See Also, TCustomVirtualStringTree Class


TCustomVirtualStringTree.InvalidateNode Method
TCustomVirtualStringTree Methods | TCustomVirtualStringTree Class | Send Feedback

Invalidates the given node.

Pascal
function InvalidateNode(Node: PVirtualNode): TRect; override;
Description

InvalidateNode initiates repaint of the given node by calling InvalidateRect with the node's display rectangel and returns this rectangle.

Group

TCustomVirtualStringTree Methods

Links
TCustomVirtualStringTree Methods, TCustomVirtualStringTree Class


TCustomVirtualStringTree.MainColumnChanged Method
TCustomVirtualStringTree Methods | TCustomVirtualStringTree Class | Send Feedback

Not documented.

Pascal
procedure MainColumnChanged; override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TCustomVirtualStringTree Methods

Links
TCustomVirtualStringTree Methods, TCustomVirtualStringTree Class


TCustomVirtualStringTree.Path Method
TCustomVirtualStringTree Methods | TCustomVirtualStringTree Class | Send Feedback

Not documented.

Pascal
function Path(Node: PVirtualNode; Column: TColumnIndex; TextType: TVSTTextType; Delimiter: WideChar): UnicodeString;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TCustomVirtualStringTree Methods

Links
TCustomVirtualStringTree Methods, TCustomVirtualStringTree Class


TCustomVirtualStringTree.ReadChunk Method
TCustomVirtualStringTree Methods | TCustomVirtualStringTree Class | Send Feedback

Not documented.

Pascal
function ReadChunk(Stream: TStream; Version: Integer; Node: PVirtualNode; ChunkType: Integer; ChunkSize: Integer): Boolean; override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TCustomVirtualStringTree Methods

Links
TCustomVirtualStringTree Methods, TCustomVirtualStringTree Class


TCustomVirtualStringTree.ReadOldStringOptions Method
TCustomVirtualStringTree Methods | TCustomVirtualStringTree Class | Send Feedback

Not documented.

Pascal
procedure ReadOldStringOptions(Reader: TReader);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TCustomVirtualStringTree Methods

Links
TCustomVirtualStringTree Methods, TCustomVirtualStringTree Class


TCustomVirtualStringTree.ReinitNode Method
TCustomVirtualStringTree Methods | TCustomVirtualStringTree Class | Send Feedback

Forces a reinitialization of the given node.

Pascal
procedure ReinitNode(Node: PVirtualNode; Recursive: Boolean); override;
Description

ReinitNode forces Node and all its children (if Recursive is true) to be initialized again without modifying any data in the nodes nor deleting children (unless the application requests a different amount).

Group

TCustomVirtualStringTree Methods

Links
TCustomVirtualStringTree Methods, TCustomVirtualStringTree Class


TCustomVirtualStringTree.RenderOLEData Method
TCustomVirtualStringTree Methods | TCustomVirtualStringTree Class | Send Feedback

Renders pending OLE data.

Pascal
function RenderOLEData(const FormatEtcIn: TFormatEtc; out Medium: TStgMedium; ForClipboard: Boolean): HResult; override;
Description

RenderOLData is called by TVTDataObject.GetData when a consumer of clipboard data actually requests the data. The base tree view only renders the native tree format, which is a chunk based stream of node data. The format to be rendered is specified in FormatEtcIn.cfFormat and is one of the formats which are returned from GetNativeClipboardFormats.

Descendants may override RenderOLEData in order to render other formats like HTML text. In TBaseVirtualTreeview this method calls the OnRenderOLEData event for all formats, except CF_VIRTUALTREE.

Group

TCustomVirtualStringTree Methods

Links
TCustomVirtualStringTree Methods, TCustomVirtualStringTree Class


TCustomVirtualStringTree.SaveToCSVFile Method
TCustomVirtualStringTree Methods | TCustomVirtualStringTree Class | Send Feedback

Not documented.

Pascal
function SaveToCSVFile(const FileNameWithPath: TFileName; const IncludeHeading: Boolean): Boolean;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TCustomVirtualStringTree Methods

Links
TCustomVirtualStringTree Methods, TCustomVirtualStringTree Class


TCustomVirtualStringTree.WriteChunks Method
TCustomVirtualStringTree Methods | See Also | TCustomVirtualStringTree Class | Send Feedback

Writes the core chunks for the given node to the given stream.

Pascal
procedure WriteChunks(Stream: TStream; Node: PVirtualNode); override;
Description

WriteChunks is part of the streaming system in Virtual Treeview and writes the core chunks for Node into Stream. Descentants can optionally override this method to add other node specific chunks. This streaming is used when the tree must be saved to disk or a stream used e.g. for clipboard operations.

Notes

Keep in mind that this method is also called for the hidden root node. Using this fact in descendants you can create a

kind of "global" chunk set not directly bound to a specific node.

See Also

WriteNode, SaveToStream

Group

TCustomVirtualStringTree Methods

Links
TCustomVirtualStringTree Methods, See Also, TCustomVirtualStringTree Class


TCustomVirtualStringTree Constructors
TCustomVirtualStringTree Class | Methods | Legend | Send Feedback

The constructors of the TCustomVirtualStringTree class are listed here.

Class

TCustomVirtualStringTree Class

Legend

Constructor
public
virtual

Links
TCustomVirtualStringTree Class, Methods, Legend


TCustomVirtualStringTree.Create Constructor
TCustomVirtualStringTree Constructors | TCustomVirtualStringTree Class | Send Feedback

Constructor of the control

Pascal
constructor Create(AOwner: TComponent); override;
Description

The constructor initializes certain properties to their default values.

Group

TCustomVirtualStringTree Constructors

Links
TCustomVirtualStringTree Constructors, TCustomVirtualStringTree Class


TCustomVirtualStringTree Properties
TCustomVirtualStringTree Class | Properties | Legend | Send Feedback

The properties of the TCustomVirtualStringTree class are listed here.

Class

TCustomVirtualStringTree Class

Legend

Property
protected
read only
public

Links
TCustomVirtualStringTree Class, Properties, Legend


TCustomVirtualStringTree.DefaultText Property
TCustomVirtualStringTree Properties | TCustomVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property DefaultText: UnicodeString;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TCustomVirtualStringTree Properties

Links
TCustomVirtualStringTree Properties, TCustomVirtualStringTree Class


TCustomVirtualStringTree.EllipsisWidth Property
TCustomVirtualStringTree Properties | TCustomVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property EllipsisWidth: Integer;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TCustomVirtualStringTree Properties

Links
TCustomVirtualStringTree Properties, TCustomVirtualStringTree Class


TCustomVirtualStringTree.ImageText Property
TCustomVirtualStringTree Properties | TCustomVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property ImageText [Node: PVirtualNode; Kind: TVTImageKind; Column: TColumnIndex]: UnicodeString;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TCustomVirtualStringTree Properties

Links
TCustomVirtualStringTree Properties, TCustomVirtualStringTree Class


TCustomVirtualStringTree.Text Property
TCustomVirtualStringTree Properties | TCustomVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property Text [Node: PVirtualNode; Column: TColumnIndex]: UnicodeString;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TCustomVirtualStringTree Properties

Links
TCustomVirtualStringTree Properties, TCustomVirtualStringTree Class


TCustomVirtualStringTree.TreeOptions Property
TCustomVirtualStringTree Properties | TCustomVirtualStringTree Class | Send Feedback

Reference to the tree's options.

Pascal
property TreeOptions: TCustomStringTreeOptions;
Description

The tree options are one of the main switchs to modify a treeview's behavior. Virtual Treeview supports customizing tree options by descentants. This allows very fine adjustments for derived tree classes, including the decision which properties should be published. For more information about the base options see TCustomVirtualTreeOptions and its descentants.

Group

TCustomVirtualStringTree Properties

Links
TCustomVirtualStringTree Properties, TCustomVirtualStringTree Class


TCustomVirtualStringTree Events
Events | TCustomVirtualStringTree Class | Legend | Send Feedback

The events of the TCustomVirtualStringTree class are listed here.

Class

TCustomVirtualStringTree Class

Legend

Event
protected

Links
Events, TCustomVirtualStringTree Class, Legend


TCustomVirtualStringTree.OnDrawText Event
TCustomVirtualStringTree Events | TCustomVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnDrawText: TVTDrawTextEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TCustomVirtualStringTree Events

Links
TCustomVirtualStringTree Events, TCustomVirtualStringTree Class


TCustomVirtualStringTree.OnGetHint Event
TCustomVirtualStringTree Events | TCustomVirtualStringTree Class | Send Feedback

Virtual string tree event to query for a custom hint text.

Pascal
property OnGetHint: TVSTGetHintEvent;
Description

Write an event handler for this event to specify a custom hint for the passed node and column. The TextType will always be ttNormal. This event will only be fired if HintMode is not hmTooltip. The delay for hints can be set as usual: adjust the properties HintPause and HintShortPause of the global Application object.

Group

TCustomVirtualStringTree Events

Links
TCustomVirtualStringTree Events, TCustomVirtualStringTree Class


TCustomVirtualStringTree.OnGetText Event
TCustomVirtualStringTree Events | See Also | TCustomVirtualStringTree Class | Send Feedback

Virtual string tree event to query for a node's normal or static text.

Pascal
property OnGetText: TVSTGetTextEvent;
Description

This is one of the fundamental string tree events which must always be handled. The string tree will fire this event every time when it needs to know about the text of a specific node and column. This is mainly the case when the node appears in the visible area of the tree view (in other words it is not scrolled out of view) but also on some other occasions, including streaming, drag and drop and calculating the width of the node.

The node text is distinguished between two text types:

  • Normal text: If TextType is ttNormal return the main node caption for the specified column.
  • Static text: All text that you return when TextType is ttStatic will be displayed right beside the normal text (or left to it if the column's BidiMode is not bdLeftToRight, i.e. the column has right-to-left layout). Static text is used only for informational purposes; it cannot be selected or dragged and if the column is not wide enough to show all text it will not be shortened with an ellipsis (...) as normal text. The string tree will only query for static text if the StringOptions (see TreeOptions) include toShowStaticText. This is off by default.

When this event is fired the text parameter will always be initialized with the value of property DefaultText. To handle the event get your node data and then extract the string for the appropriate column and TextType.

Notes

Be sure that your event handler only contains absolutely necessary code. This event will be fired very often - easily a

few hundred times for medium sized trees with some columns defined when the tree is repainted completely.

For example it is far too slow to use Locate() on some Dataset, a database query result or table, and then get the text

from some TField. This may only work with in-memory tables or a client dataset. When you initialize your node data do

some caching and use these cached values to display the data.

See Also

OnPaintText

Group

TCustomVirtualStringTree Events

Links
TCustomVirtualStringTree Events, See Also, TCustomVirtualStringTree Class


TCustomVirtualStringTree.OnMeasureTextHeight Event
TCustomVirtualStringTree Events | TCustomVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnMeasureTextHeight: TVTMeasureTextEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TCustomVirtualStringTree Events

Links
TCustomVirtualStringTree Events, TCustomVirtualStringTree Class


TCustomVirtualStringTree.OnMeasureTextWidth Event
TCustomVirtualStringTree Events | TCustomVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnMeasureTextWidth: TVTMeasureTextEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TCustomVirtualStringTree Events

Links
TCustomVirtualStringTree Events, TCustomVirtualStringTree Class


TCustomVirtualStringTree.OnNewText Event
TCustomVirtualStringTree Events | See Also | TCustomVirtualStringTree Class | Send Feedback

Virtual string tree event to pass edited text.

Pascal
property OnNewText: TVSTNewTextEvent;
Description

A string tree will fire this event after a node has been edited successfully (not canceled with Escape). The event handler must store the new text in the node data.

This event will only be used for the default node caption editor. Other custom node editors may or may not use this event to pass their edited data to the application. Editing for the whole tree is only possible if the MiscOptions (see TreeOptions) include toEditable. If only certain columns or nodes should be editable write an event handler for OnEditing.

See Also

OnCreateEditor, OnEdited

Group

TCustomVirtualStringTree Events

Links
TCustomVirtualStringTree Events, See Also, TCustomVirtualStringTree Class


TCustomVirtualStringTree.OnPaintText Event
TCustomVirtualStringTree Events | See Also | TCustomVirtualStringTree Class | Send Feedback

Event to change text formatting for particular nodes.

Pascal
property OnPaintText: TVTPaintText;
Description

Write an event handler for this event to render nodes with different fonts, font sizes, styles or colors. According to the parameters each column of each node and even normal and static text can be painted in different ways.

Notes

The string tree view manages an internal width for each node's main column. This is done because computing this width is

quite costly and the width is needed on several occasions. If you change the font which is used to paint a node's text,

for example to bold face style, its width changes but the tree view does not know this - it still relies on its cached

node width. This may result in cut off selection rectangles among others.

Hence if the width of a node changes after its initialization because it is now formatted differently than before force a

recalculation of the node width by calling InvalidateNode (when the conditions for the changed formatting are met - not

in the event handler for OnPaintText).

See Also

Paint cycles and stages

Group

TCustomVirtualStringTree Events

Links
TCustomVirtualStringTree Events, See Also, TCustomVirtualStringTree Class


TCustomVirtualStringTree.OnShortenString Event
TCustomVirtualStringTree Events | TCustomVirtualStringTree Class | Send Feedback

String tree event for custom handling of string abbreviations.

Pascal
property OnShortenString: TVSTShortenStringEvent;
Description

If the text of a node does not fit into its cell (in grid mode) or is too wide for the width of the tree view it is being abbreviated with an ellipsis (...). By default the ellipsis is added to the end of the node text.

Occasionally you may want to shorten the node text at a different position, for example if the node text is a path string and not the last folder or filename should be cut off but rather some mid level folders if possible.

In the handler S must be processed (shortened) and returned in Result. If Done is set to true (default value is false) the tree view takes over the shortening. This is useful if not all nodes or columns need

Group

TCustomVirtualStringTree Events

Links
TCustomVirtualStringTree Events, TCustomVirtualStringTree Class


TCustomVirtualTreeOptions Class
Classes | Topics | TCustomVirtualTreeOptions Methods | TCustomVirtualTreeOptions Constructors | TCustomVirtualTreeOptions Properties | TCustomVirtualTreeOptions Constructors | Legend | TCustomVirtualTreeOptions Methods | TCustomVirtualTreeOptions Properties | Send Feedback

Organizes all tree options into subproperties for easier managment.

Pascal
TCustomVirtualTreeOptions = class(TPersistent);
Description

There are a lot of options available which control certain aspects of Virtual Treeview. Because there might only be at most 32 members in a published set and also for better overview these options have been splitted into several subsets, each related to a particular feature group like painting or node selection. With this implementation you can even derive an own option class and modify which options should be shown in Delphi's object inspector for your class.

Group

Classes

Members
TCustomVirtualTreeOptions Methods

AssignTo
Used to copy this option class to another option collection.

Topics

TCustomVirtualTreeOptions Methods
The methods of the TCustomVirtualTreeOptions class are listed here.
TCustomVirtualTreeOptions Constructors
The constructors of the TCustomVirtualTreeOptions class are listed here.
TCustomVirtualTreeOptions Properties
The properties of the TCustomVirtualTreeOptions class are listed here.

TCustomVirtualTreeOptions Constructors

Create
Constructor of the class.

TCustomVirtualTreeOptions Properties

AnimationOptions
Options related to animations.
AutoOptions
Options related to automatic actions.
ExportMode
Not documented.
MiscOptions
Options not related to any other category.
Owner
Owner tree to which the property class belongs.
PaintOptions
Options related to painting.
SelectionOptions
Options related to the way nodes can be selected.

Topics

TCustomVirtualTreeOptions Methods
The methods of the TCustomVirtualTreeOptions class are listed here.
TCustomVirtualTreeOptions Constructors
The constructors of the TCustomVirtualTreeOptions class are listed here.
TCustomVirtualTreeOptions Properties
The properties of the TCustomVirtualTreeOptions class are listed here.

TCustomVirtualTreeOptions Constructors

Create
Constructor of the class.

Legend

Method
public
virtual
Constructor
Property
protected
read only

TCustomVirtualTreeOptions Methods

AssignTo
Used to copy this option class to another option collection.

TCustomVirtualTreeOptions Properties

AnimationOptions
Options related to animations.
AutoOptions
Options related to automatic actions.
ExportMode
Not documented.
MiscOptions
Options not related to any other category.
Owner
Owner tree to which the property class belongs.
PaintOptions
Options related to painting.
SelectionOptions
Options related to the way nodes can be selected.

Class Hierarchy
  TCustomVirtualTreeOptions
File

VirtualTrees

Links
Classes, Topics, TCustomVirtualTreeOptions Methods, TCustomVirtualTreeOptions Constructors, TCustomVirtualTreeOptions Properties, TCustomVirtualTreeOptions Constructors, Legend, TCustomVirtualTreeOptions Methods, TCustomVirtualTreeOptions Properties


TCustomVirtualTreeOptions Methods
TCustomVirtualTreeOptions Class | Methods | Legend | Send Feedback

The methods of the TCustomVirtualTreeOptions class are listed here.

Class

TCustomVirtualTreeOptions Class

Legend

Method
public
virtual

Links
TCustomVirtualTreeOptions Class, Methods, Legend


TCustomVirtualTreeOptions.AssignTo Method
TCustomVirtualTreeOptions Methods | TCustomVirtualTreeOptions Class | Send Feedback

Used to copy this option class to another option collection.

Pascal
procedure AssignTo(Dest: TPersistent); override;
Description

This is the usual method to support streaming or simply copying of this class. To stay open for future enhancements in form of new descentants not Assign but AssignTo has been used. AssignTo is called by TPersistent if there is no Assign method.

Group

TCustomVirtualTreeOptions Methods

Links
TCustomVirtualTreeOptions Methods, TCustomVirtualTreeOptions Class


TCustomVirtualTreeOptions Constructors
TCustomVirtualTreeOptions Class | Methods | Legend | Send Feedback

The constructors of the TCustomVirtualTreeOptions class are listed here.

Class

TCustomVirtualTreeOptions Class

Legend

Constructor
public
virtual

Links
TCustomVirtualTreeOptions Class, Methods, Legend


TCustomVirtualTreeOptions.Create Constructor
TCustomVirtualTreeOptions Constructors | TCustomVirtualTreeOptions Class | Send Feedback

Constructor of the class.

Pascal
constructor Create(AOwner: TBaseVirtualTree); virtual;
Description

Used to assign default values to all sub lists.

Group

TCustomVirtualTreeOptions Constructors

Links
TCustomVirtualTreeOptions Constructors, TCustomVirtualTreeOptions Class


TCustomVirtualTreeOptions Properties
TCustomVirtualTreeOptions Class | Properties | Legend | Send Feedback

The properties of the TCustomVirtualTreeOptions class are listed here.

Class

TCustomVirtualTreeOptions Class

Legend

Property
protected
public
read only

Links
TCustomVirtualTreeOptions Class, Properties, Legend


TCustomVirtualTreeOptions.AnimationOptions Property
TCustomVirtualTreeOptions Properties | TCustomVirtualTreeOptions Class | Send Feedback

Options related to animations.

Pascal
property AnimationOptions: TVTAnimationOptions;
Description

These options can be used to switch certain animation effects in a tree.

Group

TCustomVirtualTreeOptions Properties

Links
TCustomVirtualTreeOptions Properties, TCustomVirtualTreeOptions Class


TCustomVirtualTreeOptions.AutoOptions Property
TCustomVirtualTreeOptions Properties | TCustomVirtualTreeOptions Class | Send Feedback

Options related to automatic actions.

Pascal
property AutoOptions: TVTAutoOptions;
Description

These options can be used to switch certain actions in a tree which happen automatically under certain circumstances.

Group

TCustomVirtualTreeOptions Properties

Links
TCustomVirtualTreeOptions Properties, TCustomVirtualTreeOptions Class


TCustomVirtualTreeOptions.ExportMode Property
TCustomVirtualTreeOptions Properties | TCustomVirtualTreeOptions Class | Send Feedback

Not documented.

Pascal
property ExportMode: TVTExportMode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TCustomVirtualTreeOptions Properties

Links
TCustomVirtualTreeOptions Properties, TCustomVirtualTreeOptions Class


TCustomVirtualTreeOptions.MiscOptions Property
TCustomVirtualTreeOptions Properties | TCustomVirtualTreeOptions Class | Send Feedback

Options not related to any other category.

Pascal
property MiscOptions: TVTMiscOptions;
Description

These options can be used to switch miscellanous aspects in a tree.

Group

TCustomVirtualTreeOptions Properties

Links
TCustomVirtualTreeOptions Properties, TCustomVirtualTreeOptions Class


TCustomVirtualTreeOptions.Owner Property
TCustomVirtualTreeOptions Properties | TCustomVirtualTreeOptions Class | Send Feedback

Owner tree to which the property class belongs.

Pascal
property Owner: TBaseVirtualTree;
Description

Owner tree to which the property class belongs.

Group

TCustomVirtualTreeOptions Properties

Links
TCustomVirtualTreeOptions Properties, TCustomVirtualTreeOptions Class


TCustomVirtualTreeOptions.PaintOptions Property
TCustomVirtualTreeOptions Properties | TCustomVirtualTreeOptions Class | Send Feedback

Options related to painting.

Pascal
property PaintOptions: TVTPaintOptions;
Description

These options can be used to switch visual aspects of a tree.

Group

TCustomVirtualTreeOptions Properties

Links
TCustomVirtualTreeOptions Properties, TCustomVirtualTreeOptions Class


TCustomVirtualTreeOptions.SelectionOptions Property
TCustomVirtualTreeOptions Properties | TCustomVirtualTreeOptions Class | Send Feedback

Options related to the way nodes can be selected.

Pascal
property SelectionOptions: TVTSelectionOptions;
Description

These options can be used to switch the way how nodes can be selected in a tree.

Group

TCustomVirtualTreeOptions Properties

Links
TCustomVirtualTreeOptions Properties, TCustomVirtualTreeOptions Class


TEnumFormatEtc Class
Classes | Topics | TEnumFormatEtc Methods | TEnumFormatEtc Constructors | TEnumFormatEtc Constructors | Legend | TEnumFormatEtc Methods | Send Feedback
TEnumFormatEtc = class(TInterfacedObject, IEnumFormatEtc);
Group

Classes

Members
TEnumFormatEtc Methods

Clone
Not documented.
Next
Not documented.
Reset
Not documented.
Skip
Not documented.

Topics

TEnumFormatEtc Methods
The methods of the TEnumFormatEtc class are listed here.
TEnumFormatEtc Constructors
The constructors of the TEnumFormatEtc class are listed here.

TEnumFormatEtc Constructors

Create
Not documented.

Topics

TEnumFormatEtc Methods
The methods of the TEnumFormatEtc class are listed here.
TEnumFormatEtc Constructors
The constructors of the TEnumFormatEtc class are listed here.

TEnumFormatEtc Constructors

Create
Not documented.

Legend

Method
public
Constructor

TEnumFormatEtc Methods

Clone
Not documented.
Next
Not documented.
Reset
Not documented.
Skip
Not documented.

Class Hierarchy
  TEnumFormatEtc
File

VirtualTrees

Links
Classes, Topics, TEnumFormatEtc Methods, TEnumFormatEtc Constructors, TEnumFormatEtc Constructors, Legend, TEnumFormatEtc Methods


TEnumFormatEtc Methods
TEnumFormatEtc Class | Methods | Legend | Send Feedback

The methods of the TEnumFormatEtc class are listed here.

Class

TEnumFormatEtc Class

Legend

Method
public

Links
TEnumFormatEtc Class, Methods, Legend
What do you think about this topic? Send feedback!


TEnumFormatEtc.Clone Method
TEnumFormatEtc Methods | TEnumFormatEtc Class | Send Feedback

Not documented.

Pascal
function Clone(out Enum: IEnumFormatEtc): HResult; stdcall;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TEnumFormatEtc Methods

Links
TEnumFormatEtc Methods, TEnumFormatEtc Class


TEnumFormatEtc.Next Method
TEnumFormatEtc Methods | TEnumFormatEtc Class | Send Feedback

Not documented.

Pascal
function Next(celt: Integer; out elt; pceltFetched: PLongint): HResult; stdcall;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TEnumFormatEtc Methods

Links
TEnumFormatEtc Methods, TEnumFormatEtc Class


TEnumFormatEtc.Reset Method
TEnumFormatEtc Methods | TEnumFormatEtc Class | Send Feedback

Not documented.

Pascal
function Reset: HResult; stdcall;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TEnumFormatEtc Methods

Links
TEnumFormatEtc Methods, TEnumFormatEtc Class


TEnumFormatEtc.Skip Method
TEnumFormatEtc Methods | TEnumFormatEtc Class | Send Feedback

Not documented.

Pascal
function Skip(celt: Integer): HResult; stdcall;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TEnumFormatEtc Methods

Links
TEnumFormatEtc Methods, TEnumFormatEtc Class


TEnumFormatEtc Constructors
TEnumFormatEtc Class | Methods | Legend | Send Feedback

The constructors of the TEnumFormatEtc class are listed here.

Class

TEnumFormatEtc Class

Legend

Constructor
public

Links
TEnumFormatEtc Class, Methods, Legend
What do you think about this topic? Send feedback!


TEnumFormatEtc.Create Constructor
TEnumFormatEtc Constructors | TEnumFormatEtc Class | Send Feedback

Not documented.

Pascal
constructor Create(Tree: TBaseVirtualTree; AFormatEtcArray: TFormatEtcArray);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TEnumFormatEtc Constructors

Links
TEnumFormatEtc Constructors, TEnumFormatEtc Class


TScrollBarOptions Class
Classes | Topics | TScrollBarOptions Methods | TScrollBarOptions Constructors | TScrollBarOptions Properties | TScrollBarOptions Constructors | Legend | TScrollBarOptions Methods | TScrollBarOptions Properties | Send Feedback
TScrollBarOptions = class(TPersistent);
Group

Classes

Members
TScrollBarOptions Methods

Assign
Not documented.
GetOwner
Not documented.

Topics

TScrollBarOptions Methods
The methods of the TScrollBarOptions class are listed here.
TScrollBarOptions Constructors
The constructors of the TScrollBarOptions class are listed here.
TScrollBarOptions Properties
The properties of the TScrollBarOptions class are listed here.

TScrollBarOptions Constructors

Create
Not documented.

TScrollBarOptions Properties

AlwaysVisible
Not documented.
HorizontalIncrement
Not documented.
ScrollBars
Not documented.
ScrollBarStyle
Not documented.
VerticalIncrement
Not documented.

Topics

TScrollBarOptions Methods
The methods of the TScrollBarOptions class are listed here.
TScrollBarOptions Constructors
The constructors of the TScrollBarOptions class are listed here.
TScrollBarOptions Properties
The properties of the TScrollBarOptions class are listed here.

TScrollBarOptions Constructors

Create
Not documented.

Legend

Method
public
virtual
protected
Constructor
Property
published

TScrollBarOptions Methods

Assign
Not documented.
GetOwner
Not documented.

TScrollBarOptions Properties

AlwaysVisible
Not documented.
HorizontalIncrement
Not documented.
ScrollBars
Not documented.
ScrollBarStyle
Not documented.
VerticalIncrement
Not documented.

Class Hierarchy
  TScrollBarOptions
File

VirtualTrees

Links
Classes, Topics, TScrollBarOptions Methods, TScrollBarOptions Constructors, TScrollBarOptions Properties, TScrollBarOptions Constructors, Legend, TScrollBarOptions Methods, TScrollBarOptions Properties


TScrollBarOptions Methods
TScrollBarOptions Class | Methods | Legend | Send Feedback

The methods of the TScrollBarOptions class are listed here.

Class

TScrollBarOptions Class

Legend

Method
public
virtual
protected

Links
TScrollBarOptions Class, Methods, Legend
What do you think about this topic? Send feedback!


TScrollBarOptions.Assign Method
TScrollBarOptions Methods | TScrollBarOptions Class | Send Feedback

Not documented.

Pascal
procedure Assign(Source: TPersistent); override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TScrollBarOptions Methods

Links
TScrollBarOptions Methods, TScrollBarOptions Class


TScrollBarOptions.GetOwner Method
TScrollBarOptions Methods | TScrollBarOptions Class | Send Feedback

Not documented.

Pascal
function GetOwner: TPersistent; override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TScrollBarOptions Methods

Links
TScrollBarOptions Methods, TScrollBarOptions Class


TScrollBarOptions Constructors
TScrollBarOptions Class | Methods | Legend | Send Feedback

The constructors of the TScrollBarOptions class are listed here.

Class

TScrollBarOptions Class

Legend

Constructor
public

Links
TScrollBarOptions Class, Methods, Legend
What do you think about this topic? Send feedback!


TScrollBarOptions.Create Constructor
TScrollBarOptions Constructors | TScrollBarOptions Class | Send Feedback

Not documented.

Pascal
constructor Create(AOwner: TBaseVirtualTree);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TScrollBarOptions Constructors

Links
TScrollBarOptions Constructors, TScrollBarOptions Class


TScrollBarOptions Properties
TScrollBarOptions Class | Properties | Legend | Send Feedback

The properties of the TScrollBarOptions class are listed here.

Class

TScrollBarOptions Class

Legend

Property
published

Links
TScrollBarOptions Class, Properties, Legend


TScrollBarOptions.AlwaysVisible Property
TScrollBarOptions Properties | TScrollBarOptions Class | Send Feedback

Not documented.

Pascal
property AlwaysVisible: Boolean;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TScrollBarOptions Properties

Links
TScrollBarOptions Properties, TScrollBarOptions Class


TScrollBarOptions.HorizontalIncrement Property
TScrollBarOptions Properties | TScrollBarOptions Class | Send Feedback

Not documented.

Pascal
property HorizontalIncrement: TVTScrollIncrement;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TScrollBarOptions Properties

Links
TScrollBarOptions Properties, TScrollBarOptions Class


TScrollBarOptions.ScrollBars Property
TScrollBarOptions Properties | TScrollBarOptions Class | Send Feedback

Not documented.

Pascal
property ScrollBars: TScrollStyle;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TScrollBarOptions Properties

Links
TScrollBarOptions Properties, TScrollBarOptions Class


TScrollBarOptions.ScrollBarStyle Property
TScrollBarOptions Properties | TScrollBarOptions Class | Send Feedback

Not documented.

Pascal
property ScrollBarStyle: TScrollBarStyle;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TScrollBarOptions Properties

Links
TScrollBarOptions Properties, TScrollBarOptions Class


TScrollBarOptions.VerticalIncrement Property
TScrollBarOptions Properties | TScrollBarOptions Class | Send Feedback

Not documented.

Pascal
property VerticalIncrement: TVTScrollIncrement;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TScrollBarOptions Properties

Links
TScrollBarOptions Properties, TScrollBarOptions Class


TStringEditLink Class
Classes | Topics | TStringEditLink Fields | TStringEditLink Methods | TStringEditLink Constructors | TStringEditLink Destructors | TStringEditLink Properties | TStringEditLink Constructors | TStringEditLink Destructors | TStringEditLink Fields | Legend | IVTEditLink Methods | TStringEditLink Properties | Send Feedback

TStringEditLink is the standard node editor of a TVirtualStringTree.

Pascal
TStringEditLink = class(TInterfacedObject, IVTEditLink);
Description

TStringEditLink implements the interface IVTEditLink. This is a simple node editor which wraps a TEdit and is not Unicode aware. A virtual string tree will use this node editor if the event OnCreateEditor is not handled and a node must be edited. After the node's text has been edited the event OnNewText will be fired and the application should replace the old text with the new and edited text.

The node editor instance will automatically be destroyed via reference counting when it is not needed anymore. Never destroy it explicitly - except when you know what you are doing.

Remarks

If you want to modify some aspects of how the node editor works, i.e. suppress some characters or initialize it with a

different text but the node's text, you can inherit your own class from TStringEditLink and return an instance of it in

the OnCreateEditor event.

Group

Classes

Members
IVTEditLink Methods

BeginEdit
This function will be called by the virtual tree when the editing starts.
CancelEdit
This function will be called by the virtual tree when the current editing is about to be cancelled.
EndEdit
This function will be called by the virtual tree when the current editing is being finished.
GetBounds
The virtual tree can use this function to get the current bounding rect of the node editor.
PrepareEdit
This function is called by a virtual tree to initialize the node editor.
ProcessMessage
This function is used to forward messages being directed to the virtual tree.
SetBounds
The virtual tree calls this function to initialize the bounding rectangle of the node editor.

TStringEditLink Class

BeginEdit
This function will be called by the virtual string tree when the editing starts.
CancelEdit
This function will be called by the virtual string tree when the current editing is about to be cancelled.
EndEdit
This function will be called by the virtual string tree when the current editing is being finished.
GetBounds
The virtual string tree uses this function to get the current bounding rect of the node editor.
PrepareEdit
This function is called by a virtual string tree to initialize the node editor.
ProcessMessage
This function is used to forward messages being directed to the virtual string tree.
SetBounds
The virtual string tree calls this function to initialize the bounding rect of the node editor.

Topics

IVTEditLink Methods
The methods of the IVTEditLink class are listed here.

TStringEditLink Class

TStringEditLink Fields
The fields of the TStringEditLink class are listed here.
TStringEditLink Methods
The methods of the TStringEditLink class are listed here.
TStringEditLink Constructors
The constructors of the TStringEditLink class are listed here.
TStringEditLink Destructors
The destructors of the TStringEditLink class are listed here.
TStringEditLink Properties
The properties of the TStringEditLink class are listed here.

TStringEditLink Fields
TStringEditLink Class

FAlignment
Not documented.
FColumn
The column of the node.
FNode
The node to be edited.
FStopping
Set to True when the edit link requests stopping the edit action.
FTextBounds
Smallest rectangle around the text.
FTree
A back reference to the tree calling.

TStringEditLink Constructors
TStringEditLink Class

Create
Constructor of the class.

TStringEditLink Destructors
TStringEditLink Class

Destroy
Destructor of the class.

TStringEditLink Properties
TStringEditLink Class

Edit
Not documented.

Topics

IVTEditLink Methods
The methods of the IVTEditLink class are listed here.

TStringEditLink Class

TStringEditLink Fields
The fields of the TStringEditLink class are listed here.
TStringEditLink Methods
The methods of the TStringEditLink class are listed here.
TStringEditLink Constructors
The constructors of the TStringEditLink class are listed here.
TStringEditLink Destructors
The destructors of the TStringEditLink class are listed here.
TStringEditLink Properties
The properties of the TStringEditLink class are listed here.

TStringEditLink Constructors
TStringEditLink Class

Create
Constructor of the class.

TStringEditLink Destructors
TStringEditLink Class

Destroy
Destructor of the class.

TStringEditLink Fields
TStringEditLink Class

FAlignment
Not documented.
FColumn
The column of the node.
FNode
The node to be edited.
FStopping
Set to True when the edit link requests stopping the edit action.
FTextBounds
Smallest rectangle around the text.
FTree
A back reference to the tree calling.

Legend

Method
public
virtual
Data Member
protected
Constructor
Property

IVTEditLink Methods

BeginEdit
This function will be called by the virtual tree when the editing starts.
CancelEdit
This function will be called by the virtual tree when the current editing is about to be cancelled.
EndEdit
This function will be called by the virtual tree when the current editing is being finished.
GetBounds
The virtual tree can use this function to get the current bounding rect of the node editor.
PrepareEdit
This function is called by a virtual tree to initialize the node editor.
ProcessMessage
This function is used to forward messages being directed to the virtual tree.
SetBounds
The virtual tree calls this function to initialize the bounding rectangle of the node editor.

TStringEditLink Class

BeginEdit
This function will be called by the virtual string tree when the editing starts.
CancelEdit
This function will be called by the virtual string tree when the current editing is about to be cancelled.
EndEdit
This function will be called by the virtual string tree when the current editing is being finished.
GetBounds
The virtual string tree uses this function to get the current bounding rect of the node editor.
PrepareEdit
This function is called by a virtual string tree to initialize the node editor.
ProcessMessage
This function is used to forward messages being directed to the virtual string tree.
SetBounds
The virtual string tree calls this function to initialize the bounding rect of the node editor.

TStringEditLink Properties
TStringEditLink Class

Edit
Not documented.

Class Hierarchy
  TStringEditLinkTStringEditLink
File

VirtualTrees

Links
Classes, Topics, TStringEditLink Fields, TStringEditLink Methods, TStringEditLink Constructors, TStringEditLink Destructors, TStringEditLink Properties, TStringEditLink Constructors, TStringEditLink Destructors, TStringEditLink Fields, Legend, IVTEditLink Methods, TStringEditLink Properties


TStringEditLink Fields
Fields | TStringEditLink Class | Legend | Send Feedback

The fields of the TStringEditLink class are listed here.

Class

TStringEditLink Class

Legend

Data Member
protected

Links
Fields, TStringEditLink Class, Legend
What do you think about this topic? Send feedback!


TStringEditLink.FAlignment Field
TStringEditLink Fields | TStringEditLink Class | Send Feedback

Not documented.

Pascal
FAlignment: TAlignment;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TStringEditLink Fields

Links
TStringEditLink Fields, TStringEditLink Class


TStringEditLink.FColumn Field
TStringEditLink Fields | TStringEditLink Class | Send Feedback

The column of the node.

Pascal
FColumn: TColumnIndex;
Group

TStringEditLink Fields

Links
TStringEditLink Fields, TStringEditLink Class


TStringEditLink.FNode Field
TStringEditLink Fields | TStringEditLink Class | Send Feedback

The node to be edited.

Pascal
FNode: PVirtualNode;
Group

TStringEditLink Fields

Links
TStringEditLink Fields, TStringEditLink Class


TStringEditLink.FStopping Field
TStringEditLink Fields | TStringEditLink Class | Send Feedback

Set to True when the edit link requests stopping the edit action.

Pascal
FStopping: Boolean;
Group

TStringEditLink Fields

Links
TStringEditLink Fields, TStringEditLink Class


TStringEditLink.FTextBounds Field
TStringEditLink Fields | TStringEditLink Class | Send Feedback

Smallest rectangle around the text.

Pascal
FTextBounds: TRect;
Group

TStringEditLink Fields

Links
TStringEditLink Fields, TStringEditLink Class


TStringEditLink.FTree Field
TStringEditLink Fields | TStringEditLink Class | Send Feedback

A back reference to the tree calling.

Pascal
FTree: TCustomVirtualStringTree;
Group

TStringEditLink Fields

Links
TStringEditLink Fields, TStringEditLink Class


TStringEditLink Methods
TStringEditLink Class | Methods | Legend | Send Feedback

The methods of the TStringEditLink class are listed here.

Class

TStringEditLink Class

Legend

Method
public
virtual

Links
TStringEditLink Class, Methods, Legend
What do you think about this topic? Send feedback!


TStringEditLink.BeginEdit Method
TStringEditLink Methods | TStringEditLink Class | Send Feedback

This function will be called by the virtual string tree when the editing starts.

Pascal
function BeginEdit: Boolean; virtual; stdcall;
Description

Please see interface IVTEditLink for a detailed explanation of this interface function.

Group

TStringEditLink Methods

Links
TStringEditLink Methods, TStringEditLink Class


TStringEditLink.CancelEdit Method
TStringEditLink Methods | TStringEditLink Class | Send Feedback

This function will be called by the virtual string tree when the current editing is about to be cancelled.

Pascal
function CancelEdit: Boolean; virtual; stdcall;
Description

Please see interface IVTEditLink for a detailed explanation of this interface function.

Group

TStringEditLink Methods

Links
TStringEditLink Methods, TStringEditLink Class


TStringEditLink.EndEdit Method
TStringEditLink Methods | TStringEditLink Class | Send Feedback

This function will be called by the virtual string tree when the current editing is being finished.

Pascal
function EndEdit: Boolean; virtual; stdcall;
Description

Please see interface IVTEditLink for a detailed explanation of this interface function.

Group

TStringEditLink Methods

Links
TStringEditLink Methods, TStringEditLink Class


TStringEditLink.GetBounds Method
TStringEditLink Methods | TStringEditLink Class | Send Feedback

The virtual string tree uses this function to get the current bounding rect of the node editor.

Pascal
function GetBounds: TRect; virtual; stdcall;
Description

Please see interface IVTEditLink for a detailed explanation of this interface function.

Group

TStringEditLink Methods

Links
TStringEditLink Methods, TStringEditLink Class


TStringEditLink.PrepareEdit Method
TStringEditLink Methods | TStringEditLink Class | Send Feedback

This function is called by a virtual string tree to initialize the node editor.

Pascal
function PrepareEdit(Tree: TBaseVirtualTree; Node: PVirtualNode; Column: TColumnIndex): Boolean; virtual; stdcall;
Description

Please see interface IVTEditLink for a detailed explanation of this interface function.

Group

TStringEditLink Methods

Links
TStringEditLink Methods, TStringEditLink Class


TStringEditLink.ProcessMessage Method
TStringEditLink Methods | TStringEditLink Class | Send Feedback

This function is used to forward messages being directed to the virtual string tree.

Pascal
procedure ProcessMessage(var Message: TMessage); virtual; stdcall;
Description

Please see interface IVTEditLink for a detailed explanation of this interface function.

Group

TStringEditLink Methods

Links
TStringEditLink Methods, TStringEditLink Class


TStringEditLink.SetBounds Method
TStringEditLink Methods | TStringEditLink Class | Send Feedback

The virtual string tree calls this function to initialize the bounding rect of the node editor.

Pascal
procedure SetBounds(R: TRect); virtual; stdcall;
Description

Please see interface IVTEditLink for a detailed explanation of this interface function.

Group

TStringEditLink Methods

Links
TStringEditLink Methods, TStringEditLink Class


TStringEditLink Constructors
TStringEditLink Class | Methods | Legend | Send Feedback

The constructors of the TStringEditLink class are listed here.

Class

TStringEditLink Class

Legend

Constructor
public
virtual

Links
TStringEditLink Class, Methods, Legend
What do you think about this topic? Send feedback!


TStringEditLink.Create Constructor
TStringEditLink Constructors | TStringEditLink Class | Send Feedback

Constructor of the class.

Pascal
constructor Create; virtual;
Description

The constructor of the edit link also creates an instance of a simple node editor control. It is by default hidden and first displayed if the tree directs the link to do so.

Group

TStringEditLink Constructors

Links
TStringEditLink Constructors, TStringEditLink Class


TStringEditLink Destructors
TStringEditLink Class | Methods | Legend | Send Feedback

The destructors of the TStringEditLink class are listed here.

Class

TStringEditLink Class

Legend

Destructor
public
virtual

Links
TStringEditLink Class, Methods, Legend
What do you think about this topic? Send feedback!


TStringEditLink.Destroy Destructor
TStringEditLink Destructors | TStringEditLink Class | Send Feedback

Destructor of the class.

Pascal
destructor Destroy; override;
Description

Frees the internal editor control.

Group

TStringEditLink Destructors

Links
TStringEditLink Destructors, TStringEditLink Class


TStringEditLink Properties
TStringEditLink Class | Properties | Legend | Send Feedback

The properties of the TStringEditLink class are listed here.

Class

TStringEditLink Class

Legend

Property
public

Links
TStringEditLink Class, Properties, Legend


TStringEditLink.Edit Property
TStringEditLink Properties | TStringEditLink Class | Send Feedback

Not documented.

Pascal
property Edit: TVTEdit;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TStringEditLink Properties

Links
TStringEditLink Properties, TStringEditLink Class


TStringTreeOptions Class
Classes | Topics | TStringTreeOptions Properties | TCustomVirtualTreeOptions Constructors | Legend | TCustomVirtualTreeOptions Methods | TCustomVirtualTreeOptions Properties | Send Feedback

Options class used in the string tree and its descentants.

Pascal
TStringTreeOptions = class(TCustomStringTreeOptions);
Description

This options class publishes all properties inherited from its ancestor and does not add any further functionality.

Group

Classes

Members
TCustomVirtualTreeOptions Methods

AssignTo
Used to copy this option class to another option collection.

TCustomStringTreeOptions Class

AssignTo
Used to copy the options class.

Topics

TCustomVirtualTreeOptions Methods
The methods of the TCustomVirtualTreeOptions class are listed here.
TCustomVirtualTreeOptions Constructors
The constructors of the TCustomVirtualTreeOptions class are listed here.
TCustomVirtualTreeOptions Properties
The properties of the TCustomVirtualTreeOptions class are listed here.

TCustomStringTreeOptions Class

TCustomStringTreeOptions Methods
The methods of the TCustomStringTreeOptions class are listed here.
TCustomStringTreeOptions Constructors
The constructors of the TCustomStringTreeOptions class are listed here.
TCustomStringTreeOptions Properties
The properties of the TCustomStringTreeOptions class are listed here.

TStringTreeOptions Class

TStringTreeOptions Properties
The properties of the TStringTreeOptions class are listed here.

TCustomVirtualTreeOptions Constructors

Create
Constructor of the class.

TCustomStringTreeOptions Class

Create
The constructor of the class.

TCustomVirtualTreeOptions Properties

AnimationOptions
Options related to animations.
AutoOptions
Options related to automatic actions.
ExportMode
Not documented.
MiscOptions
Options not related to any other category.
Owner
Owner tree to which the property class belongs.
PaintOptions
Options related to painting.
SelectionOptions
Options related to the way nodes can be selected.

TCustomStringTreeOptions Class

StringOptions
The new options introduced by the class.

TStringTreeOptions Class

AnimationOptions
Options related to animations.
AutoOptions
Options related to automatic actions.
ExportMode
Not documented.
MiscOptions
Options not related to any other category.
PaintOptions
Options related to painting.
SelectionOptions
Options related to the way nodes can be selected.
StringOptions
The new options introduced by the class.

Topics

TCustomVirtualTreeOptions Methods
The methods of the TCustomVirtualTreeOptions class are listed here.
TCustomVirtualTreeOptions Constructors
The constructors of the TCustomVirtualTreeOptions class are listed here.
TCustomVirtualTreeOptions Properties
The properties of the TCustomVirtualTreeOptions class are listed here.

TCustomStringTreeOptions Class

TCustomStringTreeOptions Methods
The methods of the TCustomStringTreeOptions class are listed here.
TCustomStringTreeOptions Constructors
The constructors of the TCustomStringTreeOptions class are listed here.
TCustomStringTreeOptions Properties
The properties of the TCustomStringTreeOptions class are listed here.

TStringTreeOptions Class

TStringTreeOptions Properties
The properties of the TStringTreeOptions class are listed here.

TCustomVirtualTreeOptions Constructors

Create
Constructor of the class.

TCustomStringTreeOptions Class

Create
The constructor of the class.

Legend

Method
public
virtual
Constructor
Property
protected
read only
published

TCustomVirtualTreeOptions Methods

AssignTo
Used to copy this option class to another option collection.

TCustomStringTreeOptions Class

AssignTo
Used to copy the options class.

TCustomVirtualTreeOptions Properties

AnimationOptions
Options related to animations.
AutoOptions
Options related to automatic actions.
ExportMode
Not documented.
MiscOptions
Options not related to any other category.
Owner
Owner tree to which the property class belongs.
PaintOptions
Options related to painting.
SelectionOptions
Options related to the way nodes can be selected.

TCustomStringTreeOptions Class

StringOptions
The new options introduced by the class.

TStringTreeOptions Class

AnimationOptions
Options related to animations.
AutoOptions
Options related to automatic actions.
ExportMode
Not documented.
MiscOptions
Options not related to any other category.
PaintOptions
Options related to painting.
SelectionOptions
Options related to the way nodes can be selected.
StringOptions
The new options introduced by the class.

Class Hierarchy
  TStringTreeOptionsTStringTreeOptionsTStringTreeOptions
File

VirtualTrees

Links
Classes, Topics, TStringTreeOptions Properties, TCustomVirtualTreeOptions Constructors, Legend, TCustomVirtualTreeOptions Methods, TCustomVirtualTreeOptions Properties


TStringTreeOptions Properties
TStringTreeOptions Class | Properties | Legend | Send Feedback

The properties of the TStringTreeOptions class are listed here.

Class

TStringTreeOptions Class

Legend

Property
published

Links
TStringTreeOptions Class, Properties, Legend


TStringTreeOptions.AnimationOptions Property
TStringTreeOptions Properties | TStringTreeOptions Class | Send Feedback

Options related to animations.

Pascal
property AnimationOptions: TVTAnimationOptions;
Description

These options can be used to switch certain animation effects in a tree.

Group

TStringTreeOptions Properties

Links
TStringTreeOptions Properties, TStringTreeOptions Class


TStringTreeOptions.AutoOptions Property
TStringTreeOptions Properties | TStringTreeOptions Class | Send Feedback

Options related to automatic actions.

Pascal
property AutoOptions: TVTAutoOptions;
Description

These options can be used to switch certain actions in a tree which happen automatically under certain circumstances.

Group

TStringTreeOptions Properties

Links
TStringTreeOptions Properties, TStringTreeOptions Class


TStringTreeOptions.ExportMode Property
TStringTreeOptions Properties | TStringTreeOptions Class | Send Feedback

Not documented.

Pascal
property ExportMode: TVTExportMode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TStringTreeOptions Properties

Links
TStringTreeOptions Properties, TStringTreeOptions Class


TStringTreeOptions.MiscOptions Property
TStringTreeOptions Properties | TStringTreeOptions Class | Send Feedback

Options not related to any other category.

Pascal
property MiscOptions: TVTMiscOptions;
Description

These options can be used to switch miscellanous aspects in a tree.

Group

TStringTreeOptions Properties

Links
TStringTreeOptions Properties, TStringTreeOptions Class


TStringTreeOptions.PaintOptions Property
TStringTreeOptions Properties | TStringTreeOptions Class | Send Feedback

Options related to painting.

Pascal
property PaintOptions: TVTPaintOptions;
Description

These options can be used to switch visual aspects of a tree.

Group

TStringTreeOptions Properties

Links
TStringTreeOptions Properties, TStringTreeOptions Class


TStringTreeOptions.SelectionOptions Property
TStringTreeOptions Properties | TStringTreeOptions Class | Send Feedback

Options related to the way nodes can be selected.

Pascal
property SelectionOptions: TVTSelectionOptions;
Description

These options can be used to switch the way how nodes can be selected in a tree.

Group

TStringTreeOptions Properties

Links
TStringTreeOptions Properties, TStringTreeOptions Class


TStringTreeOptions.StringOptions Property
TStringTreeOptions Properties | TStringTreeOptions Class | Send Feedback

The new options introduced by the class.

Pascal
property StringOptions: TVTStringOptions;
Description

StringOptions provides access to the newly introduced options by which the base class is extended.

Group

TStringTreeOptions Properties

Links
TStringTreeOptions Properties, TStringTreeOptions Class


TVirtualDrawTree Class
Classes | Topics | TVirtualDrawTree Methods | TVirtualDrawTree Properties | TVirtualDrawTree Events | TBaseVirtualTree Constructors | TBaseVirtualTree Destructors | TBaseVirtualTree Events | Legend | TBaseVirtualTree Methods | TBaseVirtualTree Properties | Send Feedback

Descendant of TBaseVirtualTree, which passes node paint events through to the application (similar to a draw grid)

Pascal
TVirtualDrawTree = class(TCustomVirtualDrawTree);
Description

This tree implementation enhances the base tree to allow the application to draw its own stuff into the tree window.

Group

Classes

Members
TBaseVirtualTree Methods

AbsoluteIndex
Reads the overall index of a node.
AddChild
Creates and adds a new child node to given node.
AddFromStream
Adds the content from the given stream to the given node.
AddToSelection
This is the overview for the AddToSelection method overload.
AdjustImageBorder
Depending on the width of the image list as well as the given bidi mode R must be adjusted.
AdjustPaintCellRect
Used in descentants to modify the clip rectangle of the current column while painting a certain node.
AdjustPanningCursor
Loads the proper cursor which indicates into which direction scrolling is done.
AdviseChangeEvent
Used to register a delayed change event.
AllocateInternalDataArea
Registration method to allocate tree internal data per node.
Animate
Support method for animated actions in the tree view.
Assign
Used to copy properties from another Virtual Treeview.
BeginDrag
Starts an OLE drag'n drop operation.
BeginSynch
Enters the tree into a special synchronized mode.
BeginUpdate
Locks the tree view to perform several update operations.
CalculateSelectionRect
Support method for draw selection.
CanAutoScroll
Determines whether the tree can currently auto scroll its window.
CancelCutOrCopy
Canceles any pending cut or copy clipboard operation.
CancelEditNode
Cancel the current edit operation, if there is any.
CancelOperation
Not documented.
CanEdit
Determines whether a node can be edited or not.
CanFocus
Support method to determine whether the tree window can receive the input focus.
CanShowDragImage
Determines whether a drag image should be shown.
CanSplitterResizeNode
Not documented.
Change
Central method called when a node's selection state changes.
ChangeScale
Helper method called by the VCL when control resizing is due.
CheckedNodes
Not documented.
CheckParentCheckState
Helper method for recursive check state changes.
ChildNodes
Not documented.
Clear
Clears the tree and removes all nodes.
ClearChecked
Not documented.
ClearSelection
Removes all nodes from the current selection.
ClearTempCache
Helper method to clear the internal temporary node cache.
ColumnIsEmpty
Used to determine if a cell is considered as being empty.
ComputeRTLOffset
Not documented.
CopyTo
This is the overview for the CopyTo method overload.
CopyToClipBoard
Copies all currently selected nodes to the clipboard.
CountLevelDifference
Determines the level difference of two nodes.
CountVisibleChildren
Determines the number of visible child nodes of the given node.
CreateParams
Prepares the creation of the controls window handle.
CreateWnd
Initializes data, which depends on the window handle.
CutCopyNodes
Not documented.
CutToClipBoard
Copies the currently selected nodes to the clipboard and removes them once a consumer has taken the data.
DefineProperties
Helper method to customize loading and saving persistent tree data.
DeleteChildren
Removes all child nodes from the given node.
DeleteNode
Removes the given node from the tree.
DeleteSelectedNodes
Removes all currently selected nodes form the tree.
DetermineDropMode
Not documented.
DetermineHiddenChildrenFlag
Determines whether all children of a given node are hidden.
DetermineHiddenChildrenFlagAllNodes
Determines whether all children of all nodes are hidden.
DetermineHitPositionLTR
Determines the hit position within a node with left-to-right and right-to-left orientation.
DetermineHitPositionRTL
Determines the hit position within a node with left-to-right and right-to-left orientation.
DetermineLineImageAndSelectLevel
Not documented.
DetermineNextCheckState
Not documented.
DetermineScrollDirections
Not documented.
DoAdvancedHeaderDraw
Not documented.
DoAfterCellPaint
Not documented.
DoAfterItemErase
Not documented.
DoAfterItemPaint
Not documented.
DoAfterPaint
Not documented.
DoAutoScroll
Enables or disables the auto scroll timer.
DoBeforeCellPaint
Not documented.
DoBeforeDrag
Not documented.
DoBeforeDrawLineImage
Not documented.
DoBeforeItemErase
Not documented.
DoBeforeItemPaint
Not documented.
DoBeforePaint
Not documented.
DoCancelEdit
Called when the tree should stop editing without accepting changed values.
DoCanEdit
Not documented.
DoCanSplitterResizeNode
Not documented.
DoChange
Not documented.
DoCheckClick
Not documented.
DoChecked
Not documented.
DoChecking
Not documented.
DoCollapsed
Not documented.
DoCollapsing
Not documented.
DoColumnClick
Not documented.
DoColumnDblClick
Not documented.
DoColumnResize
Not documented.
DoCompare
Not documented.
DoCreateDataObject
Not documented.
DoCreateDragManager
Not documented.
DoCreateEditor
Not documented.
DoDragDrop
Not documented.
DoDragExpand
Not documented.
DoDragging
Internal method which handles drag' drop.
DoDragOver
Not documented.
DoEdit
Initiates editing of the currently set focused column and edit node.
DoEndDrag
Not documented.
DoEndEdit
Stops the current edit operation and takes over the new content.
DoEndOperation
Not documented.
DoExpanded
Not documented.
DoExpanding
Not documented.
DoFocusChange
Not documented.
DoFocusChanging
Not documented.
DoFocusNode
Internal method to set the focused node.
DoFreeNode
Not documented.
DoGetAnimationType
Determines the type of animation to be used.
DoGetCellContentMargin
Not documented.
DoGetCursor
Not documented.
DoGetHeaderCursor
Not documented.
DoGetImageIndex
Not documented.
DoGetImageText
Not documented.
DoGetLineStyle
Not documented.
DoGetNodeHint
Not documented.
DoGetNodeTooltip
Not documented.
DoGetNodeWidth
Overridable method which always retuns 0.
DoGetPopupMenu
Overridable method which triggers the OnGetPopup event.
DoGetUserClipboardFormats
Not documented.
DoHeaderClick
Not documented.
DoHeaderDblClick
Not documented.
DoHeaderDragged
Not documented.
DoHeaderDraggedOut
Not documented.
DoHeaderDragging
Not documented.
DoHeaderDraw
Not documented.
DoHeaderDrawQueryElements
Not documented.
DoHeaderMouseDown
Not documented.
DoHeaderMouseMove
Not documented.
DoHeaderMouseUp
Not documented.
DoHotChange
Not documented.
DoIncrementalSearch
Not documented.
DoInitChildren
Not documented.
DoInitNode
Not documented.
DoKeyAction
Not documented.
DoLoadUserData
Not documented.
DoMeasureItem
Not documented.
DoNodeClick
Not documented.
DoNodeCopied
Not documented.
DoNodeCopying
Not documented.
DoNodeDblClick
Not documented.
DoNodeHeightDblClickResize
Not documented.
DoNodeHeightTracking
Not documented.
DoNodeMoved
Not documented.
DoNodeMoving
Not documented.
DoPaintBackground
Not documented.
DoPaintDropMark
Overridable method which draws the small line on top of a nodes image depending on the current drop state.
DoPaintNode
Overridable method which does nothing.
DoPopupMenu
Overridable method which shows the popup menu for the given node.
DoRenderOLEData
Not documented.
DoReset
Not documented.
DoSaveUserData
Not documented.
DoScroll
Overridable method which triggers the OnScroll event.
DoSetOffsetXY
Internal core routine to set the tree's scroll position.
DoShowScrollbar
Not documented.
DoStartDrag
Not documented.
DoStartOperation
Not documented.
DoStateChange
Not documented.
DoStructureChange
Not documented.
DoTimerScroll
Callback method which is triggered whenever the scroll timer fires.
DoUpdating
Not documented.
DoValidateCache
Not documented.
DragAndDrop
Not documented.
DragCanceled
Called by the VCL when a drag'n drop operation was canceled by the user.
DragDrop
Helper method, which is used when a drag operation is finished.
DragEnter
Not documented.
DragFinished
Called when a drag operation is finished (accepted or cancelled).
Dragging
Returns true if a drag'n drop operation is in progress.
DragLeave
Not documented.
DragOver
Not documented.
DrawDottedHLine
Not documented.
DrawDottedVLine
Not documented.
EditNode
Starts editing the given node if allowed to.
EndEditNode
Stops node editing if it was started before.
EndOperation
Not documented.
EndSynch
Counterpart to BeginSynch.
EndUpdate
Resets the update lock set by BeginUpdate.
ExecuteAction
Not documented.
FindNodeInSelection
Helper method to find the given node in the current selection.
FinishChunkHeader
Not documented.
FinishCutOrCopy
Stops any pending cut or copy clipboard operation.
FlushClipboard
Renders all pending clipboard data.
FontChanged
Not documented.
FullCollapse
Collapses all nodes in the tree.
FullExpand
Expands all nodes in the tree.
GetBorderDimensions
Not documented.
GetCheckImage
Not documented.
GetCheckImageListFor
Not documented.
GetColumnClass
Returns the class to be used to manage columns in the tree.
GetControlsAlignment
Not documented.
GetDisplayRect
Not documented.
GetEffectivelyFiltered
Not documented.
GetEffectivelyVisible
Not documented.
GetFirst
Group of node navigation functions.
GetFirstChecked
Not documented.
GetFirstChild
Group of node navigation functions.
GetFirstCutCopy
Group of node navigation functions.
GetFirstInitialized
Group of node navigation functions.
GetFirstLeaf
Not documented.
GetFirstLevel
Not documented.
GetFirstNoInit
Group of node navigation functions.
GetFirstSelected
Group of node navigation functions.
GetFirstVisible
Group of node navigation functions.
GetFirstVisibleChild
Not documented.
GetFirstVisibleChildNoInit
Not documented.
GetFirstVisibleNoInit
Group of node navigation functions.
GetHeaderClass
Returns the header class to be used by the tree.
GetHintWindowClass
Not documented.
GetHitTestInfoAt
Returns information about the node at the given position.
GetImageIndex
Not documented.
GetLast
Not documented.
GetLastChild
GetLastChildNoInit
GetLastInitialized
Not documented.
GetLastNoInit
Not documented.
GetLastVisible
Not documented.
GetLastVisibleChild
Not documented.
GetLastVisibleChildNoInit
Not documented.
GetLastVisibleNoInit
Not documented.
GetMaxColumnWidth
Not documented.
GetMaxRightExtend
Determines the maximum with of the currently visible part of the tree.
GetNativeClipboardFormats
Used to let descendants and the application add their own supported clipboard formats.
GetNext
Not documented.
GetNextChecked
This is the overview for the GetNextChecked method overload.
GetNextCutCopy
Not documented.
GetNextInitialized
Not documented.
GetNextLeaf
Not documented.
GetNextLevel
Not documented.
GetNextNoInit
Not documented.
GetNextSelected
Not documented.
GetNextSibling
GetNextVisible
Not documented.
GetNextVisibleNoInit
Not documented.
GetNextVisibleSibling
Not documented.
GetNextVisibleSiblingNoInit
Not documented.
GetNodeAt
This is the overview for the GetNodeAt method overload.
GetNodeData
Returns the address of the user data area of the given node.
GetNodeLevel
Returns the indentation level of the given node.
GetOperationCanceled
Not documented.
GetOptionsClass
Customization helper to determine which options class the tree should use.
GetPrevious
Not documented.
GetPreviousChecked
Not documented.
GetPreviousCutCopy
Not documented.
GetPreviousInitialized
Not documented.
GetPreviousLeaf
Not documented.
GetPreviousLevel
Not documented.
GetPreviousNoInit
Not documented.
GetPreviousSelected
Not documented.
GetPreviousSibling
GetPreviousVisible
Not documented.
GetPreviousVisibleNoInit
Not documented.
GetPreviousVisibleSibling
Not documented.
GetPreviousVisibleSiblingNoInit
Not documented.
GetSortedCutCopySet
Returns a sorted list of nodes, which are marked for s cut or copy clipboard operation.
GetSortedSelection
Returns a sorted list of all currently selected nodes.
GetTextInfo
Not documented.
GetTreeFromDataObject
OLE drag'n drop and clipboard support method.
GetTreeRect
Returns the size of the virtual tree image.
GetVisibleParent
Not documented.
HandleHotTrack
Not documented.
HandleIncrementalSearch
Not documented.
HandleMouseDblClick
Not documented.
HandleMouseDown
Not documented.
HandleMouseUp
Not documented.
HasAsParent
Determines if the given node has got another node as one of its parents.
HasImage
Not documented.
HasPopupMenu
Determines whether there is a pop up menu assigned to the tree.
InitChildren
Not documented.
InitializedNodes
Not documented.
InitNode
Not documented.
InsertNode
Inserts a new node and returns it to the caller.
InternalAddFromStream
Not documented.
InternalAddToSelection
This is the overview for the InternalAddToSelection method overload.
InternalCacheNode
Not documented.
InternalClearSelection
Not documented.
InternalConnectNode
Not documented.
InternalData
Returns the address of the internal data for a tree class.
InternalDisconnectNode
Not documented.
InternalRemoveFromSelection
Not documented.
InvalidateCache
Empties the internal node cache and marks it as invalid.
InvalidateChildren
Invalidates all children of the given node.
InvalidateColumn
Invalidates the client area part of a column.
InvalidateNode
Invalidates the given node.
InvalidateToBottom
Invalidates the client area starting with the top position of the given node.
InvertSelection
Inverts the current selection.
IsEditing
Tells the caller whether the tree is currently in edit mode.
IsMouseSelecting
Tell the caller whether the tree is currently in draw selection mode.
IterateSubtree
Iterator method to go through all nodes of a given sub tree.
LeafNodes
Not documented.
LevelNodes
Not documented.
Loaded
Not documented.
LoadFromFile
Loads previously streamed out tree data back in again.
LoadFromStream
Loads previously streamed out tree data back in again.
MainColumnChanged
Not documented.
MarkCutCopyNodes
Not documented.
MeasureItemHeight
Not documented.
MouseMove
Not documented.
MoveTo
This is the overview for the MoveTo method overload.
Nodes
Not documented.
NoInitNodes
Not documented.
Notification
Not documented.
OriginalWMNCPaint
Not documented.
Paint
TControl's Paint method used here to display the tree.
PaintCheckImage
Not documented.
PaintImage
Not documented.
PaintNodeButton
Not documented.
PaintSelectionRectangle
Not documented.
PaintTree
Main paint routine for the tree image.
PaintTreeLines
Not documented.
PanningWindowProc
Not documented.
PasteFromClipboard
Inserts the content of the clipboard into the tree.
PrepareCell
This method is called immediately before a cell's content is drawn und is responsible to paint selection colors etc.
PrepareDragImage
Not documented.
Print
Not documented.
ProcessDrop
Helper method to ease OLE drag'n drop operations.
ProcessOLEData
Takes serialized OLE tree data and reconstructs the former structure.
ReadChunk
Not documented.
ReadNode
Not documented.
RedirectFontChangeEvent
Not documented.
ReinitChildren
Forces all child nodes of Node to be reinitialized.
ReinitNode
Forces a reinitialization of the given node.
RemoveFromSelection
Removes the given node from the current selection.
RenderOLEData
Renders pending OLE data.
RepaintNode
Causes the treeview to repaint the given node.
ResetNode
Resets the given node to uninitialized.
ResetRangeAnchor
Not documented.
RestoreFontChangeEvent
Not documented.
SaveToFile
Saves the entire content of the tree into a file or stream.
SaveToStream
Saves the entire content of the tree into a file or stream.
ScrollIntoView
This is the overview for the ScrollIntoView method overload.
SelectAll
Selects all nodes in the tree.
SelectedNodes
Not documented.
SelectNodes
Selects a range of nodes.
SetFocusedNodeAndColumn
Not documented.
SkipNode
Not documented.
Sort
Sorts the given node.
SortTree
Sorts the entire tree view.
StartOperation
Not documented.
StartWheelPanning
Not documented.
StopWheelPanning
Not documented.
StructureChange
Not documented.
SuggestDropEffect
Not documented.
ToggleNode
Changes a node's expand state to the opposite state.
ToggleSelection
Toggles the selection state of a range of nodes.
UnselectNodes
Deselects a range of nodes.
UpdateAction
Not documented.
UpdateColumnCheckState
Not documented.
UpdateDesigner
Not documented.
UpdateEditBounds
Not documented.
UpdateHeaderRect
Not documented.
UpdateHorizontalRange
Not documented.
UpdateHorizontalScrollBar
Applies changes to the horizontal and vertical scrollbars.
UpdateRanges
Not documented.
UpdateScrollBars
Applies changes to the horizontal and vertical scrollbars.
UpdateVerticalRange
Not documented.
UpdateVerticalScrollBar
Applies changes to the horizontal and vertical scrollbars.
UpdateWindowAndDragImage
Not documented.
UseRightToLeftReading
Helper method for right-to-left layout.
ValidateCache
Initiates the validation of the internal node cache.
ValidateChildren
Validates all children of a given node.
ValidateNode
Validates a given node.
ValidateNodeDataSize
Helper method for node data size initalization.
VisibleChildNodes
Not documented.
VisibleChildNoInitNodes
Not documented.
VisibleNodes
Not documented.
VisibleNoInitNodes
Not documented.
WndProc
Redirected window procedure to do some special processing.
WriteChunks
Writes the core chunks for the given node to the given stream.
WriteNode
Writes the cover (envelop) chunk for the given node to the given stream.

TCustomVirtualDrawTree Class

DoDrawHint
Overridable method which triggers OnDrawHint.
DoGetCellContentMargin
Not documented.
DoGetHintSize
Overridable method which triggers OnGetHintSize.
DoGetNodeWidth
Overridable method which triggers OnGetNodeWidth.
DoPaintNode
Overridable method which triggers OnPaintNode.

TVirtualDrawTree Class

GetOptionsClass
Customization helper to determine which options class the tree should use.

Topics

TBaseVirtualTree Methods
The methods of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Constructors
The constructors of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Destructors
The destructors of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Properties
The properties of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Events
The events of the TBaseVirtualTree class are listed here.

TCustomVirtualDrawTree Class

TCustomVirtualDrawTree Methods
The methods of the TCustomVirtualDrawTree class are listed here.
TCustomVirtualDrawTree Events
The events of the TCustomVirtualDrawTree class are listed here.

TVirtualDrawTree Class

TVirtualDrawTree Methods
The methods of the TVirtualDrawTree class are listed here.
TVirtualDrawTree Properties
The properties of the TVirtualDrawTree class are listed here.
TVirtualDrawTree Events
The events of the TVirtualDrawTree class are listed here.

TBaseVirtualTree Constructors

Create
Constructor of the control

TBaseVirtualTree Destructors

Destroy
Destructor of the control.

TBaseVirtualTree Properties

Accessible
Not documented.
AccessibleItem
Not documented.
AccessibleName
Not documented.
Alignment
Determines the horizontal alignment of text if no columns are defined.
AnimationDuration
Determines the maximum duration the tree can use to play an animation.
AutoExpandDelay
Time delay after which a node gets expanded if it is the current drop target.
AutoScrollDelay
Time which determines when auto scrolling should start.
AutoScrollInterval
Time interval between scroll events when doing auto scroll.
Background
Holds a background image for the tree.
BackgroundOffsetX
Horizontal offset of the background image.
BackgroundOffsetY
Vertical offset of the background image.
BorderStyle
Same as TForm.BorderStyle.
BottomNode
Not documented.
BottomSpace
Not documented.
ButtonFillMode
Determines how to fill the background of the node buttons.
ButtonStyle
Determines the look of node buttons.
ChangeDelay
Time which determines when the OnChange event should be triggered after the actual change event.
CheckedCount
Not documented.
CheckImageKind
Determines which images should be used for checkboxes and radio buttons.
CheckImages
Not documented.
CheckState
Read or set the check state of a node.
CheckType
Read or set the check type of a node.
ChildCount
Read or set the number of child nodes of a node.
ChildrenInitialized
Read whether a node's child count has been initialized already.
ClipboardFormats
Special class to keep a list of clipboard format descriptions.
Colors
A collection of colors used in the tree.
CustomCheckImages
Assign your own image list to get the check images you like most.
CutCopyCount
Not documented.
DefaultNodeHeight
Read or set the height new nodes get as initial value.
DefaultPasteMode
Read or set the value, which determines where to add pasted nodes to.
DragHeight
Read or set the vertical limit of the internal drag image.
DragImage
Holds the instance of the internal drag image.
DragImageKind
Read or set what should be shown in the drag image.
DragManager
Holds the reference to the internal drag manager.
DragOperations
Read or set which drag operations may be allowed in the tree.
DragSelection
Keeps a temporary list of nodes during drag'n drop.
DragType
Read or set which subsystem should be used for dragging.
DragWidth
Read or set the horizontal limit of the internal drag image.
DrawSelectionMode
Read or set how multiselection with the mouse is to be visualized.
DropTargetNode
Contains the current drop target node if the tree is currently the target of a drag'n drop operation.
EditColumn
Not documented.
EditDelay
Read or set the maximum time between two single clicks on the same node, which should start node editing.
EditLink
Keeps a reference to the internal edit link during a node edit operation.
EffectiveOffsetX
Not documented.
EmptyListMessage
Not documented.
Expanded
Read or set the expanded state of a particular node.
FocusedColumn
Read or set the currently focused collumn.
FocusedNode
Read or set the currently focused node.
Font
Same as TWinControl.Font.
FullyVisible
Read or set whether a node is fully visible or not.
HasChildren
Read or set whether a node has got children.
Header
Provides access to the header instance.
HeaderRect
Returns the non-client-area rectangle used for the header.
HintAnimation
Read or set the current hint animation type.
HintData
Not documented.
HintMode
Read or set what type of hint you want for the tree view.
HotCursor
Read or set which cursor should be used for hot nodes.
HotMinusBM
Not documented.
HotNode
Read, which node is currently the hot node.
HotPlusBM
Not documented.
Images
Read or set the tree's normal image list.
IncrementalSearch
Read or set the current incremental search mode.
IncrementalSearchDirection
Read or set the direction to be used for incremental search.
IncrementalSearchStart
Read or set where to start incremental search.
IncrementalSearchTimeout
Read or set the maximum time, which is allowed between two consecutive key strokes so that incremental search stays active.
Indent
Read or set the indentation amount for node levels.
IsDisabled
Read or set the enabled state of the given node.
IsEffectivelyFiltered
Not documented.
IsEffectivelyVisible
Not documented.
IsFiltered
Not documented.
IsVisible
Read or set the visibility state of the given node.
LastClickPos
Used for retained drag start and wheel mouse scrolling.
LastDropMode
Read how the last drop operation finished.
LastHintRect
Not documented.
LineMode
Read or set the mode of the tree lines.
LineStyle
Read or set the mode of the tree lines.
Margin
Read or set the tree's node margin.
MinusBM
Not documented.
MultiLine
Read or toggle the multiline feature for a given node.
NodeAlignment
Read or set the node alignment value.
NodeDataSize
Read or set the extra data size for each node.
NodeHeight
Read or set a node's height.
NodeParent
Read or set a node's parent node.
OffsetX
Read or set the tree's current horizontal and vertical scroll offsets.
OffsetXY
Read or set the tree's current horizontal and vertical scroll offsets.
OffsetY
Read or set the tree's current horizontal and vertical scroll offsets.
OperationCanceled
Not documented.
OperationCount
Not documented.
PlusBM
Not documented.
RangeX
Not documented.
RangeY
Not documented.
RootNode
Reference to the internal root node which is the anchor of the entire tree node hierarchy.
RootNodeCount
Read or set the number of nodes on the top level.
ScrollBarOptions
Reference to the scroll bar options class.
SearchBuffer
Current input string for incremental search.
Selected
Property to modify or determine the selection state of a node.
SelectedCount
Contains the number of selected nodes.
SelectionBlendFactor
Read or set the current blend factor for the multi selection rectangle and the node selection rectangle.
SelectionCurveRadius
Read or set the current corner radius for node selection rectangles.
SelectionLocked
Not documented.
StateImages
Reference to the images list which is used for the state images.
TextMargin
Read or set the distance of the node caption to its borders.
TopNode
The top node is the node which is currently at the top border of the client area.
TotalCount
Returns the number of nodes in the tree.
TotalInternalDataSize
Keeps the currently accumulated data size for one node.
TreeOptions
Reference to the tree's options.
TreeStates
Property which keeps a set of flags which indicate current operation and states of the tree.
UpdateCount
Not documented.
VerticalAlignment
Used to set a node's vertical button aligment with regard to the entire node rectangle.
VisibleCount
Number of currently visible nodes.
VisiblePath
Property to set or determine a node parent's expand states.
WantTabs
Read or set whether the tree wants to process tabs on its own.

TVirtualDrawTree Class

Action
Not documented.
Align
Not documented.
Alignment
Determines the horizontal alignment of text if no columns are defined.
Anchors
Not documented.
AnimationDuration
Determines the maximum duration the tree can use to play an animation.
AutoExpandDelay
Time delay after which a node gets expanded if it is the current drop target.
AutoScrollDelay
Time which determines when auto scrolling should start.
AutoScrollInterval
Time interval between scroll events when doing auto scroll.
Background
Holds a background image for the tree.
BackgroundOffsetX
Horizontal offset of the background image.
BackgroundOffsetY
Vertical offset of the background image.
BevelEdges
Not documented.
BevelInner
Not documented.
BevelKind
Not documented.
BevelOuter
Not documented.
BevelWidth
Not documented.
BiDiMode
Not documented.
BorderStyle
Same as TForm.BorderStyle.
BorderWidth
Not documented.
BottomSpace
Not documented.
ButtonFillMode
Determines how to fill the background of the node buttons.
ButtonStyle
Determines the look of node buttons.
Canvas
Not documented.
ChangeDelay
Time which determines when the OnChange event should be triggered after the actual change event.
CheckImageKind
Determines which images should be used for checkboxes and radio buttons.
ClipboardFormats
Special class to keep a list of clipboard format descriptions.
Color
Not documented.
Colors
A collection of colors used in the tree.
Constraints
Not documented.
Ctl3D
Not documented.
CustomCheckImages
Assign your own image list to get the check images you like most.
DefaultNodeHeight
Read or set the height new nodes get as initial value.
DefaultPasteMode
Read or set the value, which determines where to add pasted nodes to.
DragCursor
Not documented.
DragHeight
Read or set the vertical limit of the internal drag image.
DragImageKind
Read or set what should be shown in the drag image.
DragKind
Not documented.
DragMode
Not documented.
DragOperations
Read or set which drag operations may be allowed in the tree.
DragType
Read or set which subsystem should be used for dragging.
DragWidth
Read or set the horizontal limit of the internal drag image.
DrawSelectionMode
Read or set how multiselection with the mouse is to be visualized.
EditDelay
Read or set the maximum time between two single clicks on the same node, which should start node editing.
Enabled
Not documented.
Font
Same as TWinControl.Font.
Header
Provides access to the header instance.
HintAnimation
Read or set the current hint animation type.
HintMode
Read or set what type of hint you want for the tree view.
HotCursor
Read or set which cursor should be used for hot nodes.
Images
Read or set the tree's normal image list.
IncrementalSearch
Read or set the current incremental search mode.
IncrementalSearchDirection
Read or set the direction to be used for incremental search.
IncrementalSearchStart
Read or set where to start incremental search.
IncrementalSearchTimeout
Read or set the maximum time, which is allowed between two consecutive key strokes so that incremental search stays active.
Indent
Read or set the indentation amount for node levels.
LineMode
Read or set the mode of the tree lines.
LineStyle
Read or set the mode of the tree lines.
Margin
Read or set the tree's node margin.
NodeAlignment
Read or set the node alignment value.
NodeDataSize
Read or set the extra data size for each node.
OnClick
Not documented.
OnContextPopup
Not documented.
OnDblClick
Not documented.
OnEndDock
Not documented.
OnEndDrag
Not documented.
OnEnter
Not documented.
OnExit
Not documented.
OnKeyDown
Not documented.
OnKeyPress
Not documented.
OnKeyUp
Not documented.
OnMouseDown
Not documented.
OnMouseMove
Not documented.
OnMouseUp
Not documented.
OnMouseWheel
Not documented.
OnResize
Not documented.
OnStartDock
Not documented.
OnStartDrag
Not documented.
OperationCanceled
Not documented.
ParentBiDiMode
Not documented.
ParentColor
Not documented.
ParentCtl3D
Not documented.
ParentFont
Not documented.
ParentShowHint
Not documented.
PopupMenu
Not documented.
RootNodeCount
Read or set the number of nodes on the top level.
ScrollBarOptions
Reference to the scroll bar options class.
SelectionBlendFactor
Read or set the current blend factor for the multi selection rectangle and the node selection rectangle.
SelectionCurveRadius
Read or set the current corner radius for node selection rectangles.
ShowHint
Not documented.
StateImages
Reference to the images list which is used for the state images.
TabOrder
Not documented.
TabStop
Not documented.
TextMargin
Read or set the distance of the node caption to its borders.
TreeOptions
Reference to the tree's options.
Visible
Not documented.
WantTabs
Read or set whether the tree wants to process tabs on its own.

TBaseVirtualTree Events

OnAddToSelection
Not documented.
OnAdvancedHeaderDraw
Header paint support event.
OnAfterAutoFitColumn
Not documented.
OnAfterAutoFitColumns
Not documented.
OnAfterCellPaint
Paint support event.
OnAfterColumnExport
Not documented.
OnAfterColumnWidthTracking
Not documented.
OnAfterGetMaxColumnWidth
Not documented.
OnAfterHeaderExport
Not documented.
OnAfterHeaderHeightTracking
Not documented.
OnAfterItemErase
Paint support event.
OnAfterItemPaint
Paint support event.
OnAfterNodeExport
Not documented.
OnAfterPaint
Paint support event.
OnAfterTreeExport
Not documented.
OnBeforeAutoFitColumn
Not documented.
OnBeforeAutoFitColumns
Not documented.
OnBeforeCellPaint
Paint support event.
OnBeforeColumnExport
Not documented.
OnBeforeColumnWidthTracking
Not documented.
OnBeforeDrawTreeLine
Not documented.
OnBeforeGetMaxColumnWidth
Not documented.
OnBeforeHeaderExport
Not documented.
OnBeforeHeaderHeightTracking
Not documented.
OnBeforeItemErase
Paint support event.
OnBeforeItemPaint
Paint support event.
OnBeforeNodeExport
Not documented.
OnBeforePaint
Paint support event.
OnBeforeTreeExport
Not documented.
OnCanSplitterResizeColumn
Not documented.
OnCanSplitterResizeHeader
Not documented.
OnCanSplitterResizeNode
Not documented.
OnChange
Navigation support event.
OnChecked
Check support event.
OnChecking
Check support event.
OnCollapsed
Miscellaneous event.
OnCollapsing
Miscellaneous event.
OnColumnClick
Header and column support event.
OnColumnDblClick
Header and column support event.
OnColumnExport
Not documented.
OnColumnResize
Header and column support routine.
OnColumnWidthDblClickResize
Not documented.
OnColumnWidthTracking
Not documented.
OnCompareNodes
Sort and search support event.
OnCreateDataObject
Drag'n drop support event.
OnCreateDragManager
Drag'n drop support event.
OnCreateEditor
Editing support event.
OnDragAllowed
Drag'n drop support event.
OnDragDrop
Drag'n drop support event.
OnDragOver
Drag'n drop support event.
OnEditCancelled
Editing support event.
OnEdited
Editing support event.
OnEditing
Editing support event.
OnEndOperation
Not documented.
OnExpanded
Misscellaneous event.
OnExpanding
Miscellaneous event.
OnFocusChanged
Navigation support event.
OnFocusChanging
Navigation support event.
OnFreeNode
Data management node.
OnGetCellIsEmpty
Triggered when the tree control needs to know whether a given column is empty.
OnGetCursor
Miscellaneous event.
OnGetHeaderCursor
Header and column support event.
OnGetHelpContext
Miscellaneous event.
OnGetImageIndex
Display management event.
OnGetImageIndexEx
Not documented.
OnGetImageText
Not documented.
OnGetLineStyle
Display management event.
OnGetNodeDataSize
Data management event.
OnGetPopupMenu
Miscellaneous event.
OnGetUserClipboardFormats
Drag'n drop and clipboard support event.
OnHeaderClick
Header & column support event.
OnHeaderDblClick
Header & column support event.
OnHeaderDragged
Header & column support event.
OnHeaderDraggedOut
Header & column support event.
OnHeaderDragging
Header & column support event.
OnHeaderDraw
Header & column support event.
OnHeaderDrawQueryElements
Header & column support event.
OnHeaderHeightDblClickResize
Not documented.
OnHeaderHeightTracking
Not documented.
OnHeaderMouseDown
Header & column support event.
OnHeaderMouseMove
Header & column support event.
OnHeaderMouseUp
Header & column support event.
OnHotChange
Navigation support event.
OnIncrementalSearch
Miscellaneous event.
OnInitChildren
Node management event.
OnInitNode
Node management event.
OnKeyAction
Miscellaneous event.
OnLoadNode
Streaming support event.
OnLoadTree
Not documented.
OnMeasureItem
Miscellaneous event.
OnNodeClick
Not documented.
OnNodeCopied
Miscellaneous event.
OnNodeCopying
Miscellaneous event.
OnNodeDblClick
Not documented.
OnNodeExport
Not documented.
OnNodeHeightDblClickResize
Not documented.
OnNodeHeightTracking
Not documented.
OnNodeMoved
Miscellaneous event.
OnNodeMoving
Miscellaneous event.
OnPaintBackground
Paint support event.
OnRemoveFromSelection
Not documented.
OnRenderOLEData
Drag'n drop and clipboard support event.
OnResetNode
Node management event.
OnSaveNode
Streaming support event.
OnSaveTree
Not documented.
OnScroll
Miscellaneous event.
OnShowScrollbar
Not documented.
OnStartOperation
Not documented.
OnStateChange
Miscellaneous event.
OnStructureChange
Miscellaneous event.
OnUpdating
Miscellaneous event.

TCustomVirtualDrawTree Class

OnDrawHint
Triggered when a node hint or tooltip must be drawn.
OnDrawNode
Triggered when a node must be drawn.
OnGetCellContentMargin
Not documented.
OnGetHintSize
Triggered when a node hint or tooltip is about to show.
OnGetNodeWidth
Triggered when a node is about to be drawn.

TVirtualDrawTree Class

OnAddToSelection
Not documented.
OnAdvancedHeaderDraw
Header paint support event.
OnAfterAutoFitColumn
Not documented.
OnAfterAutoFitColumns
Not documented.
OnAfterCellPaint
Paint support event.
OnAfterColumnExport
Not documented.
OnAfterColumnWidthTracking
Not documented.
OnAfterGetMaxColumnWidth
Not documented.
OnAfterHeaderExport
Not documented.
OnAfterHeaderHeightTracking
Not documented.
OnAfterItemErase
Paint support event.
OnAfterItemPaint
Paint support event.
OnAfterNodeExport
Not documented.
OnAfterPaint
Paint support event.
OnAfterTreeExport
Not documented.
OnBeforeAutoFitColumn
Not documented.
OnBeforeAutoFitColumns
Not documented.
OnBeforeCellPaint
Paint support event.
OnBeforeColumnExport
Not documented.
OnBeforeColumnWidthTracking
Not documented.
OnBeforeDrawTreeLine
Not documented.
OnBeforeGetMaxColumnWidth
Not documented.
OnBeforeHeaderExport
Not documented.
OnBeforeHeaderHeightTracking
Not documented.
OnBeforeItemErase
Paint support event.
OnBeforeItemPaint
Paint support event.
OnBeforeNodeExport
Not documented.
OnBeforePaint
Paint support event.
OnBeforeTreeExport
Not documented.
OnCanSplitterResizeColumn
Not documented.
OnCanSplitterResizeHeader
Not documented.
OnCanSplitterResizeNode
Not documented.
OnChange
Navigation support event.
OnChecked
Check support event.
OnChecking
Check support event.
OnCollapsed
Miscellaneous event.
OnCollapsing
Miscellaneous event.
OnColumnClick
Header and column support event.
OnColumnDblClick
Header and column support event.
OnColumnExport
Not documented.
OnColumnResize
Header and column support routine.
OnColumnWidthDblClickResize
Not documented.
OnColumnWidthTracking
Not documented.
OnCompareNodes
Sort and search support event.
OnCreateDataObject
Drag'n drop support event.
OnCreateDragManager
Drag'n drop support event.
OnCreateEditor
Editing support event.
OnDragAllowed
Drag'n drop support event.
OnDragDrop
Drag'n drop support event.
OnDragOver
Drag'n drop support event.
OnDrawHint
Triggered when a node hint or tooltip must be drawn.
OnDrawNode
Triggered when a node must be drawn.
OnEdited
Editing support event.
OnEditing
Editing support event.
OnEndOperation
Not documented.
OnExpanded
Misscellaneous event.
OnExpanding
Miscellaneous event.
OnFocusChanged
Navigation support event.
OnFocusChanging
Navigation support event.
OnFreeNode
Data management node.
OnGetCellIsEmpty
Triggered when the tree control needs to know whether a given column is empty.
OnGetCursor
Miscellaneous event.
OnGetHeaderCursor
Header and column support event.
OnGetHelpContext
Miscellaneous event.
OnGetHintSize
Triggered when a node hint or tooltip is about to show.
OnGetImageIndex
Display management event.
OnGetImageIndexEx
Not documented.
OnGetLineStyle
Display management event.
OnGetNodeDataSize
Data management event.
OnGetNodeWidth
Triggered when a node is about to be drawn.
OnGetPopupMenu
Miscellaneous event.
OnGetUserClipboardFormats
Drag'n drop and clipboard support event.
OnHeaderClick
Header & column support event.
OnHeaderDblClick
Header & column support event.
OnHeaderDragged
Header & column support event.
OnHeaderDraggedOut
Header & column support event.
OnHeaderDragging
Header & column support event.
OnHeaderDraw
Header & column support event.
OnHeaderDrawQueryElements
Header & column support event.
OnHeaderHeightDblClickResize
Not documented.
OnHeaderHeightTracking
Not documented.
OnHeaderMouseDown
Header & column support event.
OnHeaderMouseMove
Header & column support event.
OnHeaderMouseUp
Header & column support event.
OnHotChange
Navigation support event.
OnIncrementalSearch
Miscellaneous event.
OnInitChildren
Node management event.
OnInitNode
Node management event.
OnKeyAction
Miscellaneous event.
OnLoadNode
Streaming support event.
OnLoadTree
Not documented.
OnMeasureItem
Miscellaneous event.
OnNodeClick
Not documented.
OnNodeCopied
Miscellaneous event.
OnNodeCopying
Miscellaneous event.
OnNodeDblClick
Not documented.
OnNodeExport
Not documented.
OnNodeHeightDblClickResize
Not documented.
OnNodeHeightTracking
Not documented.
OnNodeMoved
Miscellaneous event.
OnNodeMoving
Miscellaneous event.
OnPaintBackground
Paint support event.
OnRemoveFromSelection
Not documented.
OnRenderOLEData
Drag'n drop and clipboard support event.
OnResetNode
Node management event.
OnSaveNode
Streaming support event.
OnSaveTree
Not documented.
OnScroll
Miscellaneous event.
OnShowScrollbar
Not documented.
OnStartOperation
Not documented.
OnStateChange
Miscellaneous event.
OnStructureChange
Miscellaneous event.
OnUpdating
Miscellaneous event.

Topics

TBaseVirtualTree Methods
The methods of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Constructors
The constructors of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Destructors
The destructors of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Properties
The properties of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Events
The events of the TBaseVirtualTree class are listed here.

TCustomVirtualDrawTree Class

TCustomVirtualDrawTree Methods
The methods of the TCustomVirtualDrawTree class are listed here.
TCustomVirtualDrawTree Events
The events of the TCustomVirtualDrawTree class are listed here.

TVirtualDrawTree Class

TVirtualDrawTree Methods
The methods of the TVirtualDrawTree class are listed here.
TVirtualDrawTree Properties
The properties of the TVirtualDrawTree class are listed here.
TVirtualDrawTree Events
The events of the TVirtualDrawTree class are listed here.

TBaseVirtualTree Constructors

Create
Constructor of the control

TBaseVirtualTree Destructors

Destroy
Destructor of the control.

TBaseVirtualTree Events

OnAddToSelection
Not documented.
OnAdvancedHeaderDraw
Header paint support event.
OnAfterAutoFitColumn
Not documented.
OnAfterAutoFitColumns
Not documented.
OnAfterCellPaint
Paint support event.
OnAfterColumnExport
Not documented.
OnAfterColumnWidthTracking
Not documented.
OnAfterGetMaxColumnWidth
Not documented.
OnAfterHeaderExport
Not documented.
OnAfterHeaderHeightTracking
Not documented.
OnAfterItemErase
Paint support event.
OnAfterItemPaint
Paint support event.
OnAfterNodeExport
Not documented.
OnAfterPaint
Paint support event.
OnAfterTreeExport
Not documented.
OnBeforeAutoFitColumn
Not documented.
OnBeforeAutoFitColumns
Not documented.
OnBeforeCellPaint
Paint support event.
OnBeforeColumnExport
Not documented.
OnBeforeColumnWidthTracking
Not documented.
OnBeforeDrawTreeLine
Not documented.
OnBeforeGetMaxColumnWidth
Not documented.
OnBeforeHeaderExport
Not documented.
OnBeforeHeaderHeightTracking
Not documented.
OnBeforeItemErase
Paint support event.
OnBeforeItemPaint
Paint support event.
OnBeforeNodeExport
Not documented.
OnBeforePaint
Paint support event.
OnBeforeTreeExport
Not documented.
OnCanSplitterResizeColumn
Not documented.
OnCanSplitterResizeHeader
Not documented.
OnCanSplitterResizeNode
Not documented.
OnChange
Navigation support event.
OnChecked
Check support event.
OnChecking
Check support event.
OnCollapsed
Miscellaneous event.
OnCollapsing
Miscellaneous event.
OnColumnClick
Header and column support event.
OnColumnDblClick
Header and column support event.
OnColumnExport
Not documented.
OnColumnResize
Header and column support routine.
OnColumnWidthDblClickResize
Not documented.
OnColumnWidthTracking
Not documented.
OnCompareNodes
Sort and search support event.
OnCreateDataObject
Drag'n drop support event.
OnCreateDragManager
Drag'n drop support event.
OnCreateEditor
Editing support event.
OnDragAllowed
Drag'n drop support event.
OnDragDrop
Drag'n drop support event.
OnDragOver
Drag'n drop support event.
OnEditCancelled
Editing support event.
OnEdited
Editing support event.
OnEditing
Editing support event.
OnEndOperation
Not documented.
OnExpanded
Misscellaneous event.
OnExpanding
Miscellaneous event.
OnFocusChanged
Navigation support event.
OnFocusChanging
Navigation support event.
OnFreeNode
Data management node.
OnGetCellIsEmpty
Triggered when the tree control needs to know whether a given column is empty.
OnGetCursor
Miscellaneous event.
OnGetHeaderCursor
Header and column support event.
OnGetHelpContext
Miscellaneous event.
OnGetImageIndex
Display management event.
OnGetImageIndexEx
Not documented.
OnGetImageText
Not documented.
OnGetLineStyle
Display management event.
OnGetNodeDataSize
Data management event.
OnGetPopupMenu
Miscellaneous event.
OnGetUserClipboardFormats
Drag'n drop and clipboard support event.
OnHeaderClick
Header & column support event.
OnHeaderDblClick
Header & column support event.
OnHeaderDragged
Header & column support event.
OnHeaderDraggedOut
Header & column support event.
OnHeaderDragging
Header & column support event.
OnHeaderDraw
Header & column support event.
OnHeaderDrawQueryElements
Header & column support event.
OnHeaderHeightDblClickResize
Not documented.
OnHeaderHeightTracking
Not documented.
OnHeaderMouseDown
Header & column support event.
OnHeaderMouseMove
Header & column support event.
OnHeaderMouseUp
Header & column support event.
OnHotChange
Navigation support event.
OnIncrementalSearch
Miscellaneous event.
OnInitChildren
Node management event.
OnInitNode
Node management event.
OnKeyAction
Miscellaneous event.
OnLoadNode
Streaming support event.
OnLoadTree
Not documented.
OnMeasureItem
Miscellaneous event.
OnNodeClick
Not documented.
OnNodeCopied
Miscellaneous event.
OnNodeCopying
Miscellaneous event.
OnNodeDblClick
Not documented.
OnNodeExport
Not documented.
OnNodeHeightDblClickResize
Not documented.
OnNodeHeightTracking
Not documented.
OnNodeMoved
Miscellaneous event.
OnNodeMoving
Miscellaneous event.
OnPaintBackground
Paint support event.
OnRemoveFromSelection
Not documented.
OnRenderOLEData
Drag'n drop and clipboard support event.
OnResetNode
Node management event.
OnSaveNode
Streaming support event.
OnSaveTree
Not documented.
OnScroll
Miscellaneous event.
OnShowScrollbar
Not documented.
OnStartOperation
Not documented.
OnStateChange
Miscellaneous event.
OnStructureChange
Miscellaneous event.
OnUpdating
Miscellaneous event.

TCustomVirtualDrawTree Class

OnDrawHint
Triggered when a node hint or tooltip must be drawn.
OnDrawNode
Triggered when a node must be drawn.
OnGetCellContentMargin
Not documented.
OnGetHintSize
Triggered when a node hint or tooltip is about to show.
OnGetNodeWidth
Triggered when a node is about to be drawn.

TVirtualDrawTree Class

OnAddToSelection
Not documented.
OnAdvancedHeaderDraw
Header paint support event.
OnAfterAutoFitColumn
Not documented.
OnAfterAutoFitColumns
Not documented.
OnAfterCellPaint
Paint support event.
OnAfterColumnExport
Not documented.
OnAfterColumnWidthTracking
Not documented.
OnAfterGetMaxColumnWidth
Not documented.
OnAfterHeaderExport
Not documented.
OnAfterHeaderHeightTracking
Not documented.
OnAfterItemErase
Paint support event.
OnAfterItemPaint
Paint support event.
OnAfterNodeExport
Not documented.
OnAfterPaint
Paint support event.
OnAfterTreeExport
Not documented.
OnBeforeAutoFitColumn
Not documented.
OnBeforeAutoFitColumns
Not documented.
OnBeforeCellPaint
Paint support event.
OnBeforeColumnExport
Not documented.
OnBeforeColumnWidthTracking
Not documented.
OnBeforeDrawTreeLine
Not documented.
OnBeforeGetMaxColumnWidth
Not documented.
OnBeforeHeaderExport
Not documented.
OnBeforeHeaderHeightTracking
Not documented.
OnBeforeItemErase
Paint support event.
OnBeforeItemPaint
Paint support event.
OnBeforeNodeExport
Not documented.
OnBeforePaint
Paint support event.
OnBeforeTreeExport
Not documented.
OnCanSplitterResizeColumn
Not documented.
OnCanSplitterResizeHeader
Not documented.
OnCanSplitterResizeNode
Not documented.
OnChange
Navigation support event.
OnChecked
Check support event.
OnChecking
Check support event.
OnCollapsed
Miscellaneous event.
OnCollapsing
Miscellaneous event.
OnColumnClick
Header and column support event.
OnColumnDblClick
Header and column support event.
OnColumnExport
Not documented.
OnColumnResize
Header and column support routine.
OnColumnWidthDblClickResize
Not documented.
OnColumnWidthTracking
Not documented.
OnCompareNodes
Sort and search support event.
OnCreateDataObject
Drag'n drop support event.
OnCreateDragManager
Drag'n drop support event.
OnCreateEditor
Editing support event.
OnDragAllowed
Drag'n drop support event.
OnDragDrop
Drag'n drop support event.
OnDragOver
Drag'n drop support event.
OnDrawHint
Triggered when a node hint or tooltip must be drawn.
OnDrawNode
Triggered when a node must be drawn.
OnEdited
Editing support event.
OnEditing
Editing support event.
OnEndOperation
Not documented.
OnExpanded
Misscellaneous event.
OnExpanding
Miscellaneous event.
OnFocusChanged
Navigation support event.
OnFocusChanging
Navigation support event.
OnFreeNode
Data management node.
OnGetCellIsEmpty
Triggered when the tree control needs to know whether a given column is empty.
OnGetCursor
Miscellaneous event.
OnGetHeaderCursor
Header and column support event.
OnGetHelpContext
Miscellaneous event.
OnGetHintSize
Triggered when a node hint or tooltip is about to show.
OnGetImageIndex
Display management event.
OnGetImageIndexEx
Not documented.
OnGetLineStyle
Display management event.
OnGetNodeDataSize
Data management event.
OnGetNodeWidth
Triggered when a node is about to be drawn.
OnGetPopupMenu
Miscellaneous event.
OnGetUserClipboardFormats
Drag'n drop and clipboard support event.
OnHeaderClick
Header & column support event.
OnHeaderDblClick
Header & column support event.
OnHeaderDragged
Header & column support event.
OnHeaderDraggedOut
Header & column support event.
OnHeaderDragging
Header & column support event.
OnHeaderDraw
Header & column support event.
OnHeaderDrawQueryElements
Header & column support event.
OnHeaderHeightDblClickResize
Not documented.
OnHeaderHeightTracking
Not documented.
OnHeaderMouseDown
Header & column support event.
OnHeaderMouseMove
Header & column support event.
OnHeaderMouseUp
Header & column support event.
OnHotChange
Navigation support event.
OnIncrementalSearch
Miscellaneous event.
OnInitChildren
Node management event.
OnInitNode
Node management event.
OnKeyAction
Miscellaneous event.
OnLoadNode
Streaming support event.
OnLoadTree
Not documented.
OnMeasureItem
Miscellaneous event.
OnNodeClick
Not documented.
OnNodeCopied
Miscellaneous event.
OnNodeCopying
Miscellaneous event.
OnNodeDblClick
Not documented.
OnNodeExport
Not documented.
OnNodeHeightDblClickResize
Not documented.
OnNodeHeightTracking
Not documented.
OnNodeMoved
Miscellaneous event.
OnNodeMoving
Miscellaneous event.
OnPaintBackground
Paint support event.
OnRemoveFromSelection
Not documented.
OnRenderOLEData
Drag'n drop and clipboard support event.
OnResetNode
Node management event.
OnSaveNode
Streaming support event.
OnSaveTree
Not documented.
OnScroll
Miscellaneous event.
OnShowScrollbar
Not documented.
OnStartOperation
Not documented.
OnStateChange
Miscellaneous event.
OnStructureChange
Miscellaneous event.
OnUpdating
Miscellaneous event.

Legend

Method
public
virtual
protected
Constructor
Property
read only
published
Event

TBaseVirtualTree Methods

AbsoluteIndex
Reads the overall index of a node.
AddChild
Creates and adds a new child node to given node.
AddFromStream
Adds the content from the given stream to the given node.
AddToSelection
This is the overview for the AddToSelection method overload.
AdjustImageBorder
Depending on the width of the image list as well as the given bidi mode R must be adjusted.
AdjustPaintCellRect
Used in descentants to modify the clip rectangle of the current column while painting a certain node.
AdjustPanningCursor
Loads the proper cursor which indicates into which direction scrolling is done.
AdviseChangeEvent
Used to register a delayed change event.
AllocateInternalDataArea
Registration method to allocate tree internal data per node.
Animate
Support method for animated actions in the tree view.
Assign
Used to copy properties from another Virtual Treeview.
BeginDrag
Starts an OLE drag'n drop operation.
BeginSynch
Enters the tree into a special synchronized mode.
BeginUpdate
Locks the tree view to perform several update operations.
CalculateSelectionRect
Support method for draw selection.
CanAutoScroll
Determines whether the tree can currently auto scroll its window.
CancelCutOrCopy
Canceles any pending cut or copy clipboard operation.
CancelEditNode
Cancel the current edit operation, if there is any.
CancelOperation
Not documented.
CanEdit
Determines whether a node can be edited or not.
CanFocus
Support method to determine whether the tree window can receive the input focus.
CanShowDragImage
Determines whether a drag image should be shown.
CanSplitterResizeNode
Not documented.
Change
Central method called when a node's selection state changes.
ChangeScale
Helper method called by the VCL when control resizing is due.
CheckedNodes
Not documented.
CheckParentCheckState
Helper method for recursive check state changes.
ChildNodes
Not documented.
Clear
Clears the tree and removes all nodes.
ClearChecked
Not documented.
ClearSelection
Removes all nodes from the current selection.
ClearTempCache
Helper method to clear the internal temporary node cache.
ColumnIsEmpty
Used to determine if a cell is considered as being empty.
ComputeRTLOffset
Not documented.
CopyTo
This is the overview for the CopyTo method overload.
CopyToClipBoard
Copies all currently selected nodes to the clipboard.
CountLevelDifference
Determines the level difference of two nodes.
CountVisibleChildren
Determines the number of visible child nodes of the given node.
CreateParams
Prepares the creation of the controls window handle.
CreateWnd
Initializes data, which depends on the window handle.
CutCopyNodes
Not documented.
CutToClipBoard
Copies the currently selected nodes to the clipboard and removes them once a consumer has taken the data.
DefineProperties
Helper method to customize loading and saving persistent tree data.
DeleteChildren
Removes all child nodes from the given node.
DeleteNode
Removes the given node from the tree.
DeleteSelectedNodes
Removes all currently selected nodes form the tree.
DetermineDropMode
Not documented.
DetermineHiddenChildrenFlag
Determines whether all children of a given node are hidden.
DetermineHiddenChildrenFlagAllNodes
Determines whether all children of all nodes are hidden.
DetermineHitPositionLTR
Determines the hit position within a node with left-to-right and right-to-left orientation.
DetermineHitPositionRTL
Determines the hit position within a node with left-to-right and right-to-left orientation.
DetermineLineImageAndSelectLevel
Not documented.
DetermineNextCheckState
Not documented.
DetermineScrollDirections
Not documented.
DoAdvancedHeaderDraw
Not documented.
DoAfterCellPaint
Not documented.
DoAfterItemErase
Not documented.
DoAfterItemPaint
Not documented.
DoAfterPaint
Not documented.
DoAutoScroll
Enables or disables the auto scroll timer.
DoBeforeCellPaint
Not documented.
DoBeforeDrag
Not documented.
DoBeforeDrawLineImage
Not documented.
DoBeforeItemErase
Not documented.
DoBeforeItemPaint
Not documented.
DoBeforePaint
Not documented.
DoCancelEdit
Called when the tree should stop editing without accepting changed values.
DoCanEdit
Not documented.
DoCanSplitterResizeNode
Not documented.
DoChange
Not documented.
DoCheckClick
Not documented.
DoChecked
Not documented.
DoChecking
Not documented.
DoCollapsed
Not documented.
DoCollapsing
Not documented.
DoColumnClick
Not documented.
DoColumnDblClick
Not documented.
DoColumnResize
Not documented.
DoCompare
Not documented.
DoCreateDataObject
Not documented.
DoCreateDragManager
Not documented.
DoCreateEditor
Not documented.
DoDragDrop
Not documented.
DoDragExpand
Not documented.
DoDragging
Internal method which handles drag' drop.
DoDragOver
Not documented.
DoEdit
Initiates editing of the currently set focused column and edit node.
DoEndDrag
Not documented.
DoEndEdit
Stops the current edit operation and takes over the new content.
DoEndOperation
Not documented.
DoExpanded
Not documented.
DoExpanding
Not documented.
DoFocusChange
Not documented.
DoFocusChanging
Not documented.
DoFocusNode
Internal method to set the focused node.
DoFreeNode
Not documented.
DoGetAnimationType
Determines the type of animation to be used.
DoGetCellContentMargin
Not documented.
DoGetCursor
Not documented.
DoGetHeaderCursor
Not documented.
DoGetImageIndex
Not documented.
DoGetImageText
Not documented.
DoGetLineStyle
Not documented.
DoGetNodeHint
Not documented.
DoGetNodeTooltip
Not documented.
DoGetNodeWidth
Overridable method which always retuns 0.
DoGetPopupMenu
Overridable method which triggers the OnGetPopup event.
DoGetUserClipboardFormats
Not documented.
DoHeaderClick
Not documented.
DoHeaderDblClick
Not documented.
DoHeaderDragged
Not documented.
DoHeaderDraggedOut
Not documented.
DoHeaderDragging
Not documented.
DoHeaderDraw
Not documented.
DoHeaderDrawQueryElements
Not documented.
DoHeaderMouseDown
Not documented.
DoHeaderMouseMove
Not documented.
DoHeaderMouseUp
Not documented.
DoHotChange
Not documented.
DoIncrementalSearch
Not documented.
DoInitChildren
Not documented.
DoInitNode
Not documented.
DoKeyAction
Not documented.
DoLoadUserData
Not documented.
DoMeasureItem
Not documented.
DoNodeClick
Not documented.
DoNodeCopied
Not documented.
DoNodeCopying
Not documented.
DoNodeDblClick
Not documented.
DoNodeHeightDblClickResize
Not documented.
DoNodeHeightTracking
Not documented.
DoNodeMoved
Not documented.
DoNodeMoving
Not documented.
DoPaintBackground
Not documented.
DoPaintDropMark
Overridable method which draws the small line on top of a nodes image depending on the current drop state.
DoPaintNode
Overridable method which does nothing.
DoPopupMenu
Overridable method which shows the popup menu for the given node.
DoRenderOLEData
Not documented.
DoReset
Not documented.
DoSaveUserData
Not documented.
DoScroll
Overridable method which triggers the OnScroll event.
DoSetOffsetXY
Internal core routine to set the tree's scroll position.
DoShowScrollbar
Not documented.
DoStartDrag
Not documented.
DoStartOperation
Not documented.
DoStateChange
Not documented.
DoStructureChange
Not documented.
DoTimerScroll
Callback method which is triggered whenever the scroll timer fires.
DoUpdating
Not documented.
DoValidateCache
Not documented.
DragAndDrop
Not documented.
DragCanceled
Called by the VCL when a drag'n drop operation was canceled by the user.
DragDrop
Helper method, which is used when a drag operation is finished.
DragEnter
Not documented.
DragFinished
Called when a drag operation is finished (accepted or cancelled).
Dragging
Returns true if a drag'n drop operation is in progress.
DragLeave
Not documented.
DragOver
Not documented.
DrawDottedHLine
Not documented.
DrawDottedVLine
Not documented.
EditNode
Starts editing the given node if allowed to.
EndEditNode
Stops node editing if it was started before.
EndOperation
Not documented.
EndSynch
Counterpart to BeginSynch.
EndUpdate
Resets the update lock set by BeginUpdate.
ExecuteAction
Not documented.
FindNodeInSelection
Helper method to find the given node in the current selection.
FinishChunkHeader
Not documented.
FinishCutOrCopy
Stops any pending cut or copy clipboard operation.
FlushClipboard
Renders all pending clipboard data.
FontChanged
Not documented.
FullCollapse
Collapses all nodes in the tree.
FullExpand
Expands all nodes in the tree.
GetBorderDimensions
Not documented.
GetCheckImage
Not documented.
GetCheckImageListFor
Not documented.
GetColumnClass
Returns the class to be used to manage columns in the tree.
GetControlsAlignment
Not documented.
GetDisplayRect
Not documented.
GetEffectivelyFiltered
Not documented.
GetEffectivelyVisible
Not documented.
GetFirst
Group of node navigation functions.
GetFirstChecked
Not documented.
GetFirstChild
Group of node navigation functions.
GetFirstCutCopy
Group of node navigation functions.
GetFirstInitialized
Group of node navigation functions.
GetFirstLeaf
Not documented.
GetFirstLevel
Not documented.
GetFirstNoInit
Group of node navigation functions.
GetFirstSelected
Group of node navigation functions.
GetFirstVisible
Group of node navigation functions.
GetFirstVisibleChild
Not documented.
GetFirstVisibleChildNoInit
Not documented.
GetFirstVisibleNoInit
Group of node navigation functions.
GetHeaderClass
Returns the header class to be used by the tree.
GetHintWindowClass
Not documented.
GetHitTestInfoAt
Returns information about the node at the given position.
GetImageIndex
Not documented.
GetLast
Not documented.
GetLastChild
GetLastChildNoInit
GetLastInitialized
Not documented.
GetLastNoInit
Not documented.
GetLastVisible
Not documented.
GetLastVisibleChild
Not documented.
GetLastVisibleChildNoInit
Not documented.
GetLastVisibleNoInit
Not documented.
GetMaxColumnWidth
Not documented.
GetMaxRightExtend
Determines the maximum with of the currently visible part of the tree.
GetNativeClipboardFormats
Used to let descendants and the application add their own supported clipboard formats.
GetNext
Not documented.
GetNextChecked
This is the overview for the GetNextChecked method overload.
GetNextCutCopy
Not documented.
GetNextInitialized
Not documented.
GetNextLeaf
Not documented.
GetNextLevel
Not documented.
GetNextNoInit
Not documented.
GetNextSelected
Not documented.
GetNextSibling
GetNextVisible
Not documented.
GetNextVisibleNoInit
Not documented.
GetNextVisibleSibling
Not documented.
GetNextVisibleSiblingNoInit
Not documented.
GetNodeAt
This is the overview for the GetNodeAt method overload.
GetNodeData
Returns the address of the user data area of the given node.
GetNodeLevel
Returns the indentation level of the given node.
GetOperationCanceled
Not documented.
GetOptionsClass
Customization helper to determine which options class the tree should use.
GetPrevious
Not documented.
GetPreviousChecked
Not documented.
GetPreviousCutCopy
Not documented.
GetPreviousInitialized
Not documented.
GetPreviousLeaf
Not documented.
GetPreviousLevel
Not documented.
GetPreviousNoInit
Not documented.
GetPreviousSelected
Not documented.
GetPreviousSibling
GetPreviousVisible
Not documented.
GetPreviousVisibleNoInit
Not documented.
GetPreviousVisibleSibling
Not documented.
GetPreviousVisibleSiblingNoInit
Not documented.
GetSortedCutCopySet
Returns a sorted list of nodes, which are marked for s cut or copy clipboard operation.
GetSortedSelection
Returns a sorted list of all currently selected nodes.
GetTextInfo
Not documented.
GetTreeFromDataObject
OLE drag'n drop and clipboard support method.
GetTreeRect
Returns the size of the virtual tree image.
GetVisibleParent
Not documented.
HandleHotTrack
Not documented.
HandleIncrementalSearch
Not documented.
HandleMouseDblClick
Not documented.
HandleMouseDown
Not documented.
HandleMouseUp
Not documented.
HasAsParent
Determines if the given node has got another node as one of its parents.
HasImage
Not documented.
HasPopupMenu
Determines whether there is a pop up menu assigned to the tree.
InitChildren
Not documented.
InitializedNodes
Not documented.
InitNode
Not documented.
InsertNode
Inserts a new node and returns it to the caller.
InternalAddFromStream
Not documented.
InternalAddToSelection
This is the overview for the InternalAddToSelection method overload.
InternalCacheNode
Not documented.
InternalClearSelection
Not documented.
InternalConnectNode
Not documented.
InternalData
Returns the address of the internal data for a tree class.
InternalDisconnectNode
Not documented.
InternalRemoveFromSelection
Not documented.
InvalidateCache
Empties the internal node cache and marks it as invalid.
InvalidateChildren
Invalidates all children of the given node.
InvalidateColumn
Invalidates the client area part of a column.
InvalidateNode
Invalidates the given node.
InvalidateToBottom
Invalidates the client area starting with the top position of the given node.
InvertSelection
Inverts the current selection.
IsEditing
Tells the caller whether the tree is currently in edit mode.
IsMouseSelecting
Tell the caller whether the tree is currently in draw selection mode.
IterateSubtree
Iterator method to go through all nodes of a given sub tree.
LeafNodes
Not documented.
LevelNodes
Not documented.
Loaded
Not documented.
LoadFromFile
Loads previously streamed out tree data back in again.
LoadFromStream
Loads previously streamed out tree data back in again.
MainColumnChanged
Not documented.
MarkCutCopyNodes
Not documented.
MeasureItemHeight
Not documented.
MouseMove
Not documented.
MoveTo
This is the overview for the MoveTo method overload.
Nodes
Not documented.
NoInitNodes
Not documented.
Notification
Not documented.
OriginalWMNCPaint
Not documented.
Paint
TControl's Paint method used here to display the tree.
PaintCheckImage
Not documented.
PaintImage
Not documented.
PaintNodeButton
Not documented.
PaintSelectionRectangle
Not documented.
PaintTree
Main paint routine for the tree image.
PaintTreeLines
Not documented.
PanningWindowProc
Not documented.
PasteFromClipboard
Inserts the content of the clipboard into the tree.
PrepareCell
This method is called immediately before a cell's content is drawn und is responsible to paint selection colors etc.
PrepareDragImage
Not documented.
Print
Not documented.
ProcessDrop
Helper method to ease OLE drag'n drop operations.
ProcessOLEData
Takes serialized OLE tree data and reconstructs the former structure.
ReadChunk
Not documented.
ReadNode
Not documented.
RedirectFontChangeEvent
Not documented.
ReinitChildren
Forces all child nodes of Node to be reinitialized.
ReinitNode
Forces a reinitialization of the given node.
RemoveFromSelection
Removes the given node from the current selection.
RenderOLEData
Renders pending OLE data.
RepaintNode
Causes the treeview to repaint the given node.
ResetNode
Resets the given node to uninitialized.
ResetRangeAnchor
Not documented.
RestoreFontChangeEvent
Not documented.
SaveToFile
Saves the entire content of the tree into a file or stream.
SaveToStream
Saves the entire content of the tree into a file or stream.
ScrollIntoView
This is the overview for the ScrollIntoView method overload.
SelectAll
Selects all nodes in the tree.
SelectedNodes
Not documented.
SelectNodes
Selects a range of nodes.
SetFocusedNodeAndColumn
Not documented.
SkipNode
Not documented.
Sort
Sorts the given node.
SortTree
Sorts the entire tree view.
StartOperation
Not documented.
StartWheelPanning
Not documented.
StopWheelPanning
Not documented.
StructureChange
Not documented.
SuggestDropEffect
Not documented.
ToggleNode
Changes a node's expand state to the opposite state.
ToggleSelection
Toggles the selection state of a range of nodes.
UnselectNodes
Deselects a range of nodes.
UpdateAction
Not documented.
UpdateColumnCheckState
Not documented.
UpdateDesigner
Not documented.
UpdateEditBounds
Not documented.
UpdateHeaderRect
Not documented.
UpdateHorizontalRange
Not documented.
UpdateHorizontalScrollBar
Applies changes to the horizontal and vertical scrollbars.
UpdateRanges
Not documented.
UpdateScrollBars
Applies changes to the horizontal and vertical scrollbars.
UpdateVerticalRange
Not documented.
UpdateVerticalScrollBar
Applies changes to the horizontal and vertical scrollbars.
UpdateWindowAndDragImage
Not documented.
UseRightToLeftReading
Helper method for right-to-left layout.
ValidateCache
Initiates the validation of the internal node cache.
ValidateChildren
Validates all children of a given node.
ValidateNode
Validates a given node.
ValidateNodeDataSize
Helper method for node data size initalization.
VisibleChildNodes
Not documented.
VisibleChildNoInitNodes
Not documented.
VisibleNodes
Not documented.
VisibleNoInitNodes
Not documented.
WndProc
Redirected window procedure to do some special processing.
WriteChunks
Writes the core chunks for the given node to the given stream.
WriteNode
Writes the cover (envelop) chunk for the given node to the given stream.

TCustomVirtualDrawTree Class

DoDrawHint
Overridable method which triggers OnDrawHint.
DoGetCellContentMargin
Not documented.
DoGetHintSize
Overridable method which triggers OnGetHintSize.
DoGetNodeWidth
Overridable method which triggers OnGetNodeWidth.
DoPaintNode
Overridable method which triggers OnPaintNode.

TVirtualDrawTree Class

GetOptionsClass
Customization helper to determine which options class the tree should use.

TBaseVirtualTree Properties

Accessible
Not documented.
AccessibleItem
Not documented.
AccessibleName
Not documented.
Alignment
Determines the horizontal alignment of text if no columns are defined.
AnimationDuration
Determines the maximum duration the tree can use to play an animation.
AutoExpandDelay
Time delay after which a node gets expanded if it is the current drop target.
AutoScrollDelay
Time which determines when auto scrolling should start.
AutoScrollInterval
Time interval between scroll events when doing auto scroll.
Background
Holds a background image for the tree.
BackgroundOffsetX
Horizontal offset of the background image.
BackgroundOffsetY
Vertical offset of the background image.
BorderStyle
Same as TForm.BorderStyle.
BottomNode
Not documented.
BottomSpace
Not documented.
ButtonFillMode
Determines how to fill the background of the node buttons.
ButtonStyle
Determines the look of node buttons.
ChangeDelay
Time which determines when the OnChange event should be triggered after the actual change event.
CheckedCount
Not documented.
CheckImageKind
Determines which images should be used for checkboxes and radio buttons.
CheckImages
Not documented.
CheckState
Read or set the check state of a node.
CheckType
Read or set the check type of a node.
ChildCount
Read or set the number of child nodes of a node.
ChildrenInitialized
Read whether a node's child count has been initialized already.
ClipboardFormats
Special class to keep a list of clipboard format descriptions.
Colors
A collection of colors used in the tree.
CustomCheckImages
Assign your own image list to get the check images you like most.
CutCopyCount
Not documented.
DefaultNodeHeight
Read or set the height new nodes get as initial value.
DefaultPasteMode
Read or set the value, which determines where to add pasted nodes to.
DragHeight
Read or set the vertical limit of the internal drag image.
DragImage
Holds the instance of the internal drag image.
DragImageKind
Read or set what should be shown in the drag image.
DragManager
Holds the reference to the internal drag manager.
DragOperations
Read or set which drag operations may be allowed in the tree.
DragSelection
Keeps a temporary list of nodes during drag'n drop.
DragType
Read or set which subsystem should be used for dragging.
DragWidth
Read or set the horizontal limit of the internal drag image.
DrawSelectionMode
Read or set how multiselection with the mouse is to be visualized.
DropTargetNode
Contains the current drop target node if the tree is currently the target of a drag'n drop operation.
EditColumn
Not documented.
EditDelay
Read or set the maximum time between two single clicks on the same node, which should start node editing.
EditLink
Keeps a reference to the internal edit link during a node edit operation.
EffectiveOffsetX
Not documented.
EmptyListMessage
Not documented.
Expanded
Read or set the expanded state of a particular node.
FocusedColumn
Read or set the currently focused collumn.
FocusedNode
Read or set the currently focused node.
Font
Same as TWinControl.Font.
FullyVisible
Read or set whether a node is fully visible or not.
HasChildren
Read or set whether a node has got children.
Header
Provides access to the header instance.
HeaderRect
Returns the non-client-area rectangle used for the header.
HintAnimation
Read or set the current hint animation type.
HintData
Not documented.
HintMode
Read or set what type of hint you want for the tree view.
HotCursor
Read or set which cursor should be used for hot nodes.
HotMinusBM
Not documented.
HotNode
Read, which node is currently the hot node.
HotPlusBM
Not documented.
Images
Read or set the tree's normal image list.
IncrementalSearch
Read or set the current incremental search mode.
IncrementalSearchDirection
Read or set the direction to be used for incremental search.
IncrementalSearchStart
Read or set where to start incremental search.
IncrementalSearchTimeout
Read or set the maximum time, which is allowed between two consecutive key strokes so that incremental search stays active.
Indent
Read or set the indentation amount for node levels.
IsDisabled
Read or set the enabled state of the given node.
IsEffectivelyFiltered
Not documented.
IsEffectivelyVisible
Not documented.
IsFiltered
Not documented.
IsVisible
Read or set the visibility state of the given node.
LastClickPos
Used for retained drag start and wheel mouse scrolling.
LastDropMode
Read how the last drop operation finished.
LastHintRect
Not documented.
LineMode
Read or set the mode of the tree lines.
LineStyle
Read or set the mode of the tree lines.
Margin
Read or set the tree's node margin.
MinusBM
Not documented.
MultiLine
Read or toggle the multiline feature for a given node.
NodeAlignment
Read or set the node alignment value.
NodeDataSize
Read or set the extra data size for each node.
NodeHeight
Read or set a node's height.
NodeParent
Read or set a node's parent node.
OffsetX
Read or set the tree's current horizontal and vertical scroll offsets.
OffsetXY
Read or set the tree's current horizontal and vertical scroll offsets.
OffsetY
Read or set the tree's current horizontal and vertical scroll offsets.
OperationCanceled
Not documented.
OperationCount
Not documented.
PlusBM
Not documented.
RangeX
Not documented.
RangeY
Not documented.
RootNode
Reference to the internal root node which is the anchor of the entire tree node hierarchy.
RootNodeCount
Read or set the number of nodes on the top level.
ScrollBarOptions
Reference to the scroll bar options class.
SearchBuffer
Current input string for incremental search.
Selected
Property to modify or determine the selection state of a node.
SelectedCount
Contains the number of selected nodes.
SelectionBlendFactor
Read or set the current blend factor for the multi selection rectangle and the node selection rectangle.
SelectionCurveRadius
Read or set the current corner radius for node selection rectangles.
SelectionLocked
Not documented.
StateImages
Reference to the images list which is used for the state images.
TextMargin
Read or set the distance of the node caption to its borders.
TopNode
The top node is the node which is currently at the top border of the client area.
TotalCount
Returns the number of nodes in the tree.
TotalInternalDataSize
Keeps the currently accumulated data size for one node.
TreeOptions
Reference to the tree's options.
TreeStates
Property which keeps a set of flags which indicate current operation and states of the tree.
UpdateCount
Not documented.
VerticalAlignment
Used to set a node's vertical button aligment with regard to the entire node rectangle.
VisibleCount
Number of currently visible nodes.
VisiblePath
Property to set or determine a node parent's expand states.
WantTabs
Read or set whether the tree wants to process tabs on its own.

TVirtualDrawTree Class

Action
Not documented.
Align
Not documented.
Alignment
Determines the horizontal alignment of text if no columns are defined.
Anchors
Not documented.
AnimationDuration
Determines the maximum duration the tree can use to play an animation.
AutoExpandDelay
Time delay after which a node gets expanded if it is the current drop target.
AutoScrollDelay
Time which determines when auto scrolling should start.
AutoScrollInterval
Time interval between scroll events when doing auto scroll.
Background
Holds a background image for the tree.
BackgroundOffsetX
Horizontal offset of the background image.
BackgroundOffsetY
Vertical offset of the background image.
BevelEdges
Not documented.
BevelInner
Not documented.
BevelKind
Not documented.
BevelOuter
Not documented.
BevelWidth
Not documented.
BiDiMode
Not documented.
BorderStyle
Same as TForm.BorderStyle.
BorderWidth
Not documented.
BottomSpace
Not documented.
ButtonFillMode
Determines how to fill the background of the node buttons.
ButtonStyle
Determines the look of node buttons.
Canvas
Not documented.
ChangeDelay
Time which determines when the OnChange event should be triggered after the actual change event.
CheckImageKind
Determines which images should be used for checkboxes and radio buttons.
ClipboardFormats
Special class to keep a list of clipboard format descriptions.
Color
Not documented.
Colors
A collection of colors used in the tree.
Constraints
Not documented.
Ctl3D
Not documented.
CustomCheckImages
Assign your own image list to get the check images you like most.
DefaultNodeHeight
Read or set the height new nodes get as initial value.
DefaultPasteMode
Read or set the value, which determines where to add pasted nodes to.
DragCursor
Not documented.
DragHeight
Read or set the vertical limit of the internal drag image.
DragImageKind
Read or set what should be shown in the drag image.
DragKind
Not documented.
DragMode
Not documented.
DragOperations
Read or set which drag operations may be allowed in the tree.
DragType
Read or set which subsystem should be used for dragging.
DragWidth
Read or set the horizontal limit of the internal drag image.
DrawSelectionMode
Read or set how multiselection with the mouse is to be visualized.
EditDelay
Read or set the maximum time between two single clicks on the same node, which should start node editing.
Enabled
Not documented.
Font
Same as TWinControl.Font.
Header
Provides access to the header instance.
HintAnimation
Read or set the current hint animation type.
HintMode
Read or set what type of hint you want for the tree view.
HotCursor
Read or set which cursor should be used for hot nodes.
Images
Read or set the tree's normal image list.
IncrementalSearch
Read or set the current incremental search mode.
IncrementalSearchDirection
Read or set the direction to be used for incremental search.
IncrementalSearchStart
Read or set where to start incremental search.
IncrementalSearchTimeout
Read or set the maximum time, which is allowed between two consecutive key strokes so that incremental search stays active.
Indent
Read or set the indentation amount for node levels.
LineMode
Read or set the mode of the tree lines.
LineStyle
Read or set the mode of the tree lines.
Margin
Read or set the tree's node margin.
NodeAlignment
Read or set the node alignment value.
NodeDataSize
Read or set the extra data size for each node.
OnClick
Not documented.
OnContextPopup
Not documented.
OnDblClick
Not documented.
OnEndDock
Not documented.
OnEndDrag
Not documented.
OnEnter
Not documented.
OnExit
Not documented.
OnKeyDown
Not documented.
OnKeyPress
Not documented.
OnKeyUp
Not documented.
OnMouseDown
Not documented.
OnMouseMove
Not documented.
OnMouseUp
Not documented.
OnMouseWheel
Not documented.
OnResize
Not documented.
OnStartDock
Not documented.
OnStartDrag
Not documented.
OperationCanceled
Not documented.
ParentBiDiMode
Not documented.
ParentColor
Not documented.
ParentCtl3D
Not documented.
ParentFont
Not documented.
ParentShowHint
Not documented.
PopupMenu
Not documented.
RootNodeCount
Read or set the number of nodes on the top level.
ScrollBarOptions
Reference to the scroll bar options class.
SelectionBlendFactor
Read or set the current blend factor for the multi selection rectangle and the node selection rectangle.
SelectionCurveRadius
Read or set the current corner radius for node selection rectangles.
ShowHint
Not documented.
StateImages
Reference to the images list which is used for the state images.
TabOrder
Not documented.
TabStop
Not documented.
TextMargin
Read or set the distance of the node caption to its borders.
TreeOptions
Reference to the tree's options.
Visible
Not documented.
WantTabs
Read or set whether the tree wants to process tabs on its own.

Class Hierarchy
  TVirtualDrawTreeTVirtualDrawTreeTVirtualDrawTree
File

VirtualTrees

Links
Classes, Topics, TVirtualDrawTree Methods, TVirtualDrawTree Properties, TVirtualDrawTree Events, TBaseVirtualTree Constructors, TBaseVirtualTree Destructors, TBaseVirtualTree Events, Legend, TBaseVirtualTree Methods, TBaseVirtualTree Properties


TVirtualDrawTree Methods
TVirtualDrawTree Class | Methods | Legend | Send Feedback

The methods of the TVirtualDrawTree class are listed here.

Class

TVirtualDrawTree Class

Legend

Method
protected
virtual

Links
TVirtualDrawTree Class, Methods, Legend
What do you think about this topic? Send feedback!


TVirtualDrawTree.GetOptionsClass Method
TVirtualDrawTree Methods | TVirtualDrawTree Class | Send Feedback

Customization helper to determine which options class the tree should use.

Pascal
function GetOptionsClass: TTreeOptionsClass; override;
Description

GetOptionsClass is a special purpose method to return a certain class which is used by the tree for its options. TVirtualBaseTree always returns TCustomVirtualTreeOptions but descendants can override this method to return own classes.

For ease of use it makes much sense to always use the same name for the tree's options (which is TreeOptions). By using a customized options class, however, the wrong type is returned by this property. Hence it is meaningful to override TreeOptions and return the derived options class. To make this work the tree descendant must additionally provide new access methods for this property. An example can be seen in TVirtualStringTree:

  TVirtualStringTree = class(TCustomVirtualStringTree)
  private
    function GetOptions: TStringTreeOptions;
    procedure SetOptions(const Value: TStringTreeOptions);
  protected
    function GetOptionsClass: TTreeOptionsClass; override;
  public
    property Canvas;
  published
    ...
    property TreeOptions: TStringTreeOptions read GetOptions write SetOptions;
    ...
  end;

  ...

//----------------- TVirtualStringTree ---------------------------------------------------------------------------------

function TVirtualStringTree.GetOptions: TStringTreeOptions;

begin
  Result := FOptions as TStringTreeOptions;
end;

//----------------------------------------------------------------------------------------------------------------------

procedure TVirtualStringTree.SetOptions(const Value: TStringTreeOptions);

begin
  FOptions.Assign(Value);
end;

//----------------------------------------------------------------------------------------------------------------------

function TVirtualStringTree.GetOptionsClass: TTreeOptionsClass;

begin
  Result := TStringTreeOptions;
end;
Group

TVirtualDrawTree Methods

Links
TVirtualDrawTree Methods, TVirtualDrawTree Class


TVirtualDrawTree Properties
TVirtualDrawTree Class | Properties | Legend | Send Feedback

The properties of the TVirtualDrawTree class are listed here.

Class

TVirtualDrawTree Class

Legend

Property
published
public

Links
TVirtualDrawTree Class, Properties, Legend


TVirtualDrawTree.Action Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property Action;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.Align Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property Align;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.Alignment Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Determines the horizontal alignment of text if no columns are defined.

Pascal
property Alignment: TAlignment;
Description

This property is only used if there are no columns defined and applies only to the node captions. Right alignment means here the right client area border and left aligned means the node buttons/lines etc. (both less the text margin).

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.Anchors Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property Anchors;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.AnimationDuration Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Determines the maximum duration the tree can use to play an animation.

Pascal
property AnimationDuration: Cardinal;
Description

The value is specified in milliseconds and per default there are 200 ms as time frame, which is the recommended duration for such operations. On older systems (particularly Windows 95 and Windows 98) the animation process might not get enough CPU time to avoid expensive animations to finish properly. Still the animation loop tries to stay as close as possible to the given time.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.AutoExpandDelay Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Time delay after which a node gets expanded if it is the current drop target.

Pascal
property AutoExpandDelay: Cardinal;
Description

This value is specified in milliseconds and determines when to expand a node if it is the current drop target. This value is only used if voAutoDropExpand in Options is set.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.AutoScrollDelay Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Time which determines when auto scrolling should start.

Pascal
property AutoScrollDelay: Cardinal;
Description

Once the mouse pointer has been moved near to a border a timer is started using the interval specified by AutoScrollDelay. When the timer has fired auto scrolling starts provided it is enabled (see also TreeOptions). The value is specified in milliseconds.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.AutoScrollInterval Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Time interval between scroll events when doing auto scroll.

Pascal
property AutoScrollInterval: TAutoScrollInterval;
Description

This property determines the speed how the tree is scrolled vertically or horizontally when auto scrolling is in progress. The value is given in milliseconds.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.Background Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Holds a background image for the tree.

Pascal
property Background: TPicture;
Description

Virtual Treeview supports a fixed background image which does not scroll but can be adjusted by BackgroundOffsetX and BackgroundOffsetY.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.BackgroundOffsetX Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Horizontal offset of the background image.

Pascal
property BackgroundOffsetX: Integer;
Description

Determines the horizontal offset of the left border of the background image. This value is relative to the target canvas where the tree is painted to (usually the tree window).

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.BackgroundOffsetY Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Vertical offset of the background image.

Pascal
property BackgroundOffsetY: Integer;
Description

Determines the vertical offset of the top border of the background image. This value is relative to the target canvas where the tree is painted to (usually the tree window).

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.BevelEdges Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property BevelEdges;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.BevelInner Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property BevelInner;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.BevelKind Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property BevelKind;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.BevelOuter Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property BevelOuter;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.BevelWidth Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property BevelWidth;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.BiDiMode Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property BiDiMode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.BorderStyle Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Same as TForm.BorderStyle.

Pascal
property BorderStyle: TBorderStyle;
Description

See TForm.BorderStyle.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.BorderWidth Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property BorderWidth;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.BottomSpace Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property BottomSpace: Cardinal;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.ButtonFillMode Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Determines how to fill the background of the node buttons.

Pascal
property ButtonFillMode: TVTButtonFillMode;
Description

This property is used to specify how the interior of the little plus and minus node buttons should be drawn, if ButtonStyle is bsTriangle.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.ButtonStyle Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Determines the look of node buttons.

Pascal
property ButtonStyle: TVTButtonStyle;
Description

Determines the look of node buttons.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.Canvas Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property Canvas;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.ChangeDelay Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Time which determines when the OnChange event should be triggered after the actual change event.

Pascal
property ChangeDelay: Cardinal;
Description

In order to accumulate many quick changes in the tree you can use this delay value to specify after which wait time the OnChange event should occur. A value of 0 means to trigger OnChange immediately after the change (usually a selection or focus change) happend. Any value > 0 will start a timer which then triggers OnChange.

Note that there is the synchronous mode (started by BeginSynch) which effectively circumvents the change delay for the duration of the synchronous mode (stopped by EndSynch) regardless of the ChangeDelay setting.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.CheckImageKind Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Determines which images should be used for checkboxes and radio buttons.

Pascal
property CheckImageKind: TCheckImageKind;
Description

CheckImageKind can be used to switch the image set, which should be used for the tree. Read the description about TCheckImageKind for a list of all images, which can be used. CheckImageKind can also be set to ckCustom, which allows to supply a customized set of images to the tree. In order to have that working you must assign an image list (TCustomImageList) to the CustomCheckImages property.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.ClipboardFormats Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Special class to keep a list of clipboard format descriptions.

Pascal
property ClipboardFormats: TClipboardFormats;
Description

This TStringList descendant is used to keep a number of clipboard format descriptions, which are usually used to register clipboard formats with the system. Using a string list for this task allows to store enabled clipboard formats in the DFM.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.Color Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property Color;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.Colors Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

A collection of colors used in the tree.

Pascal
property Colors: TVTColors;
Description

This property holds an instance of the TVTColors class, which is used to customize many of the colors used in a tree. Placing them all in a specialized class helps organizing the colors in the object inspector and improves general management.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.Constraints Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property Constraints;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.Ctl3D Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property Ctl3D;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.CustomCheckImages Property
TVirtualDrawTree Properties | See Also | TVirtualDrawTree Class | Send Feedback

Assign your own image list to get the check images you like most.

Pascal
property CustomCheckImages: TCustomImageList;
Description

The CustomCheckImages property is used when custom check images are enabled (see also ckCustom in TCheckImageKind).

See Also

TCheckImageKind

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, See Also, TVirtualDrawTree Class


TVirtualDrawTree.DefaultNodeHeight Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Read or set the height new nodes get as initial value.

Pascal
property DefaultNodeHeight: Cardinal;
Description

This property allows to read the current initial height for new nodes and to set a new value. Note that changing the property value does not change the height of existing nodes. Only new nodes are affected.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.DefaultPasteMode Property
TVirtualDrawTree Properties | See Also | TVirtualDrawTree Class | Send Feedback

Read or set the value, which determines where to add pasted nodes to.

Pascal
property DefaultPasteMode: TVTNodeAttachMode;
Description

The default paste mode is an attach mode, which is used when pasting data from the clipboard into the tree. Usually, you will want new nodes to be added as child nodes to the currently focused node (and this is also the default value), but you can also specify to add nodes only as siblings.

See Also

TVTNodeAttachMode

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, See Also, TVirtualDrawTree Class


TVirtualDrawTree.DragCursor Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property DragCursor;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.DragHeight Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Read or set the vertical limit of the internal drag image.

Pascal
property DragHeight: Integer;
Description

The DragHeight property (as well as the DragWidth property) are only for compatibility reason in the tree. If a platform does not support the IDropTargetHelper interface (Windows 9x/Me, Windows NT 4.0) then Virtual Treeview uses its own implementation of a DragImage. Since displaying a translucent drag image is performance hungry you should limit the image size shown for the drag operation.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.DragImageKind Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Read or set what should be shown in the drag image.

Pascal
property DragImageKind: TVTDragImageKind;
Description

DragImageKind allows to switch parts of the drag image off and on.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.DragKind Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property DragKind;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.DragMode Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property DragMode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.DragOperations Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Read or set which drag operations may be allowed in the tree.

Pascal
property DragOperations: TDragOperations;
Description

Using this property you can determine, which actions may be performed when a drag operation is finished. The default value includes move, copy and link, where link is rather an esoteric value and only there because it is supported by OLE. The values used directly determine which image is shown for the drag cursor. The specified drag operations do not tell which actions will actually be performed but only, which actions are allowed. They still can be modified during drag'n drop by using a modifier key like the control, shift or alt key or can entirely be ignored by the drop handler.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.DragType Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Read or set which subsystem should be used for dragging.

Pascal
property DragType: TVTDragType;
Description

Traditionally, Delphi only supports its own drag mechanism, which is not compatible with the rest of the system. This VCL dragging also does not support to transport random data nor does it support drag operations between applications. Thus Virtual Treeview also supports the generally used OLE dragging, which in turn is incompatible with VCL dragging. Depending on your needs you can enable either VCL or OLE dragging as both together cannot be started. However, Virtual Treeview is able to act as drop target for both kind of data, independant of what is set in DragType.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.DragWidth Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Read or set the horizontal limit of the internal drag image.

Pascal
property DragWidth: Integer;
Description

The DragWidth property (as well as the DragHeight property) are only for compatibility reason in the tree. If a platform does not support the IDropTargetHelper interface (Windows 9x/Me, Windows NT 4.0) then Virtual Treeview uses its own implementation of a DragImage. Since displaying a translucent drag image is performance hungry you should limit the image size shown for the drag operation.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.DrawSelectionMode Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Read or set how multiselection with the mouse is to be visualized.

Pascal
property DrawSelectionMode: TVTDrawSelectionMode;
Description

Virtuall Treeview allows to display two different selection rectangles when doing multiselection with the mouse. One is the traditiional dotted focus rectangle and the other one is a translucent color rectangle. The latter is the preferred one but the former is set as default (for compatibility reasons).

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.EditDelay Property
TVirtualDrawTree Properties | See Also | TVirtualDrawTree Class | Send Feedback

Read or set the maximum time between two single clicks on the same node, which should start node editing.

Pascal
property EditDelay: Cardinal;
Description

A node edit operation can be started using the keyboard (F2 key), in code using EditNode or by clicking twice on the same node (but not doing a double click). EditDelay is the maxmimum time distance between both clicks in which the edit operation is started.

See Also

Editors and editing

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, See Also, TVirtualDrawTree Class


TVirtualDrawTree.Enabled Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property Enabled;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.Font Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Same as TWinControl.Font.

Pascal
property Font;
Description

See TWinControl.Font.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.Header Property
TVirtualDrawTree Properties | See Also | TVirtualDrawTree Class | Send Feedback

Provides access to the header instance.

Pascal
property Header: TVTHeader;
Description

This property is used to allow access to the header instance, which manages all aspects of the tree's header image as well as the column settings.

See Also

TVTHeader

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, See Also, TVirtualDrawTree Class


TVirtualDrawTree.HintAnimation Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Read or set the current hint animation type.

Pascal
property HintAnimation: THintAnimationType;
Description

With this property you can specify what animation you would like to play when displaying a hint. For some applications it might not be good to animate hints, hence you can entirely switch them off. Usually however you will leave the system standard. This way the user can decide whether and which hint animation he or she likes.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.HintMode Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Read or set what type of hint you want for the tree view.

Pascal
property HintMode: TVTHintMode;
Description

Virtual Treeview supports several hints modes. This includes the normal hint used for any other TControl class as well as a node specific hint, which is individual for each node or even each cell.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.HotCursor Property
TVirtualDrawTree Properties | See Also | TVirtualDrawTree Class | Send Feedback

Read or set which cursor should be used for hot nodes.

Pascal
property HotCursor: TCursor;
Description

When you enable toHotTrack in TreeOptions.PaintOptions then the node, which is currently under the mouse pointer becomes the hot node. This is a special state, which can be used for certain effects. Hot nodes have by default an underlined caption and may cause the cursor to change to what ever you like. The HotCursor property is used to specify, which cursor is to be used.

See Also

HotNode, TVTPaintOptions

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, See Also, TVirtualDrawTree Class


TVirtualDrawTree.Images Property
TVirtualDrawTree Properties | See Also | TVirtualDrawTree Class | Send Feedback

Read or set the tree's normal image list.

Pascal
property Images: TCustomImageList;
Description

Just like with TListView and TTreeview also Virtual Treeview can take an image list for its normal images. Additionally, there are image lists for state images and check images.

See Also

StateImages, CheckImages

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, See Also, TVirtualDrawTree Class


TVirtualDrawTree.IncrementalSearch Property
TVirtualDrawTree Properties | See Also | TVirtualDrawTree Class | Send Feedback

Read or set the current incremental search mode.

Pascal
property IncrementalSearch: TVTIncrementalSearch;
Description

Virtual Treeview can do an incremental search by calling back the application when comparing node captions. The IncrementalSearch property determines whether incremental search is enabled and which nodes should be searched through.

See Also

IncrementalSearchDirection, IncrementalSearchStart, IncrementalSearchTimeout

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, See Also, TVirtualDrawTree Class


TVirtualDrawTree.IncrementalSearchDirection Property
TVirtualDrawTree Properties | See Also | TVirtualDrawTree Class | Send Feedback

Read or set the direction to be used for incremental search.

Pascal
property IncrementalSearchDirection: TVTSearchDirection;
Description

When incremental search is enabled then Virtual Treeview can search forward and backward from the start point given by IncrementalSearchStart.

See Also

IncrementalSearch, IncrementalSearchStart, IncrementalSearchTime123out

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, See Also, TVirtualDrawTree Class


TVirtualDrawTree.IncrementalSearchStart Property
TVirtualDrawTree Properties | See Also | TVirtualDrawTree Class | Send Feedback

Read or set where to start incremental search.

Pascal
property IncrementalSearchStart: TVTSearchStart;
Description

When incremental search is enabled in the tree view then you can specify here, where to start the next incremental search operation from.

See Also

IncrementalSearch, IncrementalSearchDirection, IncrementalSearchTimeout

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, See Also, TVirtualDrawTree Class


TVirtualDrawTree.IncrementalSearchTimeout Property
TVirtualDrawTree Properties | See Also | TVirtualDrawTree Class | Send Feedback

Read or set the maximum time, which is allowed between two consecutive key strokes so that incremental search stays active.

Pascal
property IncrementalSearchTimeout: Cardinal;
Description

When incremental search is enabled in Virtual Treeview then you can specify here after what time incremental search should stop when no keyboard input is encountered any longer. This property so determines also the speed at which users have to type letters to keep the incremental search rolling.

See Also

IncrementalSearch, IncrementalSearchDirection, IncrementalSearchStart

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, See Also, TVirtualDrawTree Class


TVirtualDrawTree.Indent Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Read or set the indentation amount for node levels.

Pascal
property Indent: Cardinal;
Description

Each new level in the tree (child nodes of a parent node) are visually shifted to distinguish betwenn them and their parent node (that's the tree layout after all). The Indent property determines the shift distance in pixels.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.LineMode Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Read or set the mode of the tree lines.

Pascal
property LineMode: TVTLineMode;
Description

Apart from the usual lines Virtual Treeview also supports a special draw mode named bands. This allows for neat visual effects.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.LineStyle Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Read or set the mode of the tree lines.

Pascal
property LineStyle: TVTLineStyle;
Description

Virtual Treeview allows to customize the lines used to display the node hierarchy. The default style is a dotted pattern, but you can also make solid lines or specify your own line pattern.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.Margin Property
TVirtualDrawTree Properties | See Also | TVirtualDrawTree Class | Send Feedback

Read or set the tree's node margin.

Pascal
property Margin: Integer;
Description

The node margin is the distance between the cell bounds and its content like the lines, images, check box and so on. However this border is only applied to the left and right side of the node cell.

Note: there is also a TextMargin property in TVirtualStringTree, which is an additional border for the cell text only.

See Also

TVirtualStringTree.TextMargin

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, See Also, TVirtualDrawTree Class


TVirtualDrawTree.NodeAlignment Property
TVirtualDrawTree Properties | See Also | TVirtualDrawTree Class | Send Feedback

Read or set the node alignment value.

Pascal
property NodeAlignment: TVTNodeAlignment;
Description

Nodes have got an align member, which is used to determine the vertical position of the node's images and tree lines. The NodeAlignment property specifies how to interpret the value in the align member.

See Also

TVirtualNode

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, See Also, TVirtualDrawTree Class


TVirtualDrawTree.NodeDataSize Property
TVirtualDrawTree Properties | See Also | TVirtualDrawTree Class | Send Feedback

Read or set the extra data size for each node.

Pascal
property NodeDataSize: Integer;
Description

A node can have an area for user data, which can be used to store application defined, node specific data in. Use GetNodeData to get the address of this area. In addition to assigning a value here you can also use the OnGetNodeDataSize event, which is called when NodeDataSize is -1.

See Also

Data handling

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, See Also, TVirtualDrawTree Class


TVirtualDrawTree.OnClick Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnClick;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.OnContextPopup Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnContextPopup;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.OnDblClick Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnDblClick;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.OnEndDock Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnEndDock;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.OnEndDrag Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnEndDrag;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.OnEnter Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnEnter;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.OnExit Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnExit;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.OnKeyDown Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnKeyDown;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.OnKeyPress Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnKeyPress;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.OnKeyUp Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnKeyUp;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.OnMouseDown Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnMouseDown;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.OnMouseMove Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnMouseMove;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.OnMouseUp Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnMouseUp;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.OnMouseWheel Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnMouseWheel;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.OnResize Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnResize;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.OnStartDock Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnStartDock;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.OnStartDrag Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnStartDrag;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.OperationCanceled Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OperationCanceled: Boolean;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.ParentBiDiMode Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property ParentBiDiMode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.ParentColor Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property ParentColor;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.ParentCtl3D Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property ParentCtl3D;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.ParentFont Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property ParentFont;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.ParentShowHint Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property ParentShowHint;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.PopupMenu Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property PopupMenu;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.RootNodeCount Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Read or set the number of nodes on the top level.

Pascal
property RootNodeCount: Cardinal;
Description

Usually setting RootNodeCount is all what is needed to initially fill the tree. When one of the top level nodes is initialized you can set its ivsHasChildren style. This will then cause to ask to initialize the child nodes. Recursively applied, you can use this principle to create tree nodes on demand (e.g. when their parent is expanded).

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.ScrollBarOptions Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Reference to the scroll bar options class.

Pascal
property ScrollBarOptions: TScrollBarOptions;
Description

Like many other aspects in Virtual Treeview also scrollbars can be customized. See the class itself for further descriptions.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.SelectionBlendFactor Property
TVirtualDrawTree Properties | See Also | TVirtualDrawTree Class | Send Feedback

Read or set the current blend factor for the multi selection rectangle and the node selection rectangle.

Pascal
property SelectionBlendFactor: Byte;
Description

For a visually appealing tree some operations use alpha blending. One of these operations is multi selection using the mouse. Another one is the rectangle drawn around the caption of selected nodes. Both rectangles use the SelectionBlendFactor to determine how much of the underlying tree image and how much of the rectangles should be seen. The factor can be in the range of [0..255] where 0 means the rectangle is fully transparent and 255 it is fully opaque.

If you don't like to use blended node selection rectangles then switch them off by removing toUseBlendedSelection from TVTPaintOptions. For selecting a certain multi selection rectangle style use DrawSelectionMode.

Notes

Alpha blending is only enabled when the current processor supports MMX instructions. If MMX is not supported then a

dotted draw selection rectangle and an opaque node selection rectangle is used.

See Also

DrawSelectionMode, TVTPaintOptions

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, See Also, TVirtualDrawTree Class


TVirtualDrawTree.SelectionCurveRadius Property
TVirtualDrawTree Properties | See Also | TVirtualDrawTree Class | Send Feedback

Read or set the current corner radius for node selection rectangles.

Pascal
property SelectionCurveRadius: Cardinal;
Description

This is a special property to determine the radius of the corners of the selection rectangle for a node caption. Virtual Treeview supports not only simple rectangular selection marks but also such with rounded corners. This feature, however, is only available if blended node selection rectangles are disabled.

See Also

SelectionBlendFactor, DrawSelectionMode, TVTPaintOptions

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, See Also, TVirtualDrawTree Class


TVirtualDrawTree.ShowHint Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property ShowHint;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.StateImages Property
TVirtualDrawTree Properties | See Also | TVirtualDrawTree Class | Send Feedback

Reference to the images list which is used for the state images.

Pascal
property StateImages: TCustomImageList;
Description

Each node can (in each column) have several images. One is the check image which is supplied by internal image lists or a special external list (see also CustomCheckImages). Another one is the state image and yet another one the normal/selected image.

See Also

CheckImages, Images

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, See Also, TVirtualDrawTree Class


TVirtualDrawTree.TabOrder Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property TabOrder;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.TabStop Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property TabStop;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.TextMargin Property
TVirtualDrawTree Properties | See Also | TVirtualDrawTree Class | Send Feedback

Read or set the distance of the node caption to its borders.

Pascal
property TextMargin: Integer;
Description

TextMargin is used to define a border like area within the content rectangle of a node. This rectangle is the area of the node less the space used for indentation, images, lines and node margins and usually contains the text of a node. In order to support finer adjustment there is another margin, which only applies to the left and right border in the content rectangle. This is the text margin.

See Also

Margin

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, See Also, TVirtualDrawTree Class


TVirtualDrawTree.TreeOptions Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Reference to the tree's options.

Pascal
property TreeOptions: TVirtualTreeOptions;
Description

The tree options are one of the main switchs to modify a treeview's behavior. Virtual Treeview supports customizing tree options by descentants. This allows very fine adjustments for derived tree classes, including the decision which properties should be published. For more information about the base options see TCustomVirtualTreeOptions and its descentants.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.Visible Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property Visible;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree.WantTabs Property
TVirtualDrawTree Properties | TVirtualDrawTree Class | Send Feedback

Read or set whether the tree wants to process tabs on its own.

Pascal
property WantTabs: Boolean;
Description

Usually tab kex strokes advance the input focus from one control to another on a form. For special processing however it is necessary to let the control decide what to do with the given tabulator character. Virtual Treeview needs this character mainly for its grid emulation.

Group

TVirtualDrawTree Properties

Links
TVirtualDrawTree Properties, TVirtualDrawTree Class


TVirtualDrawTree Events
Events | TVirtualDrawTree Class | Legend | Send Feedback

The events of the TVirtualDrawTree class are listed here.

Class

TVirtualDrawTree Class

Legend

Event
published

Links
Events, TVirtualDrawTree Class, Legend
What do you think about this topic? Send feedback!


TVirtualDrawTree.OnAddToSelection Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnAddToSelection: TVTAddToSelectionEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnAdvancedHeaderDraw Event
TVirtualDrawTree Events | See Also | TVirtualDrawTree Class | Send Feedback

Header paint support event.

Pascal
property OnAdvancedHeaderDraw: TVTAdvancedHeaderPaintEvent;
Description

The OnAdvancedHeaderDraw event is used when owner draw is enabled for the header and a column is set to owner draw mode. It can be used to custom draw only certain parts of the header instead the whole thing. A good example for this event is customizing the background of the header for only one column. With the standard custom draw method (OnHeaderDraw) you are in an all-or-nothing situation and have to paint everything in the header including the text, images and sort direction indicator. OnAdvancedHeaderDraw however uses OnHeaderDrawQueryElements to ask for the elements the application wants to draw and acts accordingly.

See Also

OnHeaderDrawQueryElements, OnHeaderDraw

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, See Also, TVirtualDrawTree Class


TVirtualDrawTree.OnAfterAutoFitColumn Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnAfterAutoFitColumn: TVTAfterAutoFitColumnEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnAfterAutoFitColumns Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnAfterAutoFitColumns: TVTAfterAutoFitColumnsEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnAfterCellPaint Event
TVirtualDrawTree Events | See Also | TVirtualDrawTree Class | Send Feedback

Paint support event.

Pascal
property OnAfterCellPaint: TVTAfterCellPaintEvent;
Description

This event is called whenever a cell has been painted. A cell is defined as being one part of a node bound to a certain column. This event is called several times per node (the amount is determined by visible columns and size of the part to draw).

See Also

Paint cycles and stages

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, See Also, TVirtualDrawTree Class


TVirtualDrawTree.OnAfterColumnExport Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnAfterColumnExport: TVTColumnExportEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnAfterColumnWidthTracking Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnAfterColumnWidthTracking: TVTAfterColumnWidthTrackingEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnAfterGetMaxColumnWidth Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnAfterGetMaxColumnWidth: TVTAfterGetMaxColumnWidthEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnAfterHeaderExport Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnAfterHeaderExport: TVTTreeExportEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnAfterHeaderHeightTracking Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnAfterHeaderHeightTracking: TVTAfterHeaderHeightTrackingEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnAfterItemErase Event
TVirtualDrawTree Events | See Also | TVirtualDrawTree Class | Send Feedback

Paint support event.

Pascal
property OnAfterItemErase: TVTAfterItemEraseEvent;
Description

Called after the background of a node has been erased (erasing can also be filling with a background image). This event is called once per node in a paint cycle.

See Also

Paint cycles and stages

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, See Also, TVirtualDrawTree Class


TVirtualDrawTree.OnAfterItemPaint Event
TVirtualDrawTree Events | See Also | TVirtualDrawTree Class | Send Feedback

Paint support event.

Pascal
property OnAfterItemPaint: TVTAfterItemPaintEvent;
Description

Called after a node has been drawn. This event is called once per node.

See Also

Paint cycles and stages

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, See Also, TVirtualDrawTree Class


TVirtualDrawTree.OnAfterNodeExport Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnAfterNodeExport: TVTNodeExportEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnAfterPaint Event
TVirtualDrawTree Events | See Also | TVirtualDrawTree Class | Send Feedback

Paint support event.

Pascal
property OnAfterPaint: TVTPaintEvent;
Description

Called after all nodes which needed an update have been drawn. This event is called once per paint cycle.

See Also

Paint cycles and stages

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, See Also, TVirtualDrawTree Class


TVirtualDrawTree.OnAfterTreeExport Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnAfterTreeExport: TVTTreeExportEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnBeforeAutoFitColumn Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnBeforeAutoFitColumn: TVTBeforeAutoFitColumnEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnBeforeAutoFitColumns Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnBeforeAutoFitColumns: TVTBeforeAutoFitColumnsEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnBeforeCellPaint Event
TVirtualDrawTree Events | See Also | TVirtualDrawTree Class | Send Feedback

Paint support event.

Pascal
property OnBeforeCellPaint: TVTBeforeCellPaintEvent;
Description

This event is called immediately before a cell is painted.

See Also

Paint cycles and stages

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, See Also, TVirtualDrawTree Class


TVirtualDrawTree.OnBeforeColumnExport Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnBeforeColumnExport: TVTColumnExportEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnBeforeColumnWidthTracking Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnBeforeColumnWidthTracking: TVTBeforeColumnWidthTrackingEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnBeforeDrawTreeLine Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnBeforeDrawTreeLine: TVTBeforeDrawLineImageEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnBeforeGetMaxColumnWidth Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnBeforeGetMaxColumnWidth: TVTBeforeGetMaxColumnWidthEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnBeforeHeaderExport Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnBeforeHeaderExport: TVTTreeExportEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnBeforeHeaderHeightTracking Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnBeforeHeaderHeightTracking: TVTBeforeHeaderHeightTrackingEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnBeforeItemErase Event
TVirtualDrawTree Events | See Also | TVirtualDrawTree Class | Send Feedback

Paint support event.

Pascal
property OnBeforeItemErase: TVTBeforeItemEraseEvent;
Description

Called when the background of a node is about to be erased.

See Also

Paint cycles and stages

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, See Also, TVirtualDrawTree Class


TVirtualDrawTree.OnBeforeItemPaint Event
TVirtualDrawTree Events | See Also | TVirtualDrawTree Class | Send Feedback

Paint support event.

Pascal
property OnBeforeItemPaint: TVTBeforeItemPaintEvent;
Description

Called after the background of a node has been drawn and just before the node itself is painted. In this event the application gets the opportunity to decide whether a node should be drawn normally or should be skipped. The application can draw the node itself if necessary or leave the node area blank.

See Also

Paint cycles and stages

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, See Also, TVirtualDrawTree Class


TVirtualDrawTree.OnBeforeNodeExport Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnBeforeNodeExport: TVTNodeExportEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnBeforePaint Event
TVirtualDrawTree Events | See Also | TVirtualDrawTree Class | Send Feedback

Paint support event.

Pascal
property OnBeforePaint: TVTPaintEvent;
Description

Called as very first event in a paint cycle. In this event has the application the opportunity to do some special preparation of the canvas onto which the tree is painted, e.g. setting a special viewport and origin or a different mapping mode.

See Also

Paint cycles and stages

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, See Also, TVirtualDrawTree Class


TVirtualDrawTree.OnBeforeTreeExport Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnBeforeTreeExport: TVTTreeExportEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnCanSplitterResizeColumn Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnCanSplitterResizeColumn: TVTCanSplitterResizeColumnEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnCanSplitterResizeHeader Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnCanSplitterResizeHeader: TVTCanSplitterResizeHeaderEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnCanSplitterResizeNode Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnCanSplitterResizeNode: TVTCanSplitterResizeNodeEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnChange Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Navigation support event.

Pascal
property OnChange: TVTChangeEvent;
Description

Called when a node's selection state has changed.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnChecked Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Check support event.

Pascal
property OnChecked: TVTChangeEvent;
Description

Triggered when a node's check state has changed.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnChecking Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Check support event.

Pascal
property OnChecking: TVTCheckChangingEvent;
Description

Triggered when a node's check state is about to change and allows to prevent the change.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnCollapsed Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnCollapsed: TVTChangeEvent;
Description

Triggered after a node has been collapsed, that is, its child nodes are no longer displayed.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnCollapsing Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnCollapsing: TVTChangingEvent;
Description

Triggered when a node is about to be collapsed and allows to prevent collapsing the node by setting Allowed to false.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnColumnClick Event
TVirtualDrawTree Events | See Also | TVirtualDrawTree Class | Send Feedback

Header and column support event.

Pascal
property OnColumnClick: TVTColumnClickEvent;
Description

Triggered when the user released a mouse button over the same column in the client area on which the button was pressed previously.

See Also

OnHeaderClick

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, See Also, TVirtualDrawTree Class


TVirtualDrawTree.OnColumnDblClick Event
TVirtualDrawTree Events | See Also | TVirtualDrawTree Class | Send Feedback

Header and column support event.

Pascal
property OnColumnDblClick: TVTColumnDblClickEvent;
Description

Same as OnColumnClick but for double clicks.

See Also

OnColumnClick, OnHeaderDblClick

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, See Also, TVirtualDrawTree Class


TVirtualDrawTree.OnColumnExport Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnColumnExport: TVTColumnExportEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnColumnResize Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Header and column support routine.

Pascal
property OnColumnResize: TVTHeaderNotifyEvent;
Description

Triggered when a column is being resized. During resize OnColumnResize is frequently hence you should make any code in the associated event handle a short and fast as possible.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnColumnWidthDblClickResize Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnColumnWidthDblClickResize: TVTColumnWidthDblClickResizeEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnColumnWidthTracking Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnColumnWidthTracking: TVTColumnWidthTrackingEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnCompareNodes Event
TVirtualDrawTree Events | See Also | TVirtualDrawTree Class | Send Feedback

Sort and search support event.

Pascal
property OnCompareNodes: TVTCompareEvent;
Description

This event is the core event for all comparations between nodes. It is important that you write a handler for this event if you want to sort nodes!

Result must be set to less than 0 if Node1 is considered as being before Node2, equal to 0 if both a considered being the same and greater than 0 if the first node is considered as being after node 2. Keep in mind that you don't need to take sort direction into account. This is automatically handled by the tree. Simply return a comparation result as would there be an ascending sort order.

Below is some sample code taken from the Advanced Demo:

procedure TMainForm.VDT1CompareNodes(Sender: TBaseVirtualTree; Node1, Node2: PVirtualNode; Column: Integer;
  var Result: Integer);

// used to sort the image draw tree

var
  Data1,
  Data2: PImageData;

begin
  Data1 := Sender.GetNodeData(Node1);
  Data2 := Sender.GetNodeData(Node2);
  // folder are always before files
  if Data1.IsFolder <> Data2.IsFolder then
  begin
    // one of both is a folder the other a file
    if Data1.IsFolder then
      Result := -1
    else
      Result := 1;
  end
  else // both are of same type (folder or file)
    Result := CompareText(Data1.FullPath, Data2.FullPath);
end;
See Also

SortTree, Sort

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, See Also, TVirtualDrawTree Class


TVirtualDrawTree.OnCreateDataObject Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Drag'n drop support event.

Pascal
property OnCreateDataObject: TVTCreateDataObjectEvent;
Description

This event is called when the tree's drag manager needs a data object interface to start a drag'n drop operation. Descentants (which override DoGetDataObject) or the application can return an own IDataObject implementation to support special formats.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnCreateDragManager Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Drag'n drop support event.

Pascal
property OnCreateDragManager: TVTCreateDragManagerEvent;
Description

This event is usually not used but allows power users to create their own drag manager to have different actions and/or formats than the internal drag manager.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnCreateEditor Event
TVirtualDrawTree Events | See Also | TVirtualDrawTree Class | Send Feedback

Editing support event.

Pascal
property OnCreateEditor: TVTCreateEditorEvent;
Description

Allows to supply a customized node editor without changing the tree. TBaseVirtualTree triggers this event and raises an exception if there no editor is returned. If you don't want this then disable edit support for nodes in TreeOptions.MiscOptions. Descentants like TCustomVirtualStringTree supply a generic and simple string editor.

See Also

Editors and editing

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, See Also, TVirtualDrawTree Class


TVirtualDrawTree.OnDragAllowed Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Drag'n drop support event.

Pascal
property OnDragAllowed: TVTDragAllowedEvent;
Description

This event is called in the mouse button down handler to determine whether the application allows to start a drag operation. Since this check is done in sync with the other code it is much prefered over doing a manual BeginDrag.

Notes

The OnDragAllowed event is called only if the current DragMode is dmManual.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnDragDrop Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Drag'n drop support event.

Pascal
property OnDragDrop: TVTDragDropEvent;
Description

Triggered when either a VCL or a OLE drop action occured. Accepting drag and drop actions is not trivial. In order to maintain a minimum compatibility with the VCL drag'n drop system Virtual Tree accepts not only OLE drop actions but also those issued by the Delphi VCL (which is totally different to the OLE way, unfortunately), provided toAcceptOLEDrop is set in TreeOptions.MiscOptions. The code snippet below is taken from a sample project provided with Virtual Tree. It shows a general way to deal with dropped data. The following check list can be used as orientation and additional comment to the code:

  1. Determine what kind of drop data is passed. If DataObject is nil or Formats is empty then the drag source is a VCL control. The event is not triggered for OLE drag'n drop if there is no OLE format is available (which should never occur).
  2. If the event is triggered by a VCL control then use Source to access either the control or the drag object, depending on the circumstances of the action.
  3. For OLE drag'n drop iterate through the Formats list to find a format you can handle.
  4. If you find CF_VIRTUALTREE then the source of the drag operation is a Virtual Treeview. Since this is the native tree format you can pass it to the Sender's ProcessDrop method which will take care to retrieve the data and act depending on Effect and Mode. No further action by the application is usually required in this case.
  5. If you do not find CF_VIRTUALTREE then the operation has been initiated by another application, e.g. the Explorer (then you will find CF_HDROP or CF_SHELLIDLIST in formats) or Notepad (then you will get CF_TEXT and perhaps CF_UNICODETEXT) etc., depending on the data which is actually dropped.
  6. Use the provided DataObject to get the drop data via IDataObject.GetData and act depending on the format you get.
  7. Finally set Effect to either DROPEFFECT_COPY, DROPEFFECT_MOVE or DROPEFFECT_NONE to indicate which operation needs to be finished in Sender when the event returns. If you return DROPEFFECT_MOVE then all marked nodes in the source tree will be deleted, otherwise they stay where they are.

procedure TMainForm.VTDragDrop(Sender: TBaseVirtualTree; Source: TObject; DataObject: IDataObject;
  const Formats: array of Word; Shift: TShiftState; Pt: TPoint; var Effect: Integer; Mode: TDropMode);

var
  I: Integer;
  AttachMode: TVTNodeAttachMode;

begin
  if Length(Formats) > 0 then
  begin
    // OLE drag'n drop
    // If the native tree format is listed then use this and accept the drop, otherwise recject (ignore) it.
    // It is recommend by Microsoft to order available clipboard formats in decreasing detail richness so
    // the first best format which we can accept is usually the best format we can get at all.
    for I := 0 to High(Formats) do
      if Formats[I] = CF_VIRTUALTREE then
      begin
        case Mode of
          dmAbove:
            AttachMode := amInsertBefore;
          dmOnNode:
            AttachMode := amAddChildLast;
          dmBelow:
            AttachMode := amInsertAfter;
        else
          if Assigned(Source) and (Source is TBaseVirtualTree) and (Sender <> Source) then
            AttachMode := amInsertBefore
          else
            AttachMode := amNowhere;
        end;
        // in the case the drop target does an optimized move Effect is set to DROPEFFECT_NONE
        // to indicate this also to the drag source (so the source doesn't need to take any further action)
        Sender.ProcessDrop(DataObject, Sender.DropTargetNode, Effect, AttachMode);
        Break;
      end;
  end
  else
  begin
    // VCL drag'n drop, Effects contains by default both move and copy effect suggestion,
    // as usual the application has to find out what operation is finally to do
    Beep;
  end;
end;
Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnDragOver Event
TVirtualDrawTree Events | See Also | TVirtualDrawTree Class | Send Feedback

Drag'n drop support event.

Pascal
property OnDragOver: TVTDragOverEvent;
Description

Triggered when Sender is the potential target of a drag'n drop operation. You can use this event to allow or deny a drop operation by setting Allowed to True or False, respectively. For conditions of OLE or VCL drag source see OnDragDrop.

See Also

OnDragDrop

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, See Also, TVirtualDrawTree Class


TVirtualDrawTree.OnDrawHint Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Triggered when a node hint or tooltip must be drawn.

Pascal
property OnDrawHint: TVTDrawHintEvent;
Description

Use an event handler for OnDrawHint to draw the hint or tooltip for the given node. You must implement this event and OnGetHintSize to get a hint at all.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnDrawNode Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Triggered when a node must be drawn.

Pascal
property OnDrawNode: TVTDrawNodeEvent;
Description

Use an event handler for OnDrawNode to draw the actual content for the given node.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnEdited Event
TVirtualDrawTree Events | See Also | TVirtualDrawTree Class | Send Feedback

Editing support event.

Pascal
property OnEdited: TVTEditChangeEvent;
Description

Triggered when an edit action has successfully been finished.

See Also

Editors and editing

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, See Also, TVirtualDrawTree Class


TVirtualDrawTree.OnEditing Event
TVirtualDrawTree Events | See Also | TVirtualDrawTree Class | Send Feedback

Editing support event.

Pascal
property OnEditing: TVTEditChangingEvent;
Description

Triggered when a node is about to be edited. Use Allowed to allow or deny this action.

See Also

Editors and editing

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, See Also, TVirtualDrawTree Class


TVirtualDrawTree.OnEndOperation Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnEndOperation: TVTOperationEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnExpanded Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Misscellaneous event.

Pascal
property OnExpanded: TVTChangeEvent;
Description

Triggered after a node has been expanded.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnExpanding Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnExpanding: TVTChangingEvent;
Description

Triggered just before a node is expanded. Use Allowed to allow or deny this action.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnFocusChanged Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Navigation support event.

Pascal
property OnFocusChanged: TVTFocusChangeEvent;
Description

Triggered after the focused node changed. When examining Node keep in mind that it can be nil, meaning there is no focused node.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnFocusChanging Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Navigation support event.

Pascal
property OnFocusChanging: TVTFocusChangingEvent;
Description

Triggered when the node focus is about to change. You can use Allowed to allow or deny a focus change. Keep in mind that either the old or the new node can be nil.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnFreeNode Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Data management node.

Pascal
property OnFreeNode: TVTFreeNodeEvent;
Description

Triggered when a node is about to be freed. This is the ideal place to free/disconnect your own data you associated with Node. Keep in mind, that data which is stored directly in the node does not need to be free by the application. This is part of the node record and will be freed when the node is freed. You should however finalize the data in such a case if it contains references to external memory objects (e.g. variants, strings, interfaces).

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnGetCellIsEmpty Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Triggered when the tree control needs to know whether a given column is empty.

Pascal
property OnGetCellIsEmpty: TVTGetCellIsEmptyEvent;
Description

Virtual Treeview supports the concept of column spanning where one cell with too much text to fit into its own space can expand to the right cell neighbors if they are empty. To make this work it is necessary to know if a cell is considered as being empty, whatever this means to an application. The string tree descendant simply checks the text for the given cell and calls back its ancestor if there is no text to further refine if the cell must stay as if it contained something. The ancestor (TBaseVirtualTree) now triggers OnGetCellIsEmpty to let the application decide.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnGetCursor Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnGetCursor: TVTGetCursorEvent;
Description

This event is triggered from the WM_SETCURSOR message to allow the application use several individual cursors for a tree. The Cursor property allows to set one cursor for the whole control but not to use separate cursors for different tree parts.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnGetHeaderCursor Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Header and column support event.

Pascal
property OnGetHeaderCursor: TVTGetHeaderCursorEvent;
Description

This event is triggered from the WM_SETCURSOR message to allow the application to define individual cursors for the header part of the tree control.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnGetHelpContext Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnGetHelpContext: TVTHelpContextEvent;
Description

This event is usually triggered when the user pressed F1 while the tree has the focus. The tree is iteratively traversed all the way up to the top level parent of the given node until a valid help context index is returned (via this event). When the loop reaches the top level without getting a help index then the tree control's help index is used. If the tree itself does not have a help context index then a further traversal is initiated going up parent by parent of each control in the current window hierarchy until either a valid index is found or there is no more window parent.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnGetHintSize Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Triggered when a node hint or tooltip is about to show.

Pascal
property OnGetHintSize: TVTGetHintSizeEvent;
Description

Use an event handler for OnGetHintSize to return the size of the tooltip/hint window for the given node. You must implement this event and OnDrawHint to get a hint at all.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnGetImageIndex Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Display management event.

Pascal
property OnGetImageIndex: TVTGetImageEvent;
Description

This event is triggered whenever the tree needs the index of an image, be it the normal, the selected or the state image. The event should be as fast as possible because it is at times frequently called when the layout of the node must be determined, e.g. while doing draw selection with the mouse or painting the tree. Kind determines which image is needed and Column determines for which column of the node the image is needed. This value can be -1 to indicate there is no column used. The parameter Ghosted can be set to true to blend the image 50% against the tree background and can be used for instance in explorer trees to mark hidden file system objects. Additionally nodes are also drawn with a ghosted icon if the are part of a cut set during a pending cut-to-clipboard operation. In this case changing the ghosted parameter has no effect.

Notes

Blending nodes can be switched by using toUseBlendImages in TreeOptions.PaintOptions.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnGetImageIndexEx Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnGetImageIndexEx: TVTGetImageExEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnGetLineStyle Event
TVirtualDrawTree Events | See Also | TVirtualDrawTree Class | Send Feedback

Display management event.

Pascal
property OnGetLineStyle: TVTGetLineStyleEvent;
Description

This event is used to customize the appearance of the tree and grid lines and is only triggered if the LineStyle property is set to lsCustomStyle. The event must return a pointer to an array containing bits for an 8 x 8 pixel image with word aligned entries. For more info see PrepareBitmaps and the Windows APIs CreateBitmap and CreatePatternBrush.

Notes

It is important that you do not use dynamically allocated memory in this event (also no local variables on the stack). If

you do so then either the memory is not valid on return of the event (if allocated on stack) or will never be freed (if

allocated with a memory manager). Instead use a constant array and return its address.

See Also

PrepareBitmaps

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, See Also, TVirtualDrawTree Class


TVirtualDrawTree.OnGetNodeDataSize Event
TVirtualDrawTree Events | See Also | TVirtualDrawTree Class | Send Feedback

Data management event.

Pascal
property OnGetNodeDataSize: TVTGetNodeDataSizeEvent;
Description

Triggered when access to a node's data happens the first time but the actual data size is not yet set. Usually you would specify the size of the data you want to have added to each node by NodeDataSize, e.g. SizeOf(TMyRecord) is quite usual there (where TMyRecord is the structure you want to have stored in the node). Sometimes, however it is not possible to determine the node size in advance, so you can leave NodeDataSize being -1 (the default value) and the OnGetNodeDataSize event is triggered as soon as the first regular node is created (the hidden root node does not have user data but internal data which is determined by other means).

See Also

NodeDataSize, Data handling

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, See Also, TVirtualDrawTree Class


TVirtualDrawTree.OnGetNodeWidth Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Triggered when a node is about to be drawn.

Pascal
property OnGetNodeWidth: TVTGetNodeWidthEvent;
Description

Use an event handler for OnGetNodeWidth to return your calculated width for the given node. Since the draw does not know the width of a node you have to tell it yourself.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnGetPopupMenu Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnGetPopupMenu: TVTPopupEvent;
Description

This event allows the application to return a popup menu which is specific to a certain node. The tree does an automatic traversal all the way up to the top level node which is the parent of a given node to get a popup menu. If Menu is set then the traversal stops. Otherwise it continues until either a menu is set, AskParent is set to False or the top level parent has been reached.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnGetUserClipboardFormats Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Drag'n drop and clipboard support event.

Pascal
property OnGetUserClipboardFormats: TVTGetUserClipboardFormatsEvent;
Description

Whenever the tree needs to specify the available clipboard formats for a clipboard or drag'n drop operation it calls this event too, to allow the application or descentants (which would override DoGetUserClipboardFormats) to specify own formats which can be rendered. Since the build-in data object does not know how to render formats which are specified here you have to supply a handler for the OnRenderOLEData event or an own IDataObject implementation to fully support your own formats.

Use the Formats parameter which is an open array and add the identifiers of your formats (which you got when you registered the format).

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnHeaderClick Event
TVirtualDrawTree Events | See Also | TVirtualDrawTree Class | Send Feedback

Header & column support event.

Pascal
property OnHeaderClick: TVTHeaderClickEvent;
Description

This event is triggered when the user clicks on a header button and is usually a good place to set the current SortColumn and SortDirection.

See Also

SortColumn, SortDirection

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, See Also, TVirtualDrawTree Class


TVirtualDrawTree.OnHeaderDblClick Event
TVirtualDrawTree Events | See Also | TVirtualDrawTree Class | Send Feedback

Header & column support event.

Pascal
property OnHeaderDblClick: TVTHeaderClickEvent;
Description

Unlike OnHeaderClick this event is triggered for double clicks on any part of the header and comes with more detailed information like shift state, which mouse button caused the event and the mouse position.

See Also

OnHeaderClick

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, See Also, TVirtualDrawTree Class


TVirtualDrawTree.OnHeaderDragged Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Header & column support event.

Pascal
property OnHeaderDragged: TVTHeaderDraggedEvent;
Description

Triggered after the user has released the left mouse button when a header drag operation was active. Column contains the index of the column which was dragged. Use this index for the Columns property of the header to find out the current position. OldPosition is the position which Column occupied before it was dragged around.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnHeaderDraggedOut Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Header & column support event.

Pascal
property OnHeaderDraggedOut: TVTHeaderDraggedOutEvent;
Description

When during a header drag operation the mouse moves out of the header rectangle and the mouse button is released then an OnHeaderDraggedOut event will be fired with the target mouse position in screen coordinates.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnHeaderDragging Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Header & column support event.

Pascal
property OnHeaderDragging: TVTHeaderDraggingEvent;
Description

Triggered just before dragging of a header button starts. Set Allowed to False if you want to prevent the drag operation of the given column.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnHeaderDraw Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Header & column support event.

Pascal
property OnHeaderDraw: TVTHeaderPaintEvent;
Description

If you set the hoOwnerDraw style in TVTHeader.Options and a column has been set to vsOwnerDraw (see also TVirtualTreeColumn.Style) then OnDrawHeader is called whenever a column needs painting.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnHeaderDrawQueryElements Event
TVirtualDrawTree Events | See Also | TVirtualDrawTree Class | Send Feedback

Header & column support event.

Pascal
property OnHeaderDrawQueryElements: TVTHeaderPaintQueryElementsEvent;
Description

Used for advanced header painting to query the application for the elements, which are drawn by it and which should be drawn by the tree.

See Also

OnAdvancedHeaderDraw

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, See Also, TVirtualDrawTree Class


TVirtualDrawTree.OnHeaderHeightDblClickResize Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnHeaderHeightDblClickResize: TVTHeaderHeightDblClickResizeEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnHeaderHeightTracking Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnHeaderHeightTracking: TVTHeaderHeightTrackingEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnHeaderMouseDown Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Header & column support event.

Pascal
property OnHeaderMouseDown: TVTHeaderMouseEvent;
Description

This event is similar to OnHeaderClick but comes with more detailed information like shift state, which mouse button caused the event and the mouse position.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnHeaderMouseMove Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Header & column support event.

Pascal
property OnHeaderMouseMove: TVTHeaderMouseMoveEvent;
Description

This event is triggered when the mouse pointer is moved over the header area.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnHeaderMouseUp Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Header & column support event.

Pascal
property OnHeaderMouseUp: TVTHeaderMouseEvent;
Description

This event is very much like OnHeaderMouseDown but is triggered when a mouse button is released.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnHotChange Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Navigation support event.

Pascal
property OnHotChange: TVTHotNodeChangeEvent;
Description

This event is triggered if hot tracking is enabled (see also TreeOptions.PaintOptions) and when the mouse pointer moves from one node caption to another. In full row select mode most parts of a node are considered as being part of the caption.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnIncrementalSearch Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnIncrementalSearch: TVTIncrementalSearchEvent;
Description

This event is integral part of the incremental search functionality (see also Keyboard, hotkeys and incremental search). It is triggered during search for a node which matches the given string. Similar to other compare routines return a value < 0 if the node's caption is considered as being before the given text, = 0 if it is the same and > 0 if it is considered being after the given text.

procedure TfrmProperties.VST3IncrementalSearch(Sender: TBaseVirtualTree; Node: PVirtualNode; const Text: WideString;
  var Result: Integer);

var
  S, PropText: string;

begin
  // Note: This code requires a proper Unicode/WideString comparison routine which I did not want to link here for
  // size and clarity reasons. For now strings are (implicitly) converted to ANSI to make the comparison work.
  // Search is not case sensitive.
  S := Text;
  if Node.Parent = Sender.RootNode then
  begin
    // root nodes
    if Node.Index = 0 then
      PropText := 'Description'
    else
      PropText := 'Origin';
  end
  else
  begin
    PropText := PropertyTexts[Node.Parent.Index, Node.Index, ptkText];
  end;

  // By using StrLIComp we can specify a maximum length to compare. This allows us to find also nodes
  // which match only partially.
  Result := StrLIComp(PChar(S), PChar(PropText), Min(Length(S), Length(PropText)))
end;
Notes

Usually incremental search allows to match also partially. Hence it is recommended to do comparison only up to the length

of the shorter string.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnInitChildren Event
TVirtualDrawTree Events | See Also | TVirtualDrawTree Class | Send Feedback

Node management event.

Pascal
property OnInitChildren: TVTInitChildrenEvent;
Description

In order to allow the tree only to fill content where needed it is possible to set the vsHasChildren style in a node's initializaton whithout really adding any child nodes. These child nodes must be initialized first when they are about to be displayed or another access (like search, iteration etc.) occurs.

The application usually prepares data needed to fill child nodes when they are initialized and retrieves the actual number. Set ChildCount to the number of children you want.

See Also

The virtual paradigm

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, See Also, TVirtualDrawTree Class


TVirtualDrawTree.OnInitNode Event
TVirtualDrawTree Events | See Also | TVirtualDrawTree Class | Send Feedback

Node management event.

Pascal
property OnInitNode: TVTInitNodeEvent;
Description

This event is important to connect the tree to your internal data. It is the ideal place to put references or whatever you need into a node's data area. You can set some initial states like selection, expansion state or that a node has child nodes.

See Also

The virtual paradigm

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, See Also, TVirtualDrawTree Class


TVirtualDrawTree.OnKeyAction Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnKeyAction: TVTKeyActionEvent;
Description

This event is a convinient way for the application or descentant trees to change the semantic of a certain key stroke. It is triggered when the user presses a key and allows either to process that key normally (leave DoDefault being True) or change it to another key instead (set DoDefault to False then). This way a key press can change its meaning or entirely be ignored (if CharCode is set to 0).

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnLoadNode Event
TVirtualDrawTree Events | See Also | TVirtualDrawTree Class | Send Feedback

Streaming support event.

Pascal
property OnLoadNode: TVTSaveNodeEvent;
Description

This event is typically triggered when serialized tree data must be restored, e.g. when loading the tree from file or stream or during a clipboard/drag'n drop operation. You should only read in what you wrote out in OnSaveNode. For safety there is a check in the loader code which tries to keep the internal serialization structure intact in case the application does not read correctly.

See Also

OnSaveNode, LoadFromStream, SaveToStream, AddFromStream, VTTreeStreamVersion, TVTHeader.LoadFromStream, TVTHeader.SaveToStream

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, See Also, TVirtualDrawTree Class


TVirtualDrawTree.OnLoadTree Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnLoadTree: TVTSaveTreeEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnMeasureItem Event
TVirtualDrawTree Events | See Also | TVirtualDrawTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnMeasureItem: TVTMeasureItemEvent;
Description

Virtual Treeview supports individual node heights. However it might sometimes unpractical to set this height in advance (e.g. during OnInitNode). Another scenario might be that multi line nodes must size themselves to accomodate the entire node text without clipping. For such and similar cases the event OnMeasureItem is for. It is queried once for each node and allows to specify the node's future height. If you later want to have a new height applied (e.g. because the node's text changed) then call InvalidateNode for it and its vsHeightMeasured state is reset causing so the tree to trigger the OnMeasureItem event again when the node is painted the next time.

See Also

InvalidateNode, vsHeightMeasured

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, See Also, TVirtualDrawTree Class


TVirtualDrawTree.OnNodeClick Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnNodeClick: TVTNodeClickEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnNodeCopied Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnNodeCopied: TVTNodeCopiedEvent;
Description

This event is triggered during drag'n drop after a node has been copied to a new location. Sender is the target tree where the copy operation took place.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnNodeCopying Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnNodeCopying: TVTNodeCopyingEvent;
Description

This event is triggered when a node is about to be copied to a new location. Use Allowed to allow or deny the action. Sender is the target tree where the copy operation will take place.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnNodeDblClick Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnNodeDblClick: TVTNodeClickEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnNodeExport Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnNodeExport: TVTNodeExportEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnNodeHeightDblClickResize Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnNodeHeightDblClickResize: TVTNodeHeightDblClickResizeEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnNodeHeightTracking Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnNodeHeightTracking: TVTNodeHeightTrackingEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnNodeMoved Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnNodeMoved: TVTNodeMovedEvent;
Description

This event is very much like OnNodeCopied but used for moving nodes instead.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnNodeMoving Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnNodeMoving: TVTNodeMovingEvent;
Description

This event is very much like OnNodeCopying but used for moving nodes instead.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnPaintBackground Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Paint support event.

Pascal
property OnPaintBackground: TVTBackgroundPaintEvent;
Description

This event is triggered when the tree has finished its painting and there is an area which is not covered by nodes. For nodes there are various events to allow background customizaton. For the free area in the tree window there is this event.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnRemoveFromSelection Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnRemoveFromSelection: TVTRemoveFromSelectionEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnRenderOLEData Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Drag'n drop and clipboard support event.

Pascal
property OnRenderOLEData: TVTRenderOLEDataEvent;
Description

This event is triggered when the data in a clipboard or drag'n drop operation must be rendered but the built-in data object does not know the requested format. This is usually the case when the application (or descentants) have specified their own formats in OnGetUserClipboardFormats.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnResetNode Event
TVirtualDrawTree Events | See Also | TVirtualDrawTree Class | Send Feedback

Node management event.

Pascal
property OnResetNode: TVTChangeEvent;
Description

For large trees or simply because the content changed it is sometimes necessary to discard a certain node and release all its children. This can be done with ResetNode which will trigger this event.

See Also

ResetNode

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, See Also, TVirtualDrawTree Class


TVirtualDrawTree.OnSaveNode Event
TVirtualDrawTree Events | See Also | TVirtualDrawTree Class | Send Feedback

Streaming support event.

Pascal
property OnSaveNode: TVTSaveNodeEvent;
Description

This event is triggered whenever a certain node must be serialized into a stream, e.g. for saving to file or for copying to another tree/node during a clipboard or drag'n drop operation. Make sure you only store non-transient data into the stream. Pointers (including long/wide string references) are transient and the application cannot assume to find the data a pointer references on saving at the same place when the node is loaded (see also OnLoadNode). This is even more essential for nodes which are moved or copied between different trees in different processes (applications). Storing strings however is easily done by writing the strings as a whole into the stream.

Notes

For exchanging data between different trees and for general stability improvement I strongly recommend that you insert a

kind of identifier as first stream entry when saving a node. This identifier can then be used to determine what data will

follow when loading the node later and does normally not required to be stored in the node data.

See Also

OnLoadNode, LoadFromStream, SaveToStream, AddFromStream, VTTreeStreamVersion, TVTHeader.LoadFromStream, TVTHeader.SaveToStream

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, See Also, TVirtualDrawTree Class


TVirtualDrawTree.OnSaveTree Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnSaveTree: TVTSaveTreeEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnScroll Event
TVirtualDrawTree Events | See Also | TVirtualDrawTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnScroll: TVTScrollEvent;
Description

This event is triggered when the tree is scrolled horizontally or vertically. You can use it to synchronize scrolling of several trees or other controls.

See Also

OffsetXY

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, See Also, TVirtualDrawTree Class


TVirtualDrawTree.OnShowScrollbar Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnShowScrollbar: TVTScrollbarShowEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnStartOperation Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Not documented.

Pascal
property OnStartOperation: TVTOperationEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnStateChange Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnStateChange: TVTStateChangeEvent;
Description

For special effects or in order to increase performance it is sometimes useful to know when the tree changes one of its internal states like tsIncrementalSearching or tsOLEDragging. The OnStateChange event is triggered each time such a change occurs letting so the application take measures for it.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnStructureChange Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnStructureChange: TVTStructureChangeEvent;
Description

This event is triggered when a change in the tree structure is made. That means whenever a node is created or destroyed or a node's child list is change (because a child node was moved, copied etc.) then OnStructureChange is executed.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualDrawTree.OnUpdating Event
TVirtualDrawTree Events | TVirtualDrawTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnUpdating: TVTUpdatingEvent;
Description

This event is triggered when the application or the tree call BeginUpdate or EndUpdate and indicate so when a larger update operation takes place. This can for instance be used to show a hour glass wait cursor.

Group

TVirtualDrawTree Events

Links
TVirtualDrawTree Events, TVirtualDrawTree Class


TVirtualStringTree Class
Classes | Topics | TVirtualStringTree Methods | TVirtualStringTree Properties | TVirtualStringTree Events | TBaseVirtualTree Constructors | TBaseVirtualTree Destructors | TBaseVirtualTree Events | Legend | TBaseVirtualTree Methods | TBaseVirtualTree Properties | Send Feedback

Descentant of TBaseVirtualTree which is able to manage node captions on its own.

Pascal
TVirtualStringTree = class(TCustomVirtualStringTree);
Description

TVirtualStringTree adds no new functionality to TCustomVirtualStringTree but is publicly available version and appears in the component palette.

Group

Classes

Members
TBaseVirtualTree Methods

AbsoluteIndex
Reads the overall index of a node.
AddChild
Creates and adds a new child node to given node.
AddFromStream
Adds the content from the given stream to the given node.
AddToSelection
This is the overview for the AddToSelection method overload.
AdjustImageBorder
Depending on the width of the image list as well as the given bidi mode R must be adjusted.
AdjustPaintCellRect
Used in descentants to modify the clip rectangle of the current column while painting a certain node.
AdjustPanningCursor
Loads the proper cursor which indicates into which direction scrolling is done.
AdviseChangeEvent
Used to register a delayed change event.
AllocateInternalDataArea
Registration method to allocate tree internal data per node.
Animate
Support method for animated actions in the tree view.
Assign
Used to copy properties from another Virtual Treeview.
BeginDrag
Starts an OLE drag'n drop operation.
BeginSynch
Enters the tree into a special synchronized mode.
BeginUpdate
Locks the tree view to perform several update operations.
CalculateSelectionRect
Support method for draw selection.
CanAutoScroll
Determines whether the tree can currently auto scroll its window.
CancelCutOrCopy
Canceles any pending cut or copy clipboard operation.
CancelEditNode
Cancel the current edit operation, if there is any.
CancelOperation
Not documented.
CanEdit
Determines whether a node can be edited or not.
CanFocus
Support method to determine whether the tree window can receive the input focus.
CanShowDragImage
Determines whether a drag image should be shown.
CanSplitterResizeNode
Not documented.
Change
Central method called when a node's selection state changes.
ChangeScale
Helper method called by the VCL when control resizing is due.
CheckedNodes
Not documented.
CheckParentCheckState
Helper method for recursive check state changes.
ChildNodes
Not documented.
Clear
Clears the tree and removes all nodes.
ClearChecked
Not documented.
ClearSelection
Removes all nodes from the current selection.
ClearTempCache
Helper method to clear the internal temporary node cache.
ColumnIsEmpty
Used to determine if a cell is considered as being empty.
ComputeRTLOffset
Not documented.
CopyTo
This is the overview for the CopyTo method overload.
CopyToClipBoard
Copies all currently selected nodes to the clipboard.
CountLevelDifference
Determines the level difference of two nodes.
CountVisibleChildren
Determines the number of visible child nodes of the given node.
CreateParams
Prepares the creation of the controls window handle.
CreateWnd
Initializes data, which depends on the window handle.
CutCopyNodes
Not documented.
CutToClipBoard
Copies the currently selected nodes to the clipboard and removes them once a consumer has taken the data.
DefineProperties
Helper method to customize loading and saving persistent tree data.
DeleteChildren
Removes all child nodes from the given node.
DeleteNode
Removes the given node from the tree.
DeleteSelectedNodes
Removes all currently selected nodes form the tree.
DetermineDropMode
Not documented.
DetermineHiddenChildrenFlag
Determines whether all children of a given node are hidden.
DetermineHiddenChildrenFlagAllNodes
Determines whether all children of all nodes are hidden.
DetermineHitPositionLTR
Determines the hit position within a node with left-to-right and right-to-left orientation.
DetermineHitPositionRTL
Determines the hit position within a node with left-to-right and right-to-left orientation.
DetermineLineImageAndSelectLevel
Not documented.
DetermineNextCheckState
Not documented.
DetermineScrollDirections
Not documented.
DoAdvancedHeaderDraw
Not documented.
DoAfterCellPaint
Not documented.
DoAfterItemErase
Not documented.
DoAfterItemPaint
Not documented.
DoAfterPaint
Not documented.
DoAutoScroll
Enables or disables the auto scroll timer.
DoBeforeCellPaint
Not documented.
DoBeforeDrag
Not documented.
DoBeforeDrawLineImage
Not documented.
DoBeforeItemErase
Not documented.
DoBeforeItemPaint
Not documented.
DoBeforePaint
Not documented.
DoCancelEdit
Called when the tree should stop editing without accepting changed values.
DoCanEdit
Not documented.
DoCanSplitterResizeNode
Not documented.
DoChange
Not documented.
DoCheckClick
Not documented.
DoChecked
Not documented.
DoChecking
Not documented.
DoCollapsed
Not documented.
DoCollapsing
Not documented.
DoColumnClick
Not documented.
DoColumnDblClick
Not documented.
DoColumnResize
Not documented.
DoCompare
Not documented.
DoCreateDataObject
Not documented.
DoCreateDragManager
Not documented.
DoCreateEditor
Not documented.
DoDragDrop
Not documented.
DoDragExpand
Not documented.
DoDragging
Internal method which handles drag' drop.
DoDragOver
Not documented.
DoEdit
Initiates editing of the currently set focused column and edit node.
DoEndDrag
Not documented.
DoEndEdit
Stops the current edit operation and takes over the new content.
DoEndOperation
Not documented.
DoExpanded
Not documented.
DoExpanding
Not documented.
DoFocusChange
Not documented.
DoFocusChanging
Not documented.
DoFocusNode
Internal method to set the focused node.
DoFreeNode
Not documented.
DoGetAnimationType
Determines the type of animation to be used.
DoGetCellContentMargin
Not documented.
DoGetCursor
Not documented.
DoGetHeaderCursor
Not documented.
DoGetImageIndex
Not documented.
DoGetImageText
Not documented.
DoGetLineStyle
Not documented.
DoGetNodeHint
Not documented.
DoGetNodeTooltip
Not documented.
DoGetNodeWidth
Overridable method which always retuns 0.
DoGetPopupMenu
Overridable method which triggers the OnGetPopup event.
DoGetUserClipboardFormats
Not documented.
DoHeaderClick
Not documented.
DoHeaderDblClick
Not documented.
DoHeaderDragged
Not documented.
DoHeaderDraggedOut
Not documented.
DoHeaderDragging
Not documented.
DoHeaderDraw
Not documented.
DoHeaderDrawQueryElements
Not documented.
DoHeaderMouseDown
Not documented.
DoHeaderMouseMove
Not documented.
DoHeaderMouseUp
Not documented.
DoHotChange
Not documented.
DoIncrementalSearch
Not documented.
DoInitChildren
Not documented.
DoInitNode
Not documented.
DoKeyAction
Not documented.
DoLoadUserData
Not documented.
DoMeasureItem
Not documented.
DoNodeClick
Not documented.
DoNodeCopied
Not documented.
DoNodeCopying
Not documented.
DoNodeDblClick
Not documented.
DoNodeHeightDblClickResize
Not documented.
DoNodeHeightTracking
Not documented.
DoNodeMoved
Not documented.
DoNodeMoving
Not documented.
DoPaintBackground
Not documented.
DoPaintDropMark
Overridable method which draws the small line on top of a nodes image depending on the current drop state.
DoPaintNode
Overridable method which does nothing.
DoPopupMenu
Overridable method which shows the popup menu for the given node.
DoRenderOLEData
Not documented.
DoReset
Not documented.
DoSaveUserData
Not documented.
DoScroll
Overridable method which triggers the OnScroll event.
DoSetOffsetXY
Internal core routine to set the tree's scroll position.
DoShowScrollbar
Not documented.
DoStartDrag
Not documented.
DoStartOperation
Not documented.
DoStateChange
Not documented.
DoStructureChange
Not documented.
DoTimerScroll
Callback method which is triggered whenever the scroll timer fires.
DoUpdating
Not documented.
DoValidateCache
Not documented.
DragAndDrop
Not documented.
DragCanceled
Called by the VCL when a drag'n drop operation was canceled by the user.
DragDrop
Helper method, which is used when a drag operation is finished.
DragEnter
Not documented.
DragFinished
Called when a drag operation is finished (accepted or cancelled).
Dragging
Returns true if a drag'n drop operation is in progress.
DragLeave
Not documented.
DragOver
Not documented.
DrawDottedHLine
Not documented.
DrawDottedVLine
Not documented.
EditNode
Starts editing the given node if allowed to.
EndEditNode
Stops node editing if it was started before.
EndOperation
Not documented.
EndSynch
Counterpart to BeginSynch.
EndUpdate
Resets the update lock set by BeginUpdate.
ExecuteAction
Not documented.
FindNodeInSelection
Helper method to find the given node in the current selection.
FinishChunkHeader
Not documented.
FinishCutOrCopy
Stops any pending cut or copy clipboard operation.
FlushClipboard
Renders all pending clipboard data.
FontChanged
Not documented.
FullCollapse
Collapses all nodes in the tree.
FullExpand
Expands all nodes in the tree.
GetBorderDimensions
Not documented.
GetCheckImage
Not documented.
GetCheckImageListFor
Not documented.
GetColumnClass
Returns the class to be used to manage columns in the tree.
GetControlsAlignment
Not documented.
GetDisplayRect
Not documented.
GetEffectivelyFiltered
Not documented.
GetEffectivelyVisible
Not documented.
GetFirst
Group of node navigation functions.
GetFirstChecked
Not documented.
GetFirstChild
Group of node navigation functions.
GetFirstCutCopy
Group of node navigation functions.
GetFirstInitialized
Group of node navigation functions.
GetFirstLeaf
Not documented.
GetFirstLevel
Not documented.
GetFirstNoInit
Group of node navigation functions.
GetFirstSelected
Group of node navigation functions.
GetFirstVisible
Group of node navigation functions.
GetFirstVisibleChild
Not documented.
GetFirstVisibleChildNoInit
Not documented.
GetFirstVisibleNoInit
Group of node navigation functions.
GetHeaderClass
Returns the header class to be used by the tree.
GetHintWindowClass
Not documented.
GetHitTestInfoAt
Returns information about the node at the given position.
GetImageIndex
Not documented.
GetLast
Not documented.
GetLastChild
GetLastChildNoInit
GetLastInitialized
Not documented.
GetLastNoInit
Not documented.
GetLastVisible
Not documented.
GetLastVisibleChild
Not documented.
GetLastVisibleChildNoInit
Not documented.
GetLastVisibleNoInit
Not documented.
GetMaxColumnWidth
Not documented.
GetMaxRightExtend
Determines the maximum with of the currently visible part of the tree.
GetNativeClipboardFormats
Used to let descendants and the application add their own supported clipboard formats.
GetNext
Not documented.
GetNextChecked
This is the overview for the GetNextChecked method overload.
GetNextCutCopy
Not documented.
GetNextInitialized
Not documented.
GetNextLeaf
Not documented.
GetNextLevel
Not documented.
GetNextNoInit
Not documented.
GetNextSelected
Not documented.
GetNextSibling
GetNextVisible
Not documented.
GetNextVisibleNoInit
Not documented.
GetNextVisibleSibling
Not documented.
GetNextVisibleSiblingNoInit
Not documented.
GetNodeAt
This is the overview for the GetNodeAt method overload.
GetNodeData
Returns the address of the user data area of the given node.
GetNodeLevel
Returns the indentation level of the given node.
GetOperationCanceled
Not documented.
GetOptionsClass
Customization helper to determine which options class the tree should use.
GetPrevious
Not documented.
GetPreviousChecked
Not documented.
GetPreviousCutCopy
Not documented.
GetPreviousInitialized
Not documented.
GetPreviousLeaf
Not documented.
GetPreviousLevel
Not documented.
GetPreviousNoInit
Not documented.
GetPreviousSelected
Not documented.
GetPreviousSibling
GetPreviousVisible
Not documented.
GetPreviousVisibleNoInit
Not documented.
GetPreviousVisibleSibling
Not documented.
GetPreviousVisibleSiblingNoInit
Not documented.
GetSortedCutCopySet
Returns a sorted list of nodes, which are marked for s cut or copy clipboard operation.
GetSortedSelection
Returns a sorted list of all currently selected nodes.
GetTextInfo
Not documented.
GetTreeFromDataObject
OLE drag'n drop and clipboard support method.
GetTreeRect
Returns the size of the virtual tree image.
GetVisibleParent
Not documented.
HandleHotTrack
Not documented.
HandleIncrementalSearch
Not documented.
HandleMouseDblClick
Not documented.
HandleMouseDown
Not documented.
HandleMouseUp
Not documented.
HasAsParent
Determines if the given node has got another node as one of its parents.
HasImage
Not documented.
HasPopupMenu
Determines whether there is a pop up menu assigned to the tree.
InitChildren
Not documented.
InitializedNodes
Not documented.
InitNode
Not documented.
InsertNode
Inserts a new node and returns it to the caller.
InternalAddFromStream
Not documented.
InternalAddToSelection
This is the overview for the InternalAddToSelection method overload.
InternalCacheNode
Not documented.
InternalClearSelection
Not documented.
InternalConnectNode
Not documented.
InternalData
Returns the address of the internal data for a tree class.
InternalDisconnectNode
Not documented.
InternalRemoveFromSelection
Not documented.
InvalidateCache
Empties the internal node cache and marks it as invalid.
InvalidateChildren
Invalidates all children of the given node.
InvalidateColumn
Invalidates the client area part of a column.
InvalidateNode
Invalidates the given node.
InvalidateToBottom
Invalidates the client area starting with the top position of the given node.
InvertSelection
Inverts the current selection.
IsEditing
Tells the caller whether the tree is currently in edit mode.
IsMouseSelecting
Tell the caller whether the tree is currently in draw selection mode.
IterateSubtree
Iterator method to go through all nodes of a given sub tree.
LeafNodes
Not documented.
LevelNodes
Not documented.
Loaded
Not documented.
LoadFromFile
Loads previously streamed out tree data back in again.
LoadFromStream
Loads previously streamed out tree data back in again.
MainColumnChanged
Not documented.
MarkCutCopyNodes
Not documented.
MeasureItemHeight
Not documented.
MouseMove
Not documented.
MoveTo
This is the overview for the MoveTo method overload.
Nodes
Not documented.
NoInitNodes
Not documented.
Notification
Not documented.
OriginalWMNCPaint
Not documented.
Paint
TControl's Paint method used here to display the tree.
PaintCheckImage
Not documented.
PaintImage
Not documented.
PaintNodeButton
Not documented.
PaintSelectionRectangle
Not documented.
PaintTree
Main paint routine for the tree image.
PaintTreeLines
Not documented.
PanningWindowProc
Not documented.
PasteFromClipboard
Inserts the content of the clipboard into the tree.
PrepareCell
This method is called immediately before a cell's content is drawn und is responsible to paint selection colors etc.
PrepareDragImage
Not documented.
Print
Not documented.
ProcessDrop
Helper method to ease OLE drag'n drop operations.
ProcessOLEData
Takes serialized OLE tree data and reconstructs the former structure.
ReadChunk
Not documented.
ReadNode
Not documented.
RedirectFontChangeEvent
Not documented.
ReinitChildren
Forces all child nodes of Node to be reinitialized.
ReinitNode
Forces a reinitialization of the given node.
RemoveFromSelection
Removes the given node from the current selection.
RenderOLEData
Renders pending OLE data.
RepaintNode
Causes the treeview to repaint the given node.
ResetNode
Resets the given node to uninitialized.
ResetRangeAnchor
Not documented.
RestoreFontChangeEvent
Not documented.
SaveToFile
Saves the entire content of the tree into a file or stream.
SaveToStream
Saves the entire content of the tree into a file or stream.
ScrollIntoView
This is the overview for the ScrollIntoView method overload.
SelectAll
Selects all nodes in the tree.
SelectedNodes
Not documented.
SelectNodes
Selects a range of nodes.
SetFocusedNodeAndColumn
Not documented.
SkipNode
Not documented.
Sort
Sorts the given node.
SortTree
Sorts the entire tree view.
StartOperation
Not documented.
StartWheelPanning
Not documented.
StopWheelPanning
Not documented.
StructureChange
Not documented.
SuggestDropEffect
Not documented.
ToggleNode
Changes a node's expand state to the opposite state.
ToggleSelection
Toggles the selection state of a range of nodes.
UnselectNodes
Deselects a range of nodes.
UpdateAction
Not documented.
UpdateColumnCheckState
Not documented.
UpdateDesigner
Not documented.
UpdateEditBounds
Not documented.
UpdateHeaderRect
Not documented.
UpdateHorizontalRange
Not documented.
UpdateHorizontalScrollBar
Applies changes to the horizontal and vertical scrollbars.
UpdateRanges
Not documented.
UpdateScrollBars
Applies changes to the horizontal and vertical scrollbars.
UpdateVerticalRange
Not documented.
UpdateVerticalScrollBar
Applies changes to the horizontal and vertical scrollbars.
UpdateWindowAndDragImage
Not documented.
UseRightToLeftReading
Helper method for right-to-left layout.
ValidateCache
Initiates the validation of the internal node cache.
ValidateChildren
Validates all children of a given node.
ValidateNode
Validates a given node.
ValidateNodeDataSize
Helper method for node data size initalization.
VisibleChildNodes
Not documented.
VisibleChildNoInitNodes
Not documented.
VisibleNodes
Not documented.
VisibleNoInitNodes
Not documented.
WndProc
Redirected window procedure to do some special processing.
WriteChunks
Writes the core chunks for the given node to the given stream.
WriteNode
Writes the cover (envelop) chunk for the given node to the given stream.

TCustomVirtualStringTree Class

AdjustPaintCellRect
Method which can be used by descentants to adjust the given rectangle during a paint cycle.
CalculateTextWidth
Not documented.
CanExportNode
Not documented.
ColumnIsEmpty
Used to determine if a cell is considered as being empty.
ComputeNodeHeight
Not documented.
ContentToClipboard
Not documented.
ContentToCustom
Not documented.
ContentToHTML
Not documented.
ContentToRTF
Not documented.
ContentToText
This is the overview for the ContentToText method overload.
ContentToUnicode
This is the overview for the ContentToUnicode method overload.
DefineProperties
Helper method to customize loading and saving persistent tree data.
DoCreateEditor
Not documented.
DoGetNodeHint
Not documented.
DoGetNodeTooltip
Not documented.
DoGetNodeWidth
Overridable method which always retuns 0.
DoGetText
Not documented.
DoIncrementalSearch
Not documented.
DoNewText
Not documented.
DoPaintNode
Overridable method which does nothing.
DoPaintText
Not documented.
DoShortenString
Not documented.
DoTextDrawing
Not documented.
DoTextMeasuring
Not documented.
GetOptionsClass
Customization helper to determine which options class the tree should use.
GetTextInfo
Not documented.
InternalData
Returns the address of the internal data for a tree class.
InvalidateNode
Invalidates the given node.
MainColumnChanged
Not documented.
Path
Not documented.
ReadChunk
Not documented.
ReadOldStringOptions
Not documented.
ReinitNode
Forces a reinitialization of the given node.
RenderOLEData
Renders pending OLE data.
SaveToCSVFile
Not documented.
WriteChunks
Writes the core chunks for the given node to the given stream.

TVirtualStringTree Class

GetOptionsClass
Customization helper to determine which options class the tree should use.

Topics

TBaseVirtualTree Methods
The methods of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Constructors
The constructors of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Destructors
The destructors of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Properties
The properties of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Events
The events of the TBaseVirtualTree class are listed here.

TCustomVirtualStringTree Class

TCustomVirtualStringTree Methods
The methods of the TCustomVirtualStringTree class are listed here.
TCustomVirtualStringTree Constructors
The constructors of the TCustomVirtualStringTree class are listed here.
TCustomVirtualStringTree Properties
The properties of the TCustomVirtualStringTree class are listed here.
TCustomVirtualStringTree Events
The events of the TCustomVirtualStringTree class are listed here.

TVirtualStringTree Class

TVirtualStringTree Methods
The methods of the TVirtualStringTree class are listed here.
TVirtualStringTree Properties
The properties of the TVirtualStringTree class are listed here.
TVirtualStringTree Events
The events of the TVirtualStringTree class are listed here.

TBaseVirtualTree Constructors

Create
Constructor of the control

TCustomVirtualStringTree Class

Create
Constructor of the control

TBaseVirtualTree Destructors

Destroy
Destructor of the control.

TBaseVirtualTree Properties

Accessible
Not documented.
AccessibleItem
Not documented.
AccessibleName
Not documented.
Alignment
Determines the horizontal alignment of text if no columns are defined.
AnimationDuration
Determines the maximum duration the tree can use to play an animation.
AutoExpandDelay
Time delay after which a node gets expanded if it is the current drop target.
AutoScrollDelay
Time which determines when auto scrolling should start.
AutoScrollInterval
Time interval between scroll events when doing auto scroll.
Background
Holds a background image for the tree.
BackgroundOffsetX
Horizontal offset of the background image.
BackgroundOffsetY
Vertical offset of the background image.
BorderStyle
Same as TForm.BorderStyle.
BottomNode
Not documented.
BottomSpace
Not documented.
ButtonFillMode
Determines how to fill the background of the node buttons.
ButtonStyle
Determines the look of node buttons.
ChangeDelay
Time which determines when the OnChange event should be triggered after the actual change event.
CheckedCount
Not documented.
CheckImageKind
Determines which images should be used for checkboxes and radio buttons.
CheckImages
Not documented.
CheckState
Read or set the check state of a node.
CheckType
Read or set the check type of a node.
ChildCount
Read or set the number of child nodes of a node.
ChildrenInitialized
Read whether a node's child count has been initialized already.
ClipboardFormats
Special class to keep a list of clipboard format descriptions.
Colors
A collection of colors used in the tree.
CustomCheckImages
Assign your own image list to get the check images you like most.
CutCopyCount
Not documented.
DefaultNodeHeight
Read or set the height new nodes get as initial value.
DefaultPasteMode
Read or set the value, which determines where to add pasted nodes to.
DragHeight
Read or set the vertical limit of the internal drag image.
DragImage
Holds the instance of the internal drag image.
DragImageKind
Read or set what should be shown in the drag image.
DragManager
Holds the reference to the internal drag manager.
DragOperations
Read or set which drag operations may be allowed in the tree.
DragSelection
Keeps a temporary list of nodes during drag'n drop.
DragType
Read or set which subsystem should be used for dragging.
DragWidth
Read or set the horizontal limit of the internal drag image.
DrawSelectionMode
Read or set how multiselection with the mouse is to be visualized.
DropTargetNode
Contains the current drop target node if the tree is currently the target of a drag'n drop operation.
EditColumn
Not documented.
EditDelay
Read or set the maximum time between two single clicks on the same node, which should start node editing.
EditLink
Keeps a reference to the internal edit link during a node edit operation.
EffectiveOffsetX
Not documented.
EmptyListMessage
Not documented.
Expanded
Read or set the expanded state of a particular node.
FocusedColumn
Read or set the currently focused collumn.
FocusedNode
Read or set the currently focused node.
Font
Same as TWinControl.Font.
FullyVisible
Read or set whether a node is fully visible or not.
HasChildren
Read or set whether a node has got children.
Header
Provides access to the header instance.
HeaderRect
Returns the non-client-area rectangle used for the header.
HintAnimation
Read or set the current hint animation type.
HintData
Not documented.
HintMode
Read or set what type of hint you want for the tree view.
HotCursor
Read or set which cursor should be used for hot nodes.
HotMinusBM
Not documented.
HotNode
Read, which node is currently the hot node.
HotPlusBM
Not documented.
Images
Read or set the tree's normal image list.
IncrementalSearch
Read or set the current incremental search mode.
IncrementalSearchDirection
Read or set the direction to be used for incremental search.
IncrementalSearchStart
Read or set where to start incremental search.
IncrementalSearchTimeout
Read or set the maximum time, which is allowed between two consecutive key strokes so that incremental search stays active.
Indent
Read or set the indentation amount for node levels.
IsDisabled
Read or set the enabled state of the given node.
IsEffectivelyFiltered
Not documented.
IsEffectivelyVisible
Not documented.
IsFiltered
Not documented.
IsVisible
Read or set the visibility state of the given node.
LastClickPos
Used for retained drag start and wheel mouse scrolling.
LastDropMode
Read how the last drop operation finished.
LastHintRect
Not documented.
LineMode
Read or set the mode of the tree lines.
LineStyle
Read or set the mode of the tree lines.
Margin
Read or set the tree's node margin.
MinusBM
Not documented.
MultiLine
Read or toggle the multiline feature for a given node.
NodeAlignment
Read or set the node alignment value.
NodeDataSize
Read or set the extra data size for each node.
NodeHeight
Read or set a node's height.
NodeParent
Read or set a node's parent node.
OffsetX
Read or set the tree's current horizontal and vertical scroll offsets.
OffsetXY
Read or set the tree's current horizontal and vertical scroll offsets.
OffsetY
Read or set the tree's current horizontal and vertical scroll offsets.
OperationCanceled
Not documented.
OperationCount
Not documented.
PlusBM
Not documented.
RangeX
Not documented.
RangeY
Not documented.
RootNode
Reference to the internal root node which is the anchor of the entire tree node hierarchy.
RootNodeCount
Read or set the number of nodes on the top level.
ScrollBarOptions
Reference to the scroll bar options class.
SearchBuffer
Current input string for incremental search.
Selected
Property to modify or determine the selection state of a node.
SelectedCount
Contains the number of selected nodes.
SelectionBlendFactor
Read or set the current blend factor for the multi selection rectangle and the node selection rectangle.
SelectionCurveRadius
Read or set the current corner radius for node selection rectangles.
SelectionLocked
Not documented.
StateImages
Reference to the images list which is used for the state images.
TextMargin
Read or set the distance of the node caption to its borders.
TopNode
The top node is the node which is currently at the top border of the client area.
TotalCount
Returns the number of nodes in the tree.
TotalInternalDataSize
Keeps the currently accumulated data size for one node.
TreeOptions
Reference to the tree's options.
TreeStates
Property which keeps a set of flags which indicate current operation and states of the tree.
UpdateCount
Not documented.
VerticalAlignment
Used to set a node's vertical button aligment with regard to the entire node rectangle.
VisibleCount
Number of currently visible nodes.
VisiblePath
Property to set or determine a node parent's expand states.
WantTabs
Read or set whether the tree wants to process tabs on its own.

TCustomVirtualStringTree Class

DefaultText
Not documented.
EllipsisWidth
Not documented.
ImageText
Not documented.
Text
Not documented.
TreeOptions
Reference to the tree's options.

TVirtualStringTree Class

AccessibleName
Not documented.
Action
Not documented.
Align
Not documented.
Alignment
Determines the horizontal alignment of text if no columns are defined.
Anchors
Not documented.
AnimationDuration
Determines the maximum duration the tree can use to play an animation.
AutoExpandDelay
Time delay after which a node gets expanded if it is the current drop target.
AutoScrollDelay
Time which determines when auto scrolling should start.
AutoScrollInterval
Time interval between scroll events when doing auto scroll.
Background
Holds a background image for the tree.
BackgroundOffsetX
Horizontal offset of the background image.
BackgroundOffsetY
Vertical offset of the background image.
BevelEdges
Not documented.
BevelInner
Not documented.
BevelKind
Not documented.
BevelOuter
Not documented.
BevelWidth
Not documented.
BiDiMode
Not documented.
BorderStyle
Same as TForm.BorderStyle.
BorderWidth
Not documented.
BottomSpace
Not documented.
ButtonFillMode
Determines how to fill the background of the node buttons.
ButtonStyle
Determines the look of node buttons.
Canvas
Not documented.
ChangeDelay
Time which determines when the OnChange event should be triggered after the actual change event.
CheckImageKind
Determines which images should be used for checkboxes and radio buttons.
ClipboardFormats
Special class to keep a list of clipboard format descriptions.
Color
Not documented.
Colors
A collection of colors used in the tree.
Constraints
Not documented.
Ctl3D
Not documented.
CustomCheckImages
Assign your own image list to get the check images you like most.
DefaultNodeHeight
Read or set the height new nodes get as initial value.
DefaultPasteMode
Read or set the value, which determines where to add pasted nodes to.
DefaultText
Not documented.
DragCursor
Not documented.
DragHeight
Read or set the vertical limit of the internal drag image.
DragImageKind
Read or set what should be shown in the drag image.
DragKind
Not documented.
DragMode
Not documented.
DragOperations
Read or set which drag operations may be allowed in the tree.
DragType
Read or set which subsystem should be used for dragging.
DragWidth
Read or set the horizontal limit of the internal drag image.
DrawSelectionMode
Read or set how multiselection with the mouse is to be visualized.
EditDelay
Read or set the maximum time between two single clicks on the same node, which should start node editing.
Enabled
Not documented.
Font
Same as TWinControl.Font.
Header
Provides access to the header instance.
HintAnimation
Read or set the current hint animation type.
HintMode
Read or set what type of hint you want for the tree view.
HotCursor
Read or set which cursor should be used for hot nodes.
Images
Read or set the tree's normal image list.
IncrementalSearch
Read or set the current incremental search mode.
IncrementalSearchDirection
Read or set the direction to be used for incremental search.
IncrementalSearchStart
Read or set where to start incremental search.
IncrementalSearchTimeout
Read or set the maximum time, which is allowed between two consecutive key strokes so that incremental search stays active.
Indent
Read or set the indentation amount for node levels.
LineMode
Read or set the mode of the tree lines.
LineStyle
Read or set the mode of the tree lines.
Margin
Read or set the tree's node margin.
NodeAlignment
Read or set the node alignment value.
NodeDataSize
Read or set the extra data size for each node.
OnClick
Not documented.
OnContextPopup
Not documented.
OnDblClick
Not documented.
OnEndDock
Not documented.
OnEndDrag
Not documented.
OnEnter
Not documented.
OnExit
Not documented.
OnKeyDown
Not documented.
OnKeyPress
Not documented.
OnKeyUp
Not documented.
OnMouseDown
Not documented.
OnMouseMove
Not documented.
OnMouseUp
Not documented.
OnMouseWheel
Not documented.
OnResize
Not documented.
OnStartDock
Not documented.
OnStartDrag
Not documented.
OperationCanceled
Not documented.
ParentBiDiMode
Not documented.
ParentColor
Not documented.
ParentCtl3D
Not documented.
ParentFont
Not documented.
ParentShowHint
Not documented.
PopupMenu
Not documented.
RootNodeCount
Read or set the number of nodes on the top level.
ScrollBarOptions
Reference to the scroll bar options class.
SelectionBlendFactor
Read or set the current blend factor for the multi selection rectangle and the node selection rectangle.
SelectionCurveRadius
Read or set the current corner radius for node selection rectangles.
ShowHint
Not documented.
StateImages
Reference to the images list which is used for the state images.
TabOrder
Not documented.
TabStop
Not documented.
TextMargin
Read or set the distance of the node caption to its borders.
TreeOptions
Reference to the tree's options.
Visible
Not documented.
WantTabs
Read or set whether the tree wants to process tabs on its own.

TBaseVirtualTree Events

OnAddToSelection
Not documented.
OnAdvancedHeaderDraw
Header paint support event.
OnAfterAutoFitColumn
Not documented.
OnAfterAutoFitColumns
Not documented.
OnAfterCellPaint
Paint support event.
OnAfterColumnExport
Not documented.
OnAfterColumnWidthTracking
Not documented.
OnAfterGetMaxColumnWidth
Not documented.
OnAfterHeaderExport
Not documented.
OnAfterHeaderHeightTracking
Not documented.
OnAfterItemErase
Paint support event.
OnAfterItemPaint
Paint support event.
OnAfterNodeExport
Not documented.
OnAfterPaint
Paint support event.
OnAfterTreeExport
Not documented.
OnBeforeAutoFitColumn
Not documented.
OnBeforeAutoFitColumns
Not documented.
OnBeforeCellPaint
Paint support event.
OnBeforeColumnExport
Not documented.
OnBeforeColumnWidthTracking
Not documented.
OnBeforeDrawTreeLine
Not documented.
OnBeforeGetMaxColumnWidth
Not documented.
OnBeforeHeaderExport
Not documented.
OnBeforeHeaderHeightTracking
Not documented.
OnBeforeItemErase
Paint support event.
OnBeforeItemPaint
Paint support event.
OnBeforeNodeExport
Not documented.
OnBeforePaint
Paint support event.
OnBeforeTreeExport
Not documented.
OnCanSplitterResizeColumn
Not documented.
OnCanSplitterResizeHeader
Not documented.
OnCanSplitterResizeNode
Not documented.
OnChange
Navigation support event.
OnChecked
Check support event.
OnChecking
Check support event.
OnCollapsed
Miscellaneous event.
OnCollapsing
Miscellaneous event.
OnColumnClick
Header and column support event.
OnColumnDblClick
Header and column support event.
OnColumnExport
Not documented.
OnColumnResize
Header and column support routine.
OnColumnWidthDblClickResize
Not documented.
OnColumnWidthTracking
Not documented.
OnCompareNodes
Sort and search support event.
OnCreateDataObject
Drag'n drop support event.
OnCreateDragManager
Drag'n drop support event.
OnCreateEditor
Editing support event.
OnDragAllowed
Drag'n drop support event.
OnDragDrop
Drag'n drop support event.
OnDragOver
Drag'n drop support event.
OnEditCancelled
Editing support event.
OnEdited
Editing support event.
OnEditing
Editing support event.
OnEndOperation
Not documented.
OnExpanded
Misscellaneous event.
OnExpanding
Miscellaneous event.
OnFocusChanged
Navigation support event.
OnFocusChanging
Navigation support event.
OnFreeNode
Data management node.
OnGetCellIsEmpty
Triggered when the tree control needs to know whether a given column is empty.
OnGetCursor
Miscellaneous event.
OnGetHeaderCursor
Header and column support event.
OnGetHelpContext
Miscellaneous event.
OnGetImageIndex
Display management event.
OnGetImageIndexEx
Not documented.
OnGetImageText
Not documented.
OnGetLineStyle
Display management event.
OnGetNodeDataSize
Data management event.
OnGetPopupMenu
Miscellaneous event.
OnGetUserClipboardFormats
Drag'n drop and clipboard support event.
OnHeaderClick
Header & column support event.
OnHeaderDblClick
Header & column support event.
OnHeaderDragged
Header & column support event.
OnHeaderDraggedOut
Header & column support event.
OnHeaderDragging
Header & column support event.
OnHeaderDraw
Header & column support event.
OnHeaderDrawQueryElements
Header & column support event.
OnHeaderHeightDblClickResize
Not documented.
OnHeaderHeightTracking
Not documented.
OnHeaderMouseDown
Header & column support event.
OnHeaderMouseMove
Header & column support event.
OnHeaderMouseUp
Header & column support event.
OnHotChange
Navigation support event.
OnIncrementalSearch
Miscellaneous event.
OnInitChildren
Node management event.
OnInitNode
Node management event.
OnKeyAction
Miscellaneous event.
OnLoadNode
Streaming support event.
OnLoadTree
Not documented.
OnMeasureItem
Miscellaneous event.
OnNodeClick
Not documented.
OnNodeCopied
Miscellaneous event.
OnNodeCopying
Miscellaneous event.
OnNodeDblClick
Not documented.
OnNodeExport
Not documented.
OnNodeHeightDblClickResize
Not documented.
OnNodeHeightTracking
Not documented.
OnNodeMoved
Miscellaneous event.
OnNodeMoving
Miscellaneous event.
OnPaintBackground
Paint support event.
OnRemoveFromSelection
Not documented.
OnRenderOLEData
Drag'n drop and clipboard support event.
OnResetNode
Node management event.
OnSaveNode
Streaming support event.
OnSaveTree
Not documented.
OnScroll
Miscellaneous event.
OnShowScrollbar
Not documented.
OnStartOperation
Not documented.
OnStateChange
Miscellaneous event.
OnStructureChange
Miscellaneous event.
OnUpdating
Miscellaneous event.

TCustomVirtualStringTree Class

OnDrawText
Not documented.
OnGetHint
Virtual string tree event to query for a custom hint text.
OnGetText
Virtual string tree event to query for a node's normal or static text.
OnMeasureTextHeight
Not documented.
OnMeasureTextWidth
Not documented.
OnNewText
Virtual string tree event to pass edited text.
OnPaintText
Event to change text formatting for particular nodes.
OnShortenString
String tree event for custom handling of string abbreviations.

TVirtualStringTree Class

OnAddToSelection
Not documented.
OnAdvancedHeaderDraw
Header paint support event.
OnAfterAutoFitColumn
Not documented.
OnAfterAutoFitColumns
Not documented.
OnAfterCellPaint
Paint support event.
OnAfterColumnExport
Not documented.
OnAfterColumnWidthTracking
Not documented.
OnAfterGetMaxColumnWidth
Not documented.
OnAfterHeaderExport
Not documented.
OnAfterHeaderHeightTracking
Not documented.
OnAfterItemErase
Paint support event.
OnAfterItemPaint
Paint support event.
OnAfterNodeExport
Not documented.
OnAfterPaint
Paint support event.
OnAfterTreeExport
Not documented.
OnBeforeAutoFitColumn
Not documented.
OnBeforeAutoFitColumns
Not documented.
OnBeforeCellPaint
Paint support event.
OnBeforeColumnExport
Not documented.
OnBeforeColumnWidthTracking
Not documented.
OnBeforeDrawTreeLine
Not documented.
OnBeforeGetMaxColumnWidth
Not documented.
OnBeforeHeaderExport
Not documented.
OnBeforeHeaderHeightTracking
Not documented.
OnBeforeItemErase
Paint support event.
OnBeforeItemPaint
Paint support event.
OnBeforeNodeExport
Not documented.
OnBeforePaint
Paint support event.
OnBeforeTreeExport
Not documented.
OnCanSplitterResizeColumn
Not documented.
OnCanSplitterResizeHeader
Not documented.
OnCanSplitterResizeNode
Not documented.
OnChange
Navigation support event.
OnChecked
Check support event.
OnChecking
Check support event.
OnCollapsed
Miscellaneous event.
OnCollapsing
Miscellaneous event.
OnColumnClick
Header and column support event.
OnColumnDblClick
Header and column support event.
OnColumnExport
Not documented.
OnColumnResize
Header and column support routine.
OnColumnWidthDblClickResize
Not documented.
OnColumnWidthTracking
Not documented.
OnCompareNodes
Sort and search support event.
OnCreateDataObject
Drag'n drop support event.
OnCreateDragManager
Drag'n drop support event.
OnCreateEditor
Editing support event.
OnDragAllowed
Drag'n drop support event.
OnDragDrop
Drag'n drop support event.
OnDragOver
Drag'n drop support event.
OnDrawText
Not documented.
OnEditCancelled
Editing support event.
OnEdited
Editing support event.
OnEditing
Editing support event.
OnEndOperation
Not documented.
OnExpanded
Misscellaneous event.
OnExpanding
Miscellaneous event.
OnFocusChanged
Navigation support event.
OnFocusChanging
Navigation support event.
OnFreeNode
Data management node.
OnGetCellIsEmpty
Triggered when the tree control needs to know whether a given column is empty.
OnGetCursor
Miscellaneous event.
OnGetHeaderCursor
Header and column support event.
OnGetHelpContext
Miscellaneous event.
OnGetHint
Virtual string tree event to query for a custom hint text.
OnGetImageIndex
Display management event.
OnGetImageIndexEx
Not documented.
OnGetImageText
Not documented.
OnGetLineStyle
Display management event.
OnGetNodeDataSize
Data management event.
OnGetPopupMenu
Miscellaneous event.
OnGetText
Virtual string tree event to query for a node's normal or static text.
OnGetUserClipboardFormats
Drag'n drop and clipboard support event.
OnHeaderClick
Header & column support event.
OnHeaderDblClick
Header & column support event.
OnHeaderDragged
Header & column support event.
OnHeaderDraggedOut
Header & column support event.
OnHeaderDragging
Header & column support event.
OnHeaderDraw
Header & column support event.
OnHeaderDrawQueryElements
Header & column support event.
OnHeaderHeightDblClickResize
Not documented.
OnHeaderHeightTracking
Not documented.
OnHeaderMouseDown
Header & column support event.
OnHeaderMouseMove
Header & column support event.
OnHeaderMouseUp
Header & column support event.
OnHotChange
Navigation support event.
OnIncrementalSearch
Miscellaneous event.
OnInitChildren
Node management event.
OnInitNode
Node management event.
OnKeyAction
Miscellaneous event.
OnLoadNode
Streaming support event.
OnLoadTree
Not documented.
OnMeasureItem
Miscellaneous event.
OnMeasureTextHeight
Not documented.
OnMeasureTextWidth
Not documented.
OnNewText
Virtual string tree event to pass edited text.
OnNodeClick
Not documented.
OnNodeCopied
Miscellaneous event.
OnNodeCopying
Miscellaneous event.
OnNodeDblClick
Not documented.
OnNodeExport
Not documented.
OnNodeHeightDblClickResize
Not documented.
OnNodeHeightTracking
Not documented.
OnNodeMoved
Miscellaneous event.
OnNodeMoving
Miscellaneous event.
OnPaintBackground
Paint support event.
OnPaintText
Event to change text formatting for particular nodes.
OnRemoveFromSelection
Not documented.
OnRenderOLEData
Drag'n drop and clipboard support event.
OnResetNode
Node management event.
OnSaveNode
Streaming support event.
OnSaveTree
Not documented.
OnScroll
Miscellaneous event.
OnShortenString
String tree event for custom handling of string abbreviations.
OnShowScrollbar
Not documented.
OnStartOperation
Not documented.
OnStateChange
Miscellaneous event.
OnStructureChange
Miscellaneous event.
OnUpdating
Miscellaneous event.

Topics

TBaseVirtualTree Methods
The methods of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Constructors
The constructors of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Destructors
The destructors of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Properties
The properties of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Events
The events of the TBaseVirtualTree class are listed here.

TCustomVirtualStringTree Class

TCustomVirtualStringTree Methods
The methods of the TCustomVirtualStringTree class are listed here.
TCustomVirtualStringTree Constructors
The constructors of the TCustomVirtualStringTree class are listed here.
TCustomVirtualStringTree Properties
The properties of the TCustomVirtualStringTree class are listed here.
TCustomVirtualStringTree Events
The events of the TCustomVirtualStringTree class are listed here.

TVirtualStringTree Class

TVirtualStringTree Methods
The methods of the TVirtualStringTree class are listed here.
TVirtualStringTree Properties
The properties of the TVirtualStringTree class are listed here.
TVirtualStringTree Events
The events of the TVirtualStringTree class are listed here.

TBaseVirtualTree Constructors

Create
Constructor of the control

TCustomVirtualStringTree Class

Create
Constructor of the control

TBaseVirtualTree Destructors

Destroy
Destructor of the control.

TBaseVirtualTree Events

OnAddToSelection
Not documented.
OnAdvancedHeaderDraw
Header paint support event.
OnAfterAutoFitColumn
Not documented.
OnAfterAutoFitColumns
Not documented.
OnAfterCellPaint
Paint support event.
OnAfterColumnExport
Not documented.
OnAfterColumnWidthTracking
Not documented.
OnAfterGetMaxColumnWidth
Not documented.
OnAfterHeaderExport
Not documented.
OnAfterHeaderHeightTracking
Not documented.
OnAfterItemErase
Paint support event.
OnAfterItemPaint
Paint support event.
OnAfterNodeExport
Not documented.
OnAfterPaint
Paint support event.
OnAfterTreeExport
Not documented.
OnBeforeAutoFitColumn
Not documented.
OnBeforeAutoFitColumns
Not documented.
OnBeforeCellPaint
Paint support event.
OnBeforeColumnExport
Not documented.
OnBeforeColumnWidthTracking
Not documented.
OnBeforeDrawTreeLine
Not documented.
OnBeforeGetMaxColumnWidth
Not documented.
OnBeforeHeaderExport
Not documented.
OnBeforeHeaderHeightTracking
Not documented.
OnBeforeItemErase
Paint support event.
OnBeforeItemPaint
Paint support event.
OnBeforeNodeExport
Not documented.
OnBeforePaint
Paint support event.
OnBeforeTreeExport
Not documented.
OnCanSplitterResizeColumn
Not documented.
OnCanSplitterResizeHeader
Not documented.
OnCanSplitterResizeNode
Not documented.
OnChange
Navigation support event.
OnChecked
Check support event.
OnChecking
Check support event.
OnCollapsed
Miscellaneous event.
OnCollapsing
Miscellaneous event.
OnColumnClick
Header and column support event.
OnColumnDblClick
Header and column support event.
OnColumnExport
Not documented.
OnColumnResize
Header and column support routine.
OnColumnWidthDblClickResize
Not documented.
OnColumnWidthTracking
Not documented.
OnCompareNodes
Sort and search support event.
OnCreateDataObject
Drag'n drop support event.
OnCreateDragManager
Drag'n drop support event.
OnCreateEditor
Editing support event.
OnDragAllowed
Drag'n drop support event.
OnDragDrop
Drag'n drop support event.
OnDragOver
Drag'n drop support event.
OnEditCancelled
Editing support event.
OnEdited
Editing support event.
OnEditing
Editing support event.
OnEndOperation
Not documented.
OnExpanded
Misscellaneous event.
OnExpanding
Miscellaneous event.
OnFocusChanged
Navigation support event.
OnFocusChanging
Navigation support event.
OnFreeNode
Data management node.
OnGetCellIsEmpty
Triggered when the tree control needs to know whether a given column is empty.
OnGetCursor
Miscellaneous event.
OnGetHeaderCursor
Header and column support event.
OnGetHelpContext
Miscellaneous event.
OnGetImageIndex
Display management event.
OnGetImageIndexEx
Not documented.
OnGetImageText
Not documented.
OnGetLineStyle
Display management event.
OnGetNodeDataSize
Data management event.
OnGetPopupMenu
Miscellaneous event.
OnGetUserClipboardFormats
Drag'n drop and clipboard support event.
OnHeaderClick
Header & column support event.
OnHeaderDblClick
Header & column support event.
OnHeaderDragged
Header & column support event.
OnHeaderDraggedOut
Header & column support event.
OnHeaderDragging
Header & column support event.
OnHeaderDraw
Header & column support event.
OnHeaderDrawQueryElements
Header & column support event.
OnHeaderHeightDblClickResize
Not documented.
OnHeaderHeightTracking
Not documented.
OnHeaderMouseDown
Header & column support event.
OnHeaderMouseMove
Header & column support event.
OnHeaderMouseUp
Header & column support event.
OnHotChange
Navigation support event.
OnIncrementalSearch
Miscellaneous event.
OnInitChildren
Node management event.
OnInitNode
Node management event.
OnKeyAction
Miscellaneous event.
OnLoadNode
Streaming support event.
OnLoadTree
Not documented.
OnMeasureItem
Miscellaneous event.
OnNodeClick
Not documented.
OnNodeCopied
Miscellaneous event.
OnNodeCopying
Miscellaneous event.
OnNodeDblClick
Not documented.
OnNodeExport
Not documented.
OnNodeHeightDblClickResize
Not documented.
OnNodeHeightTracking
Not documented.
OnNodeMoved
Miscellaneous event.
OnNodeMoving
Miscellaneous event.
OnPaintBackground
Paint support event.
OnRemoveFromSelection
Not documented.
OnRenderOLEData
Drag'n drop and clipboard support event.
OnResetNode
Node management event.
OnSaveNode
Streaming support event.
OnSaveTree
Not documented.
OnScroll
Miscellaneous event.
OnShowScrollbar
Not documented.
OnStartOperation
Not documented.
OnStateChange
Miscellaneous event.
OnStructureChange
Miscellaneous event.
OnUpdating
Miscellaneous event.

TCustomVirtualStringTree Class

OnDrawText
Not documented.
OnGetHint
Virtual string tree event to query for a custom hint text.
OnGetText
Virtual string tree event to query for a node's normal or static text.
OnMeasureTextHeight
Not documented.
OnMeasureTextWidth
Not documented.
OnNewText
Virtual string tree event to pass edited text.
OnPaintText
Event to change text formatting for particular nodes.
OnShortenString
String tree event for custom handling of string abbreviations.

TVirtualStringTree Class

OnAddToSelection
Not documented.
OnAdvancedHeaderDraw
Header paint support event.
OnAfterAutoFitColumn
Not documented.
OnAfterAutoFitColumns
Not documented.
OnAfterCellPaint
Paint support event.
OnAfterColumnExport
Not documented.
OnAfterColumnWidthTracking
Not documented.
OnAfterGetMaxColumnWidth
Not documented.
OnAfterHeaderExport
Not documented.
OnAfterHeaderHeightTracking
Not documented.
OnAfterItemErase
Paint support event.
OnAfterItemPaint
Paint support event.
OnAfterNodeExport
Not documented.
OnAfterPaint
Paint support event.
OnAfterTreeExport
Not documented.
OnBeforeAutoFitColumn
Not documented.
OnBeforeAutoFitColumns
Not documented.
OnBeforeCellPaint
Paint support event.
OnBeforeColumnExport
Not documented.
OnBeforeColumnWidthTracking
Not documented.
OnBeforeDrawTreeLine
Not documented.
OnBeforeGetMaxColumnWidth
Not documented.
OnBeforeHeaderExport
Not documented.
OnBeforeHeaderHeightTracking
Not documented.
OnBeforeItemErase
Paint support event.
OnBeforeItemPaint
Paint support event.
OnBeforeNodeExport
Not documented.
OnBeforePaint
Paint support event.
OnBeforeTreeExport
Not documented.
OnCanSplitterResizeColumn
Not documented.
OnCanSplitterResizeHeader
Not documented.
OnCanSplitterResizeNode
Not documented.
OnChange
Navigation support event.
OnChecked
Check support event.
OnChecking
Check support event.
OnCollapsed
Miscellaneous event.
OnCollapsing
Miscellaneous event.
OnColumnClick
Header and column support event.
OnColumnDblClick
Header and column support event.
OnColumnExport
Not documented.
OnColumnResize
Header and column support routine.
OnColumnWidthDblClickResize
Not documented.
OnColumnWidthTracking
Not documented.
OnCompareNodes
Sort and search support event.
OnCreateDataObject
Drag'n drop support event.
OnCreateDragManager
Drag'n drop support event.
OnCreateEditor
Editing support event.
OnDragAllowed
Drag'n drop support event.
OnDragDrop
Drag'n drop support event.
OnDragOver
Drag'n drop support event.
OnDrawText
Not documented.
OnEditCancelled
Editing support event.
OnEdited
Editing support event.
OnEditing
Editing support event.
OnEndOperation
Not documented.
OnExpanded
Misscellaneous event.
OnExpanding
Miscellaneous event.
OnFocusChanged
Navigation support event.
OnFocusChanging
Navigation support event.
OnFreeNode
Data management node.
OnGetCellIsEmpty
Triggered when the tree control needs to know whether a given column is empty.
OnGetCursor
Miscellaneous event.
OnGetHeaderCursor
Header and column support event.
OnGetHelpContext
Miscellaneous event.
OnGetHint
Virtual string tree event to query for a custom hint text.
OnGetImageIndex
Display management event.
OnGetImageIndexEx
Not documented.
OnGetImageText
Not documented.
OnGetLineStyle
Display management event.
OnGetNodeDataSize
Data management event.
OnGetPopupMenu
Miscellaneous event.
OnGetText
Virtual string tree event to query for a node's normal or static text.
OnGetUserClipboardFormats
Drag'n drop and clipboard support event.
OnHeaderClick
Header & column support event.
OnHeaderDblClick
Header & column support event.
OnHeaderDragged
Header & column support event.
OnHeaderDraggedOut
Header & column support event.
OnHeaderDragging
Header & column support event.
OnHeaderDraw
Header & column support event.
OnHeaderDrawQueryElements
Header & column support event.
OnHeaderHeightDblClickResize
Not documented.
OnHeaderHeightTracking
Not documented.
OnHeaderMouseDown
Header & column support event.
OnHeaderMouseMove
Header & column support event.
OnHeaderMouseUp
Header & column support event.
OnHotChange
Navigation support event.
OnIncrementalSearch
Miscellaneous event.
OnInitChildren
Node management event.
OnInitNode
Node management event.
OnKeyAction
Miscellaneous event.
OnLoadNode
Streaming support event.
OnLoadTree
Not documented.
OnMeasureItem
Miscellaneous event.
OnMeasureTextHeight
Not documented.
OnMeasureTextWidth
Not documented.
OnNewText
Virtual string tree event to pass edited text.
OnNodeClick
Not documented.
OnNodeCopied
Miscellaneous event.
OnNodeCopying
Miscellaneous event.
OnNodeDblClick
Not documented.
OnNodeExport
Not documented.
OnNodeHeightDblClickResize
Not documented.
OnNodeHeightTracking
Not documented.
OnNodeMoved
Miscellaneous event.
OnNodeMoving
Miscellaneous event.
OnPaintBackground
Paint support event.
OnPaintText
Event to change text formatting for particular nodes.
OnRemoveFromSelection
Not documented.
OnRenderOLEData
Drag'n drop and clipboard support event.
OnResetNode
Node management event.
OnSaveNode
Streaming support event.
OnSaveTree
Not documented.
OnScroll
Miscellaneous event.
OnShortenString
String tree event for custom handling of string abbreviations.
OnShowScrollbar
Not documented.
OnStartOperation
Not documented.
OnStateChange
Miscellaneous event.
OnStructureChange
Miscellaneous event.
OnUpdating
Miscellaneous event.

Legend

Method
public
virtual
protected
Constructor
Property
read only
published
Event

TBaseVirtualTree Methods

AbsoluteIndex
Reads the overall index of a node.
AddChild
Creates and adds a new child node to given node.
AddFromStream
Adds the content from the given stream to the given node.
AddToSelection
This is the overview for the AddToSelection method overload.
AdjustImageBorder
Depending on the width of the image list as well as the given bidi mode R must be adjusted.
AdjustPaintCellRect
Used in descentants to modify the clip rectangle of the current column while painting a certain node.
AdjustPanningCursor
Loads the proper cursor which indicates into which direction scrolling is done.
AdviseChangeEvent
Used to register a delayed change event.
AllocateInternalDataArea
Registration method to allocate tree internal data per node.
Animate
Support method for animated actions in the tree view.
Assign
Used to copy properties from another Virtual Treeview.
BeginDrag
Starts an OLE drag'n drop operation.
BeginSynch
Enters the tree into a special synchronized mode.
BeginUpdate
Locks the tree view to perform several update operations.
CalculateSelectionRect
Support method for draw selection.
CanAutoScroll
Determines whether the tree can currently auto scroll its window.
CancelCutOrCopy
Canceles any pending cut or copy clipboard operation.
CancelEditNode
Cancel the current edit operation, if there is any.
CancelOperation
Not documented.
CanEdit
Determines whether a node can be edited or not.
CanFocus
Support method to determine whether the tree window can receive the input focus.
CanShowDragImage
Determines whether a drag image should be shown.
CanSplitterResizeNode
Not documented.
Change
Central method called when a node's selection state changes.
ChangeScale
Helper method called by the VCL when control resizing is due.
CheckedNodes
Not documented.
CheckParentCheckState
Helper method for recursive check state changes.
ChildNodes
Not documented.
Clear
Clears the tree and removes all nodes.
ClearChecked
Not documented.
ClearSelection
Removes all nodes from the current selection.
ClearTempCache
Helper method to clear the internal temporary node cache.
ColumnIsEmpty
Used to determine if a cell is considered as being empty.
ComputeRTLOffset
Not documented.
CopyTo
This is the overview for the CopyTo method overload.
CopyToClipBoard
Copies all currently selected nodes to the clipboard.
CountLevelDifference
Determines the level difference of two nodes.
CountVisibleChildren
Determines the number of visible child nodes of the given node.
CreateParams
Prepares the creation of the controls window handle.
CreateWnd
Initializes data, which depends on the window handle.
CutCopyNodes
Not documented.
CutToClipBoard
Copies the currently selected nodes to the clipboard and removes them once a consumer has taken the data.
DefineProperties
Helper method to customize loading and saving persistent tree data.
DeleteChildren
Removes all child nodes from the given node.
DeleteNode
Removes the given node from the tree.
DeleteSelectedNodes
Removes all currently selected nodes form the tree.
DetermineDropMode
Not documented.
DetermineHiddenChildrenFlag
Determines whether all children of a given node are hidden.
DetermineHiddenChildrenFlagAllNodes
Determines whether all children of all nodes are hidden.
DetermineHitPositionLTR
Determines the hit position within a node with left-to-right and right-to-left orientation.
DetermineHitPositionRTL
Determines the hit position within a node with left-to-right and right-to-left orientation.
DetermineLineImageAndSelectLevel
Not documented.
DetermineNextCheckState
Not documented.
DetermineScrollDirections
Not documented.
DoAdvancedHeaderDraw
Not documented.
DoAfterCellPaint
Not documented.
DoAfterItemErase
Not documented.
DoAfterItemPaint
Not documented.
DoAfterPaint
Not documented.
DoAutoScroll
Enables or disables the auto scroll timer.
DoBeforeCellPaint
Not documented.
DoBeforeDrag
Not documented.
DoBeforeDrawLineImage
Not documented.
DoBeforeItemErase
Not documented.
DoBeforeItemPaint
Not documented.
DoBeforePaint
Not documented.
DoCancelEdit
Called when the tree should stop editing without accepting changed values.
DoCanEdit
Not documented.
DoCanSplitterResizeNode
Not documented.
DoChange
Not documented.
DoCheckClick
Not documented.
DoChecked
Not documented.
DoChecking
Not documented.
DoCollapsed
Not documented.
DoCollapsing
Not documented.
DoColumnClick
Not documented.
DoColumnDblClick
Not documented.
DoColumnResize
Not documented.
DoCompare
Not documented.
DoCreateDataObject
Not documented.
DoCreateDragManager
Not documented.
DoCreateEditor
Not documented.
DoDragDrop
Not documented.
DoDragExpand
Not documented.
DoDragging
Internal method which handles drag' drop.
DoDragOver
Not documented.
DoEdit
Initiates editing of the currently set focused column and edit node.
DoEndDrag
Not documented.
DoEndEdit
Stops the current edit operation and takes over the new content.
DoEndOperation
Not documented.
DoExpanded
Not documented.
DoExpanding
Not documented.
DoFocusChange
Not documented.
DoFocusChanging
Not documented.
DoFocusNode
Internal method to set the focused node.
DoFreeNode
Not documented.
DoGetAnimationType
Determines the type of animation to be used.
DoGetCellContentMargin
Not documented.
DoGetCursor
Not documented.
DoGetHeaderCursor
Not documented.
DoGetImageIndex
Not documented.
DoGetImageText
Not documented.
DoGetLineStyle
Not documented.
DoGetNodeHint
Not documented.
DoGetNodeTooltip
Not documented.
DoGetNodeWidth
Overridable method which always retuns 0.
DoGetPopupMenu
Overridable method which triggers the OnGetPopup event.
DoGetUserClipboardFormats
Not documented.
DoHeaderClick
Not documented.
DoHeaderDblClick
Not documented.
DoHeaderDragged
Not documented.
DoHeaderDraggedOut
Not documented.
DoHeaderDragging
Not documented.
DoHeaderDraw
Not documented.
DoHeaderDrawQueryElements
Not documented.
DoHeaderMouseDown
Not documented.
DoHeaderMouseMove
Not documented.
DoHeaderMouseUp
Not documented.
DoHotChange
Not documented.
DoIncrementalSearch
Not documented.
DoInitChildren
Not documented.
DoInitNode
Not documented.
DoKeyAction
Not documented.
DoLoadUserData
Not documented.
DoMeasureItem
Not documented.
DoNodeClick
Not documented.
DoNodeCopied
Not documented.
DoNodeCopying
Not documented.
DoNodeDblClick
Not documented.
DoNodeHeightDblClickResize
Not documented.
DoNodeHeightTracking
Not documented.
DoNodeMoved
Not documented.
DoNodeMoving
Not documented.
DoPaintBackground
Not documented.
DoPaintDropMark
Overridable method which draws the small line on top of a nodes image depending on the current drop state.
DoPaintNode
Overridable method which does nothing.
DoPopupMenu
Overridable method which shows the popup menu for the given node.
DoRenderOLEData
Not documented.
DoReset
Not documented.
DoSaveUserData
Not documented.
DoScroll
Overridable method which triggers the OnScroll event.
DoSetOffsetXY
Internal core routine to set the tree's scroll position.
DoShowScrollbar
Not documented.
DoStartDrag
Not documented.
DoStartOperation
Not documented.
DoStateChange
Not documented.
DoStructureChange
Not documented.
DoTimerScroll
Callback method which is triggered whenever the scroll timer fires.
DoUpdating
Not documented.
DoValidateCache
Not documented.
DragAndDrop
Not documented.
DragCanceled
Called by the VCL when a drag'n drop operation was canceled by the user.
DragDrop
Helper method, which is used when a drag operation is finished.
DragEnter
Not documented.
DragFinished
Called when a drag operation is finished (accepted or cancelled).
Dragging
Returns true if a drag'n drop operation is in progress.
DragLeave
Not documented.
DragOver
Not documented.
DrawDottedHLine
Not documented.
DrawDottedVLine
Not documented.
EditNode
Starts editing the given node if allowed to.
EndEditNode
Stops node editing if it was started before.
EndOperation
Not documented.
EndSynch
Counterpart to BeginSynch.
EndUpdate
Resets the update lock set by BeginUpdate.
ExecuteAction
Not documented.
FindNodeInSelection
Helper method to find the given node in the current selection.
FinishChunkHeader
Not documented.
FinishCutOrCopy
Stops any pending cut or copy clipboard operation.
FlushClipboard
Renders all pending clipboard data.
FontChanged
Not documented.
FullCollapse
Collapses all nodes in the tree.
FullExpand
Expands all nodes in the tree.
GetBorderDimensions
Not documented.
GetCheckImage
Not documented.
GetCheckImageListFor
Not documented.
GetColumnClass
Returns the class to be used to manage columns in the tree.
GetControlsAlignment
Not documented.
GetDisplayRect
Not documented.
GetEffectivelyFiltered
Not documented.
GetEffectivelyVisible
Not documented.
GetFirst
Group of node navigation functions.
GetFirstChecked
Not documented.
GetFirstChild
Group of node navigation functions.
GetFirstCutCopy
Group of node navigation functions.
GetFirstInitialized
Group of node navigation functions.
GetFirstLeaf
Not documented.
GetFirstLevel
Not documented.
GetFirstNoInit
Group of node navigation functions.
GetFirstSelected
Group of node navigation functions.
GetFirstVisible
Group of node navigation functions.
GetFirstVisibleChild
Not documented.
GetFirstVisibleChildNoInit
Not documented.
GetFirstVisibleNoInit
Group of node navigation functions.
GetHeaderClass
Returns the header class to be used by the tree.
GetHintWindowClass
Not documented.
GetHitTestInfoAt
Returns information about the node at the given position.
GetImageIndex
Not documented.
GetLast
Not documented.
GetLastChild
GetLastChildNoInit
GetLastInitialized
Not documented.
GetLastNoInit
Not documented.
GetLastVisible
Not documented.
GetLastVisibleChild
Not documented.
GetLastVisibleChildNoInit
Not documented.
GetLastVisibleNoInit
Not documented.
GetMaxColumnWidth
Not documented.
GetMaxRightExtend
Determines the maximum with of the currently visible part of the tree.
GetNativeClipboardFormats
Used to let descendants and the application add their own supported clipboard formats.
GetNext
Not documented.
GetNextChecked
This is the overview for the GetNextChecked method overload.
GetNextCutCopy
Not documented.
GetNextInitialized
Not documented.
GetNextLeaf
Not documented.
GetNextLevel
Not documented.
GetNextNoInit
Not documented.
GetNextSelected
Not documented.
GetNextSibling
GetNextVisible
Not documented.
GetNextVisibleNoInit
Not documented.
GetNextVisibleSibling
Not documented.
GetNextVisibleSiblingNoInit
Not documented.
GetNodeAt
This is the overview for the GetNodeAt method overload.
GetNodeData
Returns the address of the user data area of the given node.
GetNodeLevel
Returns the indentation level of the given node.
GetOperationCanceled
Not documented.
GetOptionsClass
Customization helper to determine which options class the tree should use.
GetPrevious
Not documented.
GetPreviousChecked
Not documented.
GetPreviousCutCopy
Not documented.
GetPreviousInitialized
Not documented.
GetPreviousLeaf
Not documented.
GetPreviousLevel
Not documented.
GetPreviousNoInit
Not documented.
GetPreviousSelected
Not documented.
GetPreviousSibling
GetPreviousVisible
Not documented.
GetPreviousVisibleNoInit
Not documented.
GetPreviousVisibleSibling
Not documented.
GetPreviousVisibleSiblingNoInit
Not documented.
GetSortedCutCopySet
Returns a sorted list of nodes, which are marked for s cut or copy clipboard operation.
GetSortedSelection
Returns a sorted list of all currently selected nodes.
GetTextInfo
Not documented.
GetTreeFromDataObject
OLE drag'n drop and clipboard support method.
GetTreeRect
Returns the size of the virtual tree image.
GetVisibleParent
Not documented.
HandleHotTrack
Not documented.
HandleIncrementalSearch
Not documented.
HandleMouseDblClick
Not documented.
HandleMouseDown
Not documented.
HandleMouseUp
Not documented.
HasAsParent
Determines if the given node has got another node as one of its parents.
HasImage
Not documented.
HasPopupMenu
Determines whether there is a pop up menu assigned to the tree.
InitChildren
Not documented.
InitializedNodes
Not documented.
InitNode
Not documented.
InsertNode
Inserts a new node and returns it to the caller.
InternalAddFromStream
Not documented.
InternalAddToSelection
This is the overview for the InternalAddToSelection method overload.
InternalCacheNode
Not documented.
InternalClearSelection
Not documented.
InternalConnectNode
Not documented.
InternalData
Returns the address of the internal data for a tree class.
InternalDisconnectNode
Not documented.
InternalRemoveFromSelection
Not documented.
InvalidateCache
Empties the internal node cache and marks it as invalid.
InvalidateChildren
Invalidates all children of the given node.
InvalidateColumn
Invalidates the client area part of a column.
InvalidateNode
Invalidates the given node.
InvalidateToBottom
Invalidates the client area starting with the top position of the given node.
InvertSelection
Inverts the current selection.
IsEditing
Tells the caller whether the tree is currently in edit mode.
IsMouseSelecting
Tell the caller whether the tree is currently in draw selection mode.
IterateSubtree
Iterator method to go through all nodes of a given sub tree.
LeafNodes
Not documented.
LevelNodes
Not documented.
Loaded
Not documented.
LoadFromFile
Loads previously streamed out tree data back in again.
LoadFromStream
Loads previously streamed out tree data back in again.
MainColumnChanged
Not documented.
MarkCutCopyNodes
Not documented.
MeasureItemHeight
Not documented.
MouseMove
Not documented.
MoveTo
This is the overview for the MoveTo method overload.
Nodes
Not documented.
NoInitNodes
Not documented.
Notification
Not documented.
OriginalWMNCPaint
Not documented.
Paint
TControl's Paint method used here to display the tree.
PaintCheckImage
Not documented.
PaintImage
Not documented.
PaintNodeButton
Not documented.
PaintSelectionRectangle
Not documented.
PaintTree
Main paint routine for the tree image.
PaintTreeLines
Not documented.
PanningWindowProc
Not documented.
PasteFromClipboard
Inserts the content of the clipboard into the tree.
PrepareCell
This method is called immediately before a cell's content is drawn und is responsible to paint selection colors etc.
PrepareDragImage
Not documented.
Print
Not documented.
ProcessDrop
Helper method to ease OLE drag'n drop operations.
ProcessOLEData
Takes serialized OLE tree data and reconstructs the former structure.
ReadChunk
Not documented.
ReadNode
Not documented.
RedirectFontChangeEvent
Not documented.
ReinitChildren
Forces all child nodes of Node to be reinitialized.
ReinitNode
Forces a reinitialization of the given node.
RemoveFromSelection
Removes the given node from the current selection.
RenderOLEData
Renders pending OLE data.
RepaintNode
Causes the treeview to repaint the given node.
ResetNode
Resets the given node to uninitialized.
ResetRangeAnchor
Not documented.
RestoreFontChangeEvent
Not documented.
SaveToFile
Saves the entire content of the tree into a file or stream.
SaveToStream
Saves the entire content of the tree into a file or stream.
ScrollIntoView
This is the overview for the ScrollIntoView method overload.
SelectAll
Selects all nodes in the tree.
SelectedNodes
Not documented.
SelectNodes
Selects a range of nodes.
SetFocusedNodeAndColumn
Not documented.
SkipNode
Not documented.
Sort
Sorts the given node.
SortTree
Sorts the entire tree view.
StartOperation
Not documented.
StartWheelPanning
Not documented.
StopWheelPanning
Not documented.
StructureChange
Not documented.
SuggestDropEffect
Not documented.
ToggleNode
Changes a node's expand state to the opposite state.
ToggleSelection
Toggles the selection state of a range of nodes.
UnselectNodes
Deselects a range of nodes.
UpdateAction
Not documented.
UpdateColumnCheckState
Not documented.
UpdateDesigner
Not documented.
UpdateEditBounds
Not documented.
UpdateHeaderRect
Not documented.
UpdateHorizontalRange
Not documented.
UpdateHorizontalScrollBar
Applies changes to the horizontal and vertical scrollbars.
UpdateRanges
Not documented.
UpdateScrollBars
Applies changes to the horizontal and vertical scrollbars.
UpdateVerticalRange
Not documented.
UpdateVerticalScrollBar
Applies changes to the horizontal and vertical scrollbars.
UpdateWindowAndDragImage
Not documented.
UseRightToLeftReading
Helper method for right-to-left layout.
ValidateCache
Initiates the validation of the internal node cache.
ValidateChildren
Validates all children of a given node.
ValidateNode
Validates a given node.
ValidateNodeDataSize
Helper method for node data size initalization.
VisibleChildNodes
Not documented.
VisibleChildNoInitNodes
Not documented.
VisibleNodes
Not documented.
VisibleNoInitNodes
Not documented.
WndProc
Redirected window procedure to do some special processing.
WriteChunks
Writes the core chunks for the given node to the given stream.
WriteNode
Writes the cover (envelop) chunk for the given node to the given stream.

TCustomVirtualStringTree Class

AdjustPaintCellRect
Method which can be used by descentants to adjust the given rectangle during a paint cycle.
CalculateTextWidth
Not documented.
CanExportNode
Not documented.
ColumnIsEmpty
Used to determine if a cell is considered as being empty.
ComputeNodeHeight
Not documented.
ContentToClipboard
Not documented.
ContentToCustom
Not documented.
ContentToHTML
Not documented.
ContentToRTF
Not documented.
ContentToText
This is the overview for the ContentToText method overload.
ContentToUnicode
This is the overview for the ContentToUnicode method overload.
DefineProperties
Helper method to customize loading and saving persistent tree data.
DoCreateEditor
Not documented.
DoGetNodeHint
Not documented.
DoGetNodeTooltip
Not documented.
DoGetNodeWidth
Overridable method which always retuns 0.
DoGetText
Not documented.
DoIncrementalSearch
Not documented.
DoNewText
Not documented.
DoPaintNode
Overridable method which does nothing.
DoPaintText
Not documented.
DoShortenString
Not documented.
DoTextDrawing
Not documented.
DoTextMeasuring
Not documented.
GetOptionsClass
Customization helper to determine which options class the tree should use.
GetTextInfo
Not documented.
InternalData
Returns the address of the internal data for a tree class.
InvalidateNode
Invalidates the given node.
MainColumnChanged
Not documented.
Path
Not documented.
ReadChunk
Not documented.
ReadOldStringOptions
Not documented.
ReinitNode
Forces a reinitialization of the given node.
RenderOLEData
Renders pending OLE data.
SaveToCSVFile
Not documented.
WriteChunks
Writes the core chunks for the given node to the given stream.

TVirtualStringTree Class

GetOptionsClass
Customization helper to determine which options class the tree should use.

TBaseVirtualTree Properties

Accessible
Not documented.
AccessibleItem
Not documented.
AccessibleName
Not documented.
Alignment
Determines the horizontal alignment of text if no columns are defined.
AnimationDuration
Determines the maximum duration the tree can use to play an animation.
AutoExpandDelay
Time delay after which a node gets expanded if it is the current drop target.
AutoScrollDelay
Time which determines when auto scrolling should start.
AutoScrollInterval
Time interval between scroll events when doing auto scroll.
Background
Holds a background image for the tree.
BackgroundOffsetX
Horizontal offset of the background image.
BackgroundOffsetY
Vertical offset of the background image.
BorderStyle
Same as TForm.BorderStyle.
BottomNode
Not documented.
BottomSpace
Not documented.
ButtonFillMode
Determines how to fill the background of the node buttons.
ButtonStyle
Determines the look of node buttons.
ChangeDelay
Time which determines when the OnChange event should be triggered after the actual change event.
CheckedCount
Not documented.
CheckImageKind
Determines which images should be used for checkboxes and radio buttons.
CheckImages
Not documented.
CheckState
Read or set the check state of a node.
CheckType
Read or set the check type of a node.
ChildCount
Read or set the number of child nodes of a node.
ChildrenInitialized
Read whether a node's child count has been initialized already.
ClipboardFormats
Special class to keep a list of clipboard format descriptions.
Colors
A collection of colors used in the tree.
CustomCheckImages
Assign your own image list to get the check images you like most.
CutCopyCount
Not documented.
DefaultNodeHeight
Read or set the height new nodes get as initial value.
DefaultPasteMode
Read or set the value, which determines where to add pasted nodes to.
DragHeight
Read or set the vertical limit of the internal drag image.
DragImage
Holds the instance of the internal drag image.
DragImageKind
Read or set what should be shown in the drag image.
DragManager
Holds the reference to the internal drag manager.
DragOperations
Read or set which drag operations may be allowed in the tree.
DragSelection
Keeps a temporary list of nodes during drag'n drop.
DragType
Read or set which subsystem should be used for dragging.
DragWidth
Read or set the horizontal limit of the internal drag image.
DrawSelectionMode
Read or set how multiselection with the mouse is to be visualized.
DropTargetNode
Contains the current drop target node if the tree is currently the target of a drag'n drop operation.
EditColumn
Not documented.
EditDelay
Read or set the maximum time between two single clicks on the same node, which should start node editing.
EditLink
Keeps a reference to the internal edit link during a node edit operation.
EffectiveOffsetX
Not documented.
EmptyListMessage
Not documented.
Expanded
Read or set the expanded state of a particular node.
FocusedColumn
Read or set the currently focused collumn.
FocusedNode
Read or set the currently focused node.
Font
Same as TWinControl.Font.
FullyVisible
Read or set whether a node is fully visible or not.
HasChildren
Read or set whether a node has got children.
Header
Provides access to the header instance.
HeaderRect
Returns the non-client-area rectangle used for the header.
HintAnimation
Read or set the current hint animation type.
HintData
Not documented.
HintMode
Read or set what type of hint you want for the tree view.
HotCursor
Read or set which cursor should be used for hot nodes.
HotMinusBM
Not documented.
HotNode
Read, which node is currently the hot node.
HotPlusBM
Not documented.
Images
Read or set the tree's normal image list.
IncrementalSearch
Read or set the current incremental search mode.
IncrementalSearchDirection
Read or set the direction to be used for incremental search.
IncrementalSearchStart
Read or set where to start incremental search.
IncrementalSearchTimeout
Read or set the maximum time, which is allowed between two consecutive key strokes so that incremental search stays active.
Indent
Read or set the indentation amount for node levels.
IsDisabled
Read or set the enabled state of the given node.
IsEffectivelyFiltered
Not documented.
IsEffectivelyVisible
Not documented.
IsFiltered
Not documented.
IsVisible
Read or set the visibility state of the given node.
LastClickPos
Used for retained drag start and wheel mouse scrolling.
LastDropMode
Read how the last drop operation finished.
LastHintRect
Not documented.
LineMode
Read or set the mode of the tree lines.
LineStyle
Read or set the mode of the tree lines.
Margin
Read or set the tree's node margin.
MinusBM
Not documented.
MultiLine
Read or toggle the multiline feature for a given node.
NodeAlignment
Read or set the node alignment value.
NodeDataSize
Read or set the extra data size for each node.
NodeHeight
Read or set a node's height.
NodeParent
Read or set a node's parent node.
OffsetX
Read or set the tree's current horizontal and vertical scroll offsets.
OffsetXY
Read or set the tree's current horizontal and vertical scroll offsets.
OffsetY
Read or set the tree's current horizontal and vertical scroll offsets.
OperationCanceled
Not documented.
OperationCount
Not documented.
PlusBM
Not documented.
RangeX
Not documented.
RangeY
Not documented.
RootNode
Reference to the internal root node which is the anchor of the entire tree node hierarchy.
RootNodeCount
Read or set the number of nodes on the top level.
ScrollBarOptions
Reference to the scroll bar options class.
SearchBuffer
Current input string for incremental search.
Selected
Property to modify or determine the selection state of a node.
SelectedCount
Contains the number of selected nodes.
SelectionBlendFactor
Read or set the current blend factor for the multi selection rectangle and the node selection rectangle.
SelectionCurveRadius
Read or set the current corner radius for node selection rectangles.
SelectionLocked
Not documented.
StateImages
Reference to the images list which is used for the state images.
TextMargin
Read or set the distance of the node caption to its borders.
TopNode
The top node is the node which is currently at the top border of the client area.
TotalCount
Returns the number of nodes in the tree.
TotalInternalDataSize
Keeps the currently accumulated data size for one node.
TreeOptions
Reference to the tree's options.
TreeStates
Property which keeps a set of flags which indicate current operation and states of the tree.
UpdateCount
Not documented.
VerticalAlignment
Used to set a node's vertical button aligment with regard to the entire node rectangle.
VisibleCount
Number of currently visible nodes.
VisiblePath
Property to set or determine a node parent's expand states.
WantTabs
Read or set whether the tree wants to process tabs on its own.

TCustomVirtualStringTree Class

DefaultText
Not documented.
EllipsisWidth
Not documented.
ImageText
Not documented.
Text
Not documented.
TreeOptions
Reference to the tree's options.

TVirtualStringTree Class

AccessibleName
Not documented.
Action
Not documented.
Align
Not documented.
Alignment
Determines the horizontal alignment of text if no columns are defined.
Anchors
Not documented.
AnimationDuration
Determines the maximum duration the tree can use to play an animation.
AutoExpandDelay
Time delay after which a node gets expanded if it is the current drop target.
AutoScrollDelay
Time which determines when auto scrolling should start.
AutoScrollInterval
Time interval between scroll events when doing auto scroll.
Background
Holds a background image for the tree.
BackgroundOffsetX
Horizontal offset of the background image.
BackgroundOffsetY
Vertical offset of the background image.
BevelEdges
Not documented.
BevelInner
Not documented.
BevelKind
Not documented.
BevelOuter
Not documented.
BevelWidth
Not documented.
BiDiMode
Not documented.
BorderStyle
Same as TForm.BorderStyle.
BorderWidth
Not documented.
BottomSpace
Not documented.
ButtonFillMode
Determines how to fill the background of the node buttons.
ButtonStyle
Determines the look of node buttons.
Canvas
Not documented.
ChangeDelay
Time which determines when the OnChange event should be triggered after the actual change event.
CheckImageKind
Determines which images should be used for checkboxes and radio buttons.
ClipboardFormats
Special class to keep a list of clipboard format descriptions.
Color
Not documented.
Colors
A collection of colors used in the tree.
Constraints
Not documented.
Ctl3D
Not documented.
CustomCheckImages
Assign your own image list to get the check images you like most.
DefaultNodeHeight
Read or set the height new nodes get as initial value.
DefaultPasteMode
Read or set the value, which determines where to add pasted nodes to.
DefaultText
Not documented.
DragCursor
Not documented.
DragHeight
Read or set the vertical limit of the internal drag image.
DragImageKind
Read or set what should be shown in the drag image.
DragKind
Not documented.
DragMode
Not documented.
DragOperations
Read or set which drag operations may be allowed in the tree.
DragType
Read or set which subsystem should be used for dragging.
DragWidth
Read or set the horizontal limit of the internal drag image.
DrawSelectionMode
Read or set how multiselection with the mouse is to be visualized.
EditDelay
Read or set the maximum time between two single clicks on the same node, which should start node editing.
Enabled
Not documented.
Font
Same as TWinControl.Font.
Header
Provides access to the header instance.
HintAnimation
Read or set the current hint animation type.
HintMode
Read or set what type of hint you want for the tree view.
HotCursor
Read or set which cursor should be used for hot nodes.
Images
Read or set the tree's normal image list.
IncrementalSearch
Read or set the current incremental search mode.
IncrementalSearchDirection
Read or set the direction to be used for incremental search.
IncrementalSearchStart
Read or set where to start incremental search.
IncrementalSearchTimeout
Read or set the maximum time, which is allowed between two consecutive key strokes so that incremental search stays active.
Indent
Read or set the indentation amount for node levels.
LineMode
Read or set the mode of the tree lines.
LineStyle
Read or set the mode of the tree lines.
Margin
Read or set the tree's node margin.
NodeAlignment
Read or set the node alignment value.
NodeDataSize
Read or set the extra data size for each node.
OnClick
Not documented.
OnContextPopup
Not documented.
OnDblClick
Not documented.
OnEndDock
Not documented.
OnEndDrag
Not documented.
OnEnter
Not documented.
OnExit
Not documented.
OnKeyDown
Not documented.
OnKeyPress
Not documented.
OnKeyUp
Not documented.
OnMouseDown
Not documented.
OnMouseMove
Not documented.
OnMouseUp
Not documented.
OnMouseWheel
Not documented.
OnResize
Not documented.
OnStartDock
Not documented.
OnStartDrag
Not documented.
OperationCanceled
Not documented.
ParentBiDiMode
Not documented.
ParentColor
Not documented.
ParentCtl3D
Not documented.
ParentFont
Not documented.
ParentShowHint
Not documented.
PopupMenu
Not documented.
RootNodeCount
Read or set the number of nodes on the top level.
ScrollBarOptions
Reference to the scroll bar options class.
SelectionBlendFactor
Read or set the current blend factor for the multi selection rectangle and the node selection rectangle.
SelectionCurveRadius
Read or set the current corner radius for node selection rectangles.
ShowHint
Not documented.
StateImages
Reference to the images list which is used for the state images.
TabOrder
Not documented.
TabStop
Not documented.
TextMargin
Read or set the distance of the node caption to its borders.
TreeOptions
Reference to the tree's options.
Visible
Not documented.
WantTabs
Read or set whether the tree wants to process tabs on its own.

Class Hierarchy
  TVirtualStringTreeTVirtualStringTreeTVirtualStringTree
File

VirtualTrees

Links
Classes, Topics, TVirtualStringTree Methods, TVirtualStringTree Properties, TVirtualStringTree Events, TBaseVirtualTree Constructors, TBaseVirtualTree Destructors, TBaseVirtualTree Events, Legend, TBaseVirtualTree Methods, TBaseVirtualTree Properties


TVirtualStringTree Methods
TVirtualStringTree Class | Methods | Legend | Send Feedback

The methods of the TVirtualStringTree class are listed here.

Class

TVirtualStringTree Class

Legend

Method
protected
virtual

Links
TVirtualStringTree Class, Methods, Legend


TVirtualStringTree.GetOptionsClass Method
TVirtualStringTree Methods | TVirtualStringTree Class | Send Feedback

Customization helper to determine which options class the tree should use.

Pascal
function GetOptionsClass: TTreeOptionsClass; override;
Description

GetOptionsClass is a special purpose method to return a certain class which is used by the tree for its options. TVirtualBaseTree always returns TCustomVirtualTreeOptions but descendants can override this method to return own classes.

For ease of use it makes much sense to always use the same name for the tree's options (which is TreeOptions). By using a customized options class, however, the wrong type is returned by this property. Hence it is meaningful to override TreeOptions and return the derived options class. To make this work the tree descendant must additionally provide new access methods for this property. An example can be seen in TVirtualStringTree:

  TVirtualStringTree = class(TCustomVirtualStringTree)
  private
    function GetOptions: TStringTreeOptions;
    procedure SetOptions(const Value: TStringTreeOptions);
  protected
    function GetOptionsClass: TTreeOptionsClass; override;
  public
    property Canvas;
  published
    ...
    property TreeOptions: TStringTreeOptions read GetOptions write SetOptions;
    ...
  end;

  ...

//----------------- TVirtualStringTree ---------------------------------------------------------------------------------

function TVirtualStringTree.GetOptions: TStringTreeOptions;

begin
  Result := FOptions as TStringTreeOptions;
end;

//----------------------------------------------------------------------------------------------------------------------

procedure TVirtualStringTree.SetOptions(const Value: TStringTreeOptions);

begin
  FOptions.Assign(Value);
end;

//----------------------------------------------------------------------------------------------------------------------

function TVirtualStringTree.GetOptionsClass: TTreeOptionsClass;

begin
  Result := TStringTreeOptions;
end;
Group

TVirtualStringTree Methods

Links
TVirtualStringTree Methods, TVirtualStringTree Class


TVirtualStringTree Properties
TVirtualStringTree Class | Properties | Legend | Send Feedback

The properties of the TVirtualStringTree class are listed here.

Class

TVirtualStringTree Class

Legend

Property
published
public

Links
TVirtualStringTree Class, Properties, Legend


TVirtualStringTree.AccessibleName Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property AccessibleName: string;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.Action Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property Action;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.Align Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property Align;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.Alignment Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Determines the horizontal alignment of text if no columns are defined.

Pascal
property Alignment: TAlignment;
Description

This property is only used if there are no columns defined and applies only to the node captions. Right alignment means here the right client area border and left aligned means the node buttons/lines etc. (both less the text margin).

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.Anchors Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property Anchors;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.AnimationDuration Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Determines the maximum duration the tree can use to play an animation.

Pascal
property AnimationDuration: Cardinal;
Description

The value is specified in milliseconds and per default there are 200 ms as time frame, which is the recommended duration for such operations. On older systems (particularly Windows 95 and Windows 98) the animation process might not get enough CPU time to avoid expensive animations to finish properly. Still the animation loop tries to stay as close as possible to the given time.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.AutoExpandDelay Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Time delay after which a node gets expanded if it is the current drop target.

Pascal
property AutoExpandDelay: Cardinal;
Description

This value is specified in milliseconds and determines when to expand a node if it is the current drop target. This value is only used if voAutoDropExpand in Options is set.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.AutoScrollDelay Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Time which determines when auto scrolling should start.

Pascal
property AutoScrollDelay: Cardinal;
Description

Once the mouse pointer has been moved near to a border a timer is started using the interval specified by AutoScrollDelay. When the timer has fired auto scrolling starts provided it is enabled (see also TreeOptions). The value is specified in milliseconds.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.AutoScrollInterval Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Time interval between scroll events when doing auto scroll.

Pascal
property AutoScrollInterval: TAutoScrollInterval;
Description

This property determines the speed how the tree is scrolled vertically or horizontally when auto scrolling is in progress. The value is given in milliseconds.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.Background Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Holds a background image for the tree.

Pascal
property Background: TPicture;
Description

Virtual Treeview supports a fixed background image which does not scroll but can be adjusted by BackgroundOffsetX and BackgroundOffsetY.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.BackgroundOffsetX Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Horizontal offset of the background image.

Pascal
property BackgroundOffsetX: Integer;
Description

Determines the horizontal offset of the left border of the background image. This value is relative to the target canvas where the tree is painted to (usually the tree window).

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.BackgroundOffsetY Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Vertical offset of the background image.

Pascal
property BackgroundOffsetY: Integer;
Description

Determines the vertical offset of the top border of the background image. This value is relative to the target canvas where the tree is painted to (usually the tree window).

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.BevelEdges Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property BevelEdges;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.BevelInner Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property BevelInner;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.BevelKind Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property BevelKind;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.BevelOuter Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property BevelOuter;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.BevelWidth Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property BevelWidth;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.BiDiMode Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property BiDiMode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.BorderStyle Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Same as TForm.BorderStyle.

Pascal
property BorderStyle: TBorderStyle;
Description

See TForm.BorderStyle.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.BorderWidth Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property BorderWidth;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.BottomSpace Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property BottomSpace: Cardinal;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.ButtonFillMode Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Determines how to fill the background of the node buttons.

Pascal
property ButtonFillMode: TVTButtonFillMode;
Description

This property is used to specify how the interior of the little plus and minus node buttons should be drawn, if ButtonStyle is bsTriangle.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.ButtonStyle Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Determines the look of node buttons.

Pascal
property ButtonStyle: TVTButtonStyle;
Description

Determines the look of node buttons.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.Canvas Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property Canvas;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.ChangeDelay Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Time which determines when the OnChange event should be triggered after the actual change event.

Pascal
property ChangeDelay: Cardinal;
Description

In order to accumulate many quick changes in the tree you can use this delay value to specify after which wait time the OnChange event should occur. A value of 0 means to trigger OnChange immediately after the change (usually a selection or focus change) happend. Any value > 0 will start a timer which then triggers OnChange.

Note that there is the synchronous mode (started by BeginSynch) which effectively circumvents the change delay for the duration of the synchronous mode (stopped by EndSynch) regardless of the ChangeDelay setting.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.CheckImageKind Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Determines which images should be used for checkboxes and radio buttons.

Pascal
property CheckImageKind: TCheckImageKind;
Description

CheckImageKind can be used to switch the image set, which should be used for the tree. Read the description about TCheckImageKind for a list of all images, which can be used. CheckImageKind can also be set to ckCustom, which allows to supply a customized set of images to the tree. In order to have that working you must assign an image list (TCustomImageList) to the CustomCheckImages property.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.ClipboardFormats Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Special class to keep a list of clipboard format descriptions.

Pascal
property ClipboardFormats: TClipboardFormats;
Description

This TStringList descendant is used to keep a number of clipboard format descriptions, which are usually used to register clipboard formats with the system. Using a string list for this task allows to store enabled clipboard formats in the DFM.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.Color Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property Color;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.Colors Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

A collection of colors used in the tree.

Pascal
property Colors: TVTColors;
Description

This property holds an instance of the TVTColors class, which is used to customize many of the colors used in a tree. Placing them all in a specialized class helps organizing the colors in the object inspector and improves general management.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.Constraints Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property Constraints;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.Ctl3D Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property Ctl3D;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.CustomCheckImages Property
TVirtualStringTree Properties | See Also | TVirtualStringTree Class | Send Feedback

Assign your own image list to get the check images you like most.

Pascal
property CustomCheckImages: TCustomImageList;
Description

The CustomCheckImages property is used when custom check images are enabled (see also ckCustom in TCheckImageKind).

See Also

TCheckImageKind

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, See Also, TVirtualStringTree Class


TVirtualStringTree.DefaultNodeHeight Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Read or set the height new nodes get as initial value.

Pascal
property DefaultNodeHeight: Cardinal;
Description

This property allows to read the current initial height for new nodes and to set a new value. Note that changing the property value does not change the height of existing nodes. Only new nodes are affected.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.DefaultPasteMode Property
TVirtualStringTree Properties | See Also | TVirtualStringTree Class | Send Feedback

Read or set the value, which determines where to add pasted nodes to.

Pascal
property DefaultPasteMode: TVTNodeAttachMode;
Description

The default paste mode is an attach mode, which is used when pasting data from the clipboard into the tree. Usually, you will want new nodes to be added as child nodes to the currently focused node (and this is also the default value), but you can also specify to add nodes only as siblings.

See Also

TVTNodeAttachMode

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, See Also, TVirtualStringTree Class


TVirtualStringTree.DefaultText Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property DefaultText: UnicodeString;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.DragCursor Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property DragCursor;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.DragHeight Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Read or set the vertical limit of the internal drag image.

Pascal
property DragHeight: Integer;
Description

The DragHeight property (as well as the DragWidth property) are only for compatibility reason in the tree. If a platform does not support the IDropTargetHelper interface (Windows 9x/Me, Windows NT 4.0) then Virtual Treeview uses its own implementation of a DragImage. Since displaying a translucent drag image is performance hungry you should limit the image size shown for the drag operation.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.DragImageKind Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Read or set what should be shown in the drag image.

Pascal
property DragImageKind: TVTDragImageKind;
Description

DragImageKind allows to switch parts of the drag image off and on.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.DragKind Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property DragKind;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.DragMode Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property DragMode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.DragOperations Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Read or set which drag operations may be allowed in the tree.

Pascal
property DragOperations: TDragOperations;
Description

Using this property you can determine, which actions may be performed when a drag operation is finished. The default value includes move, copy and link, where link is rather an esoteric value and only there because it is supported by OLE. The values used directly determine which image is shown for the drag cursor. The specified drag operations do not tell which actions will actually be performed but only, which actions are allowed. They still can be modified during drag'n drop by using a modifier key like the control, shift or alt key or can entirely be ignored by the drop handler.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.DragType Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Read or set which subsystem should be used for dragging.

Pascal
property DragType: TVTDragType;
Description

Traditionally, Delphi only supports its own drag mechanism, which is not compatible with the rest of the system. This VCL dragging also does not support to transport random data nor does it support drag operations between applications. Thus Virtual Treeview also supports the generally used OLE dragging, which in turn is incompatible with VCL dragging. Depending on your needs you can enable either VCL or OLE dragging as both together cannot be started. However, Virtual Treeview is able to act as drop target for both kind of data, independant of what is set in DragType.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.DragWidth Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Read or set the horizontal limit of the internal drag image.

Pascal
property DragWidth: Integer;
Description

The DragWidth property (as well as the DragHeight property) are only for compatibility reason in the tree. If a platform does not support the IDropTargetHelper interface (Windows 9x/Me, Windows NT 4.0) then Virtual Treeview uses its own implementation of a DragImage. Since displaying a translucent drag image is performance hungry you should limit the image size shown for the drag operation.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.DrawSelectionMode Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Read or set how multiselection with the mouse is to be visualized.

Pascal
property DrawSelectionMode: TVTDrawSelectionMode;
Description

Virtuall Treeview allows to display two different selection rectangles when doing multiselection with the mouse. One is the traditiional dotted focus rectangle and the other one is a translucent color rectangle. The latter is the preferred one but the former is set as default (for compatibility reasons).

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.EditDelay Property
TVirtualStringTree Properties | See Also | TVirtualStringTree Class | Send Feedback

Read or set the maximum time between two single clicks on the same node, which should start node editing.

Pascal
property EditDelay: Cardinal;
Description

A node edit operation can be started using the keyboard (F2 key), in code using EditNode or by clicking twice on the same node (but not doing a double click). EditDelay is the maxmimum time distance between both clicks in which the edit operation is started.

See Also

Editors and editing

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, See Also, TVirtualStringTree Class


TVirtualStringTree.Enabled Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property Enabled;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.Font Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Same as TWinControl.Font.

Pascal
property Font;
Description

See TWinControl.Font.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.Header Property
TVirtualStringTree Properties | See Also | TVirtualStringTree Class | Send Feedback

Provides access to the header instance.

Pascal
property Header: TVTHeader;
Description

This property is used to allow access to the header instance, which manages all aspects of the tree's header image as well as the column settings.

See Also

TVTHeader

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, See Also, TVirtualStringTree Class


TVirtualStringTree.HintAnimation Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Read or set the current hint animation type.

Pascal
property HintAnimation: THintAnimationType;
Description

With this property you can specify what animation you would like to play when displaying a hint. For some applications it might not be good to animate hints, hence you can entirely switch them off. Usually however you will leave the system standard. This way the user can decide whether and which hint animation he or she likes.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.HintMode Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Read or set what type of hint you want for the tree view.

Pascal
property HintMode: TVTHintMode;
Description

Virtual Treeview supports several hints modes. This includes the normal hint used for any other TControl class as well as a node specific hint, which is individual for each node or even each cell.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.HotCursor Property
TVirtualStringTree Properties | See Also | TVirtualStringTree Class | Send Feedback

Read or set which cursor should be used for hot nodes.

Pascal
property HotCursor: TCursor;
Description

When you enable toHotTrack in TreeOptions.PaintOptions then the node, which is currently under the mouse pointer becomes the hot node. This is a special state, which can be used for certain effects. Hot nodes have by default an underlined caption and may cause the cursor to change to what ever you like. The HotCursor property is used to specify, which cursor is to be used.

See Also

HotNode, TVTPaintOptions

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, See Also, TVirtualStringTree Class


TVirtualStringTree.Images Property
TVirtualStringTree Properties | See Also | TVirtualStringTree Class | Send Feedback

Read or set the tree's normal image list.

Pascal
property Images: TCustomImageList;
Description

Just like with TListView and TTreeview also Virtual Treeview can take an image list for its normal images. Additionally, there are image lists for state images and check images.

See Also

StateImages, CheckImages

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, See Also, TVirtualStringTree Class


TVirtualStringTree.IncrementalSearch Property
TVirtualStringTree Properties | See Also | TVirtualStringTree Class | Send Feedback

Read or set the current incremental search mode.

Pascal
property IncrementalSearch: TVTIncrementalSearch;
Description

Virtual Treeview can do an incremental search by calling back the application when comparing node captions. The IncrementalSearch property determines whether incremental search is enabled and which nodes should be searched through.

See Also

IncrementalSearchDirection, IncrementalSearchStart, IncrementalSearchTimeout

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, See Also, TVirtualStringTree Class


TVirtualStringTree.IncrementalSearchDirection Property
TVirtualStringTree Properties | See Also | TVirtualStringTree Class | Send Feedback

Read or set the direction to be used for incremental search.

Pascal
property IncrementalSearchDirection: TVTSearchDirection;
Description

When incremental search is enabled then Virtual Treeview can search forward and backward from the start point given by IncrementalSearchStart.

See Also

IncrementalSearch, IncrementalSearchStart, IncrementalSearchTime123out

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, See Also, TVirtualStringTree Class


TVirtualStringTree.IncrementalSearchStart Property
TVirtualStringTree Properties | See Also | TVirtualStringTree Class | Send Feedback

Read or set where to start incremental search.

Pascal
property IncrementalSearchStart: TVTSearchStart;
Description

When incremental search is enabled in the tree view then you can specify here, where to start the next incremental search operation from.

See Also

IncrementalSearch, IncrementalSearchDirection, IncrementalSearchTimeout

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, See Also, TVirtualStringTree Class


TVirtualStringTree.IncrementalSearchTimeout Property
TVirtualStringTree Properties | See Also | TVirtualStringTree Class | Send Feedback

Read or set the maximum time, which is allowed between two consecutive key strokes so that incremental search stays active.

Pascal
property IncrementalSearchTimeout: Cardinal;
Description

When incremental search is enabled in Virtual Treeview then you can specify here after what time incremental search should stop when no keyboard input is encountered any longer. This property so determines also the speed at which users have to type letters to keep the incremental search rolling.

See Also

IncrementalSearch, IncrementalSearchDirection, IncrementalSearchStart

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, See Also, TVirtualStringTree Class


TVirtualStringTree.Indent Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Read or set the indentation amount for node levels.

Pascal
property Indent: Cardinal;
Description

Each new level in the tree (child nodes of a parent node) are visually shifted to distinguish betwenn them and their parent node (that's the tree layout after all). The Indent property determines the shift distance in pixels.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.LineMode Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Read or set the mode of the tree lines.

Pascal
property LineMode: TVTLineMode;
Description

Apart from the usual lines Virtual Treeview also supports a special draw mode named bands. This allows for neat visual effects.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.LineStyle Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Read or set the mode of the tree lines.

Pascal
property LineStyle: TVTLineStyle;
Description

Virtual Treeview allows to customize the lines used to display the node hierarchy. The default style is a dotted pattern, but you can also make solid lines or specify your own line pattern.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.Margin Property
TVirtualStringTree Properties | See Also | TVirtualStringTree Class | Send Feedback

Read or set the tree's node margin.

Pascal
property Margin: Integer;
Description

The node margin is the distance between the cell bounds and its content like the lines, images, check box and so on. However this border is only applied to the left and right side of the node cell.

Note: there is also a TextMargin property in TVirtualStringTree, which is an additional border for the cell text only.

See Also

TVirtualStringTree.TextMargin

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, See Also, TVirtualStringTree Class


TVirtualStringTree.NodeAlignment Property
TVirtualStringTree Properties | See Also | TVirtualStringTree Class | Send Feedback

Read or set the node alignment value.

Pascal
property NodeAlignment: TVTNodeAlignment;
Description

Nodes have got an align member, which is used to determine the vertical position of the node's images and tree lines. The NodeAlignment property specifies how to interpret the value in the align member.

See Also

TVirtualNode

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, See Also, TVirtualStringTree Class


TVirtualStringTree.NodeDataSize Property
TVirtualStringTree Properties | See Also | TVirtualStringTree Class | Send Feedback

Read or set the extra data size for each node.

Pascal
property NodeDataSize: Integer;
Description

A node can have an area for user data, which can be used to store application defined, node specific data in. Use GetNodeData to get the address of this area. In addition to assigning a value here you can also use the OnGetNodeDataSize event, which is called when NodeDataSize is -1.

See Also

Data handling

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, See Also, TVirtualStringTree Class


TVirtualStringTree.OnClick Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnClick;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.OnContextPopup Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnContextPopup;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.OnDblClick Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnDblClick;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.OnEndDock Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnEndDock;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.OnEndDrag Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnEndDrag;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.OnEnter Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnEnter;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.OnExit Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnExit;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.OnKeyDown Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnKeyDown;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.OnKeyPress Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnKeyPress;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.OnKeyUp Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnKeyUp;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.OnMouseDown Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnMouseDown;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.OnMouseMove Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnMouseMove;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.OnMouseUp Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnMouseUp;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.OnMouseWheel Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnMouseWheel;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.OnResize Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnResize;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.OnStartDock Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnStartDock;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.OnStartDrag Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnStartDrag;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.OperationCanceled Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OperationCanceled: Boolean;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.ParentBiDiMode Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property ParentBiDiMode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.ParentColor Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property ParentColor;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.ParentCtl3D Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property ParentCtl3D;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.ParentFont Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property ParentFont;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.ParentShowHint Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property ParentShowHint;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.PopupMenu Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property PopupMenu;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.RootNodeCount Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Read or set the number of nodes on the top level.

Pascal
property RootNodeCount: Cardinal;
Description

Usually setting RootNodeCount is all what is needed to initially fill the tree. When one of the top level nodes is initialized you can set its ivsHasChildren style. This will then cause to ask to initialize the child nodes. Recursively applied, you can use this principle to create tree nodes on demand (e.g. when their parent is expanded).

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.ScrollBarOptions Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Reference to the scroll bar options class.

Pascal
property ScrollBarOptions: TScrollBarOptions;
Description

Like many other aspects in Virtual Treeview also scrollbars can be customized. See the class itself for further descriptions.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.SelectionBlendFactor Property
TVirtualStringTree Properties | See Also | TVirtualStringTree Class | Send Feedback

Read or set the current blend factor for the multi selection rectangle and the node selection rectangle.

Pascal
property SelectionBlendFactor: Byte;
Description

For a visually appealing tree some operations use alpha blending. One of these operations is multi selection using the mouse. Another one is the rectangle drawn around the caption of selected nodes. Both rectangles use the SelectionBlendFactor to determine how much of the underlying tree image and how much of the rectangles should be seen. The factor can be in the range of [0..255] where 0 means the rectangle is fully transparent and 255 it is fully opaque.

If you don't like to use blended node selection rectangles then switch them off by removing toUseBlendedSelection from TVTPaintOptions. For selecting a certain multi selection rectangle style use DrawSelectionMode.

Notes

Alpha blending is only enabled when the current processor supports MMX instructions. If MMX is not supported then a

dotted draw selection rectangle and an opaque node selection rectangle is used.

See Also

DrawSelectionMode, TVTPaintOptions

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, See Also, TVirtualStringTree Class


TVirtualStringTree.SelectionCurveRadius Property
TVirtualStringTree Properties | See Also | TVirtualStringTree Class | Send Feedback

Read or set the current corner radius for node selection rectangles.

Pascal
property SelectionCurveRadius: Cardinal;
Description

This is a special property to determine the radius of the corners of the selection rectangle for a node caption. Virtual Treeview supports not only simple rectangular selection marks but also such with rounded corners. This feature, however, is only available if blended node selection rectangles are disabled.

See Also

SelectionBlendFactor, DrawSelectionMode, TVTPaintOptions

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, See Also, TVirtualStringTree Class


TVirtualStringTree.ShowHint Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property ShowHint;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.StateImages Property
TVirtualStringTree Properties | See Also | TVirtualStringTree Class | Send Feedback

Reference to the images list which is used for the state images.

Pascal
property StateImages: TCustomImageList;
Description

Each node can (in each column) have several images. One is the check image which is supplied by internal image lists or a special external list (see also CustomCheckImages). Another one is the state image and yet another one the normal/selected image.

See Also

CheckImages, Images

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, See Also, TVirtualStringTree Class


TVirtualStringTree.TabOrder Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property TabOrder;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.TabStop Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property TabStop;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.TextMargin Property
TVirtualStringTree Properties | See Also | TVirtualStringTree Class | Send Feedback

Read or set the distance of the node caption to its borders.

Pascal
property TextMargin: Integer;
Description

TextMargin is used to define a border like area within the content rectangle of a node. This rectangle is the area of the node less the space used for indentation, images, lines and node margins and usually contains the text of a node. In order to support finer adjustment there is another margin, which only applies to the left and right border in the content rectangle. This is the text margin.

See Also

Margin

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, See Also, TVirtualStringTree Class


TVirtualStringTree.TreeOptions Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Reference to the tree's options.

Pascal
property TreeOptions: TStringTreeOptions;
Description

The tree options are one of the main switchs to modify a treeview's behavior. Virtual Treeview supports customizing tree options by descentants. This allows very fine adjustments for derived tree classes, including the decision which properties should be published. For more information about the base options see TCustomVirtualTreeOptions and its descentants.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.Visible Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property Visible;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree.WantTabs Property
TVirtualStringTree Properties | TVirtualStringTree Class | Send Feedback

Read or set whether the tree wants to process tabs on its own.

Pascal
property WantTabs: Boolean;
Description

Usually tab kex strokes advance the input focus from one control to another on a form. For special processing however it is necessary to let the control decide what to do with the given tabulator character. Virtual Treeview needs this character mainly for its grid emulation.

Group

TVirtualStringTree Properties

Links
TVirtualStringTree Properties, TVirtualStringTree Class


TVirtualStringTree Events
Events | TVirtualStringTree Class | Legend | Send Feedback

The events of the TVirtualStringTree class are listed here.

Class

TVirtualStringTree Class

Legend

Event
published

Links
Events, TVirtualStringTree Class, Legend
What do you think about this topic? Send feedback!


TVirtualStringTree.OnAddToSelection Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnAddToSelection: TVTAddToSelectionEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnAdvancedHeaderDraw Event
TVirtualStringTree Events | See Also | TVirtualStringTree Class | Send Feedback

Header paint support event.

Pascal
property OnAdvancedHeaderDraw: TVTAdvancedHeaderPaintEvent;
Description

The OnAdvancedHeaderDraw event is used when owner draw is enabled for the header and a column is set to owner draw mode. It can be used to custom draw only certain parts of the header instead the whole thing. A good example for this event is customizing the background of the header for only one column. With the standard custom draw method (OnHeaderDraw) you are in an all-or-nothing situation and have to paint everything in the header including the text, images and sort direction indicator. OnAdvancedHeaderDraw however uses OnHeaderDrawQueryElements to ask for the elements the application wants to draw and acts accordingly.

See Also

OnHeaderDrawQueryElements, OnHeaderDraw

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, See Also, TVirtualStringTree Class


TVirtualStringTree.OnAfterAutoFitColumn Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnAfterAutoFitColumn: TVTAfterAutoFitColumnEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnAfterAutoFitColumns Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnAfterAutoFitColumns: TVTAfterAutoFitColumnsEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnAfterCellPaint Event
TVirtualStringTree Events | See Also | TVirtualStringTree Class | Send Feedback

Paint support event.

Pascal
property OnAfterCellPaint: TVTAfterCellPaintEvent;
Description

This event is called whenever a cell has been painted. A cell is defined as being one part of a node bound to a certain column. This event is called several times per node (the amount is determined by visible columns and size of the part to draw).

See Also

Paint cycles and stages

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, See Also, TVirtualStringTree Class


TVirtualStringTree.OnAfterColumnExport Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnAfterColumnExport: TVTColumnExportEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnAfterColumnWidthTracking Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnAfterColumnWidthTracking: TVTAfterColumnWidthTrackingEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnAfterGetMaxColumnWidth Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnAfterGetMaxColumnWidth: TVTAfterGetMaxColumnWidthEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnAfterHeaderExport Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnAfterHeaderExport: TVTTreeExportEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnAfterHeaderHeightTracking Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnAfterHeaderHeightTracking: TVTAfterHeaderHeightTrackingEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnAfterItemErase Event
TVirtualStringTree Events | See Also | TVirtualStringTree Class | Send Feedback

Paint support event.

Pascal
property OnAfterItemErase: TVTAfterItemEraseEvent;
Description

Called after the background of a node has been erased (erasing can also be filling with a background image). This event is called once per node in a paint cycle.

See Also

Paint cycles and stages

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, See Also, TVirtualStringTree Class


TVirtualStringTree.OnAfterItemPaint Event
TVirtualStringTree Events | See Also | TVirtualStringTree Class | Send Feedback

Paint support event.

Pascal
property OnAfterItemPaint: TVTAfterItemPaintEvent;
Description

Called after a node has been drawn. This event is called once per node.

See Also

Paint cycles and stages

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, See Also, TVirtualStringTree Class


TVirtualStringTree.OnAfterNodeExport Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnAfterNodeExport: TVTNodeExportEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnAfterPaint Event
TVirtualStringTree Events | See Also | TVirtualStringTree Class | Send Feedback

Paint support event.

Pascal
property OnAfterPaint: TVTPaintEvent;
Description

Called after all nodes which needed an update have been drawn. This event is called once per paint cycle.

See Also

Paint cycles and stages

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, See Also, TVirtualStringTree Class


TVirtualStringTree.OnAfterTreeExport Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnAfterTreeExport: TVTTreeExportEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnBeforeAutoFitColumn Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnBeforeAutoFitColumn: TVTBeforeAutoFitColumnEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnBeforeAutoFitColumns Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnBeforeAutoFitColumns: TVTBeforeAutoFitColumnsEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnBeforeCellPaint Event
TVirtualStringTree Events | See Also | TVirtualStringTree Class | Send Feedback

Paint support event.

Pascal
property OnBeforeCellPaint: TVTBeforeCellPaintEvent;
Description

This event is called immediately before a cell is painted.

See Also

Paint cycles and stages

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, See Also, TVirtualStringTree Class


TVirtualStringTree.OnBeforeColumnExport Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnBeforeColumnExport: TVTColumnExportEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnBeforeColumnWidthTracking Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnBeforeColumnWidthTracking: TVTBeforeColumnWidthTrackingEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnBeforeDrawTreeLine Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnBeforeDrawTreeLine: TVTBeforeDrawLineImageEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnBeforeGetMaxColumnWidth Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnBeforeGetMaxColumnWidth: TVTBeforeGetMaxColumnWidthEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnBeforeHeaderExport Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnBeforeHeaderExport: TVTTreeExportEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnBeforeHeaderHeightTracking Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnBeforeHeaderHeightTracking: TVTBeforeHeaderHeightTrackingEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnBeforeItemErase Event
TVirtualStringTree Events | See Also | TVirtualStringTree Class | Send Feedback

Paint support event.

Pascal
property OnBeforeItemErase: TVTBeforeItemEraseEvent;
Description

Called when the background of a node is about to be erased.

See Also

Paint cycles and stages

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, See Also, TVirtualStringTree Class


TVirtualStringTree.OnBeforeItemPaint Event
TVirtualStringTree Events | See Also | TVirtualStringTree Class | Send Feedback

Paint support event.

Pascal
property OnBeforeItemPaint: TVTBeforeItemPaintEvent;
Description

Called after the background of a node has been drawn and just before the node itself is painted. In this event the application gets the opportunity to decide whether a node should be drawn normally or should be skipped. The application can draw the node itself if necessary or leave the node area blank.

See Also

Paint cycles and stages

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, See Also, TVirtualStringTree Class


TVirtualStringTree.OnBeforeNodeExport Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnBeforeNodeExport: TVTNodeExportEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnBeforePaint Event
TVirtualStringTree Events | See Also | TVirtualStringTree Class | Send Feedback

Paint support event.

Pascal
property OnBeforePaint: TVTPaintEvent;
Description

Called as very first event in a paint cycle. In this event has the application the opportunity to do some special preparation of the canvas onto which the tree is painted, e.g. setting a special viewport and origin or a different mapping mode.

See Also

Paint cycles and stages

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, See Also, TVirtualStringTree Class


TVirtualStringTree.OnBeforeTreeExport Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnBeforeTreeExport: TVTTreeExportEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnCanSplitterResizeColumn Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnCanSplitterResizeColumn: TVTCanSplitterResizeColumnEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnCanSplitterResizeHeader Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnCanSplitterResizeHeader: TVTCanSplitterResizeHeaderEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnCanSplitterResizeNode Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnCanSplitterResizeNode: TVTCanSplitterResizeNodeEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnChange Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Navigation support event.

Pascal
property OnChange: TVTChangeEvent;
Description

Called when a node's selection state has changed.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnChecked Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Check support event.

Pascal
property OnChecked: TVTChangeEvent;
Description

Triggered when a node's check state has changed.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnChecking Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Check support event.

Pascal
property OnChecking: TVTCheckChangingEvent;
Description

Triggered when a node's check state is about to change and allows to prevent the change.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnCollapsed Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnCollapsed: TVTChangeEvent;
Description

Triggered after a node has been collapsed, that is, its child nodes are no longer displayed.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnCollapsing Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnCollapsing: TVTChangingEvent;
Description

Triggered when a node is about to be collapsed and allows to prevent collapsing the node by setting Allowed to false.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnColumnClick Event
TVirtualStringTree Events | See Also | TVirtualStringTree Class | Send Feedback

Header and column support event.

Pascal
property OnColumnClick: TVTColumnClickEvent;
Description

Triggered when the user released a mouse button over the same column in the client area on which the button was pressed previously.

See Also

OnHeaderClick

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, See Also, TVirtualStringTree Class


TVirtualStringTree.OnColumnDblClick Event
TVirtualStringTree Events | See Also | TVirtualStringTree Class | Send Feedback

Header and column support event.

Pascal
property OnColumnDblClick: TVTColumnDblClickEvent;
Description

Same as OnColumnClick but for double clicks.

See Also

OnColumnClick, OnHeaderDblClick

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, See Also, TVirtualStringTree Class


TVirtualStringTree.OnColumnExport Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnColumnExport: TVTColumnExportEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnColumnResize Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Header and column support routine.

Pascal
property OnColumnResize: TVTHeaderNotifyEvent;
Description

Triggered when a column is being resized. During resize OnColumnResize is frequently hence you should make any code in the associated event handle a short and fast as possible.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnColumnWidthDblClickResize Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnColumnWidthDblClickResize: TVTColumnWidthDblClickResizeEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnColumnWidthTracking Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnColumnWidthTracking: TVTColumnWidthTrackingEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnCompareNodes Event
TVirtualStringTree Events | See Also | TVirtualStringTree Class | Send Feedback

Sort and search support event.

Pascal
property OnCompareNodes: TVTCompareEvent;
Description

This event is the core event for all comparations between nodes. It is important that you write a handler for this event if you want to sort nodes!

Result must be set to less than 0 if Node1 is considered as being before Node2, equal to 0 if both a considered being the same and greater than 0 if the first node is considered as being after node 2. Keep in mind that you don't need to take sort direction into account. This is automatically handled by the tree. Simply return a comparation result as would there be an ascending sort order.

Below is some sample code taken from the Advanced Demo:

procedure TMainForm.VDT1CompareNodes(Sender: TBaseVirtualTree; Node1, Node2: PVirtualNode; Column: Integer;
  var Result: Integer);

// used to sort the image draw tree

var
  Data1,
  Data2: PImageData;

begin
  Data1 := Sender.GetNodeData(Node1);
  Data2 := Sender.GetNodeData(Node2);
  // folder are always before files
  if Data1.IsFolder <> Data2.IsFolder then
  begin
    // one of both is a folder the other a file
    if Data1.IsFolder then
      Result := -1
    else
      Result := 1;
  end
  else // both are of same type (folder or file)
    Result := CompareText(Data1.FullPath, Data2.FullPath);
end;
See Also

SortTree, Sort

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, See Also, TVirtualStringTree Class


TVirtualStringTree.OnCreateDataObject Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Drag'n drop support event.

Pascal
property OnCreateDataObject: TVTCreateDataObjectEvent;
Description

This event is called when the tree's drag manager needs a data object interface to start a drag'n drop operation. Descentants (which override DoGetDataObject) or the application can return an own IDataObject implementation to support special formats.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnCreateDragManager Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Drag'n drop support event.

Pascal
property OnCreateDragManager: TVTCreateDragManagerEvent;
Description

This event is usually not used but allows power users to create their own drag manager to have different actions and/or formats than the internal drag manager.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnCreateEditor Event
TVirtualStringTree Events | See Also | TVirtualStringTree Class | Send Feedback

Editing support event.

Pascal
property OnCreateEditor: TVTCreateEditorEvent;
Description

Allows to supply a customized node editor without changing the tree. TBaseVirtualTree triggers this event and raises an exception if there no editor is returned. If you don't want this then disable edit support for nodes in TreeOptions.MiscOptions. Descentants like TCustomVirtualStringTree supply a generic and simple string editor.

See Also

Editors and editing

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, See Also, TVirtualStringTree Class


TVirtualStringTree.OnDragAllowed Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Drag'n drop support event.

Pascal
property OnDragAllowed: TVTDragAllowedEvent;
Description

This event is called in the mouse button down handler to determine whether the application allows to start a drag operation. Since this check is done in sync with the other code it is much prefered over doing a manual BeginDrag.

Notes

The OnDragAllowed event is called only if the current DragMode is dmManual.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnDragDrop Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Drag'n drop support event.

Pascal
property OnDragDrop: TVTDragDropEvent;
Description

Triggered when either a VCL or a OLE drop action occured. Accepting drag and drop actions is not trivial. In order to maintain a minimum compatibility with the VCL drag'n drop system Virtual Tree accepts not only OLE drop actions but also those issued by the Delphi VCL (which is totally different to the OLE way, unfortunately), provided toAcceptOLEDrop is set in TreeOptions.MiscOptions. The code snippet below is taken from a sample project provided with Virtual Tree. It shows a general way to deal with dropped data. The following check list can be used as orientation and additional comment to the code:

  1. Determine what kind of drop data is passed. If DataObject is nil or Formats is empty then the drag source is a VCL control. The event is not triggered for OLE drag'n drop if there is no OLE format is available (which should never occur).
  2. If the event is triggered by a VCL control then use Source to access either the control or the drag object, depending on the circumstances of the action.
  3. For OLE drag'n drop iterate through the Formats list to find a format you can handle.
  4. If you find CF_VIRTUALTREE then the source of the drag operation is a Virtual Treeview. Since this is the native tree format you can pass it to the Sender's ProcessDrop method which will take care to retrieve the data and act depending on Effect and Mode. No further action by the application is usually required in this case.
  5. If you do not find CF_VIRTUALTREE then the operation has been initiated by another application, e.g. the Explorer (then you will find CF_HDROP or CF_SHELLIDLIST in formats) or Notepad (then you will get CF_TEXT and perhaps CF_UNICODETEXT) etc., depending on the data which is actually dropped.
  6. Use the provided DataObject to get the drop data via IDataObject.GetData and act depending on the format you get.
  7. Finally set Effect to either DROPEFFECT_COPY, DROPEFFECT_MOVE or DROPEFFECT_NONE to indicate which operation needs to be finished in Sender when the event returns. If you return DROPEFFECT_MOVE then all marked nodes in the source tree will be deleted, otherwise they stay where they are.

procedure TMainForm.VTDragDrop(Sender: TBaseVirtualTree; Source: TObject; DataObject: IDataObject;
  const Formats: array of Word; Shift: TShiftState; Pt: TPoint; var Effect: Integer; Mode: TDropMode);

var
  I: Integer;
  AttachMode: TVTNodeAttachMode;

begin
  if Length(Formats) > 0 then
  begin
    // OLE drag'n drop
    // If the native tree format is listed then use this and accept the drop, otherwise recject (ignore) it.
    // It is recommend by Microsoft to order available clipboard formats in decreasing detail richness so
    // the first best format which we can accept is usually the best format we can get at all.
    for I := 0 to High(Formats) do
      if Formats[I] = CF_VIRTUALTREE then
      begin
        case Mode of
          dmAbove:
            AttachMode := amInsertBefore;
          dmOnNode:
            AttachMode := amAddChildLast;
          dmBelow:
            AttachMode := amInsertAfter;
        else
          if Assigned(Source) and (Source is TBaseVirtualTree) and (Sender <> Source) then
            AttachMode := amInsertBefore
          else
            AttachMode := amNowhere;
        end;
        // in the case the drop target does an optimized move Effect is set to DROPEFFECT_NONE
        // to indicate this also to the drag source (so the source doesn't need to take any further action)
        Sender.ProcessDrop(DataObject, Sender.DropTargetNode, Effect, AttachMode);
        Break;
      end;
  end
  else
  begin
    // VCL drag'n drop, Effects contains by default both move and copy effect suggestion,
    // as usual the application has to find out what operation is finally to do
    Beep;
  end;
end;
Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnDragOver Event
TVirtualStringTree Events | See Also | TVirtualStringTree Class | Send Feedback

Drag'n drop support event.

Pascal
property OnDragOver: TVTDragOverEvent;
Description

Triggered when Sender is the potential target of a drag'n drop operation. You can use this event to allow or deny a drop operation by setting Allowed to True or False, respectively. For conditions of OLE or VCL drag source see OnDragDrop.

See Also

OnDragDrop

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, See Also, TVirtualStringTree Class


TVirtualStringTree.OnDrawText Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnDrawText: TVTDrawTextEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnEditCancelled Event
TVirtualStringTree Events | See Also | TVirtualStringTree Class | Send Feedback

Editing support event.

Pascal
property OnEditCancelled: TVTEditCancelEvent;
Description

Triggered when an edit action has been cancelled.

See Also

Editors and editing

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, See Also, TVirtualStringTree Class


TVirtualStringTree.OnEdited Event
TVirtualStringTree Events | See Also | TVirtualStringTree Class | Send Feedback

Editing support event.

Pascal
property OnEdited: TVTEditChangeEvent;
Description

Triggered when an edit action has successfully been finished.

See Also

Editors and editing

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, See Also, TVirtualStringTree Class


TVirtualStringTree.OnEditing Event
TVirtualStringTree Events | See Also | TVirtualStringTree Class | Send Feedback

Editing support event.

Pascal
property OnEditing: TVTEditChangingEvent;
Description

Triggered when a node is about to be edited. Use Allowed to allow or deny this action.

See Also

Editors and editing

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, See Also, TVirtualStringTree Class


TVirtualStringTree.OnEndOperation Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnEndOperation: TVTOperationEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnExpanded Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Misscellaneous event.

Pascal
property OnExpanded: TVTChangeEvent;
Description

Triggered after a node has been expanded.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnExpanding Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnExpanding: TVTChangingEvent;
Description

Triggered just before a node is expanded. Use Allowed to allow or deny this action.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnFocusChanged Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Navigation support event.

Pascal
property OnFocusChanged: TVTFocusChangeEvent;
Description

Triggered after the focused node changed. When examining Node keep in mind that it can be nil, meaning there is no focused node.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnFocusChanging Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Navigation support event.

Pascal
property OnFocusChanging: TVTFocusChangingEvent;
Description

Triggered when the node focus is about to change. You can use Allowed to allow or deny a focus change. Keep in mind that either the old or the new node can be nil.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnFreeNode Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Data management node.

Pascal
property OnFreeNode: TVTFreeNodeEvent;
Description

Triggered when a node is about to be freed. This is the ideal place to free/disconnect your own data you associated with Node. Keep in mind, that data which is stored directly in the node does not need to be free by the application. This is part of the node record and will be freed when the node is freed. You should however finalize the data in such a case if it contains references to external memory objects (e.g. variants, strings, interfaces).

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnGetCellIsEmpty Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Triggered when the tree control needs to know whether a given column is empty.

Pascal
property OnGetCellIsEmpty: TVTGetCellIsEmptyEvent;
Description

Virtual Treeview supports the concept of column spanning where one cell with too much text to fit into its own space can expand to the right cell neighbors if they are empty. To make this work it is necessary to know if a cell is considered as being empty, whatever this means to an application. The string tree descendant simply checks the text for the given cell and calls back its ancestor if there is no text to further refine if the cell must stay as if it contained something. The ancestor (TBaseVirtualTree) now triggers OnGetCellIsEmpty to let the application decide.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnGetCursor Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnGetCursor: TVTGetCursorEvent;
Description

This event is triggered from the WM_SETCURSOR message to allow the application use several individual cursors for a tree. The Cursor property allows to set one cursor for the whole control but not to use separate cursors for different tree parts.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnGetHeaderCursor Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Header and column support event.

Pascal
property OnGetHeaderCursor: TVTGetHeaderCursorEvent;
Description

This event is triggered from the WM_SETCURSOR message to allow the application to define individual cursors for the header part of the tree control.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnGetHelpContext Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnGetHelpContext: TVTHelpContextEvent;
Description

This event is usually triggered when the user pressed F1 while the tree has the focus. The tree is iteratively traversed all the way up to the top level parent of the given node until a valid help context index is returned (via this event). When the loop reaches the top level without getting a help index then the tree control's help index is used. If the tree itself does not have a help context index then a further traversal is initiated going up parent by parent of each control in the current window hierarchy until either a valid index is found or there is no more window parent.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnGetHint Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Virtual string tree event to query for a custom hint text.

Pascal
property OnGetHint: TVSTGetHintEvent;
Description

Write an event handler for this event to specify a custom hint for the passed node and column. The TextType will always be ttNormal. This event will only be fired if HintMode is not hmTooltip. The delay for hints can be set as usual: adjust the properties HintPause and HintShortPause of the global Application object.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnGetImageIndex Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Display management event.

Pascal
property OnGetImageIndex: TVTGetImageEvent;
Description

This event is triggered whenever the tree needs the index of an image, be it the normal, the selected or the state image. The event should be as fast as possible because it is at times frequently called when the layout of the node must be determined, e.g. while doing draw selection with the mouse or painting the tree. Kind determines which image is needed and Column determines for which column of the node the image is needed. This value can be -1 to indicate there is no column used. The parameter Ghosted can be set to true to blend the image 50% against the tree background and can be used for instance in explorer trees to mark hidden file system objects. Additionally nodes are also drawn with a ghosted icon if the are part of a cut set during a pending cut-to-clipboard operation. In this case changing the ghosted parameter has no effect.

Notes

Blending nodes can be switched by using toUseBlendImages in TreeOptions.PaintOptions.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnGetImageIndexEx Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnGetImageIndexEx: TVTGetImageExEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnGetImageText Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnGetImageText: TVTGetImageTextEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnGetLineStyle Event
TVirtualStringTree Events | See Also | TVirtualStringTree Class | Send Feedback

Display management event.

Pascal
property OnGetLineStyle: TVTGetLineStyleEvent;
Description

This event is used to customize the appearance of the tree and grid lines and is only triggered if the LineStyle property is set to lsCustomStyle. The event must return a pointer to an array containing bits for an 8 x 8 pixel image with word aligned entries. For more info see PrepareBitmaps and the Windows APIs CreateBitmap and CreatePatternBrush.

Notes

It is important that you do not use dynamically allocated memory in this event (also no local variables on the stack). If

you do so then either the memory is not valid on return of the event (if allocated on stack) or will never be freed (if

allocated with a memory manager). Instead use a constant array and return its address.

See Also

PrepareBitmaps

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, See Also, TVirtualStringTree Class


TVirtualStringTree.OnGetNodeDataSize Event
TVirtualStringTree Events | See Also | TVirtualStringTree Class | Send Feedback

Data management event.

Pascal
property OnGetNodeDataSize: TVTGetNodeDataSizeEvent;
Description

Triggered when access to a node's data happens the first time but the actual data size is not yet set. Usually you would specify the size of the data you want to have added to each node by NodeDataSize, e.g. SizeOf(TMyRecord) is quite usual there (where TMyRecord is the structure you want to have stored in the node). Sometimes, however it is not possible to determine the node size in advance, so you can leave NodeDataSize being -1 (the default value) and the OnGetNodeDataSize event is triggered as soon as the first regular node is created (the hidden root node does not have user data but internal data which is determined by other means).

See Also

NodeDataSize, Data handling

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, See Also, TVirtualStringTree Class


TVirtualStringTree.OnGetPopupMenu Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnGetPopupMenu: TVTPopupEvent;
Description

This event allows the application to return a popup menu which is specific to a certain node. The tree does an automatic traversal all the way up to the top level node which is the parent of a given node to get a popup menu. If Menu is set then the traversal stops. Otherwise it continues until either a menu is set, AskParent is set to False or the top level parent has been reached.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnGetText Event
TVirtualStringTree Events | See Also | TVirtualStringTree Class | Send Feedback

Virtual string tree event to query for a node's normal or static text.

Pascal
property OnGetText: TVSTGetTextEvent;
Description

This is one of the fundamental string tree events which must always be handled. The string tree will fire this event every time when it needs to know about the text of a specific node and column. This is mainly the case when the node appears in the visible area of the tree view (in other words it is not scrolled out of view) but also on some other occasions, including streaming, drag and drop and calculating the width of the node.

The node text is distinguished between two text types:

  • Normal text: If TextType is ttNormal return the main node caption for the specified column.
  • Static text: All text that you return when TextType is ttStatic will be displayed right beside the normal text (or left to it if the column's BidiMode is not bdLeftToRight, i.e. the column has right-to-left layout). Static text is used only for informational purposes; it cannot be selected or dragged and if the column is not wide enough to show all text it will not be shortened with an ellipsis (...) as normal text. The string tree will only query for static text if the StringOptions (see TreeOptions) include toShowStaticText. This is off by default.

When this event is fired the text parameter will always be initialized with the value of property DefaultText. To handle the event get your node data and then extract the string for the appropriate column and TextType.

Notes

Be sure that your event handler only contains absolutely necessary code. This event will be fired very often - easily a

few hundred times for medium sized trees with some columns defined when the tree is repainted completely.

For example it is far too slow to use Locate() on some Dataset, a database query result or table, and then get the text

from some TField. This may only work with in-memory tables or a client dataset. When you initialize your node data do

some caching and use these cached values to display the data.

See Also

OnPaintText

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, See Also, TVirtualStringTree Class


TVirtualStringTree.OnGetUserClipboardFormats Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Drag'n drop and clipboard support event.

Pascal
property OnGetUserClipboardFormats: TVTGetUserClipboardFormatsEvent;
Description

Whenever the tree needs to specify the available clipboard formats for a clipboard or drag'n drop operation it calls this event too, to allow the application or descentants (which would override DoGetUserClipboardFormats) to specify own formats which can be rendered. Since the build-in data object does not know how to render formats which are specified here you have to supply a handler for the OnRenderOLEData event or an own IDataObject implementation to fully support your own formats.

Use the Formats parameter which is an open array and add the identifiers of your formats (which you got when you registered the format).

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnHeaderClick Event
TVirtualStringTree Events | See Also | TVirtualStringTree Class | Send Feedback

Header & column support event.

Pascal
property OnHeaderClick: TVTHeaderClickEvent;
Description

This event is triggered when the user clicks on a header button and is usually a good place to set the current SortColumn and SortDirection.

See Also

SortColumn, SortDirection

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, See Also, TVirtualStringTree Class


TVirtualStringTree.OnHeaderDblClick Event
TVirtualStringTree Events | See Also | TVirtualStringTree Class | Send Feedback

Header & column support event.

Pascal
property OnHeaderDblClick: TVTHeaderClickEvent;
Description

Unlike OnHeaderClick this event is triggered for double clicks on any part of the header and comes with more detailed information like shift state, which mouse button caused the event and the mouse position.

See Also

OnHeaderClick

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, See Also, TVirtualStringTree Class


TVirtualStringTree.OnHeaderDragged Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Header & column support event.

Pascal
property OnHeaderDragged: TVTHeaderDraggedEvent;
Description

Triggered after the user has released the left mouse button when a header drag operation was active. Column contains the index of the column which was dragged. Use this index for the Columns property of the header to find out the current position. OldPosition is the position which Column occupied before it was dragged around.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnHeaderDraggedOut Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Header & column support event.

Pascal
property OnHeaderDraggedOut: TVTHeaderDraggedOutEvent;
Description

When during a header drag operation the mouse moves out of the header rectangle and the mouse button is released then an OnHeaderDraggedOut event will be fired with the target mouse position in screen coordinates.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnHeaderDragging Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Header & column support event.

Pascal
property OnHeaderDragging: TVTHeaderDraggingEvent;
Description

Triggered just before dragging of a header button starts. Set Allowed to False if you want to prevent the drag operation of the given column.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnHeaderDraw Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Header & column support event.

Pascal
property OnHeaderDraw: TVTHeaderPaintEvent;
Description

If you set the hoOwnerDraw style in TVTHeader.Options and a column has been set to vsOwnerDraw (see also TVirtualTreeColumn.Style) then OnDrawHeader is called whenever a column needs painting.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnHeaderDrawQueryElements Event
TVirtualStringTree Events | See Also | TVirtualStringTree Class | Send Feedback

Header & column support event.

Pascal
property OnHeaderDrawQueryElements: TVTHeaderPaintQueryElementsEvent;
Description

Used for advanced header painting to query the application for the elements, which are drawn by it and which should be drawn by the tree.

See Also

OnAdvancedHeaderDraw

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, See Also, TVirtualStringTree Class


TVirtualStringTree.OnHeaderHeightDblClickResize Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnHeaderHeightDblClickResize: TVTHeaderHeightDblClickResizeEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnHeaderHeightTracking Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnHeaderHeightTracking: TVTHeaderHeightTrackingEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnHeaderMouseDown Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Header & column support event.

Pascal
property OnHeaderMouseDown: TVTHeaderMouseEvent;
Description

This event is similar to OnHeaderClick but comes with more detailed information like shift state, which mouse button caused the event and the mouse position.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnHeaderMouseMove Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Header & column support event.

Pascal
property OnHeaderMouseMove: TVTHeaderMouseMoveEvent;
Description

This event is triggered when the mouse pointer is moved over the header area.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnHeaderMouseUp Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Header & column support event.

Pascal
property OnHeaderMouseUp: TVTHeaderMouseEvent;
Description

This event is very much like OnHeaderMouseDown but is triggered when a mouse button is released.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnHotChange Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Navigation support event.

Pascal
property OnHotChange: TVTHotNodeChangeEvent;
Description

This event is triggered if hot tracking is enabled (see also TreeOptions.PaintOptions) and when the mouse pointer moves from one node caption to another. In full row select mode most parts of a node are considered as being part of the caption.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnIncrementalSearch Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnIncrementalSearch: TVTIncrementalSearchEvent;
Description

This event is integral part of the incremental search functionality (see also Keyboard, hotkeys and incremental search). It is triggered during search for a node which matches the given string. Similar to other compare routines return a value < 0 if the node's caption is considered as being before the given text, = 0 if it is the same and > 0 if it is considered being after the given text.

procedure TfrmProperties.VST3IncrementalSearch(Sender: TBaseVirtualTree; Node: PVirtualNode; const Text: WideString;
  var Result: Integer);

var
  S, PropText: string;

begin
  // Note: This code requires a proper Unicode/WideString comparison routine which I did not want to link here for
  // size and clarity reasons. For now strings are (implicitly) converted to ANSI to make the comparison work.
  // Search is not case sensitive.
  S := Text;
  if Node.Parent = Sender.RootNode then
  begin
    // root nodes
    if Node.Index = 0 then
      PropText := 'Description'
    else
      PropText := 'Origin';
  end
  else
  begin
    PropText := PropertyTexts[Node.Parent.Index, Node.Index, ptkText];
  end;

  // By using StrLIComp we can specify a maximum length to compare. This allows us to find also nodes
  // which match only partially.
  Result := StrLIComp(PChar(S), PChar(PropText), Min(Length(S), Length(PropText)))
end;
Notes

Usually incremental search allows to match also partially. Hence it is recommended to do comparison only up to the length

of the shorter string.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnInitChildren Event
TVirtualStringTree Events | See Also | TVirtualStringTree Class | Send Feedback

Node management event.

Pascal
property OnInitChildren: TVTInitChildrenEvent;
Description

In order to allow the tree only to fill content where needed it is possible to set the vsHasChildren style in a node's initializaton whithout really adding any child nodes. These child nodes must be initialized first when they are about to be displayed or another access (like search, iteration etc.) occurs.

The application usually prepares data needed to fill child nodes when they are initialized and retrieves the actual number. Set ChildCount to the number of children you want.

See Also

The virtual paradigm

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, See Also, TVirtualStringTree Class


TVirtualStringTree.OnInitNode Event
TVirtualStringTree Events | See Also | TVirtualStringTree Class | Send Feedback

Node management event.

Pascal
property OnInitNode: TVTInitNodeEvent;
Description

This event is important to connect the tree to your internal data. It is the ideal place to put references or whatever you need into a node's data area. You can set some initial states like selection, expansion state or that a node has child nodes.

See Also

The virtual paradigm

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, See Also, TVirtualStringTree Class


TVirtualStringTree.OnKeyAction Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnKeyAction: TVTKeyActionEvent;
Description

This event is a convinient way for the application or descentant trees to change the semantic of a certain key stroke. It is triggered when the user presses a key and allows either to process that key normally (leave DoDefault being True) or change it to another key instead (set DoDefault to False then). This way a key press can change its meaning or entirely be ignored (if CharCode is set to 0).

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnLoadNode Event
TVirtualStringTree Events | See Also | TVirtualStringTree Class | Send Feedback

Streaming support event.

Pascal
property OnLoadNode: TVTSaveNodeEvent;
Description

This event is typically triggered when serialized tree data must be restored, e.g. when loading the tree from file or stream or during a clipboard/drag'n drop operation. You should only read in what you wrote out in OnSaveNode. For safety there is a check in the loader code which tries to keep the internal serialization structure intact in case the application does not read correctly.

See Also

OnSaveNode, LoadFromStream, SaveToStream, AddFromStream, VTTreeStreamVersion, TVTHeader.LoadFromStream, TVTHeader.SaveToStream

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, See Also, TVirtualStringTree Class


TVirtualStringTree.OnLoadTree Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnLoadTree: TVTSaveTreeEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnMeasureItem Event
TVirtualStringTree Events | See Also | TVirtualStringTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnMeasureItem: TVTMeasureItemEvent;
Description

Virtual Treeview supports individual node heights. However it might sometimes unpractical to set this height in advance (e.g. during OnInitNode). Another scenario might be that multi line nodes must size themselves to accomodate the entire node text without clipping. For such and similar cases the event OnMeasureItem is for. It is queried once for each node and allows to specify the node's future height. If you later want to have a new height applied (e.g. because the node's text changed) then call InvalidateNode for it and its vsHeightMeasured state is reset causing so the tree to trigger the OnMeasureItem event again when the node is painted the next time.

See Also

InvalidateNode, vsHeightMeasured

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, See Also, TVirtualStringTree Class


TVirtualStringTree.OnMeasureTextHeight Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnMeasureTextHeight: TVTMeasureTextEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnMeasureTextWidth Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnMeasureTextWidth: TVTMeasureTextEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnNewText Event
TVirtualStringTree Events | See Also | TVirtualStringTree Class | Send Feedback

Virtual string tree event to pass edited text.

Pascal
property OnNewText: TVSTNewTextEvent;
Description

A string tree will fire this event after a node has been edited successfully (not canceled with Escape). The event handler must store the new text in the node data.

This event will only be used for the default node caption editor. Other custom node editors may or may not use this event to pass their edited data to the application. Editing for the whole tree is only possible if the MiscOptions (see TreeOptions) include toEditable. If only certain columns or nodes should be editable write an event handler for OnEditing.

See Also

OnCreateEditor, OnEdited

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, See Also, TVirtualStringTree Class


TVirtualStringTree.OnNodeClick Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnNodeClick: TVTNodeClickEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnNodeCopied Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnNodeCopied: TVTNodeCopiedEvent;
Description

This event is triggered during drag'n drop after a node has been copied to a new location. Sender is the target tree where the copy operation took place.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnNodeCopying Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnNodeCopying: TVTNodeCopyingEvent;
Description

This event is triggered when a node is about to be copied to a new location. Use Allowed to allow or deny the action. Sender is the target tree where the copy operation will take place.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnNodeDblClick Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnNodeDblClick: TVTNodeClickEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnNodeExport Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnNodeExport: TVTNodeExportEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnNodeHeightDblClickResize Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnNodeHeightDblClickResize: TVTNodeHeightDblClickResizeEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnNodeHeightTracking Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnNodeHeightTracking: TVTNodeHeightTrackingEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnNodeMoved Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnNodeMoved: TVTNodeMovedEvent;
Description

This event is very much like OnNodeCopied but used for moving nodes instead.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnNodeMoving Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnNodeMoving: TVTNodeMovingEvent;
Description

This event is very much like OnNodeCopying but used for moving nodes instead.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnPaintBackground Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Paint support event.

Pascal
property OnPaintBackground: TVTBackgroundPaintEvent;
Description

This event is triggered when the tree has finished its painting and there is an area which is not covered by nodes. For nodes there are various events to allow background customizaton. For the free area in the tree window there is this event.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnPaintText Event
TVirtualStringTree Events | See Also | TVirtualStringTree Class | Send Feedback

Event to change text formatting for particular nodes.

Pascal
property OnPaintText: TVTPaintText;
Description

Write an event handler for this event to render nodes with different fonts, font sizes, styles or colors. According to the parameters each column of each node and even normal and static text can be painted in different ways.

Notes

The string tree view manages an internal width for each node's main column. This is done because computing this width is

quite costly and the width is needed on several occasions. If you change the font which is used to paint a node's text,

for example to bold face style, its width changes but the tree view does not know this - it still relies on its cached

node width. This may result in cut off selection rectangles among others.

Hence if the width of a node changes after its initialization because it is now formatted differently than before force a

recalculation of the node width by calling InvalidateNode (when the conditions for the changed formatting are met - not

in the event handler for OnPaintText).

See Also

Paint cycles and stages

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, See Also, TVirtualStringTree Class


TVirtualStringTree.OnRemoveFromSelection Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnRemoveFromSelection: TVTRemoveFromSelectionEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnRenderOLEData Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Drag'n drop and clipboard support event.

Pascal
property OnRenderOLEData: TVTRenderOLEDataEvent;
Description

This event is triggered when the data in a clipboard or drag'n drop operation must be rendered but the built-in data object does not know the requested format. This is usually the case when the application (or descentants) have specified their own formats in OnGetUserClipboardFormats.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnResetNode Event
TVirtualStringTree Events | See Also | TVirtualStringTree Class | Send Feedback

Node management event.

Pascal
property OnResetNode: TVTChangeEvent;
Description

For large trees or simply because the content changed it is sometimes necessary to discard a certain node and release all its children. This can be done with ResetNode which will trigger this event.

See Also

ResetNode

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, See Also, TVirtualStringTree Class


TVirtualStringTree.OnSaveNode Event
TVirtualStringTree Events | See Also | TVirtualStringTree Class | Send Feedback

Streaming support event.

Pascal
property OnSaveNode: TVTSaveNodeEvent;
Description

This event is triggered whenever a certain node must be serialized into a stream, e.g. for saving to file or for copying to another tree/node during a clipboard or drag'n drop operation. Make sure you only store non-transient data into the stream. Pointers (including long/wide string references) are transient and the application cannot assume to find the data a pointer references on saving at the same place when the node is loaded (see also OnLoadNode). This is even more essential for nodes which are moved or copied between different trees in different processes (applications). Storing strings however is easily done by writing the strings as a whole into the stream.

Notes

For exchanging data between different trees and for general stability improvement I strongly recommend that you insert a

kind of identifier as first stream entry when saving a node. This identifier can then be used to determine what data will

follow when loading the node later and does normally not required to be stored in the node data.

See Also

OnLoadNode, LoadFromStream, SaveToStream, AddFromStream, VTTreeStreamVersion, TVTHeader.LoadFromStream, TVTHeader.SaveToStream

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, See Also, TVirtualStringTree Class


TVirtualStringTree.OnSaveTree Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnSaveTree: TVTSaveTreeEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnScroll Event
TVirtualStringTree Events | See Also | TVirtualStringTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnScroll: TVTScrollEvent;
Description

This event is triggered when the tree is scrolled horizontally or vertically. You can use it to synchronize scrolling of several trees or other controls.

See Also

OffsetXY

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, See Also, TVirtualStringTree Class


TVirtualStringTree.OnShortenString Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

String tree event for custom handling of string abbreviations.

Pascal
property OnShortenString: TVSTShortenStringEvent;
Description

If the text of a node does not fit into its cell (in grid mode) or is too wide for the width of the tree view it is being abbreviated with an ellipsis (...). By default the ellipsis is added to the end of the node text.

Occasionally you may want to shorten the node text at a different position, for example if the node text is a path string and not the last folder or filename should be cut off but rather some mid level folders if possible.

In the handler S must be processed (shortened) and returned in Result. If Done is set to true (default value is false) the tree view takes over the shortening. This is useful if not all nodes or columns need

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnShowScrollbar Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnShowScrollbar: TVTScrollbarShowEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnStartOperation Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Not documented.

Pascal
property OnStartOperation: TVTOperationEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnStateChange Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnStateChange: TVTStateChangeEvent;
Description

For special effects or in order to increase performance it is sometimes useful to know when the tree changes one of its internal states like tsIncrementalSearching or tsOLEDragging. The OnStateChange event is triggered each time such a change occurs letting so the application take measures for it.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnStructureChange Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnStructureChange: TVTStructureChangeEvent;
Description

This event is triggered when a change in the tree structure is made. That means whenever a node is created or destroyed or a node's child list is change (because a child node was moved, copied etc.) then OnStructureChange is executed.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualStringTree.OnUpdating Event
TVirtualStringTree Events | TVirtualStringTree Class | Send Feedback

Miscellaneous event.

Pascal
property OnUpdating: TVTUpdatingEvent;
Description

This event is triggered when the application or the tree call BeginUpdate or EndUpdate and indicate so when a larger update operation takes place. This can for instance be used to show a hour glass wait cursor.

Group

TVirtualStringTree Events

Links
TVirtualStringTree Events, TVirtualStringTree Class


TVirtualTreeColumn Class
Classes | Topics | TVirtualTreeColumn Methods | TVirtualTreeColumn Constructors | TVirtualTreeColumn Destructors | TVirtualTreeColumn Properties | TVirtualTreeColumn Constructors | TVirtualTreeColumn Destructors | Legend | TVirtualTreeColumn Methods | TVirtualTreeColumn Properties | Send Feedback

Represents a column in a Virtual Treeview.

Pascal
TVirtualTreeColumn = class(TCollectionItem);
Description

This enhanced collection item, which is organized within the TCollection descentant TVirtualTreeColumns, manages all aspects of a single column.

Group

Classes

Members
TVirtualTreeColumn Methods

Assign
Not documented.
ComputeHeaderLayout
Not documented.
DefineProperties
Not documented.
Equals
Not documented.
GetAbsoluteBounds
Not documented.
GetDisplayName
Not documented.
GetOwner
Not documented.
GetRect
Returns the rectangle this column occupies in the header (relative to (0, 0) of the non-client area).
LoadFromStream
Not documented.
ParentBiDiModeChanged
Not documented.
ParentColorChanged
Not documented.
ReadHint
Not documented.
ReadText
Not documented.
RestoreLastWidth
Not documented.
SaveToStream
Not documented.
UseRightToLeftReading
Not documented.
WriteHint
Not documented.
WriteText
Not documented.

Topics

TVirtualTreeColumn Methods
The methods of the TVirtualTreeColumn class are listed here.
TVirtualTreeColumn Constructors
The constructors of the TVirtualTreeColumn class are listed here.
TVirtualTreeColumn Destructors
The destructors of the TVirtualTreeColumn class are listed here.
TVirtualTreeColumn Properties
The properties of the TVirtualTreeColumn class are listed here.

TVirtualTreeColumn Constructors

Create
Not documented.

TVirtualTreeColumn Destructors

Destroy
Not documented.

TVirtualTreeColumn Properties

Alignment
Not documented.
BiDiMode
Not documented.
CaptionAlignment
Not documented.
CaptionText
Not documented.
CheckBox
Not documented.
CheckState
Not documented.
CheckType
Not documented.
Color
Not documented.
DefaultSortDirection
Not documented.
Hint
Not documented.
ImageIndex
Not documented.
Layout
Not documented.
Left
Not documented.
Margin
Not documented.
MaxWidth
Not documented.
MinWidth
Not documented.
Options
Not documented.
Owner
Not documented.
Position
Not documented.
Spacing
Not documented.
Style
Not documented.
Tag
Not documented.
Text
Not documented.
Width
Not documented.

Topics

TVirtualTreeColumn Methods
The methods of the TVirtualTreeColumn class are listed here.
TVirtualTreeColumn Constructors
The constructors of the TVirtualTreeColumn class are listed here.
TVirtualTreeColumn Destructors
The destructors of the TVirtualTreeColumn class are listed here.
TVirtualTreeColumn Properties
The properties of the TVirtualTreeColumn class are listed here.

TVirtualTreeColumn Constructors

Create
Not documented.

TVirtualTreeColumn Destructors

Destroy
Not documented.

Legend

Method
public
virtual
protected
Constructor
Property
published
read only

TVirtualTreeColumn Methods

Assign
Not documented.
ComputeHeaderLayout
Not documented.
DefineProperties
Not documented.
Equals
Not documented.
GetAbsoluteBounds
Not documented.
GetDisplayName
Not documented.
GetOwner
Not documented.
GetRect
Returns the rectangle this column occupies in the header (relative to (0, 0) of the non-client area).
LoadFromStream
Not documented.
ParentBiDiModeChanged
Not documented.
ParentColorChanged
Not documented.
ReadHint
Not documented.
ReadText
Not documented.
RestoreLastWidth
Not documented.
SaveToStream
Not documented.
UseRightToLeftReading
Not documented.
WriteHint
Not documented.
WriteText
Not documented.

TVirtualTreeColumn Properties

Alignment
Not documented.
BiDiMode
Not documented.
CaptionAlignment
Not documented.
CaptionText
Not documented.
CheckBox
Not documented.
CheckState
Not documented.
CheckType
Not documented.
Color
Not documented.
DefaultSortDirection
Not documented.
Hint
Not documented.
ImageIndex
Not documented.
Layout
Not documented.
Left
Not documented.
Margin
Not documented.
MaxWidth
Not documented.
MinWidth
Not documented.
Options
Not documented.
Owner
Not documented.
Position
Not documented.
Spacing
Not documented.
Style
Not documented.
Tag
Not documented.
Text
Not documented.
Width
Not documented.

Class Hierarchy
  TVirtualTreeColumn
File

VirtualTrees

Links
Classes, Topics, TVirtualTreeColumn Methods, TVirtualTreeColumn Constructors, TVirtualTreeColumn Destructors, TVirtualTreeColumn Properties, TVirtualTreeColumn Constructors, TVirtualTreeColumn Destructors, Legend, TVirtualTreeColumn Methods, TVirtualTreeColumn Properties


TVirtualTreeColumn Methods
TVirtualTreeColumn Class | Methods | Legend | Send Feedback

The methods of the TVirtualTreeColumn class are listed here.

Class

TVirtualTreeColumn Class

Legend

Method
public
virtual
protected

Links
TVirtualTreeColumn Class, Methods, Legend


TVirtualTreeColumn.Assign Method
TVirtualTreeColumn Methods | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
procedure Assign(Source: TPersistent); override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Methods

Links
TVirtualTreeColumn Methods, TVirtualTreeColumn Class


TVirtualTreeColumn.ComputeHeaderLayout Method
TVirtualTreeColumn Methods | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
procedure ComputeHeaderLayout(DC: HDC; Client: TRect; UseHeaderGlyph: Boolean; UseSortGlyph: Boolean; var HeaderGlyphPos: TPoint; var SortGlyphPos: TPoint; var SortGlyphSize: TSize; var TextBounds: TRect; DrawFormat: Cardinal; CalculateTextRect: Boolean = False);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Methods

Links
TVirtualTreeColumn Methods, TVirtualTreeColumn Class


TVirtualTreeColumn.DefineProperties Method
TVirtualTreeColumn Methods | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
procedure DefineProperties(Filer: TFiler); override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Methods

Links
TVirtualTreeColumn Methods, TVirtualTreeColumn Class


TVirtualTreeColumn.Equals Method
TVirtualTreeColumn Methods | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
function Equals(OtherColumnObj: TObject): Boolean;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Methods

Links
TVirtualTreeColumn Methods, TVirtualTreeColumn Class


TVirtualTreeColumn.GetAbsoluteBounds Method
TVirtualTreeColumn Methods | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
procedure GetAbsoluteBounds(var Left: Integer; var Right: Integer);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Methods

Links
TVirtualTreeColumn Methods, TVirtualTreeColumn Class


TVirtualTreeColumn.GetDisplayName Method
TVirtualTreeColumn Methods | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
function GetDisplayName: string; override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Methods

Links
TVirtualTreeColumn Methods, TVirtualTreeColumn Class


TVirtualTreeColumn.GetOwner Method
TVirtualTreeColumn Methods | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
function GetOwner: TVirtualTreeColumns; reintroduce;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Methods

Links
TVirtualTreeColumn Methods, TVirtualTreeColumn Class


TVirtualTreeColumn.GetRect Method
TVirtualTreeColumn Methods | TVirtualTreeColumn Class | Send Feedback

Returns the rectangle this column occupies in the header (relative to (0, 0) of the non-client area).

Pascal
function GetRect: TRect; virtual;
Description

Returns the rectangle this column occupies in the header (relative to (0, 0) of the non-client area).

Group

TVirtualTreeColumn Methods

Links
TVirtualTreeColumn Methods, TVirtualTreeColumn Class


TVirtualTreeColumn.LoadFromStream Method
TVirtualTreeColumn Methods | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
procedure LoadFromStream(const Stream: TStream; Version: Integer);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Methods

Links
TVirtualTreeColumn Methods, TVirtualTreeColumn Class


TVirtualTreeColumn.ParentBiDiModeChanged Method
TVirtualTreeColumn Methods | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
procedure ParentBiDiModeChanged;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Methods

Links
TVirtualTreeColumn Methods, TVirtualTreeColumn Class


TVirtualTreeColumn.ParentColorChanged Method
TVirtualTreeColumn Methods | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
procedure ParentColorChanged;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Methods

Links
TVirtualTreeColumn Methods, TVirtualTreeColumn Class


TVirtualTreeColumn.ReadHint Method
TVirtualTreeColumn Methods | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
procedure ReadHint(Reader: TReader);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Methods

Links
TVirtualTreeColumn Methods, TVirtualTreeColumn Class


TVirtualTreeColumn.ReadText Method
TVirtualTreeColumn Methods | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
procedure ReadText(Reader: TReader);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Methods

Links
TVirtualTreeColumn Methods, TVirtualTreeColumn Class


TVirtualTreeColumn.RestoreLastWidth Method
TVirtualTreeColumn Methods | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
procedure RestoreLastWidth;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Methods

Links
TVirtualTreeColumn Methods, TVirtualTreeColumn Class


TVirtualTreeColumn.SaveToStream Method
TVirtualTreeColumn Methods | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
procedure SaveToStream(const Stream: TStream);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Methods

Links
TVirtualTreeColumn Methods, TVirtualTreeColumn Class


TVirtualTreeColumn.UseRightToLeftReading Method
TVirtualTreeColumn Methods | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
function UseRightToLeftReading: Boolean;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Methods

Links
TVirtualTreeColumn Methods, TVirtualTreeColumn Class


TVirtualTreeColumn.WriteHint Method
TVirtualTreeColumn Methods | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
procedure WriteHint(Writer: TWriter);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Methods

Links
TVirtualTreeColumn Methods, TVirtualTreeColumn Class


TVirtualTreeColumn.WriteText Method
TVirtualTreeColumn Methods | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
procedure WriteText(Writer: TWriter);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Methods

Links
TVirtualTreeColumn Methods, TVirtualTreeColumn Class


TVirtualTreeColumn Constructors
TVirtualTreeColumn Class | Methods | Legend | Send Feedback

The constructors of the TVirtualTreeColumn class are listed here.

Class

TVirtualTreeColumn Class

Legend

Constructor
public
virtual

Links
TVirtualTreeColumn Class, Methods, Legend


TVirtualTreeColumn.Create Constructor
TVirtualTreeColumn Constructors | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
constructor Create(Collection: TCollection); override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Constructors

Links
TVirtualTreeColumn Constructors, TVirtualTreeColumn Class


TVirtualTreeColumn Destructors
TVirtualTreeColumn Class | Methods | Legend | Send Feedback

The destructors of the TVirtualTreeColumn class are listed here.

Class

TVirtualTreeColumn Class

Legend

Destructor
public
virtual

Links
TVirtualTreeColumn Class, Methods, Legend


TVirtualTreeColumn.Destroy Destructor
TVirtualTreeColumn Destructors | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
destructor Destroy; override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Destructors

Links
TVirtualTreeColumn Destructors, TVirtualTreeColumn Class


TVirtualTreeColumn Properties
TVirtualTreeColumn Class | Properties | Legend | Send Feedback

The properties of the TVirtualTreeColumn class are listed here.

Class

TVirtualTreeColumn Class

Legend

Property
published
read only
public

Links
TVirtualTreeColumn Class, Properties, Legend


TVirtualTreeColumn.Alignment Property
TVirtualTreeColumn Properties | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
property Alignment: TAlignment;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Properties

Links
TVirtualTreeColumn Properties, TVirtualTreeColumn Class


TVirtualTreeColumn.BiDiMode Property
TVirtualTreeColumn Properties | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
property BiDiMode: TBiDiMode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Properties

Links
TVirtualTreeColumn Properties, TVirtualTreeColumn Class


TVirtualTreeColumn.CaptionAlignment Property
TVirtualTreeColumn Properties | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
property CaptionAlignment: TAlignment;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Properties

Links
TVirtualTreeColumn Properties, TVirtualTreeColumn Class


TVirtualTreeColumn.CaptionText Property
TVirtualTreeColumn Properties | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
property CaptionText: UnicodeString;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Properties

Links
TVirtualTreeColumn Properties, TVirtualTreeColumn Class


TVirtualTreeColumn.CheckBox Property
TVirtualTreeColumn Properties | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
property CheckBox: Boolean;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Properties

Links
TVirtualTreeColumn Properties, TVirtualTreeColumn Class


TVirtualTreeColumn.CheckState Property
TVirtualTreeColumn Properties | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
property CheckState: TCheckState;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Properties

Links
TVirtualTreeColumn Properties, TVirtualTreeColumn Class


TVirtualTreeColumn.CheckType Property
TVirtualTreeColumn Properties | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
property CheckType: TCheckType;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Properties

Links
TVirtualTreeColumn Properties, TVirtualTreeColumn Class


TVirtualTreeColumn.Color Property
TVirtualTreeColumn Properties | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
property Color: TColor;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Properties

Links
TVirtualTreeColumn Properties, TVirtualTreeColumn Class


TVirtualTreeColumn.DefaultSortDirection Property
TVirtualTreeColumn Properties | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
property DefaultSortDirection: TSortDirection;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Properties

Links
TVirtualTreeColumn Properties, TVirtualTreeColumn Class


TVirtualTreeColumn.Hint Property
TVirtualTreeColumn Properties | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
property Hint: UnicodeString;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Properties

Links
TVirtualTreeColumn Properties, TVirtualTreeColumn Class


TVirtualTreeColumn.ImageIndex Property
TVirtualTreeColumn Properties | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
property ImageIndex: TImageIndex;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Properties

Links
TVirtualTreeColumn Properties, TVirtualTreeColumn Class


TVirtualTreeColumn.Layout Property
TVirtualTreeColumn Properties | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
property Layout: TVTHeaderColumnLayout;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Properties

Links
TVirtualTreeColumn Properties, TVirtualTreeColumn Class


TVirtualTreeColumn.Left Property
TVirtualTreeColumn Properties | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
property Left: Integer;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Properties

Links
TVirtualTreeColumn Properties, TVirtualTreeColumn Class


TVirtualTreeColumn.Margin Property
TVirtualTreeColumn Properties | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
property Margin: Integer;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Properties

Links
TVirtualTreeColumn Properties, TVirtualTreeColumn Class


TVirtualTreeColumn.MaxWidth Property
TVirtualTreeColumn Properties | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
property MaxWidth: Integer;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Properties

Links
TVirtualTreeColumn Properties, TVirtualTreeColumn Class


TVirtualTreeColumn.MinWidth Property
TVirtualTreeColumn Properties | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
property MinWidth: Integer;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Properties

Links
TVirtualTreeColumn Properties, TVirtualTreeColumn Class


TVirtualTreeColumn.Options Property
TVirtualTreeColumn Properties | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
property Options: TVTColumnOptions;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Properties

Links
TVirtualTreeColumn Properties, TVirtualTreeColumn Class


TVirtualTreeColumn.Owner Property
TVirtualTreeColumn Properties | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
property Owner: TVirtualTreeColumns;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Properties

Links
TVirtualTreeColumn Properties, TVirtualTreeColumn Class


TVirtualTreeColumn.Position Property
TVirtualTreeColumn Properties | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
property Position: TColumnPosition;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Properties

Links
TVirtualTreeColumn Properties, TVirtualTreeColumn Class


TVirtualTreeColumn.Spacing Property
TVirtualTreeColumn Properties | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
property Spacing: Integer;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Properties

Links
TVirtualTreeColumn Properties, TVirtualTreeColumn Class


TVirtualTreeColumn.Style Property
TVirtualTreeColumn Properties | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
property Style: TVirtualTreeColumnStyle;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Properties

Links
TVirtualTreeColumn Properties, TVirtualTreeColumn Class


TVirtualTreeColumn.Tag Property
TVirtualTreeColumn Properties | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
property Tag: Integer;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Properties

Links
TVirtualTreeColumn Properties, TVirtualTreeColumn Class


TVirtualTreeColumn.Text Property
TVirtualTreeColumn Properties | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
property Text: UnicodeString;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Properties

Links
TVirtualTreeColumn Properties, TVirtualTreeColumn Class


TVirtualTreeColumn.Width Property
TVirtualTreeColumn Properties | TVirtualTreeColumn Class | Send Feedback

Not documented.

Pascal
property Width: Integer;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumn Properties

Links
TVirtualTreeColumn Properties, TVirtualTreeColumn Class


TVirtualTreeColumns Class
Classes | Topics | TVirtualTreeColumns Fields | TVirtualTreeColumns Methods | TVirtualTreeColumns Constructors | TVirtualTreeColumns Destructors | TVirtualTreeColumns Properties | TVirtualTreeColumns Constructors | TVirtualTreeColumns Destructors | TVirtualTreeColumns Fields | Legend | TVirtualTreeColumns Methods | TVirtualTreeColumns Properties | Send Feedback

Collection class, which holds the columns for the tree.

Pascal
TVirtualTreeColumns = class(TCollection);
Description

This class is an enhanced collection which manages general aspects of columns like ordering, traversion, streaming, painting, dragging etc.

Group

Classes

Members
TVirtualTreeColumns Fields

FDragIndex
index of column currently being dragged
FDropBefore
True if drop position is in the left half of a column, False for the right side to drop the dragged column to
FDropTarget
current target column (index) while dragging

Topics

TVirtualTreeColumns Fields
The fields of the TVirtualTreeColumns class are listed here.
TVirtualTreeColumns Methods
The methods of the TVirtualTreeColumns class are listed here.
TVirtualTreeColumns Constructors
The constructors of the TVirtualTreeColumns class are listed here.
TVirtualTreeColumns Destructors
The destructors of the TVirtualTreeColumns class are listed here.
TVirtualTreeColumns Properties
The properties of the TVirtualTreeColumns class are listed here.

TVirtualTreeColumns Methods

Add
Not documented.
AdjustAutoSize
Called when columns must be sized so that the fit the client area.
AdjustDownColumn
Determines the column from the given position and returns it.
AdjustHoverColumn
Determines the new hover column index and returns true if the index actually changed else False.
AdjustPosition
Reorders the column position array so that the given column gets the given position.
AnimatedResize
Resizes the given column animated by scrolling the window DC.
Assign
Not documented.
CanSplitterResize
Not documented.
Clear
Not documented.
ColumnFromPosition
This is the overview for the ColumnFromPosition method overload.
DoCanSplitterResize
Not documented.
DrawButtonText
Not documented.
Equals
Not documented.
FixPositions
Fixes column positions after loading from DFM.
GetColumnAndBounds
Returns the column where the mouse is currently in as well as the left and right bound of this column.
GetColumnBounds
Returns the left and right bound of the given column.
GetFirstVisibleColumn
Returns the index of the first visible column or "InvalidColumn" if either no columns are defined or all columns are hidden.
GetLastVisibleColumn
Returns the index of the last visible column or "InvalidColumn" if either no columns are defined or all columns are hidden.

GetNextColumn
Returns the next column in display order. Column is the index of an item in the collection (a column).
GetNextVisibleColumn
Not documented.
GetOwner
Not documented.
GetPreviousColumn
Returns the previous column in display order, Column is an index into the columns list.
GetPreviousVisibleColumn
Not documented.
GetScrollWidth
Not documented.
GetVisibleColumns
Returns a list of all currently visible columns in actual order.
GetVisibleFixedWidth
Not documented.
HandleClick
Generates a click event if the mouse button has been released over the same column it was pressed first.
IndexChanged
Called by a column when its index in the collection changes.
InitializePositionArray
Ensures that the column position array contains as much entries as columns are defined.
IsValidColumn
Determines whether the given column is valid or not, that is, whether it is one of the current columns.
LoadFromStream
Not documented.
Notify
Not documented.
PaintHeader
This is the overview for the PaintHeader method overload.
ReorderColumns
Not documented.
SaveToStream
Not documented.
TotalWidth
Not documented.
Update
Not documented.
UpdatePositions
Recalculates the left border of every column and updates their position property according to the PostionToIndex array, which primarily determines where each column is placed visually.

TVirtualTreeColumns Constructors

Create
Not documented.

TVirtualTreeColumns Destructors

Destroy
Not documented.

TVirtualTreeColumns Properties

ClickIndex
Not documented.
Count
Not documented.
DefaultWidth
Not documented.
Header
Not documented.
HeaderBitmap
Not documented.
Items
Not documented.
PositionToIndex
Not documented.
TrackIndex
Not documented.

Topics

TVirtualTreeColumns Fields
The fields of the TVirtualTreeColumns class are listed here.
TVirtualTreeColumns Methods
The methods of the TVirtualTreeColumns class are listed here.
TVirtualTreeColumns Constructors
The constructors of the TVirtualTreeColumns class are listed here.
TVirtualTreeColumns Destructors
The destructors of the TVirtualTreeColumns class are listed here.
TVirtualTreeColumns Properties
The properties of the TVirtualTreeColumns class are listed here.

TVirtualTreeColumns Constructors

Create
Not documented.

TVirtualTreeColumns Destructors

Destroy
Not documented.

TVirtualTreeColumns Fields

FDragIndex
index of column currently being dragged
FDropBefore
True if drop position is in the left half of a column, False for the right side to drop the dragged column to
FDropTarget
current target column (index) while dragging

Legend

Data Member
protected
Method
public
virtual
Constructor
Property
read only

TVirtualTreeColumns Methods

Add
Not documented.
AdjustAutoSize
Called when columns must be sized so that the fit the client area.
AdjustDownColumn
Determines the column from the given position and returns it.
AdjustHoverColumn
Determines the new hover column index and returns true if the index actually changed else False.
AdjustPosition
Reorders the column position array so that the given column gets the given position.
AnimatedResize
Resizes the given column animated by scrolling the window DC.
Assign
Not documented.
CanSplitterResize
Not documented.
Clear
Not documented.
ColumnFromPosition
This is the overview for the ColumnFromPosition method overload.
DoCanSplitterResize
Not documented.
DrawButtonText
Not documented.
Equals
Not documented.
FixPositions
Fixes column positions after loading from DFM.
GetColumnAndBounds
Returns the column where the mouse is currently in as well as the left and right bound of this column.
GetColumnBounds
Returns the left and right bound of the given column.
GetFirstVisibleColumn
Returns the index of the first visible column or "InvalidColumn" if either no columns are defined or all columns are hidden.
GetLastVisibleColumn
Returns the index of the last visible column or "InvalidColumn" if either no columns are defined or all columns are hidden.

GetNextColumn
Returns the next column in display order. Column is the index of an item in the collection (a column).
GetNextVisibleColumn
Not documented.
GetOwner
Not documented.
GetPreviousColumn
Returns the previous column in display order, Column is an index into the columns list.
GetPreviousVisibleColumn
Not documented.
GetScrollWidth
Not documented.
GetVisibleColumns
Returns a list of all currently visible columns in actual order.
GetVisibleFixedWidth
Not documented.
HandleClick
Generates a click event if the mouse button has been released over the same column it was pressed first.
IndexChanged
Called by a column when its index in the collection changes.
InitializePositionArray
Ensures that the column position array contains as much entries as columns are defined.
IsValidColumn
Determines whether the given column is valid or not, that is, whether it is one of the current columns.
LoadFromStream
Not documented.
Notify
Not documented.
PaintHeader
This is the overview for the PaintHeader method overload.
ReorderColumns
Not documented.
SaveToStream
Not documented.
TotalWidth
Not documented.
Update
Not documented.
UpdatePositions
Recalculates the left border of every column and updates their position property according to the PostionToIndex array, which primarily determines where each column is placed visually.

TVirtualTreeColumns Properties

ClickIndex
Not documented.
Count
Not documented.
DefaultWidth
Not documented.
Header
Not documented.
HeaderBitmap
Not documented.
Items
Not documented.
PositionToIndex
Not documented.
TrackIndex
Not documented.

Class Hierarchy
  TVirtualTreeColumns
File

VirtualTrees

Links
Classes, Topics, TVirtualTreeColumns Fields, TVirtualTreeColumns Methods, TVirtualTreeColumns Constructors, TVirtualTreeColumns Destructors, TVirtualTreeColumns Properties, TVirtualTreeColumns Constructors, TVirtualTreeColumns Destructors, TVirtualTreeColumns Fields, Legend, TVirtualTreeColumns Methods, TVirtualTreeColumns Properties


TVirtualTreeColumns Fields
Fields | TVirtualTreeColumns Class | Legend | Send Feedback

The fields of the TVirtualTreeColumns class are listed here.

Class

TVirtualTreeColumns Class

Legend

Data Member
protected

Links
Fields, TVirtualTreeColumns Class, Legend


TVirtualTreeColumns.FDragIndex Field
TVirtualTreeColumns Fields | TVirtualTreeColumns Class | Send Feedback

index of column currently being dragged

Pascal
FDragIndex: TColumnIndex;
Group

TVirtualTreeColumns Fields

Links
TVirtualTreeColumns Fields, TVirtualTreeColumns Class


TVirtualTreeColumns.FDropBefore Field
TVirtualTreeColumns Fields | TVirtualTreeColumns Class | Send Feedback

True if drop position is in the left half of a column, False for the right side to drop the dragged column to

Pascal
FDropBefore: Boolean;
Group

TVirtualTreeColumns Fields

Links
TVirtualTreeColumns Fields, TVirtualTreeColumns Class


TVirtualTreeColumns.FDropTarget Field
TVirtualTreeColumns Fields | TVirtualTreeColumns Class | Send Feedback

current target column (index) while dragging

Pascal
FDropTarget: TColumnIndex;
Group

TVirtualTreeColumns Fields

Links
TVirtualTreeColumns Fields, TVirtualTreeColumns Class


TVirtualTreeColumns Methods
TVirtualTreeColumns Class | Methods | Legend | Send Feedback

The methods of the TVirtualTreeColumns class are listed here.

Class

TVirtualTreeColumns Class

Legend

Method
public
virtual
protected

Links
TVirtualTreeColumns Class, Methods, Legend


TVirtualTreeColumns.Add Method
TVirtualTreeColumns Methods | TVirtualTreeColumns Class | Send Feedback

Not documented.

Pascal
function Add: TVirtualTreeColumn; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumns Methods

Links
TVirtualTreeColumns Methods, TVirtualTreeColumns Class


TVirtualTreeColumns.AdjustAutoSize Method
TVirtualTreeColumns Methods | TVirtualTreeColumns Class | Send Feedback

Called when columns must be sized so that the fit the client area.

Pascal
procedure AdjustAutoSize(CurrentIndex: TColumnIndex; Force: Boolean = False);
Description

Called only if the header is in auto-size mode which means a column needs to be so large that it fills all the horizontal space not occupied by the other columns. CurrentIndex (if not InvalidColumn) describes which column has just been resized.

Group

TVirtualTreeColumns Methods

Links
TVirtualTreeColumns Methods, TVirtualTreeColumns Class


TVirtualTreeColumns.AdjustDownColumn Method
TVirtualTreeColumns Methods | TVirtualTreeColumns Class | Send Feedback

Determines the column from the given position and returns it.

Pascal
function AdjustDownColumn(P: TPoint): TColumnIndex;
Description

If this column is allowed to be clicked then it is also kept for later use.

Group

TVirtualTreeColumns Methods

Links
TVirtualTreeColumns Methods, TVirtualTreeColumns Class


TVirtualTreeColumns.AdjustHoverColumn Method
TVirtualTreeColumns Methods | TVirtualTreeColumns Class | Send Feedback

Determines the new hover column index and returns true if the index actually changed else False.

Pascal
function AdjustHoverColumn(P: TPoint): Boolean;
Description

Determines the new hover column index and returns true if the index actually changed else False.

Group

TVirtualTreeColumns Methods

Links
TVirtualTreeColumns Methods, TVirtualTreeColumns Class


TVirtualTreeColumns.AdjustPosition Method
TVirtualTreeColumns Methods | TVirtualTreeColumns Class | Send Feedback

Reorders the column position array so that the given column gets the given position.

Pascal
procedure AdjustPosition(Column: TVirtualTreeColumn; Position: Cardinal);
Description

Reorders the column position array so that the given column gets the given position.

Group

TVirtualTreeColumns Methods

Links
TVirtualTreeColumns Methods, TVirtualTreeColumns Class


TVirtualTreeColumns.AnimatedResize Method
TVirtualTreeColumns Methods | TVirtualTreeColumns Class | Send Feedback

Resizes the given column animated by scrolling the window DC.

Pascal
procedure AnimatedResize(Column: TColumnIndex; NewWidth: Integer);
Description

Resizes the given column animated by scrolling the window DC.

Group

TVirtualTreeColumns Methods

Links
TVirtualTreeColumns Methods, TVirtualTreeColumns Class


TVirtualTreeColumns.Assign Method
TVirtualTreeColumns Methods | TVirtualTreeColumns Class | Send Feedback

Not documented.

Pascal
procedure Assign(Source: TPersistent); override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumns Methods

Links
TVirtualTreeColumns Methods, TVirtualTreeColumns Class


TVirtualTreeColumns.CanSplitterResize Method
TVirtualTreeColumns Methods | TVirtualTreeColumns Class | Send Feedback

Not documented.

Pascal
function CanSplitterResize(P: TPoint; Column: TColumnIndex): Boolean;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumns Methods

Links
TVirtualTreeColumns Methods, TVirtualTreeColumns Class


TVirtualTreeColumns.Clear Method
TVirtualTreeColumns Methods | TVirtualTreeColumns Class | Send Feedback

Not documented.

Pascal
procedure Clear; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumns Methods

Links
TVirtualTreeColumns Methods, TVirtualTreeColumns Class


ColumnFromPosition Method
TVirtualTreeColumns Methods | Send Feedback

This is the overview for the ColumnFromPosition method overload.

Group

TVirtualTreeColumns Methods

Links
TVirtualTreeColumns Methods
Overload List
Method | Description
TVirtualTreeColumns.ColumnFromPosition (TColumnPosition) | Returns the index of the column at the given position.
TVirtualTreeColumns.ColumnFromPosition (TPoint, Boolean) | Determines the current column based on the position passed in P.


TVirtualTreeColumns.ColumnFromPosition Method (TColumnPosition)
ColumnFromPosition Method | TVirtualTreeColumns Class | Send Feedback

Returns the index of the column at the given position.

Pascal
function ColumnFromPosition(PositionIndex: TColumnPosition): TColumnIndex; virtual; overload;
Description

Returns the index of the column at the given position.

Group

ColumnFromPosition Method

Links
ColumnFromPosition Method, TVirtualTreeColumns Class


TVirtualTreeColumns.ColumnFromPosition Method (TPoint, Boolean)
ColumnFromPosition Method | TVirtualTreeColumns Class | Send Feedback

Determines the current column based on the position passed in P.

Pascal
function ColumnFromPosition(P: TPoint; Relative: Boolean = True): TColumnIndex; virtual; overload;
Description

Determines the current column based on the position passed in P.

Group

ColumnFromPosition Method

Links
ColumnFromPosition Method, TVirtualTreeColumns Class


TVirtualTreeColumns.DoCanSplitterResize Method
TVirtualTreeColumns Methods | TVirtualTreeColumns Class | Send Feedback

Not documented.

Pascal
procedure DoCanSplitterResize(P: TPoint; Column: TColumnIndex; var Allowed: Boolean); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumns Methods

Links
TVirtualTreeColumns Methods, TVirtualTreeColumns Class


TVirtualTreeColumns.DrawButtonText Method
TVirtualTreeColumns Methods | TVirtualTreeColumns Class | Send Feedback

Not documented.

Pascal
procedure DrawButtonText(DC: HDC; Caption: UnicodeString; Bounds: TRect; Enabled: Boolean; Hot: Boolean; DrawFormat: Cardinal; WrapCaption: Boolean);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumns Methods

Links
TVirtualTreeColumns Methods, TVirtualTreeColumns Class


TVirtualTreeColumns.Equals Method
TVirtualTreeColumns Methods | TVirtualTreeColumns Class | Send Feedback

Not documented.

Pascal
function Equals(OtherColumnsObj: TObject): Boolean;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumns Methods

Links
TVirtualTreeColumns Methods, TVirtualTreeColumns Class


TVirtualTreeColumns.FixPositions Method
TVirtualTreeColumns Methods | TVirtualTreeColumns Class | Send Feedback

Fixes column positions after loading from DFM.

Pascal
procedure FixPositions;
Description

Fixes column positions after loading from DFM.

Group

TVirtualTreeColumns Methods

Links
TVirtualTreeColumns Methods, TVirtualTreeColumns Class


TVirtualTreeColumns.GetColumnAndBounds Method
TVirtualTreeColumns Methods | TVirtualTreeColumns Class | Send Feedback

Returns the column where the mouse is currently in as well as the left and right bound of this column.

Pascal
function GetColumnAndBounds(P: TPoint; var ColumnLeft: Integer; var ColumnRight: Integer; Relative: Boolean = True): Integer;
Description

Left and Right are undetermined if no column is involved.

Group

TVirtualTreeColumns Methods

Links
TVirtualTreeColumns Methods, TVirtualTreeColumns Class


TVirtualTreeColumns.GetColumnBounds Method
TVirtualTreeColumns Methods | TVirtualTreeColumns Class | Send Feedback

Returns the left and right bound of the given column.

Pascal
procedure GetColumnBounds(Column: TColumnIndex; var Left: Integer; var Right: Integer);
Description

If Column is NoColumn then the entire client width is returned.

Group

TVirtualTreeColumns Methods

Links
TVirtualTreeColumns Methods, TVirtualTreeColumns Class


TVirtualTreeColumns.GetFirstVisibleColumn Method
TVirtualTreeColumns Methods | TVirtualTreeColumns Class | Send Feedback

Returns the index of the first visible column or "InvalidColumn" if either no columns are defined or all columns are hidden.

Pascal
function GetFirstVisibleColumn(ConsiderAllowFocus: Boolean = False): TColumnIndex;
Description

Returns the index of the first visible column or "InvalidColumn" if either no columns are defined or all columns are hidden.

Group

TVirtualTreeColumns Methods

Links
TVirtualTreeColumns Methods, TVirtualTreeColumns Class


TVirtualTreeColumns.GetLastVisibleColumn Method
TVirtualTreeColumns Methods | TVirtualTreeColumns Class | Send Feedback

Returns the index of the last visible column or "InvalidColumn" if either no columns are defined or all columns are hidden.

Pascal
function GetLastVisibleColumn(ConsiderAllowFocus: Boolean = False): TColumnIndex;
Description

Returns the index of the last visible column or "InvalidColumn" if either no columns are defined or all columns are hidden.

Group

TVirtualTreeColumns Methods

Links
TVirtualTreeColumns Methods, TVirtualTreeColumns Class


TVirtualTreeColumns.GetNextColumn Method
TVirtualTreeColumns Methods | TVirtualTreeColumns Class | Send Feedback

Returns the next column in display order. Column is the index of an item in the collection (a column).

Pascal
function GetNextColumn(Column: TColumnIndex): TColumnIndex;
Description

Returns the next column in display order. Column is the index of an item in the collection (a column).

Group

TVirtualTreeColumns Methods

Links
TVirtualTreeColumns Methods, TVirtualTreeColumns Class


TVirtualTreeColumns.GetNextVisibleColumn Method
TVirtualTreeColumns Methods | TVirtualTreeColumns Class | Send Feedback

Not documented.

Pascal
function GetNextVisibleColumn(Column: TColumnIndex; ConsiderAllowFocus: Boolean = False): TColumnIndex;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumns Methods

Links
TVirtualTreeColumns Methods, TVirtualTreeColumns Class


TVirtualTreeColumns.GetOwner Method
TVirtualTreeColumns Methods | TVirtualTreeColumns Class | Send Feedback

Not documented.

Pascal
function GetOwner: TPersistent; override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumns Methods

Links
TVirtualTreeColumns Methods, TVirtualTreeColumns Class


TVirtualTreeColumns.GetPreviousColumn Method
TVirtualTreeColumns Methods | TVirtualTreeColumns Class | Send Feedback

Returns the previous column in display order, Column is an index into the columns list.

Pascal
function GetPreviousColumn(Column: TColumnIndex): TColumnIndex;
Description

Returns the previous column in display order, Column is an index into the columns list.

Group

TVirtualTreeColumns Methods

Links
TVirtualTreeColumns Methods, TVirtualTreeColumns Class


TVirtualTreeColumns.GetPreviousVisibleColumn Method
TVirtualTreeColumns Methods | TVirtualTreeColumns Class | Send Feedback

Not documented.

Pascal
function GetPreviousVisibleColumn(Column: TColumnIndex; ConsiderAllowFocus: Boolean = False): TColumnIndex;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumns Methods

Links
TVirtualTreeColumns Methods, TVirtualTreeColumns Class


TVirtualTreeColumns.GetScrollWidth Method
TVirtualTreeColumns Methods | TVirtualTreeColumns Class | Send Feedback

Not documented.

Pascal
function GetScrollWidth: Integer;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumns Methods

Links
TVirtualTreeColumns Methods, TVirtualTreeColumns Class


TVirtualTreeColumns.GetVisibleColumns Method
TVirtualTreeColumns Methods | TVirtualTreeColumns Class | Send Feedback

Returns a list of all currently visible columns in actual order.

Pascal
function GetVisibleColumns: TColumnsArray;
Description

Returns a list of all currently visible columns in actual order.

Group

TVirtualTreeColumns Methods

Links
TVirtualTreeColumns Methods, TVirtualTreeColumns Class


TVirtualTreeColumns.GetVisibleFixedWidth Method
TVirtualTreeColumns Methods | TVirtualTreeColumns Class | Send Feedback

Not documented.

Pascal
function GetVisibleFixedWidth: Integer;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumns Methods

Links
TVirtualTreeColumns Methods, TVirtualTreeColumns Class


TVirtualTreeColumns.HandleClick Method
TVirtualTreeColumns Methods | TVirtualTreeColumns Class | Send Feedback

Generates a click event if the mouse button has been released over the same column it was pressed first.

Pascal
procedure HandleClick(P: TPoint; Button: TMouseButton; Force: Boolean; DblClick: Boolean); virtual;
Description

Alternatively, Force might be set to true to indicate that the down index does not matter (right, middle and double click).

Group

TVirtualTreeColumns Methods

Links
TVirtualTreeColumns Methods, TVirtualTreeColumns Class


TVirtualTreeColumns.IndexChanged Method
TVirtualTreeColumns Methods | TVirtualTreeColumns Class | Send Feedback

Called by a column when its index in the collection changes.

Pascal
procedure IndexChanged(OldIndex: Integer; NewIndex: Integer);
Description

If NewIndex is -1 then the column is about to be removed otherwise it is moved to a new index. The method will then update the position array to reflect the change.

Group

TVirtualTreeColumns Methods

Links
TVirtualTreeColumns Methods, TVirtualTreeColumns Class


TVirtualTreeColumns.InitializePositionArray Method
TVirtualTreeColumns Methods | TVirtualTreeColumns Class | Send Feedback

Ensures that the column position array contains as much entries as columns are defined.

Pascal
procedure InitializePositionArray;
Description

The array is resized and initialized with default values if needed.

Group

TVirtualTreeColumns Methods

Links
TVirtualTreeColumns Methods, TVirtualTreeColumns Class


TVirtualTreeColumns.IsValidColumn Method
TVirtualTreeColumns Methods | TVirtualTreeColumns Class | Send Feedback

Determines whether the given column is valid or not, that is, whether it is one of the current columns.

Pascal
function IsValidColumn(Column: TColumnIndex): Boolean;
Description

Determines whether the given column is valid or not, that is, whether it is one of the current columns.

Group

TVirtualTreeColumns Methods

Links
TVirtualTreeColumns Methods, TVirtualTreeColumns Class


TVirtualTreeColumns.LoadFromStream Method
TVirtualTreeColumns Methods | TVirtualTreeColumns Class | Send Feedback

Not documented.

Pascal
procedure LoadFromStream(const Stream: TStream; Version: Integer);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumns Methods

Links
TVirtualTreeColumns Methods, TVirtualTreeColumns Class


TVirtualTreeColumns.Notify Method
TVirtualTreeColumns Methods | TVirtualTreeColumns Class | Send Feedback

Not documented.

Pascal
procedure Notify(Item: TCollectionItem; Action: TCollectionNotification); override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumns Methods

Links
TVirtualTreeColumns Methods, TVirtualTreeColumns Class


PaintHeader Method
TVirtualTreeColumns Methods | Send Feedback

This is the overview for the PaintHeader method overload.

Group

TVirtualTreeColumns Methods

Links
TVirtualTreeColumns Methods
Overload List
Method | Description
TVirtualTreeColumns.PaintHeader (HDC, TRect, Integer) | Not documented.
TVirtualTreeColumns.PaintHeader (TCanvas, TRect, TPoint, Integer) | Not documented.


TVirtualTreeColumns.PaintHeader Method (HDC, TRect, Integer)
PaintHeader Method | TVirtualTreeColumns Class | Send Feedback

Not documented.

Pascal
procedure PaintHeader(DC: HDC; R: TRect; HOffset: Integer); virtual; overload;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

PaintHeader Method

Links
PaintHeader Method, TVirtualTreeColumns Class


TVirtualTreeColumns.PaintHeader Method (TCanvas, TRect, TPoint, Integer)
PaintHeader Method | TVirtualTreeColumns Class | Send Feedback

Not documented.

Pascal
procedure PaintHeader(TargetCanvas: TCanvas; R: TRect; const Target: TPoint; RTLOffset: Integer = 0); virtual; overload;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

PaintHeader Method

Links
PaintHeader Method, TVirtualTreeColumns Class


TVirtualTreeColumns.ReorderColumns Method
TVirtualTreeColumns Methods | TVirtualTreeColumns Class | Send Feedback

Not documented.

Pascal
procedure ReorderColumns(RTL: Boolean);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumns Methods

Links
TVirtualTreeColumns Methods, TVirtualTreeColumns Class


TVirtualTreeColumns.SaveToStream Method
TVirtualTreeColumns Methods | TVirtualTreeColumns Class | Send Feedback

Not documented.

Pascal
procedure SaveToStream(const Stream: TStream);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumns Methods

Links
TVirtualTreeColumns Methods, TVirtualTreeColumns Class


TVirtualTreeColumns.TotalWidth Method
TVirtualTreeColumns Methods | TVirtualTreeColumns Class | Send Feedback

Not documented.

Pascal
function TotalWidth: Integer;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumns Methods

Links
TVirtualTreeColumns Methods, TVirtualTreeColumns Class


TVirtualTreeColumns.Update Method
TVirtualTreeColumns Methods | TVirtualTreeColumns Class | Send Feedback

Not documented.

Pascal
procedure Update(Item: TCollectionItem); override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumns Methods

Links
TVirtualTreeColumns Methods, TVirtualTreeColumns Class


TVirtualTreeColumns.UpdatePositions Method
TVirtualTreeColumns Methods | TVirtualTreeColumns Class | Send Feedback

Recalculates the left border of every column and updates their position property according to the PostionToIndex array, which primarily determines where each column is placed visually.

Pascal
procedure UpdatePositions(Force: Boolean = False);
Group

TVirtualTreeColumns Methods

Links
TVirtualTreeColumns Methods, TVirtualTreeColumns Class


TVirtualTreeColumns Constructors
TVirtualTreeColumns Class | Methods | Legend | Send Feedback

The constructors of the TVirtualTreeColumns class are listed here.

Class

TVirtualTreeColumns Class

Legend

Constructor
public

Links
TVirtualTreeColumns Class, Methods, Legend


TVirtualTreeColumns.Create Constructor
TVirtualTreeColumns Constructors | TVirtualTreeColumns Class | Send Feedback

Not documented.

Pascal
constructor Create(AOwner: TVTHeader);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumns Constructors

Links
TVirtualTreeColumns Constructors, TVirtualTreeColumns Class


TVirtualTreeColumns Destructors
TVirtualTreeColumns Class | Methods | Legend | Send Feedback

The destructors of the TVirtualTreeColumns class are listed here.

Class

TVirtualTreeColumns Class

Legend

Destructor
public
virtual

Links
TVirtualTreeColumns Class, Methods, Legend


TVirtualTreeColumns.Destroy Destructor
TVirtualTreeColumns Destructors | TVirtualTreeColumns Class | Send Feedback

Not documented.

Pascal
destructor Destroy; override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumns Destructors

Links
TVirtualTreeColumns Destructors, TVirtualTreeColumns Class


TVirtualTreeColumns Properties
TVirtualTreeColumns Class | Properties | Legend | Send Feedback

The properties of the TVirtualTreeColumns class are listed here.

Class

TVirtualTreeColumns Class

Legend

Property
public
read only
protected

Links
TVirtualTreeColumns Class, Properties, Legend


TVirtualTreeColumns.ClickIndex Property
TVirtualTreeColumns Properties | TVirtualTreeColumns Class | Send Feedback

Not documented.

Pascal
property ClickIndex: TColumnIndex;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumns Properties

Links
TVirtualTreeColumns Properties, TVirtualTreeColumns Class


TVirtualTreeColumns.Count Property
TVirtualTreeColumns Properties | TVirtualTreeColumns Class | Send Feedback

Not documented.

Pascal
property Count: Integer;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumns Properties

Links
TVirtualTreeColumns Properties, TVirtualTreeColumns Class


TVirtualTreeColumns.DefaultWidth Property
TVirtualTreeColumns Properties | TVirtualTreeColumns Class | Send Feedback

Not documented.

Pascal
property DefaultWidth: Integer;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumns Properties

Links
TVirtualTreeColumns Properties, TVirtualTreeColumns Class


TVirtualTreeColumns.Header Property
TVirtualTreeColumns Properties | TVirtualTreeColumns Class | Send Feedback

Not documented.

Pascal
property Header: TVTHeader;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumns Properties

Links
TVirtualTreeColumns Properties, TVirtualTreeColumns Class


TVirtualTreeColumns.HeaderBitmap Property
TVirtualTreeColumns Properties | TVirtualTreeColumns Class | Send Feedback

Not documented.

Pascal
property HeaderBitmap: TBitmap;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumns Properties

Links
TVirtualTreeColumns Properties, TVirtualTreeColumns Class


TVirtualTreeColumns.Items Property
TVirtualTreeColumns Properties | TVirtualTreeColumns Class | Send Feedback

Not documented.

Pascal
property Items [Index: TColumnIndex]: TVirtualTreeColumn;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumns Properties

Links
TVirtualTreeColumns Properties, TVirtualTreeColumns Class


TVirtualTreeColumns.PositionToIndex Property
TVirtualTreeColumns Properties | TVirtualTreeColumns Class | Send Feedback

Not documented.

Pascal
property PositionToIndex: TIndexArray;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumns Properties

Links
TVirtualTreeColumns Properties, TVirtualTreeColumns Class


TVirtualTreeColumns.TrackIndex Property
TVirtualTreeColumns Properties | TVirtualTreeColumns Class | Send Feedback

Not documented.

Pascal
property TrackIndex: TColumnIndex;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeColumns Properties

Links
TVirtualTreeColumns Properties, TVirtualTreeColumns Class


TVirtualTreeHintWindow Class
Classes | Topics | TVirtualTreeHintWindow Methods | TVirtualTreeHintWindow Constructors | TVirtualTreeHintWindow Destructors | TVirtualTreeHintWindow Properties | TVirtualTreeHintWindow Constructors | TVirtualTreeHintWindow Destructors | Legend | TVirtualTreeHintWindow Methods | TVirtualTreeHintWindow Properties | Send Feedback

Internally used hint window class to support Unicode hints.

Pascal
TVirtualTreeHintWindow = class(THintWindow);
Description

TVirtualTreeHintWindow replaces Delphi's own hint window, but only for the tree controls. For the rest of the application the hint stays at it is. This means not the global HintWindowClass variable is changed but only the locally used class by properly responding to CM_HINTSHOW.

Group

Classes

Members
TVirtualTreeHintWindow Methods

ActivateHint
Not documented.
CalcHintRect
Not documented.
CreateParams
Not documented.
InternalPaint
local functions
IsHintMsg
The VCL is a bit too generous when telling that an existing hint can be cancelled.
Paint
Not documented.

Topics

TVirtualTreeHintWindow Methods
The methods of the TVirtualTreeHintWindow class are listed here.
TVirtualTreeHintWindow Constructors
The constructors of the TVirtualTreeHintWindow class are listed here.
TVirtualTreeHintWindow Destructors
The destructors of the TVirtualTreeHintWindow class are listed here.
TVirtualTreeHintWindow Properties
The properties of the TVirtualTreeHintWindow class are listed here.

TVirtualTreeHintWindow Constructors

Create
Not documented.

TVirtualTreeHintWindow Destructors

Destroy
Not documented.

TVirtualTreeHintWindow Properties

Background
Not documented.
DrawBuffer
Not documented.
HintData
Not documented.
HintWindowDestroyed
Not documented.
Target
Not documented.
TextHeight
Not documented.

Topics

TVirtualTreeHintWindow Methods
The methods of the TVirtualTreeHintWindow class are listed here.
TVirtualTreeHintWindow Constructors
The constructors of the TVirtualTreeHintWindow class are listed here.
TVirtualTreeHintWindow Destructors
The destructors of the TVirtualTreeHintWindow class are listed here.
TVirtualTreeHintWindow Properties
The properties of the TVirtualTreeHintWindow class are listed here.

TVirtualTreeHintWindow Constructors

Create
Not documented.

TVirtualTreeHintWindow Destructors

Destroy
Not documented.

Legend

Method
public
virtual
protected
Constructor
Property
read only

TVirtualTreeHintWindow Methods

ActivateHint
Not documented.
CalcHintRect
Not documented.
CreateParams
Not documented.
InternalPaint
local functions
IsHintMsg
The VCL is a bit too generous when telling that an existing hint can be cancelled.
Paint
Not documented.

TVirtualTreeHintWindow Properties

Background
Not documented.
DrawBuffer
Not documented.
HintData
Not documented.
HintWindowDestroyed
Not documented.
Target
Not documented.
TextHeight
Not documented.

Class Hierarchy
  TVirtualTreeHintWindow
File

VirtualTrees

Links
Classes, Topics, TVirtualTreeHintWindow Methods, TVirtualTreeHintWindow Constructors, TVirtualTreeHintWindow Destructors, TVirtualTreeHintWindow Properties, TVirtualTreeHintWindow Constructors, TVirtualTreeHintWindow Destructors, Legend, TVirtualTreeHintWindow Methods, TVirtualTreeHintWindow Properties


TVirtualTreeHintWindow Methods
TVirtualTreeHintWindow Class | Methods | Legend | Send Feedback

The methods of the TVirtualTreeHintWindow class are listed here.

Class

TVirtualTreeHintWindow Class

Legend

Method
public
virtual
protected

Links
TVirtualTreeHintWindow Class, Methods, Legend


TVirtualTreeHintWindow.ActivateHint Method
TVirtualTreeHintWindow Methods | TVirtualTreeHintWindow Class | Send Feedback

Not documented.

Pascal
procedure ActivateHint(Rect: TRect; const AHint: string); override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeHintWindow Methods

Links
TVirtualTreeHintWindow Methods, TVirtualTreeHintWindow Class


TVirtualTreeHintWindow.CalcHintRect Method
TVirtualTreeHintWindow Methods | TVirtualTreeHintWindow Class | Send Feedback

Not documented.

Pascal
function CalcHintRect(MaxWidth: Integer; const AHint: string; AData: Pointer): TRect; override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeHintWindow Methods

Links
TVirtualTreeHintWindow Methods, TVirtualTreeHintWindow Class


TVirtualTreeHintWindow.CreateParams Method
TVirtualTreeHintWindow Methods | TVirtualTreeHintWindow Class | Send Feedback

Not documented.

Pascal
procedure CreateParams(var Params: TCreateParams); override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeHintWindow Methods

Links
TVirtualTreeHintWindow Methods, TVirtualTreeHintWindow Class


TVirtualTreeHintWindow.InternalPaint Method
TVirtualTreeHintWindow Methods | TVirtualTreeHintWindow Class | Send Feedback

local functions

Pascal
procedure InternalPaint(Step: Integer; StepSize: Integer);
Group

TVirtualTreeHintWindow Methods

Links
TVirtualTreeHintWindow Methods, TVirtualTreeHintWindow Class


TVirtualTreeHintWindow.IsHintMsg Method
TVirtualTreeHintWindow Methods | TVirtualTreeHintWindow Class | Send Feedback

The VCL is a bit too generous when telling that an existing hint can be cancelled.

Pascal
function IsHintMsg(var Msg: TMsg): Boolean; override;
Description

Need to specify further here.

Group

TVirtualTreeHintWindow Methods

Links
TVirtualTreeHintWindow Methods, TVirtualTreeHintWindow Class


TVirtualTreeHintWindow.Paint Method
TVirtualTreeHintWindow Methods | TVirtualTreeHintWindow Class | Send Feedback

Not documented.

Pascal
procedure Paint; override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeHintWindow Methods

Links
TVirtualTreeHintWindow Methods, TVirtualTreeHintWindow Class


TVirtualTreeHintWindow Constructors
TVirtualTreeHintWindow Class | Methods | Legend | Send Feedback

The constructors of the TVirtualTreeHintWindow class are listed here.

Class

TVirtualTreeHintWindow Class

Legend

Constructor
public
virtual

Links
TVirtualTreeHintWindow Class, Methods, Legend


TVirtualTreeHintWindow.Create Constructor
TVirtualTreeHintWindow Constructors | TVirtualTreeHintWindow Class | Send Feedback

Not documented.

Pascal
constructor Create(AOwner: TComponent); override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeHintWindow Constructors

Links
TVirtualTreeHintWindow Constructors, TVirtualTreeHintWindow Class


TVirtualTreeHintWindow Destructors
TVirtualTreeHintWindow Class | Methods | Legend | Send Feedback

The destructors of the TVirtualTreeHintWindow class are listed here.

Class

TVirtualTreeHintWindow Class

Legend

Destructor
public
virtual

Links
TVirtualTreeHintWindow Class, Methods, Legend


TVirtualTreeHintWindow.Destroy Destructor
TVirtualTreeHintWindow Destructors | TVirtualTreeHintWindow Class | Send Feedback

Not documented.

Pascal
destructor Destroy; override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeHintWindow Destructors

Links
TVirtualTreeHintWindow Destructors, TVirtualTreeHintWindow Class


TVirtualTreeHintWindow Properties
TVirtualTreeHintWindow Class | Properties | Legend | Send Feedback

The properties of the TVirtualTreeHintWindow class are listed here.

Class

TVirtualTreeHintWindow Class

Legend

Property
protected
read only

Links
TVirtualTreeHintWindow Class, Properties, Legend


TVirtualTreeHintWindow.Background Property
TVirtualTreeHintWindow Properties | TVirtualTreeHintWindow Class | Send Feedback

Not documented.

Pascal
property Background: TBitmap;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeHintWindow Properties

Links
TVirtualTreeHintWindow Properties, TVirtualTreeHintWindow Class


TVirtualTreeHintWindow.DrawBuffer Property
TVirtualTreeHintWindow Properties | TVirtualTreeHintWindow Class | Send Feedback

Not documented.

Pascal
property DrawBuffer: TBitmap;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeHintWindow Properties

Links
TVirtualTreeHintWindow Properties, TVirtualTreeHintWindow Class


TVirtualTreeHintWindow.HintData Property
TVirtualTreeHintWindow Properties | TVirtualTreeHintWindow Class | Send Feedback

Not documented.

Pascal
property HintData: TVTHintData;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeHintWindow Properties

Links
TVirtualTreeHintWindow Properties, TVirtualTreeHintWindow Class


TVirtualTreeHintWindow.HintWindowDestroyed Property
TVirtualTreeHintWindow Properties | TVirtualTreeHintWindow Class | Send Feedback

Not documented.

Pascal
property HintWindowDestroyed: Boolean;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeHintWindow Properties

Links
TVirtualTreeHintWindow Properties, TVirtualTreeHintWindow Class


TVirtualTreeHintWindow.Target Property
TVirtualTreeHintWindow Properties | TVirtualTreeHintWindow Class | Send Feedback

Not documented.

Pascal
property Target: TBitmap;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeHintWindow Properties

Links
TVirtualTreeHintWindow Properties, TVirtualTreeHintWindow Class


TVirtualTreeHintWindow.TextHeight Property
TVirtualTreeHintWindow Properties | TVirtualTreeHintWindow Class | Send Feedback

Not documented.

Pascal
property TextHeight: Integer;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeHintWindow Properties

Links
TVirtualTreeHintWindow Properties, TVirtualTreeHintWindow Class


TVirtualTreeOptions Class
Classes | Topics | TVirtualTreeOptions Properties | TCustomVirtualTreeOptions Constructors | Legend | TCustomVirtualTreeOptions Methods | TCustomVirtualTreeOptions Properties | Send Feedback

Collects all binary options of the tree control into one place for easier access.

Pascal
TVirtualTreeOptions = class(TCustomVirtualTreeOptions);
Description

TVirtualTreeOptions does not add any new functionality to TCustomVirtualTreeOptions but is the publicly available class.

Group

Classes

Members
TCustomVirtualTreeOptions Methods

AssignTo
Used to copy this option class to another option collection.

Topics

TCustomVirtualTreeOptions Methods
The methods of the TCustomVirtualTreeOptions class are listed here.
TCustomVirtualTreeOptions Constructors
The constructors of the TCustomVirtualTreeOptions class are listed here.
TCustomVirtualTreeOptions Properties
The properties of the TCustomVirtualTreeOptions class are listed here.

TVirtualTreeOptions Class

TVirtualTreeOptions Properties
The properties of the TVirtualTreeOptions class are listed here.

TCustomVirtualTreeOptions Constructors

Create
Constructor of the class.

TCustomVirtualTreeOptions Properties

AnimationOptions
Options related to animations.
AutoOptions
Options related to automatic actions.
ExportMode
Not documented.
MiscOptions
Options not related to any other category.
Owner
Owner tree to which the property class belongs.
PaintOptions
Options related to painting.
SelectionOptions
Options related to the way nodes can be selected.

TVirtualTreeOptions Class

AnimationOptions
Options related to animations.
AutoOptions
Options related to automatic actions.
ExportMode
Not documented.
MiscOptions
Options not related to any other category.
PaintOptions
Options related to painting.
SelectionOptions
Options related to the way nodes can be selected.

Topics

TCustomVirtualTreeOptions Methods
The methods of the TCustomVirtualTreeOptions class are listed here.
TCustomVirtualTreeOptions Constructors
The constructors of the TCustomVirtualTreeOptions class are listed here.
TCustomVirtualTreeOptions Properties
The properties of the TCustomVirtualTreeOptions class are listed here.

TVirtualTreeOptions Class

TVirtualTreeOptions Properties
The properties of the TVirtualTreeOptions class are listed here.

TCustomVirtualTreeOptions Constructors

Create
Constructor of the class.

Legend

Method
public
virtual
Constructor
Property
protected
read only
published

TCustomVirtualTreeOptions Methods

AssignTo
Used to copy this option class to another option collection.

TCustomVirtualTreeOptions Properties

AnimationOptions
Options related to animations.
AutoOptions
Options related to automatic actions.
ExportMode
Not documented.
MiscOptions
Options not related to any other category.
Owner
Owner tree to which the property class belongs.
PaintOptions
Options related to painting.
SelectionOptions
Options related to the way nodes can be selected.

TVirtualTreeOptions Class

AnimationOptions
Options related to animations.
AutoOptions
Options related to automatic actions.
ExportMode
Not documented.
MiscOptions
Options not related to any other category.
PaintOptions
Options related to painting.
SelectionOptions
Options related to the way nodes can be selected.

Class Hierarchy
  TVirtualTreeOptionsTVirtualTreeOptions
File

VirtualTrees

Links
Classes, Topics, TVirtualTreeOptions Properties, TCustomVirtualTreeOptions Constructors, Legend, TCustomVirtualTreeOptions Methods, TCustomVirtualTreeOptions Properties


TVirtualTreeOptions Properties
TVirtualTreeOptions Class | Properties | Legend | Send Feedback

The properties of the TVirtualTreeOptions class are listed here.

Class

TVirtualTreeOptions Class

Legend

Property
published

Links
TVirtualTreeOptions Class, Properties, Legend


TVirtualTreeOptions.AnimationOptions Property
TVirtualTreeOptions Properties | TVirtualTreeOptions Class | Send Feedback

Options related to animations.

Pascal
property AnimationOptions: TVTAnimationOptions;
Description

These options can be used to switch certain animation effects in a tree.

Group

TVirtualTreeOptions Properties

Links
TVirtualTreeOptions Properties, TVirtualTreeOptions Class


TVirtualTreeOptions.AutoOptions Property
TVirtualTreeOptions Properties | TVirtualTreeOptions Class | Send Feedback

Options related to automatic actions.

Pascal
property AutoOptions: TVTAutoOptions;
Description

These options can be used to switch certain actions in a tree which happen automatically under certain circumstances.

Group

TVirtualTreeOptions Properties

Links
TVirtualTreeOptions Properties, TVirtualTreeOptions Class


TVirtualTreeOptions.ExportMode Property
TVirtualTreeOptions Properties | TVirtualTreeOptions Class | Send Feedback

Not documented.

Pascal
property ExportMode: TVTExportMode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVirtualTreeOptions Properties

Links
TVirtualTreeOptions Properties, TVirtualTreeOptions Class


TVirtualTreeOptions.MiscOptions Property
TVirtualTreeOptions Properties | TVirtualTreeOptions Class | Send Feedback

Options not related to any other category.

Pascal
property MiscOptions: TVTMiscOptions;
Description

These options can be used to switch miscellanous aspects in a tree.

Group

TVirtualTreeOptions Properties

Links
TVirtualTreeOptions Properties, TVirtualTreeOptions Class


TVirtualTreeOptions.PaintOptions Property
TVirtualTreeOptions Properties | TVirtualTreeOptions Class | Send Feedback

Options related to painting.

Pascal
property PaintOptions: TVTPaintOptions;
Description

These options can be used to switch visual aspects of a tree.

Group

TVirtualTreeOptions Properties

Links
TVirtualTreeOptions Properties, TVirtualTreeOptions Class


TVirtualTreeOptions.SelectionOptions Property
TVirtualTreeOptions Properties | TVirtualTreeOptions Class | Send Feedback

Options related to the way nodes can be selected.

Pascal
property SelectionOptions: TVTSelectionOptions;
Description

These options can be used to switch the way how nodes can be selected in a tree.

Group

TVirtualTreeOptions Properties

Links
TVirtualTreeOptions Properties, TVirtualTreeOptions Class


TVTColors Class
Classes | Topics | TVTColors Methods | TVTColors Constructors | TVTColors Properties | TVTColors Constructors | Legend | TVTColors Methods | TVTColors Properties | Send Feedback

Collects all color related options for the tree control.

Pascal
TVTColors = class(TPersistent);
Description

TVTColors makes it much more conventient to adjust Virtual Treeview's colors. Since everything is in one place you can also easily compare all colors.

Group

Classes

Members
TVTColors Methods

Assign
Not documented.

Topics

TVTColors Methods
The methods of the TVTColors class are listed here.
TVTColors Constructors
The constructors of the TVTColors class are listed here.
TVTColors Properties
The properties of the TVTColors class are listed here.

TVTColors Constructors

Create
Not documented.

TVTColors Properties

BorderColor
Not documented.
DisabledColor
Not documented.
DropMarkColor
Color of the drop mark.
DropTargetBorderColor
Not documented.
DropTargetColor
Not documented.
FocusedSelectionBorderColor
Not documented.
FocusedSelectionColor
Not documented.
GridLineColor
Not documented.
HeaderHotColor
Not documented.
HotColor
Not documented.
SelectionRectangleBlendColor
Not documented.
SelectionRectangleBorderColor
Not documented.
SelectionTextColor
Not documented.
TreeLineColor
Not documented.
UnfocusedSelectionBorderColor
Not documented.
UnfocusedSelectionColor
Not documented.

Topics

TVTColors Methods
The methods of the TVTColors class are listed here.
TVTColors Constructors
The constructors of the TVTColors class are listed here.
TVTColors Properties
The properties of the TVTColors class are listed here.

TVTColors Constructors

Create
Not documented.

Legend

Method
public
virtual
Constructor
Property
published

TVTColors Methods

Assign
Not documented.

TVTColors Properties

BorderColor
Not documented.
DisabledColor
Not documented.
DropMarkColor
Color of the drop mark.
DropTargetBorderColor
Not documented.
DropTargetColor
Not documented.
FocusedSelectionBorderColor
Not documented.
FocusedSelectionColor
Not documented.
GridLineColor
Not documented.
HeaderHotColor
Not documented.
HotColor
Not documented.
SelectionRectangleBlendColor
Not documented.
SelectionRectangleBorderColor
Not documented.
SelectionTextColor
Not documented.
TreeLineColor
Not documented.
UnfocusedSelectionBorderColor
Not documented.
UnfocusedSelectionColor
Not documented.

Class Hierarchy
  TVTColors
File

VirtualTrees

Links
Classes, Topics, TVTColors Methods, TVTColors Constructors, TVTColors Properties, TVTColors Constructors, Legend, TVTColors Methods, TVTColors Properties


TVTColors Methods
TVTColors Class | Methods | Legend | Send Feedback

The methods of the TVTColors class are listed here.

Class

TVTColors Class

Legend

Method
public
virtual

Links
TVTColors Class, Methods, Legend
What do you think about this topic? Send feedback!


TVTColors.Assign Method
TVTColors Methods | TVTColors Class | Send Feedback

Not documented.

Pascal
procedure Assign(Source: TPersistent); override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTColors Methods

Links
TVTColors Methods, TVTColors Class
What do you think about this topic? Send feedback!


TVTColors Constructors
TVTColors Class | Methods | Legend | Send Feedback

The constructors of the TVTColors class are listed here.

Class

TVTColors Class

Legend

Constructor
public

Links
TVTColors Class, Methods, Legend
What do you think about this topic? Send feedback!


TVTColors.Create Constructor
TVTColors Constructors | TVTColors Class | Send Feedback

Not documented.

Pascal
constructor Create(AOwner: TBaseVirtualTree);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTColors Constructors

Links
TVTColors Constructors, TVTColors Class
What do you think about this topic? Send feedback!


TVTColors Properties
TVTColors Class | Properties | Legend | Send Feedback

The properties of the TVTColors class are listed here.

Class

TVTColors Class

Legend

Property
published

Links
TVTColors Class, Properties, Legend
What do you think about this topic? Send feedback!


TVTColors.BorderColor Property
TVTColors Properties | TVTColors Class | Send Feedback

Not documented.

Pascal
property BorderColor: TColor;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTColors Properties

Links
TVTColors Properties, TVTColors Class
What do you think about this topic? Send feedback!


TVTColors.DisabledColor Property
TVTColors Properties | TVTColors Class | Send Feedback

Not documented.

Pascal
property DisabledColor: TColor;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTColors Properties

Links
TVTColors Properties, TVTColors Class
What do you think about this topic? Send feedback!


TVTColors.DropMarkColor Property
TVTColors Properties | TVTColors Class | Send Feedback

Color of the drop mark.

Pascal
property DropMarkColor: TColor;
Description

Since the drop metapher has been extended to include dropping on node, above a node or below a node (e.g. to determine adding as child, previous sibling or next sibling) there must be an indication where the node would actually be placed when it would be dropped. This indication is the drop mark, whose color can be set via the DropMarkColor property.

Group

TVTColors Properties

Links
TVTColors Properties, TVTColors Class
What do you think about this topic? Send feedback!


TVTColors.DropTargetBorderColor Property
TVTColors Properties | TVTColors Class | Send Feedback

Not documented.

Pascal
property DropTargetBorderColor: TColor;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTColors Properties

Links
TVTColors Properties, TVTColors Class
What do you think about this topic? Send feedback!


TVTColors.DropTargetColor Property
TVTColors Properties | TVTColors Class | Send Feedback

Not documented.

Pascal
property DropTargetColor: TColor;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTColors Properties

Links
TVTColors Properties, TVTColors Class
What do you think about this topic? Send feedback!


TVTColors.FocusedSelectionBorderColor Property
TVTColors Properties | TVTColors Class | Send Feedback

Not documented.

Pascal
property FocusedSelectionBorderColor: TColor;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTColors Properties

Links
TVTColors Properties, TVTColors Class
What do you think about this topic? Send feedback!


TVTColors.FocusedSelectionColor Property
TVTColors Properties | TVTColors Class | Send Feedback

Not documented.

Pascal
property FocusedSelectionColor: TColor;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTColors Properties

Links
TVTColors Properties, TVTColors Class
What do you think about this topic? Send feedback!


TVTColors.GridLineColor Property
TVTColors Properties | TVTColors Class | Send Feedback

Not documented.

Pascal
property GridLineColor: TColor;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTColors Properties

Links
TVTColors Properties, TVTColors Class
What do you think about this topic? Send feedback!


TVTColors.HeaderHotColor Property
TVTColors Properties | TVTColors Class | Send Feedback

Not documented.

Pascal
property HeaderHotColor: TColor;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTColors Properties

Links
TVTColors Properties, TVTColors Class
What do you think about this topic? Send feedback!


TVTColors.HotColor Property
TVTColors Properties | TVTColors Class | Send Feedback

Not documented.

Pascal
property HotColor: TColor;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTColors Properties

Links
TVTColors Properties, TVTColors Class
What do you think about this topic? Send feedback!


TVTColors.SelectionRectangleBlendColor Property
TVTColors Properties | TVTColors Class | Send Feedback

Not documented.

Pascal
property SelectionRectangleBlendColor: TColor;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTColors Properties

Links
TVTColors Properties, TVTColors Class
What do you think about this topic? Send feedback!


TVTColors.SelectionRectangleBorderColor Property
TVTColors Properties | TVTColors Class | Send Feedback

Not documented.

Pascal
property SelectionRectangleBorderColor: TColor;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTColors Properties

Links
TVTColors Properties, TVTColors Class
What do you think about this topic? Send feedback!


TVTColors.SelectionTextColor Property
TVTColors Properties | TVTColors Class | Send Feedback

Not documented.

Pascal
property SelectionTextColor: TColor;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTColors Properties

Links
TVTColors Properties, TVTColors Class
What do you think about this topic? Send feedback!


TVTColors.TreeLineColor Property
TVTColors Properties | TVTColors Class | Send Feedback

Not documented.

Pascal
property TreeLineColor: TColor;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTColors Properties

Links
TVTColors Properties, TVTColors Class
What do you think about this topic? Send feedback!


TVTColors.UnfocusedSelectionBorderColor Property
TVTColors Properties | TVTColors Class | Send Feedback

Not documented.

Pascal
property UnfocusedSelectionBorderColor: TColor;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTColors Properties

Links
TVTColors Properties, TVTColors Class
What do you think about this topic? Send feedback!


TVTColors.UnfocusedSelectionColor Property
TVTColors Properties | TVTColors Class | Send Feedback

Not documented.

Pascal
property UnfocusedSelectionColor: TColor;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTColors Properties

Links
TVTColors Properties, TVTColors Class
What do you think about this topic? Send feedback!


TVTDataObject Class
Classes | Topics | TVTDataObject Methods | TVTDataObject Constructors | TVTDataObject Destructors | TVTDataObject Properties | TVTDataObject Constructors | TVTDataObject Destructors | Legend | TVTDataObject Methods | TVTDataObject Properties | Send Feedback

Implementation of an IDataObject interface.

Pascal
TVTDataObject = class(TInterfacedObject, IDataObject);
Description

This class is used for OLE drag'n drop and clipboard operations. It allows not only to transfer various kinds of data between trees but also to transfer this data between different processes. Additionally, every OLE aware application (like Word) can take part in the data transfer. This makes it easy to copy some of the tree's content for documentation purposes.

Group

Classes

Members
TVTDataObject Methods

CanonicalIUnknown
Helper method for setting data in the IDataObject.
DAdvise
Implementation of the IDataObject.DAdvise method.
DUnadvise
Implementation of the IDataObject.DUnAdvise method.
EnumDAdvise
Implementation of the IDataObject.EnumDAdvise method.
EnumFormatEtc
Implementation of the IDataObject.EnumFormatEtc method.
EqualFormatEtc
Compares two TFormatEtc structures.
FindFormatEtc
Searchs the given array for a the given format.
FindInternalStgMedium
Returns a storage medium for a given clipboard format.
GetCanonicalFormatEtc
Implementation of the IDataObject.GetCanonicalFormatEtc method.
GetData
Implementation of the IDataObject.GetData method.
GetDataHere
Implementation of the IDataObject.GetDataHere method.
HGlobalClone
Helper method for SetData.
QueryGetData
Implementation of the IDataObject.QueryGetData method.
RenderInternalOLEData
Helper method to return data previously stored by SetData.
SetData
Implementation of the IDataObject.SetData method.
StgMediumIncRef
Central managing method to copy OLE data.

Topics

TVTDataObject Methods
The methods of the TVTDataObject class are listed here.
TVTDataObject Constructors
The constructors of the TVTDataObject class are listed here.
TVTDataObject Destructors
The destructors of the TVTDataObject class are listed here.
TVTDataObject Properties
The properties of the TVTDataObject class are listed here.

TVTDataObject Constructors

Create
Constructor of the class.

TVTDataObject Destructors

Destroy
Destructor of the class.

TVTDataObject Properties

ForClipboard
Not documented.
FormatEtcArray
Not documented.
InternalStgMediumArray
Not documented.
Owner
Not documented.

Topics

TVTDataObject Methods
The methods of the TVTDataObject class are listed here.
TVTDataObject Constructors
The constructors of the TVTDataObject class are listed here.
TVTDataObject Destructors
The destructors of the TVTDataObject class are listed here.
TVTDataObject Properties
The properties of the TVTDataObject class are listed here.

TVTDataObject Constructors

Create
Constructor of the class.

TVTDataObject Destructors

Destroy
Destructor of the class.

Legend

Method
protected
public
virtual
Constructor
Property
read only

TVTDataObject Methods

CanonicalIUnknown
Helper method for setting data in the IDataObject.
DAdvise
Implementation of the IDataObject.DAdvise method.
DUnadvise
Implementation of the IDataObject.DUnAdvise method.
EnumDAdvise
Implementation of the IDataObject.EnumDAdvise method.
EnumFormatEtc
Implementation of the IDataObject.EnumFormatEtc method.
EqualFormatEtc
Compares two TFormatEtc structures.
FindFormatEtc
Searchs the given array for a the given format.
FindInternalStgMedium
Returns a storage medium for a given clipboard format.
GetCanonicalFormatEtc
Implementation of the IDataObject.GetCanonicalFormatEtc method.
GetData
Implementation of the IDataObject.GetData method.
GetDataHere
Implementation of the IDataObject.GetDataHere method.
HGlobalClone
Helper method for SetData.
QueryGetData
Implementation of the IDataObject.QueryGetData method.
RenderInternalOLEData
Helper method to return data previously stored by SetData.
SetData
Implementation of the IDataObject.SetData method.
StgMediumIncRef
Central managing method to copy OLE data.

TVTDataObject Properties

ForClipboard
Not documented.
FormatEtcArray
Not documented.
InternalStgMediumArray
Not documented.
Owner
Not documented.

Class Hierarchy
  TVTDataObject
File

VirtualTrees

Links
Classes, Topics, TVTDataObject Methods, TVTDataObject Constructors, TVTDataObject Destructors, TVTDataObject Properties, TVTDataObject Constructors, TVTDataObject Destructors, Legend, TVTDataObject Methods, TVTDataObject Properties


TVTDataObject Methods
TVTDataObject Class | Methods | Legend | Send Feedback

The methods of the TVTDataObject class are listed here.

Class

TVTDataObject Class

Legend

Method
protected
public
virtual

Links
TVTDataObject Class, Methods, Legend
What do you think about this topic? Send feedback!


TVTDataObject.CanonicalIUnknown Method
TVTDataObject Methods | TVTDataObject Class | Send Feedback

Helper method for setting data in the IDataObject.

Pascal
function CanonicalIUnknown(TestUnknown: IUnknown): IUnknown;
Description

In SetData the class can get a circular reference if the client calls GetData then calls SetData with the same StgMedium. Because the unkForRelease for the IDataObject can be marshalled it is necessary to get pointers that can be correctly compared. CanonicalIUknown uses COM object identity for this task. An explicit call to the IUnknown::QueryInterface method, requesting the IUnknown interface, will always return the same pointer. See the IDragSourceHelper article by Raymond Chen at MSDN.

Group

TVTDataObject Methods

Links
TVTDataObject Methods, TVTDataObject Class


TVTDataObject.DAdvise Method
TVTDataObject Methods | TVTDataObject Class | Send Feedback

Implementation of the IDataObject.DAdvise method.

Pascal
function DAdvise(const FormatEtc: TFormatEtc; advf: Integer; const advSink: IAdviseSink; out dwConnection: Integer): HResult; virtual; stdcall;
Description

Advise sinks are used to have an opportunity for clients to get notified if something changes in the data object. TVTDataObject uses the data advise holder APIs to provide the advise sink service.

Group

TVTDataObject Methods

Links
TVTDataObject Methods, TVTDataObject Class


TVTDataObject.DUnadvise Method
TVTDataObject Methods | TVTDataObject Class | Send Feedback

Implementation of the IDataObject.DUnAdvise method.

Pascal
function DUnadvise(dwConnection: Integer): HResult; virtual; stdcall;
Description

DUnadvice reverses the call to DAdvise.

Group

TVTDataObject Methods

Links
TVTDataObject Methods, TVTDataObject Class


TVTDataObject.EnumDAdvise Method
TVTDataObject Methods | TVTDataObject Class | Send Feedback

Implementation of the IDataObject.EnumDAdvise method.

Pascal
function EnumDAdvise(out enumAdvise: IEnumStatData): HResult; virtual; stdcall;
Description

EnumDAdvice does nothing but forwards the call to the internal advise holder class, which the responds accordingly. That's why we use data advise holders after all.

Group

TVTDataObject Methods

Links
TVTDataObject Methods, TVTDataObject Class


TVTDataObject.EnumFormatEtc Method
TVTDataObject Methods | TVTDataObject Class | Send Feedback

Implementation of the IDataObject.EnumFormatEtc method.

Pascal
function EnumFormatEtc(Direction: Integer; out EnumFormatEtc: IEnumFormatEtc): HResult; virtual; stdcall;
Description

This method creates a FormatEtc enumerator class which is used to enumerate all data formats supported by the owner tree.

Group

TVTDataObject Methods

Links
TVTDataObject Methods, TVTDataObject Class


TVTDataObject.EqualFormatEtc Method
TVTDataObject Methods | TVTDataObject Class | Send Feedback

Compares two TFormatEtc structures.

Pascal
function EqualFormatEtc(FormatEtc1: TFormatEtc; FormatEtc2: TFormatEtc): Boolean;
Description

Returns true if both records are considered the same. That means if they have at least one common storage format and all other entries have the same values.

Group

TVTDataObject Methods

Links
TVTDataObject Methods, TVTDataObject Class


TVTDataObject.FindFormatEtc Method
TVTDataObject Methods | TVTDataObject Class | Send Feedback

Searchs the given array for a the given format.

Pascal
function FindFormatEtc(TestFormatEtc: TFormatEtc; const FormatEtcArray: TFormatEtcArray): integer;
Description

Returns true if the given format is part of the array.

Group

TVTDataObject Methods

Links
TVTDataObject Methods, TVTDataObject Class


TVTDataObject.FindInternalStgMedium Method
TVTDataObject Methods | TVTDataObject Class | Send Feedback

Returns a storage medium for a given clipboard format.

Pascal
function FindInternalStgMedium(Format: TClipFormat): PStgMedium;
Description

The class keeps an internal list of clipboard format/storage medium relations. For some operations data is set in certain formats which is later retrieve by locating it using this method.

Group

TVTDataObject Methods

Links
TVTDataObject Methods, TVTDataObject Class


TVTDataObject.GetCanonicalFormatEtc Method
TVTDataObject Methods | TVTDataObject Class | Send Feedback

Implementation of the IDataObject.GetCanonicalFormatEtc method.

Pascal
function GetCanonicalFormatEtc(const FormatEtc: TFormatEtc; out FormatEtcOut: TFormatEtc): HResult; virtual; stdcall;
Description

The implementation of this method simply consists of a result value telling the caller to use the EnumFormatEtc method.

Group

TVTDataObject Methods

Links
TVTDataObject Methods, TVTDataObject Class


TVTDataObject.GetData Method
TVTDataObject Methods | See Also | TVTDataObject Class | Send Feedback

Implementation of the IDataObject.GetData method.

Pascal
function GetData(const FormatEtcIn: TFormatEtc; out Medium: TStgMedium): HResult; virtual; stdcall;
Description

Whenever drag'n drop or clipboard data actually needs to be rendered then this method is called by the OLE subsystem. The class automatically returns the CF_VTREFERENCE format and any data previously set by the SetData method (e.g. by the Shell). For any other format the owner tree is asked to render the OLE data.

See Also

RenderOLEData

Group

TVTDataObject Methods

Links
TVTDataObject Methods, See Also, TVTDataObject Class


TVTDataObject.GetDataHere Method
TVTDataObject Methods | TVTDataObject Class | Send Feedback

Implementation of the IDataObject.GetDataHere method.

Pascal
function GetDataHere(const FormatEtc: TFormatEtc; out Medium: TStgMedium): HResult; virtual; stdcall;
Description

GetDataHere is an alternative data retrival method to GetData, but the caller provides the storage place where to store the actual data. Since Virtual Treeview has a very limited spectrum of what it can use this method is not fully implmented.

Group

TVTDataObject Methods

Links
TVTDataObject Methods, TVTDataObject Class


TVTDataObject.HGlobalClone Method
TVTDataObject Methods | TVTDataObject Class | Send Feedback

Helper method for SetData.

Pascal
function HGlobalClone(HGlobal: THandle): THandle;
Description

This method copies a HGlobal memory block.

Group

TVTDataObject Methods

Links
TVTDataObject Methods, TVTDataObject Class


TVTDataObject.QueryGetData Method
TVTDataObject Methods | TVTDataObject Class | Send Feedback

Implementation of the IDataObject.QueryGetData method.

Pascal
function QueryGetData(const FormatEtc: TFormatEtc): HResult; virtual; stdcall;
Description

This method is called by OLE subsystem to determine which data formats are offered by the owner tree. It uses the internal clipboard format list to get a list of available and allowed formats. Currently following formats are supported:

TBaseVirtualTree

  • Virtual Treeview reference and process identifier
  • native serialized tree data

TCustomVirtualStringTree

  • generic Unicode text
  • generic ANSI text
  • HTML formatted text (UTF-8 format)
  • RTF text (UTF-16 format)
  • CSV (comma separated values) but with customizable separators
Group

TVTDataObject Methods

Links
TVTDataObject Methods, TVTDataObject Class


TVTDataObject.RenderInternalOLEData Method
TVTDataObject Methods | TVTDataObject Class | Send Feedback

Helper method to return data previously stored by SetData.

Pascal
function RenderInternalOLEData(const FormatEtcIn: TFormatEtc; var Medium: TStgMedium; var OLEResult: HResult): Boolean;
Description

For some operations (e.g. shell transfers with IDropTargetHelper interface) data is stored in the class. RenderInternalOLEData returns this data when queried later.

Group

TVTDataObject Methods

Links
TVTDataObject Methods, TVTDataObject Class


TVTDataObject.SetData Method
TVTDataObject Methods | TVTDataObject Class | Send Feedback

Implementation of the IDataObject.SetData method.

Pascal
function SetData(const FormatEtc: TFormatEtc; var Medium: TStgMedium; DoRelease: BOOL): HResult; virtual; stdcall;
Description

This method is used to add or replace data in the data object.

Group

TVTDataObject Methods

Links
TVTDataObject Methods, TVTDataObject Class


TVTDataObject.StgMediumIncRef Method
TVTDataObject Methods | TVTDataObject Class | Send Feedback

Central managing method to copy OLE data.

Pascal
function StgMediumIncRef(const InStgMedium: TStgMedium; var OutStgMedium: TStgMedium; CopyInMedium: Boolean; DataObject: IDataObject): HRESULT;
Description

This method is called when data must be copied from or to the data object. For each supported storage medium a different (and appropriate) action is taken.

Group

TVTDataObject Methods

Links
TVTDataObject Methods, TVTDataObject Class


TVTDataObject Constructors
TVTDataObject Class | Methods | Legend | Send Feedback

The constructors of the TVTDataObject class are listed here.

Class

TVTDataObject Class

Legend

Constructor
public
virtual

Links
TVTDataObject Class, Methods, Legend
What do you think about this topic? Send feedback!


TVTDataObject.Create Constructor
TVTDataObject Constructors | TVTDataObject Class | Send Feedback

Constructor of the class.

Pascal
constructor Create(AOwner: TBaseVirtualTree; ForClipboard: Boolean); virtual;
Description

Create is used only for initialization.

Group

TVTDataObject Constructors

Links
TVTDataObject Constructors, TVTDataObject Class


TVTDataObject Destructors
TVTDataObject Class | Methods | Legend | Send Feedback

The destructors of the TVTDataObject class are listed here.

Class

TVTDataObject Class

Legend

Destructor
public
virtual

Links
TVTDataObject Class, Methods, Legend
What do you think about this topic? Send feedback!


TVTDataObject.Destroy Destructor
TVTDataObject Destructors | TVTDataObject Class | Send Feedback

Destructor of the class.

Pascal
destructor Destroy; override;
Description

Cleans up the object.

Group

TVTDataObject Destructors

Links
TVTDataObject Destructors, TVTDataObject Class


TVTDataObject Properties
TVTDataObject Class | Properties | Legend | Send Feedback

The properties of the TVTDataObject class are listed here.

Class

TVTDataObject Class

Legend

Property
protected
read only

Links
TVTDataObject Class, Properties, Legend
What do you think about this topic? Send feedback!


TVTDataObject.ForClipboard Property
TVTDataObject Properties | TVTDataObject Class | Send Feedback

Not documented.

Pascal
property ForClipboard: Boolean;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTDataObject Properties

Links
TVTDataObject Properties, TVTDataObject Class


TVTDataObject.FormatEtcArray Property
TVTDataObject Properties | TVTDataObject Class | Send Feedback

Not documented.

Pascal
property FormatEtcArray: TFormatEtcArray;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTDataObject Properties

Links
TVTDataObject Properties, TVTDataObject Class


TVTDataObject.InternalStgMediumArray Property
TVTDataObject Properties | TVTDataObject Class | Send Feedback

Not documented.

Pascal
property InternalStgMediumArray: TInternalStgMediumArray;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTDataObject Properties

Links
TVTDataObject Properties, TVTDataObject Class


TVTDataObject.Owner Property
TVTDataObject Properties | TVTDataObject Class | Send Feedback

Not documented.

Pascal
property Owner: TBaseVirtualTree;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTDataObject Properties

Links
TVTDataObject Properties, TVTDataObject Class


TVTDragImage Class
Classes | Topics | TVTDragImage Methods | TVTDragImage Constructors | TVTDragImage Destructors | TVTDragImage Properties | TVTDragImage Constructors | TVTDragImage Destructors | Legend | TVTDragImage Methods | TVTDragImage Properties | Send Feedback

Not documented.

Pascal
TVTDragImage = class;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Classes

Members
TVTDragImage Methods

DragTo
Moves the drag image to a new position, which is determined from the passed point P and the previous mouse position.
EndDrag
Not documented.
GetDragImageRect
Returns the current size and position of the drag image (screen coordinates).
HideDragImage
Not documented.
InternalShowDragImage
Frequently called helper routine to actually do the blend and put it onto
MakeAlphaChannel
Not documented.
PrepareDrag
Creates all necessary structures to do alpha blended dragging using the given image.
RecaptureBackground
Notification by the drop target tree to update the background image because something in the tree has changed.
ShowDragImage
Shows the drag image after it has been hidden by HideDragImage.
WillMove
Add a summary here...

Topics

TVTDragImage Methods
The methods of the TVTDragImage class are listed here.
TVTDragImage Constructors
The constructors of the TVTDragImage class are listed here.
TVTDragImage Destructors
The destructors of the TVTDragImage class are listed here.
TVTDragImage Properties
The properties of the TVTDragImage class are listed here.

TVTDragImage Constructors

Create
Not documented.

TVTDragImage Destructors

Destroy
Not documented.

TVTDragImage Properties

ColorKey
Not documented.
Fade
Not documented.
MoveRestriction
Not documented.
PostBlendBias
Not documented.
PreBlendBias
Not documented.
Transparency
Not documented.
Visible
Not documented.

Topics

TVTDragImage Methods
The methods of the TVTDragImage class are listed here.
TVTDragImage Constructors
The constructors of the TVTDragImage class are listed here.
TVTDragImage Destructors
The destructors of the TVTDragImage class are listed here.
TVTDragImage Properties
The properties of the TVTDragImage class are listed here.

TVTDragImage Constructors

Create
Not documented.

TVTDragImage Destructors

Destroy
Not documented.

Legend

Method
public
protected
Constructor
virtual
Property
read only

TVTDragImage Methods

DragTo
Moves the drag image to a new position, which is determined from the passed point P and the previous mouse position.
EndDrag
Not documented.
GetDragImageRect
Returns the current size and position of the drag image (screen coordinates).
HideDragImage
Not documented.
InternalShowDragImage
Frequently called helper routine to actually do the blend and put it onto
MakeAlphaChannel
Not documented.
PrepareDrag
Creates all necessary structures to do alpha blended dragging using the given image.
RecaptureBackground
Notification by the drop target tree to update the background image because something in the tree has changed.
ShowDragImage
Shows the drag image after it has been hidden by HideDragImage.
WillMove
Add a summary here...

TVTDragImage Properties

ColorKey
Not documented.
Fade
Not documented.
MoveRestriction
Not documented.
PostBlendBias
Not documented.
PreBlendBias
Not documented.
Transparency
Not documented.
Visible
Not documented.

Class Hierarchy
  TVTDragImage
File

VirtualTrees

Links
Classes, Topics, TVTDragImage Methods, TVTDragImage Constructors, TVTDragImage Destructors, TVTDragImage Properties, TVTDragImage Constructors, TVTDragImage Destructors, Legend, TVTDragImage Methods, TVTDragImage Properties


TVTDragImage Methods
TVTDragImage Class | Methods | Legend | Send Feedback

The methods of the TVTDragImage class are listed here.

Class

TVTDragImage Class

Legend

Method
public
protected

Links
TVTDragImage Class, Methods, Legend
What do you think about this topic? Send feedback!


TVTDragImage.DragTo Method
TVTDragImage Methods | TVTDragImage Class | Send Feedback

Moves the drag image to a new position, which is determined from the passed point P and the previous mouse position.

Pascal
function DragTo(P: TPoint; ForceRepaint: Boolean): Boolean;
Description

ForceRepaint is true if something on the screen changed and the back image must be refreshed.

Group

TVTDragImage Methods

Links
TVTDragImage Methods, TVTDragImage Class
What do you think about this topic? Send feedback!


TVTDragImage.EndDrag Method
TVTDragImage Methods | TVTDragImage Class | Send Feedback

Not documented.

Pascal
procedure EndDrag;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTDragImage Methods

Links
TVTDragImage Methods, TVTDragImage Class
What do you think about this topic? Send feedback!


TVTDragImage.GetDragImageRect Method
TVTDragImage Methods | TVTDragImage Class | Send Feedback

Returns the current size and position of the drag image (screen coordinates).

Pascal
function GetDragImageRect: TRect;
Description

Returns the current size and position of the drag image (screen coordinates).

Group

TVTDragImage Methods

Links
TVTDragImage Methods, TVTDragImage Class
What do you think about this topic? Send feedback!


TVTDragImage.HideDragImage Method
TVTDragImage Methods | TVTDragImage Class | Send Feedback

Not documented.

Pascal
procedure HideDragImage;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTDragImage Methods

Links
TVTDragImage Methods, TVTDragImage Class
What do you think about this topic? Send feedback!


TVTDragImage.InternalShowDragImage Method
TVTDragImage Methods | TVTDragImage Class | Send Feedback

Frequently called helper routine to actually do the blend and put it onto

Pascal
procedure InternalShowDragImage(ScreenDC: HDC);
Description

Frequently called helper routine to actually do the blend and put it onto the screen. Only used if the system does not support drag images.

Group

TVTDragImage Methods

Links
TVTDragImage Methods, TVTDragImage Class
What do you think about this topic? Send feedback!


TVTDragImage.MakeAlphaChannel Method
TVTDragImage Methods | TVTDragImage Class | Send Feedback

Not documented.

Pascal
procedure MakeAlphaChannel(Source: TBitmap; Target: TBitmap);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTDragImage Methods

Links
TVTDragImage Methods, TVTDragImage Class
What do you think about this topic? Send feedback!


TVTDragImage.PrepareDrag Method
TVTDragImage Methods | TVTDragImage Class | Send Feedback

Creates all necessary structures to do alpha blended dragging using the given image.

Pascal
procedure PrepareDrag(DragImage: TBitmap; ImagePosition: TPoint; HotSpot: TPoint; const DataObject: IDataObject);
Description

ImagePostion and Hotspot are given in screen coordinates. The first determines where to place the drag image while the second is the initial mouse position. This method also determines whether the system supports drag images natively. If so then only minimal structures are created.

Group

TVTDragImage Methods

Links
TVTDragImage Methods, TVTDragImage Class
What do you think about this topic? Send feedback!


TVTDragImage.RecaptureBackground Method
TVTDragImage Methods | TVTDragImage Class | Send Feedback

Notification by the drop target tree to update the background image because something in the tree has changed.

Pascal
procedure RecaptureBackground(Tree: TBaseVirtualTree; R: TRect; VisibleRegion: HRGN; CaptureNCArea: Boolean; ReshowDragImage: Boolean);
Notes

The passed rectangle is given in client coordinates of the current drop target tree (given in Tree). The caller does not

check if the given rectangle is actually within the drag image. Hence this method must do all the checks. This method

does nothing if the system manages the drag image.

Group

TVTDragImage Methods

Links
TVTDragImage Methods, TVTDragImage Class
What do you think about this topic? Send feedback!


TVTDragImage.ShowDragImage Method
TVTDragImage Methods | TVTDragImage Class | Send Feedback

Shows the drag image after it has been hidden by HideDragImage.

Pascal
procedure ShowDragImage;
Description

Also this method does nothing if the system manages the drag image.

Group

TVTDragImage Methods

Links
TVTDragImage Methods, TVTDragImage Class
What do you think about this topic? Send feedback!


TVTDragImage.WillMove Method
TVTDragImage Methods | TVTDragImage Class | Send Feedback

Add a summary here...

Pascal
function WillMove(P: TPoint): Boolean;
Description

This method determines whether the drag image would "physically" move when DragTo would be called with the same target point. Always returns false if the system drag image support is available.

Group

TVTDragImage Methods

Links
TVTDragImage Methods, TVTDragImage Class
What do you think about this topic? Send feedback!


TVTDragImage Constructors
TVTDragImage Class | Methods | Legend | Send Feedback

The constructors of the TVTDragImage class are listed here.

Class

TVTDragImage Class

Legend

Constructor
public

Links
TVTDragImage Class, Methods, Legend
What do you think about this topic? Send feedback!


TVTDragImage.Create Constructor
TVTDragImage Constructors | TVTDragImage Class | Send Feedback

Not documented.

Pascal
constructor Create(AOwner: TBaseVirtualTree);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTDragImage Constructors

Links
TVTDragImage Constructors, TVTDragImage Class


TVTDragImage Destructors
TVTDragImage Class | Methods | Legend | Send Feedback

The destructors of the TVTDragImage class are listed here.

Class

TVTDragImage Class

Legend

Destructor
public
virtual

Links
TVTDragImage Class, Methods, Legend
What do you think about this topic? Send feedback!


TVTDragImage.Destroy Destructor
TVTDragImage Destructors | TVTDragImage Class | Send Feedback

Not documented.

Pascal
destructor Destroy; override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTDragImage Destructors

Links
TVTDragImage Destructors, TVTDragImage Class


TVTDragImage Properties
TVTDragImage Class | Properties | Legend | Send Feedback

The properties of the TVTDragImage class are listed here.

Class

TVTDragImage Class

Legend

Property
public
read only

Links
TVTDragImage Class, Properties, Legend
What do you think about this topic? Send feedback!


TVTDragImage.ColorKey Property
TVTDragImage Properties | TVTDragImage Class | Send Feedback

Not documented.

Pascal
property ColorKey: TColor;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTDragImage Properties

Links
TVTDragImage Properties, TVTDragImage Class


TVTDragImage.Fade Property
TVTDragImage Properties | TVTDragImage Class | Send Feedback

Not documented.

Pascal
property Fade: Boolean;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTDragImage Properties

Links
TVTDragImage Properties, TVTDragImage Class


TVTDragImage.MoveRestriction Property
TVTDragImage Properties | TVTDragImage Class | Send Feedback

Not documented.

Pascal
property MoveRestriction: TVTDragMoveRestriction;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTDragImage Properties

Links
TVTDragImage Properties, TVTDragImage Class


TVTDragImage.PostBlendBias Property
TVTDragImage Properties | TVTDragImage Class | Send Feedback

Not documented.

Pascal
property PostBlendBias: TVTBias;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTDragImage Properties

Links
TVTDragImage Properties, TVTDragImage Class


TVTDragImage.PreBlendBias Property
TVTDragImage Properties | TVTDragImage Class | Send Feedback

Not documented.

Pascal
property PreBlendBias: TVTBias;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTDragImage Properties

Links
TVTDragImage Properties, TVTDragImage Class


TVTDragImage.Transparency Property
TVTDragImage Properties | TVTDragImage Class | Send Feedback

Not documented.

Pascal
property Transparency: TVTTransparency;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTDragImage Properties

Links
TVTDragImage Properties, TVTDragImage Class


TVTDragImage.Visible Property
TVTDragImage Properties | TVTDragImage Class | Send Feedback

Not documented.

Pascal
property Visible: Boolean;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTDragImage Properties

Links
TVTDragImage Properties, TVTDragImage Class


TVTDragManager Class
Classes | Topics | TVTDragManager Methods | TVTDragManager Constructors | TVTDragManager Destructors | TVTDragManager Constructors | TVTDragManager Destructors | Legend | IVTDragManager Methods | IVTDragManager Properties | Send Feedback

Not documented.

Pascal
TVTDragManager = class(TInterfacedObject, IVTDragManager, IDropSource, IDropTarget);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Classes

Members
IVTDragManager Methods

ForceDragLeave
Not documented.
GetDataObject
Not documented.
GetDragSource
Not documented.
GetDropTargetHelperSupported
Not documented.
GetIsDropTarget
Not documented.

TVTDragManager Class

DragEnter
Not documented.
DragLeave
Not documented.
DragOver
Not documented.
Drop
Not documented.
ForceDragLeave
This method calls the drop target helper's DragLeave method to ensure it removes the drag image from screen.
GiveFeedback
Not documented.
QueryContinueDrag
Not documented.

Topics

IVTDragManager Methods
The methods of the IVTDragManager class are listed here.
IVTDragManager Properties
The properties of the IVTDragManager class are listed here.

TVTDragManager Class

TVTDragManager Methods
The methods of the TVTDragManager class are listed here.
TVTDragManager Constructors
The constructors of the TVTDragManager class are listed here.
TVTDragManager Destructors
The destructors of the TVTDragManager class are listed here.

IVTDragManager Properties

DataObject
Not documented.
DragSource
Not documented.
DropTargetHelperSupported
Not documented.
IsDropTarget
Not documented.

TVTDragManager Constructors
TVTDragManager Class

Create
Not documented.

TVTDragManager Destructors
TVTDragManager Class

Destroy
Not documented.

Topics

IVTDragManager Methods
The methods of the IVTDragManager class are listed here.
IVTDragManager Properties
The properties of the IVTDragManager class are listed here.

TVTDragManager Class

TVTDragManager Methods
The methods of the TVTDragManager class are listed here.
TVTDragManager Constructors
The constructors of the TVTDragManager class are listed here.
TVTDragManager Destructors
The destructors of the TVTDragManager class are listed here.

TVTDragManager Constructors
TVTDragManager Class

Create
Not documented.

TVTDragManager Destructors
TVTDragManager Class

Destroy
Not documented.

Legend

Method
public
Property
read only
Constructor
virtual

IVTDragManager Methods

ForceDragLeave
Not documented.
GetDataObject
Not documented.
GetDragSource
Not documented.
GetDropTargetHelperSupported
Not documented.
GetIsDropTarget
Not documented.

TVTDragManager Class

DragEnter
Not documented.
DragLeave
Not documented.
DragOver
Not documented.
Drop
Not documented.
ForceDragLeave
This method calls the drop target helper's DragLeave method to ensure it removes the drag image from screen.
GiveFeedback
Not documented.
QueryContinueDrag
Not documented.

IVTDragManager Properties

DataObject
Not documented.
DragSource
Not documented.
DropTargetHelperSupported
Not documented.
IsDropTarget
Not documented.

Class Hierarchy
  TVTDragManagerTVTDragManager
File

VirtualTrees

Links
Classes, Topics, TVTDragManager Methods, TVTDragManager Constructors, TVTDragManager Destructors, TVTDragManager Constructors, TVTDragManager Destructors, Legend, IVTDragManager Methods, IVTDragManager Properties


TVTDragManager Methods
TVTDragManager Class | Methods | Legend | Send Feedback

The methods of the TVTDragManager class are listed here.

Class

TVTDragManager Class

Legend

Method
public

Links
TVTDragManager Class, Methods, Legend
What do you think about this topic? Send feedback!


TVTDragManager.DragEnter Method
TVTDragManager Methods | TVTDragManager Class | Send Feedback

Not documented.

Pascal
function DragEnter(const DataObject: IDataObject; KeyState: Integer; Pt: TPoint; var Effect: Longint): HResult; stdcall;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTDragManager Methods

Links
TVTDragManager Methods, TVTDragManager Class


TVTDragManager.DragLeave Method
TVTDragManager Methods | TVTDragManager Class | Send Feedback

Not documented.

Pascal
function DragLeave: HResult; stdcall;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTDragManager Methods

Links
TVTDragManager Methods, TVTDragManager Class


TVTDragManager.DragOver Method
TVTDragManager Methods | TVTDragManager Class | Send Feedback

Not documented.

Pascal
function DragOver(KeyState: Integer; Pt: TPoint; var Effect: LongInt): HResult; stdcall;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTDragManager Methods

Links
TVTDragManager Methods, TVTDragManager Class


TVTDragManager.Drop Method
TVTDragManager Methods | TVTDragManager Class | Send Feedback

Not documented.

Pascal
function Drop(const DataObject: IDataObject; KeyState: Integer; Pt: TPoint; var Effect: Integer): HResult; stdcall;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTDragManager Methods

Links
TVTDragManager Methods, TVTDragManager Class


TVTDragManager.ForceDragLeave Method
TVTDragManager Methods | TVTDragManager Class | Send Feedback

This method calls the drop target helper's DragLeave method to ensure it removes the drag image from screen.

Pascal
procedure ForceDragLeave; stdcall;
Description

This method calls the drop target helper's DragLeave method to ensure it removes the drag image from screen.

Group

TVTDragManager Methods

Links
TVTDragManager Methods, TVTDragManager Class


TVTDragManager.GiveFeedback Method
TVTDragManager Methods | TVTDragManager Class | Send Feedback

Not documented.

Pascal
function GiveFeedback(Effect: Integer): HResult; stdcall;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTDragManager Methods

Links
TVTDragManager Methods, TVTDragManager Class


TVTDragManager.QueryContinueDrag Method
TVTDragManager Methods | TVTDragManager Class | Send Feedback

Not documented.

Pascal
function QueryContinueDrag(EscapePressed: BOOL; KeyState: Integer): HResult; stdcall;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTDragManager Methods

Links
TVTDragManager Methods, TVTDragManager Class


TVTDragManager Constructors
TVTDragManager Class | Methods | Legend | Send Feedback

The constructors of the TVTDragManager class are listed here.

Class

TVTDragManager Class

Legend

Constructor
public
virtual

Links
TVTDragManager Class, Methods, Legend
What do you think about this topic? Send feedback!


TVTDragManager.Create Constructor
TVTDragManager Constructors | TVTDragManager Class | Send Feedback

Not documented.

Pascal
constructor Create(AOwner: TBaseVirtualTree); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTDragManager Constructors

Links
TVTDragManager Constructors, TVTDragManager Class


TVTDragManager Destructors
TVTDragManager Class | Methods | Legend | Send Feedback

The destructors of the TVTDragManager class are listed here.

Class

TVTDragManager Class

Legend

Destructor
public
virtual

Links
TVTDragManager Class, Methods, Legend
What do you think about this topic? Send feedback!


TVTDragManager.Destroy Destructor
TVTDragManager Destructors | TVTDragManager Class | Send Feedback

Not documented.

Pascal
destructor Destroy; override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTDragManager Destructors

Links
TVTDragManager Destructors, TVTDragManager Class


TVTEdit Class
Classes | Topics | TVTEdit Fields | TVTEdit Methods | TVTEdit Constructors | TVTEdit Properties | TVTEdit Constructors | TVTEdit Fields | Legend | TVTEdit Methods | TVTEdit Properties | Send Feedback

Not documented.

Pascal
TVTEdit = class(TCustomEdit);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Classes

Members
TVTEdit Fields

FLink
Not documented.
FRefLink
Not documented.

Topics

TVTEdit Fields
The fields of the TVTEdit class are listed here.
TVTEdit Methods
The methods of the TVTEdit class are listed here.
TVTEdit Constructors
The constructors of the TVTEdit class are listed here.
TVTEdit Properties
The properties of the TVTEdit class are listed here.

TVTEdit Methods

AutoAdjustSize
Not documented.
CreateParams
Not documented.
Release
Not documented.

TVTEdit Constructors

Create
Not documented.

TVTEdit Properties

AutoSelect
Not documented.
AutoSize
Not documented.
BorderStyle
Not documented.
CharCase
Not documented.
HideSelection
Not documented.
MaxLength
Not documented.
OEMConvert
Not documented.
PasswordChar
Not documented.

Topics

TVTEdit Fields
The fields of the TVTEdit class are listed here.
TVTEdit Methods
The methods of the TVTEdit class are listed here.
TVTEdit Constructors
The constructors of the TVTEdit class are listed here.
TVTEdit Properties
The properties of the TVTEdit class are listed here.

TVTEdit Constructors

Create
Not documented.

TVTEdit Fields

FLink
Not documented.
FRefLink
Not documented.

Legend

Data Member
protected
Method
virtual
public
Constructor
Property

TVTEdit Methods

AutoAdjustSize
Not documented.
CreateParams
Not documented.
Release
Not documented.

TVTEdit Properties

AutoSelect
Not documented.
AutoSize
Not documented.
BorderStyle
Not documented.
CharCase
Not documented.
HideSelection
Not documented.
MaxLength
Not documented.
OEMConvert
Not documented.
PasswordChar
Not documented.

Class Hierarchy
  TVTEdit
File

VirtualTrees

Links
Classes, Topics, TVTEdit Fields, TVTEdit Methods, TVTEdit Constructors, TVTEdit Properties, TVTEdit Constructors, TVTEdit Fields, Legend, TVTEdit Methods, TVTEdit Properties


TVTEdit Fields
Fields | TVTEdit Class | Legend | Send Feedback

The fields of the TVTEdit class are listed here.

Class

TVTEdit Class

Legend

Data Member
protected

Links
Fields, TVTEdit Class, Legend
What do you think about this topic? Send feedback!


TVTEdit.FLink Field
TVTEdit Fields | TVTEdit Class | Send Feedback

Not documented.

Pascal
FLink: TStringEditLink;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTEdit Fields

Links
TVTEdit Fields, TVTEdit Class
What do you think about this topic? Send feedback!


TVTEdit.FRefLink Field
TVTEdit Fields | TVTEdit Class | Send Feedback

Not documented.

Pascal
FRefLink: IVTEditLink;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTEdit Fields

Links
TVTEdit Fields, TVTEdit Class
What do you think about this topic? Send feedback!


TVTEdit Methods
TVTEdit Class | Methods | Legend | Send Feedback

The methods of the TVTEdit class are listed here.

Class

TVTEdit Class

Legend

Method
protected
virtual
public

Links
TVTEdit Class, Methods, Legend
What do you think about this topic? Send feedback!


TVTEdit.AutoAdjustSize Method
TVTEdit Methods | TVTEdit Class | Send Feedback

Not documented.

Pascal
procedure AutoAdjustSize; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTEdit Methods

Links
TVTEdit Methods, TVTEdit Class
What do you think about this topic? Send feedback!


TVTEdit.CreateParams Method
TVTEdit Methods | TVTEdit Class | Send Feedback

Not documented.

Pascal
procedure CreateParams(var Params: TCreateParams); override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTEdit Methods

Links
TVTEdit Methods, TVTEdit Class
What do you think about this topic? Send feedback!


TVTEdit.Release Method
TVTEdit Methods | TVTEdit Class | Send Feedback

Not documented.

Pascal
procedure Release; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTEdit Methods

Links
TVTEdit Methods, TVTEdit Class
What do you think about this topic? Send feedback!


TVTEdit Constructors
TVTEdit Class | Methods | Legend | Send Feedback

The constructors of the TVTEdit class are listed here.

Class

TVTEdit Class

Legend

Constructor
public

Links
TVTEdit Class, Methods, Legend
What do you think about this topic? Send feedback!


TVTEdit.Create Constructor
TVTEdit Constructors | TVTEdit Class | Send Feedback

Not documented.

Pascal
constructor Create(Link: TStringEditLink); reintroduce;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTEdit Constructors

Links
TVTEdit Constructors, TVTEdit Class
What do you think about this topic? Send feedback!


TVTEdit Properties
TVTEdit Class | Properties | Legend | Send Feedback

The properties of the TVTEdit class are listed here.

Class

TVTEdit Class

Legend

Property
public

Links
TVTEdit Class, Properties, Legend
What do you think about this topic? Send feedback!


TVTEdit.AutoSelect Property
TVTEdit Properties | TVTEdit Class | Send Feedback

Not documented.

Pascal
property AutoSelect;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTEdit Properties

Links
TVTEdit Properties, TVTEdit Class
What do you think about this topic? Send feedback!


TVTEdit.AutoSize Property
TVTEdit Properties | TVTEdit Class | Send Feedback

Not documented.

Pascal
property AutoSize;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTEdit Properties

Links
TVTEdit Properties, TVTEdit Class
What do you think about this topic? Send feedback!


TVTEdit.BorderStyle Property
TVTEdit Properties | TVTEdit Class | Send Feedback

Not documented.

Pascal
property BorderStyle;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTEdit Properties

Links
TVTEdit Properties, TVTEdit Class
What do you think about this topic? Send feedback!


TVTEdit.CharCase Property
TVTEdit Properties | TVTEdit Class | Send Feedback

Not documented.

Pascal
property CharCase;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTEdit Properties

Links
TVTEdit Properties, TVTEdit Class
What do you think about this topic? Send feedback!


TVTEdit.HideSelection Property
TVTEdit Properties | TVTEdit Class | Send Feedback

Not documented.

Pascal
property HideSelection;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTEdit Properties

Links
TVTEdit Properties, TVTEdit Class
What do you think about this topic? Send feedback!


TVTEdit.MaxLength Property
TVTEdit Properties | TVTEdit Class | Send Feedback

Not documented.

Pascal
property MaxLength;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTEdit Properties

Links
TVTEdit Properties, TVTEdit Class
What do you think about this topic? Send feedback!


TVTEdit.OEMConvert Property
TVTEdit Properties | TVTEdit Class | Send Feedback

Not documented.

Pascal
property OEMConvert;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTEdit Properties

Links
TVTEdit Properties, TVTEdit Class
What do you think about this topic? Send feedback!


TVTEdit.PasswordChar Property
TVTEdit Properties | TVTEdit Class | Send Feedback

Not documented.

Pascal
property PasswordChar;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTEdit Properties

Links
TVTEdit Properties, TVTEdit Class
What do you think about this topic? Send feedback!


TVTFixedAreaConstraints Class
Classes | Topics | TVTFixedAreaConstraints Methods | TVTFixedAreaConstraints Constructors | TVTFixedAreaConstraints Properties | TVTFixedAreaConstraints Constructors | Legend | TVTFixedAreaConstraints Methods | TVTFixedAreaConstraints Properties | Send Feedback

Not documented.

Pascal
TVTFixedAreaConstraints = class(TPersistent);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Classes

Members
TVTFixedAreaConstraints Methods

Assign
Not documented.
Change
Not documented.

Topics

TVTFixedAreaConstraints Methods
The methods of the TVTFixedAreaConstraints class are listed here.
TVTFixedAreaConstraints Constructors
The constructors of the TVTFixedAreaConstraints class are listed here.
TVTFixedAreaConstraints Properties
The properties of the TVTFixedAreaConstraints class are listed here.

TVTFixedAreaConstraints Constructors

Create
Not documented.

TVTFixedAreaConstraints Properties

Header
Not documented.
MaxHeightPercent
Not documented.
MaxWidthPercent
Not documented.
MinHeightPercent
Not documented.
MinWidthPercent
Not documented.
OnChange
Not documented.

Topics

TVTFixedAreaConstraints Methods
The methods of the TVTFixedAreaConstraints class are listed here.
TVTFixedAreaConstraints Constructors
The constructors of the TVTFixedAreaConstraints class are listed here.
TVTFixedAreaConstraints Properties
The properties of the TVTFixedAreaConstraints class are listed here.

TVTFixedAreaConstraints Constructors

Create
Not documented.

Legend

Method
public
virtual
protected
Constructor
Property
read only
published

TVTFixedAreaConstraints Methods

Assign
Not documented.
Change
Not documented.

TVTFixedAreaConstraints Properties

Header
Not documented.
MaxHeightPercent
Not documented.
MaxWidthPercent
Not documented.
MinHeightPercent
Not documented.
MinWidthPercent
Not documented.
OnChange
Not documented.

Class Hierarchy
  TVTFixedAreaConstraints
File

VirtualTrees

Links
Classes, Topics, TVTFixedAreaConstraints Methods, TVTFixedAreaConstraints Constructors, TVTFixedAreaConstraints Properties, TVTFixedAreaConstraints Constructors, Legend, TVTFixedAreaConstraints Methods, TVTFixedAreaConstraints Properties


TVTFixedAreaConstraints Methods
TVTFixedAreaConstraints Class | Methods | Legend | Send Feedback

The methods of the TVTFixedAreaConstraints class are listed here.

Class

TVTFixedAreaConstraints Class

Legend

Method
public
virtual
protected

Links
TVTFixedAreaConstraints Class, Methods, Legend


TVTFixedAreaConstraints.Assign Method
TVTFixedAreaConstraints Methods | TVTFixedAreaConstraints Class | Send Feedback

Not documented.

Pascal
procedure Assign(Source: TPersistent); override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTFixedAreaConstraints Methods

Links
TVTFixedAreaConstraints Methods, TVTFixedAreaConstraints Class


TVTFixedAreaConstraints.Change Method
TVTFixedAreaConstraints Methods | TVTFixedAreaConstraints Class | Send Feedback

Not documented.

Pascal
procedure Change;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTFixedAreaConstraints Methods

Links
TVTFixedAreaConstraints Methods, TVTFixedAreaConstraints Class


TVTFixedAreaConstraints Constructors
TVTFixedAreaConstraints Class | Methods | Legend | Send Feedback

The constructors of the TVTFixedAreaConstraints class are listed here.

Class

TVTFixedAreaConstraints Class

Legend

Constructor
public

Links
TVTFixedAreaConstraints Class, Methods, Legend


TVTFixedAreaConstraints.Create Constructor
TVTFixedAreaConstraints Constructors | TVTFixedAreaConstraints Class | Send Feedback

Not documented.

Pascal
constructor Create(AOwner: TVTHeader);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTFixedAreaConstraints Constructors

Links
TVTFixedAreaConstraints Constructors, TVTFixedAreaConstraints Class


TVTFixedAreaConstraints Properties
TVTFixedAreaConstraints Class | Properties | Legend | Send Feedback

The properties of the TVTFixedAreaConstraints class are listed here.

Class

TVTFixedAreaConstraints Class

Legend

Property
protected
read only
published
public

Links
TVTFixedAreaConstraints Class, Properties, Legend


TVTFixedAreaConstraints.Header Property
TVTFixedAreaConstraints Properties | TVTFixedAreaConstraints Class | Send Feedback

Not documented.

Pascal
property Header: TVTHeader;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTFixedAreaConstraints Properties

Links
TVTFixedAreaConstraints Properties, TVTFixedAreaConstraints Class


TVTFixedAreaConstraints.MaxHeightPercent Property
TVTFixedAreaConstraints Properties | TVTFixedAreaConstraints Class | Send Feedback

Not documented.

Pascal
property MaxHeightPercent: TVTConstraintPercent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTFixedAreaConstraints Properties

Links
TVTFixedAreaConstraints Properties, TVTFixedAreaConstraints Class


TVTFixedAreaConstraints.MaxWidthPercent Property
TVTFixedAreaConstraints Properties | TVTFixedAreaConstraints Class | Send Feedback

Not documented.

Pascal
property MaxWidthPercent: TVTConstraintPercent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTFixedAreaConstraints Properties

Links
TVTFixedAreaConstraints Properties, TVTFixedAreaConstraints Class


TVTFixedAreaConstraints.MinHeightPercent Property
TVTFixedAreaConstraints Properties | TVTFixedAreaConstraints Class | Send Feedback

Not documented.

Pascal
property MinHeightPercent: TVTConstraintPercent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTFixedAreaConstraints Properties

Links
TVTFixedAreaConstraints Properties, TVTFixedAreaConstraints Class


TVTFixedAreaConstraints.MinWidthPercent Property
TVTFixedAreaConstraints Properties | TVTFixedAreaConstraints Class | Send Feedback

Not documented.

Pascal
property MinWidthPercent: TVTConstraintPercent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTFixedAreaConstraints Properties

Links
TVTFixedAreaConstraints Properties, TVTFixedAreaConstraints Class


TVTFixedAreaConstraints.OnChange Property
TVTFixedAreaConstraints Properties | TVTFixedAreaConstraints Class | Send Feedback

Not documented.

Pascal
property OnChange: TNotifyEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTFixedAreaConstraints Properties

Links
TVTFixedAreaConstraints Properties, TVTFixedAreaConstraints Class


TVTHeader Class
Classes | Topics | TVTHeader Fields | TVTHeader Methods | TVTHeader Constructors | TVTHeader Destructors | TVTHeader Properties | TVTHeader Constructors | TVTHeader Destructors | TVTHeader Fields | Legend | TVTHeader Methods | TVTHeader Properties | Send Feedback

Not documented.

Pascal
TVTHeader = class(TPersistent);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Classes

Members
TVTHeader Fields

FDragStart
initial mouse drag position
FStates
used to keep track of internal states the header can enter
FTrackPoint
Not documented.
FTrackStart
client coordinates of the tracking start point

Topics

TVTHeader Fields
The fields of the TVTHeader class are listed here.
TVTHeader Methods
The methods of the TVTHeader class are listed here.
TVTHeader Constructors
The constructors of the TVTHeader class are listed here.
TVTHeader Destructors
The destructors of the TVTHeader class are listed here.
TVTHeader Properties
The properties of the TVTHeader class are listed here.

TVTHeader Methods

AllowFocus
Not documented.
Assign
Not documented.
AutoFitColumns
Not documented.
CanSplitterResize
Not documented.
CanWriteColumns
Not documented.
ChangeScale
Not documented.
DetermineSplitterIndex
Tries to find the index of that column whose right border corresponds to P.
DoAfterAutoFitColumn
Not documented.
DoAfterColumnWidthTracking
Not documented.
DoAfterHeightTracking
Not documented.
DoBeforeAutoFitColumn
Not documented.
DoBeforeColumnWidthTracking
Not documented.
DoBeforeHeightTracking
Not documented.
DoCanSplitterResize
Not documented.
DoColumnWidthDblClickResize
Not documented.
DoColumnWidthTracking
Not documented.
DoGetPopupMenu
Not documented.
DoHeightDblClickResize
Not documented.
DoHeightTracking
Not documented.
DoSetSortColumn
Not documented.
DragTo
Moves the drag image to a new position, which is determined from the passed point P and the previous mouse position.
FixedAreaConstraintsChanged
Not documented.
GetColumnsClass
Returns the class to be used for the actual column implementation.
GetOwner
Not documented.
GetShiftState
Not documented.
HandleHeaderMouseMove
Not documented.
HandleMessage
General message handler for the header.
ImageListChange
Not documented.
InHeader
Determines whether the given point (client coordinates!) is within the header rectangle (non-client coordinates).
InHeaderSplitterArea
Not documented.
Invalidate
Invalidates the entire header or parts of it so they are repainted.
LoadFromStream
Restores the state of the header from the given stream.
PrepareDrag
Initializes dragging of the header, P is the current mouse postion and Start the initial mouse position.
ReadColumns
Not documented.
RecalculateHeader
Initiate a recalculation of the non-client area of the owner tree.
RescaleHeader
Not documented.
ResizeColumns
Not documented.
RestoreColumns
Restores all columns to their width which they had before they have been auto fitted.
SaveToStream
Saves the complete state of the header into the provided stream.
UpdateMainColumn
Called once the load process of the owner tree is done.
UpdateSpringColumns
Not documented.
WriteColumns
Not documented.

TVTHeader Constructors

Create
Not documented.

TVTHeader Destructors

Destroy
Not documented.

TVTHeader Properties

AutoSizeIndex
Not documented.
Background
Not documented.
Columns
Not documented.
DefaultHeight
Not documented.
DragImage
Not documented.
FixedAreaConstraints
Not documented.
Font
Not documented.
Height
Not documented.
Images
Not documented.
MainColumn
Not documented.
MaxHeight
Not documented.
MinHeight
Not documented.
Options
Not documented.
ParentFont
Not documented.
PopupMenu
Not documented.
SortColumn
Not documented.
SortDirection
Not documented.
States
Not documented.
Style
Not documented.
Treeview
Not documented.
UseColumns
Not documented.

Topics

TVTHeader Fields
The fields of the TVTHeader class are listed here.
TVTHeader Methods
The methods of the TVTHeader class are listed here.
TVTHeader Constructors
The constructors of the TVTHeader class are listed here.
TVTHeader Destructors
The destructors of the TVTHeader class are listed here.
TVTHeader Properties
The properties of the TVTHeader class are listed here.

TVTHeader Constructors

Create
Not documented.

TVTHeader Destructors

Destroy
Not documented.

TVTHeader Fields

FDragStart
initial mouse drag position
FStates
used to keep track of internal states the header can enter
FTrackPoint
Not documented.
FTrackStart
client coordinates of the tracking start point

Legend

Data Member
protected
Method
public
virtual
Constructor
Property
published
read only

TVTHeader Methods

AllowFocus
Not documented.
Assign
Not documented.
AutoFitColumns
Not documented.
CanSplitterResize
Not documented.
CanWriteColumns
Not documented.
ChangeScale
Not documented.
DetermineSplitterIndex
Tries to find the index of that column whose right border corresponds to P.
DoAfterAutoFitColumn
Not documented.
DoAfterColumnWidthTracking
Not documented.
DoAfterHeightTracking
Not documented.
DoBeforeAutoFitColumn
Not documented.
DoBeforeColumnWidthTracking
Not documented.
DoBeforeHeightTracking
Not documented.
DoCanSplitterResize
Not documented.
DoColumnWidthDblClickResize
Not documented.
DoColumnWidthTracking
Not documented.
DoGetPopupMenu
Not documented.
DoHeightDblClickResize
Not documented.
DoHeightTracking
Not documented.
DoSetSortColumn
Not documented.
DragTo
Moves the drag image to a new position, which is determined from the passed point P and the previous mouse position.
FixedAreaConstraintsChanged
Not documented.
GetColumnsClass
Returns the class to be used for the actual column implementation.
GetOwner
Not documented.
GetShiftState
Not documented.
HandleHeaderMouseMove
Not documented.
HandleMessage
General message handler for the header.
ImageListChange
Not documented.
InHeader
Determines whether the given point (client coordinates!) is within the header rectangle (non-client coordinates).
InHeaderSplitterArea
Not documented.
Invalidate
Invalidates the entire header or parts of it so they are repainted.
LoadFromStream
Restores the state of the header from the given stream.
PrepareDrag
Initializes dragging of the header, P is the current mouse postion and Start the initial mouse position.
ReadColumns
Not documented.
RecalculateHeader
Initiate a recalculation of the non-client area of the owner tree.
RescaleHeader
Not documented.
ResizeColumns
Not documented.
RestoreColumns
Restores all columns to their width which they had before they have been auto fitted.
SaveToStream
Saves the complete state of the header into the provided stream.
UpdateMainColumn
Called once the load process of the owner tree is done.
UpdateSpringColumns
Not documented.
WriteColumns
Not documented.

TVTHeader Properties

AutoSizeIndex
Not documented.
Background
Not documented.
Columns
Not documented.
DefaultHeight
Not documented.
DragImage
Not documented.
FixedAreaConstraints
Not documented.
Font
Not documented.
Height
Not documented.
Images
Not documented.
MainColumn
Not documented.
MaxHeight
Not documented.
MinHeight
Not documented.
Options
Not documented.
ParentFont
Not documented.
PopupMenu
Not documented.
SortColumn
Not documented.
SortDirection
Not documented.
States
Not documented.
Style
Not documented.
Treeview
Not documented.
UseColumns
Not documented.

Class Hierarchy
  TVTHeader
File

VirtualTrees

Links
Classes, Topics, TVTHeader Fields, TVTHeader Methods, TVTHeader Constructors, TVTHeader Destructors, TVTHeader Properties, TVTHeader Constructors, TVTHeader Destructors, TVTHeader Fields, Legend, TVTHeader Methods, TVTHeader Properties


TVTHeader Fields
Fields | TVTHeader Class | Legend | Send Feedback

The fields of the TVTHeader class are listed here.

Class

TVTHeader Class

Legend

Data Member
protected

Links
Fields, TVTHeader Class, Legend
What do you think about this topic? Send feedback!


TVTHeader.FDragStart Field
TVTHeader Fields | TVTHeader Class | Send Feedback

initial mouse drag position

Pascal
FDragStart: TPoint;
Group

TVTHeader Fields

Links
TVTHeader Fields, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.FStates Field
TVTHeader Fields | TVTHeader Class | Send Feedback

used to keep track of internal states the header can enter

Pascal
FStates: THeaderStates;
Group

TVTHeader Fields

Links
TVTHeader Fields, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.FTrackPoint Field
TVTHeader Fields | TVTHeader Class | Send Feedback

Not documented.

Pascal
FTrackPoint: TPoint;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Fields

Links
TVTHeader Fields, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.FTrackStart Field
TVTHeader Fields | TVTHeader Class | Send Feedback

client coordinates of the tracking start point

Pascal
FTrackStart: TPoint;
Group

TVTHeader Fields

Links
TVTHeader Fields, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader Methods
TVTHeader Class | Methods | Legend | Send Feedback

The methods of the TVTHeader class are listed here.

Class

TVTHeader Class

Legend

Method
public
virtual
protected

Links
TVTHeader Class, Methods, Legend
What do you think about this topic? Send feedback!


TVTHeader.AllowFocus Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Not documented.

Pascal
function AllowFocus(ColumnIndex: TColumnIndex): Boolean;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.Assign Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Not documented.

Pascal
procedure Assign(Source: TPersistent); override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.AutoFitColumns Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Not documented.

Pascal
procedure AutoFitColumns(Animated: Boolean = True; SmartAutoFitType: TSmartAutoFitType = smaUseColumnOption; RangeStartCol: Integer = NoColumn; RangeEndCol: Integer = NoColumn); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.CanSplitterResize Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Not documented.

Pascal
function CanSplitterResize(P: TPoint): Boolean;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.CanWriteColumns Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Not documented.

Pascal
function CanWriteColumns: Boolean; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.ChangeScale Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Not documented.

Pascal
procedure ChangeScale(M: Integer; D: Integer); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.DetermineSplitterIndex Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Tries to find the index of that column whose right border corresponds to P.

Pascal
function DetermineSplitterIndex(P: TPoint): Boolean; virtual;
Description

Result is rrue if column border was hit (with -3..+5 pixels tolerance). For continuous resizing the current track index and the column's left border are set.

Notes

The hit test is checking from right to left to make enlarging of zero-sized columns possible.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.DoAfterAutoFitColumn Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Not documented.

Pascal
procedure DoAfterAutoFitColumn(Column: TColumnIndex); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.DoAfterColumnWidthTracking Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Not documented.

Pascal
procedure DoAfterColumnWidthTracking(Column: TColumnIndex); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.DoAfterHeightTracking Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Not documented.

Pascal
procedure DoAfterHeightTracking; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.DoBeforeAutoFitColumn Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Not documented.

Pascal
function DoBeforeAutoFitColumn(Column: TColumnIndex; SmartAutoFitType: TSmartAutoFitType): Boolean; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.DoBeforeColumnWidthTracking Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Not documented.

Pascal
procedure DoBeforeColumnWidthTracking(Column: TColumnIndex; Shift: TShiftState); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.DoBeforeHeightTracking Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Not documented.

Pascal
procedure DoBeforeHeightTracking(Shift: TShiftState); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.DoCanSplitterResize Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Not documented.

Pascal
procedure DoCanSplitterResize(P: TPoint; var Allowed: Boolean); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.DoColumnWidthDblClickResize Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Not documented.

Pascal
function DoColumnWidthDblClickResize(Column: TColumnIndex; P: TPoint; Shift: TShiftState): Boolean; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.DoColumnWidthTracking Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Not documented.

Pascal
function DoColumnWidthTracking(Column: TColumnIndex; Shift: TShiftState; var TrackPoint: TPoint; P: TPoint): Boolean; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.DoGetPopupMenu Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Not documented.

Pascal
function DoGetPopupMenu(Column: TColumnIndex; Position: TPoint): TPopupMenu; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.DoHeightDblClickResize Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Not documented.

Pascal
function DoHeightDblClickResize(var P: TPoint; Shift: TShiftState): Boolean; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.DoHeightTracking Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Not documented.

Pascal
function DoHeightTracking(var P: TPoint; Shift: TShiftState): Boolean; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.DoSetSortColumn Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Not documented.

Pascal
procedure DoSetSortColumn(Value: TColumnIndex); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.DragTo Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Moves the drag image to a new position, which is determined from the passed point P and the previous mouse position.

Pascal
procedure DragTo(P: TPoint);
Description

Moves the drag image to a new position, which is determined from the passed point P and the previous mouse position.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.FixedAreaConstraintsChanged Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Not documented.

Pascal
procedure FixedAreaConstraintsChanged(Sender: TObject);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.GetColumnsClass Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Returns the class to be used for the actual column implementation.

Pascal
function GetColumnsClass: TVirtualTreeColumnsClass; virtual;
Description

Descentants may optionally override this and return their own class.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.GetOwner Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Not documented.

Pascal
function GetOwner: TPersistent; override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.GetShiftState Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Not documented.

Pascal
function GetShiftState: TShiftState;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.HandleHeaderMouseMove Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Not documented.

Pascal
function HandleHeaderMouseMove(var Message: TWMMouseMove): Boolean;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.HandleMessage Method
TVTHeader Methods | TVTHeader Class | Send Feedback

General message handler for the header.

Pascal
function HandleMessage(var Message: TMessage): Boolean; virtual;
Description

The header gets here the opportunity to handle certain messages before they reach the tree. This is important because the tree needs to handle various non-client area messages for the header as well as some dragging/tracking events. By returning True the message will not be handled further, otherwise the message is then dispatched to the proper message handlers.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.ImageListChange Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Not documented.

Pascal
procedure ImageListChange(Sender: TObject);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.InHeader Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Determines whether the given point (client coordinates!) is within the header rectangle (non-client coordinates).

Pascal
function InHeader(P: TPoint): Boolean; virtual;
Description

Determines whether the given point (client coordinates!) is within the header rectangle (non-client coordinates).

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.InHeaderSplitterArea Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Not documented.

Pascal
function InHeaderSplitterArea(P: TPoint): Boolean; virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.Invalidate Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Invalidates the entire header or parts of it so they are repainted.

Pascal
procedure Invalidate(Column: TVirtualTreeColumn; ExpandToBorder: Boolean = False);
Description

Because the header is in the non-client area of the tree it needs some special handling in order to initiate its repainting. If ExpandToRight is true then not only the given column but everything to its right will be invalidated (useful for resizing). This makes only sense when a column is given.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.LoadFromStream Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Restores the state of the header from the given stream.

Pascal
procedure LoadFromStream(const Stream: TStream); virtual;
Description

Restores the state of the header from the given stream.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.PrepareDrag Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Initializes dragging of the header, P is the current mouse postion and Start the initial mouse position.

Pascal
procedure PrepareDrag(P: TPoint; Start: TPoint);
Description

Initializes dragging of the header, P is the current mouse postion and Start the initial mouse position.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.ReadColumns Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Not documented.

Pascal
procedure ReadColumns(Reader: TReader);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.RecalculateHeader Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Initiate a recalculation of the non-client area of the owner tree.

Pascal
procedure RecalculateHeader; virtual;
Description

Initiate a recalculation of the non-client area of the owner tree.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.RescaleHeader Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Not documented.

Pascal
procedure RescaleHeader;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.ResizeColumns Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Not documented.

Pascal
function ResizeColumns(ChangeBy: Integer; RangeStartCol: TColumnIndex; RangeEndCol: TColumnIndex; Options: TVTColumnOptions = [coVisible]): Integer;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.RestoreColumns Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Restores all columns to their width which they had before they have been auto fitted.

Pascal
procedure RestoreColumns;
Description

Restores all columns to their width which they had before they have been auto fitted.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.SaveToStream Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Saves the complete state of the header into the provided stream.

Pascal
procedure SaveToStream(const Stream: TStream); virtual;
Description

Saves the complete state of the header into the provided stream.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.UpdateMainColumn Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Called once the load process of the owner tree is done.

Pascal
procedure UpdateMainColumn;
Description

Called once the load process of the owner tree is done.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.UpdateSpringColumns Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Not documented.

Pascal
procedure UpdateSpringColumns;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.WriteColumns Method
TVTHeader Methods | TVTHeader Class | Send Feedback

Not documented.

Pascal
procedure WriteColumns(Writer: TWriter);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Methods

Links
TVTHeader Methods, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader Constructors
TVTHeader Class | Methods | Legend | Send Feedback

The constructors of the TVTHeader class are listed here.

Class

TVTHeader Class

Legend

Constructor
public
virtual

Links
TVTHeader Class, Methods, Legend
What do you think about this topic? Send feedback!


TVTHeader.Create Constructor
TVTHeader Constructors | TVTHeader Class | Send Feedback

Not documented.

Pascal
constructor Create(AOwner: TBaseVirtualTree); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Constructors

Links
TVTHeader Constructors, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader Destructors
TVTHeader Class | Methods | Legend | Send Feedback

The destructors of the TVTHeader class are listed here.

Class

TVTHeader Class

Legend

Destructor
public
virtual

Links
TVTHeader Class, Methods, Legend
What do you think about this topic? Send feedback!


TVTHeader.Destroy Destructor
TVTHeader Destructors | TVTHeader Class | Send Feedback

Not documented.

Pascal
destructor Destroy; override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Destructors

Links
TVTHeader Destructors, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader Properties
TVTHeader Class | Properties | Legend | Send Feedback

The properties of the TVTHeader class are listed here.

Class

TVTHeader Class

Legend

Property
published
public
read only

Links
TVTHeader Class, Properties, Legend
What do you think about this topic? Send feedback!


TVTHeader.AutoSizeIndex Property
TVTHeader Properties | TVTHeader Class | Send Feedback

Not documented.

Pascal
property AutoSizeIndex: TColumnIndex;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Properties

Links
TVTHeader Properties, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.Background Property
TVTHeader Properties | TVTHeader Class | Send Feedback

Not documented.

Pascal
property Background: TColor;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Properties

Links
TVTHeader Properties, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.Columns Property
TVTHeader Properties | TVTHeader Class | Send Feedback

Not documented.

Pascal
property Columns: TVirtualTreeColumns;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Properties

Links
TVTHeader Properties, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.DefaultHeight Property
TVTHeader Properties | TVTHeader Class | Send Feedback

Not documented.

Pascal
property DefaultHeight: Integer;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Properties

Links
TVTHeader Properties, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.DragImage Property
TVTHeader Properties | TVTHeader Class | Send Feedback

Not documented.

Pascal
property DragImage: TVTDragImage;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Properties

Links
TVTHeader Properties, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.FixedAreaConstraints Property
TVTHeader Properties | TVTHeader Class | Send Feedback

Not documented.

Pascal
property FixedAreaConstraints: TVTFixedAreaConstraints;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Properties

Links
TVTHeader Properties, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.Font Property
TVTHeader Properties | TVTHeader Class | Send Feedback

Not documented.

Pascal
property Font: TFont;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Properties

Links
TVTHeader Properties, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.Height Property
TVTHeader Properties | TVTHeader Class | Send Feedback

Not documented.

Pascal
property Height: Integer;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Properties

Links
TVTHeader Properties, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.Images Property
TVTHeader Properties | TVTHeader Class | Send Feedback

Not documented.

Pascal
property Images: TCustomImageList;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Properties

Links
TVTHeader Properties, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.MainColumn Property
TVTHeader Properties | TVTHeader Class | Send Feedback

Not documented.

Pascal
property MainColumn: TColumnIndex;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Properties

Links
TVTHeader Properties, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.MaxHeight Property
TVTHeader Properties | TVTHeader Class | Send Feedback

Not documented.

Pascal
property MaxHeight: Integer;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Properties

Links
TVTHeader Properties, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.MinHeight Property
TVTHeader Properties | TVTHeader Class | Send Feedback

Not documented.

Pascal
property MinHeight: Integer;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Properties

Links
TVTHeader Properties, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.Options Property
TVTHeader Properties | TVTHeader Class | Send Feedback

Not documented.

Pascal
property Options: TVTHeaderOptions;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Properties

Links
TVTHeader Properties, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.ParentFont Property
TVTHeader Properties | TVTHeader Class | Send Feedback

Not documented.

Pascal
property ParentFont: Boolean;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Properties

Links
TVTHeader Properties, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.PopupMenu Property
TVTHeader Properties | TVTHeader Class | Send Feedback

Not documented.

Pascal
property PopupMenu: TPopupMenu;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Properties

Links
TVTHeader Properties, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.SortColumn Property
TVTHeader Properties | TVTHeader Class | Send Feedback

Not documented.

Pascal
property SortColumn: TColumnIndex;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Properties

Links
TVTHeader Properties, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.SortDirection Property
TVTHeader Properties | TVTHeader Class | Send Feedback

Not documented.

Pascal
property SortDirection: TSortDirection;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Properties

Links
TVTHeader Properties, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.States Property
TVTHeader Properties | TVTHeader Class | Send Feedback

Not documented.

Pascal
property States: THeaderStates;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Properties

Links
TVTHeader Properties, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.Style Property
TVTHeader Properties | TVTHeader Class | Send Feedback

Not documented.

Pascal
property Style: TVTHeaderStyle;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Properties

Links
TVTHeader Properties, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.Treeview Property
TVTHeader Properties | TVTHeader Class | Send Feedback

Not documented.

Pascal
property Treeview: TBaseVirtualTree;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Properties

Links
TVTHeader Properties, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeader.UseColumns Property
TVTHeader Properties | TVTHeader Class | Send Feedback

Not documented.

Pascal
property UseColumns: Boolean;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeader Properties

Links
TVTHeader Properties, TVTHeader Class
What do you think about this topic? Send feedback!


TVTHeaderPopupMenu Class
Classes | Topics | TVTHeaderPopupMenu Methods | TVTHeaderPopupMenu Properties | TVTHeaderPopupMenu Events | TVTHeaderPopupMenu Events | Legend | TVTHeaderPopupMenu Methods | TVTHeaderPopupMenu Properties | Send Feedback

Not documented.

Pascal
TVTHeaderPopupMenu = class(TPopupMenu);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Classes

Members
TVTHeaderPopupMenu Methods

DoAddHeaderPopupItem
Not documented.
DoColumnChange
Not documented.
OnMenuItemClick
Not documented.
Popup
Not documented.

Topics

TVTHeaderPopupMenu Methods
The methods of the TVTHeaderPopupMenu class are listed here.
TVTHeaderPopupMenu Properties
The properties of the TVTHeaderPopupMenu class are listed here.
TVTHeaderPopupMenu Events
The events of the TVTHeaderPopupMenu class are listed here.

TVTHeaderPopupMenu Properties

Options
Not documented.

TVTHeaderPopupMenu Events

OnAddHeaderPopupItem
Not documented.
OnColumnChange
Not documented.

Topics

TVTHeaderPopupMenu Methods
The methods of the TVTHeaderPopupMenu class are listed here.
TVTHeaderPopupMenu Properties
The properties of the TVTHeaderPopupMenu class are listed here.
TVTHeaderPopupMenu Events
The events of the TVTHeaderPopupMenu class are listed here.

TVTHeaderPopupMenu Events

OnAddHeaderPopupItem
Not documented.
OnColumnChange
Not documented.

Legend

Method
protected
virtual
public
Property
published
Event

TVTHeaderPopupMenu Methods

DoAddHeaderPopupItem
Not documented.
DoColumnChange
Not documented.
OnMenuItemClick
Not documented.
Popup
Not documented.

TVTHeaderPopupMenu Properties

Options
Not documented.

Class Hierarchy
  TVTHeaderPopupMenu
File

VTHeaderPopup

Links
Classes, Topics, TVTHeaderPopupMenu Methods, TVTHeaderPopupMenu Properties, TVTHeaderPopupMenu Events, TVTHeaderPopupMenu Events, Legend, TVTHeaderPopupMenu Methods, TVTHeaderPopupMenu Properties


TVTHeaderPopupMenu Methods
TVTHeaderPopupMenu Class | Methods | Legend | Send Feedback

The methods of the TVTHeaderPopupMenu class are listed here.

Class

TVTHeaderPopupMenu Class

Legend

Method
protected
virtual
public

Links
TVTHeaderPopupMenu Class, Methods, Legend


TVTHeaderPopupMenu.DoAddHeaderPopupItem Method
TVTHeaderPopupMenu Methods | TVTHeaderPopupMenu Class | Send Feedback

Not documented.

Pascal
procedure DoAddHeaderPopupItem(const Column: TColumnIndex; out Cmd: TAddPopupItemType); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeaderPopupMenu Methods

Links
TVTHeaderPopupMenu Methods, TVTHeaderPopupMenu Class


TVTHeaderPopupMenu.DoColumnChange Method
TVTHeaderPopupMenu Methods | TVTHeaderPopupMenu Class | Send Feedback

Not documented.

Pascal
procedure DoColumnChange(Column: TColumnIndex; Visible: Boolean); virtual;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeaderPopupMenu Methods

Links
TVTHeaderPopupMenu Methods, TVTHeaderPopupMenu Class


TVTHeaderPopupMenu.OnMenuItemClick Method
TVTHeaderPopupMenu Methods | TVTHeaderPopupMenu Class | Send Feedback

Not documented.

Pascal
procedure OnMenuItemClick(Sender: TObject);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeaderPopupMenu Methods

Links
TVTHeaderPopupMenu Methods, TVTHeaderPopupMenu Class


TVTHeaderPopupMenu.Popup Method
TVTHeaderPopupMenu Methods | TVTHeaderPopupMenu Class | Send Feedback

Not documented.

Pascal
procedure Popup(x: Integer; y: Integer); override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeaderPopupMenu Methods

Links
TVTHeaderPopupMenu Methods, TVTHeaderPopupMenu Class


TVTHeaderPopupMenu Properties
TVTHeaderPopupMenu Class | Properties | Legend | Send Feedback

The properties of the TVTHeaderPopupMenu class are listed here.

Class

TVTHeaderPopupMenu Class

Legend

Property
published

Links
TVTHeaderPopupMenu Class, Properties, Legend


TVTHeaderPopupMenu.Options Property
TVTHeaderPopupMenu Properties | TVTHeaderPopupMenu Class | Send Feedback

Not documented.

Pascal
property Options: TVTHeaderPopupOptions;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeaderPopupMenu Properties

Links
TVTHeaderPopupMenu Properties, TVTHeaderPopupMenu Class


TVTHeaderPopupMenu Events
Events | TVTHeaderPopupMenu Class | Legend | Send Feedback

The events of the TVTHeaderPopupMenu class are listed here.

Class

TVTHeaderPopupMenu Class

Legend

Event
published

Links
Events, TVTHeaderPopupMenu Class, Legend
What do you think about this topic? Send feedback!


TVTHeaderPopupMenu.OnAddHeaderPopupItem Event
TVTHeaderPopupMenu Events | TVTHeaderPopupMenu Class | Send Feedback

Not documented.

Pascal
property OnAddHeaderPopupItem: TAddHeaderPopupItemEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeaderPopupMenu Events

Links
TVTHeaderPopupMenu Events, TVTHeaderPopupMenu Class


TVTHeaderPopupMenu.OnColumnChange Event
TVTHeaderPopupMenu Events | TVTHeaderPopupMenu Class | Send Feedback

Not documented.

Pascal
property OnColumnChange: TColumnChangeEvent;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTHeaderPopupMenu Events

Links
TVTHeaderPopupMenu Events, TVTHeaderPopupMenu Class


TVTVirtualNodeEnumeration Record
Classes | Topics | TVTVirtualNodeEnumeration Fields | TVTVirtualNodeEnumeration Methods | TVTVirtualNodeEnumeration Fields | Legend | TVTVirtualNodeEnumeration Methods | Send Feedback

Not documented.

Pascal
TVTVirtualNodeEnumeration = record
  objectprivateFMode: TVZVirtualNodeEnumerationMode;
  FTree: TBaseVirtualTree;
  FConsiderChildrenAbove: Boolean;
  FNode: PVirtualNode;
  FNodeLevel: Cardinal;
  FState: TCheckState;
  FIncludeFiltered: Boolean;
end;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Classes

Members
TVTVirtualNodeEnumeration Fields

FConsiderChildrenAbove
Not documented.
FIncludeFiltered
Not documented.
FNode
Not documented.
FNodeLevel
Not documented.
FState
Not documented.
FTree
Not documented.
objectprivateFMode
Not documented.

Topics

TVTVirtualNodeEnumeration Fields
The fields of the TVTVirtualNodeEnumeration class are listed here.
TVTVirtualNodeEnumeration Methods
The methods of the TVTVirtualNodeEnumeration class are listed here.

TVTVirtualNodeEnumeration Methods

GetEnumerator
Not documented.

Topics

TVTVirtualNodeEnumeration Fields
The fields of the TVTVirtualNodeEnumeration class are listed here.
TVTVirtualNodeEnumeration Methods
The methods of the TVTVirtualNodeEnumeration class are listed here.

TVTVirtualNodeEnumeration Fields

FConsiderChildrenAbove
Not documented.
FIncludeFiltered
Not documented.
FNode
Not documented.
FNodeLevel
Not documented.
FState
Not documented.
FTree
Not documented.
objectprivateFMode
Not documented.

Legend

Data Member
public
Method

TVTVirtualNodeEnumeration Methods

GetEnumerator
Not documented.

File

VirtualTrees

Links
Classes, Topics, TVTVirtualNodeEnumeration Fields, TVTVirtualNodeEnumeration Methods, TVTVirtualNodeEnumeration Fields, Legend, TVTVirtualNodeEnumeration Methods


TVTVirtualNodeEnumeration Fields
Fields | TVTVirtualNodeEnumeration Record | Legend | Send Feedback

The fields of the TVTVirtualNodeEnumeration class are listed here.

Record

TVTVirtualNodeEnumeration Record

Legend

Data Member
public

Links
Fields, TVTVirtualNodeEnumeration Record, Legend


TVTVirtualNodeEnumeration.FConsiderChildrenAbove Field
TVTVirtualNodeEnumeration Fields | TVTVirtualNodeEnumeration Record | Send Feedback

Not documented.

Pascal
FConsiderChildrenAbove: Boolean;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTVirtualNodeEnumeration Fields

Links
TVTVirtualNodeEnumeration Fields, TVTVirtualNodeEnumeration Record


TVTVirtualNodeEnumeration.FIncludeFiltered Field
TVTVirtualNodeEnumeration Fields | TVTVirtualNodeEnumeration Record | Send Feedback

Not documented.

Pascal
FIncludeFiltered: Boolean;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTVirtualNodeEnumeration Fields

Links
TVTVirtualNodeEnumeration Fields, TVTVirtualNodeEnumeration Record


TVTVirtualNodeEnumeration.FNode Field
TVTVirtualNodeEnumeration Fields | TVTVirtualNodeEnumeration Record | Send Feedback

Not documented.

Pascal
FNode: PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTVirtualNodeEnumeration Fields

Links
TVTVirtualNodeEnumeration Fields, TVTVirtualNodeEnumeration Record


TVTVirtualNodeEnumeration.FNodeLevel Field
TVTVirtualNodeEnumeration Fields | TVTVirtualNodeEnumeration Record | Send Feedback

Not documented.

Pascal
FNodeLevel: Cardinal;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTVirtualNodeEnumeration Fields

Links
TVTVirtualNodeEnumeration Fields, TVTVirtualNodeEnumeration Record


TVTVirtualNodeEnumeration.FState Field
TVTVirtualNodeEnumeration Fields | TVTVirtualNodeEnumeration Record | Send Feedback

Not documented.

Pascal
FState: TCheckState;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTVirtualNodeEnumeration Fields

Links
TVTVirtualNodeEnumeration Fields, TVTVirtualNodeEnumeration Record


TVTVirtualNodeEnumeration.FTree Field
TVTVirtualNodeEnumeration Fields | TVTVirtualNodeEnumeration Record | Send Feedback

Not documented.

Pascal
FTree: TBaseVirtualTree;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTVirtualNodeEnumeration Fields

Links
TVTVirtualNodeEnumeration Fields, TVTVirtualNodeEnumeration Record


TVTVirtualNodeEnumeration.objectprivateFMode Field
TVTVirtualNodeEnumeration Fields | TVTVirtualNodeEnumeration Record | Send Feedback

Not documented.

Pascal
objectprivateFMode: TVZVirtualNodeEnumerationMode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTVirtualNodeEnumeration Fields

Links
TVTVirtualNodeEnumeration Fields, TVTVirtualNodeEnumeration Record


TVTVirtualNodeEnumeration Methods
TVTVirtualNodeEnumeration Record | Methods | Legend | Send Feedback

The methods of the TVTVirtualNodeEnumeration class are listed here.

Record

TVTVirtualNodeEnumeration Record

Legend

Method
public

Links
TVTVirtualNodeEnumeration Record, Methods, Legend


TVTVirtualNodeEnumeration.GetEnumerator Method
TVTVirtualNodeEnumeration Methods | TVTVirtualNodeEnumeration Record | Send Feedback

Not documented.

Pascal
function GetEnumerator: TVTVirtualNodeEnumerator;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTVirtualNodeEnumeration Methods

Links
TVTVirtualNodeEnumeration Methods, TVTVirtualNodeEnumeration Record


TVTVirtualNodeEnumerator Record
Classes | Topics | TVTVirtualNodeEnumerator Fields | TVTVirtualNodeEnumerator Methods | TVTVirtualNodeEnumerator Properties | TVTVirtualNodeEnumerator Fields | Legend | TVTVirtualNodeEnumerator Methods | TVTVirtualNodeEnumerator Properties | Send Feedback

Not documented.

Pascal
TVTVirtualNodeEnumerator = record
  privateFNode: PVirtualNode;
  FCanModeNext: Boolean;
  FEnumeration: PVTVirtualNodeEnumeration;
end;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Classes

Members
TVTVirtualNodeEnumerator Fields

FCanModeNext
Not documented.
FEnumeration
Not documented.
privateFNode
Not documented.

Topics

TVTVirtualNodeEnumerator Fields
The fields of the TVTVirtualNodeEnumerator class are listed here.
TVTVirtualNodeEnumerator Methods
The methods of the TVTVirtualNodeEnumerator class are listed here.
TVTVirtualNodeEnumerator Properties
The properties of the TVTVirtualNodeEnumerator class are listed here.

TVTVirtualNodeEnumerator Methods

GetCurrent
Not documented.
MoveNext
Not documented.

TVTVirtualNodeEnumerator Properties

Current
Not documented.

Topics

TVTVirtualNodeEnumerator Fields
The fields of the TVTVirtualNodeEnumerator class are listed here.
TVTVirtualNodeEnumerator Methods
The methods of the TVTVirtualNodeEnumerator class are listed here.
TVTVirtualNodeEnumerator Properties
The properties of the TVTVirtualNodeEnumerator class are listed here.

TVTVirtualNodeEnumerator Fields

FCanModeNext
Not documented.
FEnumeration
Not documented.
privateFNode
Not documented.

Legend

Data Member
public
Method
Property
read only

TVTVirtualNodeEnumerator Methods

GetCurrent
Not documented.
MoveNext
Not documented.

TVTVirtualNodeEnumerator Properties

Current
Not documented.

File

VirtualTrees

Links
Classes, Topics, TVTVirtualNodeEnumerator Fields, TVTVirtualNodeEnumerator Methods, TVTVirtualNodeEnumerator Properties, TVTVirtualNodeEnumerator Fields, Legend, TVTVirtualNodeEnumerator Methods, TVTVirtualNodeEnumerator Properties


TVTVirtualNodeEnumerator Fields
Fields | TVTVirtualNodeEnumerator Record | Legend | Send Feedback

The fields of the TVTVirtualNodeEnumerator class are listed here.

Record

TVTVirtualNodeEnumerator Record

Legend

Data Member
public

Links
Fields, TVTVirtualNodeEnumerator Record, Legend


TVTVirtualNodeEnumerator.FCanModeNext Field
TVTVirtualNodeEnumerator Fields | TVTVirtualNodeEnumerator Record | Send Feedback

Not documented.

Pascal
FCanModeNext: Boolean;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTVirtualNodeEnumerator Fields

Links
TVTVirtualNodeEnumerator Fields, TVTVirtualNodeEnumerator Record


TVTVirtualNodeEnumerator.FEnumeration Field
TVTVirtualNodeEnumerator Fields | TVTVirtualNodeEnumerator Record | Send Feedback

Not documented.

Pascal
FEnumeration: PVTVirtualNodeEnumeration;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTVirtualNodeEnumerator Fields

Links
TVTVirtualNodeEnumerator Fields, TVTVirtualNodeEnumerator Record


TVTVirtualNodeEnumerator.privateFNode Field
TVTVirtualNodeEnumerator Fields | TVTVirtualNodeEnumerator Record | Send Feedback

Not documented.

Pascal
privateFNode: PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTVirtualNodeEnumerator Fields

Links
TVTVirtualNodeEnumerator Fields, TVTVirtualNodeEnumerator Record


TVTVirtualNodeEnumerator Methods
TVTVirtualNodeEnumerator Record | Methods | Legend | Send Feedback

The methods of the TVTVirtualNodeEnumerator class are listed here.

Record

TVTVirtualNodeEnumerator Record

Legend

Method
public

Links
TVTVirtualNodeEnumerator Record, Methods, Legend


TVTVirtualNodeEnumerator.GetCurrent Method
TVTVirtualNodeEnumerator Methods | TVTVirtualNodeEnumerator Record | Send Feedback

Not documented.

Pascal
function GetCurrent: PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTVirtualNodeEnumerator Methods

Links
TVTVirtualNodeEnumerator Methods, TVTVirtualNodeEnumerator Record


TVTVirtualNodeEnumerator.MoveNext Method
TVTVirtualNodeEnumerator Methods | TVTVirtualNodeEnumerator Record | Send Feedback

Not documented.

Pascal
function MoveNext: Boolean;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTVirtualNodeEnumerator Methods

Links
TVTVirtualNodeEnumerator Methods, TVTVirtualNodeEnumerator Record


TVTVirtualNodeEnumerator Properties
TVTVirtualNodeEnumerator Record | Properties | Legend | Send Feedback

The properties of the TVTVirtualNodeEnumerator class are listed here.

Record

TVTVirtualNodeEnumerator Record

Legend

Property
public
read only

Links
TVTVirtualNodeEnumerator Record, Properties, Legend


TVTVirtualNodeEnumerator.Current Property
TVTVirtualNodeEnumerator Properties | TVTVirtualNodeEnumerator Record | Send Feedback

Not documented.

Pascal
property Current: PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TVTVirtualNodeEnumerator Properties

Links
TVTVirtualNodeEnumerator Properties, TVTVirtualNodeEnumerator Record


TWideBufferedString Class
Classes | Topics | TWideBufferedString Methods | TWideBufferedString Destructors | TWideBufferedString Properties | TWideBufferedString Destructors | Legend | TWideBufferedString Methods | TWideBufferedString Properties | Send Feedback

Not documented.

Pascal
TWideBufferedString = class;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Classes

Members
TWideBufferedString Methods

Add
Not documented.
AddNewLine
Not documented.

Topics

TWideBufferedString Methods
The methods of the TWideBufferedString class are listed here.
TWideBufferedString Destructors
The destructors of the TWideBufferedString class are listed here.
TWideBufferedString Properties
The properties of the TWideBufferedString class are listed here.

TWideBufferedString Destructors

Destroy
Not documented.

TWideBufferedString Properties

AsString
Not documented.

Topics

TWideBufferedString Methods
The methods of the TWideBufferedString class are listed here.
TWideBufferedString Destructors
The destructors of the TWideBufferedString class are listed here.
TWideBufferedString Properties
The properties of the TWideBufferedString class are listed here.

TWideBufferedString Destructors

Destroy
Not documented.

Legend

Method
public
Destructor
virtual
Property
read only

TWideBufferedString Methods

Add
Not documented.
AddNewLine
Not documented.

TWideBufferedString Properties

AsString
Not documented.

Class Hierarchy
  TWideBufferedString
File

VirtualTrees

Links
Classes, Topics, TWideBufferedString Methods, TWideBufferedString Destructors, TWideBufferedString Properties, TWideBufferedString Destructors, Legend, TWideBufferedString Methods, TWideBufferedString Properties


TWideBufferedString Methods
TWideBufferedString Class | Methods | Legend | Send Feedback

The methods of the TWideBufferedString class are listed here.

Class

TWideBufferedString Class

Legend

Method
public

Links
TWideBufferedString Class, Methods, Legend


TWideBufferedString.Add Method
TWideBufferedString Methods | TWideBufferedString Class | Send Feedback

Not documented.

Pascal
procedure Add(const S: UnicodeString);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TWideBufferedString Methods

Links
TWideBufferedString Methods, TWideBufferedString Class


TWideBufferedString.AddNewLine Method
TWideBufferedString Methods | TWideBufferedString Class | Send Feedback

Not documented.

Pascal
procedure AddNewLine;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TWideBufferedString Methods

Links
TWideBufferedString Methods, TWideBufferedString Class


TWideBufferedString Destructors
TWideBufferedString Class | Methods | Legend | Send Feedback

The destructors of the TWideBufferedString class are listed here.

Class

TWideBufferedString Class

Legend

Destructor
public
virtual

Links
TWideBufferedString Class, Methods, Legend


TWideBufferedString.Destroy Destructor
TWideBufferedString Destructors | TWideBufferedString Class | Send Feedback

Not documented.

Pascal
destructor Destroy; override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TWideBufferedString Destructors

Links
TWideBufferedString Destructors, TWideBufferedString Class


TWideBufferedString Properties
TWideBufferedString Class | Properties | Legend | Send Feedback

The properties of the TWideBufferedString class are listed here.

Class

TWideBufferedString Class

Legend

Property
public
read only

Links
TWideBufferedString Class, Properties, Legend


TWideBufferedString.AsString Property
TWideBufferedString Properties | TWideBufferedString Class | Send Feedback

Not documented.

Pascal
property AsString: UnicodeString;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TWideBufferedString Properties

Links
TWideBufferedString Properties, TWideBufferedString Class


TWorkerThread Class
Classes | Topics | TWorkerThread Methods | TWorkerThread Constructors | TWorkerThread Destructors | TWorkerThread Properties | TWorkerThread Constructors | TWorkerThread Destructors | Legend | TWorkerThread Methods | TWorkerThread Properties | Send Feedback

Not documented.

Pascal
TWorkerThread = class(TThread);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Classes

Members
TWorkerThread Methods

AddTree
Not documented.
CancelValidation
Not documented.
ChangeTreeStates
Not documented.
Execute
Not documented.
RemoveTree
Not documented.

Topics

TWorkerThread Methods
The methods of the TWorkerThread class are listed here.
TWorkerThread Constructors
The constructors of the TWorkerThread class are listed here.
TWorkerThread Destructors
The destructors of the TWorkerThread class are listed here.
TWorkerThread Properties
The properties of the TWorkerThread class are listed here.

TWorkerThread Constructors

Create
Not documented.

TWorkerThread Destructors

Destroy
Not documented.

TWorkerThread Properties

CurrentTree
Not documented.

Topics

TWorkerThread Methods
The methods of the TWorkerThread class are listed here.
TWorkerThread Constructors
The constructors of the TWorkerThread class are listed here.
TWorkerThread Destructors
The destructors of the TWorkerThread class are listed here.
TWorkerThread Properties
The properties of the TWorkerThread class are listed here.

TWorkerThread Constructors

Create
Not documented.

TWorkerThread Destructors

Destroy
Not documented.

Legend

Method
public
protected
virtual
Constructor
Property
read only

TWorkerThread Methods

AddTree
Not documented.
CancelValidation
Not documented.
ChangeTreeStates
Not documented.
Execute
Not documented.
RemoveTree
Not documented.

TWorkerThread Properties

CurrentTree
Not documented.

Class Hierarchy
  TWorkerThread
File

VirtualTrees

Links
Classes, Topics, TWorkerThread Methods, TWorkerThread Constructors, TWorkerThread Destructors, TWorkerThread Properties, TWorkerThread Constructors, TWorkerThread Destructors, Legend, TWorkerThread Methods, TWorkerThread Properties


TWorkerThread Methods
TWorkerThread Class | Methods | Legend | Send Feedback

The methods of the TWorkerThread class are listed here.

Class

TWorkerThread Class

Legend

Method
public
protected
virtual

Links
TWorkerThread Class, Methods, Legend
What do you think about this topic? Send feedback!


TWorkerThread.AddTree Method
TWorkerThread Methods | TWorkerThread Class | Send Feedback

Not documented.

Pascal
procedure AddTree(Tree: TBaseVirtualTree);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TWorkerThread Methods

Links
TWorkerThread Methods, TWorkerThread Class


TWorkerThread.CancelValidation Method
TWorkerThread Methods | TWorkerThread Class | Send Feedback

Not documented.

Pascal
procedure CancelValidation(Tree: TBaseVirtualTree);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TWorkerThread Methods

Links
TWorkerThread Methods, TWorkerThread Class


TWorkerThread.ChangeTreeStates Method
TWorkerThread Methods | TWorkerThread Class | Send Feedback

Not documented.

Pascal
procedure ChangeTreeStates(EnterStates: TChangeStates; LeaveStates: TChangeStates);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TWorkerThread Methods

Links
TWorkerThread Methods, TWorkerThread Class


TWorkerThread.Execute Method
TWorkerThread Methods | TWorkerThread Class | Send Feedback

Not documented.

Pascal
procedure Execute; override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TWorkerThread Methods

Links
TWorkerThread Methods, TWorkerThread Class


TWorkerThread.RemoveTree Method
TWorkerThread Methods | TWorkerThread Class | Send Feedback

Not documented.

Pascal
procedure RemoveTree(Tree: TBaseVirtualTree);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TWorkerThread Methods

Links
TWorkerThread Methods, TWorkerThread Class


TWorkerThread Constructors
TWorkerThread Class | Methods | Legend | Send Feedback

The constructors of the TWorkerThread class are listed here.

Class

TWorkerThread Class

Legend

Constructor
public

Links
TWorkerThread Class, Methods, Legend
What do you think about this topic? Send feedback!


TWorkerThread.Create Constructor
TWorkerThread Constructors | TWorkerThread Class | Send Feedback

Not documented.

Pascal
constructor Create(CreateSuspended: Boolean);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TWorkerThread Constructors

Links
TWorkerThread Constructors, TWorkerThread Class


TWorkerThread Destructors
TWorkerThread Class | Methods | Legend | Send Feedback

The destructors of the TWorkerThread class are listed here.

Class

TWorkerThread Class

Legend

Destructor
public
virtual

Links
TWorkerThread Class, Methods, Legend
What do you think about this topic? Send feedback!


TWorkerThread.Destroy Destructor
TWorkerThread Destructors | TWorkerThread Class | Send Feedback

Not documented.

Pascal
destructor Destroy; override;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TWorkerThread Destructors

Links
TWorkerThread Destructors, TWorkerThread Class


TWorkerThread Properties
TWorkerThread Class | Properties | Legend | Send Feedback

The properties of the TWorkerThread class are listed here.

Class

TWorkerThread Class

Legend

Property
public
read only

Links
TWorkerThread Class, Properties, Legend
What do you think about this topic? Send feedback!


TWorkerThread.CurrentTree Property
TWorkerThread Properties | TWorkerThread Class | Send Feedback

Not documented.

Pascal
property CurrentTree: TBaseVirtualTree;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

TWorkerThread Properties

Links
TWorkerThread Properties, TWorkerThread Class


Functions
Functions | Virtual Treeview | Legend | Send Feedback

The following table lists functions in this documentation.

Description

These are all functions that are contained in this documentation.

Functions

AlphaBlend
General purpose procedure to blend one bitmap to another.
EnumerateVTClipboardFormats
Not documented.
EnumerateVTClipboardFormats
Not documented.
GetStringDrawRect
Not documented.
GetVTClipboardFormatDescription
Not documented.
PrtStretchDrawDIB
Not documented.
RegisterVTClipboardFormat
Methods to register a certain clipboard format for a given tree class.
RegisterVTClipboardFormat
Methods to register a certain clipboard format for a given tree class.
ShortenString
Not documented.
TreeFromNode
General purpose routine to get the tree to which a node belongs.
WrapString
Not documented.

Group

Virtual Treeview

Legend

Method

Links
Functions, Virtual Treeview, Legend
What do you think about this topic? Send feedback!


AlphaBlend Function
Functions | Send Feedback

General purpose procedure to blend one bitmap to another.

Pascal
procedure AlphaBlend(Source: HDC; Destination: HDC; R: TRect; Target: TPoint; Mode: TBlendMode; ConstantAlpha: Integer; Bias: Integer);
Description

This is an optimized alpha blend procedure using MMX instructions to perform as quick as possible. For this procedure to work properly it is important that both source and target bitmap use the 32 bit color format (pf32Bit for TBitmap). R describes the source rectangle to work on, while Target is the place (upper left corner) in the target bitmap where to blend to. Note that source width + X offset must be less or equal to the target width. Similar for the height.

If Mode is bmConstantAlpha then the blend operation uses the given ConstantAlpha value for all pixels.

If Mode is bmPerPixelAlpha then each pixel is blended using its individual alpha value (the alpha value of the source).

If Mode is bmMasterAlpha then each pixel is blended using its individual alpha value multiplied by ConstantAlpha.

If Mode is bmConstantAlphaAndColor then each destination pixel is blended using ConstantAlpha but also a constant color which will be obtained from Bias. In this case no offset value is added, otherwise Bias is used as offset.

Blending of a color into target only (bmConstantAlphaAndColor) ignores Source (the DC) and Target (the position).

Notes

This procedure does not check whether MMX instructions are actually available! Call it only if MMX is really usable,

otherwise a process exception for unknown op codes is thrown.

Group

Functions

File

VirtualTrees

Links
Functions
What do you think about this topic? Send feedback!


EnumerateVTClipboardFormats Function
Functions | Send Feedback

Not documented.

Pascal
procedure EnumerateVTClipboardFormats(TreeClass: TVirtualTreeClass; var Formats: TFormatEtcArray); overload;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Functions

File

VirtualTrees

Links
Functions
What do you think about this topic? Send feedback!


EnumerateVTClipboardFormats Function
Functions | Send Feedback

Not documented.

Pascal
procedure EnumerateVTClipboardFormats(TreeClass: TVirtualTreeClass; const List: TStrings); overload;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Functions

File

VirtualTrees

Links
Functions
What do you think about this topic? Send feedback!


GetStringDrawRect Function
Functions | Send Feedback

Not documented.

Pascal
procedure GetStringDrawRect(DC: HDC; const S: UnicodeString; var Bounds: TRect; DrawFormat: Cardinal);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Functions

File

VirtualTrees

Links
Functions
What do you think about this topic? Send feedback!


GetVTClipboardFormatDescription Function
Functions | Send Feedback

Not documented.

Pascal
function GetVTClipboardFormatDescription(AFormat: Word): string;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Functions

File

VirtualTrees

Links
Functions
What do you think about this topic? Send feedback!


PrtStretchDrawDIB Function
Functions | Send Feedback

Not documented.

Pascal
procedure PrtStretchDrawDIB(Canvas: TCanvas; DestRect: TRect; ABitmap: TBitmap);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Functions

File

VirtualTrees

Links
Functions
What do you think about this topic? Send feedback!


RegisterVTClipboardFormat Function
Functions | Send Feedback

Methods to register a certain clipboard format for a given tree class.

Pascal
procedure RegisterVTClipboardFormat(AFormat: Word; TreeClass: TVirtualTreeClass; Priority: Cardinal); overload;
function RegisterVTClipboardFormat(Description: string; TreeClass: TVirtualTreeClass; Priority: Cardinal; tymed: Integer = TYMED_HGLOBAL; ptd: PDVTargetDevice = nil; dwAspect: Integer = DVASPECT_CONTENT; lindex: Integer = -1): Word; overload;
Description

Registration with the clipboard is done here too and the assigned ID returned by the function. tymed may contain or'ed TYMED constants which allows to register several storage formats for one clipboard format.

Group

Functions

File

VirtualTrees

Links
Functions
What do you think about this topic? Send feedback!


ShortenString Function
Functions | Send Feedback

Not documented.

Pascal
function ShortenString(DC: HDC; const S: UnicodeString; Width: Integer; EllipsisWidth: Integer = 0): UnicodeString;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Functions

File

VirtualTrees

Links
Functions
What do you think about this topic? Send feedback!


TreeFromNode Function
Functions | Send Feedback

General purpose routine to get the tree to which a node belongs.

Pascal
function TreeFromNode(Node: PVirtualNode): TBaseVirtualTree;
Description

For obvious reasons it makes no sense to store the reference to a tree in each node record, but sometimes there might arise the need to know to which tree a node belongs. This is not often the case but is necessary e.g. for optimized moves in drag'n drop or cut'n paste operations.

Each node contains a reference to its parent to allow fast traversal. The hidden root node, however, does not need this reference because it does not have a node parent. Instead it contains the reference of the tree to which it belongs. To determine which node is the root node (when you don't know its tree) a special case of sibling reference is used. Since the root node does neither have a previous nor a next sibling the corresponding pointers are set to the root node, making the root so pointing to itself. This case will never happen in "normal" nodes, so it is a reliable way to detect the root node.

Group

Functions

File

VirtualTrees

Links
Functions
What do you think about this topic? Send feedback!


WrapString Function
Functions | Send Feedback

Not documented.

Pascal
function WrapString(DC: HDC; const S: UnicodeString; const Bounds: TRect; RTL: Boolean; DrawFormat: Cardinal): UnicodeString;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Functions

File

VirtualTrees

Links
Functions
What do you think about this topic? Send feedback!


Structs and Records
Enumerations | Virtual Treeview | Records | Legend | Send Feedback

The following table lists structs, records, enums in this documentation.

Description

These are all structs and records that are contained in this documentation.

Enumerations

TSmartAutoFitType
Not documented.
TToggleAnimationMode
Not documented.
TVTCellContentMarginType
Not documented.
TVTCellPaintMode
Not documented.
TVTExportMode
Not documented.
TVTExportType
Not documented.
TVTHeaderHitPosition
Not documented.
TVTOperationKind
Not documented.
TVTTooltipLineBreakStyle
Not documented.
TVZVirtualNodeEnumerationMode
Not documented.

Group

Virtual Treeview

Records

TBaseChunk
Not documented.
TBaseChunkBody
Not documented.
TCacheEntry
Not documented.
TChunkHeader
Not documented.
TClipboardFormatEntry
Not documented.
TClipboardFormatListEntry
Not documented.
THeaderPaintInfo
Not documented.
THitInfo
Not documented.
TInternalStgMedium
Not documented.
TRealWMNCPaint
Not documented.
TSHDragImage
Not documented.
TToggleAnimationData
Not documented.
TVirtualNode
Not documented.
TVTHeaderHitInfo
Not documented.
TVTHintData
Not documented.
TVTImageInfo
Not documented.
TVTPaintInfo
Not documented.
TVTReference
Not documented.
TWithSafeRect
Not documented.
TWMPrint
Not documented.

Legend

Record
Enumeration

Links
Enumerations, Virtual Treeview, Records, Legend


TBaseChunk Record
Structs and Records | Send Feedback

Not documented.

Pascal
TBaseChunk = packed record
  Header: TChunkHeader;
  Body: TBaseChunkBody;
end;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Structs and Records

File

VirtualTrees

Links
Structs and Records
What do you think about this topic? Send feedback!


TBaseChunkBody Record
Structs and Records | Send Feedback

Not documented.

Pascal
TBaseChunkBody = packed record
  ChildCount: Cardinal;
  NodeHeight: Cardinal;
  States: TVirtualNodeStates;
  Align: Byte;
  CheckState: TCheckState;
  CheckType: TCheckType;
  Reserved: Cardinal;
end;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Structs and Records

File

VirtualTrees

Links
Structs and Records
What do you think about this topic? Send feedback!


TCacheEntry Record
Structs and Records | Send Feedback

Not documented.

Pascal
TCacheEntry = record
  Node: PVirtualNode;
  AbsoluteTop: Cardinal;
end;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Structs and Records

File

VirtualTrees

Links
Structs and Records
What do you think about this topic? Send feedback!


TChunkHeader Record
Structs and Records | Send Feedback

Not documented.

Pascal
TChunkHeader = record
  ChunkSize: Integer;
  ChunkType: Integer;
end;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Structs and Records

File

VirtualTrees

Links
Structs and Records
What do you think about this topic? Send feedback!


TClipboardFormatEntry Record
Structs and Records | Send Feedback

Not documented.

Pascal
TClipboardFormatEntry = record
  ID: Word;
  Description: string;
end;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Structs and Records

File

VirtualTrees

Links
Structs and Records
What do you think about this topic? Send feedback!


TClipboardFormatListEntry Record
Structs and Records | Send Feedback

Not documented.

Pascal
TClipboardFormatListEntry = record
  Description: string;
  TreeClass: TVirtualTreeClass;
  Priority: Cardinal;
  FormatEtc: TFormatEtc;
end;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Members
Members | Description
Description: string; | The string used to register the format with Windows.
TreeClass: TVirtualTreeClass; | The tree class which supports rendering this format.
Priority: Cardinal; | Number which determines the order of formats used in IDataObject.
FormatEtc: TFormatEtc; | The definition of the format in the IDataObject.
Group

Structs and Records

File

VirtualTrees

Links
Structs and Records
What do you think about this topic? Send feedback!


THeaderPaintInfo Record
Structs and Records | Send Feedback

Not documented.

Pascal
THeaderPaintInfo = record
  TargetCanvas: TCanvas;
  Column: TVirtualTreeColumn;
  PaintRectangle: TRect;
  TextRectangle: TRect;
  IsDownIndex: Boolean;
  IsEnabled: Boolean;
  IsHoverIndex: Boolean;
  ShowHeaderGlyph: Boolean;
  ShowRightBorder: Boolean;
  ShowSortGlyph: Boolean;
  DropMark: TVTDropMarkMode;
  GlyphPos: TPoint;
  SortGlyphPos: TPoint;
end;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Structs and Records

File

VirtualTrees

Links
Structs and Records
What do you think about this topic? Send feedback!


THitInfo Record
Structs and Records | Send Feedback

Not documented.

Pascal
THitInfo = record
  HitNode: PVirtualNode;
  HitPositions: THitPositions;
  HitColumn: TColumnIndex;
end;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Structs and Records

File

VirtualTrees

Links
Structs and Records
What do you think about this topic? Send feedback!


TInternalStgMedium Record
Structs and Records | Send Feedback

Not documented.

Pascal
TInternalStgMedium = packed record
  Format: TClipFormat;
  Medium: TStgMedium;
end;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Structs and Records

File

VirtualTrees

Links
Structs and Records
What do you think about this topic? Send feedback!


TRealWMNCPaint Record
Structs and Records | Send Feedback

Not documented.

Pascal
TRealWMNCPaint = packed record
  Msg: UINT;
  Rgn: HRGN;
  lParam: LPARAM;
  Result: LRESULT;
end;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Structs and Records

File

VirtualTrees

Links
Structs and Records
What do you think about this topic? Send feedback!


TSHDragImage Record
Structs and Records | Send Feedback

Not documented.

Pascal
TSHDragImage = packed record
  sizeDragImage: TSize;
  ptOffset: TPoint;
  hbmpDragImage: HBITMAP;
  ColorRef: TColorRef;
end;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Structs and Records

File

VirtualTrees

Links
Structs and Records
What do you think about this topic? Send feedback!


TSmartAutoFitType Enumeration
Structs and Records | Send Feedback

Not documented.

Pascal
TSmartAutoFitType = (
  smaAllColumns,
  smaNoColumn,
  smaUseColumnOption
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Structs and Records

File

VirtualTrees

Links
Structs and Records
What do you think about this topic? Send feedback!


TToggleAnimationData Record
Structs and Records | Send Feedback

Not documented.

Pascal
TToggleAnimationData = record
  Window: HWND;
  DC: HDC;
  Brush: HBRUSH;
  R1: TRect;
  R2: TRect;
  Mode1: TToggleAnimationMode;
  Mode2: TToggleAnimationMode;
  ScaleFactor: Double;
  MissedSteps: Double;
end;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Members
Members | Description
Window: HWND; | copy of the tree's window handle
DC: HDC; | the DC of the window to erase unconvered parts
Brush: HBRUSH; | the brush to be used to erase uncovered parts
Group

Structs and Records

File

VirtualTrees

Links
Structs and Records
What do you think about this topic? Send feedback!


TToggleAnimationMode Enumeration
Structs and Records | Send Feedback

Not documented.

Pascal
TToggleAnimationMode = (
  tamScrollUp,
  tamScrollDown,
  tamNoScroll
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Structs and Records

File

VirtualTrees

Links
Structs and Records
What do you think about this topic? Send feedback!


TVirtualNode Record
Structs and Records | Send Feedback

Not documented.

Pascal
TVirtualNode = packed record
  ChildCount: Cardinal;
  Index: Cardinal;
  NodeHeight: Word;
  States: TVirtualNodeStates;
  Align: Byte;
  CheckState: TCheckState;
  CheckType: TCheckType;
  Dummy: Byte;
  TotalCount: Cardinal;
  TotalHeight: Cardinal;
  FirstChild: PVirtualNode;
  LastChild: PVirtualNode;
  NextSibling: PVirtualNode;
  Parent: PVirtualNode;
  PrevSibling: PVirtualNode;
  Data: record;
end;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Members
Members | Description
NodeHeight: Word; | height in pixels
States: TVirtualNodeStates; | states describing various properties of the node (expanded, initialized etc.)
Align: Byte; | line/button alignment
CheckState: TCheckState; | checked, pressed etc.)
CheckType: TCheckType; | indicates which check type shall be used for this node
Dummy: Byte; | dummy value to fill DWORD boundary
Data: record; | this is a placeholder, each node gets extra data determined by NodeDataSize
Group

Structs and Records

File

VirtualTrees

Links
Structs and Records
What do you think about this topic? Send feedback!


TVTCellContentMarginType Enumeration
Structs and Records | Send Feedback

Not documented.

Pascal
TVTCellContentMarginType = (
  ccmtAllSides,
  ccmtTopLeftOnly,
  ccmtBottomRightOnly
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Structs and Records

File

VirtualTrees

Links
Structs and Records
What do you think about this topic? Send feedback!


TVTCellPaintMode Enumeration
Structs and Records | Send Feedback

Not documented.

Pascal
TVTCellPaintMode = (
  cpmPaint,
  cpmGetContentMargin
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Structs and Records

File

VirtualTrees

Links
Structs and Records
What do you think about this topic? Send feedback!


TVTExportMode Enumeration
Structs and Records | Send Feedback

Not documented.

Pascal
TVTExportMode = (
  emAll,
  emChecked,
  emUnchecked
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Structs and Records

File

VirtualTrees

Links
Structs and Records
What do you think about this topic? Send feedback!


TVTExportType Enumeration
Structs and Records | Send Feedback

Not documented.

Pascal
TVTExportType = (
  etRTF,
  etHTML,
  etText,
  etExcel,
  etWord,
  etCustom
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Structs and Records

File

VirtualTrees

Links
Structs and Records
What do you think about this topic? Send feedback!


TVTHeaderHitInfo Record
Structs and Records | Send Feedback

Not documented.

Pascal
TVTHeaderHitInfo = record
  X: Integer;
  Y: Integer;
  Button: TMouseButton;
  Shift: TShiftState;
  Column: TColumnIndex;
  HitPosition: TVTHeaderHitPositions;
end;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Structs and Records

File

VirtualTrees

Links
Structs and Records
What do you think about this topic? Send feedback!


TVTHeaderHitPosition Enumeration
Structs and Records | Send Feedback

Not documented.

Pascal
TVTHeaderHitPosition = (
  hhiNoWhere,
  hhiOnColumn,
  hhiOnIcon,
  hhiOnCheckbox
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Structs and Records

File

VirtualTrees

Links
Structs and Records
What do you think about this topic? Send feedback!


TVTHintData Record
Structs and Records | Send Feedback

Not documented.

Pascal
TVTHintData = record
  Tree: TBaseVirtualTree;
  Node: PVirtualNode;
  Column: TColumnIndex;
  HintRect: TRect;
  DefaultHint: UnicodeString;
  HintText: UnicodeString;
  BidiMode: TBidiMode;
  Alignment: TAlignment;
  LineBreakStyle: TVTToolTipLineBreakStyle;
end;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Members
Members | Description
HintRect: TRect; | used for draw trees only, string trees get the size from the hint string
DefaultHint: UnicodeString; | used only if there is no node specific hint string available or a header hint is about to appear
HintText: UnicodeString; | set when size of the hint window is calculated
Group

Structs and Records

File

VirtualTrees

Links
Structs and Records
What do you think about this topic? Send feedback!


TVTImageInfo Record
Structs and Records | Send Feedback

Not documented.

Pascal
TVTImageInfo = record
  Index: Integer;
  XPos: Integer;
  YPos: Integer;
  Ghosted: Boolean;
  Images: TCustomImageList;
end;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Members
Members | Description
Index: Integer; | index in the associated image list
Ghosted: Boolean; | flag to indicate that the image must be drawn slightly lighter
Group

Structs and Records

File

VirtualTrees

Links
Structs and Records
What do you think about this topic? Send feedback!


TVTOperationKind Enumeration
Structs and Records | Send Feedback

Not documented.

Pascal
TVTOperationKind = (
  okAutoFitColumns,
  okGetMaxColumnWidth,
  okSortNode,
  okSortTree
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Structs and Records

File

VirtualTrees

Links
Structs and Records
What do you think about this topic? Send feedback!


TVTPaintInfo Record
Structs and Records | Send Feedback

Not documented.

Pascal
TVTPaintInfo = record
  Canvas: TCanvas;
  PaintOptions: TVTInternalPaintOptions;
  Node: PVirtualNode;
  Column: TColumnIndex;
  Position: TColumnPosition;
  CellRect: TRect;
  ContentRect: TRect;
  NodeWidth: Integer;
  Alignment: TAlignment;
  CaptionAlignment: TAlignment;
  BidiMode: TBidiMode;
  BrushOrigin: TPoint;
  ImageInfo: array[TVTImageInfoIndex] of TVTImageInfo;
end;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Members
Members | Description
Canvas: TCanvas; | the canvas to paint on
PaintOptions: TVTInternalPaintOptions; | a copy of the paint options passed to PaintTree
Node: PVirtualNode; | the node to paint
Column: TColumnIndex; | the node's column index to paint
Position: TColumnPosition; | the column position of the node
NodeWidth: Integer; | the actual node width
Alignment: TAlignment; | how to align within the node rectangle
BidiMode: TBidiMode; | directionality to be used for painting
BrushOrigin: TPoint; | the alignment for the brush used to draw dotted lines
ImageInfo: array[TVTImageInfoIndex] of TVTImageInfo; | info about each possible node image
Group

Structs and Records

File

VirtualTrees

Links
Structs and Records
What do you think about this topic? Send feedback!


TVTReference Record
Structs and Records | Send Feedback

Not documented.

Pascal
TVTReference = record
  Process: Cardinal;
  Tree: TBaseVirtualTree;
end;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Structs and Records

File

VirtualTrees

Links
Structs and Records
What do you think about this topic? Send feedback!


TVTTooltipLineBreakStyle Enumeration
Structs and Records | Send Feedback

Not documented.

Pascal
TVTTooltipLineBreakStyle = (
  hlbDefault,
  hlbForceSingleLine,
  hlbForceMultiLine
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Structs and Records

File

VirtualTrees

Links
Structs and Records
What do you think about this topic? Send feedback!


TVZVirtualNodeEnumerationMode Enumeration
Structs and Records | Send Feedback

Not documented.

Pascal
TVZVirtualNodeEnumerationMode = (
  vneAll,
  vneChecked,
  vneChild,
  vneCutCopy,
  vneInitialized,
  vneLeaf,
  vneLevel,
  vneNoInit,
  vneSelected,
  vneVisible,
  vneVisibleChild,
  vneVisibleNoInitChild,
  vneVisibleNoInit
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Structs and Records

File

VirtualTrees

Links
Structs and Records
What do you think about this topic? Send feedback!


TWithSafeRect Record
Structs and Records | Send Feedback

Not documented.

Pascal
TWithSafeRect = record
  case Integer of
    0: (Bottom: Longint;
        Left: Longint;
        Right: Longint;
        Top: Longint;);
    1: (BottomRight: TPoint;
        TopLeft: TPoint;);
end;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Structs and Records

File

VirtualTrees

Links
Structs and Records
What do you think about this topic? Send feedback!


TWMPrint Record
Structs and Records | Send Feedback

Not documented.

Pascal
TWMPrint = packed record
  Msg: UINT;
  DC: HDC;
  Flags: LPARAM;
  Result: LRESULT;
end;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Structs and Records

File

VirtualTrees

Links
Structs and Records
What do you think about this topic? Send feedback!


Types
Enumerations | Virtual Treeview | Types | Legend | Send Feedback

The following table lists types in this documentation.

Description

These are all types that are contained in this documentation.

Enumerations

TAddPopupItemType
Not documented.
TBlendMode
Not documented.
TChangeReason
Not documented.
TCheckImageKind
Determines which images should be used for checkboxes and radio buttons.
TCheckState
Returns the current state of a node's check box, radio button or node button.
TCheckType
Not documented.
TDragOperation
Not documented.
TDropMode
Not documented.
THeaderState
Not documented.
THintAnimationType
Not documented.
THitPosition
Not documented.
TItemEraseAction
Not documented.
TScrollBarStyle
Not documented.
TSortDirection
Not documented.
TVirtualNodeInitState
Not documented.
TVirtualNodeState
Not documented.
TVirtualTreeColumnStyle
Not documented.
TVSTTextSourceType
Not documented.
TVSTTextType
Not documented.
TVTAnimationOption
Not documented.
TVTAutoOption
Not documented.
TVTButtonFillMode
Determines how the interior of nodes buttons should be drawn.
TVTButtonStyle
Not documented.
TVTColumnOption
Not documented.
TVTDragImageKind
Not documented.
TVTDragMoveRestriction
Not documented.
TVTDragType
Not documented.
TVTDrawSelectionMode
Not documented.
TVTDropMarkMode
Not documented.
TVTHeaderColumnLayout
Not documented.
TVTHeaderOption
Not documented.
TVTHeaderPopupOption
Not documented.
TVTHeaderStyle
Not documented.
TVTHintMode
Not documented.
TVTImageInfoIndex
Not documented.
TVTImageKind
Not documented.
TVTIncrementalSearch
Not documented.
TVTInternalPaintOption
Not documented.
TVTLineMode
Not documented.
TVTLineStyle
Not documented.
TVTLineType
Not documented.
TVTMiscOption
Not documented.
TVTNodeAlignment
Not documented.
TVTNodeAttachMode
Not documented.
TVTPaintOption
Not documented.
TVTSearchDirection
Not documented.
TVTSearchStart
Not documented.
TVTSelectionOption
Not documented.
TVTStringOption
Not documented.
TVTUpdateState
Not documented.

Group

Virtual Treeview

Types

PCardinal
Not documented.
PVirtualNode
Not documented.
TAddHeaderPopupItemEvent
Not documented.
TAutoScrollInterval
Not documented.
TCache
Not documented.
TCardinalArray
Not documented.
TChangeStates
Not documented.
TColumnChangeEvent
Not documented.
TColumnIndex
Not documented.
TColumnPosition
Not documented.
TColumnsArray
Not documented.
TDragOperations
Not documented.
TFormatArray
Not documented.
TFormatEtcArray
Not documented.
TGetFirstNodeProc
Not documented.
TGetNextNodeProc
Not documented.
THeaderPaintElements
Not documented.
THeaderStates
Not documented.
THitPositions
Not documented.
TIndexArray
Not documented.
TInternalStgMediumArray
Not documented.
TLineImage
Not documented.
TMagicID
Not documented.
TMouseButtons
Not documented.
TNodeArray
Not documented.
TScrollDirections
Not documented.
TScrollUpdateOptions
Not documented.
TTreeOptionsClass
Not documented.
TVirtualNodeInitStates
Not documented.
TVirtualNodeStates
Not documented.
TVirtualTreeClass
Not documented.
TVirtualTreeColumnClass
Not documented.
TVirtualTreeColumnsClass
Not documented.
TVirtualTreeStates
Not documented.
TVSTGetHintEvent
Not documented.
TVSTGetTextEvent
Not documented.
TVSTNewTextEvent
Not documented.
TVSTShortenStringEvent
Not documented.
TVTAddToSelectionEvent
Not documented.
TVTAdvancedHeaderPaintEvent
Not documented.
TVTAfterAutoFitColumnEvent
Not documented.
TVTAfterAutoFitColumnsEvent
Not documented.
TVTAfterCellPaintEvent
Not documented.
TVTAfterColumnWidthTrackingEvent
Not documented.
TVTAfterGetMaxColumnWidthEvent
Not documented.
TVTAfterHeaderHeightTrackingEvent
Not documented.
TVTAfterItemEraseEvent
Not documented.
TVTAfterItemPaintEvent
Not documented.
TVTAnimationCallback
Not documented.
TVTAnimationOptions
Not documented.
TVTAutoOptions
Not documented.
TVTBackgroundPaintEvent
Not documented.
TVTBeforeAutoFitColumnEvent
Not documented.
TVTBeforeAutoFitColumnsEvent
Not documented.
TVTBeforeCellPaintEvent
Not documented.
TVTBeforeColumnWidthTrackingEvent
Not documented.
TVTBeforeDrawLineImageEvent
Not documented.
TVTBeforeGetMaxColumnWidthEvent
Not documented.
TVTBeforeHeaderHeightTrackingEvent
Not documented.
TVTBeforeItemEraseEvent
Not documented.
TVTBeforeItemPaintEvent
Not documented.
TVTBias
Not documented.
TVTCanSplitterResizeColumnEvent
Not documented.
TVTCanSplitterResizeHeaderEvent
Not documented.
TVTCanSplitterResizeNodeEvent
Not documented.
TVTChangeEvent
Not documented.
TVTChangingEvent
Not documented.
TVTCheckChangingEvent
Not documented.
TVTColumnClickEvent
Not documented.
TVTColumnDblClickEvent
Not documented.
TVTColumnExportEvent
Not documented.
TVTColumnOptions
Not documented.
TVTColumnWidthDblClickResizeEvent
Not documented.
TVTColumnWidthTrackingEvent
Not documented.
TVTCompareEvent
Not documented.
TVTConstraintPercent
Not documented.
TVTCreateDataObjectEvent
Not documented.
TVTCreateDragManagerEvent
Not documented.
TVTCreateEditorEvent
Not documented.
TVTDragAllowedEvent
Not documented.
TVTDragDropEvent
Not documented.
TVTDragImageStates
Not documented.
TVTDragOverEvent
Not documented.
TVTDrawHintEvent
Not documented.
TVTDrawNodeEvent
Not documented.
TVTDrawTextEvent
Not documented.
TVTEditCancelEvent
Not documented.
TVTEditChangeEvent
Not documented.
TVTEditChangingEvent
Not documented.
TVTFocusChangeEvent
Not documented.
TVTFocusChangingEvent
Not documented.
TVTFreeNodeEvent
Not documented.
TVTGetCellContentMarginEvent
Not documented.
TVTGetCellIsEmptyEvent
Not documented.
TVTGetCursorEvent
Not documented.
TVTGetHeaderCursorEvent
Not documented.
TVTGetHintSizeEvent
Not documented.
TVTGetImageEvent
Not documented.
TVTGetImageExEvent
Not documented.
TVTGetImageTextEvent
Not documented.
TVTGetLineStyleEvent
Not documented.
TVTGetNodeDataSizeEvent
Not documented.
TVTGetNodeProc
Not documented.
TVTGetNodeWidthEvent
Not documented.
TVTGetUserClipboardFormatsEvent
Not documented.
TVTHeaderClass
Not documented.
TVTHeaderClickEvent
Not documented.
TVTHeaderDraggedEvent
Not documented.
TVTHeaderDraggedOutEvent
Not documented.
TVTHeaderDraggingEvent
Not documented.
TVTHeaderHeightDblClickResizeEvent
Not documented.
TVTHeaderHeightTrackingEvent
Not documented.
TVTHeaderHitPositions
Not documented.
TVTHeaderMouseEvent
Not documented.
TVTHeaderMouseMoveEvent
Not documented.
TVTHeaderNotifyEvent
Not documented.
TVTHeaderOptions
Not documented.
TVTHeaderPaintEvent
Not documented.
TVTHeaderPaintQueryElementsEvent
Not documented.
TVTHeaderPopupOptions
Not documented.
TVTHelpContextEvent
Not documented.
TVTHotNodeChangeEvent
Not documented.
TVTIncrementalSearchEvent
Not documented.
TVTInitChildrenEvent
Not documented.
TVTInitNodeEvent
Not documented.
TVTInternalPaintOptions
Not documented.
TVTKeyActionEvent
Not documented.
TVTMeasureItemEvent
Not documented.
TVTMeasureTextEvent
Not documented.
TVTMenuItem
Not documented.
TVTMiscOptions
Not documented.
TVTNodeClickEvent
Not documented.
TVTNodeCopiedEvent
Not documented.
TVTNodeCopyingEvent
Not documented.
TVTNodeExportEvent
Not documented.
TVTNodeHeightDblClickResizeEvent
Not documented.
TVTNodeHeightTrackingEvent
Not documented.
TVTNodeMovedEvent
Not documented.
TVTNodeMovingEvent
Not documented.
TVTOperationEvent
Not documented.
TVTOperationKinds
Not documented.
TVTPaintEvent
Not documented.
TVTPaintOptions
Not documented.
TVTPaintText
Not documented.
TVTPopupEvent
Not documented.
TVTRemoveFromSelectionEvent
Not documented.
TVTRenderOLEDataEvent
Not documented.
TVTSaveNodeEvent
Not documented.
TVTSaveTreeEvent
Not documented.
TVTScrollbarShowEvent
Not documented.
TVTScrollEvent
Not documented.
TVTScrollIncrement
Not documented.
TVTSelectionOptions
Not documented.
TVTStateChangeEvent
Not documented.
TVTStringOptions
Not documented.
TVTStructureChangeEvent
Not documented.
TVTTransparency
Not documented.
TVTTreeExportEvent
Not documented.
TVTUpdatingEvent
Not documented.
TWMPrintClient
Not documented.
UnicodeString
Not documented.

Legend

Type
Enumeration

Links
Enumerations, Virtual Treeview, Types, Legend


PCardinal Type
Types | Send Feedback

Not documented.

Pascal
PCardinal = ^Cardinal;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


PVirtualNode Type
Types | Send Feedback

Not documented.

Pascal
PVirtualNode = ^TVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TAddHeaderPopupItemEvent Type
Types | Send Feedback

Not documented.

Pascal
TAddHeaderPopupItemEvent = procedure (const Sender: TBaseVirtualTree; const Column: TColumnIndex; var Cmd: TAddPopupItemType) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VTHeaderPopup

Links
Types
What do you think about this topic? Send feedback!


TAddPopupItemType Enumeration
Types | Send Feedback

Not documented.

Pascal
TAddPopupItemType = (
  apNormal,
  apDisabled,
  apHidden
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VTHeaderPopup

Links
Types
What do you think about this topic? Send feedback!


TAutoScrollInterval Type
Types | Send Feedback

Not documented.

Pascal
TAutoScrollInterval = 1..1000;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TBlendMode Enumeration
Types | Send Feedback

Not documented.

Pascal
TBlendMode = (
  bmConstantAlpha,
  bmPerPixelAlpha,
  bmMasterAlpha,
  bmConstantAlphaAndColor
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Members
Members | Description
bmConstantAlpha | apply given constant alpha
bmPerPixelAlpha | use alpha value of the source pixel
bmMasterAlpha | use alpha value of source pixel and multiply it with the constant alpha value
bmConstantAlphaAndColor | blend the destination color with the given constant color und the constant alpha value
Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TCache Type
Types | Send Feedback

Not documented.

Pascal
TCache = array of TCacheEntry;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TCardinalArray Type
Types | Send Feedback

Not documented.

Pascal
TCardinalArray = array of Cardinal;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TChangeReason Enumeration
Types | Send Feedback

Not documented.

Pascal
TChangeReason = (
  crIgnore,
  crAccumulated,
  crChildAdded,
  crChildDeleted,
  crNodeAdded,
  crNodeCopied,
  crNodeMoved
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Members
Members | Description
crIgnore | used as placeholder
crAccumulated | used for delayed changes
crChildAdded | one or more child nodes have been added
crChildDeleted | one or more child nodes have been deleted
crNodeAdded | a node has been added
crNodeCopied | a node has been duplicated
crNodeMoved | a node has been moved to a new place
Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TChangeStates Type
Types | Send Feedback

Not documented.

Pascal
TChangeStates = set of ( csStopValidation, csUseCache, csValidating, csValidationNeeded );
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TCheckImageKind Enumeration
Types | Send Feedback

Determines which images should be used for checkboxes and radio buttons.

Pascal
TCheckImageKind = (
  ckLightCheck,
  ckDarkCheck,
  ckLightTick,
  ckDarkTick,
  ckFlat,
  ckXP,
  ckCustom,
  ckSystemFlat,
  ckSystemDefault
);
Description

Provided with the tree are nine different image sets for the check images used when toCheckSupport is enabled in TreeOptions.

Eight of the nine lists are predefined while one is a custom check image list, which can be filled by the application. Use ckCustom as CheckImageKind value and assign an image list to the CustomCheckImages property to enable custom images.

The order of the images in the image lists is always as listed below. Make sure you have the same amount of images in your custom image list, if you want own check images.

  • empty image (ckEmpty)

Radio buttons:

  • uncheck normal (ckRadioUncheckedNormal)
  • unchecked hot (ckRadioUncheckedHot)
  • unchecked pressed (ckRadioUncheckedPressed)
  • unchecked disabled (ckRadioUncheckedDisabled)
  • checked normal (ckRadioCheckedNormal)
  • checked hot (ckRadioCheckedHot)
  • checked pressed (ckRadioCheckedPressed)
  • checked disabled (ckRadioCheckedDisabled)

Check boxes:

  • unchecked normal (ckCheckUncheckedNormal)
  • unchecked hot (ckCheckUncheckedHot)
  • unchecked pressed (ckCheckUncheckedPressed)
  • unchecked disabled (ckCheckUncheckedDisabled)
  • checked normal (ckCheckCheckedNormal)
  • checked hot (ckCheckCheckedHot)
  • checked pressed (ckCheckCheckedPressed)
  • checked disabled (ckCheckCheckedDisabled)
  • mixed normal (ckCheckMixedNormal)
  • mixed hot (ckCheckMixedHot)
  • mixed pressed (ckCheckMixedPressed)
  • mixed disabled (ckCheckMixedDisabled)

Node buttons:

  • button normal (ckButtonNormal)
  • button hot (ckButtonHot)
  • button pressed (ckButtonPressed)
  • button disabled (ckButtonDisabled)
Members
Members | Description
ckLightCheck | gray cross
ckDarkCheck | black cross
ckLightTick | gray tick mark
ckDarkTick | black tick mark
ckFlat | flat images (no 3D border)
ckXP | Windows XP style
ckCustom | application defined check images
ckSystemFlat | Flat system defined check images.
ckSystemDefault | System defined check images.
Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TCheckState Enumeration
Types | Send Feedback

Returns the current state of a node's check box, radio button or node button.

Pascal
TCheckState = (
  csUncheckedNormal,
  csUncheckedPressed,
  csCheckedNormal,
  csCheckedPressed,
  csMixedNormal,
  csMixedPressed
);
Description

The check states include both, transient and fluent (temporary) states. The only temporary state defined so far is the pressed state.

Members
Members | Description
csUncheckedNormal | unchecked and not pressed
csUncheckedPressed | unchecked and pressed
csCheckedNormal | checked and not pressed
csCheckedPressed | checked and pressed
csMixedNormal | 3-state check box and not pressed
csMixedPressed | 3-state check box and pressed
Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TCheckType Enumeration
Types | Send Feedback

Not documented.

Pascal
TCheckType = (
  ctNone,
  ctTriStateCheckBox,
  ctCheckBox,
  ctRadioButton,
  ctButton
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TColumnChangeEvent Type
Types | Send Feedback

Not documented.

Pascal
TColumnChangeEvent = procedure (const Sender: TBaseVirtualTree; const Column: TColumnIndex; Visible: Boolean) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VTHeaderPopup

Links
Types
What do you think about this topic? Send feedback!


TColumnIndex Type
Types | Send Feedback

Not documented.

Pascal
TColumnIndex = type Integer;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TColumnPosition Type
Types | Send Feedback

Not documented.

Pascal
TColumnPosition = type Cardinal;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TColumnsArray Type
Types | Send Feedback

Not documented.

Pascal
TColumnsArray = array of TVirtualTreeColumn;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TDragOperation Enumeration
Types | Send Feedback

Not documented.

Pascal
TDragOperation = (
  doCopy,
  doMove,
  doLink
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TDragOperations Type
Types | Send Feedback

Not documented.

Pascal
TDragOperations = set of TDragOperation;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TDropMode Enumeration
Types | Send Feedback

Not documented.

Pascal
TDropMode = (
  dmNowhere,
  dmAbove,
  dmOnNode,
  dmBelow
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TFormatArray Type
Types | Send Feedback

Not documented.

Pascal
TFormatArray = array of Word;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TFormatEtcArray Type
Types | Send Feedback

Not documented.

Pascal
TFormatEtcArray = array of TFormatEtc;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TGetFirstNodeProc Type
Types | Send Feedback

Not documented.

Pascal
TGetFirstNodeProc = function : PVirtualNode of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TGetNextNodeProc Type
Types | Send Feedback

Not documented.

Pascal
TGetNextNodeProc = function (Node: PVirtualNode; ConsiderChildrenAbove: Boolean = False): PVirtualNode of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


THeaderPaintElements Type
Types | Send Feedback

Not documented.

Pascal
THeaderPaintElements = set of ( hpeBackground, hpeDropMark, hpeHeaderGlyph, hpeSortGlyph, hpeText );
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


THeaderState Enumeration
Types | Send Feedback

Not documented.

Pascal
THeaderState = (
  hsAutoSizing,
  hsDragging,
  hsDragPending,
  hsLoading,
  hsColumnWidthTracking,
  hsColumnWidthTrackPending,
  hsHeightTracking,
  hsHeightTrackPending,
  hsResizing,
  hsScaling,
  hsNeedScaling
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Members
Members | Description
hsAutoSizing | auto size chain is in progess, do not trigger again on WM_SIZE
hsDragging | header dragging is in progress (only if enabled)
hsDragPending | left button is down, user might want to start dragging a column
hsLoading | The header currently loads from stream, so updates are not necessary.
hsColumnWidthTracking | column resizing is in progress
hsColumnWidthTrackPending | left button is down, user might want to start resize a column
hsResizing | multi column resizing in progress
Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


THeaderStates Type
Types | Send Feedback

Not documented.

Pascal
THeaderStates = set of THeaderState;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


THintAnimationType Enumeration
Types | Send Feedback

Not documented.

Pascal
THintAnimationType = (
  hatNone,
  hatFade,
  hatSlide,
  hatSystemDefault
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Members
Members | Description
hatNone | no animation at all, just display hint/tooltip
hatFade | fade in the hint/tooltip, like in Windows 2000
hatSlide | slide in the hint/tooltip, like in Windows 98
hatSystemDefault | use what the system is using (slide for Win9x, slide/fade for Win2K+, depends on settings)
Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


THitPosition Enumeration
Types | Send Feedback

Not documented.

Pascal
THitPosition = (
  hiAbove,
  hiBelow,
  hiNowhere,
  hiOnItem,
  hiOnItemButton,
  hiOnItemButtonExact,
  hiOnItemCheckbox,
  hiOnItemIndent,
  hiOnItemLabel,
  hiOnItemLeft,
  hiOnItemRight,
  hiOnNormalIcon,
  hiOnStateIcon,
  hiToLeft,
  hiToRight,
  hiUpperSplitter,
  hiLowerSplitter
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Members
Members | Description
hiAbove | above the client area (if relative) or the absolute tree area
hiBelow | below the client area (if relative) or the absolute tree area
hiNowhere | no node is involved (possible only if the tree is not as tall as the client area)
hiOnItem | on the bitmaps/buttons or label associated with an item
hiOnItemButton | on the button associated with an item
hiOnItemCheckbox | on the checkbox if enabled
hiOnItemIndent | in the indentation area in front of a node
hiOnItemLabel | on the normal text area associated with an item
hiOnItemLeft | when right aligned or centered)
hiOnItemRight | if left aligned or centered)
hiOnNormalIcon | on the "normal" image
hiOnStateIcon | on the state image
hiToLeft | to the left of the client area (if relative) or the absolute tree area
hiToRight | to the right of the client area (if relative) or the absolute tree area
Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


THitPositions Type
Types | Send Feedback

Not documented.

Pascal
THitPositions = set of THitPosition;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TIndexArray Type
Types | Send Feedback

Not documented.

Pascal
TIndexArray = array of TColumnIndex;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TInternalStgMediumArray Type
Types | Send Feedback

Not documented.

Pascal
TInternalStgMediumArray = array of TInternalStgMedium;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TItemEraseAction Enumeration
Types | Send Feedback

Not documented.

Pascal
TItemEraseAction = (
  eaColor,
  eaDefault,
  eaNone
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Members
Members | Description
eaColor | Use the provided color to erase the background instead the one of the tree.
eaDefault | The tree should erase the item's background (bitmap or solid).
eaNone | Let the application paint the background.
Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TLineImage Type
Types | Send Feedback

Not documented.

Pascal
TLineImage = array of TVTLineType;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TMagicID Type
Types | Send Feedback

Not documented.

Pascal
TMagicID = array[0..5] of WideChar;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TMouseButtons Type
Types | Send Feedback

Not documented.

Pascal
TMouseButtons = set of TMouseButton;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TNodeArray Type
Types | Send Feedback

Not documented.

Pascal
TNodeArray = array of PVirtualNode;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TScrollBarStyle Enumeration
Types | Send Feedback

Not documented.

Pascal
TScrollBarStyle = (
  sbmRegular,
  sbm3D
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TScrollDirections Type
Types | Send Feedback

Not documented.

Pascal
TScrollDirections = set of ( sdLeft, sdUp, sdRight, sdDown );
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TScrollUpdateOptions Type
Types | Send Feedback

Not documented.

Pascal
TScrollUpdateOptions = set of ( suoRepaintHeader, suoRepaintScrollbars, suoScrollClientArea, suoUpdateNCArea );
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TSortDirection Enumeration
Types | Send Feedback

Not documented.

Pascal
TSortDirection = (
  sdAscending,
  sdDescending
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TTreeOptionsClass Type
Types | Send Feedback

Not documented.

Pascal
TTreeOptionsClass = class of TCustomVirtualTreeOptions;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVirtualNodeInitState Enumeration
Types | Send Feedback

Not documented.

Pascal
TVirtualNodeInitState = (
  ivsDisabled,
  ivsExpanded,
  ivsHasChildren,
  ivsMultiline,
  ivsSelected,
  ivsFiltered,
  ivsReInit
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVirtualNodeInitStates Type
Types | Send Feedback

Not documented.

Pascal
TVirtualNodeInitStates = set of TVirtualNodeInitState;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVirtualNodeState Enumeration
Types | Send Feedback

Not documented.

Pascal
TVirtualNodeState = (
  vsInitialized,
  vsChecking,
  vsCutOrCopy,
  vsDisabled,
  vsDeleting,
  vsExpanded,
  vsHasChildren,
  vsVisible,
  vsSelected,
  vsInitialUserData,
  vsAllChildrenHidden,
  vsClearing,
  vsMultiline,
  vsHeightMeasured,
  vsToggling,
  vsFiltered
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Members
Members | Description
vsInitialized | Set after the node has been initialized.
vsChecking | Node's check state is changing, avoid propagation.
vsCutOrCopy | Node is selected as cut or copy and paste source.
vsDisabled | Set if node is disabled.
vsDeleting | Set when the node is about to be freed.
vsExpanded | Set if the node is expanded.
vsHasChildren | Indicates the presence of child nodes without actually setting them.
vsVisible | Indicate whether the node is visible or not (independant of the expand states of its parents).
vsSelected | Set if the node is in the current selection.
vsInitialUserData | Set if (via AddChild or InsertNode) initial user data has been set which requires OnFreeNode.
vsAllChildrenHidden | Set if vsHasChildren is set and no child node has the vsVisible flag set.
vsClearing | Don't register structure change event.
vsMultiline | Node text is wrapped at the cell boundaries instead of being shorted.
vsHeightMeasured | Node height has been determined and does not need a recalculation.
Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVirtualNodeStates Type
Types | Send Feedback

Not documented.

Pascal
TVirtualNodeStates = set of TVirtualNodeState;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVirtualTreeClass Type
Types | Send Feedback

Not documented.

Pascal
TVirtualTreeClass = class of TBaseVirtualTree;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVirtualTreeColumnClass Type
Types | Send Feedback

Not documented.

Pascal
TVirtualTreeColumnClass = class of TVirtualTreeColumn;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVirtualTreeColumnsClass Type
Types | Send Feedback

Not documented.

Pascal
TVirtualTreeColumnsClass = class of TVirtualTreeColumns;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVirtualTreeColumnStyle Enumeration
Types | Send Feedback

Not documented.

Pascal
TVirtualTreeColumnStyle = (
  vsText,
  vsOwnerDraw
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVirtualTreeStates Type
Types | Send Feedback

Not documented.

Pascal
TVirtualTreeStates = set of ( tsCancelHintAnimation, tsChangePending, tsCheckPropagation, tsCollapsing, tsToggleFocusedSelection, tsClearPending, tsClipboardFlushing, tsCopyPending, tsCutPending, tsDrawSelPending, tsDrawSelecting, tsEditing, tsEditPending, tsExpanding, tsNodeHeightTracking, tsNodeHeightTrackPending, tsHint, tsInAnimation, tsIncrementalSearching, tsIncrementalSearchPending, tsIterating, tsKeyCheckPending, tsLeftButtonDown, tsLeftDblClick, tsMouseCheckPending, tsMiddleButtonDown, tsMiddleDblClick, tsNeedScale, tsNeedRootCountUpdate, tsOLEDragging, tsOLEDragPending, tsPainting, tsRightButtonDown, tsRightDblClick, tsPopupMenuShown, tsScrolling, tsScrollPending, tsSizing, tsStopValidation, tsStructureChangePending, tsSynchMode, tsThumbTracking, tsToggling, tsUpdateHiddenChildrenNeeded, tsUpdating, tsUseCache, tsUserDragObject, tsUseThemes, tsValidating, tsValidationNeeded, tsVCLDragging, tsVCLDragPending, tsVCLDragFinished, tsWheelPanning, tsWheelScrolling, tsWindowCreating, tsUseExplorerTheme );
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVSTGetHintEvent Type
Types | Send Feedback

Not documented.

Pascal
TVSTGetHintEvent = procedure (Sender: TBaseVirtualTree; Node: PVirtualNode; Column: TColumnIndex; var LineBreakStyle: TVTTooltipLineBreakStyle; var HintText: UnicodeString) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVSTGetTextEvent Type
Types | Send Feedback

Not documented.

Pascal
TVSTGetTextEvent = procedure (Sender: TBaseVirtualTree; Node: PVirtualNode; Column: TColumnIndex; TextType: TVSTTextType; var CellText: UnicodeString) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVSTNewTextEvent Type
Types | Send Feedback

Not documented.

Pascal
TVSTNewTextEvent = procedure (Sender: TBaseVirtualTree; Node: PVirtualNode; Column: TColumnIndex; NewText: UnicodeString) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVSTShortenStringEvent Type
Types | Send Feedback

Not documented.

Pascal
TVSTShortenStringEvent = procedure (Sender: TBaseVirtualTree; TargetCanvas: TCanvas; Node: PVirtualNode; Column: TColumnIndex; const S: UnicodeString; TextSpace: Integer; var Result: UnicodeString; var Done: Boolean) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVSTTextSourceType Enumeration
Types | Send Feedback

Not documented.

Pascal
TVSTTextSourceType = (
  tstAll,
  tstInitialized,
  tstSelected,
  tstCutCopySet,
  tstVisible,
  tstChecked
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Members
Members | Description
tstAll | Initialization is done on the fly.
tstInitialized | Only initialized nodes are rendered.
tstSelected | Only selected nodes are rendered.
tstCutCopySet | Only nodes currently marked as being in the cut/copy clipboard set are rendered.
tstVisible | Only visible nodes are rendered.
Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVSTTextType Enumeration
Types | Send Feedback

Not documented.

Pascal
TVSTTextType = (
  ttNormal,
  ttStatic
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Members
Members | Description
ttNormal | normal label of the node, this is also the text which can be edited
ttStatic | static (non-editable) text after the normal text
Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTAddToSelectionEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTAddToSelectionEvent = procedure (Sender: TBaseVirtualTree; Node: PVirtualNode) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTAdvancedHeaderPaintEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTAdvancedHeaderPaintEvent = procedure (Sender: TVTHeader; var PaintInfo: THeaderPaintInfo; const Elements: THeaderPaintElements) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTAfterAutoFitColumnEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTAfterAutoFitColumnEvent = procedure (Sender: TVTHeader; Column: TColumnIndex) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTAfterAutoFitColumnsEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTAfterAutoFitColumnsEvent = procedure (Sender: TVTHeader) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTAfterCellPaintEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTAfterCellPaintEvent = procedure (Sender: TBaseVirtualTree; TargetCanvas: TCanvas; Node: PVirtualNode; Column: TColumnIndex; CellRect: TRect) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTAfterColumnWidthTrackingEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTAfterColumnWidthTrackingEvent = procedure (Sender: TVTHeader; Column: TColumnIndex) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTAfterGetMaxColumnWidthEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTAfterGetMaxColumnWidthEvent = procedure (Sender: TVTHeader; Column: TColumnIndex; var MaxWidth: Integer) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTAfterHeaderHeightTrackingEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTAfterHeaderHeightTrackingEvent = procedure (Sender: TVTHeader) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTAfterItemEraseEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTAfterItemEraseEvent = procedure (Sender: TBaseVirtualTree; TargetCanvas: TCanvas; Node: PVirtualNode; ItemRect: TRect) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTAfterItemPaintEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTAfterItemPaintEvent = procedure (Sender: TBaseVirtualTree; TargetCanvas: TCanvas; Node: PVirtualNode; ItemRect: TRect) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTAnimationCallback Type
Types | Send Feedback

Not documented.

Pascal
TVTAnimationCallback = function (Step, StepSize: Integer; Data: Pointer): Boolean of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTAnimationOption Enumeration
Types | Send Feedback

Not documented.

Pascal
TVTAnimationOption = (
  toAnimatedToggle,
  toAdvancedAnimatedToggle
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Members
Members | Description
toAnimatedToggle | Expanding and collapsing a node is animated (quick window scroll).
Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTAnimationOptions Type
Types | Send Feedback

Not documented.

Pascal
TVTAnimationOptions = set of TVTAnimationOption;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTAutoOption Enumeration
Types | Send Feedback

Not documented.

Pascal
TVTAutoOption = (
  toAutoDropExpand,
  toAutoExpand,
  toAutoScroll,
  toAutoScrollOnExpand,
  toAutoSort,
  toAutoSpanColumns,
  toAutoTristateTracking,
  toAutoHideButtons,
  toAutoDeleteMovedNodes,
  toDisableAutoscrollOnFocus,
  toAutoChangeScale,
  toAutoFreeOnCollapse,
  toDisableAutoscrollOnEdit,
  toAutoBidiColumnOrdering
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Members
Members | Description
toAutoDropExpand | Expand node if it is the drop target for more than certain time.
toAutoExpand | Nodes are expanded (collapsed) when getting (losing) the focus.
toAutoScroll | Scroll if mouse is near the border while dragging or selecting.
toAutoScrollOnExpand | Scroll as many child nodes in view as possible after expanding a node.
toAutoSort | Sort tree when Header.SortColumn or Header.SortDirection change or sort node if child nodes are added.
toAutoSpanColumns | Large entries continue into next column(s) if there's no text in them (no clipping).
toAutoTristateTracking | Checkstates are automatically propagated for tri state check boxes.
toAutoHideButtons | Node buttons are hidden when there are child nodes, but all are invisible.
toAutoDeleteMovedNodes | Delete nodes which where moved in a drag operation (if not directed otherwise).
toDisableAutoscrollOnFocus | Disable scrolling a column entirely into view if it gets focused.
toAutoChangeScale | Change default node height automatically if the system's font scale is set to big fonts.
toAutoFreeOnCollapse | Frees any child node after a node has been collapsed (HasChildren flag stays there).
Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTAutoOptions Type
Types | Send Feedback

Not documented.

Pascal
TVTAutoOptions = set of TVTAutoOption;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTBackgroundPaintEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTBackgroundPaintEvent = procedure (Sender: TBaseVirtualTree; TargetCanvas: TCanvas; R: TRect; var Handled: Boolean) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTBeforeAutoFitColumnEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTBeforeAutoFitColumnEvent = procedure (Sender: TVTHeader; Column: TColumnIndex; var SmartAutoFitType: TSmartAutoFitType; var Allowed: Boolean) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTBeforeAutoFitColumnsEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTBeforeAutoFitColumnsEvent = procedure (Sender: TVTHeader; var SmartAutoFitType: TSmartAutoFitType) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTBeforeCellPaintEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTBeforeCellPaintEvent = procedure (Sender: TBaseVirtualTree; TargetCanvas: TCanvas; Node: PVirtualNode; Column: TColumnIndex; CellPaintMode: TVTCellPaintMode; CellRect: TRect; var ContentRect: TRect) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTBeforeColumnWidthTrackingEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTBeforeColumnWidthTrackingEvent = procedure (Sender: TVTHeader; Column: TColumnIndex; Shift: TShiftState) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTBeforeDrawLineImageEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTBeforeDrawLineImageEvent = procedure (Sender: TBaseVirtualTree; Node: PVirtualNode; Level: Integer; var PosX: Integer) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTBeforeGetMaxColumnWidthEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTBeforeGetMaxColumnWidthEvent = procedure (Sender: TVTHeader; Column: TColumnIndex; var UseSmartColumnWidth: Boolean) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTBeforeHeaderHeightTrackingEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTBeforeHeaderHeightTrackingEvent = procedure (Sender: TVTHeader; Shift: TShiftState) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTBeforeItemEraseEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTBeforeItemEraseEvent = procedure (Sender: TBaseVirtualTree; TargetCanvas: TCanvas; Node: PVirtualNode; ItemRect: TRect; var ItemColor: TColor; var EraseAction: TItemEraseAction) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTBeforeItemPaintEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTBeforeItemPaintEvent = procedure (Sender: TBaseVirtualTree; TargetCanvas: TCanvas; Node: PVirtualNode; ItemRect: TRect; var CustomDraw: Boolean) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTBias Type
Types | Send Feedback

Not documented.

Pascal
TVTBias = -128..127;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTButtonFillMode Enumeration
Types | Send Feedback

Determines how the interior of nodes buttons should be drawn.

Pascal
TVTButtonFillMode = (
  fmTreeColor,
  fmWindowColor,
  fmShaded,
  fmTransparent
);
Description

Usually the little plus and minus buttons have just the color of the treeview but sometimes it looks better to use another kind of painting. This is particularly important when simulating Windows XP buttons on non-XP systems. The image below shows how the various modes look like:

Members
Members | Description
fmTreeColor | solid color, uses the tree's background color
fmWindowColor | solid color, uses clWindow
fmShaded | color gradient, Windows XP style (legacy code, use toThemeAware on Windows XP instead)
fmTransparent | transparent color, use the item's background color
Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTButtonStyle Enumeration
Types | Send Feedback

Not documented.

Pascal
TVTButtonStyle = (
  bsRectangle,
  bsTriangle
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Members
Members | Description
bsRectangle | traditional Windows look (plus/minus buttons)
bsTriangle | traditional Macintosh look
Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTCanSplitterResizeColumnEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTCanSplitterResizeColumnEvent = procedure (Sender: TVTHeader; P: TPoint; Column: TColumnIndex; var Allowed: Boolean) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTCanSplitterResizeHeaderEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTCanSplitterResizeHeaderEvent = procedure (SendeR: TVTHeader; P: TPoint; var Allowed: Boolean) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTCanSplitterResizeNodeEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTCanSplitterResizeNodeEvent = procedure (Sender: TBaseVirtualTree; P: TPoint; Node: PVirtualNode; Column: TColumnIndex; var Allowed: Boolean) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTChangeEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTChangeEvent = procedure (Sender: TBaseVirtualTree; Node: PVirtualNode) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTChangingEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTChangingEvent = procedure (Sender: TBaseVirtualTree; Node: PVirtualNode; var Allowed: Boolean) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTCheckChangingEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTCheckChangingEvent = procedure (Sender: TBaseVirtualTree; Node: PVirtualNode; var NewState: TCheckState; var Allowed: Boolean) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTColumnClickEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTColumnClickEvent = procedure (Sender: TBaseVirtualTree; Column: TColumnIndex; Shift: TShiftState) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTColumnDblClickEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTColumnDblClickEvent = procedure (Sender: TBaseVirtualTree; Column: TColumnIndex; Shift: TShiftState) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTColumnExportEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTColumnExportEvent = procedure (Sender: TBaseVirtualTree; aExportType: TVTExportType; Column: TVirtualTreeColumn) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTColumnOption Enumeration
Types | Send Feedback

Not documented.

Pascal
TVTColumnOption = (
  coAllowClick,
  coDraggable,
  coEnabled,
  coParentBidiMode,
  coParentColor,
  coResizable,
  coShowDropMark,
  coVisible,
  coAutoSpring,
  coFixed,
  coSmartResize,
  coAllowFocus,
  coDisableAnimatedResize,
  coWrapCaption,
  coUseCaptionAlignment
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTColumnOptions Type
Types | Send Feedback

Not documented.

Pascal
TVTColumnOptions = set of TVTColumnOption;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTColumnWidthDblClickResizeEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTColumnWidthDblClickResizeEvent = procedure (Sender: TVTHeader; Column: TColumnIndex; Shift: TShiftState; P: TPoint; var Allowed: Boolean) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTColumnWidthTrackingEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTColumnWidthTrackingEvent = procedure (Sender: TVTHeader; Column: TColumnIndex; Shift: TShiftState; var TrackPoint: TPoint; P: TPoint; var Allowed: Boolean) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTCompareEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTCompareEvent = procedure (Sender: TBaseVirtualTree; Node1, Node2: PVirtualNode; Column: TColumnIndex; var Result: Integer) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTConstraintPercent Type
Types | Send Feedback

Not documented.

Pascal
TVTConstraintPercent = 0..100;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTCreateDataObjectEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTCreateDataObjectEvent = procedure (Sender: TBaseVirtualTree; out IDataObject: IDataObject) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTCreateDragManagerEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTCreateDragManagerEvent = procedure (Sender: TBaseVirtualTree; out DragManager: IVTDragManager) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTCreateEditorEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTCreateEditorEvent = procedure (Sender: TBaseVirtualTree; Node: PVirtualNode; Column: TColumnIndex; out EditLink: IVTEditLink) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTDragAllowedEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTDragAllowedEvent = procedure (Sender: TBaseVirtualTree; Node: PVirtualNode; Column: TColumnIndex; var Allowed: Boolean) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTDragDropEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTDragDropEvent = procedure (Sender: TBaseVirtualTree; Source: TObject; DataObject: IDataObject; Formats: TFormatArray; Shift: TShiftState; Pt: TPoint; var Effect: Integer; Mode: TDropMode) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTDragImageKind Enumeration
Types | Send Feedback

Not documented.

Pascal
TVTDragImageKind = (
  diComplete,
  diMainColumnOnly,
  diNoImage
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Members
Members | Description
diComplete | show a complete drag image with all columns, only visible columns are shown
diMainColumnOnly | show only the main column (the tree column)
diNoImage | don't show a drag image at all
Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTDragImageStates Type
Types | Send Feedback

Not documented.

Pascal
TVTDragImageStates = set of ( disHidden, disInDrag, disPrepared, disSystemSupport );
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTDragMoveRestriction Enumeration
Types | Send Feedback

Not documented.

Pascal
TVTDragMoveRestriction = (
  dmrNone,
  dmrHorizontalOnly,
  dmrVerticalOnly
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTDragOverEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTDragOverEvent = procedure (Sender: TBaseVirtualTree; Source: TObject; Shift: TShiftState; State: TDragState; Pt: TPoint; Mode: TDropMode; var Effect: Integer; var Accept: Boolean) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTDragType Enumeration
Types | Send Feedback

Not documented.

Pascal
TVTDragType = (
  dtOLE,
  dtVCL
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTDrawHintEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTDrawHintEvent = procedure (Sender: TBaseVirtualTree; HintCanvas: TCanvas; Node: PVirtualNode; R: TRect; Column: TColumnIndex) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTDrawNodeEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTDrawNodeEvent = procedure (Sender: TBaseVirtualTree; const PaintInfo: TVTPaintInfo) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTDrawSelectionMode Enumeration
Types | Send Feedback

Not documented.

Pascal
TVTDrawSelectionMode = (
  smDottedRectangle,
  smBlendedRectangle
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Members
Members | Description
smDottedRectangle | same as DrawFocusRect
smBlendedRectangle | alpha blending, uses special colors (see TVTColors)
Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTDrawTextEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTDrawTextEvent = procedure (Sender: TBaseVirtualTree; TargetCanvas: TCanvas; Node: PVirtualNode; Column: TColumnIndex; const Text: UnicodeString; const CellRect: TRect; var DefaultDraw: Boolean) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTDropMarkMode Enumeration
Types | Send Feedback

Not documented.

Pascal
TVTDropMarkMode = (
  dmmNone,
  dmmLeft,
  dmmRight
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTEditCancelEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTEditCancelEvent = procedure (Sender: TBaseVirtualTree; Column: TColumnIndex) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTEditChangeEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTEditChangeEvent = procedure (Sender: TBaseVirtualTree; Node: PVirtualNode; Column: TColumnIndex) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTEditChangingEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTEditChangingEvent = procedure (Sender: TBaseVirtualTree; Node: PVirtualNode; Column: TColumnIndex; var Allowed: Boolean) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTFocusChangeEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTFocusChangeEvent = procedure (Sender: TBaseVirtualTree; Node: PVirtualNode; Column: TColumnIndex) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTFocusChangingEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTFocusChangingEvent = procedure (Sender: TBaseVirtualTree; OldNode, NewNode: PVirtualNode; OldColumn, NewColumn: TColumnIndex; var Allowed: Boolean) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTFreeNodeEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTFreeNodeEvent = procedure (Sender: TBaseVirtualTree; Node: PVirtualNode) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTGetCellContentMarginEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTGetCellContentMarginEvent = procedure (Sender: TBaseVirtualTree; HintCanvas: TCanvas; Node: PVirtualNode; Column: TColumnIndex; CellContentMarginType: TVTCellContentMarginType; var CellContentMargin: TPoint) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTGetCellIsEmptyEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTGetCellIsEmptyEvent = procedure (Sender: TBaseVirtualTree; Node: PVirtualNode; Column: TColumnIndex; var IsEmpty: Boolean) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTGetCursorEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTGetCursorEvent = procedure (Sender: TBaseVirtualTree; var Cursor: TCursor) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTGetHeaderCursorEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTGetHeaderCursorEvent = procedure (Sender: TVTHeader; var Cursor: HCURSOR) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTGetHintSizeEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTGetHintSizeEvent = procedure (Sender: TBaseVirtualTree; Node: PVirtualNode; Column: TColumnIndex; var R: TRect) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTGetImageEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTGetImageEvent = procedure (Sender: TBaseVirtualTree; Node: PVirtualNode; Kind: TVTImageKind; Column: TColumnIndex; var Ghosted: Boolean; var ImageIndex: Integer) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTGetImageExEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTGetImageExEvent = procedure (Sender: TBaseVirtualTree; Node: PVirtualNode; Kind: TVTImageKind; Column: TColumnIndex; var Ghosted: Boolean; var ImageIndex: Integer; var ImageList: TCustomImageList) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTGetImageTextEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTGetImageTextEvent = procedure (Sender: TBaseVirtualTree; Node: PVirtualNode; Kind: TVTImageKind; Column: TColumnIndex; var ImageText: UnicodeString) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTGetLineStyleEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTGetLineStyleEvent = procedure (Sender: TBaseVirtualTree; var Bits: Pointer) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTGetNodeDataSizeEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTGetNodeDataSizeEvent = procedure (Sender: TBaseVirtualTree; var NodeDataSize: Integer) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTGetNodeProc Type
Types | Send Feedback

Not documented.

Pascal
TVTGetNodeProc = procedure (Sender: TBaseVirtualTree; Node: PVirtualNode; Data: Pointer; var Abort: Boolean) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTGetNodeWidthEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTGetNodeWidthEvent = procedure (Sender: TBaseVirtualTree; HintCanvas: TCanvas; Node: PVirtualNode; Column: TColumnIndex; var NodeWidth: Integer) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTGetUserClipboardFormatsEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTGetUserClipboardFormatsEvent = procedure (Sender: TBaseVirtualTree; var Formats: TFormatEtcArray) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTHeaderClass Type
Types | Send Feedback

Not documented.

Pascal
TVTHeaderClass = class of TVTHeader;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTHeaderClickEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTHeaderClickEvent = procedure (Sender: TVTHeader; HitInfo: TVTHeaderHitInfo) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTHeaderColumnLayout Enumeration
Types | Send Feedback

Not documented.

Pascal
TVTHeaderColumnLayout = (
  blGlyphLeft,
  blGlyphRight,
  blGlyphTop,
  blGlyphBottom
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTHeaderDraggedEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTHeaderDraggedEvent = procedure (Sender: TVTHeader; Column: TColumnIndex; OldPosition: Integer) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTHeaderDraggedOutEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTHeaderDraggedOutEvent = procedure (Sender: TVTHeader; Column: TColumnIndex; DropPosition: TPoint) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTHeaderDraggingEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTHeaderDraggingEvent = procedure (Sender: TVTHeader; Column: TColumnIndex; var Allowed: Boolean) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTHeaderHeightDblClickResizeEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTHeaderHeightDblClickResizeEvent = procedure (Sender: TVTHeader; var P: TPoint; Shift: TShiftState; var Allowed: Boolean) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTHeaderHeightTrackingEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTHeaderHeightTrackingEvent = procedure (Sender: TVTHeader; var P: TPoint; Shift: TShiftState; var Allowed: Boolean) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTHeaderHitPositions Type
Types | Send Feedback

Not documented.

Pascal
TVTHeaderHitPositions = set of TVTHeaderHitPosition;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTHeaderMouseEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTHeaderMouseEvent = procedure (Sender: TVTHeader; Button: TMouseButton; Shift: TShiftState; X, Y: Integer) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTHeaderMouseMoveEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTHeaderMouseMoveEvent = procedure (Sender: TVTHeader; Shift: TShiftState; X, Y: Integer) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTHeaderNotifyEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTHeaderNotifyEvent = procedure (Sender: TVTHeader; Column: TColumnIndex) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTHeaderOption Enumeration
Types | Send Feedback

Not documented.

Pascal
TVTHeaderOption = (
  hoAutoResize,
  hoColumnResize,
  hoDblClickResize,
  hoDrag,
  hoHotTrack,
  hoOwnerDraw,
  hoRestrictDrag,
  hoShowHint,
  hoShowImages,
  hoShowSortGlyphs,
  hoVisible,
  hoAutoSpring,
  hoFullRepaintOnResize,
  hoDisableAnimatedResize,
  hoHeightResize,
  hoHeightDblClickResize,
  hoHeaderClickAutoSort
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Members
Members | Description
hoAutoResize | adjust a column so that the header never exceeds client width of owner control
hoColumnResize | resizing columns is allowed
hoDblClickResize | allows a column to resize itself to its largest entry
hoDrag | dragging columns is allowed
hoHotTrack | header captions are highlighted when mouse is over a particular column
hoOwnerDraw | header items with the owner draw style can be drawn by the application via event
hoRestrictDrag | header can only be dragged horizontally
hoShowHint | show application defined header hint
hoShowImages | show images
hoShowSortGlyphs | allow visible sort glyphs
hoVisible | header is visible
Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTHeaderOptions Type
Types | Send Feedback

Not documented.

Pascal
TVTHeaderOptions = set of TVTHeaderOption;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTHeaderPaintEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTHeaderPaintEvent = procedure (Sender: TVTHeader; HeaderCanvas: TCanvas; Column: TVirtualTreeColumn; R: TRect; Hover, Pressed: Boolean; DropMark: TVTDropMarkMode) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTHeaderPaintQueryElementsEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTHeaderPaintQueryElementsEvent = procedure (Sender: TVTHeader; var PaintInfo: THeaderPaintInfo; var Elements: THeaderPaintElements) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTHeaderPopupOption Enumeration
Types | Send Feedback

Not documented.

Pascal
TVTHeaderPopupOption = (
  poOriginalOrder,
  poAllowHideAll
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Members
Members | Description
poOriginalOrder | Show menu items in original column order as they were added to the tree.
poAllowHideAll | Allows to hide all columns, including the last one.
Group

Types

File

VTHeaderPopup

Links
Types
What do you think about this topic? Send feedback!


TVTHeaderPopupOptions Type
Types | Send Feedback

Not documented.

Pascal
TVTHeaderPopupOptions = set of TVTHeaderPopupOption;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VTHeaderPopup

Links
Types
What do you think about this topic? Send feedback!


TVTHeaderStyle Enumeration
Types | Send Feedback

Not documented.

Pascal
TVTHeaderStyle = (
  hsThickButtons,
  hsFlatButtons,
  hsPlates
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Members
Members | Description
hsThickButtons | TButton look and feel
hsFlatButtons | flatter look than hsThickButton, like an always raised flat TToolButton
hsPlates | flat TToolButton look and feel (raise on hover etc.)
Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTHelpContextEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTHelpContextEvent = procedure (Sender: TBaseVirtualTree; Node: PVirtualNode; Column: TColumnIndex; var HelpContext: Integer) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTHintMode Enumeration
Types | Send Feedback

Not documented.

Pascal
TVTHintMode = (
  hmDefault,
  hmHint,
  hmHintAndDefault,
  hmTooltip
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Members
Members | Description
hmDefault | show the hint of the control
hmHint | show node specific hint string returned by the application
hmHintAndDefault | same as hmHint but show the control's hint if no node is concerned
hmTooltip | show the text of the node if it isn't already fully shown
Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTHotNodeChangeEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTHotNodeChangeEvent = procedure (Sender: TBaseVirtualTree; OldNode, NewNode: PVirtualNode) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTImageInfoIndex Enumeration
Types | Send Feedback

Not documented.

Pascal
TVTImageInfoIndex = (
  iiNormal,
  iiState,
  iiCheck,
  iiOverlay
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTImageKind Enumeration
Types | Send Feedback

Not documented.

Pascal
TVTImageKind = (
  ikNormal,
  ikSelected,
  ikState,
  ikOverlay
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTIncrementalSearch Enumeration
Types | Send Feedback

Not documented.

Pascal
TVTIncrementalSearch = (
  isAll,
  isNone,
  isInitializedOnly,
  isVisibleOnly
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Members
Members | Description
isAll | search every node in tree, initialize if necessary
isNone | disable incremental search
isInitializedOnly | search only initialized nodes, skip others
isVisibleOnly | search only visible nodes, initialize if necessary
Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTIncrementalSearchEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTIncrementalSearchEvent = procedure (Sender: TBaseVirtualTree; Node: PVirtualNode; const SearchText: UnicodeString; var Result: Integer) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTInitChildrenEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTInitChildrenEvent = procedure (Sender: TBaseVirtualTree; Node: PVirtualNode; var ChildCount: Cardinal) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTInitNodeEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTInitNodeEvent = procedure (Sender: TBaseVirtualTree; ParentNode, Node: PVirtualNode; var InitialStates: TVirtualNodeInitStates) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTInternalPaintOption Enumeration
Types | Send Feedback

Not documented.

Pascal
TVTInternalPaintOption = (
  poBackground,
  poColumnColor,
  poDrawFocusRect,
  poDrawSelection,
  poDrawDropMark,
  poGridLines,
  poMainOnly,
  poSelectedOnly,
  poUnbuffered
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Members
Members | Description
poBackground | draw background image if there is any and it is enabled
poColumnColor | erase node's background with the column's color
poDrawFocusRect | draw focus rectangle around the focused node
poDrawSelection | draw selected nodes with the normal selection color
poDrawDropMark | draw drop mark if a node is currently the drop target
poGridLines | draw grid lines if enabled
poMainOnly | draw only the main column
poSelectedOnly | draw only selected nodes
Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTInternalPaintOptions Type
Types | Send Feedback

Not documented.

Pascal
TVTInternalPaintOptions = set of TVTInternalPaintOption;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTKeyActionEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTKeyActionEvent = procedure (Sender: TBaseVirtualTree; var CharCode: Word; var Shift: TShiftState; var DoDefault: Boolean) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTLineMode Enumeration
Types | Send Feedback

Not documented.

Pascal
TVTLineMode = (
  lmNormal,
  lmBands
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Members
Members | Description
lmNormal | usual tree lines (as in TTreeview)
lmBands | looks similar to a Nassi-Schneidermann diagram
Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTLineStyle Enumeration
Types | Send Feedback

Not documented.

Pascal
TVTLineStyle = (
  lsCustomStyle,
  lsDotted,
  lsSolid
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Members
Members | Description
lsCustomStyle | application provides a line pattern
lsDotted | usual dotted lines (default)
lsSolid | simple solid lines
Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTLineType Enumeration
Types | Send Feedback

Not documented.

Pascal
TVTLineType = (
  ltNone,
  ltBottomRight,
  ltTopDown,
  ltTopDownRight,
  ltRight,
  ltTopRight,
  ltLeft,
  ltLeftBottom
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Members
Members | Description
ltNone | no line at all
ltBottomRight | a line from bottom to the center and from there to the right
ltTopDown | a line from top to bottom
ltTopDownRight | a line from top to bottom and from center to the right
ltRight | a line from center to the right
ltTopRight | a line from bottom to center and from there to the right special styles for alternative drawings of tree lines
ltLeft | a line from top to bottom at the left
ltLeftBottom | a combination of ltLeft and a line at the bottom from left to right
Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTMeasureItemEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTMeasureItemEvent = procedure (Sender: TBaseVirtualTree; TargetCanvas: TCanvas; Node: PVirtualNode; var NodeHeight: Integer) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTMeasureTextEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTMeasureTextEvent = procedure (Sender: TBaseVirtualTree; TargetCanvas: TCanvas; Node: PVirtualNode; Column: TColumnIndex; const Text: UnicodeString; var Extent: Integer) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTMenuItem Type
Types | Send Feedback

Not documented.

Pascal
TVTMenuItem = TMenuItem;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VTHeaderPopup

Links
Types
What do you think about this topic? Send feedback!


TVTMiscOption Enumeration
Types | Send Feedback

Not documented.

Pascal
TVTMiscOption = (
  toAcceptOLEDrop,
  toCheckSupport,
  toEditable,
  toFullRepaintOnResize,
  toGridExtensions,
  toInitOnSave,
  toReportMode,
  toToggleOnDblClick,
  toWheelPanning,
  toReadOnly,
  toVariableNodeHeight,
  toFullRowDrag,
  toNodeHeightResize,
  toNodeHeightDblClickResize,
  toEditOnClick,
  toEditOnDblClick
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Members
Members | Description
toAcceptOLEDrop | Register tree as OLE accepting drop target
toCheckSupport | Show checkboxes/radio buttons.
toEditable | Node captions can be edited.
toFullRepaintOnResize | Fully invalidate the tree when its window is resized (CS_HREDRAW/CS_VREDRAW).
toGridExtensions | Use some special enhancements to simulate and support grid behavior.
toInitOnSave | Initialize nodes when saving a tree to a stream.
toReportMode | Tree behaves like TListView in report mode.
toToggleOnDblClick | Toggle node expansion state when it is double clicked.
toWheelPanning | This option and toMiddleClickSelect are mutal exclusive, where panning has precedence.
toReadOnly | No action is executed and node editing is not possible.
Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTMiscOptions Type
Types | Send Feedback

Not documented.

Pascal
TVTMiscOptions = set of TVTMiscOption;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTNodeAlignment Enumeration
Types | Send Feedback

Not documented.

Pascal
TVTNodeAlignment = (
  naFromBottom,
  naFromTop,
  naProportional
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Members
Members | Description
naFromBottom | the align member specifies amount of units (usually pixels) from top border of the node
naFromTop | align is to be measured from bottom
naProportional | align is to be measure in percent of the entire node height and relative to top
Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTNodeAttachMode Enumeration
Types | Send Feedback

Not documented.

Pascal
TVTNodeAttachMode = (
  amNoWhere,
  amInsertBefore,
  amInsertAfter,
  amAddChildFirst,
  amAddChildLast
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Members
Members | Description
amNoWhere | just for simplified tests, means to ignore the Add/Insert command
amInsertBefore | insert node just before destination (as sibling of destination)
amInsertAfter | insert node just after destionation (as sibling of destination)
amAddChildFirst | add node as first child of destination
amAddChildLast | add node as last child of destination
Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTNodeClickEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTNodeClickEvent = procedure (Sender: TBaseVirtualTree; const HitInfo: THitInfo) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTNodeCopiedEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTNodeCopiedEvent = procedure (Sender: TBaseVirtualTree; Node: PVirtualNode) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTNodeCopyingEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTNodeCopyingEvent = procedure (Sender: TBaseVirtualTree; Node, Target: PVirtualNode; var Allowed: Boolean) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTNodeExportEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTNodeExportEvent = function (Sender: TBaseVirtualTree; aExportType: TVTExportType; Node: PVirtualNode): Boolean of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTNodeHeightDblClickResizeEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTNodeHeightDblClickResizeEvent = procedure (Sender: TBaseVirtualTree; Node: PVirtualNode; Column: TColumnIndex; Shift: TShiftState; P: TPoint; var Allowed: Boolean) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTNodeHeightTrackingEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTNodeHeightTrackingEvent = procedure (Sender: TBaseVirtualTree; Node: PVirtualNode; Column: TColumnIndex; Shift: TShiftState; var TrackPoint: TPoint; P: TPoint; var Allowed: Boolean) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTNodeMovedEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTNodeMovedEvent = procedure (Sender: TBaseVirtualTree; Node: PVirtualNode) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTNodeMovingEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTNodeMovingEvent = procedure (Sender: TBaseVirtualTree; Node, Target: PVirtualNode; var Allowed: Boolean) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTOperationEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTOperationEvent = procedure (Sender: TBaseVirtualTree; OperationKind: TVTOperationKind) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTOperationKinds Type
Types | Send Feedback

Not documented.

Pascal
TVTOperationKinds = set of TVTOperationKind;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTPaintEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTPaintEvent = procedure (Sender: TBaseVirtualTree; TargetCanvas: TCanvas) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTPaintOption Enumeration
Types | Send Feedback

Not documented.

Pascal
TVTPaintOption = (
  toHideFocusRect,
  toHideSelection,
  toHotTrack,
  toPopupMode,
  toShowBackground,
  toShowButtons,
  toShowDropmark,
  toShowHorzGridLines,
  toShowRoot,
  toShowTreeLines,
  toShowVertGridLines,
  toThemeAware,
  toUseBlendedImages,
  toGhostedIfUnfocused,
  toFullVertGridLines,
  toAlwaysHideSelection,
  toUseBlendedSelection,
  toStaticBackground,
  toChildrenAbove,
  toFixedIndent,
  toUseExplorerTheme,
  toHideTreeLinesIfThemed,
  toShowFilteredNodes
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Members
Members | Description
toHideFocusRect | Avoid drawing the dotted rectangle around the currently focused node.
toHideSelection | Selected nodes are drawn as unselected nodes if the tree is unfocused.
toHotTrack | Track which node is under the mouse cursor.
toPopupMode | Paint tree as would it always have the focus (useful for tree combo boxes etc.)
toShowBackground | Use the background image if there's one.
toShowButtons | Display collapse/expand buttons left to a node.
toShowDropmark | Show the dropmark during drag'n drop operations.
toShowHorzGridLines | Display horizontal lines to simulate a grid.
toShowRoot | Show lines also at top level (does not show the hidden/internal root node).
toShowTreeLines | Display tree lines to show hierarchy of nodes.
toShowVertGridLines | Display vertical lines (depending on columns) to simulate a grid.
toThemeAware | Draw UI elements (header, tree buttons etc.) according to the current theme if enabled (Windows XP+ only, application must be themed).
toUseBlendedImages | Enable alpha blending for ghosted nodes or those which are being cut/copied.
toGhostedIfUnfocused | Ghosted images are still shown as ghosted if unfocused (otherwise the become non-ghosted images).
toFullVertGridLines | This option only has an effect if toShowVertGridLines is enabled too.
toAlwaysHideSelection | Do not draw node selection, regardless of focused state.
toUseBlendedSelection | Enable alpha blending for node selections.
Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTPaintOptions Type
Types | Send Feedback

Not documented.

Pascal
TVTPaintOptions = set of TVTPaintOption;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTPaintText Type
Types | Send Feedback

Not documented.

Pascal
TVTPaintText = procedure (Sender: TBaseVirtualTree; const TargetCanvas: TCanvas; Node: PVirtualNode; Column: TColumnIndex; TextType: TVSTTextType) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTPopupEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTPopupEvent = procedure (Sender: TBaseVirtualTree; Node: PVirtualNode; Column: TColumnIndex; const P: TPoint; var AskParent: Boolean; var PopupMenu: TPopupMenu) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTRemoveFromSelectionEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTRemoveFromSelectionEvent = procedure (Sender: TBaseVirtualTree; Node: PVirtualNode) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTRenderOLEDataEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTRenderOLEDataEvent = procedure (Sender: TBaseVirtualTree; const FormatEtcIn: TFormatEtc; out Medium: TStgMedium; ForClipboard: Boolean; var Result: HRESULT) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTSaveNodeEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTSaveNodeEvent = procedure (Sender: TBaseVirtualTree; Node: PVirtualNode; Stream: TStream) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTSaveTreeEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTSaveTreeEvent = procedure (Sender: TBaseVirtualTree; Stream: TStream) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTScrollbarShowEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTScrollbarShowEvent = procedure (Sender: TBaseVirtualTree; Bar: Integer; Show: Boolean) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTScrollEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTScrollEvent = procedure (Sender: TBaseVirtualTree; DeltaX, DeltaY: Integer) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTScrollIncrement Type
Types | Send Feedback

Not documented.

Pascal
TVTScrollIncrement = 1..10000;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTSearchDirection Enumeration
Types | Send Feedback

Not documented.

Pascal
TVTSearchDirection = (
  sdForward,
  sdBackward
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTSearchStart Enumeration
Types | Send Feedback

Not documented.

Pascal
TVTSearchStart = (
  ssAlwaysStartOver,
  ssLastHit,
  ssFocusedNode
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Members
Members | Description
ssAlwaysStartOver | always use the first/last node (depending on direction) to search from
ssLastHit | use the last found node
ssFocusedNode | use the currently focused node
Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTSelectionOption Enumeration
Types | Send Feedback

Not documented.

Pascal
TVTSelectionOption = (
  toDisableDrawSelection,
  toExtendedFocus,
  toFullRowSelect,
  toLevelSelectConstraint,
  toMiddleClickSelect,
  toMultiSelect,
  toRightClickSelect,
  toSiblingSelectConstraint,
  toCenterScrollIntoView,
  toSimpleDrawSelection
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Members
Members | Description
toDisableDrawSelection | Prevent user from selecting with the selection rectangle in multiselect mode.
toExtendedFocus | Entries other than in the main column can be selected, edited etc.
toFullRowSelect | Hit test as well as selection highlight are not constrained to the text of a node.
toLevelSelectConstraint | Constrain selection to the same level as the selection anchor.
toMiddleClickSelect | with the middle mouse button. This and toWheelPanning are mutual exclusive.
toMultiSelect | Allow more than one node to be selected.
toRightClickSelect | with the right mouse button.
toSiblingSelectConstraint | constrain selection to nodes with same parent
toCenterScrollIntoView | Center nodes vertically in the client area when scrolling into view.
toSimpleDrawSelection | Simplifies draw selection, so a node's caption does not need to intersect with the selection rectangle.
Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTSelectionOptions Type
Types | Send Feedback

Not documented.

Pascal
TVTSelectionOptions = set of TVTSelectionOption;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTStateChangeEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTStateChangeEvent = procedure (Sender: TBaseVirtualTree; Enter, Leave: TVirtualTreeStates) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTStringOption Enumeration
Types | Send Feedback

Not documented.

Pascal
TVTStringOption = (
  toSaveCaptions,
  toShowStaticText,
  toAutoAcceptEditChange
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Members
Members | Description
toSaveCaptions | If set then the caption is automatically saved with the tree node, regardless of what is saved in the user data.
toShowStaticText | Show static text in a caption which can be differently formatted than the caption but cannot be edited.
toAutoAcceptEditChange | If not set then changes are cancelled.
Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTStringOptions Type
Types | Send Feedback

Not documented.

Pascal
TVTStringOptions = set of TVTStringOption;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTStructureChangeEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTStructureChangeEvent = procedure (Sender: TBaseVirtualTree; Node: PVirtualNode; Reason: TChangeReason) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTTransparency Type
Types | Send Feedback

Not documented.

Pascal
TVTTransparency = 0..255;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTTreeExportEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTTreeExportEvent = procedure (Sender: TBaseVirtualTree; aExportType: TVTExportType) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTUpdateState Enumeration
Types | Send Feedback

Not documented.

Pascal
TVTUpdateState = (
  usBegin,
  usBeginSynch,
  usSynch,
  usUpdate,
  usEnd,
  usEndSynch
);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Members
Members | Description
usBegin | The tree just entered the update state (BeginUpdate call for the first time).
usBeginSynch | The tree just entered the synch update state (BeginSynch call for the first time).
usSynch | Begin/EndSynch has been called but the tree did not change the update state.
usUpdate | Begin/EndUpdate has been called but the tree did not change the update state.
usEnd | The tree just left the update state (EndUpdate called for the last level).
usEndSynch | The tree just left the synch update state (EndSynch called for the last level).
Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TVTUpdatingEvent Type
Types | Send Feedback

Not documented.

Pascal
TVTUpdatingEvent = procedure (Sender: TBaseVirtualTree; State: TVTUpdateState) of object;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


TWMPrintClient Type
Types | Send Feedback

Not documented.

Pascal
TWMPrintClient = TWMPrint;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


UnicodeString Type
Types | Send Feedback

Not documented.

Pascal
UnicodeString = WideString;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Types

File

VirtualTrees

Links
Types
What do you think about this topic? Send feedback!


Variables
Virtual Treeview | Variables | Legend | Send Feedback

The following table lists variables in this documentation.

Description

These are all variables that are contained in this documentation.

Group

Virtual Treeview

Variables

CF_CSV
Not documented.
CF_HTML
Not documented.
CF_VIRTUALTREE
Not documented.
CF_VRTF
Not documented.
CF_VRTFNOOBJS
Not documented.
CF_VTREFERENCE
Not documented.
ClipboardDescriptions
Not documented.
DarkCheckImages
Not documented.
DarkTickImages
Not documented.
FlatImages
Not documented.
Initialized
Not documented.
InternalClipboardFormats
Not documented.
IsWinVistaOrAbove
Not documented.
LightCheckImages
Not documented.
LightTickImages
Not documented.
MMXAvailable
Not documented.
NeedToUnitialize
Not documented.
StandardOLEFormat
Not documented.
SystemCheckImages
Not documented.
SystemFlatCheckImages
Not documented.
UtilityImages
Not documented.
Watcher
Not documented.
WorkerThread
Not documented.
WorkEvent
Not documented.
XPImages
Not documented.

Legend

Variable

Links
Virtual Treeview, Variables, Legend
What do you think about this topic? Send feedback!


CF_CSV Variable
Variables | Send Feedback

Not documented.

Pascal
CF_CSV: Word;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Variables

File

VirtualTrees

Links
Variables
What do you think about this topic? Send feedback!


CF_HTML Variable
Variables | Send Feedback

Not documented.

Pascal
CF_HTML: Word;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Variables

File

VirtualTrees

Links
Variables
What do you think about this topic? Send feedback!


CF_VIRTUALTREE Variable
Variables | Send Feedback

Not documented.

Pascal
CF_VIRTUALTREE: Word;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Variables

File

VirtualTrees

Links
Variables
What do you think about this topic? Send feedback!


CF_VRTF Variable
Variables | Send Feedback

Not documented.

Pascal
CF_VRTF: Word;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Variables

File

VirtualTrees

Links
Variables
What do you think about this topic? Send feedback!


CF_VRTFNOOBJS Variable
Variables | Send Feedback

Not documented.

Pascal
CF_VRTFNOOBJS: Word;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Variables

File

VirtualTrees

Links
Variables
What do you think about this topic? Send feedback!


CF_VTREFERENCE Variable
Variables | Send Feedback

Not documented.

Pascal
CF_VTREFERENCE: Word;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Variables

File

VirtualTrees

Links
Variables
What do you think about this topic? Send feedback!


ClipboardDescriptions Variable
Variables | Send Feedback

Not documented.

Pascal
ClipboardDescriptions: array [1..CF_MAX - 1] of TClipboardFormatEntry = ( (ID: CF_TEXT; Description: 'Plain text'), (ID: CF_BITMAP; Description: 'Windows bitmap'), (ID: CF_METAFILEPICT; Description: 'Windows metafile'), (ID: CF_SYLK; Description: 'Symbolic link'), (ID: CF_DIF; Description: 'Data interchange format'), (ID: CF_TIFF; Description: 'Tiff image'), (ID: CF_OEMTEXT; Description: 'OEM text'), (ID: CF_DIB; Description: 'DIB image'), (ID: CF_PALETTE; Description: 'Palette data'), (ID: CF_PENDATA; Description: 'Pen data'), (ID: CF_RIFF; Description: 'Riff audio data'), (ID: CF_WAVE; Description: 'Wav audio data'), (ID: CF_UNICODETEXT; Description: 'Unicode text'), (ID: CF_ENHMETAFILE; Description: 'Enhanced metafile image'), (ID: CF_HDROP; Description: 'File name(s)'), (ID: CF_LOCALE; Description: 'Locale descriptor') );
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Variables

File

VirtualTrees

Links
Variables
What do you think about this topic? Send feedback!


DarkCheckImages Variable
Variables | Send Feedback

Not documented.

Pascal
DarkCheckImages: TImageList;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Variables

File

VirtualTrees

Links
Variables
What do you think about this topic? Send feedback!


DarkTickImages Variable
Variables | Send Feedback

Not documented.

Pascal
DarkTickImages: TImageList;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Variables

File

VirtualTrees

Links
Variables
What do you think about this topic? Send feedback!


FlatImages Variable
Variables | Send Feedback

Not documented.

Pascal
FlatImages: TImageList;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Variables

File

VirtualTrees

Links
Variables
What do you think about this topic? Send feedback!


Initialized Variable
Variables | Send Feedback

Not documented.

Pascal
Initialized: Boolean;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Variables

File

VirtualTrees

Links
Variables
What do you think about this topic? Send feedback!


InternalClipboardFormats Variable
Variables | Send Feedback

Not documented.

Pascal
InternalClipboardFormats: TClipboardFormatList;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Variables

File

VirtualTrees

Links
Variables
What do you think about this topic? Send feedback!


IsWinVistaOrAbove Variable
Variables | Send Feedback

Not documented.

Pascal
IsWinVistaOrAbove: Boolean;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Variables

File

VirtualTrees

Links
Variables
What do you think about this topic? Send feedback!


LightCheckImages Variable
Variables | Send Feedback

Not documented.

Pascal
LightCheckImages: TImageList;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Variables

File

VirtualTrees

Links
Variables
What do you think about this topic? Send feedback!


LightTickImages Variable
Variables | Send Feedback

Not documented.

Pascal
LightTickImages: TImageList;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Variables

File

VirtualTrees

Links
Variables
What do you think about this topic? Send feedback!


MMXAvailable Variable
Variables | Send Feedback

Not documented.

Pascal
MMXAvailable: Boolean;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Variables

File

VirtualTrees

Links
Variables
What do you think about this topic? Send feedback!


NeedToUnitialize Variable
Variables | Send Feedback

Not documented.

Pascal
NeedToUnitialize: Boolean;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Variables

File

VirtualTrees

Links
Variables
What do you think about this topic? Send feedback!


StandardOLEFormat Variable
Variables | Send Feedback

Not documented.

Pascal
StandardOLEFormat: TFormatEtc = ( cfFormat: 0; ptd: nil; dwAspect: DVASPECT_CONTENT; lindex: -1; tymed: TYMED_ISTREAM or TYMED_HGLOBAL; );
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Variables

File

VirtualTrees

Links
Variables
What do you think about this topic? Send feedback!


SystemCheckImages Variable
Variables | Send Feedback

Not documented.

Pascal
SystemCheckImages: TImageList;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Variables

File

VirtualTrees

Links
Variables
What do you think about this topic? Send feedback!


SystemFlatCheckImages Variable
Variables | Send Feedback

Not documented.

Pascal
SystemFlatCheckImages: TImageList;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Variables

File

VirtualTrees

Links
Variables
What do you think about this topic? Send feedback!


UtilityImages Variable
Variables | Send Feedback

Not documented.

Pascal
UtilityImages: TImageList;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Variables

File

VirtualTrees

Links
Variables
What do you think about this topic? Send feedback!


Watcher Variable
Variables | Send Feedback

Not documented.

Pascal
Watcher: TCriticalSection;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Variables

File

VirtualTrees

Links
Variables
What do you think about this topic? Send feedback!


WorkerThread Variable
Variables | Send Feedback

Not documented.

Pascal
WorkerThread: TWorkerThread;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Variables

File

VirtualTrees

Links
Variables
What do you think about this topic? Send feedback!


WorkEvent Variable
Variables | Send Feedback

Not documented.

Pascal
WorkEvent: THandle;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Variables

File

VirtualTrees

Links
Variables
What do you think about this topic? Send feedback!


XPImages Variable
Variables | Send Feedback

Not documented.

Pascal
XPImages: TImageList;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Variables

File

VirtualTrees

Links
Variables
What do you think about this topic? Send feedback!


Constants
Constants | Virtual Treeview | Topics | Legend | Send Feedback

The following table lists constants in this documentation.

Description

These are all constants that are contained in this documentation.

Constants

AlignmentToDrawFlag
Not documented.
AllocIncrement
Not documented.
BaseChunk
Not documented.
CacheThreshold
Number of nodes a tree must at least have to start caching and at the same time the maximum number of nodes between two cache entries.
CaptionChunk
Not documented.
CFSTR_CSV
Contains the registration string for certain clipboard formats.
CFSTR_HTML
Contains the registration string for certain clipboard formats.
CFSTR_RTF
Contains the registration string for certain clipboard formats.
CFSTR_RTFNOOBJS
Contains the registration string for certain clipboard formats.
CFSTR_VIRTUALTREE
Contains the registration string for certain clipboard formats.
CFSTR_VTREFERENCE
Contains the registration string for certain clipboard formats.
ChangeTimer
Not documented.
ckButtonDisabled
ckButtonHot
ckButtonNormal
ckButtonPressed
ckCheckCheckedDisabled
ckCheckCheckedHot
ckCheckCheckedNormal
ckCheckCheckedPressed
ckCheckMixedDisabled
ckCheckMixedHot
ckCheckMixedNormal
ckCheckMixedPressed
ckCheckUncheckedDisabled
ckCheckUncheckedHot
ckCheckUncheckedNormal
ckCheckUncheckedPressed
ckEmpty
ckRadioCheckedDisabled
ckRadioCheckedHot
ckRadioCheckedNormal
ckRadioCheckedPressed
ckRadioUncheckedDisabled
ckRadioUncheckedHot
ckRadioUncheckedNormal
ckRadioUncheckedPressed
ClipboardStates
Not documented.
CLSID_DragDropHelper
Not documented.
CM_AUTOADJUST
Not documented.
CM_DENYSUBCLASSING
Not documented.
Copyright
Not documented.
crHeaderSplit
Not documented.
crVertSplit
Not documented.
DefaultAnimationOptions
Not documented.
DefaultAutoOptions
Not documented.
DefaultColumnOptions
Not documented.
DefaultMiscOptions
Not documented.
DefaultPaintOptions
Not documented.
DefaultScrollUpdateFlags
Not documented.
DefaultSelectionOptions
Not documented.
DefaultStringOptions
Not documented.
EditTimer
Not documented.
ExpandTimer
Not documented.
FadeAnimationStepCount
Not documented.
hcTFCannotSetUserData
Not documented.
hcTFClipboardFailed
Not documented.
hcTFCorruptStream1
Not documented.
hcTFCorruptStream2
Not documented.
hcTFEditLinkIsNil
Not documented.
hcTFStreamTooSmall
Not documented.
hcTFWrongMoveError
Not documented.
hcTFWrongStreamFormat
Not documented.
hcTFWrongStreamVersion
Not documented.
HeaderTimer
Not documented.
IID_IDragSourceHelper
Not documented.
IID_IDropTarget
Not documented.
IID_IDropTargetHelper
Not documented.
InvalidColumn
Not documented.
MagicID
Not documented.
MinimumTimerInterval
Not documented.
MouseButtonDown
Not documented.
NoColumn
Not documented.
NodeChunk
Not documented.
PressedState
Not documented.
RTLFlag
Not documented.
SCannotSetUserData
Not documented.
SClipboardFailed
Not documented.
SCorruptStream1
Not documented.
SCorruptStream2
Not documented.
ScrollTimer
Not documented.
SearchTimer
Not documented.
SEditLinkIsNil
Not documented.
ShadowSize
Size in pixels of the hint shadow.
SID_IDragSourceHelper
Not documented.
SID_IDropTarget
Not documented.
SID_IDropTargetHelper
Not documented.
SStreamTooSmall
Not documented.
StructureChangeTimer
Not documented.
SWrongMoveError
Not documented.
SWrongStreamFormat
Not documented.
TVP_HOTGLYPH
Not documented.
SWrongStreamVersion
Not documented.
TreeNodeSize
Not documented.
UnpressedState
Not documented.
UserChunk
Not documented.
UtilityImageSize
Not documented.
VTHeaderStreamVersion
Not documented.
VTTreeStreamVersion
Not documented.
VTVersion
Not documented.
WideCR
Not documented.
WideLF
Not documented.
WideLineSeparator
Not documented.
WideNull
Not documented.
WM_CHANGESTATE
Not documented.

Group

Virtual Treeview

Topics

Check button image indices

Legend

Constant

Links
Constants, Virtual Treeview, Topics, Legend


AlignmentToDrawFlag Constant
Constants | Send Feedback

Not documented.

Pascal
AlignmentToDrawFlag: array[TAlignment] of Cardinal = (DT_LEFT, DT_RIGHT, DT_CENTER);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


AllocIncrement Constant
Constants | Send Feedback

Not documented.

Pascal
AllocIncrement = 2 shl 11;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


BaseChunk Constant
Constants | Send Feedback

Not documented.

Pascal
BaseChunk = 2;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


CacheThreshold Constant
Constants | Send Feedback

Number of nodes a tree must at least have to start caching and at the same time the maximum number of nodes between two cache entries.

Pascal
CacheThreshold = 2000;
Description

Number of nodes a tree must at least have to start caching and at the same time the maximum number of nodes between two cache entries.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


CaptionChunk Constant
Constants | Send Feedback

Not documented.

Pascal
CaptionChunk = 3;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


CFSTR_CSV Constant
Constants | Send Feedback

Contains the registration string for certain clipboard formats.

Pascal
CFSTR_VIRTUALTREE = 'Virtual Tree Data';
CFSTR_VTREFERENCE = 'Virtual Tree Reference';
CFSTR_HTML = 'HTML Format';
CFSTR_RTF = 'Rich Text Format';
CFSTR_RTFNOOBJS = 'Rich Text Format Without Objects';
CFSTR_CSV = 'CSV';
Description

Some of the clipboard formats in the system, like CF_HDROP, are registered by Windows itself. For rich text, html, csv and other data first the formats must be registered with the clipboard. The identifier returned by the registration code is used to unregister the format later and to identify the format when transferring data or enumerating the clipboard formats. The following formats are registered by Virtual Treeview:

  • CVS: comma separated values, a tabular data format.
  • HTML: text data with text formatting and structured like a big table. Unicode is supported as well (UTF-8).
  • RTF: rich text format, similar to HTML, but more complex and also a bit older.
  • RTFNOOBJS: like RTF but without embedded objects (not used by Virtual Treeview).
  • VIRTUALTREEVIEW: serialized treeview data. This is the native tree format and the only one directly accepted by the control.
  • VTREFERENCE: a special format to pass on a reference of the sender treeview. If both, sender and receiver, live in the same process this reference can be used to directly access the sender treeview, without COM interecption.
Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


ChangeTimer Constant
Constants | Send Feedback

Not documented.

Pascal
ChangeTimer = 5;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


Check button image indices
Constants | Send Feedback

Constants

Links
Constants
What do you think about this topic? Send feedback!


ClipboardStates Constant
Constants | Send Feedback

Not documented.

Pascal
ClipboardStates = [tsCopyPending, tsCutPending];
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


CLSID_DragDropHelper Constant
Constants | Send Feedback

Not documented.

Pascal
CLSID_DragDropHelper: TGUID = (D1: $4657278A; D2: $411B; D3: $11D2; D4: ($83, $9A, $00, $C0, $4F, $D9, $18, $D0));
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


CM_AUTOADJUST Constant
Constants | Send Feedback

Not documented.

Pascal
CM_AUTOADJUST = CM_BASE + 2005;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


CM_DENYSUBCLASSING Constant
Constants | Send Feedback

Not documented.

Pascal
CM_DENYSUBCLASSING = CM_BASE + 2000;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


Copyright Constant
Constants | Send Feedback

Not documented.

Pascal
Copyright: string = 'Virtual Treeview © 1999, 2010 Mike Lischke';
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


crHeaderSplit Constant
Constants | Send Feedback

Not documented.

Pascal
crHeaderSplit = TCursor(63);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


crVertSplit Constant
Constants | Send Feedback

Not documented.

Pascal
crVertSplit = TCursor(62);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


DefaultAnimationOptions Constant
Constants | Send Feedback

Not documented.

Pascal
DefaultAnimationOptions = [];
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


DefaultAutoOptions Constant
Constants | Send Feedback

Not documented.

Pascal
DefaultAutoOptions = [toAutoDropExpand, toAutoTristateTracking, toAutoScrollOnExpand, toAutoDeleteMovedNodes];
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


DefaultColumnOptions Constant
Constants | Send Feedback

Not documented.

Pascal
DefaultColumnOptions = [coAllowClick, coDraggable, coEnabled, coParentColor, coParentBidiMode, coResizable, coShowDropmark, coVisible, coAllowFocus];
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


DefaultMiscOptions Constant
Constants | Send Feedback

Not documented.

Pascal
DefaultMiscOptions = [toAcceptOLEDrop, toFullRepaintOnResize, toInitOnSave, toToggleOnDblClick, toWheelPanning, toEditOnClick];
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


DefaultPaintOptions Constant
Constants | Send Feedback

Not documented.

Pascal
DefaultPaintOptions = [toShowButtons, toShowDropmark, toShowTreeLines, toShowRoot, toThemeAware, toUseBlendedImages];
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


DefaultScrollUpdateFlags Constant
Constants | Send Feedback

Not documented.

Pascal
DefaultScrollUpdateFlags = [suoRepaintHeader, suoRepaintScrollbars, suoScrollClientArea, suoUpdateNCArea];
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


DefaultSelectionOptions Constant
Constants | Send Feedback

Not documented.

Pascal
DefaultSelectionOptions = [];
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


DefaultStringOptions Constant
Constants | Send Feedback

Not documented.

Pascal
DefaultStringOptions = [toSaveCaptions, toAutoAcceptEditChange];
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


EditTimer Constant
Constants | Send Feedback

Not documented.

Pascal
EditTimer = 2;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


ExpandTimer Constant
Constants | Send Feedback

Not documented.

Pascal
ExpandTimer = 1;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


FadeAnimationStepCount Constant
Constants | Send Feedback

Not documented.

Pascal
FadeAnimationStepCount = 255;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


hcTFCannotSetUserData Constant
Constants | Send Feedback

Not documented.

Pascal
hcTFCannotSetUserData = 2008;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


hcTFClipboardFailed Constant
Constants | Send Feedback

Not documented.

Pascal
hcTFClipboardFailed = 2007;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


hcTFCorruptStream1 Constant
Constants | Send Feedback

Not documented.

Pascal
hcTFCorruptStream1 = 2005;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


hcTFCorruptStream2 Constant
Constants | Send Feedback

Not documented.

Pascal
hcTFCorruptStream2 = 2006;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


hcTFEditLinkIsNil Constant
Constants | Send Feedback

Not documented.

Pascal
hcTFEditLinkIsNil = 2000;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


hcTFStreamTooSmall Constant
Constants | Send Feedback

Not documented.

Pascal
hcTFStreamTooSmall = 2004;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


hcTFWrongMoveError Constant
Constants | Send Feedback

Not documented.

Pascal
hcTFWrongMoveError = 2001;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


hcTFWrongStreamFormat Constant
Constants | Send Feedback

Not documented.

Pascal
hcTFWrongStreamFormat = 2002;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


hcTFWrongStreamVersion Constant
Constants | Send Feedback

Not documented.

Pascal
hcTFWrongStreamVersion = 2003;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


HeaderTimer Constant
Constants | Send Feedback

Not documented.

Pascal
HeaderTimer = 3;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


IID_IDragSourceHelper Constant
Constants | Send Feedback

Not documented.

Pascal
IID_IDragSourceHelper: TGUID = (D1: $DE5BF786; D2: $477A; D3: $11D2; D4: ($83, $9D, $00, $C0, $4F, $D9, $18, $D0));
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


IID_IDropTarget Constant
Constants | Send Feedback

Not documented.

Pascal
IID_IDropTarget: TGUID = (D1: $00000122; D2: $0000; D3: $0000; D4: ($C0, $00, $00, $00, $00, $00, $00, $46));
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


IID_IDropTargetHelper Constant
Constants | Send Feedback

Not documented.

Pascal
IID_IDropTargetHelper: TGUID = (D1: $4657278B; D2: $411B; D3: $11D2; D4: ($83, $9A, $00, $C0, $4F, $D9, $18, $D0));
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


InvalidColumn Constant
Constants | Send Feedback

Not documented.

Pascal
InvalidColumn = -2;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


MagicID Constant
Constants | Send Feedback

Not documented.

Pascal
MagicID: TMagicID = (#$2045, 'V', 'T', WideChar(VTTreeStreamVersion), ' ', #$2046);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


MinimumTimerInterval Constant
Constants | Send Feedback

Not documented.

Pascal
MinimumTimerInterval = 1;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


MouseButtonDown Constant
Constants | Send Feedback

Not documented.

Pascal
MouseButtonDown = [tsLeftButtonDown, tsMiddleButtonDown, tsRightButtonDown];
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


NoColumn Constant
Constants | Send Feedback

Not documented.

Pascal
NoColumn = -1;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


NodeChunk Constant
Constants | Send Feedback

Not documented.

Pascal
NodeChunk = 1;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


PressedState Constant
Constants | Send Feedback

Not documented.

Pascal
PressedState: array[TCheckState] of TCheckState = ( csUncheckedPressed, csUncheckedPressed, csCheckedPressed, csCheckedPressed, csMixedPressed, csMixedPressed );
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


RTLFlag Constant
Constants | Send Feedback

Not documented.

Pascal
RTLFlag: array[Boolean] of Integer = (0, ETO_RTLREADING);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


SCannotSetUserData Constant
Constants | Send Feedback

Not documented.

Pascal
SCannotSetUserData = 'Cannot set initial user data because there is not enough user data space allocated.';
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


SClipboardFailed Constant
Constants | Send Feedback

Not documented.

Pascal
SClipboardFailed = 'Clipboard operation failed.';
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


SCorruptStream1 Constant
Constants | Send Feedback

Not documented.

Pascal
SCorruptStream1 = 'Stream data corrupt. A node''s anchor chunk is missing.';
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


SCorruptStream2 Constant
Constants | Send Feedback

Not documented.

Pascal
SCorruptStream2 = 'Stream data corrupt. Unexpected data after node''s end position.';
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


ScrollTimer Constant
Constants | Send Feedback

Not documented.

Pascal
ScrollTimer = 4;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


SearchTimer Constant
Constants | Send Feedback

Not documented.

Pascal
SearchTimer = 7;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


SEditLinkIsNil Constant
Constants | Send Feedback

Not documented.

Pascal
SEditLinkIsNil = 'Edit link must not be nil.';
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


ShadowSize Constant
Constants | Send Feedback

Size in pixels of the hint shadow.

Pascal
ShadowSize = 5;
Description

This value has no influence on Win2K and XP systems as those OSes have native shadow support. Set it to 0 if you don't want shadows on the other systems.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


SID_IDragSourceHelper Constant
Constants | Send Feedback

Not documented.

Pascal
SID_IDragSourceHelper = '{DE5BF786-477A-11D2-839D-00C04FD918D0}';
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


SID_IDropTarget Constant
Constants | Send Feedback

Not documented.

Pascal
SID_IDropTarget = '{00000122-0000-0000-C000-000000000046}';
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


SID_IDropTargetHelper Constant
Constants | Send Feedback

Not documented.

Pascal
SID_IDropTargetHelper = '{4657278B-411B-11D2-839A-00C04FD918D0}';
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


SStreamTooSmall Constant
Constants | Send Feedback

Not documented.

Pascal
SStreamTooSmall = 'Unable to load tree structure, not enough data available.';
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


StructureChangeTimer Constant
Constants | Send Feedback

Not documented.

Pascal
StructureChangeTimer = 6;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


SWrongMoveError Constant
Constants | Send Feedback

Not documented.

Pascal
SWrongMoveError = 'Target node cannot be a child node of the node to be moved.';
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


SWrongStreamFormat Constant
Constants | Send Feedback

Not documented.

Pascal
SWrongStreamFormat = 'Unable to load tree structure, the format is wrong.';
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


TVP_HOTGLYPH Constant
Constants | Send Feedback

Not documented.

Pascal
TVP_HOTGLYPH = 4;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


SWrongStreamVersion Constant
Constants | Send Feedback

Not documented.

Pascal
SWrongStreamVersion = 'Unable to load tree structure, the version is unknown.';
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


TreeNodeSize Constant
Constants | Send Feedback

Not documented.

Pascal
TreeNodeSize = (SizeOf(TVirtualNode) + (SizeOf(Pointer) - 1)) and not (SizeOf(Pointer) - 1);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


UnpressedState Constant
Constants | Send Feedback

Not documented.

Pascal
UnpressedState: array[TCheckState] of TCheckState = ( csUncheckedNormal, csUncheckedNormal, csCheckedNormal, csCheckedNormal, csMixedNormal, csMixedNormal );
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


UserChunk Constant
Constants | Send Feedback

Not documented.

Pascal
UserChunk = 4;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


UtilityImageSize Constant
Constants | Send Feedback

Not documented.

Pascal
UtilityImageSize = 16;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


VTHeaderStreamVersion Constant
Constants | Send Feedback

Not documented.

Pascal
VTHeaderStreamVersion = 6;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


VTTreeStreamVersion Constant
Constants | Send Feedback

Not documented.

Pascal
VTTreeStreamVersion = 2;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


VTVersion Constant
Constants | Send Feedback

Not documented.

Pascal
VTVersion = '5.0.0';
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


WideCR Constant
Constants | Send Feedback

Not documented.

Pascal
WideCR = WideChar(#13);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


WideLF Constant
Constants | Send Feedback

Not documented.

Pascal
WideLF = WideChar(#10);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


WideLineSeparator Constant
Constants | Send Feedback

Not documented.

Pascal
WideLineSeparator = WideChar(#2028);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


WideNull Constant
Constants | Send Feedback

Not documented.

Pascal
WideNull = WideChar(#0);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


WM_CHANGESTATE Constant
Constants | Send Feedback

Not documented.

Pascal
WM_CHANGESTATE = WM_APP + 32;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Constants

File

VirtualTrees

Links
Constants
What do you think about this topic? Send feedback!


Symbol Reference
Virtual Treeview | Topics | Interfaces | Legend | Send Feedback

These are all symbols available in this documentation.

Group

Virtual Treeview

Topics

Interfaces
The following table lists interfaces in this documentation.

Interfaces

IDragSourceHelper
Not documented.
IDropTargetHelper
Not documented.
IVTDragManager
Not documented.
IVTEditLink
Interface which is used for communication between the treeview and a node editor.

Legend

Interface

Links
Virtual Treeview, Topics, Interfaces, Legend


Interfaces
Symbol Reference | Interfaces | Legend | Send Feedback

The following table lists interfaces in this documentation.

Group

Symbol Reference

Interfaces

IDragSourceHelper
Not documented.
IDropTargetHelper
Not documented.
IVTDragManager
Not documented.
IVTEditLink
Interface which is used for communication between the treeview and a node editor.

Legend

Interface

Links
Symbol Reference, Interfaces, Legend
What do you think about this topic? Send feedback!


IDragSourceHelper Interface
Interfaces | Topics | IDragSourceHelper Methods | Legend | IDragSourceHelper Methods | Send Feedback

Not documented.

Pascal
IDragSourceHelper = interface(IUnknown);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Interfaces

Members
IDragSourceHelper Methods

InitializeFromBitmap
Not documented.
InitializeFromWindow
Not documented.

Topics

IDragSourceHelper Methods
The methods of the IDragSourceHelper class are listed here.

Topics

IDragSourceHelper Methods
The methods of the IDragSourceHelper class are listed here.

Legend

Method
public

IDragSourceHelper Methods

InitializeFromBitmap
Not documented.
InitializeFromWindow
Not documented.

Class Hierarchy
  IDragSourceHelper
File

VirtualTrees

Links
Interfaces, Topics, IDragSourceHelper Methods, Legend, IDragSourceHelper Methods


IDragSourceHelper Methods
IDragSourceHelper Interface | Methods | Legend | Send Feedback

The methods of the IDragSourceHelper class are listed here.

Interface

IDragSourceHelper Interface

Legend

Method
public

Links
IDragSourceHelper Interface, Methods, Legend


IDragSourceHelper.InitializeFromBitmap Method
IDragSourceHelper Methods | IDragSourceHelper Interface | Send Feedback

Not documented.

Pascal
[SID_IDragSourceHelper]
function InitializeFromBitmap(var SHDragImage: TSHDragImage; pDataObject: IDataObject): HRESULT; stdcall;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

IDragSourceHelper Methods

Links
IDragSourceHelper Methods, IDragSourceHelper Interface


IDragSourceHelper.InitializeFromWindow Method
IDragSourceHelper Methods | IDragSourceHelper Interface | Send Feedback

Not documented.

Pascal
function InitializeFromWindow(Window: HWND; var ppt: TPoint; pDataObject: IDataObject): HRESULT; stdcall;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

IDragSourceHelper Methods

Links
IDragSourceHelper Methods, IDragSourceHelper Interface


IDropTargetHelper Interface
Interfaces | Topics | IDropTargetHelper Methods | Legend | IDropTargetHelper Methods | Send Feedback

Not documented.

Pascal
IDropTargetHelper = interface(IUnknown);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Interfaces

Members
IDropTargetHelper Methods

DragEnter
Not documented.
DragLeave
Not documented.
DragOver
Not documented.
Drop
Not documented.
Show
Not documented.

Topics

IDropTargetHelper Methods
The methods of the IDropTargetHelper class are listed here.

Topics

IDropTargetHelper Methods
The methods of the IDropTargetHelper class are listed here.

Legend

Method
public

IDropTargetHelper Methods

DragEnter
Not documented.
DragLeave
Not documented.
DragOver
Not documented.
Drop
Not documented.
Show
Not documented.

Class Hierarchy
  IDropTargetHelper
File

VirtualTrees

Links
Interfaces, Topics, IDropTargetHelper Methods, Legend, IDropTargetHelper Methods


IDropTargetHelper Methods
IDropTargetHelper Interface | Methods | Legend | Send Feedback

The methods of the IDropTargetHelper class are listed here.

Interface

IDropTargetHelper Interface

Legend

Method
public

Links
IDropTargetHelper Interface, Methods, Legend


IDropTargetHelper.DragEnter Method
IDropTargetHelper Methods | IDropTargetHelper Interface | Send Feedback

Not documented.

Pascal
[SID_IDropTargetHelper]
function DragEnter(hwndTarget: HWND; pDataObject: IDataObject; var ppt: TPoint; dwEffect: Integer): HRESULT; stdcall;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

IDropTargetHelper Methods

Links
IDropTargetHelper Methods, IDropTargetHelper Interface


IDropTargetHelper.DragLeave Method
IDropTargetHelper Methods | IDropTargetHelper Interface | Send Feedback

Not documented.

Pascal
function DragLeave: HRESULT; stdcall;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

IDropTargetHelper Methods

Links
IDropTargetHelper Methods, IDropTargetHelper Interface


IDropTargetHelper.DragOver Method
IDropTargetHelper Methods | IDropTargetHelper Interface | Send Feedback

Not documented.

Pascal
function DragOver(var ppt: TPoint; dwEffect: Integer): HRESULT; stdcall;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

IDropTargetHelper Methods

Links
IDropTargetHelper Methods, IDropTargetHelper Interface


IDropTargetHelper.Drop Method
IDropTargetHelper Methods | IDropTargetHelper Interface | Send Feedback

Not documented.

Pascal
function Drop(pDataObject: IDataObject; var ppt: TPoint; dwEffect: Integer): HRESULT; stdcall;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

IDropTargetHelper Methods

Links
IDropTargetHelper Methods, IDropTargetHelper Interface


IDropTargetHelper.Show Method
IDropTargetHelper Methods | IDropTargetHelper Interface | Send Feedback

Not documented.

Pascal
function Show(fShow: Boolean): HRESULT; stdcall;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

IDropTargetHelper Methods

Links
IDropTargetHelper Methods, IDropTargetHelper Interface


IVTDragManager Interface
Interfaces | Topics | IVTDragManager Methods | IVTDragManager Properties | Legend | IVTDragManager Methods | IVTDragManager Properties | Send Feedback

Not documented.

Pascal
IVTDragManager = interface(IUnknown);
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

Interfaces

Members
IVTDragManager Methods

ForceDragLeave
Not documented.
GetDataObject
Not documented.
GetDragSource
Not documented.
GetDropTargetHelperSupported
Not documented.
GetIsDropTarget
Not documented.

Topics

IVTDragManager Methods
The methods of the IVTDragManager class are listed here.
IVTDragManager Properties
The properties of the IVTDragManager class are listed here.

IVTDragManager Properties

DataObject
Not documented.
DragSource
Not documented.
DropTargetHelperSupported
Not documented.
IsDropTarget
Not documented.

Topics

IVTDragManager Methods
The methods of the IVTDragManager class are listed here.
IVTDragManager Properties
The properties of the IVTDragManager class are listed here.

Legend

Method
public
Property
read only

IVTDragManager Methods

ForceDragLeave
Not documented.
GetDataObject
Not documented.
GetDragSource
Not documented.
GetDropTargetHelperSupported
Not documented.
GetIsDropTarget
Not documented.

IVTDragManager Properties

DataObject
Not documented.
DragSource
Not documented.
DropTargetHelperSupported
Not documented.
IsDropTarget
Not documented.

Class Hierarchy
  IVTDragManager
File

VirtualTrees

Links
Interfaces, Topics, IVTDragManager Methods, IVTDragManager Properties, Legend, IVTDragManager Methods, IVTDragManager Properties


IVTDragManager Methods
IVTDragManager Interface | Methods | Legend | Send Feedback

The methods of the IVTDragManager class are listed here.

Interface

IVTDragManager Interface

Legend

Method
public

Links
IVTDragManager Interface, Methods, Legend


IVTDragManager.ForceDragLeave Method
IVTDragManager Methods | IVTDragManager Interface | Send Feedback

Not documented.

Pascal
procedure ForceDragLeave; stdcall;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

IVTDragManager Methods

Links
IVTDragManager Methods, IVTDragManager Interface


IVTDragManager.GetDataObject Method
IVTDragManager Methods | IVTDragManager Interface | Send Feedback

Not documented.

Pascal
function GetDataObject: IDataObject; stdcall;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

IVTDragManager Methods

Links
IVTDragManager Methods, IVTDragManager Interface


IVTDragManager.GetDragSource Method
IVTDragManager Methods | IVTDragManager Interface | Send Feedback

Not documented.

Pascal
function GetDragSource: TBaseVirtualTree; stdcall;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

IVTDragManager Methods

Links
IVTDragManager Methods, IVTDragManager Interface


IVTDragManager.GetDropTargetHelperSupported Method
IVTDragManager Methods | IVTDragManager Interface | Send Feedback

Not documented.

Pascal
function GetDropTargetHelperSupported: Boolean; stdcall;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

IVTDragManager Methods

Links
IVTDragManager Methods, IVTDragManager Interface


IVTDragManager.GetIsDropTarget Method
IVTDragManager Methods | IVTDragManager Interface | Send Feedback

Not documented.

Pascal
function GetIsDropTarget: Boolean; stdcall;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

IVTDragManager Methods

Links
IVTDragManager Methods, IVTDragManager Interface


IVTDragManager Properties
IVTDragManager Interface | Properties | Legend | Send Feedback

The properties of the IVTDragManager class are listed here.

Interface

IVTDragManager Interface

Legend

Property
public
read only

Links
IVTDragManager Interface, Properties, Legend


IVTDragManager.DataObject Property
IVTDragManager Properties | IVTDragManager Interface | Send Feedback

Not documented.

Pascal
property DataObject: IDataObject;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

IVTDragManager Properties

Links
IVTDragManager Properties, IVTDragManager Interface


IVTDragManager.DragSource Property
IVTDragManager Properties | IVTDragManager Interface | Send Feedback

Not documented.

Pascal
property DragSource: TBaseVirtualTree;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

IVTDragManager Properties

Links
IVTDragManager Properties, IVTDragManager Interface


IVTDragManager.DropTargetHelperSupported Property
IVTDragManager Properties | IVTDragManager Interface | Send Feedback

Not documented.

Pascal
property DropTargetHelperSupported: Boolean;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

IVTDragManager Properties

Links
IVTDragManager Properties, IVTDragManager Interface


IVTDragManager.IsDropTarget Property
IVTDragManager Properties | IVTDragManager Interface | Send Feedback

Not documented.

Pascal
property IsDropTarget: Boolean;
Description

Use other resources like the news group or the Delphi Gems message board to find a description.

Group

IVTDragManager Properties

Links
IVTDragManager Properties, IVTDragManager Interface


IVTEditLink Interface
Interfaces | Topics | IVTEditLink Methods | Legend | IVTEditLink Methods | Send Feedback

Interface which is used for communication between the treeview and a node editor.

Pascal
IVTEditLink = interface;
Description

Due to the virtual nature of the tree it is necessary to supply a kind of plug in interface for application defined node editors. TCustomVirtualStringTree is the first class which implements a node editor. This is just a generic editor to edit a node's caption just like TTreeview does it. Because of the lack of support under Win9x system this editor only can edit ANSI text. You have to create an own editor to make also Unicode string editing available for node captions.

All node editors must implement this interface to allow the treeview to communicate with the node editor. Node editors are small components or forms. If a node shall be edited (for instance when the user presses F2) the treeview will fire the event OnCreateEditor. The application must determine which node editor must be used for the data in the given node and column. Then it creates and returns an instance of the appropriate node editor.

The life cycle of the node editor object is handled via reference counting. This means that the application must not destroy the node editor explicitly - this will happen automatically when the node editor is not used anymore.

Group

Interfaces

Members
IVTEditLink Methods

BeginEdit
This function will be called by the virtual tree when the editing starts.
CancelEdit
This function will be called by the virtual tree when the current editing is about to be cancelled.
EndEdit
This function will be called by the virtual tree when the current editing is being finished.
GetBounds
The virtual tree can use this function to get the current bounding rect of the node editor.
PrepareEdit
This function is called by a virtual tree to initialize the node editor.
ProcessMessage
This function is used to forward messages being directed to the virtual tree.
SetBounds
The virtual tree calls this function to initialize the bounding rectangle of the node editor.

Topics

IVTEditLink Methods
The methods of the IVTEditLink class are listed here.

Topics

IVTEditLink Methods
The methods of the IVTEditLink class are listed here.

Legend

Method
public

IVTEditLink Methods

BeginEdit
This function will be called by the virtual tree when the editing starts.
CancelEdit
This function will be called by the virtual tree when the current editing is about to be cancelled.
EndEdit
This function will be called by the virtual tree when the current editing is being finished.
GetBounds
The virtual tree can use this function to get the current bounding rect of the node editor.
PrepareEdit
This function is called by a virtual tree to initialize the node editor.
ProcessMessage
This function is used to forward messages being directed to the virtual tree.
SetBounds
The virtual tree calls this function to initialize the bounding rectangle of the node editor.

Class Hierarchy
  IVTEditLink
File

VirtualTrees

Links
Interfaces, Topics, IVTEditLink Methods, Legend, IVTEditLink Methods


IVTEditLink Methods
IVTEditLink Interface | Methods | Legend | Send Feedback

The methods of the IVTEditLink class are listed here.

Interface

IVTEditLink Interface

Legend

Method
public

Links
IVTEditLink Interface, Methods, Legend
What do you think about this topic? Send feedback!


IVTEditLink.BeginEdit Method
IVTEditLink Methods | IVTEditLink Interface | Send Feedback

This function will be called by the virtual tree when the editing starts.

Pascal
function BeginEdit: Boolean; stdcall;
Description

Write code to actually display the node editor here. This might be something like Visible := True or Show. The return value should be true if editing can start or false otherwise. Before this function is called PrepareEdit and SetBounds are executed.

Group

IVTEditLink Methods

Links
IVTEditLink Methods, IVTEditLink Interface


IVTEditLink.CancelEdit Method
IVTEditLink Methods | IVTEditLink Interface | Send Feedback

This function will be called by the virtual tree when the current editing is about to be cancelled.

Pascal
function CancelEdit: Boolean; stdcall;
Description

Hide the node editor here. This might be something like Visible := False or Hide. The return value should be True if the editing can be cancelled. Return false if the node editor is in an internal state which does not allow to cancel the editing right now.

Do not destroy the node editor instance because this will be done implicitly via reference counting.

Notes

If the edited tree is changed during this function, i.e. focus change, node deletion and so on, CancelEdit might be

called again by the tree which can lead to access violations. It is therefore advisable to block reentrancy with a

boolean variable. Example:

function TStringEditLink.CancelEdit: Boolean;
begin
  Result := not FStopping;
  if Result then
  begin
    FStopping := True;
    FEdit.Hide;
    FTree.CancelEditNode;
  end;
end;
Group

IVTEditLink Methods

Links
IVTEditLink Methods, IVTEditLink Interface


IVTEditLink.EndEdit Method
IVTEditLink Methods | IVTEditLink Interface | Send Feedback

This function will be called by the virtual tree when the current editing is being finished.

Pascal
function EndEdit: Boolean; stdcall;
Description

Hide the node editor here. This might be something like Visible := False or Hide. The return value should be true if the editing can be finished. Return false if the node editor is in an internal state which does not allow to finish the editing right now - possibly because there is no valid value available at the moment. If the editing can be finished transmit the edited value to the tree or to the data structure which is displayed in the tree.

Do not destroy the node editor instance because this will be done implicitly via reference counting.

Notes

If the edited tree is changed during this function, i.e. focus change, node deletion and so on, EndEdit might be called

again by the tree which can lead to access violations. It is therefore advisable to block reentrancy with a boolean

variable. Example:

function TStringEditLink.EndEdit: Boolean;
begin
  Result := not FStopping;
  if Result then
  try
    FStopping := True;
    if FEdit.Modified then
      FTree.DoNewText(FNode, FColumn, FEdit.Caption);
    FEdit.Hide;
  except
    FStopping := False;
    raise;
  end;
end;
Group

IVTEditLink Methods

Links
IVTEditLink Methods, IVTEditLink Interface


IVTEditLink.GetBounds Method
IVTEditLink Methods | IVTEditLink Interface | Send Feedback

The virtual tree can use this function to get the current bounding rect of the node editor.

Pascal
function GetBounds: TRect; stdcall;
Description

The bounding rect of the node editor may change during the editing to reflect the changed edit contents. The tree uses this function to query the current bounding rect of the editor. VCL components derived from TControl have a BoundsRect property which can be used as a return value here.

Group

IVTEditLink Methods

Links
IVTEditLink Methods, IVTEditLink Interface


IVTEditLink.PrepareEdit Method
IVTEditLink Methods | IVTEditLink Interface | Send Feedback

This function is called by a virtual tree to initialize the node editor.

Pascal
function PrepareEdit(Tree: TBaseVirtualTree; Node: PVirtualNode; Column: TColumnIndex): Boolean; stdcall;
Description

Use PrepareEdit to initialize the node editor. This includes getting the node content in the specified column which will be needed later when the editor is shown. BeginEdit may be called anytime after this function returns. If the initialization fails simply return false (exceptions should be trapped).

Group

IVTEditLink Methods

Links
IVTEditLink Methods, IVTEditLink Interface


IVTEditLink.ProcessMessage Method
IVTEditLink Methods | IVTEditLink Interface | Send Feedback

This function is used to forward messages being directed to the virtual tree.

Pascal
procedure ProcessMessage(var Message: TMessage); stdcall;
Description

Some node editors might need to trap some messages which are directed to the treeview window. This function remedies the need to subclass the virtual tree via its WindowProc property. If these messages are not needed leave the function body empty.

Group

IVTEditLink Methods

Links
IVTEditLink Methods, IVTEditLink Interface


IVTEditLink.SetBounds Method
IVTEditLink Methods | IVTEditLink Interface | Send Feedback

The virtual tree calls this function to initialize the bounding rectangle of the node editor.

Pascal
procedure SetBounds(R: TRect); stdcall;
Description

This function is usually called after PrepareEdit and before BeginEdit in order to place the node editor exactly over the node which is about to be edited. Use the R parameter to set the bounding rect of the editor. If the treeview is in grid mode R will be equal to the cell rectangle of the to be edited cell. Otherwise R is the bounding rectangle of the actual node text.

Notes

SetBounds is also a method of TControl. Hence if your node editor is implemented by a descendant of TControl you must use

a method resolution clause to avoid a name clash. The clause can look similar to this:

procedure EditLinkSetBounds(R: TRect); stdcall;
procedure IVTEditLink.SetBounds = EditLinkSetBounds;
Group

IVTEditLink Methods

Links
IVTEditLink Methods, IVTEditLink Interface


Classes
Classes | Legend
Classes

EVirtualTreeError
TBaseVirtualTree
TBaseVirtualTree is the main and base class for all other Virtual Treeview descendants.
TBufferedAnsiString
Not documented.
TCanvasEx
Not documented.
TClipboardFormatList
Not documented.
TClipboardFormats
List of strings describing clipboard formats.

TCriticalSection
Not documented.
TCustomStringTreeOptions
Enhanced options class for string trees.
TCustomVirtualDrawTree
Simple owner draw descendant of the base tree.
TCustomVirtualStringTree
Descendant of TBaseVirtualTree, which is able to manage node captions on its own
TCustomVirtualTreeOptions
Organizes all tree options into subproperties for easier managment.
TEnumFormatEtc
TScrollBarOptions
TStringEditLink
TStringEditLink is the standard node editor of a TVirtualStringTree.
TStringTreeOptions
Options class used in the string tree and its descentants.
TVirtualDrawTree
Descendant of TBaseVirtualTree, which passes node paint events through to the application (similar to a draw grid)
TVirtualStringTree
Descentant of TBaseVirtualTree which is able to manage node captions on its own.
TVirtualTreeColumn
Represents a column in a Virtual Treeview.
TVirtualTreeColumns
Collection class, which holds the columns for the tree.
TVirtualTreeHintWindow
Internally used hint window class to support Unicode hints.
TVirtualTreeOptions
Collects all binary options of the tree control into one place for easier access.
TVTColors
Collects all color related options for the tree control.
TVTDataObject
Implementation of an IDataObject interface.
TVTDragImage
Not documented.
TVTDragManager
Not documented.
TVTEdit
Not documented.
TVTFixedAreaConstraints
Not documented.
TVTHeader
Not documented.
TVTHeaderPopupMenu
Not documented.
TWideBufferedString
Not documented.
TWorkerThread
Not documented.


Classes

Legend
Legend

Class


Legend
Classes
Legend

Class
Record


Classes Records
Classes | Legend
Records

TVTVirtualNodeEnumeration
Not documented.
TVTVirtualNodeEnumerator
Not documented.


Records

Legend
Legend

Record


Constants
Constants | Legend
Constants

AlignmentToDrawFlag
Not documented.
AllocIncrement
Not documented.
BaseChunk
Not documented.
CacheThreshold
Number of nodes a tree must at least have to start caching and at the same time the maximum number of nodes between two cache entries.
CaptionChunk
Not documented.
CFSTR_CSV
Contains the registration string for certain clipboard formats.
CFSTR_HTML
Contains the registration string for certain clipboard formats.
CFSTR_RTF
Contains the registration string for certain clipboard formats.
CFSTR_RTFNOOBJS
Contains the registration string for certain clipboard formats.
CFSTR_VIRTUALTREE
Contains the registration string for certain clipboard formats.
CFSTR_VTREFERENCE
Contains the registration string for certain clipboard formats.
ChangeTimer
Not documented.
ckButtonDisabled
ckButtonHot
ckButtonNormal
ckButtonPressed
ckCheckCheckedDisabled
ckCheckCheckedHot
ckCheckCheckedNormal
ckCheckCheckedPressed
ckCheckMixedDisabled
ckCheckMixedHot
ckCheckMixedNormal
ckCheckMixedPressed
ckCheckUncheckedDisabled
ckCheckUncheckedHot
ckCheckUncheckedNormal
ckCheckUncheckedPressed
ckEmpty
ckRadioCheckedDisabled
ckRadioCheckedHot
ckRadioCheckedNormal
ckRadioCheckedPressed
ckRadioUncheckedDisabled
ckRadioUncheckedHot
ckRadioUncheckedNormal
ckRadioUncheckedPressed
ClipboardStates
Not documented.
CLSID_DragDropHelper
Not documented.
CM_AUTOADJUST
Not documented.
CM_DENYSUBCLASSING
Not documented.
Copyright
Not documented.
crHeaderSplit
Not documented.
crVertSplit
Not documented.
DefaultAnimationOptions
Not documented.
DefaultAutoOptions
Not documented.
DefaultColumnOptions
Not documented.
DefaultMiscOptions
Not documented.
DefaultPaintOptions
Not documented.
DefaultScrollUpdateFlags
Not documented.
DefaultSelectionOptions
Not documented.
DefaultStringOptions
Not documented.
EditTimer
Not documented.
ExpandTimer
Not documented.
FadeAnimationStepCount
Not documented.
hcTFCannotSetUserData
Not documented.
hcTFClipboardFailed
Not documented.
hcTFCorruptStream1
Not documented.
hcTFCorruptStream2
Not documented.
hcTFEditLinkIsNil
Not documented.
hcTFStreamTooSmall
Not documented.
hcTFWrongMoveError
Not documented.
hcTFWrongStreamFormat
Not documented.
hcTFWrongStreamVersion
Not documented.
HeaderTimer
Not documented.
IID_IDragSourceHelper
Not documented.
IID_IDropTarget
Not documented.
IID_IDropTargetHelper
Not documented.
InvalidColumn
Not documented.
MagicID
Not documented.
MinimumTimerInterval
Not documented.
MouseButtonDown
Not documented.
NoColumn
Not documented.
NodeChunk
Not documented.
PressedState
Not documented.
RTLFlag
Not documented.
SCannotSetUserData
Not documented.
SClipboardFailed
Not documented.
SCorruptStream1
Not documented.
SCorruptStream2
Not documented.
ScrollTimer
Not documented.
SearchTimer
Not documented.
SEditLinkIsNil
Not documented.
ShadowSize
Size in pixels of the hint shadow.
SID_IDragSourceHelper
Not documented.
SID_IDropTarget
Not documented.
SID_IDropTargetHelper
Not documented.
SStreamTooSmall
Not documented.
StructureChangeTimer
Not documented.
SWrongMoveError
Not documented.
SWrongStreamFormat
Not documented.
TVP_HOTGLYPH
Not documented.
SWrongStreamVersion
Not documented.
TreeNodeSize
Not documented.
UnpressedState
Not documented.
UserChunk
Not documented.
UtilityImageSize
Not documented.
VTHeaderStreamVersion
Not documented.
VTTreeStreamVersion
Not documented.
VTVersion
Not documented.
WideCR
Not documented.
WideLF
Not documented.
WideLineSeparator
Not documented.
WideNull
Not documented.
WM_CHANGESTATE
Not documented.


Constants

Legend
Legend

Constant


Legend
Constants
Legend

Constant


Topics
Constants
Topics

Check button image indices


Functions
Functions | Legend
Functions

AlphaBlend
General purpose procedure to blend one bitmap to another.
EnumerateVTClipboardFormats
Not documented.
EnumerateVTClipboardFormats
Not documented.
GetStringDrawRect
Not documented.
GetVTClipboardFormatDescription
Not documented.
PrtStretchDrawDIB
Not documented.
RegisterVTClipboardFormat
Methods to register a certain clipboard format for a given tree class.
RegisterVTClipboardFormat
Methods to register a certain clipboard format for a given tree class.
ShortenString
Not documented.
TreeFromNode
General purpose routine to get the tree to which a node belongs.
WrapString
Not documented.


Functions

Legend
Legend

Method


Legend
Functions
Legend

Method


Interfaces
Interfaces | Legend
Interfaces

IDragSourceHelper
Not documented.
IDropTargetHelper
Not documented.
IVTDragManager
Not documented.
IVTEditLink
Interface which is used for communication between the treeview and a node editor.


Interfaces

Legend
Legend

Interface


Legend
Interfaces
Legend

Interface


Legend
TBaseVirtualTree Constructors
Legend

Constructor
public
virtual


TBaseVirtualTree Constructors Methods
TBaseVirtualTree Constructors | Legend
Methods

Create
Constructor of the control


Methods

Legend
Legend

Constructor
public
virtual


Legend
TClipboardFormatList Constructors
Legend

Constructor
public


TClipboardFormatList Constructors Methods
TClipboardFormatList Constructors | Legend
Methods

Create
Not documented.


Methods

Legend
Legend

Constructor
public


Legend
TClipboardFormats Constructors
Legend

Constructor
public
virtual


TClipboardFormats Constructors Methods
TClipboardFormats Constructors | Legend
Methods

Create
Constructor of the class.


Legend
TCriticalSection Constructors
Legend

Constructor
public


TCriticalSection Constructors Methods
TCriticalSection Constructors | Legend
Methods

Create
Not documented.


Legend
TCustomStringTreeOptions Constructors
Legend

Constructor
public
virtual


TCustomStringTreeOptions Constructors Methods
TCustomStringTreeOptions Constructors | Legend
Methods

Create
The constructor of the class.


Legend
TCustomVirtualStringTree Constructors
Legend

Constructor
public
virtual


TCustomVirtualStringTree Constructors Methods
TCustomVirtualStringTree Constructors | Legend
Methods

Create
Constructor of the control


Legend
TCustomVirtualTreeOptions Constructors
Legend

Constructor
public
virtual


TCustomVirtualTreeOptions Constructors Methods
TCustomVirtualTreeOptions Constructors | Legend
Methods

Create
Constructor of the class.


Legend
TEnumFormatEtc Constructors
Legend

Constructor
public


TEnumFormatEtc Constructors Methods
TEnumFormatEtc Constructors | Legend
Methods

Create
Not documented.


Legend
TScrollBarOptions Constructors
Legend

Constructor
public


TScrollBarOptions Constructors Methods
TScrollBarOptions Constructors | Legend
Methods

Create
Not documented.


Legend
TStringEditLink Constructors
Legend

Constructor
public
virtual


TStringEditLink Constructors Methods
TStringEditLink Constructors | Legend
Methods

Create
Constructor of the class.


Legend
TVirtualTreeColumn Constructors
Legend

Constructor
public
virtual


TVirtualTreeColumn Constructors Methods
TVirtualTreeColumn Constructors | Legend
Methods

Create
Not documented.


Legend
TVirtualTreeColumns Constructors
Legend

Constructor
public


TVirtualTreeColumns Constructors Methods
TVirtualTreeColumns Constructors | Legend
Methods

Create
Not documented.


Legend
TVirtualTreeHintWindow Constructors
Legend

Constructor
public
virtual


TVirtualTreeHintWindow Constructors Methods
TVirtualTreeHintWindow Constructors | Legend
Methods

Create
Not documented.


Legend
TVTColors Constructors
Legend

Constructor
public


TVTColors Constructors Methods
TVTColors Constructors | Legend
Methods

Create
Not documented.


Legend
TVTDataObject Constructors
Legend

Constructor
public
virtual


TVTDataObject Constructors Methods
TVTDataObject Constructors | Legend
Methods

Create
Constructor of the class.


Legend
TVTDragImage Constructors
Legend

Constructor
public


TVTDragImage Constructors Methods
TVTDragImage Constructors | Legend
Methods

Create
Not documented.


Legend
TVTDragManager Constructors
Legend

Constructor
public
virtual


TVTDragManager Constructors Methods
TVTDragManager Constructors | Legend
Methods

Create
Not documented.


Legend
TVTEdit Constructors
Legend

Constructor
public


TVTEdit Constructors Methods
TVTEdit Constructors | Legend
Methods

Create
Not documented.


Legend
TVTFixedAreaConstraints Constructors
Legend

Constructor
public


TVTFixedAreaConstraints Constructors Methods
TVTFixedAreaConstraints Constructors | Legend
Methods

Create
Not documented.


Legend
TVTHeader Constructors
Legend

Constructor
public
virtual


TVTHeader Constructors Methods
TVTHeader Constructors | Legend
Methods

Create
Not documented.


Legend
TWorkerThread Constructors
Legend

Constructor
public


TWorkerThread Constructors Methods
TWorkerThread Constructors | Legend
Methods

Create
Not documented.


Legend
TBaseVirtualTree Destructors
Legend

Destructor
public
virtual


TBaseVirtualTree Destructors Methods
TBaseVirtualTree Destructors | Legend
Methods

Destroy
Destructor of the control.


Methods

Legend
Legend

Destructor
public
virtual


Legend
TBufferedAnsiString Destructors
Legend

Destructor
public
virtual


TBufferedAnsiString Destructors Methods
TBufferedAnsiString Destructors | Legend
Methods

Destroy
Not documented.


Legend
TClipboardFormatList Destructors
Legend

Destructor
public
virtual


TClipboardFormatList Destructors Methods
TClipboardFormatList Destructors | Legend
Methods

Destroy
Not documented.


Legend
TCriticalSection Destructors
Legend

Destructor
public
virtual


TCriticalSection Destructors Methods
TCriticalSection Destructors | Legend
Methods

Destroy
Not documented.


Legend
TStringEditLink Destructors
Legend

Destructor
public
virtual


TStringEditLink Destructors Methods
TStringEditLink Destructors | Legend
Methods

Destroy
Destructor of the class.


Legend
TVirtualTreeColumn Destructors
Legend

Destructor
public
virtual


TVirtualTreeColumn Destructors Methods
TVirtualTreeColumn Destructors | Legend
Methods

Destroy
Not documented.


Legend
TVirtualTreeColumns Destructors
Legend

Destructor
public
virtual


TVirtualTreeColumns Destructors Methods
TVirtualTreeColumns Destructors | Legend
Methods

Destroy
Not documented.


Legend
TVirtualTreeHintWindow Destructors
Legend

Destructor
public
virtual


TVirtualTreeHintWindow Destructors Methods
TVirtualTreeHintWindow Destructors | Legend
Methods

Destroy
Not documented.


Legend
TVTDataObject Destructors
Legend

Destructor
public
virtual


TVTDataObject Destructors Methods
TVTDataObject Destructors | Legend
Methods

Destroy
Destructor of the class.


Legend
TVTDragImage Destructors
Legend

Destructor
public
virtual


TVTDragImage Destructors Methods
TVTDragImage Destructors | Legend
Methods

Destroy
Not documented.


Legend
TVTDragManager Destructors
Legend

Destructor
public
virtual


TVTDragManager Destructors Methods
TVTDragManager Destructors | Legend
Methods

Destroy
Not documented.


Legend
TVTHeader Destructors
Legend

Destructor
public
virtual


TVTHeader Destructors Methods
TVTHeader Destructors | Legend
Methods

Destroy
Not documented.


Legend
TWideBufferedString Destructors
Legend

Destructor
public
virtual


TWideBufferedString Destructors Methods
TWideBufferedString Destructors | Legend
Methods

Destroy
Not documented.


Legend
TWorkerThread Destructors
Legend

Destructor
public
virtual


TWorkerThread Destructors Methods
TWorkerThread Destructors | Legend
Methods

Destroy
Not documented.


TBaseVirtualTree Events Events
TBaseVirtualTree Events | Legend
Events

OnAddToSelection
Not documented.
OnAdvancedHeaderDraw
Header paint support event.
OnAfterAutoFitColumn
Not documented.
OnAfterAutoFitColumns
Not documented.
OnAfterCellPaint
Paint support event.
OnAfterColumnExport
Not documented.
OnAfterColumnWidthTracking
Not documented.
OnAfterGetMaxColumnWidth
Not documented.
OnAfterHeaderExport
Not documented.
OnAfterHeaderHeightTracking
Not documented.
OnAfterItemErase
Paint support event.
OnAfterItemPaint
Paint support event.
OnAfterNodeExport
Not documented.
OnAfterPaint
Paint support event.
OnAfterTreeExport
Not documented.
OnBeforeAutoFitColumn
Not documented.
OnBeforeAutoFitColumns
Not documented.
OnBeforeCellPaint
Paint support event.
OnBeforeColumnExport
Not documented.
OnBeforeColumnWidthTracking
Not documented.
OnBeforeDrawTreeLine
Not documented.
OnBeforeGetMaxColumnWidth
Not documented.
OnBeforeHeaderExport
Not documented.
OnBeforeHeaderHeightTracking
Not documented.
OnBeforeItemErase
Paint support event.
OnBeforeItemPaint
Paint support event.
OnBeforeNodeExport
Not documented.
OnBeforePaint
Paint support event.
OnBeforeTreeExport
Not documented.
OnCanSplitterResizeColumn
Not documented.
OnCanSplitterResizeHeader
Not documented.
OnCanSplitterResizeNode
Not documented.
OnChange
Navigation support event.
OnChecked
Check support event.
OnChecking
Check support event.
OnCollapsed
Miscellaneous event.
OnCollapsing
Miscellaneous event.
OnColumnClick
Header and column support event.
OnColumnDblClick
Header and column support event.
OnColumnExport
Not documented.
OnColumnResize
Header and column support routine.
OnColumnWidthDblClickResize
Not documented.
OnColumnWidthTracking
Not documented.
OnCompareNodes
Sort and search support event.
OnCreateDataObject
Drag'n drop support event.
OnCreateDragManager
Drag'n drop support event.
OnCreateEditor
Editing support event.
OnDragAllowed
Drag'n drop support event.
OnDragDrop
Drag'n drop support event.
OnDragOver
Drag'n drop support event.
OnEditCancelled
Editing support event.
OnEdited
Editing support event.
OnEditing
Editing support event.
OnEndOperation
Not documented.
OnExpanded
Misscellaneous event.
OnExpanding
Miscellaneous event.
OnFocusChanged
Navigation support event.
OnFocusChanging
Navigation support event.
OnFreeNode
Data management node.
OnGetCellIsEmpty
Triggered when the tree control needs to know whether a given column is empty.
OnGetCursor
Miscellaneous event.
OnGetHeaderCursor
Header and column support event.
OnGetHelpContext
Miscellaneous event.
OnGetImageIndex
Display management event.
OnGetImageIndexEx
Not documented.
OnGetImageText
Not documented.
OnGetLineStyle
Display management event.
OnGetNodeDataSize
Data management event.
OnGetPopupMenu
Miscellaneous event.
OnGetUserClipboardFormats
Drag'n drop and clipboard support event.
OnHeaderClick
Header & column support event.
OnHeaderDblClick
Header & column support event.
OnHeaderDragged
Header & column support event.
OnHeaderDraggedOut
Header & column support event.
OnHeaderDragging
Header & column support event.
OnHeaderDraw
Header & column support event.
OnHeaderDrawQueryElements
Header & column support event.
OnHeaderHeightDblClickResize
Not documented.
OnHeaderHeightTracking
Not documented.
OnHeaderMouseDown
Header & column support event.
OnHeaderMouseMove
Header & column support event.
OnHeaderMouseUp
Header & column support event.
OnHotChange
Navigation support event.
OnIncrementalSearch
Miscellaneous event.
OnInitChildren
Node management event.
OnInitNode
Node management event.
OnKeyAction
Miscellaneous event.
OnLoadNode
Streaming support event.
OnLoadTree
Not documented.
OnMeasureItem
Miscellaneous event.
OnNodeClick
Not documented.
OnNodeCopied
Miscellaneous event.
OnNodeCopying
Miscellaneous event.
OnNodeDblClick
Not documented.
OnNodeExport
Not documented.
OnNodeHeightDblClickResize
Not documented.
OnNodeHeightTracking
Not documented.
OnNodeMoved
Miscellaneous event.
OnNodeMoving
Miscellaneous event.
OnPaintBackground
Paint support event.
OnRemoveFromSelection
Not documented.
OnRenderOLEData
Drag'n drop and clipboard support event.
OnResetNode
Node management event.
OnSaveNode
Streaming support event.
OnSaveTree
Not documented.
OnScroll
Miscellaneous event.
OnShowScrollbar
Not documented.
OnStartOperation
Not documented.
OnStateChange
Miscellaneous event.
OnStructureChange
Miscellaneous event.
OnUpdating
Miscellaneous event.


Events

Legend
Legend

Event
protected


Legend
TBaseVirtualTree Events
Legend

Event
protected


TCustomVirtualDrawTree Events Events
TCustomVirtualDrawTree Events | Legend
Events

OnDrawHint
Triggered when a node hint or tooltip must be drawn.
OnDrawNode
Triggered when a node must be drawn.
OnGetCellContentMargin
Not documented.
OnGetHintSize
Triggered when a node hint or tooltip is about to show.
OnGetNodeWidth
Triggered when a node is about to be drawn.


Legend
TCustomVirtualDrawTree Events
Legend

Event
protected


TCustomVirtualStringTree Events Events
TCustomVirtualStringTree Events | Legend
Events

OnDrawText
Not documented.
OnGetHint
Virtual string tree event to query for a custom hint text.
OnGetText
Virtual string tree event to query for a node's normal or static text.
OnMeasureTextHeight
Not documented.
OnMeasureTextWidth
Not documented.
OnNewText
Virtual string tree event to pass edited text.
OnPaintText
Event to change text formatting for particular nodes.
OnShortenString
String tree event for custom handling of string abbreviations.


Legend
TCustomVirtualStringTree Events
Legend

Event
protected


TVirtualDrawTree Events Events
TVirtualDrawTree Events | Legend
Events

OnAddToSelection
Not documented.
OnAdvancedHeaderDraw
Header paint support event.
OnAfterAutoFitColumn
Not documented.
OnAfterAutoFitColumns
Not documented.
OnAfterCellPaint
Paint support event.
OnAfterColumnExport
Not documented.
OnAfterColumnWidthTracking
Not documented.
OnAfterGetMaxColumnWidth
Not documented.
OnAfterHeaderExport
Not documented.
OnAfterHeaderHeightTracking
Not documented.
OnAfterItemErase
Paint support event.
OnAfterItemPaint
Paint support event.
OnAfterNodeExport
Not documented.
OnAfterPaint
Paint support event.
OnAfterTreeExport
Not documented.
OnBeforeAutoFitColumn
Not documented.
OnBeforeAutoFitColumns
Not documented.
OnBeforeCellPaint
Paint support event.
OnBeforeColumnExport
Not documented.
OnBeforeColumnWidthTracking
Not documented.
OnBeforeDrawTreeLine
Not documented.
OnBeforeGetMaxColumnWidth
Not documented.
OnBeforeHeaderExport
Not documented.
OnBeforeHeaderHeightTracking
Not documented.
OnBeforeItemErase
Paint support event.
OnBeforeItemPaint
Paint support event.
OnBeforeNodeExport
Not documented.
OnBeforePaint
Paint support event.
OnBeforeTreeExport
Not documented.
OnCanSplitterResizeColumn
Not documented.
OnCanSplitterResizeHeader
Not documented.
OnCanSplitterResizeNode
Not documented.
OnChange
Navigation support event.
OnChecked
Check support event.
OnChecking
Check support event.
OnCollapsed
Miscellaneous event.
OnCollapsing
Miscellaneous event.
OnColumnClick
Header and column support event.
OnColumnDblClick
Header and column support event.
OnColumnExport
Not documented.
OnColumnResize
Header and column support routine.
OnColumnWidthDblClickResize
Not documented.
OnColumnWidthTracking
Not documented.
OnCompareNodes
Sort and search support event.
OnCreateDataObject
Drag'n drop support event.
OnCreateDragManager
Drag'n drop support event.
OnCreateEditor
Editing support event.
OnDragAllowed
Drag'n drop support event.
OnDragDrop
Drag'n drop support event.
OnDragOver
Drag'n drop support event.
OnDrawHint
Triggered when a node hint or tooltip must be drawn.
OnDrawNode
Triggered when a node must be drawn.
OnEdited
Editing support event.
OnEditing
Editing support event.
OnEndOperation
Not documented.
OnExpanded
Misscellaneous event.
OnExpanding
Miscellaneous event.
OnFocusChanged
Navigation support event.
OnFocusChanging
Navigation support event.
OnFreeNode
Data management node.
OnGetCellIsEmpty
Triggered when the tree control needs to know whether a given column is empty.
OnGetCursor
Miscellaneous event.
OnGetHeaderCursor
Header and column support event.
OnGetHelpContext
Miscellaneous event.
OnGetHintSize
Triggered when a node hint or tooltip is about to show.
OnGetImageIndex
Display management event.
OnGetImageIndexEx
Not documented.
OnGetLineStyle
Display management event.
OnGetNodeDataSize
Data management event.
OnGetNodeWidth
Triggered when a node is about to be drawn.
OnGetPopupMenu
Miscellaneous event.
OnGetUserClipboardFormats
Drag'n drop and clipboard support event.
OnHeaderClick
Header & column support event.
OnHeaderDblClick
Header & column support event.
OnHeaderDragged
Header & column support event.
OnHeaderDraggedOut
Header & column support event.
OnHeaderDragging
Header & column support event.
OnHeaderDraw
Header & column support event.
OnHeaderDrawQueryElements
Header & column support event.
OnHeaderHeightDblClickResize
Not documented.
OnHeaderHeightTracking
Not documented.
OnHeaderMouseDown
Header & column support event.
OnHeaderMouseMove
Header & column support event.
OnHeaderMouseUp
Header & column support event.
OnHotChange
Navigation support event.
OnIncrementalSearch
Miscellaneous event.
OnInitChildren
Node management event.
OnInitNode
Node management event.
OnKeyAction
Miscellaneous event.
OnLoadNode
Streaming support event.
OnLoadTree
Not documented.
OnMeasureItem
Miscellaneous event.
OnNodeClick
Not documented.
OnNodeCopied
Miscellaneous event.
OnNodeCopying
Miscellaneous event.
OnNodeDblClick
Not documented.
OnNodeExport
Not documented.
OnNodeHeightDblClickResize
Not documented.
OnNodeHeightTracking
Not documented.
OnNodeMoved
Miscellaneous event.
OnNodeMoving
Miscellaneous event.
OnPaintBackground
Paint support event.
OnRemoveFromSelection
Not documented.
OnRenderOLEData
Drag'n drop and clipboard support event.
OnResetNode
Node management event.
OnSaveNode
Streaming support event.
OnSaveTree
Not documented.
OnScroll
Miscellaneous event.
OnShowScrollbar
Not documented.
OnStartOperation
Not documented.
OnStateChange
Miscellaneous event.
OnStructureChange
Miscellaneous event.
OnUpdating
Miscellaneous event.


Events

Legend
Legend

Event
published


Legend
TVirtualDrawTree Events
Legend

Event
published


TVirtualStringTree Events Events
TVirtualStringTree Events | Legend
Events

OnAddToSelection
Not documented.
OnAdvancedHeaderDraw
Header paint support event.
OnAfterAutoFitColumn
Not documented.
OnAfterAutoFitColumns
Not documented.
OnAfterCellPaint
Paint support event.
OnAfterColumnExport
Not documented.
OnAfterColumnWidthTracking
Not documented.
OnAfterGetMaxColumnWidth
Not documented.
OnAfterHeaderExport
Not documented.
OnAfterHeaderHeightTracking
Not documented.
OnAfterItemErase
Paint support event.
OnAfterItemPaint
Paint support event.
OnAfterNodeExport
Not documented.
OnAfterPaint
Paint support event.
OnAfterTreeExport
Not documented.
OnBeforeAutoFitColumn
Not documented.
OnBeforeAutoFitColumns
Not documented.
OnBeforeCellPaint
Paint support event.
OnBeforeColumnExport
Not documented.
OnBeforeColumnWidthTracking
Not documented.
OnBeforeDrawTreeLine
Not documented.
OnBeforeGetMaxColumnWidth
Not documented.
OnBeforeHeaderExport
Not documented.
OnBeforeHeaderHeightTracking
Not documented.
OnBeforeItemErase
Paint support event.
OnBeforeItemPaint
Paint support event.
OnBeforeNodeExport
Not documented.
OnBeforePaint
Paint support event.
OnBeforeTreeExport
Not documented.
OnCanSplitterResizeColumn
Not documented.
OnCanSplitterResizeHeader
Not documented.
OnCanSplitterResizeNode
Not documented.
OnChange
Navigation support event.
OnChecked
Check support event.
OnChecking
Check support event.
OnCollapsed
Miscellaneous event.
OnCollapsing
Miscellaneous event.
OnColumnClick
Header and column support event.
OnColumnDblClick
Header and column support event.
OnColumnExport
Not documented.
OnColumnResize
Header and column support routine.
OnColumnWidthDblClickResize
Not documented.
OnColumnWidthTracking
Not documented.
OnCompareNodes
Sort and search support event.
OnCreateDataObject
Drag'n drop support event.
OnCreateDragManager
Drag'n drop support event.
OnCreateEditor
Editing support event.
OnDragAllowed
Drag'n drop support event.
OnDragDrop
Drag'n drop support event.
OnDragOver
Drag'n drop support event.
OnDrawText
Not documented.
OnEditCancelled
Editing support event.
OnEdited
Editing support event.
OnEditing
Editing support event.
OnEndOperation
Not documented.
OnExpanded
Misscellaneous event.
OnExpanding
Miscellaneous event.
OnFocusChanged
Navigation support event.
OnFocusChanging
Navigation support event.
OnFreeNode
Data management node.
OnGetCellIsEmpty
Triggered when the tree control needs to know whether a given column is empty.
OnGetCursor
Miscellaneous event.
OnGetHeaderCursor
Header and column support event.
OnGetHelpContext
Miscellaneous event.
OnGetHint
Virtual string tree event to query for a custom hint text.
OnGetImageIndex
Display management event.
OnGetImageIndexEx
Not documented.
OnGetImageText
Not documented.
OnGetLineStyle
Display management event.
OnGetNodeDataSize
Data management event.
OnGetPopupMenu
Miscellaneous event.
OnGetText
Virtual string tree event to query for a node's normal or static text.
OnGetUserClipboardFormats
Drag'n drop and clipboard support event.
OnHeaderClick
Header & column support event.
OnHeaderDblClick
Header & column support event.
OnHeaderDragged
Header & column support event.
OnHeaderDraggedOut
Header & column support event.
OnHeaderDragging
Header & column support event.
OnHeaderDraw
Header & column support event.
OnHeaderDrawQueryElements
Header & column support event.
OnHeaderHeightDblClickResize
Not documented.
OnHeaderHeightTracking
Not documented.
OnHeaderMouseDown
Header & column support event.
OnHeaderMouseMove
Header & column support event.
OnHeaderMouseUp
Header & column support event.
OnHotChange
Navigation support event.
OnIncrementalSearch
Miscellaneous event.
OnInitChildren
Node management event.
OnInitNode
Node management event.
OnKeyAction
Miscellaneous event.
OnLoadNode
Streaming support event.
OnLoadTree
Not documented.
OnMeasureItem
Miscellaneous event.
OnMeasureTextHeight
Not documented.
OnMeasureTextWidth
Not documented.
OnNewText
Virtual string tree event to pass edited text.
OnNodeClick
Not documented.
OnNodeCopied
Miscellaneous event.
OnNodeCopying
Miscellaneous event.
OnNodeDblClick
Not documented.
OnNodeExport
Not documented.
OnNodeHeightDblClickResize
Not documented.
OnNodeHeightTracking
Not documented.
OnNodeMoved
Miscellaneous event.
OnNodeMoving
Miscellaneous event.
OnPaintBackground
Paint support event.
OnPaintText
Event to change text formatting for particular nodes.
OnRemoveFromSelection
Not documented.
OnRenderOLEData
Drag'n drop and clipboard support event.
OnResetNode
Node management event.
OnSaveNode
Streaming support event.
OnSaveTree
Not documented.
OnScroll
Miscellaneous event.
OnShortenString
String tree event for custom handling of string abbreviations.
OnShowScrollbar
Not documented.
OnStartOperation
Not documented.
OnStateChange
Miscellaneous event.
OnStructureChange
Miscellaneous event.
OnUpdating
Miscellaneous event.


Legend
TVirtualStringTree Events
Legend

Event
published


TVTHeaderPopupMenu Events Events
TVTHeaderPopupMenu Events | Legend
Events

OnAddHeaderPopupItem
Not documented.
OnColumnChange
Not documented.


Legend
TVTHeaderPopupMenu Events
Legend

Event
published


TCriticalSection Fields Fields
TCriticalSection Fields | Legend
Fields

FSection
Not documented.


Fields

Legend
Legend

Data Member
protected


Legend
TCriticalSection Fields
Legend

Data Member
protected


TStringEditLink Fields Fields
TStringEditLink Fields | Legend
Fields

FAlignment
Not documented.
FColumn
The column of the node.
FNode
The node to be edited.
FStopping
Set to True when the edit link requests stopping the edit action.
FTextBounds
Smallest rectangle around the text.
FTree
A back reference to the tree calling.


Legend
TStringEditLink Fields
Legend

Data Member
protected


TVirtualTreeColumns Fields Fields
TVirtualTreeColumns Fields | Legend
Fields

FDragIndex
index of column currently being dragged
FDropBefore
True if drop position is in the left half of a column, False for the right side to drop the dragged column to
FDropTarget
current target column (index) while dragging


Legend
TVirtualTreeColumns Fields
Legend

Data Member
protected


TVTEdit Fields Fields
TVTEdit Fields | Legend
Fields

FLink
Not documented.
FRefLink
Not documented.


Legend
TVTEdit Fields
Legend

Data Member
protected


TVTHeader Fields Fields
TVTHeader Fields | Legend
Fields

FDragStart
initial mouse drag position
FStates
used to keep track of internal states the header can enter
FTrackPoint
Not documented.
FTrackStart
client coordinates of the tracking start point


Legend
TVTHeader Fields
Legend

Data Member
protected


TVTVirtualNodeEnumeration Fields Fields
TVTVirtualNodeEnumeration Fields | Legend
Fields

FConsiderChildrenAbove
Not documented.
FIncludeFiltered
Not documented.
FNode
Not documented.
FNodeLevel
Not documented.
FState
Not documented.
FTree
Not documented.
objectprivateFMode
Not documented.


Fields

Legend
Legend

Data Member
public


Legend
TVTVirtualNodeEnumeration Fields
Legend

Data Member
public


TVTVirtualNodeEnumerator Fields Fields
TVTVirtualNodeEnumerator Fields | Legend
Fields

FCanModeNext
Not documented.
FEnumeration
Not documented.
privateFNode
Not documented.


Legend
TVTVirtualNodeEnumerator Fields
Legend

Data Member
public


Legend
IDragSourceHelper Methods
Legend

Method
public


IDragSourceHelper Methods Methods
IDragSourceHelper Methods | Legend
Methods

InitializeFromBitmap
Not documented.
InitializeFromWindow
Not documented.


Methods

Legend
Legend

Method
public


Legend
IDropTargetHelper Methods
Legend

Method
public


IDropTargetHelper Methods Methods
IDropTargetHelper Methods | Legend
Methods

DragEnter
Not documented.
DragLeave
Not documented.
DragOver
Not documented.
Drop
Not documented.
Show
Not documented.


Legend
IVTDragManager Methods
Legend

Method
public


IVTDragManager Methods Methods
IVTDragManager Methods | Legend
Methods

ForceDragLeave
Not documented.
GetDataObject
Not documented.
GetDragSource
Not documented.
GetDropTargetHelperSupported
Not documented.
GetIsDropTarget
Not documented.


Legend
IVTEditLink Methods
Legend

Method
public


IVTEditLink Methods Methods
IVTEditLink Methods | Legend
Methods

BeginEdit
This function will be called by the virtual tree when the editing starts.
CancelEdit
This function will be called by the virtual tree when the current editing is about to be cancelled.
EndEdit
This function will be called by the virtual tree when the current editing is being finished.
GetBounds
The virtual tree can use this function to get the current bounding rect of the node editor.
PrepareEdit
This function is called by a virtual tree to initialize the node editor.
ProcessMessage
This function is used to forward messages being directed to the virtual tree.
SetBounds
The virtual tree calls this function to initialize the bounding rectangle of the node editor.


Legend
TBaseVirtualTree Methods
Legend

Method
public
virtual
protected


TBaseVirtualTree Methods Methods
TBaseVirtualTree Methods | Legend
Methods

AbsoluteIndex
Reads the overall index of a node.
AddChild
Creates and adds a new child node to given node.
AddFromStream
Adds the content from the given stream to the given node.
AddToSelection
This is the overview for the AddToSelection method overload.
AdjustImageBorder
Depending on the width of the image list as well as the given bidi mode R must be adjusted.
AdjustPaintCellRect
Used in descentants to modify the clip rectangle of the current column while painting a certain node.
AdjustPanningCursor
Loads the proper cursor which indicates into which direction scrolling is done.
AdviseChangeEvent
Used to register a delayed change event.
AllocateInternalDataArea
Registration method to allocate tree internal data per node.
Animate
Support method for animated actions in the tree view.
Assign
Used to copy properties from another Virtual Treeview.
BeginDrag
Starts an OLE drag'n drop operation.
BeginSynch
Enters the tree into a special synchronized mode.
BeginUpdate
Locks the tree view to perform several update operations.
CalculateSelectionRect
Support method for draw selection.
CanAutoScroll
Determines whether the tree can currently auto scroll its window.
CancelCutOrCopy
Canceles any pending cut or copy clipboard operation.
CancelEditNode
Cancel the current edit operation, if there is any.
CancelOperation
Not documented.
CanEdit
Determines whether a node can be edited or not.
CanFocus
Support method to determine whether the tree window can receive the input focus.
CanShowDragImage
Determines whether a drag image should be shown.
CanSplitterResizeNode
Not documented.
Change
Central method called when a node's selection state changes.
ChangeScale
Helper method called by the VCL when control resizing is due.
CheckedNodes
Not documented.
CheckParentCheckState
Helper method for recursive check state changes.
ChildNodes
Not documented.
Clear
Clears the tree and removes all nodes.
ClearChecked
Not documented.
ClearSelection
Removes all nodes from the current selection.
ClearTempCache
Helper method to clear the internal temporary node cache.
ColumnIsEmpty
Used to determine if a cell is considered as being empty.
ComputeRTLOffset
Not documented.
CopyTo
This is the overview for the CopyTo method overload.
CopyToClipBoard
Copies all currently selected nodes to the clipboard.
CountLevelDifference
Determines the level difference of two nodes.
CountVisibleChildren
Determines the number of visible child nodes of the given node.
CreateParams
Prepares the creation of the controls window handle.
CreateWnd
Initializes data, which depends on the window handle.
CutCopyNodes
Not documented.
CutToClipBoard
Copies the currently selected nodes to the clipboard and removes them once a consumer has taken the data.
DefineProperties
Helper method to customize loading and saving persistent tree data.
DeleteChildren
Removes all child nodes from the given node.
DeleteNode
Removes the given node from the tree.
DeleteSelectedNodes
Removes all currently selected nodes form the tree.
DetermineDropMode
Not documented.
DetermineHiddenChildrenFlag
Determines whether all children of a given node are hidden.
DetermineHiddenChildrenFlagAllNodes
Determines whether all children of all nodes are hidden.
DetermineHitPositionLTR
Determines the hit position within a node with left-to-right and right-to-left orientation.
DetermineHitPositionRTL
Determines the hit position within a node with left-to-right and right-to-left orientation.
DetermineLineImageAndSelectLevel
Not documented.
DetermineNextCheckState
Not documented.
DetermineScrollDirections
Not documented.
DoAdvancedHeaderDraw
Not documented.
DoAfterCellPaint
Not documented.
DoAfterItemErase
Not documented.
DoAfterItemPaint
Not documented.
DoAfterPaint
Not documented.
DoAutoScroll
Enables or disables the auto scroll timer.
DoBeforeCellPaint
Not documented.
DoBeforeDrag
Not documented.
DoBeforeDrawLineImage
Not documented.
DoBeforeItemErase
Not documented.
DoBeforeItemPaint
Not documented.
DoBeforePaint
Not documented.
DoCancelEdit
Called when the tree should stop editing without accepting changed values.
DoCanEdit
Not documented.
DoCanSplitterResizeNode
Not documented.
DoChange
Not documented.
DoCheckClick
Not documented.
DoChecked
Not documented.
DoChecking
Not documented.
DoCollapsed
Not documented.
DoCollapsing
Not documented.
DoColumnClick
Not documented.
DoColumnDblClick
Not documented.
DoColumnResize
Not documented.
DoCompare
Not documented.
DoCreateDataObject
Not documented.
DoCreateDragManager
Not documented.
DoCreateEditor
Not documented.
DoDragDrop
Not documented.
DoDragExpand
Not documented.
DoDragging
Internal method which handles drag' drop.
DoDragOver
Not documented.
DoEdit
Initiates editing of the currently set focused column and edit node.
DoEndDrag
Not documented.
DoEndEdit
Stops the current edit operation and takes over the new content.
DoEndOperation
Not documented.
DoExpanded
Not documented.
DoExpanding
Not documented.
DoFocusChange
Not documented.
DoFocusChanging
Not documented.
DoFocusNode
Internal method to set the focused node.
DoFreeNode
Not documented.
DoGetAnimationType
Determines the type of animation to be used.
DoGetCellContentMargin
Not documented.
DoGetCursor
Not documented.
DoGetHeaderCursor
Not documented.
DoGetImageIndex
Not documented.
DoGetImageText
Not documented.
DoGetLineStyle
Not documented.
DoGetNodeHint
Not documented.
DoGetNodeTooltip
Not documented.
DoGetNodeWidth
Overridable method which always retuns 0.
DoGetPopupMenu
Overridable method which triggers the OnGetPopup event.
DoGetUserClipboardFormats
Not documented.
DoHeaderClick
Not documented.
DoHeaderDblClick
Not documented.
DoHeaderDragged
Not documented.
DoHeaderDraggedOut
Not documented.
DoHeaderDragging
Not documented.
DoHeaderDraw
Not documented.
DoHeaderDrawQueryElements
Not documented.
DoHeaderMouseDown
Not documented.
DoHeaderMouseMove
Not documented.
DoHeaderMouseUp
Not documented.
DoHotChange
Not documented.
DoIncrementalSearch
Not documented.
DoInitChildren
Not documented.
DoInitNode
Not documented.
DoKeyAction
Not documented.
DoLoadUserData
Not documented.
DoMeasureItem
Not documented.
DoNodeClick
Not documented.
DoNodeCopied
Not documented.
DoNodeCopying
Not documented.
DoNodeDblClick
Not documented.
DoNodeHeightDblClickResize
Not documented.
DoNodeHeightTracking
Not documented.
DoNodeMoved
Not documented.
DoNodeMoving
Not documented.
DoPaintBackground
Not documented.
DoPaintDropMark
Overridable method which draws the small line on top of a nodes image depending on the current drop state.
DoPaintNode
Overridable method which does nothing.
DoPopupMenu
Overridable method which shows the popup menu for the given node.
DoRenderOLEData
Not documented.
DoReset
Not documented.
DoSaveUserData
Not documented.
DoScroll
Overridable method which triggers the OnScroll event.
DoSetOffsetXY
Internal core routine to set the tree's scroll position.
DoShowScrollbar
Not documented.
DoStartDrag
Not documented.
DoStartOperation
Not documented.
DoStateChange
Not documented.
DoStructureChange
Not documented.
DoTimerScroll
Callback method which is triggered whenever the scroll timer fires.
DoUpdating
Not documented.
DoValidateCache
Not documented.
DragAndDrop
Not documented.
DragCanceled
Called by the VCL when a drag'n drop operation was canceled by the user.
DragDrop
Helper method, which is used when a drag operation is finished.
DragEnter
Not documented.
DragFinished
Called when a drag operation is finished (accepted or cancelled).
Dragging
Returns true if a drag'n drop operation is in progress.
DragLeave
Not documented.
DragOver
Not documented.
DrawDottedHLine
Not documented.
DrawDottedVLine
Not documented.
EditNode
Starts editing the given node if allowed to.
EndEditNode
Stops node editing if it was started before.
EndOperation
Not documented.
EndSynch
Counterpart to BeginSynch.
EndUpdate
Resets the update lock set by BeginUpdate.
ExecuteAction
Not documented.
FindNodeInSelection
Helper method to find the given node in the current selection.
FinishChunkHeader
Not documented.
FinishCutOrCopy
Stops any pending cut or copy clipboard operation.
FlushClipboard
Renders all pending clipboard data.
FontChanged
Not documented.
FullCollapse
Collapses all nodes in the tree.
FullExpand
Expands all nodes in the tree.
GetBorderDimensions
Not documented.
GetCheckImage
Not documented.
GetCheckImageListFor
Not documented.
GetColumnClass
Returns the class to be used to manage columns in the tree.
GetControlsAlignment
Not documented.
GetDisplayRect
Not documented.
GetEffectivelyFiltered
Not documented.
GetEffectivelyVisible
Not documented.
GetFirst
Group of node navigation functions.
GetFirstChecked
Not documented.
GetFirstChild
Group of node navigation functions.
GetFirstCutCopy
Group of node navigation functions.
GetFirstInitialized
Group of node navigation functions.
GetFirstLeaf
Not documented.
GetFirstLevel
Not documented.
GetFirstNoInit
Group of node navigation functions.
GetFirstSelected
Group of node navigation functions.
GetFirstVisible
Group of node navigation functions.
GetFirstVisibleChild
Not documented.
GetFirstVisibleChildNoInit
Not documented.
GetFirstVisibleNoInit
Group of node navigation functions.
GetHeaderClass
Returns the header class to be used by the tree.
GetHintWindowClass
Not documented.
GetHitTestInfoAt
Returns information about the node at the given position.
GetImageIndex
Not documented.
GetLast
Not documented.
GetLastChild
GetLastChildNoInit
GetLastInitialized
Not documented.
GetLastNoInit
Not documented.
GetLastVisible
Not documented.
GetLastVisibleChild
Not documented.
GetLastVisibleChildNoInit
Not documented.
GetLastVisibleNoInit
Not documented.
GetMaxColumnWidth
Not documented.
GetMaxRightExtend
Determines the maximum with of the currently visible part of the tree.
GetNativeClipboardFormats
Used to let descendants and the application add their own supported clipboard formats.
GetNext
Not documented.
GetNextChecked
This is the overview for the GetNextChecked method overload.
GetNextCutCopy
Not documented.
GetNextInitialized
Not documented.
GetNextLeaf
Not documented.
GetNextLevel
Not documented.
GetNextNoInit
Not documented.
GetNextSelected
Not documented.
GetNextSibling
GetNextVisible
Not documented.
GetNextVisibleNoInit
Not documented.
GetNextVisibleSibling
Not documented.
GetNextVisibleSiblingNoInit
Not documented.
GetNodeAt
This is the overview for the GetNodeAt method overload.
GetNodeData
Returns the address of the user data area of the given node.
GetNodeLevel
Returns the indentation level of the given node.
GetOperationCanceled
Not documented.
GetOptionsClass
Customization helper to determine which options class the tree should use.
GetPrevious
Not documented.
GetPreviousChecked
Not documented.
GetPreviousCutCopy
Not documented.
GetPreviousInitialized
Not documented.
GetPreviousLeaf
Not documented.
GetPreviousLevel
Not documented.
GetPreviousNoInit
Not documented.
GetPreviousSelected
Not documented.
GetPreviousSibling
GetPreviousVisible
Not documented.
GetPreviousVisibleNoInit
Not documented.
GetPreviousVisibleSibling
Not documented.
GetPreviousVisibleSiblingNoInit
Not documented.
GetSortedCutCopySet
Returns a sorted list of nodes, which are marked for s cut or copy clipboard operation.
GetSortedSelection
Returns a sorted list of all currently selected nodes.
GetTextInfo
Not documented.
GetTreeFromDataObject
OLE drag'n drop and clipboard support method.
GetTreeRect
Returns the size of the virtual tree image.
GetVisibleParent
Not documented.
HandleHotTrack
Not documented.
HandleIncrementalSearch
Not documented.
HandleMouseDblClick
Not documented.
HandleMouseDown
Not documented.
HandleMouseUp
Not documented.
HasAsParent
Determines if the given node has got another node as one of its parents.
HasImage
Not documented.
HasPopupMenu
Determines whether there is a pop up menu assigned to the tree.
InitChildren
Not documented.
InitializedNodes
Not documented.
InitNode
Not documented.
InsertNode
Inserts a new node and returns it to the caller.
InternalAddFromStream
Not documented.
InternalAddToSelection
This is the overview for the InternalAddToSelection method overload.
InternalCacheNode
Not documented.
InternalClearSelection
Not documented.
InternalConnectNode
Not documented.
InternalData
Returns the address of the internal data for a tree class.
InternalDisconnectNode
Not documented.
InternalRemoveFromSelection
Not documented.
InvalidateCache
Empties the internal node cache and marks it as invalid.
InvalidateChildren
Invalidates all children of the given node.
InvalidateColumn
Invalidates the client area part of a column.
InvalidateNode
Invalidates the given node.
InvalidateToBottom
Invalidates the client area starting with the top position of the given node.
InvertSelection
Inverts the current selection.
IsEditing
Tells the caller whether the tree is currently in edit mode.
IsMouseSelecting
Tell the caller whether the tree is currently in draw selection mode.
IterateSubtree
Iterator method to go through all nodes of a given sub tree.
LeafNodes
Not documented.
LevelNodes
Not documented.
Loaded
Not documented.
LoadFromFile
Loads previously streamed out tree data back in again.
LoadFromStream
Loads previously streamed out tree data back in again.
MainColumnChanged
Not documented.
MarkCutCopyNodes
Not documented.
MeasureItemHeight
Not documented.
MouseMove
Not documented.
MoveTo
This is the overview for the MoveTo method overload.
Nodes
Not documented.
NoInitNodes
Not documented.
Notification
Not documented.
OriginalWMNCPaint
Not documented.
Paint
TControl's Paint method used here to display the tree.
PaintCheckImage
Not documented.
PaintImage
Not documented.
PaintNodeButton
Not documented.
PaintSelectionRectangle
Not documented.
PaintTree
Main paint routine for the tree image.
PaintTreeLines
Not documented.
PanningWindowProc
Not documented.
PasteFromClipboard
Inserts the content of the clipboard into the tree.
PrepareCell
This method is called immediately before a cell's content is drawn und is responsible to paint selection colors etc.
PrepareDragImage
Not documented.
Print
Not documented.
ProcessDrop
Helper method to ease OLE drag'n drop operations.
ProcessOLEData
Takes serialized OLE tree data and reconstructs the former structure.
ReadChunk
Not documented.
ReadNode
Not documented.
RedirectFontChangeEvent
Not documented.
ReinitChildren
Forces all child nodes of Node to be reinitialized.
ReinitNode
Forces a reinitialization of the given node.
RemoveFromSelection
Removes the given node from the current selection.
RenderOLEData
Renders pending OLE data.
RepaintNode
Causes the treeview to repaint the given node.
ResetNode
Resets the given node to uninitialized.
ResetRangeAnchor
Not documented.
RestoreFontChangeEvent
Not documented.
SaveToFile
Saves the entire content of the tree into a file or stream.
SaveToStream
Saves the entire content of the tree into a file or stream.
ScrollIntoView
This is the overview for the ScrollIntoView method overload.
SelectAll
Selects all nodes in the tree.
SelectedNodes
Not documented.
SelectNodes
Selects a range of nodes.
SetFocusedNodeAndColumn
Not documented.
SkipNode
Not documented.
Sort
Sorts the given node.
SortTree
Sorts the entire tree view.
StartOperation
Not documented.
StartWheelPanning
Not documented.
StopWheelPanning
Not documented.
StructureChange
Not documented.
SuggestDropEffect
Not documented.
ToggleNode
Changes a node's expand state to the opposite state.
ToggleSelection
Toggles the selection state of a range of nodes.
UnselectNodes
Deselects a range of nodes.
UpdateAction
Not documented.
UpdateColumnCheckState
Not documented.
UpdateDesigner
Not documented.
UpdateEditBounds
Not documented.
UpdateHeaderRect
Not documented.
UpdateHorizontalRange
Not documented.
UpdateHorizontalScrollBar
Applies changes to the horizontal and vertical scrollbars.
UpdateRanges
Not documented.
UpdateScrollBars
Applies changes to the horizontal and vertical scrollbars.
UpdateVerticalRange
Not documented.
UpdateVerticalScrollBar
Applies changes to the horizontal and vertical scrollbars.
UpdateWindowAndDragImage
Not documented.
UseRightToLeftReading
Helper method for right-to-left layout.
ValidateCache
Initiates the validation of the internal node cache.
ValidateChildren
Validates all children of a given node.
ValidateNode
Validates a given node.
ValidateNodeDataSize
Helper method for node data size initalization.
VisibleChildNodes
Not documented.
VisibleChildNoInitNodes
Not documented.
VisibleNodes
Not documented.
VisibleNoInitNodes
Not documented.
WndProc
Redirected window procedure to do some special processing.
WriteChunks
Writes the core chunks for the given node to the given stream.
WriteNode
Writes the cover (envelop) chunk for the given node to the given stream.


Methods

Legend
Legend

Method
public
virtual
protected


Legend
TBufferedAnsiString Methods
Legend

Method
public


TBufferedAnsiString Methods Methods
TBufferedAnsiString Methods | Legend
Methods

Add
Not documented.
AddNewLine
Not documented.


Legend
TClipboardFormatList Methods
Legend

Method
public


TClipboardFormatList Methods Methods
TClipboardFormatList Methods | Legend
Methods

Add
Adds the given data to the internal list.
Clear
Not documented.
EnumerateFormats
This is the overview for the EnumerateFormats method overload.
FindFormat
This is the overview for the FindFormat method overload.


Legend
TClipboardFormats Methods
Legend

Method
public
virtual


TClipboardFormats Methods Methods
TClipboardFormats Methods | Legend
Methods

Add
Adds a new format to the internal list.

Insert
Adds a new format to the internal list.


Methods

Legend
Legend

Method
public
virtual


Legend
TCriticalSection Methods
Legend

Method
public


TCriticalSection Methods Methods
TCriticalSection Methods | Legend
Methods

Enter
Not documented.
Leave
Not documented.


Legend
TCustomStringTreeOptions Methods
Legend

Method
public
virtual


TCustomStringTreeOptions Methods Methods
TCustomStringTreeOptions Methods | Legend
Methods

AssignTo
Used to copy the options class.


Legend
TCustomVirtualDrawTree Methods
Legend

Method
protected
virtual


TCustomVirtualDrawTree Methods Methods
TCustomVirtualDrawTree Methods | Legend
Methods

DoDrawHint
Overridable method which triggers OnDrawHint.
DoGetCellContentMargin
Not documented.
DoGetHintSize
Overridable method which triggers OnGetHintSize.
DoGetNodeWidth
Overridable method which triggers OnGetNodeWidth.
DoPaintNode
Overridable method which triggers OnPaintNode.


Methods

Legend
Legend

Method
protected
virtual


Legend
TCustomVirtualStringTree Methods
Legend

Method
protected
virtual
public


TCustomVirtualStringTree Methods Methods
TCustomVirtualStringTree Methods | Legend
Methods

AdjustPaintCellRect
Method which can be used by descentants to adjust the given rectangle during a paint cycle.
CalculateTextWidth
Not documented.
CanExportNode
Not documented.
ColumnIsEmpty
Used to determine if a cell is considered as being empty.
ComputeNodeHeight
Not documented.
ContentToClipboard
Not documented.
ContentToCustom
Not documented.
ContentToHTML
Not documented.
ContentToRTF
Not documented.
ContentToText
This is the overview for the ContentToText method overload.
ContentToUnicode
This is the overview for the ContentToUnicode method overload.
DefineProperties
Helper method to customize loading and saving persistent tree data.
DoCreateEditor
Not documented.
DoGetNodeHint
Not documented.
DoGetNodeTooltip
Not documented.
DoGetNodeWidth
Overridable method which always retuns 0.
DoGetText
Not documented.
DoIncrementalSearch
Not documented.
DoNewText
Not documented.
DoPaintNode
Overridable method which does nothing.
DoPaintText
Not documented.
DoShortenString
Not documented.
DoTextDrawing
Not documented.
DoTextMeasuring
Not documented.
GetOptionsClass
Customization helper to determine which options class the tree should use.
GetTextInfo
Not documented.
InternalData
Returns the address of the internal data for a tree class.
InvalidateNode
Invalidates the given node.
MainColumnChanged
Not documented.
Path
Not documented.
ReadChunk
Not documented.
ReadOldStringOptions
Not documented.
ReinitNode
Forces a reinitialization of the given node.
RenderOLEData
Renders pending OLE data.
SaveToCSVFile
Not documented.
WriteChunks
Writes the core chunks for the given node to the given stream.


Methods

Legend
Legend

Method
protected
virtual
public


Legend
TCustomVirtualTreeOptions Methods
Legend

Method
public
virtual


TCustomVirtualTreeOptions Methods Methods
TCustomVirtualTreeOptions Methods | Legend
Methods

AssignTo
Used to copy this option class to another option collection.


Legend
TEnumFormatEtc Methods
Legend

Method
public


TEnumFormatEtc Methods Methods
TEnumFormatEtc Methods | Legend
Methods

Clone
Not documented.
Next
Not documented.
Reset
Not documented.
Skip
Not documented.


Legend
TScrollBarOptions Methods
Legend

Method
public
virtual
protected


TScrollBarOptions Methods Methods
TScrollBarOptions Methods | Legend
Methods

Assign
Not documented.
GetOwner
Not documented.


Legend
TStringEditLink Methods
Legend

Method
public
virtual


TStringEditLink Methods Methods
TStringEditLink Methods | Legend
Methods

BeginEdit
This function will be called by the virtual string tree when the editing starts.
CancelEdit
This function will be called by the virtual string tree when the current editing is about to be cancelled.
EndEdit
This function will be called by the virtual string tree when the current editing is being finished.
GetBounds
The virtual string tree uses this function to get the current bounding rect of the node editor.
PrepareEdit
This function is called by a virtual string tree to initialize the node editor.
ProcessMessage
This function is used to forward messages being directed to the virtual string tree.
SetBounds
The virtual string tree calls this function to initialize the bounding rect of the node editor.


Legend
TVirtualDrawTree Methods
Legend

Method
protected
virtual


TVirtualDrawTree Methods Methods
TVirtualDrawTree Methods | Legend
Methods

GetOptionsClass
Customization helper to determine which options class the tree should use.


Legend
TVirtualStringTree Methods
Legend

Method
protected
virtual


TVirtualStringTree Methods Methods
TVirtualStringTree Methods | Legend
Methods

GetOptionsClass
Customization helper to determine which options class the tree should use.


Legend
TVirtualTreeColumn Methods
Legend

Method
public
virtual
protected


TVirtualTreeColumn Methods Methods
TVirtualTreeColumn Methods | Legend
Methods

Assign
Not documented.
ComputeHeaderLayout
Not documented.
DefineProperties
Not documented.
Equals
Not documented.
GetAbsoluteBounds
Not documented.
GetDisplayName
Not documented.
GetOwner
Not documented.
GetRect
Returns the rectangle this column occupies in the header (relative to (0, 0) of the non-client area).
LoadFromStream
Not documented.
ParentBiDiModeChanged
Not documented.
ParentColorChanged
Not documented.
ReadHint
Not documented.
ReadText
Not documented.
RestoreLastWidth
Not documented.
SaveToStream
Not documented.
UseRightToLeftReading
Not documented.
WriteHint
Not documented.
WriteText
Not documented.


Legend
TVirtualTreeColumns Methods
Legend

Method
public
virtual
protected


TVirtualTreeColumns Methods Methods
TVirtualTreeColumns Methods | Legend
Methods

Add
Not documented.
AdjustAutoSize
Called when columns must be sized so that the fit the client area.
AdjustDownColumn
Determines the column from the given position and returns it.
AdjustHoverColumn
Determines the new hover column index and returns true if the index actually changed else False.
AdjustPosition
Reorders the column position array so that the given column gets the given position.
AnimatedResize
Resizes the given column animated by scrolling the window DC.
Assign
Not documented.
CanSplitterResize
Not documented.
Clear
Not documented.
ColumnFromPosition
This is the overview for the ColumnFromPosition method overload.
DoCanSplitterResize
Not documented.
DrawButtonText
Not documented.
Equals
Not documented.
FixPositions
Fixes column positions after loading from DFM.
GetColumnAndBounds
Returns the column where the mouse is currently in as well as the left and right bound of this column.
GetColumnBounds
Returns the left and right bound of the given column.
GetFirstVisibleColumn
Returns the index of the first visible column or "InvalidColumn" if either no columns are defined or all columns are hidden.
GetLastVisibleColumn
Returns the index of the last visible column or "InvalidColumn" if either no columns are defined or all columns are hidden.

GetNextColumn
Returns the next column in display order. Column is the index of an item in the collection (a column).
GetNextVisibleColumn
Not documented.
GetOwner
Not documented.
GetPreviousColumn
Returns the previous column in display order, Column is an index into the columns list.
GetPreviousVisibleColumn
Not documented.
GetScrollWidth
Not documented.
GetVisibleColumns
Returns a list of all currently visible columns in actual order.
GetVisibleFixedWidth
Not documented.
HandleClick
Generates a click event if the mouse button has been released over the same column it was pressed first.
IndexChanged
Called by a column when its index in the collection changes.
InitializePositionArray
Ensures that the column position array contains as much entries as columns are defined.
IsValidColumn
Determines whether the given column is valid or not, that is, whether it is one of the current columns.
LoadFromStream
Not documented.
Notify
Not documented.
PaintHeader
This is the overview for the PaintHeader method overload.
ReorderColumns
Not documented.
SaveToStream
Not documented.
TotalWidth
Not documented.
Update
Not documented.
UpdatePositions
Recalculates the left border of every column and updates their position property according to the PostionToIndex array, which primarily determines where each column is placed visually.


Legend
TVirtualTreeHintWindow Methods
Legend

Method
public
virtual
protected


TVirtualTreeHintWindow Methods Methods
TVirtualTreeHintWindow Methods | Legend
Methods

ActivateHint
Not documented.
CalcHintRect
Not documented.
CreateParams
Not documented.
InternalPaint
local functions
IsHintMsg
The VCL is a bit too generous when telling that an existing hint can be cancelled.
Paint
Not documented.


Legend
TVTColors Methods
Legend

Method
public
virtual


TVTColors Methods Methods
TVTColors Methods | Legend
Methods

Assign
Not documented.


Legend
TVTDataObject Methods
Legend

Method
protected
public
virtual


TVTDataObject Methods Methods
TVTDataObject Methods | Legend
Methods

CanonicalIUnknown
Helper method for setting data in the IDataObject.
DAdvise
Implementation of the IDataObject.DAdvise method.
DUnadvise
Implementation of the IDataObject.DUnAdvise method.
EnumDAdvise
Implementation of the IDataObject.EnumDAdvise method.
EnumFormatEtc
Implementation of the IDataObject.EnumFormatEtc method.
EqualFormatEtc
Compares two TFormatEtc structures.
FindFormatEtc
Searchs the given array for a the given format.
FindInternalStgMedium
Returns a storage medium for a given clipboard format.
GetCanonicalFormatEtc
Implementation of the IDataObject.GetCanonicalFormatEtc method.
GetData
Implementation of the IDataObject.GetData method.
GetDataHere
Implementation of the IDataObject.GetDataHere method.
HGlobalClone
Helper method for SetData.
QueryGetData
Implementation of the IDataObject.QueryGetData method.
RenderInternalOLEData
Helper method to return data previously stored by SetData.
SetData
Implementation of the IDataObject.SetData method.
StgMediumIncRef
Central managing method to copy OLE data.


Methods

Legend
Legend

Method
protected
public
virtual


Legend
TVTDragImage Methods
Legend

Method
public
protected


TVTDragImage Methods Methods
TVTDragImage Methods | Legend
Methods

DragTo
Moves the drag image to a new position, which is determined from the passed point P and the previous mouse position.
EndDrag
Not documented.
GetDragImageRect
Returns the current size and position of the drag image (screen coordinates).
HideDragImage
Not documented.
InternalShowDragImage
Frequently called helper routine to actually do the blend and put it onto
MakeAlphaChannel
Not documented.
PrepareDrag
Creates all necessary structures to do alpha blended dragging using the given image.
RecaptureBackground
Notification by the drop target tree to update the background image because something in the tree has changed.
ShowDragImage
Shows the drag image after it has been hidden by HideDragImage.
WillMove
Add a summary here...


Methods

Legend
Legend

Method
public
protected


Legend
TVTDragManager Methods
Legend

Method
public


TVTDragManager Methods Methods
TVTDragManager Methods | Legend
Methods

DragEnter
Not documented.
DragLeave
Not documented.
DragOver
Not documented.
Drop
Not documented.
ForceDragLeave
This method calls the drop target helper's DragLeave method to ensure it removes the drag image from screen.
GiveFeedback
Not documented.
QueryContinueDrag
Not documented.


Legend
TVTEdit Methods
Legend

Method
protected
virtual
public


TVTEdit Methods Methods
TVTEdit Methods | Legend
Methods

AutoAdjustSize
Not documented.
CreateParams
Not documented.
Release
Not documented.


Legend
TVTFixedAreaConstraints Methods
Legend

Method
public
virtual
protected


TVTFixedAreaConstraints Methods Methods
TVTFixedAreaConstraints Methods | Legend
Methods

Assign
Not documented.
Change
Not documented.


Legend
TVTHeader Methods
Legend

Method
public
virtual
protected


TVTHeader Methods Methods
TVTHeader Methods | Legend
Methods

AllowFocus
Not documented.
Assign
Not documented.
AutoFitColumns
Not documented.
CanSplitterResize
Not documented.
CanWriteColumns
Not documented.
ChangeScale
Not documented.
DetermineSplitterIndex
Tries to find the index of that column whose right border corresponds to P.
DoAfterAutoFitColumn
Not documented.
DoAfterColumnWidthTracking
Not documented.
DoAfterHeightTracking
Not documented.
DoBeforeAutoFitColumn
Not documented.
DoBeforeColumnWidthTracking
Not documented.
DoBeforeHeightTracking
Not documented.
DoCanSplitterResize
Not documented.
DoColumnWidthDblClickResize
Not documented.
DoColumnWidthTracking
Not documented.
DoGetPopupMenu
Not documented.
DoHeightDblClickResize
Not documented.
DoHeightTracking
Not documented.
DoSetSortColumn
Not documented.
DragTo
Moves the drag image to a new position, which is determined from the passed point P and the previous mouse position.
FixedAreaConstraintsChanged
Not documented.
GetColumnsClass
Returns the class to be used for the actual column implementation.
GetOwner
Not documented.
GetShiftState
Not documented.
HandleHeaderMouseMove
Not documented.
HandleMessage
General message handler for the header.
ImageListChange
Not documented.
InHeader
Determines whether the given point (client coordinates!) is within the header rectangle (non-client coordinates).
InHeaderSplitterArea
Not documented.
Invalidate
Invalidates the entire header or parts of it so they are repainted.
LoadFromStream
Restores the state of the header from the given stream.
PrepareDrag
Initializes dragging of the header, P is the current mouse postion and Start the initial mouse position.
ReadColumns
Not documented.
RecalculateHeader
Initiate a recalculation of the non-client area of the owner tree.
RescaleHeader
Not documented.
ResizeColumns
Not documented.
RestoreColumns
Restores all columns to their width which they had before they have been auto fitted.
SaveToStream
Saves the complete state of the header into the provided stream.
UpdateMainColumn
Called once the load process of the owner tree is done.
UpdateSpringColumns
Not documented.
WriteColumns
Not documented.


Legend
TVTHeaderPopupMenu Methods
Legend

Method
protected
virtual
public


TVTHeaderPopupMenu Methods Methods
TVTHeaderPopupMenu Methods | Legend
Methods

DoAddHeaderPopupItem
Not documented.
DoColumnChange
Not documented.
OnMenuItemClick
Not documented.
Popup
Not documented.


Legend
TVTVirtualNodeEnumeration Methods
Legend

Method
public


TVTVirtualNodeEnumeration Methods Methods
TVTVirtualNodeEnumeration Methods | Legend
Methods

GetEnumerator
Not documented.


Legend
TVTVirtualNodeEnumerator Methods
Legend

Method
public


TVTVirtualNodeEnumerator Methods Methods
TVTVirtualNodeEnumerator Methods | Legend
Methods

GetCurrent
Not documented.
MoveNext
Not documented.


Legend
TWideBufferedString Methods
Legend

Method
public


TWideBufferedString Methods Methods
TWideBufferedString Methods | Legend
Methods

Add
Not documented.
AddNewLine
Not documented.


Legend
TWorkerThread Methods
Legend

Method
public
protected
virtual


TWorkerThread Methods Methods
TWorkerThread Methods | Legend
Methods

AddTree
Not documented.
CancelValidation
Not documented.
ChangeTreeStates
Not documented.
Execute
Not documented.
RemoveTree
Not documented.


Methods

Legend
Legend

Method
public
protected
virtual


Legend
IVTDragManager Properties
Legend

Property
public
read only


IVTDragManager Properties Properties
IVTDragManager Properties | Legend
Properties

DataObject
Not documented.
DragSource
Not documented.
DropTargetHelperSupported
Not documented.
IsDropTarget
Not documented.


Properties

Legend
Legend

Property
public
read only


Legend
TBaseVirtualTree Properties
Legend

Property
public
protected
read only


TBaseVirtualTree Properties Properties
TBaseVirtualTree Properties | Legend
Properties

Accessible
Not documented.
AccessibleItem
Not documented.
AccessibleName
Not documented.
Alignment
Determines the horizontal alignment of text if no columns are defined.
AnimationDuration
Determines the maximum duration the tree can use to play an animation.
AutoExpandDelay
Time delay after which a node gets expanded if it is the current drop target.
AutoScrollDelay
Time which determines when auto scrolling should start.
AutoScrollInterval
Time interval between scroll events when doing auto scroll.
Background
Holds a background image for the tree.
BackgroundOffsetX
Horizontal offset of the background image.
BackgroundOffsetY
Vertical offset of the background image.
BorderStyle
Same as TForm.BorderStyle.
BottomNode
Not documented.
BottomSpace
Not documented.
ButtonFillMode
Determines how to fill the background of the node buttons.
ButtonStyle
Determines the look of node buttons.
ChangeDelay
Time which determines when the OnChange event should be triggered after the actual change event.
CheckedCount
Not documented.
CheckImageKind
Determines which images should be used for checkboxes and radio buttons.
CheckImages
Not documented.
CheckState
Read or set the check state of a node.
CheckType
Read or set the check type of a node.
ChildCount
Read or set the number of child nodes of a node.
ChildrenInitialized
Read whether a node's child count has been initialized already.
ClipboardFormats
Special class to keep a list of clipboard format descriptions.
Colors
A collection of colors used in the tree.
CustomCheckImages
Assign your own image list to get the check images you like most.
CutCopyCount
Not documented.
DefaultNodeHeight
Read or set the height new nodes get as initial value.
DefaultPasteMode
Read or set the value, which determines where to add pasted nodes to.
DragHeight
Read or set the vertical limit of the internal drag image.
DragImage
Holds the instance of the internal drag image.
DragImageKind
Read or set what should be shown in the drag image.
DragManager
Holds the reference to the internal drag manager.
DragOperations
Read or set which drag operations may be allowed in the tree.
DragSelection
Keeps a temporary list of nodes during drag'n drop.
DragType
Read or set which subsystem should be used for dragging.
DragWidth
Read or set the horizontal limit of the internal drag image.
DrawSelectionMode
Read or set how multiselection with the mouse is to be visualized.
DropTargetNode
Contains the current drop target node if the tree is currently the target of a drag'n drop operation.
EditColumn
Not documented.
EditDelay
Read or set the maximum time between two single clicks on the same node, which should start node editing.
EditLink
Keeps a reference to the internal edit link during a node edit operation.
EffectiveOffsetX
Not documented.
EmptyListMessage
Not documented.
Expanded
Read or set the expanded state of a particular node.
FocusedColumn
Read or set the currently focused collumn.
FocusedNode
Read or set the currently focused node.
Font
Same as TWinControl.Font.
FullyVisible
Read or set whether a node is fully visible or not.
HasChildren
Read or set whether a node has got children.
Header
Provides access to the header instance.
HeaderRect
Returns the non-client-area rectangle used for the header.
HintAnimation
Read or set the current hint animation type.
HintData
Not documented.
HintMode
Read or set what type of hint you want for the tree view.
HotCursor
Read or set which cursor should be used for hot nodes.
HotMinusBM
Not documented.
HotNode
Read, which node is currently the hot node.
HotPlusBM
Not documented.
Images
Read or set the tree's normal image list.
IncrementalSearch
Read or set the current incremental search mode.
IncrementalSearchDirection
Read or set the direction to be used for incremental search.
IncrementalSearchStart
Read or set where to start incremental search.
IncrementalSearchTimeout
Read or set the maximum time, which is allowed between two consecutive key strokes so that incremental search stays active.
Indent
Read or set the indentation amount for node levels.
IsDisabled
Read or set the enabled state of the given node.
IsEffectivelyFiltered
Not documented.
IsEffectivelyVisible
Not documented.
IsFiltered
Not documented.
IsVisible
Read or set the visibility state of the given node.
LastClickPos
Used for retained drag start and wheel mouse scrolling.
LastDropMode
Read how the last drop operation finished.
LastHintRect
Not documented.
LineMode
Read or set the mode of the tree lines.
LineStyle
Read or set the mode of the tree lines.
Margin
Read or set the tree's node margin.
MinusBM
Not documented.
MultiLine
Read or toggle the multiline feature for a given node.
NodeAlignment
Read or set the node alignment value.
NodeDataSize
Read or set the extra data size for each node.
NodeHeight
Read or set a node's height.
NodeParent
Read or set a node's parent node.
OffsetX
Read or set the tree's current horizontal and vertical scroll offsets.
OffsetXY
Read or set the tree's current horizontal and vertical scroll offsets.
OffsetY
Read or set the tree's current horizontal and vertical scroll offsets.
OperationCanceled
Not documented.
OperationCount
Not documented.
PlusBM
Not documented.
RangeX
Not documented.
RangeY
Not documented.
RootNode
Reference to the internal root node which is the anchor of the entire tree node hierarchy.
RootNodeCount
Read or set the number of nodes on the top level.
ScrollBarOptions
Reference to the scroll bar options class.
SearchBuffer
Current input string for incremental search.
Selected
Property to modify or determine the selection state of a node.
SelectedCount
Contains the number of selected nodes.
SelectionBlendFactor
Read or set the current blend factor for the multi selection rectangle and the node selection rectangle.
SelectionCurveRadius
Read or set the current corner radius for node selection rectangles.
SelectionLocked
Not documented.
StateImages
Reference to the images list which is used for the state images.
TextMargin
Read or set the distance of the node caption to its borders.
TopNode
The top node is the node which is currently at the top border of the client area.
TotalCount
Returns the number of nodes in the tree.
TotalInternalDataSize
Keeps the currently accumulated data size for one node.
TreeOptions
Reference to the tree's options.
TreeStates
Property which keeps a set of flags which indicate current operation and states of the tree.
UpdateCount
Not documented.
VerticalAlignment
Used to set a node's vertical button aligment with regard to the entire node rectangle.
VisibleCount
Number of currently visible nodes.
VisiblePath
Property to set or determine a node parent's expand states.
WantTabs
Read or set whether the tree wants to process tabs on its own.


Properties

Legend
Legend

Property
public
protected
read only


Legend
TBufferedAnsiString Properties
Legend

Property
public
read only


TBufferedAnsiString Properties Properties
TBufferedAnsiString Properties | Legend
Properties

AsString
Not documented.


Legend
TClipboardFormats Properties
Legend

Property
public
read only


TClipboardFormats Properties Properties
TClipboardFormats Properties | Legend
Properties

Owner
Not documented.


Legend
TCustomStringTreeOptions Properties
Legend

Property
protected


TCustomStringTreeOptions Properties Properties
TCustomStringTreeOptions Properties | Legend
Properties

StringOptions
The new options introduced by the class.


Properties

Legend
Legend

Property
protected


Legend
TCustomVirtualStringTree Properties
Legend

Property
protected
read only
public


TCustomVirtualStringTree Properties Properties
TCustomVirtualStringTree Properties | Legend
Properties

DefaultText
Not documented.
EllipsisWidth
Not documented.
ImageText
Not documented.
Text
Not documented.
TreeOptions
Reference to the tree's options.


Properties

Legend
Legend

Property
protected
read only
public


Legend
TCustomVirtualTreeOptions Properties
Legend

Property
protected
public
read only


TCustomVirtualTreeOptions Properties Properties
TCustomVirtualTreeOptions Properties | Legend
Properties

AnimationOptions
Options related to animations.
AutoOptions
Options related to automatic actions.
ExportMode
Not documented.
MiscOptions
Options not related to any other category.
Owner
Owner tree to which the property class belongs.
PaintOptions
Options related to painting.
SelectionOptions
Options related to the way nodes can be selected.


Properties

Legend
Legend

Property
protected
public
read only


Legend
TScrollBarOptions Properties
Legend

Property
published


TScrollBarOptions Properties Properties
TScrollBarOptions Properties | Legend
Properties

AlwaysVisible
Not documented.
HorizontalIncrement
Not documented.
ScrollBars
Not documented.
ScrollBarStyle
Not documented.
VerticalIncrement
Not documented.


Properties

Legend
Legend

Property
published


Legend
TStringEditLink Properties
Legend

Property
public


TStringEditLink Properties Properties
TStringEditLink Properties | Legend
Properties

Edit
Not documented.


Properties

Legend
Legend

Property
public


Legend
TStringTreeOptions Properties
Legend

Property
published


TStringTreeOptions Properties Properties
TStringTreeOptions Properties | Legend
Properties

AnimationOptions
Options related to animations.
AutoOptions
Options related to automatic actions.
ExportMode
Not documented.
MiscOptions
Options not related to any other category.
PaintOptions
Options related to painting.
SelectionOptions
Options related to the way nodes can be selected.
StringOptions
The new options introduced by the class.


Legend
TVirtualDrawTree Properties
Legend

Property
published
public


TVirtualDrawTree Properties Properties
TVirtualDrawTree Properties | Legend
Properties

Action
Not documented.
Align
Not documented.
Alignment
Determines the horizontal alignment of text if no columns are defined.
Anchors
Not documented.
AnimationDuration
Determines the maximum duration the tree can use to play an animation.
AutoExpandDelay
Time delay after which a node gets expanded if it is the current drop target.
AutoScrollDelay
Time which determines when auto scrolling should start.
AutoScrollInterval
Time interval between scroll events when doing auto scroll.
Background
Holds a background image for the tree.
BackgroundOffsetX
Horizontal offset of the background image.
BackgroundOffsetY
Vertical offset of the background image.
BevelEdges
Not documented.
BevelInner
Not documented.
BevelKind
Not documented.
BevelOuter
Not documented.
BevelWidth
Not documented.
BiDiMode
Not documented.
BorderStyle
Same as TForm.BorderStyle.
BorderWidth
Not documented.
BottomSpace
Not documented.
ButtonFillMode
Determines how to fill the background of the node buttons.
ButtonStyle
Determines the look of node buttons.
Canvas
Not documented.
ChangeDelay
Time which determines when the OnChange event should be triggered after the actual change event.
CheckImageKind
Determines which images should be used for checkboxes and radio buttons.
ClipboardFormats
Special class to keep a list of clipboard format descriptions.
Color
Not documented.
Colors
A collection of colors used in the tree.
Constraints
Not documented.
Ctl3D
Not documented.
CustomCheckImages
Assign your own image list to get the check images you like most.
DefaultNodeHeight
Read or set the height new nodes get as initial value.
DefaultPasteMode
Read or set the value, which determines where to add pasted nodes to.
DragCursor
Not documented.
DragHeight
Read or set the vertical limit of the internal drag image.
DragImageKind
Read or set what should be shown in the drag image.
DragKind
Not documented.
DragMode
Not documented.
DragOperations
Read or set which drag operations may be allowed in the tree.
DragType
Read or set which subsystem should be used for dragging.
DragWidth
Read or set the horizontal limit of the internal drag image.
DrawSelectionMode
Read or set how multiselection with the mouse is to be visualized.
EditDelay
Read or set the maximum time between two single clicks on the same node, which should start node editing.
Enabled
Not documented.
Font
Same as TWinControl.Font.
Header
Provides access to the header instance.
HintAnimation
Read or set the current hint animation type.
HintMode
Read or set what type of hint you want for the tree view.
HotCursor
Read or set which cursor should be used for hot nodes.
Images
Read or set the tree's normal image list.
IncrementalSearch
Read or set the current incremental search mode.
IncrementalSearchDirection
Read or set the direction to be used for incremental search.
IncrementalSearchStart
Read or set where to start incremental search.
IncrementalSearchTimeout
Read or set the maximum time, which is allowed between two consecutive key strokes so that incremental search stays active.
Indent
Read or set the indentation amount for node levels.
LineMode
Read or set the mode of the tree lines.
LineStyle
Read or set the mode of the tree lines.
Margin
Read or set the tree's node margin.
NodeAlignment
Read or set the node alignment value.
NodeDataSize
Read or set the extra data size for each node.
OnClick
Not documented.
OnContextPopup
Not documented.
OnDblClick
Not documented.
OnEndDock
Not documented.
OnEndDrag
Not documented.
OnEnter
Not documented.
OnExit
Not documented.
OnKeyDown
Not documented.
OnKeyPress
Not documented.
OnKeyUp
Not documented.
OnMouseDown
Not documented.
OnMouseMove
Not documented.
OnMouseUp
Not documented.
OnMouseWheel
Not documented.
OnResize
Not documented.
OnStartDock
Not documented.
OnStartDrag
Not documented.
OperationCanceled
Not documented.
ParentBiDiMode
Not documented.
ParentColor
Not documented.
ParentCtl3D
Not documented.
ParentFont
Not documented.
ParentShowHint
Not documented.
PopupMenu
Not documented.
RootNodeCount
Read or set the number of nodes on the top level.
ScrollBarOptions
Reference to the scroll bar options class.
SelectionBlendFactor
Read or set the current blend factor for the multi selection rectangle and the node selection rectangle.
SelectionCurveRadius
Read or set the current corner radius for node selection rectangles.
ShowHint
Not documented.
StateImages
Reference to the images list which is used for the state images.
TabOrder
Not documented.
TabStop
Not documented.
TextMargin
Read or set the distance of the node caption to its borders.
TreeOptions
Reference to the tree's options.
Visible
Not documented.
WantTabs
Read or set whether the tree wants to process tabs on its own.


Properties

Legend
Legend

Property
published
public


Legend
TVirtualStringTree Properties
Legend

Property
published
public


TVirtualStringTree Properties Properties
TVirtualStringTree Properties | Legend
Properties

AccessibleName
Not documented.
Action
Not documented.
Align
Not documented.
Alignment
Determines the horizontal alignment of text if no columns are defined.
Anchors
Not documented.
AnimationDuration
Determines the maximum duration the tree can use to play an animation.
AutoExpandDelay
Time delay after which a node gets expanded if it is the current drop target.
AutoScrollDelay
Time which determines when auto scrolling should start.
AutoScrollInterval
Time interval between scroll events when doing auto scroll.
Background
Holds a background image for the tree.
BackgroundOffsetX
Horizontal offset of the background image.
BackgroundOffsetY
Vertical offset of the background image.
BevelEdges
Not documented.
BevelInner
Not documented.
BevelKind
Not documented.
BevelOuter
Not documented.
BevelWidth
Not documented.
BiDiMode
Not documented.
BorderStyle
Same as TForm.BorderStyle.
BorderWidth
Not documented.
BottomSpace
Not documented.
ButtonFillMode
Determines how to fill the background of the node buttons.
ButtonStyle
Determines the look of node buttons.
Canvas
Not documented.
ChangeDelay
Time which determines when the OnChange event should be triggered after the actual change event.
CheckImageKind
Determines which images should be used for checkboxes and radio buttons.
ClipboardFormats
Special class to keep a list of clipboard format descriptions.
Color
Not documented.
Colors
A collection of colors used in the tree.
Constraints
Not documented.
Ctl3D
Not documented.
CustomCheckImages
Assign your own image list to get the check images you like most.
DefaultNodeHeight
Read or set the height new nodes get as initial value.
DefaultPasteMode
Read or set the value, which determines where to add pasted nodes to.
DefaultText
Not documented.
DragCursor
Not documented.
DragHeight
Read or set the vertical limit of the internal drag image.
DragImageKind
Read or set what should be shown in the drag image.
DragKind
Not documented.
DragMode
Not documented.
DragOperations
Read or set which drag operations may be allowed in the tree.
DragType
Read or set which subsystem should be used for dragging.
DragWidth
Read or set the horizontal limit of the internal drag image.
DrawSelectionMode
Read or set how multiselection with the mouse is to be visualized.
EditDelay
Read or set the maximum time between two single clicks on the same node, which should start node editing.
Enabled
Not documented.
Font
Same as TWinControl.Font.
Header
Provides access to the header instance.
HintAnimation
Read or set the current hint animation type.
HintMode
Read or set what type of hint you want for the tree view.
HotCursor
Read or set which cursor should be used for hot nodes.
Images
Read or set the tree's normal image list.
IncrementalSearch
Read or set the current incremental search mode.
IncrementalSearchDirection
Read or set the direction to be used for incremental search.
IncrementalSearchStart
Read or set where to start incremental search.
IncrementalSearchTimeout
Read or set the maximum time, which is allowed between two consecutive key strokes so that incremental search stays active.
Indent
Read or set the indentation amount for node levels.
LineMode
Read or set the mode of the tree lines.
LineStyle
Read or set the mode of the tree lines.
Margin
Read or set the tree's node margin.
NodeAlignment
Read or set the node alignment value.
NodeDataSize
Read or set the extra data size for each node.
OnClick
Not documented.
OnContextPopup
Not documented.
OnDblClick
Not documented.
OnEndDock
Not documented.
OnEndDrag
Not documented.
OnEnter
Not documented.
OnExit
Not documented.
OnKeyDown
Not documented.
OnKeyPress
Not documented.
OnKeyUp
Not documented.
OnMouseDown
Not documented.
OnMouseMove
Not documented.
OnMouseUp
Not documented.
OnMouseWheel
Not documented.
OnResize
Not documented.
OnStartDock
Not documented.
OnStartDrag
Not documented.
OperationCanceled
Not documented.
ParentBiDiMode
Not documented.
ParentColor
Not documented.
ParentCtl3D
Not documented.
ParentFont
Not documented.
ParentShowHint
Not documented.
PopupMenu
Not documented.
RootNodeCount
Read or set the number of nodes on the top level.
ScrollBarOptions
Reference to the scroll bar options class.
SelectionBlendFactor
Read or set the current blend factor for the multi selection rectangle and the node selection rectangle.
SelectionCurveRadius
Read or set the current corner radius for node selection rectangles.
ShowHint
Not documented.
StateImages
Reference to the images list which is used for the state images.
TabOrder
Not documented.
TabStop
Not documented.
TextMargin
Read or set the distance of the node caption to its borders.
TreeOptions
Reference to the tree's options.
Visible
Not documented.
WantTabs
Read or set whether the tree wants to process tabs on its own.


Legend
TVirtualTreeColumn Properties
Legend

Property
published
read only
public


TVirtualTreeColumn Properties Properties
TVirtualTreeColumn Properties | Legend
Properties

Alignment
Not documented.
BiDiMode
Not documented.
CaptionAlignment
Not documented.
CaptionText
Not documented.
CheckBox
Not documented.
CheckState
Not documented.
CheckType
Not documented.
Color
Not documented.
DefaultSortDirection
Not documented.
Hint
Not documented.
ImageIndex
Not documented.
Layout
Not documented.
Left
Not documented.
Margin
Not documented.
MaxWidth
Not documented.
MinWidth
Not documented.
Options
Not documented.
Owner
Not documented.
Position
Not documented.
Spacing
Not documented.
Style
Not documented.
Tag
Not documented.
Text
Not documented.
Width
Not documented.


Properties

Legend
Legend

Property
published
read only
public


Legend
TVirtualTreeColumns Properties
Legend

Property
public
read only
protected


TVirtualTreeColumns Properties Properties
TVirtualTreeColumns Properties | Legend
Properties

ClickIndex
Not documented.
Count
Not documented.
DefaultWidth
Not documented.
Header
Not documented.
HeaderBitmap
Not documented.
Items
Not documented.
PositionToIndex
Not documented.
TrackIndex
Not documented.


Properties

Legend
Legend

Property
public
read only
protected


Legend
TVirtualTreeHintWindow Properties
Legend

Property
protected
read only


TVirtualTreeHintWindow Properties Properties
TVirtualTreeHintWindow Properties | Legend
Properties

Background
Not documented.
DrawBuffer
Not documented.
HintData
Not documented.
HintWindowDestroyed
Not documented.
Target
Not documented.
TextHeight
Not documented.


Properties

Legend
Legend

Property
protected
read only


Legend
TVirtualTreeOptions Properties
Legend

Property
published


TVirtualTreeOptions Properties Properties
TVirtualTreeOptions Properties | Legend
Properties

AnimationOptions
Options related to animations.
AutoOptions
Options related to automatic actions.
ExportMode
Not documented.
MiscOptions
Options not related to any other category.
PaintOptions
Options related to painting.
SelectionOptions
Options related to the way nodes can be selected.


Legend
TVTColors Properties
Legend

Property
published


TVTColors Properties Properties
TVTColors Properties | Legend
Properties

BorderColor
Not documented.
DisabledColor
Not documented.
DropMarkColor
Color of the drop mark.
DropTargetBorderColor
Not documented.
DropTargetColor
Not documented.
FocusedSelectionBorderColor
Not documented.
FocusedSelectionColor
Not documented.
GridLineColor
Not documented.
HeaderHotColor
Not documented.
HotColor
Not documented.
SelectionRectangleBlendColor
Not documented.
SelectionRectangleBorderColor
Not documented.
SelectionTextColor
Not documented.
TreeLineColor
Not documented.
UnfocusedSelectionBorderColor
Not documented.
UnfocusedSelectionColor
Not documented.


Legend
TVTDataObject Properties
Legend

Property
protected
read only


TVTDataObject Properties Properties
TVTDataObject Properties | Legend
Properties

ForClipboard
Not documented.
FormatEtcArray
Not documented.
InternalStgMediumArray
Not documented.
Owner
Not documented.


Legend
TVTDragImage Properties
Legend

Property
public
read only


TVTDragImage Properties Properties
TVTDragImage Properties | Legend
Properties

ColorKey
Not documented.
Fade
Not documented.
MoveRestriction
Not documented.
PostBlendBias
Not documented.
PreBlendBias
Not documented.
Transparency
Not documented.
Visible
Not documented.


Legend
TVTEdit Properties
Legend

Property
public


TVTEdit Properties Properties
TVTEdit Properties | Legend
Properties

AutoSelect
Not documented.
AutoSize
Not documented.
BorderStyle
Not documented.
CharCase
Not documented.
HideSelection
Not documented.
MaxLength
Not documented.
OEMConvert
Not documented.
PasswordChar
Not documented.


Legend
TVTFixedAreaConstraints Properties
Legend

Property
protected
read only
published
public


TVTFixedAreaConstraints Properties Properties
TVTFixedAreaConstraints Properties | Legend
Properties

Header
Not documented.
MaxHeightPercent
Not documented.
MaxWidthPercent
Not documented.
MinHeightPercent
Not documented.
MinWidthPercent
Not documented.
OnChange
Not documented.


Properties

Legend
Legend

Property
protected
read only
published
public


Legend
TVTHeader Properties
Legend

Property
published
public
read only


TVTHeader Properties Properties
TVTHeader Properties | Legend
Properties

AutoSizeIndex
Not documented.
Background
Not documented.
Columns
Not documented.
DefaultHeight
Not documented.
DragImage
Not documented.
FixedAreaConstraints
Not documented.
Font
Not documented.
Height
Not documented.
Images
Not documented.
MainColumn
Not documented.
MaxHeight
Not documented.
MinHeight
Not documented.
Options
Not documented.
ParentFont
Not documented.
PopupMenu
Not documented.
SortColumn
Not documented.
SortDirection
Not documented.
States
Not documented.
Style
Not documented.
Treeview
Not documented.
UseColumns
Not documented.


Properties

Legend
Legend

Property
published
public
read only


Legend
TVTHeaderPopupMenu Properties
Legend

Property
published


TVTHeaderPopupMenu Properties Properties
TVTHeaderPopupMenu Properties | Legend
Properties

Options
Not documented.


Legend
TVTVirtualNodeEnumerator Properties
Legend

Property
public
read only


TVTVirtualNodeEnumerator Properties Properties
TVTVirtualNodeEnumerator Properties | Legend
Properties

Current
Not documented.


Legend
TWideBufferedString Properties
Legend

Property
public
read only


TWideBufferedString Properties Properties
TWideBufferedString Properties | Legend
Properties

AsString
Not documented.


Legend
TWorkerThread Properties
Legend

Property
public
read only


TWorkerThread Properties Properties
TWorkerThread Properties | Legend
Properties

CurrentTree
Not documented.


Structs and Records Enumerations
Structs and Records | Legend
Enumerations

TSmartAutoFitType
Not documented.
TToggleAnimationMode
Not documented.
TVTCellContentMarginType
Not documented.
TVTCellPaintMode
Not documented.
TVTExportMode
Not documented.
TVTExportType
Not documented.
TVTHeaderHitPosition
Not documented.
TVTOperationKind
Not documented.
TVTTooltipLineBreakStyle
Not documented.
TVZVirtualNodeEnumerationMode
Not documented.


Enumerations

Legend
Legend

Enumeration


Legend
Structs and Records
Legend

Record
Enumeration


Structs and Records Records
Structs and Records | Legend
Records

TBaseChunk
Not documented.
TBaseChunkBody
Not documented.
TCacheEntry
Not documented.
TChunkHeader
Not documented.
TClipboardFormatEntry
Not documented.
TClipboardFormatListEntry
Not documented.
THeaderPaintInfo
Not documented.
THitInfo
Not documented.
TInternalStgMedium
Not documented.
TRealWMNCPaint
Not documented.
TSHDragImage
Not documented.
TToggleAnimationData
Not documented.
TVirtualNode
Not documented.
TVTHeaderHitInfo
Not documented.
TVTHintData
Not documented.
TVTImageInfo
Not documented.
TVTPaintInfo
Not documented.
TVTReference
Not documented.
TWithSafeRect
Not documented.
TWMPrint
Not documented.


Symbol Reference Interfaces
Symbol Reference | Legend
Interfaces

IDragSourceHelper
Not documented.
IDropTargetHelper
Not documented.
IVTDragManager
Not documented.
IVTEditLink
Interface which is used for communication between the treeview and a node editor.


Interfaces (AutoDoc Folder)

Legend
Legend

Interface


Legend
Symbol Reference
Legend

Interface


Topics
Symbol Reference
Topics

Interfaces
The following table lists interfaces in this documentation.


Types Enumerations
Types | Legend
Enumerations

TAddPopupItemType
Not documented.
TBlendMode
Not documented.
TChangeReason
Not documented.
TCheckImageKind
Determines which images should be used for checkboxes and radio buttons.
TCheckState
Returns the current state of a node's check box, radio button or node button.
TCheckType
Not documented.
TDragOperation
Not documented.
TDropMode
Not documented.
THeaderState
Not documented.
THintAnimationType
Not documented.
THitPosition
Not documented.
TItemEraseAction
Not documented.
TScrollBarStyle
Not documented.
TSortDirection
Not documented.
TVirtualNodeInitState
Not documented.
TVirtualNodeState
Not documented.
TVirtualTreeColumnStyle
Not documented.
TVSTTextSourceType
Not documented.
TVSTTextType
Not documented.
TVTAnimationOption
Not documented.
TVTAutoOption
Not documented.
TVTButtonFillMode
Determines how the interior of nodes buttons should be drawn.
TVTButtonStyle
Not documented.
TVTColumnOption
Not documented.
TVTDragImageKind
Not documented.
TVTDragMoveRestriction
Not documented.
TVTDragType
Not documented.
TVTDrawSelectionMode
Not documented.
TVTDropMarkMode
Not documented.
TVTHeaderColumnLayout
Not documented.
TVTHeaderOption
Not documented.
TVTHeaderPopupOption
Not documented.
TVTHeaderStyle
Not documented.
TVTHintMode
Not documented.
TVTImageInfoIndex
Not documented.
TVTImageKind
Not documented.
TVTIncrementalSearch
Not documented.
TVTInternalPaintOption
Not documented.
TVTLineMode
Not documented.
TVTLineStyle
Not documented.
TVTLineType
Not documented.
TVTMiscOption
Not documented.
TVTNodeAlignment
Not documented.
TVTNodeAttachMode
Not documented.
TVTPaintOption
Not documented.
TVTSearchDirection
Not documented.
TVTSearchStart
Not documented.
TVTSelectionOption
Not documented.
TVTStringOption
Not documented.
TVTUpdateState
Not documented.


Legend
Types
Legend

Type
Enumeration


Types
Types | Legend
Types

PCardinal
Not documented.
PVirtualNode
Not documented.
TAddHeaderPopupItemEvent
Not documented.
TAutoScrollInterval
Not documented.
TCache
Not documented.
TCardinalArray
Not documented.
TChangeStates
Not documented.
TColumnChangeEvent
Not documented.
TColumnIndex
Not documented.
TColumnPosition
Not documented.
TColumnsArray
Not documented.
TDragOperations
Not documented.
TFormatArray
Not documented.
TFormatEtcArray
Not documented.
TGetFirstNodeProc
Not documented.
TGetNextNodeProc
Not documented.
THeaderPaintElements
Not documented.
THeaderStates
Not documented.
THitPositions
Not documented.
TIndexArray
Not documented.
TInternalStgMediumArray
Not documented.
TLineImage
Not documented.
TMagicID
Not documented.
TMouseButtons
Not documented.
TNodeArray
Not documented.
TScrollDirections
Not documented.
TScrollUpdateOptions
Not documented.
TTreeOptionsClass
Not documented.
TVirtualNodeInitStates
Not documented.
TVirtualNodeStates
Not documented.
TVirtualTreeClass
Not documented.
TVirtualTreeColumnClass
Not documented.
TVirtualTreeColumnsClass
Not documented.
TVirtualTreeStates
Not documented.
TVSTGetHintEvent
Not documented.
TVSTGetTextEvent
Not documented.
TVSTNewTextEvent
Not documented.
TVSTShortenStringEvent
Not documented.
TVTAddToSelectionEvent
Not documented.
TVTAdvancedHeaderPaintEvent
Not documented.
TVTAfterAutoFitColumnEvent
Not documented.
TVTAfterAutoFitColumnsEvent
Not documented.
TVTAfterCellPaintEvent
Not documented.
TVTAfterColumnWidthTrackingEvent
Not documented.
TVTAfterGetMaxColumnWidthEvent
Not documented.
TVTAfterHeaderHeightTrackingEvent
Not documented.
TVTAfterItemEraseEvent
Not documented.
TVTAfterItemPaintEvent
Not documented.
TVTAnimationCallback
Not documented.
TVTAnimationOptions
Not documented.
TVTAutoOptions
Not documented.
TVTBackgroundPaintEvent
Not documented.
TVTBeforeAutoFitColumnEvent
Not documented.
TVTBeforeAutoFitColumnsEvent
Not documented.
TVTBeforeCellPaintEvent
Not documented.
TVTBeforeColumnWidthTrackingEvent
Not documented.
TVTBeforeDrawLineImageEvent
Not documented.
TVTBeforeGetMaxColumnWidthEvent
Not documented.
TVTBeforeHeaderHeightTrackingEvent
Not documented.
TVTBeforeItemEraseEvent
Not documented.
TVTBeforeItemPaintEvent
Not documented.
TVTBias
Not documented.
TVTCanSplitterResizeColumnEvent
Not documented.
TVTCanSplitterResizeHeaderEvent
Not documented.
TVTCanSplitterResizeNodeEvent
Not documented.
TVTChangeEvent
Not documented.
TVTChangingEvent
Not documented.
TVTCheckChangingEvent
Not documented.
TVTColumnClickEvent
Not documented.
TVTColumnDblClickEvent
Not documented.
TVTColumnExportEvent
Not documented.
TVTColumnOptions
Not documented.
TVTColumnWidthDblClickResizeEvent
Not documented.
TVTColumnWidthTrackingEvent
Not documented.
TVTCompareEvent
Not documented.
TVTConstraintPercent
Not documented.
TVTCreateDataObjectEvent
Not documented.
TVTCreateDragManagerEvent
Not documented.
TVTCreateEditorEvent
Not documented.
TVTDragAllowedEvent
Not documented.
TVTDragDropEvent
Not documented.
TVTDragImageStates
Not documented.
TVTDragOverEvent
Not documented.
TVTDrawHintEvent
Not documented.
TVTDrawNodeEvent
Not documented.
TVTDrawTextEvent
Not documented.
TVTEditCancelEvent
Not documented.
TVTEditChangeEvent
Not documented.
TVTEditChangingEvent
Not documented.
TVTFocusChangeEvent
Not documented.
TVTFocusChangingEvent
Not documented.
TVTFreeNodeEvent
Not documented.
TVTGetCellContentMarginEvent
Not documented.
TVTGetCellIsEmptyEvent
Not documented.
TVTGetCursorEvent
Not documented.
TVTGetHeaderCursorEvent
Not documented.
TVTGetHintSizeEvent
Not documented.
TVTGetImageEvent
Not documented.
TVTGetImageExEvent
Not documented.
TVTGetImageTextEvent
Not documented.
TVTGetLineStyleEvent
Not documented.
TVTGetNodeDataSizeEvent
Not documented.
TVTGetNodeProc
Not documented.
TVTGetNodeWidthEvent
Not documented.
TVTGetUserClipboardFormatsEvent
Not documented.
TVTHeaderClass
Not documented.
TVTHeaderClickEvent
Not documented.
TVTHeaderDraggedEvent
Not documented.
TVTHeaderDraggedOutEvent
Not documented.
TVTHeaderDraggingEvent
Not documented.
TVTHeaderHeightDblClickResizeEvent
Not documented.
TVTHeaderHeightTrackingEvent
Not documented.
TVTHeaderHitPositions
Not documented.
TVTHeaderMouseEvent
Not documented.
TVTHeaderMouseMoveEvent
Not documented.
TVTHeaderNotifyEvent
Not documented.
TVTHeaderOptions
Not documented.
TVTHeaderPaintEvent
Not documented.
TVTHeaderPaintQueryElementsEvent
Not documented.
TVTHeaderPopupOptions
Not documented.
TVTHelpContextEvent
Not documented.
TVTHotNodeChangeEvent
Not documented.
TVTIncrementalSearchEvent
Not documented.
TVTInitChildrenEvent
Not documented.
TVTInitNodeEvent
Not documented.
TVTInternalPaintOptions
Not documented.
TVTKeyActionEvent
Not documented.
TVTMeasureItemEvent
Not documented.
TVTMeasureTextEvent
Not documented.
TVTMenuItem
Not documented.
TVTMiscOptions
Not documented.
TVTNodeClickEvent
Not documented.
TVTNodeCopiedEvent
Not documented.
TVTNodeCopyingEvent
Not documented.
TVTNodeExportEvent
Not documented.
TVTNodeHeightDblClickResizeEvent
Not documented.
TVTNodeHeightTrackingEvent
Not documented.
TVTNodeMovedEvent
Not documented.
TVTNodeMovingEvent
Not documented.
TVTOperationEvent
Not documented.
TVTOperationKinds
Not documented.
TVTPaintEvent
Not documented.
TVTPaintOptions
Not documented.
TVTPaintText
Not documented.
TVTPopupEvent
Not documented.
TVTRemoveFromSelectionEvent
Not documented.
TVTRenderOLEDataEvent
Not documented.
TVTSaveNodeEvent
Not documented.
TVTSaveTreeEvent
Not documented.
TVTScrollbarShowEvent
Not documented.
TVTScrollEvent
Not documented.
TVTScrollIncrement
Not documented.
TVTSelectionOptions
Not documented.
TVTStateChangeEvent
Not documented.
TVTStringOptions
Not documented.
TVTStructureChangeEvent
Not documented.
TVTTransparency
Not documented.
TVTTreeExportEvent
Not documented.
TVTUpdatingEvent
Not documented.
TWMPrintClient
Not documented.
UnicodeString
Not documented.


Types

Legend
Legend

Type


Legend
Variables
Legend

Variable


Variables
Variables | Legend
Variables

CF_CSV
Not documented.
CF_HTML
Not documented.
CF_VIRTUALTREE
Not documented.
CF_VRTF
Not documented.
CF_VRTFNOOBJS
Not documented.
CF_VTREFERENCE
Not documented.
ClipboardDescriptions
Not documented.
DarkCheckImages
Not documented.
DarkTickImages
Not documented.
FlatImages
Not documented.
Initialized
Not documented.
InternalClipboardFormats
Not documented.
IsWinVistaOrAbove
Not documented.
LightCheckImages
Not documented.
LightTickImages
Not documented.
MMXAvailable
Not documented.
NeedToUnitialize
Not documented.
StandardOLEFormat
Not documented.
SystemCheckImages
Not documented.
SystemFlatCheckImages
Not documented.
UtilityImages
Not documented.
Watcher
Not documented.
WorkerThread
Not documented.
WorkEvent
Not documented.
XPImages
Not documented.


Variables

Legend
Legend

Variable


Topics
Inner fundamentals
Topics

The virtual paradigm
Interested in the story of Virtual Treeview? Well, here is a part of it.
Paint cycles and stages
The most complex process in Virtual Treeview is without doubts its painting. Read here what stages Virtual Treeview enters during paint and how you can customize this process.
Tree image and tree window
If you are one of those developers who want to create tree descendants, which perhaps involve visual changes in Virtual Treeview then you need to know how the control paints itself (as outlined in Paint cycles and stages). What happens with the resulting image and how it can be used for certain tasks like printing? Some answers are in this topic.
Data handling
An important aspect of the tree is the handling of data for each node. Read here how Virtual Treeview manages your data.
Editors and editing
Because of the virtual nature of Virtual Treeview editing becomes a difficult issue. Read here what needs to be considered and where you can hook in to allow any editor for a node.
Keyboard, hotkeys and incremental search
Virtual Treeview handles most of the important keyboard actions on its own. Also here you can inject your own handling to modify the control's behavior. Read also about incremental search and how it is implemented.
Drag'n drop and clipboard handling
Virtual Treeview behaves also well when it comes to data exchange with other applications or structural manipulations using the mouse. In both cases the prerred method is using OLE. Read here why and what's behind it.
Additional information
This chapter collects everything else which is important or very helpful to know but which does not justify an own chapter.


Virtual Treeview Classes
Virtual Treeview | Legend
Classes

EVirtualTreeError
TBaseVirtualTree
TBaseVirtualTree is the main and base class for all other Virtual Treeview descendants.
TBufferedAnsiString
Not documented.
TCanvasEx
Not documented.
TClipboardFormatList
Not documented.
TClipboardFormats
List of strings describing clipboard formats.

TCriticalSection
Not documented.
TCustomStringTreeOptions
Enhanced options class for string trees.
TCustomVirtualDrawTree
Simple owner draw descendant of the base tree.
TCustomVirtualStringTree
Descendant of TBaseVirtualTree, which is able to manage node captions on its own
TCustomVirtualTreeOptions
Organizes all tree options into subproperties for easier managment.
TEnumFormatEtc
TScrollBarOptions
TStringEditLink
TStringEditLink is the standard node editor of a TVirtualStringTree.
TStringTreeOptions
Options class used in the string tree and its descentants.
TVirtualDrawTree
Descendant of TBaseVirtualTree, which passes node paint events through to the application (similar to a draw grid)
TVirtualStringTree
Descentant of TBaseVirtualTree which is able to manage node captions on its own.
TVirtualTreeColumn
Represents a column in a Virtual Treeview.
TVirtualTreeColumns
Collection class, which holds the columns for the tree.
TVirtualTreeHintWindow
Internally used hint window class to support Unicode hints.
TVirtualTreeOptions
Collects all binary options of the tree control into one place for easier access.
TVTColors
Collects all color related options for the tree control.
TVTDataObject
Implementation of an IDataObject interface.
TVTDragImage
Not documented.
TVTDragManager
Not documented.
TVTEdit
Not documented.
TVTFixedAreaConstraints
Not documented.
TVTHeader
Not documented.
TVTHeaderPopupMenu
Not documented.
TVTVirtualNodeEnumeration
Not documented.
TVTVirtualNodeEnumerator
Not documented.
TWideBufferedString
Not documented.
TWorkerThread
Not documented.


Classes (AutoDoc Folder)

Legend
Legend

Class
Record


Virtual Treeview Constants
Virtual Treeview | Legend
Constants

AlignmentToDrawFlag
Not documented.
AllocIncrement
Not documented.
BaseChunk
Not documented.
CacheThreshold
Number of nodes a tree must at least have to start caching and at the same time the maximum number of nodes between two cache entries.
CaptionChunk
Not documented.
CFSTR_CSV
Contains the registration string for certain clipboard formats.
CFSTR_HTML
Contains the registration string for certain clipboard formats.
CFSTR_RTF
Contains the registration string for certain clipboard formats.
CFSTR_RTFNOOBJS
Contains the registration string for certain clipboard formats.
CFSTR_VIRTUALTREE
Contains the registration string for certain clipboard formats.
CFSTR_VTREFERENCE
Contains the registration string for certain clipboard formats.
ChangeTimer
Not documented.
Check button image indices
ckButtonDisabled
ckButtonHot
ckButtonNormal
ckButtonPressed
ckCheckCheckedDisabled
ckCheckCheckedHot
ckCheckCheckedNormal
ckCheckCheckedPressed
ckCheckMixedDisabled
ckCheckMixedHot
ckCheckMixedNormal
ckCheckMixedPressed
ckCheckUncheckedDisabled
ckCheckUncheckedHot
ckCheckUncheckedNormal
ckCheckUncheckedPressed
ckEmpty
ckRadioCheckedDisabled
ckRadioCheckedHot
ckRadioCheckedNormal
ckRadioCheckedPressed
ckRadioUncheckedDisabled
ckRadioUncheckedHot
ckRadioUncheckedNormal
ckRadioUncheckedPressed
ClipboardStates
Not documented.
CLSID_DragDropHelper
Not documented.
CM_AUTOADJUST
Not documented.
CM_DENYSUBCLASSING
Not documented.
Copyright
Not documented.
crHeaderSplit
Not documented.
crVertSplit
Not documented.
DefaultAnimationOptions
Not documented.
DefaultAutoOptions
Not documented.
DefaultColumnOptions
Not documented.
DefaultMiscOptions
Not documented.
DefaultPaintOptions
Not documented.
DefaultScrollUpdateFlags
Not documented.
DefaultSelectionOptions
Not documented.
DefaultStringOptions
Not documented.
EditTimer
Not documented.
ExpandTimer
Not documented.
FadeAnimationStepCount
Not documented.
hcTFCannotSetUserData
Not documented.
hcTFClipboardFailed
Not documented.
hcTFCorruptStream1
Not documented.
hcTFCorruptStream2
Not documented.
hcTFEditLinkIsNil
Not documented.
hcTFStreamTooSmall
Not documented.
hcTFWrongMoveError
Not documented.
hcTFWrongStreamFormat
Not documented.
hcTFWrongStreamVersion
Not documented.
HeaderTimer
Not documented.
IID_IDragSourceHelper
Not documented.
IID_IDropTarget
Not documented.
IID_IDropTargetHelper
Not documented.
InvalidColumn
Not documented.
MagicID
Not documented.
MinimumTimerInterval
Not documented.
MouseButtonDown
Not documented.
NoColumn
Not documented.
NodeChunk
Not documented.
PressedState
Not documented.
RTLFlag
Not documented.
SCannotSetUserData
Not documented.
SClipboardFailed
Not documented.
SCorruptStream1
Not documented.
SCorruptStream2
Not documented.
ScrollTimer
Not documented.
SearchTimer
Not documented.
SEditLinkIsNil
Not documented.
ShadowSize
Size in pixels of the hint shadow.
SID_IDragSourceHelper
Not documented.
SID_IDropTarget
Not documented.
SID_IDropTargetHelper
Not documented.
SStreamTooSmall
Not documented.
StructureChangeTimer
Not documented.
SWrongMoveError
Not documented.
SWrongStreamFormat
Not documented.
TVP_HOTGLYPH
Not documented.
SWrongStreamVersion
Not documented.
TreeNodeSize
Not documented.
UnpressedState
Not documented.
UserChunk
Not documented.
UtilityImageSize
Not documented.
VTHeaderStreamVersion
Not documented.
VTTreeStreamVersion
Not documented.
VTVersion
Not documented.
WideCR
Not documented.
WideLF
Not documented.
WideLineSeparator
Not documented.
WideNull
Not documented.
WM_CHANGESTATE
Not documented.


Constants (AutoDoc Folder)

Legend
Legend

Constant


Virtual Treeview Functions
Virtual Treeview | Legend
Functions

AlphaBlend
General purpose procedure to blend one bitmap to another.
EnumerateVTClipboardFormats
Not documented.
EnumerateVTClipboardFormats
Not documented.
GetStringDrawRect
Not documented.
GetVTClipboardFormatDescription
Not documented.
PrtStretchDrawDIB
Not documented.
RegisterVTClipboardFormat
Methods to register a certain clipboard format for a given tree class.
RegisterVTClipboardFormat
Methods to register a certain clipboard format for a given tree class.
ShortenString
Not documented.
TreeFromNode
General purpose routine to get the tree to which a node belongs.
WrapString
Not documented.


Functions (AutoDoc Folder)

Legend
Legend

Method


Legend
Virtual Treeview
Legend

Class
Record
Method
Enumeration
Type
Variable
Constant


Structs and Records
Virtual Treeview | Legend
Structs and Records

TBaseChunk
Not documented.
TBaseChunkBody
Not documented.
TCacheEntry
Not documented.
TChunkHeader
Not documented.
TClipboardFormatEntry
Not documented.
TClipboardFormatListEntry
Not documented.
THeaderPaintInfo
Not documented.
THitInfo
Not documented.
TInternalStgMedium
Not documented.
TRealWMNCPaint
Not documented.
TSHDragImage
Not documented.
TSmartAutoFitType
Not documented.
TToggleAnimationData
Not documented.
TToggleAnimationMode
Not documented.
TVirtualNode
Not documented.
TVTCellContentMarginType
Not documented.
TVTCellPaintMode
Not documented.
TVTExportMode
Not documented.
TVTExportType
Not documented.
TVTHeaderHitInfo
Not documented.
TVTHeaderHitPosition
Not documented.
TVTHintData
Not documented.
TVTImageInfo
Not documented.
TVTOperationKind
Not documented.
TVTPaintInfo
Not documented.
TVTReference
Not documented.
TVTTooltipLineBreakStyle
Not documented.
TVZVirtualNodeEnumerationMode
Not documented.
TWithSafeRect
Not documented.
TWMPrint
Not documented.


Structs, Records, Enums (AutoDoc Folder)

Legend
Legend

Record
Enumeration


Symbol Reference
Virtual Treeview
Symbol Reference

Interfaces
The following table lists interfaces in this documentation.


Topics
Virtual Treeview
Topics

Classes
The following table lists classes in this documentation.
Functions
The following table lists functions in this documentation.
Structs and Records
The following table lists structs, records, enums in this documentation.
Types
The following table lists types in this documentation.
Variables
The following table lists variables in this documentation.
Constants
The following table lists constants in this documentation.
Symbol Reference
These are all symbols available in this documentation.


Virtual Treeview Types
Virtual Treeview | Legend
Types

PCardinal
Not documented.
PVirtualNode
Not documented.
TAddHeaderPopupItemEvent
Not documented.
TAddPopupItemType
Not documented.
TAutoScrollInterval
Not documented.
TBlendMode
Not documented.
TCache
Not documented.
TCardinalArray
Not documented.
TChangeReason
Not documented.
TChangeStates
Not documented.
TCheckImageKind
Determines which images should be used for checkboxes and radio buttons.
TCheckState
Returns the current state of a node's check box, radio button or node button.
TCheckType
Not documented.
TColumnChangeEvent
Not documented.
TColumnIndex
Not documented.
TColumnPosition
Not documented.
TColumnsArray
Not documented.
TDragOperation
Not documented.
TDragOperations
Not documented.
TDropMode
Not documented.
TFormatArray
Not documented.
TFormatEtcArray
Not documented.
TGetFirstNodeProc
Not documented.
TGetNextNodeProc
Not documented.
THeaderPaintElements
Not documented.
THeaderState
Not documented.
THeaderStates
Not documented.
THintAnimationType
Not documented.
THitPosition
Not documented.
THitPositions
Not documented.
TIndexArray
Not documented.
TInternalStgMediumArray
Not documented.
TItemEraseAction
Not documented.
TLineImage
Not documented.
TMagicID
Not documented.
TMouseButtons
Not documented.
TNodeArray
Not documented.
TScrollBarStyle
Not documented.
TScrollDirections
Not documented.
TScrollUpdateOptions
Not documented.
TSortDirection
Not documented.
TTreeOptionsClass
Not documented.
TVirtualNodeInitState
Not documented.
TVirtualNodeInitStates
Not documented.
TVirtualNodeState
Not documented.
TVirtualNodeStates
Not documented.
TVirtualTreeClass
Not documented.
TVirtualTreeColumnClass
Not documented.
TVirtualTreeColumnsClass
Not documented.
TVirtualTreeColumnStyle
Not documented.
TVirtualTreeStates
Not documented.
TVSTGetHintEvent
Not documented.
TVSTGetTextEvent
Not documented.
TVSTNewTextEvent
Not documented.
TVSTShortenStringEvent
Not documented.
TVSTTextSourceType
Not documented.
TVSTTextType
Not documented.
TVTAddToSelectionEvent
Not documented.
TVTAdvancedHeaderPaintEvent
Not documented.
TVTAfterAutoFitColumnEvent
Not documented.
TVTAfterAutoFitColumnsEvent
Not documented.
TVTAfterCellPaintEvent
Not documented.
TVTAfterColumnWidthTrackingEvent
Not documented.
TVTAfterGetMaxColumnWidthEvent
Not documented.
TVTAfterHeaderHeightTrackingEvent
Not documented.
TVTAfterItemEraseEvent
Not documented.
TVTAfterItemPaintEvent
Not documented.
TVTAnimationCallback
Not documented.
TVTAnimationOption
Not documented.
TVTAnimationOptions
Not documented.
TVTAutoOption
Not documented.
TVTAutoOptions
Not documented.
TVTBackgroundPaintEvent
Not documented.
TVTBeforeAutoFitColumnEvent
Not documented.
TVTBeforeAutoFitColumnsEvent
Not documented.
TVTBeforeCellPaintEvent
Not documented.
TVTBeforeColumnWidthTrackingEvent
Not documented.
TVTBeforeDrawLineImageEvent
Not documented.
TVTBeforeGetMaxColumnWidthEvent
Not documented.
TVTBeforeHeaderHeightTrackingEvent
Not documented.
TVTBeforeItemEraseEvent
Not documented.
TVTBeforeItemPaintEvent
Not documented.
TVTBias
Not documented.
TVTButtonFillMode
Determines how the interior of nodes buttons should be drawn.
TVTButtonStyle
Not documented.
TVTCanSplitterResizeColumnEvent
Not documented.
TVTCanSplitterResizeHeaderEvent
Not documented.
TVTCanSplitterResizeNodeEvent
Not documented.
TVTChangeEvent
Not documented.
TVTChangingEvent
Not documented.
TVTCheckChangingEvent
Not documented.
TVTColumnClickEvent
Not documented.
TVTColumnDblClickEvent
Not documented.
TVTColumnExportEvent
Not documented.
TVTColumnOption
Not documented.
TVTColumnOptions
Not documented.
TVTColumnWidthDblClickResizeEvent
Not documented.
TVTColumnWidthTrackingEvent
Not documented.
TVTCompareEvent
Not documented.
TVTConstraintPercent
Not documented.
TVTCreateDataObjectEvent
Not documented.
TVTCreateDragManagerEvent
Not documented.
TVTCreateEditorEvent
Not documented.
TVTDragAllowedEvent
Not documented.
TVTDragDropEvent
Not documented.
TVTDragImageKind
Not documented.
TVTDragImageStates
Not documented.
TVTDragMoveRestriction
Not documented.
TVTDragOverEvent
Not documented.
TVTDragType
Not documented.
TVTDrawHintEvent
Not documented.
TVTDrawNodeEvent
Not documented.
TVTDrawSelectionMode
Not documented.
TVTDrawTextEvent
Not documented.
TVTDropMarkMode
Not documented.
TVTEditCancelEvent
Not documented.
TVTEditChangeEvent
Not documented.
TVTEditChangingEvent
Not documented.
TVTFocusChangeEvent
Not documented.
TVTFocusChangingEvent
Not documented.
TVTFreeNodeEvent
Not documented.
TVTGetCellContentMarginEvent
Not documented.
TVTGetCellIsEmptyEvent
Not documented.
TVTGetCursorEvent
Not documented.
TVTGetHeaderCursorEvent
Not documented.
TVTGetHintSizeEvent
Not documented.
TVTGetImageEvent
Not documented.
TVTGetImageExEvent
Not documented.
TVTGetImageTextEvent
Not documented.
TVTGetLineStyleEvent
Not documented.
TVTGetNodeDataSizeEvent
Not documented.
TVTGetNodeProc
Not documented.
TVTGetNodeWidthEvent
Not documented.
TVTGetUserClipboardFormatsEvent
Not documented.
TVTHeaderClass
Not documented.
TVTHeaderClickEvent
Not documented.
TVTHeaderColumnLayout
Not documented.
TVTHeaderDraggedEvent
Not documented.
TVTHeaderDraggedOutEvent
Not documented.
TVTHeaderDraggingEvent
Not documented.
TVTHeaderHeightDblClickResizeEvent
Not documented.
TVTHeaderHeightTrackingEvent
Not documented.
TVTHeaderHitPositions
Not documented.
TVTHeaderMouseEvent
Not documented.
TVTHeaderMouseMoveEvent
Not documented.
TVTHeaderNotifyEvent
Not documented.
TVTHeaderOption
Not documented.
TVTHeaderOptions
Not documented.
TVTHeaderPaintEvent
Not documented.
TVTHeaderPaintQueryElementsEvent
Not documented.
TVTHeaderPopupOption
Not documented.
TVTHeaderPopupOptions
Not documented.
TVTHeaderStyle
Not documented.
TVTHelpContextEvent
Not documented.
TVTHintMode
Not documented.
TVTHotNodeChangeEvent
Not documented.
TVTImageInfoIndex
Not documented.
TVTImageKind
Not documented.
TVTIncrementalSearch
Not documented.
TVTIncrementalSearchEvent
Not documented.
TVTInitChildrenEvent
Not documented.
TVTInitNodeEvent
Not documented.
TVTInternalPaintOption
Not documented.
TVTInternalPaintOptions
Not documented.
TVTKeyActionEvent
Not documented.
TVTLineMode
Not documented.
TVTLineStyle
Not documented.
TVTLineType
Not documented.
TVTMeasureItemEvent
Not documented.
TVTMeasureTextEvent
Not documented.
TVTMenuItem
Not documented.
TVTMiscOption
Not documented.
TVTMiscOptions
Not documented.
TVTNodeAlignment
Not documented.
TVTNodeAttachMode
Not documented.
TVTNodeClickEvent
Not documented.
TVTNodeCopiedEvent
Not documented.
TVTNodeCopyingEvent
Not documented.
TVTNodeExportEvent
Not documented.
TVTNodeHeightDblClickResizeEvent
Not documented.
TVTNodeHeightTrackingEvent
Not documented.
TVTNodeMovedEvent
Not documented.
TVTNodeMovingEvent
Not documented.
TVTOperationEvent
Not documented.
TVTOperationKinds
Not documented.
TVTPaintEvent
Not documented.
TVTPaintOption
Not documented.
TVTPaintOptions
Not documented.
TVTPaintText
Not documented.
TVTPopupEvent
Not documented.
TVTRemoveFromSelectionEvent
Not documented.
TVTRenderOLEDataEvent
Not documented.
TVTSaveNodeEvent
Not documented.
TVTSaveTreeEvent
Not documented.
TVTScrollbarShowEvent
Not documented.
TVTScrollEvent
Not documented.
TVTScrollIncrement
Not documented.
TVTSearchDirection
Not documented.
TVTSearchStart
Not documented.
TVTSelectionOption
Not documented.
TVTSelectionOptions
Not documented.
TVTStateChangeEvent
Not documented.
TVTStringOption
Not documented.
TVTStringOptions
Not documented.
TVTStructureChangeEvent
Not documented.
TVTTransparency
Not documented.
TVTTreeExportEvent
Not documented.
TVTUpdateState
Not documented.
TVTUpdatingEvent
Not documented.
TWMPrintClient
Not documented.
UnicodeString
Not documented.


Types (AutoDoc Folder)

Legend
Legend

Type
Enumeration


Virtual Treeview Variables
Virtual Treeview | Legend
Variables

CF_CSV
Not documented.
CF_HTML
Not documented.
CF_VIRTUALTREE
Not documented.
CF_VRTF
Not documented.
CF_VRTFNOOBJS
Not documented.
CF_VTREFERENCE
Not documented.
ClipboardDescriptions
Not documented.
DarkCheckImages
Not documented.
DarkTickImages
Not documented.
FlatImages
Not documented.
Initialized
Not documented.
InternalClipboardFormats
Not documented.
IsWinVistaOrAbove
Not documented.
LightCheckImages
Not documented.
LightTickImages
Not documented.
MMXAvailable
Not documented.
NeedToUnitialize
Not documented.
StandardOLEFormat
Not documented.
SystemCheckImages
Not documented.
SystemFlatCheckImages
Not documented.
UtilityImages
Not documented.
Watcher
Not documented.
WorkerThread
Not documented.
WorkEvent
Not documented.
XPImages
Not documented.


Variables (AutoDoc Folder)

Legend
Legend

Variable


Legend
IDragSourceHelper Interface
Legend

Method
public


IDragSourceHelper Methods
IDragSourceHelper Interface | Legend
IDragSourceHelper Methods

InitializeFromBitmap
Not documented.
InitializeFromWindow
Not documented.


Methods (AutoDoc Folder)

Legend
Legend

Method
public


Topics
IDragSourceHelper Interface
Topics

IDragSourceHelper Methods
The methods of the IDragSourceHelper class are listed here.


Legend
IDropTargetHelper Interface
Legend

Method
public


IDropTargetHelper Methods
IDropTargetHelper Interface | Legend
IDropTargetHelper Methods

DragEnter
Not documented.
DragLeave
Not documented.
DragOver
Not documented.
Drop
Not documented.
Show
Not documented.


Topics
IDropTargetHelper Interface
Topics

IDropTargetHelper Methods
The methods of the IDropTargetHelper class are listed here.


Legend
IVTDragManager Interface
Legend

Method
public
Property
read only


IVTDragManager Methods
IVTDragManager Interface | Legend
IVTDragManager Methods

ForceDragLeave
Not documented.
GetDataObject
Not documented.
GetDragSource
Not documented.
GetDropTargetHelperSupported
Not documented.
GetIsDropTarget
Not documented.


IVTDragManager Properties
IVTDragManager Interface | Legend
IVTDragManager Properties

DataObject
Not documented.
DragSource
Not documented.
DropTargetHelperSupported
Not documented.
IsDropTarget
Not documented.


Properties (AutoDoc Folder)

Legend
Legend

Property
public
read only


Topics
IVTDragManager Interface
Topics

IVTDragManager Methods
The methods of the IVTDragManager class are listed here.
IVTDragManager Properties
The properties of the IVTDragManager class are listed here.


Legend
IVTEditLink Interface
Legend

Method
public


IVTEditLink Methods
IVTEditLink Interface | Legend
IVTEditLink Methods

BeginEdit
This function will be called by the virtual tree when the editing starts.
CancelEdit
This function will be called by the virtual tree when the current editing is about to be cancelled.
EndEdit
This function will be called by the virtual tree when the current editing is being finished.
GetBounds
The virtual tree can use this function to get the current bounding rect of the node editor.
PrepareEdit
This function is called by a virtual tree to initialize the node editor.
ProcessMessage
This function is used to forward messages being directed to the virtual tree.
SetBounds
The virtual tree calls this function to initialize the bounding rectangle of the node editor.


Topics
IVTEditLink Interface
Topics

IVTEditLink Methods
The methods of the IVTEditLink class are listed here.


See Also
TBaseVirtualTree.AddChild Method
See Also

InsertNode, OnInitNode, OnInitChildren


See Also
TBaseVirtualTree.AddFromStream Method
See Also

SaveToStream


See Also
TBaseVirtualTree.AllocateInternalDataArea Method
See Also

Data handling, TotalInternalDataSize


See Also
TBaseVirtualTree.Change Method
See Also

BeginSynch, EndSynch, BeginUpdate, EndUpdate, ChangeDelay


See Also
TBaseVirtualTree.ChangeScale Method
See Also

TVTHeader.ChangeScale, DefaultNodeHeight


See Also
TBaseVirtualTree.ColumnIsEmpty Method
See Also

toAutoSpanColumns


See Also
TBaseVirtualTree.CustomCheckImages Property
See Also

TCheckImageKind


See Also
TBaseVirtualTree.DefaultPasteMode Property
See Also

TVTNodeAttachMode


See Also
TBaseVirtualTree.DetermineHiddenChildrenFlag Method
See Also

vsVisible, toAutoHideButtons


See Also
TBaseVirtualTree.DoEdit Method
See Also

tsEditing, OnCreateEditor, IVTEditLink


See Also
TBaseVirtualTree.DoEndEdit Method
See Also

DoEdit, OnNewText, EditNode


See Also
TBaseVirtualTree.DragManager Property
See Also

TVTDragManager


See Also
TBaseVirtualTree.EditDelay Property
See Also

Editors and editing


See Also
TBaseVirtualTree.EditNode Method
See Also

DoEdit


See Also
TBaseVirtualTree.EndEditNode Method
See Also

Editors and editing, EditNode, DoEdit


See Also
TBaseVirtualTree.EndSynch Method
See Also

BeginSynch, BeginUpdate, EndUpdate


See Also
TBaseVirtualTree.FocusedColumn Property
See Also

FocusedNode, TVTSelectionOptions


See Also
TBaseVirtualTree.FocusedNode Property
See Also

FocusedColumn, TVTSelectionOptions


See Also
TBaseVirtualTree.FullCollapse Method
See Also

FullExpand


See Also
TBaseVirtualTree.FullyVisible Property
See Also

IsVisible, VisiblePath, vsVisible, TVirtualNodeStates


See Also
TBaseVirtualTree.HasChildren Property
See Also

vsHasChildren, TVirtualNodeStates


See Also
TBaseVirtualTree.Header Property
See Also

TVTHeader


See Also
TBaseVirtualTree.HotCursor Property
See Also

HotNode, TVTPaintOptions


See Also
TBaseVirtualTree.HotNode Property
See Also

HotCursor, toHotTrack, TVTPaintOptions


See Also
TBaseVirtualTree.Images Property
See Also

StateImages, CheckImages


See Also
TBaseVirtualTree.IncrementalSearch Property
See Also

IncrementalSearchDirection, IncrementalSearchStart, IncrementalSearchTimeout


See Also
TBaseVirtualTree.IncrementalSearchDirection Property
See Also

IncrementalSearch, IncrementalSearchStart, IncrementalSearchTime123out


See Also
TBaseVirtualTree.IncrementalSearchStart Property
See Also

IncrementalSearch, IncrementalSearchDirection, IncrementalSearchTimeout


See Also
TBaseVirtualTree.IncrementalSearchTimeout Property
See Also

IncrementalSearch, IncrementalSearchDirection, IncrementalSearchStart


See Also
TBaseVirtualTree.InternalData Method
See Also

Data handling


See Also
TBaseVirtualTree.LoadFromFile Method
See Also

AddFromStream


See Also
TBaseVirtualTree.LoadFromStream Method
See Also

AddFromStream


See Also
TBaseVirtualTree.Margin Property
See Also

TVirtualStringTree.TextMargin


See Also
TBaseVirtualTree.NodeAlignment Property
See Also

TVirtualNode


See Also
TBaseVirtualTree.NodeDataSize Property
See Also

Data handling


See Also
TBaseVirtualTree.NodeParent Property
See Also

MoveTo, CopyTo


See Also
TBaseVirtualTree.OnAdvancedHeaderDraw Event
See Also

OnHeaderDrawQueryElements, OnHeaderDraw


See Also
TBaseVirtualTree.OnAfterCellPaint Event
See Also

Paint cycles and stages


See Also
TBaseVirtualTree.OnAfterItemErase Event
See Also

Paint cycles and stages


See Also
TBaseVirtualTree.OnAfterItemPaint Event
See Also

Paint cycles and stages


See Also
TBaseVirtualTree.OnAfterPaint Event
See Also

Paint cycles and stages


See Also
TBaseVirtualTree.OnBeforeCellPaint Event
See Also

Paint cycles and stages


See Also
TBaseVirtualTree.OnBeforeItemErase Event
See Also

Paint cycles and stages


See Also
TBaseVirtualTree.OnBeforeItemPaint Event
See Also

Paint cycles and stages


See Also
TBaseVirtualTree.OnBeforePaint Event
See Also

Paint cycles and stages


See Also
TBaseVirtualTree.OnColumnClick Event
See Also

OnHeaderClick


See Also
TBaseVirtualTree.OnColumnDblClick Event
See Also

OnColumnClick, OnHeaderDblClick


See Also
TBaseVirtualTree.OnCompareNodes Event
See Also

SortTree, Sort


See Also
TBaseVirtualTree.OnCreateEditor Event
See Also

Editors and editing


See Also
TBaseVirtualTree.OnDragOver Event
See Also

OnDragDrop


See Also
TBaseVirtualTree.OnEditCancelled Event
See Also

Editors and editing


See Also
TBaseVirtualTree.OnEdited Event
See Also

Editors and editing


See Also
TBaseVirtualTree.OnEditing Event
See Also

Editors and editing


See Also
TBaseVirtualTree.OnGetLineStyle Event
See Also

PrepareBitmaps


See Also
TBaseVirtualTree.OnGetNodeDataSize Event
See Also

NodeDataSize, Data handling


See Also
TBaseVirtualTree.OnHeaderClick Event
See Also

SortColumn, SortDirection


See Also
TBaseVirtualTree.OnHeaderDblClick Event
See Also

OnHeaderClick


See Also
TBaseVirtualTree.OnHeaderDrawQueryElements Event
See Also

OnAdvancedHeaderDraw


See Also
TBaseVirtualTree.OnInitChildren Event
See Also

The virtual paradigm


See Also
TBaseVirtualTree.OnInitNode Event
See Also

The virtual paradigm


See Also
TBaseVirtualTree.OnLoadNode Event
See Also

OnSaveNode, LoadFromStream, SaveToStream, AddFromStream, VTTreeStreamVersion, TVTHeader.LoadFromStream, TVTHeader.SaveToStream


See Also
TBaseVirtualTree.OnMeasureItem Event
See Also

InvalidateNode, vsHeightMeasured


See Also
TBaseVirtualTree.OnResetNode Event
See Also

ResetNode


See Also
TBaseVirtualTree.OnSaveNode Event
See Also

OnLoadNode, LoadFromStream, SaveToStream, AddFromStream, VTTreeStreamVersion, TVTHeader.LoadFromStream, TVTHeader.SaveToStream


See Also
TBaseVirtualTree.OnScroll Event
See Also

OffsetXY


See Also
TBaseVirtualTree.PaintTree Method
See Also

Tree image and tree window


See Also
TBaseVirtualTree.SaveToFile Method
See Also

LoadFromStream, AddFromStream


See Also
TBaseVirtualTree.SaveToStream Method
See Also

LoadFromStream, AddFromStream


See Also
TBaseVirtualTree.SearchBuffer Property
See Also

IncrementalSearch


See Also
TBaseVirtualTree.SelectionBlendFactor Property
See Also

DrawSelectionMode, TVTPaintOptions


See Also
TBaseVirtualTree.SelectionCurveRadius Property
See Also

SelectionBlendFactor, DrawSelectionMode, TVTPaintOptions


TBaseVirtualTree Constructors
TBaseVirtualTree Class | Legend
TBaseVirtualTree Constructors

Create
Constructor of the control


Constructors (AutoDoc Folder)

Legend
Legend

Constructor
public
virtual


TBaseVirtualTree Destructors
TBaseVirtualTree Class | Legend
TBaseVirtualTree Destructors

Destroy
Destructor of the control.


Destructors (AutoDoc Folder)

Legend
Legend

Destructor
public
virtual


TBaseVirtualTree Events
TBaseVirtualTree Class | Legend
TBaseVirtualTree Events

OnAddToSelection
Not documented.
OnAdvancedHeaderDraw
Header paint support event.
OnAfterAutoFitColumn
Not documented.
OnAfterAutoFitColumns
Not documented.
OnAfterCellPaint
Paint support event.
OnAfterColumnExport
Not documented.
OnAfterColumnWidthTracking
Not documented.
OnAfterGetMaxColumnWidth
Not documented.
OnAfterHeaderExport
Not documented.
OnAfterHeaderHeightTracking
Not documented.
OnAfterItemErase
Paint support event.
OnAfterItemPaint
Paint support event.
OnAfterNodeExport
Not documented.
OnAfterPaint
Paint support event.
OnAfterTreeExport
Not documented.
OnBeforeAutoFitColumn
Not documented.
OnBeforeAutoFitColumns
Not documented.
OnBeforeCellPaint
Paint support event.
OnBeforeColumnExport
Not documented.
OnBeforeColumnWidthTracking
Not documented.
OnBeforeDrawTreeLine
Not documented.
OnBeforeGetMaxColumnWidth
Not documented.
OnBeforeHeaderExport
Not documented.
OnBeforeHeaderHeightTracking
Not documented.
OnBeforeItemErase
Paint support event.
OnBeforeItemPaint
Paint support event.
OnBeforeNodeExport
Not documented.
OnBeforePaint
Paint support event.
OnBeforeTreeExport
Not documented.
OnCanSplitterResizeColumn
Not documented.
OnCanSplitterResizeHeader
Not documented.
OnCanSplitterResizeNode
Not documented.
OnChange
Navigation support event.
OnChecked
Check support event.
OnChecking
Check support event.
OnCollapsed
Miscellaneous event.
OnCollapsing
Miscellaneous event.
OnColumnClick
Header and column support event.
OnColumnDblClick
Header and column support event.
OnColumnExport
Not documented.
OnColumnResize
Header and column support routine.
OnColumnWidthDblClickResize
Not documented.
OnColumnWidthTracking
Not documented.
OnCompareNodes
Sort and search support event.
OnCreateDataObject
Drag'n drop support event.
OnCreateDragManager
Drag'n drop support event.
OnCreateEditor
Editing support event.
OnDragAllowed
Drag'n drop support event.
OnDragDrop
Drag'n drop support event.
OnDragOver
Drag'n drop support event.
OnEditCancelled
Editing support event.
OnEdited
Editing support event.
OnEditing
Editing support event.
OnEndOperation
Not documented.
OnExpanded
Misscellaneous event.
OnExpanding
Miscellaneous event.
OnFocusChanged
Navigation support event.
OnFocusChanging
Navigation support event.
OnFreeNode
Data management node.
OnGetCellIsEmpty
Triggered when the tree control needs to know whether a given column is empty.
OnGetCursor
Miscellaneous event.
OnGetHeaderCursor
Header and column support event.
OnGetHelpContext
Miscellaneous event.
OnGetImageIndex
Display management event.
OnGetImageIndexEx
Not documented.
OnGetImageText
Not documented.
OnGetLineStyle
Display management event.
OnGetNodeDataSize
Data management event.
OnGetPopupMenu
Miscellaneous event.
OnGetUserClipboardFormats
Drag'n drop and clipboard support event.
OnHeaderClick
Header & column support event.
OnHeaderDblClick
Header & column support event.
OnHeaderDragged
Header & column support event.
OnHeaderDraggedOut
Header & column support event.
OnHeaderDragging
Header & column support event.
OnHeaderDraw
Header & column support event.
OnHeaderDrawQueryElements
Header & column support event.
OnHeaderHeightDblClickResize
Not documented.
OnHeaderHeightTracking
Not documented.
OnHeaderMouseDown
Header & column support event.
OnHeaderMouseMove
Header & column support event.
OnHeaderMouseUp
Header & column support event.
OnHotChange
Navigation support event.
OnIncrementalSearch
Miscellaneous event.
OnInitChildren
Node management event.
OnInitNode
Node management event.
OnKeyAction
Miscellaneous event.
OnLoadNode
Streaming support event.
OnLoadTree
Not documented.
OnMeasureItem
Miscellaneous event.
OnNodeClick
Not documented.
OnNodeCopied
Miscellaneous event.
OnNodeCopying
Miscellaneous event.
OnNodeDblClick
Not documented.
OnNodeExport
Not documented.
OnNodeHeightDblClickResize
Not documented.
OnNodeHeightTracking
Not documented.
OnNodeMoved
Miscellaneous event.
OnNodeMoving
Miscellaneous event.
OnPaintBackground
Paint support event.
OnRemoveFromSelection
Not documented.
OnRenderOLEData
Drag'n drop and clipboard support event.
OnResetNode
Node management event.
OnSaveNode
Streaming support event.
OnSaveTree
Not documented.
OnScroll
Miscellaneous event.
OnShowScrollbar
Not documented.
OnStartOperation
Not documented.
OnStateChange
Miscellaneous event.
OnStructureChange
Miscellaneous event.
OnUpdating
Miscellaneous event.


Events (AutoDoc Folder)

Legend
Legend

Event
protected


Legend
TBaseVirtualTree Class
Legend

Method
public
virtual
protected
Constructor
Property
read only
Event


TBaseVirtualTree Methods
TBaseVirtualTree Class | Legend
TBaseVirtualTree Methods

AbsoluteIndex
Reads the overall index of a node.
AddChild
Creates and adds a new child node to given node.
AddFromStream
Adds the content from the given stream to the given node.
AddToSelection
This is the overview for the AddToSelection method overload.
AdjustImageBorder
Depending on the width of the image list as well as the given bidi mode R must be adjusted.
AdjustPaintCellRect
Used in descentants to modify the clip rectangle of the current column while painting a certain node.
AdjustPanningCursor
Loads the proper cursor which indicates into which direction scrolling is done.
AdviseChangeEvent
Used to register a delayed change event.
AllocateInternalDataArea
Registration method to allocate tree internal data per node.
Animate
Support method for animated actions in the tree view.
Assign
Used to copy properties from another Virtual Treeview.
BeginDrag
Starts an OLE drag'n drop operation.
BeginSynch
Enters the tree into a special synchronized mode.
BeginUpdate
Locks the tree view to perform several update operations.
CalculateSelectionRect
Support method for draw selection.
CanAutoScroll
Determines whether the tree can currently auto scroll its window.
CancelCutOrCopy
Canceles any pending cut or copy clipboard operation.
CancelEditNode
Cancel the current edit operation, if there is any.
CancelOperation
Not documented.
CanEdit
Determines whether a node can be edited or not.
CanFocus
Support method to determine whether the tree window can receive the input focus.
CanShowDragImage
Determines whether a drag image should be shown.
CanSplitterResizeNode
Not documented.
Change
Central method called when a node's selection state changes.
ChangeScale
Helper method called by the VCL when control resizing is due.
CheckedNodes
Not documented.
CheckParentCheckState
Helper method for recursive check state changes.
ChildNodes
Not documented.
Clear
Clears the tree and removes all nodes.
ClearChecked
Not documented.
ClearSelection
Removes all nodes from the current selection.
ClearTempCache
Helper method to clear the internal temporary node cache.
ColumnIsEmpty
Used to determine if a cell is considered as being empty.
ComputeRTLOffset
Not documented.
CopyTo
This is the overview for the CopyTo method overload.
CopyToClipBoard
Copies all currently selected nodes to the clipboard.
CountLevelDifference
Determines the level difference of two nodes.
CountVisibleChildren
Determines the number of visible child nodes of the given node.
CreateParams
Prepares the creation of the controls window handle.
CreateWnd
Initializes data, which depends on the window handle.
CutCopyNodes
Not documented.
CutToClipBoard
Copies the currently selected nodes to the clipboard and removes them once a consumer has taken the data.
DefineProperties
Helper method to customize loading and saving persistent tree data.
DeleteChildren
Removes all child nodes from the given node.
DeleteNode
Removes the given node from the tree.
DeleteSelectedNodes
Removes all currently selected nodes form the tree.
DetermineDropMode
Not documented.
DetermineHiddenChildrenFlag
Determines whether all children of a given node are hidden.
DetermineHiddenChildrenFlagAllNodes
Determines whether all children of all nodes are hidden.
DetermineHitPositionLTR
Determines the hit position within a node with left-to-right and right-to-left orientation.
DetermineHitPositionRTL
Determines the hit position within a node with left-to-right and right-to-left orientation.
DetermineLineImageAndSelectLevel
Not documented.
DetermineNextCheckState
Not documented.
DetermineScrollDirections
Not documented.
DoAdvancedHeaderDraw
Not documented.
DoAfterCellPaint
Not documented.
DoAfterItemErase
Not documented.
DoAfterItemPaint
Not documented.
DoAfterPaint
Not documented.
DoAutoScroll
Enables or disables the auto scroll timer.
DoBeforeCellPaint
Not documented.
DoBeforeDrag
Not documented.
DoBeforeDrawLineImage
Not documented.
DoBeforeItemErase
Not documented.
DoBeforeItemPaint
Not documented.
DoBeforePaint
Not documented.
DoCancelEdit
Called when the tree should stop editing without accepting changed values.
DoCanEdit
Not documented.
DoCanSplitterResizeNode
Not documented.
DoChange
Not documented.
DoCheckClick
Not documented.
DoChecked
Not documented.
DoChecking
Not documented.
DoCollapsed
Not documented.
DoCollapsing
Not documented.
DoColumnClick
Not documented.
DoColumnDblClick
Not documented.
DoColumnResize
Not documented.
DoCompare
Not documented.
DoCreateDataObject
Not documented.
DoCreateDragManager
Not documented.
DoCreateEditor
Not documented.
DoDragDrop
Not documented.
DoDragExpand
Not documented.
DoDragging
Internal method which handles drag' drop.
DoDragOver
Not documented.
DoEdit
Initiates editing of the currently set focused column and edit node.
DoEndDrag
Not documented.
DoEndEdit
Stops the current edit operation and takes over the new content.
DoEndOperation
Not documented.
DoExpanded
Not documented.
DoExpanding
Not documented.
DoFocusChange
Not documented.
DoFocusChanging
Not documented.
DoFocusNode
Internal method to set the focused node.
DoFreeNode
Not documented.
DoGetAnimationType
Determines the type of animation to be used.
DoGetCellContentMargin
Not documented.
DoGetCursor
Not documented.
DoGetHeaderCursor
Not documented.
DoGetImageIndex
Not documented.
DoGetImageText
Not documented.
DoGetLineStyle
Not documented.
DoGetNodeHint
Not documented.
DoGetNodeTooltip
Not documented.
DoGetNodeWidth
Overridable method which always retuns 0.
DoGetPopupMenu
Overridable method which triggers the OnGetPopup event.
DoGetUserClipboardFormats
Not documented.
DoHeaderClick
Not documented.
DoHeaderDblClick
Not documented.
DoHeaderDragged
Not documented.
DoHeaderDraggedOut
Not documented.
DoHeaderDragging
Not documented.
DoHeaderDraw
Not documented.
DoHeaderDrawQueryElements
Not documented.
DoHeaderMouseDown
Not documented.
DoHeaderMouseMove
Not documented.
DoHeaderMouseUp
Not documented.
DoHotChange
Not documented.
DoIncrementalSearch
Not documented.
DoInitChildren
Not documented.
DoInitNode
Not documented.
DoKeyAction
Not documented.
DoLoadUserData
Not documented.
DoMeasureItem
Not documented.
DoNodeClick
Not documented.
DoNodeCopied
Not documented.
DoNodeCopying
Not documented.
DoNodeDblClick
Not documented.
DoNodeHeightDblClickResize
Not documented.
DoNodeHeightTracking
Not documented.
DoNodeMoved
Not documented.
DoNodeMoving
Not documented.
DoPaintBackground
Not documented.
DoPaintDropMark
Overridable method which draws the small line on top of a nodes image depending on the current drop state.
DoPaintNode
Overridable method which does nothing.
DoPopupMenu
Overridable method which shows the popup menu for the given node.
DoRenderOLEData
Not documented.
DoReset
Not documented.
DoSaveUserData
Not documented.
DoScroll
Overridable method which triggers the OnScroll event.
DoSetOffsetXY
Internal core routine to set the tree's scroll position.
DoShowScrollbar
Not documented.
DoStartDrag
Not documented.
DoStartOperation
Not documented.
DoStateChange
Not documented.
DoStructureChange
Not documented.
DoTimerScroll
Callback method which is triggered whenever the scroll timer fires.
DoUpdating
Not documented.
DoValidateCache
Not documented.
DragAndDrop
Not documented.
DragCanceled
Called by the VCL when a drag'n drop operation was canceled by the user.
DragDrop
Helper method, which is used when a drag operation is finished.
DragEnter
Not documented.
DragFinished
Called when a drag operation is finished (accepted or cancelled).
Dragging
Returns true if a drag'n drop operation is in progress.
DragLeave
Not documented.
DragOver
Not documented.
DrawDottedHLine
Not documented.
DrawDottedVLine
Not documented.
EditNode
Starts editing the given node if allowed to.
EndEditNode
Stops node editing if it was started before.
EndOperation
Not documented.
EndSynch
Counterpart to BeginSynch.
EndUpdate
Resets the update lock set by BeginUpdate.
ExecuteAction
Not documented.
FindNodeInSelection
Helper method to find the given node in the current selection.
FinishChunkHeader
Not documented.
FinishCutOrCopy
Stops any pending cut or copy clipboard operation.
FlushClipboard
Renders all pending clipboard data.
FontChanged
Not documented.
FullCollapse
Collapses all nodes in the tree.
FullExpand
Expands all nodes in the tree.
GetBorderDimensions
Not documented.
GetCheckImage
Not documented.
GetCheckImageListFor
Not documented.
GetColumnClass
Returns the class to be used to manage columns in the tree.
GetControlsAlignment
Not documented.
GetDisplayRect
Not documented.
GetEffectivelyFiltered
Not documented.
GetEffectivelyVisible
Not documented.
GetFirst
Group of node navigation functions.
GetFirstChecked
Not documented.
GetFirstChild
Group of node navigation functions.
GetFirstCutCopy
Group of node navigation functions.
GetFirstInitialized
Group of node navigation functions.
GetFirstLeaf
Not documented.
GetFirstLevel
Not documented.
GetFirstNoInit
Group of node navigation functions.
GetFirstSelected
Group of node navigation functions.
GetFirstVisible
Group of node navigation functions.
GetFirstVisibleChild
Not documented.
GetFirstVisibleChildNoInit
Not documented.
GetFirstVisibleNoInit
Group of node navigation functions.
GetHeaderClass
Returns the header class to be used by the tree.
GetHintWindowClass
Not documented.
GetHitTestInfoAt
Returns information about the node at the given position.
GetImageIndex
Not documented.
GetLast
Not documented.
GetLastChild
GetLastChildNoInit
GetLastInitialized
Not documented.
GetLastNoInit
Not documented.
GetLastVisible
Not documented.
GetLastVisibleChild
Not documented.
GetLastVisibleChildNoInit
Not documented.
GetLastVisibleNoInit
Not documented.
GetMaxColumnWidth
Not documented.
GetMaxRightExtend
Determines the maximum with of the currently visible part of the tree.
GetNativeClipboardFormats
Used to let descendants and the application add their own supported clipboard formats.
GetNext
Not documented.
GetNextChecked
This is the overview for the GetNextChecked method overload.
GetNextCutCopy
Not documented.
GetNextInitialized
Not documented.
GetNextLeaf
Not documented.
GetNextLevel
Not documented.
GetNextNoInit
Not documented.
GetNextSelected
Not documented.
GetNextSibling
GetNextVisible
Not documented.
GetNextVisibleNoInit
Not documented.
GetNextVisibleSibling
Not documented.
GetNextVisibleSiblingNoInit
Not documented.
GetNodeAt
This is the overview for the GetNodeAt method overload.
GetNodeData
Returns the address of the user data area of the given node.
GetNodeLevel
Returns the indentation level of the given node.
GetOperationCanceled
Not documented.
GetOptionsClass
Customization helper to determine which options class the tree should use.
GetPrevious
Not documented.
GetPreviousChecked
Not documented.
GetPreviousCutCopy
Not documented.
GetPreviousInitialized
Not documented.
GetPreviousLeaf
Not documented.
GetPreviousLevel
Not documented.
GetPreviousNoInit
Not documented.
GetPreviousSelected
Not documented.
GetPreviousSibling
GetPreviousVisible
Not documented.
GetPreviousVisibleNoInit
Not documented.
GetPreviousVisibleSibling
Not documented.
GetPreviousVisibleSiblingNoInit
Not documented.
GetSortedCutCopySet
Returns a sorted list of nodes, which are marked for s cut or copy clipboard operation.
GetSortedSelection
Returns a sorted list of all currently selected nodes.
GetTextInfo
Not documented.
GetTreeFromDataObject
OLE drag'n drop and clipboard support method.
GetTreeRect
Returns the size of the virtual tree image.
GetVisibleParent
Not documented.
HandleHotTrack
Not documented.
HandleIncrementalSearch
Not documented.
HandleMouseDblClick
Not documented.
HandleMouseDown
Not documented.
HandleMouseUp
Not documented.
HasAsParent
Determines if the given node has got another node as one of its parents.
HasImage
Not documented.
HasPopupMenu
Determines whether there is a pop up menu assigned to the tree.
InitChildren
Not documented.
InitializedNodes
Not documented.
InitNode
Not documented.
InsertNode
Inserts a new node and returns it to the caller.
InternalAddFromStream
Not documented.
InternalAddToSelection
This is the overview for the InternalAddToSelection method overload.
InternalCacheNode
Not documented.
InternalClearSelection
Not documented.
InternalConnectNode
Not documented.
InternalData
Returns the address of the internal data for a tree class.
InternalDisconnectNode
Not documented.
InternalRemoveFromSelection
Not documented.
InvalidateCache
Empties the internal node cache and marks it as invalid.
InvalidateChildren
Invalidates all children of the given node.
InvalidateColumn
Invalidates the client area part of a column.
InvalidateNode
Invalidates the given node.
InvalidateToBottom
Invalidates the client area starting with the top position of the given node.
InvertSelection
Inverts the current selection.
IsEditing
Tells the caller whether the tree is currently in edit mode.
IsMouseSelecting
Tell the caller whether the tree is currently in draw selection mode.
IterateSubtree
Iterator method to go through all nodes of a given sub tree.
LeafNodes
Not documented.
LevelNodes
Not documented.
Loaded
Not documented.
LoadFromFile
Loads previously streamed out tree data back in again.
LoadFromStream
Loads previously streamed out tree data back in again.
MainColumnChanged
Not documented.
MarkCutCopyNodes
Not documented.
MeasureItemHeight
Not documented.
MouseMove
Not documented.
MoveTo
This is the overview for the MoveTo method overload.
Nodes
Not documented.
NoInitNodes
Not documented.
Notification
Not documented.
OriginalWMNCPaint
Not documented.
Paint
TControl's Paint method used here to display the tree.
PaintCheckImage
Not documented.
PaintImage
Not documented.
PaintNodeButton
Not documented.
PaintSelectionRectangle
Not documented.
PaintTree
Main paint routine for the tree image.
PaintTreeLines
Not documented.
PanningWindowProc
Not documented.
PasteFromClipboard
Inserts the content of the clipboard into the tree.
PrepareCell
This method is called immediately before a cell's content is drawn und is responsible to paint selection colors etc.
PrepareDragImage
Not documented.
Print
Not documented.
ProcessDrop
Helper method to ease OLE drag'n drop operations.
ProcessOLEData
Takes serialized OLE tree data and reconstructs the former structure.
ReadChunk
Not documented.
ReadNode
Not documented.
RedirectFontChangeEvent
Not documented.
ReinitChildren
Forces all child nodes of Node to be reinitialized.
ReinitNode
Forces a reinitialization of the given node.
RemoveFromSelection
Removes the given node from the current selection.
RenderOLEData
Renders pending OLE data.
RepaintNode
Causes the treeview to repaint the given node.
ResetNode
Resets the given node to uninitialized.
ResetRangeAnchor
Not documented.
RestoreFontChangeEvent
Not documented.
SaveToFile
Saves the entire content of the tree into a file or stream.
SaveToStream
Saves the entire content of the tree into a file or stream.
ScrollIntoView
This is the overview for the ScrollIntoView method overload.
SelectAll
Selects all nodes in the tree.
SelectedNodes
Not documented.
SelectNodes
Selects a range of nodes.
SetFocusedNodeAndColumn
Not documented.
SkipNode
Not documented.
Sort
Sorts the given node.
SortTree
Sorts the entire tree view.
StartOperation
Not documented.
StartWheelPanning
Not documented.
StopWheelPanning
Not documented.
StructureChange
Not documented.
SuggestDropEffect
Not documented.
ToggleNode
Changes a node's expand state to the opposite state.
ToggleSelection
Toggles the selection state of a range of nodes.
UnselectNodes
Deselects a range of nodes.
UpdateAction
Not documented.
UpdateColumnCheckState
Not documented.
UpdateDesigner
Not documented.
UpdateEditBounds
Not documented.
UpdateHeaderRect
Not documented.
UpdateHorizontalRange
Not documented.
UpdateHorizontalScrollBar
Applies changes to the horizontal and vertical scrollbars.
UpdateRanges
Not documented.
UpdateScrollBars
Applies changes to the horizontal and vertical scrollbars.
UpdateVerticalRange
Not documented.
UpdateVerticalScrollBar
Applies changes to the horizontal and vertical scrollbars.
UpdateWindowAndDragImage
Not documented.
UseRightToLeftReading
Helper method for right-to-left layout.
ValidateCache
Initiates the validation of the internal node cache.
ValidateChildren
Validates all children of a given node.
ValidateNode
Validates a given node.
ValidateNodeDataSize
Helper method for node data size initalization.
VisibleChildNodes
Not documented.
VisibleChildNoInitNodes
Not documented.
VisibleNodes
Not documented.
VisibleNoInitNodes
Not documented.
WndProc
Redirected window procedure to do some special processing.
WriteChunks
Writes the core chunks for the given node to the given stream.
WriteNode
Writes the cover (envelop) chunk for the given node to the given stream.


Methods (AutoDoc Folder)

Legend
Legend

Method
public
virtual
protected


TBaseVirtualTree Properties
TBaseVirtualTree Class | Legend
TBaseVirtualTree Properties

Accessible
Not documented.
AccessibleItem
Not documented.
AccessibleName
Not documented.
Alignment
Determines the horizontal alignment of text if no columns are defined.
AnimationDuration
Determines the maximum duration the tree can use to play an animation.
AutoExpandDelay
Time delay after which a node gets expanded if it is the current drop target.
AutoScrollDelay
Time which determines when auto scrolling should start.
AutoScrollInterval
Time interval between scroll events when doing auto scroll.
Background
Holds a background image for the tree.
BackgroundOffsetX
Horizontal offset of the background image.
BackgroundOffsetY
Vertical offset of the background image.
BorderStyle
Same as TForm.BorderStyle.
BottomNode
Not documented.
BottomSpace
Not documented.
ButtonFillMode
Determines how to fill the background of the node buttons.
ButtonStyle
Determines the look of node buttons.
ChangeDelay
Time which determines when the OnChange event should be triggered after the actual change event.
CheckedCount
Not documented.
CheckImageKind
Determines which images should be used for checkboxes and radio buttons.
CheckImages
Not documented.
CheckState
Read or set the check state of a node.
CheckType
Read or set the check type of a node.
ChildCount
Read or set the number of child nodes of a node.
ChildrenInitialized
Read whether a node's child count has been initialized already.
ClipboardFormats
Special class to keep a list of clipboard format descriptions.
Colors
A collection of colors used in the tree.
CustomCheckImages
Assign your own image list to get the check images you like most.
CutCopyCount
Not documented.
DefaultNodeHeight
Read or set the height new nodes get as initial value.
DefaultPasteMode
Read or set the value, which determines where to add pasted nodes to.
DragHeight
Read or set the vertical limit of the internal drag image.
DragImage
Holds the instance of the internal drag image.
DragImageKind
Read or set what should be shown in the drag image.
DragManager
Holds the reference to the internal drag manager.
DragOperations
Read or set which drag operations may be allowed in the tree.
DragSelection
Keeps a temporary list of nodes during drag'n drop.
DragType
Read or set which subsystem should be used for dragging.
DragWidth
Read or set the horizontal limit of the internal drag image.
DrawSelectionMode
Read or set how multiselection with the mouse is to be visualized.
DropTargetNode
Contains the current drop target node if the tree is currently the target of a drag'n drop operation.
EditColumn
Not documented.
EditDelay
Read or set the maximum time between two single clicks on the same node, which should start node editing.
EditLink
Keeps a reference to the internal edit link during a node edit operation.
EffectiveOffsetX
Not documented.
EmptyListMessage
Not documented.
Expanded
Read or set the expanded state of a particular node.
FocusedColumn
Read or set the currently focused collumn.
FocusedNode
Read or set the currently focused node.
Font
Same as TWinControl.Font.
FullyVisible
Read or set whether a node is fully visible or not.
HasChildren
Read or set whether a node has got children.
Header
Provides access to the header instance.
HeaderRect
Returns the non-client-area rectangle used for the header.
HintAnimation
Read or set the current hint animation type.
HintData
Not documented.
HintMode
Read or set what type of hint you want for the tree view.
HotCursor
Read or set which cursor should be used for hot nodes.
HotMinusBM
Not documented.
HotNode
Read, which node is currently the hot node.
HotPlusBM
Not documented.
Images
Read or set the tree's normal image list.
IncrementalSearch
Read or set the current incremental search mode.
IncrementalSearchDirection
Read or set the direction to be used for incremental search.
IncrementalSearchStart
Read or set where to start incremental search.
IncrementalSearchTimeout
Read or set the maximum time, which is allowed between two consecutive key strokes so that incremental search stays active.
Indent
Read or set the indentation amount for node levels.
IsDisabled
Read or set the enabled state of the given node.
IsEffectivelyFiltered
Not documented.
IsEffectivelyVisible
Not documented.
IsFiltered
Not documented.
IsVisible
Read or set the visibility state of the given node.
LastClickPos
Used for retained drag start and wheel mouse scrolling.
LastDropMode
Read how the last drop operation finished.
LastHintRect
Not documented.
LineMode
Read or set the mode of the tree lines.
LineStyle
Read or set the mode of the tree lines.
Margin
Read or set the tree's node margin.
MinusBM
Not documented.
MultiLine
Read or toggle the multiline feature for a given node.
NodeAlignment
Read or set the node alignment value.
NodeDataSize
Read or set the extra data size for each node.
NodeHeight
Read or set a node's height.
NodeParent
Read or set a node's parent node.
OffsetX
Read or set the tree's current horizontal and vertical scroll offsets.
OffsetXY
Read or set the tree's current horizontal and vertical scroll offsets.
OffsetY
Read or set the tree's current horizontal and vertical scroll offsets.
OperationCanceled
Not documented.
OperationCount
Not documented.
PlusBM
Not documented.
RangeX
Not documented.
RangeY
Not documented.
RootNode
Reference to the internal root node which is the anchor of the entire tree node hierarchy.
RootNodeCount
Read or set the number of nodes on the top level.
ScrollBarOptions
Reference to the scroll bar options class.
SearchBuffer
Current input string for incremental search.
Selected
Property to modify or determine the selection state of a node.
SelectedCount
Contains the number of selected nodes.
SelectionBlendFactor
Read or set the current blend factor for the multi selection rectangle and the node selection rectangle.
SelectionCurveRadius
Read or set the current corner radius for node selection rectangles.
SelectionLocked
Not documented.
StateImages
Reference to the images list which is used for the state images.
TextMargin
Read or set the distance of the node caption to its borders.
TopNode
The top node is the node which is currently at the top border of the client area.
TotalCount
Returns the number of nodes in the tree.
TotalInternalDataSize
Keeps the currently accumulated data size for one node.
TreeOptions
Reference to the tree's options.
TreeStates
Property which keeps a set of flags which indicate current operation and states of the tree.
UpdateCount
Not documented.
VerticalAlignment
Used to set a node's vertical button aligment with regard to the entire node rectangle.
VisibleCount
Number of currently visible nodes.
VisiblePath
Property to set or determine a node parent's expand states.
WantTabs
Read or set whether the tree wants to process tabs on its own.


Properties (AutoDoc Folder)

Legend
Legend

Property
public
protected
read only


Topics
TBaseVirtualTree Class
Topics

TBaseVirtualTree Methods
The methods of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Constructors
The constructors of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Destructors
The destructors of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Properties
The properties of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Events
The events of the TBaseVirtualTree class are listed here.


See Also
TBaseVirtualTree.StateImages Property
See Also

CheckImages, Images


See Also
TBaseVirtualTree.TextMargin Property
See Also

Margin


See Also
TBaseVirtualTree.TotalInternalDataSize Property
See Also

Data handling


See Also
TBaseVirtualTree.TreeStates Property
See Also

OnStateChange


See Also
TBaseVirtualTree.ValidateCache Method
See Also

InvalidateCache


See Also
TBaseVirtualTree.VisiblePath Property
See Also

Visible


See Also
TBaseVirtualTree.WriteChunks Method
See Also

WriteNode, SaveToStream


See Also
TBaseVirtualTree.WriteNode Method
See Also

WriteChunks, WriteToStream


TBufferedAnsiString Destructors
TBufferedAnsiString Class | Legend
TBufferedAnsiString Destructors

Destroy
Not documented.


Legend
TBufferedAnsiString Class
Legend

Method
public
Destructor
virtual
Property
read only


TBufferedAnsiString Methods
TBufferedAnsiString Class | Legend
TBufferedAnsiString Methods

Add
Not documented.
AddNewLine
Not documented.


TBufferedAnsiString Properties
TBufferedAnsiString Class | Legend
TBufferedAnsiString Properties

AsString
Not documented.


Topics
TBufferedAnsiString Class
Topics

TBufferedAnsiString Methods
The methods of the TBufferedAnsiString class are listed here.
TBufferedAnsiString Destructors
The destructors of the TBufferedAnsiString class are listed here.
TBufferedAnsiString Properties
The properties of the TBufferedAnsiString class are listed here.


TClipboardFormatList Constructors
TClipboardFormatList Class | Legend
TClipboardFormatList Constructors

Create
Not documented.


Constructors (AutoDoc Folder)

Legend
Legend

Constructor
public


TClipboardFormatList Destructors
TClipboardFormatList Class | Legend
TClipboardFormatList Destructors

Destroy
Not documented.


Legend
TClipboardFormatList Class
Legend

Method
public
Constructor
virtual


TClipboardFormatList Methods
TClipboardFormatList Class | Legend
TClipboardFormatList Methods

Add
Adds the given data to the internal list.
Clear
Not documented.
EnumerateFormats
This is the overview for the EnumerateFormats method overload.
FindFormat
This is the overview for the FindFormat method overload.


Topics
TClipboardFormatList Class
Topics

TClipboardFormatList Methods
The methods of the TClipboardFormatList class are listed here.
TClipboardFormatList Constructors
The constructors of the TClipboardFormatList class are listed here.
TClipboardFormatList Destructors
The destructors of the TClipboardFormatList class are listed here.


TClipboardFormats Constructors
TClipboardFormats Class | Legend
TClipboardFormats Constructors

Create
Constructor of the class.


Legend
TClipboardFormats Class
Legend

Method
public
virtual
Constructor
Property
read only


TClipboardFormats Methods
TClipboardFormats Class | Legend
TClipboardFormats Methods

Add
Adds a new format to the internal list.

Insert
Adds a new format to the internal list.


Methods (AutoDoc Folder)

Legend
Legend

Method
public
virtual


TClipboardFormats Properties
TClipboardFormats Class | Legend
TClipboardFormats Properties

Owner
Not documented.


Topics
TClipboardFormats Class
Topics

TClipboardFormats Methods
The methods of the TClipboardFormats class are listed here.
TClipboardFormats Constructors
The constructors of the TClipboardFormats class are listed here.
TClipboardFormats Properties
The properties of the TClipboardFormats class are listed here.


TCriticalSection Constructors
TCriticalSection Class | Legend
TCriticalSection Constructors

Create
Not documented.


TCriticalSection Destructors
TCriticalSection Class | Legend
TCriticalSection Destructors

Destroy
Not documented.


TCriticalSection Fields
TCriticalSection Class | Legend
TCriticalSection Fields

FSection
Not documented.


Fields (AutoDoc Folder)

Legend
Legend

Data Member
protected


Legend
TCriticalSection Class
Legend

Data Member
protected
Method
public
Constructor
virtual


TCriticalSection Methods
TCriticalSection Class | Legend
TCriticalSection Methods

Enter
Not documented.
Leave
Not documented.


Topics
TCriticalSection Class
Topics

TCriticalSection Fields
The fields of the TCriticalSection class are listed here.
TCriticalSection Methods
The methods of the TCriticalSection class are listed here.
TCriticalSection Constructors
The constructors of the TCriticalSection class are listed here.
TCriticalSection Destructors
The destructors of the TCriticalSection class are listed here.


TCustomVirtualTreeOptions Constructors
TCustomStringTreeOptions Class | Legend
TCustomVirtualTreeOptions Constructors

Create
Constructor of the class.

TCustomStringTreeOptions Class

Create
The constructor of the class.


Legend
TCustomStringTreeOptions Class
Legend

Method
public
virtual
Constructor
Property
protected
read only


TCustomVirtualTreeOptions Methods
TCustomStringTreeOptions Class | Legend
TCustomVirtualTreeOptions Methods

AssignTo
Used to copy this option class to another option collection.

TCustomStringTreeOptions Class

AssignTo
Used to copy the options class.


TCustomVirtualTreeOptions Properties
TCustomStringTreeOptions Class | Legend
TCustomVirtualTreeOptions Properties

AnimationOptions
Options related to animations.
AutoOptions
Options related to automatic actions.
ExportMode
Not documented.
MiscOptions
Options not related to any other category.
Owner
Owner tree to which the property class belongs.
PaintOptions
Options related to painting.
SelectionOptions
Options related to the way nodes can be selected.

TCustomStringTreeOptions Class

StringOptions
The new options introduced by the class.


Properties (AutoDoc Folder)

Legend
Legend

Property
protected
public
read only


Topics
TCustomStringTreeOptions Class
Topics

TCustomVirtualTreeOptions Methods
The methods of the TCustomVirtualTreeOptions class are listed here.
TCustomVirtualTreeOptions Constructors
The constructors of the TCustomVirtualTreeOptions class are listed here.
TCustomVirtualTreeOptions Properties
The properties of the TCustomVirtualTreeOptions class are listed here.

TCustomStringTreeOptions Class

TCustomStringTreeOptions Methods
The methods of the TCustomStringTreeOptions class are listed here.
TCustomStringTreeOptions Constructors
The constructors of the TCustomStringTreeOptions class are listed here.
TCustomStringTreeOptions Properties
The properties of the TCustomStringTreeOptions class are listed here.


TBaseVirtualTree Constructors
TCustomVirtualDrawTree Class | Legend
TBaseVirtualTree Constructors

Create
Constructor of the control


TBaseVirtualTree Destructors
TCustomVirtualDrawTree Class | Legend
TBaseVirtualTree Destructors

Destroy
Destructor of the control.


TBaseVirtualTree Events
TCustomVirtualDrawTree Class | Legend
TBaseVirtualTree Events

OnAddToSelection
Not documented.
OnAdvancedHeaderDraw
Header paint support event.
OnAfterAutoFitColumn
Not documented.
OnAfterAutoFitColumns
Not documented.
OnAfterCellPaint
Paint support event.
OnAfterColumnExport
Not documented.
OnAfterColumnWidthTracking
Not documented.
OnAfterGetMaxColumnWidth
Not documented.
OnAfterHeaderExport
Not documented.
OnAfterHeaderHeightTracking
Not documented.
OnAfterItemErase
Paint support event.
OnAfterItemPaint
Paint support event.
OnAfterNodeExport
Not documented.
OnAfterPaint
Paint support event.
OnAfterTreeExport
Not documented.
OnBeforeAutoFitColumn
Not documented.
OnBeforeAutoFitColumns
Not documented.
OnBeforeCellPaint
Paint support event.
OnBeforeColumnExport
Not documented.
OnBeforeColumnWidthTracking
Not documented.
OnBeforeDrawTreeLine
Not documented.
OnBeforeGetMaxColumnWidth
Not documented.
OnBeforeHeaderExport
Not documented.
OnBeforeHeaderHeightTracking
Not documented.
OnBeforeItemErase
Paint support event.
OnBeforeItemPaint
Paint support event.
OnBeforeNodeExport
Not documented.
OnBeforePaint
Paint support event.
OnBeforeTreeExport
Not documented.
OnCanSplitterResizeColumn
Not documented.
OnCanSplitterResizeHeader
Not documented.
OnCanSplitterResizeNode
Not documented.
OnChange
Navigation support event.
OnChecked
Check support event.
OnChecking
Check support event.
OnCollapsed
Miscellaneous event.
OnCollapsing
Miscellaneous event.
OnColumnClick
Header and column support event.
OnColumnDblClick
Header and column support event.
OnColumnExport
Not documented.
OnColumnResize
Header and column support routine.
OnColumnWidthDblClickResize
Not documented.
OnColumnWidthTracking
Not documented.
OnCompareNodes
Sort and search support event.
OnCreateDataObject
Drag'n drop support event.
OnCreateDragManager
Drag'n drop support event.
OnCreateEditor
Editing support event.
OnDragAllowed
Drag'n drop support event.
OnDragDrop
Drag'n drop support event.
OnDragOver
Drag'n drop support event.
OnEditCancelled
Editing support event.
OnEdited
Editing support event.
OnEditing
Editing support event.
OnEndOperation
Not documented.
OnExpanded
Misscellaneous event.
OnExpanding
Miscellaneous event.
OnFocusChanged
Navigation support event.
OnFocusChanging
Navigation support event.
OnFreeNode
Data management node.
OnGetCellIsEmpty
Triggered when the tree control needs to know whether a given column is empty.
OnGetCursor
Miscellaneous event.
OnGetHeaderCursor
Header and column support event.
OnGetHelpContext
Miscellaneous event.
OnGetImageIndex
Display management event.
OnGetImageIndexEx
Not documented.
OnGetImageText
Not documented.
OnGetLineStyle
Display management event.
OnGetNodeDataSize
Data management event.
OnGetPopupMenu
Miscellaneous event.
OnGetUserClipboardFormats
Drag'n drop and clipboard support event.
OnHeaderClick
Header & column support event.
OnHeaderDblClick
Header & column support event.
OnHeaderDragged
Header & column support event.
OnHeaderDraggedOut
Header & column support event.
OnHeaderDragging
Header & column support event.
OnHeaderDraw
Header & column support event.
OnHeaderDrawQueryElements
Header & column support event.
OnHeaderHeightDblClickResize
Not documented.
OnHeaderHeightTracking
Not documented.
OnHeaderMouseDown
Header & column support event.
OnHeaderMouseMove
Header & column support event.
OnHeaderMouseUp
Header & column support event.
OnHotChange
Navigation support event.
OnIncrementalSearch
Miscellaneous event.
OnInitChildren
Node management event.
OnInitNode
Node management event.
OnKeyAction
Miscellaneous event.
OnLoadNode
Streaming support event.
OnLoadTree
Not documented.
OnMeasureItem
Miscellaneous event.
OnNodeClick
Not documented.
OnNodeCopied
Miscellaneous event.
OnNodeCopying
Miscellaneous event.
OnNodeDblClick
Not documented.
OnNodeExport
Not documented.
OnNodeHeightDblClickResize
Not documented.
OnNodeHeightTracking
Not documented.
OnNodeMoved
Miscellaneous event.
OnNodeMoving
Miscellaneous event.
OnPaintBackground
Paint support event.
OnRemoveFromSelection
Not documented.
OnRenderOLEData
Drag'n drop and clipboard support event.
OnResetNode
Node management event.
OnSaveNode
Streaming support event.
OnSaveTree
Not documented.
OnScroll
Miscellaneous event.
OnShowScrollbar
Not documented.
OnStartOperation
Not documented.
OnStateChange
Miscellaneous event.
OnStructureChange
Miscellaneous event.
OnUpdating
Miscellaneous event.

TCustomVirtualDrawTree Class

OnDrawHint
Triggered when a node hint or tooltip must be drawn.
OnDrawNode
Triggered when a node must be drawn.
OnGetCellContentMargin
Not documented.
OnGetHintSize
Triggered when a node hint or tooltip is about to show.
OnGetNodeWidth
Triggered when a node is about to be drawn.


Legend
TCustomVirtualDrawTree Class
Legend

Method
public
virtual
protected
Constructor
Property
read only
Event


TBaseVirtualTree Methods
TCustomVirtualDrawTree Class | Legend
TBaseVirtualTree Methods

AbsoluteIndex
Reads the overall index of a node.
AddChild
Creates and adds a new child node to given node.
AddFromStream
Adds the content from the given stream to the given node.
AddToSelection
This is the overview for the AddToSelection method overload.
AdjustImageBorder
Depending on the width of the image list as well as the given bidi mode R must be adjusted.
AdjustPaintCellRect
Used in descentants to modify the clip rectangle of the current column while painting a certain node.
AdjustPanningCursor
Loads the proper cursor which indicates into which direction scrolling is done.
AdviseChangeEvent
Used to register a delayed change event.
AllocateInternalDataArea
Registration method to allocate tree internal data per node.
Animate
Support method for animated actions in the tree view.
Assign
Used to copy properties from another Virtual Treeview.
BeginDrag
Starts an OLE drag'n drop operation.
BeginSynch
Enters the tree into a special synchronized mode.
BeginUpdate
Locks the tree view to perform several update operations.
CalculateSelectionRect
Support method for draw selection.
CanAutoScroll
Determines whether the tree can currently auto scroll its window.
CancelCutOrCopy
Canceles any pending cut or copy clipboard operation.
CancelEditNode
Cancel the current edit operation, if there is any.
CancelOperation
Not documented.
CanEdit
Determines whether a node can be edited or not.
CanFocus
Support method to determine whether the tree window can receive the input focus.
CanShowDragImage
Determines whether a drag image should be shown.
CanSplitterResizeNode
Not documented.
Change
Central method called when a node's selection state changes.
ChangeScale
Helper method called by the VCL when control resizing is due.
CheckedNodes
Not documented.
CheckParentCheckState
Helper method for recursive check state changes.
ChildNodes
Not documented.
Clear
Clears the tree and removes all nodes.
ClearChecked
Not documented.
ClearSelection
Removes all nodes from the current selection.
ClearTempCache
Helper method to clear the internal temporary node cache.
ColumnIsEmpty
Used to determine if a cell is considered as being empty.
ComputeRTLOffset
Not documented.
CopyTo
This is the overview for the CopyTo method overload.
CopyToClipBoard
Copies all currently selected nodes to the clipboard.
CountLevelDifference
Determines the level difference of two nodes.
CountVisibleChildren
Determines the number of visible child nodes of the given node.
CreateParams
Prepares the creation of the controls window handle.
CreateWnd
Initializes data, which depends on the window handle.
CutCopyNodes
Not documented.
CutToClipBoard
Copies the currently selected nodes to the clipboard and removes them once a consumer has taken the data.
DefineProperties
Helper method to customize loading and saving persistent tree data.
DeleteChildren
Removes all child nodes from the given node.
DeleteNode
Removes the given node from the tree.
DeleteSelectedNodes
Removes all currently selected nodes form the tree.
DetermineDropMode
Not documented.
DetermineHiddenChildrenFlag
Determines whether all children of a given node are hidden.
DetermineHiddenChildrenFlagAllNodes
Determines whether all children of all nodes are hidden.
DetermineHitPositionLTR
Determines the hit position within a node with left-to-right and right-to-left orientation.
DetermineHitPositionRTL
Determines the hit position within a node with left-to-right and right-to-left orientation.
DetermineLineImageAndSelectLevel
Not documented.
DetermineNextCheckState
Not documented.
DetermineScrollDirections
Not documented.
DoAdvancedHeaderDraw
Not documented.
DoAfterCellPaint
Not documented.
DoAfterItemErase
Not documented.
DoAfterItemPaint
Not documented.
DoAfterPaint
Not documented.
DoAutoScroll
Enables or disables the auto scroll timer.
DoBeforeCellPaint
Not documented.
DoBeforeDrag
Not documented.
DoBeforeDrawLineImage
Not documented.
DoBeforeItemErase
Not documented.
DoBeforeItemPaint
Not documented.
DoBeforePaint
Not documented.
DoCancelEdit
Called when the tree should stop editing without accepting changed values.
DoCanEdit
Not documented.
DoCanSplitterResizeNode
Not documented.
DoChange
Not documented.
DoCheckClick
Not documented.
DoChecked
Not documented.
DoChecking
Not documented.
DoCollapsed
Not documented.
DoCollapsing
Not documented.
DoColumnClick
Not documented.
DoColumnDblClick
Not documented.
DoColumnResize
Not documented.
DoCompare
Not documented.
DoCreateDataObject
Not documented.
DoCreateDragManager
Not documented.
DoCreateEditor
Not documented.
DoDragDrop
Not documented.
DoDragExpand
Not documented.
DoDragging
Internal method which handles drag' drop.
DoDragOver
Not documented.
DoEdit
Initiates editing of the currently set focused column and edit node.
DoEndDrag
Not documented.
DoEndEdit
Stops the current edit operation and takes over the new content.
DoEndOperation
Not documented.
DoExpanded
Not documented.
DoExpanding
Not documented.
DoFocusChange
Not documented.
DoFocusChanging
Not documented.
DoFocusNode
Internal method to set the focused node.
DoFreeNode
Not documented.
DoGetAnimationType
Determines the type of animation to be used.
DoGetCellContentMargin
Not documented.
DoGetCursor
Not documented.
DoGetHeaderCursor
Not documented.
DoGetImageIndex
Not documented.
DoGetImageText
Not documented.
DoGetLineStyle
Not documented.
DoGetNodeHint
Not documented.
DoGetNodeTooltip
Not documented.
DoGetNodeWidth
Overridable method which always retuns 0.
DoGetPopupMenu
Overridable method which triggers the OnGetPopup event.
DoGetUserClipboardFormats
Not documented.
DoHeaderClick
Not documented.
DoHeaderDblClick
Not documented.
DoHeaderDragged
Not documented.
DoHeaderDraggedOut
Not documented.
DoHeaderDragging
Not documented.
DoHeaderDraw
Not documented.
DoHeaderDrawQueryElements
Not documented.
DoHeaderMouseDown
Not documented.
DoHeaderMouseMove
Not documented.
DoHeaderMouseUp
Not documented.
DoHotChange
Not documented.
DoIncrementalSearch
Not documented.
DoInitChildren
Not documented.
DoInitNode
Not documented.
DoKeyAction
Not documented.
DoLoadUserData
Not documented.
DoMeasureItem
Not documented.
DoNodeClick
Not documented.
DoNodeCopied
Not documented.
DoNodeCopying
Not documented.
DoNodeDblClick
Not documented.
DoNodeHeightDblClickResize
Not documented.
DoNodeHeightTracking
Not documented.
DoNodeMoved
Not documented.
DoNodeMoving
Not documented.
DoPaintBackground
Not documented.
DoPaintDropMark
Overridable method which draws the small line on top of a nodes image depending on the current drop state.
DoPaintNode
Overridable method which does nothing.
DoPopupMenu
Overridable method which shows the popup menu for the given node.
DoRenderOLEData
Not documented.
DoReset
Not documented.
DoSaveUserData
Not documented.
DoScroll
Overridable method which triggers the OnScroll event.
DoSetOffsetXY
Internal core routine to set the tree's scroll position.
DoShowScrollbar
Not documented.
DoStartDrag
Not documented.
DoStartOperation
Not documented.
DoStateChange
Not documented.
DoStructureChange
Not documented.
DoTimerScroll
Callback method which is triggered whenever the scroll timer fires.
DoUpdating
Not documented.
DoValidateCache
Not documented.
DragAndDrop
Not documented.
DragCanceled
Called by the VCL when a drag'n drop operation was canceled by the user.
DragDrop
Helper method, which is used when a drag operation is finished.
DragEnter
Not documented.
DragFinished
Called when a drag operation is finished (accepted or cancelled).
Dragging
Returns true if a drag'n drop operation is in progress.
DragLeave
Not documented.
DragOver
Not documented.
DrawDottedHLine
Not documented.
DrawDottedVLine
Not documented.
EditNode
Starts editing the given node if allowed to.
EndEditNode
Stops node editing if it was started before.
EndOperation
Not documented.
EndSynch
Counterpart to BeginSynch.
EndUpdate
Resets the update lock set by BeginUpdate.
ExecuteAction
Not documented.
FindNodeInSelection
Helper method to find the given node in the current selection.
FinishChunkHeader
Not documented.
FinishCutOrCopy
Stops any pending cut or copy clipboard operation.
FlushClipboard
Renders all pending clipboard data.
FontChanged
Not documented.
FullCollapse
Collapses all nodes in the tree.
FullExpand
Expands all nodes in the tree.
GetBorderDimensions
Not documented.
GetCheckImage
Not documented.
GetCheckImageListFor
Not documented.
GetColumnClass
Returns the class to be used to manage columns in the tree.
GetControlsAlignment
Not documented.
GetDisplayRect
Not documented.
GetEffectivelyFiltered
Not documented.
GetEffectivelyVisible
Not documented.
GetFirst
Group of node navigation functions.
GetFirstChecked
Not documented.
GetFirstChild
Group of node navigation functions.
GetFirstCutCopy
Group of node navigation functions.
GetFirstInitialized
Group of node navigation functions.
GetFirstLeaf
Not documented.
GetFirstLevel
Not documented.
GetFirstNoInit
Group of node navigation functions.
GetFirstSelected
Group of node navigation functions.
GetFirstVisible
Group of node navigation functions.
GetFirstVisibleChild
Not documented.
GetFirstVisibleChildNoInit
Not documented.
GetFirstVisibleNoInit
Group of node navigation functions.
GetHeaderClass
Returns the header class to be used by the tree.
GetHintWindowClass
Not documented.
GetHitTestInfoAt
Returns information about the node at the given position.
GetImageIndex
Not documented.
GetLast
Not documented.
GetLastChild
GetLastChildNoInit
GetLastInitialized
Not documented.
GetLastNoInit
Not documented.
GetLastVisible
Not documented.
GetLastVisibleChild
Not documented.
GetLastVisibleChildNoInit
Not documented.
GetLastVisibleNoInit
Not documented.
GetMaxColumnWidth
Not documented.
GetMaxRightExtend
Determines the maximum with of the currently visible part of the tree.
GetNativeClipboardFormats
Used to let descendants and the application add their own supported clipboard formats.
GetNext
Not documented.
GetNextChecked
This is the overview for the GetNextChecked method overload.
GetNextCutCopy
Not documented.
GetNextInitialized
Not documented.
GetNextLeaf
Not documented.
GetNextLevel
Not documented.
GetNextNoInit
Not documented.
GetNextSelected
Not documented.
GetNextSibling
GetNextVisible
Not documented.
GetNextVisibleNoInit
Not documented.
GetNextVisibleSibling
Not documented.
GetNextVisibleSiblingNoInit
Not documented.
GetNodeAt
This is the overview for the GetNodeAt method overload.
GetNodeData
Returns the address of the user data area of the given node.
GetNodeLevel
Returns the indentation level of the given node.
GetOperationCanceled
Not documented.
GetOptionsClass
Customization helper to determine which options class the tree should use.
GetPrevious
Not documented.
GetPreviousChecked
Not documented.
GetPreviousCutCopy
Not documented.
GetPreviousInitialized
Not documented.
GetPreviousLeaf
Not documented.
GetPreviousLevel
Not documented.
GetPreviousNoInit
Not documented.
GetPreviousSelected
Not documented.
GetPreviousSibling
GetPreviousVisible
Not documented.
GetPreviousVisibleNoInit
Not documented.
GetPreviousVisibleSibling
Not documented.
GetPreviousVisibleSiblingNoInit
Not documented.
GetSortedCutCopySet
Returns a sorted list of nodes, which are marked for s cut or copy clipboard operation.
GetSortedSelection
Returns a sorted list of all currently selected nodes.
GetTextInfo
Not documented.
GetTreeFromDataObject
OLE drag'n drop and clipboard support method.
GetTreeRect
Returns the size of the virtual tree image.
GetVisibleParent
Not documented.
HandleHotTrack
Not documented.
HandleIncrementalSearch
Not documented.
HandleMouseDblClick
Not documented.
HandleMouseDown
Not documented.
HandleMouseUp
Not documented.
HasAsParent
Determines if the given node has got another node as one of its parents.
HasImage
Not documented.
HasPopupMenu
Determines whether there is a pop up menu assigned to the tree.
InitChildren
Not documented.
InitializedNodes
Not documented.
InitNode
Not documented.
InsertNode
Inserts a new node and returns it to the caller.
InternalAddFromStream
Not documented.
InternalAddToSelection
This is the overview for the InternalAddToSelection method overload.
InternalCacheNode
Not documented.
InternalClearSelection
Not documented.
InternalConnectNode
Not documented.
InternalData
Returns the address of the internal data for a tree class.
InternalDisconnectNode
Not documented.
InternalRemoveFromSelection
Not documented.
InvalidateCache
Empties the internal node cache and marks it as invalid.
InvalidateChildren
Invalidates all children of the given node.
InvalidateColumn
Invalidates the client area part of a column.
InvalidateNode
Invalidates the given node.
InvalidateToBottom
Invalidates the client area starting with the top position of the given node.
InvertSelection
Inverts the current selection.
IsEditing
Tells the caller whether the tree is currently in edit mode.
IsMouseSelecting
Tell the caller whether the tree is currently in draw selection mode.
IterateSubtree
Iterator method to go through all nodes of a given sub tree.
LeafNodes
Not documented.
LevelNodes
Not documented.
Loaded
Not documented.
LoadFromFile
Loads previously streamed out tree data back in again.
LoadFromStream
Loads previously streamed out tree data back in again.
MainColumnChanged
Not documented.
MarkCutCopyNodes
Not documented.
MeasureItemHeight
Not documented.
MouseMove
Not documented.
MoveTo
This is the overview for the MoveTo method overload.
Nodes
Not documented.
NoInitNodes
Not documented.
Notification
Not documented.
OriginalWMNCPaint
Not documented.
Paint
TControl's Paint method used here to display the tree.
PaintCheckImage
Not documented.
PaintImage
Not documented.
PaintNodeButton
Not documented.
PaintSelectionRectangle
Not documented.
PaintTree
Main paint routine for the tree image.
PaintTreeLines
Not documented.
PanningWindowProc
Not documented.
PasteFromClipboard
Inserts the content of the clipboard into the tree.
PrepareCell
This method is called immediately before a cell's content is drawn und is responsible to paint selection colors etc.
PrepareDragImage
Not documented.
Print
Not documented.
ProcessDrop
Helper method to ease OLE drag'n drop operations.
ProcessOLEData
Takes serialized OLE tree data and reconstructs the former structure.
ReadChunk
Not documented.
ReadNode
Not documented.
RedirectFontChangeEvent
Not documented.
ReinitChildren
Forces all child nodes of Node to be reinitialized.
ReinitNode
Forces a reinitialization of the given node.
RemoveFromSelection
Removes the given node from the current selection.
RenderOLEData
Renders pending OLE data.
RepaintNode
Causes the treeview to repaint the given node.
ResetNode
Resets the given node to uninitialized.
ResetRangeAnchor
Not documented.
RestoreFontChangeEvent
Not documented.
SaveToFile
Saves the entire content of the tree into a file or stream.
SaveToStream
Saves the entire content of the tree into a file or stream.
ScrollIntoView
This is the overview for the ScrollIntoView method overload.
SelectAll
Selects all nodes in the tree.
SelectedNodes
Not documented.
SelectNodes
Selects a range of nodes.
SetFocusedNodeAndColumn
Not documented.
SkipNode
Not documented.
Sort
Sorts the given node.
SortTree
Sorts the entire tree view.
StartOperation
Not documented.
StartWheelPanning
Not documented.
StopWheelPanning
Not documented.
StructureChange
Not documented.
SuggestDropEffect
Not documented.
ToggleNode
Changes a node's expand state to the opposite state.
ToggleSelection
Toggles the selection state of a range of nodes.
UnselectNodes
Deselects a range of nodes.
UpdateAction
Not documented.
UpdateColumnCheckState
Not documented.
UpdateDesigner
Not documented.
UpdateEditBounds
Not documented.
UpdateHeaderRect
Not documented.
UpdateHorizontalRange
Not documented.
UpdateHorizontalScrollBar
Applies changes to the horizontal and vertical scrollbars.
UpdateRanges
Not documented.
UpdateScrollBars
Applies changes to the horizontal and vertical scrollbars.
UpdateVerticalRange
Not documented.
UpdateVerticalScrollBar
Applies changes to the horizontal and vertical scrollbars.
UpdateWindowAndDragImage
Not documented.
UseRightToLeftReading
Helper method for right-to-left layout.
ValidateCache
Initiates the validation of the internal node cache.
ValidateChildren
Validates all children of a given node.
ValidateNode
Validates a given node.
ValidateNodeDataSize
Helper method for node data size initalization.
VisibleChildNodes
Not documented.
VisibleChildNoInitNodes
Not documented.
VisibleNodes
Not documented.
VisibleNoInitNodes
Not documented.
WndProc
Redirected window procedure to do some special processing.
WriteChunks
Writes the core chunks for the given node to the given stream.
WriteNode
Writes the cover (envelop) chunk for the given node to the given stream.

TCustomVirtualDrawTree Class

DoDrawHint
Overridable method which triggers OnDrawHint.
DoGetCellContentMargin
Not documented.
DoGetHintSize
Overridable method which triggers OnGetHintSize.
DoGetNodeWidth
Overridable method which triggers OnGetNodeWidth.
DoPaintNode
Overridable method which triggers OnPaintNode.


TBaseVirtualTree Properties
TCustomVirtualDrawTree Class | Legend
TBaseVirtualTree Properties

Accessible
Not documented.
AccessibleItem
Not documented.
AccessibleName
Not documented.
Alignment
Determines the horizontal alignment of text if no columns are defined.
AnimationDuration
Determines the maximum duration the tree can use to play an animation.
AutoExpandDelay
Time delay after which a node gets expanded if it is the current drop target.
AutoScrollDelay
Time which determines when auto scrolling should start.
AutoScrollInterval
Time interval between scroll events when doing auto scroll.
Background
Holds a background image for the tree.
BackgroundOffsetX
Horizontal offset of the background image.
BackgroundOffsetY
Vertical offset of the background image.
BorderStyle
Same as TForm.BorderStyle.
BottomNode
Not documented.
BottomSpace
Not documented.
ButtonFillMode
Determines how to fill the background of the node buttons.
ButtonStyle
Determines the look of node buttons.
ChangeDelay
Time which determines when the OnChange event should be triggered after the actual change event.
CheckedCount
Not documented.
CheckImageKind
Determines which images should be used for checkboxes and radio buttons.
CheckImages
Not documented.
CheckState
Read or set the check state of a node.
CheckType
Read or set the check type of a node.
ChildCount
Read or set the number of child nodes of a node.
ChildrenInitialized
Read whether a node's child count has been initialized already.
ClipboardFormats
Special class to keep a list of clipboard format descriptions.
Colors
A collection of colors used in the tree.
CustomCheckImages
Assign your own image list to get the check images you like most.
CutCopyCount
Not documented.
DefaultNodeHeight
Read or set the height new nodes get as initial value.
DefaultPasteMode
Read or set the value, which determines where to add pasted nodes to.
DragHeight
Read or set the vertical limit of the internal drag image.
DragImage
Holds the instance of the internal drag image.
DragImageKind
Read or set what should be shown in the drag image.
DragManager
Holds the reference to the internal drag manager.
DragOperations
Read or set which drag operations may be allowed in the tree.
DragSelection
Keeps a temporary list of nodes during drag'n drop.
DragType
Read or set which subsystem should be used for dragging.
DragWidth
Read or set the horizontal limit of the internal drag image.
DrawSelectionMode
Read or set how multiselection with the mouse is to be visualized.
DropTargetNode
Contains the current drop target node if the tree is currently the target of a drag'n drop operation.
EditColumn
Not documented.
EditDelay
Read or set the maximum time between two single clicks on the same node, which should start node editing.
EditLink
Keeps a reference to the internal edit link during a node edit operation.
EffectiveOffsetX
Not documented.
EmptyListMessage
Not documented.
Expanded
Read or set the expanded state of a particular node.
FocusedColumn
Read or set the currently focused collumn.
FocusedNode
Read or set the currently focused node.
Font
Same as TWinControl.Font.
FullyVisible
Read or set whether a node is fully visible or not.
HasChildren
Read or set whether a node has got children.
Header
Provides access to the header instance.
HeaderRect
Returns the non-client-area rectangle used for the header.
HintAnimation
Read or set the current hint animation type.
HintData
Not documented.
HintMode
Read or set what type of hint you want for the tree view.
HotCursor
Read or set which cursor should be used for hot nodes.
HotMinusBM
Not documented.
HotNode
Read, which node is currently the hot node.
HotPlusBM
Not documented.
Images
Read or set the tree's normal image list.
IncrementalSearch
Read or set the current incremental search mode.
IncrementalSearchDirection
Read or set the direction to be used for incremental search.
IncrementalSearchStart
Read or set where to start incremental search.
IncrementalSearchTimeout
Read or set the maximum time, which is allowed between two consecutive key strokes so that incremental search stays active.
Indent
Read or set the indentation amount for node levels.
IsDisabled
Read or set the enabled state of the given node.
IsEffectivelyFiltered
Not documented.
IsEffectivelyVisible
Not documented.
IsFiltered
Not documented.
IsVisible
Read or set the visibility state of the given node.
LastClickPos
Used for retained drag start and wheel mouse scrolling.
LastDropMode
Read how the last drop operation finished.
LastHintRect
Not documented.
LineMode
Read or set the mode of the tree lines.
LineStyle
Read or set the mode of the tree lines.
Margin
Read or set the tree's node margin.
MinusBM
Not documented.
MultiLine
Read or toggle the multiline feature for a given node.
NodeAlignment
Read or set the node alignment value.
NodeDataSize
Read or set the extra data size for each node.
NodeHeight
Read or set a node's height.
NodeParent
Read or set a node's parent node.
OffsetX
Read or set the tree's current horizontal and vertical scroll offsets.
OffsetXY
Read or set the tree's current horizontal and vertical scroll offsets.
OffsetY
Read or set the tree's current horizontal and vertical scroll offsets.
OperationCanceled
Not documented.
OperationCount
Not documented.
PlusBM
Not documented.
RangeX
Not documented.
RangeY
Not documented.
RootNode
Reference to the internal root node which is the anchor of the entire tree node hierarchy.
RootNodeCount
Read or set the number of nodes on the top level.
ScrollBarOptions
Reference to the scroll bar options class.
SearchBuffer
Current input string for incremental search.
Selected
Property to modify or determine the selection state of a node.
SelectedCount
Contains the number of selected nodes.
SelectionBlendFactor
Read or set the current blend factor for the multi selection rectangle and the node selection rectangle.
SelectionCurveRadius
Read or set the current corner radius for node selection rectangles.
SelectionLocked
Not documented.
StateImages
Reference to the images list which is used for the state images.
TextMargin
Read or set the distance of the node caption to its borders.
TopNode
The top node is the node which is currently at the top border of the client area.
TotalCount
Returns the number of nodes in the tree.
TotalInternalDataSize
Keeps the currently accumulated data size for one node.
TreeOptions
Reference to the tree's options.
TreeStates
Property which keeps a set of flags which indicate current operation and states of the tree.
UpdateCount
Not documented.
VerticalAlignment
Used to set a node's vertical button aligment with regard to the entire node rectangle.
VisibleCount
Number of currently visible nodes.
VisiblePath
Property to set or determine a node parent's expand states.
WantTabs
Read or set whether the tree wants to process tabs on its own.


Topics
TCustomVirtualDrawTree Class
Topics

TBaseVirtualTree Methods
The methods of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Constructors
The constructors of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Destructors
The destructors of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Properties
The properties of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Events
The events of the TBaseVirtualTree class are listed here.

TCustomVirtualDrawTree Class

TCustomVirtualDrawTree Methods
The methods of the TCustomVirtualDrawTree class are listed here.
TCustomVirtualDrawTree Events
The events of the TCustomVirtualDrawTree class are listed here.


See Also
TCustomVirtualStringTree.ColumnIsEmpty Method
See Also

toAutoSpanColumns


See Also
TCustomVirtualStringTree.InternalData Method
See Also

Data handling


See Also
TCustomVirtualStringTree.OnGetText Event
See Also

OnPaintText


See Also
TCustomVirtualStringTree.OnNewText Event
See Also

OnCreateEditor, OnEdited


See Also
TCustomVirtualStringTree.OnPaintText Event
See Also

Paint cycles and stages


TBaseVirtualTree Constructors
TCustomVirtualStringTree Class | Legend
TBaseVirtualTree Constructors

Create
Constructor of the control

TCustomVirtualStringTree Class

Create
Constructor of the control


TBaseVirtualTree Destructors
TCustomVirtualStringTree Class | Legend
TBaseVirtualTree Destructors

Destroy
Destructor of the control.


TBaseVirtualTree Events
TCustomVirtualStringTree Class | Legend
TBaseVirtualTree Events

OnAddToSelection
Not documented.
OnAdvancedHeaderDraw
Header paint support event.
OnAfterAutoFitColumn
Not documented.
OnAfterAutoFitColumns
Not documented.
OnAfterCellPaint
Paint support event.
OnAfterColumnExport
Not documented.
OnAfterColumnWidthTracking
Not documented.
OnAfterGetMaxColumnWidth
Not documented.
OnAfterHeaderExport
Not documented.
OnAfterHeaderHeightTracking
Not documented.
OnAfterItemErase
Paint support event.
OnAfterItemPaint
Paint support event.
OnAfterNodeExport
Not documented.
OnAfterPaint
Paint support event.
OnAfterTreeExport
Not documented.
OnBeforeAutoFitColumn
Not documented.
OnBeforeAutoFitColumns
Not documented.
OnBeforeCellPaint
Paint support event.
OnBeforeColumnExport
Not documented.
OnBeforeColumnWidthTracking
Not documented.
OnBeforeDrawTreeLine
Not documented.
OnBeforeGetMaxColumnWidth
Not documented.
OnBeforeHeaderExport
Not documented.
OnBeforeHeaderHeightTracking
Not documented.
OnBeforeItemErase
Paint support event.
OnBeforeItemPaint
Paint support event.
OnBeforeNodeExport
Not documented.
OnBeforePaint
Paint support event.
OnBeforeTreeExport
Not documented.
OnCanSplitterResizeColumn
Not documented.
OnCanSplitterResizeHeader
Not documented.
OnCanSplitterResizeNode
Not documented.
OnChange
Navigation support event.
OnChecked
Check support event.
OnChecking
Check support event.
OnCollapsed
Miscellaneous event.
OnCollapsing
Miscellaneous event.
OnColumnClick
Header and column support event.
OnColumnDblClick
Header and column support event.
OnColumnExport
Not documented.
OnColumnResize
Header and column support routine.
OnColumnWidthDblClickResize
Not documented.
OnColumnWidthTracking
Not documented.
OnCompareNodes
Sort and search support event.
OnCreateDataObject
Drag'n drop support event.
OnCreateDragManager
Drag'n drop support event.
OnCreateEditor
Editing support event.
OnDragAllowed
Drag'n drop support event.
OnDragDrop
Drag'n drop support event.
OnDragOver
Drag'n drop support event.
OnEditCancelled
Editing support event.
OnEdited
Editing support event.
OnEditing
Editing support event.
OnEndOperation
Not documented.
OnExpanded
Misscellaneous event.
OnExpanding
Miscellaneous event.
OnFocusChanged
Navigation support event.
OnFocusChanging
Navigation support event.
OnFreeNode
Data management node.
OnGetCellIsEmpty
Triggered when the tree control needs to know whether a given column is empty.
OnGetCursor
Miscellaneous event.
OnGetHeaderCursor
Header and column support event.
OnGetHelpContext
Miscellaneous event.
OnGetImageIndex
Display management event.
OnGetImageIndexEx
Not documented.
OnGetImageText
Not documented.
OnGetLineStyle
Display management event.
OnGetNodeDataSize
Data management event.
OnGetPopupMenu
Miscellaneous event.
OnGetUserClipboardFormats
Drag'n drop and clipboard support event.
OnHeaderClick
Header & column support event.
OnHeaderDblClick
Header & column support event.
OnHeaderDragged
Header & column support event.
OnHeaderDraggedOut
Header & column support event.
OnHeaderDragging
Header & column support event.
OnHeaderDraw
Header & column support event.
OnHeaderDrawQueryElements
Header & column support event.
OnHeaderHeightDblClickResize
Not documented.
OnHeaderHeightTracking
Not documented.
OnHeaderMouseDown
Header & column support event.
OnHeaderMouseMove
Header & column support event.
OnHeaderMouseUp
Header & column support event.
OnHotChange
Navigation support event.
OnIncrementalSearch
Miscellaneous event.
OnInitChildren
Node management event.
OnInitNode
Node management event.
OnKeyAction
Miscellaneous event.
OnLoadNode
Streaming support event.
OnLoadTree
Not documented.
OnMeasureItem
Miscellaneous event.
OnNodeClick
Not documented.
OnNodeCopied
Miscellaneous event.
OnNodeCopying
Miscellaneous event.
OnNodeDblClick
Not documented.
OnNodeExport
Not documented.
OnNodeHeightDblClickResize
Not documented.
OnNodeHeightTracking
Not documented.
OnNodeMoved
Miscellaneous event.
OnNodeMoving
Miscellaneous event.
OnPaintBackground
Paint support event.
OnRemoveFromSelection
Not documented.
OnRenderOLEData
Drag'n drop and clipboard support event.
OnResetNode
Node management event.
OnSaveNode
Streaming support event.
OnSaveTree
Not documented.
OnScroll
Miscellaneous event.
OnShowScrollbar
Not documented.
OnStartOperation
Not documented.
OnStateChange
Miscellaneous event.
OnStructureChange
Miscellaneous event.
OnUpdating
Miscellaneous event.

TCustomVirtualStringTree Class

OnDrawText
Not documented.
OnGetHint
Virtual string tree event to query for a custom hint text.
OnGetText
Virtual string tree event to query for a node's normal or static text.
OnMeasureTextHeight
Not documented.
OnMeasureTextWidth
Not documented.
OnNewText
Virtual string tree event to pass edited text.
OnPaintText
Event to change text formatting for particular nodes.
OnShortenString
String tree event for custom handling of string abbreviations.


Legend
TCustomVirtualStringTree Class
Legend

Method
public
virtual
protected
Constructor
Property
read only
Event


TBaseVirtualTree Methods
TCustomVirtualStringTree Class | Legend
TBaseVirtualTree Methods

AbsoluteIndex
Reads the overall index of a node.
AddChild
Creates and adds a new child node to given node.
AddFromStream
Adds the content from the given stream to the given node.
AddToSelection
This is the overview for the AddToSelection method overload.
AdjustImageBorder
Depending on the width of the image list as well as the given bidi mode R must be adjusted.
AdjustPaintCellRect
Used in descentants to modify the clip rectangle of the current column while painting a certain node.
AdjustPanningCursor
Loads the proper cursor which indicates into which direction scrolling is done.
AdviseChangeEvent
Used to register a delayed change event.
AllocateInternalDataArea
Registration method to allocate tree internal data per node.
Animate
Support method for animated actions in the tree view.
Assign
Used to copy properties from another Virtual Treeview.
BeginDrag
Starts an OLE drag'n drop operation.
BeginSynch
Enters the tree into a special synchronized mode.
BeginUpdate
Locks the tree view to perform several update operations.
CalculateSelectionRect
Support method for draw selection.
CanAutoScroll
Determines whether the tree can currently auto scroll its window.
CancelCutOrCopy
Canceles any pending cut or copy clipboard operation.
CancelEditNode
Cancel the current edit operation, if there is any.
CancelOperation
Not documented.
CanEdit
Determines whether a node can be edited or not.
CanFocus
Support method to determine whether the tree window can receive the input focus.
CanShowDragImage
Determines whether a drag image should be shown.
CanSplitterResizeNode
Not documented.
Change
Central method called when a node's selection state changes.
ChangeScale
Helper method called by the VCL when control resizing is due.
CheckedNodes
Not documented.
CheckParentCheckState
Helper method for recursive check state changes.
ChildNodes
Not documented.
Clear
Clears the tree and removes all nodes.
ClearChecked
Not documented.
ClearSelection
Removes all nodes from the current selection.
ClearTempCache
Helper method to clear the internal temporary node cache.
ColumnIsEmpty
Used to determine if a cell is considered as being empty.
ComputeRTLOffset
Not documented.
CopyTo
This is the overview for the CopyTo method overload.
CopyToClipBoard
Copies all currently selected nodes to the clipboard.
CountLevelDifference
Determines the level difference of two nodes.
CountVisibleChildren
Determines the number of visible child nodes of the given node.
CreateParams
Prepares the creation of the controls window handle.
CreateWnd
Initializes data, which depends on the window handle.
CutCopyNodes
Not documented.
CutToClipBoard
Copies the currently selected nodes to the clipboard and removes them once a consumer has taken the data.
DefineProperties
Helper method to customize loading and saving persistent tree data.
DeleteChildren
Removes all child nodes from the given node.
DeleteNode
Removes the given node from the tree.
DeleteSelectedNodes
Removes all currently selected nodes form the tree.
DetermineDropMode
Not documented.
DetermineHiddenChildrenFlag
Determines whether all children of a given node are hidden.
DetermineHiddenChildrenFlagAllNodes
Determines whether all children of all nodes are hidden.
DetermineHitPositionLTR
Determines the hit position within a node with left-to-right and right-to-left orientation.
DetermineHitPositionRTL
Determines the hit position within a node with left-to-right and right-to-left orientation.
DetermineLineImageAndSelectLevel
Not documented.
DetermineNextCheckState
Not documented.
DetermineScrollDirections
Not documented.
DoAdvancedHeaderDraw
Not documented.
DoAfterCellPaint
Not documented.
DoAfterItemErase
Not documented.
DoAfterItemPaint
Not documented.
DoAfterPaint
Not documented.
DoAutoScroll
Enables or disables the auto scroll timer.
DoBeforeCellPaint
Not documented.
DoBeforeDrag
Not documented.
DoBeforeDrawLineImage
Not documented.
DoBeforeItemErase
Not documented.
DoBeforeItemPaint
Not documented.
DoBeforePaint
Not documented.
DoCancelEdit
Called when the tree should stop editing without accepting changed values.
DoCanEdit
Not documented.
DoCanSplitterResizeNode
Not documented.
DoChange
Not documented.
DoCheckClick
Not documented.
DoChecked
Not documented.
DoChecking
Not documented.
DoCollapsed
Not documented.
DoCollapsing
Not documented.
DoColumnClick
Not documented.
DoColumnDblClick
Not documented.
DoColumnResize
Not documented.
DoCompare
Not documented.
DoCreateDataObject
Not documented.
DoCreateDragManager
Not documented.
DoCreateEditor
Not documented.
DoDragDrop
Not documented.
DoDragExpand
Not documented.
DoDragging
Internal method which handles drag' drop.
DoDragOver
Not documented.
DoEdit
Initiates editing of the currently set focused column and edit node.
DoEndDrag
Not documented.
DoEndEdit
Stops the current edit operation and takes over the new content.
DoEndOperation
Not documented.
DoExpanded
Not documented.
DoExpanding
Not documented.
DoFocusChange
Not documented.
DoFocusChanging
Not documented.
DoFocusNode
Internal method to set the focused node.
DoFreeNode
Not documented.
DoGetAnimationType
Determines the type of animation to be used.
DoGetCellContentMargin
Not documented.
DoGetCursor
Not documented.
DoGetHeaderCursor
Not documented.
DoGetImageIndex
Not documented.
DoGetImageText
Not documented.
DoGetLineStyle
Not documented.
DoGetNodeHint
Not documented.
DoGetNodeTooltip
Not documented.
DoGetNodeWidth
Overridable method which always retuns 0.
DoGetPopupMenu
Overridable method which triggers the OnGetPopup event.
DoGetUserClipboardFormats
Not documented.
DoHeaderClick
Not documented.
DoHeaderDblClick
Not documented.
DoHeaderDragged
Not documented.
DoHeaderDraggedOut
Not documented.
DoHeaderDragging
Not documented.
DoHeaderDraw
Not documented.
DoHeaderDrawQueryElements
Not documented.
DoHeaderMouseDown
Not documented.
DoHeaderMouseMove
Not documented.
DoHeaderMouseUp
Not documented.
DoHotChange
Not documented.
DoIncrementalSearch
Not documented.
DoInitChildren
Not documented.
DoInitNode
Not documented.
DoKeyAction
Not documented.
DoLoadUserData
Not documented.
DoMeasureItem
Not documented.
DoNodeClick
Not documented.
DoNodeCopied
Not documented.
DoNodeCopying
Not documented.
DoNodeDblClick
Not documented.
DoNodeHeightDblClickResize
Not documented.
DoNodeHeightTracking
Not documented.
DoNodeMoved
Not documented.
DoNodeMoving
Not documented.
DoPaintBackground
Not documented.
DoPaintDropMark
Overridable method which draws the small line on top of a nodes image depending on the current drop state.
DoPaintNode
Overridable method which does nothing.
DoPopupMenu
Overridable method which shows the popup menu for the given node.
DoRenderOLEData
Not documented.
DoReset
Not documented.
DoSaveUserData
Not documented.
DoScroll
Overridable method which triggers the OnScroll event.
DoSetOffsetXY
Internal core routine to set the tree's scroll position.
DoShowScrollbar
Not documented.
DoStartDrag
Not documented.
DoStartOperation
Not documented.
DoStateChange
Not documented.
DoStructureChange
Not documented.
DoTimerScroll
Callback method which is triggered whenever the scroll timer fires.
DoUpdating
Not documented.
DoValidateCache
Not documented.
DragAndDrop
Not documented.
DragCanceled
Called by the VCL when a drag'n drop operation was canceled by the user.
DragDrop
Helper method, which is used when a drag operation is finished.
DragEnter
Not documented.
DragFinished
Called when a drag operation is finished (accepted or cancelled).
Dragging
Returns true if a drag'n drop operation is in progress.
DragLeave
Not documented.
DragOver
Not documented.
DrawDottedHLine
Not documented.
DrawDottedVLine
Not documented.
EditNode
Starts editing the given node if allowed to.
EndEditNode
Stops node editing if it was started before.
EndOperation
Not documented.
EndSynch
Counterpart to BeginSynch.
EndUpdate
Resets the update lock set by BeginUpdate.
ExecuteAction
Not documented.
FindNodeInSelection
Helper method to find the given node in the current selection.
FinishChunkHeader
Not documented.
FinishCutOrCopy
Stops any pending cut or copy clipboard operation.
FlushClipboard
Renders all pending clipboard data.
FontChanged
Not documented.
FullCollapse
Collapses all nodes in the tree.
FullExpand
Expands all nodes in the tree.
GetBorderDimensions
Not documented.
GetCheckImage
Not documented.
GetCheckImageListFor
Not documented.
GetColumnClass
Returns the class to be used to manage columns in the tree.
GetControlsAlignment
Not documented.
GetDisplayRect
Not documented.
GetEffectivelyFiltered
Not documented.
GetEffectivelyVisible
Not documented.
GetFirst
Group of node navigation functions.
GetFirstChecked
Not documented.
GetFirstChild
Group of node navigation functions.
GetFirstCutCopy
Group of node navigation functions.
GetFirstInitialized
Group of node navigation functions.
GetFirstLeaf
Not documented.
GetFirstLevel
Not documented.
GetFirstNoInit
Group of node navigation functions.
GetFirstSelected
Group of node navigation functions.
GetFirstVisible
Group of node navigation functions.
GetFirstVisibleChild
Not documented.
GetFirstVisibleChildNoInit
Not documented.
GetFirstVisibleNoInit
Group of node navigation functions.
GetHeaderClass
Returns the header class to be used by the tree.
GetHintWindowClass
Not documented.
GetHitTestInfoAt
Returns information about the node at the given position.
GetImageIndex
Not documented.
GetLast
Not documented.
GetLastChild
GetLastChildNoInit
GetLastInitialized
Not documented.
GetLastNoInit
Not documented.
GetLastVisible
Not documented.
GetLastVisibleChild
Not documented.
GetLastVisibleChildNoInit
Not documented.
GetLastVisibleNoInit
Not documented.
GetMaxColumnWidth
Not documented.
GetMaxRightExtend
Determines the maximum with of the currently visible part of the tree.
GetNativeClipboardFormats
Used to let descendants and the application add their own supported clipboard formats.
GetNext
Not documented.
GetNextChecked
This is the overview for the GetNextChecked method overload.
GetNextCutCopy
Not documented.
GetNextInitialized
Not documented.
GetNextLeaf
Not documented.
GetNextLevel
Not documented.
GetNextNoInit
Not documented.
GetNextSelected
Not documented.
GetNextSibling
GetNextVisible
Not documented.
GetNextVisibleNoInit
Not documented.
GetNextVisibleSibling
Not documented.
GetNextVisibleSiblingNoInit
Not documented.
GetNodeAt
This is the overview for the GetNodeAt method overload.
GetNodeData
Returns the address of the user data area of the given node.
GetNodeLevel
Returns the indentation level of the given node.
GetOperationCanceled
Not documented.
GetOptionsClass
Customization helper to determine which options class the tree should use.
GetPrevious
Not documented.
GetPreviousChecked
Not documented.
GetPreviousCutCopy
Not documented.
GetPreviousInitialized
Not documented.
GetPreviousLeaf
Not documented.
GetPreviousLevel
Not documented.
GetPreviousNoInit
Not documented.
GetPreviousSelected
Not documented.
GetPreviousSibling
GetPreviousVisible
Not documented.
GetPreviousVisibleNoInit
Not documented.
GetPreviousVisibleSibling
Not documented.
GetPreviousVisibleSiblingNoInit
Not documented.
GetSortedCutCopySet
Returns a sorted list of nodes, which are marked for s cut or copy clipboard operation.
GetSortedSelection
Returns a sorted list of all currently selected nodes.
GetTextInfo
Not documented.
GetTreeFromDataObject
OLE drag'n drop and clipboard support method.
GetTreeRect
Returns the size of the virtual tree image.
GetVisibleParent
Not documented.
HandleHotTrack
Not documented.
HandleIncrementalSearch
Not documented.
HandleMouseDblClick
Not documented.
HandleMouseDown
Not documented.
HandleMouseUp
Not documented.
HasAsParent
Determines if the given node has got another node as one of its parents.
HasImage
Not documented.
HasPopupMenu
Determines whether there is a pop up menu assigned to the tree.
InitChildren
Not documented.
InitializedNodes
Not documented.
InitNode
Not documented.
InsertNode
Inserts a new node and returns it to the caller.
InternalAddFromStream
Not documented.
InternalAddToSelection
This is the overview for the InternalAddToSelection method overload.
InternalCacheNode
Not documented.
InternalClearSelection
Not documented.
InternalConnectNode
Not documented.
InternalData
Returns the address of the internal data for a tree class.
InternalDisconnectNode
Not documented.
InternalRemoveFromSelection
Not documented.
InvalidateCache
Empties the internal node cache and marks it as invalid.
InvalidateChildren
Invalidates all children of the given node.
InvalidateColumn
Invalidates the client area part of a column.
InvalidateNode
Invalidates the given node.
InvalidateToBottom
Invalidates the client area starting with the top position of the given node.
InvertSelection
Inverts the current selection.
IsEditing
Tells the caller whether the tree is currently in edit mode.
IsMouseSelecting
Tell the caller whether the tree is currently in draw selection mode.
IterateSubtree
Iterator method to go through all nodes of a given sub tree.
LeafNodes
Not documented.
LevelNodes
Not documented.
Loaded
Not documented.
LoadFromFile
Loads previously streamed out tree data back in again.
LoadFromStream
Loads previously streamed out tree data back in again.
MainColumnChanged
Not documented.
MarkCutCopyNodes
Not documented.
MeasureItemHeight
Not documented.
MouseMove
Not documented.
MoveTo
This is the overview for the MoveTo method overload.
Nodes
Not documented.
NoInitNodes
Not documented.
Notification
Not documented.
OriginalWMNCPaint
Not documented.
Paint
TControl's Paint method used here to display the tree.
PaintCheckImage
Not documented.
PaintImage
Not documented.
PaintNodeButton
Not documented.
PaintSelectionRectangle
Not documented.
PaintTree
Main paint routine for the tree image.
PaintTreeLines
Not documented.
PanningWindowProc
Not documented.
PasteFromClipboard
Inserts the content of the clipboard into the tree.
PrepareCell
This method is called immediately before a cell's content is drawn und is responsible to paint selection colors etc.
PrepareDragImage
Not documented.
Print
Not documented.
ProcessDrop
Helper method to ease OLE drag'n drop operations.
ProcessOLEData
Takes serialized OLE tree data and reconstructs the former structure.
ReadChunk
Not documented.
ReadNode
Not documented.
RedirectFontChangeEvent
Not documented.
ReinitChildren
Forces all child nodes of Node to be reinitialized.
ReinitNode
Forces a reinitialization of the given node.
RemoveFromSelection
Removes the given node from the current selection.
RenderOLEData
Renders pending OLE data.
RepaintNode
Causes the treeview to repaint the given node.
ResetNode
Resets the given node to uninitialized.
ResetRangeAnchor
Not documented.
RestoreFontChangeEvent
Not documented.
SaveToFile
Saves the entire content of the tree into a file or stream.
SaveToStream
Saves the entire content of the tree into a file or stream.
ScrollIntoView
This is the overview for the ScrollIntoView method overload.
SelectAll
Selects all nodes in the tree.
SelectedNodes
Not documented.
SelectNodes
Selects a range of nodes.
SetFocusedNodeAndColumn
Not documented.
SkipNode
Not documented.
Sort
Sorts the given node.
SortTree
Sorts the entire tree view.
StartOperation
Not documented.
StartWheelPanning
Not documented.
StopWheelPanning
Not documented.
StructureChange
Not documented.
SuggestDropEffect
Not documented.
ToggleNode
Changes a node's expand state to the opposite state.
ToggleSelection
Toggles the selection state of a range of nodes.
UnselectNodes
Deselects a range of nodes.
UpdateAction
Not documented.
UpdateColumnCheckState
Not documented.
UpdateDesigner
Not documented.
UpdateEditBounds
Not documented.
UpdateHeaderRect
Not documented.
UpdateHorizontalRange
Not documented.
UpdateHorizontalScrollBar
Applies changes to the horizontal and vertical scrollbars.
UpdateRanges
Not documented.
UpdateScrollBars
Applies changes to the horizontal and vertical scrollbars.
UpdateVerticalRange
Not documented.
UpdateVerticalScrollBar
Applies changes to the horizontal and vertical scrollbars.
UpdateWindowAndDragImage
Not documented.
UseRightToLeftReading
Helper method for right-to-left layout.
ValidateCache
Initiates the validation of the internal node cache.
ValidateChildren
Validates all children of a given node.
ValidateNode
Validates a given node.
ValidateNodeDataSize
Helper method for node data size initalization.
VisibleChildNodes
Not documented.
VisibleChildNoInitNodes
Not documented.
VisibleNodes
Not documented.
VisibleNoInitNodes
Not documented.
WndProc
Redirected window procedure to do some special processing.
WriteChunks
Writes the core chunks for the given node to the given stream.
WriteNode
Writes the cover (envelop) chunk for the given node to the given stream.

TCustomVirtualStringTree Class

AdjustPaintCellRect
Method which can be used by descentants to adjust the given rectangle during a paint cycle.
CalculateTextWidth
Not documented.
CanExportNode
Not documented.
ColumnIsEmpty
Used to determine if a cell is considered as being empty.
ComputeNodeHeight
Not documented.
ContentToClipboard
Not documented.
ContentToCustom
Not documented.
ContentToHTML
Not documented.
ContentToRTF
Not documented.
ContentToText
This is the overview for the ContentToText method overload.
ContentToUnicode
This is the overview for the ContentToUnicode method overload.
DefineProperties
Helper method to customize loading and saving persistent tree data.
DoCreateEditor
Not documented.
DoGetNodeHint
Not documented.
DoGetNodeTooltip
Not documented.
DoGetNodeWidth
Overridable method which always retuns 0.
DoGetText
Not documented.
DoIncrementalSearch
Not documented.
DoNewText
Not documented.
DoPaintNode
Overridable method which does nothing.
DoPaintText
Not documented.
DoShortenString
Not documented.
DoTextDrawing
Not documented.
DoTextMeasuring
Not documented.
GetOptionsClass
Customization helper to determine which options class the tree should use.
GetTextInfo
Not documented.
InternalData
Returns the address of the internal data for a tree class.
InvalidateNode
Invalidates the given node.
MainColumnChanged
Not documented.
Path
Not documented.
ReadChunk
Not documented.
ReadOldStringOptions
Not documented.
ReinitNode
Forces a reinitialization of the given node.
RenderOLEData
Renders pending OLE data.
SaveToCSVFile
Not documented.
WriteChunks
Writes the core chunks for the given node to the given stream.


TBaseVirtualTree Properties
TCustomVirtualStringTree Class | Legend
TBaseVirtualTree Properties

Accessible
Not documented.
AccessibleItem
Not documented.
AccessibleName
Not documented.
Alignment
Determines the horizontal alignment of text if no columns are defined.
AnimationDuration
Determines the maximum duration the tree can use to play an animation.
AutoExpandDelay
Time delay after which a node gets expanded if it is the current drop target.
AutoScrollDelay
Time which determines when auto scrolling should start.
AutoScrollInterval
Time interval between scroll events when doing auto scroll.
Background
Holds a background image for the tree.
BackgroundOffsetX
Horizontal offset of the background image.
BackgroundOffsetY
Vertical offset of the background image.
BorderStyle
Same as TForm.BorderStyle.
BottomNode
Not documented.
BottomSpace
Not documented.
ButtonFillMode
Determines how to fill the background of the node buttons.
ButtonStyle
Determines the look of node buttons.
ChangeDelay
Time which determines when the OnChange event should be triggered after the actual change event.
CheckedCount
Not documented.
CheckImageKind
Determines which images should be used for checkboxes and radio buttons.
CheckImages
Not documented.
CheckState
Read or set the check state of a node.
CheckType
Read or set the check type of a node.
ChildCount
Read or set the number of child nodes of a node.
ChildrenInitialized
Read whether a node's child count has been initialized already.
ClipboardFormats
Special class to keep a list of clipboard format descriptions.
Colors
A collection of colors used in the tree.
CustomCheckImages
Assign your own image list to get the check images you like most.
CutCopyCount
Not documented.
DefaultNodeHeight
Read or set the height new nodes get as initial value.
DefaultPasteMode
Read or set the value, which determines where to add pasted nodes to.
DragHeight
Read or set the vertical limit of the internal drag image.
DragImage
Holds the instance of the internal drag image.
DragImageKind
Read or set what should be shown in the drag image.
DragManager
Holds the reference to the internal drag manager.
DragOperations
Read or set which drag operations may be allowed in the tree.
DragSelection
Keeps a temporary list of nodes during drag'n drop.
DragType
Read or set which subsystem should be used for dragging.
DragWidth
Read or set the horizontal limit of the internal drag image.
DrawSelectionMode
Read or set how multiselection with the mouse is to be visualized.
DropTargetNode
Contains the current drop target node if the tree is currently the target of a drag'n drop operation.
EditColumn
Not documented.
EditDelay
Read or set the maximum time between two single clicks on the same node, which should start node editing.
EditLink
Keeps a reference to the internal edit link during a node edit operation.
EffectiveOffsetX
Not documented.
EmptyListMessage
Not documented.
Expanded
Read or set the expanded state of a particular node.
FocusedColumn
Read or set the currently focused collumn.
FocusedNode
Read or set the currently focused node.
Font
Same as TWinControl.Font.
FullyVisible
Read or set whether a node is fully visible or not.
HasChildren
Read or set whether a node has got children.
Header
Provides access to the header instance.
HeaderRect
Returns the non-client-area rectangle used for the header.
HintAnimation
Read or set the current hint animation type.
HintData
Not documented.
HintMode
Read or set what type of hint you want for the tree view.
HotCursor
Read or set which cursor should be used for hot nodes.
HotMinusBM
Not documented.
HotNode
Read, which node is currently the hot node.
HotPlusBM
Not documented.
Images
Read or set the tree's normal image list.
IncrementalSearch
Read or set the current incremental search mode.
IncrementalSearchDirection
Read or set the direction to be used for incremental search.
IncrementalSearchStart
Read or set where to start incremental search.
IncrementalSearchTimeout
Read or set the maximum time, which is allowed between two consecutive key strokes so that incremental search stays active.
Indent
Read or set the indentation amount for node levels.
IsDisabled
Read or set the enabled state of the given node.
IsEffectivelyFiltered
Not documented.
IsEffectivelyVisible
Not documented.
IsFiltered
Not documented.
IsVisible
Read or set the visibility state of the given node.
LastClickPos
Used for retained drag start and wheel mouse scrolling.
LastDropMode
Read how the last drop operation finished.
LastHintRect
Not documented.
LineMode
Read or set the mode of the tree lines.
LineStyle
Read or set the mode of the tree lines.
Margin
Read or set the tree's node margin.
MinusBM
Not documented.
MultiLine
Read or toggle the multiline feature for a given node.
NodeAlignment
Read or set the node alignment value.
NodeDataSize
Read or set the extra data size for each node.
NodeHeight
Read or set a node's height.
NodeParent
Read or set a node's parent node.
OffsetX
Read or set the tree's current horizontal and vertical scroll offsets.
OffsetXY
Read or set the tree's current horizontal and vertical scroll offsets.
OffsetY
Read or set the tree's current horizontal and vertical scroll offsets.
OperationCanceled
Not documented.
OperationCount
Not documented.
PlusBM
Not documented.
RangeX
Not documented.
RangeY
Not documented.
RootNode
Reference to the internal root node which is the anchor of the entire tree node hierarchy.
RootNodeCount
Read or set the number of nodes on the top level.
ScrollBarOptions
Reference to the scroll bar options class.
SearchBuffer
Current input string for incremental search.
Selected
Property to modify or determine the selection state of a node.
SelectedCount
Contains the number of selected nodes.
SelectionBlendFactor
Read or set the current blend factor for the multi selection rectangle and the node selection rectangle.
SelectionCurveRadius
Read or set the current corner radius for node selection rectangles.
SelectionLocked
Not documented.
StateImages
Reference to the images list which is used for the state images.
TextMargin
Read or set the distance of the node caption to its borders.
TopNode
The top node is the node which is currently at the top border of the client area.
TotalCount
Returns the number of nodes in the tree.
TotalInternalDataSize
Keeps the currently accumulated data size for one node.
TreeOptions
Reference to the tree's options.
TreeStates
Property which keeps a set of flags which indicate current operation and states of the tree.
UpdateCount
Not documented.
VerticalAlignment
Used to set a node's vertical button aligment with regard to the entire node rectangle.
VisibleCount
Number of currently visible nodes.
VisiblePath
Property to set or determine a node parent's expand states.
WantTabs
Read or set whether the tree wants to process tabs on its own.

TCustomVirtualStringTree Class

DefaultText
Not documented.
EllipsisWidth
Not documented.
ImageText
Not documented.
Text
Not documented.
TreeOptions
Reference to the tree's options.


Topics
TCustomVirtualStringTree Class
Topics

TBaseVirtualTree Methods
The methods of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Constructors
The constructors of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Destructors
The destructors of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Properties
The properties of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Events
The events of the TBaseVirtualTree class are listed here.

TCustomVirtualStringTree Class

TCustomVirtualStringTree Methods
The methods of the TCustomVirtualStringTree class are listed here.
TCustomVirtualStringTree Constructors
The constructors of the TCustomVirtualStringTree class are listed here.
TCustomVirtualStringTree Properties
The properties of the TCustomVirtualStringTree class are listed here.
TCustomVirtualStringTree Events
The events of the TCustomVirtualStringTree class are listed here.


See Also
TCustomVirtualStringTree.WriteChunks Method
See Also

WriteNode, SaveToStream


TCustomVirtualTreeOptions Constructors
TCustomVirtualTreeOptions Class | Legend
TCustomVirtualTreeOptions Constructors

Create
Constructor of the class.


Legend
TCustomVirtualTreeOptions Class
Legend

Method
public
virtual
Constructor
Property
protected
read only


TCustomVirtualTreeOptions Methods
TCustomVirtualTreeOptions Class | Legend
TCustomVirtualTreeOptions Methods

AssignTo
Used to copy this option class to another option collection.


TCustomVirtualTreeOptions Properties
TCustomVirtualTreeOptions Class | Legend
TCustomVirtualTreeOptions Properties

AnimationOptions
Options related to animations.
AutoOptions
Options related to automatic actions.
ExportMode
Not documented.
MiscOptions
Options not related to any other category.
Owner
Owner tree to which the property class belongs.
PaintOptions
Options related to painting.
SelectionOptions
Options related to the way nodes can be selected.


Topics
TCustomVirtualTreeOptions Class
Topics

TCustomVirtualTreeOptions Methods
The methods of the TCustomVirtualTreeOptions class are listed here.
TCustomVirtualTreeOptions Constructors
The constructors of the TCustomVirtualTreeOptions class are listed here.
TCustomVirtualTreeOptions Properties
The properties of the TCustomVirtualTreeOptions class are listed here.


TEnumFormatEtc Constructors
TEnumFormatEtc Class | Legend
TEnumFormatEtc Constructors

Create
Not documented.


Legend
TEnumFormatEtc Class
Legend

Method
public
Constructor


TEnumFormatEtc Methods
TEnumFormatEtc Class | Legend
TEnumFormatEtc Methods

Clone
Not documented.
Next
Not documented.
Reset
Not documented.
Skip
Not documented.


Topics
TEnumFormatEtc Class
Topics

TEnumFormatEtc Methods
The methods of the TEnumFormatEtc class are listed here.
TEnumFormatEtc Constructors
The constructors of the TEnumFormatEtc class are listed here.


TScrollBarOptions Constructors
TScrollBarOptions Class | Legend
TScrollBarOptions Constructors

Create
Not documented.


Legend
TScrollBarOptions Class
Legend

Method
public
virtual
protected
Constructor
Property
published


TScrollBarOptions Methods
TScrollBarOptions Class | Legend
TScrollBarOptions Methods

Assign
Not documented.
GetOwner
Not documented.


TScrollBarOptions Properties
TScrollBarOptions Class | Legend
TScrollBarOptions Properties

AlwaysVisible
Not documented.
HorizontalIncrement
Not documented.
ScrollBars
Not documented.
ScrollBarStyle
Not documented.
VerticalIncrement
Not documented.


Properties (AutoDoc Folder)

Legend
Legend

Property
published


Topics
TScrollBarOptions Class
Topics

TScrollBarOptions Methods
The methods of the TScrollBarOptions class are listed here.
TScrollBarOptions Constructors
The constructors of the TScrollBarOptions class are listed here.
TScrollBarOptions Properties
The properties of the TScrollBarOptions class are listed here.


TStringEditLink Constructors
TStringEditLink Class | Legend
TStringEditLink Constructors
TStringEditLink Class

Create
Constructor of the class.


TStringEditLink Destructors
TStringEditLink Class | Legend
TStringEditLink Destructors
TStringEditLink Class

Destroy
Destructor of the class.


TStringEditLink Fields
TStringEditLink Class | Legend
TStringEditLink Fields
TStringEditLink Class

FAlignment
Not documented.
FColumn
The column of the node.
FNode
The node to be edited.
FStopping
Set to True when the edit link requests stopping the edit action.
FTextBounds
Smallest rectangle around the text.
FTree
A back reference to the tree calling.


Legend
TStringEditLink Class
Legend

Method
public
virtual
Data Member
protected
Constructor
Property


IVTEditLink Methods
TStringEditLink Class | Legend
IVTEditLink Methods

BeginEdit
This function will be called by the virtual tree when the editing starts.
CancelEdit
This function will be called by the virtual tree when the current editing is about to be cancelled.
EndEdit
This function will be called by the virtual tree when the current editing is being finished.
GetBounds
The virtual tree can use this function to get the current bounding rect of the node editor.
PrepareEdit
This function is called by a virtual tree to initialize the node editor.
ProcessMessage
This function is used to forward messages being directed to the virtual tree.
SetBounds
The virtual tree calls this function to initialize the bounding rectangle of the node editor.

TStringEditLink Class

BeginEdit
This function will be called by the virtual string tree when the editing starts.
CancelEdit
This function will be called by the virtual string tree when the current editing is about to be cancelled.
EndEdit
This function will be called by the virtual string tree when the current editing is being finished.
GetBounds
The virtual string tree uses this function to get the current bounding rect of the node editor.
PrepareEdit
This function is called by a virtual string tree to initialize the node editor.
ProcessMessage
This function is used to forward messages being directed to the virtual string tree.
SetBounds
The virtual string tree calls this function to initialize the bounding rect of the node editor.


TStringEditLink Properties
TStringEditLink Class | Legend
TStringEditLink Properties
TStringEditLink Class

Edit
Not documented.


Properties (AutoDoc Folder)

Legend
Legend

Property
public


Topics
TStringEditLink Class
Topics

IVTEditLink Methods
The methods of the IVTEditLink class are listed here.

TStringEditLink Class

TStringEditLink Fields
The fields of the TStringEditLink class are listed here.
TStringEditLink Methods
The methods of the TStringEditLink class are listed here.
TStringEditLink Constructors
The constructors of the TStringEditLink class are listed here.
TStringEditLink Destructors
The destructors of the TStringEditLink class are listed here.
TStringEditLink Properties
The properties of the TStringEditLink class are listed here.


TCustomVirtualTreeOptions Constructors
TStringTreeOptions Class | Legend
TCustomVirtualTreeOptions Constructors

Create
Constructor of the class.

TCustomStringTreeOptions Class

Create
The constructor of the class.


Legend
TStringTreeOptions Class
Legend

Method
public
virtual
Constructor
Property
protected
read only
published


TCustomVirtualTreeOptions Methods
TStringTreeOptions Class | Legend
TCustomVirtualTreeOptions Methods

AssignTo
Used to copy this option class to another option collection.

TCustomStringTreeOptions Class

AssignTo
Used to copy the options class.


TCustomVirtualTreeOptions Properties
TStringTreeOptions Class | Legend
TCustomVirtualTreeOptions Properties

AnimationOptions
Options related to animations.
AutoOptions
Options related to automatic actions.
ExportMode
Not documented.
MiscOptions
Options not related to any other category.
Owner
Owner tree to which the property class belongs.
PaintOptions
Options related to painting.
SelectionOptions
Options related to the way nodes can be selected.

TCustomStringTreeOptions Class

StringOptions
The new options introduced by the class.

TStringTreeOptions Class

AnimationOptions
Options related to animations.
AutoOptions
Options related to automatic actions.
ExportMode
Not documented.
MiscOptions
Options not related to any other category.
PaintOptions
Options related to painting.
SelectionOptions
Options related to the way nodes can be selected.
StringOptions
The new options introduced by the class.


Properties (AutoDoc Folder)

Legend
Legend

Property
protected
public
read only
published


Topics
TStringTreeOptions Class
Topics

TCustomVirtualTreeOptions Methods
The methods of the TCustomVirtualTreeOptions class are listed here.
TCustomVirtualTreeOptions Constructors
The constructors of the TCustomVirtualTreeOptions class are listed here.
TCustomVirtualTreeOptions Properties
The properties of the TCustomVirtualTreeOptions class are listed here.

TCustomStringTreeOptions Class

TCustomStringTreeOptions Methods
The methods of the TCustomStringTreeOptions class are listed here.
TCustomStringTreeOptions Constructors
The constructors of the TCustomStringTreeOptions class are listed here.
TCustomStringTreeOptions Properties
The properties of the TCustomStringTreeOptions class are listed here.

TStringTreeOptions Class

TStringTreeOptions Properties
The properties of the TStringTreeOptions class are listed here.


See Also
TVirtualDrawTree.CustomCheckImages Property
See Also

TCheckImageKind


See Also
TVirtualDrawTree.DefaultPasteMode Property
See Also

TVTNodeAttachMode


See Also
TVirtualDrawTree.EditDelay Property
See Also

Editors and editing


See Also
TVirtualDrawTree.Header Property
See Also

TVTHeader


See Also
TVirtualDrawTree.HotCursor Property
See Also

HotNode, TVTPaintOptions


See Also
TVirtualDrawTree.Images Property
See Also

StateImages, CheckImages


See Also
TVirtualDrawTree.IncrementalSearch Property
See Also

IncrementalSearchDirection, IncrementalSearchStart, IncrementalSearchTimeout


See Also
TVirtualDrawTree.IncrementalSearchDirection Property
See Also

IncrementalSearch, IncrementalSearchStart, IncrementalSearchTime123out


See Also
TVirtualDrawTree.IncrementalSearchStart Property
See Also

IncrementalSearch, IncrementalSearchDirection, IncrementalSearchTimeout


See Also
TVirtualDrawTree.IncrementalSearchTimeout Property
See Also

IncrementalSearch, IncrementalSearchDirection, IncrementalSearchStart


See Also
TVirtualDrawTree.Margin Property
See Also

TVirtualStringTree.TextMargin


See Also
TVirtualDrawTree.NodeAlignment Property
See Also

TVirtualNode


See Also
TVirtualDrawTree.NodeDataSize Property
See Also

Data handling


See Also
TVirtualDrawTree.OnAdvancedHeaderDraw Event
See Also

OnHeaderDrawQueryElements, OnHeaderDraw


See Also
TVirtualDrawTree.OnAfterCellPaint Event
See Also

Paint cycles and stages


See Also
TVirtualDrawTree.OnAfterItemErase Event
See Also

Paint cycles and stages


See Also
TVirtualDrawTree.OnAfterItemPaint Event
See Also

Paint cycles and stages


See Also
TVirtualDrawTree.OnAfterPaint Event
See Also

Paint cycles and stages


See Also
TVirtualDrawTree.OnBeforeCellPaint Event
See Also

Paint cycles and stages


See Also
TVirtualDrawTree.OnBeforeItemErase Event
See Also

Paint cycles and stages


See Also
TVirtualDrawTree.OnBeforeItemPaint Event
See Also

Paint cycles and stages


See Also
TVirtualDrawTree.OnBeforePaint Event
See Also

Paint cycles and stages


See Also
TVirtualDrawTree.OnColumnClick Event
See Also

OnHeaderClick


See Also
TVirtualDrawTree.OnColumnDblClick Event
See Also

OnColumnClick, OnHeaderDblClick


See Also
TVirtualDrawTree.OnCompareNodes Event
See Also

SortTree, Sort


See Also
TVirtualDrawTree.OnCreateEditor Event
See Also

Editors and editing


See Also
TVirtualDrawTree.OnDragOver Event
See Also

OnDragDrop


See Also
TVirtualDrawTree.OnEdited Event
See Also

Editors and editing


See Also
TVirtualDrawTree.OnEditing Event
See Also

Editors and editing


See Also
TVirtualDrawTree.OnGetLineStyle Event
See Also

PrepareBitmaps


See Also
TVirtualDrawTree.OnGetNodeDataSize Event
See Also

NodeDataSize, Data handling


See Also
TVirtualDrawTree.OnHeaderClick Event
See Also

SortColumn, SortDirection


See Also
TVirtualDrawTree.OnHeaderDblClick Event
See Also

OnHeaderClick


See Also
TVirtualDrawTree.OnHeaderDrawQueryElements Event
See Also

OnAdvancedHeaderDraw


See Also
TVirtualDrawTree.OnInitChildren Event
See Also

The virtual paradigm


See Also
TVirtualDrawTree.OnInitNode Event
See Also

The virtual paradigm


See Also
TVirtualDrawTree.OnLoadNode Event
See Also

OnSaveNode, LoadFromStream, SaveToStream, AddFromStream, VTTreeStreamVersion, TVTHeader.LoadFromStream, TVTHeader.SaveToStream


See Also
TVirtualDrawTree.OnMeasureItem Event
See Also

InvalidateNode, vsHeightMeasured


See Also
TVirtualDrawTree.OnResetNode Event
See Also

ResetNode


See Also
TVirtualDrawTree.OnSaveNode Event
See Also

OnLoadNode, LoadFromStream, SaveToStream, AddFromStream, VTTreeStreamVersion, TVTHeader.LoadFromStream, TVTHeader.SaveToStream


See Also
TVirtualDrawTree.OnScroll Event
See Also

OffsetXY


See Also
TVirtualDrawTree.SelectionBlendFactor Property
See Also

DrawSelectionMode, TVTPaintOptions


See Also
TVirtualDrawTree.SelectionCurveRadius Property
See Also

SelectionBlendFactor, DrawSelectionMode, TVTPaintOptions


TBaseVirtualTree Constructors
TVirtualDrawTree Class | Legend
TBaseVirtualTree Constructors

Create
Constructor of the control


TBaseVirtualTree Destructors
TVirtualDrawTree Class | Legend
TBaseVirtualTree Destructors

Destroy
Destructor of the control.


TBaseVirtualTree Events
TVirtualDrawTree Class | Legend
TBaseVirtualTree Events

OnAddToSelection
Not documented.
OnAdvancedHeaderDraw
Header paint support event.
OnAfterAutoFitColumn
Not documented.
OnAfterAutoFitColumns
Not documented.
OnAfterCellPaint
Paint support event.
OnAfterColumnExport
Not documented.
OnAfterColumnWidthTracking
Not documented.
OnAfterGetMaxColumnWidth
Not documented.
OnAfterHeaderExport
Not documented.
OnAfterHeaderHeightTracking
Not documented.
OnAfterItemErase
Paint support event.
OnAfterItemPaint
Paint support event.
OnAfterNodeExport
Not documented.
OnAfterPaint
Paint support event.
OnAfterTreeExport
Not documented.
OnBeforeAutoFitColumn
Not documented.
OnBeforeAutoFitColumns
Not documented.
OnBeforeCellPaint
Paint support event.
OnBeforeColumnExport
Not documented.
OnBeforeColumnWidthTracking
Not documented.
OnBeforeDrawTreeLine
Not documented.
OnBeforeGetMaxColumnWidth
Not documented.
OnBeforeHeaderExport
Not documented.
OnBeforeHeaderHeightTracking
Not documented.
OnBeforeItemErase
Paint support event.
OnBeforeItemPaint
Paint support event.
OnBeforeNodeExport
Not documented.
OnBeforePaint
Paint support event.
OnBeforeTreeExport
Not documented.
OnCanSplitterResizeColumn
Not documented.
OnCanSplitterResizeHeader
Not documented.
OnCanSplitterResizeNode
Not documented.
OnChange
Navigation support event.
OnChecked
Check support event.
OnChecking
Check support event.
OnCollapsed
Miscellaneous event.
OnCollapsing
Miscellaneous event.
OnColumnClick
Header and column support event.
OnColumnDblClick
Header and column support event.
OnColumnExport
Not documented.
OnColumnResize
Header and column support routine.
OnColumnWidthDblClickResize
Not documented.
OnColumnWidthTracking
Not documented.
OnCompareNodes
Sort and search support event.
OnCreateDataObject
Drag'n drop support event.
OnCreateDragManager
Drag'n drop support event.
OnCreateEditor
Editing support event.
OnDragAllowed
Drag'n drop support event.
OnDragDrop
Drag'n drop support event.
OnDragOver
Drag'n drop support event.
OnEditCancelled
Editing support event.
OnEdited
Editing support event.
OnEditing
Editing support event.
OnEndOperation
Not documented.
OnExpanded
Misscellaneous event.
OnExpanding
Miscellaneous event.
OnFocusChanged
Navigation support event.
OnFocusChanging
Navigation support event.
OnFreeNode
Data management node.
OnGetCellIsEmpty
Triggered when the tree control needs to know whether a given column is empty.
OnGetCursor
Miscellaneous event.
OnGetHeaderCursor
Header and column support event.
OnGetHelpContext
Miscellaneous event.
OnGetImageIndex
Display management event.
OnGetImageIndexEx
Not documented.
OnGetImageText
Not documented.
OnGetLineStyle
Display management event.
OnGetNodeDataSize
Data management event.
OnGetPopupMenu
Miscellaneous event.
OnGetUserClipboardFormats
Drag'n drop and clipboard support event.
OnHeaderClick
Header & column support event.
OnHeaderDblClick
Header & column support event.
OnHeaderDragged
Header & column support event.
OnHeaderDraggedOut
Header & column support event.
OnHeaderDragging
Header & column support event.
OnHeaderDraw
Header & column support event.
OnHeaderDrawQueryElements
Header & column support event.
OnHeaderHeightDblClickResize
Not documented.
OnHeaderHeightTracking
Not documented.
OnHeaderMouseDown
Header & column support event.
OnHeaderMouseMove
Header & column support event.
OnHeaderMouseUp
Header & column support event.
OnHotChange
Navigation support event.
OnIncrementalSearch
Miscellaneous event.
OnInitChildren
Node management event.
OnInitNode
Node management event.
OnKeyAction
Miscellaneous event.
OnLoadNode
Streaming support event.
OnLoadTree
Not documented.
OnMeasureItem
Miscellaneous event.
OnNodeClick
Not documented.
OnNodeCopied
Miscellaneous event.
OnNodeCopying
Miscellaneous event.
OnNodeDblClick
Not documented.
OnNodeExport
Not documented.
OnNodeHeightDblClickResize
Not documented.
OnNodeHeightTracking
Not documented.
OnNodeMoved
Miscellaneous event.
OnNodeMoving
Miscellaneous event.
OnPaintBackground
Paint support event.
OnRemoveFromSelection
Not documented.
OnRenderOLEData
Drag'n drop and clipboard support event.
OnResetNode
Node management event.
OnSaveNode
Streaming support event.
OnSaveTree
Not documented.
OnScroll
Miscellaneous event.
OnShowScrollbar
Not documented.
OnStartOperation
Not documented.
OnStateChange
Miscellaneous event.
OnStructureChange
Miscellaneous event.
OnUpdating
Miscellaneous event.

TCustomVirtualDrawTree Class

OnDrawHint
Triggered when a node hint or tooltip must be drawn.
OnDrawNode
Triggered when a node must be drawn.
OnGetCellContentMargin
Not documented.
OnGetHintSize
Triggered when a node hint or tooltip is about to show.
OnGetNodeWidth
Triggered when a node is about to be drawn.

TVirtualDrawTree Class

OnAddToSelection
Not documented.
OnAdvancedHeaderDraw
Header paint support event.
OnAfterAutoFitColumn
Not documented.
OnAfterAutoFitColumns
Not documented.
OnAfterCellPaint
Paint support event.
OnAfterColumnExport
Not documented.
OnAfterColumnWidthTracking
Not documented.
OnAfterGetMaxColumnWidth
Not documented.
OnAfterHeaderExport
Not documented.
OnAfterHeaderHeightTracking
Not documented.
OnAfterItemErase
Paint support event.
OnAfterItemPaint
Paint support event.
OnAfterNodeExport
Not documented.
OnAfterPaint
Paint support event.
OnAfterTreeExport
Not documented.
OnBeforeAutoFitColumn
Not documented.
OnBeforeAutoFitColumns
Not documented.
OnBeforeCellPaint
Paint support event.
OnBeforeColumnExport
Not documented.
OnBeforeColumnWidthTracking
Not documented.
OnBeforeDrawTreeLine
Not documented.
OnBeforeGetMaxColumnWidth
Not documented.
OnBeforeHeaderExport
Not documented.
OnBeforeHeaderHeightTracking
Not documented.
OnBeforeItemErase
Paint support event.
OnBeforeItemPaint
Paint support event.
OnBeforeNodeExport
Not documented.
OnBeforePaint
Paint support event.
OnBeforeTreeExport
Not documented.
OnCanSplitterResizeColumn
Not documented.
OnCanSplitterResizeHeader
Not documented.
OnCanSplitterResizeNode
Not documented.
OnChange
Navigation support event.
OnChecked
Check support event.
OnChecking
Check support event.
OnCollapsed
Miscellaneous event.
OnCollapsing
Miscellaneous event.
OnColumnClick
Header and column support event.
OnColumnDblClick
Header and column support event.
OnColumnExport
Not documented.
OnColumnResize
Header and column support routine.
OnColumnWidthDblClickResize
Not documented.
OnColumnWidthTracking
Not documented.
OnCompareNodes
Sort and search support event.
OnCreateDataObject
Drag'n drop support event.
OnCreateDragManager
Drag'n drop support event.
OnCreateEditor
Editing support event.
OnDragAllowed
Drag'n drop support event.
OnDragDrop
Drag'n drop support event.
OnDragOver
Drag'n drop support event.
OnDrawHint
Triggered when a node hint or tooltip must be drawn.
OnDrawNode
Triggered when a node must be drawn.
OnEdited
Editing support event.
OnEditing
Editing support event.
OnEndOperation
Not documented.
OnExpanded
Misscellaneous event.
OnExpanding
Miscellaneous event.
OnFocusChanged
Navigation support event.
OnFocusChanging
Navigation support event.
OnFreeNode
Data management node.
OnGetCellIsEmpty
Triggered when the tree control needs to know whether a given column is empty.
OnGetCursor
Miscellaneous event.
OnGetHeaderCursor
Header and column support event.
OnGetHelpContext
Miscellaneous event.
OnGetHintSize
Triggered when a node hint or tooltip is about to show.
OnGetImageIndex
Display management event.
OnGetImageIndexEx
Not documented.
OnGetLineStyle
Display management event.
OnGetNodeDataSize
Data management event.
OnGetNodeWidth
Triggered when a node is about to be drawn.
OnGetPopupMenu
Miscellaneous event.
OnGetUserClipboardFormats
Drag'n drop and clipboard support event.
OnHeaderClick
Header & column support event.
OnHeaderDblClick
Header & column support event.
OnHeaderDragged
Header & column support event.
OnHeaderDraggedOut
Header & column support event.
OnHeaderDragging
Header & column support event.
OnHeaderDraw
Header & column support event.
OnHeaderDrawQueryElements
Header & column support event.
OnHeaderHeightDblClickResize
Not documented.
OnHeaderHeightTracking
Not documented.
OnHeaderMouseDown
Header & column support event.
OnHeaderMouseMove
Header & column support event.
OnHeaderMouseUp
Header & column support event.
OnHotChange
Navigation support event.
OnIncrementalSearch
Miscellaneous event.
OnInitChildren
Node management event.
OnInitNode
Node management event.
OnKeyAction
Miscellaneous event.
OnLoadNode
Streaming support event.
OnLoadTree
Not documented.
OnMeasureItem
Miscellaneous event.
OnNodeClick
Not documented.
OnNodeCopied
Miscellaneous event.
OnNodeCopying
Miscellaneous event.
OnNodeDblClick
Not documented.
OnNodeExport
Not documented.
OnNodeHeightDblClickResize
Not documented.
OnNodeHeightTracking
Not documented.
OnNodeMoved
Miscellaneous event.
OnNodeMoving
Miscellaneous event.
OnPaintBackground
Paint support event.
OnRemoveFromSelection
Not documented.
OnRenderOLEData
Drag'n drop and clipboard support event.
OnResetNode
Node management event.
OnSaveNode
Streaming support event.
OnSaveTree
Not documented.
OnScroll
Miscellaneous event.
OnShowScrollbar
Not documented.
OnStartOperation
Not documented.
OnStateChange
Miscellaneous event.
OnStructureChange
Miscellaneous event.
OnUpdating
Miscellaneous event.


Events (AutoDoc Folder)

Legend
Legend

Event
protected
published


Legend
TVirtualDrawTree Class
Legend

Method
public
virtual
protected
Constructor
Property
read only
published
Event


TBaseVirtualTree Methods
TVirtualDrawTree Class | Legend
TBaseVirtualTree Methods

AbsoluteIndex
Reads the overall index of a node.
AddChild
Creates and adds a new child node to given node.
AddFromStream
Adds the content from the given stream to the given node.
AddToSelection
This is the overview for the AddToSelection method overload.
AdjustImageBorder
Depending on the width of the image list as well as the given bidi mode R must be adjusted.
AdjustPaintCellRect
Used in descentants to modify the clip rectangle of the current column while painting a certain node.
AdjustPanningCursor
Loads the proper cursor which indicates into which direction scrolling is done.
AdviseChangeEvent
Used to register a delayed change event.
AllocateInternalDataArea
Registration method to allocate tree internal data per node.
Animate
Support method for animated actions in the tree view.
Assign
Used to copy properties from another Virtual Treeview.
BeginDrag
Starts an OLE drag'n drop operation.
BeginSynch
Enters the tree into a special synchronized mode.
BeginUpdate
Locks the tree view to perform several update operations.
CalculateSelectionRect
Support method for draw selection.
CanAutoScroll
Determines whether the tree can currently auto scroll its window.
CancelCutOrCopy
Canceles any pending cut or copy clipboard operation.
CancelEditNode
Cancel the current edit operation, if there is any.
CancelOperation
Not documented.
CanEdit
Determines whether a node can be edited or not.
CanFocus
Support method to determine whether the tree window can receive the input focus.
CanShowDragImage
Determines whether a drag image should be shown.
CanSplitterResizeNode
Not documented.
Change
Central method called when a node's selection state changes.
ChangeScale
Helper method called by the VCL when control resizing is due.
CheckedNodes
Not documented.
CheckParentCheckState
Helper method for recursive check state changes.
ChildNodes
Not documented.
Clear
Clears the tree and removes all nodes.
ClearChecked
Not documented.
ClearSelection
Removes all nodes from the current selection.
ClearTempCache
Helper method to clear the internal temporary node cache.
ColumnIsEmpty
Used to determine if a cell is considered as being empty.
ComputeRTLOffset
Not documented.
CopyTo
This is the overview for the CopyTo method overload.
CopyToClipBoard
Copies all currently selected nodes to the clipboard.
CountLevelDifference
Determines the level difference of two nodes.
CountVisibleChildren
Determines the number of visible child nodes of the given node.
CreateParams
Prepares the creation of the controls window handle.
CreateWnd
Initializes data, which depends on the window handle.
CutCopyNodes
Not documented.
CutToClipBoard
Copies the currently selected nodes to the clipboard and removes them once a consumer has taken the data.
DefineProperties
Helper method to customize loading and saving persistent tree data.
DeleteChildren
Removes all child nodes from the given node.
DeleteNode
Removes the given node from the tree.
DeleteSelectedNodes
Removes all currently selected nodes form the tree.
DetermineDropMode
Not documented.
DetermineHiddenChildrenFlag
Determines whether all children of a given node are hidden.
DetermineHiddenChildrenFlagAllNodes
Determines whether all children of all nodes are hidden.
DetermineHitPositionLTR
Determines the hit position within a node with left-to-right and right-to-left orientation.
DetermineHitPositionRTL
Determines the hit position within a node with left-to-right and right-to-left orientation.
DetermineLineImageAndSelectLevel
Not documented.
DetermineNextCheckState
Not documented.
DetermineScrollDirections
Not documented.
DoAdvancedHeaderDraw
Not documented.
DoAfterCellPaint
Not documented.
DoAfterItemErase
Not documented.
DoAfterItemPaint
Not documented.
DoAfterPaint
Not documented.
DoAutoScroll
Enables or disables the auto scroll timer.
DoBeforeCellPaint
Not documented.
DoBeforeDrag
Not documented.
DoBeforeDrawLineImage
Not documented.
DoBeforeItemErase
Not documented.
DoBeforeItemPaint
Not documented.
DoBeforePaint
Not documented.
DoCancelEdit
Called when the tree should stop editing without accepting changed values.
DoCanEdit
Not documented.
DoCanSplitterResizeNode
Not documented.
DoChange
Not documented.
DoCheckClick
Not documented.
DoChecked
Not documented.
DoChecking
Not documented.
DoCollapsed
Not documented.
DoCollapsing
Not documented.
DoColumnClick
Not documented.
DoColumnDblClick
Not documented.
DoColumnResize
Not documented.
DoCompare
Not documented.
DoCreateDataObject
Not documented.
DoCreateDragManager
Not documented.
DoCreateEditor
Not documented.
DoDragDrop
Not documented.
DoDragExpand
Not documented.
DoDragging
Internal method which handles drag' drop.
DoDragOver
Not documented.
DoEdit
Initiates editing of the currently set focused column and edit node.
DoEndDrag
Not documented.
DoEndEdit
Stops the current edit operation and takes over the new content.
DoEndOperation
Not documented.
DoExpanded
Not documented.
DoExpanding
Not documented.
DoFocusChange
Not documented.
DoFocusChanging
Not documented.
DoFocusNode
Internal method to set the focused node.
DoFreeNode
Not documented.
DoGetAnimationType
Determines the type of animation to be used.
DoGetCellContentMargin
Not documented.
DoGetCursor
Not documented.
DoGetHeaderCursor
Not documented.
DoGetImageIndex
Not documented.
DoGetImageText
Not documented.
DoGetLineStyle
Not documented.
DoGetNodeHint
Not documented.
DoGetNodeTooltip
Not documented.
DoGetNodeWidth
Overridable method which always retuns 0.
DoGetPopupMenu
Overridable method which triggers the OnGetPopup event.
DoGetUserClipboardFormats
Not documented.
DoHeaderClick
Not documented.
DoHeaderDblClick
Not documented.
DoHeaderDragged
Not documented.
DoHeaderDraggedOut
Not documented.
DoHeaderDragging
Not documented.
DoHeaderDraw
Not documented.
DoHeaderDrawQueryElements
Not documented.
DoHeaderMouseDown
Not documented.
DoHeaderMouseMove
Not documented.
DoHeaderMouseUp
Not documented.
DoHotChange
Not documented.
DoIncrementalSearch
Not documented.
DoInitChildren
Not documented.
DoInitNode
Not documented.
DoKeyAction
Not documented.
DoLoadUserData
Not documented.
DoMeasureItem
Not documented.
DoNodeClick
Not documented.
DoNodeCopied
Not documented.
DoNodeCopying
Not documented.
DoNodeDblClick
Not documented.
DoNodeHeightDblClickResize
Not documented.
DoNodeHeightTracking
Not documented.
DoNodeMoved
Not documented.
DoNodeMoving
Not documented.
DoPaintBackground
Not documented.
DoPaintDropMark
Overridable method which draws the small line on top of a nodes image depending on the current drop state.
DoPaintNode
Overridable method which does nothing.
DoPopupMenu
Overridable method which shows the popup menu for the given node.
DoRenderOLEData
Not documented.
DoReset
Not documented.
DoSaveUserData
Not documented.
DoScroll
Overridable method which triggers the OnScroll event.
DoSetOffsetXY
Internal core routine to set the tree's scroll position.
DoShowScrollbar
Not documented.
DoStartDrag
Not documented.
DoStartOperation
Not documented.
DoStateChange
Not documented.
DoStructureChange
Not documented.
DoTimerScroll
Callback method which is triggered whenever the scroll timer fires.
DoUpdating
Not documented.
DoValidateCache
Not documented.
DragAndDrop
Not documented.
DragCanceled
Called by the VCL when a drag'n drop operation was canceled by the user.
DragDrop
Helper method, which is used when a drag operation is finished.
DragEnter
Not documented.
DragFinished
Called when a drag operation is finished (accepted or cancelled).
Dragging
Returns true if a drag'n drop operation is in progress.
DragLeave
Not documented.
DragOver
Not documented.
DrawDottedHLine
Not documented.
DrawDottedVLine
Not documented.
EditNode
Starts editing the given node if allowed to.
EndEditNode
Stops node editing if it was started before.
EndOperation
Not documented.
EndSynch
Counterpart to BeginSynch.
EndUpdate
Resets the update lock set by BeginUpdate.
ExecuteAction
Not documented.
FindNodeInSelection
Helper method to find the given node in the current selection.
FinishChunkHeader
Not documented.
FinishCutOrCopy
Stops any pending cut or copy clipboard operation.
FlushClipboard
Renders all pending clipboard data.
FontChanged
Not documented.
FullCollapse
Collapses all nodes in the tree.
FullExpand
Expands all nodes in the tree.
GetBorderDimensions
Not documented.
GetCheckImage
Not documented.
GetCheckImageListFor
Not documented.
GetColumnClass
Returns the class to be used to manage columns in the tree.
GetControlsAlignment
Not documented.
GetDisplayRect
Not documented.
GetEffectivelyFiltered
Not documented.
GetEffectivelyVisible
Not documented.
GetFirst
Group of node navigation functions.
GetFirstChecked
Not documented.
GetFirstChild
Group of node navigation functions.
GetFirstCutCopy
Group of node navigation functions.
GetFirstInitialized
Group of node navigation functions.
GetFirstLeaf
Not documented.
GetFirstLevel
Not documented.
GetFirstNoInit
Group of node navigation functions.
GetFirstSelected
Group of node navigation functions.
GetFirstVisible
Group of node navigation functions.
GetFirstVisibleChild
Not documented.
GetFirstVisibleChildNoInit
Not documented.
GetFirstVisibleNoInit
Group of node navigation functions.
GetHeaderClass
Returns the header class to be used by the tree.
GetHintWindowClass
Not documented.
GetHitTestInfoAt
Returns information about the node at the given position.
GetImageIndex
Not documented.
GetLast
Not documented.
GetLastChild
GetLastChildNoInit
GetLastInitialized
Not documented.
GetLastNoInit
Not documented.
GetLastVisible
Not documented.
GetLastVisibleChild
Not documented.
GetLastVisibleChildNoInit
Not documented.
GetLastVisibleNoInit
Not documented.
GetMaxColumnWidth
Not documented.
GetMaxRightExtend
Determines the maximum with of the currently visible part of the tree.
GetNativeClipboardFormats
Used to let descendants and the application add their own supported clipboard formats.
GetNext
Not documented.
GetNextChecked
This is the overview for the GetNextChecked method overload.
GetNextCutCopy
Not documented.
GetNextInitialized
Not documented.
GetNextLeaf
Not documented.
GetNextLevel
Not documented.
GetNextNoInit
Not documented.
GetNextSelected
Not documented.
GetNextSibling
GetNextVisible
Not documented.
GetNextVisibleNoInit
Not documented.
GetNextVisibleSibling
Not documented.
GetNextVisibleSiblingNoInit
Not documented.
GetNodeAt
This is the overview for the GetNodeAt method overload.
GetNodeData
Returns the address of the user data area of the given node.
GetNodeLevel
Returns the indentation level of the given node.
GetOperationCanceled
Not documented.
GetOptionsClass
Customization helper to determine which options class the tree should use.
GetPrevious
Not documented.
GetPreviousChecked
Not documented.
GetPreviousCutCopy
Not documented.
GetPreviousInitialized
Not documented.
GetPreviousLeaf
Not documented.
GetPreviousLevel
Not documented.
GetPreviousNoInit
Not documented.
GetPreviousSelected
Not documented.
GetPreviousSibling
GetPreviousVisible
Not documented.
GetPreviousVisibleNoInit
Not documented.
GetPreviousVisibleSibling
Not documented.
GetPreviousVisibleSiblingNoInit
Not documented.
GetSortedCutCopySet
Returns a sorted list of nodes, which are marked for s cut or copy clipboard operation.
GetSortedSelection
Returns a sorted list of all currently selected nodes.
GetTextInfo
Not documented.
GetTreeFromDataObject
OLE drag'n drop and clipboard support method.
GetTreeRect
Returns the size of the virtual tree image.
GetVisibleParent
Not documented.
HandleHotTrack
Not documented.
HandleIncrementalSearch
Not documented.
HandleMouseDblClick
Not documented.
HandleMouseDown
Not documented.
HandleMouseUp
Not documented.
HasAsParent
Determines if the given node has got another node as one of its parents.
HasImage
Not documented.
HasPopupMenu
Determines whether there is a pop up menu assigned to the tree.
InitChildren
Not documented.
InitializedNodes
Not documented.
InitNode
Not documented.
InsertNode
Inserts a new node and returns it to the caller.
InternalAddFromStream
Not documented.
InternalAddToSelection
This is the overview for the InternalAddToSelection method overload.
InternalCacheNode
Not documented.
InternalClearSelection
Not documented.
InternalConnectNode
Not documented.
InternalData
Returns the address of the internal data for a tree class.
InternalDisconnectNode
Not documented.
InternalRemoveFromSelection
Not documented.
InvalidateCache
Empties the internal node cache and marks it as invalid.
InvalidateChildren
Invalidates all children of the given node.
InvalidateColumn
Invalidates the client area part of a column.
InvalidateNode
Invalidates the given node.
InvalidateToBottom
Invalidates the client area starting with the top position of the given node.
InvertSelection
Inverts the current selection.
IsEditing
Tells the caller whether the tree is currently in edit mode.
IsMouseSelecting
Tell the caller whether the tree is currently in draw selection mode.
IterateSubtree
Iterator method to go through all nodes of a given sub tree.
LeafNodes
Not documented.
LevelNodes
Not documented.
Loaded
Not documented.
LoadFromFile
Loads previously streamed out tree data back in again.
LoadFromStream
Loads previously streamed out tree data back in again.
MainColumnChanged
Not documented.
MarkCutCopyNodes
Not documented.
MeasureItemHeight
Not documented.
MouseMove
Not documented.
MoveTo
This is the overview for the MoveTo method overload.
Nodes
Not documented.
NoInitNodes
Not documented.
Notification
Not documented.
OriginalWMNCPaint
Not documented.
Paint
TControl's Paint method used here to display the tree.
PaintCheckImage
Not documented.
PaintImage
Not documented.
PaintNodeButton
Not documented.
PaintSelectionRectangle
Not documented.
PaintTree
Main paint routine for the tree image.
PaintTreeLines
Not documented.
PanningWindowProc
Not documented.
PasteFromClipboard
Inserts the content of the clipboard into the tree.
PrepareCell
This method is called immediately before a cell's content is drawn und is responsible to paint selection colors etc.
PrepareDragImage
Not documented.
Print
Not documented.
ProcessDrop
Helper method to ease OLE drag'n drop operations.
ProcessOLEData
Takes serialized OLE tree data and reconstructs the former structure.
ReadChunk
Not documented.
ReadNode
Not documented.
RedirectFontChangeEvent
Not documented.
ReinitChildren
Forces all child nodes of Node to be reinitialized.
ReinitNode
Forces a reinitialization of the given node.
RemoveFromSelection
Removes the given node from the current selection.
RenderOLEData
Renders pending OLE data.
RepaintNode
Causes the treeview to repaint the given node.
ResetNode
Resets the given node to uninitialized.
ResetRangeAnchor
Not documented.
RestoreFontChangeEvent
Not documented.
SaveToFile
Saves the entire content of the tree into a file or stream.
SaveToStream
Saves the entire content of the tree into a file or stream.
ScrollIntoView
This is the overview for the ScrollIntoView method overload.
SelectAll
Selects all nodes in the tree.
SelectedNodes
Not documented.
SelectNodes
Selects a range of nodes.
SetFocusedNodeAndColumn
Not documented.
SkipNode
Not documented.
Sort
Sorts the given node.
SortTree
Sorts the entire tree view.
StartOperation
Not documented.
StartWheelPanning
Not documented.
StopWheelPanning
Not documented.
StructureChange
Not documented.
SuggestDropEffect
Not documented.
ToggleNode
Changes a node's expand state to the opposite state.
ToggleSelection
Toggles the selection state of a range of nodes.
UnselectNodes
Deselects a range of nodes.
UpdateAction
Not documented.
UpdateColumnCheckState
Not documented.
UpdateDesigner
Not documented.
UpdateEditBounds
Not documented.
UpdateHeaderRect
Not documented.
UpdateHorizontalRange
Not documented.
UpdateHorizontalScrollBar
Applies changes to the horizontal and vertical scrollbars.
UpdateRanges
Not documented.
UpdateScrollBars
Applies changes to the horizontal and vertical scrollbars.
UpdateVerticalRange
Not documented.
UpdateVerticalScrollBar
Applies changes to the horizontal and vertical scrollbars.
UpdateWindowAndDragImage
Not documented.
UseRightToLeftReading
Helper method for right-to-left layout.
ValidateCache
Initiates the validation of the internal node cache.
ValidateChildren
Validates all children of a given node.
ValidateNode
Validates a given node.
ValidateNodeDataSize
Helper method for node data size initalization.
VisibleChildNodes
Not documented.
VisibleChildNoInitNodes
Not documented.
VisibleNodes
Not documented.
VisibleNoInitNodes
Not documented.
WndProc
Redirected window procedure to do some special processing.
WriteChunks
Writes the core chunks for the given node to the given stream.
WriteNode
Writes the cover (envelop) chunk for the given node to the given stream.

TCustomVirtualDrawTree Class

DoDrawHint
Overridable method which triggers OnDrawHint.
DoGetCellContentMargin
Not documented.
DoGetHintSize
Overridable method which triggers OnGetHintSize.
DoGetNodeWidth
Overridable method which triggers OnGetNodeWidth.
DoPaintNode
Overridable method which triggers OnPaintNode.

TVirtualDrawTree Class

GetOptionsClass
Customization helper to determine which options class the tree should use.


TBaseVirtualTree Properties
TVirtualDrawTree Class | Legend
TBaseVirtualTree Properties

Accessible
Not documented.
AccessibleItem
Not documented.
AccessibleName
Not documented.
Alignment
Determines the horizontal alignment of text if no columns are defined.
AnimationDuration
Determines the maximum duration the tree can use to play an animation.
AutoExpandDelay
Time delay after which a node gets expanded if it is the current drop target.
AutoScrollDelay
Time which determines when auto scrolling should start.
AutoScrollInterval
Time interval between scroll events when doing auto scroll.
Background
Holds a background image for the tree.
BackgroundOffsetX
Horizontal offset of the background image.
BackgroundOffsetY
Vertical offset of the background image.
BorderStyle
Same as TForm.BorderStyle.
BottomNode
Not documented.
BottomSpace
Not documented.
ButtonFillMode
Determines how to fill the background of the node buttons.
ButtonStyle
Determines the look of node buttons.
ChangeDelay
Time which determines when the OnChange event should be triggered after the actual change event.
CheckedCount
Not documented.
CheckImageKind
Determines which images should be used for checkboxes and radio buttons.
CheckImages
Not documented.
CheckState
Read or set the check state of a node.
CheckType
Read or set the check type of a node.
ChildCount
Read or set the number of child nodes of a node.
ChildrenInitialized
Read whether a node's child count has been initialized already.
ClipboardFormats
Special class to keep a list of clipboard format descriptions.
Colors
A collection of colors used in the tree.
CustomCheckImages
Assign your own image list to get the check images you like most.
CutCopyCount
Not documented.
DefaultNodeHeight
Read or set the height new nodes get as initial value.
DefaultPasteMode
Read or set the value, which determines where to add pasted nodes to.
DragHeight
Read or set the vertical limit of the internal drag image.
DragImage
Holds the instance of the internal drag image.
DragImageKind
Read or set what should be shown in the drag image.
DragManager
Holds the reference to the internal drag manager.
DragOperations
Read or set which drag operations may be allowed in the tree.
DragSelection
Keeps a temporary list of nodes during drag'n drop.
DragType
Read or set which subsystem should be used for dragging.
DragWidth
Read or set the horizontal limit of the internal drag image.
DrawSelectionMode
Read or set how multiselection with the mouse is to be visualized.
DropTargetNode
Contains the current drop target node if the tree is currently the target of a drag'n drop operation.
EditColumn
Not documented.
EditDelay
Read or set the maximum time between two single clicks on the same node, which should start node editing.
EditLink
Keeps a reference to the internal edit link during a node edit operation.
EffectiveOffsetX
Not documented.
EmptyListMessage
Not documented.
Expanded
Read or set the expanded state of a particular node.
FocusedColumn
Read or set the currently focused collumn.
FocusedNode
Read or set the currently focused node.
Font
Same as TWinControl.Font.
FullyVisible
Read or set whether a node is fully visible or not.
HasChildren
Read or set whether a node has got children.
Header
Provides access to the header instance.
HeaderRect
Returns the non-client-area rectangle used for the header.
HintAnimation
Read or set the current hint animation type.
HintData
Not documented.
HintMode
Read or set what type of hint you want for the tree view.
HotCursor
Read or set which cursor should be used for hot nodes.
HotMinusBM
Not documented.
HotNode
Read, which node is currently the hot node.
HotPlusBM
Not documented.
Images
Read or set the tree's normal image list.
IncrementalSearch
Read or set the current incremental search mode.
IncrementalSearchDirection
Read or set the direction to be used for incremental search.
IncrementalSearchStart
Read or set where to start incremental search.
IncrementalSearchTimeout
Read or set the maximum time, which is allowed between two consecutive key strokes so that incremental search stays active.
Indent
Read or set the indentation amount for node levels.
IsDisabled
Read or set the enabled state of the given node.
IsEffectivelyFiltered
Not documented.
IsEffectivelyVisible
Not documented.
IsFiltered
Not documented.
IsVisible
Read or set the visibility state of the given node.
LastClickPos
Used for retained drag start and wheel mouse scrolling.
LastDropMode
Read how the last drop operation finished.
LastHintRect
Not documented.
LineMode
Read or set the mode of the tree lines.
LineStyle
Read or set the mode of the tree lines.
Margin
Read or set the tree's node margin.
MinusBM
Not documented.
MultiLine
Read or toggle the multiline feature for a given node.
NodeAlignment
Read or set the node alignment value.
NodeDataSize
Read or set the extra data size for each node.
NodeHeight
Read or set a node's height.
NodeParent
Read or set a node's parent node.
OffsetX
Read or set the tree's current horizontal and vertical scroll offsets.
OffsetXY
Read or set the tree's current horizontal and vertical scroll offsets.
OffsetY
Read or set the tree's current horizontal and vertical scroll offsets.
OperationCanceled
Not documented.
OperationCount
Not documented.
PlusBM
Not documented.
RangeX
Not documented.
RangeY
Not documented.
RootNode
Reference to the internal root node which is the anchor of the entire tree node hierarchy.
RootNodeCount
Read or set the number of nodes on the top level.
ScrollBarOptions
Reference to the scroll bar options class.
SearchBuffer
Current input string for incremental search.
Selected
Property to modify or determine the selection state of a node.
SelectedCount
Contains the number of selected nodes.
SelectionBlendFactor
Read or set the current blend factor for the multi selection rectangle and the node selection rectangle.
SelectionCurveRadius
Read or set the current corner radius for node selection rectangles.
SelectionLocked
Not documented.
StateImages
Reference to the images list which is used for the state images.
TextMargin
Read or set the distance of the node caption to its borders.
TopNode
The top node is the node which is currently at the top border of the client area.
TotalCount
Returns the number of nodes in the tree.
TotalInternalDataSize
Keeps the currently accumulated data size for one node.
TreeOptions
Reference to the tree's options.
TreeStates
Property which keeps a set of flags which indicate current operation and states of the tree.
UpdateCount
Not documented.
VerticalAlignment
Used to set a node's vertical button aligment with regard to the entire node rectangle.
VisibleCount
Number of currently visible nodes.
VisiblePath
Property to set or determine a node parent's expand states.
WantTabs
Read or set whether the tree wants to process tabs on its own.

TVirtualDrawTree Class

Action
Not documented.
Align
Not documented.
Alignment
Determines the horizontal alignment of text if no columns are defined.
Anchors
Not documented.
AnimationDuration
Determines the maximum duration the tree can use to play an animation.
AutoExpandDelay
Time delay after which a node gets expanded if it is the current drop target.
AutoScrollDelay
Time which determines when auto scrolling should start.
AutoScrollInterval
Time interval between scroll events when doing auto scroll.
Background
Holds a background image for the tree.
BackgroundOffsetX
Horizontal offset of the background image.
BackgroundOffsetY
Vertical offset of the background image.
BevelEdges
Not documented.
BevelInner
Not documented.
BevelKind
Not documented.
BevelOuter
Not documented.
BevelWidth
Not documented.
BiDiMode
Not documented.
BorderStyle
Same as TForm.BorderStyle.
BorderWidth
Not documented.
BottomSpace
Not documented.
ButtonFillMode
Determines how to fill the background of the node buttons.
ButtonStyle
Determines the look of node buttons.
Canvas
Not documented.
ChangeDelay
Time which determines when the OnChange event should be triggered after the actual change event.
CheckImageKind
Determines which images should be used for checkboxes and radio buttons.
ClipboardFormats
Special class to keep a list of clipboard format descriptions.
Color
Not documented.
Colors
A collection of colors used in the tree.
Constraints
Not documented.
Ctl3D
Not documented.
CustomCheckImages
Assign your own image list to get the check images you like most.
DefaultNodeHeight
Read or set the height new nodes get as initial value.
DefaultPasteMode
Read or set the value, which determines where to add pasted nodes to.
DragCursor
Not documented.
DragHeight
Read or set the vertical limit of the internal drag image.
DragImageKind
Read or set what should be shown in the drag image.
DragKind
Not documented.
DragMode
Not documented.
DragOperations
Read or set which drag operations may be allowed in the tree.
DragType
Read or set which subsystem should be used for dragging.
DragWidth
Read or set the horizontal limit of the internal drag image.
DrawSelectionMode
Read or set how multiselection with the mouse is to be visualized.
EditDelay
Read or set the maximum time between two single clicks on the same node, which should start node editing.
Enabled
Not documented.
Font
Same as TWinControl.Font.
Header
Provides access to the header instance.
HintAnimation
Read or set the current hint animation type.
HintMode
Read or set what type of hint you want for the tree view.
HotCursor
Read or set which cursor should be used for hot nodes.
Images
Read or set the tree's normal image list.
IncrementalSearch
Read or set the current incremental search mode.
IncrementalSearchDirection
Read or set the direction to be used for incremental search.
IncrementalSearchStart
Read or set where to start incremental search.
IncrementalSearchTimeout
Read or set the maximum time, which is allowed between two consecutive key strokes so that incremental search stays active.
Indent
Read or set the indentation amount for node levels.
LineMode
Read or set the mode of the tree lines.
LineStyle
Read or set the mode of the tree lines.
Margin
Read or set the tree's node margin.
NodeAlignment
Read or set the node alignment value.
NodeDataSize
Read or set the extra data size for each node.
OnClick
Not documented.
OnContextPopup
Not documented.
OnDblClick
Not documented.
OnEndDock
Not documented.
OnEndDrag
Not documented.
OnEnter
Not documented.
OnExit
Not documented.
OnKeyDown
Not documented.
OnKeyPress
Not documented.
OnKeyUp
Not documented.
OnMouseDown
Not documented.
OnMouseMove
Not documented.
OnMouseUp
Not documented.
OnMouseWheel
Not documented.
OnResize
Not documented.
OnStartDock
Not documented.
OnStartDrag
Not documented.
OperationCanceled
Not documented.
ParentBiDiMode
Not documented.
ParentColor
Not documented.
ParentCtl3D
Not documented.
ParentFont
Not documented.
ParentShowHint
Not documented.
PopupMenu
Not documented.
RootNodeCount
Read or set the number of nodes on the top level.
ScrollBarOptions
Reference to the scroll bar options class.
SelectionBlendFactor
Read or set the current blend factor for the multi selection rectangle and the node selection rectangle.
SelectionCurveRadius
Read or set the current corner radius for node selection rectangles.
ShowHint
Not documented.
StateImages
Reference to the images list which is used for the state images.
TabOrder
Not documented.
TabStop
Not documented.
TextMargin
Read or set the distance of the node caption to its borders.
TreeOptions
Reference to the tree's options.
Visible
Not documented.
WantTabs
Read or set whether the tree wants to process tabs on its own.


Properties (AutoDoc Folder)

Legend
Legend

Property
public
protected
read only
published


Topics
TVirtualDrawTree Class
Topics

TBaseVirtualTree Methods
The methods of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Constructors
The constructors of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Destructors
The destructors of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Properties
The properties of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Events
The events of the TBaseVirtualTree class are listed here.

TCustomVirtualDrawTree Class

TCustomVirtualDrawTree Methods
The methods of the TCustomVirtualDrawTree class are listed here.
TCustomVirtualDrawTree Events
The events of the TCustomVirtualDrawTree class are listed here.

TVirtualDrawTree Class

TVirtualDrawTree Methods
The methods of the TVirtualDrawTree class are listed here.
TVirtualDrawTree Properties
The properties of the TVirtualDrawTree class are listed here.
TVirtualDrawTree Events
The events of the TVirtualDrawTree class are listed here.


See Also
TVirtualDrawTree.StateImages Property
See Also

CheckImages, Images


See Also
TVirtualDrawTree.TextMargin Property
See Also

Margin


See Also
TVirtualStringTree.CustomCheckImages Property
See Also

TCheckImageKind


See Also
TVirtualStringTree.DefaultPasteMode Property
See Also

TVTNodeAttachMode


See Also
TVirtualStringTree.EditDelay Property
See Also

Editors and editing


See Also
TVirtualStringTree.Header Property
See Also

TVTHeader


See Also
TVirtualStringTree.HotCursor Property
See Also

HotNode, TVTPaintOptions


See Also
TVirtualStringTree.Images Property
See Also

StateImages, CheckImages


See Also
TVirtualStringTree.IncrementalSearch Property
See Also

IncrementalSearchDirection, IncrementalSearchStart, IncrementalSearchTimeout


See Also
TVirtualStringTree.IncrementalSearchDirection Property
See Also

IncrementalSearch, IncrementalSearchStart, IncrementalSearchTime123out


See Also
TVirtualStringTree.IncrementalSearchStart Property
See Also

IncrementalSearch, IncrementalSearchDirection, IncrementalSearchTimeout


See Also
TVirtualStringTree.IncrementalSearchTimeout Property
See Also

IncrementalSearch, IncrementalSearchDirection, IncrementalSearchStart


See Also
TVirtualStringTree.Margin Property
See Also

TVirtualStringTree.TextMargin


See Also
TVirtualStringTree.NodeAlignment Property
See Also

TVirtualNode


See Also
TVirtualStringTree.NodeDataSize Property
See Also

Data handling


See Also
TVirtualStringTree.OnAdvancedHeaderDraw Event
See Also

OnHeaderDrawQueryElements, OnHeaderDraw


See Also
TVirtualStringTree.OnAfterCellPaint Event
See Also

Paint cycles and stages


See Also
TVirtualStringTree.OnAfterItemErase Event
See Also

Paint cycles and stages


See Also
TVirtualStringTree.OnAfterItemPaint Event
See Also

Paint cycles and stages


See Also
TVirtualStringTree.OnAfterPaint Event
See Also

Paint cycles and stages


See Also
TVirtualStringTree.OnBeforeCellPaint Event
See Also

Paint cycles and stages


See Also
TVirtualStringTree.OnBeforeItemErase Event
See Also

Paint cycles and stages


See Also
TVirtualStringTree.OnBeforeItemPaint Event
See Also

Paint cycles and stages


See Also
TVirtualStringTree.OnBeforePaint Event
See Also

Paint cycles and stages


See Also
TVirtualStringTree.OnColumnClick Event
See Also

OnHeaderClick


See Also
TVirtualStringTree.OnColumnDblClick Event
See Also

OnColumnClick, OnHeaderDblClick


See Also
TVirtualStringTree.OnCompareNodes Event
See Also

SortTree, Sort


See Also
TVirtualStringTree.OnCreateEditor Event
See Also

Editors and editing


See Also
TVirtualStringTree.OnDragOver Event
See Also

OnDragDrop


See Also
TVirtualStringTree.OnEditCancelled Event
See Also

Editors and editing


See Also
TVirtualStringTree.OnEdited Event
See Also

Editors and editing


See Also
TVirtualStringTree.OnEditing Event
See Also

Editors and editing


See Also
TVirtualStringTree.OnGetLineStyle Event
See Also

PrepareBitmaps


See Also
TVirtualStringTree.OnGetNodeDataSize Event
See Also

NodeDataSize, Data handling


See Also
TVirtualStringTree.OnGetText Event
See Also

OnPaintText


See Also
TVirtualStringTree.OnHeaderClick Event
See Also

SortColumn, SortDirection


See Also
TVirtualStringTree.OnHeaderDblClick Event
See Also

OnHeaderClick


See Also
TVirtualStringTree.OnHeaderDrawQueryElements Event
See Also

OnAdvancedHeaderDraw


See Also
TVirtualStringTree.OnInitChildren Event
See Also

The virtual paradigm


See Also
TVirtualStringTree.OnInitNode Event
See Also

The virtual paradigm


See Also
TVirtualStringTree.OnLoadNode Event
See Also

OnSaveNode, LoadFromStream, SaveToStream, AddFromStream, VTTreeStreamVersion, TVTHeader.LoadFromStream, TVTHeader.SaveToStream


See Also
TVirtualStringTree.OnMeasureItem Event
See Also

InvalidateNode, vsHeightMeasured


See Also
TVirtualStringTree.OnNewText Event
See Also

OnCreateEditor, OnEdited


See Also
TVirtualStringTree.OnPaintText Event
See Also

Paint cycles and stages


See Also
TVirtualStringTree.OnResetNode Event
See Also

ResetNode


See Also
TVirtualStringTree.OnSaveNode Event
See Also

OnLoadNode, LoadFromStream, SaveToStream, AddFromStream, VTTreeStreamVersion, TVTHeader.LoadFromStream, TVTHeader.SaveToStream


See Also
TVirtualStringTree.OnScroll Event
See Also

OffsetXY


See Also
TVirtualStringTree.SelectionBlendFactor Property
See Also

DrawSelectionMode, TVTPaintOptions


See Also
TVirtualStringTree.SelectionCurveRadius Property
See Also

SelectionBlendFactor, DrawSelectionMode, TVTPaintOptions


TBaseVirtualTree Constructors
TVirtualStringTree Class | Legend
TBaseVirtualTree Constructors

Create
Constructor of the control

TCustomVirtualStringTree Class

Create
Constructor of the control


TBaseVirtualTree Destructors
TVirtualStringTree Class | Legend
TBaseVirtualTree Destructors

Destroy
Destructor of the control.


TBaseVirtualTree Events
TVirtualStringTree Class | Legend
TBaseVirtualTree Events

OnAddToSelection
Not documented.
OnAdvancedHeaderDraw
Header paint support event.
OnAfterAutoFitColumn
Not documented.
OnAfterAutoFitColumns
Not documented.
OnAfterCellPaint
Paint support event.
OnAfterColumnExport
Not documented.
OnAfterColumnWidthTracking
Not documented.
OnAfterGetMaxColumnWidth
Not documented.
OnAfterHeaderExport
Not documented.
OnAfterHeaderHeightTracking
Not documented.
OnAfterItemErase
Paint support event.
OnAfterItemPaint
Paint support event.
OnAfterNodeExport
Not documented.
OnAfterPaint
Paint support event.
OnAfterTreeExport
Not documented.
OnBeforeAutoFitColumn
Not documented.
OnBeforeAutoFitColumns
Not documented.
OnBeforeCellPaint
Paint support event.
OnBeforeColumnExport
Not documented.
OnBeforeColumnWidthTracking
Not documented.
OnBeforeDrawTreeLine
Not documented.
OnBeforeGetMaxColumnWidth
Not documented.
OnBeforeHeaderExport
Not documented.
OnBeforeHeaderHeightTracking
Not documented.
OnBeforeItemErase
Paint support event.
OnBeforeItemPaint
Paint support event.
OnBeforeNodeExport
Not documented.
OnBeforePaint
Paint support event.
OnBeforeTreeExport
Not documented.
OnCanSplitterResizeColumn
Not documented.
OnCanSplitterResizeHeader
Not documented.
OnCanSplitterResizeNode
Not documented.
OnChange
Navigation support event.
OnChecked
Check support event.
OnChecking
Check support event.
OnCollapsed
Miscellaneous event.
OnCollapsing
Miscellaneous event.
OnColumnClick
Header and column support event.
OnColumnDblClick
Header and column support event.
OnColumnExport
Not documented.
OnColumnResize
Header and column support routine.
OnColumnWidthDblClickResize
Not documented.
OnColumnWidthTracking
Not documented.
OnCompareNodes
Sort and search support event.
OnCreateDataObject
Drag'n drop support event.
OnCreateDragManager
Drag'n drop support event.
OnCreateEditor
Editing support event.
OnDragAllowed
Drag'n drop support event.
OnDragDrop
Drag'n drop support event.
OnDragOver
Drag'n drop support event.
OnEditCancelled
Editing support event.
OnEdited
Editing support event.
OnEditing
Editing support event.
OnEndOperation
Not documented.
OnExpanded
Misscellaneous event.
OnExpanding
Miscellaneous event.
OnFocusChanged
Navigation support event.
OnFocusChanging
Navigation support event.
OnFreeNode
Data management node.
OnGetCellIsEmpty
Triggered when the tree control needs to know whether a given column is empty.
OnGetCursor
Miscellaneous event.
OnGetHeaderCursor
Header and column support event.
OnGetHelpContext
Miscellaneous event.
OnGetImageIndex
Display management event.
OnGetImageIndexEx
Not documented.
OnGetImageText
Not documented.
OnGetLineStyle
Display management event.
OnGetNodeDataSize
Data management event.
OnGetPopupMenu
Miscellaneous event.
OnGetUserClipboardFormats
Drag'n drop and clipboard support event.
OnHeaderClick
Header & column support event.
OnHeaderDblClick
Header & column support event.
OnHeaderDragged
Header & column support event.
OnHeaderDraggedOut
Header & column support event.
OnHeaderDragging
Header & column support event.
OnHeaderDraw
Header & column support event.
OnHeaderDrawQueryElements
Header & column support event.
OnHeaderHeightDblClickResize
Not documented.
OnHeaderHeightTracking
Not documented.
OnHeaderMouseDown
Header & column support event.
OnHeaderMouseMove
Header & column support event.
OnHeaderMouseUp
Header & column support event.
OnHotChange
Navigation support event.
OnIncrementalSearch
Miscellaneous event.
OnInitChildren
Node management event.
OnInitNode
Node management event.
OnKeyAction
Miscellaneous event.
OnLoadNode
Streaming support event.
OnLoadTree
Not documented.
OnMeasureItem
Miscellaneous event.
OnNodeClick
Not documented.
OnNodeCopied
Miscellaneous event.
OnNodeCopying
Miscellaneous event.
OnNodeDblClick
Not documented.
OnNodeExport
Not documented.
OnNodeHeightDblClickResize
Not documented.
OnNodeHeightTracking
Not documented.
OnNodeMoved
Miscellaneous event.
OnNodeMoving
Miscellaneous event.
OnPaintBackground
Paint support event.
OnRemoveFromSelection
Not documented.
OnRenderOLEData
Drag'n drop and clipboard support event.
OnResetNode
Node management event.
OnSaveNode
Streaming support event.
OnSaveTree
Not documented.
OnScroll
Miscellaneous event.
OnShowScrollbar
Not documented.
OnStartOperation
Not documented.
OnStateChange
Miscellaneous event.
OnStructureChange
Miscellaneous event.
OnUpdating
Miscellaneous event.

TCustomVirtualStringTree Class

OnDrawText
Not documented.
OnGetHint
Virtual string tree event to query for a custom hint text.
OnGetText
Virtual string tree event to query for a node's normal or static text.
OnMeasureTextHeight
Not documented.
OnMeasureTextWidth
Not documented.
OnNewText
Virtual string tree event to pass edited text.
OnPaintText
Event to change text formatting for particular nodes.
OnShortenString
String tree event for custom handling of string abbreviations.

TVirtualStringTree Class

OnAddToSelection
Not documented.
OnAdvancedHeaderDraw
Header paint support event.
OnAfterAutoFitColumn
Not documented.
OnAfterAutoFitColumns
Not documented.
OnAfterCellPaint
Paint support event.
OnAfterColumnExport
Not documented.
OnAfterColumnWidthTracking
Not documented.
OnAfterGetMaxColumnWidth
Not documented.
OnAfterHeaderExport
Not documented.
OnAfterHeaderHeightTracking
Not documented.
OnAfterItemErase
Paint support event.
OnAfterItemPaint
Paint support event.
OnAfterNodeExport
Not documented.
OnAfterPaint
Paint support event.
OnAfterTreeExport
Not documented.
OnBeforeAutoFitColumn
Not documented.
OnBeforeAutoFitColumns
Not documented.
OnBeforeCellPaint
Paint support event.
OnBeforeColumnExport
Not documented.
OnBeforeColumnWidthTracking
Not documented.
OnBeforeDrawTreeLine
Not documented.
OnBeforeGetMaxColumnWidth
Not documented.
OnBeforeHeaderExport
Not documented.
OnBeforeHeaderHeightTracking
Not documented.
OnBeforeItemErase
Paint support event.
OnBeforeItemPaint
Paint support event.
OnBeforeNodeExport
Not documented.
OnBeforePaint
Paint support event.
OnBeforeTreeExport
Not documented.
OnCanSplitterResizeColumn
Not documented.
OnCanSplitterResizeHeader
Not documented.
OnCanSplitterResizeNode
Not documented.
OnChange
Navigation support event.
OnChecked
Check support event.
OnChecking
Check support event.
OnCollapsed
Miscellaneous event.
OnCollapsing
Miscellaneous event.
OnColumnClick
Header and column support event.
OnColumnDblClick
Header and column support event.
OnColumnExport
Not documented.
OnColumnResize
Header and column support routine.
OnColumnWidthDblClickResize
Not documented.
OnColumnWidthTracking
Not documented.
OnCompareNodes
Sort and search support event.
OnCreateDataObject
Drag'n drop support event.
OnCreateDragManager
Drag'n drop support event.
OnCreateEditor
Editing support event.
OnDragAllowed
Drag'n drop support event.
OnDragDrop
Drag'n drop support event.
OnDragOver
Drag'n drop support event.
OnDrawText
Not documented.
OnEditCancelled
Editing support event.
OnEdited
Editing support event.
OnEditing
Editing support event.
OnEndOperation
Not documented.
OnExpanded
Misscellaneous event.
OnExpanding
Miscellaneous event.
OnFocusChanged
Navigation support event.
OnFocusChanging
Navigation support event.
OnFreeNode
Data management node.
OnGetCellIsEmpty
Triggered when the tree control needs to know whether a given column is empty.
OnGetCursor
Miscellaneous event.
OnGetHeaderCursor
Header and column support event.
OnGetHelpContext
Miscellaneous event.
OnGetHint
Virtual string tree event to query for a custom hint text.
OnGetImageIndex
Display management event.
OnGetImageIndexEx
Not documented.
OnGetImageText
Not documented.
OnGetLineStyle
Display management event.
OnGetNodeDataSize
Data management event.
OnGetPopupMenu
Miscellaneous event.
OnGetText
Virtual string tree event to query for a node's normal or static text.
OnGetUserClipboardFormats
Drag'n drop and clipboard support event.
OnHeaderClick
Header & column support event.
OnHeaderDblClick
Header & column support event.
OnHeaderDragged
Header & column support event.
OnHeaderDraggedOut
Header & column support event.
OnHeaderDragging
Header & column support event.
OnHeaderDraw
Header & column support event.
OnHeaderDrawQueryElements
Header & column support event.
OnHeaderHeightDblClickResize
Not documented.
OnHeaderHeightTracking
Not documented.
OnHeaderMouseDown
Header & column support event.
OnHeaderMouseMove
Header & column support event.
OnHeaderMouseUp
Header & column support event.
OnHotChange
Navigation support event.
OnIncrementalSearch
Miscellaneous event.
OnInitChildren
Node management event.
OnInitNode
Node management event.
OnKeyAction
Miscellaneous event.
OnLoadNode
Streaming support event.
OnLoadTree
Not documented.
OnMeasureItem
Miscellaneous event.
OnMeasureTextHeight
Not documented.
OnMeasureTextWidth
Not documented.
OnNewText
Virtual string tree event to pass edited text.
OnNodeClick
Not documented.
OnNodeCopied
Miscellaneous event.
OnNodeCopying
Miscellaneous event.
OnNodeDblClick
Not documented.
OnNodeExport
Not documented.
OnNodeHeightDblClickResize
Not documented.
OnNodeHeightTracking
Not documented.
OnNodeMoved
Miscellaneous event.
OnNodeMoving
Miscellaneous event.
OnPaintBackground
Paint support event.
OnPaintText
Event to change text formatting for particular nodes.
OnRemoveFromSelection
Not documented.
OnRenderOLEData
Drag'n drop and clipboard support event.
OnResetNode
Node management event.
OnSaveNode
Streaming support event.
OnSaveTree
Not documented.
OnScroll
Miscellaneous event.
OnShortenString
String tree event for custom handling of string abbreviations.
OnShowScrollbar
Not documented.
OnStartOperation
Not documented.
OnStateChange
Miscellaneous event.
OnStructureChange
Miscellaneous event.
OnUpdating
Miscellaneous event.


Legend
TVirtualStringTree Class
Legend

Method
public
virtual
protected
Constructor
Property
read only
published
Event


TBaseVirtualTree Methods
TVirtualStringTree Class | Legend
TBaseVirtualTree Methods

AbsoluteIndex
Reads the overall index of a node.
AddChild
Creates and adds a new child node to given node.
AddFromStream
Adds the content from the given stream to the given node.
AddToSelection
This is the overview for the AddToSelection method overload.
AdjustImageBorder
Depending on the width of the image list as well as the given bidi mode R must be adjusted.
AdjustPaintCellRect
Used in descentants to modify the clip rectangle of the current column while painting a certain node.
AdjustPanningCursor
Loads the proper cursor which indicates into which direction scrolling is done.
AdviseChangeEvent
Used to register a delayed change event.
AllocateInternalDataArea
Registration method to allocate tree internal data per node.
Animate
Support method for animated actions in the tree view.
Assign
Used to copy properties from another Virtual Treeview.
BeginDrag
Starts an OLE drag'n drop operation.
BeginSynch
Enters the tree into a special synchronized mode.
BeginUpdate
Locks the tree view to perform several update operations.
CalculateSelectionRect
Support method for draw selection.
CanAutoScroll
Determines whether the tree can currently auto scroll its window.
CancelCutOrCopy
Canceles any pending cut or copy clipboard operation.
CancelEditNode
Cancel the current edit operation, if there is any.
CancelOperation
Not documented.
CanEdit
Determines whether a node can be edited or not.
CanFocus
Support method to determine whether the tree window can receive the input focus.
CanShowDragImage
Determines whether a drag image should be shown.
CanSplitterResizeNode
Not documented.
Change
Central method called when a node's selection state changes.
ChangeScale
Helper method called by the VCL when control resizing is due.
CheckedNodes
Not documented.
CheckParentCheckState
Helper method for recursive check state changes.
ChildNodes
Not documented.
Clear
Clears the tree and removes all nodes.
ClearChecked
Not documented.
ClearSelection
Removes all nodes from the current selection.
ClearTempCache
Helper method to clear the internal temporary node cache.
ColumnIsEmpty
Used to determine if a cell is considered as being empty.
ComputeRTLOffset
Not documented.
CopyTo
This is the overview for the CopyTo method overload.
CopyToClipBoard
Copies all currently selected nodes to the clipboard.
CountLevelDifference
Determines the level difference of two nodes.
CountVisibleChildren
Determines the number of visible child nodes of the given node.
CreateParams
Prepares the creation of the controls window handle.
CreateWnd
Initializes data, which depends on the window handle.
CutCopyNodes
Not documented.
CutToClipBoard
Copies the currently selected nodes to the clipboard and removes them once a consumer has taken the data.
DefineProperties
Helper method to customize loading and saving persistent tree data.
DeleteChildren
Removes all child nodes from the given node.
DeleteNode
Removes the given node from the tree.
DeleteSelectedNodes
Removes all currently selected nodes form the tree.
DetermineDropMode
Not documented.
DetermineHiddenChildrenFlag
Determines whether all children of a given node are hidden.
DetermineHiddenChildrenFlagAllNodes
Determines whether all children of all nodes are hidden.
DetermineHitPositionLTR
Determines the hit position within a node with left-to-right and right-to-left orientation.
DetermineHitPositionRTL
Determines the hit position within a node with left-to-right and right-to-left orientation.
DetermineLineImageAndSelectLevel
Not documented.
DetermineNextCheckState
Not documented.
DetermineScrollDirections
Not documented.
DoAdvancedHeaderDraw
Not documented.
DoAfterCellPaint
Not documented.
DoAfterItemErase
Not documented.
DoAfterItemPaint
Not documented.
DoAfterPaint
Not documented.
DoAutoScroll
Enables or disables the auto scroll timer.
DoBeforeCellPaint
Not documented.
DoBeforeDrag
Not documented.
DoBeforeDrawLineImage
Not documented.
DoBeforeItemErase
Not documented.
DoBeforeItemPaint
Not documented.
DoBeforePaint
Not documented.
DoCancelEdit
Called when the tree should stop editing without accepting changed values.
DoCanEdit
Not documented.
DoCanSplitterResizeNode
Not documented.
DoChange
Not documented.
DoCheckClick
Not documented.
DoChecked
Not documented.
DoChecking
Not documented.
DoCollapsed
Not documented.
DoCollapsing
Not documented.
DoColumnClick
Not documented.
DoColumnDblClick
Not documented.
DoColumnResize
Not documented.
DoCompare
Not documented.
DoCreateDataObject
Not documented.
DoCreateDragManager
Not documented.
DoCreateEditor
Not documented.
DoDragDrop
Not documented.
DoDragExpand
Not documented.
DoDragging
Internal method which handles drag' drop.
DoDragOver
Not documented.
DoEdit
Initiates editing of the currently set focused column and edit node.
DoEndDrag
Not documented.
DoEndEdit
Stops the current edit operation and takes over the new content.
DoEndOperation
Not documented.
DoExpanded
Not documented.
DoExpanding
Not documented.
DoFocusChange
Not documented.
DoFocusChanging
Not documented.
DoFocusNode
Internal method to set the focused node.
DoFreeNode
Not documented.
DoGetAnimationType
Determines the type of animation to be used.
DoGetCellContentMargin
Not documented.
DoGetCursor
Not documented.
DoGetHeaderCursor
Not documented.
DoGetImageIndex
Not documented.
DoGetImageText
Not documented.
DoGetLineStyle
Not documented.
DoGetNodeHint
Not documented.
DoGetNodeTooltip
Not documented.
DoGetNodeWidth
Overridable method which always retuns 0.
DoGetPopupMenu
Overridable method which triggers the OnGetPopup event.
DoGetUserClipboardFormats
Not documented.
DoHeaderClick
Not documented.
DoHeaderDblClick
Not documented.
DoHeaderDragged
Not documented.
DoHeaderDraggedOut
Not documented.
DoHeaderDragging
Not documented.
DoHeaderDraw
Not documented.
DoHeaderDrawQueryElements
Not documented.
DoHeaderMouseDown
Not documented.
DoHeaderMouseMove
Not documented.
DoHeaderMouseUp
Not documented.
DoHotChange
Not documented.
DoIncrementalSearch
Not documented.
DoInitChildren
Not documented.
DoInitNode
Not documented.
DoKeyAction
Not documented.
DoLoadUserData
Not documented.
DoMeasureItem
Not documented.
DoNodeClick
Not documented.
DoNodeCopied
Not documented.
DoNodeCopying
Not documented.
DoNodeDblClick
Not documented.
DoNodeHeightDblClickResize
Not documented.
DoNodeHeightTracking
Not documented.
DoNodeMoved
Not documented.
DoNodeMoving
Not documented.
DoPaintBackground
Not documented.
DoPaintDropMark
Overridable method which draws the small line on top of a nodes image depending on the current drop state.
DoPaintNode
Overridable method which does nothing.
DoPopupMenu
Overridable method which shows the popup menu for the given node.
DoRenderOLEData
Not documented.
DoReset
Not documented.
DoSaveUserData
Not documented.
DoScroll
Overridable method which triggers the OnScroll event.
DoSetOffsetXY
Internal core routine to set the tree's scroll position.
DoShowScrollbar
Not documented.
DoStartDrag
Not documented.
DoStartOperation
Not documented.
DoStateChange
Not documented.
DoStructureChange
Not documented.
DoTimerScroll
Callback method which is triggered whenever the scroll timer fires.
DoUpdating
Not documented.
DoValidateCache
Not documented.
DragAndDrop
Not documented.
DragCanceled
Called by the VCL when a drag'n drop operation was canceled by the user.
DragDrop
Helper method, which is used when a drag operation is finished.
DragEnter
Not documented.
DragFinished
Called when a drag operation is finished (accepted or cancelled).
Dragging
Returns true if a drag'n drop operation is in progress.
DragLeave
Not documented.
DragOver
Not documented.
DrawDottedHLine
Not documented.
DrawDottedVLine
Not documented.
EditNode
Starts editing the given node if allowed to.
EndEditNode
Stops node editing if it was started before.
EndOperation
Not documented.
EndSynch
Counterpart to BeginSynch.
EndUpdate
Resets the update lock set by BeginUpdate.
ExecuteAction
Not documented.
FindNodeInSelection
Helper method to find the given node in the current selection.
FinishChunkHeader
Not documented.
FinishCutOrCopy
Stops any pending cut or copy clipboard operation.
FlushClipboard
Renders all pending clipboard data.
FontChanged
Not documented.
FullCollapse
Collapses all nodes in the tree.
FullExpand
Expands all nodes in the tree.
GetBorderDimensions
Not documented.
GetCheckImage
Not documented.
GetCheckImageListFor
Not documented.
GetColumnClass
Returns the class to be used to manage columns in the tree.
GetControlsAlignment
Not documented.
GetDisplayRect
Not documented.
GetEffectivelyFiltered
Not documented.
GetEffectivelyVisible
Not documented.
GetFirst
Group of node navigation functions.
GetFirstChecked
Not documented.
GetFirstChild
Group of node navigation functions.
GetFirstCutCopy
Group of node navigation functions.
GetFirstInitialized
Group of node navigation functions.
GetFirstLeaf
Not documented.
GetFirstLevel
Not documented.
GetFirstNoInit
Group of node navigation functions.
GetFirstSelected
Group of node navigation functions.
GetFirstVisible
Group of node navigation functions.
GetFirstVisibleChild
Not documented.
GetFirstVisibleChildNoInit
Not documented.
GetFirstVisibleNoInit
Group of node navigation functions.
GetHeaderClass
Returns the header class to be used by the tree.
GetHintWindowClass
Not documented.
GetHitTestInfoAt
Returns information about the node at the given position.
GetImageIndex
Not documented.
GetLast
Not documented.
GetLastChild
GetLastChildNoInit
GetLastInitialized
Not documented.
GetLastNoInit
Not documented.
GetLastVisible
Not documented.
GetLastVisibleChild
Not documented.
GetLastVisibleChildNoInit
Not documented.
GetLastVisibleNoInit
Not documented.
GetMaxColumnWidth
Not documented.
GetMaxRightExtend
Determines the maximum with of the currently visible part of the tree.
GetNativeClipboardFormats
Used to let descendants and the application add their own supported clipboard formats.
GetNext
Not documented.
GetNextChecked
This is the overview for the GetNextChecked method overload.
GetNextCutCopy
Not documented.
GetNextInitialized
Not documented.
GetNextLeaf
Not documented.
GetNextLevel
Not documented.
GetNextNoInit
Not documented.
GetNextSelected
Not documented.
GetNextSibling
GetNextVisible
Not documented.
GetNextVisibleNoInit
Not documented.
GetNextVisibleSibling
Not documented.
GetNextVisibleSiblingNoInit
Not documented.
GetNodeAt
This is the overview for the GetNodeAt method overload.
GetNodeData
Returns the address of the user data area of the given node.
GetNodeLevel
Returns the indentation level of the given node.
GetOperationCanceled
Not documented.
GetOptionsClass
Customization helper to determine which options class the tree should use.
GetPrevious
Not documented.
GetPreviousChecked
Not documented.
GetPreviousCutCopy
Not documented.
GetPreviousInitialized
Not documented.
GetPreviousLeaf
Not documented.
GetPreviousLevel
Not documented.
GetPreviousNoInit
Not documented.
GetPreviousSelected
Not documented.
GetPreviousSibling
GetPreviousVisible
Not documented.
GetPreviousVisibleNoInit
Not documented.
GetPreviousVisibleSibling
Not documented.
GetPreviousVisibleSiblingNoInit
Not documented.
GetSortedCutCopySet
Returns a sorted list of nodes, which are marked for s cut or copy clipboard operation.
GetSortedSelection
Returns a sorted list of all currently selected nodes.
GetTextInfo
Not documented.
GetTreeFromDataObject
OLE drag'n drop and clipboard support method.
GetTreeRect
Returns the size of the virtual tree image.
GetVisibleParent
Not documented.
HandleHotTrack
Not documented.
HandleIncrementalSearch
Not documented.
HandleMouseDblClick
Not documented.
HandleMouseDown
Not documented.
HandleMouseUp
Not documented.
HasAsParent
Determines if the given node has got another node as one of its parents.
HasImage
Not documented.
HasPopupMenu
Determines whether there is a pop up menu assigned to the tree.
InitChildren
Not documented.
InitializedNodes
Not documented.
InitNode
Not documented.
InsertNode
Inserts a new node and returns it to the caller.
InternalAddFromStream
Not documented.
InternalAddToSelection
This is the overview for the InternalAddToSelection method overload.
InternalCacheNode
Not documented.
InternalClearSelection
Not documented.
InternalConnectNode
Not documented.
InternalData
Returns the address of the internal data for a tree class.
InternalDisconnectNode
Not documented.
InternalRemoveFromSelection
Not documented.
InvalidateCache
Empties the internal node cache and marks it as invalid.
InvalidateChildren
Invalidates all children of the given node.
InvalidateColumn
Invalidates the client area part of a column.
InvalidateNode
Invalidates the given node.
InvalidateToBottom
Invalidates the client area starting with the top position of the given node.
InvertSelection
Inverts the current selection.
IsEditing
Tells the caller whether the tree is currently in edit mode.
IsMouseSelecting
Tell the caller whether the tree is currently in draw selection mode.
IterateSubtree
Iterator method to go through all nodes of a given sub tree.
LeafNodes
Not documented.
LevelNodes
Not documented.
Loaded
Not documented.
LoadFromFile
Loads previously streamed out tree data back in again.
LoadFromStream
Loads previously streamed out tree data back in again.
MainColumnChanged
Not documented.
MarkCutCopyNodes
Not documented.
MeasureItemHeight
Not documented.
MouseMove
Not documented.
MoveTo
This is the overview for the MoveTo method overload.
Nodes
Not documented.
NoInitNodes
Not documented.
Notification
Not documented.
OriginalWMNCPaint
Not documented.
Paint
TControl's Paint method used here to display the tree.
PaintCheckImage
Not documented.
PaintImage
Not documented.
PaintNodeButton
Not documented.
PaintSelectionRectangle
Not documented.
PaintTree
Main paint routine for the tree image.
PaintTreeLines
Not documented.
PanningWindowProc
Not documented.
PasteFromClipboard
Inserts the content of the clipboard into the tree.
PrepareCell
This method is called immediately before a cell's content is drawn und is responsible to paint selection colors etc.
PrepareDragImage
Not documented.
Print
Not documented.
ProcessDrop
Helper method to ease OLE drag'n drop operations.
ProcessOLEData
Takes serialized OLE tree data and reconstructs the former structure.
ReadChunk
Not documented.
ReadNode
Not documented.
RedirectFontChangeEvent
Not documented.
ReinitChildren
Forces all child nodes of Node to be reinitialized.
ReinitNode
Forces a reinitialization of the given node.
RemoveFromSelection
Removes the given node from the current selection.
RenderOLEData
Renders pending OLE data.
RepaintNode
Causes the treeview to repaint the given node.
ResetNode
Resets the given node to uninitialized.
ResetRangeAnchor
Not documented.
RestoreFontChangeEvent
Not documented.
SaveToFile
Saves the entire content of the tree into a file or stream.
SaveToStream
Saves the entire content of the tree into a file or stream.
ScrollIntoView
This is the overview for the ScrollIntoView method overload.
SelectAll
Selects all nodes in the tree.
SelectedNodes
Not documented.
SelectNodes
Selects a range of nodes.
SetFocusedNodeAndColumn
Not documented.
SkipNode
Not documented.
Sort
Sorts the given node.
SortTree
Sorts the entire tree view.
StartOperation
Not documented.
StartWheelPanning
Not documented.
StopWheelPanning
Not documented.
StructureChange
Not documented.
SuggestDropEffect
Not documented.
ToggleNode
Changes a node's expand state to the opposite state.
ToggleSelection
Toggles the selection state of a range of nodes.
UnselectNodes
Deselects a range of nodes.
UpdateAction
Not documented.
UpdateColumnCheckState
Not documented.
UpdateDesigner
Not documented.
UpdateEditBounds
Not documented.
UpdateHeaderRect
Not documented.
UpdateHorizontalRange
Not documented.
UpdateHorizontalScrollBar
Applies changes to the horizontal and vertical scrollbars.
UpdateRanges
Not documented.
UpdateScrollBars
Applies changes to the horizontal and vertical scrollbars.
UpdateVerticalRange
Not documented.
UpdateVerticalScrollBar
Applies changes to the horizontal and vertical scrollbars.
UpdateWindowAndDragImage
Not documented.
UseRightToLeftReading
Helper method for right-to-left layout.
ValidateCache
Initiates the validation of the internal node cache.
ValidateChildren
Validates all children of a given node.
ValidateNode
Validates a given node.
ValidateNodeDataSize
Helper method for node data size initalization.
VisibleChildNodes
Not documented.
VisibleChildNoInitNodes
Not documented.
VisibleNodes
Not documented.
VisibleNoInitNodes
Not documented.
WndProc
Redirected window procedure to do some special processing.
WriteChunks
Writes the core chunks for the given node to the given stream.
WriteNode
Writes the cover (envelop) chunk for the given node to the given stream.

TCustomVirtualStringTree Class

AdjustPaintCellRect
Method which can be used by descentants to adjust the given rectangle during a paint cycle.
CalculateTextWidth
Not documented.
CanExportNode
Not documented.
ColumnIsEmpty
Used to determine if a cell is considered as being empty.
ComputeNodeHeight
Not documented.
ContentToClipboard
Not documented.
ContentToCustom
Not documented.
ContentToHTML
Not documented.
ContentToRTF
Not documented.
ContentToText
This is the overview for the ContentToText method overload.
ContentToUnicode
This is the overview for the ContentToUnicode method overload.
DefineProperties
Helper method to customize loading and saving persistent tree data.
DoCreateEditor
Not documented.
DoGetNodeHint
Not documented.
DoGetNodeTooltip
Not documented.
DoGetNodeWidth
Overridable method which always retuns 0.
DoGetText
Not documented.
DoIncrementalSearch
Not documented.
DoNewText
Not documented.
DoPaintNode
Overridable method which does nothing.
DoPaintText
Not documented.
DoShortenString
Not documented.
DoTextDrawing
Not documented.
DoTextMeasuring
Not documented.
GetOptionsClass
Customization helper to determine which options class the tree should use.
GetTextInfo
Not documented.
InternalData
Returns the address of the internal data for a tree class.
InvalidateNode
Invalidates the given node.
MainColumnChanged
Not documented.
Path
Not documented.
ReadChunk
Not documented.
ReadOldStringOptions
Not documented.
ReinitNode
Forces a reinitialization of the given node.
RenderOLEData
Renders pending OLE data.
SaveToCSVFile
Not documented.
WriteChunks
Writes the core chunks for the given node to the given stream.

TVirtualStringTree Class

GetOptionsClass
Customization helper to determine which options class the tree should use.


TBaseVirtualTree Properties
TVirtualStringTree Class | Legend
TBaseVirtualTree Properties

Accessible
Not documented.
AccessibleItem
Not documented.
AccessibleName
Not documented.
Alignment
Determines the horizontal alignment of text if no columns are defined.
AnimationDuration
Determines the maximum duration the tree can use to play an animation.
AutoExpandDelay
Time delay after which a node gets expanded if it is the current drop target.
AutoScrollDelay
Time which determines when auto scrolling should start.
AutoScrollInterval
Time interval between scroll events when doing auto scroll.
Background
Holds a background image for the tree.
BackgroundOffsetX
Horizontal offset of the background image.
BackgroundOffsetY
Vertical offset of the background image.
BorderStyle
Same as TForm.BorderStyle.
BottomNode
Not documented.
BottomSpace
Not documented.
ButtonFillMode
Determines how to fill the background of the node buttons.
ButtonStyle
Determines the look of node buttons.
ChangeDelay
Time which determines when the OnChange event should be triggered after the actual change event.
CheckedCount
Not documented.
CheckImageKind
Determines which images should be used for checkboxes and radio buttons.
CheckImages
Not documented.
CheckState
Read or set the check state of a node.
CheckType
Read or set the check type of a node.
ChildCount
Read or set the number of child nodes of a node.
ChildrenInitialized
Read whether a node's child count has been initialized already.
ClipboardFormats
Special class to keep a list of clipboard format descriptions.
Colors
A collection of colors used in the tree.
CustomCheckImages
Assign your own image list to get the check images you like most.
CutCopyCount
Not documented.
DefaultNodeHeight
Read or set the height new nodes get as initial value.
DefaultPasteMode
Read or set the value, which determines where to add pasted nodes to.
DragHeight
Read or set the vertical limit of the internal drag image.
DragImage
Holds the instance of the internal drag image.
DragImageKind
Read or set what should be shown in the drag image.
DragManager
Holds the reference to the internal drag manager.
DragOperations
Read or set which drag operations may be allowed in the tree.
DragSelection
Keeps a temporary list of nodes during drag'n drop.
DragType
Read or set which subsystem should be used for dragging.
DragWidth
Read or set the horizontal limit of the internal drag image.
DrawSelectionMode
Read or set how multiselection with the mouse is to be visualized.
DropTargetNode
Contains the current drop target node if the tree is currently the target of a drag'n drop operation.
EditColumn
Not documented.
EditDelay
Read or set the maximum time between two single clicks on the same node, which should start node editing.
EditLink
Keeps a reference to the internal edit link during a node edit operation.
EffectiveOffsetX
Not documented.
EmptyListMessage
Not documented.
Expanded
Read or set the expanded state of a particular node.
FocusedColumn
Read or set the currently focused collumn.
FocusedNode
Read or set the currently focused node.
Font
Same as TWinControl.Font.
FullyVisible
Read or set whether a node is fully visible or not.
HasChildren
Read or set whether a node has got children.
Header
Provides access to the header instance.
HeaderRect
Returns the non-client-area rectangle used for the header.
HintAnimation
Read or set the current hint animation type.
HintData
Not documented.
HintMode
Read or set what type of hint you want for the tree view.
HotCursor
Read or set which cursor should be used for hot nodes.
HotMinusBM
Not documented.
HotNode
Read, which node is currently the hot node.
HotPlusBM
Not documented.
Images
Read or set the tree's normal image list.
IncrementalSearch
Read or set the current incremental search mode.
IncrementalSearchDirection
Read or set the direction to be used for incremental search.
IncrementalSearchStart
Read or set where to start incremental search.
IncrementalSearchTimeout
Read or set the maximum time, which is allowed between two consecutive key strokes so that incremental search stays active.
Indent
Read or set the indentation amount for node levels.
IsDisabled
Read or set the enabled state of the given node.
IsEffectivelyFiltered
Not documented.
IsEffectivelyVisible
Not documented.
IsFiltered
Not documented.
IsVisible
Read or set the visibility state of the given node.
LastClickPos
Used for retained drag start and wheel mouse scrolling.
LastDropMode
Read how the last drop operation finished.
LastHintRect
Not documented.
LineMode
Read or set the mode of the tree lines.
LineStyle
Read or set the mode of the tree lines.
Margin
Read or set the tree's node margin.
MinusBM
Not documented.
MultiLine
Read or toggle the multiline feature for a given node.
NodeAlignment
Read or set the node alignment value.
NodeDataSize
Read or set the extra data size for each node.
NodeHeight
Read or set a node's height.
NodeParent
Read or set a node's parent node.
OffsetX
Read or set the tree's current horizontal and vertical scroll offsets.
OffsetXY
Read or set the tree's current horizontal and vertical scroll offsets.
OffsetY
Read or set the tree's current horizontal and vertical scroll offsets.
OperationCanceled
Not documented.
OperationCount
Not documented.
PlusBM
Not documented.
RangeX
Not documented.
RangeY
Not documented.
RootNode
Reference to the internal root node which is the anchor of the entire tree node hierarchy.
RootNodeCount
Read or set the number of nodes on the top level.
ScrollBarOptions
Reference to the scroll bar options class.
SearchBuffer
Current input string for incremental search.
Selected
Property to modify or determine the selection state of a node.
SelectedCount
Contains the number of selected nodes.
SelectionBlendFactor
Read or set the current blend factor for the multi selection rectangle and the node selection rectangle.
SelectionCurveRadius
Read or set the current corner radius for node selection rectangles.
SelectionLocked
Not documented.
StateImages
Reference to the images list which is used for the state images.
TextMargin
Read or set the distance of the node caption to its borders.
TopNode
The top node is the node which is currently at the top border of the client area.
TotalCount
Returns the number of nodes in the tree.
TotalInternalDataSize
Keeps the currently accumulated data size for one node.
TreeOptions
Reference to the tree's options.
TreeStates
Property which keeps a set of flags which indicate current operation and states of the tree.
UpdateCount
Not documented.
VerticalAlignment
Used to set a node's vertical button aligment with regard to the entire node rectangle.
VisibleCount
Number of currently visible nodes.
VisiblePath
Property to set or determine a node parent's expand states.
WantTabs
Read or set whether the tree wants to process tabs on its own.

TCustomVirtualStringTree Class

DefaultText
Not documented.
EllipsisWidth
Not documented.
ImageText
Not documented.
Text
Not documented.
TreeOptions
Reference to the tree's options.

TVirtualStringTree Class

AccessibleName
Not documented.
Action
Not documented.
Align
Not documented.
Alignment
Determines the horizontal alignment of text if no columns are defined.
Anchors
Not documented.
AnimationDuration
Determines the maximum duration the tree can use to play an animation.
AutoExpandDelay
Time delay after which a node gets expanded if it is the current drop target.
AutoScrollDelay
Time which determines when auto scrolling should start.
AutoScrollInterval
Time interval between scroll events when doing auto scroll.
Background
Holds a background image for the tree.
BackgroundOffsetX
Horizontal offset of the background image.
BackgroundOffsetY
Vertical offset of the background image.
BevelEdges
Not documented.
BevelInner
Not documented.
BevelKind
Not documented.
BevelOuter
Not documented.
BevelWidth
Not documented.
BiDiMode
Not documented.
BorderStyle
Same as TForm.BorderStyle.
BorderWidth
Not documented.
BottomSpace
Not documented.
ButtonFillMode
Determines how to fill the background of the node buttons.
ButtonStyle
Determines the look of node buttons.
Canvas
Not documented.
ChangeDelay
Time which determines when the OnChange event should be triggered after the actual change event.
CheckImageKind
Determines which images should be used for checkboxes and radio buttons.
ClipboardFormats
Special class to keep a list of clipboard format descriptions.
Color
Not documented.
Colors
A collection of colors used in the tree.
Constraints
Not documented.
Ctl3D
Not documented.
CustomCheckImages
Assign your own image list to get the check images you like most.
DefaultNodeHeight
Read or set the height new nodes get as initial value.
DefaultPasteMode
Read or set the value, which determines where to add pasted nodes to.
DefaultText
Not documented.
DragCursor
Not documented.
DragHeight
Read or set the vertical limit of the internal drag image.
DragImageKind
Read or set what should be shown in the drag image.
DragKind
Not documented.
DragMode
Not documented.
DragOperations
Read or set which drag operations may be allowed in the tree.
DragType
Read or set which subsystem should be used for dragging.
DragWidth
Read or set the horizontal limit of the internal drag image.
DrawSelectionMode
Read or set how multiselection with the mouse is to be visualized.
EditDelay
Read or set the maximum time between two single clicks on the same node, which should start node editing.
Enabled
Not documented.
Font
Same as TWinControl.Font.
Header
Provides access to the header instance.
HintAnimation
Read or set the current hint animation type.
HintMode
Read or set what type of hint you want for the tree view.
HotCursor
Read or set which cursor should be used for hot nodes.
Images
Read or set the tree's normal image list.
IncrementalSearch
Read or set the current incremental search mode.
IncrementalSearchDirection
Read or set the direction to be used for incremental search.
IncrementalSearchStart
Read or set where to start incremental search.
IncrementalSearchTimeout
Read or set the maximum time, which is allowed between two consecutive key strokes so that incremental search stays active.
Indent
Read or set the indentation amount for node levels.
LineMode
Read or set the mode of the tree lines.
LineStyle
Read or set the mode of the tree lines.
Margin
Read or set the tree's node margin.
NodeAlignment
Read or set the node alignment value.
NodeDataSize
Read or set the extra data size for each node.
OnClick
Not documented.
OnContextPopup
Not documented.
OnDblClick
Not documented.
OnEndDock
Not documented.
OnEndDrag
Not documented.
OnEnter
Not documented.
OnExit
Not documented.
OnKeyDown
Not documented.
OnKeyPress
Not documented.
OnKeyUp
Not documented.
OnMouseDown
Not documented.
OnMouseMove
Not documented.
OnMouseUp
Not documented.
OnMouseWheel
Not documented.
OnResize
Not documented.
OnStartDock
Not documented.
OnStartDrag
Not documented.
OperationCanceled
Not documented.
ParentBiDiMode
Not documented.
ParentColor
Not documented.
ParentCtl3D
Not documented.
ParentFont
Not documented.
ParentShowHint
Not documented.
PopupMenu
Not documented.
RootNodeCount
Read or set the number of nodes on the top level.
ScrollBarOptions
Reference to the scroll bar options class.
SelectionBlendFactor
Read or set the current blend factor for the multi selection rectangle and the node selection rectangle.
SelectionCurveRadius
Read or set the current corner radius for node selection rectangles.
ShowHint
Not documented.
StateImages
Reference to the images list which is used for the state images.
TabOrder
Not documented.
TabStop
Not documented.
TextMargin
Read or set the distance of the node caption to its borders.
TreeOptions
Reference to the tree's options.
Visible
Not documented.
WantTabs
Read or set whether the tree wants to process tabs on its own.


Topics
TVirtualStringTree Class
Topics

TBaseVirtualTree Methods
The methods of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Constructors
The constructors of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Destructors
The destructors of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Properties
The properties of the TBaseVirtualTree class are listed here.
TBaseVirtualTree Events
The events of the TBaseVirtualTree class are listed here.

TCustomVirtualStringTree Class

TCustomVirtualStringTree Methods
The methods of the TCustomVirtualStringTree class are listed here.
TCustomVirtualStringTree Constructors
The constructors of the TCustomVirtualStringTree class are listed here.
TCustomVirtualStringTree Properties
The properties of the TCustomVirtualStringTree class are listed here.
TCustomVirtualStringTree Events
The events of the TCustomVirtualStringTree class are listed here.

TVirtualStringTree Class

TVirtualStringTree Methods
The methods of the TVirtualStringTree class are listed here.
TVirtualStringTree Properties
The properties of the TVirtualStringTree class are listed here.
TVirtualStringTree Events
The events of the TVirtualStringTree class are listed here.


See Also
TVirtualStringTree.StateImages Property
See Also

CheckImages, Images


See Also
TVirtualStringTree.TextMargin Property
See Also

Margin


TVirtualTreeColumn Constructors
TVirtualTreeColumn Class | Legend
TVirtualTreeColumn Constructors

Create
Not documented.


TVirtualTreeColumn Destructors
TVirtualTreeColumn Class | Legend
TVirtualTreeColumn Destructors

Destroy
Not documented.


Legend
TVirtualTreeColumn Class
Legend

Method
public
virtual
protected
Constructor
Property
published
read only


TVirtualTreeColumn Methods
TVirtualTreeColumn Class | Legend
TVirtualTreeColumn Methods

Assign
Not documented.
ComputeHeaderLayout
Not documented.
DefineProperties
Not documented.
Equals
Not documented.
GetAbsoluteBounds
Not documented.
GetDisplayName
Not documented.
GetOwner
Not documented.
GetRect
Returns the rectangle this column occupies in the header (relative to (0, 0) of the non-client area).
LoadFromStream
Not documented.
ParentBiDiModeChanged
Not documented.
ParentColorChanged
Not documented.
ReadHint
Not documented.
ReadText
Not documented.
RestoreLastWidth
Not documented.
SaveToStream
Not documented.
UseRightToLeftReading
Not documented.
WriteHint
Not documented.
WriteText
Not documented.


TVirtualTreeColumn Properties
TVirtualTreeColumn Class | Legend
TVirtualTreeColumn Properties

Alignment
Not documented.
BiDiMode
Not documented.
CaptionAlignment
Not documented.
CaptionText
Not documented.
CheckBox
Not documented.
CheckState
Not documented.
CheckType
Not documented.
Color
Not documented.
DefaultSortDirection
Not documented.
Hint
Not documented.
ImageIndex
Not documented.
Layout
Not documented.
Left
Not documented.
Margin
Not documented.
MaxWidth
Not documented.
MinWidth
Not documented.
Options
Not documented.
Owner
Not documented.
Position
Not documented.
Spacing
Not documented.
Style
Not documented.
Tag
Not documented.
Text
Not documented.
Width
Not documented.


Properties (AutoDoc Folder)

Legend
Legend

Property
published
read only
public


Topics
TVirtualTreeColumn Class
Topics

TVirtualTreeColumn Methods
The methods of the TVirtualTreeColumn class are listed here.
TVirtualTreeColumn Constructors
The constructors of the TVirtualTreeColumn class are listed here.
TVirtualTreeColumn Destructors
The destructors of the TVirtualTreeColumn class are listed here.
TVirtualTreeColumn Properties
The properties of the TVirtualTreeColumn class are listed here.


TVirtualTreeColumns Constructors
TVirtualTreeColumns Class | Legend
TVirtualTreeColumns Constructors

Create
Not documented.


TVirtualTreeColumns Destructors
TVirtualTreeColumns Class | Legend
TVirtualTreeColumns Destructors

Destroy
Not documented.


TVirtualTreeColumns Fields
TVirtualTreeColumns Class | Legend
TVirtualTreeColumns Fields

FDragIndex
index of column currently being dragged
FDropBefore
True if drop position is in the left half of a column, False for the right side to drop the dragged column to
FDropTarget
current target column (index) while dragging


Legend
TVirtualTreeColumns Class
Legend

Data Member
protected
Method
public
virtual
Constructor
Property
read only


TVirtualTreeColumns Methods
TVirtualTreeColumns Class | Legend
TVirtualTreeColumns Methods

Add
Not documented.
AdjustAutoSize
Called when columns must be sized so that the fit the client area.
AdjustDownColumn
Determines the column from the given position and returns it.
AdjustHoverColumn
Determines the new hover column index and returns true if the index actually changed else False.
AdjustPosition
Reorders the column position array so that the given column gets the given position.
AnimatedResize
Resizes the given column animated by scrolling the window DC.
Assign
Not documented.
CanSplitterResize
Not documented.
Clear
Not documented.
ColumnFromPosition
This is the overview for the ColumnFromPosition method overload.
DoCanSplitterResize
Not documented.
DrawButtonText
Not documented.
Equals
Not documented.
FixPositions
Fixes column positions after loading from DFM.
GetColumnAndBounds
Returns the column where the mouse is currently in as well as the left and right bound of this column.
GetColumnBounds
Returns the left and right bound of the given column.
GetFirstVisibleColumn
Returns the index of the first visible column or "InvalidColumn" if either no columns are defined or all columns are hidden.
GetLastVisibleColumn
Returns the index of the last visible column or "InvalidColumn" if either no columns are defined or all columns are hidden.

GetNextColumn
Returns the next column in display order. Column is the index of an item in the collection (a column).
GetNextVisibleColumn
Not documented.
GetOwner
Not documented.
GetPreviousColumn
Returns the previous column in display order, Column is an index into the columns list.
GetPreviousVisibleColumn
Not documented.
GetScrollWidth
Not documented.
GetVisibleColumns
Returns a list of all currently visible columns in actual order.
GetVisibleFixedWidth
Not documented.
HandleClick
Generates a click event if the mouse button has been released over the same column it was pressed first.
IndexChanged
Called by a column when its index in the collection changes.
InitializePositionArray
Ensures that the column position array contains as much entries as columns are defined.
IsValidColumn
Determines whether the given column is valid or not, that is, whether it is one of the current columns.
LoadFromStream
Not documented.
Notify
Not documented.
PaintHeader
This is the overview for the PaintHeader method overload.
ReorderColumns
Not documented.
SaveToStream
Not documented.
TotalWidth
Not documented.
Update
Not documented.
UpdatePositions
Recalculates the left border of every column and updates their position property according to the PostionToIndex array, which primarily determines where each column is placed visually.


TVirtualTreeColumns Properties
TVirtualTreeColumns Class | Legend
TVirtualTreeColumns Properties

ClickIndex
Not documented.
Count
Not documented.
DefaultWidth
Not documented.
Header
Not documented.
HeaderBitmap
Not documented.
Items
Not documented.
PositionToIndex
Not documented.
TrackIndex
Not documented.


Properties (AutoDoc Folder)

Legend
Legend

Property
public
read only
protected


Topics
TVirtualTreeColumns Class
Topics

TVirtualTreeColumns Fields
The fields of the TVirtualTreeColumns class are listed here.
TVirtualTreeColumns Methods
The methods of the TVirtualTreeColumns class are listed here.
TVirtualTreeColumns Constructors
The constructors of the TVirtualTreeColumns class are listed here.
TVirtualTreeColumns Destructors
The destructors of the TVirtualTreeColumns class are listed here.
TVirtualTreeColumns Properties
The properties of the TVirtualTreeColumns class are listed here.


TVirtualTreeHintWindow Constructors
TVirtualTreeHintWindow Class | Legend
TVirtualTreeHintWindow Constructors

Create
Not documented.


TVirtualTreeHintWindow Destructors
TVirtualTreeHintWindow Class | Legend
TVirtualTreeHintWindow Destructors

Destroy
Not documented.


Legend
TVirtualTreeHintWindow Class
Legend

Method
public
virtual
protected
Constructor
Property
read only


TVirtualTreeHintWindow Methods
TVirtualTreeHintWindow Class | Legend
TVirtualTreeHintWindow Methods

ActivateHint
Not documented.
CalcHintRect
Not documented.
CreateParams
Not documented.
InternalPaint
local functions
IsHintMsg
The VCL is a bit too generous when telling that an existing hint can be cancelled.
Paint
Not documented.


TVirtualTreeHintWindow Properties
TVirtualTreeHintWindow Class | Legend
TVirtualTreeHintWindow Properties

Background
Not documented.
DrawBuffer
Not documented.
HintData
Not documented.
HintWindowDestroyed
Not documented.
Target
Not documented.
TextHeight
Not documented.


Properties (AutoDoc Folder)

Legend
Legend

Property
protected
read only


Topics
TVirtualTreeHintWindow Class
Topics

TVirtualTreeHintWindow Methods
The methods of the TVirtualTreeHintWindow class are listed here.
TVirtualTreeHintWindow Constructors
The constructors of the TVirtualTreeHintWindow class are listed here.
TVirtualTreeHintWindow Destructors
The destructors of the TVirtualTreeHintWindow class are listed here.
TVirtualTreeHintWindow Properties
The properties of the TVirtualTreeHintWindow class are listed here.


TCustomVirtualTreeOptions Constructors
TVirtualTreeOptions Class | Legend
TCustomVirtualTreeOptions Constructors

Create
Constructor of the class.


Legend
TVirtualTreeOptions Class
Legend

Method
public
virtual
Constructor
Property
protected
read only
published


TCustomVirtualTreeOptions Methods
TVirtualTreeOptions Class | Legend
TCustomVirtualTreeOptions Methods

AssignTo
Used to copy this option class to another option collection.


TCustomVirtualTreeOptions Properties
TVirtualTreeOptions Class | Legend
TCustomVirtualTreeOptions Properties

AnimationOptions
Options related to animations.
AutoOptions
Options related to automatic actions.
ExportMode
Not documented.
MiscOptions
Options not related to any other category.
Owner
Owner tree to which the property class belongs.
PaintOptions
Options related to painting.
SelectionOptions
Options related to the way nodes can be selected.

TVirtualTreeOptions Class

AnimationOptions
Options related to animations.
AutoOptions
Options related to automatic actions.
ExportMode
Not documented.
MiscOptions
Options not related to any other category.
PaintOptions
Options related to painting.
SelectionOptions
Options related to the way nodes can be selected.


Topics
TVirtualTreeOptions Class
Topics

TCustomVirtualTreeOptions Methods
The methods of the TCustomVirtualTreeOptions class are listed here.
TCustomVirtualTreeOptions Constructors
The constructors of the TCustomVirtualTreeOptions class are listed here.
TCustomVirtualTreeOptions Properties
The properties of the TCustomVirtualTreeOptions class are listed here.

TVirtualTreeOptions Class

TVirtualTreeOptions Properties
The properties of the TVirtualTreeOptions class are listed here.


TVTColors Constructors
TVTColors Class | Legend
TVTColors Constructors

Create
Not documented.


Legend
TVTColors Class
Legend

Method
public
virtual
Constructor
Property
published


TVTColors Methods
TVTColors Class | Legend
TVTColors Methods

Assign
Not documented.


TVTColors Properties
TVTColors Class | Legend
TVTColors Properties

BorderColor
Not documented.
DisabledColor
Not documented.
DropMarkColor
Color of the drop mark.
DropTargetBorderColor
Not documented.
DropTargetColor
Not documented.
FocusedSelectionBorderColor
Not documented.
FocusedSelectionColor
Not documented.
GridLineColor
Not documented.
HeaderHotColor
Not documented.
HotColor
Not documented.
SelectionRectangleBlendColor
Not documented.
SelectionRectangleBorderColor
Not documented.
SelectionTextColor
Not documented.
TreeLineColor
Not documented.
UnfocusedSelectionBorderColor
Not documented.
UnfocusedSelectionColor
Not documented.


Topics
TVTColors Class
Topics

TVTColors Methods
The methods of the TVTColors class are listed here.
TVTColors Constructors
The constructors of the TVTColors class are listed here.
TVTColors Properties
The properties of the TVTColors class are listed here.


See Also
TVTDataObject.GetData Method
See Also

RenderOLEData


TVTDataObject Constructors
TVTDataObject Class | Legend
TVTDataObject Constructors

Create
Constructor of the class.


TVTDataObject Destructors
TVTDataObject Class | Legend
TVTDataObject Destructors

Destroy
Destructor of the class.


Legend
TVTDataObject Class
Legend

Method
protected
public
virtual
Constructor
Property
read only


TVTDataObject Methods
TVTDataObject Class | Legend
TVTDataObject Methods

CanonicalIUnknown
Helper method for setting data in the IDataObject.
DAdvise
Implementation of the IDataObject.DAdvise method.
DUnadvise
Implementation of the IDataObject.DUnAdvise method.
EnumDAdvise
Implementation of the IDataObject.EnumDAdvise method.
EnumFormatEtc
Implementation of the IDataObject.EnumFormatEtc method.
EqualFormatEtc
Compares two TFormatEtc structures.
FindFormatEtc
Searchs the given array for a the given format.
FindInternalStgMedium
Returns a storage medium for a given clipboard format.
GetCanonicalFormatEtc
Implementation of the IDataObject.GetCanonicalFormatEtc method.
GetData
Implementation of the IDataObject.GetData method.
GetDataHere
Implementation of the IDataObject.GetDataHere method.
HGlobalClone
Helper method for SetData.
QueryGetData
Implementation of the IDataObject.QueryGetData method.
RenderInternalOLEData
Helper method to return data previously stored by SetData.
SetData
Implementation of the IDataObject.SetData method.
StgMediumIncRef
Central managing method to copy OLE data.


Methods (AutoDoc Folder)

Legend
Legend

Method
protected
public
virtual


TVTDataObject Properties
TVTDataObject Class | Legend
TVTDataObject Properties

ForClipboard
Not documented.
FormatEtcArray
Not documented.
InternalStgMediumArray
Not documented.
Owner
Not documented.


Topics
TVTDataObject Class
Topics

TVTDataObject Methods
The methods of the TVTDataObject class are listed here.
TVTDataObject Constructors
The constructors of the TVTDataObject class are listed here.
TVTDataObject Destructors
The destructors of the TVTDataObject class are listed here.
TVTDataObject Properties
The properties of the TVTDataObject class are listed here.


TVTDragImage Constructors
TVTDragImage Class | Legend
TVTDragImage Constructors

Create
Not documented.


TVTDragImage Destructors
TVTDragImage Class | Legend
TVTDragImage Destructors

Destroy
Not documented.


Legend
TVTDragImage Class
Legend

Method
public
protected
Constructor
virtual
Property
read only


TVTDragImage Methods
TVTDragImage Class | Legend
TVTDragImage Methods

DragTo
Moves the drag image to a new position, which is determined from the passed point P and the previous mouse position.
EndDrag
Not documented.
GetDragImageRect
Returns the current size and position of the drag image (screen coordinates).
HideDragImage
Not documented.
InternalShowDragImage
Frequently called helper routine to actually do the blend and put it onto
MakeAlphaChannel
Not documented.
PrepareDrag
Creates all necessary structures to do alpha blended dragging using the given image.
RecaptureBackground
Notification by the drop target tree to update the background image because something in the tree has changed.
ShowDragImage
Shows the drag image after it has been hidden by HideDragImage.
WillMove
Add a summary here...


Methods (AutoDoc Folder)

Legend
Legend

Method
public
protected


TVTDragImage Properties
TVTDragImage Class | Legend
TVTDragImage Properties

ColorKey
Not documented.
Fade
Not documented.
MoveRestriction
Not documented.
PostBlendBias
Not documented.
PreBlendBias
Not documented.
Transparency
Not documented.
Visible
Not documented.


Topics
TVTDragImage Class
Topics

TVTDragImage Methods
The methods of the TVTDragImage class are listed here.
TVTDragImage Constructors
The constructors of the TVTDragImage class are listed here.
TVTDragImage Destructors
The destructors of the TVTDragImage class are listed here.
TVTDragImage Properties
The properties of the TVTDragImage class are listed here.


TVTDragManager Constructors
TVTDragManager Class | Legend
TVTDragManager Constructors
TVTDragManager Class

Create
Not documented.


TVTDragManager Destructors
TVTDragManager Class | Legend
TVTDragManager Destructors
TVTDragManager Class

Destroy
Not documented.


Legend
TVTDragManager Class
Legend

Method
public
Property
read only
Constructor
virtual


IVTDragManager Methods
TVTDragManager Class | Legend
IVTDragManager Methods

ForceDragLeave
Not documented.
GetDataObject
Not documented.
GetDragSource
Not documented.
GetDropTargetHelperSupported
Not documented.
GetIsDropTarget
Not documented.

TVTDragManager Class

DragEnter
Not documented.
DragLeave
Not documented.
DragOver
Not documented.
Drop
Not documented.
ForceDragLeave
This method calls the drop target helper's DragLeave method to ensure it removes the drag image from screen.
GiveFeedback
Not documented.
QueryContinueDrag
Not documented.


IVTDragManager Properties
TVTDragManager Class | Legend
IVTDragManager Properties

DataObject
Not documented.
DragSource
Not documented.
DropTargetHelperSupported
Not documented.
IsDropTarget
Not documented.


Topics
TVTDragManager Class
Topics

IVTDragManager Methods
The methods of the IVTDragManager class are listed here.
IVTDragManager Properties
The properties of the IVTDragManager class are listed here.

TVTDragManager Class

TVTDragManager Methods
The methods of the TVTDragManager class are listed here.
TVTDragManager Constructors
The constructors of the TVTDragManager class are listed here.
TVTDragManager Destructors
The destructors of the TVTDragManager class are listed here.


TVTEdit Constructors
TVTEdit Class | Legend
TVTEdit Constructors

Create
Not documented.


TVTEdit Fields
TVTEdit Class | Legend
TVTEdit Fields

FLink
Not documented.
FRefLink
Not documented.


Legend
TVTEdit Class
Legend

Data Member
protected
Method
virtual
public
Constructor
Property


TVTEdit Methods
TVTEdit Class | Legend
TVTEdit Methods

AutoAdjustSize
Not documented.
CreateParams
Not documented.
Release
Not documented.


Methods (AutoDoc Folder)

Legend
Legend

Method
protected
virtual
public


TVTEdit Properties
TVTEdit Class | Legend
TVTEdit Properties

AutoSelect
Not documented.
AutoSize
Not documented.
BorderStyle
Not documented.
CharCase
Not documented.
HideSelection
Not documented.
MaxLength
Not documented.
OEMConvert
Not documented.
PasswordChar
Not documented.


Topics
TVTEdit Class
Topics

TVTEdit Fields
The fields of the TVTEdit class are listed here.
TVTEdit Methods
The methods of the TVTEdit class are listed here.
TVTEdit Constructors
The constructors of the TVTEdit class are listed here.
TVTEdit Properties
The properties of the TVTEdit class are listed here.


TVTFixedAreaConstraints Constructors
TVTFixedAreaConstraints Class | Legend
TVTFixedAreaConstraints Constructors

Create
Not documented.


Legend
TVTFixedAreaConstraints Class
Legend

Method
public
virtual
protected
Constructor
Property
read only
published


TVTFixedAreaConstraints Methods
TVTFixedAreaConstraints Class | Legend
TVTFixedAreaConstraints Methods

Assign
Not documented.
Change
Not documented.


TVTFixedAreaConstraints Properties
TVTFixedAreaConstraints Class | Legend
TVTFixedAreaConstraints Properties

Header
Not documented.
MaxHeightPercent
Not documented.
MaxWidthPercent
Not documented.
MinHeightPercent
Not documented.
MinWidthPercent
Not documented.
OnChange
Not documented.


Properties (AutoDoc Folder)

Legend
Legend

Property
protected
read only
published
public


Topics
TVTFixedAreaConstraints Class
Topics

TVTFixedAreaConstraints Methods
The methods of the TVTFixedAreaConstraints class are listed here.
TVTFixedAreaConstraints Constructors
The constructors of the TVTFixedAreaConstraints class are listed here.
TVTFixedAreaConstraints Properties
The properties of the TVTFixedAreaConstraints class are listed here.


TVTHeader Constructors
TVTHeader Class | Legend
TVTHeader Constructors

Create
Not documented.


TVTHeader Destructors
TVTHeader Class | Legend
TVTHeader Destructors

Destroy
Not documented.


TVTHeader Fields
TVTHeader Class | Legend
TVTHeader Fields

FDragStart
initial mouse drag position
FStates
used to keep track of internal states the header can enter
FTrackPoint
Not documented.
FTrackStart
client coordinates of the tracking start point


Legend
TVTHeader Class
Legend

Data Member
protected
Method
public
virtual
Constructor
Property
published
read only


TVTHeader Methods
TVTHeader Class | Legend
TVTHeader Methods

AllowFocus
Not documented.
Assign
Not documented.
AutoFitColumns
Not documented.
CanSplitterResize
Not documented.
CanWriteColumns
Not documented.
ChangeScale
Not documented.
DetermineSplitterIndex
Tries to find the index of that column whose right border corresponds to P.
DoAfterAutoFitColumn
Not documented.
DoAfterColumnWidthTracking
Not documented.
DoAfterHeightTracking
Not documented.
DoBeforeAutoFitColumn
Not documented.
DoBeforeColumnWidthTracking
Not documented.
DoBeforeHeightTracking
Not documented.
DoCanSplitterResize
Not documented.
DoColumnWidthDblClickResize
Not documented.
DoColumnWidthTracking
Not documented.
DoGetPopupMenu
Not documented.
DoHeightDblClickResize
Not documented.
DoHeightTracking
Not documented.
DoSetSortColumn
Not documented.
DragTo
Moves the drag image to a new position, which is determined from the passed point P and the previous mouse position.
FixedAreaConstraintsChanged
Not documented.
GetColumnsClass
Returns the class to be used for the actual column implementation.
GetOwner
Not documented.
GetShiftState
Not documented.
HandleHeaderMouseMove
Not documented.
HandleMessage
General message handler for the header.
ImageListChange
Not documented.
InHeader
Determines whether the given point (client coordinates!) is within the header rectangle (non-client coordinates).
InHeaderSplitterArea
Not documented.
Invalidate
Invalidates the entire header or parts of it so they are repainted.
LoadFromStream
Restores the state of the header from the given stream.
PrepareDrag
Initializes dragging of the header, P is the current mouse postion and Start the initial mouse position.
ReadColumns
Not documented.
RecalculateHeader
Initiate a recalculation of the non-client area of the owner tree.
RescaleHeader
Not documented.
ResizeColumns
Not documented.
RestoreColumns
Restores all columns to their width which they had before they have been auto fitted.
SaveToStream
Saves the complete state of the header into the provided stream.
UpdateMainColumn
Called once the load process of the owner tree is done.
UpdateSpringColumns
Not documented.
WriteColumns
Not documented.


TVTHeader Properties
TVTHeader Class | Legend
TVTHeader Properties

AutoSizeIndex
Not documented.
Background
Not documented.
Columns
Not documented.
DefaultHeight
Not documented.
DragImage
Not documented.
FixedAreaConstraints
Not documented.
Font
Not documented.
Height
Not documented.
Images
Not documented.
MainColumn
Not documented.
MaxHeight
Not documented.
MinHeight
Not documented.
Options
Not documented.
ParentFont
Not documented.
PopupMenu
Not documented.
SortColumn
Not documented.
SortDirection
Not documented.
States
Not documented.
Style
Not documented.
Treeview
Not documented.
UseColumns
Not documented.


Properties (AutoDoc Folder)

Legend
Legend

Property
published
public
read only


Topics
TVTHeader Class
Topics

TVTHeader Fields
The fields of the TVTHeader class are listed here.
TVTHeader Methods
The methods of the TVTHeader class are listed here.
TVTHeader Constructors
The constructors of the TVTHeader class are listed here.
TVTHeader Destructors
The destructors of the TVTHeader class are listed here.
TVTHeader Properties
The properties of the TVTHeader class are listed here.


TVTHeaderPopupMenu Events
TVTHeaderPopupMenu Class | Legend
TVTHeaderPopupMenu Events

OnAddHeaderPopupItem
Not documented.
OnColumnChange
Not documented.


Events (AutoDoc Folder)

Legend
Legend

Event
published


Legend
TVTHeaderPopupMenu Class
Legend

Method
protected
virtual
public
Property
published
Event


TVTHeaderPopupMenu Methods
TVTHeaderPopupMenu Class | Legend
TVTHeaderPopupMenu Methods

DoAddHeaderPopupItem
Not documented.
DoColumnChange
Not documented.
OnMenuItemClick
Not documented.
Popup
Not documented.


TVTHeaderPopupMenu Properties
TVTHeaderPopupMenu Class | Legend
TVTHeaderPopupMenu Properties

Options
Not documented.


Topics
TVTHeaderPopupMenu Class
Topics

TVTHeaderPopupMenu Methods
The methods of the TVTHeaderPopupMenu class are listed here.
TVTHeaderPopupMenu Properties
The properties of the TVTHeaderPopupMenu class are listed here.
TVTHeaderPopupMenu Events
The events of the TVTHeaderPopupMenu class are listed here.


TVTVirtualNodeEnumeration Fields
TVTVirtualNodeEnumeration Record | Legend
TVTVirtualNodeEnumeration Fields

FConsiderChildrenAbove
Not documented.
FIncludeFiltered
Not documented.
FNode
Not documented.
FNodeLevel
Not documented.
FState
Not documented.
FTree
Not documented.
objectprivateFMode
Not documented.


Fields (AutoDoc Folder)

Legend
Legend

Data Member
public


Legend
TVTVirtualNodeEnumeration Record
Legend

Data Member
public
Method


TVTVirtualNodeEnumeration Methods
TVTVirtualNodeEnumeration Record | Legend
TVTVirtualNodeEnumeration Methods

GetEnumerator
Not documented.


Topics
TVTVirtualNodeEnumeration Record
Topics

TVTVirtualNodeEnumeration Fields
The fields of the TVTVirtualNodeEnumeration class are listed here.
TVTVirtualNodeEnumeration Methods
The methods of the TVTVirtualNodeEnumeration class are listed here.


TVTVirtualNodeEnumerator Fields
TVTVirtualNodeEnumerator Record | Legend
TVTVirtualNodeEnumerator Fields

FCanModeNext
Not documented.
FEnumeration
Not documented.
privateFNode
Not documented.


Legend
TVTVirtualNodeEnumerator Record
Legend

Data Member
public
Method
Property
read only


TVTVirtualNodeEnumerator Methods
TVTVirtualNodeEnumerator Record | Legend
TVTVirtualNodeEnumerator Methods

GetCurrent
Not documented.
MoveNext
Not documented.


TVTVirtualNodeEnumerator Properties
TVTVirtualNodeEnumerator Record | Legend
TVTVirtualNodeEnumerator Properties

Current
Not documented.


Topics
TVTVirtualNodeEnumerator Record
Topics

TVTVirtualNodeEnumerator Fields
The fields of the TVTVirtualNodeEnumerator class are listed here.
TVTVirtualNodeEnumerator Methods
The methods of the TVTVirtualNodeEnumerator class are listed here.
TVTVirtualNodeEnumerator Properties
The properties of the TVTVirtualNodeEnumerator class are listed here.


TWideBufferedString Destructors
TWideBufferedString Class | Legend
TWideBufferedString Destructors

Destroy
Not documented.


Legend
TWideBufferedString Class
Legend

Method
public
Destructor
virtual
Property
read only


TWideBufferedString Methods
TWideBufferedString Class | Legend
TWideBufferedString Methods

Add
Not documented.
AddNewLine
Not documented.


TWideBufferedString Properties
TWideBufferedString Class | Legend
TWideBufferedString Properties

AsString
Not documented.


Topics
TWideBufferedString Class
Topics

TWideBufferedString Methods
The methods of the TWideBufferedString class are listed here.
TWideBufferedString Destructors
The destructors of the TWideBufferedString class are listed here.
TWideBufferedString Properties
The properties of the TWideBufferedString class are listed here.


TWorkerThread Constructors
TWorkerThread Class | Legend
TWorkerThread Constructors

Create
Not documented.


TWorkerThread Destructors
TWorkerThread Class | Legend
TWorkerThread Destructors

Destroy
Not documented.


Legend
TWorkerThread Class
Legend

Method
public
protected
virtual
Constructor
Property
read only


TWorkerThread Methods
TWorkerThread Class | Legend
TWorkerThread Methods

AddTree
Not documented.
CancelValidation
Not documented.
ChangeTreeStates
Not documented.
Execute
Not documented.
RemoveTree
Not documented.


Methods (AutoDoc Folder)

Legend
Legend

Method
public
protected
virtual


TWorkerThread Properties
TWorkerThread Class | Legend
TWorkerThread Properties

CurrentTree
Not documented.


Topics
TWorkerThread Class
Topics

TWorkerThread Methods
The methods of the TWorkerThread class are listed here.
TWorkerThread Constructors
The constructors of the TWorkerThread class are listed here.
TWorkerThread Destructors
The destructors of the TWorkerThread class are listed here.
TWorkerThread Properties
The properties of the TWorkerThread class are listed here.