'From Pharo8.0.0 of 20 February 2020 [Build information: Pharo-8.0.0+build.1129.sha.278304fdce17a1b7cc3ede1006275ffbc7baf20a (64 Bit)] on 29 March 2020 at 12:30:38.350572 pm'! SpPresenter subclass: #DrGScriptBrowser2 instanceVariableNames: 'scripts methods source' classVariableNames: '' package: 'DrGeoII-UI-Window'! !DrGScriptBrowser2 commentStamp: 'HilaireFernandes 3/28/2020 12:59' prior: 0! A DrGeo script browser written with Spec2.! !DrGScriptBrowser2 methodsFor: 'initialization' stamp: 'HilaireFernandes 3/28/2020 19:22'! instanceMethodsTab ^ SpNotebookPage title: 'Methods' translated provider: [ self newList display: [:aMethod | aMethod selector ]; yourself]! ! !DrGScriptBrowser2 methodsFor: 'initialization' stamp: 'HilaireFernandes 3/28/2020 15:31'! newScriptCode source := self instantiate: SpLabelledContainer. source label: 'Source' translated; content: SpCodePresenter! ! !DrGScriptBrowser2 methodsFor: 'initialization' stamp: 'HilaireFernandes 3/28/2020 19:43'! connectPresenters scripts whenSelectedItemChanged: [ :class | methods resetAllPageContents. (methods pageAt: 1) whenRetrievedDo: [ :list | list items: class methods]. (methods pageAt: 2) whenRetrievedDo: [ :list | list items: class class methods]. methods selectPageIndex: 1. source clearContent ].! ! !DrGScriptBrowser2 methodsFor: 'initialization' stamp: 'HilaireFernandes 3/28/2020 19:22'! classMethodsTab ^ SpNotebookPage title: 'Script data' translated provider: [ self newList display: [:aMethod | aMethod selector ]; yourself]! ! !DrGScriptBrowser2 methodsFor: 'initialization' stamp: 'HilaireFernandes 3/28/2020 15:31'! newScriptsList scripts := self instantiate: SpLabelledList. scripts label: 'Scripts' translated; items: DrGeoUserScript allSubclasses; display: [ :aClass | aClass scriptName ]! ! !DrGScriptBrowser2 methodsFor: 'initialization' stamp: 'HilaireFernandes 3/28/2020 15:10'! newMethodsList methods := self newNotebook. methods addPage: self instanceMethodsTab; addPage: self classMethodsTab! ! !DrGScriptBrowser2 methodsFor: 'initialization' stamp: 'HilaireFernandes 3/28/2020 15:12'! initializePresenters self newScriptsList. self newMethodsList. self newScriptCode! ! "-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- "! DrGScriptBrowser2 class instanceVariableNames: ''! !DrGScriptBrowser2 class methodsFor: 'initialization' stamp: 'HilaireFernandes 3/28/2020 14:28'! defaultSpec ^ SpBoxLayout newVertical add: (SpBoxLayout newHorizontal add: #scripts; add: #methods; yourself); add: #source; yourself ! !