*** empty log message ***
authorClaus Gittinger <cg@exept.de>
Thu, 04 Dec 2003 16:46:52 +0100
changeset 1875 8d2f35d8c1f2
parent 1874 4bd4f25fdada
child 1876 efbef37f8dce
*** empty log message ***
MIMETypeIconLibrary.st
--- a/MIMETypeIconLibrary.st	Thu Dec 04 15:55:55 2003 +0100
+++ b/MIMETypeIconLibrary.st	Thu Dec 04 16:46:52 2003 +0100
@@ -4,14 +4,15 @@
 	instanceVariableNames:''
 	classVariableNames:'Icons MatchedIcons'
 	poolDictionaries:''
-	category:'Net-Communication-Support'
+	category:'Interface-Smalltalk'
 !
 
 
 !MIMETypeIconLibrary class methodsFor:'initialization'!
 
 initialize
-    self initializeIcons
+    "/ now done lazily, when trhe first icon is asked for
+    "/ self initializeIcons
 !
 
 initializeIcons
@@ -40,32 +41,17 @@
         #binaryFile            'tiny_file_binary.xpm'           
         #specialFile           'tiny_file_special.xpm'          
 
-        #imageFile             'tiny_file_pix.xpm'              
-        #textFile              'tiny_file_text.xpm'             
-
         #addOnLocked           'tiny_addOn_lock.xpm'            
         #addOnLinked           'tiny_addOn_link.xpm'            
 
         #directoryGray         'tiny_yellow_dir_gray.xpm'       
         #directoryOpenGray     'tiny_yellow_dir_open_gray.xpm'  
 
+        "/ these are soon obsolete
+        #imageFile             'tiny_file_pix.xpm'              
+        #textFile              'tiny_file_text.xpm'             
+
         "/ mime-type to icon mappings.
-"/        'image/jpeg'                                    'tiny_file_pix.xpm'
-"/        'image/gif'                                     'tiny_file_pix.xpm'
-"/        'image/tiff'                                    'tiny_file_pix.xpm'
-"/        'image/x-xbitmap'                               'tiny_file_pix.xpm'
-"/        'image/x-xpixmap'                               'tiny_file_pix.xpm'
-"/        'image/x-png'                                   'tiny_file_pix.xpm'
-"/        'image/x-photo-cd'                              'tiny_file_pix.xpm'
-"/        'image/x-MS-bmp'                                'tiny_file_pix.xpm'
-"/        'image/x-rgb'                                   'tiny_file_pix.xpm'
-"/        'image/x-portable-pixmap'                       'tiny_file_pix.xpm'
-"/        'image/x-portable-graymap'                      'tiny_file_pix.xpm'
-"/        'image/x-portable-bitmap'                       'tiny_file_pix.xpm'
-"/        'image/x-portable-anymap'                       'tiny_file_pix.xpm'
-"/        'image/x-xwindowdump'                           'tiny_file_pix.xpm'
-"/        'image/x-cmu-raster'                            'tiny_file_pix.xpm'
-"/        'image/x-targa'                                 'tiny_file_pix.xpm'
         'image/*'                                       'tiny_file_pix.xpm'
 
         "/ misc text ...
@@ -195,7 +181,7 @@
 
 iconForKey:mimeTypeOrKey
 
-    ^ Icons at:mimeTypeOrKey ifAbsent:nil.
+    ^ self icons at:mimeTypeOrKey ifAbsent:nil.
 !
 
 iconForKeyMatching:mimeTypeOrKey
@@ -211,7 +197,7 @@
 
 iconForMatchKey:matchKey
 
-    ^ MatchedIcons detect:[:assoc | assoc key match:matchKey] ifNone:nil.
+    ^ self matchedIcons detect:[:assoc | assoc key match:matchKey] ifNone:nil.
 !
 
 iconKeyForFile:aFilenameArg
@@ -242,12 +228,26 @@
     "given a fileName, return an appropriate icon"
 
     ^ #directoryNetwork
+!
+
+icons
+    Icons isNil ifTrue:[
+        self initializeIcons
+    ].
+    ^ Icons
+!
+
+matchedIcons
+    MatchedIcons isNil ifTrue:[
+        self initializeIcons
+    ].
+    ^ MatchedIcons
 ! !
 
 !MIMETypeIconLibrary class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libview2/MIMETypeIconLibrary.st,v 1.8 2003-12-04 13:52:03 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libview2/MIMETypeIconLibrary.st,v 1.9 2003-12-04 15:46:52 cg Exp $'
 ! !
 
 MIMETypeIconLibrary initialize!