stx_goodies_cypress.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Fri, 07 Sep 2012 19:25:37 +0000
changeset 10 8750ae5ef93f
parent 8 5d48f4894483
child 11 333528cd629a
permissions -rw-r--r--
- some fixes
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1
8a5b7afa28ff - First shot
jv
parents:
diff changeset
     1
"{ Package: 'stx:goodies/cypress' }"
8a5b7afa28ff - First shot
jv
parents:
diff changeset
     2
8a5b7afa28ff - First shot
jv
parents:
diff changeset
     3
LibraryDefinition subclass:#stx_goodies_cypress
8a5b7afa28ff - First shot
jv
parents:
diff changeset
     4
	instanceVariableNames:''
8a5b7afa28ff - First shot
jv
parents:
diff changeset
     5
	classVariableNames:''
8a5b7afa28ff - First shot
jv
parents:
diff changeset
     6
	poolDictionaries:''
8a5b7afa28ff - First shot
jv
parents:
diff changeset
     7
	category:'* Projects & Packages *'
8a5b7afa28ff - First shot
jv
parents:
diff changeset
     8
!
8a5b7afa28ff - First shot
jv
parents:
diff changeset
     9
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    10
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    11
!stx_goodies_cypress class methodsFor:'description'!
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    12
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    13
excludedFromPreRequisites
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    14
    "list all packages which should be ignored in the automatic
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    15
     preRequisites scan. See #preRequisites for more."
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    16
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    17
    ^ #(
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    18
    )
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    19
!
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    20
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    21
preRequisites
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    22
    "list all required packages.
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    23
     This list can be maintained manually or (better) generated and
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    24
     updated by scanning the superclass hierarchies and looking for
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    25
     global variable accesses. (the browser has a menu function for that)
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    26
     Howevery, often too much is found, and you may want to explicitely
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    27
     exclude individual packages in the #excludedFromPrerequisites method."
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    28
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    29
    ^ #(
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    30
        #'stx:goodies/monticello'
8
5d48f4894483 - CypressPackageReader
jv
parents: 5
diff changeset
    31
        #'stx:goodies/sunit'
5d48f4894483 - CypressPackageReader
jv
parents: 5
diff changeset
    32
        #'stx:libbasic'    "Autoload - superclass of CypressAbstractTest "
1
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    33
        #'stx:libbasic2'
8
5d48f4894483 - CypressPackageReader
jv
parents: 5
diff changeset
    34
        #'stx:libbasic3'    "ClassDefinitionChange - referenced by CypressClassStructure>>changesOn: "
1
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    35
        #'stx:libcomp'    "Parser - referenced by CypressPackageReader>>readMethodStructureFor:in:methodProperties: "
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    36
        #'stx:libcompat'
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    37
        #'stx:libhtml'
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    38
    )
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    39
! !
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    40
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    41
!stx_goodies_cypress class methodsFor:'description - contents'!
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    42
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    43
classNamesAndAttributes
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    44
    "lists the classes which are to be included in the project.
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    45
     Each entry in the list may be: a single class-name (symbol),
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    46
     or an array-literal consisting of class name and attributes.
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    47
     Attributes are: #autoload or #<os> where os is one of win32, unix,..."
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    48
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    49
    ^ #(
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    50
        "<className> or (<className> attributes...) in load order"
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    51
        (CypressAbstractTest autoload)
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    52
        CypressDefinition
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    53
        CypressDefinitionIndex
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    54
        CypressDependencySorter
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    55
        CypressJsonParser
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    56
        CypressLoader
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    57
        CypressMockBasic
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    58
        CypressPackageDefinition
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    59
        CypressPackageReader
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    60
        CypressPackageWriter
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    61
        CypressPatch
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    62
        CypressPatchOperation
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    63
        CypressSnapshot
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    64
        CypressStructure
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    65
        #'stx_goodies_cypress'
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    66
        CypressAddition
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    67
        CypressClassDefinition
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    68
        CypressClassStructure
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    69
        (CypressDefinitionTest autoload)
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    70
        (CypressLoaderTest autoload)
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    71
        CypressMethodDefinition
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    72
        CypressMethodStructure
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    73
        CypressModification
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    74
        CypressPackageStructure
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    75
        (CypressPatchTest autoload)
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    76
        CypressRemoval
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    77
        (CypressSnapshotTest autoload)
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    78
        (CypressStructureTest autoload)
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    79
    )
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    80
!
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    81
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    82
extensionMethodNames
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    83
    "lists the extension methods which are to be included in the project.
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    84
     Entries are 2-element array literals, consisting of class-name and selector."
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    85
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    86
    ^ #(
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    87
        CharacterArray withLineEndings:
8a5b7afa28ff - First shot
jv
parents:
diff changeset
    88
        'CharacterArray class' lfString
2
a26b35650f67 - CypressMethodStructure
jv
parents: 1
diff changeset
    89
        Array asCypressPropertyObject
a26b35650f67 - CypressMethodStructure
jv
parents: 1
diff changeset
    90
        Array writeCypressJsonOn:forHtml:indent:
a26b35650f67 - CypressMethodStructure
jv
parents: 1
diff changeset
    91
        Boolean writeCypressJsonOn:forHtml:indent:
a26b35650f67 - CypressMethodStructure
jv
parents: 1
diff changeset
    92
        Character isSafeForHTTP
a26b35650f67 - CypressMethodStructure
jv
parents: 1
diff changeset
    93
        Class asCypressClassDefinition
a26b35650f67 - CypressMethodStructure
jv
parents: 1
diff changeset
    94
        Dictionary asCypressPropertyObject
a26b35650f67 - CypressMethodStructure
jv
parents: 1
diff changeset
    95
        Dictionary writeCypressJsonOn:forHtml:indent:
a26b35650f67 - CypressMethodStructure
jv
parents: 1
diff changeset
    96
        Number writeCypressJsonOn:forHtml:indent:
a26b35650f67 - CypressMethodStructure
jv
parents: 1
diff changeset
    97
        Object asCypressPropertyObject
a26b35650f67 - CypressMethodStructure
jv
parents: 1
diff changeset
    98
        String asCypressPropertyObject
a26b35650f67 - CypressMethodStructure
jv
parents: 1
diff changeset
    99
        String encodeForHTTP
a26b35650f67 - CypressMethodStructure
jv
parents: 1
diff changeset
   100
        String writeCypressJsonOn:forHtml:indent:
3
9a409f9edb67 - CypressSnapshotTest
jv
parents: 2
diff changeset
   101
        Method asCypressMethodDefinition
10
8750ae5ef93f - some fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 8
diff changeset
   102
        'ConfigurableFeatures class' hasCypress
1
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   103
    )
10
8750ae5ef93f - some fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 8
diff changeset
   104
8750ae5ef93f - some fixes
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 8
diff changeset
   105
    "Modified: / 07-09-2012 / 20:03:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   106
! !
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   107
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   108
!stx_goodies_cypress class methodsFor:'description - project information'!
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   109
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   110
applicationIconFileName
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   111
    "Return the name (without suffix) of an icon-file (the app's icon); will be included in the rc-resource file"
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   112
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   113
    ^ nil
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   114
    "/ ^ self applicationName
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   115
!
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   116
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   117
companyName
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   118
    "Return a companyname which will appear in <lib>.rc"
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   119
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   120
    ^ 'eXept Software AG'
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   121
!
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   122
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   123
description
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   124
    "Return a description string which will appear in vc.def / bc.def"
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   125
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   126
    ^ 'Smalltalk/X Class library'
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   127
!
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   128
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   129
legalCopyright
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   130
    "Return a copyright string which will appear in <lib>.rc"
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   131
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   132
    ^ 'Copyright Claus Gittinger 1988-2012\nCopyright eXept Software AG 1998-2012'
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   133
!
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   134
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   135
productInstallDirBaseName
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   136
    "Returns a default installDir which will appear in <app>.nsi.
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   137
     This is usually not the one you want to keep"
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   138
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   139
    ^ (self package asCollectionOfSubstringsSeparatedByAny:':/') last
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   140
!
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   141
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   142
productName
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   143
    "Return a product name which will appear in <lib>.rc"
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   144
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   145
    ^ 'Smalltalk/X'
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   146
! !
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   147
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   148
!stx_goodies_cypress class methodsFor:'description - svn'!
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   149
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   150
svnRepositoryUrlString
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   151
    "Return a SVN repository URL of myself.
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   152
     (Generated since 2011-04-08)
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   153
     Do not make the string shorter!!!!!! We have to use fixed-length keyword!!!!!!
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   154
    "        
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   155
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   156
    ^ '$URL::                                                                                                                        $'
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   157
!
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   158
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   159
svnRevisionNr
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   160
    "Return a SVN revision number of myself.
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   161
     This number is updated after a commit"
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   162
8
5d48f4894483 - CypressPackageReader
jv
parents: 5
diff changeset
   163
    ^ "$SVN-Revision:"'8               '"$"
1
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   164
! !
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   165
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   166
!stx_goodies_cypress class methodsFor:'documentation'!
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   167
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   168
version_SVN
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   169
    ^ '$Id::                                                                                                                        $'
8a5b7afa28ff - First shot
jv
parents:
diff changeset
   170
! !