]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/bmpbuttn.h
Applied patch [ 1166587 ] [wxMSW] Removes all flicker from wxStaticBox
[wxWidgets.git] / include / wx / bmpbuttn.h
index 91ff9dcec04dfd26ae63b1c1af5219bd970a8c0f..442369808ce56b0300e6718e550d927034a0a5b7 100644 (file)
 #ifndef _WX_BMPBUTTON_H_BASE_
 #define _WX_BMPBUTTON_H_BASE_
 
+#include "wx/defs.h"
+
 #if wxUSE_BMPBUTTON
 
 #include "wx/bitmap.h"
 #include "wx/button.h"
 
-WXDLLEXPORT_DATA(extern const wxChar*) wxButtonNameStr;
+extern WXDLLEXPORT_DATA(const wxChar*) wxButtonNameStr;
 
 // ----------------------------------------------------------------------------
 // wxBitmapButton: a button which shows bitmaps instead of the usual string.
@@ -59,9 +61,13 @@ public:
     int GetMarginX() const { return m_marginX; }
     int GetMarginY() const { return m_marginY; }
 
+    virtual void ApplyParentThemeBackground(const wxColour& bg)
+        { SetBackgroundColour(bg); }
+
+
 protected:
     // function called when any of the bitmaps changes
-    virtual void OnSetBitmap() { }
+    virtual void OnSetBitmap() { InvalidateBestSize(); Refresh(); }
 
     // the bitmaps for various states
     wxBitmap m_bmpNormal,
@@ -72,10 +78,13 @@ protected:
     // the margins around the bitmap
     int m_marginX,
         m_marginY;
+
 private:
     // Prevent Virtual function hiding warnings
     void SetLabel(const wxString& rsLabel)
-    { wxWindowBase::SetLabel(rsLabel); }
+        { wxWindowBase::SetLabel(rsLabel); }
+
+    DECLARE_NO_COPY_CLASS(wxBitmapButtonBase)
 };
 
 #if defined(__WXUNIVERSAL__)
@@ -88,6 +97,8 @@ private:
     #include "wx/gtk/bmpbuttn.h"
 #elif defined(__WXMAC__)
     #include "wx/mac/bmpbuttn.h"
+#elif defined(__WXCOCOA__)
+    #include "wx/cocoa/bmpbuttn.h"
 #elif defined(__WXPM__)
     #include "wx/os2/bmpbuttn.h"
 #endif