diff --git a/Versions/build.txt b/Versions/build.txt index 368a8e0c3..64514165b 100644 --- a/Versions/build.txt +++ b/Versions/build.txt @@ -1 +1 @@ -2609 +2610 diff --git a/language/np3_af_za/dialogs_af_za.rc b/language/np3_af_za/dialogs_af_za.rc index 0bec1fb71..1008ab110 100644 --- a/language/np3_af_za/dialogs_af_za.rc +++ b/language/np3_af_za/dialogs_af_za.rc @@ -537,6 +537,8 @@ BEGIN EDITTEXT 100,7,18,98,14,ES_AUTOHSCROLL LTEXT "&Sluitings tag (can be edited):",IDC_STATIC,7,37,90,8 EDITTEXT 101,7,48,98,14,ES_AUTOHSCROLL + EDITTEXT 102,125,48,20,14,ES_AUTOHSCROLL + LTEXT "X Times",IDC_STATIC,148,50,24,8 DEFPUSHBUTTON "OK",IDOK,125,7,50,14 PUSHBUTTON "Kanselleer",IDCANCEL,125,24,50,14 END diff --git a/language/np3_be_by/dialogs_be_by.rc b/language/np3_be_by/dialogs_be_by.rc index 98f0986b9..1ed4338fc 100644 --- a/language/np3_be_by/dialogs_be_by.rc +++ b/language/np3_be_by/dialogs_be_by.rc @@ -537,6 +537,8 @@ BEGIN EDITTEXT 100,7,18,126,14,ES_AUTOHSCROLL LTEXT "& ( ):",IDC_STATIC,7,37,134,8 EDITTEXT 101,7,48,126,14,ES_AUTOHSCROLL + EDITTEXT 102,125,48,20,14,ES_AUTOHSCROLL + LTEXT "X Times",IDC_STATIC,148,50,24,8 DEFPUSHBUTTON "OK",IDOK,153,7,50,14 PUSHBUTTON "",IDCANCEL,153,24,50,14 END diff --git a/language/np3_de_de/dialogs_de_de.rc b/language/np3_de_de/dialogs_de_de.rc index 5b5d8ecb8..b11438214 100644 --- a/language/np3_de_de/dialogs_de_de.rc +++ b/language/np3_de_de/dialogs_de_de.rc @@ -537,6 +537,8 @@ BEGIN EDITTEXT 100,7,18,98,14,ES_AUTOHSCROLL LTEXT "&Schlieender Tag (vernderbar):",IDC_STATIC,7,37,100,8 EDITTEXT 101,7,48,98,14,ES_AUTOHSCROLL + EDITTEXT 102,125,48,20,14,ES_AUTOHSCROLL + LTEXT "X Wdh.",IDC_STATIC,148,50,24,8 DEFPUSHBUTTON "OK",IDOK,125,7,50,14 PUSHBUTTON "Abbrechen",IDCANCEL,125,24,50,14 END diff --git a/language/np3_en_gb/dialogs_en_gb.rc b/language/np3_en_gb/dialogs_en_gb.rc index baaee8bc7..1cb845055 100644 --- a/language/np3_en_gb/dialogs_en_gb.rc +++ b/language/np3_en_gb/dialogs_en_gb.rc @@ -537,6 +537,8 @@ BEGIN EDITTEXT 100,7,18,98,14,ES_AUTOHSCROLL LTEXT "&Closing tag (can be edited):",IDC_STATIC,7,37,90,8 EDITTEXT 101,7,48,98,14,ES_AUTOHSCROLL + EDITTEXT 102,125,48,20,14,ES_AUTOHSCROLL + LTEXT "X Times",IDC_STATIC,148,50,24,8 DEFPUSHBUTTON "OK",IDOK,125,7,50,14 PUSHBUTTON "Cancel",IDCANCEL,125,24,50,14 END diff --git a/language/np3_en_us/dialogs_en_us.rc b/language/np3_en_us/dialogs_en_us.rc index da5119c40..580aff0a1 100644 --- a/language/np3_en_us/dialogs_en_us.rc +++ b/language/np3_en_us/dialogs_en_us.rc @@ -537,6 +537,8 @@ BEGIN EDITTEXT 100,7,18,98,14,ES_AUTOHSCROLL LTEXT "&Closing tag (can be edited):",IDC_STATIC,7,37,90,8 EDITTEXT 101,7,48,98,14,ES_AUTOHSCROLL + EDITTEXT 102,125,48,20,14,ES_AUTOHSCROLL + LTEXT "X Times",IDC_STATIC,148,50,24,8 DEFPUSHBUTTON "OK",IDOK,125,7,50,14 PUSHBUTTON "Cancel",IDCANCEL,125,24,50,14 END diff --git a/language/np3_es_es/dialogs_es_es.rc b/language/np3_es_es/dialogs_es_es.rc index 0dcdee522..ac3d0a428 100644 --- a/language/np3_es_es/dialogs_es_es.rc +++ b/language/np3_es_es/dialogs_es_es.rc @@ -537,6 +537,8 @@ BEGIN EDITTEXT 100,7,18,98,14,ES_AUTOHSCROLL LTEXT "&Cierre tag (puede ser editado):",IDC_STATIC,7,37,120,8 EDITTEXT 101,7,48,98,14,ES_AUTOHSCROLL + EDITTEXT 102,125,48,20,14,ES_AUTOHSCROLL + LTEXT "X Times",IDC_STATIC,148,50,24,8 DEFPUSHBUTTON "OK",IDOK,125,7,50,14 PUSHBUTTON "Cancelar",IDCANCEL,125,24,50,14 END diff --git a/language/np3_fr_fr/dialogs_fr_fr.rc b/language/np3_fr_fr/dialogs_fr_fr.rc index 4a91ce3ec..55f9ec557 100644 --- a/language/np3_fr_fr/dialogs_fr_fr.rc +++ b/language/np3_fr_fr/dialogs_fr_fr.rc @@ -537,6 +537,8 @@ BEGIN EDITTEXT 100,7,18,98,14,ES_AUTOHSCROLL LTEXT "&Fermeture tag (peut tre dit):",IDC_STATIC,7,37,105,8 EDITTEXT 101,7,48,98,14,ES_AUTOHSCROLL + EDITTEXT 102,125,48,20,14,ES_AUTOHSCROLL + LTEXT "X Times",IDC_STATIC,148,50,24,8 DEFPUSHBUTTON "OK",IDOK,125,7,50,14 PUSHBUTTON "Annuler",IDCANCEL,125,24,50,14 END diff --git a/language/np3_hu_hu/dialogs_hu_hu.rc b/language/np3_hu_hu/dialogs_hu_hu.rc index 550c09538..453f1db05 100644 --- a/language/np3_hu_hu/dialogs_hu_hu.rc +++ b/language/np3_hu_hu/dialogs_hu_hu.rc @@ -537,6 +537,8 @@ BEGIN EDITTEXT 100,7,18,98,14,ES_AUTOHSCROLL LTEXT "&Zr elem (szerkeszthet):",IDC_STATIC,7,37,90,8 EDITTEXT 101,7,48,98,14,ES_AUTOHSCROLL + EDITTEXT 102,125,48,20,14,ES_AUTOHSCROLL + LTEXT "X Times",IDC_STATIC,148,50,24,8 DEFPUSHBUTTON "OK",IDOK,125,7,50,14 PUSHBUTTON "Mgsem",IDCANCEL,125,24,50,14 END diff --git a/language/np3_it_it/dialogs_it_it.rc b/language/np3_it_it/dialogs_it_it.rc index 1680e61b2..35d8ea075 100644 --- a/language/np3_it_it/dialogs_it_it.rc +++ b/language/np3_it_it/dialogs_it_it.rc @@ -537,6 +537,8 @@ BEGIN EDITTEXT 100,7,18,98,14,ES_AUTOHSCROLL LTEXT "Tag di &chiusura (pu essere modificato):",IDC_STATIC,7,37,125,8 EDITTEXT 101,7,48,98,14,ES_AUTOHSCROLL + EDITTEXT 102,125,48,20,14,ES_AUTOHSCROLL + LTEXT "X Times",IDC_STATIC,148,50,24,8 DEFPUSHBUTTON "OK",IDOK,128,7,50,14 PUSHBUTTON "Annulla",IDCANCEL,128,24,50,14 END diff --git a/language/np3_ja_jp/dialogs_ja_jp.rc b/language/np3_ja_jp/dialogs_ja_jp.rc index 90424fd1d..94789bbf0 100644 --- a/language/np3_ja_jp/dialogs_ja_jp.rc +++ b/language/np3_ja_jp/dialogs_ja_jp.rc @@ -537,6 +537,8 @@ BEGIN EDITTEXT 100,7,18,98,14,ES_AUTOHSCROLL LTEXT "‚^O(ҏW)(&C):",IDC_STATIC,7,37,90,8 EDITTEXT 101,7,48,98,14,ES_AUTOHSCROLL + EDITTEXT 102,125,48,20,14,ES_AUTOHSCROLL + LTEXT "X Times",IDC_STATIC,148,50,24,8 DEFPUSHBUTTON "OK",IDOK,125,7,50,14 PUSHBUTTON "LZ",IDCANCEL,125,24,50,14 END diff --git a/language/np3_ko_kr/dialogs_ko_kr.rc b/language/np3_ko_kr/dialogs_ko_kr.rc index 60a492dea..50534d19e 100644 --- a/language/np3_ko_kr/dialogs_ko_kr.rc +++ b/language/np3_ko_kr/dialogs_ko_kr.rc @@ -537,6 +537,8 @@ BEGIN EDITTEXT 100,7,18,98,14,ES_AUTOHSCROLL LTEXT "ݴ ±( )(&C):",IDC_STATIC,7,37,90,8 EDITTEXT 101,7,48,98,14,ES_AUTOHSCROLL + EDITTEXT 102,125,48,20,14,ES_AUTOHSCROLL + LTEXT "X Times",IDC_STATIC,148,50,24,8 DEFPUSHBUTTON "Ȯ",IDOK,125,7,50,14 PUSHBUTTON "",IDCANCEL,125,24,50,14 END diff --git a/language/np3_nl_nl/dialogs_nl_nl.rc b/language/np3_nl_nl/dialogs_nl_nl.rc index 287f81a78..64fea45c1 100644 --- a/language/np3_nl_nl/dialogs_nl_nl.rc +++ b/language/np3_nl_nl/dialogs_nl_nl.rc @@ -537,6 +537,8 @@ BEGIN EDITTEXT 100,7,18,98,14,ES_AUTOHSCROLL LTEXT "&Tag sluiten (kan worden bewerkt):",IDC_STATIC,7,37,125,8 EDITTEXT 101,7,48,98,14,ES_AUTOHSCROLL + EDITTEXT 102,125,48,20,14,ES_AUTOHSCROLL + LTEXT "X Times",IDC_STATIC,148,50,24,8 DEFPUSHBUTTON "OK",IDOK,125,7,50,14 PUSHBUTTON "Annuleren",IDCANCEL,125,24,50,14 END diff --git a/language/np3_pl_pl/dialogs_pl_pl.rc b/language/np3_pl_pl/dialogs_pl_pl.rc index c962d43c5..f3c25492b 100644 --- a/language/np3_pl_pl/dialogs_pl_pl.rc +++ b/language/np3_pl_pl/dialogs_pl_pl.rc @@ -537,6 +537,8 @@ BEGIN EDITTEXT 100,7,18,98,14,ES_AUTOHSCROLL LTEXT "&Zamykanie znacznika (moliwo edycji):",IDC_STATIC,7,37,90,8 EDITTEXT 101,7,48,98,14,ES_AUTOHSCROLL + EDITTEXT 102,125,48,20,14,ES_AUTOHSCROLL + LTEXT "X Times",IDC_STATIC,148,50,24,8 DEFPUSHBUTTON "OK",IDOK,125,7,50,14 PUSHBUTTON "Anuluj",IDCANCEL,125,24,50,14 END diff --git a/language/np3_pt_br/dialogs_pt_br.rc b/language/np3_pt_br/dialogs_pt_br.rc index 0afebbeed..bdef77409 100644 --- a/language/np3_pt_br/dialogs_pt_br.rc +++ b/language/np3_pt_br/dialogs_pt_br.rc @@ -537,6 +537,8 @@ BEGIN EDITTEXT 100,7,18,98,14,ES_AUTOHSCROLL LTEXT "&Fechando tag (pode ser editada):",IDC_STATIC,7,37,90,8 EDITTEXT 101,7,48,98,14,ES_AUTOHSCROLL + EDITTEXT 102,125,48,20,14,ES_AUTOHSCROLL + LTEXT "X Times",IDC_STATIC,148,50,24,8 DEFPUSHBUTTON "OK",IDOK,125,7,50,14 PUSHBUTTON "Cancel",IDCANCEL,125,24,50,14 END diff --git a/language/np3_ru_ru/dialogs_ru_ru.rc b/language/np3_ru_ru/dialogs_ru_ru.rc index fc045b972..69b977366 100644 --- a/language/np3_ru_ru/dialogs_ru_ru.rc +++ b/language/np3_ru_ru/dialogs_ru_ru.rc @@ -537,6 +537,8 @@ BEGIN EDITTEXT 100,7,18,126,14,ES_AUTOHSCROLL LTEXT "& ():",IDC_STATIC,7,37,128,8 EDITTEXT 101,7,48,126,14,ES_AUTOHSCROLL + EDITTEXT 102,125,48,20,14,ES_AUTOHSCROLL + LTEXT "X Times",IDC_STATIC,148,50,24,8 DEFPUSHBUTTON "OK",IDOK,153,7,50,14 PUSHBUTTON "",IDCANCEL,153,24,50,14 END diff --git a/language/np3_sk_sk/dialogs_sk_sk.rc b/language/np3_sk_sk/dialogs_sk_sk.rc index 476160bab..49aefc55a 100644 --- a/language/np3_sk_sk/dialogs_sk_sk.rc +++ b/language/np3_sk_sk/dialogs_sk_sk.rc @@ -537,6 +537,8 @@ BEGIN EDITTEXT 100,7,18,98,14,ES_AUTOHSCROLL LTEXT "&Closing tag (can be edited):",IDC_STATIC,7,37,90,8 EDITTEXT 101,7,48,98,14,ES_AUTOHSCROLL + EDITTEXT 102,125,48,20,14,ES_AUTOHSCROLL + LTEXT "X Times",IDC_STATIC,148,50,24,8 DEFPUSHBUTTON "OK",IDOK,125,7,50,14 PUSHBUTTON "Cancel",IDCANCEL,125,24,50,14 END diff --git a/language/np3_sv_se/dialogs_sv_se.rc b/language/np3_sv_se/dialogs_sv_se.rc index 9db1fe8bc..82052055a 100644 --- a/language/np3_sv_se/dialogs_sv_se.rc +++ b/language/np3_sv_se/dialogs_sv_se.rc @@ -537,6 +537,8 @@ BEGIN EDITTEXT 100,7,18,98,14,ES_AUTOHSCROLL LTEXT "&Closing tag (can be edited):",IDC_STATIC,7,37,90,8 EDITTEXT 101,7,48,98,14,ES_AUTOHSCROLL + EDITTEXT 102,125,48,20,14,ES_AUTOHSCROLL + LTEXT "X Times",IDC_STATIC,148,50,24,8 DEFPUSHBUTTON "OK",IDOK,125,7,50,14 PUSHBUTTON "Cancel",IDCANCEL,125,24,50,14 END diff --git a/language/np3_tr_tr/dialogs_tr_tr.rc b/language/np3_tr_tr/dialogs_tr_tr.rc index 153d4852b..c422d7568 100644 --- a/language/np3_tr_tr/dialogs_tr_tr.rc +++ b/language/np3_tr_tr/dialogs_tr_tr.rc @@ -537,6 +537,8 @@ BEGIN EDITTEXT 100,7,18,98,14,ES_AUTOHSCROLL LTEXT "&Closing tag (can be edited):",IDC_STATIC,7,37,90,8 EDITTEXT 101,7,48,98,14,ES_AUTOHSCROLL + EDITTEXT 102,125,48,20,14,ES_AUTOHSCROLL + LTEXT "X Times",IDC_STATIC,148,50,24,8 DEFPUSHBUTTON "OK",IDOK,125,7,50,14 PUSHBUTTON "Cancel",IDCANCEL,125,24,50,14 END diff --git a/language/np3_zh_cn/dialogs_zh_cn.rc b/language/np3_zh_cn/dialogs_zh_cn.rc index 64fdfc826..2ed1125fd 100644 --- a/language/np3_zh_cn/dialogs_zh_cn.rc +++ b/language/np3_zh_cn/dialogs_zh_cn.rc @@ -537,6 +537,8 @@ BEGIN EDITTEXT 100,7,18,98,14,ES_AUTOHSCROLL LTEXT "رձ(&C)",IDC_STATIC,7,37,90,8 EDITTEXT 101,7,48,98,14,ES_AUTOHSCROLL + EDITTEXT 102,125,48,20,14,ES_AUTOHSCROLL + LTEXT "X Times",IDC_STATIC,148,50,24,8 DEFPUSHBUTTON "ȷ",IDOK,125,7,50,14 PUSHBUTTON "ȡ",IDCANCEL,125,24,50,14 END diff --git a/res/Notepad3.exe.manifest.conf b/res/Notepad3.exe.manifest.conf index 36e50aaa5..be1bb1fed 100644 --- a/res/Notepad3.exe.manifest.conf +++ b/res/Notepad3.exe.manifest.conf @@ -3,7 +3,7 @@ Notepad3 BETA diff --git a/src/Dialogs.c b/src/Dialogs.c index bc7476537..4557dd63f 100644 --- a/src/Dialogs.c +++ b/src/Dialogs.c @@ -2343,10 +2343,8 @@ static INT_PTR CALLBACK LongLineSettingsDlgProc(HWND hwnd, UINT umsg, WPARAM wPa UINT* piNumber = (UINT*)GetWindowLongPtr(hwnd, DWLP_USER); *piNumber = iNewNumber; Settings.LongLineMode = IsButtonChecked(hwnd, 101) ? EDGE_LINE : EDGE_BACKGROUND; - EndDialog(hwnd, IDOK); } - else { PostMessage(hwnd, WM_NEXTDLGCTL, (WPARAM)(GetDlgItem(hwnd, 100)), 1); } diff --git a/src/Edit.c b/src/Edit.c index edb85e559..6ef0fb462 100644 --- a/src/Edit.c +++ b/src/Edit.c @@ -7769,28 +7769,37 @@ bool EditEncloseSelectionDlg(HWND hwnd,LPWSTR pwszOpen,LPWSTR pwszClose) // // Controls: 100 Input // 101 Input +// 102 Times // typedef struct _tagsdata { LPWSTR pwsz1; LPWSTR pwsz2; + UINT repeat; } TAGSDATA, *PTAGSDATA; static INT_PTR CALLBACK EditInsertTagDlgProc(HWND hwnd,UINT umsg,WPARAM wParam,LPARAM lParam) { static PTAGSDATA pdata; + static WCHAR wchOpenTagStrg[256] = { L'\0' }; + static WCHAR wchCloseTagStrg[256] = { L'\0' }; + switch(umsg) { case WM_INITDIALOG: { pdata = (PTAGSDATA)lParam; if (Globals.hDlgIcon) { SendMessage(hwnd, WM_SETICON, ICON_SMALL, (LPARAM)Globals.hDlgIcon); } - SendDlgItemMessage(hwnd,100,EM_LIMITTEXT,254,0); - SetDlgItemTextW(hwnd,100,L""); - SendDlgItemMessage(hwnd,101,EM_LIMITTEXT,255,0); - SetDlgItemTextW(hwnd,101,L""); + if (!wchOpenTagStrg[0]) { StringCchCopy(wchOpenTagStrg, COUNTOF(wchOpenTagStrg), L""); } + if (!wchCloseTagStrg[0]) { StringCchCopy(wchCloseTagStrg, COUNTOF(wchCloseTagStrg), L""); } + SendDlgItemMessage(hwnd,100,EM_LIMITTEXT, COUNTOF(wchOpenTagStrg)-1,0); + SetDlgItemTextW(hwnd,100, wchOpenTagStrg); + SendDlgItemMessage(hwnd,101,EM_LIMITTEXT, COUNTOF(wchCloseTagStrg)-1,0); + SetDlgItemTextW(hwnd,101, wchCloseTagStrg); + pdata->repeat = 1; + SetDlgItemInt(hwnd, 102, pdata->repeat, FALSE); SetFocus(GetDlgItem(hwnd,100)); - PostMessage(GetDlgItem(hwnd,100),EM_SETSEL,1,4); + PostMessage(GetDlgItem(hwnd,100),EM_SETSEL,1,(int)(StringCchLen(wchOpenTagStrg,0)-1)); CenterDlgInParent(hwnd); } return false; @@ -7806,15 +7815,15 @@ static INT_PTR CALLBACK EditInsertTagDlgProc(HWND hwnd,UINT umsg,WPARAM wParam,L if (HIWORD(wParam) == EN_CHANGE) { bool bClear = true; - WCHAR wchBuf[256] = { L'\0' }; - GetDlgItemTextW(hwnd,100,wchBuf,256); - if (StringCchLenW(wchBuf,COUNTOF(wchBuf)) >= 3) { + GetDlgItemTextW(hwnd,100,wchOpenTagStrg, COUNTOF(wchOpenTagStrg)); + if (StringCchLenW(wchOpenTagStrg,COUNTOF(wchOpenTagStrg)) >= 3) { - if (wchBuf[0] == L'<') + if (wchOpenTagStrg[0] == L'<') { - WCHAR wchIns[256] = L"') - - pwCur++; + while (*pwCur && *pwCur != L'>') { pwCur++; } if (*pwCur == L'>' && *(pwCur-1) != L'/') { wchIns[cchIns++] = L'>'; @@ -7844,22 +7849,30 @@ static INT_PTR CALLBACK EditInsertTagDlgProc(HWND hwnd,UINT umsg,WPARAM wParam,L StringCchCompareXI(wchIns,L"") && StringCchCompareXI(wchIns,L"") && StringCchCompareXI(wchIns,L"") && - StringCchCompareXI(wchIns,L"")) { - - SetDlgItemTextW(hwnd,101,wchIns); + StringCchCompareXI(wchIns,L"")) + { + SetDlgItemTextW(hwnd,101, wchIns); bClear = false; } } } } - if (bClear) - SetDlgItemTextW(hwnd,101,L""); + if (bClear) { + SetDlgItemTextW(hwnd, 101, L""); + } } } break; case IDOK: { - GetDlgItemTextW(hwnd,100,pdata->pwsz1,256); - GetDlgItemTextW(hwnd,101,pdata->pwsz2,256); + GetDlgItemTextW(hwnd, 100, wchOpenTagStrg, COUNTOF(wchOpenTagStrg)); + GetDlgItemTextW(hwnd, 101, wchCloseTagStrg, COUNTOF(wchCloseTagStrg)); + StringCchCopy(pdata->pwsz1, 256, wchOpenTagStrg); + StringCchCopy(pdata->pwsz2, 256, wchCloseTagStrg); + BOOL fTranslated = FALSE; + UINT const iTimes = GetDlgItemInt(hwnd, 102, &fTranslated, FALSE); + if (fTranslated) { + pdata->repeat = clampu(iTimes, 1, UINT_MAX); + } EndDialog(hwnd,IDOK); } break; @@ -7877,12 +7890,12 @@ static INT_PTR CALLBACK EditInsertTagDlgProc(HWND hwnd,UINT umsg,WPARAM wParam,L // // EditInsertTagDlg() // -bool EditInsertTagDlg(HWND hwnd,LPWSTR pwszOpen,LPWSTR pwszClose) +bool EditInsertTagDlg(HWND hwnd,LPWSTR pwszOpen,LPWSTR pwszClose, UINT* pRepeat) { INT_PTR iResult; TAGSDATA data; - data.pwsz1 = pwszOpen; data.pwsz2 = pwszClose; + data.pwsz1 = pwszOpen; data.pwsz2 = pwszClose; data.repeat = 1; iResult = ThemedDialogBoxParam( Globals.hLngResContainer, @@ -7891,8 +7904,11 @@ bool EditInsertTagDlg(HWND hwnd,LPWSTR pwszOpen,LPWSTR pwszClose) EditInsertTagDlgProc, (LPARAM)&data); - return (iResult == IDOK) ? true : false; - + if (iResult == IDOK) { + *pRepeat = data.repeat; + return true; + } + return false; } diff --git a/src/Edit.h b/src/Edit.h index dff89681d..ef126ab08 100644 --- a/src/Edit.h +++ b/src/Edit.h @@ -95,7 +95,7 @@ bool EditReplaceAllInSelection(HWND hwnd,LPCEDITFINDREPLACE lpefr,bool); bool EditLinenumDlg(HWND hwnd); bool EditModifyLinesDlg(HWND hwnd,LPWSTR pwsz1,LPWSTR pwsz2); bool EditEncloseSelectionDlg(HWND hwnd,LPWSTR pwszOpen,LPWSTR pwszClose); -bool EditInsertTagDlg(HWND hwnd,LPWSTR pwszOpen,LPWSTR pwszClose); +bool EditInsertTagDlg(HWND hwnd,LPWSTR pwszOpen,LPWSTR pwszClose,UINT* pRepeat); bool EditSortDlg(HWND hwnd,int* piSortFlags); bool EditAlignDlg(HWND hwnd,int* piAlignMode); bool EditPrint(HWND,LPCWSTR,LPCWSTR); diff --git a/src/Notepad3.c b/src/Notepad3.c index dd7a81580..4d189543e 100644 --- a/src/Notepad3.c +++ b/src/Notepad3.c @@ -4332,8 +4332,12 @@ LRESULT MsgCommand(HWND hwnd, UINT umsg, WPARAM wParam, LPARAM lParam) { WCHAR wszOpen[256] = { L'\0' }; WCHAR wszClose[256] = { L'\0' }; - if (EditInsertTagDlg(hwnd, wszOpen, wszClose)) { - EditEncloseSelection(Globals.hwndEdit, wszOpen, wszClose); + UINT repeat = 1; + if (EditInsertTagDlg(hwnd, wszOpen, wszClose, &repeat)) { + while (repeat > 0) { + EditEncloseSelection(Globals.hwndEdit, wszOpen, wszClose); + --repeat; + } } } break; diff --git a/src/VersionEx.h b/src/VersionEx.h index 636e686df..047d469a4 100644 --- a/src/VersionEx.h +++ b/src/VersionEx.h @@ -8,7 +8,7 @@ #define VERSION_MAJOR 5 #define VERSION_MINOR 19 #define VERSION_REV 830 -#define VERSION_BUILD 2609 +#define VERSION_BUILD 2610 #define SCINTILLA_VER 420 #define ONIGURUMA_REGEX_VER 6.9.3 #define UCHARDET_VER 2018.09.27