Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [gef-dev] Z Order API Change

I couldn't figure out whether Ian was using draw2d alone, or with GEF.  If
you just have a figure, it gives you its children by reference, so nothing
prevents you from moving the children forward or backwards in that list,
and manually invoking the repaint.

It gets more complicated if editparts are involved since the default
implementation always tries to maintain the same order between child
figures and child editparts (which are assumed to be in sync with an
ordered model as well).

-Randy



                                                                           
             Anthony Hunter                                                
             <anthonyh@xxxxxx.                                             
             com>                                                       To 
             Sent by:                  GEF development                     
             gef-dev-bounces@e         <gef-dev@xxxxxxxxxxx>               
             clipse.org                                                 cc 
                                                                           
                                                                   Subject 
             07/13/2007 08:51          Re: [gef-dev] Z Order API Change    
             AM                                                            
                                                                           
                                                                           
             Please respond to                                             
              GEF development                                              
             <gef-dev@eclipse.                                             
                   org>                                                    
                                                                           
                                                                           




Hi Ian,

Z-order is something a client would support in his diagram. Since all
diagrams need not support z-order, a breaking API change to the IFigure API
is not appropriate.

Why would you not be able to create your own interface to add to your
figure hierarchy, is something blocking this?

Cheers...
Anthony
--
Anthony Hunter mailto:anthonyh@xxxxxxxxxx
Software Development Manager: Eclipse Open Source Components
IBM Rational Software: Aurora / Modeling Tools
Phone: 613-591-7037



|------------>
| From:      |
|------------>

>--------------------------------------------------------------------------------------------------------------------------------------------------|

  |Ian Bull <irbull@xxxxxxxxxx>
|

>--------------------------------------------------------------------------------------------------------------------------------------------------|

|------------>
| To:        |
|------------>

>--------------------------------------------------------------------------------------------------------------------------------------------------|

  |GEF development <gef-dev@xxxxxxxxxxx>
|

>--------------------------------------------------------------------------------------------------------------------------------------------------|

|------------>
| Date:      |
|------------>

>--------------------------------------------------------------------------------------------------------------------------------------------------|

  |12/07/2007 02:52 PM
|

>--------------------------------------------------------------------------------------------------------------------------------------------------|

|------------>
| Subject:   |
|------------>

>--------------------------------------------------------------------------------------------------------------------------------------------------|

  |[gef-dev] Z Order API Change
|

>--------------------------------------------------------------------------------------------------------------------------------------------------|






This is more of a development question, rather than a usage question, so
I am posting it here.

I am wondering if the IFigure API can be changed to add a
changeZOrder(IFigure child, int position)?  I have a graph, and when I
select a node I would like it to appear on top. The usual method (remove
the node, then add it back) doesn't work in my case.  I have 25 nodes
(containers) each with 256 children ~= 6400 nodes. Removing a container
(and firing all the listeners, etc...) takes about 1 1/2 seconds, a
considerable lag for a selection.  I have experimented with simply
moving the container in the array of children (then calling invalidate /
repaint) and the performance is much better (since there is no need for
all the notifications)?

I will open a bug report, and even get a patch ready if this is
considered a good idea. However, I have a feeling that GEF doesn't
support this for a reason.

cheers,
Ian


_______________________________________________
gef-dev mailing list
gef-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/gef-dev


_______________________________________________
gef-dev mailing list
gef-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/gef-dev




Back to the top