]> git.saurik.com Git - wxWidgets.git/blobdiff - src/osx/carbon/icon.cpp
freeze whole window for TLW
[wxWidgets.git] / src / osx / carbon / icon.cpp
index 5720f1bf8140d403e097e5a6059509650054d584..37c815e24d3e0d6047e63822b10194f88af0766b 100644 (file)
@@ -97,10 +97,10 @@ wxIcon::wxIcon(const char* const* bits)
 }
 
 wxIcon::wxIcon(
-    const wxString& icon_file, int flags,
+    const wxString& icon_file, wxBitmapType flags,
     int desiredWidth, int desiredHeight )
 {
-    LoadFile( icon_file, (wxBitmapType) flags, desiredWidth, desiredHeight );
+    LoadFile( icon_file, flags, desiredWidth, desiredHeight );
 }
 
 wxIcon::wxIcon(WXHICON icon, const wxSize& size)
@@ -203,6 +203,50 @@ bool wxIcon::LoadFile(
         {
             theId = kGenericDocumentIcon ;
         }
+        else if ( filename == wxT("wxICON_EXECUTABLE_FILE") )
+        {
+            theId = kGenericApplicationIcon ;
+        }
+        else if ( filename == wxT("wxICON_CDROM") )
+        {
+            theId = kGenericCDROMIcon ;
+        }
+        else if ( filename == wxT("wxICON_FLOPPY") )
+        {
+            theId = kGenericFloppyIcon ;
+        }
+        else if ( filename == wxT("wxICON_HARDDISK") )
+        {
+            theId = kGenericHardDiskIcon ;
+        }
+        else if ( filename == wxT("wxICON_REMOVABLE") )
+        {
+            theId = kGenericRemovableMediaIcon ;
+        }
+        else if ( filename == wxT("wxICON_DELETE") )
+        {
+            theId = kToolbarDeleteIcon ;
+        }
+        else if ( filename == wxT("wxICON_GO_BACK") )
+        {
+            theId = kBackwardArrowIcon ;
+        }
+        else if ( filename == wxT("wxICON_GO_FORWARD") )
+        {
+            theId = kForwardArrowIcon ;
+        }
+        else if ( filename == wxT("wxICON_GO_HOME") )
+        {
+            theId = kToolbarHomeIcon ;
+        }
+        else if ( filename == wxT("wxICON_HELP_SETTINGS") )
+        {
+            theId = kGenericFontIcon ;
+        }
+        else if ( filename == wxT("wxICON_HELP_PAGE") )
+        {
+            theId = kGenericDocumentIcon ;
+        }
         else
         {
             IconRef iconRef = NULL ;
@@ -290,7 +334,7 @@ bool wxIcon::LoadFile(
 #endif
         }
     }
-    return true ;
+    return false;
 }
 
 void wxIcon::CopyFromBitmap( const wxBitmap& bmp )
@@ -305,13 +349,15 @@ void wxIcon::CopyFromBitmap( const wxBitmap& bmp )
 IMPLEMENT_DYNAMIC_CLASS(wxICONResourceHandler, wxBitmapHandler)
 
 bool  wxICONResourceHandler::LoadFile(
-    wxBitmap *bitmap, const wxString& name, long WXUNUSED(flags),
+    wxBitmap *bitmap, const wxString& name, wxBitmapType WXUNUSED(flags),
     int desiredWidth, int desiredHeight )
 {
     wxIcon icon ;
-    icon.LoadFile( name , wxBITMAP_TYPE_ICON_RESOURCE , desiredWidth , desiredHeight ) ;
-    bitmap->CopyFromIcon( icon ) ;
-
-    return bitmap->Ok() ;
+    if ( icon.LoadFile( name , wxBITMAP_TYPE_ICON_RESOURCE , desiredWidth , desiredHeight ) )
+    {
+        bitmap->CopyFromIcon( icon ) ;
+        return bitmap->Ok() ;
+    }
+    return false;
 }