[Issue 477] New - TreeList doesn't paint expansion handles correctly

View: New views
1 Messages — Rating Filter:   Alert me  

[Issue 477] New - TreeList doesn't paint expansion handles correctly

by kikonen-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

https://glazedlists.dev.java.net/issues/show_bug.cgi?id=477
                 Issue #|477
                 Summary|TreeList doesn't paint expansion handles correctly
               Component|glazedlists
                 Version|current
                Platform|All
              OS/Version|All
                     URL|http://kari.world.dy.fi
                  Status|NEW
       Status whiteboard|
                Keywords|
              Resolution|
              Issue type|DEFECT
                Priority|P3
            Subcomponent|treetable
             Assigned to|jessewilson
             Reported by|kikonen






------- Additional comments from kikonen@... Thu Jun  4 16:19:18 +0000 2009 -------
Expansion state rendering doesn't work in dynamic treetables

Scenario:
I've tree model, which is dynamically changing. I.e. children of the nodes
cannot be known until node is tried to be expanded; after that it's known if
node is leaf or not. This means that expansion handles must be shown all the
time that user can known that there might be some nodes under tree branch. And
not displaying expansion handles is not really an option either here.

TreeList of glazedlists fails with this since it will end up displaying expand
handle for node which didn't have any children. TreeExpansionModel is telling
that node don't have children, but appearently TreeList caches information
somewhere.

Thus TreeList should recalculate "can have children" if node changes.

As workaround, I attempted to set custom TreeCellRenderer, but this runned into
problems, since panel implementing expansion icon is to be private. This was
resolved by accessing field via reflection API; leading into nasty hack to
implement desired behaviour.

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@...
For additional commands, e-mail: issues-help@...