MIMETypes.st
changeset 645 97e83ab4d246
parent 643 f3bd12eb1008
child 646 1068ac078d10
--- a/MIMETypes.st	Mon Jun 30 22:15:43 1997 +0200
+++ b/MIMETypes.st	Mon Jun 30 22:33:13 1997 +0200
@@ -15,7 +15,8 @@
 Object subclass:#MIMETypes
 	instanceVariableNames:''
 	classVariableNames:'TypeToImageReaderClassMapping FileSuffixToTypeMapping
-		FileSuffixToImageReaderClassMapping'
+		FileSuffixToImageReaderClassMapping
+		CharSetToFontMapping'
 	poolDictionaries:''
 	category:'System-Documentation'
 !
@@ -51,9 +52,39 @@
 !MIMETypes class methodsFor:'initialization'!
 
 initialize
+    "initialize wellKnown facts"
+
     TypeToImageReaderClassMapping isNil ifTrue:[TypeToImageReaderClassMapping := Dictionary new].
+    TypeToImageReaderClassMapping at:'image/jpeg' put:JPEGReader.
+    TypeToImageReaderClassMapping at:'image/gif'  put:GIFReader.
+    TypeToImageReaderClassMapping at:'image/tiff' put:TIFFReader.
+
     FileSuffixToTypeMapping isNil ifTrue:[FileSuffixToTypeMapping := Dictionary new].
+    FileSuffixToTypeMapping at:'jpg' put:'image/jpeg'.
+    FileSuffixToTypeMapping at:'gif' put:'image/gif'.
+    FileSuffixToTypeMapping at:'tif' put:'image/tiff'.
+
     FileSuffixToImageReaderClassMapping isNil ifTrue:[FileSuffixToImageReaderClassMapping := Dictionary new].
+    FileSuffixToImageReaderClassMapping at:'jpg'  put:JPEGReader.
+    FileSuffixToImageReaderClassMapping at:'gif'  put:GIFReader.
+    FileSuffixToImageReaderClassMapping at:'tif'  put:TIFFReader.
+
+    CharSetToFontMapping isNil ifTrue:[CharSetToFontMapping := Dictionary new].
+    CharSetToFontMapping at:'iso2022-jp' put:'jis'.
+    CharSetToFontMapping at:'euc-jp'     put:'jis'.
+    CharSetToFontMapping at:'shift-jis'  put:'jis'.
+    CharSetToFontMapping at:'jis7'       put:'jis'.
+    CharSetToFontMapping at:'jis8'       put:'jis'.
+
+    CharSetToFontMapping at:'iso2022-cn' put:'big5'.
+    CharSetToFontMapping at:'euc-cn'     put:'big5'.
+    CharSetToFontMapping at:'hz'         put:'big5'.
+
+    CharSetToFontMapping at:'gb2312'     put:'gb'.
+    CharSetToFontMapping at:'euc-gb'     put:'gb'.
+
+    CharSetToFontMapping at:'iso2022-kr' put:'ksc'.
+    CharSetToFontMapping at:'euc-kr'     put:'ksc'.
 
     "
      self initialize
@@ -79,8 +110,20 @@
 !
 
 imageReaderClasses
-    FileSuffixToImageReaderClassMapping isNil ifTrue:[^ #()].
-    ^ FileSuffixToImageReaderClassMapping values
+    |setOfClasses|
+
+    setOfClasses := IdentitySet new.
+    FileSuffixToImageReaderClassMapping notNil ifTrue:[
+        FileSuffixToImageReaderClassMapping keysAndValuesDo:[:suff :cls |
+	    setOfClasses add:cls
+	].
+    ].
+    TypeToImageReaderClassMapping notNil ifTrue:[
+        TypeToImageReaderClassMapping keysAndValuesDo:[:suff :cls |
+	    setOfClasses add:cls
+	].
+    ].
+    ^ setOfClasses
 
     "Modified: 30.6.1997 / 21:51:39 / cg"
     "Created: 30.6.1997 / 22:03:42 / cg"
@@ -94,6 +137,10 @@
     "Created: 30.6.1997 / 21:59:11 / cg"
 !
 
+imageReaderAt:aSuffix put:aReaderClass
+    self imageReaderForSuffix:aSuffix put:aReaderClass
+!
+
 imageReaderForSuffix:aSuffix put:aReaderClass
     FileSuffixToImageReaderClassMapping isNil ifTrue:[
         FileSuffixToImageReaderClassMapping := Dictionary new.
@@ -142,6 +189,6 @@
 !MIMETypes class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libview2/MIMETypes.st,v 1.1 1997-06-30 20:08:32 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libview2/MIMETypes.st,v 1.2 1997-06-30 20:33:13 cg Exp $'
 ! !
 MIMETypes initialize!