from*Stream: methods return the image
authorClaus Gittinger <cg@exept.de>
Wed, 30 May 2007 17:41:12 +0200
changeset 2333 a93f1f5392bd
parent 2332 6635722bdb85
child 2334 ec0c03d247f5
from*Stream: methods return the image
WindowsIconReader.st
--- a/WindowsIconReader.st	Wed May 30 14:53:15 2007 +0200
+++ b/WindowsIconReader.st	Wed May 30 17:41:12 2007 +0200
@@ -9,7 +9,6 @@
  other person.  No title to or ownership of the software is
  hereby transferred.
 "
-
 "{ Package: 'stx:libview2' }"
 
 ImageReader subclass:#WindowsIconReader
@@ -401,12 +400,12 @@
 
     stream := self class streamReadingFile:aFilename.
     stream isNil ifTrue:[^ nil].
-    reader := (self class new) fromOS2Stream:stream.
+    reader := self class new.
+    reader fromOS2Stream:stream.
     stream close.
-    reader notNil ifTrue:[^ reader image].
-    ^ nil
+    ^ reader image
 
-    "Modified: 23.4.1996 / 13:09:28 / cg"
+    "Modified: / 30-05-2007 / 16:52:50 / cg"
 !
 
 fromOS2Stream:aStream
@@ -496,6 +495,7 @@
     photometric := #palette.
     samplesPerPixel := 1.
     bitsPerSample := #(8).
+    ^ self image
 
     "
      |i f|
@@ -504,8 +504,8 @@
      v displayOpaqueForm:(f magnifyBy:2@2) x:5 y:5
     "
 
-    "Modified: / 17.9.1995 / 18:49:24 / claus"
-    "Modified: / 3.2.1998 / 20:17:13 / cg"
+    "Modified: / 17-09-1995 / 18:49:24 / claus"
+    "Modified: / 30-05-2007 / 16:53:24 / cg"
 !
 
 fromStream:aStream 
@@ -579,12 +579,12 @@
 
     stream := self class streamReadingFile:aFilename.
     stream isNil ifTrue:[^ nil].
-    reader := (self class new) fromWindowsBMPStream:stream.
+    reader := self class new.
+    reader fromWindowsBMPStream:stream.
     stream close.
-    reader notNil ifTrue:[^ reader image].
-    ^ nil
+    ^ reader image.
 
-    "Modified: 23.4.1996 / 13:09:53 / cg"
+    "Modified: / 30-05-2007 / 16:53:48 / cg"
 !
 
 fromWindowsBMPStream:aStream 
@@ -727,24 +727,20 @@
             data at:i put:(data at:i+2).
             data at:i+2 put:t
         ].
-        ^ self
-    ].
-    inDepth == 1 ifTrue:[
-        photometric := #blackIs0.
+    ] ifFalse:[
         samplesPerPixel := 1.
-        bitsPerSample := #(1).
-        ^ self
+        bitsPerSample := Array with:inDepth.
+
+        inDepth == 1 ifTrue:[
+            photometric := #blackIs0.
+        ] ifFalse:[
+            photometric := #palette.
+        ].
     ].
-    (inDepth ~~ 8) ifTrue:[
-        "/ self halt:'unsupported depth'.
-    ].
+    ^ self image
 
-    photometric := #palette.
-    samplesPerPixel := 1.
-    bitsPerSample := #(8).
-
-    "Modified: / 17.9.1995 / 18:48:46 / claus"
-    "Modified: / 16.9.1998 / 01:09:08 / cg"
+    "Modified: / 17-09-1995 / 18:48:46 / claus"
+    "Modified: / 30-05-2007 / 16:57:39 / cg"
 !
 
 fromWindowsICOFile:aFilename 
@@ -754,16 +750,16 @@
 
     stream := self class streamReadingFile:aFilename.
     stream isNil ifTrue:[^ nil].
-    reader := (self class new) fromWindowsICOStream:stream.
+    reader := self class new.
+    reader fromWindowsICOStream:stream.
     stream close.
-    reader notNil ifTrue:[^ reader image].
-    ^ nil
+    ^ reader image.
 
     "
      Image fromFile:'/phys/clam2//LocalLibrary/Images/WIN_icons/ibm.ico'.
     "
 
-    "Modified: 23.4.1996 / 13:10:11 / cg"
+    "Modified: / 30-05-2007 / 16:57:52 / cg"
 !
 
 fromWindowsICOStream:aStream
@@ -851,12 +847,13 @@
         data := rawData.
         bitsPerSample := (Array with:inDepth).
     ].
+    ^ self image
 
     "
      WindowsIconReader new fromWindowsICOFile:'/phys/clam2//LocalLibrary/Images/WIN_icons/ibm.ico'.
     "
 
-    "Modified: / 18.5.1999 / 15:40:00 / cg"
+    "Modified: / 30-05-2007 / 16:58:11 / cg"
 ! !
 
 !WindowsIconReader methodsFor:'writing'!
@@ -1105,7 +1102,7 @@
 !WindowsIconReader class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libview2/WindowsIconReader.st,v 1.60 2005-02-02 10:44:31 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libview2/WindowsIconReader.st,v 1.61 2007-05-30 15:41:12 cg Exp $'
 ! !
 
 WindowsIconReader initialize!