rudimentary support for multiple images.
authorClaus Gittinger <cg@exept.de>
Fri, 04 Apr 1997 21:51:28 +0200
changeset 1550 afee7c032a57
parent 1549 b5becd3e5f6f
child 1551 1e1f4820b93a
rudimentary support for multiple images.
ImageRdr.st
ImageReader.st
--- a/ImageRdr.st	Fri Apr 04 20:25:50 1997 +0200
+++ b/ImageRdr.st	Fri Apr 04 21:51:28 1997 +0200
@@ -1325,6 +1325,44 @@
     ^ nil
 
     "Modified: 22.4.1996 / 19:11:58 / cg"
+!
+
+imagesFromFile:aFileName
+    "read all images (in my format) from aFileName. 
+     Return a collection of images or nil on error."
+
+    |result inStream|
+
+    inStream := self streamReadingFile:aFileName.
+    inStream isNil ifTrue:[
+        'ImageReader [warning]: file open error' errorPrintCR.
+        ^ nil
+    ].
+    result := self imagesFromStream:inStream.
+    inStream close.
+    ^ result
+
+    "Created: 4.4.1997 / 21:40:52 / cg"
+    "Modified: 4.4.1997 / 21:42:38 / cg"
+!
+
+imagesFromStream:aStream
+    "read all images (in my format) from aStream.
+     Return a collection of images or nil (if unrecognized format or error)"
+
+    |reader|
+
+    reader := self new fromStream:aStream.
+    reader notNil ifTrue:[
+        reader hasMultipleImages ifTrue:[
+            ^ reader images
+        ].
+        ^ Array with:(reader image)
+    ].
+    ^ nil
+
+    "Modified: 22.4.1996 / 19:11:58 / cg"
+    "Created: 4.4.1997 / 21:41:54 / cg"
 ! !
 
 !ImageReader class methodsFor:'image writing'!
@@ -1417,6 +1455,12 @@
     "Created: 14.9.1996 / 17:10:58 / cg"
 !
 
+hasMultipleImages
+    ^ false
+
+    "Created: 4.4.1997 / 21:37:06 / cg"
+!
+
 height 
     "return the height of the image"
 
@@ -1659,5 +1703,5 @@
 !ImageReader class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libview/Attic/ImageRdr.st,v 1.40 1997-02-18 19:31:40 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libview/Attic/ImageRdr.st,v 1.41 1997-04-04 19:51:28 cg Exp $'
 ! !
--- a/ImageReader.st	Fri Apr 04 20:25:50 1997 +0200
+++ b/ImageReader.st	Fri Apr 04 21:51:28 1997 +0200
@@ -1325,6 +1325,44 @@
     ^ nil
 
     "Modified: 22.4.1996 / 19:11:58 / cg"
+!
+
+imagesFromFile:aFileName
+    "read all images (in my format) from aFileName. 
+     Return a collection of images or nil on error."
+
+    |result inStream|
+
+    inStream := self streamReadingFile:aFileName.
+    inStream isNil ifTrue:[
+        'ImageReader [warning]: file open error' errorPrintCR.
+        ^ nil
+    ].
+    result := self imagesFromStream:inStream.
+    inStream close.
+    ^ result
+
+    "Created: 4.4.1997 / 21:40:52 / cg"
+    "Modified: 4.4.1997 / 21:42:38 / cg"
+!
+
+imagesFromStream:aStream
+    "read all images (in my format) from aStream.
+     Return a collection of images or nil (if unrecognized format or error)"
+
+    |reader|
+
+    reader := self new fromStream:aStream.
+    reader notNil ifTrue:[
+        reader hasMultipleImages ifTrue:[
+            ^ reader images
+        ].
+        ^ Array with:(reader image)
+    ].
+    ^ nil
+
+    "Modified: 22.4.1996 / 19:11:58 / cg"
+    "Created: 4.4.1997 / 21:41:54 / cg"
 ! !
 
 !ImageReader class methodsFor:'image writing'!
@@ -1417,6 +1455,12 @@
     "Created: 14.9.1996 / 17:10:58 / cg"
 !
 
+hasMultipleImages
+    ^ false
+
+    "Created: 4.4.1997 / 21:37:06 / cg"
+!
+
 height 
     "return the height of the image"
 
@@ -1659,5 +1703,5 @@
 !ImageReader class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libview/ImageReader.st,v 1.40 1997-02-18 19:31:40 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libview/ImageReader.st,v 1.41 1997-04-04 19:51:28 cg Exp $'
 ! !