Yes. It should be the platform you need.

Doru


On Mon, Jul 7, 2014 at 11:21 AM, Peter Uhnák <i.uh...@gmail.com> wrote:

> Thank you for all the suggestions. I looked more closely at Roassal and it
> seems that it might have everything we would need. Basically the next step
> in the project is to create extensible drawing tool for modelling languages
> (UML/Petri nets/what have you), so we need to be able to draw any arbitrary
> shapes and their compositions (e.g. UML StateMachine composite state might
> have plethora of subelements). So If I understand correctly Roassal/Trachel
> should be able to provide us with everything at the visual layer or it is
> possible to (easily) extend it and add custom shapes.
>
> Peter
>
>
> On Sun, Jul 6, 2014 at 1:27 PM, Nicolai Hess <nicolaih...@web.de> wrote:
>
>> 2014-07-06 9:54 GMT+02:00 stepharo <steph...@free.fr>:
>>
>> Hi peter
>>>
>>> I hope that igor will see your mail now I will try to reply and this may
>>> be a bit wrong :)
>>>
>>>
>>>  Hello,
>>>>
>>>> I'm currently working on drawing engine (à la Squeak Connectors) as a
>>>> part of school project and have a couple of questions about Morphs and
>>>> Athens and would be grateful if someone could enlighten me.
>>>>
>>>> What is the difference between "Morph>>#drawOn:" and
>>>> "Morph>>#drawOnAthensCanvas:" if I draw  on AthensCairoSurface? Should I
>>>> always use the latter or will there be switch to the former once everything
>>>> is rendered using Athens?
>>>>
>>>
>> AthensWrapMorph fullDrawOn method will call its submorphs drawOn: method
>> with an AthensCanvas.
>> Now, if you have an AthensCanvas (from the  AthensWrapMorph) and your own
>> Morph does not implement drawOnAthensCanvas, then
>> Morph>>#drawOnAthensCanvas is called which just
>> draws an rectangle from your Morphs bound. For example, put a
>> PolygonMorph on an AthensWrapMorph. It is drawn as a rectangle, because
>> PolygonMorph does not know (yet) how
>> to draw itself with athens.
>>
>>  If you have new a Morph that is just container of other Morphs than you
>> don't need to change anything. Just make sure your toplevel Morph
>> is wrapped by an AthensWrapMorph. But If you have a Morph, that
>> subclasses another Morph that overrides drawOnAthensCanvas, you'll have to
>> reimplent
>> this as well.
>> For example, MenuItemMorph subclasses StringMorph and StringMorph
>> implements its own drawOnAthensCanvas. If you put a MenuMorph in a
>> AthensWrapMorph it will be drawn
>> like a plain StringMorph not like a MenuItemMorph (without icons and
>> arrows for submenus etc).
>>
>>
>>>  One of the idea is that you have a wrappingMorph that convert the
>>> Morphic to Athens drawing. This way
>>> you can use athens and still be in a non athens world, then we will
>>> switch to athens you will just have to unwrap your (athensihed morph).
>>
>>
>>> Now about the granularity question it depends, what I would do is to
>>> have one wrapper and be in a athens world.
>>> Did you check the trachel layer in Roassal?
>>>
>>
>> I may be wrong, but I think we have to be carefull that not everyone
>> invents its own "draw on athens layer".
>>
>> I would suggest:
>> - build it on top of roassal / trachel, i.e. draw always with athens.
>> - build it as Morphs and implement drawOnAthensCanvs if needed.
>>
>> Nicolai
>>
>>
>>
>>>
>>> What would be good is that
>>>     - you define drawOnAthensCanvas: for all the shapes you need and we
>>> integrate them into Pharo
>>>     - like that slowly we will get ready to switch to Athens
>>>
>>>
>>>  Should AthensMorphWrap be around every morphic element or just the top
>>>> level? i.e.
>>>> CanvasMorph (owner of the surface) will have a single submorph
>>>> AthensMorphWrap which will then hold all the morphs (EllipsisMorph,
>>>> RectangleMorph, ...) which are being drawn on the canvas.
>>>>
>>> I think so.
>>> This is what Roassal is doing.
>>> Please keep us aware of your progress and do not hesitate to ask
>>> questions and we are REALLY interested in your project
>>
>> So if you have athens draw on method please send them to us.
>>>
>>
>>> Stef
>>>
>>>
>>>> Thanks,
>>>> Peter
>>>>
>>>
>>>
>>>
>>
>


-- 
www.tudorgirba.com

"Every thing has its own flow"

Reply via email to