'From VisualWorks® NonCommercial, Release 5i.4 of August 9, 2001 on June 13, 2002 at 12:26:26 pm'! !CormasNS.Kernel.Cormas methodsFor: 'version'! convertFrom2001To2002 | choosenModelName stFileName tmp evFileName aCategory | "1- Fermeture du modele precedent" self currentModel notNil ifTrue: [self currentModel visualStateIsOpen ifTrue: [self visualStateWin closeRequest]. self closeModel]. "2- Selection dans la liste des modeles importables" tmp := self class modelsPath asFilename directoryContents asOrderedCollection. tmp isEmpty ifTrue: [self alert_NoModel. ^self]. tmp := tmp asSortedCollection: [:a :b | a < b]. choosenModelName := Dialog choose: self chooseModel fromList: tmp asList values: tmp lines: 8 cancel: [^nil]. "3- Suppression de VW du meme modele anterieur" (CormasNS.Models keys includes: choosenModelName asSymbol) ifTrue: [(Dialog confirm: (UserMessage defaultString: '' key: #stModelAlreadyInSystem)) ifFalse: [^nil] ifTrue: [aCategory := (CormasNS.Models at: choosenModelName asSymbol) category. Cursor wait showWhile: [| classes | classes := (CormasNS.Models at: choosenModelName asSymbol) allClasses. classes reverseDo: [:cls | cls removeFromSystem]. (CormasNS.Models organization listAtCategoryNamed: aCategory) isEmpty ifTrue: [CormasNS.Models organization removeCategory: aCategory. ChangeSet current reorganizeSystem]]]]. stFileName := (self class modelPath: choosenModelName asSymbol) construct: choosenModelName , '.st'. stFileName asFilename exists ifFalse: [Dialog warn: (UserMessage defaultString: '' key: #noStModelFilename). ^nil]. "self testParcelsRequired: stFileName." "4- Conversion 2001 - 2002" (Converter2001To2002 convertModel: choosenModelName for: self) isNil ifTrue:[^nil]. "5- Chargement du code des classes du modele: FILE_IN" Cursor wait showWhile:[(stFileName asFilename withEncoding: #Source) fileIn]. "6- Chargement eventuel des etats visuels des classes du modele" self currentModel: ((CormasNS.Models at: choosenModelName asSymbol) at: choosenModelName asSymbol). evFileName := (self class modelPath: choosenModelName asSymbol) construct: choosenModelName , '.ev'. evFileName asFilename exists ifTrue: [self readVSFile. self currentModel initializeWithVS] ifFalse: [self currentModel initialize]. self currentModel allClasses do: [:ent | ent activePov: nil]. self setModelVersion: self currentModel equalTo: stFileName asFilename. self displayModel: self currentModel. self currentModel visualStateIsOpen: false. self adjustOrganizationTo2002. self currentSimulation: self currentModel new. self createPdvDict. self resetSimulation. "7- Sauvegarde du fichier avec son ancien nom" self exportModelWithoutChoice.! !