application/jv_vdb_application.st
changeset 18 0f44fe9848a0
child 19 b28377075a9c
equal deleted inserted replaced
17:c5ee4ea44165 18:0f44fe9848a0
       
     1 "{ Package: 'jv:vdb/application' }"
       
     2 
       
     3 ApplicationDefinition subclass:#jv_vdb_application
       
     4 	instanceVariableNames:''
       
     5 	classVariableNames:''
       
     6 	poolDictionaries:''
       
     7 	category:'* Projects & Packages *'
       
     8 !
       
     9 
       
    10 
       
    11 !jv_vdb_application class methodsFor:'description'!
       
    12 
       
    13 applicationIconFileName
       
    14     "answer the base-name of the application icon (i.e. 'app' in <app>.ico).
       
    15 
       
    16      Subclasses MUST redefine this to either return the name of the icon file or
       
    17      nil, if they dont have one.
       
    18      We NO LONGER SUPPORT THE PREVIOUS APPNAME-DEFAULT,
       
    19      because users tend to forget to add the icon file and then get a failing build. "
       
    20 
       
    21     ^ 'vdb'.
       
    22 
       
    23     "Modified: / 21-09-2014 / 01:35:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
       
    24 !
       
    25 
       
    26 applicationName
       
    27     "answer the name of the application.
       
    28      This is also the name of the generated .exe file.
       
    29 
       
    30      Subclasses may redefine this"
       
    31 
       
    32     ^ 'vdb'
       
    33 
       
    34     "
       
    35      bosch_dapasx_application applicationName     
       
    36      stx_projects_smalltalk applicationName     
       
    37     "
       
    38 
       
    39     "Created: / 21-09-2014 / 01:35:09 / Jan Vrany <jan.vrany@fit.cvut.cz>"
       
    40 !
       
    41 
       
    42 excludedFromPreRequisites
       
    43     "list packages which are to be explicitely excluded from the automatic constructed
       
    44      prerequisites list. If empty, everything that is found along the inheritance of any of
       
    45      my classes is considered to be a prerequisite package."
       
    46 
       
    47     ^ #(
       
    48     )
       
    49 !
       
    50 
       
    51 isGUIApplication
       
    52     "return true, if this is a GUI application.
       
    53      (these need more libraries and use a different startup procedure)"
       
    54 
       
    55     ^ true
       
    56 !
       
    57 
       
    58 mandatoryPreRequisites
       
    59     "list packages which are mandatory as a prerequisite.
       
    60      This are packages containing superclasses of my classes and classes which
       
    61      are extended by myself.
       
    62      They are mandatory, because we need these packages as a prerequisite for loading and compiling.
       
    63      This method is generated automatically,
       
    64      by searching along the inheritance chain of all of my classes."
       
    65 
       
    66     ^ #(
       
    67         #'stx:libbasic'    "ApplicationDefinition - superclass of jv_vdb_application"
       
    68     )
       
    69 !
       
    70 
       
    71 referencedPreRequisites
       
    72     "list packages which are a prerequisite, because they contain
       
    73      classes which are referenced by my classes.
       
    74      We do not need these packages as a prerequisite for loading or compiling.
       
    75      This method is generated automatically,
       
    76      by searching all classes (and their packages) which are referenced by my classes."
       
    77 
       
    78     ^ #(
       
    79         #'jv:libgdbs'    "GDBDebugger - referenced by VDBStartup class>>main:"
       
    80         #'jv:vdb'    "VDBDebuggerApplication - referenced by VDBStartup class>>main:"
       
    81         #'stx:libbasic2'    "UUID - referenced by VDBStartup class>>applicationUUID"
       
    82     )
       
    83 !
       
    84 
       
    85 subProjects
       
    86     "list packages which are known as subprojects.
       
    87      This method is generated automatically; however, when generating automatically,
       
    88      packages are only added - never removed, unless listed in #excludedFromSubProjects."
       
    89 
       
    90     ^ #(
       
    91 )
       
    92 ! !
       
    93 
       
    94 !jv_vdb_application class methodsFor:'description - contents'!
       
    95 
       
    96 classNamesAndAttributes
       
    97     "lists the classes which are to be included in the project.
       
    98      Each entry in the list may be: a single class-name (symbol),
       
    99      or an array-literal consisting of class name and attributes.
       
   100      Attributes are: #autoload or #<os> where os is one of win32, unix,..."
       
   101 
       
   102     ^ #(
       
   103         "<className> or (<className> attributes...) in load order"
       
   104         VDBStartup
       
   105         #'jv_vdb_application'
       
   106     )
       
   107 !
       
   108 
       
   109 extensionMethodNames
       
   110     "list class/selector pairs of extensions.
       
   111      A correponding method with real names must be present in my concrete subclasses"
       
   112 
       
   113     ^ #(
       
   114     )
       
   115 ! !
       
   116 
       
   117 !jv_vdb_application class methodsFor:'description - project information'!
       
   118 
       
   119 companyName
       
   120     "Returns a company string which will appear in <lib>.rc.
       
   121      Under win32, this is placed into the dlls file-info"
       
   122 
       
   123     ^ 'Jan Vrany'
       
   124 
       
   125     "Modified: / 21-09-2014 / 01:34:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"
       
   126 !
       
   127 
       
   128 description
       
   129     "Returns a description string which will appear in nt.def / bc.def"
       
   130 
       
   131     ^ 'Visual Debugger'
       
   132 
       
   133     "Modified: / 21-09-2014 / 01:34:30 / Jan Vrany <jan.vrany@fit.cvut.cz>"
       
   134 !
       
   135 
       
   136 legalCopyright
       
   137     "Returns a copyright string which will appear in <lib>.rc.
       
   138      Under win32, this is placed into the dlls file-info"
       
   139 
       
   140     ^ 'Copyring (C) 2014 Jan Vrany'
       
   141 
       
   142     "Modified: / 21-09-2014 / 01:34:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
       
   143 !
       
   144 
       
   145 productInstallDirBaseName
       
   146     "Returns a default installDir which will appear in <app>.nsi.
       
   147      This is usually not the one you want to keep"
       
   148 
       
   149     ^ 'vdb'
       
   150 
       
   151     "Modified: / 21-09-2014 / 01:34:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
       
   152 !
       
   153 
       
   154 productName
       
   155     "Returns a product name which will appear in <lib>.rc.
       
   156      Under win32, this is placed into the dlls file-info.
       
   157      This method is usually redefined in a concrete application definition"
       
   158 
       
   159     ^ 'Visual Debugger'
       
   160 
       
   161     "Modified: / 21-09-2014 / 01:33:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
       
   162 ! !
       
   163 
       
   164 !jv_vdb_application class methodsFor:'description - startup'!
       
   165 
       
   166 startupClassName
       
   167     "the name of the class which starts the show in its <startupSelector> method.
       
   168      Usually, the name of a subclass of StandAloneStartup."
       
   169 
       
   170     #VDBStartup
       
   171 
       
   172     "Modified: / 21-09-2014 / 01:33:13 / Jan Vrany <jan.vrany@fit.cvut.cz>"
       
   173 !
       
   174 
       
   175 startupSelector
       
   176     "the message that is sent to the startupClass to start the show"
       
   177 
       
   178     ^ #'start'        
       
   179 ! !
       
   180 
       
   181 !jv_vdb_application class methodsFor:'documentation'!
       
   182 
       
   183 version_HG
       
   184     ^ '$Changeset: <not expanded> $'
       
   185 ! !
       
   186