X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/9b6dbb09746f8f5ee0549a2ff39ae0ac4c725898..687dcff3a46a55c11851b1cabdbbbef5492a2f5f:/include/wx/motif/statbmp.h diff --git a/include/wx/motif/statbmp.h b/include/wx/motif/statbmp.h index 8045813fc4..cc13cfa02b 100644 --- a/include/wx/motif/statbmp.h +++ b/include/wx/motif/statbmp.h @@ -6,59 +6,78 @@ // Created: 17/09/98 // RCS-ID: $Id$ // Copyright: (c) Julian Smart -// Licence: wxWindows licence +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #ifndef _WX_STATBMP_H_ #define _WX_STATBMP_H_ -#ifdef __GNUG__ +#if defined(__GNUG__) && !defined(__APPLE__) #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) - public: - inline wxStaticBitmap() { } - - inline wxStaticBitmap(wxWindow *parent, wxWindowID id, - 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); - - virtual void SetBitmap(const wxBitmap& bitmap); - - virtual void Command(wxCommandEvent& WXUNUSED(event)) {}; - virtual void ProcessCommand(wxCommandEvent& WXUNUSED(event)) {}; - - void SetSize(int x, int y, int width, int height, int sizeFlags = wxSIZE_AUTO); - - inline wxBitmap& GetBitmap() const { return (wxBitmap&) m_messageBitmap; } - - // overriden base class virtuals - virtual bool AcceptsFocus() const { return FALSE; } - - protected: - wxBitmap m_messageBitmap; + 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) + { + 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); + + virtual void SetBitmap(const wxBitmap& bitmap); + + virtual bool ProcessCommand(wxCommandEvent& WXUNUSED(event)) + { + 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 ChangeBackgroundColour(); + virtual void ChangeForegroundColour(); + +protected: + void DoSetBitmap(); +protected: + wxBitmap m_messageBitmap; + wxBitmap m_messageBitmapOriginal; + wxBitmapCache m_bitmapCache; }; #endif - // _WX_STATBMP_H_ +// _WX_STATBMP_H_