Stef,

It looks like it goes into the following loop:

        [aWidget world notNil] whileTrue: [
                aWidget outermostWorldMorph doOneCycle.
        ].

where aWidget is the system window of interest.  You might simply add this code 
(make a backup first<g>), see if that goes well.  

Does that help?

Bill



________________________________________
From: [email protected] 
[[email protected]] On Behalf Of Stéphane Ducasse 
[[email protected]]
Sent: Sunday, June 05, 2011 3:17 PM
To: Pharo-project open-source Smalltalk
Subject: [Pharo-project] help to remove toolbuilder

Hi gary


I could nearly remove toolBuilder if I could know what to do with
        [ToolBuilder default runModal: aSystemWindow openAsIs] in


openModal: aSystemWindow
        "Open the given window locking the receiver until it is dismissed.
        Answer the system window.
        Restore the original keyboard focus when closed."

        |area mySysWin keyboardFocus|
        keyboardFocus := self activeHand keyboardFocus.
        mySysWin := self isSystemWindow ifTrue: [self] ifFalse: [self 
ownerThatIsA: SystemWindow].
        mySysWin ifNil: [mySysWin := self].
        mySysWin modalLockTo: aSystemWindow.
        area := RealEstateAgent maximumUsableArea.
        aSystemWindow extent: aSystemWindow initialExtent.
        aSystemWindow position = (0@0)
                ifTrue: [aSystemWindow
                                position: self activeHand position - 
(aSystemWindow extent // 2)].
        aSystemWindow
                bounds: (aSystemWindow bounds translatedToBeWithin: area).
        [ToolBuilder default runModal: aSystemWindow openAsIs]
                ensure: [mySysWin modalUnlockFrom: aSystemWindow.
                                self activeHand newKeyboardFocus: 
keyboardFocus].
        ^aSystemWindow

Stef

Reply via email to