]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/panel.h
Implement SelectAll for OSX WebKit.
[wxWidgets.git] / include / wx / panel.h
index 396a2af9cf4ce4657a426cab1a0f3cdabeb0def5..bb93a5771ba5fe28a498d308a02ed0b122615dad 100644 (file)
@@ -28,10 +28,10 @@ extern WXDLLIMPEXP_DATA_CORE(const char) wxPanelNameStr[];
 // wxPanel contains other controls and implements TAB traversal between them
 // ----------------------------------------------------------------------------
 
-class WXDLLIMPEXP_CORE wxPanelBase : public wxWindow
+class WXDLLIMPEXP_CORE wxPanelBase : public wxNavigationEnabled<wxWindow>
 {
 public:
-    wxPanelBase();
+    wxPanelBase() { }
 
     // Derived classes should also provide this constructor:
     /*
@@ -52,16 +52,27 @@ public:
                 const wxString& name = wxPanelNameStr);
 
 
+    // Use the given bitmap to tile the background of this panel. This bitmap
+    // will show through any transparent children.
+    //
+    // Notice that you must not prevent the base class EVT_ERASE_BACKGROUND
+    // handler from running (i.e. not to handle this event yourself) for this
+    // to work.
+    void SetBackgroundBitmap(const wxBitmap& bmp)
+    {
+        DoSetBackgroundBitmap(bmp);
+    }
+
+
     // implementation from now on
     // --------------------------
 
     virtual void InitDialog();
 
-    WX_DECLARE_CONTROL_CONTAINER();
+protected:
+    virtual void DoSetBackgroundBitmap(const wxBitmap& bmp) = 0;
 
 private:
-    wxDECLARE_EVENT_TABLE();
-
     wxDECLARE_NO_COPY_CLASS(wxPanelBase);
 };
 
@@ -70,6 +81,7 @@ private:
 #elif defined(__WXMSW__)
     #include "wx/msw/panel.h"
 #else
+    #define wxHAS_GENERIC_PANEL
     #include "wx/generic/panelg.h"
 #endif