Opened 5 years ago

Last modified 5 years ago

#249 testing defect

Clickion on tab Geometric - Widget Gallery produces [MessageNotUnderstood]:

Reported by: patrik.svestka@… Owned by:
Priority: major Milestone:
Component: default Keywords:
Cc: Also affects CVS HEAD (eXept version): no

Description

Clicking on Geometric tab in the widget Gallery produces an error.

The message:

[MessageNotUnderstood]: ArcMorph does not understand: #drawableId in process UIPainter [2213]

WalkBackText:

ArcMorph(Object) >> doesNotUnderstand: Message(#drawableId) {6266880} [16]
ArcMorph(**NONE**) >> drawableId {6270976} [5]
ArcMorphSpec(UISpecification) >> setVisibilityAttribute:in: false an ArcMorph {6275072} [5]
ArcMorphSpec(ComponentSpec) >> setAttributesIn:with: an ArcMorph a UIBuilder {6279168} [15]
ArcMorphSpec(NamedSpec) >> setAttributesIn:with: an ArcMorph a UIBuilder {6283264} [4]
ArcMorphSpec(MenuComponentSpec) >> setAttributesIn:with: an ArcMorph a UIBuilder {6287360} [4]
ArcMorphSpec(DisplayObjectComponentSpec) >> setAttributesIn:with: an ArcMorph a UIBuilder {6291456} [4]
ArcMorphSpec >> setAttributesIn:with: an ArcMorph a UIBuilder {6295552} [4]
ArcMorphSpec(UISpecification) >> buildViewWithLayoutFor:in: a UIBuilder a UIGalleryView::Palette {6299648} [18]
[] in SpecCollection>>buildSubViewsFor:in: >> value: ArcMorphSpec(Circle) {6303744} [15]
Array(SequenceableCollection) >> collect: [] in SpecCollection>>buildSubViewsFor:in: {6307840} [11]
SpecCollection >> buildSubViewsFor:in: a UIBuilder a UIGalleryView::Palette {6311936} [7]
SpecCollection >> buildViewWithLayoutFor:in: a UIBuilder a UIGalleryView::Palette {6316032} [6]
FullSpec >> buildViewFor:in: a UIBuilder a UIGalleryView::Palette {6320128} [111]
UIGalleryView::Palette >> specification: #(#FullSpec #name: #standardMorphs1 #window: #(#...0 0 10 0 373 0 90 0) #image: #sketchImageIcon)))) {6324224} [32]
[] in UIGalleryView>>selectionHasChanged >> value {6328320} [30]
Block >> on:do: NotFoundError [] in UIGalleryView>>selectionHasChanged (optimized) {6332416} [11]
UIGalleryView >> selectionHasChanged  {6336512} [31]
[] in UIGalleryView>>initialize >> value: 8 {6340608} [8]
UIGalleryView(NoteBookView) >> selectionChanged  {6344704} [16]
UIGalleryView(NoteBookView) >> selection: 8 {6348800} [9]
UIGalleryView(NoteBookView) >> userSelection: 8 {6352896} [5]
UIGalleryView(NoteBookView) >> buttonPress:x:y: 1 353 16 {6356992} [23]
UIGalleryView(Object) >> perform:withArguments: #buttonPress:x:y: #(1 353 16) {6361088} [170]
UIGalleryView(DisplaySurface) >> dispatchEvent:type:arguments:withFocusOn:delegate: WindowEvent::ButtonPressEvent(#buttonPress:x:y: view: UIGalleryView args: #(1 353 16)) #buttonPress:x:y: #(1 353 16) an EditField true {6365184} [238]
UIGalleryView(DisplaySurface) >> dispatchEvent:withFocusOn:delegate: WindowEvent::ButtonPressEvent(#buttonPress:x:y: view: UIGalleryView args: #(1 353 16)) an EditField true {6369280} [5]
[] in WindowGroup>>processEventsWithModalGroup: >> value  {6373376} [221]
Block >> on:do:ensure: LastEventQuery (private in WindowGroup) [] in WindowGroup>>processEventsWithModalGroup: [] in WindowGroup>>processEventsWithModalGroup: {6377472} [15]
WindowGroup >> processEventsWithModalGroup: nil {6381568} [232]
[] in WindowGroup>>eventLoopWhile:onLeave: >> value  {6385664} [152]
SignalSet >> handle:do: [] in WindowGroup>>eventLoopWhile:onLeave: [] in WindowGroup>>eventLoopWhile:onLeave: {6389760} [14]
[] in WindowGroup>>eventLoopWhile:onLeave: >> value  {6393856} [81]
Block >> ensure: [] in WindowGroup>>startupWith: (optimized) {6397952} [12]
[] in WindowGroup>>eventLoopWhile:onLeave: >> value {6402048} [184]
WindowGroup::WindowGroupQuery class(Notification class) >> answer:do: WindowGroup(UIPainter) [] in WindowGroup>>eventLoopWhile:onLeave: {6406144} [10]
[] in WindowGroup::WindowGroupQuery class>>answer:do: >> value {6410240} [4]
Block >> ensure: [] in WindowGroup::WindowGroupQuery class>>answer:do: (optimized) {6414336} [12]
WindowGroup::WindowGroupQuery class >> answer:do: WindowGroup(UIPainter) [] in WindowGroup>>eventLoopWhile:onLeave: {6418432} [5]
WindowGroup >> eventLoopWhile:onLeave: [] in WindowGroup>>startupWith: (optimized) [] in WindowGroup>>startupWith: (optimized) {6422528} [25]
[] in WindowGroup>>startupWith: >> value {6426624} [26]
Block >> ensure: [] in WindowGroup>>startupWith: {6430720} [12]
[] in WindowGroup>>startupWith: >> value  {6434816} [27]
ExceptionHandlerSet >> handleDo: [] in WindowGroup>>startupWith: {6438912} [14]
[] in Process>>start >> value {6443008} [34]
Block >> on:do:ensure: SignalSet(RestartProcessRequest TerminateProcessRequest AbortAllOperationRequest) [] in Process>>start [] in Process>>start {6447104} [15]
Process >> start  {6451200} [35]
UndefinedObject >> nil  {6455296} [0]

Attachments (1)

diff.patch (1.1 KB ) - added by patrik.svestka@… 5 years ago.
A fix diff

Download all attachments as: .zip

Change History (4)

comment:1 by patrik.svestka@…, 5 years ago

I have found the bug at: DisplayObjectComponentSpec >> #setAttributesIn:with:

However, the libview3 is still on CVS so I can't send you a patch.

The correct implementation of DisplayObjectComponentSpec >> #setAttributesIn:with:

setAttributesIn:aComponent with:aBuilder
    "set my attributes to anArc (which is a StrokingWrapper"

    super setAttributesIn:aComponent container with:aBuilder.

    aComponent line:line.
    aComponent lineColor:lineColor.
    aComponent lineWidth:lineWidth.
    aComponent lineStyle:lineStyle.
    aComponent foregroundColor:foregroundColor.
    aComponent backgroundColor:backgroundColor.
    aComponent fill:fill.


The difference is at line 1645:

super setAttributesIn:aComponent with:aBuilder.

replace by:

super setAttributesIn:aComponent container with:aBuilder.

comment:2 by patrik.svestka@…, 5 years ago

Status: newtesting

comment:3 by patrik.svestka@…, 5 years ago

Commit message:

Receiver expected aView, but got aComponent. The fix sends aView, which is aComponent container to the receiver.

I'm also including simple diff.

by patrik.svestka@…, 5 years ago

Attachment: diff.patch added

A fix diff

Note: See TracTickets for help on using tickets.