Hi,
I am trying to reproduce the diagram with the FAMIX meta-model. I
found the script in MOFameView>>openOn:, but there is a problem with
the rendering.
I use Pharo 10250.
I attached the error report. What am I doing wrong?
Cheers,
Doru
--
www.tudorgirba.com
"Every thing has its own flow."
'16 March 2009 12:18:44 am
VM: Mac OS - a SmalltalkImage
Image: Pharo0.1 [Latest update: #10250]
SecurityManager state:
Restricted: false
FileAccess: true
SocketAccess: true
Working Dir /Users/girba/Desktop/pharo0.1-10250dev09.03.2
Trusted Dir /foobar/tooBar/forSqueak/bogus
Untrusted Dir /Users/girba/Library/Preferences/Squeak/Internet/My Squeak
BalloonEngine(Object)>>error:
Receiver: a BalloonEngine
Arguments and temporary variables:
aString: ''Error: a primitive has failed''
Receiver''s instance variables:
workBuffer: a BalloonBuffer
span: a Bitmap of length 2048
bitBlt: a GrafPort
forms: #()
clipRect: 459@167 corner: 1184@499
destOffset: 462@167
externals: an OrderedCollection()
aaLevel: 4
edgeTransform: nil
colorTransform: nil
deferred: false
postFlushNeeded: false
[] in WorldState>>displayWorldSafely: {[:err :rcvr | errCtx :=
thisContext. [errCtx := errCtx sender. [errCtx no...]}
Arguments and temporary variables:
aWorld: a PasteUpMorph(1622) [world]
err: ''Error: a primitive has failed''
rcvr: a BalloonEngine
errCtx: MOCanvas>>drawOn:
errMorph: a MOCanvas(3824)
BlockContext>>valueWithPossibleArgs:
Receiver: [] in WorldState>>displayWorldSafely: {[:err :rcvr |
errCtx := thisContext. [errCtx := e...etc...
Arguments and temporary variables:
anArray: an Array(''Error: a primitive has failed'' a BalloonEngine)
Receiver''s instance variables:
sender: BlockContext>>valueWithPossibleArgs:
pc: 121
stackp: 0
nargs: 2
startpc: 74
home: WorldState>>displayWorldSafely:
[] in BlockContext>>ifError: {[:ex | errorHandlerBlock
valueWithPossibleArgs: {ex description. ex receiver}]}
Arguments and temporary variables:
errorHandlerBlock: [] in WorldState>>displayWorldSafely:
{[:err :rcvr | errCtx...etc...
ex: Error: a primitive has failed
--- The full stack ---
BalloonEngine(Object)>>error:
[] in WorldState>>displayWorldSafely: {[:err :rcvr | errCtx :=
thisContext. [errCtx := errCtx sender. [errCtx no...]}
BlockContext>>valueWithPossibleArgs:
[] in BlockContext>>ifError: {[:ex | errorHandlerBlock
valueWithPossibleArgs: {ex description. ex receiver}]}
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
BlockContext>>valueWithPossibleArgs:
[] in MethodContext(ContextPart)>>handleSignal: {[(self tempAt: 2)
valueWithPossibleArgs: {exception}]}
BlockContext>>ensure:
MethodContext(ContextPart)>>handleSignal:
Error(Exception)>>signal
Error(Exception)>>signal:
BalloonEngine(Object)>>error:
BalloonEngine(Object)>>primitiveFailed
BalloonEngine>>primAddPolygon:segments:fill:lineWidth:lineFill:
BalloonEngine>>drawPolygon:fill:borderWidth:borderColor:transform:
BalloonCanvas>>drawPath:borderWidth:borderColor:
MOOrthoHorizontalLineShape>>display:on:
MOEdge>>displayOn:
[] in MORoot(MOGraphElement)>>display:on: {[:each | each displayOn:
canvas]}
OrderedCollection>>do:
[] in MORoot(MOGraphElement)>>display:on: {[:canvas | self nodes
do: [:each | each displayOn: canvas]. self edges ...]}
BalloonCanvas(FormCanvas)>>translateBy:during:
MORoot(MOGraphElement)>>display:on:
MORoot>>display:on:
UndefinedObject>>display:on:
MORoot(MOGraphElement)>>displayOn:
MOCanvas>>drawOn:
FormCanvas(Canvas)>>draw:
FormCanvas(Canvas)>>drawMorph:
[] in MOCanvas(Morph)>>fullDrawOn: {[(aCanvas isVisible: self
bounds) ifTrue: [aCanvas drawMorph: self]. self...]}
FormCanvas>>roundCornersOf:in:during:
FormCanvas(Canvas)>>roundCornersOf:during:
MOCanvas(Morph)>>fullDrawOn:
FormCanvas(Canvas)>>fullDraw:
FormCanvas(Canvas)>>fullDrawMorph:
[] in TransformMorph>>drawSubmorphsOn: {[:m | myCanvas fullDrawMorph:
m]}
Array(SequenceableCollection)>>reverseDo:
[] in TransformMorph>>drawSubmorphsOn: {[:myCanvas | (self angle ~=
0.0 or: [self scale ~= 1.0]) ifTrue: [FreeT...]}
FormCanvas>>transformBy:clippingTo:during:smoothing:
TransformMorph>>drawSubmorphsOn:
[] in TransformMorph(Morph)>>fullDrawOn: {[(aCanvas isVisible: self
bounds) ifTrue: [aCanvas drawMorph: self]. self...]}
FormCanvas>>roundCornersOf:in:during:
FormCanvas(Canvas)>>roundCornersOf:during:
TransformMorph(Morph)>>fullDrawOn:
FormCanvas(Canvas)>>fullDraw:
FormCanvas(Canvas)>>fullDrawMorph:
[] in ScrollPane(Morph)>>drawSubmorphsOn: {[:m | canvas fullDrawMorph:
m]}
Array(SequenceableCollection)>>reverseDo:
[] in ScrollPane(Morph)>>drawSubmorphsOn: {[:canvas | submorphs
reverseDo: [:m | canvas fullDrawMorph: m]]}
...etc...'