]> git.saurik.com Git - wxWidgets.git/blobdiff - src/stc/scintilla/README.txt
Added ability to switch off more components of the size page UI
[wxWidgets.git] / src / stc / scintilla / README.txt
index 27a2157fefb691b7e4f813ea7af517c12bdddb92..6db6698805aae8f540f5f9f14721cee19ab96db3 100644 (file)
@@ -3,5 +3,56 @@ scintilla/include directories from the Scintilla source distribution.
 All other code needed to implement Scintilla on top of wxWidgets is
 located in the directory above this one.
 
 All other code needed to implement Scintilla on top of wxWidgets is
 located in the directory above this one.
 
-The current version of the Scintilla code is 2.03
+The current version of the Scintilla code is 3.21
 
 
+These are the basic steps needed to update the version of Scintilla used by wxSTC.  
+
+1. Copy include, lexers, lexlib and src folders to src/stc/scintilla
+
+2. Examine diffs between the new src/stc/scintilla/Scintilla.iface
+file and the version in SVN.  You should get familiar especially with
+new method names or constants because some of them may need to be
+tweaked to conform to similar naming patterns already used.  (See step
+#5 below.)
+
+3. Identify new source files and update build/bakefiles/scintilla.bkl
+accordingly so the new files will get built.  Use bakefile to
+regenerate the makefiles and project files.
+
+4. Examine changes in src/stc/scintilla/include/Platform.h and
+identify new or changed APIs that the wx "platform" will need to
+provide to the rest of the Scintilla code.  Implement those changes in
+src/stc/PlatWX.cpp.  You can use the win32 version of the platform
+code from the Scintilla source tree as a guide if needed.  You may
+have to make a few tweaks to src/stc/scintilla/include/Platform.h to
+keep the compile working cleanly, but try to keep them minimal.
+
+5. Edit the gen_iface.py file.  This is where the Scintilla.iface file
+is read and the code for stc.h and stc.cpp is generated.  For all new
+methods or constant names check if there are similarly named things
+defined here that are having something special done to them, and then
+do the same sort of thing for those new items.  For example if there
+is a new AutoCFoo method, I add the line in gen_iface.py that will
+cause the AutoCompFoo name to be used instead.  The same for any
+methods dealing with "Fore" or "Back" colors, they are renamed to
+Foreground and Background.  If there is a new method that could be
+considered a "command function" (something that takes no parameters
+and could conceivably be bound to a key event) then I make sure that
+it's ID is in cmdValues or included in one of the existing ranges in
+that list.
+
+6. Run gen_iface.py.
+
+7. Any other new methods should be checked to ensure that the
+generated code is appropriate for what they are doing and if not then
+in gen_iface.py you can supply custom function bodies for them
+instead.
+
+8. Add documentation code for any new methods to
+interface/wx/stc/stc.h, also check any documentation-only changes from
+Scintilla.iface and see if the existing docs for those items should be
+updated too.
+
+9. Build and test.
+
+10. Submit patch to wxTrac.