]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/generic/srchctlg.h
activating DrawRectangle optimization
[wxWidgets.git] / include / wx / generic / srchctlg.h
index d9f42af826b5ab1f77d0ca6858d5802acda4b07b..7ccc89881edd11ccc56da1ff014738983425bc15 100644 (file)
 
 #include "wx/bitmap.h"
 
 
 #include "wx/bitmap.h"
 
-class WXDLLEXPORT wxSearchButton;
-class WXDLLEXPORT wxSearchTextCtrl;
+class WXDLLIMPEXP_FWD_CORE wxSearchButton;
+class WXDLLIMPEXP_FWD_CORE wxSearchTextCtrl;
 
 // ----------------------------------------------------------------------------
 // wxSearchCtrl is a combination of wxTextCtrl and wxSearchButton
 // ----------------------------------------------------------------------------
 
 
 // ----------------------------------------------------------------------------
 // wxSearchCtrl is a combination of wxTextCtrl and wxSearchButton
 // ----------------------------------------------------------------------------
 
-class WXDLLEXPORT wxSearchCtrl : public wxSearchCtrlBase
+class WXDLLIMPEXP_CORE wxSearchCtrl : public wxSearchCtrlBase
 {
 public:
     // creation
 {
 public:
     // creation
@@ -47,10 +47,12 @@ public:
                 const wxValidator& validator = wxDefaultValidator,
                 const wxString& name = wxSearchCtrlNameStr);
 
                 const wxValidator& validator = wxDefaultValidator,
                 const wxString& name = wxSearchCtrlNameStr);
 
+#if wxUSE_MENUS
     // get/set search button menu
     // --------------------------
     virtual void SetMenu( wxMenu* menu );
     virtual wxMenu* GetMenu();
     // get/set search button menu
     // --------------------------
     virtual void SetMenu( wxMenu* menu );
     virtual wxMenu* GetMenu();
+#endif // wxUSE_MENUS
 
     // get/set search options
     // ----------------------
 
     // get/set search options
     // ----------------------
@@ -60,18 +62,13 @@ public:
     virtual void ShowCancelButton( bool show );
     virtual bool IsCancelButtonVisible() const;
 
     virtual void ShowCancelButton( bool show );
     virtual bool IsCancelButtonVisible() const;
 
-#if wxABI_VERSION >= 20802
     // TODO: In 2.9 these should probably be virtual, and declared in the base class...
     void SetDescriptiveText(const wxString& text);
     wxString GetDescriptiveText() const;
     // TODO: In 2.9 these should probably be virtual, and declared in the base class...
     void SetDescriptiveText(const wxString& text);
     wxString GetDescriptiveText() const;
-#endif
 
     // accessors
     // ---------
 
 
     // accessors
     // ---------
 
-    virtual wxString GetValue() const;
-    virtual void SetValue(const wxString& value);
-
     virtual wxString GetRange(long from, long to) const;
 
     virtual int GetLineLength(long lineNo) const;
     virtual wxString GetRange(long from, long to) const;
 
     virtual int GetLineLength(long lineNo) const;
@@ -194,14 +191,21 @@ public:
 
     // wxWindow overrides
     virtual bool SetFont(const wxFont& font);
 
     // wxWindow overrides
     virtual bool SetFont(const wxFont& font);
+    virtual bool SetBackgroundColour(const wxColour& colour);
 
     // search control generic only
     void SetSearchBitmap( const wxBitmap& bitmap );
 
     // search control generic only
     void SetSearchBitmap( const wxBitmap& bitmap );
-    void SetSearchMenuBitmap( const wxBitmap& bitmap );
     void SetCancelBitmap( const wxBitmap& bitmap );
     void SetCancelBitmap( const wxBitmap& bitmap );
+#if wxUSE_MENUS
+    void SetSearchMenuBitmap( const wxBitmap& bitmap );
+#endif // wxUSE_MENUS
 
 protected:
 
 protected:
-    virtual void DoSetValue(const wxString& value, int flags = 0);
+    virtual void DoSetValue(const wxString& value, int flags);
+    virtual wxString DoGetValue() const;
+
+    virtual bool DoLoadFile(const wxString& file, int fileType);
+    virtual bool DoSaveFile(const wxString& file, int fileType);
 
     // override the base class virtuals involved into geometry calculations
     virtual wxSize DoGetBestSize() const;
 
     // override the base class virtuals involved into geometry calculations
     virtual wxSize DoGetBestSize() const;
@@ -215,31 +219,53 @@ protected:
     virtual wxBitmap RenderSearchBitmap( int x, int y, bool renderDrop );
     virtual wxBitmap RenderCancelBitmap( int x, int y );
 
     virtual wxBitmap RenderSearchBitmap( int x, int y, bool renderDrop );
     virtual wxBitmap RenderCancelBitmap( int x, int y );
 
-    virtual void OnSearchButton( wxCommandEvent& event );
+    void OnCancelButton( wxCommandEvent& event );
 
     void OnSetFocus( wxFocusEvent& event );
     void OnSize( wxSizeEvent& event );
 
     void OnSetFocus( wxFocusEvent& event );
     void OnSize( wxSizeEvent& event );
-    
+
+    bool HasMenu() const
+    {
+#if wxUSE_MENUS
+        return m_menu != NULL;
+#else // !wxUSE_MENUS
+        return false;
+#endif // wxUSE_MENUS/!wxUSE_MENUS
+    }
+
 private:
     friend class wxSearchButton;
 
 private:
     friend class wxSearchButton;
 
+    // Implement pure virtual function inherited from wxCompositeWindow.
+    virtual wxWindowList GetCompositeWindowParts() const;
+
+#if wxUSE_MENUS
     void PopupSearchMenu();
     void PopupSearchMenu();
+#endif // wxUSE_MENUS
 
     // the subcontrols
     wxSearchTextCtrl *m_text;
     wxSearchButton *m_searchButton;
     wxSearchButton *m_cancelButton;
 
     // the subcontrols
     wxSearchTextCtrl *m_text;
     wxSearchButton *m_searchButton;
     wxSearchButton *m_cancelButton;
+#if wxUSE_MENUS
     wxMenu *m_menu;
     wxMenu *m_menu;
+#endif // wxUSE_MENUS
 
     bool m_searchButtonVisible;
     bool m_cancelButtonVisible;
 
     bool m_searchBitmapUser;
 
     bool m_searchButtonVisible;
     bool m_cancelButtonVisible;
 
     bool m_searchBitmapUser;
-    bool m_searchMenuBitmapUser;
     bool m_cancelBitmapUser;
     bool m_cancelBitmapUser;
+#if wxUSE_MENUS
+    bool m_searchMenuBitmapUser;
+#endif // wxUSE_MENUS
+
     wxBitmap m_searchBitmap;
     wxBitmap m_searchBitmap;
-    wxBitmap m_searchMenuBitmap;
     wxBitmap m_cancelBitmap;
     wxBitmap m_cancelBitmap;
+#if wxUSE_MENUS
+    wxBitmap m_searchMenuBitmap;
+#endif // wxUSE_MENUS
+
 private:
     DECLARE_DYNAMIC_CLASS(wxSearchCtrl)
 
 private:
     DECLARE_DYNAMIC_CLASS(wxSearchCtrl)