X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/31528cd3cac75558beef4bce0ba21fd182a808ab..4b412d238281008e248bcdebeae4baf4b67191e7:/include/wx/motif/statbmp.h diff --git a/include/wx/motif/statbmp.h b/include/wx/motif/statbmp.h index 63b5476cac..fc2a64a478 100644 --- a/include/wx/motif/statbmp.h +++ b/include/wx/motif/statbmp.h @@ -12,59 +12,72 @@ #ifndef _WX_STATBMP_H_ #define _WX_STATBMP_H_ -#ifdef __GNUG__ +#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) #pragma interface "statbmp.h" #endif -#include "wx/control.h" +#include "wx/motif/bmpmotif.h" +#include "wx/icon.h" -WXDLLEXPORT_DATA(extern const char*) wxStaticBitmapNameStr; - -class WXDLLEXPORT wxStaticBitmap : public wxControl +class WXDLLEXPORT wxStaticBitmap : public wxStaticBitmapBase { -DECLARE_DYNAMIC_CLASS(wxStaticBitmap) - + DECLARE_DYNAMIC_CLASS(wxStaticBitmap) + public: wxStaticBitmap() { } ~wxStaticBitmap(); - + wxStaticBitmap(wxWindow *parent, wxWindowID id, - const wxBitmap& label, - const wxPoint& pos = wxDefaultPosition, - const wxSize& size = wxDefaultSize, - long style = 0, - const wxString& name = wxStaticBitmapNameStr) + const wxBitmap& label, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + long style = 0, + const wxString& name = wxStaticBitmapNameStr) { Create(parent, id, label, pos, size, style, name); } - + bool Create(wxWindow *parent, wxWindowID id, - const wxBitmap& label, - const wxPoint& pos = wxDefaultPosition, - const wxSize& size = wxDefaultSize, - long style = 0, - const wxString& name = wxStaticBitmapNameStr); - + const wxBitmap& label, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + long style = 0, + const wxString& name = wxStaticBitmapNameStr); + virtual void SetBitmap(const wxBitmap& bitmap); - + virtual bool ProcessCommand(wxCommandEvent& WXUNUSED(event)) { return FALSE; } - - wxBitmap& GetBitmap() const { return (wxBitmap&) m_messageBitmap; } - - // overriden base class virtuals - virtual bool AcceptsFocus() const { return FALSE; } - + + wxBitmap GetBitmap() const { return m_messageBitmap; } + + // for compatibility with wxMSW + wxIcon GetIcon() const + { + // don't use wxDynamicCast, icons and bitmaps are really the same thing + return *(wxIcon*)&m_messageBitmap; + } + + // for compatibility with wxMSW + void SetIcon(const wxIcon& icon) + { + SetBitmap( icon ); + } + // Implementation - virtual void ChangeFont(bool keepOriginalSize = TRUE); virtual void ChangeBackgroundColour(); virtual void ChangeForegroundColour(); + +protected: + void DoSetBitmap(); protected: wxBitmap m_messageBitmap; + wxBitmap m_messageBitmapOriginal; + wxBitmapCache m_bitmapCache; }; #endif - // _WX_STATBMP_H_ +// _WX_STATBMP_H_