]> git.saurik.com Git - wxWidgets.git/blob - src/stc/scintilla/src/AutoComplete.h
79d467529134261c3bc2f39bf72fa225b28dfda6
[wxWidgets.git] / src / stc / scintilla / src / AutoComplete.h
1 // Scintilla source code edit control
2 /** @file AutoComplete.h
3 ** Defines the auto completion list box.
4 **/
5 // Copyright 1998-2001 by Neil Hodgson <neilh@scintilla.org>
6 // The License.txt file describes the conditions under which this software may be distributed.
7
8 #ifndef AUTOCOMPLETE_H
9 #define AUTOCOMPLETE_H
10
11 /**
12 */
13 class AutoComplete {
14 bool active;
15 char stopChars[256];
16 char fillUpChars[256];
17 char separator;
18
19 public:
20 bool ignoreCase;
21 bool chooseSingle;
22 ListBox lb;
23 int posStart;
24 int startLen;
25 /// Should autocompletion be canceled if editor's currentPos <= startPos?
26 bool cancelAtStartPos;
27 bool autoHide;
28
29 AutoComplete();
30 ~AutoComplete();
31
32 /// Is the auto completion list displayed?
33 bool Active();
34
35 /// Display the auto completion list positioned to be near a character position
36 void Start(Window &parent, int ctrlID, int position, int startLen_);
37
38 /// The stop chars are characters which, when typed, cause the auto completion list to disappear
39 void SetStopChars(const char *stopChars_);
40 bool IsStopChar(char ch);
41
42 /// The fillup chars are characters which, when typed, fill up the selected word
43 void SetFillUpChars(const char *fillUpChars_);
44 bool IsFillUpChar(char ch);
45
46 /// The separator character is used when interpreting the list in SetList
47 void SetSeparator(char separator_);
48 char GetSeparator();
49
50 /// The list string contains a sequence of words separated by the separator character
51 void SetList(const char *list);
52
53 void Show();
54 void Cancel();
55
56 /// Move the current list element by delta, scrolling appropriately
57 void Move(int delta);
58
59 /// Select a list element that starts with word as the current element
60 void Select(const char *word);
61 };
62
63 #endif