--- Begin Message ---
Hello,
very good remark.
This is one of the main consequence of the design review we made recently.
In the first design, this was the case, the drawing was delegated.
For now, it is a known issue of the current design.
Cheers
Alain
> On 25 févr. 2016, at 09:56, stepharo <steph...@free.fr> wrote:
> 
> Hi Blockers
> 
> I do not really understand why drawOnAthensCanvas: is not defined on BlShape
> (especially when we see how many self space are defined in this method.
> And this is one of the few things I thought I understood from bloc (grouping 
> the rendering in a separate object).
> 
> 
> drawOnAthensCanvas: aCanvas
>    "Actually render receiver on aCanvas in local bounds.
>    Override to customize.
>    aCanvas is an instance of AthensCanvas
>    aCanvas must not be nil"
> 
>    | pathTransform |
>    pathTransform := aCanvas pathTransform.
>    "First we fill"
>    pathTransform
>        restoreAfter:
>            [ | path fillExtent fillTranslation |
>            "We fill inside natural element's bounds"
>            fillExtent := self shape path fillExtentFor: self shape inBounds: 
> self localBounds.
>            path := self shape path pathOn: aCanvas forExtent: fillExtent.
>            "Translate fill if needed"
>            fillTranslation := self shape path
>                fillTranslationFor: self shape
>                inBounds: self localBounds.
>            pathTransform translateBy: fillTranslation.
>            aCanvas
>                setPaint: self shape fillPaint;
>                drawShape: path ].
>    pathTransform
>        restoreAfter:
>            [ | path strokeExtent strokeTranslation |
>            "We stroke inside natural element's bounds"
>            strokeExtent := self shape path strokeExtentFor: self shape 
> inBounds: self localBounds.
>            path := self shape path pathOn: aCanvas forExtent: strokeExtent.
>            "Translate stroke if needed"
>            strokeTranslation := self shape path
>                strokeTranslationFor: self shape
>                inBounds: self localBounds.
>            pathTransform translateBy: strokeTranslation.
>            aCanvas
>                setPaint: self shape strokePaint;
>                drawShape: path ]
> 



--- End Message ---

Reply via email to