Hum… Edges are between elements… But thanks to the AttachPoint, this is easy to do:
-=-=-=-=-=-=-=-=-=-=
v := RTView new.
shape := RTMultiCompositeShape new.
shape add: RTLabel new.
shape add: RTBox new.
es := shape elementsOn: RTShape withAllSubclasses.
v addAll: es.
RTEdge
buildEdgesFromObjects: RTShape withAllSubclasses
from: #superclass to: #yourself
using: (RTArrow new color: Color black; attachPoint: (RTShorterDistanceAttachPointAndCompositeShape new composedShapeSelection: #second))
inView: v.
RTNest new
for: es
inShape: #second
add: [ :group :model |
group addAll: ((RTBox new color: Color blue) elementsOn: model methods).
RTGridLayout on: group.
].
RTHorizontalTreeLayout on: es.
es @ RTPopup @ RTDraggable.
I also started to work on a RTEdgeBuilder, but it is not finished...
--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel
http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
On Jul 21, 2014, at 5:07 AM, Leo Perard
leo.perard@gmail.com wrote:
> Ok this is pretty cool.
> Now with the edges how can I say they have to attach to the box and not at the all shape (label + box) ?
>
> v := RTView new.
> shape := RTMultiCompositeShape new.
> shape add: RTLabel new.
> shape add: RTBox new.
> es := shape elementsOn: RTShape withAllSubclasses.
>
> v addAll: es.
>
> RTEdge
> buildEdgesFromObjects: RTShape withAllSubclasses
> from: #superclass to: #yourself
> using: (RTArrow new color: Color black; attachPoint: RTHorizontalAttachPoint new)
> inView: v.
>
> RTNest new
> for: es
> inShape: #second
> add: [ :group :model |
> group addAll: ((RTBox new color: Color blue) elementsOn: model methods).
> RTGridLayout on: group.
> ].
>
> RTHorizontalTreeLayout on: es.
> es @ RTPopup @ RTDraggable.
>
> v open
>
>
> On Sun, Jul 20, 2014 at 8:00 PM, Tudor Girba
tudor@tudorgirba.com wrote:
> Exactly. The goal should be to get a powerful enough composition mechanism such that we do not need hardcoded composite shapes.
>
> Doru
>
>
> On Sun, Jul 20, 2014 at 7:25 PM, Alexandre Bergel
alexandre.bergel@me.com wrote:
> Ok, no pb
> I will probably rewrite the mondrian builder. It should now be simpler.
> I am also thinking about using + between shapes to produce RTMultiCompositeShape. Other composite shape classes should be removed I think.
>
> Alexandre
>
>
> On Jul 20, 2014, at 11:17 AM, Tudor Girba
tudor@tudorgirba.com wrote:
>
> > Thanks for working on this!
> >
> > I will try to find some time to review this, but it will take a while.
> >
> > Cheers,
> > Doru
> >
> >
> >
> >
> > On Sun, Jul 20, 2014 at 3:07 PM, Alexandre Bergel
abergel@dcc.uchile.cl wrote:
> > Hi!
> >
> > Here is a new example:
> >
> > -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
> > v := RTView new.
> > shape := RTMultiCompositeShape new.
> > shape add: RTLabel new.
> > shape add: RTBox new.
> > es := shape elementsOn: RTShape withAllSubclasses.
> >
> > v addAll: es.
> >
> > RTNest new
> > for: es
> > inShape: #second
> > add: [ :group :model |
> > group addAll: ((RTBox new color: Color blue) elementsOn: model methods).
> > RTGridLayout on: group.
> > ].
> >
> > RTFlowLayout new on: es.
> > es @ RTPopup @ RTDraggable.
> > v open
> > -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
> > <Screen Shot 2014-07-20 at 9.06.33 AM.png>
> >
> > The last release of Roassal2 should address the comments of Leo and Doru I think…
> >
> > Alexandre
> > --
> > _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
> > Alexandre Bergel
http://www.bergel.eu
> > ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
> >
> >
> >
> >
> > _______________________________________________
> > Moose-dev mailing list
> > Moose-dev@iam.unibe.ch
> >
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
> >
> >
> >
> >
> > --
> > www.tudorgirba.com
> >
> > "Every thing has its own flow"
> > _______________________________________________
> > Moose-dev mailing list
> > Moose-dev@iam.unibe.ch
> >
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
>
> --
> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
> Alexandre Bergel
http://www.bergel.eu
> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
>
>
>
>
> _______________________________________________
> Moose-dev mailing list
> Moose-dev@iam.unibe.ch
>
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
>
>
>
> --
> www.tudorgirba.com
>
> "Every thing has its own flow"
>
> _______________________________________________
> Moose-dev mailing list
> Moose-dev@iam.unibe.ch
>
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
>
>
>
>
> --
> Cheers,
> Leo Perard
> University of Lille 1
> _______________________________________________
> Moose-dev mailing list
> Moose-dev@iam.unibe.ch
>
https://www.iam.unibe.ch/mailman/listinfo/moose-dev