From 509f295fe373a392821c9d12078e3e6d20d74574 Mon Sep 17 00:00:00 2001 From: Rainer Kottenhoff Date: Tue, 21 May 2019 16:56:27 +0200 Subject: [PATCH 1/4] + fix: Solution to build DLL version --- scintilla/ScintillaDLL.vcxproj | 8 ++++---- scionigmo/OnigmoRegExEngine.cxx | 6 +++++- src/SciCall.h | 12 +++++++----- 3 files changed, 16 insertions(+), 10 deletions(-) diff --git a/scintilla/ScintillaDLL.vcxproj b/scintilla/ScintillaDLL.vcxproj index aeb46d86c..59041cd56 100644 --- a/scintilla/ScintillaDLL.vcxproj +++ b/scintilla/ScintillaDLL.vcxproj @@ -121,7 +121,7 @@ true Disabled NotUsing - _SCL_SECURE_NO_WARNINGS;SCI_OWNREGEX;ONIG_EXTERN=extern;SCINTILLA_DLL;NP3;WIN32;_DEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES;STATIC_BUILD;SCI_LEXER;USE_D2D;%(PreprocessorDefinitions) + _SCL_SECURE_NO_WARNINGS;NO_CXX11_REGEX;SCI_OWNREGEX;ONIG_EXTERN=extern;SCINTILLA_DLL;NP3;WIN32;_DEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES;STATIC_BUILD;SCI_LEXER;USE_D2D;%(PreprocessorDefinitions) MultiThreadedDebugDLL Level3 false @@ -149,7 +149,7 @@ true Disabled NotUsing - _SCL_SECURE_NO_WARNINGS;SCI_OWNREGEX;ONIG_EXTERN=extern;SCINTILLA_DLL;NP3;_WIN64;_DEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES;STATIC_BUILD;SCI_LEXER;USE_D2D;%(PreprocessorDefinitions) + _SCL_SECURE_NO_WARNINGS;NO_CXX11_REGEX;SCI_OWNREGEX;ONIG_EXTERN=extern;SCINTILLA_DLL;NP3;_WIN64;_DEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES;STATIC_BUILD;SCI_LEXER;USE_D2D;%(PreprocessorDefinitions) MultiThreadedDebugDLL Level3 false @@ -176,7 +176,7 @@ true MaxSpeed NotUsing - _SCL_SECURE_NO_WARNINGS;SCI_OWNREGEX;ONIG_EXTERN=extern;SCINTILLA_DLL;NP3;WIN32;NDEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES;STATIC_BUILD;SCI_LEXER;USE_D2D;%(PreprocessorDefinitions) + _SCL_SECURE_NO_WARNINGS;NO_CXX11_REGEX;SCI_OWNREGEX;ONIG_EXTERN=extern;SCINTILLA_DLL;NP3;WIN32;NDEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES;STATIC_BUILD;SCI_LEXER;USE_D2D;%(PreprocessorDefinitions) MultiThreadedDLL Level3 true @@ -202,7 +202,7 @@ true MaxSpeed NotUsing - _SCL_SECURE_NO_WARNINGS;SCI_OWNREGEX;ONIG_EXTERN=extern;SCINTILLA_DLL;NP3;_WIN64;NDEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES;STATIC_BUILD;SCI_LEXER;USE_D2D;%(PreprocessorDefinitions) + _SCL_SECURE_NO_WARNINGS;NO_CXX11_REGEX;SCI_OWNREGEX;ONIG_EXTERN=extern;SCINTILLA_DLL;NP3;_WIN64;NDEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES;STATIC_BUILD;SCI_LEXER;USE_D2D;%(PreprocessorDefinitions) MultiThreadedDLL Level3 true diff --git a/scionigmo/OnigmoRegExEngine.cxx b/scionigmo/OnigmoRegExEngine.cxx index 9b7b08615..b386a0e8f 100644 --- a/scionigmo/OnigmoRegExEngine.cxx +++ b/scionigmo/OnigmoRegExEngine.cxx @@ -785,7 +785,11 @@ static SimpleRegExEngine ModuleRegExEngine; // ============================================================================ -extern "C" ptrdiff_t OnigmoRegExFind(const char* pchPattern, const char* pchText, const bool caseSensitive) +extern "C" +#ifdef SCINTILLA_DLL +__declspec(dllexport) +#endif +ptrdiff_t OnigmoRegExFind(const char* pchPattern, const char* pchText, const bool caseSensitive) { const UChar* pattern = reinterpret_cast(pchPattern); const UChar* string = reinterpret_cast(pchText); diff --git a/src/SciCall.h b/src/SciCall.h index a7c7db0bd..a8508a8ca 100644 --- a/src/SciCall.h +++ b/src/SciCall.h @@ -83,6 +83,13 @@ LRESULT WINAPI Scintilla_DirectFunction(HANDLE, UINT, WPARAM, LPARAM); #endif // SCI_DIRECTFUNCTION_INTERFACE +//============================================================================= + +// SciOniguruma RegEx search +ptrdiff_t WINAPI OnigmoRegExFind(const char* pchPattern, const char* pchText, const bool caseSensitive); + +//============================================================================= + //============================================================================= // @@ -554,9 +561,4 @@ inline DocPos Sci_GetRangeMaxLineLength(DocLn iBeginLine, DocLn iEndLine) { //============================================================================= -// SciOnigmo RegEx search -ptrdiff_t OnigmoRegExFind(const char* pchPattern, const char* pchText, const bool caseSensitive); - -//============================================================================= - #endif //_NP3_SCICALL_H_ From 0eb77bda2c796eaf22cc9ab1d53a6e77e15d84af Mon Sep 17 00:00:00 2001 From: Rainer Kottenhoff Date: Wed, 22 May 2019 08:28:52 +0200 Subject: [PATCH 2/4] + fix: "mark occurrences of curent word" --- src/Edit.c | 2 +- src/Notepad3.c | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/Edit.c b/src/Edit.c index 9620a8a37..137f7ceb2 100644 --- a/src/Edit.c +++ b/src/Edit.c @@ -6528,7 +6528,7 @@ void EditMarkAll(HWND hwnd, char* pszFind, int flags, DocPos rangeStart, DocPos DocPos const iWordStart = SciCall_WordStartPosition(iCurrPos, true); DocPos const iWordEnd = SciCall_WordEndPosition(iCurrPos, true); iFindLength = (iWordEnd - iWordStart); - StringCchCopyNA(pszText, HUGE_BUFFER, SciCall_GetRangePointer(iWordStart, iFindLength), iFindLength); + StringCchCopyNA(txtBuffer, COUNTOF(txtBuffer), SciCall_GetRangePointer(iWordStart, iFindLength), iFindLength); } else { return; // no selection and no word mark chosen diff --git a/src/Notepad3.c b/src/Notepad3.c index a5f2c827f..aa12c38f6 100644 --- a/src/Notepad3.c +++ b/src/Notepad3.c @@ -6627,7 +6627,7 @@ LRESULT MsgNotify(HWND hwnd, WPARAM wParam, LPARAM lParam) // clear marks only, if selection changed if (iUpd & SC_UPDATE_SELECTION) { - if (!SciCall_IsSelectionEmpty()) { + if (!SciCall_IsSelectionEmpty() || Settings.MarkOccurrencesCurrentWord) { MarkAllOccurrences(Settings2.UpdateDelayMarkAllOccurrences, true); } else { @@ -6637,8 +6637,8 @@ LRESULT MsgNotify(HWND hwnd, WPARAM wParam, LPARAM lParam) else if (iUpd & SC_UPDATE_CONTENT) { // ignoring SC_UPDATE_CONTENT cause Style and Marker are out of scope here // using WM_COMMAND -> SCEN_CHANGE instead! - //~~~UpdateVisibleUrlIndics(); //~~~MarkAllOccurrences(Settings2.UpdateDelayMarkAllCoccurrences, false); + //~~~UpdateVisibleUrlIndics(); } } UpdateToolbar(); From c57c1436a18521cf962dff54b8503efd788495c8 Mon Sep 17 00:00:00 2001 From: Rainer Kottenhoff Date: Wed, 22 May 2019 10:03:12 +0200 Subject: [PATCH 3/4] + current build information --- Versions/build.txt | 2 +- res/Notepad3.exe.manifest.conf | 2 +- src/Version.h | 4 +++- src/VersionEx.h | 4 ++-- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/Versions/build.txt b/Versions/build.txt index bdc2aeae6..d75c403cf 100644 --- a/Versions/build.txt +++ b/Versions/build.txt @@ -1 +1 @@ -1717 +1718 diff --git a/res/Notepad3.exe.manifest.conf b/res/Notepad3.exe.manifest.conf index b9f19dad1..680d89ac8 100644 --- a/res/Notepad3.exe.manifest.conf +++ b/res/Notepad3.exe.manifest.conf @@ -3,7 +3,7 @@ Notepad3 RC diff --git a/src/Version.h b/src/Version.h index 6f2583dc9..c2d050af9 100644 --- a/src/Version.h +++ b/src/Version.h @@ -67,7 +67,9 @@ #if defined(_MSC_VER) #if (_MSC_VER >= 1920) - #if(_MSC_FULL_VER >= 192027508) + #if(_MSC_FULL_VER >= 192127702) + #define VER_CPL MS Visual C++ 2019 v16.1.0 + #elif(_MSC_FULL_VER >= 192027508) #define VER_CPL MS Visual C++ 2019 v16.0.(0-4) #elif(_MSC_FULL_VER >= 192027027) #define VER_CPL MS Visual C++ 2019 v16.0.Prev(1-4) diff --git a/src/VersionEx.h b/src/VersionEx.h index 685ba5b4b..7bbf9bff3 100644 --- a/src/VersionEx.h +++ b/src/VersionEx.h @@ -7,8 +7,8 @@ #define SAPPNAME "Notepad3" #define VERSION_MAJOR 5 #define VERSION_MINOR 19 -#define VERSION_REV 521 -#define VERSION_BUILD 1717 +#define VERSION_REV 522 +#define VERSION_BUILD 1718 #define SCINTILLA_VER 415+ #define ONIGMO_REGEX_VER 6.2.0 #define VERSION_PATCH RC From 91d097169023058468980afc6c1893c30da127be Mon Sep 17 00:00:00 2001 From: Rainer Kottenhoff Date: Wed, 22 May 2019 10:17:59 +0200 Subject: [PATCH 4/4] + fix: Win32-bit (x86) build --- scionigmo/OnigmoRegExEngine.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scionigmo/OnigmoRegExEngine.cxx b/scionigmo/OnigmoRegExEngine.cxx index b386a0e8f..bf010acdf 100644 --- a/scionigmo/OnigmoRegExEngine.cxx +++ b/scionigmo/OnigmoRegExEngine.cxx @@ -789,7 +789,7 @@ extern "C" #ifdef SCINTILLA_DLL __declspec(dllexport) #endif -ptrdiff_t OnigmoRegExFind(const char* pchPattern, const char* pchText, const bool caseSensitive) +ptrdiff_t WINAPI OnigmoRegExFind(const char* pchPattern, const char* pchText, const bool caseSensitive) { const UChar* pattern = reinterpret_cast(pchPattern); const UChar* string = reinterpret_cast(pchText);