Tools__ProjectBuilderAssistantApplication.st
changeset 2681 e331628e00f5
parent 2679 b3c0d537d6af
child 2682 54418b0e52fb
--- a/Tools__ProjectBuilderAssistantApplication.st	Fri Oct 23 14:47:28 2009 +0200
+++ b/Tools__ProjectBuilderAssistantApplication.st	Fri Oct 23 14:47:31 2009 +0200
@@ -15,7 +15,8 @@
 		selectedStartupClassIndexHolder selectedStartupClass
 		hasStartupClassSelectedHolder selectedApplicationsComment
 		buildDirectoryHolder makeProcess listOfClassesInProject
-		makeOutputWindow projectBuilder newStartupClassName'
+		makeOutputWindow projectBuilder newStartupClassName
+		usedCompilerHolder'
 	classVariableNames:''
 	poolDictionaries:''
 	category:'System-Support-Projects'
@@ -688,8 +689,8 @@
      the UIPainter may not be able to read the specification."
 
     "
-     UIPainter new openOnClass:ProjectBuilderAssistantApplication andSelector:#page6_specifyBuildDirectorySpec
-     ProjectBuilderAssistantApplication new openInterface:#page6_specifyBuildDirectorySpec
+     UIPainter new openOnClass:Tools::ProjectBuilderAssistantApplication andSelector:#page6_specifyBuildDirectorySpec
+     Tools::ProjectBuilderAssistantApplication new openInterface:#page6_specifyBuildDirectorySpec
     "
 
     <resource: #canvas>
@@ -702,7 +703,7 @@
           label: 'Project Selection'
           name: 'Project Selection'
           min: (Point 0 0)
-          bounds: (Rectangle 0 0 521 104)
+          bounds: (Rectangle 0 0 521 239)
         )
         component: 
        (SpecCollection
@@ -727,6 +728,26 @@
                
               )
             )
+           (FramedBoxSpec
+              label: 'Compiler / Toolchain'
+              name: 'FramedBox4'
+              layout: (LayoutFrame 0 0.0 81 0 4 1.0 155 0)
+              labelPosition: topLeft
+              translateLabel: true
+              component: 
+             (SpecCollection
+                collection: (
+                 (ComboListSpec
+                    name: 'ComboList1'
+                    layout: (LayoutFrame 0 0 10 0 137 0 32 0)
+                    model: usedCompilerHolder
+                    comboList: listOfPossibleCompilers
+                    useIndex: false
+                  )
+                 )
+               
+              )
+            )
            )
          
         )
@@ -1189,6 +1210,7 @@
     ] do:[
         projectBuilder := ProjectBuilder new.
         projectBuilder package:(selectedProjectDefinition package).
+        projectBuilder usedCompiler:(usedCompilerHolder value).
         what = 'exe' ifTrue:[
             projectBuilder makeExeOnly:true
         ] ifFalse:[
@@ -1378,6 +1400,13 @@
     ^ listOfMatchingProjects.
 !
 
+listOfPossibleCompilers
+    OperatingSystem isMSWINDOWSlike ifTrue:[
+        ^ #('bcc' 'vc' 'lcc')
+    ].
+    ^ #('gcc')
+!
+
 listOfStartupClassesInProject
     <resource: #uiAspect>
 
@@ -1560,6 +1589,16 @@
         stopMakeButtonVisible := false asValue.
     ].
     ^ stopMakeButtonVisible.
+!
+
+usedCompilerHolder
+    <resource: #uiAspect>
+
+    usedCompilerHolder isNil ifTrue:[
+        usedCompilerHolder := ValueHolder new.
+        usedCompilerHolder value:(OperatingSystem isMSWINDOWSlike ifTrue:['bcc'] ifFalse:['gcc'])
+    ].
+    ^ usedCompilerHolder.
 ! !
 
 !ProjectBuilderAssistantApplication methodsFor:'initialization & release'!