initial checkin
class: MCFileTreeFileSystemUtils
class: MCFileTreeFileSystemUtils class
added:17 methods
"{ Package: 'stx:goodies/monticello' }"
"{ NameSpace: Smalltalk }"
LibraryDefinition subclass:#stx_goodies_monticello
instanceVariableNames:''
classVariableNames:''
poolDictionaries:''
category:'* Projects & Packages *'
!
!stx_goodies_monticello class methodsFor:'documentation'!
documentation
"
Package documentation:
This library provides support classes to read and write monticello packages
(as used in Squeak and Pharo) and a GUI to browse and load such packages.
Notice that Squeak packages usually do not work out-of-the-box in ST/X.
"
! !
!stx_goodies_monticello class methodsFor:'description'!
excludedFromPreRequisites
"list all packages which should be ignored in the automatic
preRequisites scan. See #preRequisites for more."
^ #(
)
!
mandatoryPreRequisites
"list packages which are mandatory as a prerequisite.
This are packages containing superclasses of my classes and classes which
are extended by myself.
They are mandatory, because we need these packages as a prerequisite for loading and compiling.
This method is generated automatically,
by searching along the inheritance chain of all of my classes.
Please take a look at the #referencedPreRequisites method as well."
^ #(
#'stx:libbasic' "AbstractTime - extended"
#'stx:libbasic3' "AbstractSourceCodeManager - superclass of MCSourceCodeManager"
#'stx:libcompat' "PackageInfo - extended"
#'stx:libtool' "AbstractSettingsApplication - superclass of MCSettingsApp"
#'stx:libview2' "ApplicationModel - extended"
#'stx:libwidg2' "AbstractHierarchicalItem - superclass of MCPackageEntry"
)
!
referencedPreRequisites
"list packages which are a prerequisite, because they contain
classes which are referenced by my classes.
These packages are NOT needed as a prerequisite for compiling or loading,
however, a class from it may be referenced during execution and having it
unloaded then may lead to a runtime doesNotUnderstand error, unless the caller
includes explicit checks for the package being present.
This method is generated automatically,
by searching all classes (and their packages) which are referenced by my classes.
Please also take a look at the #mandatoryPreRequisites method"
^ #(
#'stx:goodies/communication' "FTPClient - referenced by MCFtpRepository>>clientDo:"
#'stx:libbasic2' "Iterator - referenced by MCPackageList>>makeGenerator"
#'stx:libcomp' "Parser - referenced by MCRepositoryBrowser>>repositoryAddFromExpressionString"
#'stx:libhtml' "HTMLDocumentView - referenced by MCRepositoryBrowser>>openDocumentation"
#'stx:libview' "Color - referenced by MCCommitDialog>>findUniqueVersionNumber"
#'stx:libwidg' "PopUpMenu - referenced by MCVersionInspector>>pickAncestor"
)
!
subProjects
"list packages which are known as subprojects.
The generated makefile will enter those and make there as well.
However: they are not forced to be loaded when a package is loaded;
for those, redefine #referencedPrerequisites or #mandatoryPreRequisites."
^ #(
)
! !
!stx_goodies_monticello 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"
InMidstOfFileinNotification
MCAncestry
MCBrowserList
MCChangeSelectionRequest
MCConflict
MCCredentialsRequest
MCDefinition
MCDefinitionIndex
MCDependencySorter
MCDialog
MCDirtyPackageInfo
MCDoItParser
MCEmptyPackageInfo
MCFrontier
MCInteractiveLoadingQuery
MCLazyPropertyDictionary
MCMergeRecord
MCMergeResolutionRequest
MCMerger
MCMock
MCMockAPoolDictionary
MCMockDependency
MCMockPackageInfo
MCNoChangesException
MCPackage
MCPackageCache
MCPackageEntry
MCPackageLoader
MCPackageManager
MCPatch
MCPatchOperation
MCPatcher
MCPermissionDenied
MCReader
MCRepository
MCRepositoryBrowser
MCRepositoryEntry
MCRepositoryGroup
MCScanner
MCServerCredentials
MCServerRegistry
MCSettingsApp
MCSnapshot
MCSourceCodeManager
MCStXNamespaceQuery
MCStXPackageInfo
MCStXPackageQuery
MCStXSnapshotTransformation
MCStxVersionInfo
MCTimestampAnnotation
MCTool
MCVariableDefinition
MCVersion
MCVersionDependency
MCVersionEntry
MCVersionLoader
MCVersionMerger
MCVersionNameAndMessageRequest
MCVersionNotification
MCVersionSorter
MCWriter
MethodReference
PackageOrganizer
#'stx_goodies_monticello'
MCAddition
MCClassComment
MCClassDefinition
MCClassInstanceVariableDefinition
MCClassTraitDefinition
MCClassTraitParser
MCClassVariableDefinition
MCCodeTool
MCCommitDialog
MCDictionaryRepository
MCDiffyVersion
MCFileBasedRepository
MCFilteredVersionSorter
MCGOODSRepository
MCInstanceVariableDefinition
MCMczWriter
MCMethodDefinition
MCMockDefinition
MCMockDependentItem
MCModification
MCMultiPackageLoader
MCOrganizationDefinition
MCPackageList
MCPoolImportDefinition
MCRemoval
MCRepositoryDialog
MCRepositoryList
MCScriptDefinition
MCSnapshotReader
MCStWriter
MCStXSnapshotPostReadTransformation
MCStXSnapshotPreWriteTransformation
MCSystemCategoryParser
MCThreeWayMerger
MCTraitParser
MCVersionHistoryBrowser
MCVersionInfo
MCVersionInfoWriter
MCVersionInspector
MCVersionList
MCVersionReader
MCWorkingAncestry
MCWorkingCopy
MCWriteOnlyRepository
MCDirectoryRepository
MCFtpRepository
MCHttpRepository
MCLazyVersionInfo
MCMcdWriter
MCMczReader
MCPatchBrowser
MCPostscriptDefinition
MCPreambleDefinition
MCRemovalPostscriptDefinition
MCRemovalPreambleDefinition
MCSMReleaseRepository
MCSmtpRepository
MCStReader
MCStxMczWriter
MCStxStWriter
MCTraitDefinition
MCCacheRepository
MCGemstoneRepository
MCMcdReader
MCSmalltalkhubRepository
MCSqueaksourceRepository
MCSubDirectoryRepository
(MCDependentsWrapper autoload)
(MCToolWindowBuilder autoload)
(MCSaveVersionDialog autoload)
(MCWorkingCopyBrowser autoload)
(MCFileRepositoryInspector autoload)
(MCRepositoryInspector autoload)
(MCSMCacheRepository autoload)
(MCSnapshotBrowser autoload)
(MCWorkingHistoryBrowser autoload)
(MCChangeSelector autoload)
(MCMergeBrowser autoload)
)
!
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.
A correponding method with real names must be present in my concrete subclasses
if it has extensions."
^ #(
Behavior traitCompositionString
Behavior typeOfClass
Class asClassDefinition
Class classDefinitions
Class poolDictionaryNames
ClassDescription mcDefinition
Object isConflict
SequenceableCollection copyReplaceAll:with:asTokens:
Stream isMessageStream
String extractNumber
String withSqueakLineEndings
StringCollection asStringWithNativeLineEndings
StringCollection asStringWithSqueakLineEndings
Symbol isDoIt
#'Tools::NewSystemBrowser' projectMenuMonticelloCommit
UndefinedObject typeOfClass
UserPreferences mcEnabled
UserPreferences mcEnabled:
UserPreferences mcRepositories
UserPreferences mcRepositories:
VersionInfo timeStamp
'Annotation class' mctimestamp:
'ProjectDefinition class' #'monticelloTimestamps_code'
'ProjectDefinition class' #'monticelloTimestamps_codeFor:'
'Timestamp class' fromMethodTimeStamp:
Change mcDefinition
Change mcDefinition:
'ProjectDefinition class' monticelloName
'ProjectDefinition class' #'monticelloAncestry_code'
PackageInfo isMCStXPackageInfo
CharacterArray asStringWithSqueakLineEndings
CharacterArray asStringWithNativeLineEndings
'ProjectDefinition class' monticelloNameForMCZ
)
! !
!stx_goodies_monticello 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 Monticello Class library'
"Modified: / 20-08-2011 / 16:57:40 / cg"
!
legalCopyright
"Return a copyright string which will appear in <lib>.rc"
^ 'Public - See SqueakSource'
"Modified: / 20-08-2011 / 16:58:01 / cg"
!
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'
! !
!stx_goodies_monticello class methodsFor:'documentation'!
version
^ '$Header$'
!
version_CVS
^ '$Header$'
! !