mirror of
https://github.com/notepad-plus-plus/notepad-plus-plus.git
synced 2025-07-30 09:14:39 +02:00
parent
4031339c58
commit
752777086e
@ -1030,7 +1030,9 @@ namespace NppDarkMode
|
||||
{
|
||||
RECT rcBtn{};
|
||||
::GetClientRect(hWnd, &rcBtn);
|
||||
szBtn = { rcBtn.right - rcBtn.left, rcBtn.bottom - rcBtn.top };
|
||||
const UINT dpi = DPIManagerV2::getDpiForParent(hWnd);
|
||||
szBtn.cx = DPIManagerV2::unscale(rcBtn.right - rcBtn.left, dpi);
|
||||
szBtn.cy = DPIManagerV2::unscale(rcBtn.bottom - rcBtn.top, dpi);
|
||||
isSizeSet = (szBtn.cx != 0 && szBtn.cy != 0);
|
||||
}
|
||||
break;
|
||||
@ -1238,21 +1240,6 @@ namespace NppDarkMode
|
||||
|
||||
switch (uMsg)
|
||||
{
|
||||
case WM_SETBUTTONIDEALSIZE:
|
||||
{
|
||||
if (pButtonData->isSizeSet)
|
||||
{
|
||||
SIZE szBtn{};
|
||||
if (Button_GetIdealSize(hWnd, &szBtn) == TRUE)
|
||||
{
|
||||
const int cx = std::min<LONG>(szBtn.cx, pButtonData->szBtn.cx);
|
||||
const int cy = std::min<LONG>(szBtn.cy, pButtonData->szBtn.cy);
|
||||
::SetWindowPos(hWnd, nullptr, 0, 0, cx, cy, SWP_NOMOVE | SWP_NOZORDER | SWP_NOACTIVATE | SWP_NOOWNERZORDER);
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
case WM_UPDATEUISTATE:
|
||||
if (HIWORD(wParam) & (UISF_HIDEACCEL | UISF_HIDEFOCUS))
|
||||
{
|
||||
@ -1280,6 +1267,21 @@ namespace NppDarkMode
|
||||
case WM_DPICHANGED_AFTERPARENT:
|
||||
{
|
||||
pButtonData->closeTheme();
|
||||
[[fallthrough]];
|
||||
}
|
||||
case WM_SETBUTTONIDEALSIZE:
|
||||
{
|
||||
if (pButtonData->isSizeSet)
|
||||
{
|
||||
SIZE szBtn{};
|
||||
if (Button_GetIdealSize(hWnd, &szBtn) == TRUE)
|
||||
{
|
||||
const UINT dpi = DPIManagerV2::getDpiForParent(hWnd);
|
||||
const int cx = std::min<LONG>(szBtn.cx, DPIManagerV2::scale(pButtonData->szBtn.cx, dpi));
|
||||
const int cy = std::min<LONG>(szBtn.cy, DPIManagerV2::scale(pButtonData->szBtn.cy, dpi));
|
||||
::SetWindowPos(hWnd, nullptr, 0, 0, cx, cy, SWP_NOMOVE | SWP_NOZORDER | SWP_NOACTIVATE | SWP_NOOWNERZORDER);
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -241,10 +241,10 @@ BEGIN
|
||||
GROUPBOX "Default Open/Save file Directory",IDC_OPENSAVEDIR_GR_STATIC,110,29,232,101,BS_CENTER
|
||||
CONTROL "Follow current document",IDC_OPENSAVEDIR_FOLLOWCURRENT_RADIO,"Button",BS_AUTORADIOBUTTON | WS_GROUP,118,60,200,10
|
||||
CONTROL "Remember last used directory",IDC_OPENSAVEDIR_REMEMBERLAST_RADIO,"Button",BS_AUTORADIOBUTTON,118,75,217,10
|
||||
CONTROL "",IDC_OPENSAVEDIR_ALWAYSON_RADIO,"Button",BS_AUTORADIOBUTTON,118,89,11,10
|
||||
EDITTEXT IDC_OPENSAVEDIR_ALWAYSON_EDIT,134,88,179,14,ES_AUTOHSCROLL
|
||||
PUSHBUTTON "...",IDD_OPENSAVEDIR_ALWAYSON_BROWSE_BUTTON,320,87,16,14
|
||||
CONTROL "Open all files of folder instead of launching Folder as Workspace on folder dropping",IDC_OPENSAVEDIR_CHECK_DROPFOLDEROPENFILES, "Button",BS_AUTOCHECKBOX | WS_TABSTOP,110, 145,342,10
|
||||
CONTROL "",IDC_OPENSAVEDIR_ALWAYSON_RADIO,"Button",BS_AUTORADIOBUTTON,118,90,11,10
|
||||
EDITTEXT IDC_OPENSAVEDIR_ALWAYSON_EDIT,134,89,179,12,ES_AUTOHSCROLL
|
||||
PUSHBUTTON "...",IDD_OPENSAVEDIR_ALWAYSON_BROWSE_BUTTON,320,88,16,14
|
||||
CONTROL "Open all files of folder instead of launching Folder as Workspace on folder dropping",IDC_OPENSAVEDIR_CHECK_DROPFOLDEROPENFILES,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,110,145,342,10
|
||||
END
|
||||
|
||||
|
||||
@ -397,24 +397,25 @@ STYLE DS_SETFONT | DS_FIXEDSYS | DS_CONTROL | WS_CHILD
|
||||
FONT 8, "MS Shell Dlg", 0, 0, 0x1
|
||||
BEGIN
|
||||
GROUPBOX "Session snapshot and periodic backup",IDC_BACKUPDIR_RESTORESESSION_GRP_STATIC,79,1,289,98,BS_CENTER
|
||||
CONTROL "Remember current session for next launch",IDC_CHECK_REMEMBERSESSION,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,90,10,270,10
|
||||
CONTROL "Enable session snapshot and periodic backup",IDC_BACKUPDIR_RESTORESESSION_CHECK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,90,25,270,10
|
||||
EDITTEXT IDC_BACKUPDIR_RESTORESESSION_EDIT,164,40,21,14,ES_NUMBER
|
||||
RTEXT "Backup in every",IDD_BACKUPDIR_RESTORESESSION_STATIC1,82,42,78,8
|
||||
LTEXT "seconds",IDD_BACKUPDIR_RESTORESESSION_STATIC2,190,42,66,8
|
||||
RTEXT "Backup path:",IDD_BACKUPDIR_RESTORESESSION_PATHLABEL_STATIC,85,60,61,8
|
||||
CONTROL "Remember inaccessible files from past session",IDC_CHECK_KEEPABSENTFILESINSESSION,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,90,87,270,10
|
||||
CONTROL "Remember current session for next launch",IDC_CHECK_REMEMBERSESSION,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,85,14,270,10
|
||||
CONTROL "Enable session snapshot and periodic backup",IDC_BACKUPDIR_RESTORESESSION_CHECK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,85,29,270,10
|
||||
RTEXT "Backup in every",IDD_BACKUPDIR_RESTORESESSION_STATIC1,82,46,78,8
|
||||
EDITTEXT IDC_BACKUPDIR_RESTORESESSION_EDIT,164,44,21,12,ES_CENTER | ES_NUMBER
|
||||
LTEXT "seconds",IDD_BACKUPDIR_RESTORESESSION_STATIC2,190,46,66,8
|
||||
RTEXT "Backup path:",IDD_BACKUPDIR_RESTORESESSION_PATHLABEL_STATIC,85,64,61,8
|
||||
EDITTEXT IDD_BACKUPDIR_RESTORESESSION_PATH_EDIT,153,62,208,12,ES_AUTOHSCROLL | ES_READONLY
|
||||
CONTROL "Remember inaccessible files from past session",IDC_CHECK_KEEPABSENTFILESINSESSION,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,85,83,270,10
|
||||
|
||||
EDITTEXT IDD_BACKUPDIR_RESTORESESSION_PATH_EDIT,153,58,208,14,ES_AUTOHSCROLL | ES_READONLY
|
||||
GROUPBOX "Backup on save",IDC_BACKUPDIR_GRP_STATIC,79,102,289,101,BS_CENTER
|
||||
CONTROL "None",IDC_RADIO_BKNONE,"Button",BS_AUTORADIOBUTTON | WS_GROUP,104,111,87,10
|
||||
CONTROL "Simple backup",IDC_RADIO_BKSIMPLE,"Button",BS_AUTORADIOBUTTON,104,125,111,10
|
||||
CONTROL "Verbose backup",IDC_RADIO_BKVERBOSE,"Button",BS_AUTORADIOBUTTON,104,138,111,10
|
||||
GROUPBOX "Custom Backup Directory",IDC_BACKUPDIR_USERCUSTOMDIR_GRPSTATIC,95,156,260,40
|
||||
CONTROL "",IDC_BACKUPDIR_CHECK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,90,156,8,10
|
||||
RTEXT "Directory :",IDD_BACKUPDIR_STATIC,99,173,40,8
|
||||
EDITTEXT IDC_BACKUPDIR_EDIT,146,171,179,14,ES_AUTOHSCROLL
|
||||
PUSHBUTTON "...",IDD_BACKUPDIR_BROWSE_BUTTON,332,171,16,14
|
||||
CONTROL "None",IDC_RADIO_BKNONE,"Button",BS_AUTORADIOBUTTON | WS_GROUP,85,115,87,10
|
||||
CONTROL "Simple backup",IDC_RADIO_BKSIMPLE,"Button",BS_AUTORADIOBUTTON,85,128,111,10
|
||||
CONTROL "Verbose backup",IDC_RADIO_BKVERBOSE,"Button",BS_AUTORADIOBUTTON,85,141,111,10
|
||||
|
||||
GROUPBOX "",IDC_BACKUPDIR_USERCUSTOMDIR_GRPSTATIC,89,156,269,37
|
||||
CONTROL "Custom Backup Directory",IDC_BACKUPDIR_CHECK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,85,156,200,10
|
||||
RTEXT "Directory:",IDD_BACKUPDIR_STATIC,95,173,40,8
|
||||
EDITTEXT IDC_BACKUPDIR_EDIT,141,171,185,12,ES_AUTOHSCROLL
|
||||
PUSHBUTTON "...",IDD_BACKUPDIR_BROWSE_BUTTON,333,170,16,14
|
||||
END
|
||||
|
||||
|
||||
@ -479,7 +480,7 @@ BEGIN
|
||||
RTEXT "yyyy-MM-dd HH:mm:ss\nH:m d/M/yyyy\nMMM d, yyyy tt h:m",IDC_STATIC,36,118,77,25
|
||||
LTEXT "1985-10-26 16:24:42\n16:24 26/10/1985\nOct 26, 1985 PM 4:24",IDC_STATIC,136,118,94,25
|
||||
RTEXT "Custom format :",IDD_DATETIMEFORMAT_STATIC,14,148,77,8
|
||||
EDITTEXT IDC_DATETIMEFORMAT_EDIT,92,146,175,14,ES_AUTOHSCROLL
|
||||
EDITTEXT IDC_DATETIMEFORMAT_EDIT,92,146,175,12,ES_AUTOHSCROLL
|
||||
LTEXT "",IDD_DATETIMEFORMAT_RESULT_STATIC,94,163,180,8
|
||||
|
||||
GROUPBOX "Panel State and [-nosession] *",IDC_PANEL_IGNORESESSION_GB_STATIC,288,3,160,175,BS_CENTER
|
||||
@ -503,17 +504,17 @@ FONT 8, "MS Shell Dlg", 0, 0, 0x1
|
||||
BEGIN
|
||||
GROUPBOX "Word character list",IDC_WORDCHARLIST_GB_STATIC,89,2,268,93,BS_CENTER
|
||||
CONTROL "Use default Word character list as it is",IDC_RADIO_WORDCHAR_DEFAULT,"Button",BS_AUTORADIOBUTTON | WS_GROUP,100,18,250,10
|
||||
CONTROL "Add your character as part of word\r(don't choose it unless you know what you're doing)",IDC_RADIO_WORDCHAR_CUSTOM,"Button",BS_AUTORADIOBUTTON | BS_MULTILINE | WS_GROUP,100,32,250,20
|
||||
EDITTEXT IDC_WORDCHAR_CUSTOM_EDIT,111,54,180,14,ES_AUTOHSCROLL
|
||||
CONTROL "Add your character as part of word\r(don't choose it unless you know what you're doing)",IDC_RADIO_WORDCHAR_CUSTOM,"Button",BS_AUTORADIOBUTTON | BS_MULTILINE | BS_TOP | WS_GROUP,100,32,250,20
|
||||
EDITTEXT IDC_WORDCHAR_CUSTOM_EDIT,111,54,180,12,ES_AUTOHSCROLL
|
||||
PUSHBUTTON "?",IDD_WORDCHAR_QUESTION_BUTTON,303,53,16,14
|
||||
LTEXT "",IDD_STATIC_WORDCHAR_WARNING,111,70,210,8
|
||||
|
||||
GROUPBOX "Delimiter selection settings (Ctrl + Mouse double click)",IDC_DELIMITERSETTINGS_GB_STATIC,89,113,268,70,BS_CENTER
|
||||
RTEXT "Open",IDD_STATIC_OPENDELIMITER,117,128,34,8
|
||||
EDITTEXT IDC_EDIT_OPENDELIMITER,156,126,14,14
|
||||
EDITTEXT IDC_EDIT_OPENDELIMITER,156,126,14,12,ES_RIGHT
|
||||
LTEXT "bla bla bla bla bla bla",IDD_STATIC_BLABLA,172,128,56,8
|
||||
LTEXT "bla bla bla bla bla bla bla bla bla bla bla bla",IDD_STATIC_BLABLA2NDLINE,132,148,126,8
|
||||
EDITTEXT IDC_EDIT_CLOSEDELIMITER,237,126,14,14
|
||||
EDITTEXT IDC_EDIT_CLOSEDELIMITER,237,126,14,12
|
||||
LTEXT "Close",IDD_STATIC_CLOSEDELIMITER,252,128,47,8
|
||||
CONTROL "Allow on several lines",IDD_SEVERALLINEMODEON_CHECK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,118,166,160,10
|
||||
END
|
||||
@ -526,8 +527,8 @@ BEGIN
|
||||
GROUPBOX "Settings on cloud",IDC_SETTINGSONCLOUD_GB_STATIC,89,2,268,88,BS_CENTER
|
||||
CONTROL "No Cloud",IDC_NOCLOUD_RADIO,"Button",BS_AUTORADIOBUTTON,125,13,180,10
|
||||
CONTROL "Set your cloud location path here:",IDC_WITHCLOUD_RADIO,"Button",BS_AUTORADIOBUTTON,125,28,180,10
|
||||
EDITTEXT IDC_CLOUDPATH_EDIT,134,44,179,14,ES_AUTOHSCROLL
|
||||
PUSHBUTTON "...",IDD_CLOUDPATH_BROWSE_BUTTON,320,44,16,14
|
||||
EDITTEXT IDC_CLOUDPATH_EDIT,134,44,179,12,ES_AUTOHSCROLL
|
||||
PUSHBUTTON "...",IDD_CLOUDPATH_BROWSE_BUTTON,320,43,16,14
|
||||
LTEXT "",IDC_SETTINGSONCLOUD_WARNING_STATIC,131,67,220,16
|
||||
|
||||
GROUPBOX "Clickable Link Settings",IDC_CLICKABLELINK_STATIC,89,95,268,90,BS_CENTER
|
||||
@ -549,7 +550,7 @@ BEGIN
|
||||
CONTROL "Yahoo!",IDC_SEARCHENGINE_YAHOO_RADIO,"Button",BS_AUTORADIOBUTTON,105,73,180,10
|
||||
CONTROL "Stack Overflow",IDC_SEARCHENGINE_STACKOVERFLOW_RADIO,"Button",BS_AUTORADIOBUTTON,105,88,180,10
|
||||
CONTROL "Set your search engine here:",IDC_SEARCHENGINE_CUSTOM_RADIO,"Button",BS_AUTORADIOBUTTON,105,103,180,10
|
||||
EDITTEXT IDC_SEARCHENGINE_EDIT,114,119,179,14,ES_AUTOHSCROLL
|
||||
EDITTEXT IDC_SEARCHENGINE_EDIT,114,119,179,12,ES_AUTOHSCROLL
|
||||
LTEXT "Example: https://www.google.com/search?q=$(CURRENT_WORD)",IDD_SEARCHENGINE_NOTE_STATIC,114,134,245,20
|
||||
END
|
||||
|
||||
@ -561,7 +562,7 @@ BEGIN
|
||||
PUSHBUTTON "?",IDD_PERFORMANCE_TIP_QUESTION_BUTTON,215,21,16,14
|
||||
CONTROL "Enable Large File Restriction (no syntax highlighting)",IDC_CHECK_PERFORMANCE_ENABLE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,79,41,290,10
|
||||
RTEXT "Define Large File Size:",IDC_STATIC_PERFORMANCE_FILESIZE,75,59,125,8
|
||||
EDITTEXT IDC_EDIT_PERFORMANCE_FILESIZE,201,57,24,14,ES_RIGHT | ES_NUMBER
|
||||
EDITTEXT IDC_EDIT_PERFORMANCE_FILESIZE,201,57,24,12,ES_RIGHT | ES_NUMBER
|
||||
LTEXT "MB (1 - 2046)",IDC_STATIC_PERFORMANCE_MB,228,59,90,8
|
||||
CONTROL "Deactivate Word Wrap globally",IDC_CHECK_PERFORMANCE_DEACTIVATEWORDWRAP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,127,80,200,10
|
||||
CONTROL "Allow Auto-Completion",IDC_CHECK_PERFORMANCE_ALLOWAUTOCOMPLETION,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,127,95,200,10
|
||||
@ -599,7 +600,7 @@ BEGIN
|
||||
CONTROL "Enable Save All confirm dialog",IDC_CHECK_SAVEALLCONFIRM,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,37,184,217,10
|
||||
|
||||
RTEXT "Session file ext.:",IDC_SESSIONFILEEXT_STATIC,270,130,108,8
|
||||
EDITTEXT IDC_EDIT_SESSIONFILEEXT,380,127,34,14,ES_AUTOHSCROLL
|
||||
EDITTEXT IDC_EDIT_SESSIONFILEEXT,380,127,34,12,ES_AUTOHSCROLL
|
||||
RTEXT "Workspace file ext.:",IDC_WORKSPACEFILEEXT_STATIC,270,147,108,8
|
||||
EDITTEXT IDC_EDIT_WORKSPACEFILEEXT,380,144,34,14,ES_AUTOHSCROLL
|
||||
EDITTEXT IDC_EDIT_WORKSPACEFILEEXT,380,144,34,12,ES_AUTOHSCROLL
|
||||
END
|
||||
|
@ -366,7 +366,35 @@ intptr_t CALLBACK PreferenceDlg::run_dlgProc(UINT message, WPARAM wParam, LPARAM
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
case WM_COMMAND :
|
||||
case WM_DPICHANGED:
|
||||
{
|
||||
DPIManagerV2::setDpiWP(wParam);
|
||||
_generalSubDlg.setDpiWP(wParam);
|
||||
_editingSubDlg.setDpiWP(wParam);
|
||||
_editing2SubDlg.setDpiWP(wParam);
|
||||
_darkModeSubDlg.setDpiWP(wParam);
|
||||
_marginsBorderEdgeSubDlg.setDpiWP(wParam);
|
||||
_miscSubDlg.setDpiWP(wParam);
|
||||
_fileAssocDlg.setDpiWP(wParam);
|
||||
_languageSubDlg.setDpiWP(wParam);
|
||||
_highlightingSubDlg.setDpiWP(wParam);
|
||||
_printSubDlg.setDpiWP(wParam);
|
||||
_searchingSubDlg.setDpiWP(wParam);
|
||||
_newDocumentSubDlg.setDpiWP(wParam);
|
||||
_defaultDirectorySubDlg.setDpiWP(wParam);
|
||||
_recentFilesHistorySubDlg.setDpiWP(wParam);
|
||||
_backupSubDlg.setDpiWP(wParam);
|
||||
_autoCompletionSubDlg.setDpiWP(wParam);
|
||||
_multiInstanceSubDlg.setDpiWP(wParam);
|
||||
_delimiterSubDlg.setDpiWP(wParam);
|
||||
_performanceSubDlg.setDpiWP(wParam);
|
||||
|
||||
setPositionDpi(lParam);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
case WM_COMMAND:
|
||||
{
|
||||
if (LOWORD(wParam) == IDC_LIST_DLGTITLE)
|
||||
{
|
||||
@ -532,7 +560,7 @@ intptr_t CALLBACK GeneralSubDlg::run_dlgProc(UINT message, WPARAM wParam, LPARAM
|
||||
{
|
||||
NppParameters& nppParam = NppParameters::getInstance();
|
||||
|
||||
switch (message)
|
||||
switch (message)
|
||||
{
|
||||
case WM_INITDIALOG :
|
||||
{
|
||||
@ -1428,9 +1456,9 @@ void DarkModeSubDlg::move2CtrlLeft(int ctrlID, HWND handle2Move, int handle2Move
|
||||
NppParameters& nppParam = NppParameters::getInstance();
|
||||
|
||||
if(nppParam.getNativeLangSpeaker()->isRTL())
|
||||
p.x = rc.right + nppParam._dpiManager.scaleX(5) + handle2MoveWidth;
|
||||
p.x = rc.right + DPIManagerV2::scale(5) + handle2MoveWidth;
|
||||
else
|
||||
p.x = rc.left - nppParam._dpiManager.scaleX(5) - handle2MoveWidth;
|
||||
p.x = rc.left - DPIManagerV2::scale(5) - handle2MoveWidth;
|
||||
|
||||
p.y = rc.top + ((rc.bottom - rc.top) / 2) - handle2MoveHeight / 2;
|
||||
|
||||
@ -1510,21 +1538,20 @@ intptr_t CALLBACK DarkModeSubDlg::run_dlgProc(UINT message, WPARAM wParam, LPARA
|
||||
_pHotEdgeColorPicker->init(_hInst, _hSelf);
|
||||
_pDisabledEdgeColorPicker->init(_hInst, _hSelf);
|
||||
|
||||
int cpDynamicalWidth = NppParameters::getInstance()._dpiManager.scaleX(25);
|
||||
int cpDynamicalHeight = NppParameters::getInstance()._dpiManager.scaleY(25);
|
||||
const int cpDynamicalSize = DPIManagerV2::scale(25);
|
||||
|
||||
move2CtrlLeft(IDD_CUSTOMIZED_COLOR1_STATIC, _pPureBackgroundColorPicker->getHSelf(), cpDynamicalWidth, cpDynamicalHeight);
|
||||
move2CtrlLeft(IDD_CUSTOMIZED_COLOR2_STATIC, _pHotBackgroundColorPicker->getHSelf(), cpDynamicalWidth, cpDynamicalHeight);
|
||||
move2CtrlLeft(IDD_CUSTOMIZED_COLOR3_STATIC, _pSofterBackgroundColorPicker->getHSelf(), cpDynamicalWidth, cpDynamicalHeight);
|
||||
move2CtrlLeft(IDD_CUSTOMIZED_COLOR4_STATIC, _pBackgroundColorPicker->getHSelf(), cpDynamicalWidth, cpDynamicalHeight);
|
||||
move2CtrlLeft(IDD_CUSTOMIZED_COLOR5_STATIC, _pErrorBackgroundColorPicker->getHSelf(), cpDynamicalWidth, cpDynamicalHeight);
|
||||
move2CtrlLeft(IDD_CUSTOMIZED_COLOR6_STATIC, _pTextColorPicker->getHSelf(), cpDynamicalWidth, cpDynamicalHeight);
|
||||
move2CtrlLeft(IDD_CUSTOMIZED_COLOR7_STATIC, _pDarkerTextColorPicker->getHSelf(), cpDynamicalWidth, cpDynamicalHeight);
|
||||
move2CtrlLeft(IDD_CUSTOMIZED_COLOR8_STATIC, _pDisabledTextColorPicker->getHSelf(), cpDynamicalWidth, cpDynamicalHeight);
|
||||
move2CtrlLeft(IDD_CUSTOMIZED_COLOR9_STATIC, _pEdgeColorPicker->getHSelf(), cpDynamicalWidth, cpDynamicalHeight);
|
||||
move2CtrlLeft(IDD_CUSTOMIZED_COLOR10_STATIC, _pLinkColorPicker->getHSelf(), cpDynamicalWidth, cpDynamicalHeight);
|
||||
move2CtrlLeft(IDD_CUSTOMIZED_COLOR11_STATIC, _pHotEdgeColorPicker->getHSelf(), cpDynamicalWidth, cpDynamicalHeight);
|
||||
move2CtrlLeft(IDD_CUSTOMIZED_COLOR12_STATIC, _pDisabledEdgeColorPicker->getHSelf(), cpDynamicalWidth, cpDynamicalHeight);
|
||||
move2CtrlLeft(IDD_CUSTOMIZED_COLOR1_STATIC, _pPureBackgroundColorPicker->getHSelf(), cpDynamicalSize, cpDynamicalSize);
|
||||
move2CtrlLeft(IDD_CUSTOMIZED_COLOR2_STATIC, _pHotBackgroundColorPicker->getHSelf(), cpDynamicalSize, cpDynamicalSize);
|
||||
move2CtrlLeft(IDD_CUSTOMIZED_COLOR3_STATIC, _pSofterBackgroundColorPicker->getHSelf(), cpDynamicalSize, cpDynamicalSize);
|
||||
move2CtrlLeft(IDD_CUSTOMIZED_COLOR4_STATIC, _pBackgroundColorPicker->getHSelf(), cpDynamicalSize, cpDynamicalSize);
|
||||
move2CtrlLeft(IDD_CUSTOMIZED_COLOR5_STATIC, _pErrorBackgroundColorPicker->getHSelf(), cpDynamicalSize, cpDynamicalSize);
|
||||
move2CtrlLeft(IDD_CUSTOMIZED_COLOR6_STATIC, _pTextColorPicker->getHSelf(), cpDynamicalSize, cpDynamicalSize);
|
||||
move2CtrlLeft(IDD_CUSTOMIZED_COLOR7_STATIC, _pDarkerTextColorPicker->getHSelf(), cpDynamicalSize, cpDynamicalSize);
|
||||
move2CtrlLeft(IDD_CUSTOMIZED_COLOR8_STATIC, _pDisabledTextColorPicker->getHSelf(), cpDynamicalSize, cpDynamicalSize);
|
||||
move2CtrlLeft(IDD_CUSTOMIZED_COLOR9_STATIC, _pEdgeColorPicker->getHSelf(), cpDynamicalSize, cpDynamicalSize);
|
||||
move2CtrlLeft(IDD_CUSTOMIZED_COLOR10_STATIC, _pLinkColorPicker->getHSelf(), cpDynamicalSize, cpDynamicalSize);
|
||||
move2CtrlLeft(IDD_CUSTOMIZED_COLOR11_STATIC, _pHotEdgeColorPicker->getHSelf(), cpDynamicalSize, cpDynamicalSize);
|
||||
move2CtrlLeft(IDD_CUSTOMIZED_COLOR12_STATIC, _pDisabledEdgeColorPicker->getHSelf(), cpDynamicalSize, cpDynamicalSize);
|
||||
|
||||
_pBackgroundColorPicker->display();
|
||||
_pSofterBackgroundColorPicker->display();
|
||||
@ -1625,6 +1652,26 @@ intptr_t CALLBACK DarkModeSubDlg::run_dlgProc(UINT message, WPARAM wParam, LPARA
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
case WM_DPICHANGED_AFTERPARENT:
|
||||
{
|
||||
const int cpDynamicalSize = DPIManagerV2::scale(25);
|
||||
|
||||
move2CtrlLeft(IDD_CUSTOMIZED_COLOR1_STATIC, _pPureBackgroundColorPicker->getHSelf(), cpDynamicalSize, cpDynamicalSize);
|
||||
move2CtrlLeft(IDD_CUSTOMIZED_COLOR2_STATIC, _pHotBackgroundColorPicker->getHSelf(), cpDynamicalSize, cpDynamicalSize);
|
||||
move2CtrlLeft(IDD_CUSTOMIZED_COLOR3_STATIC, _pSofterBackgroundColorPicker->getHSelf(), cpDynamicalSize, cpDynamicalSize);
|
||||
move2CtrlLeft(IDD_CUSTOMIZED_COLOR4_STATIC, _pBackgroundColorPicker->getHSelf(), cpDynamicalSize, cpDynamicalSize);
|
||||
move2CtrlLeft(IDD_CUSTOMIZED_COLOR5_STATIC, _pErrorBackgroundColorPicker->getHSelf(), cpDynamicalSize, cpDynamicalSize);
|
||||
move2CtrlLeft(IDD_CUSTOMIZED_COLOR6_STATIC, _pTextColorPicker->getHSelf(), cpDynamicalSize, cpDynamicalSize);
|
||||
move2CtrlLeft(IDD_CUSTOMIZED_COLOR7_STATIC, _pDarkerTextColorPicker->getHSelf(), cpDynamicalSize, cpDynamicalSize);
|
||||
move2CtrlLeft(IDD_CUSTOMIZED_COLOR8_STATIC, _pDisabledTextColorPicker->getHSelf(), cpDynamicalSize, cpDynamicalSize);
|
||||
move2CtrlLeft(IDD_CUSTOMIZED_COLOR9_STATIC, _pEdgeColorPicker->getHSelf(), cpDynamicalSize, cpDynamicalSize);
|
||||
move2CtrlLeft(IDD_CUSTOMIZED_COLOR10_STATIC, _pLinkColorPicker->getHSelf(), cpDynamicalSize, cpDynamicalSize);
|
||||
move2CtrlLeft(IDD_CUSTOMIZED_COLOR11_STATIC, _pHotEdgeColorPicker->getHSelf(), cpDynamicalSize, cpDynamicalSize);
|
||||
move2CtrlLeft(IDD_CUSTOMIZED_COLOR12_STATIC, _pDisabledEdgeColorPicker->getHSelf(), cpDynamicalSize, cpDynamicalSize);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
case WM_COMMAND:
|
||||
{
|
||||
bool changed = false;
|
||||
@ -2816,7 +2863,7 @@ intptr_t CALLBACK RecentFilesHistorySubDlg::run_dlgProc(UINT message, WPARAM wPa
|
||||
NppParameters& nppParam = NppParameters::getInstance();
|
||||
NppGUI& nppGUI = nppParam.getNppGUI();
|
||||
|
||||
switch (message)
|
||||
switch (message)
|
||||
{
|
||||
case WM_INITDIALOG:
|
||||
{
|
||||
@ -2872,11 +2919,6 @@ intptr_t CALLBACK RecentFilesHistorySubDlg::run_dlgProc(UINT message, WPARAM wPa
|
||||
const bool isTextEnabled = isCheckedOrNot(IDC_RADIO_CUSTOMIZELENTH);
|
||||
return NppDarkMode::onCtlColorDarkerBGStaticText(hdcStatic, isTextEnabled);
|
||||
}
|
||||
|
||||
if (dlgCtrlID == IDC_EDIT_CUSTOMIZELENGTHVAL)
|
||||
{
|
||||
return NppDarkMode::onCtlColor(hdcStatic);
|
||||
}
|
||||
return NppDarkMode::onCtlColorDarker(hdcStatic);
|
||||
}
|
||||
|
||||
@ -5054,12 +5096,42 @@ void DelimiterSubDlg::setWarningIfNeed() const
|
||||
::SetDlgItemText(_hSelf, IDD_STATIC_WORDCHAR_WARNING, msg.c_str());
|
||||
}
|
||||
|
||||
void DelimiterSubDlg::calcCtrlsPos()
|
||||
{
|
||||
RECT rcBlabla{};
|
||||
RECT rcBlabla2nd{};
|
||||
RECT rcOpen{};
|
||||
RECT rcOpenEdit{};
|
||||
|
||||
getMappedChildRect(IDD_STATIC_BLABLA, rcBlabla);
|
||||
getMappedChildRect(IDD_STATIC_BLABLA2NDLINE, rcBlabla2nd);
|
||||
getMappedChildRect(IDD_STATIC_OPENDELIMITER, rcOpen);
|
||||
getMappedChildRect(IDC_EDIT_OPENDELIMITER, rcOpenEdit);
|
||||
|
||||
_gapEditHor = (rcBlabla.left - rcOpenEdit.right) - ::GetSystemMetrics(SM_CXEDGE);
|
||||
_gapEditVer = (rcBlabla.top - rcOpenEdit.top) + ::GetSystemMetrics(SM_CYEDGE);
|
||||
_gapText = (rcBlabla.left - rcOpen.right);
|
||||
}
|
||||
|
||||
void DelimiterSubDlg::setCtrlsPos(bool isMultiline)
|
||||
{
|
||||
constexpr UINT flags = SWP_NOSIZE | SWP_NOZORDER | SWP_NOOWNERZORDER | SWP_NOACTIVATE | SWP_NOCOPYBITS;
|
||||
|
||||
::ShowWindow(::GetDlgItem(_hSelf, IDD_STATIC_BLABLA2NDLINE), isMultiline ? SW_SHOW : SW_HIDE);
|
||||
|
||||
RECT rcToUse{};
|
||||
getMappedChildRect(isMultiline ? IDD_STATIC_BLABLA2NDLINE : IDD_STATIC_BLABLA, rcToUse);
|
||||
|
||||
::SetWindowPos(::GetDlgItem(_hSelf, IDC_EDIT_CLOSEDELIMITER), nullptr, rcToUse.right + _gapEditHor, rcToUse.top - _gapEditVer, 0, 0, flags);
|
||||
::SetWindowPos(::GetDlgItem(_hSelf, IDD_STATIC_CLOSEDELIMITER), nullptr, rcToUse.right + _gapText, rcToUse.top, 0, 0, flags);
|
||||
}
|
||||
|
||||
intptr_t CALLBACK DelimiterSubDlg::run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam)
|
||||
{
|
||||
NppGUI & nppGUI = (NppParameters::getInstance()).getNppGUI();
|
||||
switch (message)
|
||||
switch (message)
|
||||
{
|
||||
case WM_INITDIALOG :
|
||||
case WM_INITDIALOG:
|
||||
{
|
||||
//
|
||||
// Delimiter
|
||||
@ -5077,29 +5149,9 @@ intptr_t CALLBACK DelimiterSubDlg::run_dlgProc(UINT message, WPARAM wParam, LPAR
|
||||
::SendDlgItemMessage(_hSelf, IDC_EDIT_OPENDELIMITER, WM_SETTEXT, 0, reinterpret_cast<LPARAM>(opener));
|
||||
::SendDlgItemMessage(_hSelf, IDC_EDIT_CLOSEDELIMITER, WM_SETTEXT, 0, reinterpret_cast<LPARAM>(closer));
|
||||
::SendDlgItemMessage(_hSelf, IDD_SEVERALLINEMODEON_CHECK, BM_SETCHECK, onSeveralLines?BST_CHECKED:BST_UNCHECKED, 0);
|
||||
|
||||
POINT point = getTopPoint(::GetDlgItem(_hSelf, IDD_STATIC_BLABLA), false);
|
||||
_singleLineModePoint.x = point.x + 4;
|
||||
_singleLineModePoint.y = point.y - 4;
|
||||
|
||||
point = getTopPoint(::GetDlgItem(_hSelf, IDD_STATIC_BLABLA2NDLINE), false);
|
||||
_multiLineModePoint.x = point.x + 4;
|
||||
_multiLineModePoint.y = point.y - 4;
|
||||
|
||||
::GetClientRect(::GetDlgItem(_hSelf, IDC_EDIT_CLOSEDELIMITER), &_closerRect);
|
||||
_closerRect.right = _closerRect.right - _closerRect.left + 4;
|
||||
_closerRect.bottom = _closerRect.bottom - _closerRect.top + 4;
|
||||
|
||||
::GetClientRect(::GetDlgItem(_hSelf, IDD_STATIC_CLOSEDELIMITER), &_closerLabelRect);
|
||||
_closerLabelRect.right = _closerLabelRect.right - _closerLabelRect.left + 4;
|
||||
_closerLabelRect.bottom = _closerLabelRect.bottom - _closerLabelRect.top + 4;
|
||||
|
||||
|
||||
::ShowWindow(::GetDlgItem(_hSelf, IDD_STATIC_BLABLA2NDLINE),onSeveralLines?SW_SHOW:SW_HIDE);
|
||||
|
||||
POINT *p = onSeveralLines?&_multiLineModePoint:&_singleLineModePoint;
|
||||
::MoveWindow(::GetDlgItem(_hSelf, IDC_EDIT_CLOSEDELIMITER), p->x, p->y, _closerRect.right, _closerRect.bottom, TRUE);
|
||||
::MoveWindow(::GetDlgItem(_hSelf, IDD_STATIC_CLOSEDELIMITER), p->x + _closerRect.right + 4, p->y + 4, _closerLabelRect.right, _closerLabelRect.bottom, TRUE);
|
||||
|
||||
calcCtrlsPos();
|
||||
setCtrlsPos(onSeveralLines);
|
||||
|
||||
//
|
||||
// Word Char List
|
||||
@ -5169,7 +5221,13 @@ intptr_t CALLBACK DelimiterSubDlg::run_dlgProc(UINT message, WPARAM wParam, LPAR
|
||||
break;
|
||||
}
|
||||
|
||||
case WM_COMMAND :
|
||||
case WM_DPICHANGED_AFTERPARENT:
|
||||
{
|
||||
calcCtrlsPos();
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
case WM_COMMAND:
|
||||
{
|
||||
if (HIWORD(wParam) == EN_CHANGE)
|
||||
{
|
||||
@ -5208,16 +5266,12 @@ intptr_t CALLBACK DelimiterSubDlg::run_dlgProc(UINT message, WPARAM wParam, LPAR
|
||||
switch (wParam)
|
||||
{
|
||||
|
||||
case IDD_SEVERALLINEMODEON_CHECK :
|
||||
case IDD_SEVERALLINEMODEON_CHECK:
|
||||
{
|
||||
bool isChecked = (BST_CHECKED == ::SendDlgItemMessage(_hSelf, IDD_SEVERALLINEMODEON_CHECK, BM_GETCHECK, 0, 0));
|
||||
nppGUI._delimiterSelectionOnEntireDocument = isChecked;
|
||||
|
||||
::ShowWindow(::GetDlgItem(_hSelf, IDD_STATIC_BLABLA2NDLINE),isChecked?SW_SHOW:SW_HIDE);
|
||||
|
||||
POINT *p = isChecked?&_multiLineModePoint:&_singleLineModePoint;
|
||||
::MoveWindow(::GetDlgItem(_hSelf, IDC_EDIT_CLOSEDELIMITER), p->x, p->y, _closerRect.right, _closerRect.bottom, TRUE);
|
||||
::MoveWindow(::GetDlgItem(_hSelf, IDD_STATIC_CLOSEDELIMITER), p->x + _closerRect.right + 4, p->y + 4, _closerLabelRect.right, _closerLabelRect.bottom, TRUE);
|
||||
setCtrlsPos(isChecked);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
@ -5459,7 +5513,7 @@ intptr_t CALLBACK CloudAndLinkSubDlg::run_dlgProc(UINT message, WPARAM wParam, L
|
||||
return FALSE;
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
@ -5578,11 +5632,6 @@ intptr_t CALLBACK PerformanceSubDlg::run_dlgProc(UINT message , WPARAM wParam, L
|
||||
bool isTextEnabled = isCheckedOrNot(IDC_CHECK_PERFORMANCE_ENABLE);
|
||||
return NppDarkMode::onCtlColorDarkerBGStaticText(hdcStatic, isTextEnabled);
|
||||
}
|
||||
|
||||
if (dlgCtrlID == IDC_EDIT_PERFORMANCE_FILESIZE)
|
||||
{
|
||||
return NppDarkMode::onCtlColor(hdcStatic);
|
||||
}
|
||||
return NppDarkMode::onCtlColorDarker(hdcStatic);
|
||||
}
|
||||
|
||||
|
@ -264,16 +264,17 @@ public :
|
||||
};
|
||||
|
||||
private :
|
||||
POINT _singleLineModePoint = {};
|
||||
POINT _multiLineModePoint = {};
|
||||
RECT _closerRect = {};
|
||||
RECT _closerLabelRect = {};
|
||||
LONG _gapEditHor = 0;
|
||||
LONG _gapEditVer = 0;
|
||||
LONG _gapText = 0;
|
||||
HWND _tip = nullptr;
|
||||
|
||||
intptr_t CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam) override;
|
||||
void detectSpace(const char *text2Check, int & nbSp, int & nbTab) const;
|
||||
generic_string getWarningText(size_t nbSp, size_t nbTab) const;
|
||||
void setWarningIfNeed() const;
|
||||
void calcCtrlsPos();
|
||||
void setCtrlsPos(bool isMultiline);
|
||||
};
|
||||
|
||||
class CloudAndLinkSubDlg : public StaticDialog
|
||||
|
@ -387,9 +387,9 @@
|
||||
|
||||
#define IDD_PREFERENCE_SUB_BACKUP 6800 //(IDD_PREFERENCE_BOX + 800)
|
||||
#define IDC_BACKUPDIR_GRP_STATIC (IDD_PREFERENCE_SUB_BACKUP + 1)
|
||||
#define IDC_BACKUPDIR_CHECK (IDD_PREFERENCE_SUB_BACKUP + 2)
|
||||
#define IDC_BACKUPDIR_USERCUSTOMDIR_GRPSTATIC (IDD_PREFERENCE_SUB_BACKUP + 2)
|
||||
#define IDD_BACKUPDIR_STATIC (IDD_PREFERENCE_SUB_BACKUP + 3)
|
||||
#define IDC_BACKUPDIR_USERCUSTOMDIR_GRPSTATIC (IDD_PREFERENCE_SUB_BACKUP + 4)
|
||||
#define IDC_BACKUPDIR_CHECK (IDD_PREFERENCE_SUB_BACKUP + 4)
|
||||
#define IDC_BACKUPDIR_EDIT (IDD_PREFERENCE_SUB_BACKUP + 5)
|
||||
#define IDD_BACKUPDIR_BROWSE_BUTTON (IDD_PREFERENCE_SUB_BACKUP + 6)
|
||||
#define IDD_AUTOC_GRPSTATIC (IDD_PREFERENCE_SUB_BACKUP + 7)
|
||||
|
Loading…
x
Reference in New Issue
Block a user