Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.java.gui > #1630

Re: automatic refreshing

From "Brandon McCombs" <brandon.mccombs@THRWHITE.remove-dii-this>
Subject Re: automatic refreshing
Message-ID <464a8980$0$15169$4c368faf@roadrunner.com> (permalink)
Newsgroups comp.lang.java.gui
References <464a8503$0$9099$5a62ac22@per-qv1-newsreader-01.iinet.net.au>
Date 2011-04-27 15:34 +0000
Organization TDS.net

Show all headers | View raw


  To: comp.lang.java.gui
Qu0ll wrote:
> "Brandon McCombs" <none@none.com> wrote in message 
> news:464a7cdf$0$502$4c368faf@roadrunner.com...
>> Hello,
>>
>> I'm having a hell of a time trying to get a JTree to automatically 
>> refresh to show that a node has been moved from one parent node to 
>> another.
>>
>> I'm using the following statement to move the node to the new parent:
>>     model.getTreeModel().insertNodeInto(movedNode,
>> newParent,newParent.getChildCount());
>>
>> I'm trying to implement cut/copy/paste functionality and I'm working 
>> to get cut/paste functionality working first so in my paste method I 
>> test for the original operation. If it was a "cut" then I do the 
>> following:
>>     model.getTreeModel().removeNodeFromParent(movedNode);
>>
>> However both of the statements above do not make the tree refresh 
>> automatically to show the changes. I thought using the above were 
>> supposed to do that?  I tried the reload() method of the tree model 
>> and of course when I do that the entire tree collapses and that isn't 
>> what I want (I have a feeling hardly anyone finds that "feature" of 
>> the reload() method useful).
>>
>> Is reloading the tree the only way to make the change in the node's 
>> location visible in the tree? If so, what the hell is the point of 
>> those particular methods when I could just do, for an insertion, 
>> newParent.add(movedNode) instead?
> 
> 
> Are you notifying the tree that a new node has been inserted or removed?
> 

Well, I can't say I am doing so explicitly. But I thought that was the 
point of using the methods I mentioned above. The JavaDoc for the 
insertNotInto() method states the following that lead me to believe 
that: This will then message nodesWereInserted to create the appropriate 
event. This is the preferred way to add children as it will create the 
appropriate event.

Isn't the "appropriate event" the mechanism that will notify the tree 
that a new node has been inserted?  If not, what method do I need to 
call to notify the tree?

thanks

---
 * Synchronet * The Whitehouse BBS --- whitehouse.hulds.com --- check it out free usenet!
--- Synchronet 3.15a-Win32 NewsLink 1.92
Time Warp of the Future BBS - telnet://time.synchro.net:24

Back to comp.lang.java.gui | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

automatic refreshing of J "Brandon McCombs" <brandon.mccombs@THRWHITE.remove-dii-this> - 2011-04-27 15:34 +0000
  Re: automatic refreshing "Qu0ll" <qu0ll@THRWHITE.remove-dii-this> - 2011-04-27 15:34 +0000
    Re: automatic refreshing "Brandon McCombs" <brandon.mccombs@THRWHITE.remove-dii-this> - 2011-04-27 15:34 +0000
    Re: automatic refreshing "Brandon McCombs" <brandon.mccombs@THRWHITE.remove-dii-this> - 2011-04-27 15:34 +0000
      Re: automatic refreshing "Qu0ll" <qu0ll@THRWHITE.remove-dii-this> - 2011-04-27 15:34 +0000
        Re: automatic refreshing "Brandon McCombs" <brandon.mccombs@THRWHITE.remove-dii-this> - 2011-04-27 15:34 +0000
  Re: automatic refreshing "Roedy Green" <roedy.green@THRWHITE.remove-dii-this> - 2011-04-27 15:34 +0000

csiph-web