mirror of
https://github.com/rizonesoft/Notepad3.git
synced 2026-06-11 21:03:05 +08:00
Merge pull request #3631 from RaiKoHoff/Dev_RC
Fix broken relative paths in file history selection
This commit is contained in:
commit
2deab070d6
@ -44,13 +44,12 @@ NEW:
|
||||
[.811.1]- Add "Notepad3 Replacement" on Windows 11 Insider Preview which works almost like with Windows 10:
|
||||
- Open (ext: .inf, .ini, .log, .ps1, .psd1, .psm1, .scp, .txt, .wtx, .compositefont, .css, .sct, .wsc).
|
||||
- Edit (ext: .bat, .cmd, .jse, .reg, .text, .vbe, .wsf).
|
||||
[.809.1]- Configure app to open hyperlink (instead of default browser).
|
||||
[.809.1]- Configure other application to open hyperlink (instead of default browser).
|
||||
[.805.1]- File URL forced to open in new window by (Ctrl+Alt+Click).
|
||||
[.805.1]- File change notification, if removed current file is recreated.
|
||||
[.805.1]- Allow definition of line number for file:/// URL (separator is ':' ).
|
||||
[.804.2]- File change notification Dlg: add "Indicator (silent) option.
|
||||
[.804.2]- Configurable File Change/Deleted indicators.
|
||||
[.804.1]- File on disk changed notification in title bar.
|
||||
[.804.2]- Configurable File on disk Change/Deleted indicators for title bar.
|
||||
[.726.1]- "grepWinNP3" (current grepWin dev) allow multiple search paths (GRE).
|
||||
[.709.2]- Add "KiXtart" lexer (new in Lexilla) (LEX).
|
||||
[.709.1]- Integrating style theme "Sombra" as factory default Dark-Mode theme.
|
||||
@ -75,7 +74,6 @@ NEW:
|
||||
[.324.1]- Exclusive Lock (write) Mode shown in windows title.
|
||||
[.323.1]- Menu item for excusive File Locking (write, shared read).
|
||||
[.323.1]- Decorator styling for Python files.
|
||||
[.321.1]- Experimental DarkMode support for Win10 Insider 21Hx Dev-Preview.
|
||||
[.321.1]- Exclusive File Lock option.
|
||||
[.301.1]- About Dlg: version info for split-off Lexilla component.
|
||||
[.301.1]- About Dlg: Copy-Ver-Info-Btn : add Dark-Mode information.
|
||||
@ -90,9 +88,6 @@ CHANGES:
|
||||
[.811.1]- Current Lexilla dev (chg: HTML(PHP) Lexer) (LEX).
|
||||
[.811.1]- Scintilla Python generator methods for embeddable Python (SCI).
|
||||
[.811.1]- MUI base language definition moved to solution's preprocessors (C/C++ & RC) defines.
|
||||
[.810.1]- Some refactorings and code cleanup.
|
||||
[.804.1]- Minor changed regarding file changed indicator.
|
||||
[.803.1]- New Sombra scheme as default Dark Mode coloring theme.
|
||||
[.803.1]- Optimized default style handling for settings file (Dark Mode).
|
||||
[.803.1]- Adapted other Dark Mode Theme Files.
|
||||
[.802.1]- Default FileWatchingMode from "don't care" to "notify by MsgBox".
|
||||
@ -181,7 +176,6 @@ FIXES:
|
||||
[.807.1]- RegEx line begin pattern stuck after zero-length replacement.
|
||||
[.806.1]- Launching file URL (Alt+Click) with respect to flags "Reuse Window" and "Only one Instance per File".
|
||||
[.805.1]- File URL tooltip.
|
||||
[.804.1]- Incomplete default Dark Mode Scheme.
|
||||
[.804.1]- Config version dependent "FileWatchingMode" settings value.
|
||||
[.804.1]- File change notification in Title Bar.
|
||||
[.804.1]- Trigger reset file changed on disc flag.
|
||||
@ -224,9 +218,8 @@ FIXES:
|
||||
[.416.2]- Workaround Scintilla text-rendering bug, if line-number margin width set to 0 (so use 1 instead).
|
||||
[.416.1]- Save Schema config in case of inifile from scratch.
|
||||
[.415.1]- Small correction to Line Cut feature (thin selection).
|
||||
[.414.2]- Minipath uses NP§ preferred language, if not configured.
|
||||
[.414.2]- Minipath uses NP3 preferred language, if not configured.
|
||||
[.414.2]- Compiling mono-language compiler switch version.
|
||||
[.414.2]- Some minor bugs around MUI Language selection.
|
||||
[.414.1]- Std windows behavior for cascading new instances (if configured).
|
||||
[.413.2]- Sticky Window Flag on launching new instance.
|
||||
[.413.1]- Prevent duplicate instance, if setting does not allow.
|
||||
@ -240,7 +233,7 @@ FIXES:
|
||||
[.406.1]- Center dialog in parent.
|
||||
[.406.1]- "grepWinNP3": fix missing search flags (GRE).
|
||||
[.326.1]- TinyExpr regresion inserting newline after equal sign.
|
||||
[.325.3]- Possible busy-loop in Kotlin and Dard Lexer.
|
||||
[.325.3]- Possible busy-loop in Kotlin and Dart Lexer.
|
||||
[.325.2]- Don't keep window top-most after returning from full-screen mode (F11 toggle).
|
||||
[.325.1]- Compiler switch to allow mono language binary.
|
||||
[.324.1]- Read-Only-Attribute cooperating with Exclusive-Write-Lock.
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@ -1,143 +0,0 @@
|
||||
// Scintilla source code edit control
|
||||
/** @file PlatWin.h
|
||||
** Implementation of platform facilities on Windows.
|
||||
**/
|
||||
// Copyright 1998-2011 by Neil Hodgson <neilh@scintilla.org>
|
||||
// The License.txt file describes the conditions under which this software may be distributed.
|
||||
#pragma once
|
||||
|
||||
// sdkddkver.h
|
||||
#ifndef _WIN32_WINNT_VISTA
|
||||
#define _WIN32_WINNT_VISTA 0x0600
|
||||
#endif
|
||||
#ifndef _WIN32_WINNT_WIN7
|
||||
#define _WIN32_WINNT_WIN7 0x0601
|
||||
#endif
|
||||
#ifndef _WIN32_WINNT_WIN8
|
||||
#define _WIN32_WINNT_WIN8 0x0602
|
||||
#endif
|
||||
#ifndef _WIN32_WINNT_WINBLUE
|
||||
#define _WIN32_WINNT_WINBLUE 0x0603
|
||||
#endif
|
||||
#ifndef _WIN32_WINNT_WIN10
|
||||
#define _WIN32_WINNT_WIN10 0x0A00
|
||||
#endif
|
||||
|
||||
#ifndef USER_DEFAULT_SCREEN_DPI
|
||||
#define USER_DEFAULT_SCREEN_DPI 96
|
||||
#endif
|
||||
|
||||
#if !defined(DISABLE_D2D)
|
||||
#define USE_D2D 1
|
||||
#endif
|
||||
|
||||
#if defined(USE_D2D)
|
||||
#if defined(_MSC_BUILD) && (VER_PRODUCTVERSION_W <= _WIN32_WINNT_WIN7)
|
||||
#pragma warning(push)
|
||||
#pragma warning(disable: 4458)
|
||||
// d2d1helper.h(677,19): warning C4458: declaration of 'a' hides class member
|
||||
#endif
|
||||
#include <d2d1.h>
|
||||
#include <dwrite.h>
|
||||
#if defined(_MSC_BUILD) && (VER_PRODUCTVERSION_W <= _WIN32_WINNT_WIN7)
|
||||
#pragma warning(pop)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
DPI_T GetWindowDPI(HWND hwnd);
|
||||
int SystemMetricsForDpi(int nIndex, unsigned dpi);
|
||||
BOOL AdjustWindowRectForDpi(LPRECT lpRect, DWORD dwStyle, DWORD dwExStyle, unsigned dpi);
|
||||
#else
|
||||
extern "C" DPI_T GetWindowDPI(HWND hwnd);
|
||||
extern "C" int SystemMetricsForDpi(int nIndex, unsigned dpi);
|
||||
extern "C" BOOL AdjustWindowRectForDpi(LPRECT lpRect, DWORD dwStyle, DWORD dwExStyle, unsigned dpi);
|
||||
#endif // !__cplusplus
|
||||
|
||||
|
||||
namespace Scintilla {
|
||||
|
||||
extern void Platform_Initialise(void *hInstance) noexcept;
|
||||
extern void Platform_Finalise(bool fromDllMain) noexcept;
|
||||
|
||||
constexpr RECT RectFromPRectangle(PRectangle prc) noexcept {
|
||||
RECT rc = { static_cast<LONG>(prc.left), static_cast<LONG>(prc.top),
|
||||
static_cast<LONG>(prc.right), static_cast<LONG>(prc.bottom) };
|
||||
return rc;
|
||||
}
|
||||
|
||||
constexpr POINT POINTFromPoint(Point pt) noexcept {
|
||||
return POINT { static_cast<LONG>(pt.x), static_cast<LONG>(pt.y) };
|
||||
}
|
||||
|
||||
constexpr Point PointFromPOINT(POINT pt) noexcept {
|
||||
return Point::FromInts(pt.x, pt.y);
|
||||
}
|
||||
|
||||
constexpr HWND HwndFromWindowID(WindowID wid) noexcept {
|
||||
return static_cast<HWND>(wid);
|
||||
}
|
||||
|
||||
inline HWND HwndFromWindow(const Window &w) noexcept {
|
||||
return HwndFromWindowID(w.GetID());
|
||||
}
|
||||
|
||||
inline void *PointerFromWindow(HWND hWnd) noexcept {
|
||||
return reinterpret_cast<void *>(::GetWindowLongPtr(hWnd, 0));
|
||||
}
|
||||
|
||||
inline void SetWindowPointer(HWND hWnd, void *ptr) noexcept {
|
||||
::SetWindowLongPtr(hWnd, 0, reinterpret_cast<LONG_PTR>(ptr));
|
||||
}
|
||||
|
||||
/// Find a function in a DLL and convert to a function pointer.
|
||||
/// This avoids undefined and conditionally defined behaviour.
|
||||
template<typename T>
|
||||
inline T DLLFunction(HMODULE hModule, LPCSTR lpProcName) noexcept {
|
||||
#if 1
|
||||
return reinterpret_cast<T>(::GetProcAddress(hModule, lpProcName));
|
||||
#else
|
||||
if (!hModule) {
|
||||
return nullptr;
|
||||
}
|
||||
FARPROC function = ::GetProcAddress(hModule, lpProcName);
|
||||
static_assert(sizeof(T) == sizeof(function));
|
||||
T fp;
|
||||
memcpy(&fp, &function, sizeof(T));
|
||||
return fp;
|
||||
#endif
|
||||
}
|
||||
|
||||
template<typename T>
|
||||
inline T DLLFunctionEx(LPCWSTR lpDllName, LPCSTR lpProcName) noexcept {
|
||||
return DLLFunction<T>(::GetModuleHandleW(lpDllName), lpProcName);
|
||||
}
|
||||
|
||||
// Release an IUnknown* and set to nullptr.
|
||||
// While IUnknown::Release must be noexcept, it isn't marked as such so produces
|
||||
// warnings which are avoided by the catch.
|
||||
template <class T>
|
||||
inline void ReleaseUnknown(T *&ppUnknown) noexcept {
|
||||
if (ppUnknown) {
|
||||
try {
|
||||
ppUnknown->Release();
|
||||
} catch (...) {
|
||||
// Never occurs
|
||||
}
|
||||
ppUnknown = nullptr;
|
||||
}
|
||||
}
|
||||
|
||||
inline UINT DpiYForWindow(WindowID wid) noexcept {
|
||||
return GetWindowDPI(HwndFromWindowID(wid)).y;
|
||||
}
|
||||
|
||||
HCURSOR LoadReverseArrowCursor(DPI_T dpi) noexcept;
|
||||
|
||||
#if defined(USE_D2D)
|
||||
extern bool LoadD2D() noexcept;
|
||||
extern ID2D1Factory *pD2DFactory;
|
||||
extern IDWriteFactory *pIDWriteFactory;
|
||||
#endif
|
||||
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
@ -1,20 +0,0 @@
|
||||
// Scintilla source code edit control
|
||||
/** @file ScintillaWin.h
|
||||
** Define functions from ScintillaWin.cxx that can be called from ScintillaDLL.cxx.
|
||||
**/
|
||||
// Copyright 1998-2018 by Neil Hodgson <neilh@scintilla.org>
|
||||
// The License.txt file describes the conditions under which this software may be distributed.
|
||||
|
||||
#ifndef SCINTILLAWIN_H
|
||||
#define SCINTILLAWIN_H
|
||||
|
||||
class ScintillaWin;
|
||||
|
||||
namespace Scintilla {
|
||||
|
||||
int ResourcesRelease(bool fromDllMain) noexcept;
|
||||
sptr_t DirectFunction(ScintillaWin *sci, UINT iMessage, uptr_t wParam, sptr_t lParam);
|
||||
|
||||
}
|
||||
|
||||
#endif
|
||||
@ -8,12 +8,28 @@ TabWidth: 4
|
||||
Language: Cpp
|
||||
AccessModifierOffset: -2
|
||||
AlignAfterOpenBracket: DontAlign
|
||||
AlignConsecutiveDeclarations: true
|
||||
PointerAlignment: Left
|
||||
AllowShortBlocksOnASingleLine: Empty
|
||||
AllowShortCaseLabelsOnASingleLine: true
|
||||
ColumnLimit: 0
|
||||
#BraceWrapping:
|
||||
# AfterClass: true
|
||||
# AfterControlStatement: true
|
||||
# AfterEnum: false
|
||||
# AfterFunction: true
|
||||
# AfterNamespace: false
|
||||
# AfterObjCDeclaration: true
|
||||
# AfterStruct: true
|
||||
# AfterUnion: true
|
||||
# BeforeCatch: true
|
||||
# BeforeElse: false
|
||||
# IndentBraces: false
|
||||
#BreakBeforeBraces: Custom
|
||||
BreakBeforeBraces: Stroustrup
|
||||
#BreakBeforeBraces: Allman
|
||||
Cpp11BracedListStyle: false
|
||||
FixNamespaceComments: false
|
||||
SortIncludes: false
|
||||
UseTab: Never
|
||||
|
||||
---
|
||||
|
||||
@ -2495,7 +2495,6 @@ CASE_WM_CTLCOLOR_SET:
|
||||
WCHAR tch[MAX_PATH] = { L'\0' };
|
||||
for (int i = 0; i < MRU_Count(Globals.pFileMRU); i++) {
|
||||
MRU_Enum(Globals.pFileMRU, i, tch, COUNTOF(tch));
|
||||
PathAbsoluteFromApp(tch, NULL, 0, true);
|
||||
// SendDlgItemMessage(hwnd,IDC_FILEMRU,LB_ADDSTRING,0,(LPARAM)tch); }
|
||||
// SendDlgItemMessage(hwnd,IDC_FILEMRU,LB_SETCARETINDEX,0,false);
|
||||
lvi.iItem = i;
|
||||
@ -2546,6 +2545,7 @@ CASE_WM_CTLCOLOR_SET:
|
||||
ListView_GetItem(hwndLV, &lvi);
|
||||
|
||||
PathUnquoteSpaces(tchFileName);
|
||||
PathAbsoluteFromApp(tchFileName, NULL, COUNTOF(tchFileName), true);
|
||||
|
||||
if (!PathIsExistingFile(tchFileName) || (LOWORD(wParam) == IDC_REMOVE)) {
|
||||
// don't remove myself
|
||||
|
||||
@ -1625,8 +1625,8 @@ DWORD NormalizePathEx(LPWSTR lpszPath, DWORD cchBuffer, bool bRealPath, bool bSe
|
||||
StringCchCopy(lpszPath, cchBuffer, p);
|
||||
}
|
||||
}
|
||||
CloseHandle(hFile);
|
||||
}
|
||||
CloseHandle(hFile);
|
||||
}
|
||||
|
||||
return (DWORD)StringCchLen(lpszPath, cchBuffer);
|
||||
|
||||
Loading…
Reference in New Issue
Block a user