it looks like the metrics visitor has a problem but this is difficult
to debug without a debugger.
Setf
Thanks Doru,
(I never hit the right indentation level in mailing lists, sorry
about that)
My guess is that there is an error in computing
the lines of code for
some of your code. When you get the error, the entity should be the
class that creates the problem.
Then you can take a closer look to see if LOC is computed correctly
for at all its methods.
OK that's simple enough for me:
* I choose some (any) 2 classes from the model in the Moose browser
to get a group, they are (for example)
#'Root::Smalltalk::BCW::Kroni::SD::AbstractEDIRecord'
#'Root::Smalltalk::BCW::Kroni::SD::AbstractEDIRecordForText'
inspect them - everything's fine - totalNumberOfLinesOfCode's fine,
every single method, too.
So, now I render system complexity from the classGroup Button in the
Moose browser, or in the easel, get the error
(UndefinedObject does not understand '>' in max:),
and in the debugger is ANOTHER class as entity
(Root::Smalltalk::Tools::SmalltalkWorkbench ?!). That class, I see,
has some heavy overridings of bindingxx and promptxx methods -
shouldn't matter, should it?
Inspect it:
* self numberOfLinesOfCode -> ERROR:
Parser(Object)>>doesNotUnderstand: a Message with selector: #nodeDo:
and arguments: #(a SCG.Moose.VisualWorksParseTreeMetricCalculator)
VisualWorksParseTreeMetricCalculator(ProgramNodeEnumerator)>>doNode:
aParser
...
Should there be ANOTHER class at all as entity? I thought
I selected 2 classes only.
To me it seems, that system under inspection has some funny
overridings of library code ... (thats a diagnosis, too, at least ;-)
Tx for any hint.
Thomas Schrader
*** complete debugger stack from the original error ***
Unhandled exception: Message not understood: #<
UndefinedObject(Object)>>doesNotUnderstand:
SmallInteger(Magnitude)>>>
SmallInteger>>>
SmallInteger(Integer)>>max:
optimized [] in Mondrian.LinearNormalizer>>maximumValue:
optimized [] in Collection>>inject:into:
Array(SequenceableCollection)>>do:
Array(Collection)>>inject:into:
SCG.Moose.ClassGroup(SCG.Moose.AbstractGroup)>>inject:into:
Mondrian
.ColorLinearNormalizer(Mondrian.LinearNormalizer)>>maximumValue:
Mondrian.ColorLinearNormalizer>>mondrianValue:
Mondrian
.RectangleShape(Mondrian.AbstractRectangleShape)>>fillColorFor:
Mondrian.RectangleShape>>privateDisplayFigure:on:
Mondrian.RectangleShape(Mondrian.AbstractShape)>>displayFigure:on:
Mondrian.Shape>>doesNotUnderstand:
optimized [] in Mondrian.AbstractShape>>displayFigure:on:
OrderedCollection>>do:
Mondrian.ChildrenShape(Mondrian.AbstractShape)>>displayFigure:on:
Mondrian.NodeFigure(Mondrian.AbstractFigure)>>primDisplayOn:
optimized [] in Mondrian.AbstractFigure>>displayOn:
OrderedCollection>>do:
Mondrian.Drawing(Mondrian.AbstractFigure)>>displayOn:
Mondrian.Drawing>>displayOn:
Mondrian.ZoomWrapper>>displayOn:
ScrollWrapper(TranslatingWrapper)>>displayOn:
BorderedWrapper>>displayOn:
optimized [] in CompositePart>>displayOn:
OrderedCollection>>do:
BorderDecorator(CompositePart)>>displayOn:
BoundedWrapper>>displayOn:
SpecWrapper(Wrapper)>>displayOn:
SpecWrapper(WidgetWrapper)>>displayOn:
optimized [] in CompositePart>>displayOn:
OrderedCollection>>do:
CompositePart>>displayOn:
DoubleBufferingWindowDisplayPolicy>>displayDamageList:in:
ApplicationWindow(ScheduledWindow)>>displayDamageEvent:
ApplicationWindow(ScheduledWindow)>>displayPendingInvalidation
Mondrian
.MondrianUI(ApplicationModel)>>openInterface:withPolicy:inSession:
Mondrian.MondrianUI(ApplicationModel)>>openInterface:withPolicy:
Mondrian.MondrianUI(ApplicationModel)>>openInterface:
Mondrian.MondrianUI(ApplicationModel)>>openInterface
Mondrian.MondrianUI(ApplicationModel)>>open
Mondrian.ViewRenderer>>open
SCG.Moose.ClassGroup>>viewSystemComplexity
SCG.Moose.MetaAction>>invokeOn:withArguments:
SCG.Moose.ClassGroup(Object)>>mmInvoke:arguments:
SCG.Moose.ClassGroup(Object)>>mmInvoke:
optimized [] in [] in [] in SCG.Moose.MooseElement>>menu
SCG.Moose.MooseBrowserGroupUI>>openGroupMenu
optimized [] in ApplicationModel>>actionFor:
optimized [] in ActionButtonSpec>>typeConvert:
PluggableAdaptor>>setValue:
PluggableAdaptor(ValueModel)>>value:
TriggerButtonController>>pressAction
TriggerButtonTracker(BasicButtonTracker)>>finishSelectionFor:
TriggerButtonTracker>>finishSelectionFor:
TriggerButtonTracker(SelectionTracker)>>redButtonReleasedEvent:
RedButtonReleasedEvent>>dispatchTo:
TriggerButtonTracker(SelectionTracker)>>handleEvent:
EventDispatcher>>dispatch:to:
EventDispatcher>>dispatchEvent:
RedButtonReleasedEvent(Event)>>dispatch
RedButtonReleasedEvent(Event)>>dispatchForWindowManager:
optimized [] in WindowManager>>safelyDispatchForWindowManager:
BlockClosure>>on:do:
WindowManager>>safelyDispatchForWindowManager:
WindowManager>>processNextEvent
optimized [] in [] in WindowManager>>newProcess
BlockClosure>>on:do:
optimized [] in WindowManager>>newProcess
BlockClosure>>on:do:
optimized [] in Process class>>forBlock:priority:
----------------------------------------------------------------------
UndefinedObject(Object)>>doesNotUnderstand:
Receiver:
an UndefinedObject
Arguments:
t1 = a Message with selector: #< and arguments: #(6820)
Temporaries:
t2 = a MessageNotUnderstood
t3 = nil
Context PC = 25
----------------------------------------------------------------------
SmallInteger(Magnitude)>>>
Receiver:
a SmallInteger
Arguments:
t1 = nil
Context PC = 4
----------------------------------------------------------------------
SmallInteger>>>
Receiver:
a SmallInteger
Arguments:
t1 = nil
Context PC = 10
----------------------------------------------------------------------
SmallInteger(Integer)>>max:
Receiver:
a SmallInteger
Arguments:
anInteger = nil
Context PC = 4
----------------------------------------------------------------------
optimized [] in Mondrian.LinearNormalizer>>maximumValue:
Receiver:
an UndefinedObject
Arguments:
maximum = 6820
entity = a SCG.Moose.FAMIXClass
#'Root::Smalltalk::Tools::SmalltalkWorkbench'
Temporaries:
.self = a Mondrian.ColorLinearNormalizer
Context PC = 11
----------------------------------------------------------------------
optimized [] in Collection>>inject:into:
Receiver:
an UndefinedObject
Arguments:
t4 = a SCG.Moose.FAMIXClass
#'Root::Smalltalk::Tools::SmalltalkWorkbench'
Temporaries:
.t2 = BlockClosure [] in Mondrian.LinearNormalizer>>maximumValue:
t3 = 6820
Context PC = 9
----------------------------------------------------------------------
Array(SequenceableCollection)>>do:
Receiver:
an Array
Arguments:
aBlock = BlockClosure [] in Collection>>inject:into:
Temporaries:
i = 924
elem = a SCG.Moose.FAMIXClass
#'Root::Smalltalk::Tools::SmalltalkWorkbench'
Context PC = 40
----------------------------------------------------------------------
Array(Collection)>>inject:into:
Receiver:
an Array
Arguments:
t1 = 1
t2 = BlockClosure [] in Mondrian.LinearNormalizer>>maximumValue:
Temporaries:
t3 = 6820
Context PC = 15
----------------------------------------------------------------------
SCG.Moose.ClassGroup(SCG.Moose.AbstractGroup)>>inject:into:
Receiver:
a SCG.Moose.ClassGroup
Instance Variables:
mooseID = nil
state = a SCG.Moose.DefaultEntityState
storage = a SCG.Moose.SetupStorage[4990]
Arguments:
neutral = 1
aBinaryBlock = BlockClosure [] in
Mondrian.LinearNormalizer>>maximumValue:
Context PC = 7
----------------------------------------------------------------------
Mondrian
.ColorLinearNormalizer(Mondrian.LinearNormalizer)>>maximumValue:
Receiver:
a Mondrian.ColorLinearNormalizer
Instance Variables:
context = BlockClosure [] in Mondrian.Shape class>>forFamixClass
command = a SCG.PropertyWrapper
maximumValue = nil
minBrightness = nil
maxBrightness = nil
lowColor = CodeFoo.Color white
highColor = CodeFoo.Color black
Arguments:
anEntity = a SCG.Moose.FAMIXClass
#'Root::Smalltalk::BCW::Kroni::SD::AbstractEDIRecord'
Context PC = 16
----------------------------------------------------------------------
Mondrian.ColorLinearNormalizer>>mondrianValue:
Receiver:
a Mondrian.ColorLinearNormalizer
Instance Variables:
context = BlockClosure [] in Mondrian.Shape class>>forFamixClass
command = a SCG.PropertyWrapper
maximumValue = nil
minBrightness = nil
maxBrightness = nil
lowColor = CodeFoo.Color white
highColor = CodeFoo.Color black
Arguments:
anEntity = a SCG.Moose.FAMIXClass
#'Root::Smalltalk::BCW::Kroni::SD::AbstractEDIRecord'
Temporaries:
myValue = 177
myHighColor = CodeFoo.Color black
myLowColor = CodeFoo.Color white
myMinBrightness = 0.0
myMaxBrightness = 1.0
weight = nil
Context PC = 35
----------------------------------------------------------------------
Mondrian
.RectangleShape(Mondrian.AbstractRectangleShape)>>fillColorFor:
Receiver:
a Mondrian.RectangleShape
Instance Variables:
decorates = nil
callbackHandle = nil
decorators = an OrderedCollection[1]
align = #origin
descriptionBlock = nil
marginTop = 0
marginBottom = 0
marginLeft = 0
marginRight = 0
fixedWidth = false
fixedHeight = false
horizontalFill = false
verticalFill = false
horizontalGrow = false
verticalGrow = false
fillColorBlock = a Mondrian.ColorLinearNormalizer
heightBlock = a SCG.PropertyWrapper
widthBlock = a SCG.PropertyWrapper
xBlock = nil
yBlock = nil
minimumHeightBlock = nil
minimumWidthBlock = nil
maximumHeightBlock = nil
maximumWidthBlock = nil
baseHeightBlock = 5
baseWidthBlock = 5
patternColorBlock = nil
patternNameBlock = nil
Arguments:
anEntity = a SCG.Moose.FAMIXClass
#'Root::Smalltalk::BCW::Kroni::SD::AbstractEDIRecord'
Context PC = 16
----------------------------------------------------------------------
Mondrian.RectangleShape>>privateDisplayFigure:on:
Receiver:
a Mondrian.RectangleShape
Instance Variables:
decorates = nil
callbackHandle = nil
decorators = an OrderedCollection[1]
align = #origin
descriptionBlock = nil
marginTop = 0
marginBottom = 0
marginLeft = 0
marginRight = 0
fixedWidth = false
fixedHeight = false
horizontalFill = false
verticalFill = false
horizontalGrow = false
verticalGrow = false
fillColorBlock = a Mondrian.ColorLinearNormalizer
heightBlock = a SCG.PropertyWrapper
widthBlock = a SCG.PropertyWrapper
xBlock = nil
yBlock = nil
minimumHeightBlock = nil
minimumWidthBlock = nil
maximumHeightBlock = nil
maximumWidthBlock = nil
baseHeightBlock = 5
baseWidthBlock = 5
patternColorBlock = nil
patternNameBlock = nil
Arguments:
aFigure = a Mondrian.NodeFigure
Entity = a SCG.Moose.FAMIXClass
#'Root::Smalltalk::BCW::Kroni::SD::AbstractEDIRecord'
aGraphicsContext = a ZoomGraphicsContext
Temporaries:
patternColor = nil
paint = nil
Context PC = 6
----------------------------------------------------------------------
Mondrian.RectangleShape(Mondrian.AbstractShape)>>displayFigure:on:
Receiver:
a Mondrian.RectangleShape
Instance Variables:
decorates = nil
callbackHandle = nil
decorators = an OrderedCollection[1]
align = #origin
descriptionBlock = nil
marginTop = 0
marginBottom = 0
marginLeft = 0
marginRight = 0
fixedWidth = false
fixedHeight = false
horizontalFill = false
verticalFill = false
horizontalGrow = false
verticalGrow = false
fillColorBlock = a Mondrian.ColorLinearNormalizer
heightBlock = a SCG.PropertyWrapper
widthBlock = a SCG.PropertyWrapper
xBlock = nil
yBlock = nil
minimumHeightBlock = nil
minimumWidthBlock = nil
maximumHeightBlock = nil
maximumWidthBlock = nil
baseHeightBlock = 5
baseWidthBlock = 5
patternColorBlock = nil
patternNameBlock = nil
Arguments:
aFigure = a Mondrian.NodeFigure
Entity = a SCG.Moose.FAMIXClass
#'Root::Smalltalk::BCW::Kroni::SD::AbstractEDIRecord'
aGraphicContext = a ZoomGraphicsContext
Context PC = 6
----------------------------------------------------------------------
Mondrian.Shape>>doesNotUnderstand:
Receiver:
a Mondrian.Shape
Instance Variables:
stack = an OrderedCollection[2]
Arguments:
aMessage = a Message with selector: #displayFigure:on: and
arguments: #(a Mondrian.NodeFigure
Entity = a SCG.Moose.FAMIXClass
#'Root::Smalltalk::BCW::Kroni::SD::AbstractEDIRecord' a
ZoomGraphicsContext)
Context PC = 10
----------------------------------------------------------------------
optimized [] in Mondrian.AbstractShape>>displayFigure:on:
Receiver:
an UndefinedObject
Arguments:
decorator = a Mondrian.Shape
Temporaries:
.aFigure = a Mondrian.NodeFigure
Entity = a SCG.Moose.FAMIXClass
#'Root::Smalltalk::BCW::Kroni::SD::AbstractEDIRecord'
.aGraphicContext = a ZoomGraphicsContext
Context PC = 7
----------------------------------------------------------------------
OrderedCollection>>do:
Receiver:
an OrderedCollection
Instance Variables:
firstIndex = 1
lastIndex = 1
Arguments:
aBlock = BlockClosure [] in Mondrian.AbstractShape>>displayFigure:on:
Temporaries:
index = 1
Context PC = 43
----------------------------------------------------------------------
Mondrian.ChildrenShape(Mondrian.AbstractShape)>>displayFigure:on:
Receiver:
a Mondrian.ChildrenShape
Instance Variables:
decorates = a Mondrian.NodeFigure
Entity = a SCG.Moose.FAMIXClass
#'Root::Smalltalk::BCW::Kroni::SD::AbstractEDIRecord'
callbackHandle = a Mondrian.Drawing
Entity = nil
decorators = an OrderedCollection[1]
align = nil
descriptionBlock = nil
marginTop = 0
marginBottom = 0
marginLeft = 0
marginRight = 0
Arguments:
aFigure = a Mondrian.NodeFigure
Entity = a SCG.Moose.FAMIXClass
#'Root::Smalltalk::BCW::Kroni::SD::AbstractEDIRecord'
aGraphicContext = a ZoomGraphicsContext
Context PC = 16
----------------------------------------------------------------------
Mondrian.NodeFigure(Mondrian.AbstractFigure)>>primDisplayOn:
Receiver:
a Mondrian.NodeFigure
Instance Variables:
container = a Mondrian.Drawing
Entity = nil
eventHandlers = nil
shapeBounds = an IdentityDictionary[3]
entity = a SCG.Moose.FAMIXClass
#'Root::Smalltalk::BCW::Kroni::SD::AbstractEDIRecord'
selected = false
handles = nil
shape = a Mondrian.ChildrenShape
fixed = false
eventHandler = a Mondrian.EventHandler
bounds = 3@3 corner: 13@30
visible = true
elements = nil
nodeFigures = an OrderedCollection[0]
layout = nil
edgeFigures = an OrderedCollection[0]
deepNodes = an OrderedCollection[0]
incomingEdges = an OrderedCollection[0]
outgoingEdges = an OrderedCollection[1]
xBlock = nil
yBlock = nil
growVertically = false
growHorizontally = false
fixedWidthBlock = nil
fixedHeightBlock = nil
preferredWidth = 10
preferredHeight = 27
xOffset = 0
adjustor = a Mondrian.NodeFigure
Entity = a SCG.Moose.FAMIXClass
#'Root::Smalltalk::BCW::Kroni::SD::AbstractEDIRecord'
Arguments:
aGraphicsContext = a ZoomGraphicsContext
Temporaries:
clipping = 3@3 corner: 13@30
oldClipping = 0@0 corner: 780@526
Context PC = 22
----------------------------------------------------------------------
optimized [] in Mondrian.AbstractFigure>>displayOn:
Receiver:
an UndefinedObject
Arguments:
each = a Mondrian.NodeFigure
Entity = a SCG.Moose.FAMIXClass
#'Root::Smalltalk::BCW::Kroni::SD::AbstractEDIRecord'
Temporaries:
.clippingRectangle = 0@0 corner: 780@526
.aGraphicsContext = a ZoomGraphicsContext
Context PC = 11
----------------------------------------------------------------------
OrderedCollection>>do:
Receiver:
an OrderedCollection
Instance Variables:
firstIndex = 1
lastIndex = 3
Arguments:
aBlock = BlockClosure [] in Mondrian.AbstractFigure>>displayOn:
Temporaries:
index = 2
Context PC = 43
----------------------------------------------------------------------
Mondrian.Drawing(Mondrian.AbstractFigure)>>displayOn:
Receiver:
a Mondrian.Drawing
Instance Variables:
container = a Mondrian.ZoomWrapper on: a Mondrian.Drawing
Entity = nil
eventHandlers = nil
shapeBounds = an IdentityDictionary[0]
entity = nil
selected = false
handles = nil
shape = nil
fixed = false
eventHandler = a Mondrian.EventHandler
bounds = 0@0 corner: 16@66
visible = true
elements = an OrderedCollection[3]
nodeFigures = an OrderedCollection[2]
layout = a Mondrian.NarrowTreeLayout
edgeFigures = an OrderedCollection[1]
deepNodes = an OrderedCollection[2]
adjustor = nil
allHandles = an OrderedCollection[0]
controller = a Mondrian.DrawingController
scrollOffsetHolder = a ScrollValueHolder
Arguments:
aGraphicsContext = a ZoomGraphicsContext
Temporaries:
clippingRectangle = 0@0 corner: 780@526
Context PC = 27
----------------------------------------------------------------------
Mondrian.Drawing>>displayOn:
Receiver:
a Mondrian.Drawing
Instance Variables:
container = a Mondrian.ZoomWrapper on: a Mondrian.Drawing
Entity = nil
eventHandlers = nil
shapeBounds = an IdentityDictionary[0]
entity = nil
selected = false
handles = nil
shape = nil
fixed = false
eventHandler = a Mondrian.EventHandler
bounds = 0@0 corner: 16@66
visible = true
elements = an OrderedCollection[3]
nodeFigures = an OrderedCollection[2]
layout = a Mondrian.NarrowTreeLayout
edgeFigures = an OrderedCollection[1]
deepNodes = an OrderedCollection[2]
adjustor = nil
allHandles = an OrderedCollection[0]
controller = a Mondrian.DrawingController
scrollOffsetHolder = a ScrollValueHolder
Arguments:
aGraphicsContext = a ZoomGraphicsContext
Context PC = 6
----------------------------------------------------------------------
Mondrian.ZoomWrapper>>displayOn:
Receiver:
a Mondrian.ZoomWrapper
Instance Variables:
container = a ScrollWrapper on: a Mondrian.ZoomWrapper on: a
Mondrian.Drawing
Entity = nil
eventHandlers = nil
component = a Mondrian.Drawing
Entity = nil
zoomFactor = 1.0d
Arguments:
aGraphicsContext = a ScreenGraphicsContext
Temporaries:
newGc = a ZoomGraphicsContext
Context PC = 12
----------------------------------------------------------------------
ScrollWrapper(TranslatingWrapper)>>displayOn:
Receiver:
a ScrollWrapper
Instance Variables:
container = a BorderedWrapper on: a ScrollWrapper on: a
Mondrian.ZoomWrapper on: a Mondrian.Drawing
Entity = nil
eventHandlers = nil
component = a Mondrian.ZoomWrapper on: a Mondrian.Drawing
Entity = nil
origin = a ScrollValueHolder
dependents = a DependentsCollection[6]
preferredBoundsBlock = nil
Arguments:
t1 = a ScreenGraphicsContext
Context PC = 11
----------------------------------------------------------------------
BorderedWrapper>>displayOn:
Receiver:
a BorderedWrapper
Instance Variables:
container = a BorderDecorator
eventHandlers = nil
component = a ScrollWrapper on: a Mondrian.ZoomWrapper on: a
Mondrian.Drawing
Entity = nil
origin = 0@0
layout = a LayoutFrame
extent = 784@530
insetDisplayBox = 2@2 corner: 782@528
border = a Win95Border
inset = 0
insideColor = nil
Arguments:
t1 = a ScreenGraphicsContext
Temporaries:
t2 = 0@0 corner: 784@530
t3 = 0@0 corner: 784@530
t4 = 2@2 corner: 782@528
Context PC = 64
----------------------------------------------------------------------
optimized [] in CompositePart>>displayOn:
Receiver:
an UndefinedObject
Arguments:
component = a BorderedWrapper on: a ScrollWrapper on: a
Mondrian.ZoomWrapper on: a Mondrian.Drawing
Entity = nil
Temporaries:
.clipBox = 0@0 corner: 800@546
.aGraphicsContext = a ScreenGraphicsContext
Context PC = 14
----------------------------------------------------------------------
OrderedCollection>>do:
Receiver:
an OrderedCollection
Instance Variables:
firstIndex = 1
lastIndex = 4
Arguments:
aBlock = BlockClosure [] in CompositePart>>displayOn:
Temporaries:
index = 1
Context PC = 43
----------------------------------------------------------------------
BorderDecorator(CompositePart)>>displayOn:
Receiver:
a BorderDecorator
Instance Variables:
container = a BoundedWrapper on: a BorderDecorator
eventHandlers = nil
components = an OrderedCollection[4]
preferredBounds = 0@0 corner: 800@546
component = a ScrollWrapper on: a Mondrian.ZoomWrapper on: a
Mondrian.Drawing
Entity = nil
widgetFlags = 11
policy = nil
Arguments:
aGraphicsContext = a ScreenGraphicsContext
Temporaries:
clipBox = 0@0 corner: 800@546
Context PC = 12
----------------------------------------------------------------------
BoundedWrapper>>displayOn:
Receiver:
a BoundedWrapper
Instance Variables:
container = a SpecWrapper on: a BoundedWrapper on: a
BorderDecorator #drawingWrapper
eventHandlers = nil
component = a BorderDecorator
origin = 0@28
layout = a LayoutFrame
extent = 800@546
Arguments:
t1 = a ScreenGraphicsContext
Context PC = 14
----------------------------------------------------------------------
SpecWrapper(Wrapper)>>displayOn:
Receiver:
a SpecWrapper
Instance Variables:
container = a CompositePart
eventHandlers = nil
component = a BoundedWrapper on: a BorderDecorator
widget = a Mondrian.ZoomWrapper on: a Mondrian.Drawing
Entity = nil
widgetState = a WidgetState
effectivelyVisible = true
decorator = a BorderDecorator
dependents = nil
dropTarget = nil
spec = an ArbitraryComponentSpec
Arguments:
t1 = a ScreenGraphicsContext
Context PC = 7
----------------------------------------------------------------------
SpecWrapper(WidgetWrapper)>>displayOn:
Receiver:
a SpecWrapper
Instance Variables:
container = a CompositePart
eventHandlers = nil
component = a BoundedWrapper on: a BorderDecorator
widget = a Mondrian.ZoomWrapper on: a Mondrian.Drawing
Entity = nil
widgetState = a WidgetState
effectivelyVisible = true
decorator = a BorderDecorator
dependents = nil
dropTarget = nil
spec = an ArbitraryComponentSpec
Arguments:
t1 = a ScreenGraphicsContext
Temporaries:
t2 = a LookPreferences[7]
Context PC = 26
----------------------------------------------------------------------
optimized [] in CompositePart>>displayOn:
Receiver:
an UndefinedObject
Arguments:
component = a SpecWrapper on: a BoundedWrapper on: a
BorderDecorator #drawingWrapper
Temporaries:
.clipBox = 0@0 corner: 800@600
.aGraphicsContext = a ScreenGraphicsContext
Context PC = 14
----------------------------------------------------------------------
OrderedCollection>>do:
Receiver:
an OrderedCollection
Instance Variables:
firstIndex = 1
lastIndex = 7
Arguments:
aBlock = BlockClosure [] in CompositePart>>displayOn:
Temporaries:
index = 1
Context PC = 43
----------------------------------------------------------------------
CompositePart>>displayOn:
Receiver:
a CompositePart
Instance Variables:
container = an ApplicationWindow 636
eventHandlers = nil
components = an OrderedCollection[7]
preferredBounds = 0@0 corner: 800@600
Arguments:
aGraphicsContext = a ScreenGraphicsContext
Temporaries:
clipBox = 0@0 corner: 800@600
Context PC = 12
----------------------------------------------------------------------
DoubleBufferingWindowDisplayPolicy>>displayDamageList:in:
Receiver:
a DoubleBufferingWindowDisplayPolicy
Instance Variables:
pixmap = a Pixmap
Arguments:
t1 = an Array[1]
t2 = an ApplicationWindow 636
Temporaries:
t3 = 0@0 corner: 800@600
t4 = a Pixmap
t5 = a ScreenGraphicsContext
t6 = a CompositePart
t7 = nil
Context PC = 58
----------------------------------------------------------------------
ApplicationWindow(ScheduledWindow)>>displayDamageEvent:
Receiver:
an ApplicationWindow
Instance Variables:
handle = a GraphicsHandle(636)
width = 800
height = 600
background = a DevicePaint
inputOrigin = -32000@-32000
creationOrigin = 240@212
sensor = an EventSensor
iconic = true
windowType = #normal
effectiveWindowType = nil
statusLineHeight = 0
allowsStatusLine = true
mapped = true
eventHandlers = nil
windowManager = a WindowManager
label = 'Mondrian'
icon = an Icon
minimumSize = 20@20
maximumSize = 0@0
component = a CompositePart
lookPreferences = nil
paintPreferences = nil
edgeDecorationPolicy = a Win95BorderDecorationPolicy
widgetPolicy = a Win98WidgetPolicy
controller = an ApplicationStandardSystemController
model = a Mondrian.MondrianUI
damageRepairPolicy = a DoubleBufferingWindowDisplayPolicy
masterWindow = nil
keyboardProcessor = a KeyboardProcessor
application = nil
sendWindowEvents = nil
receiveWindowEvents = nil
windowEventBlock = nil
damageRepairIsLazy = true
activationNotification = true
isEventDriven = nil
toolbarVisible = true
dropTarget = nil
dragDropInProgress = nil
dragDropTracker = nil
Arguments:
t1 = an Array[1]
Context PC = 7
----------------------------------------------------------------------
ApplicationWindow(ScheduledWindow)>>displayPendingInvalidation
Receiver:
an ApplicationWindow
Instance Variables:
handle = a GraphicsHandle(636)
width = 800
height = 600
background = a DevicePaint
inputOrigin = -32000@-32000
creationOrigin = 240@212
sensor = an EventSensor
iconic = true
windowType = #normal
effectiveWindowType = nil
statusLineHeight = 0
allowsStatusLine = true
mapped = true
eventHandlers = nil
windowManager = a WindowManager
label = 'Mondrian'
icon = an Icon
minimumSize = 20@20
maximumSize = 0@0
component = a CompositePart
lookPreferences = nil
paintPreferences = nil
edgeDecorationPolicy = a Win95BorderDecorationPolicy
widgetPolicy = a Win98WidgetPolicy
controller = an ApplicationStandardSystemController
model = a Mondrian.MondrianUI
damageRepairPolicy = a DoubleBufferingWindowDisplayPolicy
masterWindow = nil
keyboardProcessor = a KeyboardProcessor
application = nil
sendWindowEvents = nil
receiveWindowEvents = nil
windowEventBlock = nil
damageRepairIsLazy = true
activationNotification = true
isEventDriven = nil
toolbarVisible = true
dropTarget = nil
dragDropInProgress = nil
dragDropTracker = nil
Context PC = 24
----------------------------------------------------------------------
Mondrian
.MondrianUI(ApplicationModel)>>openInterface:withPolicy:inSession:
Receiver:
a Mondrian.MondrianUI
Instance Variables:
dependents = an ApplicationWindow 636
builder = an UIBuilder
uiSession = a ControlManager
eventHandlers = nil
drawing = a Mondrian.Drawing
Entity = nil
figureDescription = AspectAdaptor(a Mondrian.DrawingController
figureDescription)
zoomFactor = AspectAdaptor(a Mondrian.ZoomWrapper on: a
Mondrian.Drawing
Entity = nil zoomFactor)
drawingWrapper = a Mondrian.ZoomWrapper on: a Mondrian.Drawing
Entity = nil
Arguments:
t1 = #windowSpec
t2 = a Win98LookPolicy
t3 = a ControlManager
Temporaries:
t4 = a FullSpec
Context PC = 68
----------------------------------------------------------------------
Mondrian.MondrianUI(ApplicationModel)>>openInterface:withPolicy:
Receiver:
a Mondrian.MondrianUI
Instance Variables:
dependents = an ApplicationWindow 636
builder = an UIBuilder
uiSession = a ControlManager
eventHandlers = nil
drawing = a Mondrian.Drawing
Entity = nil
figureDescription = AspectAdaptor(a Mondrian.DrawingController
figureDescription)
zoomFactor = AspectAdaptor(a Mondrian.ZoomWrapper on: a
Mondrian.Drawing
Entity = nil zoomFactor)
drawingWrapper = a Mondrian.ZoomWrapper on: a Mondrian.Drawing
Entity = nil
Arguments:
t1 = #windowSpec
t2 = a Win98LookPolicy
Temporaries:
t3 = a ControlManager
Context PC = 17
----------------------------------------------------------------------
Mondrian.MondrianUI(ApplicationModel)>>openInterface:
Receiver:
a Mondrian.MondrianUI
Instance Variables:
dependents = an ApplicationWindow 636
builder = an UIBuilder
uiSession = a ControlManager
eventHandlers = nil
drawing = a Mondrian.Drawing
Entity = nil
figureDescription = AspectAdaptor(a Mondrian.DrawingController
figureDescription)
zoomFactor = AspectAdaptor(a Mondrian.ZoomWrapper on: a
Mondrian.Drawing
Entity = nil zoomFactor)
drawingWrapper = a Mondrian.ZoomWrapper on: a Mondrian.Drawing
Entity = nil
Arguments:
t1 = #windowSpec
Context PC = 7
----------------------------------------------------------------------
Mondrian.MondrianUI(ApplicationModel)>>openInterface
Receiver:
a Mondrian.MondrianUI
Instance Variables:
dependents = an ApplicationWindow 636
builder = an UIBuilder
uiSession = a ControlManager
eventHandlers = nil
drawing = a Mondrian.Drawing
Entity = nil
figureDescription = AspectAdaptor(a Mondrian.DrawingController
figureDescription)
zoomFactor = AspectAdaptor(a Mondrian.ZoomWrapper on: a
Mondrian.Drawing
Entity = nil zoomFactor)
drawingWrapper = a Mondrian.ZoomWrapper on: a Mondrian.Drawing
Entity = nil
Context PC = 5
----------------------------------------------------------------------
Mondrian.MondrianUI(ApplicationModel)>>open
Receiver:
a Mondrian.MondrianUI
Instance Variables:
dependents = an ApplicationWindow 636
builder = an UIBuilder
uiSession = a ControlManager
eventHandlers = nil
drawing = a Mondrian.Drawing
Entity = nil
figureDescription = AspectAdaptor(a Mondrian.DrawingController
figureDescription)
zoomFactor = AspectAdaptor(a Mondrian.ZoomWrapper on: a
Mondrian.Drawing
Entity = nil zoomFactor)
drawingWrapper = a Mondrian.ZoomWrapper on: a Mondrian.Drawing
Entity = nil
Context PC = 4
----------------------------------------------------------------------
Mondrian.ViewRenderer>>open
Receiver:
a Mondrian.ViewRenderer
Instance Variables:
shape = a Mondrian.ChildrenShape
lazyEval = an OrderedCollection[0]
eventHandler = nil
shapeBuilder = nil
figureContext = nil
stack = an OrderedCollection[1]
cachedDrawing = a Mondrian.Drawing
Entity = nil
shapeRenderer = nil
zoom = 1.0
Temporaries:
ui = a Mondrian.MondrianUI
Context PC = 12
----------------------------------------------------------------------
SCG.Moose.ClassGroup>>viewSystemComplexity
Receiver:
a SCG.Moose.ClassGroup
Instance Variables:
mooseID = nil
state = a SCG.Moose.DefaultEntityState
storage = a SCG.Moose.SetupStorage[2]
Temporaries:
view = a Mondrian.ViewRenderer
Context PC = 41
----------------------------------------------------------------------
SCG.Moose.MetaAction>>invokeOn:withArguments:
Receiver:
a SCG.Moose.MetaAction
Instance Variables:
ownedComments = a Set[0]
name = #viewSystemComplexity
owner = Moose::ClassGroup
type = nil
multiplicity = 1
ownedParameters = a Meta.MultivalueEnd[0]
raisedExceptions = an IdentitySet[0]
selector = #viewSystemComplexity
category = 'Mondrian'
longName = 'System Complexity'
Arguments:
anElement = Group (2 Classes)
anArray = an Array[0]
Context PC = 7
----------------------------------------------------------------------
SCG.Moose.ClassGroup(Object)>>mmInvoke:arguments:
Receiver:
a SCG.Moose.ClassGroup
Instance Variables:
mooseID = nil
state = a SCG.Moose.DefaultEntityState
storage = a SCG.Moose.SetupStorage[2]
Arguments:
anOperation = Moose::ClassGroup::viewSystemComplexity
anArray = an Array[0]
Context PC = 5
----------------------------------------------------------------------
SCG.Moose.ClassGroup(Object)>>mmInvoke:
Receiver:
a SCG.Moose.ClassGroup
Instance Variables:
mooseID = nil
state = a SCG.Moose.DefaultEntityState
storage = a SCG.Moose.SetupStorage[2]
Arguments:
anOperation = Moose::ClassGroup::viewSystemComplexity
Context PC = 7
----------------------------------------------------------------------
optimized [] in [] in [] in SCG.Moose.MooseElement>>menu
Receiver:
an UndefinedObject
Temporaries:
.self = Group (2 Classes)
.eachMenuItem = Moose::ClassGroup::viewSystemComplexity
Context PC = 7
----------------------------------------------------------------------
SCG.Moose.MooseBrowserGroupUI>>openGroupMenu
Receiver:
a SCG.Moose.MooseBrowserGroupUI
Instance Variables:
dependents = nil
builder = an UIBuilder
uiSession = nil
eventHandlers = nil
browser = a SCG.Moose.MooseBrowserGroupUI
viewSubcanvas = a SCG.Moose.MooseIconUI
groupData = a MultiSelectionInListSortAware
selectedEntities = Group (1 Class)
groupMenuButton = nil
selectedGroupMenuButton = nil
selectField = a ValueHolder on: ''
Context PC = 7
----------------------------------------------------------------------
optimized [] in ApplicationModel>>actionFor:
Receiver:
an UndefinedObject
Temporaries:
.self = a SCG.Moose.MooseBrowserGroupUI
.t1 = #openGroupMenu
Context PC = 7
----------------------------------------------------------------------
optimized [] in ActionButtonSpec>>typeConvert:
Receiver:
an UndefinedObject
Arguments:
t3 = a ValueHolder on: nil
t4 = true
Temporaries:
.t1 = BlockClosure [] in ApplicationModel>>actionFor:
Context PC = 5
----------------------------------------------------------------------
PluggableAdaptor>>setValue:
Receiver:
a PluggableAdaptor
Instance Variables:
dependents = a Win95ActionButtonView
model = a ValueHolder on: nil
getBlock = BlockClosure [] in ActionButtonSpec>>typeConvert:
putBlock = BlockClosure [] in ActionButtonSpec>>typeConvert:
updateBlock = BlockClosure [] in ActionButtonSpec>>typeConvert:
Arguments:
t1 = true
Context PC = 6
----------------------------------------------------------------------
PluggableAdaptor(ValueModel)>>value:
Receiver:
a PluggableAdaptor
Instance Variables:
dependents = a Win95ActionButtonView
model = a ValueHolder on: nil
getBlock = BlockClosure [] in ActionButtonSpec>>typeConvert:
putBlock = BlockClosure [] in ActionButtonSpec>>typeConvert:
updateBlock = BlockClosure [] in ActionButtonSpec>>typeConvert:
Arguments:
t1 = true
Context PC = 5
----------------------------------------------------------------------
TriggerButtonController>>pressAction
Receiver:
a TriggerButtonController
Instance Variables:
model = a PluggableAdaptor
view = a Win95ActionButtonView
sensor = a TranslatingSensor
keyboardProcessor = a KeyboardProcessor
keyboardHook = nil
dispatcher = nil
Context PC = 17
----------------------------------------------------------------------
TriggerButtonTracker(BasicButtonTracker)>>finishSelectionFor:
Receiver:
a TriggerButtonTracker
Instance Variables:
controller = a TriggerButtonController
inside = true
Arguments:
t1 = 156@6
Context PC = 8
----------------------------------------------------------------------
TriggerButtonTracker>>finishSelectionFor:
Receiver:
a TriggerButtonTracker
Instance Variables:
controller = a TriggerButtonController
inside = true
Arguments:
t1 = 156@6
Context PC = 11
----------------------------------------------------------------------
TriggerButtonTracker(SelectionTracker)>>redButtonReleasedEvent:
Receiver:
a TriggerButtonTracker
Instance Variables:
controller = a TriggerButtonController
inside = true
Arguments:
t1 = a RedButtonReleasedEvent
Context PC = 13
----------------------------------------------------------------------
RedButtonReleasedEvent>>dispatchTo:
Receiver:
a RedButtonReleasedEvent
Instance Variables:
time = 553481453
initiator = an EventDispatcher
window = an ApplicationWindow 24
state = 0
x = 935
y = 10
gx = 1021
gy = 444
buttonNumber = 1
Arguments:
t1 = a TriggerButtonTracker
Context PC = 4
----------------------------------------------------------------------
TriggerButtonTracker(SelectionTracker)>>handleEvent:
Receiver:
a TriggerButtonTracker
Instance Variables:
controller = a TriggerButtonController
inside = true
Arguments:
t1 = a RedButtonReleasedEvent
Context PC = 4
----------------------------------------------------------------------
EventDispatcher>>dispatch:to:
Receiver:
an EventDispatcher
Instance Variables:
windowController = an ApplicationStandardSystemController
currentMouseConsumer = nil
grabbingMouse = false
keyboardProcessor = a KeyboardProcessor
lastControlObject = a TriggerButtonController
trapList = nil
state = nil
repairDamageWhenDebugging = true
flushQueueAfterError = true
distributeEventsWhenDebugging = true
dragDropInProgress = false
dragDropTracker = nil
dispatchUnknownEvents = false
Arguments:
t1 = a RedButtonReleasedEvent
t2 = a TriggerButtonTracker
Temporaries:
t3 = nil
Context PC = 10
----------------------------------------------------------------------
EventDispatcher>>dispatchEvent:
Receiver:
an EventDispatcher
Instance Variables:
windowController = an ApplicationStandardSystemController
currentMouseConsumer = nil
grabbingMouse = false
keyboardProcessor = a KeyboardProcessor
lastControlObject = a TriggerButtonController
trapList = nil
state = nil
repairDamageWhenDebugging = true
flushQueueAfterError = true
distributeEventsWhenDebugging = true
dragDropInProgress = false
dragDropTracker = nil
dispatchUnknownEvents = false
Arguments:
t1 = a RedButtonReleasedEvent
Temporaries:
t2 = nil
t3 = nil
Context PC = 60
----------------------------------------------------------------------
RedButtonReleasedEvent(Event)>>dispatch
Receiver:
a RedButtonReleasedEvent
Instance Variables:
time = 553481453
initiator = an EventDispatcher
window = an ApplicationWindow 24
state = 0
x = 935
y = 10
gx = 1021
gy = 444
buttonNumber = 1
Context PC = 16
----------------------------------------------------------------------
RedButtonReleasedEvent(Event)>>dispatchForWindowManager:
Receiver:
a RedButtonReleasedEvent
Instance Variables:
time = 553481453
initiator = an EventDispatcher
window = an ApplicationWindow 24
state = 0
x = 935
y = 10
gx = 1021
gy = 444
buttonNumber = 1
Arguments:
t1 = a WindowManager
Context PC = 4
----------------------------------------------------------------------
optimized [] in WindowManager>>safelyDispatchForWindowManager:
Receiver:
an UndefinedObject
Temporaries:
.event = a RedButtonReleasedEvent
.self = a WindowManager
Context PC = 6
----------------------------------------------------------------------
BlockClosure>>on:do:
Receiver:
a BlockClosure
Instance Variables:
method = CompiledBlock [] in
WindowManager>>safelyDispatchForWindowManager:
outerContext = nil
copiedValues = an Array[2]
Arguments:
t1 = an ExceptionSet[3]
t2 = BlockClosure [] in
WindowManager>>safelyDispatchForWindowManager:
Context PC = 18
----------------------------------------------------------------------
WindowManager>>safelyDispatchForWindowManager:
Receiver:
a WindowManager
Instance Variables:
windows = an OrderedCollection[4]
activeController = nil
interruptLock = false
outstandingMetaOrDamage = false
openInProgress = false
eventQueue = an EventQueue
baseProcess = a Process in Semaphore>>wait
dontFilterEvents = false
Arguments:
event = a RedButtonReleasedEvent
Context PC = 18
----------------------------------------------------------------------
WindowManager>>processNextEvent
Receiver:
a WindowManager
Instance Variables:
windows = an OrderedCollection[4]
activeController = nil
interruptLock = false
outstandingMetaOrDamage = false
openInProgress = false
eventQueue = an EventQueue
baseProcess = a Process in Semaphore>>wait
dontFilterEvents = false
Temporaries:
t1 = a RedButtonReleasedEvent
Context PC = 9
----------------------------------------------------------------------
optimized [] in [] in WindowManager>>newProcess
Receiver:
an UndefinedObject
Temporaries:
.self = a WindowManager
Context PC = 13
----------------------------------------------------------------------
BlockClosure>>on:do:
Receiver:
a BlockClosure
Instance Variables:
method = CompiledBlock [] in [] in WindowManager>>newProcess
outerContext = nil
copiedValues = a WindowManager
Arguments:
t1 = TerminateException
t2 = BlockClosure [] in [] in WindowManager>>newProcess
Context PC = 18
----------------------------------------------------------------------
optimized [] in WindowManager>>newProcess
Receiver:
an UndefinedObject
Temporaries:
.self = a WindowManager
Context PC = 15
----------------------------------------------------------------------
BlockClosure>>on:do:
Receiver:
a BlockClosure
Instance Variables:
method = CompiledBlock [] in WindowManager>>newProcess
outerContext = nil
copiedValues = a WindowManager
Arguments:
t1 = TerminateException
t2 = BlockClosure [] in [] in Process class>>forBlock:priority:
Context PC = 18
----------------------------------------------------------------------
optimized [] in Process class>>forBlock:priority:
Receiver:
an UndefinedObject
Temporaries:
.t1 = BlockClosure [] in WindowManager>>newProcess
Context PC = 9
____________________________________________________________________
Psssst! Schon vom neuen WEB.DE MultiMessenger gehört?
Der kann`s mit allen:
http://www.produkte.web.de/messenger/?did=3123
_______________________________________________
Moose-dev mailing list
Moose-dev(a)iam.unibe.ch
https://www.iam.unibe.ch/mailman/listinfo/moose-dev