But my problem is I need a virtual treeview control since I may have up to a million items with 50 data columns...Are you sure that your users will ever look at 50 millions of pieces of data and not give up after the first ten rows? Isn't there a more clever way of showing them the data that they need?
There's an alternative to alternative of VirtualTreeView.
Instead of searching for something else, you could attempt to create a simple test case that demonstrated the problem.
It's potentially a simple task.
Implement some easy drawing using cliprect and see how it looks in any other widgetset (Win or Linux)
then run in on Cocoa.
If results are different (or worse, messing up drawing entirely), the project could be used to resolve the issue.
If you have more ideas, please let me know!Well, sure.
divide and conquer
There's a possible bug in TCocoaRegion.CombineWith when handling cc_DIFF (used by ExcludeClipRect)
If FShape is empty, a big one is created and stored in Shape var to be used in HIShapeCreateDifference, but Shape var is not used. The empty shape is used instead
The toggle-vtv-visible-then-reisze.zip demo will work if ExcludeClipRect is replaced by a complete dummy function (!)how does vtv test look with the dummy function vs the latest trunk?
The Lazarus maintainter of virtual reeview for Lazarus applied the "dummy exclupdecliprect" fix for testing:
https://github.com/blikblum/VirtualTreeView-Lazarus/issues/8#issuecomment-418730214 [^]