tools/stx_libjava_tools.st
author Stefan Vogel <sv@exept.de>
Thu, 25 Apr 2013 15:09:57 +0200
changeset 2552 f4c15588965e
parent 2447 055223e5351e
child 2566 f1cea8b752ba
child 2678 c865275e48a7
permissions -rw-r--r--
Changed usage of deprecated #copyWithoutLast: to #copyButLast:

"{ Package: 'stx:libjava/tools' }"

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

!stx_libjava_tools class methodsFor:'documentation'!

extensionsVersion_SVN
    ^ '$Id: stx_libjava_tools.st,v 1.3 2013-03-08 23:47:20 stefan Exp $'
! !

!stx_libjava_tools class methodsFor:'description'!

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

    ^ #(
    )
!

mandatoryPreRequisites
    "list all required mandatory packages.
     Packages are mandatory, if they contain superclasses of the package's classes
     or classes which are extended by this package.
     This list can be maintained manually or (better) generated and
     updated by scanning the superclass hierarchies
     (the browser has a menu function for that)
     However, often too much is found, and you may want to explicitely
     exclude individual packages in the #excludedFromPreRequisites method."

    ^ #(
        #'stx:libbasic'    "LibraryDefinition - superclass of stx_libjava_tools "
        #'stx:libjava'    "JavaBehavior - extended "
        #'stx:libtool'    "Tools::NewSystemBrowser - extended "
        #'stx:libview2'    "ApplicationModel - superclass of extended Tools::NewSystemBrowser "
        #'stx:libwidg'    "GenericToolbarIconLibrary - extended "
    )
!

referencedPreRequisites
    "list all packages containing classes referenced by the packages's members.
     This list can be maintained manually or (better) generated and
     updated by looking for global variable accesses
     (the browser has a menu function for that)
     However, often too much is found, and you may want to explicitely
     exclude individual packages in the #excludedFromPreRequisites method."

    ^ #(
    )
! !

!stx_libjava_tools 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"
        JavaListInspectorView
        JavaMapInspectorView
        JavaParseNode
        JavaParseNodeBuilder
        (JavaParserIITests autoload)
        (JavaParserITests autoload)
        #'JavaParser_Eclipse'
        JavaSetInspectorView
        (#'JavaSyntaxHighlighter_Eclipse' autoload)
        #'stx_libjava_tools'
        JavaCommentNode
        JavaFormalParameterNode
        JavaMethodDeclaratorNode
        JavaMethodNode
        JavaParserI
        (#'JavaSyntaxHighlighter_Old' autoload)
        JavaTypeNode
        JavaArrayTypeNode
        JavaBooleanTypeNode
        JavaCharTypeNode
        JavaClassOrInterfaceTypeNode
        JavaDocNode
        JavaDoubleTypeNode
        JavaFloatTypeNode
        JavaIntTypeNode
        JavaLongTypeNode
        JavaParserII
        JavaVoidTypeNode
        JavaParser
        JavaScannerBase
        JavaScanner
        JavaSyntaxHighlighter
        (JavaSourcePartitioner autoload)
        JavaSettingsApplication
        JavaSourceReference
        (JavaSourcePartitionerTests autoload)
        JavaCodeBundleEditor
        JavaCodeLibraryEditor
    )
!

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."

    ^ #(
        JavaClass iconInBrowserSymbol
        JavaObject inspectorClass
        #'Tools::NewSystemBrowser' classMenuNewGroovyClass
        'ConfigurableFeatures class' hasGroovySupport
        'ConfigurableFeatures class' hasJavaToolingSupport
        'GenericToolbarIconLibrary class' javaClassBrowserIcon
        'GenericToolbarIconLibrary class' javaExceptionBrowserIcon
        'GenericToolbarIconLibrary class' javaPrivateClassBrowserIcon
        'GenericToolbarIconLibrary class' javaPrivateEnumBrowserIcon
        'GenericToolbarIconLibrary class' javaPrivateInterfaceBrowserIcon
        'GenericToolbarIconLibrary class' javaProtectedClassBrowserIcon
        'GenericToolbarIconLibrary class' javaProtectedEnumBrowserIcon
        'GenericToolbarIconLibrary class' javaProtectedInterfaceBrowserIcon
        'GenericToolbarIconLibrary class' javaPublicClassBrowserIcon
        'GenericToolbarIconLibrary class' javaPublicEnumBrowserIcon
        'GenericToolbarIconLibrary class' javaPublicInterfaceBrowserIcon
        'GenericToolbarIconLibrary class' javaRuntimeExceptionBrowserIcon
    )
! !

!stx_libjava_tools class methodsFor:'description - java'!

javaBundle

    ^JavaCodeBundle standardPackageBundleFor: self package

    "Created: / 15-01-2013 / 17:35:46 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!stx_libjava_tools 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"

    ^ 'eXept Software AG'
!

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

    ^ 'Smalltalk/X Class library'
!

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

    ^ 'Copyright Claus Gittinger 1988-2011\nCopyright eXept Software AG 1998-2011'
!

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"

    ^ 'Smalltalk/X'
!

stcOptimizationOptions
    "do not inline the not operation here - it is overwritten"

    ^ '+optspace3 -inlinenot'

    "Created: / 23-08-2006 / 01:27:22 / cg"
! !

!stx_libjava_tools 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:"'1941            '"$"
! !

!stx_libjava_tools class methodsFor:'documentation'!

version_CVS
    ^ '$Header: /cvs/stx/stx/libjava/tools/stx_libjava_tools.st,v 1.3 2013-03-08 23:47:20 stefan Exp $'
!

version_HG

    ^ '§Changeset: <not expanded> §'
!

version_SVN
    ^ '§Id§'
! !