]>
Commit | Line | Data |
---|---|---|
9ce192d4 RD |
1 | This contrib is the wxStyledTextCtrl, which is a wrapper around the |
2 | Scintilla edit control. (See www.scintilla.org) | |
3 | ||
4 | There is still VERY MUCH to be done, most notable of which is a more | |
b0ad146a | 5 | advanced sample that exercises more of the code. (I haven't tested |
9ce192d4 RD |
6 | AutoComplete or CallTips, or most of the event types at all yet.) And |
7 | also documentation, adding wrappers for some new scintilla | |
8 | functionality, building and testing on wxGTK, etc. Be patient, it all | |
9 | will get there soon. | |
10 | ||
11 | ||
12 | ||
13 | Let me describe a bit about the architecture I am implementing... | |
b0ad146a | 14 | Obviously there is the Platform layer which implements the various |
9ce192d4 RD |
15 | platform classes by using wxWindows classes and filling in where |
16 | needed. Then there is a ScintillaWX class that is derived from | |
17 | ScintillaBase and implements the necessary virtual methods that | |
b0ad146a | 18 | Scintilla needs to fully function. This class however is not meant to |
9ce192d4 RD |
19 | ever be used directly by wx programmers. I call it one end of the |
20 | bridge between the wx and Scintilla worlds. The other end of the | |
21 | bridge is a class called wxStyledTextCtrl that looks, feels and acts | |
22 | like other classes in wxWindows. Here is a diagram: | |
23 | ||
24 | ||
25 | +------------------+ +-------------------+ | |
26 | | wxStyledTextCtrl |--bridge--| ScintillaWX | | |
27 | +------------------+ +-------------------+ | |
28 | | ScintillaBase | | |
29 | +-------------------+ | |
30 | | Editor | | |
31 | +-------------------+ | |
32 | | PlatWX | | |
33 | +-------------------+ | |
34 | ||
35 | ||
36 | wxStyledTextCtrl derives from wxControl so it has a window that can be | |
37 | drawn upon. When a wxStyledTextCtrl is constructed it constructs a | |
38 | ScintillaWX for itself and passes itself to the scintilla object to be | |
39 | set as the wMain and wDraw attributes. All method calls on the STC | |
b0ad146a | 40 | are sent over the bridge in the form of calls to ScintillaWX::WndProc. |
9ce192d4 RD |
41 | All notifications are sent back over the bridge and turned into |
42 | wxEvents. | |
43 | ||
44 | ||
45 | Robin | |
46 | ||
c0b8a8b9 JS |
47 | [SOLARIS NOTE - ellers@iinet.net.au - June 2002] |
48 | ||
49 | On sunos5 (sparc) the stc code breaks if optimisation is turned on (the | |
50 | default). If your release build breaks but the debug build is fine, | |
51 | try reconfiguring with --disable-optimise and rebuilding. If you are using | |
52 | wxPython you will also need to disable optimised compiling. To do this I | |
53 | had to hand modify the python makefile in (prefix)/lib/python2.2/config/Makefile | |
54 | to remove optimisation flags. | |
9ce192d4 | 55 |