]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/anybutton.cpp
simplify code so it always returns the same object
[wxWidgets.git] / src / msw / anybutton.cpp
index 6251a69c5e7dd079470f61dc15f231f6783dd9c0..2bf1b41f4ca8fdbdf0b885716744f42840d4dfed 100644 (file)
@@ -150,8 +150,9 @@ public:
     wxODButtonImageData(wxAnyButton *btn, const wxBitmap& bitmap)
     {
         SetBitmap(bitmap, wxAnyButton::State_Normal);
+#if wxUSE_IMAGE
         SetBitmap(bitmap.ConvertToDisabled(), wxAnyButton::State_Disabled);
-
+#endif
         m_dir = wxLEFT;
 
         // we use margins when we have both bitmap and text, but when we have
@@ -222,8 +223,12 @@ public:
         // initialize all bitmaps except for the disabled one to normal state
         for ( int n = 0; n < wxAnyButton::State_Max; n++ )
         {
+#if wxUSE_IMAGE
             m_iml.Add(n == wxAnyButton::State_Disabled ? bitmap.ConvertToDisabled()
                                                     : bitmap);
+#else
+            m_iml.Add(bitmap);
+#endif
         }
 
         m_data.himl = GetHimagelistOf(&m_iml);
@@ -395,7 +400,7 @@ wxSize wxMSWButton::GetFittingSize(wxWindow *win,
     {
         // We still need some margin or the text would be overwritten, just
         // make it as small as possible.
-        sizeBtn.x += (3*win->GetCharWidth())/2;
+        sizeBtn.x += (3*win->GetCharWidth());
     }
     else
     {
@@ -813,7 +818,7 @@ void DrawButtonText(HDC hdc,
         // first we need to compute its bounding rect
         RECT rc;
         ::CopyRect(&rc, pRect);
-        ::DrawText(hdc, text.wx_str(), text.length(), &rc,
+        ::DrawText(hdc, text.t_str(), text.length(), &rc,
                    DT_CENTER | DT_CALCRECT);
 
         // now center this rect inside the entire button area
@@ -824,7 +829,7 @@ void DrawButtonText(HDC hdc,
         rc.top = pRect->top + (pRect->bottom - pRect->top)/2 - h/2;
         rc.bottom = rc.top+h;
 
-        ::DrawText(hdc, text.wx_str(), text.length(), &rc, flags);
+        ::DrawText(hdc, text.t_str(), text.length(), &rc, flags);
     }
     else // single line label
     {
@@ -851,7 +856,7 @@ void DrawButtonText(HDC hdc,
 
         // notice that we must have DT_SINGLELINE for vertical alignment flags
         // to work
-        ::DrawText(hdc, text.wx_str(), text.length(), pRect,
+        ::DrawText(hdc, text.t_str(), text.length(), pRect,
                    flags | DT_SINGLELINE );
     }
 }