virtual void SetSelection(long from, long to);
virtual void GetSelection(long *from, long *to) const;
- virtual bool AutoComplete(const wxArrayString& choices);
-
virtual bool IsEditable() const;
virtual void SetEditable(bool editable);
virtual bool DoSetMargins(const wxPoint& pt);
virtual wxPoint DoGetMargins() const;
+ virtual bool DoAutoCompleteStrings(const wxArrayString& choices);
+
private:
// implement this to return the associated GtkEntry or another widget
// implementing GtkEditable
{ DoSetSelection(from, to); }
virtual void GetSelection(long *from, long *to) const;
- // auto-completion uses COM under Windows so they won't work without
- // wxUSE_OLE as OleInitialize() is not called then
-#if wxUSE_OLE
- virtual bool AutoComplete(const wxArrayString& choices);
- virtual bool AutoCompleteFileNames();
-#endif // wxUSE_OLE
-
virtual bool IsEditable() const;
virtual void SetEditable(bool editable);
virtual bool DoSetMargins(const wxPoint& pt);
virtual wxPoint DoGetMargins() const;
+ // auto-completion uses COM under Windows so they won't work without
+ // wxUSE_OLE as OleInitialize() is not called then
+#if wxUSE_OLE
+ virtual bool DoAutoCompleteStrings(const wxArrayString& choices);
+ virtual bool DoAutoCompleteFileNames();
+#endif // wxUSE_OLE
+
private:
// implement this to return the HWND of the EDIT control
virtual WXHWND GetEditHWND() const = 0;
// commonly meaning that this functionality is not available under the
// current platform)
- virtual bool AutoComplete(const wxArrayString& WXUNUSED(choices))
- {
- return false;
- }
+ bool AutoComplete(const wxArrayString& choices)
+ { return DoAutoCompleteStrings(choices); }
- virtual bool AutoCompleteFileNames() { return false; }
+ bool AutoCompleteFileNames()
+ { return DoAutoCompleteFileNames(); }
// status
virtual bool DoSetMargins(const wxPoint& pt);
virtual wxPoint DoGetMargins() const;
+ // the derived classes should override these virtual methods to implement
+ // auto-completion, they do the same thing as their public counterparts but
+ // have different names to allow overriding just one of them without hiding
+ // the other one(s)
+ virtual bool DoAutoCompleteStrings(const wxArrayString& WXUNUSED(choices))
+ { return false; }
+ virtual bool DoAutoCompleteFileNames() { return false; }
+
// class which should be used to temporarily disable text change events
//
@see AutoCompleteFileNames()
*/
- virtual bool AutoComplete(const wxArrayString& choices);
+ bool AutoComplete(const wxArrayString& choices);
/**
Call this function to enable auto-completion of the text typed in a
@see AutoComplete()
*/
- virtual bool AutoCompleteFileNames();
+ bool AutoCompleteFileNames();
/**
Returns @true if the selection can be copied to the clipboard.
// auto completion
// ----------------------------------------------------------------------------
-bool wxTextEntry::AutoComplete(const wxArrayString& choices)
+bool wxTextEntry::DoAutoCompleteStrings(const wxArrayString& choices)
{
GtkEntry * const entry = GTK_ENTRY(GetEditable());
wxCHECK_MSG(entry, false, "auto completion doesn't work with this control");
// ----------------------------------------------------------------------------
#if wxUSE_OLE
-bool wxTextEntry::AutoCompleteFileNames()
+bool wxTextEntry::DoAutoCompleteFileNames()
{
#ifdef HAS_AUTOCOMPLETE
typedef HRESULT (WINAPI *SHAutoComplete_t)(HWND, DWORD);
#endif // HAS_AUTOCOMPLETE/!HAS_AUTOCOMPLETE
}
-bool wxTextEntry::AutoComplete(const wxArrayString& choices)
+bool wxTextEntry::DoAutoCompleteStrings(const wxArrayString& choices)
{
#ifdef HAS_AUTOCOMPLETE
// if we had an old enumerator we must reuse it as IAutoComplete doesn't