--- a/AbstractSettingsApplication.st Tue Feb 14 11:26:33 2012 +0000
+++ b/AbstractSettingsApplication.st Tue Feb 14 17:08:43 2012 +0000
@@ -341,12 +341,20 @@
!
AbstractSettingsApplication subclass:#ToolboxSettingsAppl
- instanceVariableNames:''
+ instanceVariableNames:'changesBrowserClassName'
classVariableNames:''
poolDictionaries:''
privateIn:AbstractSettingsApplication
!
+ApplicationModel subclass:#ClassToolSetting
+ instanceVariableNames:'labelHolder classNameHolder classNameList classLabelHolder
+ classLabelList'
+ classVariableNames:''
+ poolDictionaries:''
+ privateIn:AbstractSettingsApplication::ToolboxSettingsAppl
+!
+
AbstractSettingsApplication subclass:#ToolsSettingsAppl
instanceVariableNames:'useNewVersionDiffBrowser transcriptBufferSize useNewInspector
showClockInLauncher useNewChangesBrowser useNewFileBrowser
@@ -16235,79 +16243,21 @@
name: developmentToolsSpec
window:
(WindowSpec
- label: 'NewApplication'
- name: 'NewApplication'
- bounds: (Rectangle 0 0 550 465)
+ label: 'Development tools'
+ name: 'Development tools'
+ bounds: (Rectangle 0 0 674 614)
)
component:
(SpecCollection
collection: (
(VerticalPanelViewSpec
- name: 'VerticalPanel1'
+ name: 'DevToolsPanel'
layout: (LayoutFrame 0 0 0 0 0 1 0 1)
horizontalLayout: fit
verticalLayout: top
horizontalSpace: 3
verticalSpace: 3
- component:
- (SpecCollection
- collection: (
- (ViewSpec
- name: 'ChengeSetBrowser'
- component:
- (SpecCollection
- collection: (
- (LabelSpec
- label: 'Changes Browser'
- name: 'ChangeSetBrowserLabel'
- layout: (LayoutFrame 0 0 0 0 200 0 30 0)
- translateLabel: true
- adjust: left
- )
- (RadioButtonSpec
- label: 'Standard'
- name: 'ChangeSetBrowserClassic'
- layout: (LayoutFrame 200 0 0 0 0 1 30 0)
- translateLabel: true
- model: changesBrowserType
- isTriggerOnDown: true
- select: ChangesBrowser
- )
- (RadioButtonSpec
- label: 'New (experimental)'
- name: 'ChangesBrowserNew'
- layout: (LayoutFrame 200 0 30 0 0 1 60 0)
- translateLabel: true
- model: changesBrowserType
- isTriggerOnDown: true
- select: #'Tools::ChangeSetBrowser2'
- )
- (RadioButtonSpec
- label: 'Custom'
- name: 'RadioButton1'
- layout: (LayoutFrame 200 0 60 0 0 1 90 0)
- translateLabel: true
- model: changesBrowserType
- isTriggerOnDown: true
- select: #'__Custom__'
- )
- (InputFieldSpec
- name: 'EntryField1'
- layout: (LayoutFrame 220 0 91 0 0 1 116 0)
- model: changesBrowserClassName
- type: symbolOrNil
- acceptOnReturn: true
- acceptOnTab: true
- acceptOnPointerLeave: true
- )
- )
-
- )
- extent: (Point 550 120)
- )
- )
-
- )
+ postBuildCallback: developmentToolSettingsInto:
)
)
@@ -16381,6 +16331,25 @@
!AbstractSettingsApplication::ToolboxSettingsAppl methodsFor:'aspects'!
+changesBrowserClassName
+ <resource: #uiAspect>
+
+ "automatically generated by UIPainter ..."
+
+ "*** the code below creates a default model when invoked."
+ "*** (which may not be the one you wanted)"
+ "*** Please change as required and accept it in the browser."
+ "*** (and replace this comment by something more useful ;-)"
+
+ changesBrowserClassName isNil ifTrue:[
+ changesBrowserClassName := ValueHolder new.
+"/ if your app needs to be notified of changes, uncomment one of the lines below:
+"/ changesBrowserClassName addDependent:self.
+"/ changesBrowserClassName onChangeSend:#changesBrowserClassNameChanged to:self.
+ ].
+ ^ changesBrowserClassName.
+!
+
notebookTabList
"Generated by the TabListEditor"
@@ -16392,6 +16361,41 @@
^ list
! !
+!AbstractSettingsApplication::ToolboxSettingsAppl methodsFor:'hooks'!
+
+developmentToolSettingsInto:panel
+
+ (self addClassToolSettingFor: #changesBrowserClassName to: panel)
+ label: 'Changes Browser';
+ classes:#( #ChangesBrowser
+ #NewChangesBrowser
+ #Tools::ChangeSetBrowser2 );
+ labels: #( 'ChangesBrowser - default'
+ 'NewChangesBrowser - experimental, not maintained'
+ 'Tools::ChangeSetBrowser2 - experimental' ).
+
+ "Created: / 14-02-2012 / 16:20:06 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!AbstractSettingsApplication::ToolboxSettingsAppl methodsFor:'private'!
+
+addClassToolSettingFor: settingAspect to: panel
+
+ | model setting canvas |
+ model := self perform: settingAspect.
+ canvas := ApplicationSubView new.
+ setting := ClassToolSetting new.
+ setting createBuilder.
+ setting classNameHolder: model.
+ setting window: canvas.
+ canvas client: setting.
+ canvas height: 30.
+ panel addSubView: canvas.
+ ^setting
+
+ "Created: / 14-02-2012 / 16:24:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
!AbstractSettingsApplication::ToolboxSettingsAppl methodsFor:'protocol'!
basicReadSettings
@@ -16422,6 +16426,29 @@
^ self shouldImplement
! !
+
+!AbstractSettingsApplication::ToolboxSettingsAppl::ClassToolSetting methodsFor:'accessing'!
+
+classes: collection
+ | classes |
+
+ classes := collection asOrderedCollection.
+"/ (classes includes: self classNameHolder value) ifFalse:[
+"/ classes add: self classNameHolder value
+"/ ].
+ classes add: #__custom__.
+ self classNameList value: classes
+
+ "Created: / 14-02-2012 / 16:28:20 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+label: aString
+ self labelHolder value: aString
+
+ "Created: / 14-02-2012 / 16:25:43 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+
!AbstractSettingsApplication::ToolsSettingsAppl class methodsFor:'help specs'!
flyByHelpSpec
@@ -16989,14 +17016,13 @@
!AbstractSettingsApplication class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libtool/AbstractSettingsApplication.st,v 1.423 2012/02/07 16:08:10 cg Exp $'
+ ^ '$Id: AbstractSettingsApplication.st 7890 2012-02-14 17:08:43Z vranyj1 $'
!
version_CVS
- ^ 'Header: /cvs/stx/stx/libtool/AbstractSettingsApplication.st,v 1.423 2012/02/07 16:08:10 cg Exp '
+ ^ '§Header: /cvs/stx/stx/libtool/AbstractSettingsApplication.st,v 1.423 2012/02/07 16:08:10 cg Exp §'
!
version_SVN
- ^ '$Id: AbstractSettingsApplication.st 7887 2012-02-13 19:19:58Z vranyj1 $'
-! !
-
+ ^ '$Id: AbstractSettingsApplication.st 7890 2012-02-14 17:08:43Z vranyj1 $'
+! !