From aa093a765d269e14a87a9184bd92d8c38d7cb670 Mon Sep 17 00:00:00 2001 From: "METANEOCORTEX\\Kotti" Date: Thu, 30 May 2024 23:01:39 +0200 Subject: [PATCH] +add: New settings option to enable/disable feature Multiple Selection --- language/common_res.h | 1 + language/np3_af_za/menu_af_za.rc | 1 + language/np3_be_by/menu_be_by.rc | 1 + language/np3_de_de/menu_de_de.rc | 1 + language/np3_el_gr/menu_el_gr.rc | 1 + language/np3_en_gb/menu_en_gb.rc | 1 + language/np3_en_us/menu_en_us.rc | 1 + language/np3_es_es/menu_es_es.rc | 1 + language/np3_fi_fi/menu_fi_fi.rc | 3 ++- language/np3_fr_fr/menu_fr_fr.rc | 1 + language/np3_hi_in/menu_hi_in.rc | 1 + language/np3_hu_hu/menu_hu_hu.rc | 1 + language/np3_id_id/menu_id_id.rc | 1 + language/np3_it_it/menu_it_it.rc | 1 + language/np3_ja_jp/menu_ja_jp.rc | 1 + language/np3_ko_kr/menu_ko_kr.rc | 3 ++- language/np3_nl_nl/menu_nl_nl.rc | 1 + language/np3_pl_pl/menu_pl_pl.rc | 1 + language/np3_pt_br/menu_pt_br.rc | 1 + language/np3_pt_pt/menu_pt_pt.rc | 1 + language/np3_ru_ru/menu_ru_ru.rc | 1 + language/np3_sk_sk/menu_sk_sk.rc | 1 + language/np3_sv_se/menu_sv_se.rc | 1 + language/np3_tr_tr/menu_tr_tr.rc | 1 + language/np3_vi_vn/menu_vi_vn.rc | 1 + language/np3_zh_cn/menu_zh_cn.rc | 3 ++- language/np3_zh_tw/menu_zh_tw.rc | 3 ++- src/Config/Config.cpp | 2 ++ src/Notepad3.c | 12 ++++++++++-- src/SciCall.h | 1 + src/TypeDefs.h | 1 + 31 files changed, 45 insertions(+), 6 deletions(-) diff --git a/language/common_res.h b/language/common_res.h index cbeee2a77..bf7d0c2c4 100644 --- a/language/common_res.h +++ b/language/common_res.h @@ -844,6 +844,7 @@ #define IDM_SET_EVALTINYEXPRONSEL 42041 #define IDM_SET_AUTOCLOSEBRACKETS 42042 #define IDM_SET_AUTOCLOSEQUOTES 42043 +#define IDM_SET_MULTIPLE_SELECTION 42044 #define IDM_HELP_ABOUT 43000 #define IDM_HELP_CMD 43001 diff --git a/language/np3_af_za/menu_af_za.rc b/language/np3_af_za/menu_af_za.rc index 5da527ce2..184aab33c 100644 --- a/language/np3_af_za/menu_af_za.rc +++ b/language/np3_af_za/menu_af_za.rc @@ -491,6 +491,7 @@ BEGIN END MENUITEM "Stoor Voor L&opende Tools", IDM_SET_SAVEBEFORERUNNINGTOOLS MENUITEM "Bereken Tiny-E&xpressions", IDM_SET_EVALTINYEXPRONSEL + MENUITEM "Enable Multiple Selection", IDM_SET_MULTIPLE_SELECTION MENUITEM SEPARATOR POPUP "Ont&hou" BEGIN diff --git a/language/np3_be_by/menu_be_by.rc b/language/np3_be_by/menu_be_by.rc index e9758a20a..c3fb56ace 100644 --- a/language/np3_be_by/menu_be_by.rc +++ b/language/np3_be_by/menu_be_by.rc @@ -491,6 +491,7 @@ BEGIN END MENUITEM "Захоўваць перад запускам прыладаў", IDM_SET_SAVEBEFORERUNNINGTOOLS MENUITEM "Вылічваць простыя в&ыразы", IDM_SET_EVALTINYEXPRONSEL + MENUITEM "Enable Multiple Selection", IDM_SET_MULTIPLE_SELECTION MENUITEM SEPARATOR POPUP "&Гісторыя" BEGIN diff --git a/language/np3_de_de/menu_de_de.rc b/language/np3_de_de/menu_de_de.rc index 4d8ecbfb3..e1c44e719 100644 --- a/language/np3_de_de/menu_de_de.rc +++ b/language/np3_de_de/menu_de_de.rc @@ -491,6 +491,7 @@ BEGIN END MENUITEM "Speichern vor Werkzeug Start", IDM_SET_SAVEBEFORERUNNINGTOOLS MENUITEM "Berechne Tiny-Expressions", IDM_SET_EVALTINYEXPRONSEL + MENUITEM "Erlaube Mehrfach Selektion", IDM_SET_MULTIPLE_SELECTION MENUITEM SEPARATOR POPUP "&Erinnern an" BEGIN diff --git a/language/np3_el_gr/menu_el_gr.rc b/language/np3_el_gr/menu_el_gr.rc index ce0120cd9..69fa35b66 100644 --- a/language/np3_el_gr/menu_el_gr.rc +++ b/language/np3_el_gr/menu_el_gr.rc @@ -491,6 +491,7 @@ BEGIN END MENUITEM "Αποθήκευση π&ριν την εκτέλεση εργαλείων", IDM_SET_SAVEBEFORERUNNINGTOOLS MENUITEM "Υπολογισμός μικροσκοπικών εκ&φράσεων", IDM_SET_EVALTINYEXPRONSEL + MENUITEM "Enable Multiple Selection", IDM_SET_MULTIPLE_SELECTION MENUITEM SEPARATOR POPUP "Απομ&νημόνευση" BEGIN diff --git a/language/np3_en_gb/menu_en_gb.rc b/language/np3_en_gb/menu_en_gb.rc index d6deb39fa..c16a3106f 100644 --- a/language/np3_en_gb/menu_en_gb.rc +++ b/language/np3_en_gb/menu_en_gb.rc @@ -491,6 +491,7 @@ BEGIN END MENUITEM "Sa&ve Before Running Tools", IDM_SET_SAVEBEFORERUNNINGTOOLS MENUITEM "Calculate Tiny-E&xpressions", IDM_SET_EVALTINYEXPRONSEL + MENUITEM "Enable Multiple Selection", IDM_SET_MULTIPLE_SELECTION MENUITEM SEPARATOR POPUP "&Remember" BEGIN diff --git a/language/np3_en_us/menu_en_us.rc b/language/np3_en_us/menu_en_us.rc index 5d2656e8c..3a4c146de 100644 --- a/language/np3_en_us/menu_en_us.rc +++ b/language/np3_en_us/menu_en_us.rc @@ -491,6 +491,7 @@ BEGIN END MENUITEM "Sa&ve Before Running Tools", IDM_SET_SAVEBEFORERUNNINGTOOLS MENUITEM "Calculate Tiny-E&xpressions", IDM_SET_EVALTINYEXPRONSEL + MENUITEM "Enable Multiple Selection", IDM_SET_MULTIPLE_SELECTION MENUITEM SEPARATOR POPUP "&Remember" BEGIN diff --git a/language/np3_es_es/menu_es_es.rc b/language/np3_es_es/menu_es_es.rc index 120c43ac9..62b7dcf3b 100644 --- a/language/np3_es_es/menu_es_es.rc +++ b/language/np3_es_es/menu_es_es.rc @@ -491,6 +491,7 @@ BEGIN END MENUITEM "&Guardar antes de ejecutar", IDM_SET_SAVEBEFORERUNNINGTOOLS MENUITEM "Calcular Mini-E&xpresiones", IDM_SET_EVALTINYEXPRONSEL + MENUITEM "Enable Multiple Selection", IDM_SET_MULTIPLE_SELECTION MENUITEM SEPARATOR POPUP "&Recordar" BEGIN diff --git a/language/np3_fi_fi/menu_fi_fi.rc b/language/np3_fi_fi/menu_fi_fi.rc index 901196a61..040119f22 100644 --- a/language/np3_fi_fi/menu_fi_fi.rc +++ b/language/np3_fi_fi/menu_fi_fi.rc @@ -490,7 +490,8 @@ BEGIN MENUITEM "&Sulje Notepad3", IDM_SET_ESCEXIT END MENUITEM "Talle&nna ennen työkalujen käyttämistä", IDM_SET_SAVEBEFORERUNNINGTOOLS - MENUITEM "Laske Tiny-la&usekkeet", IDM_SET_EVALTINYEXPRONSEL + MENUITEM "Laske Tiny-la&usekkeet", IDM_SET_EVALTINYEXPRONSEL + MENUITEM "Enable Multiple Selection", IDM_SET_MULTIPLE_SELECTION MENUITEM SEPARATOR POPUP "&Muista" BEGIN diff --git a/language/np3_fr_fr/menu_fr_fr.rc b/language/np3_fr_fr/menu_fr_fr.rc index fa216a097..f253f29ad 100644 --- a/language/np3_fr_fr/menu_fr_fr.rc +++ b/language/np3_fr_fr/menu_fr_fr.rc @@ -491,6 +491,7 @@ BEGIN END MENUITEM "Sauvegarder avant d'exécuter les outils", IDM_SET_SAVEBEFORERUNNINGTOOLS MENUITEM "Calculer des mini-e&xpressions", IDM_SET_EVALTINYEXPRONSEL + MENUITEM "Enable Multiple Selection", IDM_SET_MULTIPLE_SELECTION MENUITEM SEPARATOR POPUP "Mémoriser" BEGIN diff --git a/language/np3_hi_in/menu_hi_in.rc b/language/np3_hi_in/menu_hi_in.rc index af2d43a35..97b26ba21 100644 --- a/language/np3_hi_in/menu_hi_in.rc +++ b/language/np3_hi_in/menu_hi_in.rc @@ -491,6 +491,7 @@ BEGIN END MENUITEM "टूल चलाने से पूर्व सहेजें (&V)", IDM_SET_SAVEBEFORERUNNINGTOOLS MENUITEM "लघु व्यंजक की गणना करें (&X)", IDM_SET_EVALTINYEXPRONSEL + MENUITEM "Enable Multiple Selection", IDM_SET_MULTIPLE_SELECTION MENUITEM SEPARATOR POPUP "स्मरण (&R)" BEGIN diff --git a/language/np3_hu_hu/menu_hu_hu.rc b/language/np3_hu_hu/menu_hu_hu.rc index 243c3e910..719dbb1c9 100644 --- a/language/np3_hu_hu/menu_hu_hu.rc +++ b/language/np3_hu_hu/menu_hu_hu.rc @@ -491,6 +491,7 @@ BEGIN END MENUITEM "Eszközök &futtatása előtt mentés", IDM_SET_SAVEBEFORERUNNINGTOOLS MENUITEM "Mi&ni kifejezések kiszámítása", IDM_SET_EVALTINYEXPRONSEL + MENUITEM "Enable Multiple Selection", IDM_SET_MULTIPLE_SELECTION MENUITEM SEPARATOR POPUP "&Emlékezés" BEGIN diff --git a/language/np3_id_id/menu_id_id.rc b/language/np3_id_id/menu_id_id.rc index e50b6293a..1edf3f51f 100644 --- a/language/np3_id_id/menu_id_id.rc +++ b/language/np3_id_id/menu_id_id.rc @@ -491,6 +491,7 @@ BEGIN END MENUITEM "&Simpan sebelum Menggunakan Alat", IDM_SET_SAVEBEFORERUNNINGTOOLS MENUITEM "Hitung &Ekspresi Kecil", IDM_SET_EVALTINYEXPRONSEL + MENUITEM "Enable Multiple Selection", IDM_SET_MULTIPLE_SELECTION MENUITEM SEPARATOR POPUP "Meng&ingat" BEGIN diff --git a/language/np3_it_it/menu_it_it.rc b/language/np3_it_it/menu_it_it.rc index ed140278a..7e196ed9e 100644 --- a/language/np3_it_it/menu_it_it.rc +++ b/language/np3_it_it/menu_it_it.rc @@ -491,6 +491,7 @@ BEGIN END MENUITEM "Salva prima di eseguire", IDM_SET_SAVEBEFORERUNNINGTOOLS MENUITEM "Calcola Tiny-E&xpressions", IDM_SET_EVALTINYEXPRONSEL + MENUITEM "Enable Multiple Selection", IDM_SET_MULTIPLE_SELECTION MENUITEM SEPARATOR POPUP "&Ricorda" BEGIN diff --git a/language/np3_ja_jp/menu_ja_jp.rc b/language/np3_ja_jp/menu_ja_jp.rc index 21a79b64b..fafc6409c 100644 --- a/language/np3_ja_jp/menu_ja_jp.rc +++ b/language/np3_ja_jp/menu_ja_jp.rc @@ -491,6 +491,7 @@ BEGIN END MENUITEM "ツール実行前に保存(&V)", IDM_SET_SAVEBEFORERUNNINGTOOLS MENUITEM "数式を計算(TinyExpr)(&X)", IDM_SET_EVALTINYEXPRONSEL + MENUITEM "Enable Multiple Selection", IDM_SET_MULTIPLE_SELECTION MENUITEM SEPARATOR POPUP "履歴の保存(&R)" BEGIN diff --git a/language/np3_ko_kr/menu_ko_kr.rc b/language/np3_ko_kr/menu_ko_kr.rc index 057000095..87ef383f7 100644 --- a/language/np3_ko_kr/menu_ko_kr.rc +++ b/language/np3_ko_kr/menu_ko_kr.rc @@ -490,7 +490,8 @@ BEGIN MENUITEM "Notepad3 종료(&X)", IDM_SET_ESCEXIT END MENUITEM "도구 실행 전에 저장(&V)", IDM_SET_SAVEBEFORERUNNINGTOOLS - MENUITEM "작은 표현식 계산", IDM_SET_EVALTINYEXPRONSEL + MENUITEM "작은 표현식 계산", IDM_SET_EVALTINYEXPRONSEL + MENUITEM "Enable Multiple Selection", IDM_SET_MULTIPLE_SELECTION MENUITEM SEPARATOR POPUP "기억(&R)" BEGIN diff --git a/language/np3_nl_nl/menu_nl_nl.rc b/language/np3_nl_nl/menu_nl_nl.rc index 17dae976a..7e6c5bb6f 100644 --- a/language/np3_nl_nl/menu_nl_nl.rc +++ b/language/np3_nl_nl/menu_nl_nl.rc @@ -491,6 +491,7 @@ BEGIN END MENUITEM "O&pslaan voor uitvoeren", IDM_SET_SAVEBEFORERUNNINGTOOLS MENUITEM "Tiny-E&xpressies berekenen", IDM_SET_EVALTINYEXPRONSEL + MENUITEM "Enable Multiple Selection", IDM_SET_MULTIPLE_SELECTION MENUITEM SEPARATOR POPUP "&Onthouden" BEGIN diff --git a/language/np3_pl_pl/menu_pl_pl.rc b/language/np3_pl_pl/menu_pl_pl.rc index 1e31db6e0..96b5bf6ae 100644 --- a/language/np3_pl_pl/menu_pl_pl.rc +++ b/language/np3_pl_pl/menu_pl_pl.rc @@ -491,6 +491,7 @@ BEGIN END MENUITEM "Zapisz przed uruchomieniem narzędzi", IDM_SET_SAVEBEFORERUNNINGTOOLS MENUITEM "Przelicz niewielkie wyrażenia", IDM_SET_EVALTINYEXPRONSEL + MENUITEM "Enable Multiple Selection", IDM_SET_MULTIPLE_SELECTION MENUITEM SEPARATOR POPUP "&Zapamiętaj" BEGIN diff --git a/language/np3_pt_br/menu_pt_br.rc b/language/np3_pt_br/menu_pt_br.rc index 43dfc7863..c00318b83 100644 --- a/language/np3_pt_br/menu_pt_br.rc +++ b/language/np3_pt_br/menu_pt_br.rc @@ -491,6 +491,7 @@ BEGIN END MENUITEM "Salvar &Antes de Executar Ferramentas Externas", IDM_SET_SAVEBEFORERUNNINGTOOLS MENUITEM "Calcular Tiny-E&xpressions", IDM_SET_EVALTINYEXPRONSEL + MENUITEM "Enable Multiple Selection", IDM_SET_MULTIPLE_SELECTION MENUITEM SEPARATOR POPUP "&Lembrar" BEGIN diff --git a/language/np3_pt_pt/menu_pt_pt.rc b/language/np3_pt_pt/menu_pt_pt.rc index 68c168508..4ef4ba202 100644 --- a/language/np3_pt_pt/menu_pt_pt.rc +++ b/language/np3_pt_pt/menu_pt_pt.rc @@ -491,6 +491,7 @@ BEGIN END MENUITEM "Guardar &antes de executar ferramentas", IDM_SET_SAVEBEFORERUNNINGTOOLS MENUITEM "Calcular E&xpressões-muito pequenas", IDM_SET_EVALTINYEXPRONSEL + MENUITEM "Enable Multiple Selection", IDM_SET_MULTIPLE_SELECTION MENUITEM SEPARATOR POPUP "Lemb&rar" BEGIN diff --git a/language/np3_ru_ru/menu_ru_ru.rc b/language/np3_ru_ru/menu_ru_ru.rc index a7bdf9ec5..dde67bbe6 100644 --- a/language/np3_ru_ru/menu_ru_ru.rc +++ b/language/np3_ru_ru/menu_ru_ru.rc @@ -491,6 +491,7 @@ BEGIN END MENUITEM "Сохранять перед запуском инструментов", IDM_SET_SAVEBEFORERUNNINGTOOLS MENUITEM "Вычислять простые в&ыражения", IDM_SET_EVALTINYEXPRONSEL + MENUITEM "Enable Multiple Selection", IDM_SET_MULTIPLE_SELECTION MENUITEM SEPARATOR POPUP "&История" BEGIN diff --git a/language/np3_sk_sk/menu_sk_sk.rc b/language/np3_sk_sk/menu_sk_sk.rc index 4784c5864..1d7cc1418 100644 --- a/language/np3_sk_sk/menu_sk_sk.rc +++ b/language/np3_sk_sk/menu_sk_sk.rc @@ -491,6 +491,7 @@ BEGIN END MENUITEM "Uložiť pred spustením &nástrojov", IDM_SET_SAVEBEFORERUNNINGTOOLS MENUITEM "Výpočet drobných výrazov", IDM_SET_EVALTINYEXPRONSEL + MENUITEM "Enable Multiple Selection", IDM_SET_MULTIPLE_SELECTION MENUITEM SEPARATOR POPUP "&Pamätať si" BEGIN diff --git a/language/np3_sv_se/menu_sv_se.rc b/language/np3_sv_se/menu_sv_se.rc index c86c932d7..a3f3efa10 100644 --- a/language/np3_sv_se/menu_sv_se.rc +++ b/language/np3_sv_se/menu_sv_se.rc @@ -491,6 +491,7 @@ BEGIN END MENUITEM "Spara innan verktyg används", IDM_SET_SAVEBEFORERUNNINGTOOLS MENUITEM "Räkna ut Tiny-E&xpressions", IDM_SET_EVALTINYEXPRONSEL + MENUITEM "Enable Multiple Selection", IDM_SET_MULTIPLE_SELECTION MENUITEM SEPARATOR POPUP "Kom ihåg" BEGIN diff --git a/language/np3_tr_tr/menu_tr_tr.rc b/language/np3_tr_tr/menu_tr_tr.rc index 22ae59782..137490366 100644 --- a/language/np3_tr_tr/menu_tr_tr.rc +++ b/language/np3_tr_tr/menu_tr_tr.rc @@ -491,6 +491,7 @@ BEGIN END MENUITEM "Araçlar çalıştırılmadan önce dosya kaydedilsin", IDM_SET_SAVEBEFORERUNNINGTOOLS MENUITEM "Küçük i&fadeler hesaplansın", IDM_SET_EVALTINYEXPRONSEL + MENUITEM "Enable Multiple Selection", IDM_SET_MULTIPLE_SELECTION MENUITEM SEPARATOR POPUP "&Hatırlanacaklar" BEGIN diff --git a/language/np3_vi_vn/menu_vi_vn.rc b/language/np3_vi_vn/menu_vi_vn.rc index e7ec675c8..cb5ff5b03 100644 --- a/language/np3_vi_vn/menu_vi_vn.rc +++ b/language/np3_vi_vn/menu_vi_vn.rc @@ -491,6 +491,7 @@ BEGIN END MENUITEM "Sa&ve Before Running Tools", IDM_SET_SAVEBEFORERUNNINGTOOLS MENUITEM "Calculate Tiny-E&xpressions", IDM_SET_EVALTINYEXPRONSEL + MENUITEM "Enable Multiple Selection", IDM_SET_MULTIPLE_SELECTION MENUITEM SEPARATOR POPUP "&Remember" BEGIN diff --git a/language/np3_zh_cn/menu_zh_cn.rc b/language/np3_zh_cn/menu_zh_cn.rc index 1613dd769..3e35692b5 100644 --- a/language/np3_zh_cn/menu_zh_cn.rc +++ b/language/np3_zh_cn/menu_zh_cn.rc @@ -490,7 +490,8 @@ BEGIN MENUITEM "退出 Notepad3(&X)", IDM_SET_ESCEXIT END MENUITEM "运行工具前先保存(&V)", IDM_SET_SAVEBEFORERUNNINGTOOLS - MENUITEM "计算选定的表达式(&X)", IDM_SET_EVALTINYEXPRONSEL + MENUITEM "计算选定的表达式(&X)", IDM_SET_EVALTINYEXPRONSEL + MENUITEM "Enable Multiple Selection", IDM_SET_MULTIPLE_SELECTION MENUITEM SEPARATOR POPUP "记忆(&R)" BEGIN diff --git a/language/np3_zh_tw/menu_zh_tw.rc b/language/np3_zh_tw/menu_zh_tw.rc index d0155f1ff..4e4c7e4e9 100644 --- a/language/np3_zh_tw/menu_zh_tw.rc +++ b/language/np3_zh_tw/menu_zh_tw.rc @@ -472,7 +472,7 @@ BEGIN MENUITEM "自動換行設定(&W)...", IDM_SET_WORDWRAPSETTINGS MENUITEM "長行標記設定(&O)...", IDM_SET_LONGLINESETTINGS MENUITEM "自動縮排(&I)", IDM_SET_AUTOINDENTTEXT - MENUITEM "自動關閉引號(&Q)", IDM_SET_AUTOCLOSEQUOTES + MENUITEM "自動關閉引號(&Q)", IDM_SET_AUTOCLOSEQUOTES MENUITEM "自動關閉括弧(&B)", IDM_SET_AUTOCLOSEBRACKETS MENUITEM "自動關閉 HTML/XML 標記(&H)\tCtrl+Shift+H", IDM_SET_AUTOCLOSETAGS MENUITEM "自動完成單詞(&U)", IDM_SET_AUTOCOMPLETEWORDS @@ -491,6 +491,7 @@ BEGIN END MENUITEM "執行工具前先儲存(&V)", IDM_SET_SAVEBEFORERUNNINGTOOLS MENUITEM "計算微小表達式(&x)", IDM_SET_EVALTINYEXPRONSEL + MENUITEM "Enable Multiple Selection", IDM_SET_MULTIPLE_SELECTION MENUITEM SEPARATOR POPUP "記憶(&R)" BEGIN diff --git a/src/Config/Config.cpp b/src/Config/Config.cpp index 181c01f2a..5e686da76 100644 --- a/src/Config/Config.cpp +++ b/src/Config/Config.cpp @@ -1642,6 +1642,7 @@ void LoadSettings() GET_BOOL_VALUE_FROM_INISECTION(BackspaceUnindents, false); GET_BOOL_VALUE_FROM_INISECTION(WarnInconsistentIndents, false); GET_BOOL_VALUE_FROM_INISECTION(AutoDetectIndentSettings, false); + GET_BOOL_VALUE_FROM_INISECTION(MultipleSelection, true); GET_BOOL_VALUE_FROM_INISECTION(ShowBookmarkMargin, IniSectionGetBool(IniSecSettings, L"ShowSelectionMargin", true)); GET_BOOL_VALUE_FROM_INISECTION(ShowLineNumbers, true); @@ -2074,6 +2075,7 @@ static bool _SaveSettings(bool bForceSaveSettings) SAVE_VALUE_IF_NOT_EQ_DEFAULT(Bool, ShowIndentGuides); SAVE_VALUE_IF_NOT_EQ_DEFAULT(Bool, WarnInconsistentIndents); SAVE_VALUE_IF_NOT_EQ_DEFAULT(Bool, AutoDetectIndentSettings); + SAVE_VALUE_IF_NOT_EQ_DEFAULT(Bool, MultipleSelection); SAVE_VALUE_IF_NOT_EQ_DEFAULT(Bool, MarkLongLines); SAVE_VALUE_IF_NOT_EQ_DEFAULT(Int, LongLineMode); SAVE_VALUE_IF_NOT_EQ_DEFAULT(Int, LongLinesLimit); diff --git a/src/Notepad3.c b/src/Notepad3.c index 650c31a8d..29493cf50 100644 --- a/src/Notepad3.c +++ b/src/Notepad3.c @@ -2541,7 +2541,7 @@ static void _InitializeSciEditCtrl(HWND hwndEditCtrl) SciCall_SetScrollWidthTracking(true); // SciCall_SetScrollWidth(2000); - SciCall_SetMultipleSelection(true); + SciCall_SetMultipleSelection(Settings.MultipleSelection); SciCall_SetMultiPaste(SC_MULTIPASTE_EACH); // paste into rectangular selection SciCall_SetAdditionalSelectionTyping(true); SciCall_SetMouseSelectionRectangularSwitch(true); @@ -4564,6 +4564,8 @@ LRESULT MsgInitMenu(HWND hwnd, WPARAM wParam, LPARAM lParam) CheckCmd(hmenu, IDM_SET_ALTERNATE_WORD_SEPS, Settings.AccelWordNavigation); CheckCmd(hmenu, IDM_SET_AUTOSAVE_BACKUP, (Settings.AutoSaveOptions & (ASB_Periodic | ASB_Backup))); + CheckCmd(hmenu, IDM_SET_MULTIPLE_SELECTION, Settings.MultipleSelection); + bool const dwr = (Settings.RenderingTechnology > SC_TECHNOLOGY_DEFAULT); //bool const gdi = ((Settings.RenderingTechnology % SC_TECHNOLOGY_DIRECTWRITEDC) == 0); @@ -6110,6 +6112,12 @@ LRESULT MsgCommand(HWND hwnd, UINT umsg, WPARAM wParam, LPARAM lParam) break; + case IDM_SET_MULTIPLE_SELECTION: + Settings.MultipleSelection = !Settings.MultipleSelection; + SciCall_SetMultipleSelection(Settings.MultipleSelection); + break; + + case IDM_VIEW_LINENUMBERS: Settings.ShowLineNumbers = !Settings.ShowLineNumbers; UpdateMargins(true); @@ -12311,7 +12319,7 @@ bool ActivatePrevInst(const bool bSetForground) hwnd = NULL; if (EnumWindows(_EnumWndProc, (LPARAM)&hwnd)) { // Enabled - if (IsWindowEnabled(hwnd)) { + if (hwnd && IsWindowEnabled(hwnd)) { // Make sure the previous window won't pop up a change notification message //SendMessage(hwnd,WM_CHANGENOTIFYCLEAR,0,0); diff --git a/src/SciCall.h b/src/SciCall.h index 26e8c795e..97d08afd0 100644 --- a/src/SciCall.h +++ b/src/SciCall.h @@ -187,6 +187,7 @@ DeclareSciCallV1(SetMargins, SETMARGINS, int, nmarg); DeclareSciCallV1(SetPasteConvertEndings, SETPASTECONVERTENDINGS, bool, flag); DeclareSciCallV1(UsePopUp, USEPOPUP, int, option); // Multi Selection +DeclareSciCallR0(GetMultipleSelection, GETMULTIPLESELECTION, bool); DeclareSciCallV1(SetMultipleSelection, SETMULTIPLESELECTION, bool, flag); DeclareSciCallV1(SetMultiPaste, SETMULTIPASTE, int, option); DeclareSciCallR0(GetAdditionalSelectionTyping, GETADDITIONALSELECTIONTYPING, bool); diff --git a/src/TypeDefs.h b/src/TypeDefs.h index 7dea48669..7f8090d63 100644 --- a/src/TypeDefs.h +++ b/src/TypeDefs.h @@ -605,6 +605,7 @@ typedef struct SETTINGS_T { int IndentWidth; bool WarnInconsistentIndents; bool AutoDetectIndentSettings; + bool MultipleSelection; bool MarkLongLines; int LongLinesLimit; int LongLineMode;