startup/stx_libjava_startup.st
author hlopkmar
Wed, 12 Dec 2012 23:26:59 +0000
branchdevelopment
changeset 1869 0ae14ac1c9af
parent 1818 2e5ed72e7dfd
child 2069 75d40b7b986f
permissions -rw-r--r--
java compiler (javac wrapper) and basic class reloading tests
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
752
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
     1
"{ Package: 'stx:libjava/startup' }"
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
     2
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
     3
ApplicationDefinition subclass:#stx_libjava_startup
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
     4
	instanceVariableNames:''
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
     5
	classVariableNames:''
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
     6
	poolDictionaries:''
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
     7
	category:'* Projects & Packages *'
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
     8
!
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
     9
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    10
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    11
!stx_libjava_startup class methodsFor:'description'!
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    12
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    13
excludedFromPreRequisites
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    14
    "list all packages which should be ignored in the automatic
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    15
     preRequisites scan. See #preRequisites for more."
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    16
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    17
    ^ #(
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    18
    )
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    19
!
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    20
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    21
isGUIApplication
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    22
    "return true, if this is a GUI application.
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    23
     (these need more libraries and use a different startup procedure)"
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    24
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    25
    ^ false
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    26
!
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    27
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    28
preRequisites
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    29
    "list all required packages.
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    30
     This list can be maintained manually or (better) generated and
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    31
     updated by scanning the superclass hierarchies and looking for
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    32
     global variable accesses. (the browser has a menu function for that)
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    33
     Howevery, often too much is found, and you may want to explicitely
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    34
     exclude individual packages in the #excludedFromPrerequisites method."
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    35
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    36
    ^ #(
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    37
        #'stx:libbasic'    "ApplicationDefinition - superclass of stx_libjava_startup "
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    38
        #'stx:libcomp'
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    39
        #'stx:libjava'    "Java - referenced by JavaStartup class>>main: "
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    40
    )
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    41
!
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    42
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    43
subProjects
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    44
    "list packages which are known as subprojects.
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    45
     This method is generated automatically; however, when generating automatically,
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    46
     packages are only added - never removed, unless listed in #excludedFromSubProjects."
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    47
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    48
    ^ #(
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    49
)
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    50
! !
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    51
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    52
!stx_libjava_startup class methodsFor:'description - contents'!
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    53
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    54
classNamesAndAttributes
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    55
    "lists the classes which are to be included in the project.
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    56
     Each entry in the list may be: a single class-name (symbol),
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    57
     or an array-literal consisting of class name and attributes.
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    58
     Attributes are: #autoload or #<os> where os is one of win32, unix,..."
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    59
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    60
    ^ #(
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    61
        "<className> or (<className> attributes...) in load order"
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    62
        JavaStartup
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    63
        #'stx_libjava_startup'
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    64
    )
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    65
!
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    66
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    67
extensionMethodNames
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    68
    "lists the extension methods which are to be included in the project.
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    69
     Entries are 2-element array literals, consisting of class-name and selector."
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    70
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    71
    ^ #(
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    72
    )
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    73
! !
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    74
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    75
!stx_libjava_startup class methodsFor:'description - project information'!
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    76
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    77
applicationIconFileName
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    78
    "Return the name (without suffix) of an icon-file (the app's icon); will be included in the rc-resource file"
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    79
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    80
    ^ nil
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    81
    "/ ^ self applicationName
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    82
!
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    83
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    84
companyName
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    85
    "Return a companyname which will appear in <lib>.rc"
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    86
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    87
    ^ 'SWING Research Group & eXept Software AG'
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    88
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    89
    "Modified: / 07-04-2011 / 20:22:53 / Jan Vrany <jan.vrany@fit.cvut.cz>"
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    90
!
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    91
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    92
description
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    93
    "Return a description string which will appear in vc.def / bc.def"
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    94
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    95
    ^ 'Smalltalk/X Java Launcher'
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    96
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    97
    "Modified: / 07-04-2011 / 20:23:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    98
!
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
    99
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   100
legalCopyright
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   101
    "Return a copyright string which will appear in <lib>.rc"
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   102
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   103
    ^ 'Copyright 2010-2011 Jan Vrany, Jan Kurs, Marcel Hlopko\nCopyright 1988-2011Claus Gittinger \nCopyright 1998-2011 eXept Software AG'
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   104
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   105
    "Modified: / 07-04-2011 / 20:24:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   106
!
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   107
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   108
productName
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   109
    "Return a product name which will appear in <lib>.rc"
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   110
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   111
    ^ 'Smalltalk/X JVM'
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   112
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   113
    "Modified: / 07-04-2011 / 20:24:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   114
! !
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   115
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   116
!stx_libjava_startup class methodsFor:'description - startup'!
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   117
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   118
startupClassName
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   119
    "the name of the class which starts the show in its <startupSelector> method.
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   120
     Usually, the name of a subclass of StandAloneStartup."
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   121
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   122
    ^ 'JavaStartup'
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   123
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   124
    "Modified: / 07-04-2011 / 20:24:57 / Jan Vrany <jan.vrany@fit.cvut.cz>"
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   125
!
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   126
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   127
startupSelector
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   128
    "the message that is sent to the startupClass to start the show"
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   129
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   130
    ^ #'start'        
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   131
! !
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   132
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   133
!stx_libjava_startup class methodsFor:'description - svn'!
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   134
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   135
svnRevisionNr
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   136
    "Return a SVN revision number of myself.
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   137
     This number is updated after a commit"
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   138
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   139
    ^ "$SVN-Revision:"'nil'"$"
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   140
! !
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   141
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   142
!stx_libjava_startup class methodsFor:'documentation'!
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   143
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   144
version_SVN
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   145
    ^ '$Id$'
ff7bc6428c9c branch jk_new_structure resurrected
vranyj1
parents:
diff changeset
   146
! !