--- a/ImageEditor.st Thu Feb 09 19:18:39 2006 +0100
+++ b/ImageEditor.st Fri Feb 10 16:00:04 2006 +0100
@@ -58,10 +58,7 @@
!ImageEditor class methodsFor:'instance creation'!
openModalOnClass: aClass andSelector: aSelector
- "opens modal a Image Editor on aClass and aSelector"
- "
- self openModalOnClass: self andSelector: #leftMouseKeyIcon
- "
+ "opens a modal Image Editor on aClass and aSelector"
|imageEditor imageEditView className resourceClassName resourceSelector|
@@ -81,49 +78,49 @@
or:[aSelector asString ~= resourceSelector])
ifTrue: [^resourceClassName, ' ', resourceSelector]
ifFalse:[^nil]
+
+ "
+ self openModalOnClass: self andSelector: #leftMouseKeyIcon
+ "
!
-openOnClass: aClass andSelector: aSelector
- "opens a Image Editor on aClass and aSelector"
- "
- self openOnClass: self andSelector: #leftMouseKeyIcon
- "
+openOnClass:aClass andSelector:aSelector
+ "opens an Image Editor on aClass and aSelector"
|editor|
editor := self new.
editor allButOpen.
- aSelector notNil ifTrue:[
- editor loadFromMessage: aClass name, ' ', aSelector.
- ] ifFalse:[
- editor resourceClass:aClass
- ].
+ editor loadFromClass:aClass selector:aSelector.
editor openWindow
+ "
+ self openOnClass:self andSelector:#leftMouseKeyIcon
+ self openOnClass:self andSelector:nil
+ "
+
"Modified: / 16.3.1999 / 21:33:49 / cg"
!
-openOnFile: aFileName
- "opens a Image Editor on aFileName"
- "
- self openOnFile: 'bitmaps/SmalltalkX.xbm'
- "
+openOnFile:aFileName
+ "opens an Image Editor on aFileName"
|editor|
editor := self new.
editor allButOpen.
- editor loadFromFile: aFileName.
+ editor loadFromFile:aFileName.
editor openWindow
+ "
+ self openOnFile: 'bitmaps/SmalltalkX.xbm'
+ "
+
"Modified: / 16.3.1999 / 21:33:25 / cg"
!
-openOnImage: anImage
- "opens a Image Editor on anImage"
- "
- self openOnImage: Icon startIcon
- "
+openOnImage:anImage
+ "opens an Image Editor on anImage"
|editor|
@@ -132,6 +129,10 @@
editor loadFromImage: anImage.
editor openWindow
+ "
+ self openOnImage: Icon startIcon
+ "
+
"Modified: / 11.3.1999 / 16:18:33 / cg"
! !
@@ -3313,11 +3314,13 @@
defaultInfoLabel
"returns the default info label"
- |resourceClass|
+ |resourceClass resourceSelector|
resourceClass := imageEditView resourceClass.
resourceClass notNil ifTrue:[
- ^ resourceClass name, ' >> ', imageEditView resourceSelector
+ resourceSelector notNil ifTrue:[
+ ^ resourceClass name, ' >> ', imageEditView resourceSelector
+ ].
].
^ 'No class and selector defined.'
!
@@ -3331,22 +3334,26 @@
!ImageEditor methodsFor:'loading'!
+loadFromClass:class selector:selector
+ "loads an image by evaluating aMessage and sets up color map list and other info labels"
+
+ (class isNil or:[selector]) isNil ifTrue:[
+ imageEditView resourceClass:class.
+ imageEditView resourceSelector:selector.
+ ^ self.
+ ].
+
+ (imageEditView loadFromClass:class selector:selector) notNil ifTrue:[
+ self updateAfterImageChange.
+ ]
+!
+
loadFromFile: aFileName
"loads an image from aFileName and sets up color map list and other info labels"
- |img|
-
self withCursor:Cursor wait do:[
(imageEditView loadFromFile: aFileName) notNil ifTrue:[
- (img := self image) notNil ifTrue:[
- self updateColorsFromImage:img.
- self findColorMapMode.
- self updateLabelsAndHistory.
- img := img onDevice:device.
- imageEditView image:img.
- ] ifFalse:[
- self updateForNoImage
- ].
+ self updateAfterImageChange
]
]
@@ -3365,13 +3372,14 @@
imageEditView image:img.
imageEditView clearModified.
- img notNil ifTrue:[
- self updateColorsFromImage:img.
- self findColorMapMode.
- self updateLabelsAndHistory.
- ] ifFalse:[
- self updateForNoImage
- ]
+ self updateAfterImageChange.
+"/ img notNil ifTrue:[
+"/ self updateColorsFromImage:img.
+"/ self findColorMapMode.
+"/ self updateLabelsAndHistory.
+"/ ] ifFalse:[
+"/ self updateForNoImage
+"/ ]
"Modified: / 16.3.1999 / 21:43:56 / cg"
!
@@ -3379,17 +3387,8 @@
loadFromMessage: aMessage
"loads an image by evaluating aMessage and sets up color map list and other info labels"
- |img|
-
(imageEditView loadFromMessage: aMessage) notNil ifTrue:[
- (img := self image) notNil ifTrue:[
- img := img onDevice:device.
- self updateColorsFromImage:img.
- self findColorMapMode.
- self updateLabelsAndHistory.
- ] ifFalse:[
- self updateForNoImage
- ]
+ self updateAfterImageChange.
]
"Modified: / 16.3.1999 / 21:44:41 / cg"
@@ -3409,6 +3408,19 @@
self updateLabelsAndHistory.
"Modified: / 16.3.1999 / 21:45:07 / cg"
+!
+
+updateAfterImageChange
+ |img|
+
+ (img := self image) notNil ifTrue:[
+ img := img onDevice:device.
+ self updateColorsFromImage:img.
+ self findColorMapMode.
+ self updateLabelsAndHistory.
+ ] ifFalse:[
+ self updateForNoImage
+ ]
! !
!ImageEditor methodsFor:'menu modes'!