1 ///////////////////////////////////////////////////////////////////////////////
2 // Name: wx/textcompleter.h
3 // Purpose: Declaration of wxTextCompleter class.
4 // Author: Vadim Zeitlin
6 // RCS-ID: $Id: wxhead.h,v 1.12 2010-04-22 12:44:51 zeitlin Exp $
7 // Copyright: (c) 2011 Vadim Zeitlin <vadim@wxwidgets.org>
8 // Licence: wxWindows licence
9 ///////////////////////////////////////////////////////////////////////////////
11 #ifndef _WX_TEXTCOMPLETER_H_
12 #define _WX_TEXTCOMPLETER_H_
14 // ----------------------------------------------------------------------------
15 // wxTextCompleter: used by wxTextEnter::AutoComplete()
16 // ----------------------------------------------------------------------------
18 class WXDLLIMPEXP_CORE wxTextCompleter
23 // The virtual functions to be implemented by the derived classes: the
24 // first one is called to start preparing for completions for the given
25 // prefix and, if it returns true, GetNext() is called until it returns an
26 // empty string indicating that there are no more completions.
27 virtual bool Start(const wxString
& prefix
) = 0;
28 virtual wxString
GetNext() = 0;
30 virtual ~wxTextCompleter();
33 wxDECLARE_NO_COPY_CLASS(wxTextCompleter
);
36 // ----------------------------------------------------------------------------
37 // wxTextCompleterSimple: returns the entire set of completions at once
38 // ----------------------------------------------------------------------------
40 class WXDLLIMPEXP_CORE wxTextCompleterSimple
: public wxTextCompleter
43 wxTextCompleterSimple() { }
45 // Must be implemented to return all the completions for the given prefix.
46 virtual void GetCompletions(const wxString
& prefix
, wxArrayString
& res
) = 0;
48 virtual bool Start(const wxString
& prefix
);
49 virtual wxString
GetNext();
52 wxArrayString m_completions
;
55 wxDECLARE_NO_COPY_CLASS(wxTextCompleterSimple
);
58 #endif // _WX_TEXTCOMPLETER_H_