--- a/Tools__ProjectBuilderAssistantApplication.st Fri Jul 20 20:15:40 2012 +0200
+++ b/Tools__ProjectBuilderAssistantApplication.st Fri Jul 20 20:17:17 2012 +0200
@@ -394,7 +394,7 @@
model: projectTypeHolder
isTriggerOnDown: true
onCallBackSelector: projectTypeChanged
- select: guiApplicationType
+ select: #'GUI-Application'
extent: (Point 136 22)
)
(RadioButtonSpec
@@ -404,7 +404,7 @@
model: projectTypeHolder
isTriggerOnDown: true
onCallBackSelector: projectTypeChanged
- select: nonGuiApplicationType
+ select: #'NonGUI-Application'
extent: (Point 136 22)
)
(RadioButtonSpec
@@ -414,7 +414,7 @@
model: projectTypeHolder
isTriggerOnDown: true
onCallBackSelector: projectTypeChanged
- select: libraryType
+ select: #Library
extent: (Point 136 22)
)
)
@@ -478,6 +478,8 @@
)
)
+
+ "Modified: / 20-07-2012 / 13:27:45 / cg"
!
page2_projectSelectionSpec
@@ -1453,6 +1455,20 @@
)
! !
+!ProjectBuilderAssistantApplication class methodsFor:'startup'!
+
+openOn:aProjectDefinitionClass
+ ^ self new openOn:aProjectDefinitionClass
+
+ "Created: / 20-07-2012 / 12:33:25 / cg"
+!
+
+openOnPackage:aPackageId
+ ^ self new openOnPackage:aPackageId
+
+ "Created: / 20-07-2012 / 13:22:50 / cg"
+! !
+
!ProjectBuilderAssistantApplication methodsFor:'actions'!
buildDirectoryChanged
@@ -2100,36 +2116,16 @@
!
projectType
- self projectTypeHolder value == #libraryType ifTrue:[
- ^ ProjectDefinition libraryType
- ].
- self projectTypeHolder value == #guiApplicationType ifTrue:[
- ^ ProjectDefinition guiApplicationType
- ].
- self projectTypeHolder value == #nonGuiApplicationType ifTrue:[
- ^ ProjectDefinition nonGuiApplicationType
- ].
- self error.
+ ^ self projectTypeHolder value
+
+ "Modified: / 20-07-2012 / 13:28:46 / cg"
!
projectType:aProjectTypeSymbol
- |pType|
-
self assert:(ProjectDefinition projectTypes includes:aProjectTypeSymbol).
- aProjectTypeSymbol == ProjectDefinition libraryType ifTrue:[
- pType := #libraryType
- ] ifFalse:[
- aProjectTypeSymbol == ProjectDefinition guiApplicationType ifTrue:[
- pType := #guiApplicationType
- ] ifFalse:[
- aProjectTypeSymbol == ProjectDefinition nonGuiApplicationType ifTrue:[
- pType := #nonGuiApplicationType
- ] ifFalse:[
- self error.
- ].
- ]
- ].
self projectTypeHolder value:aProjectTypeSymbol
+
+ "Modified: / 20-07-2012 / 13:28:25 / cg"
!
projectTypeHolder
@@ -2137,9 +2133,11 @@
projectTypeHolder isNil ifTrue:[
projectTypeHolder := RadioButtonGroup new.
- projectTypeHolder value:#guiApplicationType.
+ projectTypeHolder value:ProjectDefinition guiApplicationType.
].
^ projectTypeHolder.
+
+ "Modified: / 20-07-2012 / 13:30:16 / cg"
!
selectedApplicationIndexHolder
@@ -2256,6 +2254,50 @@
^ browser.
!
+openOn:aProjectDefinitionClass
+ |type apps startupClass|
+
+ self allButOpen.
+ aProjectDefinitionClass isLibraryDefinition ifTrue:[
+ type := ProjectDefinition libraryType
+ ] ifFalse:[
+ aProjectDefinitionClass isGUIApplication ifTrue:[
+ type := ProjectDefinition guiApplicationType
+ ] ifFalse:[
+ type := ProjectDefinition nonGuiApplicationType
+ ]
+ ].
+ self projectTypeHolder value:type.
+ self hideSTXProjects value:false.
+ selectedProjectDefinition := aProjectDefinitionClass.
+ self selectedProjectIndexHolder value:(self listOfMatchingPackageIds value indexOf:aProjectDefinitionClass package).
+ self hasProjectSelectedHolder value:true.
+
+ self gotoPage:3.
+ type == ProjectDefinition guiApplicationType ifTrue:[
+ (startupClass := aProjectDefinitionClass startupClass) notNil ifTrue:[
+ selectedStartupClass := startupClass.
+ self gotoPage:4.
+ ].
+"/ apps := (aProjectDefinitionClass classes select:[:cls | cls isKindOf:ApplicationModel])
+ ].
+ self openWindow.
+
+ "Created: / 20-07-2012 / 12:34:02 / cg"
+!
+
+openOnPackage:aPackageId
+ self allButOpen.
+ self projectTypeHolder value:(ProjectDefinition guiApplicationType).
+ self hideSTXProjects value:false.
+ self selectedProjectIndexHolder value:(self listOfMatchingPackageIds indexOf:aPackageId).
+ self hasProjectSelectedHolder value:true.
+ self gotoPage:2.
+ self openWindow.
+
+ "Created: / 20-07-2012 / 13:24:38 / cg"
+!
+
postBuildMakeOutputWindow:aView
makeOutputWindow := aView
!
@@ -2385,7 +2427,7 @@
!
canEnterContentsSelection
- |prj cls impl|
+ |prj cls impl mthd|
self hasProjectSelected ifFalse:[
self infoHolder value:'no project selected'.
@@ -2415,8 +2457,8 @@
^ false
].
].
- (prj class compiledMethodAt:#startupClassName) package == prj package ifFalse:[
- (prj class compiledMethodAt:#startupClassName) package == PackageId noProjectID ifFalse:[
+ (mthd := prj class compiledMethodAt:#startupClassName) package == prj package ifFalse:[
+ mthd package == PackageId noProjectID ifFalse:[
self infoHolder value:('startup class method (#startupClassName) of %3 must be in package "%1" (is in "%2")'
bindWith:prj package
with:(prj class compiledMethodAt:#startupClassName) package
@@ -2424,12 +2466,12 @@
^ false
].
].
- (prj class compiledMethodAt:#startupSelector) notNil ifTrue:[
- (prj class compiledMethodAt:#startupSelector) package == prj package ifFalse:[
- (prj class compiledMethodAt:#startupSelector) package == PackageId noProjectID ifFalse:[
+ (mthd := prj class compiledMethodAt:#startupSelector) notNil ifTrue:[
+ mthd package == prj package ifFalse:[
+ mthd package == PackageId noProjectID ifFalse:[
self infoHolder value:('startup class method (#startupSelector) of %3 must be in package "%1" (is in "%2")'
bindWith:prj package
- with:(prj class compiledMethodAt:#startupSelector) package
+ with:mthd package
with:prj class name).
^ false
]
@@ -2450,7 +2492,7 @@
].
^ true.
- "Modified: / 19-01-2012 / 15:30:54 / cg"
+ "Modified: / 20-07-2012 / 19:21:34 / cg"
!
canEnterDeploy
@@ -2494,11 +2536,15 @@
!
projectTypeIsGuiApplication
- ^ self projectTypeHolder value == #guiApplicationType
+ ^ self projectTypeHolder value == ProjectDefinition guiApplicationType
+
+ "Modified: / 20-07-2012 / 13:29:59 / cg"
!
projectTypeIsLibrary
- ^ self projectTypeHolder value == #libraryType
+ ^ self projectTypeHolder value == ProjectDefinition libraryType
+
+ "Modified: / 20-07-2012 / 13:29:24 / cg"
!
projectTypeIsNotLibrary
@@ -2733,7 +2779,8 @@
projectType = ProjectDefinition nonGuiApplicationType ifTrue:[
query := #isConsoleApplication
] ifFalse:[
- self error.
+ self halt:'oops'.
+ projectType := ProjectDefinition guiApplicationType.
].
].
].
@@ -2767,7 +2814,7 @@
self selectedProjectIndexHolder value:idx.
].
- "Modified: / 04-12-2011 / 19:55:37 / cg"
+ "Modified: / 20-07-2012 / 15:04:15 / cg"
!
updateListOfNewProjectsName