'From etoys3.0 of 7 March 2008 [latest update: #2154] on 24 September 2008 at 12:22:17 am'! "Change Set: composeTitle-bf Date: 24 September 2008 Author: Bert Freudenberg Compose accents in title of Journal object after receiving metadata from Sugar"! !SugarLauncher methodsFor: 'datastore' stamp: 'bf 9/24/2008 00:18'! resumeJournalEntry: id | props file title project mimetype | props := self dataStore getProperties: id. title := (props at: 'title' ifAbsent: ['untitled' translated]) utf8ToSqueak composeAccents. mimetype := props at: 'mime_type' ifAbsent: ['']. mimetype isEmpty ifTrue: [^self welcome: '']. mimetype = 'application/x-squeak-project' ifFalse: [ "Do not modify original non-project journal entry when later saving this project" parameters removeKey: 'OBJECT_ID' ifAbsent: []. "reuse drop code" WorldState addDeferredUIMessage: [ self open: id title: title mimetype: mimetype]. ^Project enterNew]. ProjectLoading showProgressBarDuring: [ Display fillWhite;forceToScreen. file := self getFile: id. "load project and close temp file (which will thus be deleted)" project := ProjectLoading loadName: ((title copyReplaceAll: '/' with: '\') contractTo: 64) stream: file fromDirectory: nil withProjectView: nil. file close. self monitorJournalEntry. self keepProperties: props for: project. project name: title. project projectParameterAt: #sugarAutoSave put: true. project enter]. ! ! !SugarLauncher methodsFor: 'datastore' stamp: 'bf 9/24/2008 00:18'! updatedJournalEntry: objectId "sent from DBus in background process" | props title | (self parameterAt: 'OBJECT_ID' ifAbsent: [^self]) = objectId ifTrue: [ props := [self dataStore getProperties: objectId] on: DBusError do: [^self]. title := (props at: 'title' ifAbsent: [^self]) utf8ToSqueak composeAccents. Project current name: title. self keepProperties: props for: Project current] ! ! !SugarLauncher methodsFor: 'chooser' stamp: 'bf 9/24/2008 00:17'! chooser: chooserId response: objectId self chooserDone: chooserId. WorldState addDeferredUIMessage: [ | props title mimetype | props := self dataStore getProperties: objectId. title := (props at: 'title' ifAbsent: ['untitled' translated]) utf8ToSqueak composeAccents. mimetype := props at: 'mime_type' ifAbsent: ['']. self open: objectId title: title mimetype: mimetype].! !