diff -r 67cc88b7b310 -r 43f28c0ce813 Tools__ProjectDefinitionEditor.st --- 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 " @@ -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 " @@ -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