stx_goodies_cypress.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Tue, 18 Sep 2012 13:49:14 +0000
changeset 20 cdf3ee8ceeaa
parent 15 31a33727c629
child 22 9086d6f7096a
permissions -rw-r--r--
- fixes

"{ Package: 'stx:goodies/cypress' }"

LibraryDefinition subclass:#stx_goodies_cypress
	instanceVariableNames:''
	classVariableNames:''
	poolDictionaries:''
	category:'* Projects & Packages *'
!


!stx_goodies_cypress class methodsFor:'description'!

excludedFromPreRequisites
    "list all packages which should be ignored in the automatic
     preRequisites scan. See #preRequisites for more."

    ^ #(
    )
!

preRequisites
    "list all required packages.
     This list can be maintained manually or (better) generated and
     updated by scanning the superclass hierarchies and looking for
     global variable accesses. (the browser has a menu function for that)
     Howevery, often too much is found, and you may want to explicitely
     exclude individual packages in the #excludedFromPrerequisites method."

    ^ #(
        #'exept:expecco'
        #'exept:expecco/manifestApi'
        #'exept:expecco/reportGenerator'
        #'exept:httpPortal/widgets'
        #'exept:libcrypt'
        #'exept:osi/asn1'
        #'exept:workflow'
        #'stx:goodies/monticello'
        #'stx:goodies/simpleServices'
        #'stx:goodies/sunit'
        #'stx:goodies/webServer'
        #'stx:libbasic'    "Object - superclass of CypressJSONReader "
        #'stx:libbasic2'
        #'stx:libbasic3'
        #'stx:libcomp'
        #'stx:libcompat'
        #'stx:libdb/libodbc'
        #'stx:libdb/libsqlite'
        #'stx:libhtml'
        #'stx:libtool'
        #'stx:libtool2'
        #'stx:libview'
        #'stx:libview2'
        #'stx:libwidg'
        #'stx:libwidg2'
    )
! !

!stx_goodies_cypress class methodsFor:'description - contents'!

classNamesAndAttributes
    "lists the classes which are to be included in the project.
     Each entry in the list may be: a single class-name (symbol),
     or an array-literal consisting of class name and attributes.
     Attributes are: #autoload or #<os> where os is one of win32, unix,..."

    ^ #(
        "<className> or (<className> attributes...) in load order"
        #'stx_goodies_cypress'
        CypressAbstractReaderWriter
        CypressModel
        CypressClass
        CypressMethod
        CypressPackage
        CypressRepository
        CypressAbstractWriter
        CypressWriter
        CypressJSONReader
        CypressAbstractReader
        CypressFileTreeReader
        CypressReader
    )
!

extensionMethodNames
    "lists the extension methods which are to be included in the project.
     Entries are 2-element array literals, consisting of class-name and selector."

    ^ #(
        CharacterArray withLineEndings:
        'CharacterArray class' lfString
        Array asCypressPropertyObject
        Array writeCypressJsonOn:forHtml:indent:
        Boolean writeCypressJsonOn:forHtml:indent:
        Character isSafeForHTTP
        Class asCypressClassDefinition
        Dictionary asCypressPropertyObject
        Dictionary writeCypressJsonOn:forHtml:indent:
        Number writeCypressJsonOn:forHtml:indent:
        Object asCypressPropertyObject
        String asCypressPropertyObject
        String encodeForHTTP
        String writeCypressJsonOn:forHtml:indent:
        Method asCypressMethodDefinition
        'ConfigurableFeatures class' hasCypress
        PackageId asCypressPackage
        Symbol asCypressPackage
        'ProjectDefinition class' asCypressPackage
    )
! !

!stx_goodies_cypress class methodsFor:'description - project information'!

applicationIconFileName
    "Return the name (without suffix) of an icon-file (the app's icon); will be included in the rc-resource file"

    ^ nil
    "/ ^ self applicationName
!

companyName
    "Return a companyname which will appear in <lib>.rc"

    ^ 'Jan Vrany'

    "Modified: / 11-09-2012 / 11:54:15 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!

description
    "Return a description string which will appear in vc.def / bc.def"

    ^ 'Cypress Package Format Reader/Writer'

    "Modified: / 11-09-2012 / 11:54:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!

legalCopyright
    "Return a copyright string which will appear in <lib>.rc"

    ^ 'Copyright Jan Vrany & Dale Henrichs 2012'

    "Modified: / 11-09-2012 / 11:54:57 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!

productInstallDirBaseName
    "Returns a default installDir which will appear in <app>.nsi.
     This is usually not the one you want to keep"

    ^ (self package asCollectionOfSubstringsSeparatedByAny:':/') last
!

productName
    "Return a product name which will appear in <lib>.rc"

    ^ 'Cypress'

    "Modified: / 11-09-2012 / 11:55:04 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!stx_goodies_cypress class methodsFor:'description - svn'!

svnRepositoryUrlString
    "Return a SVN repository URL of myself.
     (Generated since 2011-04-08)
     Do not make the string shorter!!!!!! We have to use fixed-length keyword!!!!!!
    "        

    ^ '$URL::                                                                                                                        $'
!

svnRevisionNr
    "Return a SVN revision number of myself.
     This number is updated after a commit"

    ^ "$SVN-Revision:"'18              '"$"
! !

!stx_goodies_cypress class methodsFor:'documentation'!

version_SVN
    ^ '$Id::                                                                                                                        $'
! !