mirror of
https://github.com/rizonesoft/Notepad3.git
synced 2026-06-11 21:03:05 +08:00
Updated to Scintilla 3.6.6
Updated to Scintilla 3.6.6
This commit is contained in:
parent
124ab91e84
commit
ad74a36002
@ -65,8 +65,6 @@ IF "%~1" == "" (
|
||||
|
||||
|
||||
:START
|
||||
IF EXIST "%~dp0..\signinfo_notepad2-mod.txt" SET "SIGN=True"
|
||||
|
||||
SET INPUTDIRx86=Bin\Release_x86
|
||||
SET INPUTDIRx64=Bin\Release_x64
|
||||
IF /I NOT "%COMPILER%" == "VS2015" SET SUFFIX=_%COMPILER%
|
||||
@ -75,9 +73,6 @@ SET "TEMP_NAME=temp_zip%SUFFIX%"
|
||||
IF NOT EXIST "..\%INPUTDIRx86%\Notepad3.exe" CALL :SUBMSG "ERROR" "Compile Notepad3 x86 first!"
|
||||
IF NOT EXIST "..\%INPUTDIRx64%\Notepad3.exe" CALL :SUBMSG "ERROR" "Compile Notepad3 x64 first!"
|
||||
|
||||
IF /I "%SIGN%" == "True" CALL :SubSign %INPUTDIRx86%
|
||||
IF /I "%SIGN%" == "True" CALL :SubSign %INPUTDIRx64%
|
||||
|
||||
CALL :SubInstaller %COMPILER%
|
||||
|
||||
|
||||
@ -92,7 +87,7 @@ EXIT /B
|
||||
TITLE Building %1 installer...
|
||||
CALL :SUBMSG "INFO" "Building %1 installer using %InnoSetupPath%\ISCC.exe..."
|
||||
|
||||
"%InnoSetupPath%\ISCC.exe" /Q /O "packages" "..\distrib\notepad3_setup.iss" /D%1
|
||||
"%InnoSetupPath%\ISCC.exe" /SMySignTool="cmd /c "%~dp0sign.bat" $f" /Q /O"packages" "..\distrib\notepad3_setup.iss" /D%1
|
||||
IF %ERRORLEVEL% NEQ 0 CALL :SUBMSG "ERROR" "Compilation failed!"
|
||||
|
||||
EXIT /B
|
||||
|
||||
@ -7,7 +7,7 @@ Language=CPlusPlus
|
||||
Major=auto
|
||||
Minor=auto
|
||||
Maintenance=auto
|
||||
Build=302
|
||||
Build=305
|
||||
|
||||
[CSharp]
|
||||
AssemConfig=Rizonesoft.Voice.Win\Properties\AssemblyInfo.cs.conf
|
||||
|
||||
12
distrib/Changes.txt
Normal file
12
distrib/Changes.txt
Normal file
@ -0,0 +1,12 @@
|
||||
Notepad3 Build 0000 (11 June 2016)
|
||||
================================================================================
|
||||
- Fixed Compiler warnings
|
||||
- Updated to Scintilla 3.6.6
|
||||
-
|
||||
-
|
||||
-
|
||||
-
|
||||
-
|
||||
-
|
||||
-
|
||||
-
|
||||
@ -1,4 +1,4 @@
|
||||
[Version]
|
||||
Build=72
|
||||
Build=73
|
||||
VersionHeader=src\VersionEx.h
|
||||
ManifestConfig=res\MiniPath.exe.manifest.conf
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
<assemblyIdentity
|
||||
name="MiniPath"
|
||||
processorArchitecture="*"
|
||||
version="0.0.7.72"
|
||||
version="0.0.7.73"
|
||||
type="win32"
|
||||
/>
|
||||
<description>metapath</description>
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
#define VERSION_MAJOR 0
|
||||
#define VERSION_MINOR 0
|
||||
#define VERSION_REV 7
|
||||
#define VERSION_BUILD 72
|
||||
#define VERSION_BUILD 73
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
<assemblyIdentity
|
||||
name="Notepad3"
|
||||
processorArchitecture="*"
|
||||
version="0.3.0.302"
|
||||
version="0.3.0.305"
|
||||
type="win32"
|
||||
/>
|
||||
<description>Notepad3</description>
|
||||
|
||||
@ -23,7 +23,6 @@
|
||||
<ProjectGuid>{5877B917-512B-49F5-B514-1B4159E7A9CA}</ProjectGuid>
|
||||
<ProjectName>Scintilla</ProjectName>
|
||||
<RootNamespace>Scintilla</RootNamespace>
|
||||
<WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
@ -81,35 +80,35 @@
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\bin\VS2012\$(Configuration)_x86\obj\scintilla\</OutDir>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32' And '$(VisualStudioVersion)'=='10.0'">..\bin\VS2010\$(Configuration)_x86\obj\scintilla\</OutDir>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32' And '$(VisualStudioVersion)'=='12.0'">..\bin\VS2013\$(Configuration)_x86\obj\scintilla\</OutDir>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32' And '$(VisualStudioVersion)'=='14.0'">..\Bin\$(Configuration)_x86\obj\scintilla\</OutDir>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32' And '$(VisualStudioVersion)'=='14.0'">..\bin\VS2015\$(Configuration)_x86\obj\scintilla\</OutDir>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\bin\VS2012\$(Configuration)_x64\obj\scintilla\</OutDir>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64' And '$(VisualStudioVersion)'=='10.0'">..\bin\VS2010\$(Configuration)_x64\obj\scintilla\</OutDir>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64' And '$(VisualStudioVersion)'=='12.0'">..\bin\VS2013\$(Configuration)_x64\obj\scintilla\</OutDir>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64' And '$(VisualStudioVersion)'=='14.0'">..\Bin\$(Configuration)_x64\obj\scintilla\</OutDir>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64' And '$(VisualStudioVersion)'=='14.0'">..\bin\VS2015\$(Configuration)_x64\obj\scintilla\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\bin\VS2012\$(Configuration)_x86\obj\scintilla\</IntDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32' And '$(VisualStudioVersion)'=='10.0'">..\bin\VS2010\$(Configuration)_x86\obj\scintilla\</IntDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32' And '$(VisualStudioVersion)'=='12.0'">..\bin\VS2013\$(Configuration)_x86\obj\scintilla\</IntDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32' And '$(VisualStudioVersion)'=='14.0'">..\Bin\$(Configuration)_x86\obj\scintilla\</IntDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32' And '$(VisualStudioVersion)'=='14.0'">..\bin\VS2015\$(Configuration)_x86\obj\scintilla\</IntDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\bin\VS2012\$(Configuration)_x64\obj\scintilla\</IntDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64' And '$(VisualStudioVersion)'=='10.0'">..\bin\VS2010\$(Configuration)_x64\obj\scintilla\</IntDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64' And '$(VisualStudioVersion)'=='12.0'">..\bin\VS2013\$(Configuration)_x64\obj\scintilla\</IntDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64' And '$(VisualStudioVersion)'=='14.0'">..\Bin\$(Configuration)_x64\obj\scintilla\</IntDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64' And '$(VisualStudioVersion)'=='14.0'">..\bin\VS2015\$(Configuration)_x64\obj\scintilla\</IntDir>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\bin\VS2012\$(Configuration)_x86\obj\scintilla\</OutDir>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32' And '$(VisualStudioVersion)'=='10.0'">..\bin\VS2010\$(Configuration)_x86\obj\scintilla\</OutDir>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32' And '$(VisualStudioVersion)'=='12.0'">..\bin\VS2013\$(Configuration)_x86\obj\scintilla\</OutDir>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32' And '$(VisualStudioVersion)'=='14.0'">..\Bin\$(Configuration)_x86\obj\scintilla\</OutDir>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32' And '$(VisualStudioVersion)'=='14.0'">..\bin\VS2015\$(Configuration)_x86\obj\scintilla\</OutDir>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\bin\VS2012\$(Configuration)_x64\obj\scintilla\</OutDir>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64' And '$(VisualStudioVersion)'=='10.0'">..\bin\VS2010\$(Configuration)_x64\obj\scintilla\</OutDir>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64' And '$(VisualStudioVersion)'=='12.0'">..\bin\VS2013\$(Configuration)_x64\obj\scintilla\</OutDir>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64' And '$(VisualStudioVersion)'=='14.0'">..\Bin\$(Configuration)_x64\obj\scintilla\</OutDir>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64' And '$(VisualStudioVersion)'=='14.0'">..\bin\VS2015\$(Configuration)_x64\obj\scintilla\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\bin\VS2012\$(Configuration)_x86\obj\scintilla\</IntDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32' And '$(VisualStudioVersion)'=='10.0'">..\bin\VS2010\$(Configuration)_x86\obj\scintilla\</IntDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32' And '$(VisualStudioVersion)'=='12.0'">..\bin\VS2013\$(Configuration)_x86\obj\scintilla\</IntDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32' And '$(VisualStudioVersion)'=='14.0'">..\Bin\$(Configuration)_x86\obj\scintilla\</IntDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32' And '$(VisualStudioVersion)'=='14.0'">..\bin\VS2015\$(Configuration)_x86\obj\scintilla\</IntDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\bin\VS2012\$(Configuration)_x64\obj\scintilla\</IntDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64' And '$(VisualStudioVersion)'=='10.0'">..\bin\VS2010\$(Configuration)_x64\obj\scintilla\</IntDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64' And '$(VisualStudioVersion)'=='12.0'">..\bin\VS2013\$(Configuration)_x64\obj\scintilla\</IntDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64' And '$(VisualStudioVersion)'=='14.0'">..\Bin\$(Configuration)_x64\obj\scintilla\</IntDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64' And '$(VisualStudioVersion)'=='14.0'">..\bin\VS2015\$(Configuration)_x64\obj\scintilla\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
|
||||
@ -395,6 +395,9 @@
|
||||
<ClInclude Include="src\XPM.h">
|
||||
<Filter>src</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="win32\HanjaDic.h">
|
||||
<Filter>win32</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="win32\PlatWin.h">
|
||||
<Filter>win32</Filter>
|
||||
</ClInclude>
|
||||
|
||||
@ -7,7 +7,6 @@ useInitializationList
|
||||
|
||||
// Some non-explicit constructors are used for conversions or are private to lexers
|
||||
noExplicitConstructor
|
||||
noExplicitCopyMoveConstructor
|
||||
|
||||
// cppcheck does not understand private methods can be called from static methods
|
||||
unusedPrivateFunction:scintilla/win32/PlatWin.cxx
|
||||
@ -34,7 +33,6 @@ variableScope:scintilla/lexers/LexPB.cxx
|
||||
variableScope:scintilla/lexers/LexRuby.cxx
|
||||
uninitMemberVar:scintilla/lexers/LexRuby.cxx
|
||||
variableScope:scintilla/lexers/LexSpecman.cxx
|
||||
unreadVariable:scintilla/lexers/LexSpice.cxx
|
||||
clarifyCalculation:scintilla/lexers/LexTADS3.cxx
|
||||
invalidscanf:scintilla/lexers/LexTCMD.cxx
|
||||
variableScope:scintilla/lexers/LexTeX.cxx
|
||||
|
||||
@ -145,8 +145,7 @@
|
||||
<p>
|
||||
Do not use old C style casts like (char *)s. Instead use the most strict form of C++
|
||||
cast possible like const_cast<char *>(s). Use static_cast and const_cast
|
||||
where possible rather than reinterpret_cast. Because the code is compiled with
|
||||
run-time type information turned off, dynamic_cast will not work.
|
||||
where possible rather than reinterpret_cast.
|
||||
</p>
|
||||
<p>
|
||||
The benefit to using the new style casts is that they explicitly detail what evil is
|
||||
|
||||
@ -82,7 +82,7 @@
|
||||
|
||||
<h1>Scintilla Documentation</h1>
|
||||
|
||||
<p>Last edited 6 January 2016 NH</p>
|
||||
<p>Last edited 8 May 2016 NH</p>
|
||||
|
||||
<p>There is <a class="jump" href="Design.html">an overview of the internal design of
|
||||
Scintilla</a>.<br />
|
||||
@ -623,8 +623,9 @@ struct Sci_TextRange {
|
||||
<p>
|
||||
The base regular expression support
|
||||
is limited and should only be used for simple cases and initial development.
|
||||
<span class="provisional">When using a C++11 compliant compiler and runtime, it may be possible to use the
|
||||
runtime's implementation of <regex> by compiling Scintilla with <code>CXX11_REGEX</code> defined.</span>
|
||||
The C++ runtime <regex> library may be used by setting the <code>SCFIND_CXX11REGEX</code> search flag.
|
||||
When using an older C++ compiler that does not support C++11, this may be turned off by
|
||||
compiling Scintilla with <code>NO_CXX11_REGEX</code> defined.
|
||||
A different regular expression
|
||||
library can be <a class="jump" href="#AlternativeRegEx">integrated into Scintilla</a>
|
||||
or can be called from the container using direct access to the buffer contents through
|
||||
@ -743,29 +744,32 @@ struct Sci_TextRange {
|
||||
<tr>
|
||||
<td><code>SCFIND_REGEXP</code></td>
|
||||
|
||||
<td>The search string should be interpreted as a regular expression.</td>
|
||||
<td>The search string should be interpreted as a regular expression.
|
||||
Uses Scintilla's base implementation unless combined with <code>SCFIND_CXX11REGEX</code>.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><code>SCFIND_POSIX</code></td>
|
||||
|
||||
<td>Treat regular expression in a more POSIX compatible manner
|
||||
by interpreting bare ( and ) for tagged sections rather than \( and \).</td>
|
||||
by interpreting bare ( and ) for tagged sections rather than \( and \).
|
||||
Has no effect when <code>SCFIND_CXX11REGEX</code> is set.</td>
|
||||
</tr>
|
||||
<tr class="provisional">
|
||||
<tr>
|
||||
<td><code>SCFIND_CXX11REGEX</code></td>
|
||||
|
||||
<td>When compiled with <code>CXX11_REGEX</code> this flag
|
||||
may be set to use <regex> instead of Scintilla's basic regular expressions.
|
||||
If the regular expression is invalid then -1 is returned and status is set to
|
||||
<code>SC_STATUS_WARN_REGEX</code>.
|
||||
The ECMAScript flag is set on the regex object and UTF-8 documents will exhibit Unicode-compliant
|
||||
behaviour. For MSVC, where wchar_t is 16-bits, the reular expression ".." will match a single
|
||||
astral-plane character. There may be other differences between compilers.</td>
|
||||
<td>This flag may be set to use C++11 <regex> instead of Scintilla's basic regular expressions.
|
||||
If the regular expression is invalid then -1 is returned and status is set to
|
||||
<code>SC_STATUS_WARN_REGEX</code>.
|
||||
The ECMAScript flag is set on the regex object and UTF-8 documents will exhibit Unicode-compliant
|
||||
behaviour. For MSVC, where wchar_t is 16-bits, the reular expression ".." will match a single
|
||||
astral-plane character. There may be other differences between compilers.
|
||||
Must also have <code>SCFIND_REGEXP</code> set.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<p>In a regular expression, special characters interpreted are:</p>
|
||||
<p>In a regular expression, using Scintilla's base implementation,
|
||||
special characters interpreted are:</p>
|
||||
|
||||
<table border="0" summary="Regular expression synopsis">
|
||||
<tbody>
|
||||
@ -860,6 +864,10 @@ struct Sci_TextRange {
|
||||
|
||||
<p>Regular expressions will only match ranges within a single line, never matching over multiple lines.</p>
|
||||
|
||||
<p>When using <code>SCFIND_CXX11REGEX</code> more features are available,
|
||||
generally similar to regular expression support in JavaScript.
|
||||
See the documentation of your C++ runtime for details on what is supported.</p>
|
||||
|
||||
<code><a class="message" href="#SCI_FINDTEXT">SCI_FINDTEXT(int flags, Sci_TextToFind
|
||||
*ttf)</a><br />
|
||||
<a class="message" href="#SCI_SEARCHANCHOR">SCI_SEARCHANCHOR</a><br />
|
||||
@ -1020,7 +1028,7 @@ struct Sci_TextToFind {
|
||||
<td>Generic failure</td>
|
||||
</tr>
|
||||
|
||||
<tr class="provisional">
|
||||
<tr>
|
||||
<th align="left">SC_STATUS_BADALLOC</th>
|
||||
<td>2</td>
|
||||
<td>Memory is exhausted</td>
|
||||
@ -1137,8 +1145,6 @@ struct Sci_TextToFind {
|
||||
<code><a class="message" href="#SCI_GETTEXTLENGTH">SCI_GETTEXTLENGTH</a><br />
|
||||
<a class="message" href="#SCI_GETLENGTH">SCI_GETLENGTH</a><br />
|
||||
<a class="message" href="#SCI_GETLINECOUNT">SCI_GETLINECOUNT</a><br />
|
||||
<a class="message" href="#SCI_SETFIRSTVISIBLELINE">SCI_SETFIRSTVISIBLELINE(int lineDisplay)</a><br />
|
||||
<a class="message" href="#SCI_GETFIRSTVISIBLELINE">SCI_GETFIRSTVISIBLELINE</a><br />
|
||||
<a class="message" href="#SCI_LINESONSCREEN">SCI_LINESONSCREEN</a><br />
|
||||
<a class="message" href="#SCI_GETMODIFY">SCI_GETMODIFY</a><br />
|
||||
<a class="message" href="#SCI_SETSEL">SCI_SETSEL(int anchorPos, int currentPos)</a><br />
|
||||
@ -1206,11 +1212,6 @@ struct Sci_TextToFind {
|
||||
This returns the number of lines in the document. An empty document contains 1 line. A
|
||||
document holding only an end of line sequence has 2 lines.</p>
|
||||
|
||||
<p><b id="SCI_SETFIRSTVISIBLELINE">SCI_SETFIRSTVISIBLELINE(int lineDisplay)</b><br />
|
||||
<b id="SCI_GETFIRSTVISIBLELINE">SCI_GETFIRSTVISIBLELINE</b><br />
|
||||
These messages retrieve and set the line number of the first visible line in the Scintilla view. The first line
|
||||
in the document is numbered 0. The value is a visible line rather than a document line.</p>
|
||||
|
||||
<p><b id="SCI_LINESONSCREEN">SCI_LINESONSCREEN</b><br />
|
||||
This returns the number of complete lines visible on the screen. With a constant line height,
|
||||
this is the vertical space available divided by the line separation. Unless you arrange to size
|
||||
@ -1826,7 +1827,12 @@ struct Sci_TextToFind {
|
||||
</p>
|
||||
|
||||
<h2 id="ScrollingAndAutomaticScrolling">Scrolling and automatic scrolling</h2>
|
||||
<code><a class="message" href="#SCI_LINESCROLL">SCI_LINESCROLL(int column, int line)</a><br />
|
||||
<code>
|
||||
<a class="message" href="#SCI_SETFIRSTVISIBLELINE">SCI_SETFIRSTVISIBLELINE(int lineDisplay)</a><br />
|
||||
<a class="message" href="#SCI_GETFIRSTVISIBLELINE">SCI_GETFIRSTVISIBLELINE</a><br />
|
||||
<a class="message" href="#SCI_SETXOFFSET">SCI_SETXOFFSET(int xOffset)</a><br />
|
||||
<a class="message" href="#SCI_GETXOFFSET">SCI_GETXOFFSET</a><br />
|
||||
<a class="message" href="#SCI_LINESCROLL">SCI_LINESCROLL(int column, int line)</a><br />
|
||||
<a class="message" href="#SCI_SCROLLCARET">SCI_SCROLLCARET</a><br />
|
||||
<a class="message" href="#SCI_SCROLLRANGE">SCI_SCROLLRANGE(int secondary, int primary)</a><br />
|
||||
<a class="message" href="#SCI_SETXCARETPOLICY">SCI_SETXCARETPOLICY(int caretPolicy, int
|
||||
@ -1839,8 +1845,6 @@ struct Sci_TextToFind {
|
||||
<a class="message" href="#SCI_GETHSCROLLBAR">SCI_GETHSCROLLBAR</a><br />
|
||||
<a class="message" href="#SCI_SETVSCROLLBAR">SCI_SETVSCROLLBAR(bool visible)</a><br />
|
||||
<a class="message" href="#SCI_GETVSCROLLBAR">SCI_GETVSCROLLBAR</a><br />
|
||||
<a class="message" href="#SCI_GETXOFFSET">SCI_GETXOFFSET</a><br />
|
||||
<a class="message" href="#SCI_SETXOFFSET">SCI_SETXOFFSET(int xOffset)</a><br />
|
||||
<a class="message" href="#SCI_SETSCROLLWIDTH">SCI_SETSCROLLWIDTH(int pixelWidth)</a><br />
|
||||
<a class="message" href="#SCI_GETSCROLLWIDTH">SCI_GETSCROLLWIDTH</a><br />
|
||||
<a class="message" href="#SCI_SETSCROLLWIDTHTRACKING">SCI_SETSCROLLWIDTHTRACKING(bool tracking)</a><br />
|
||||
@ -1850,6 +1854,17 @@ struct Sci_TextToFind {
|
||||
<a class="message" href="#SCI_GETENDATLASTLINE">SCI_GETENDATLASTLINE</a><br />
|
||||
</code>
|
||||
|
||||
<p><b id="SCI_SETFIRSTVISIBLELINE">SCI_SETFIRSTVISIBLELINE(int lineDisplay)</b><br />
|
||||
<b id="SCI_GETFIRSTVISIBLELINE">SCI_GETFIRSTVISIBLELINE</b><br />
|
||||
These messages retrieve and set the line number of the first visible line in the Scintilla view. The first line
|
||||
in the document is numbered 0. The value is a visible line rather than a document line.</p>
|
||||
|
||||
<p><b id="SCI_SETXOFFSET">SCI_SETXOFFSET(int xOffset)</b><br />
|
||||
<b id="SCI_GETXOFFSET">SCI_GETXOFFSET</b><br />
|
||||
The <code>xOffset</code> is the horizontal scroll position in pixels of the start of the text
|
||||
view. A value of 0 is the normal position with the first text column visible at the left of the
|
||||
view.</p>
|
||||
|
||||
<p><b id="SCI_LINESCROLL">SCI_LINESCROLL(int column, int line)</b><br />
|
||||
This will attempt to scroll the display by the number of columns and lines that you specify.
|
||||
Positive line values increase the line number at the top of the screen (i.e. they move the text
|
||||
@ -2146,12 +2161,6 @@ struct Sci_TextToFind {
|
||||
or show it with <code>SCI_SETVSCROLLBAR</code> and get the current state with
|
||||
<code>SCI_GETVSCROLLBAR</code>.</p>
|
||||
|
||||
<p><b id="SCI_SETXOFFSET">SCI_SETXOFFSET(int xOffset)</b><br />
|
||||
<b id="SCI_GETXOFFSET">SCI_GETXOFFSET</b><br />
|
||||
The <code>xOffset</code> is the horizontal scroll position in pixels of the start of the text
|
||||
view. A value of 0 is the normal position with the first text column visible at the left of the
|
||||
view.</p>
|
||||
|
||||
<p>See also: <a class="message" href="#SCI_LINESCROLL"><code>SCI_LINESCROLL</code></a></p>
|
||||
|
||||
<p><b id="SCI_SETSCROLLWIDTH">SCI_SETSCROLLWIDTH(int pixelWidth)</b><br />
|
||||
@ -5042,9 +5051,11 @@ struct Sci_TextToFind {
|
||||
<code>SCK_WIN</code>.</p>
|
||||
|
||||
<p>The modifiers are a combination of zero or more of <code>SCMOD_ALT</code>,
|
||||
<code>SCMOD_CTRL</code>, <code>SCMOD_SHIFT</code>, and <code>SCMOD_META</code>.
|
||||
<code>SCMOD_CTRL</code>, <code>SCMOD_SHIFT</code>,
|
||||
<code>SCMOD_META</code>, and <code>SCMOD_SUPER</code>.
|
||||
On OS X, the Command key is mapped to <code>SCMOD_CTRL</code> and the Control key to
|
||||
<code>SCMOD_META</code>.
|
||||
<code>SCMOD_SUPER</code> is only available on GTK+ which is commonly the Windows key.
|
||||
If you are building a table, you might
|
||||
want to use <code>SCMOD_NORM</code>, which has the value 0, to mean no modifiers.</p>
|
||||
|
||||
@ -7577,8 +7588,6 @@ for line = lineStart to lineEnd do SCI_ENSUREVISIBLE(line) next
|
||||
<code class="provisional">SC_TECHNOLOGY_DIRECTWRITEDC</code> values for
|
||||
<a class="message" href="#SCI_SETTECHNOLOGY">SCI_SETTECHNOLOGY</a> are provisional.</p>
|
||||
|
||||
<p>Using C++11 <regex> is provisional.</p>
|
||||
|
||||
<p>Some developers may want to only use features that are stable and have graduated from
|
||||
provisional status. To avoid using provisional messages compile with the symbol
|
||||
<code>SCI_DISABLE_PROVISIONAL</code> defined.</p>
|
||||
|
||||
@ -26,9 +26,9 @@
|
||||
<table bgcolor="#CCCCCC" width="100%" cellspacing="0" cellpadding="8" border="0">
|
||||
<tr>
|
||||
<td>
|
||||
<font size="4"> <a href="http://www.scintilla.org/scintilla364.zip">
|
||||
<font size="4"> <a href="http://www.scintilla.org/scintilla366.zip">
|
||||
Windows</a>
|
||||
<a href="http://www.scintilla.org/scintilla364.tgz">
|
||||
<a href="http://www.scintilla.org/scintilla366.tgz">
|
||||
GTK+/Linux</a>
|
||||
</font>
|
||||
</td>
|
||||
@ -42,7 +42,7 @@
|
||||
containing very few restrictions.
|
||||
</p>
|
||||
<h3>
|
||||
Release 3.6.4
|
||||
Release 3.6.6
|
||||
</h3>
|
||||
<h4>
|
||||
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
|
||||
<ul>
|
||||
<li><a href="http://www.scintilla.org/scintilla364.zip">zip format</a> (1500K) commonly used on Windows</li>
|
||||
<li><a href="http://www.scintilla.org/scintilla364.tgz">tgz format</a> (1400K) commonly used on Linux and compatible operating systems</li>
|
||||
<li><a href="http://www.scintilla.org/scintilla366.zip">zip format</a> (1500K) commonly used on Windows</li>
|
||||
<li><a href="http://www.scintilla.org/scintilla366.tgz">tgz format</a> (1400K) commonly used on Linux and compatible operating systems</li>
|
||||
</ul>
|
||||
Instructions for building on both Windows and Linux are included in the readme file.
|
||||
<h4>
|
||||
|
||||
@ -484,6 +484,12 @@
|
||||
</tr><tr>
|
||||
<td>Mark C</td>
|
||||
<td>Johannes Sasongko</td>
|
||||
<td>fstirlitz</td>
|
||||
<td>Robin Haberkorn</td>
|
||||
</tr><tr>
|
||||
<td>Pavel Sountsov</td>
|
||||
<td>Dirk Lorenzen</td>
|
||||
<td>Kasper B. Graversen</td>
|
||||
</tr>
|
||||
</table>
|
||||
<p>
|
||||
@ -495,22 +501,94 @@
|
||||
Icons</a> Copyright(C) 1998 by Dean S. Jones<br />
|
||||
</li>
|
||||
</ul>
|
||||
<h3>
|
||||
<a href="http://www.scintilla.org/scite366.zip">Release 3.6.6</a>
|
||||
</h3>
|
||||
<ul>
|
||||
<li>
|
||||
Released 24 May 2016.
|
||||
</li>
|
||||
<li>
|
||||
C++ 11 <regex> support built by default. Can be disabled by defining NO_CXX11_REGEX.
|
||||
</li>
|
||||
<li>
|
||||
SciTE_USERHOME environment variable allows separate location for writable properties files.
|
||||
<a href="http://sourceforge.net/p/scintilla/feature-requests/965/">Feature #965.</a>
|
||||
</li>
|
||||
<li>
|
||||
GObject introspection supports notify and command events.
|
||||
</li>
|
||||
<li>
|
||||
The Progress lexer now allows comments preceded by a tab.
|
||||
</li>
|
||||
<li>
|
||||
Scripts reading Scintilla.iface file include comments for enu and lex definitions.
|
||||
<a href="http://sourceforge.net/p/scintilla/bugs/1829/">Bug #1829</a>.
|
||||
</li>
|
||||
<li>
|
||||
Fix crashes on GTK+ if idle work active when destroyed.
|
||||
<a href="http://sourceforge.net/p/scintilla/bugs/1827/">Bug #1827</a>.
|
||||
</li>
|
||||
<li>
|
||||
Fixed bugs when used on GTK+ 3.20.
|
||||
<a href="http://sourceforge.net/p/scintilla/bugs/1825/">Bug #1825</a>.
|
||||
<a href="http://sourceforge.net/p/scintilla/bugs/1831/">Bug #1831</a>.
|
||||
</li>
|
||||
<li>
|
||||
Fix SciTE search field background with dark theme on GTK+ 2.x.
|
||||
<a href="http://sourceforge.net/p/scintilla/bugs/1826/">Bug #1826</a>.
|
||||
</li>
|
||||
<li>
|
||||
Fixed bug on Win32 that allowed resizing autocompletion from bottom when it was
|
||||
located above the caret.
|
||||
</li>
|
||||
<li>
|
||||
On Win32, when using a screen reader and selecting text using Shift+Arrow,
|
||||
fix bug when scrolling made the caret stay at the same screen location
|
||||
so the screen reader did not speak the added or removed selection.
|
||||
</li>
|
||||
</ul>
|
||||
<h3>
|
||||
<a href="http://www.scintilla.org/scite365.zip">Release 3.6.5</a>
|
||||
</h3>
|
||||
<ul>
|
||||
<li>
|
||||
Released 13 March 2016.
|
||||
Released 26 April 2016.
|
||||
</li>
|
||||
<li>
|
||||
JSON lexer added.
|
||||
<a href="http://sourceforge.net/p/scintilla/feature-requests/1140/">Feature #1140.</a>
|
||||
</li>
|
||||
<li>
|
||||
The C++ lexer fixes a bug with multi-line strings with line continuation where the string style
|
||||
overflowed after an edit.
|
||||
<a href="http://sourceforge.net/p/scintilla/bugs/1824/">Bug #1824</a>.
|
||||
</li>
|
||||
<li>
|
||||
The Python lexer treats '@' as an operator except when it is the first visible character on a line.
|
||||
This is for Python 3.5.
|
||||
</li>
|
||||
<li>
|
||||
The Rust lexer allows '?' as an operator.
|
||||
<a href="http://sourceforge.net/p/scintilla/feature-requests/1146/">Feature #1146.</a>
|
||||
</li>
|
||||
<li>
|
||||
Doubled size of compiled regex buffer.
|
||||
<a href="http://sourceforge.net/p/scintilla/bugs/1822/">Bug #1822</a>.
|
||||
</li>
|
||||
<li>
|
||||
For GTK+, the Super modifier key can be used in key bindings.
|
||||
<a href="http://sourceforge.net/p/scintilla/feature-requests/1142/">Feature #1142.</a>
|
||||
</li>
|
||||
<li>
|
||||
For GTK+, fix some crashes when using multiple threads.
|
||||
</li>
|
||||
<li>
|
||||
Platform layer font cache removed on GTK+ as platform-independent caches are used.
|
||||
This avoids the use of thread locking and initialisation of threads so any GTK+
|
||||
applications that rely on Scintilla initialising threads will have to do that themselves.
|
||||
</li>
|
||||
<li>
|
||||
SciTE bug fixed with exported HTML where extra line shown.
|
||||
<a href="http://sourceforge.net/p/scintilla/bugs/1816/">Bug #1816</a>.
|
||||
</li>
|
||||
@ -519,6 +597,9 @@
|
||||
For the replace strip, menu choices change the state.
|
||||
For the find strip, menu choices are reflected in the appearance of their corresponding buttons.
|
||||
</li>
|
||||
<li>
|
||||
SciTE on Windows on high DPI displays fixes the height of edit boxes in user strips.
|
||||
</li>
|
||||
</ul>
|
||||
<h3>
|
||||
<a href="http://www.scintilla.org/scite364.zip">Release 3.6.4</a>
|
||||
|
||||
@ -137,7 +137,7 @@
|
||||
is an XML/JSON editor and XML validator for Windows.
|
||||
</p>
|
||||
<p>
|
||||
<a href="https://github.com/rhaberkorn/sciteco">SciTECO</a>
|
||||
<a href="http://sciteco.sf.net/">SciTECO</a>
|
||||
is an advanced TECO dialect and interactive screen editor based on Scintilla.
|
||||
</p>
|
||||
<p>
|
||||
|
||||
@ -9,7 +9,7 @@
|
||||
<meta name="keywords" content="Scintilla, SciTE, Editing Component, Text Editor" />
|
||||
<meta name="Description"
|
||||
content="www.scintilla.org is the home of the Scintilla editing component and SciTE text editor application." />
|
||||
<meta name="Date.Modified" content="20160313" />
|
||||
<meta name="Date.Modified" content="20160524" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<style type="text/css">
|
||||
#versionlist {
|
||||
@ -56,8 +56,8 @@
|
||||
GTK+, and OS X</font>
|
||||
</td>
|
||||
<td width="40%" align="right">
|
||||
<font color="#FFCC99" size="3"> Release version 3.6.4<br />
|
||||
Site last modified March 13 2016</font>
|
||||
<font color="#FFCC99" size="3"> Release version 3.6.6<br />
|
||||
Site last modified May 24 2016</font>
|
||||
</td>
|
||||
<td width="20%">
|
||||
|
||||
@ -72,6 +72,8 @@
|
||||
</tr>
|
||||
</table>
|
||||
<ul id="versionlist">
|
||||
<li>Version 3.6.6 enables C++11 <regex> by default.
|
||||
<li>Version 3.6.5 adds a JSON lexer and removes the font cache on GTK+.
|
||||
<li>Version 3.6.4 avoids some folding bugs by automatically unfolding and improves clipboard robustness on Win32.</li>
|
||||
<li>Version 3.6.3 supports idle-time styling.</li>
|
||||
<li>Version 3.6.2 fixes crashes and other bugs, particularly on Cocoa.</li>
|
||||
|
||||
@ -1121,6 +1121,13 @@ struct Sci_RangeToFormat {
|
||||
|
||||
#define RangeToFormat Sci_RangeToFormat
|
||||
|
||||
#ifndef __cplusplus
|
||||
/* For the GTK+ platform, g-ir-scanner needs to have these typedefs. This
|
||||
* is not required in C++ code and actually seems to break ScintillaEditPy */
|
||||
typedef struct Sci_NotifyHeader Sci_NotifyHeader;
|
||||
typedef struct SCNotification SCNotification;
|
||||
#endif
|
||||
|
||||
struct Sci_NotifyHeader {
|
||||
/* Compatible with Windows NMHDR.
|
||||
* hwndFrom is really an environment specific window handle or pointer
|
||||
@ -1133,7 +1140,7 @@ struct Sci_NotifyHeader {
|
||||
#define NotifyHeader Sci_NotifyHeader
|
||||
|
||||
struct SCNotification {
|
||||
struct Sci_NotifyHeader nmhdr;
|
||||
Sci_NotifyHeader nmhdr;
|
||||
Sci_Position position;
|
||||
/* SCN_STYLENEEDED, SCN_DOUBLECLICK, SCN_MODIFIED, SCN_MARGINCLICK, */
|
||||
/* SCN_NEEDSHOWN, SCN_DWELLSTART, SCN_DWELLEND, SCN_CALLTIPCLICK, */
|
||||
|
||||
@ -4757,7 +4757,7 @@ evt void FocusIn=2028(void)
|
||||
evt void FocusOut=2029(void)
|
||||
evt void AutoCCompleted=2030(string text, int position, int ch, CompletionMethods listCompletionMethod)
|
||||
|
||||
# There are no provisional features currently
|
||||
# There are no provisional APIs currently, but some arguments to SCI_SETTECHNOLOGY are provisional.
|
||||
|
||||
cat Provisional
|
||||
|
||||
|
||||
@ -38,14 +38,18 @@ struct _ScintillaObject {
|
||||
struct _ScintillaClass {
|
||||
GtkContainerClass parent_class;
|
||||
|
||||
void (* command) (ScintillaObject *ttt);
|
||||
void (* notify) (ScintillaObject *ttt);
|
||||
void (* command) (ScintillaObject *sci, int cmd, GtkWidget *window);
|
||||
void (* notify) (ScintillaObject *sci, int id, SCNotification *scn);
|
||||
};
|
||||
|
||||
GType scintilla_object_get_type (void);
|
||||
GtkWidget* scintilla_object_new (void);
|
||||
gintptr scintilla_object_send_message (ScintillaObject *sci, unsigned int iMessage, guintptr wParam, gintptr lParam);
|
||||
|
||||
|
||||
GType scnotification_get_type (void);
|
||||
#define SCINTILLA_TYPE_NOTIFICATION (scnotification_get_type())
|
||||
|
||||
#ifndef G_IR_SCANNING
|
||||
/* The legacy names confuse the g-ir-scanner program */
|
||||
typedef struct _ScintillaClass ScintillaClass;
|
||||
|
||||
@ -761,6 +761,9 @@ void SCI_METHOD LexerCPP::Lex(Sci_PositionU startPos, Sci_Position length, int i
|
||||
lineCurrent++;
|
||||
lineEndNext = styler.LineEnd(lineCurrent);
|
||||
vlls.Add(lineCurrent, preproc);
|
||||
if (rawStringTerminator != "") {
|
||||
rawSTNew.Set(lineCurrent-1, rawStringTerminator);
|
||||
}
|
||||
sc.Forward();
|
||||
if (sc.ch == '\r' && sc.chNext == '\n') {
|
||||
// Even in UTF-8, \r and \n are separate
|
||||
|
||||
@ -199,7 +199,7 @@ static void Colourise4glDoc(Sci_PositionU startPos, Sci_Position length, int ini
|
||||
sc.SetState(SCE_4GL_COMMENT1 | mask);
|
||||
sc.Forward();
|
||||
} else if (sc.Match('/', '/') &&
|
||||
(sc.atLineStart || sc.chPrev == ' ')) {
|
||||
(sc.atLineStart || sc.chPrev == ' ' || sc.chPrev == '\t')) {
|
||||
sc.SetState(SCE_4GL_COMMENT2 | mask);
|
||||
} else if (sc.ch == '\"') {
|
||||
sc.SetState(SCE_4GL_STRING | ResetSentenceStart);
|
||||
|
||||
@ -339,7 +339,7 @@ static bool IsOneCharOperator(int c) {
|
||||
|| c == '*' || c == '/' || c == '^' || c == '%'
|
||||
|| c == '.' || c == ':' || c == '!' || c == '<'
|
||||
|| c == '>' || c == '=' || c == '-' || c == '&'
|
||||
|| c == '|' || c == '$';
|
||||
|| c == '|' || c == '$' || c == '?';
|
||||
}
|
||||
|
||||
static bool IsTwoCharOperator(int c, int n) {
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
// Scintilla source code edit control
|
||||
/** @file KeyWords.cxx
|
||||
** Colourise for particular languages.
|
||||
/** @file Accessor.cxx
|
||||
** Interfaces between Scintilla and lexers.
|
||||
**/
|
||||
// Copyright 1998-2002 by Neil Hodgson <neilh@scintilla.org>
|
||||
// The License.txt file describes the conditions under which this software may be distributed.
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
// Scintilla source code edit control
|
||||
/** @file KeyWords.cxx
|
||||
** Colourise for particular languages.
|
||||
/** @file WordList.cxx
|
||||
** Hold a list of words.
|
||||
**/
|
||||
// Copyright 1998-2002 by Neil Hodgson <neilh@scintilla.org>
|
||||
// The License.txt file describes the conditions under which this software may be distributed.
|
||||
|
||||
@ -112,6 +112,7 @@ class Face:
|
||||
self.features[name] = {
|
||||
"FeatureType": featureType,
|
||||
"Category": currentCategory,
|
||||
"Value": value }
|
||||
"Value": value,
|
||||
"Comment": currentComment }
|
||||
self.order.append(name)
|
||||
|
||||
|
||||
@ -13,6 +13,7 @@
|
||||
#include <assert.h>
|
||||
#include <ctype.h>
|
||||
#include <limits.h>
|
||||
#include <sys/time.h>
|
||||
|
||||
// C++ wrappers of C standard library
|
||||
#include <cstdlib>
|
||||
@ -31,6 +32,7 @@
|
||||
#include <map>
|
||||
#include <set>
|
||||
#include <algorithm>
|
||||
#include <functional>
|
||||
#include <memory>
|
||||
#include <regex>
|
||||
#include <sstream>
|
||||
@ -54,6 +56,10 @@
|
||||
|
||||
// Cocoa headers
|
||||
#include <Cocoa/Cocoa.h>
|
||||
#import <Foundation/NSGeometry.h>
|
||||
#import <QuartzCore/CAGradientLayer.h>
|
||||
#import <QuartzCore/CAAnimation.h>
|
||||
#import <QuartzCore/CATransaction.h>
|
||||
|
||||
// Scintilla headers
|
||||
|
||||
@ -106,6 +112,7 @@
|
||||
#include "Decoration.h"
|
||||
#include "CaseFolder.h"
|
||||
#include "Document.h"
|
||||
#include "RESearch.h"
|
||||
#include "CaseConvert.h"
|
||||
#include "UniConversion.h"
|
||||
#include "UnicodeFromUTF8.h"
|
||||
@ -129,10 +136,15 @@
|
||||
#include "HanjaDic.h"
|
||||
|
||||
// gtk
|
||||
#include "scintilla-marshal.h"
|
||||
#include "Converter.h"
|
||||
|
||||
// cocoa
|
||||
#include "QuartzTextStyle.h"
|
||||
#include "QuartzTextStyleAttribute.h"
|
||||
#include "QuartzTextLayout.h"
|
||||
#import "InfoBarCommunicator.h"
|
||||
#include "InfoBar.h"
|
||||
#import "ScintillaView.h"
|
||||
#import "ScintillaCocoa.h"
|
||||
#import "PlatCocoa.h"
|
||||
|
||||
@ -16,7 +16,7 @@
|
||||
#include <vector>
|
||||
#include <algorithm>
|
||||
|
||||
#ifdef CXX11_REGEX
|
||||
#ifndef NO_CXX11_REGEX
|
||||
#include <regex>
|
||||
#endif
|
||||
|
||||
@ -2336,7 +2336,7 @@ public:
|
||||
}
|
||||
};
|
||||
|
||||
#ifdef CXX11_REGEX
|
||||
#ifndef NO_CXX11_REGEX
|
||||
|
||||
class ByteIterator : public std::iterator<std::bidirectional_iterator_tag, char> {
|
||||
public:
|
||||
@ -2617,9 +2617,9 @@ bool MatchOnLines(const Document *doc, const Regex ®exp, const RESearchRange
|
||||
for (size_t co = 0; co < match.size(); co++) {
|
||||
search.bopat[co] = match[co].first.Pos();
|
||||
search.eopat[co] = match[co].second.PosRoundUp();
|
||||
size_t lenMatch = search.eopat[co] - search.bopat[co];
|
||||
Sci::Position lenMatch = search.eopat[co] - search.bopat[co];
|
||||
search.pat[co].resize(lenMatch);
|
||||
for (size_t iPos = 0; iPos < lenMatch; iPos++) {
|
||||
for (Sci::Position iPos = 0; iPos < lenMatch; iPos++) {
|
||||
search.pat[co][iPos] = doc->CharAt(iPos + search.bopat[co]);
|
||||
}
|
||||
}
|
||||
@ -2696,7 +2696,7 @@ long BuiltinRegex::FindText(Document *doc, int minPos, int maxPos, const char *s
|
||||
bool caseSensitive, bool, bool, int flags,
|
||||
int *length) {
|
||||
|
||||
#ifdef CXX11_REGEX
|
||||
#ifndef NO_CXX11_REGEX
|
||||
if (flags & SCFIND_CXX11REGEX) {
|
||||
return Cxx11RegexFindText(doc, minPos, maxPos, s,
|
||||
caseSensitive, length, search);
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
// Scintilla source code edit control
|
||||
/** @file Editor.cxx
|
||||
/** @file EditView.cxx
|
||||
** Defines the appearance of the main text area of the editor window.
|
||||
**/
|
||||
// Copyright 1998-2014 by Neil Hodgson <neilh@scintilla.org>
|
||||
|
||||
@ -303,7 +303,7 @@ int Editor::TopLineOfMain() const {
|
||||
}
|
||||
|
||||
PRectangle Editor::GetClientRectangle() const {
|
||||
Window &win = const_cast<Window &>(wMain);
|
||||
Window win = wMain;
|
||||
return win.GetClientPosition();
|
||||
}
|
||||
|
||||
@ -828,6 +828,7 @@ void Editor::MovedCaret(SelectionPosition newPos, SelectionPosition previousPos,
|
||||
}
|
||||
|
||||
ShowCaretAtCurrentPosition();
|
||||
NotifyCaretMove();
|
||||
|
||||
ClaimSelection();
|
||||
SetHoverIndicatorPosition(sel.MainCaret());
|
||||
@ -1437,6 +1438,9 @@ void Editor::InvalidateCaret() {
|
||||
UpdateSystemCaret();
|
||||
}
|
||||
|
||||
void Editor::NotifyCaretMove() {
|
||||
}
|
||||
|
||||
void Editor::UpdateSystemCaret() {
|
||||
}
|
||||
|
||||
@ -2265,12 +2269,13 @@ void Editor::DelCharBack(bool allowLineStartDeletion) {
|
||||
ShowCaretAtCurrentPosition();
|
||||
}
|
||||
|
||||
int Editor::ModifierFlags(bool shift, bool ctrl, bool alt, bool meta) {
|
||||
int Editor::ModifierFlags(bool shift, bool ctrl, bool alt, bool meta, bool super) {
|
||||
return
|
||||
(shift ? SCI_SHIFT : 0) |
|
||||
(ctrl ? SCI_CTRL : 0) |
|
||||
(alt ? SCI_ALT : 0) |
|
||||
(meta ? SCI_META : 0);
|
||||
(meta ? SCI_META : 0) |
|
||||
(super ? SCI_SUPER : 0);
|
||||
}
|
||||
|
||||
void Editor::NotifyFocus(bool focus) {
|
||||
|
||||
@ -46,13 +46,11 @@ public:
|
||||
workStyle=1,
|
||||
workUpdateUI=2
|
||||
};
|
||||
bool active;
|
||||
enum workItems items;
|
||||
Position upTo;
|
||||
|
||||
WorkNeeded() : active(false), items(workNone), upTo(0) {}
|
||||
WorkNeeded() : items(workNone), upTo(0) {}
|
||||
void Reset() {
|
||||
active = false;
|
||||
items = workNone;
|
||||
upTo = 0;
|
||||
}
|
||||
@ -367,6 +365,7 @@ protected: // ScintillaBase subclass needs access to much of Editor
|
||||
void DropCaret();
|
||||
void CaretSetPeriod(int period);
|
||||
void InvalidateCaret();
|
||||
virtual void NotifyCaretMove();
|
||||
virtual void UpdateSystemCaret();
|
||||
|
||||
bool Wrapping() const;
|
||||
@ -414,7 +413,7 @@ protected: // ScintillaBase subclass needs access to much of Editor
|
||||
void DelCharBack(bool allowLineStartDeletion);
|
||||
virtual void ClaimSelection() = 0;
|
||||
|
||||
static int ModifierFlags(bool shift, bool ctrl, bool alt, bool meta=false);
|
||||
static int ModifierFlags(bool shift, bool ctrl, bool alt, bool meta=false, bool super=false);
|
||||
virtual void NotifyChange() = 0;
|
||||
virtual void NotifyFocus(bool focus);
|
||||
virtual void SetCtrlID(int identifier);
|
||||
|
||||
@ -17,6 +17,7 @@ namespace Scintilla {
|
||||
#define SCI_CTRL SCMOD_CTRL
|
||||
#define SCI_ALT SCMOD_ALT
|
||||
#define SCI_META SCMOD_META
|
||||
#define SCI_SUPER SCMOD_SUPER
|
||||
#define SCI_CSHIFT (SCI_CTRL | SCI_SHIFT)
|
||||
#define SCI_ASHIFT (SCI_ALT | SCI_SHIFT)
|
||||
|
||||
|
||||
@ -39,7 +39,7 @@ public:
|
||||
int Execute(CharacterIndexer &ci, int lp, int endp);
|
||||
|
||||
enum { MAXTAG=10 };
|
||||
enum { MAXNFA=2048 };
|
||||
enum { MAXNFA=4096 };
|
||||
enum { NOTFOUND=-1 };
|
||||
|
||||
int bopat[MAXTAG];
|
||||
|
||||
@ -1 +1 @@
|
||||
364
|
||||
366
|
||||
|
||||
@ -2582,6 +2582,9 @@ void ListBoxX::StartResize(WPARAM hitCode) {
|
||||
}
|
||||
|
||||
LRESULT ListBoxX::NcHitTest(WPARAM wParam, LPARAM lParam) const {
|
||||
Window win = *this; // Copy HWND to avoid const problems
|
||||
const PRectangle rc = win.GetPosition();
|
||||
|
||||
LRESULT hit = ::DefWindowProc(GetHWND(), WM_NCHITTEST, wParam, lParam);
|
||||
// There is an apparent bug in the DefWindowProc hit test code whereby it will
|
||||
// return HTTOPXXX if the window in question is shorter than the default
|
||||
@ -2589,7 +2592,6 @@ LRESULT ListBoxX::NcHitTest(WPARAM wParam, LPARAM lParam) const {
|
||||
// the frame, so workaround that here
|
||||
if (hit >= HTTOP && hit <= HTTOPRIGHT) {
|
||||
int minHeight = GetSystemMetrics(SM_CYMINTRACK);
|
||||
PRectangle rc = const_cast<ListBoxX*>(this)->GetPosition();
|
||||
int yPos = GET_Y_LPARAM(lParam);
|
||||
if ((rc.Height() < minHeight) && (yPos > ((rc.top + rc.bottom)/2))) {
|
||||
hit += HTBOTTOM - HTTOP;
|
||||
@ -2607,7 +2609,6 @@ LRESULT ListBoxX::NcHitTest(WPARAM wParam, LPARAM lParam) const {
|
||||
|
||||
case HTTOP:
|
||||
case HTTOPRIGHT: {
|
||||
PRectangle rc = const_cast<ListBoxX*>(this)->GetPosition();
|
||||
// Valid only if caret below list
|
||||
if (location.y < rc.top)
|
||||
hit = HTERROR;
|
||||
@ -2616,9 +2617,8 @@ LRESULT ListBoxX::NcHitTest(WPARAM wParam, LPARAM lParam) const {
|
||||
|
||||
case HTBOTTOM:
|
||||
case HTBOTTOMRIGHT: {
|
||||
PRectangle rc = const_cast<ListBoxX*>(this)->GetPosition();
|
||||
// Valid only if caret above list
|
||||
if (rc.bottom < location.y)
|
||||
if (rc.bottom <= location.y)
|
||||
hit = HTERROR;
|
||||
}
|
||||
break;
|
||||
@ -2635,7 +2635,8 @@ void ListBoxX::OnDoubleClick() {
|
||||
}
|
||||
|
||||
POINT ListBoxX::GetClientExtent() const {
|
||||
PRectangle rc = const_cast<ListBoxX*>(this)->GetClientPosition();
|
||||
Window win = *this; // Copy HWND to avoid const problems
|
||||
const PRectangle rc = win.GetPosition();
|
||||
POINT ret;
|
||||
ret.x = static_cast<LONG>(rc.Width());
|
||||
ret.y = static_cast<LONG>(rc.Height());
|
||||
|
||||
@ -325,6 +325,7 @@ class ScintillaWin :
|
||||
virtual void SetTrackMouseLeaveEvent(bool on);
|
||||
virtual bool PaintContains(PRectangle rc);
|
||||
virtual void ScrollText(int linesToMove);
|
||||
virtual void NotifyCaretMove();
|
||||
virtual void UpdateSystemCaret();
|
||||
virtual void SetVerticalScrollPos();
|
||||
virtual void SetHorizontalScrollPos();
|
||||
@ -1093,10 +1094,10 @@ sptr_t ScintillaWin::HandleCompositionInline(uptr_t, sptr_t lParam) {
|
||||
recordingMacro = tmpRecordingMacro;
|
||||
|
||||
// Move IME caret from current last position to imeCaretPos.
|
||||
int toImeStart = static_cast<unsigned int>(StringEncode(wcs, codePage).size());
|
||||
std::string imeCaret(StringEncode(wcs.substr(0, imc.GetImeCaretPos()), codePage));
|
||||
int toImeCaret = static_cast<unsigned int>(imeCaret.size());
|
||||
MoveImeCarets(- toImeStart + toImeCaret);
|
||||
int imeEndToImeCaretU16 = imc.GetImeCaretPos() - static_cast<unsigned int>(wcs.size());
|
||||
int imeCaretPosDoc = pdoc->GetRelativePositionUTF16(CurrentPosition(), imeEndToImeCaretU16);
|
||||
|
||||
MoveImeCarets(- CurrentPosition() + imeCaretPosDoc);
|
||||
|
||||
if (KoreanIME()) {
|
||||
view.imeCaretBlockOverride = true;
|
||||
@ -1838,6 +1839,10 @@ void ScintillaWin::ScrollText(int /* linesToMove */) {
|
||||
UpdateSystemCaret();
|
||||
}
|
||||
|
||||
void ScintillaWin::NotifyCaretMove() {
|
||||
NotifyWinEvent(EVENT_OBJECT_LOCATIONCHANGE, MainHWND(), OBJID_CARET, CHILDID_SELF);
|
||||
}
|
||||
|
||||
void ScintillaWin::UpdateSystemCaret() {
|
||||
if (hasFocus) {
|
||||
if (HasCaretSizeChanged()) {
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
#define VERSION_MAJOR 0
|
||||
#define VERSION_MINOR 3
|
||||
#define VERSION_REV 0
|
||||
#define VERSION_BUILD 302
|
||||
#define VERSION_BUILD 305
|
||||
|
||||
Loading…
Reference in New Issue
Block a user