#ifndef _WX_BMPBUTTN_H_
#define _WX_BMPBUTTN_H_
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "bmpbuttn.h"
#endif
-#include "wx/button.h"
-
-WXDLLEXPORT_DATA(extern const char*) wxButtonNameStr;
+#include "wx/motif/bmpmotif.h"
#define wxDEFAULT_BUTTON_MARGIN 4
-class WXDLLEXPORT wxBitmapButton: public wxButton
+class WXDLLEXPORT wxBitmapButton: public wxBitmapButtonBase
{
DECLARE_DYNAMIC_CLASS(wxBitmapButton)
public:
wxBitmapButton();
~wxBitmapButton();
- inline wxBitmapButton(wxWindow *parent, wxWindowID id, const wxBitmap& bitmap,
+ wxBitmapButton(wxWindow *parent, wxWindowID id, const wxBitmap& bitmap,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize, long style = wxBU_AUTODRAW,
const wxValidator& validator = wxDefaultValidator,
virtual void SetBitmapLabel(const wxBitmap& bitmap);
- inline wxBitmap& GetBitmapLabel() const { return (wxBitmap&) m_buttonBitmap; }
- inline wxBitmap& GetBitmapSelected() const { return (wxBitmap&) m_buttonBitmapSelected; }
- inline wxBitmap& GetBitmapFocus() const { return (wxBitmap&) m_buttonBitmapFocus; }
- inline wxBitmap& GetBitmapDisabled() const { return (wxBitmap&) m_buttonBitmapDisabled; }
-
void SetBitmapSelected(const wxBitmap& sel);
void SetBitmapFocus(const wxBitmap& focus);
void SetBitmapDisabled(const wxBitmap& disabled);
- inline void SetMargins(int x, int y) { m_marginX = x; m_marginY = y; }
- inline int GetMarginX() { return m_marginX; }
- inline int GetMarginY() { return m_marginY; }
-
// Implementation
void DoSetBitmap();
virtual void ChangeBackgroundColour();
+ virtual wxSize DoGetBestSize() const;
protected:
- wxBitmap m_buttonBitmapFocus;
- wxBitmap m_buttonBitmap;
- wxBitmap m_buttonBitmapOriginal; // May be different from m_buttonBitmap
+ wxBitmap m_bmpNormalOriginal; // May be different from m_buttonBitmap
// if m_buttonBitmap has been changed
// to reflect button background colour
- wxBitmap m_buttonBitmapSelected;
- wxBitmap m_buttonBitmapSelectedOriginal;
-
- wxBitmap m_buttonBitmapDisabled;
- wxBitmap m_buttonBitmapDisabledOriginal;
-
- int m_marginX;
- int m_marginY;
-
+ wxBitmap m_bmpSelectedOriginal;
+ wxBitmap m_bmpDisabledOriginal;
+
+ wxBitmapCache m_bitmapCache;
+
WXPixmap m_insensPixmap;
};