#ifndef _WX_STATBMP_H_BASE_
#define _WX_STATBMP_H_BASE_
-#ifdef __GNUG__
- #pragma interface "statbmpbase.h"
-#endif
+#include "wx/defs.h"
#if wxUSE_STATBMP
#include "wx/control.h"
#include "wx/bitmap.h"
+#include "wx/icon.h"
-class WXDLLEXPORT wxIcon;
-class WXDLLEXPORT wxBitmap;
-
-WXDLLEXPORT_DATA(extern const wxChar*) wxStaticBitmapNameStr;
+extern WXDLLEXPORT_DATA(const wxChar*) wxStaticBitmapNameStr;
// a control showing an icon or a bitmap
class WXDLLEXPORT wxStaticBitmapBase : public wxControl
{
- public:
-#ifdef __DARWIN__
- ~wxStaticBitmapBase() { }
-#endif
-
+public:
+ wxStaticBitmapBase() { }
+ virtual ~wxStaticBitmapBase();
+
// our interface
virtual void SetIcon(const wxIcon& icon) = 0;
virtual void SetBitmap(const wxBitmap& bitmap) = 0;
virtual wxBitmap GetBitmap() const = 0;
+ virtual wxIcon GetIcon() const /* = 0 -- should be pure virtual */
+ {
+ // stub it out here for now as not all ports implement it (but they
+ // should)
+ return wxIcon();
+ }
// overriden base class virtuals
- virtual bool AcceptsFocus() const { return FALSE; }
+ virtual bool AcceptsFocus() const { return false; }
+ virtual bool HasTransparentBackground() { return true; }
protected:
- virtual wxSize DoGetBestClientSize() const;
+ virtual wxSize DoGetBestSize() const;
+
+ DECLARE_NO_COPY_CLASS(wxStaticBitmapBase)
};
#if defined(__WXUNIVERSAL__)
#include "wx/motif/statbmp.h"
#elif defined(__WXGTK__)
#include "wx/gtk/statbmp.h"
-#elif defined(__WXQT__)
- #include "wx/qt/statbmp.h"
#elif defined(__WXMAC__)
#include "wx/mac/statbmp.h"
+#elif defined(__WXCOCOA__)
+ #include "wx/cocoa/statbmp.h"
#elif defined(__WXPM__)
#include "wx/os2/statbmp.h"
-#elif defined(__WXSTUBS__)
- #include "wx/stubs/statbmp.h"
#endif
#endif // wxUSE_STATBMP