X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/8bc333d76d46ce8b3a0077e211ff1485673ae725..38534f596974042130716a26276e9564b0b72295:/include/wx/generic/srchctlg.h diff --git a/include/wx/generic/srchctlg.h b/include/wx/generic/srchctlg.h index 84daadaa38..7ccc89881e 100644 --- a/include/wx/generic/srchctlg.h +++ b/include/wx/generic/srchctlg.h @@ -15,14 +15,14 @@ #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 // ---------------------------------------------------------------------------- -class WXDLLEXPORT wxSearchCtrl : public wxSearchCtrlBase +class WXDLLIMPEXP_CORE wxSearchCtrl : public wxSearchCtrlBase { public: // creation @@ -47,10 +47,12 @@ public: const wxValidator& validator = wxDefaultValidator, const wxString& name = wxSearchCtrlNameStr); +#if wxUSE_MENUS // get/set search button menu // -------------------------- virtual void SetMenu( wxMenu* menu ); virtual wxMenu* GetMenu(); +#endif // wxUSE_MENUS // get/set search options // ---------------------- @@ -60,12 +62,13 @@ public: virtual void ShowCancelButton( bool show ); virtual bool IsCancelButtonVisible() const; + // TODO: In 2.9 these should probably be virtual, and declared in the base class... + void SetDescriptiveText(const wxString& text); + wxString GetDescriptiveText() const; + // 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; @@ -188,14 +191,21 @@ public: // wxWindow overrides virtual bool SetFont(const wxFont& font); + virtual bool SetBackgroundColour(const wxColour& colour); // search control generic only void SetSearchBitmap( const wxBitmap& bitmap ); - void SetSearchMenuBitmap( const wxBitmap& bitmap ); void SetCancelBitmap( const wxBitmap& bitmap ); +#if wxUSE_MENUS + void SetSearchMenuBitmap( const wxBitmap& bitmap ); +#endif // wxUSE_MENUS 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; @@ -209,30 +219,53 @@ protected: 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 ); + + bool HasMenu() const + { +#if wxUSE_MENUS + return m_menu != NULL; +#else // !wxUSE_MENUS + return false; +#endif // wxUSE_MENUS/!wxUSE_MENUS + } private: friend class wxSearchButton; + // Implement pure virtual function inherited from wxCompositeWindow. + virtual wxWindowList GetCompositeWindowParts() const; + +#if wxUSE_MENUS void PopupSearchMenu(); +#endif // wxUSE_MENUS // the subcontrols wxSearchTextCtrl *m_text; wxSearchButton *m_searchButton; wxSearchButton *m_cancelButton; +#if wxUSE_MENUS wxMenu *m_menu; +#endif // wxUSE_MENUS bool m_searchButtonVisible; bool m_cancelButtonVisible; bool m_searchBitmapUser; - bool m_searchMenuBitmapUser; bool m_cancelBitmapUser; +#if wxUSE_MENUS + bool m_searchMenuBitmapUser; +#endif // wxUSE_MENUS + wxBitmap m_searchBitmap; - wxBitmap m_searchMenuBitmap; wxBitmap m_cancelBitmap; +#if wxUSE_MENUS + wxBitmap m_searchMenuBitmap; +#endif // wxUSE_MENUS + private: DECLARE_DYNAMIC_CLASS(wxSearchCtrl)