--- a/MCPackage.st Mon Oct 26 16:25:23 2009 +0100
+++ b/MCPackage.st Mon Oct 26 16:25:25 2009 +0100
@@ -37,7 +37,12 @@
!
packageInfo
- ^ PackageInfo named: name
+ Smalltalk isSmalltalkX ifTrue:[
+ ^ ProjectDefinition
+ definitionClassForMonticelloPackage:name createIfAbsent:true
+ ] ifFalse:[
+ ^ PackageInfo named: name
+ ].
!
printOn: aStream
@@ -49,24 +54,26 @@
!
snapshot
- | packageInfo definitions categories |
- packageInfo := self packageInfo.
- definitions := OrderedCollection new.
- categories := packageInfo systemCategories.
- categories isEmpty ifFalse: [ definitions add: (MCOrganizationDefinition categories: categories) ].
- packageInfo methods do: [:ea | definitions add: ea asMethodDefinition] displayingProgress: 'Snapshotting methods...'.
- (packageInfo respondsTo: #overriddenMethods) ifTrue:
- [packageInfo overriddenMethods
- do: [:ea | definitions add:
- (packageInfo changeRecordForOverriddenMethod: ea) asMethodDefinition]
- displayingProgress: 'Searching for overrides...'].
- packageInfo classes do: [:ea | definitions addAll: ea classDefinitions] displayingProgress: 'Snapshotting classes...'.
- (packageInfo respondsTo: #hasPreamble) ifTrue: [
- packageInfo hasPreamble ifTrue: [definitions add: (MCPreambleDefinition from: packageInfo)].
- packageInfo hasPostscript ifTrue: [definitions add: (MCPostscriptDefinition from: packageInfo)].
- packageInfo hasPreambleOfRemoval ifTrue: [definitions add: (MCRemovalPreambleDefinition from: packageInfo)].
- packageInfo hasPostscriptOfRemoval ifTrue: [definitions add: (MCRemovalPostscriptDefinition from: packageInfo)]].
- ^ MCSnapshot fromDefinitions: definitions
+ | packageInfo definitions categories |
+ packageInfo := self packageInfo.
+ definitions := OrderedCollection new.
+self todo:[
+ categories := packageInfo systemCategories.
+ categories isEmpty ifFalse: [ definitions add: (MCOrganizationDefinition categories: categories) ].
+ packageInfo methods do: [:ea | definitions add: ea asMethodDefinition] displayingProgress: 'Snapshotting methods...'.
+ (packageInfo respondsTo: #overriddenMethods) ifTrue:
+ [packageInfo overriddenMethods
+ do: [:ea | definitions add:
+ (packageInfo changeRecordForOverriddenMethod: ea) asMethodDefinition]
+ displayingProgress: 'Searching for overrides...'].
+ packageInfo classes do: [:ea | definitions addAll: ea classDefinitions] displayingProgress: 'Snapshotting classes...'.
+ (packageInfo respondsTo: #hasPreamble) ifTrue: [
+ packageInfo hasPreamble ifTrue: [definitions add: (MCPreambleDefinition from: packageInfo)].
+ packageInfo hasPostscript ifTrue: [definitions add: (MCPostscriptDefinition from: packageInfo)].
+ packageInfo hasPreambleOfRemoval ifTrue: [definitions add: (MCRemovalPreambleDefinition from: packageInfo)].
+ packageInfo hasPostscriptOfRemoval ifTrue: [definitions add: (MCRemovalPostscriptDefinition from: packageInfo)]].
+].
+ ^ MCSnapshot fromDefinitions: definitions
!
storeOn: aStream
@@ -86,5 +93,9 @@
!MCPackage class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/goodies/monticello/MCPackage.st,v 1.1 2006-11-22 13:19:56 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/goodies/monticello/MCPackage.st,v 1.2 2009-10-26 15:25:25 cg Exp $'
+!
+
+version_CVS
+ ^ '$Header: /cvs/stx/stx/goodies/monticello/MCPackage.st,v 1.2 2009-10-26 15:25:25 cg Exp $'
! !