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