[squeak-dev] What is the task of NullEncoder?

H. Hirzel hannes.hirzel at gmail.com
Fri Sep 29 13:20:06 UTC 2017


We have

NullEncoder
    FlattenEncoder
        Canvas

there are no direct users of NullEncoder and FlattenEncoder.

FlattenEncoder class comment is just

    'The simplest possible encoding:  leave the objects as is.'

a bit terse. Does not really say what the issue is about.



On 9/29/17, H. Hirzel <hannes.hirzel at gmail.com> wrote:
> P.S.
>
> There is no NullEncoder in Pharo.
>
> The class Canvas is not in a package 'Morphic-Support' but in a
> package 'Graphics-Canvas'.
>
> There is no 'Graphics-Canvas' package in Squeak. [2]
>
> Seems like a good idea to move Canvas and subclasses to a package
> 'Graphics-Canvas' as well.
>
>
> [2] Graphics package in Squeak 6.0a-17405
>
> Graphics-Display Objects
> Graphics-External-Ffenestri
> Graphics-Files
> Graphics-Fonts
> Graphics-Primitives
> Graphics-Text
> Graphics-Transformations
> GraphicsTests-Files
> GraphicsTests-Primitives
> GraphicsTests-Text
>
> On 9/29/17, H. Hirzel <hannes.hirzel at gmail.com> wrote:
>> Hello
>>
>> NullEncoder is subclass of object ([1] for full hierachy). It is a
>> superclass of Canvas.
>>
>> What is the function of NullEncoder. No class comment so far?
>>
>> Regards
>> Hannes
>>
>>
>> -------------------------------------------------------------------------------------------------------------------------------
>>
>> [1] NullEncoder printHierarchy '
>> ProtoObject #()
>> 	Object #()
>> 		NullEncoder #(''target'' ''filterSelector'')
>> 			FlattenEncoder #()
>> 				ByteEncoder #()
>> 					PrintableEncoder #()
>> 						PostscriptEncoder #()
>> 							PostscriptEncoderToDisk #()
>> 						PropertyListEncoder #()
>> 				Canvas #()
>> 					ColorMappingCanvas #(''myCanvas'')
>> 						AlphaBlendingCanvas #(''alpha'')
>> 						ShadowDrawingCanvas #(''shadowColor'')
>> 					FormCanvas #(''origin'' ''clipRect'' ''form'' ''port''
>> ''shadowColor'')
>> 						BalloonCanvas #(''transform'' ''colorTransform'' ''engine''
>> ''aaLevel'' ''deferred'')
>> 						BlueFormCanvas #()
>> 						ColorPatchCanvas #(''stopMorph'' ''foundMorph'' ''doStop'')
>> 						MultiResolutionCanvas #(''deferredMorphs'')
>> 					PluggableCanvas #()
>> 						BufferedCanvas #(''remote'' ''previousVersion'' ''lastTick''
>> ''dirtyRect'' ''mirrorOfScreen'')
>> 						CachingCanvas #(''cacheCanvas'' ''mainCanvas'')
>> 						ClippingCanvas #(''canvas'' ''clipRect'')
>> 						MultiCanvas #(''canvases'' ''extent'' ''depth'')
>> 						NullCanvas #()
>> 					PostscriptCanvas #(''origin'' ''clipRect'' ''currentColor''
>> ''shadowColor'' ''currentFont'' ''morphLevel'' ''gstateStack''
>> ''fontMap'' ''usedFonts'' ''psBounds'' ''topLevelMorph''
>> ''initialScale'' ''savedMorphExtent'' ''currentTransformation''
>> ''printSpecs'' ''pages'')
>> 						DSCPostscriptCanvas #()
>> 							DSCPostscriptCanvasToDisk #()
>> 						EPSCanvas #()
>> 					RemoteCanvas #(''innerClipRect'' ''outerClipRect'' ''transform''
>> ''connection'' ''shadowColor'')'
>>
>


More information about the Squeak-dev mailing list