]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/gtk1/statbmp.h
Prevent seg fault for older GTK+
[wxWidgets.git] / include / wx / gtk1 / statbmp.h
index ec24d42deadbc85d6528958b85c30a43b73fabe0..0e7243052258f086365045fa49ffc1d486dd2d0b 100644 (file)
@@ -1,60 +1,59 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        statbmp.h
+// Name:        wx/gtk1/statbmp.h
 // Purpose:
 // Author:      Robert Roebling
-// Created:     01/02/97
-// Id:
-// Copyright:   (c) 1998 Robert Roebling, Julian Smart and Markus Holzem
-// Licence:    wxWindows licence
+// Id:          $Id$
+// Copyright:   (c) 1998 Robert Roebling
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
-
 #ifndef __GTKSTATICBITMAPH__
 #define __GTKSTATICBITMAPH__
 
-#ifdef __GNUG__
-#pragma interface
-#endif
-
-#include "wx/defs.h"
-#include "wx/object.h"
-#include "wx/control.h"
-
-//-----------------------------------------------------------------------------
-// classes
-//-----------------------------------------------------------------------------
-
-class wxStaticBitmap;
-
-//-----------------------------------------------------------------------------
-// global data
-//-----------------------------------------------------------------------------
-
-extern const char* wxStaticBitmapNameStr;
+#include "wx/icon.h"
 
 //-----------------------------------------------------------------------------
 // wxStaticBitmap
 //-----------------------------------------------------------------------------
 
-class wxStaticBitmap: public wxControl
+class WXDLLIMPEXP_CORE wxStaticBitmap : public wxStaticBitmapBase
 {
-  DECLARE_DYNAMIC_CLASS(wxStaticBitmap)
-  
-  public:
-  
-    wxStaticBitmap(void);
-    wxStaticBitmap( wxWindow *parent, const wxWindowID id, const wxBitmap& label,
-      const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize,
-      const long style = 0, const wxString& name = wxStaticBitmapNameStr );
-    bool Create( wxWindow *parent, const wxWindowID id, const wxBitmap& label,
-      const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize,
-      const long style = 0, const wxString& name = wxStaticBitmapNameStr);
+public:
+    wxStaticBitmap();
+    wxStaticBitmap( wxWindow *parent,
+                    wxWindowID id,
+                    const wxBitmap& label,
+                    const wxPoint& pos = wxDefaultPosition,
+                    const wxSize& size = wxDefaultSize,
+                    long style = 0,
+                    const wxString& name = wxStaticBitmapNameStr );
+    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 SetIcon(const wxIcon& icon) { SetBitmap( icon ); }
     virtual void SetBitmap( const wxBitmap& bitmap );
-    wxBitmap& GetBitmap(void) const { return (wxBitmap&)m_bitmap; }
+    virtual wxBitmap GetBitmap() const { return m_bitmap; }
+
+    // for compatibility with wxMSW
+    wxIcon GetIcon() const
+    {
+        // don't use wxDynamicCast, icons and bitmaps are really the same thing
+        // in wxGTK
+        return (const wxIcon &)m_bitmap;
+    }
+
+    static wxVisualAttributes
+    GetClassDefaultAttributes(wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL);
+
+private:
+    wxBitmap   m_bitmap;
 
- private:
-   wxBitmap   m_bitmap;
+    DECLARE_DYNAMIC_CLASS(wxStaticBitmap)
 };
 
 #endif // __GTKSTATICBITMAPH__