]> git.saurik.com Git - wxWidgets.git/commitdiff
fixed loading the icons with non default size
authorVadim Zeitlin <vadim@wxwidgets.org>
Wed, 13 Feb 2002 00:31:29 +0000 (00:31 +0000)
committerVadim Zeitlin <vadim@wxwidgets.org>
Wed, 13 Feb 2002 00:31:29 +0000 (00:31 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@14167 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

src/msw/gdiimage.cpp

index 38a1d16db2a0cf34000a3ca2c8b235c2a34b57ca..ba859915999b9de46105bef72eb6df4653bf608f 100644 (file)
@@ -512,18 +512,21 @@ bool wxICOResourceHandler::LoadIcon(wxIcon *icon,
     // standard icons (although why one would want to do it considering that
     // we already have wxApp::GetStdIcon() is unclear)
 #if defined(__WIN32__) && !defined(__SC__)
-    if ( hasSize )
-    {
-        hicon = (HICON)::LoadImage(wxGetInstance(), name, IMAGE_ICON,
-                                    desiredWidth, desiredHeight,
-                                    LR_DEFAULTCOLOR);
-    }
-    else
-#endif // Win32
+    if ( !hasSize )
     {
-        hicon = ::LoadIcon(wxGetInstance(), name);
+        // use the actual size of the resource (as we don't specify
+        // LR_DEFAULTSIZE)
+        desiredWidth =
+        desiredHeight = 0;
     }
 
+    hicon = (HICON)::LoadImage(wxGetInstance(), name, IMAGE_ICON,
+                                desiredWidth, desiredHeight,
+                                LR_DEFAULTCOLOR);
+#else // !Win32
+    hicon = ::LoadIcon(wxGetInstance(), name);
+#endif // Win32/!Win32
+
     // next check if it's not a standard icon
     if ( !hicon && !hasSize )
     {
@@ -552,7 +555,7 @@ bool wxICOResourceHandler::LoadIcon(wxIcon *icon,
     icon->SetSize(size.x, size.y);
 
     // Override the found values with desired values
-    if ( desiredWidth > -1 && desiredHeight > -1 )
+    if ( hasSize )
     {
         icon->SetSize(desiredWidth, desiredHeight);
     }