Hi Stef,
I think the example that Alex provided is less advisable and it is misleading
:). It’s indeed interesting that you can do what he shows, but I do not think
this is the example that people should see first.
I got my hands on an image. Here is an example that is composing two elements:
element := BlElement new
layoutStrategy: BlBasicLayoutStrategy new;
shape: (BlShape new
path: BlRectanglePath new;
strokePaint: (BlStrokePaint new
paint: Color blue;
width: 4));
extent: 500@500;
position: 0@0;
addChild: (BlElement new
shape: (BlShape new
path: BlCirclePath new;
fillPaint: Color red);
extent: 450@450;
position: 25@25).
element openInWorld.
Is this what you had in mind?
Cheers,
Doru
> On Apr 2, 2016, at 11:38 PM, stepharo <[email protected]> wrote:
>
>
>> How to make square element with filled circle inside:
>>
>> 1) Subclass BlElement -> BlCell
>> 2) Override
>> drawOnSpartaCanvas: aCanvas
>> super drawOnSpartaCanvas: aCanvas.
>> aCanvas
>> setShape: self localBounds;
>> setStrokePaint: Color blue;
>> stroke
>>
>> 3) Override initialize to have circle shape:
>> initialize
>> super initialize.
>> self shapeDo: [ :aShape | aShape
>> path: BlCirclePath new;
>> fillPaint: Color red ].
>> 4) Open cell in word
>>
>> Easy :)
>
> Except that I do not understand it.
> I do not understand why I should do
> setShape: self localBounds;
>
> and why I should do shapeDo: in the initialize
>
> This is totally unclear to me. So this means that I cannot program anything I
> want
> with it. Imagine I could not find anything simpler than a box with a circle
> drawn on it
> and even with the solution I cannot understand it.
>
> You see in Morphic this is simple: you have a drawOn: aCanvas method and you
> know how to draw: aCanvas
> I do not get the interaction between the draw and the initialize.
> This is totally unclear.
>
> Now I tried and this code did not work in the build 26 so I tried with
> drawOnAthensCanvas: and it crashed.
> So I stop.
> No need to reply to this email and thread.
>
>
> Stef
>
>
--
www.tudorgirba.com
www.feenk.com
"We can create beautiful models in a vacuum.
But, to get them effective we have to deal with the inconvenience of reality."