UIPainter.st
changeset 1851 d036350188f5
parent 1850 410f98d259b7
child 1862 d10363a83240
equal deleted inserted replaced
1850:410f98d259b7 1851:d036350188f5
  3852         self doDefineClassAndSelector isNil ifTrue:[
  3852         self doDefineClassAndSelector isNil ifTrue:[
  3853             ^ nil
  3853             ^ nil
  3854         ]
  3854         ]
  3855     ].
  3855     ].
  3856     
  3856     
  3857 "/    specClass notNil ifTrue:[
       
  3858 "/        (specClass includes:$:) ifFalse:[
       
  3859 "/            (ns := Smalltalk defaultNameSpace) notNil ifTrue:[
       
  3860 "/                cls := ns at:specClass asSymbol
       
  3861 "/            ].
       
  3862 "/        ].
       
  3863 "/        cls isNil ifTrue:[
       
  3864 "/            (specClass startsWith:'Smalltalk::') ifTrue:[
       
  3865 "/                cls := Smalltalk at: (specClass copyFrom:12) asSymbol.
       
  3866 "/            ] ifFalse:[
       
  3867 "/                cls := Smalltalk at: specClass asSymbol.
       
  3868 "/            ]
       
  3869 "/        ].
       
  3870 "/        ns := cls nameSpace.
       
  3871 "/    ].
       
  3872 "/    cls isClass ifFalse:[   
       
  3873 "/        self warn:('Oops - cannot save - class not found: ' , specClass).
       
  3874 "/        ^nil
       
  3875 "/    ].
       
  3876 "/
       
  3877 "/    ns ~~ Smalltalk defaultNameSpace ifTrue:[
       
  3878 "/        specClass := ns name , '::' , cls nameWithoutNameSpacePrefix.
       
  3879 "/    ] ifFalse:[
       
  3880 "/        specClass := cls name.
       
  3881 "/    ].
       
  3882     (specClass notNil 
  3857     (specClass notNil 
  3883         and:[ (cls := Smalltalk at:specClass asSymbol) isClass ]) 
  3858         and:[ (cls := Smalltalk at:specClass asSymbol) isClass ]) 
  3884             ifFalse:[
  3859             ifFalse:[
  3885                 self warn:('Oops - cannot save - class not found: ' , specClass).
  3860                 self warn:('Oops - cannot save - class not found: ' , specClass).
  3886                 ^ nil
  3861                 ^ nil
  3888     painter := self painter.
  3863     painter := self painter.
  3889     painter 
  3864     painter 
  3890         className:specClass
  3865         className:specClass
  3891         superclassName:specSuperclass
  3866         superclassName:specSuperclass
  3892         selector:specSelector.
  3867         selector:specSelector.
  3893 self halt.
  3868 
  3894     Transcript showCR:'generating windowSpec code...'.
  3869 "/    Transcript showCR:'generating windowSpec code...'.
       
  3870 
       
  3871     (painter topView extent > (800 @ 600)) ifTrue:[
       
  3872         Dialog 
       
  3873             warn:(resources
       
  3874                 stringWithCRs:'The application''s default window-size is taken from the current size and will be %1.\\This may be too small on some displays - if required, resize and save again.'
       
  3875                 with:painter topView extent printString allBold)
       
  3876     ].
       
  3877 
  3895     code := painter generateWindowSpecMethodSource withCRs.
  3878     code := painter generateWindowSpecMethodSource withCRs.
  3896     (ReadStream on:code) fileIn.
  3879     (ReadStream on:code) fileIn.
  3897     self doGenerateAspectSelectorsMethod.
  3880     self doGenerateAspectSelectorsMethod.
  3898     self helpTool doSave.
  3881     self helpTool doSave.
  3899     self updateInfoLabel.
  3882     self updateInfoLabel.