--- a/Tools__ProjectDefinitionEditor.st Tue Sep 05 18:46:36 2006 +0200
+++ b/Tools__ProjectDefinitionEditor.st Wed Sep 06 18:53:28 2006 +0200
@@ -3,14 +3,14 @@
"{ NameSpace: Tools }"
ResourceSpecEditor subclass:#ProjectDefinitionEditor
- instanceVariableNames:'definitionClass classList selectedClassIndexHolder
+ instanceVariableNames:'definitionClass classList extensionsList selectedClassIndexHolder
classesTableColumns revisionNrHolder companyNameHolder
fileMajorVersionNrHolder minorVersionNrHolder iconFileNameHolder
fileReleaseNrHolder productNameHolder majorVersionNrHolder
fileRevisionNrHolder fileDescriptionHolder releaseNrHolder
fileMinorVersionNrHolder descriptionHolder legalCopyrightHolder
isApplicationDefinitionHolder isNonGUIApplicationHolder
- startSinglethreadedHolder startupClassHolder
+ startSinglethreadedHolder startupClassNameHolder
startupSelectorHolder'
classVariableNames:''
poolDictionaries:''
@@ -24,6 +24,13 @@
privateIn:ProjectDefinitionEditor
!
+Object subclass:#ExtensionsListEntry
+ instanceVariableNames:'className selector'
+ classVariableNames:''
+ poolDictionaries:''
+ privateIn:ProjectDefinitionEditor
+!
+
!ProjectDefinitionEditor class methodsFor:'documentation'!
documentation
@@ -567,7 +574,7 @@
(InputFieldSpec
name: 'StartupClassEntryField'
layout: (LayoutFrame 162 0.0 5 0 0 1.0 27 0)
- model: startupClassHolder
+ model: startupClassNameHolder
acceptOnReturn: true
acceptOnTab: true
acceptOnLostFocus: true
@@ -625,6 +632,8 @@
)
)
+
+ "Modified: / 06-09-2006 / 18:41:56 / cg"
!
windowSpec
@@ -674,6 +683,12 @@
!ProjectDefinitionEditor class methodsFor:'list specs'!
+tabList
+^ self tabListForApplication.
+
+ "Created: / 06-09-2006 / 13:38:03 / cg"
+!
+
tabListForApplication
"This resource specification was automatically generated
by the TabListEditor of ST/X."
@@ -689,6 +704,10 @@
^ #(
(TabItem
+ label: 'Description'
+ minorKey: descriptionSpec
+ )
+ (TabItem
label: 'Classes'
createNewBuilder: false
translateLabel: true
@@ -703,10 +722,6 @@
minorKey: prerequisitesSpec
)
(TabItem
- label: 'Description'
- minorKey: descriptionSpec
- )
- (TabItem
label: 'Compilation'
minorKey: compilationSpec
)
@@ -719,6 +734,7 @@
collect:[:aTab| TabItem new fromLiteralArrayEncoding:aTab ]
"Created: / 05-09-2006 / 16:24:48 / cg"
+ "Modified: / 06-09-2006 / 18:44:34 / cg"
!
tabListForLibrary
@@ -736,6 +752,10 @@
^ #(
(TabItem
+ label: 'Description'
+ minorKey: descriptionSpec
+ )
+ (TabItem
label: 'Classes'
createNewBuilder: false
translateLabel: true
@@ -750,22 +770,15 @@
minorKey: prerequisitesSpec
)
(TabItem
- label: 'Description'
- minorKey: descriptionSpec
- )
- (TabItem
label: 'Compilation'
minorKey: compilationSpec
)
- (TabItem
- label: 'Startup'
- minorKey: startupSpec
- )
)
collect:[:aTab| TabItem new fromLiteralArrayEncoding:aTab ]
"Created: / 05-09-2006 / 16:24:52 / cg"
+ "Modified: / 06-09-2006 / 18:44:38 / cg"
! !
!ProjectDefinitionEditor class methodsFor:'menu specs'!
@@ -1019,7 +1032,7 @@
the DataSetBuilder may not be able to read the specification."
"
- DataSetBuilder new openOnClass:ApplicationDefinitionEditor andSelector:#classesTableColumns
+ DataSetBuilder new openOnClass:Tools::ProjectDefinitionEditor andSelector:#classesTableColumns
"
<resource: #tableColumns>
@@ -1030,23 +1043,27 @@
labelButtonType: Button
rendererType: CheckToggle
model: autoloaded
+ canSelect: false
)
(DataSetColumnSpec
label: 'Win32'
labelButtonType: Button
rendererType: CheckToggle
model: win32
+ canSelect: false
)
(DataSetColumnSpec
label: 'Unix'
labelButtonType: Button
rendererType: CheckToggle
model: unix
+ canSelect: false
)
(DataSetColumnSpec
label: 'Class'
labelButtonType: Button
model: className
+ canSelect: false
)
)
@@ -1060,7 +1077,7 @@
the DataSetBuilder may not be able to read the specification."
"
- DataSetBuilder new openOnClass:ApplicationDefinitionEditor andSelector:#extensionsTableColumns
+ DataSetBuilder new openOnClass:Tools::ProjectDefinitionEditor andSelector:#extensionsTableColumns
"
<resource: #tableColumns>
@@ -1070,11 +1087,13 @@
label: 'Class'
labelButtonType: Button
model: className
+ canSelect: false
)
(DataSetColumnSpec
label: 'Selector'
labelButtonType: Button
model: selector
+ canSelect: false
)
)
@@ -1157,6 +1176,15 @@
"Modified: / 04-09-2006 / 17:58:15 / cg"
!
+extensionsList
+ extensionsList isNil ifTrue:[
+ extensionsList := #() asValue.
+ ].
+ ^ extensionsList.
+
+ "Created: / 06-09-2006 / 18:47:54 / cg"
+!
+
fileDescriptionHolder
fileDescriptionHolder isNil ifTrue:[
fileDescriptionHolder := ValueHolder new.
@@ -1406,13 +1434,13 @@
"Created: / 05-09-2006 / 13:34:54 / cg"
!
-startupClassHolder
- startupClassHolder isNil ifTrue:[
- startupClassHolder := '' asValue.
+startupClassNameHolder
+ startupClassNameHolder isNil ifTrue:[
+ startupClassNameHolder := '' asValue.
].
- ^ startupClassHolder.
+ ^ startupClassNameHolder.
- "Created: / 05-09-2006 / 13:34:08 / cg"
+ "Created: / 06-09-2006 / 18:41:52 / cg"
!
startupSelectorHolder
@@ -1434,7 +1462,7 @@
].
^ list
- "Modified: / 05-09-2006 / 16:28:09 / cg"
+ "Modified: / 06-09-2006 / 17:58:08 / cg"
! !
!ProjectDefinitionEditor methodsFor:'aspects-menu'!
@@ -1491,6 +1519,24 @@
"Created: / 05-09-2006 / 12:31:26 / cg"
!
+fetchExtensionsListEntries
+ |entries|
+
+ entries := OrderedCollection new.
+ definitionClass
+ extensionMethodNames pairWiseDo:[:className :selector |
+ |entry|
+
+ entry := ExtensionsListEntry new.
+ entry className:className selector:selector.
+ entries add:entry.
+ ].
+
+ ^ entries.
+
+ "Created: / 06-09-2006 / 18:45:15 / cg"
+!
+
fetchValues
|definitionClass isApplicationDefinition|
@@ -1501,7 +1547,7 @@
self isApplicationDefinitionHolder value:isApplicationDefinition.
isApplicationDefinition ifTrue:[
- self startupClassHolder value:(definitionClass startupClass).
+ self startupClassNameHolder value:(definitionClass startupClassName).
self startupSelectorHolder value:(definitionClass startupSelector).
self iconFileNameHolder value:(definitionClass iconFileName).
self tabList value:(self class tabListForApplication).
@@ -1525,6 +1571,7 @@
self fileReleaseNrHolder value:(definitionClass fileReleaseNr asInteger).
self classList value:(self fetchClassListEntries).
+ self extensionsList value:(self fetchExtensionsListEntries).
self window
label:(isApplicationDefinition
@@ -1533,7 +1580,7 @@
, ' Definition: ',definitionClass name.
"Created: / 04-09-2006 / 16:34:39 / cg"
- "Modified: / 05-09-2006 / 16:26:45 / cg"
+ "Modified: / 06-09-2006 / 18:45:45 / cg"
!
update:something with:parameter from:changedObject
@@ -1735,6 +1782,21 @@
win32 := something.
! !
+!ProjectDefinitionEditor::ExtensionsListEntry methodsFor:'accessing'!
+
+className
+ ^ className
+!
+
+className:classNameArg selector:selectorArg
+ className := classNameArg.
+ selector := selectorArg.
+!
+
+selector
+ ^ selector
+! !
+
!ProjectDefinitionEditor class methodsFor:'documentation'!
version