--- 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!