]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/gtk1/statbmp.h
Added more '#pragma implementation' for gcc.
[wxWidgets.git] / include / wx / gtk1 / statbmp.h
index ab6e7c331d7f371b45c85bf84c4923aa68b32c4e..f56a5d4d569fd60864b5dfa1a486a246298e34fa 100644 (file)
@@ -4,7 +4,7 @@
 // Author:      Robert Roebling
 // Id:          $Id$
 // Copyright:   (c) 1998 Robert Roebling
-// Licence:    wxWindows licence
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 
 #endif
 
 #include "wx/defs.h"
+
+#if wxUSE_STATBMP
+
 #include "wx/object.h"
 #include "wx/control.h"
 #include "wx/bitmap.h"
+#include "wx/icon.h"
 
 //-----------------------------------------------------------------------------
 // classes
@@ -38,23 +42,54 @@ extern const char* wxStaticBitmapNameStr;
 
 class wxStaticBitmap: public wxControl
 {
-  DECLARE_DYNAMIC_CLASS(wxStaticBitmap)
-  
-  public:
-  
-    wxStaticBitmap(void);
-    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);
+    DECLARE_DYNAMIC_CLASS(wxStaticBitmap)
+
+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 SetBitmap( const wxBitmap& bitmap );
-    wxBitmap& GetBitmap(void) const { return (wxBitmap&)m_bitmap; }
-    
- private:
-   wxBitmap   m_bitmap;
+
+    wxBitmap& GetBitmap() { return m_bitmap; }
+    const wxBitmap& GetBitmap() const { return m_bitmap; }
+
+    // for compatibility with wxMSW
+    const wxIcon& GetIcon() const
+    {
+        // don't use wxDynamicCast, icons and bitmaps are really the same thing
+        // in wxGTK
+        return (const wxIcon &)m_bitmap;
+    }
+
+    // for compatibility with wxMSW
+    void  SetIcon(const wxIcon& icon)
+    {
+        SetBitmap( icon );
+    }
+
+protected:
+    virtual wxSize DoGetBestSize() const;
+
+private:
+    // creates the new pixmap widget
+    void CreatePixmapWidget();
+
+    wxBitmap   m_bitmap;
 };
 
+#endif
+
 #endif // __GTKSTATICBITMAPH__