From 7529a6b906f1739188dd31c60af8fd742a7acd20 Mon Sep 17 00:00:00 2001 From: XhmikosR Date: Mon, 5 Sep 2016 12:51:54 +0300 Subject: [PATCH] Update Scintilla to v3.6.7. --- scintilla/doc/Design.html | 28 ++++----- scintilla/doc/ScintillaDoc.html | 91 ++++++++++++++++++++++------ scintilla/doc/ScintillaDownload.html | 10 +-- scintilla/doc/ScintillaHistory.html | 90 ++++++++++++++++++++++++++- scintilla/doc/index.html | 12 ++-- scintilla/include/Scintilla.h | 1 + scintilla/include/Scintilla.iface | 1 + scintilla/lexers/LexAbaqus.cxx | 14 ++--- scintilla/lexers/LexCPP.cxx | 17 +++++- scintilla/lexers/LexErrorList.cxx | 4 ++ scintilla/lexers/LexHTML.cxx | 13 +++- scintilla/src/CharClassify.cxx | 2 +- scintilla/src/CharClassify.h | 2 +- scintilla/src/Document.cxx | 2 +- scintilla/src/Document.h | 2 +- scintilla/src/Editor.cxx | 47 ++++++++------ scintilla/src/Editor.h | 3 +- scintilla/src/ScintillaBase.cxx | 2 +- scintilla/src/XPM.cxx | 4 +- scintilla/version.txt | 2 +- scintilla/win32/ScintillaWin.cxx | 2 +- 21 files changed, 261 insertions(+), 88 deletions(-) diff --git a/scintilla/doc/Design.html b/scintilla/doc/Design.html index 9b204b9e..22e1fd98 100644 --- a/scintilla/doc/Design.html +++ b/scintilla/doc/Design.html @@ -87,25 +87,21 @@

the name of a macro on Windows.

- Colour, ColourPair, Palette + ColourDesired

- Colour holds a platform specific colour identifier - COLORREF for Windows and GdkColor for - GTK+. The red, green and blue components that make up the colour are limited to the 8 bits of - precision available on Windows. ColourPairs are used because not all possible colours are - always available. Using an 8 bit colour mode, which is a common setting for both Windows and - GTK+, only 256 colours are possible on the display. Thus when an application asks for a dull - red, say #400000, it may only be allocated an already available colour such as #800000 or - #330000. With 16 or 2 colour modes even less choice is available and the application will - have to use the limited set of already available colours. -

- A Palette object holds a set of colour pairs and can make the appropriate calls to ask to - allocate these colours and to see what the platform has decided will be allowed. + This is a simple class holding an expected colour. It is internally represented as a single + 32 bit integer in BGR format with 8 bits per colour, but also provides a convenient API to fetch + each component separately. + As a platform might not be able to represent the exact desired colour if it doesn't have 24 bit + depth available, it might not actually represent the exact desired colour but select a best fit + that it can actually render. +

Font

- Font holds a platform specific font identifier - HFONT for Windows, GdkFont* for GTK+. It + Font holds a platform specific font identifier - HFONT for Windows, PangoFontDescription* for GTK+. It does not own the identifier and so will not delete the platform font object in its destructor. Client code should call Destroy at appropriate times.

@@ -116,8 +112,8 @@

Surface is an abstraction over each platform's concept of somewhere that graphical drawing operations can be done. It may wrap an already created drawing place such as a window or be used to create a bitmap that can be drawn into and later copied onto another surface. On - Windows it wraps a HDC and possibly a HBITMAP. On GTK+ it wraps a GdkDrawable* and possibly a - GdkPixmap*. Other platform specific objects are created (and correctly destroyed) whenever + Windows it wraps a HDC and possibly a HBITMAP. On GTK+ it wraps a cairo_surface_t*. + Other platform specific objects are created (and correctly destroyed) whenever required to perform drawing actions.

@@ -147,7 +143,7 @@

Menu is a small helper class for constructing popup menus. It contains the platform specific - menu identifier - HMENU for Windows, GtkItemFactory* for GTK+. Most of the work in + menu identifier - HMENU for Windows, GtkMenu* for GTK+. Most of the work in constructing menus requires access to platform events and so is done in the Platform Events and API layer.

diff --git a/scintilla/doc/ScintillaDoc.html b/scintilla/doc/ScintillaDoc.html index c6929a37..36eb6ad1 100644 --- a/scintilla/doc/ScintillaDoc.html +++ b/scintilla/doc/ScintillaDoc.html @@ -1696,9 +1696,14 @@

Multiple Selection and Virtual SpaceSCI_SETVIRTUALSPACEOPTIONS(int virtualSpace)
SCI_GETVIRTUALSPACEOPTIONS
Virtual space can be enabled or disabled for rectangular selections or in other circumstances or in both. - There are two bit flags SCVS_RECTANGULARSELECTION=1 and - SCVS_USERACCESSIBLE=2 which can be set independently. + There are three bit flags SCVS_RECTANGULARSELECTION=1, + SCVS_USERACCESSIBLE=2, and + SCVS_NOWRAPLINESTART=4 which can be set independently. SCVS_NONE=0, the default, disables all use of virtual space.

+

SCVS_NOWRAPLINESTART prevents left arrow movement and selection + from wrapping to the previous line. + This is most commonly desired in conjunction with virtual space but is an independent + setting so works without virtual space.

SCI_SETRECTANGULARSELECTIONMODIFIER(int modifier)
@@ -2718,24 +2723,66 @@

Style definition

SCI_STYLESETCHARACTERSET(SCE_C_STRING, SC_CHARSET_RUSSIAN) would ensure that strings in Russian would display correctly in C and C++ (SCE_C_STRING is the style number used by the C and C++ lexer to display literal strings; it has the value 6). This - feature works differently on Windows and GTK+.

+ feature works differently on Windows and GTK+.
+ The default character set is SC_CHARSET_DEFAULT.

The character sets supported on Windows are:
- SC_CHARSET_ANSI, SC_CHARSET_ARABIC, SC_CHARSET_BALTIC, - SC_CHARSET_CHINESEBIG5, SC_CHARSET_DEFAULT, - SC_CHARSET_EASTEUROPE, SC_CHARSET_GB2312, - SC_CHARSET_GREEK, SC_CHARSET_HANGUL, SC_CHARSET_HEBREW, - SC_CHARSET_JOHAB, SC_CHARSET_MAC, SC_CHARSET_OEM, - SC_CHARSET_RUSSIAN (code page 1251), - SC_CHARSET_SHIFTJIS, SC_CHARSET_SYMBOL, SC_CHARSET_THAI, - SC_CHARSET_TURKISH, and SC_CHARSET_VIETNAMESE.

+ SC_CHARSET_ANSI, + SC_CHARSET_ARABIC, + SC_CHARSET_BALTIC, + SC_CHARSET_CHINESEBIG5, + SC_CHARSET_DEFAULT, + SC_CHARSET_EASTEUROPE, + SC_CHARSET_GB2312, + SC_CHARSET_GREEK, + SC_CHARSET_HANGUL, + SC_CHARSET_HEBREW, + SC_CHARSET_JOHAB, + SC_CHARSET_MAC, + SC_CHARSET_OEM, + SC_CHARSET_RUSSIAN (code page 1251), + SC_CHARSET_SHIFTJIS, + SC_CHARSET_SYMBOL, + SC_CHARSET_THAI, + SC_CHARSET_TURKISH, and + SC_CHARSET_VIETNAMESE.
+ SC_CHARSET_ANSI and SC_CHARSET_DEFAULT specify European Windows + code page 1252 unless the code page is set.

The character sets supported on GTK+ are:
- SC_CHARSET_ANSI, SC_CHARSET_OEM866 (code page 866), SC_CHARSET_CYRILLIC (code page 1251), + SC_CHARSET_ANSI, + SC_CHARSET_DEFAULT (8859-1), + SC_CHARSET_OEM866 (code page 866), + SC_CHARSET_CYRILLIC (code page 1251), + SC_CHARSET_EASTEUROPE, + SC_CHARSET_GB2312, + SC_CHARSET_HANGUL, + SC_CHARSET_RUSSIAN (KOI8-R), + SC_CHARSET_SHIFTJIS, and + SC_CHARSET_8859_15.

+ +

The character sets supported on Cocoa are:
+ SC_CHARSET_8859_15, + SC_CHARSET_ANSI (8859-1), + SC_CHARSET_ARABIC, + SC_CHARSET_BALTIC, + SC_CHARSET_CHINESEBIG5, + SC_CHARSET_CYRILLIC (code page 1251), + SC_CHARSET_DEFAULT (8859-1), SC_CHARSET_EASTEUROPE, - SC_CHARSET_GB2312, SC_CHARSET_HANGUL, - SC_CHARSET_RUSSIAN (KOI8-R), SC_CHARSET_SHIFTJIS, and - SC_CHARSET_8859_15.

+ SC_CHARSET_GB2312, + SC_CHARSET_GREEK, + SC_CHARSET_HANGUL, + SC_CHARSET_HEBREW, + SC_CHARSET_JOHAB, + SC_CHARSET_MAC, + SC_CHARSET_OEM, + SC_CHARSET_RUSSIAN (code page 1251), + SC_CHARSET_SHIFTJIS, + SC_CHARSET_SYMBOL, + SC_CHARSET_THAI, + SC_CHARSET_TURKISH, + SC_CHARSET_VIETNAMESE.

SCI_STYLESETCASE(int styleNumber, int caseMode)
SCI_STYLEGETCASE(int styleNumber)
@@ -3312,7 +3359,14 @@

Other settings

These messages turn buffered drawing on or off and report the buffered drawing state. Buffered drawing draws each line into a bitmap rather than directly to the screen and then copies the bitmap to the screen. This avoids flickering although it does take longer. The default is for - drawing to be buffered.

+ drawing to be buffered on Win32 and GTK+ and to not be buffered on Cocoa and Qt. + Buffered drawing is not supported on Cocoa. +

+ +

Current platforms perform window buffering so it is almost always better for this option to be turned off. + For Win32 and GTK+, client code should turn off buffering at initialisation. + There are some older platforms and unusual modes where buffering may still be useful. +

SCI_SETPHASESDRAW(int phases)
SCI_GETPHASESDRAW
@@ -3989,8 +4043,9 @@

Indicators

Indicators are stored in a format similar to run length encoding which is efficient in both speed and storage for sparse information.

-

An indicator may store different values for each range but currently all values are drawn the same. - In the future, it may be possible to draw different values in different styles.

+

An indicator may store different values for each range but normally all values are drawn the same. + The SCI_INDICSETFLAGS + API may be used to display different colours for different values.

Originally, Scintilla used a different technique for indicators but this has been removed diff --git a/scintilla/doc/ScintillaDownload.html b/scintilla/doc/ScintillaDownload.html index f11d2447..934d2439 100644 --- a/scintilla/doc/ScintillaDownload.html +++ b/scintilla/doc/ScintillaDownload.html @@ -26,9 +26,9 @@ @@ -42,7 +42,7 @@

containing very few restrictions.

- Release 3.6.6 + Release 3.6.7

Source Code @@ -50,8 +50,8 @@

The source code package contains all of the source code for Scintilla but no binary executable code and is available in
    -
  • zip format (1500K) commonly used on Windows
  • -
  • tgz format (1400K) commonly used on Linux and compatible operating systems
  • +
  • zip format (1500K) commonly used on Windows
  • +
  • tgz format (1400K) commonly used on Linux and compatible operating systems
Instructions for building on both Windows and Linux are included in the readme file.

diff --git a/scintilla/doc/ScintillaHistory.html b/scintilla/doc/ScintillaHistory.html index 49cc697c..75851c2c 100644 --- a/scintilla/doc/ScintillaHistory.html +++ b/scintilla/doc/ScintillaHistory.html @@ -490,6 +490,15 @@

+ + + + + + + + +
- + Windows   - + GTK+/Linux   Pavel Sountsov Dirk Lorenzen Kasper B. GraversenChris Mayo
Van de BuggerTse Kit YamSmartShare SystemsMorten Brørup
Alexey Denisovjedailey

@@ -501,6 +510,81 @@

Icons Copyright(C) 1998 by Dean S. Jones
+

+ Release 3.6.7 +

+

Release 3.6.6

@@ -512,7 +596,7 @@

C++ 11 <regex> support built by default. Can be disabled by defining NO_CXX11_REGEX.
  • - SciTE_USERHOME environment variable allows separate location for writable properties files. + SciTE_USERHOME environment variable allows separate location for writeable properties files. Feature #965.
  • @@ -873,7 +957,7 @@

  • The errorlist lexer understands some ANSI escape sequences to change foreground colour and intensity. - This is sufficient to colour diagnotic output from gcc and clang when -fdiagnostics-color set. + This is sufficient to colour diagnostic output from gcc and clang when -fdiagnostics-color set.
  • The errorlist lexer allows the line number to be 0 in GCC errors as some tools report whole file @@ -936,7 +1020,7 @@

  • External interfaces use the Sci_Position and Sci_PositionU typedefs instead of int and unsigned int - to allow for changes to a 64-bit interface on 64-bit plactforms in the future. + to allow for changes to a 64-bit interface on 64-bit platforms in the future. Applications and external lexers should start using the new type names so that they will be compatible when the 64-bit change occurs. There is also Sci_PositionCR (long) for use in the Sci_CharacterRange struct which will diff --git a/scintilla/doc/index.html b/scintilla/doc/index.html index b6547bf0..a0c5a8ae 100644 --- a/scintilla/doc/index.html +++ b/scintilla/doc/index.html @@ -9,7 +9,7 @@ - +