My favorites | Sign in
Project Home Downloads Wiki Issues Source
Search
for
LatestNews  

Featured
Updated Jan 8 (6 days ago) by joachim....@gmail.com

Latest news on the Virtual Treeview Control

08 Jan 2015: Release of V5.5.3

List of changes: (Download)

  • Fixed  issue #495 : Incorrect text vertical align when changing font in OnPaintText
  • Fixed  Issue #496 : Access violation at VT destroy
  • Fixed  issue #498 : Node totalheight not initialized properly when adding new node and using toVariableNodeHeight

10 Nov 2014: Release of V5.5.2

List of changes:

  • Various improvements regarding code style
  • Implemented #471: Added emVisibleDueToExpansion and emSelected to TVTExportMode
  • Fixed  issue #488 : XE7 packages should depend on one another and use suffix 21
  • Fixed  issue #462 : Undo r636, make VirtualTreesD require VirtualTreesR again
  • Fixed  issue #489  XE2 compiler switch error

05 Nov 2014: Two Branches for older and newer Delphi versions

Some of you may have read this blog post on Roman's page. I do agree with many parts of the blog post. Supporting old Delphi versions that I do not have installed is time consuming. And not being able to use new language features that I use throughout my own projects was a pity. This is why I discussed with some of the remaining Virtual Treeview developers earlier this year to limit the support to newer Delphi versions (e.g. Delphi 2010 and higher) and make a branch for the older version within the SVN repository. Then this new development came up.

While I highly appreciate Roman's work for good but mostly abandoned Delphi components, I don't see a large benefit in doing a new fork of Virtual TreeView at a different site. In my opinion we should join our forces instead of splitting them up (with the consequence of diverging forks and the need of complex merges).

This is why Roman, Marco and I agreed to keep the development of Virtual Treeview centrally in this place but to support only XE3 and higher in the trunk. The trunk will be the base for V6 which I expect in 2015. Why XE3 some may ask? It allows us to remove all $ifdef statements and allows us the use record helpers for value types, which I personally like very much.

We have created a new branch at https://virtual-treeview.googlecode.com/svn/branches/V5_stable which can be considered as stable and which will continue to support Delphi 7 to Delphi XE7. I would appreciate if a current user of a Delphi version < XE3 would volunteer to maintain this branch.

Joachim

13 Oct 2014: Release of V5.5.1

List of changes:

  • Fixed  issue #479 : The style hooks for the VCL styles are now registered for TVirtualStringTree and TVirtualDrawTree instead of TBaseVirtualTree, which makes it easier to use own style hooks in derived classes.
  • Partial fix for  issue #478 : The standard VCL property StyleElemets (public in TControl in RAD Studio XE3 and higher) is now supported and published for TVirtualStringTree and TVirtualDrawTree (XE3 and higher). This means you can define if the font and the backgrounbd color is taken from the VCL style or the control's properties. Leaving out seBorder is not yet working well, more work will be necessary.
  • Fixed  issue #473 : Return type of GetUtilityImages should be TCustomImageList
  • Fix for  issue #470 : VCL Styles and sorting failure
  • Added missing inherited to CMMouseEnter()
  • Fixed  issue #468 : Redundant code in CreateSystemImageSet()
  • Fixed  issue #482 : AutoScale() could cause exception during form load.
  • Added fix for #466: No parent window if column created in constructor
  • Fixed  issue #446 : ScrollIntoView does not work properly after applying patch from  issue #339 
  • Improvements for toAlwaysSelectNode option: Selection of next sibling has been improved in case the currently selected node is being removed.
  • Added missing begin/end-block in MeasureItemHeight()
  • Improved fix for  issue #438 : Now correctly initializing member of property TVTColors.UnfocusedColor
  • Improved fix for  issue #447 : DoMeasureItem() was called for Node instead of Child.
  • Minor improvement in appearance of border lines in HTML export.
  • Fixed  issue #480 : Warning when compiling Delphi XE2 packages
  • Fixed #472: Redundant conditions in TVclStyleScrollBarsHook.WMMouseMove
  • Fixed #476: Simplify TVTDragImage.WillMove()
  • Fixed  issue #485 : unit VirtualTrees does not compile with {$TYPEDADDRESS ON}

11 Sep 2014: Release of V5.5

  • Added packages for RAD Studio XE7 / Delphi XE7
  • Fixed  issue #464 : Vertical grid lines not computed correctly for spanned cells with header auto resize
  • Fixed  issue #442 : Scrollbars are not updated for active VCL Style under XE2
  • Fixed  issue #463 : HTML export shows grid lines in IE and Chrome, but not in Firefox
  • Fixed  issue #460 : Access violation in design time when setting "CheckBox" to True for a Virtual Treeview Column
  • Fixed  issue #72 : Call Application.CancelHint only if the current control is showing the hint
  • Fixed  issue #461 : corrected condition in TBaseVirtualTree.ScrollIntoView, so that not only partially (by the fixed area) covered columns but also totally covered columns are scrolled in view
  • Fixed  issue #450 : Regional letters entered using Right+Alt should also trigger the incremental search.
  • Improvements for toAlwaysSelectNode:
  • Clicking the free space below the tree nodes no longer deselects the selected node. We now prevent toggling of the selection of the last selected node if toAlwaysSelectNode is set in TreeOptions.
  • Fixed  issue #447 : SetChildCount() now calls DoMeasureItem() instead of using DefaultNodeHeight.
  • Fixed  issue #444 : ERangeError in TBaseVirtualTree.CMMouseWheel
  • TBaseVirtualTree.MeasureItemHeight() is virtual now.
  • Fixed  issue #445  MultiSelect behavior: Can't drag node which is not selected
  • Fixed  Issue #443 : TVirtualTreeColumns.ColumnFromPosition on right border of fixed column
  • Fixed  issue #339 : Problems with fixed column
  • Implemented #410: Small extension of TStringEditLink: Allow creating own edit control by moving the creation of TVTEdit from constructor to virtual PrepareEdit with assigned check.
  • Implemented #409: Extend THitInfo record with hit coordinates
  • Added suggestions of #438: Make some members visible to derived classes
  • Fixed  issue #440 : Context menu does not pop up if there is no selected node
  • Added C++ Builder link demand to VirtualTreesR.Lib as {$HPPEMIT}
  • Improved installation instructions, especially for C++ Builder

26 May 2014: Release of V5.4.1

  • Added packages for C++ Builder XE6
  • If toAutoChangeScale is set in AutoOptions, the Virtual TreeView control now increases the DefaultNodeHeight if the font size is too large to fit.
  • If toAutoChangeScale is set in AutoOptions, the columns widths are now adjusted too.
  • Improved implementation for toRestoreSelection option
  • Fixed possible AV in PaintNodeButton()
  • Now ensuring that both GetHorzScrollBarSliderRect() and GetVertScrollBarSliderRect() return a valid value for every code path (Thx to Dmitri Dmitrienko). This could cause strange out of resources exceptions with VCL styles enabled.
  • Fixed  issue #434 : Application compiled with Delphi 7 stops responding when you call AddChild
  • A few minor changes

24 Apr 2014: JAM Software takes Virtual Treeview under its wing

JAM Software takes Virtual Treeview under its wing, but not much will change besides the homepage and download location. Please read this press release for further details.

23 Apr 2014: Release of V5.4.0

List of changes:

  • Added support for XE6.
  • Added new option toRestoreSelection to TVTSelectionOptions: Set to true if upon refill the previously selected nodes should be selected again. The nodes will be identified by its caption only.
  • Added new option toAlwaysSelectNode to TVTSelectionOption enum. If this flag is set, the treeview tries to always have a node selected. This behavior is closer to the Windows TreeView and useful in Windows Explorer style applications. It is also useful for accessible applications which can indicate having the focus by displaying a selection.
  • Added function TBaseVirtualTree.IsEmpty which returns True if the control has no nodes.
  • Fixed a wrongly drawn selection after the user scrolled horizontally.
  • Fixed  issue #423 : Change property TVirtualTreeColumn.Tag to NativeInt.
  • Implemented #415: Added feature for design time column header dragging and resizing. (Thx to fr0st.brutal)
  • Fixed  issue #180 : Memory leak in grid demo of Advanced project
  • Implemented #422: Added TBaseVirtualTree.GetFirstChildNoInit()
  • Fixed  issue #420 : Add coEditable to TVTColumnOption) by applying the supplied path. Thx to Stefan Glienke.
  • Fixed  issue #419 : Some issues with changing to edit mode with clicking
  • Fixed  issue #430 : TVTDragManager memory leak with visual inheritance. Thx to Andreas Hausladen for the patch.
  • Fixed  issue #431 : Visual bug when using TStringEditLink with large node heights
  • TVclStyleScrollBarsHook.WMMouseMove(): Now preventing possible range check error exception.
  • Now handling WM_MOVE and WM_POSCHNAGED correctly in TVclStyleScrollBarsHook (Thx to Dmitri Dmitrienko)
  • Preventing possible stack overflow in TVirtualTreeHintWindow.ActivateHint (Thx to Dmitri Dmitrienko)
  • Added packages for C++ Builder XE5.
  • Some minor chnages, imporevements and fixes have been incorporated

15 Jan 2014: No new downloads on Google Code

From today Google Code no longer offers to add new downloads. Official reason is misuse. So we need to seek a new download location.

04 Jan 2014: Release of V5.4.0

  • Fix for  issue #159  (Cursor missing in edit with non-standard DPI): Ensuring a minimum size of the edit control
  • Fixed  issue #403 : Declare TVTGetNodeProc as reference to procedure (for D2009+)
  • Fixed  issue #402 : TVTEdit.CNCommand discard all notification except EN_UPDATE due to missing inherited
  • Corrected fix for  issue #376  (Incorrect selection paint when toGridExtensions is included in the MiscOptions)
  • Fixed  issue #401 : OnNodeClick event doesn't trigger in some case, coFixed set for a column
  • Modified #316 (concerning r498). The fix for #316 will only be applied in case toMultiSelect is set. If toMultiSelect is not set we can start a drag anywhere in the row.
  • ContentToHTML() and ContentToRTF() now return a string of type RawByteString. Because the generated strings are pre-encoded in UTF-8, the previous type AnsiString caused problems in Delphi 2009+ e.g. when this string was written using the VCL TStreamWriter class. The helper class TBufferedAnsiString therefore uses RywByteString now as type too.
  • Fixed  issue #399 : EditDelay not working
  • Fixed  issue #400 : AltGr+A does not behave as expected for foreign keyboard layouts in VTEdit
  • Fixed  issue #388 : VirtualStringTree with toFixedIndent causes range check error
  • Edit box when editing a node in a tree with toFixedIndent now has the correct indent
  • Fixed  issue #392 : Now ensuring that MeasureItemHeight() is only called from the main thread.
  • Fixed #383: Clear vsHasChildren for a node without children even if the children count didn't change.
  • Fixed #377: Wrong font (size, etc) in TargetCanvas in MeasureItem for first node
  • Fixed  issue #398  (hoAutoResize causes DFM designer to be modified after loading) by calling TControl.Updating()/Updated() in AdjustAutoSize()
  • Preventing possible AV in TBaseVirtualTree.FontChanged()
  • Fixed 32Bit Integer overflows in Win64 build in TBufferedAnsiString.

Sign in to add a comment
Powered by Google Project Hosting