Tools__ProjectBuilderAssistantApplication.st
changeset 3342 1d1d2904c353
parent 3340 c3f16b9e2999
child 3429 bda211bf56ec
--- a/Tools__ProjectBuilderAssistantApplication.st	Wed Oct 12 09:04:34 2016 +0200
+++ b/Tools__ProjectBuilderAssistantApplication.st	Fri Oct 14 15:43:31 2016 +0200
@@ -2116,7 +2116,7 @@
     self hasProjectSelected ifTrue:[
         defClass := self selectedProjectDefinition.
         UserPreferences systemBrowserClass 
-            openInClass:defClass class selector:#preRequisites.
+            openInClass:defClass class selector:#referencedPreRequisites "/ #mandatoryPreRequisites.
     ].
 !
 
@@ -3174,7 +3174,11 @@
             pageTitle: 'Project Type Selection'
             windowSpecSelector: page1_projectTypeSelectionSpec
             enterCallbackSelector: updateListOfMatchingProjects
-            infoText: 'Choose the <B>type</B> of project you are about to build.'
+            infoText: 'Define the <B>type</B> of project you are about to build.<P>
+Choose <B>GUI-application</B> for a program which will show a graphical user interface,
+<br><B>non-GUI-program</b> for a console program, 
+<br>and <B>library</b>, for a framework to be
+used by other programs (a loadable shared binary class library).'
         ) decodeAsLiteralArray.
 
     specs add:
@@ -3183,11 +3187,13 @@
             windowSpecSelector: page2_projectSelectionSpec
             enterCallbackSelector: updateListOfMatchingProjectsAndProjectIDs
             leaveCallbackSelector: fetchAttributesFromProjectDefinition
-            infoText: 'Choose an existing project definition or create a new one. 
-These are subclasses of <I>ProjectDefinition</I> and define the type and contents of a project. 
+            infoText: 'Choose either an existing project definition or create a new one. 
+These are subclasses of <I>ProjectDefinition</I> and define the type, name and contents of a project. 
 <p>
-Notice that the ID directly reflects the project''s location within the source code repository (module:directory/subdirectory...). 
-If in doubt, use "&lt;yourname&gt;:demos/xxx_n".'
+Please enter a project-identifier which must have a well defined format in Smalltalk/X.
+Notice that the ID directly reflects the project''s location within the source code repository 
+(module:directoryPath). 
+<br>If in doubt, use "<b>&lt;yourname&gt;:demos/xxx_n</b>".'
         ) decodeAsLiteralArray.
 
     specs add:
@@ -3210,8 +3216,13 @@
             canEnterQuerySelector: #canEnterStartupClassSelection
             enterCallbackSelector: updateListOfStartupClassesInProject
             infoText: 'Choose an existing startup-class or create a new one. 
-These are subclasses of <I>StandaloneStartup</I> and start the application. 
-Command line arguments can be interpreted there.'
+<p>These are subclasses of <I>StandaloneStartup</I> and contain the main function,
+which either starts the application (in case of a GUI application)
+or directly performs the program''s task (in case of a non-GUI console program).<br> 
+Command line arguments are usually interpreted there.
+<p>Do not use one of the "StandAloneStartup"-classes, which you may find in the system: 
+these are abstract, and to be used as superclass of your concrete startup.
+<p>For a quick demo, enter a reasonable name, and press the "Create" button.'
         ) decodeAsLiteralArray.
 
     specs add:
@@ -3220,12 +3231,14 @@
             windowSpecSelector: page5_specifyIncludedClasses
             enterCallbackSelector: enterContentsSpecification
             canEnterQuerySelector: #canEnterContentsSelection
-            infoText: 'Define which (other) classes are to be included. 
-Do not include classes from other packages here. 
+            infoText: 'Check the list of other classes which are to be included. 
+These are the classes which comprise your application 
+(excluding any libraries, which are specified in the next step).
 <p>
-Press "<I>Scan</I>" to include all classes of the package; 
-<br>
-"<I>Browse</I>" to edit the contents manually.'
+Press "<I>Update List</I>" to search for and include all classes of the package. 
+<p>
+Press "<I>Browse</I>" to edit the contents manually (this opens an editor on the defining method
+in your project definition class).'
         ) decodeAsLiteralArray.
 
     specs add:
@@ -3234,11 +3247,19 @@
             windowSpecSelector: page5b_specifyPrerequisitePackages
             enterCallbackSelector: enterPrerequisitesSpecification
             canEnterQuerySelector: #canEnterPrerequisitesSelection
-            infoText: 'Define which packages are needed as prerequisites. 
-These are required class libraries which should be packaged together with the application. 
+            infoText: 'Check the list of packages/libraries which are needed as prerequisites. 
+These are required class libraries which should be packaged together with the application,
+and will be present in the deployed binary.
+<p>
+Non-GUI programs will typically only require the basic class library 
+and libcomp (the parser and bytecode compiler) to be read startup scripts and patches.
 <p>
-Press "<I>Scan</I>" to search for prerequisites; 
-<br>"<I>Browse</I>" to edit the list manually.'
+GUI programs will require a number of view- and widget support classes, which contain the
+graphical user interface support classes.
+<p>
+Press "<I>Update</I>" to search for and include prerequisites.
+<p>
+"<I>Browse</I>" to edit the list manually.'
         ) decodeAsLiteralArray.
 
     specs add:
@@ -3255,7 +3276,11 @@
         #(AssistantPageSpec
             pageTitle: 'Specify Build Directory'
             windowSpecSelector: page6b_specifyBuildDirectorySpec
-            infoText: 'Define where the build-process is to be performed and which compiler to use. All generated files are created below that directory. After deployment, the build directory is no longer needed (but you can keep it for a faster compile the next time).'
+            infoText: 'Define where the build-process is to be performed and which compiler to use. 
+<P>All generated files are created below that directory. 
+<P>After deployment, the build directory is no longer needed 
+(but you can keep it for a faster compile the next time).
+<P>Normally, the default values are ok, and there is no need to change anything here.'
             enterCallbackSelector: #checkCompilerAvailability
             leaveCallbackSelector: #rememberUsedCompiler
         ) decodeAsLiteralArray.
@@ -3265,7 +3290,10 @@
             pageTitle: 'Check Into Source Repository'
             windowSpecSelector: page7a_checkinSpec
             enterCallbackSelector: #checkSourceCodeManagerType
-            infoText: 'Check the package''s source and build-support files into the source code repository.'
+            infoText: 'Optionally check the package''s source and build-support files into the 
+source code repository.
+<p>You can skip this for a quick test (a local build), 
+or if you do not have/want a central repository.'
         ) decodeAsLiteralArray.
 
     specs add:
@@ -3276,11 +3304,12 @@
             enterCallbackSelector: #restoreMakeOutputsContents
             leaveCallbackSelector: #rememberMakeOutputsContents
             infoText: 'Start the build-process. This will create an isolated build directory,
-and run "make" there to compile all required classes.
+and run "<i>make</i>" there to compile all required classes.
 <P>            
-On Windows, it will use "nsis" to generate a self-installable executable, 
+On Windows, it will use "<i>nsis</i>" to generate a self-installable executable, 
 and you must have the compiler (borland-bcc, visual-c or mingw) and NullSoft NSIS packages installed for this to work.
-Without NSIS, zip the folder where the exe is generated and unzip on a target machine.
+Without NSIS, you can "zip" the folder where the "exe" is generated 
+and unzip on a target machine.
 <P>
 On OS X, it will generate a "dmg" for deployment. You should have XCode or the "gcc" tool chain installed.
 <P>