ProjectDefinition.st
changeset 12741 2e5f250f5426
parent 12740 a035bfe4af1a
child 12742 853d25401c13
equal deleted inserted replaced
12740:a035bfe4af1a 12741:2e5f250f5426
    10  hereby transferred.
    10  hereby transferred.
    11 "
    11 "
    12 "{ Package: 'stx:libbasic' }"
    12 "{ Package: 'stx:libbasic' }"
    13 
    13 
    14 Object subclass:#ProjectDefinition
    14 Object subclass:#ProjectDefinition
    15         instanceVariableNames:''
    15 	instanceVariableNames:''
    16         classVariableNames:'LibraryType GUIApplicationType NonGUIApplicationType
    16 	classVariableNames:'LibraryType GUIApplicationType NonGUIApplicationType
    17                 PackagesBeingLoaded Verbose'
    17 		PackagesBeingLoaded Verbose'
    18         poolDictionaries:''
    18 	poolDictionaries:''
    19         category:'System-Support-Projects'
    19 	category:'System-Support-Projects'
    20 !
    20 !
    21 
    21 
    22 ProjectDefinition class instanceVariableNames:'safeForOverwrittenMethods extensionOverwriteInfo projectIsLoaded'
    22 ProjectDefinition class instanceVariableNames:'safeForOverwrittenMethods extensionOverwriteInfo projectIsLoaded'
    23 
    23 
    24 "
    24 "
  4610     platformName := OperatingSystem platformName.
  4610     platformName := OperatingSystem platformName.
  4611     classNamesToLoad := OrderedCollection new.
  4611     classNamesToLoad := OrderedCollection new.
  4612     classNamesToAutoload := OrderedCollection new.
  4612     classNamesToAutoload := OrderedCollection new.
  4613 
  4613 
  4614     hasClassesToLoad := false.
  4614     hasClassesToLoad := false.
  4615     self classNamesAndAttributesDo:[:eachClassname :eachAttributes | |eachClassnameSym isAutoload cls|
  4615     self classNamesAndAttributesDo:[:eachClassname :eachAttributes | 
       
  4616         |eachClassnameSym isAutoload cls|
       
  4617 
  4616         eachClassnameSym := eachClassname asSymbol.
  4618         eachClassnameSym := eachClassname asSymbol.
  4617         isAutoload := asAutoloaded or:[eachAttributes includes:#autoload].
  4619         isAutoload := asAutoloaded or:[eachAttributes includes:#autoload].
  4618 
  4620 
  4619         "no need to (re-)load an existing class, but install if should be loaded"
  4621         "no need to (re-)load an existing class, but install if should be loaded"
  4620         cls := Smalltalk loadedClassNamed:eachClassnameSym.
  4622         cls := Smalltalk loadedClassNamed:eachClassnameSym.
  4632         ].
  4634         ].
  4633     ].
  4635     ].
  4634 
  4636 
  4635     hasClassesToLoad ifTrue:[
  4637     hasClassesToLoad ifTrue:[
  4636         Transcript showCR:('  %1: filing in missing classes individually...' bindWith:self name).
  4638         Transcript showCR:('  %1: filing in missing classes individually...' bindWith:self name).
  4637 
       
  4638         loadedClasses := OrderedCollection new.
  4639         loadedClasses := OrderedCollection new.
  4639 
  4640 
  4640         self packageDirectory isNil ifTrue:[
  4641         self packageDirectory isNil ifTrue:[
  4641             self 
  4642             self 
  4642                 error:(self name,'[error] cannot install because packageDirectory is unknown')
  4643                 error:(self name,'[error] cannot install because packageDirectory is unknown')
  4683                     category:#autoloaded    "FIXME"
  4684                     category:#autoloaded    "FIXME"
  4684                     package:self package
  4685                     package:self package
  4685                     revision:nil
  4686                     revision:nil
  4686                     numClassInstVars:0.     "FIXME"
  4687                     numClassInstVars:0.     "FIXME"
  4687             ] do:[
  4688             ] do:[
       
  4689                 Transcript showCR:('  %1: filing in %2...' bindWith:self name with:eachClassName).
  4688                 cls := Smalltalk
  4690                 cls := Smalltalk
  4689                             fileInClass:eachClassName
  4691                             fileInClass:eachClassName
  4690                             package:self package
  4692                             package:self package
  4691                             initialize:false
  4693                             initialize:false
  4692                             lazy:false
  4694                             lazy:false
  5311 ! !
  5313 ! !
  5312 
  5314 
  5313 !ProjectDefinition class methodsFor:'documentation'!
  5315 !ProjectDefinition class methodsFor:'documentation'!
  5314 
  5316 
  5315 version
  5317 version
  5316     ^ '$Header: /cvs/stx/stx/libbasic/ProjectDefinition.st,v 1.304 2010-02-26 13:44:41 cg Exp $'
  5318     ^ '$Header: /cvs/stx/stx/libbasic/ProjectDefinition.st,v 1.305 2010-02-26 13:49:04 cg Exp $'
  5317 !
  5319 !
  5318 
  5320 
  5319 version_CVS
  5321 version_CVS
  5320     ^ '$Header: /cvs/stx/stx/libbasic/ProjectDefinition.st,v 1.304 2010-02-26 13:44:41 cg Exp $'
  5322     ^ '$Header: /cvs/stx/stx/libbasic/ProjectDefinition.st,v 1.305 2010-02-26 13:49:04 cg Exp $'
  5321 ! !
  5323 ! !
  5322 
  5324 
  5323 ProjectDefinition initialize!
  5325 ProjectDefinition initialize!