X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/7a71ffc175d4a03d8da5968b13518edb97d5db13..75aa19469b8b31ae58d6e8956b0e4c7200e30578:/include/wx/srchctrl.h diff --git a/include/wx/srchctrl.h b/include/wx/srchctrl.h index 3fdf6ae227..5ec9336f3f 100644 --- a/include/wx/srchctrl.h +++ b/include/wx/srchctrl.h @@ -2,9 +2,8 @@ // Name: srchctrl.h // Purpose: wxSearchCtrlBase class // Author: Vince Harron -// Modified by: // Created: 2006-02-18 -// RCS-ID: +// RCS-ID: $Id$ // Copyright: (c) Vince Harron // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// @@ -18,6 +17,19 @@ #include "wx/textctrl.h" +#if !defined(__WXUNIVERSAL__) && defined(__WXMAC__) && defined(__WXMAC_OSX__) \ + && (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_3) + // search control was introduced in Mac OS X 10.3 Panther + #define wxUSE_NATIVE_SEARCH_CONTROL 1 + + #define wxSearchCtrlBaseBaseClass wxTextCtrl +#else + // no native version, use the generic one + #define wxUSE_NATIVE_SEARCH_CONTROL 0 + + #define wxSearchCtrlBaseBaseClass wxTextCtrlBase +#endif + // ---------------------------------------------------------------------------- // constants // ---------------------------------------------------------------------------- @@ -25,8 +37,8 @@ extern WXDLLEXPORT_DATA(const wxChar) wxSearchCtrlNameStr[]; BEGIN_DECLARE_EVENT_TYPES() - DECLARE_EVENT_TYPE(wxEVT_COMMAND_SEARCHCTRL_CANCEL, 1119) - DECLARE_EVENT_TYPE(wxEVT_COMMAND_SEARCHCTRL_SEARCH, 1120) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_SEARCHCTRL_CANCEL_BTN, 1119) + DECLARE_EVENT_TYPE(wxEVT_COMMAND_SEARCHCTRL_SEARCH_BTN, 1120) END_DECLARE_EVENT_TYPES() // ---------------------------------------------------------------------------- @@ -34,16 +46,26 @@ END_DECLARE_EVENT_TYPES() // it is based on the MacOSX 10.3 control HISearchFieldCreate // ---------------------------------------------------------------------------- -// include the platform-dependent class implementation -#if !defined(__WXUNIVERSAL__) && defined(__WXMAC__) && defined(__WXMAC_OSX__) \ - && (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_3) - // search control was introduced in Mac OS X 10.3 Panther - #define wxUSE_NATIVE_SEARCH_CONTROL 1 -#else - // no native version, use the generic one - #define wxUSE_NATIVE_SEARCH_CONTROL 0 -#endif +class WXDLLEXPORT wxSearchCtrlBase : public wxSearchCtrlBaseBaseClass +{ +public: + wxSearchCtrlBase() { } + virtual ~wxSearchCtrlBase() { } + + // search control + virtual void SetMenu(wxMenu *menu) = 0; + virtual wxMenu *GetMenu() = 0; + + // get/set options + virtual void ShowSearchButton( bool show ) = 0; + virtual bool IsSearchButtonVisible() const = 0; + virtual void ShowCancelButton( bool show ) = 0; + virtual bool IsCancelButtonVisible() const = 0; +}; + + +// include the platform-dependent class implementation #if wxUSE_NATIVE_SEARCH_CONTROL #if defined(__WXMAC__) #include "wx/mac/srchctrl.h" @@ -56,11 +78,11 @@ END_DECLARE_EVENT_TYPES() // macros for handling search events // ---------------------------------------------------------------------------- -#define EVT_SEARCHCTRL_CANCEL(id, fn) \ - wx__DECLARE_EVT1(wxEVT_COMMAND_SEARCHCTRL_CANCEL, id, wxCommandEventHandler(fn)) +#define EVT_SEARCHCTRL_CANCEL_BTN(id, fn) \ + wx__DECLARE_EVT1(wxEVT_COMMAND_SEARCHCTRL_CANCEL_BTN, id, wxCommandEventHandler(fn)) -#define EVT_SEARCHCTRL_SEARCH(id, fn) \ - wx__DECLARE_EVT1(wxEVT_COMMAND_SEARCHCTRL_SEARCH, id, wxCommandEventHandler(fn)) +#define EVT_SEARCHCTRL_SEARCH_BTN(id, fn) \ + wx__DECLARE_EVT1(wxEVT_COMMAND_SEARCHCTRL_SEARCH_BTN, id, wxCommandEventHandler(fn)) #endif // wxUSE_SEARCHCTRL