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...'