Skip to content

Commit

Permalink
Merge pull request rizonesoft#5203 from RaiKoHoff/Dev_Master
Browse files Browse the repository at this point in the history
New settings option to enable/disable feature Multiple Selection
  • Loading branch information
hpwamr committed May 30, 2024
2 parents 47d2b62 + 2bfb55d commit 6f3357b
Show file tree
Hide file tree
Showing 31 changed files with 45 additions and 6 deletions.
1 change: 1 addition & 0 deletions language/common_res.h
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
1 change: 1 addition & 0 deletions language/np3_af_za/menu_af_za.rc
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
1 change: 1 addition & 0 deletions language/np3_be_by/menu_be_by.rc
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
1 change: 1 addition & 0 deletions language/np3_de_de/menu_de_de.rc
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
1 change: 1 addition & 0 deletions language/np3_el_gr/menu_el_gr.rc
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
1 change: 1 addition & 0 deletions language/np3_en_gb/menu_en_gb.rc
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
1 change: 1 addition & 0 deletions language/np3_en_us/menu_en_us.rc
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
1 change: 1 addition & 0 deletions language/np3_es_es/menu_es_es.rc
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
3 changes: 2 additions & 1 deletion language/np3_fi_fi/menu_fi_fi.rc
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
1 change: 1 addition & 0 deletions language/np3_fr_fr/menu_fr_fr.rc
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
1 change: 1 addition & 0 deletions language/np3_hi_in/menu_hi_in.rc
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
1 change: 1 addition & 0 deletions language/np3_hu_hu/menu_hu_hu.rc
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
1 change: 1 addition & 0 deletions language/np3_id_id/menu_id_id.rc
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
1 change: 1 addition & 0 deletions language/np3_it_it/menu_it_it.rc
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
1 change: 1 addition & 0 deletions language/np3_ja_jp/menu_ja_jp.rc
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
3 changes: 2 additions & 1 deletion language/np3_ko_kr/menu_ko_kr.rc
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
1 change: 1 addition & 0 deletions language/np3_nl_nl/menu_nl_nl.rc
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
1 change: 1 addition & 0 deletions language/np3_pl_pl/menu_pl_pl.rc
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
1 change: 1 addition & 0 deletions language/np3_pt_br/menu_pt_br.rc
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
1 change: 1 addition & 0 deletions language/np3_pt_pt/menu_pt_pt.rc
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
1 change: 1 addition & 0 deletions language/np3_ru_ru/menu_ru_ru.rc
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
1 change: 1 addition & 0 deletions language/np3_sk_sk/menu_sk_sk.rc
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
1 change: 1 addition & 0 deletions language/np3_sv_se/menu_sv_se.rc
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
1 change: 1 addition & 0 deletions language/np3_tr_tr/menu_tr_tr.rc
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
1 change: 1 addition & 0 deletions language/np3_vi_vn/menu_vi_vn.rc
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
3 changes: 2 additions & 1 deletion language/np3_zh_cn/menu_zh_cn.rc
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
3 changes: 2 additions & 1 deletion language/np3_zh_tw/menu_zh_tw.rc
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand All @@ -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
Expand Down
2 changes: 2 additions & 0 deletions src/Config/Config.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -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);
Expand Down Expand Up @@ -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);
Expand Down
12 changes: 10 additions & 2 deletions src/Notepad3.c
Original file line number Diff line number Diff line change
Expand Up @@ -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);
Expand Down Expand Up @@ -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);

Expand Down Expand Up @@ -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);
Expand Down Expand Up @@ -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);
Expand Down
1 change: 1 addition & 0 deletions src/SciCall.h
Original file line number Diff line number Diff line change
Expand Up @@ -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);
Expand Down
1 change: 1 addition & 0 deletions src/TypeDefs.h
Original file line number Diff line number Diff line change
Expand Up @@ -605,6 +605,7 @@ typedef struct SETTINGS_T {
int IndentWidth;
bool WarnInconsistentIndents;
bool AutoDetectIndentSettings;
bool MultipleSelection;
bool MarkLongLines;
int LongLinesLimit;
int LongLineMode;
Expand Down

0 comments on commit 6f3357b

Please sign in to comment.