VirtualTreeView - whats in a name ? lazarus / 31-LCL ---------------------------------------------------------------------- dbannon · 2022-02-10 08:20 Folks, I am working my way through the Lazarus Examples (and have learnt heaps!) but unsure whats happening with VirtualTreeView. It seems to have name issues, I suspect its had a few name changes and maybe a bit of history will help. Firstly, seems there is no such thing as TVirtualTreeView, the examples that address it demonstrate something called TLazVirtualStringTree and it all comes from a unit called Laz.VirtualTrees The wiki has page dedicated to it, but uses the wrong unit names and wrong component names (and some other problems that I might fix when and if I know what I am talking about). So, I believe TLazVirtualStringTree is the correct name, TVirtualTreeView should not be used. Correct ?? My guess is the name was changed to avoid confusion with TTreeView, I need to get it right as its a categorization issue. Why ?  https://gitlab.com/dbannon/laz_examples Davo Davo ---------------------------------------------------------------------- howardpc · 2022-02-10 08:57 Quote from: dbannon on February 10, 2022, 09:20:13 amMy guess is the name was changed to avoid confusion with TTreeView, I need to get it right as its a categorization issue. No, the name was changed to avoid the equivalent of "dll hell" over the many versions and incarnations of TVirtualStringTree when it was ported from its origins in the Delphi VCL world (where it is still being developed) to the Lazarus LCL environment (where it undergoes independent if parallel development and bug fixing). The name change allowed a stable, known version to be incorporated into the Lazarus IDE where it is used, e.g. for the GUI of the Online Package Manager. ---------------------------------------------------------------------- dbannon · 2022-02-10 10:49 Good, thanks Howard.  I will therefore stick with the new name. Davo ---------------------------------------------------------------------- wp · 2022-02-10 10:57 Yes, just what Howard said. We renamed the TVirtualStringTree etc and the units and included the "Laz" prefix to give them names distinct from the "official" port in blikblum's github (https://github.com/blikblum/VirtualTreeView-Lazarus). The reason was that with the original names it would be impossible to install the trunk version or v4 of these components without a major rework of the ide (the online package manager, for example, would probably not work any more). Then I added some of the examples coming with VTV, but remodeled them such that they compile with the version in Lazarus, "LazVirtualTreeViews". I reworked the wiki articles https://wiki.freepascal.org/VirtualTreeview and https://wiki.freepascal.org/VirtualTreeview_Example_for_Lazarus so that they hopefully are valid for both built-in and external versions of VTV. I agree that the situation is not ideal - but that's the way it is. ---------------------------------------------------------------------- dbannon · 2022-02-11 06:20 > I agree that the situation is not ideal - but that's the way it is. No, thats not too bad at all. Its now evolved into a different species, needs a different name. Given that you, WP, have already altered the wiki page, maybe I can suggest - 1) - a one line history "Originally referred to as TVirtualTreeView, now called  TLazVirtualStringTree to avoid confusion." 2) - The tutorial mentioned on the top of the page ( https://wiki.freepascal.org/VirtualTreeview_Example_for_Lazarus ) and again under  "External links" at https://soft-gems.net/ does not seem to exist any more, can it be either tracked down or no longer mentioned ? Davo