diff -r 54af4d66b0fa -r 0b0a24d7b198 UIPainter.st --- a/UIPainter.st Wed Aug 30 15:23:07 2006 +0200 +++ b/UIPainter.st Mon Sep 04 11:06:49 2006 +0200 @@ -2459,7 +2459,7 @@ applBuilder := helpTool builder. applWindow := ApplicationSubView origin:0.0@0.0 corner:1.0@1.0 in:noteBook. applWindow level:0. - helpTool loadFromClass:specClassName. + helpTool loadFromClass:specClass. helpTool masterApplication:self. applBuilder window:applWindow. applWindow client:helpTool spec:#innerSpec builder:applBuilder. @@ -2480,6 +2480,8 @@ specTool modifiedHolder:modifiedChannel. ]. ^ noteBook + + "Modified: / 31-08-2006 / 10:11:15 / cg" ! painterShown @@ -2923,11 +2925,11 @@ defaultInfoLabel "returns the default info label" - specClassName isNil ifTrue: [^'No class and selector defined.']. + specClassName isNil ifTrue: [^'No class defined.']. specSelector isNil ifTrue: [^'No selector defined.']. ^ specClassName printString, ' >> ', specSelector - "Modified: / 20.6.1998 / 16:49:16 / cg" + "Modified: / 31-08-2006 / 10:12:03 / cg" ! ! !UIPainter methodsFor:'help spec'! @@ -3214,11 +3216,12 @@ specSuperclassName := superClassName. (specClassName notNil and:[ selector notNil ]) ifTrue:[ - self addHistoryEntryForClass:specClassName selector:specSelector. + self addHistoryEntryForClass:specClass selector:specSelector. self updateInfoLabel ]. - "Modified: / 5.2.1998 / 09:44:58 / stefan" + "Modified: / 05-02-1998 / 09:44:58 / stefan" + "Modified: / 31-08-2006 / 10:14:49 / cg" ! setViewInLayoutTool:aView spec:aSpec @@ -3233,15 +3236,31 @@ ! +specClass + specClass isNil ifTrue:[ + specClassName notNil ifTrue:[ + specClass := Smalltalk classNamed:specClassName. + ] + ]. + ^ specClass + + "Created: / 31-08-2006 / 10:08:43 / cg" + "Modified: / 04-09-2006 / 10:39:21 / cg" +! + specClass:aClassOrClassName "sets the specClass and updates the Help Tool" aClassOrClassName isBehavior - ifTrue: [ specClassName := aClassOrClassName ] - ifFalse:[ specClassName := Smalltalk classNamed:aClassOrClassName ]. - - self helpTool loadFromClass:specClassName. - self clearModifiedFlag. + ifTrue: [ specClass := aClassOrClassName. + specClassName := aClassOrClassName name ] + ifFalse:[ specClass := Smalltalk classNamed:aClassOrClassName. + specClassName := aClassOrClassName ]. + + self helpTool loadFromClass:specClass. + self clearModifiedFlag. + + "Modified: / 31-08-2006 / 10:10:22 / cg" ! ! !UIPainter methodsFor:'private-tools'! @@ -3564,10 +3583,7 @@ |cls sel| - cls := specClassName. - cls isString ifTrue:[ - cls := Smalltalk at:(cls string asSymbol) - ]. + cls := self specClass. sel := specSelector. cls notNil ifTrue:[ self setClass:cls selector:sel. @@ -3590,7 +3606,7 @@ self updateInfoLabel. - "Modified: / 22.8.1998 / 17:41:34 / cg" + "Modified: / 31-08-2006 / 10:12:53 / cg" ! loadFromClass:aClass andSelector:selector @@ -3624,7 +3640,7 @@ |cls topView galleryWindow icon name| - specClassName notNil ifTrue:[ + self specClass notNil ifTrue:[ specClassName isBehavior ifTrue:[ name := specClassName nameWithoutPrefix. ] ifFalse:[ @@ -3700,6 +3716,8 @@ painterView window waitUntilVisible. self window waitUntilVisible. [ Delay waitForSeconds:0.5. self window topView raise ] fork. + + "Modified: / 31-08-2006 / 10:13:16 / cg" ! openOnClass:aClass @@ -3717,14 +3735,15 @@ ]. specSelector := aSelector. - specClassName := aClass. + specClass := aClass. + specClassName := aClass name. self openInterface. "/ specSelector := aSelector. "/ specClass := aClass. - "Modified: / 21.8.1998 / 20:59:15 / cg" + "Modified: / 31-08-2006 / 10:13:31 / cg" ! postBuildWith: aBuilder @@ -4221,12 +4240,14 @@ self askForModification ifFalse: [^nil]. self loadFromMessage: - (ResourceSelectionBrowser - request: 'Load Window Spec From Class' - onSuperclass: nil - andClass: specClassName - andSelector: specSelector ? #windowSpec - withResourceTypes: #(canvas)) + (ResourceSelectionBrowser + request: 'Load Window Spec From Class' + onSuperclass: nil + andClass: self specClass + andSelector: specSelector ? #windowSpec + withResourceTypes: #(canvas)) + + "Modified: / 31-08-2006 / 10:14:01 / cg" ! doLoadSubspec @@ -4239,7 +4260,7 @@ classAndSelector := ResourceSelectionBrowser request: 'Load Subspec From Class' onSuperclass: nil - andClass: specClassName + andClass: self specClass andSelector: specSelector withResourceTypes: #(canvas). @@ -4253,13 +4274,15 @@ (class respondsTo:selector) ifTrue:[ self addWidgetOfSpec:(Array with: (UISubSpecification new majorKey: class name; minorKey: selector)) ] + + "Modified: / 31-08-2006 / 10:13:56 / cg" ! doNew "removes all widgets, specClass, and specSelector" self askForModification ifFalse: [^nil]. - specClassName := specSelector := nil. + specClass := specClassName := specSelector := nil. self painter removeAll. treeView canvas topView name: UIPainter defaultNameOfCanvas. treeView canvas topView label: UIPainter defaultNameOfCanvas. @@ -4268,6 +4291,8 @@ treeView selectedNode changed. self tabModel value: self tabList value first. self updateInfoLabel. + + "Modified: / 31-08-2006 / 10:14:10 / cg" ! doOpenWidgetDocumentation