]> git.saurik.com Git - wxWidgets.git/blob - contrib/src/stc/README.txt
Fixes to allow STC to be built as a DLL
[wxWidgets.git] / contrib / src / stc / README.txt
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
5 advanced sample that exercises more of the code. (I havn't tested
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...
14 Obviously there is the Platform layer which implements the varioius
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
18 Scintilla needs to fully funciton. This class however is not meant to
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
40 are sent over the bridge in the form of calls to ScintiallWX::WndProc.
41 All notifications are sent back over the bridge and turned into
42 wxEvents.
43
44
45 Robin
46
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.
55