]>
git.saurik.com Git - wxWidgets.git/blob - src/stc/scintilla/src/ScintillaBase.h
1 // Scintilla source code edit control
2 // ScintillaBase.h - defines an enhanced subclass of Editor with calltips, autocomplete and context menu
3 // Copyright 1998-2000 by Neil Hodgson <neilh@scintilla.org>
4 // The License.txt file describes the conditions under which this software may be distributed.
6 #ifndef SCINTILLABASE_H
7 #define SCINTILLABASE_H
9 class ScintillaBase
: public Editor
{
11 // Enumeration of commands and child windows
33 enum {numWordLists
=5};
34 WordList
*keyWordLists
[numWordLists
];
35 void Colourise(int start
, int end
);
39 virtual ~ScintillaBase();
40 virtual void Initialise() = 0;
41 virtual void Finalise() = 0;
43 virtual void RefreshColourPalette(Palette
&pal
, bool want
);
45 virtual void AddChar(char ch
);
46 void Command(int cmdId
);
47 virtual int KeyCommand(UINT iMessage
);
49 void AutoCompleteStart(int lenEntered
, const char *list
);
50 void AutoCompleteCancel();
51 void AutoCompleteMove(int delta
);
52 void AutoCompleteChanged(char ch
=0);
53 void AutoCompleteCompleted();
55 virtual void CreateCallTipWindow(PRectangle rc
) = 0;
57 virtual void AddToPopUp(const char *label
, int cmd
=0, bool enabled
=true) = 0;
58 void ContextMenu(Point pt
);
60 virtual void ButtonDown(Point pt
, unsigned int curTime
, bool shift
, bool ctrl
, bool alt
);
62 virtual void NotifyStyleNeeded(int endStyleNeeded
);
64 // Public so scintilla_send_message can use it
65 virtual LRESULT
WndProc(UINT iMessage
, WPARAM wParam
, LPARAM lParam
);