From 18928095da245a9eb02989ee406915c6ca8a7a46 Mon Sep 17 00:00:00 2001 From: Rainer Kottenhoff Date: Sat, 24 Feb 2018 04:00:11 +0100 Subject: [PATCH 1/6] + firs draft of RichEdit Ctrl for AboutBox --- res/AboutInfo.rtf | Bin 0 -> 1323 bytes res/Notepad3.ico | Bin 95160 -> 151632 bytes res/Notepad3_128.ico | Bin 0 -> 67646 bytes src/Dialogs.c | 280 ++++++++++++++++++++++++++++++------------- src/Edit.c | 70 +++++------ src/Helpers.c | 36 +++++- src/Helpers.h | 2 + src/Notepad3.c | 50 +++----- src/Notepad3.rc | 56 +++++---- src/Version.h | Bin 10692 -> 18432 bytes src/resource.h | 12 +- 11 files changed, 319 insertions(+), 187 deletions(-) create mode 100644 res/AboutInfo.rtf create mode 100644 res/Notepad3_128.ico diff --git a/res/AboutInfo.rtf b/res/AboutInfo.rtf new file mode 100644 index 0000000000000000000000000000000000000000..88c46ff099bbcb7809b09f4c62ea26c486f7d28b GIT binary patch literal 1323 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�h!R|n+~n(F(n}rQ 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 z

{t#yunzI1ktSWeCS##yanN`FU;Yf6B`N)@V z1w-p9#y0Ap^*QX}7+DVc`dou4dvY&ByVXdNR$Oj+u`F&`Ti+@06seK;`cD}%)Sp4e zd5LPolV@wBjDXW-8;@f~McQIqRUihg{OMD8*^b1!yn`EBcDHQ%5 z;6H&15|QF%nGKd!mb2lw%p=jg8P zBl<8lvrEHX)MVK>=Y_#c9P~Hm8pkB?$lCzpD|)^WHvMhU+MP7(w~{YX-fo^fu1gze z$)rm>AH>a*Ih zXGP8eBfH5e#_YP81pch_k)={CHrhw4)ncLhE7oFh zO<2*j>7-SZP(oXntR|EiBwQJ;p=u4(25gJHjXt_e9o;jyMCTzut-;;}yG~twH$V+? zg@ZLQskoUXT5e2@S|m(Uv2B5Jc3I?Y2d=>cxVpq$t`nOsk$vld)jd031Mv7>pYweO zc4toT%{7$k;a}}r6L$)ghEQJIj2AgaXT7Y-vU0wF9z{azF7|LmPPtEjy)Nk%CG8rZ zKiCZIw&2sm$3u30vtQZLe#1T&s9)6+JW*AT@Zkzgc$_;vJbDX#FzzBTyE~$AIR74^ z`?j6{(Lxr#!wQ?-HCa*RUXOi1H&3x+!X7WXt=x%Y-oB9D_+U6AHq{R}%)YS)dbI41 z;c8SBv@GjS8Q)9l0VtCWoW&w%3!sF(y0#;)tQ?zN8&Rm{I_l$R!|@t8CS}v$xH^YA zUY!c3mAT_IO`qmH17ms7-|1RnIkHD8fFJL|YqNLH{Z?tV7~Yj&sJ63mydO)lNb!T^ z9P?V%Al5N==o%= zH<1(HrJFA~t))9Hl!Sy~Zz;kQ2Xl@^k5_ggX)@ zV~^6ox#-7g-y}EhC&@dc{O=U@tu%{+eIV{F;U1^7cUjy>C>~F!_=pa{Av$Ik_zv*R z4pL9wIRS^V6WHQom&N}Ejf+8cY|tYw0ET(flkfZ`M={2#61*`#q)q6v8Vsok_Z%rv delta 188 zcmZpez<4BhLlF1mAKWREZzu~)F5p=)xlB-Das!Xp#Z;+{z uABZ(Emoex~-YBKb43wH|C~+K{q5_zr$$nB2o3EMv5ty9DD>Yfj{T%@KB0Jgu diff --git a/src/resource.h b/src/resource.h index 9ae45d802..e0270544f 100644 --- a/src/resource.h +++ b/src/resource.h @@ -1,6 +1,6 @@ //{{NO_DEPENDENCIES}} -// Microsoft Visual C++ generated include file. -// Used by Notepad3.rc +// Von Microsoft Visual C++ generierte Includedatei. +// Verwendet durch Notepad3.rc // #define IDR_RT_MANIFEST 1 #define IDR_MAINWND 100 @@ -88,7 +88,6 @@ #define IDD_ADDTOFAV 182 #define IDC_FINDCLOSE 183 #define IDC_EMAIL3 184 -#define IDC_VERSION2 185 #define IDD_FILEMRU 186 #define IDC_FINDPREV 187 #define IDD_CHANGENOTIFY 188 @@ -147,7 +146,6 @@ #define IDACC_SELTOPREV 311 #define IDC_NFOASOEM 400 #define IDC_COMPILER 401 -#define IDC_COMPILER2 402 #define IDD_READPW 501 #define IDC_CHECK1 502 #define IDC_EDIT1 503 @@ -163,6 +161,10 @@ #define IDM_HELP_UPDATEINSTALLER 513 #define IDM_HELP_UPDATEWEBSITE 514 #define IDS_FR_STATUS_TEXT 515 +#define IDR_MAINWND128 550 +#define IDC_RICHEDITABOUT 551 +#define IDC_COPYVERSTRG 552 +#define IDR_ABOUTINFO_RTF 553 #define IDS_APPTITLE 10000 #define IDS_APPTITLE_ELEVATED 10001 #define IDS_APPTITLE_PASTEBOARD 10002 @@ -500,7 +502,7 @@ #define _APS_NO_MFC 1 #define _APS_NEXT_RESOURCE_VALUE 601 #define _APS_NEXT_COMMAND_VALUE 701 -#define _APS_NEXT_CONTROL_VALUE 801 +#define _APS_NEXT_CONTROL_VALUE 803 #define _APS_NEXT_SYMED_VALUE 901 #endif #endif From 528c32abe2230a132bbdd93fa51d3c3f048c0435 Mon Sep 17 00:00:00 2001 From: Rainer Kottenhoff Date: Sat, 24 Feb 2018 13:07:43 +0100 Subject: [PATCH 2/6] + enh: New About Box --- src/Dialogs.c | 56 +++++++++++++++++++++++------------ src/Notepad3.c | 9 ++---- src/Notepad3.rc | 16 ++-------- src/Notepad3.vcxproj | 5 ++++ src/Notepad3.vcxproj.filters | 4 +++ src/Version.h | Bin 18432 -> 19190 bytes src/resource.h | 1 - 7 files changed, 51 insertions(+), 40 deletions(-) diff --git a/src/Dialogs.c b/src/Dialogs.c index c92d97f6d..4ace66df0 100644 --- a/src/Dialogs.c +++ b/src/Dialogs.c @@ -34,7 +34,7 @@ #pragma warning( push ) #pragma warning( disable : 4201) // union/struct w/o name -#define _RICHEDIT_VER 0x0200 +#define _RICHEDIT_VER 0x0410 #include #include "scintilla.h" @@ -66,7 +66,6 @@ extern int flagNoFileVariables; extern int flagUseSystemMRU; - //============================================================================= // // MsgBox() @@ -301,7 +300,6 @@ static char* pAboutInfo; INT_PTR CALLBACK AboutDlgProc(HWND hwnd, UINT umsg, WPARAM wParam, LPARAM lParam) { WCHAR wch[256] = { L'\0' }; - static HFONT hFontTitle; switch (umsg) @@ -340,12 +338,25 @@ INT_PTR CALLBACK AboutDlgProc(HWND hwnd, UINT umsg, WPARAM wParam, LPARAM lParam // --- Rich Edit Control --- COLORREF colBackGr = RGB(230, 230, 230); - SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_SETBKGNDCOLOR, 0, colBackGr); - - //SetDlgItemText(hwnd, IDC_RICHEDITABOUT, VERSION_CONTRIBUTORS); + SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_SETBKGNDCOLOR, 0, (LPARAM)colBackGr); + SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_SETEVENTMASK, 0, (LPARAM)(ENM_LINK)); // link click +#if 0 + PARAFORMAT2 ParaFormat2; + ZeroMemory(&ParaFormat2, sizeof(PARAFORMAT2)); + ParaFormat2.cbSize = (UINT)sizeof(PARAFORMAT2); + ParaFormat2.dwMask = (PFM_SPACEBEFORE | PFM_SPACEAFTER | PFM_LINESPACING); + ParaFormat2.dySpaceBefore = 48; // paragraph + ParaFormat2.dySpaceAfter = 48; // paragraph + ParaFormat2.dyLineSpacing = 24; // [twips] + ParaFormat2.bLineSpacingRule = 5; // 5: dyLineSpacing/20 is the spacing, in lines, from one line to the next. + SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_SETPARAFORMAT, 0, (LPARAM)&ParaFormat2); + SetDlgItemText(hwnd, IDC_RICHEDITABOUT, ABOUT_INFO_PLAIN); +#else EDITSTREAM editStreamIn = { (DWORD_PTR)&pAboutInfo, 0, _LoadRtfCallback }; - + //pAboutInfo = pAboutInfoErrMsg; + pAboutInfo = pAboutInfoResource; + SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_STREAMIN, SF_RTF, (LPARAM)&editStreamIn); /* DWORD dwSize = _LoadStringEx(IDR_ABOUTINFO_RTF, L"RTF", NULL); if (dwSize != 0) @@ -363,10 +374,7 @@ INT_PTR CALLBACK AboutDlgProc(HWND hwnd, UINT umsg, WPARAM wParam, LPARAM lParam SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_STREAMIN, SF_RTF, (LPARAM)&editStreamIn); } */ - //pAboutInfo = pAboutInfoErrMsg; - pAboutInfo = pAboutInfoResource; - SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_STREAMIN, SF_RTF, (LPARAM)&editStreamIn); - +#endif CenterDlgInParent(hwnd); } return TRUE; @@ -385,19 +393,29 @@ INT_PTR CALLBACK AboutDlgProc(HWND hwnd, UINT umsg, WPARAM wParam, LPARAM lParam ShellExecute(hwnd, L"open", L"https://rizonesoft.com", NULL, NULL, SW_SHOWNORMAL); break; - //case IDC_MODWEBPAGE: - // ShellExecute(hwnd, L"open", L"https://xhmikosr.github.io/notepad2-mod/", NULL, NULL, SW_SHOWNORMAL); - // break; - - //case IDC_NOTE2WEBPAGE: - // ShellExecute(hwnd, L"open", L"http://www.flos-freeware.ch", NULL, NULL, SW_SHOWNORMAL); - // break; - default: break; } } break; + + case EN_LINK: // hyperlink from RichEdit Ctrl + { + ENLINK* penLink = (ENLINK *)lParam; + if (penLink->msg == WM_LBUTTONDOWN) + { + WCHAR hLink[256]; + TEXTRANGE txtRng; + txtRng.chrg = penLink->chrg; + txtRng.lpstrText = hLink; + SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_GETTEXTRANGE, 0, (LPARAM)&txtRng); + ShellExecute(hwnd, L"open", hLink, NULL, NULL, SW_SHOWNORMAL); + } + } + break; + + default: + break; } } break; diff --git a/src/Notepad3.c b/src/Notepad3.c index 1db931b92..67ed66f2c 100644 --- a/src/Notepad3.c +++ b/src/Notepad3.c @@ -280,6 +280,7 @@ WIN32_FIND_DATA fdCurFile; UINT msgTaskbarCreated = 0; HMODULE hModUxTheme = NULL; +HMODULE hRichEdit = NULL; EDITFINDREPLACE g_efrData = { "", "", "", "", 0, 0, 0, 0, 0, 0, 0, 0, 0, NULL }; UINT cpLastFind = 0; @@ -512,6 +513,7 @@ int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInst,LPSTR lpCmdLine,int n if (!IsWin8()) { hModUxTheme = LoadLibrary(L"uxtheme.dll"); } + hRichEdit = LoadLibrary(L"MSFTEDIT.DLL"); // RichEditCtrl > 4.1 // old: LoadLibrary(L"RichEd20.dll"); Scintilla_RegisterClasses(hInstance); @@ -4356,12 +4358,7 @@ LRESULT MsgCommand(HWND hwnd, WPARAM wParam, LPARAM lParam) break; case IDM_HELP_ABOUT: - { - HMODULE hRichEdit = LoadLibrary(L"RichEd20.dll"); - if (hRichEdit) { - ThemedDialogBox(g_hInstance, MAKEINTRESOURCE(IDD_ABOUT), hwnd, AboutDlgProc); - } - } + ThemedDialogBox(g_hInstance, MAKEINTRESOURCE(IDD_ABOUT), hwnd, AboutDlgProc); break; case IDM_SETPASS: diff --git a/src/Notepad3.rc b/src/Notepad3.rc index 40bc52fc4..5f21dffb9 100644 --- a/src/Notepad3.rc +++ b/src/Notepad3.rc @@ -33,6 +33,7 @@ IDI_RUN ICON "..\\res\\Run.ico" IDI_STYLES ICON "..\\res\\Styles.ico" + ///////////////////////////////////////////////////////////////////////////// // // Bitmap @@ -61,10 +62,6 @@ IDR_MAINWND2 BITMAP "..\\res\\Toolbar2.bmp" IDC_COPY CURSOR "..\\res\\Copy.cur" - -IDR_ABOUTINFO_RTF TEXT "..\\res\\AboutInfo.rtf" - - ///////////////////////////////////////////////////////////////////////////// // // Menu @@ -652,7 +649,7 @@ BEGIN LTEXT "IDC_COPYRIGHT",IDC_COPYRIGHT,80,55,180,8 LTEXT "",IDC_WEBPAGE2,190,55,130,8,NOT WS_VISIBLE | WS_DISABLED CONTROL "",IDC_WEBPAGE,"SysLink",WS_TABSTOP,190,55,130,10 - CONTROL "",IDC_RICHEDITABOUT,"RichEdit20W",ES_MULTILINE | ES_AUTOVSCROLL | ES_AUTOHSCROLL | ES_NOHIDESEL | ES_READONLY | ES_NUMBER | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP,20,80,320,170 + CONTROL "",IDC_RICHEDITABOUT,"RichEdit50W",WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP | 0x29c4,20,80,320,170 PUSHBUTTON "Copy Version Text",IDC_COPYVERSTRG,260,7,80,14,BS_FLAT END @@ -1173,15 +1170,6 @@ BEGIN BOTTOMMARGIN, 218 END - IDD_ABOUT2, DIALOG - BEGIN - LEFTMARGIN, 7 - RIGHTMARGIN, 361 - VERTGUIDE, 80 - TOPMARGIN, 7 - BOTTOMMARGIN, 271 - END - IDD_FIND, DIALOG BEGIN LEFTMARGIN, 7 diff --git a/src/Notepad3.vcxproj b/src/Notepad3.vcxproj index 54fe39b6f..bd3376554 100644 --- a/src/Notepad3.vcxproj +++ b/src/Notepad3.vcxproj @@ -110,6 +110,7 @@ StreamingSIMDExtensions2 Fast stdcpp17 + false msimg32.lib;comctl32.lib;imm32.lib;shlwapi.lib;scintilla.lib;%(AdditionalDependencies) @@ -163,6 +164,7 @@ true Fast stdcpp17 + false msimg32.lib;comctl32.lib;imm32.lib;shlwapi.lib;scintilla.lib;%(AdditionalDependencies) @@ -215,6 +217,7 @@ stdcpp17 Size true + false msimg32.lib;comctl32.lib;imm32.lib;shlwapi.lib;scintilla.lib;%(AdditionalDependencies) @@ -269,6 +272,7 @@ stdcpp17 Size true + false msimg32.lib;comctl32.lib;imm32.lib;shlwapi.lib;scintilla.lib;%(AdditionalDependencies) @@ -369,6 +373,7 @@ + diff --git a/src/Notepad3.vcxproj.filters b/src/Notepad3.vcxproj.filters index ccc41378c..685ee0cbd 100644 --- a/src/Notepad3.vcxproj.filters +++ b/src/Notepad3.vcxproj.filters @@ -150,6 +150,9 @@ Resource Files + + Resource Files + @@ -165,5 +168,6 @@ templates + \ No newline at end of file diff --git a/src/Version.h b/src/Version.h index eb58e5d4709ecc88da67ebefd319a4f22fc5ac0e..00bd551555c4d5589726a704ed1a2c34259b9dca 100644 GIT binary patch delta 1100 zcmcgrOK1~e5T30P^Qg(zJV`dmW=onTCflUaDwWbop|u)f8Y6f}(L8IlHpM1|-iikg zRf~>dCW0P3$TBqZIX%=qSLp`*%(3BBpJ%qI(v zHG_m7y>_e`kD;trDK)){L-nu?znJfKl%MQ~j93S+^oY3DZA00bqqB>M`tXBwr=#-k zI0;>L3vQW(HoS#$XYui*h!tK?Wd6sYHo{TUg@Z_WWIDlN#xCG)uSFAwD4c<5h~ZQF zI&SwI#&Mp^vBJ);9ox*`7hWvafXw;P<3t@a8p2k>T+>n6?Lzf910TE9-oQ4$fEVNkb zwKEFu+wD?P$DeS@J^49@Qlx-`{fUW2n|6vnFGP!uv?`lJ@6+%3bDZ)$xWVCgnD322 z5lXbm5=oJR36f)#&Ls%KIm)b%`7si@f`Xtn`asi*r&74CKvEX zOx6=HnQSL$02Kp{ZX zjGHfLE@0ezO}~$EbDs7##>pv$0-VVVMGTb;1q>yVFX{wO4l>r7d_!l`9P0JXEp&;S4c diff --git a/src/resource.h b/src/resource.h index e0270544f..0ee3cba5d 100644 --- a/src/resource.h +++ b/src/resource.h @@ -164,7 +164,6 @@ #define IDR_MAINWND128 550 #define IDC_RICHEDITABOUT 551 #define IDC_COPYVERSTRG 552 -#define IDR_ABOUTINFO_RTF 553 #define IDS_APPTITLE 10000 #define IDS_APPTITLE_ELEVATED 10001 #define IDS_APPTITLE_PASTEBOARD 10002 From c125f018f4d89c5c281d89e2af5838f8f93dec11 Mon Sep 17 00:00:00 2001 From: Rainer Kottenhoff Date: Mon, 26 Feb 2018 18:57:51 +0100 Subject: [PATCH 3/6] + enh: 2nd version of AboutBox --- res/rizonesoft.bmp | Bin 0 -> 18270 bytes src/Dialogs.c | 19 +++++++++----- src/Helpers.c | 10 ++++++++ src/Helpers.h | 1 + src/Notepad3.c | 8 +++--- src/Notepad3.rc | 47 +++++++++++++++++++---------------- src/Notepad3.vcxproj | 1 + src/Notepad3.vcxproj.filters | 4 ++- src/Notepad3.ver | 10 ++++---- src/Version.h | Bin 19190 -> 19978 bytes src/resource.h | 17 +++++++------ 11 files changed, 72 insertions(+), 45 deletions(-) create mode 100644 res/rizonesoft.bmp diff --git a/res/rizonesoft.bmp b/res/rizonesoft.bmp new file mode 100644 index 0000000000000000000000000000000000000000..958191f58458eb5c06d57e6b1c36a2a9daa23c48 GIT binary patch literal 18270 zcmeHP2Uu0dvp-3Uv4H}y#TXM!G417_h$S`@V<9R+h$U)J5COYJjhYx6N)u@+SOBG| zbVN~55y65qk=`yrv4$wfEEO z3c?BPu4D%Z3NCJOH7tlg;bE_~P*VZ~7KfY+uqK`lRSgKF? z;o?kd(Oxdoj>|rwknc0A{Kg;kWl)MBH8lzfFAricFW(rmRoSc#*_3G6N{{lbc zTTNaUhqx>k`CQj-xo-0Lr!+HdK5RmIMI4XlR%bZ~H*GG*$Ye{L@+DMNAhZll@ivrnBm1$f)GKl1YO03anKBv@Np0a(7=0C`eU z;@r6l_zJOj&1$K-H*NY|Lqj7tI2gzoGiEGYxCnr+udlMQGIB_1^X4tUl$MsRU;mq- z;mU|x5hyO0w_wqt#UhcYu&~&~!~_^rojVr@;Nr!Lnm=i7Sib@A@4s)=)YS0y_5lo5 z9q9tKNL#mVA<6gc+qYY{ZbB^(EH5t)K%fixTxU-D$28*1<-5!0oOmP67)Gq`Q;A54 z{|n`$3mz;JUgx zb@e#_X3S7~^5lu9m*=mGm!LRh$`8nql9G}z697O;p`oDwCQjtLXlUTQAZRu>I|l$# zySiYeY0{)g;Lx>e*LJmlDx?-&NcIbUT?lm1q7+&tP*9$mQl<@;d4Q{bkWB-4pZ{Q18CICk_H37qiTwr$hb*U!%8J2f)eS5#C;#PRV7+qeG( zc-`7{9v&Xik3;|4^ zJ_EU*pWofP@c_n-opA8rApjK>RU0>K3<ZpB|0Zhp1gdSw^x{`SPS9d*C$R?L2=8LZ3ir^{QUe$H47Il z4mcM;b4*KXZhn3~bqa%~qq7Wf_pUvmBLFHYlaVJUrwktaL1JPuU=59*LPPl_0Le_A z%-15VUAz9$rAq+r-!F$T1Yl&e*TmQ)B_*}Iyd1@e<5lk6<9n&9u7d0U1O)||n3w^W zHFK7im(R6p;ef$B{91TJLnB}rU9c4~X3S`C=+mc9hdPj~2t`H3o;`c=ltWd;<-VB~ zT!vGZTvvsB*LRtj5^97NNS=#a_7N`4jB9)>+09$DkMVS#Xn2K%_dGp4i4yY=t{uUF zfq^HTPBt_=K`|>c%gMnJmYJ&JVqEH*Y48w6ksi8KW`H1w*agv9hVHtpncQ z&mVa~etue78UQ3$XBP|=!0p?&ZEbDi6ZoYhqYIu+EMC2OHN@MyH%^4@C$dYzy3dqn zi>o~zJ8@+WTsF4p{ha7Hm*b*Dihv53Mx^R+>y>$!%Q(bOnAeF(03s!r&eRt!TmS|W zUMOlIjO~Mp^XJdMa_Le|PR@e|rG;gWz$85*zoz1WxGG#MGO9SmrJM5_$#dxqMYN}m z-Wir$!C8K9eVup-wD?iXI(_%ucO>ez>!N%2?o_pE<%+WMvTRY-fddEB)Mf&yGC}2h z;HB<;hW;=|M|-XHslb$)s#?D?B@~ zAaH7d|M-G{iLdP6JzwR9M;VYLo0gWAmY0Hp;^X574j3q-k+R)3MmQny-vcx8QPJ-sa5|uZ3=T zZgQf-T-rXaC}4Ke%lfx$%>NnyQ9Fo~EeevhnW<@YWwooD8x@h`e2u(Imo9J{yu7>s z_w74y!h}iV$E&ESPVL=Wartun

N9+PfZN`-;`Z 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 literal 0 HcmV?d00001 diff --git a/src/Dialogs.c b/src/Dialogs.c index 4ace66df0..62e3b1c37 100644 --- a/src/Dialogs.c +++ b/src/Dialogs.c @@ -34,7 +34,7 @@ #pragma warning( push ) #pragma warning( disable : 4201) // union/struct w/o name -#define _RICHEDIT_VER 0x0410 +#define _RICHEDIT_VER 0x0500 #include #include "scintilla.h" @@ -290,7 +290,6 @@ static DWORD CALLBACK _LoadRtfCallback( static char* pAboutInfoResource = ABOUT_INFO_RTF; -static char* pAboutInfoErrMsg = ABOUT_INFO_ERRMSG; static char* pAboutInfo; //============================================================================= @@ -336,12 +335,16 @@ INT_PTR CALLBACK AboutDlgProc(HWND hwnd, UINT umsg, WPARAM wParam, LPARAM lParam } // --- Rich Edit Control --- + //SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_SETBKGNDCOLOR, 0, (LPARAM)GetBackgroundColor(hwnd)); + SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_SETBKGNDCOLOR, 0, (LPARAM)GetSysColor(COLOR_3DFACE)); + //SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_SHOWSCROLLBAR, SB_VERT, (LPARAM)FALSE); + SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_SHOWSCROLLBAR, SB_HORZ, (LPARAM)FALSE); + DWORD styleFlags = SES_EXTENDBACKCOLOR | SES_HYPERLINKTOOLTIPS; + SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_SETEDITSTYLE, (WPARAM)styleFlags, (LPARAM)styleFlags); - COLORREF colBackGr = RGB(230, 230, 230); - SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_SETBKGNDCOLOR, 0, (LPARAM)colBackGr); SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_SETEVENTMASK, 0, (LPARAM)(ENM_LINK)); // link click -#if 0 + #if FALSE PARAFORMAT2 ParaFormat2; ZeroMemory(&ParaFormat2, sizeof(PARAFORMAT2)); ParaFormat2.cbSize = (UINT)sizeof(PARAFORMAT2); @@ -353,8 +356,8 @@ INT_PTR CALLBACK AboutDlgProc(HWND hwnd, UINT umsg, WPARAM wParam, LPARAM lParam SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_SETPARAFORMAT, 0, (LPARAM)&ParaFormat2); SetDlgItemText(hwnd, IDC_RICHEDITABOUT, ABOUT_INFO_PLAIN); #else + // using RTF format descriptions directly EDITSTREAM editStreamIn = { (DWORD_PTR)&pAboutInfo, 0, _LoadRtfCallback }; - //pAboutInfo = pAboutInfoErrMsg; pAboutInfo = pAboutInfoResource; SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_STREAMIN, SF_RTF, (LPARAM)&editStreamIn); /* @@ -424,6 +427,10 @@ INT_PTR CALLBACK AboutDlgProc(HWND hwnd, UINT umsg, WPARAM wParam, LPARAM lParam switch (LOWORD(wParam)) { + case IDC_RIZONEBMP: + ShellExecute(hwnd, L"open", L"https://rizonesoft.com", NULL, NULL, SW_SHOWNORMAL); + break; + case IDC_COPYVERSTRG: { WCHAR wchVerInfo[1024] = { L'\0' }; diff --git a/src/Helpers.c b/src/Helpers.c index ca99e6e7b..37ee40e91 100644 --- a/src/Helpers.c +++ b/src/Helpers.c @@ -967,6 +967,16 @@ BOOL StatusSetTextID(HWND hwnd,UINT nPart,UINT uID) } +//============================================================================= +// +// StatusCalcPaneWidth() +// +COLORREF GetBackgroundColor(HWND hwnd) +{ + return GetBkColor(GetDC(hwnd)); +} + + //============================================================================= // // StatusCalcPaneWidth() diff --git a/src/Helpers.h b/src/Helpers.h index dd8266b57..f63789cb7 100644 --- a/src/Helpers.h +++ b/src/Helpers.h @@ -145,6 +145,7 @@ void DeleteBitmapButton(HWND,int); #define StatusSetSimple(hwnd,b) SendMessage(hwnd,SB_SIMPLE,(WPARAM)b,0) BOOL StatusSetText(HWND,UINT,LPCWSTR); BOOL StatusSetTextID(HWND,UINT,UINT); +COLORREF GetBackgroundColor(HWND); int StatusCalcPaneWidth(HWND,LPCWSTR); int Toolbar_GetButtons(HWND,int,LPWSTR,int); diff --git a/src/Notepad3.c b/src/Notepad3.c index 67ed66f2c..ef50813b4 100644 --- a/src/Notepad3.c +++ b/src/Notepad3.c @@ -513,7 +513,8 @@ int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInst,LPSTR lpCmdLine,int n if (!IsWin8()) { hModUxTheme = LoadLibrary(L"uxtheme.dll"); } - hRichEdit = LoadLibrary(L"MSFTEDIT.DLL"); // RichEditCtrl > 4.1 // old: LoadLibrary(L"RichEd20.dll"); + //hRichEdit = LoadLibrary(L"RICHED20.DLL"); + hRichEdit = LoadLibrary(L"MSFTEDIT.DLL"); // RichEditCtrl > 4.1 Scintilla_RegisterClasses(hInstance); @@ -1371,7 +1372,7 @@ void CreateBars(HWND hwnd,HINSTANCE hInstance) if (hbmp) bExternalBitmap = TRUE; else { - LPWSTR toolBarIntRes = (iHighDpiToolBar > 0) ? MAKEINTRESOURCE(IDR_MAINWND2) : MAKEINTRESOURCE(IDR_MAINWND); + LPWSTR toolBarIntRes = (iHighDpiToolBar > 0) ? MAKEINTRESOURCE(IDR_MAINWNDTB2) : MAKEINTRESOURCE(IDR_MAINWNDTB); hbmp = LoadImage(hInstance, toolBarIntRes, IMAGE_BITMAP, 0, 0, LR_CREATEDIBSECTION); hbmpCopy = CopyImage(hbmp, IMAGE_BITMAP, 0, 0, LR_CREATEDIBSECTION); } @@ -8453,8 +8454,7 @@ void ShowNotifyIcon(HWND hwnd,BOOL bAdd) NOTIFYICONDATA nid; if (!hIcon) - hIcon = LoadImage(g_hInstance,MAKEINTRESOURCE(IDR_MAINWND), - IMAGE_ICON,16,16,LR_DEFAULTCOLOR); + hIcon = LoadImage(g_hInstance,MAKEINTRESOURCE(IDR_MAINWND),IMAGE_ICON,16,16,LR_DEFAULTCOLOR); ZeroMemory(&nid,sizeof(NOTIFYICONDATA)); nid.cbSize = sizeof(NOTIFYICONDATA); diff --git a/src/Notepad3.rc b/src/Notepad3.rc index 5f21dffb9..28d1b0ef7 100644 --- a/src/Notepad3.rc +++ b/src/Notepad3.rc @@ -12,7 +12,7 @@ #undef APSTUDIO_READONLY_SYMBOLS ///////////////////////////////////////////////////////////////////////////// -// Englisch (USA) resources +// English (United States) resources #if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU) LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US @@ -25,12 +25,12 @@ LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US // Icon with lowest ID value placed first to ensure application icon // remains consistent on all systems. +IDI_RUN ICON "..\\res\\Run.ico" + IDR_MAINWND ICON "..\\res\\Notepad3.ico" IDR_MAINWND128 ICON "..\\res\\Notepad3_128.ico" -IDI_RUN ICON "..\\res\\Run.ico" - IDI_STYLES ICON "..\\res\\Styles.ico" @@ -39,7 +39,7 @@ IDI_STYLES ICON "..\\res\\Styles.ico" // Bitmap // -IDR_MAINWND BITMAP "..\\res\\Toolbar.bmp" +IDR_MAINWNDTB BITMAP "..\\res\\Toolbar.bmp" IDB_OPEN BITMAP "..\\res\\Open.bmp" @@ -51,7 +51,9 @@ IDB_PICK BITMAP "..\\res\\Pick.bmp" IDB_ENCODING BITMAP "..\\res\\Encoding.bmp" -IDR_MAINWND2 BITMAP "..\\res\\Toolbar2.bmp" +IDR_MAINWNDTB2 BITMAP "..\\res\\Toolbar2.bmp" + +IDR_RIZBITMAP BITMAP "..\\res\\rizonesoft.bmp" ///////////////////////////////////////////////////////////////////////////// @@ -636,21 +638,22 @@ END // Dialog // -IDD_ABOUT DIALOGEX 0, 0, 360, 280 +IDD_ABOUT DIALOGEX 0, 0, 360, 275 STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | DS_NOFAILCREATE | WS_POPUP | WS_CAPTION | WS_SYSMENU CAPTION "About Notepad3" FONT 8, "MS Shell Dlg", 0, 0, 0x0 BEGIN - DEFPUSHBUTTON "OK",IDOK,290,257,50,14 - ICON IDR_MAINWND128,IDC_STATIC,7,7,20,20,SS_REALSIZEIMAGE,WS_EX_TRANSPARENT + DEFPUSHBUTTON "OK",IDOK,291,256,50,14 + ICON IDR_MAINWND128,IDC_STATIC,4,5,20,20,SS_REALSIZEIMAGE,WS_EX_TRANSPARENT LTEXT "IDC_VERSION",IDC_VERSION,80,7,288,15 LTEXT "Scintilla Library Version:",IDC_SCI_VERSION,80,24,280,8 - LTEXT "Compiled with:",IDC_COMPILER,80,35,300,8 + LTEXT "Build with:",IDC_COMPILER,80,35,210,8 LTEXT "IDC_COPYRIGHT",IDC_COPYRIGHT,80,55,180,8 - LTEXT "",IDC_WEBPAGE2,190,55,130,8,NOT WS_VISIBLE | WS_DISABLED - CONTROL "",IDC_WEBPAGE,"SysLink",WS_TABSTOP,190,55,130,10 - CONTROL "",IDC_RICHEDITABOUT,"RichEdit50W",WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP | 0x29c4,20,80,320,170 - PUSHBUTTON "Copy Version Text",IDC_COPYVERSTRG,260,7,80,14,BS_FLAT + LTEXT "",IDC_WEBPAGE2,190,55,100,8,NOT WS_VISIBLE | WS_DISABLED + CONTROL "",IDC_WEBPAGE,"SysLink",WS_TABSTOP,190,55,100,10 + CONTROL IDR_RIZBITMAP,IDC_RIZONEBMP,"Static",SS_BITMAP | SS_NOTIFY | SS_REALSIZEIMAGE,264,7,130,20,WS_EX_TRANSPARENT + PUSHBUTTON "Copy Version Text",IDC_COPYVERSTRG,262,35,78,14,BS_FLAT + CONTROL "",IDC_RICHEDITABOUT,"RichEdit50W",WS_VSCROLL | WS_HSCROLL | WS_TABSTOP | 0x29c4,20,80,320,170 END IDD_FIND DIALOGEX 0, 0, 273, 129 @@ -665,7 +668,7 @@ BEGIN CONTROL "Match &beginning of word only",IDC_FINDSTART,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,61,110,10 CONTROL "&Transform backslashes",IDC_FINDTRANSFORMBS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,73,85,10 CONTROL "Regular &expression search",IDC_FINDREGEXP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,85,96,10 - CONTROL "Dot matches &all",IDC_DOT_MATCH_ALL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,18,96,65,10 + CONTROL "Dot &matches all",IDC_DOT_MATCH_ALL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,18,96,65,10 CONTROL "&Don't wrap around",IDC_NOWRAP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,125,37,75,10 CONTROL "C&lose after find",IDC_FINDCLOSE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,125,49,65,10 CONTROL "Mark &Occurrences",IDC_ALL_OCCURRENCES,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,125,61,73,10 @@ -695,7 +698,7 @@ BEGIN CONTROL "Match &beginning of word only",IDC_FINDSTART,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,90,110,10 CONTROL "&Transform backslashes",IDC_FINDTRANSFORMBS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,102,89,10 CONTROL "Regular &expression search",IDC_FINDREGEXP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,114,97,10 - CONTROL "Dot matches &all",IDC_DOT_MATCH_ALL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,18,125,65,10 + CONTROL "Dot &matches all",IDC_DOT_MATCH_ALL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,18,125,65,10 CONTROL "&Don't wrap around",IDC_NOWRAP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,125,66,75,10 CONTROL "C&lose after replace",IDC_FINDCLOSE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,125,78,77,10 CONTROL "Mark &Occurrences",IDC_ALL_OCCURRENCES,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,125,90,73,10 @@ -1163,11 +1166,11 @@ GUIDELINES DESIGNINFO BEGIN IDD_ABOUT, DIALOG BEGIN - LEFTMARGIN, 7 - RIGHTMARGIN, 245 - VERTGUIDE, 45 + LEFTMARGIN, 4 + VERTGUIDE, 19 + VERTGUIDE, 340 TOPMARGIN, 7 - BOTTOMMARGIN, 218 + BOTTOMMARGIN, 270 END IDD_FIND, DIALOG @@ -1946,12 +1949,12 @@ BEGIN 63272 "Other Package Functions" END -#endif // Englisch (USA) resources +#endif // English (United States) resources ///////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////// -// Deutsch (Schweiz) resources +// German (Switzerland) resources #if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_DES) LANGUAGE LANG_GERMAN, SUBLANG_GERMAN_SWISS @@ -1980,7 +1983,7 @@ END #endif // APSTUDIO_INVOKED -#endif // Deutsch (Schweiz) resources +#endif // German (Switzerland) resources ///////////////////////////////////////////////////////////////////////////// diff --git a/src/Notepad3.vcxproj b/src/Notepad3.vcxproj index bd3376554..72f78cdba 100644 --- a/src/Notepad3.vcxproj +++ b/src/Notepad3.vcxproj @@ -374,6 +374,7 @@ + diff --git a/src/Notepad3.vcxproj.filters b/src/Notepad3.vcxproj.filters index 685ee0cbd..a70098f45 100644 --- a/src/Notepad3.vcxproj.filters +++ b/src/Notepad3.vcxproj.filters @@ -153,6 +153,9 @@ Resource Files + + Resource Files + @@ -168,6 +171,5 @@ templates - \ No newline at end of file diff --git a/src/Notepad3.ver b/src/Notepad3.ver index 7dcebb5d3..89476170d 100644 --- a/src/Notepad3.ver +++ b/src/Notepad3.ver @@ -37,15 +37,15 @@ BEGIN BEGIN BLOCK "040904b0" BEGIN - VALUE "Comments", MY_APPNAME - VALUE "FileDescription", MY_APPNAME - VALUE "InternalName", MY_APPNAME - VALUE "ProductName", MY_APPNAME + VALUE "Comments", APPNAME_A + VALUE "FileDescription", APPNAME_A + VALUE "InternalName", APPNAME_A + VALUE "ProductName", APPNAME_A VALUE "CompanyName", VERSION_COMPANYNAME VALUE "FileVersion", VERSION_FILEVERSION VALUE "ProductVersion", VERSION_FILEVERSION VALUE "LegalCopyright", VERSION_LEGALCOPYRIGHT - VALUE "OriginalFilename", "Notepad3.exe" + VALUE "OriginalFilename", APPNAME_A ".exe" END END BLOCK "VarFileInfo" diff --git a/src/Version.h b/src/Version.h index 00bd551555c4d5589726a704ed1a2c34259b9dca..6878af0d6b059eb10520488512233f2375aaa29e 100644 GIT binary patch delta 2000 zcmd5-OH31C5S}HFAO&H0*~Ui-NGa5^#iD6|3Jb_fs09MXh=n56g2f7b2#E%`8V=&b z8!^U{MkSc4M?*Y#m3Z(1Mm%Xec<^8h2jaI&DJ>CBCYs6qoqy(^Z|0kw{rmHtaC=@@ z{H5UyP37EDGUtoAd^|5-l*tKkkW3wPn)*rR=LQqM60;&r>C4HI9*+0}dQzmF3b7jL zBvq1`25FdrR0>O&YsHW`F#?ck%q|g;74d>_c&{`n=)v7V!;zJo;bbAqJ=$};plzIz zNJ2*Yzmg++C+1HY9S@{uakg&te=oJ9uvTd2$3?A?g~I(w#Wu1~ALI&+lLvB*Dlh_@ zwn6ey2sRskKKdmkNNyTrsid1nEcwDX&!pst5~j?LLGjRac!$W!1yV6Dm8I@^Ml|(s zy1~h7hE!fP=d#c6hSM!BzH`vPk4hYzZR+DbV?AuW{LMJ6?w3n#>Y2W>r;%(^Zc?Tj z6M6>8Tku?_%RFc5V0vwv0j`f7zIdcRc!8&MKBFBt=nk;JhGz^{#BS^r>>ySj#2xKYFRzyy4@kIk z;v%RV=O!qKY#qD$lw9xiT28V|%U9940PY1pGAQpsc|#%e!VQ};x_+#Zx(@)^1Fu94 zbQX8tdGK~na~v=2UqC}`nh-L1Q9*#bQLZjtv)XhL>Ph74#mQ0f#cJ65RJ6xp7kDVs zsLaf`I*aIYaRc;8%t8>;+N&}RAe+(`J++~lFdjY6So_(jOO0$)Gz$FIw*NoBsUq)e z6@t*sLUj@T2<%laW4ctmtryfhi`g~yu}z(`X9tjwVmuq{g&C$P@|aLO-1~=aWSerJiVojG#}%E>SX@jc$~jBIimiN=CF#Y mfofP5uU$0=i%T delta 1799 zcmah~QA}G^82<0*0BHv;(3O%>Zf{q(lzM5w*235dU8$p#3AlC9FmnHELtjy=Z*&!R*<@WaB{-eK0YLF2)DHbK6M^HO)=ibH4vO-}(RV z{O9(~_oP4Hl0JQ4JUB~F({ucnG01*Xckv_B_Xd8~tn!Ytljkg5e8-aDZBsjcV(tW{ zVcuBWXjdhW4ofoMb6P8D4KfLANTl%_mgr7W#dj>ZuFy6dc@ahrXL|F-|r zbckALh`jtkiHu2cbGG?| za#arZJ$=ZbytieNG-RHp%c%K!CC?T`BueMu$Pye8&SWd&?Cl@k)#+IPdj=W>JZZRh z3F8bN)JY0|<_U`Wjbe5N4yWk?Us3Hfy!cu5BKttMtqIv
A}sj4sGE!X!Sn3YW1ZTA^#eLj0uj7k*ob@f-3S$22oe{5ziWpJwf7Gy5Bz99B*} zB2=zng`d|(&+(2DWk>KCc67=7p?hIZG<775Xp--SnmK2iV4r8Dno+#(`AV|ZG@mz> zd7jV=Y*wFd+O_>lB$VWhfkL$qC%jQaUf3FZWl!M8LDlG^1bX2*J_BqCo)!5NwWCRi zZzc^}s)O@JprC}JyQl8$CThnoHvtXlRv7!LBtSg?^=L>Y2;y^OG&J~PA zZ(P;)&!g$Y*avhO_aTk%%NVbhqXJ!pN}61|8=83gv4luvW4yKKJ?4|zvY?41g=hxX zArNsJWh%X@G`yl-KK?~r&Y4Jk&d|iib# Date: Mon, 26 Feb 2018 23:44:32 +0100 Subject: [PATCH 4/6] + chg: AbotBox - downgrading to RichEdit library 2.0 (all needed features already in there) + ext: AbouBox - acknowledgement/contributors, original licenses (& references) --- src/Dialogs.c | 9 +++++---- src/Notepad3.c | 4 ++-- src/Notepad3.rc | 10 +++++----- src/Version.h | Bin 19978 -> 27212 bytes 4 files changed, 12 insertions(+), 11 deletions(-) diff --git a/src/Dialogs.c b/src/Dialogs.c index 62e3b1c37..382bd0519 100644 --- a/src/Dialogs.c +++ b/src/Dialogs.c @@ -34,7 +34,7 @@ #pragma warning( push ) #pragma warning( disable : 4201) // union/struct w/o name -#define _RICHEDIT_VER 0x0500 +#define _RICHEDIT_VER 0x0210 #include #include "scintilla.h" @@ -339,8 +339,9 @@ INT_PTR CALLBACK AboutDlgProc(HWND hwnd, UINT umsg, WPARAM wParam, LPARAM lParam SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_SETBKGNDCOLOR, 0, (LPARAM)GetSysColor(COLOR_3DFACE)); //SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_SHOWSCROLLBAR, SB_VERT, (LPARAM)FALSE); SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_SHOWSCROLLBAR, SB_HORZ, (LPARAM)FALSE); - DWORD styleFlags = SES_EXTENDBACKCOLOR | SES_HYPERLINKTOOLTIPS; + DWORD styleFlags = SES_EXTENDBACKCOLOR; // | SES_HYPERLINKTOOLTIPS; SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_SETEDITSTYLE, (WPARAM)styleFlags, (LPARAM)styleFlags); + SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_AUTOURLDETECT, (WPARAM)1, (LPARAM)0); SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_SETEVENTMASK, 0, (LPARAM)(ENM_LINK)); // link click @@ -393,7 +394,7 @@ INT_PTR CALLBACK AboutDlgProc(HWND hwnd, UINT umsg, WPARAM wParam, LPARAM lParam switch (pnmhdr->idFrom) { case IDC_WEBPAGE: - ShellExecute(hwnd, L"open", L"https://rizonesoft.com", NULL, NULL, SW_SHOWNORMAL); + ShellExecute(hwnd, L"open", L"https://www.rizonesoft.com", NULL, NULL, SW_SHOWNORMAL); break; default: @@ -428,7 +429,7 @@ INT_PTR CALLBACK AboutDlgProc(HWND hwnd, UINT umsg, WPARAM wParam, LPARAM lParam switch (LOWORD(wParam)) { case IDC_RIZONEBMP: - ShellExecute(hwnd, L"open", L"https://rizonesoft.com", NULL, NULL, SW_SHOWNORMAL); + ShellExecute(hwnd, L"open", L"https://www.rizonesoft.com", NULL, NULL, SW_SHOWNORMAL); break; case IDC_COPYVERSTRG: diff --git a/src/Notepad3.c b/src/Notepad3.c index ef50813b4..7db816cff 100644 --- a/src/Notepad3.c +++ b/src/Notepad3.c @@ -513,8 +513,8 @@ int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInst,LPSTR lpCmdLine,int n if (!IsWin8()) { hModUxTheme = LoadLibrary(L"uxtheme.dll"); } - //hRichEdit = LoadLibrary(L"RICHED20.DLL"); - hRichEdit = LoadLibrary(L"MSFTEDIT.DLL"); // RichEditCtrl > 4.1 + hRichEdit = LoadLibrary(L"RICHED20.DLL"); // Use "RichEdit20W" for control in .rc + //hRichEdit = LoadLibrary(L"MSFTEDIT.DLL"); // Use "RichEdit50W" for control in .rc Scintilla_RegisterClasses(hInstance); diff --git a/src/Notepad3.rc b/src/Notepad3.rc index 28d1b0ef7..6e145ffb6 100644 --- a/src/Notepad3.rc +++ b/src/Notepad3.rc @@ -638,12 +638,12 @@ END // Dialog // -IDD_ABOUT DIALOGEX 0, 0, 360, 275 +IDD_ABOUT DIALOGEX 0, 0, 400, 275 STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | DS_NOFAILCREATE | WS_POPUP | WS_CAPTION | WS_SYSMENU CAPTION "About Notepad3" FONT 8, "MS Shell Dlg", 0, 0, 0x0 BEGIN - DEFPUSHBUTTON "OK",IDOK,291,256,50,14 + DEFPUSHBUTTON "OK",IDOK,330,256,50,14 ICON IDR_MAINWND128,IDC_STATIC,4,5,20,20,SS_REALSIZEIMAGE,WS_EX_TRANSPARENT LTEXT "IDC_VERSION",IDC_VERSION,80,7,288,15 LTEXT "Scintilla Library Version:",IDC_SCI_VERSION,80,24,280,8 @@ -651,9 +651,9 @@ BEGIN LTEXT "IDC_COPYRIGHT",IDC_COPYRIGHT,80,55,180,8 LTEXT "",IDC_WEBPAGE2,190,55,100,8,NOT WS_VISIBLE | WS_DISABLED CONTROL "",IDC_WEBPAGE,"SysLink",WS_TABSTOP,190,55,100,10 - CONTROL IDR_RIZBITMAP,IDC_RIZONEBMP,"Static",SS_BITMAP | SS_NOTIFY | SS_REALSIZEIMAGE,264,7,130,20,WS_EX_TRANSPARENT - PUSHBUTTON "Copy Version Text",IDC_COPYVERSTRG,262,35,78,14,BS_FLAT - CONTROL "",IDC_RICHEDITABOUT,"RichEdit50W",WS_VSCROLL | WS_HSCROLL | WS_TABSTOP | 0x29c4,20,80,320,170 + CONTROL IDR_RIZBITMAP,IDC_RIZONEBMP,"Static",SS_BITMAP | SS_NOTIFY | SS_REALSIZEIMAGE,305,7,130,20,WS_EX_TRANSPARENT + PUSHBUTTON "Copy Version Text",IDC_COPYVERSTRG,304,35,76,14,BS_FLAT + CONTROL "",IDC_RICHEDITABOUT,"RichEdit20W",WS_VSCROLL | WS_HSCROLL | WS_TABSTOP | 0x29c4,20,80,360,170 END IDD_FIND DIALOGEX 0, 0, 273, 129 diff --git a/src/Version.h b/src/Version.h index 6878af0d6b059eb10520488512233f2375aaa29e..a96b7cf90b624f5744a5e56785a797170d83a0f3 100644 GIT binary patch delta 4007 zcmc&$-A`L(7=P;sAtYn!=14TlPS_j;v1KsDjYZd%!kQJz`Z2ZyjnJ|})>1qzBO@Bz zts2AjCVJzAA9uT2(mVeEFN~L7Eyl#e3;zVKjKAOWoOf*jCtjJRJ?DMS^YMFr&&TN} zUxj}9IrRAR(>5~MW8Z%{Zht&I;_jPc-k)7IJ~3j~``@&!q9YiEG#- zOwE+cikZf>g1a@dZp!xl*?zk_a%1R{iQ-cXbRy;sbZ8lY#5ZL;tKwWYMf;%txczo$ z_{?E-i6#pip1C0&*5Gkn5XEsIO`nc8|8oPa_uipoPyKNQ`L04t`<55^F!*E#FC^Cpsgx9EviT|1~S4ETx*lXZBWFHJ%w?CZw zeIf^%_{O*Lmu>&g zkeH8xk7q+?3#S>~gNF*DdgcngGlZpzVFfdv73m?s@(xob&~~i zr(P|C=_O&T9@Kjs9(-sm2if|l1CShK9X*tFC+g;-!AIS%#E{}0P*F2mLPQBI#nchp z?u5(sNhHz^-TKjAJI>#a{?dMaIQB=|G2ASTp9mcR<#yuIclNVkp`aO=Oo!~p>8^+2 zhW+ru*MY$eyFCq~Psph4i2`OxIZb4^jgK=hz@v?CZ&!#q6m)!D1C3Prh8k<|^ydpK--{h@{ za@_2jV)DWs?;QAXDb^eU=tyc%=Y&g(a9#5}W92}HO-RUlty>eo7(8hc;+4^du* z_A)c(&RCYfx@&ZhYmjo?lS#Z`0$>cOjBss`D|gn8(U4pRky`@Uk|4T|xExzMst(J8Dv-ykH)V3r&6y0A zdfqJHPeT?jdoPgB&66gl57lj z#4sgu#{3cP+B+jf>PVlASx0Pi_Rl8VLAtQtKAWVi={`ZwsOO3@BkDd3;HRx=>O!kW8liPj_#>;gh05t6?; z*!0wDuh`QjA#2rfEOC~>1kDA Date: Tue, 27 Feb 2018 12:22:07 +0100 Subject: [PATCH 5/6] + chg: fine-tuning AboutBox --- Version.ps1 | 7 +++++ Versions/VersionEx.h.tpl | Bin 1016 -> 1148 bytes src/Dialogs.c | 61 ++++++++++++++++++++++----------------- src/Notepad3.ver | 10 +++---- src/Version.h | Bin 27212 -> 24272 bytes src/VersionEx.h | 6 ++-- 6 files changed, 51 insertions(+), 33 deletions(-) diff --git a/Version.ps1 b/Version.ps1 index aeae4aec1..15d0f56df 100644 --- a/Version.ps1 +++ b/Version.ps1 @@ -34,11 +34,15 @@ try $Major = 3 $Minor = [int]$(Get-Date -format yy) $Revis = [int]$(Get-Date -format MMdd) + $BetaVer = 'L" "' + $BetaVerA = '" "' if ($AppVeyorEnv) { $Build = [int]($env:appveyor_build_number) } else { $Build = [int](Get-Content "Versions\build.txt") + 1 + #$BetaVer = 'L" beta "' + #$BetaVerA = '" beta "' } if (!$Build) { $Build = 0 } $SciVer = [int](Get-Content "scintilla\version.txt") @@ -56,6 +60,9 @@ try (Get-Content "src\VersionEx.h") | ForEach-Object { $_ -replace '\$BUILD\$', "$Build" } | Set-Content "src\VersionEx.h" (Get-Content "src\VersionEx.h") | ForEach-Object { $_ -replace '\$SCIVER\$', "$SciVer" } | Set-Content "src\VersionEx.h" (Get-Content "src\VersionEx.h") | ForEach-Object { $_ -replace '\$ONIGMOVER\$', "$OnigmoVer" } | Set-Content "src\VersionEx.h" + (Get-Content "src\VersionEx.h") | ForEach-Object { $_ -replace '\$BETAVER\$', "$BetaVer" } | Set-Content "src\VersionEx.h" + (Get-Content "src\VersionEx.h") | ForEach-Object { $_ -replace '\$BETAVERA\$', "$BetaVerA" } | Set-Content "src\VersionEx.h" + Copy-Item -LiteralPath "Versions\Notepad3.exe.manifest.tpl" -Destination "res\Notepad3.exe.manifest.conf" -Force (Get-Content "res\Notepad3.exe.manifest.conf") | ForEach-Object { $_ -replace '\$VERSION\$', $CompleteVer } | Set-Content "res\Notepad3.exe.manifest.conf" if ($AppVeyorEnv) { diff --git a/Versions/VersionEx.h.tpl b/Versions/VersionEx.h.tpl index 1f4a8eab1633720f70fa7e1f82b3aa627ed7870d..319d1f967cc56a95add7e1d3fc95cf9868bd5b8e 100644 GIT binary patch delta 80 zcmeyt{)c1359Y~hm<1-=F$)R0GK4TVGAJ;pFgP)Q*^}op%K~Ni)EpV&VPeSg3}HZZ NK|nn!47?0n3;+h74-o(W delta 7 Ocmeyv@q>NC4`u)m5(BRQ diff --git a/src/Dialogs.c b/src/Dialogs.c index 382bd0519..f479ffbb4 100644 --- a/src/Dialogs.c +++ b/src/Dialogs.c @@ -34,8 +34,8 @@ #pragma warning( push ) #pragma warning( disable : 4201) // union/struct w/o name -#define _RICHEDIT_VER 0x0210 #include +#pragma warning( pop ) #include "scintilla.h" #include "notepad3.h" @@ -337,48 +337,59 @@ INT_PTR CALLBACK AboutDlgProc(HWND hwnd, UINT umsg, WPARAM wParam, LPARAM lParam // --- Rich Edit Control --- //SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_SETBKGNDCOLOR, 0, (LPARAM)GetBackgroundColor(hwnd)); SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_SETBKGNDCOLOR, 0, (LPARAM)GetSysColor(COLOR_3DFACE)); - //SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_SHOWSCROLLBAR, SB_VERT, (LPARAM)FALSE); + + SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_SHOWSCROLLBAR, SB_VERT, (LPARAM)TRUE); SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_SHOWSCROLLBAR, SB_HORZ, (LPARAM)FALSE); + DWORD styleFlags = SES_EXTENDBACKCOLOR; // | SES_HYPERLINKTOOLTIPS; SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_SETEDITSTYLE, (WPARAM)styleFlags, (LPARAM)styleFlags); SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_AUTOURLDETECT, (WPARAM)1, (LPARAM)0); + //CHARFORMAT2 cf2; + //ZeroMemory(&cf2, sizeof(CHARFORMAT2)); + //cf2.dwMask = CFM_LINK | CFM_UNDERLINE | CFM_COLOR | CFM_LINKPROTECTED; + //cf2.dwEffects = CFE_LINK | CFE_UNDERLINE | CFE_LINKPROTECTED; + //cf2.crTextColor = RGB(255, 0, 0); + //cf2.bUnderlineType = CFU_UNDERLINENONE; + //SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_SETEDITSTYLEEX, 0, (LPARAM)SES_EX_HANDLEFRIENDLYURL); + //SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_SETCHARFORMAT, SCF_ALL, (LPARAM)&cf2); + SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_SETEVENTMASK, 0, (LPARAM)(ENM_LINK)); // link click - #if FALSE - PARAFORMAT2 ParaFormat2; - ZeroMemory(&ParaFormat2, sizeof(PARAFORMAT2)); - ParaFormat2.cbSize = (UINT)sizeof(PARAFORMAT2); - ParaFormat2.dwMask = (PFM_SPACEBEFORE | PFM_SPACEAFTER | PFM_LINESPACING); - ParaFormat2.dySpaceBefore = 48; // paragraph - ParaFormat2.dySpaceAfter = 48; // paragraph - ParaFormat2.dyLineSpacing = 24; // [twips] - ParaFormat2.bLineSpacingRule = 5; // 5: dyLineSpacing/20 is the spacing, in lines, from one line to the next. - SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_SETPARAFORMAT, 0, (LPARAM)&ParaFormat2); - SetDlgItemText(hwnd, IDC_RICHEDITABOUT, ABOUT_INFO_PLAIN); -#else - // using RTF format descriptions directly + #if TRUE EDITSTREAM editStreamIn = { (DWORD_PTR)&pAboutInfo, 0, _LoadRtfCallback }; pAboutInfo = pAboutInfoResource; SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_STREAMIN, SF_RTF, (LPARAM)&editStreamIn); /* DWORD dwSize = _LoadStringEx(IDR_ABOUTINFO_RTF, L"RTF", NULL); - if (dwSize != 0) + if (dwSize != 0) { - char* pchBuffer = LocalAlloc(LPTR, dwSize + 1); + char* pchBuffer = LocalAlloc(LPTR, dwSize + 1); - pAboutInfo = pchBuffer; - _LoadStringEx(IDR_ABOUTINFO_RTF, L"RTF", pAboutInfo); - SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_STREAMIN, SF_RTF, (LPARAM)&editStreamIn); + pAboutInfo = pchBuffer; + _LoadStringEx(IDR_ABOUTINFO_RTF, L"RTF", pAboutInfo); + SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_STREAMIN, SF_RTF, (LPARAM)&editStreamIn); - LocalFree(pchBuffer); + LocalFree(pchBuffer); } else { - pAboutInfo = chErrMsg; - SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_STREAMIN, SF_RTF, (LPARAM)&editStreamIn); + pAboutInfo = chErrMsg; + SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_STREAMIN, SF_RTF, (LPARAM)&editStreamIn); } */ -#endif + #else + PARAFORMAT2 pf2; + ZeroMemory(&pf2, sizeof(PARAFORMAT2)); + pf2.cbSize = (UINT)sizeof(PARAFORMAT2); + pf2.dwMask = (PFM_SPACEBEFORE | PFM_SPACEAFTER | PFM_LINESPACING); + pf2.dySpaceBefore = 48; // paragraph + pf2.dySpaceAfter = 48; // paragraph + pf2.dyLineSpacing = 24; // [twips] + pf2.bLineSpacingRule = 5; // 5: dyLineSpacing/20 is the spacing, in lines, from one line to the next. + SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_SETPARAFORMAT, 0, (LPARAM)&pf2); + SetDlgItemText(hwnd, IDC_RICHEDITABOUT, ABOUT_INFO_PLAIN); + #endif + CenterDlgInParent(hwnd); } return TRUE; @@ -2745,6 +2756,4 @@ INT_PTR InfoBox(int iType,LPCWSTR lpstrSetting,int uidMessage,...) } -#pragma warning( pop ) - // End of Dialogs.c diff --git a/src/Notepad3.ver b/src/Notepad3.ver index 89476170d..c10ee4639 100644 --- a/src/Notepad3.ver +++ b/src/Notepad3.ver @@ -37,15 +37,15 @@ BEGIN BEGIN BLOCK "040904b0" BEGIN - VALUE "Comments", APPNAME_A - VALUE "FileDescription", APPNAME_A - VALUE "InternalName", APPNAME_A - VALUE "ProductName", APPNAME_A + VALUE "Comments", APPNAMEA + VALUE "FileDescription", APPNAMEA + VALUE "InternalName", APPNAMEA + VALUE "ProductName", APPNAMEA VALUE "CompanyName", VERSION_COMPANYNAME VALUE "FileVersion", VERSION_FILEVERSION VALUE "ProductVersion", VERSION_FILEVERSION VALUE "LegalCopyright", VERSION_LEGALCOPYRIGHT - VALUE "OriginalFilename", APPNAME_A ".exe" + VALUE "OriginalFilename", APPNAMEA ".exe" END END BLOCK "VarFileInfo" diff --git a/src/Version.h b/src/Version.h index a96b7cf90b624f5744a5e56785a797170d83a0f3..f4303a44e47e2bcc645811ab7bbff9fb822a2eb7 100644 GIT binary patch delta 1006 zcmZWnO;1xn6uplCYAsD^3kU)Fd}&%fT3VhEppZgqA!yptyr3%=pj0SAY1%^kN^qgB zjn^3B!l=K1O&*r37ib=6u0zjs`{J{py;_Cq9jnt{(HLqgUZgr~Nz$ z+W!&Er0dp&?KUam_c!zNzBXyw^BX*sOq*KAOGPNZ z4mEHg^j`WNb~baF{+RVKgSYj#43>}e^7qsSUcFJyKd#$(tLqhS_?mgbUkiVi(65?9 zx8^Z6i|Bra*L`l@zG{_z3OS}@dabCCZ zmwv~k7P^TaTB1q*sn_vNw*$?ZJ;Sg>KFfwZ8`Nd(wxO8JBod9w`(AYDxGv)~&z(a4 zCCo-1`crfbznhTrBBn!BmF&-;2WgQ_lkol<<)j?*ETv&7p${tWyP}Gp2Zx`?IAQ?A MXQGFuWhCbL3ts0Gb^rhX delta 1299 zcmaKs-%Aux6vxkKA?uIDHnG**-En`&?#`Msqcd(MOKuirqN4U2oL&gXm2kGXTcz8Ai1 z3U5>8#kZgX*W8lvqI~~EjR@V~1rdUvLkl!Q0>&W?ArSG?sU;VokY>!N%O? z7EDl9AizaOtMQ}CU4kopmH5~#o@Cepes^C!JqzBJCMe+o*F?x%@cSs zO`b^@rt2ONDe}(393&|(nSu?_YK(MATHkwZlRt9aukca8;Ip2cONB<`G(KAGQ5!nydAXj(923Sv&!-%@uEHi-9!jYp<^LFS9?c0irCi^H8d;WjQN?jA#})J4wu?m!T6j4;iWBNQ?x}UQE{Zx& zw}@+jdS2sdtrI(&6K2e2wmPOy;YiCmr>nGVC$r}@tf?0IjTX=ME{N57oY!)w4Oz&S z`bAFe>e=WL9_alRin4F+HUG^q`ah>B_epceuz8Uro6UkbdecKwAWdsFKSn{tkM&91 mQSE|?zoVWC*_>x8%?t$;T Date: Tue, 27 Feb 2018 13:28:20 +0100 Subject: [PATCH 6/6] + fix: change cursor to "Hand" if over clickable static control (rizonesoft bitmap) --- src/Dialogs.c | 46 ++++++++++++++++++++++++++-------------------- src/resource.h | 2 +- 2 files changed, 27 insertions(+), 21 deletions(-) diff --git a/src/Dialogs.c b/src/Dialogs.c index f479ffbb4..778c7740d 100644 --- a/src/Dialogs.c +++ b/src/Dialogs.c @@ -360,23 +360,20 @@ INT_PTR CALLBACK AboutDlgProc(HWND hwnd, UINT umsg, WPARAM wParam, LPARAM lParam EDITSTREAM editStreamIn = { (DWORD_PTR)&pAboutInfo, 0, _LoadRtfCallback }; pAboutInfo = pAboutInfoResource; SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_STREAMIN, SF_RTF, (LPARAM)&editStreamIn); - /* - DWORD dwSize = _LoadStringEx(IDR_ABOUTINFO_RTF, L"RTF", NULL); - if (dwSize != 0) - { - char* pchBuffer = LocalAlloc(LPTR, dwSize + 1); - - pAboutInfo = pchBuffer; - _LoadStringEx(IDR_ABOUTINFO_RTF, L"RTF", pAboutInfo); - SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_STREAMIN, SF_RTF, (LPARAM)&editStreamIn); - - LocalFree(pchBuffer); - } - else { - pAboutInfo = chErrMsg; - SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_STREAMIN, SF_RTF, (LPARAM)&editStreamIn); - } - */ + + //DWORD dwSize = _LoadStringEx(IDR_ABOUTINFO_RTF, L"RTF", NULL); + //if (dwSize != 0) { + // char* pchBuffer = LocalAlloc(LPTR, dwSize + 1); + // pAboutInfo = pchBuffer; + // _LoadStringEx(IDR_ABOUTINFO_RTF, L"RTF", pAboutInfo); + // SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_STREAMIN, SF_RTF, (LPARAM)&editStreamIn); + // LocalFree(pchBuffer); + //} + //else { + // pAboutInfo = chErrMsg; + // SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_STREAMIN, SF_RTF, (LPARAM)&editStreamIn); + //} + #else PARAFORMAT2 pf2; ZeroMemory(&pf2, sizeof(PARAFORMAT2)); @@ -428,13 +425,22 @@ INT_PTR CALLBACK AboutDlgProc(HWND hwnd, UINT umsg, WPARAM wParam, LPARAM lParam } } break; - - default: - break; } } break; + case WM_SETCURSOR: + { + if ((LOWORD(lParam) == HTCLIENT) && + (GetDlgCtrlID((HWND)wParam) == IDC_RIZONEBMP)) + { + SetCursor(LoadCursor(NULL, IDC_HAND)); + SetWindowLongPtr(hwnd, DWLP_MSGRESULT, TRUE); + return TRUE; + } + } + break; + case WM_COMMAND: switch (LOWORD(wParam)) diff --git a/src/resource.h b/src/resource.h index 7f9344f6a..60ad0f250 100644 --- a/src/resource.h +++ b/src/resource.h @@ -504,7 +504,7 @@ #define _APS_NO_MFC 1 #define _APS_NEXT_RESOURCE_VALUE 601 #define _APS_NEXT_COMMAND_VALUE 701 -#define _APS_NEXT_CONTROL_VALUE 804 +#define _APS_NEXT_CONTROL_VALUE 801 #define _APS_NEXT_SYMED_VALUE 901 #endif #endif

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 literal 0 HcmV?d00001 diff --git a/src/Dialogs.c b/src/Dialogs.c index d2d5073cf..c92d97f6d 100644 --- a/src/Dialogs.c +++ b/src/Dialogs.c @@ -31,6 +31,12 @@ #include #include #include + +#pragma warning( push ) +#pragma warning( disable : 4201) // union/struct w/o name +#define _RICHEDIT_VER 0x0200 +#include + #include "scintilla.h" #include "notepad3.h" #include "edit.h" @@ -205,105 +211,217 @@ BOOL GetDirectory(HWND hwndParent,int iTitle,LPWSTR pszFolder,LPCWSTR pszBase,BO } +/* +//============================================================================= +// +// _LoadStringEx() +// +static DWORD _LoadStringEx(UINT nResId, LPCTSTR pszRsType, LPSTR strOut) +{ + LPTSTR pszResId = MAKEINTRESOURCE(nResId); + + if (g_hInstance == NULL) + return 0L; + + HRSRC hRsrc = FindResource(g_hInstance, pszResId, pszRsType); + + if (hRsrc == NULL) { + return 0L; + } + + HGLOBAL hGlobal = LoadResource(g_hInstance, hRsrc); + + if (hGlobal == NULL) { + return 0L; + } + + const BYTE* pData = (const BYTE*)LockResource(hGlobal); + + if (pData == NULL) { + FreeResource(hGlobal); + return 0L; + } + + DWORD dwSize = SizeofResource(g_hInstance, hRsrc); + + if (strOut) { + memcpy(strOut, (LPCSTR)pData, dwSize); + } + + UnlockResource(hGlobal); + + FreeResource(hGlobal); + + return dwSize; +} + +*/ + +//============================================================================= +// +// (EditStreamCallback) +// _LoadRtfCallback() RTF edit control StreamIn's callback function +// +static DWORD CALLBACK _LoadRtfCallback( + DWORD_PTR dwCookie, // (in) pointer to the string + LPBYTE pbBuff, // (in) pointer to the destination buffer + LONG cb, // (in) size in bytes of the destination buffer + LONG FAR* pcb // (out) number of bytes transfered +) +{ + LPSTR* pstr = (LPSTR*)dwCookie; + LONG len = (LONG)strlen(*pstr); + + if (len < cb) + { + *pcb = len; + memcpy(pbBuff, (LPCSTR)*pstr, *pcb); + *pstr += len; + //*pstr = '\0'; + } + else + { + *pcb = cb; + memcpy(pbBuff, (LPCSTR)*pstr, *pcb); + *pstr += cb; + } + return 0; +} +// ---------------------------------------------------------------------------- + + +static char* pAboutInfoResource = ABOUT_INFO_RTF; +static char* pAboutInfoErrMsg = ABOUT_INFO_ERRMSG; +static char* pAboutInfo; + //============================================================================= // // AboutDlgProc() // -INT_PTR CALLBACK AboutDlgProc(HWND hwnd,UINT umsg,WPARAM wParam,LPARAM lParam) +INT_PTR CALLBACK AboutDlgProc(HWND hwnd, UINT umsg, WPARAM wParam, LPARAM lParam) { + WCHAR wch[256] = { L'\0' }; static HFONT hFontTitle; - - switch(umsg) + + switch (umsg) { - case WM_INITDIALOG: + case WM_INITDIALOG: + { + SetDlgItemText(hwnd, IDC_VERSION, VERSION_FILEVERSION_LONG); + SetDlgItemText(hwnd, IDC_SCI_VERSION, VERSION_SCIVERSION); + SetDlgItemText(hwnd, IDC_COPYRIGHT, VERSION_LEGALCOPYRIGHT); + SetDlgItemText(hwnd, IDC_AUTHORNAME, VERSION_AUTHORNAME); + SetDlgItemText(hwnd, IDC_COMPILER, VERSION_COMPILER); + + if (hFontTitle) + DeleteObject(hFontTitle); + if (NULL == (hFontTitle = (HFONT)SendDlgItemMessage(hwnd, IDC_VERSION, WM_GETFONT, 0, 0))) + hFontTitle = GetStockObject(DEFAULT_GUI_FONT); + LOGFONT lf; + GetObject(hFontTitle, sizeof(LOGFONT), &lf); + lf.lfWeight = FW_BOLD; + lf.lfWidth = 8; + lf.lfHeight = 22; + // lf.lfQuality = ANTIALIASED_QUALITY; + hFontTitle = CreateFontIndirect(&lf); + + SendDlgItemMessage(hwnd, IDC_VERSION, WM_SETFONT, (WPARAM)hFontTitle, TRUE); + + if (GetDlgItem(hwnd, IDC_WEBPAGE) == NULL) { + SetDlgItemText(hwnd, IDC_WEBPAGE2, VERSION_WEBPAGEDISPLAY); + ShowWindow(GetDlgItem(hwnd, IDC_WEBPAGE2), SW_SHOWNORMAL); + } + else { + StringCchPrintf(wch, COUNTOF(wch), L"%s", VERSION_WEBPAGEDISPLAY); + SetDlgItemText(hwnd, IDC_WEBPAGE, wch); + } + + // --- Rich Edit Control --- + + COLORREF colBackGr = RGB(230, 230, 230); + SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_SETBKGNDCOLOR, 0, colBackGr); + + //SetDlgItemText(hwnd, IDC_RICHEDITABOUT, VERSION_CONTRIBUTORS); + + EDITSTREAM editStreamIn = { (DWORD_PTR)&pAboutInfo, 0, _LoadRtfCallback }; + + /* + DWORD dwSize = _LoadStringEx(IDR_ABOUTINFO_RTF, L"RTF", NULL); + if (dwSize != 0) + { + char* pchBuffer = LocalAlloc(LPTR, dwSize + 1); + + pAboutInfo = pchBuffer; + _LoadStringEx(IDR_ABOUTINFO_RTF, L"RTF", pAboutInfo); + SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_STREAMIN, SF_RTF, (LPARAM)&editStreamIn); + + LocalFree(pchBuffer); + } + else { + pAboutInfo = chErrMsg; + SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_STREAMIN, SF_RTF, (LPARAM)&editStreamIn); + } + */ + //pAboutInfo = pAboutInfoErrMsg; + pAboutInfo = pAboutInfoResource; + SendDlgItemMessage(hwnd, IDC_RICHEDITABOUT, EM_STREAMIN, SF_RTF, (LPARAM)&editStreamIn); + + CenterDlgInParent(hwnd); + } + return TRUE; + + case WM_NOTIFY: + { + LPNMHDR pnmhdr = (LPNMHDR)lParam; + switch (pnmhdr->code) + { + case NM_CLICK: + case NM_RETURN: { - WCHAR wch[256] = { L'\0' }; - LOGFONT lf; + switch (pnmhdr->idFrom) + { + case IDC_WEBPAGE: + ShellExecute(hwnd, L"open", L"https://rizonesoft.com", NULL, NULL, SW_SHOWNORMAL); + break; - SetDlgItemText(hwnd,IDC_VERSION,VERSION_FILEVERSION_LONG); - SetDlgItemText(hwnd,IDC_SCI_VERSION,VERSION_SCIVERSION); - SetDlgItemText(hwnd,IDC_COPYRIGHT,VERSION_LEGALCOPYRIGHT); - SetDlgItemText(hwnd,IDC_AUTHORNAME,VERSION_AUTHORNAME); - SetDlgItemText(hwnd,IDC_COMPILER,VERSION_COMPILER); + //case IDC_MODWEBPAGE: + // ShellExecute(hwnd, L"open", L"https://xhmikosr.github.io/notepad2-mod/", NULL, NULL, SW_SHOWNORMAL); + // break; - if (hFontTitle) - DeleteObject(hFontTitle); + //case IDC_NOTE2WEBPAGE: + // ShellExecute(hwnd, L"open", L"http://www.flos-freeware.ch", NULL, NULL, SW_SHOWNORMAL); + // break; - if (NULL == (hFontTitle = (HFONT)SendDlgItemMessage(hwnd,IDC_VERSION,WM_GETFONT,0,0))) - hFontTitle = GetStockObject(DEFAULT_GUI_FONT); - GetObject(hFontTitle,sizeof(LOGFONT),&lf); - lf.lfWeight = FW_BOLD; - lf.lfWidth = 8; - lf.lfHeight = 22; - // lf.lfQuality = ANTIALIASED_QUALITY; - hFontTitle = CreateFontIndirect(&lf); - SendDlgItemMessage(hwnd,IDC_VERSION,WM_SETFONT,(WPARAM)hFontTitle,TRUE); - - if (GetDlgItem(hwnd,IDC_WEBPAGE) == NULL) { - SetDlgItemText(hwnd,IDC_WEBPAGE2,VERSION_WEBPAGEDISPLAY); - ShowWindow(GetDlgItem(hwnd,IDC_WEBPAGE2),SW_SHOWNORMAL); - } - else { - StringCchPrintf(wch,COUNTOF(wch),L"%s",VERSION_WEBPAGEDISPLAY); - SetDlgItemText(hwnd,IDC_WEBPAGE,wch); - } - - if (GetDlgItem(hwnd, IDC_MODWEBPAGE) == NULL) { - SetDlgItemText(hwnd, IDC_MODWEBPAGE2, VERSION_MODPAGEDISPLAY); - ShowWindow(GetDlgItem(hwnd, IDC_MODWEBPAGE2), SW_SHOWNORMAL); - } - else { - StringCchPrintf(wch,COUNTOF(wch),L"%s", VERSION_MODPAGEDISPLAY); - SetDlgItemText(hwnd, IDC_MODWEBPAGE, wch); - } - - if (GetDlgItem(hwnd, IDC_NOTE2WEBPAGE) == NULL) { - SetDlgItemText(hwnd, IDC_NOTE2WEBPAGE2, VERSION_WEBPAGE2DISPLAY); - ShowWindow(GetDlgItem(hwnd, IDC_NOTE2WEBPAGE2), SW_SHOWNORMAL); - } - else { - StringCchPrintf(wch,COUNTOF(wch),L"%s", VERSION_WEBPAGE2DISPLAY); - SetDlgItemText(hwnd, IDC_NOTE2WEBPAGE, wch); - } - - CenterDlgInParent(hwnd); - } - return TRUE; - - case WM_NOTIFY: - { - LPNMHDR pnmhdr = (LPNMHDR)lParam; - switch (pnmhdr->code) { - - case NM_CLICK: - case NM_RETURN: - { - if (pnmhdr->idFrom == IDC_WEBPAGE) { - ShellExecute(hwnd,L"open",L"https://rizonesoft.com",NULL,NULL,SW_SHOWNORMAL); - } - else if (pnmhdr->idFrom == IDC_MODWEBPAGE) { - ShellExecute(hwnd,L"open",L"https://xhmikosr.github.io/notepad2-mod/",NULL,NULL,SW_SHOWNORMAL); - } - else if (pnmhdr->idFrom == IDC_NOTE2WEBPAGE) { - ShellExecute(hwnd,L"open",L"http://www.flos-freeware.ch",NULL,NULL,SW_SHOWNORMAL); - } - } - break; + default: + break; } } break; + } + } + break; - case WM_COMMAND: + case WM_COMMAND: - switch(LOWORD(wParam)) + switch (LOWORD(wParam)) + { + case IDC_COPYVERSTRG: { - case IDOK: - case IDCANCEL: - EndDialog(hwnd,IDOK); - break; + WCHAR wchVerInfo[1024] = { L'\0' }; + StringCchCopy(wchVerInfo, COUNTOF(wchVerInfo), VERSION_FILEVERSION_LONG); + StringCchCat(wchVerInfo, COUNTOF(wchVerInfo), L"\n" VERSION_SCIVERSION); + StringCchCat(wchVerInfo, COUNTOF(wchVerInfo), L"\n" VERSION_COMPILER); + SetClipboardTextW(g_hwndMain, wchVerInfo); } - return TRUE; + break; + + case IDOK: + case IDCANCEL: + EndDialog(hwnd, IDOK); + break; + } + return TRUE; } return FALSE; } @@ -2601,6 +2719,6 @@ INT_PTR InfoBox(int iType,LPCWSTR lpstrSetting,int uidMessage,...) } - +#pragma warning( pop ) // End of Dialogs.c diff --git a/src/Edit.c b/src/Edit.c index 34d567212..ca6355daa 100644 --- a/src/Edit.c +++ b/src/Edit.c @@ -647,7 +647,7 @@ BOOL EditSetClipboardText(HWND hwnd, const char* pszText) return TRUE; } - WCHAR* pszTextW = L""; + WCHAR* pszTextW = NULL; UINT uCodePage = Encoding_SciGetCodePage(hwnd); int cchTextW = MultiByteToWideChar(uCodePage, 0, pszText, -1, NULL, 0) + 1; if (cchTextW > 1) { @@ -655,21 +655,12 @@ BOOL EditSetClipboardText(HWND hwnd, const char* pszText) MultiByteToWideChar(uCodePage, 0, pszText, -1, pszTextW, cchTextW); } - if (!OpenClipboard(GetParent(hwnd))) { + if (pszTextW) { + SetClipboardTextW(GetParent(hwnd), pszTextW); LocalFree(pszTextW); - return FALSE; + return TRUE; } - - HANDLE hNew = GlobalAlloc(GMEM_MOVEABLE | GMEM_ZEROINIT, sizeof(WCHAR) * cchTextW); - WCHAR* pszNew = GlobalLock(hNew); - - StringCchCopy(pszNew, cchTextW, pszTextW); - GlobalUnlock(hNew); - - EmptyClipboard(); - SetClipboardData(CF_UNICODETEXT, hNew); - CloseClipboard(); - return TRUE; + return FALSE; } @@ -867,11 +858,6 @@ BOOL EditPasteClipboard(HWND hwnd, BOOL bSwapClipBoard) // BOOL EditCopyAppend(HWND hwnd, BOOL bAppend) { - if (!IsClipboardFormatAvailable(CF_UNICODETEXT)) { - SciCall_Copy(); - return TRUE; - } - int iCurPos = SciCall_GetCurrentPos(); int iAnchorPos = SciCall_GetAnchor(); @@ -892,7 +878,7 @@ BOOL EditCopyAppend(HWND hwnd, BOOL bAppend) pszText = LocalAlloc(LPTR,cchText + 1); SciCall_GetTextFromBegin((DocPos)LocalSize(pszText), pszText); } - WCHAR* pszTextW = L""; + WCHAR* pszTextW = NULL; UINT uCodePage = Encoding_SciGetCodePage(hwnd); int cchTextW = MultiByteToWideChar(uCodePage,0,pszText,-1,NULL,0); if (cchTextW > 0) { @@ -904,6 +890,14 @@ BOOL EditCopyAppend(HWND hwnd, BOOL bAppend) if (pszText) LocalFree(pszText); + if (!bAppend) { + BOOL res = (BOOL)SetClipboardTextW(GetParent(hwnd), pszTextW); + LocalFree(pszTextW); + return res; + } + + // --- Append to Clipboard --- + if (!OpenClipboard(GetParent(hwnd))) { LocalFree(pszTextW); return FALSE; @@ -912,29 +906,29 @@ BOOL EditCopyAppend(HWND hwnd, BOOL bAppend) HANDLE hOld = GetClipboardData(CF_UNICODETEXT); WCHAR* pszOld = GlobalLock(hOld); - int sizeNew = bAppend ? (lstrlen(pszOld) + lstrlen(pszTextW) + 1) : (lstrlen(pszTextW) + 1); - const WCHAR *pszSep = L"\r\n\r\n"; - sizeNew += bAppend ? (int)lstrlen(pszSep) : 0; + int sizeNew = lstrlen(pszOld) + lstrlen(pszTextW) + 1; - HANDLE hNew = GlobalAlloc(GMEM_MOVEABLE|GMEM_ZEROINIT,sizeof(WCHAR) * sizeNew); - WCHAR* pszNew = GlobalLock(hNew); + const WCHAR *pszSep = L"\r\n"; + sizeNew += (int)lstrlen(pszSep); + + // Copy Clip + WCHAR* pszNewTextW = LocalAlloc(LPTR, sizeof(WCHAR) * sizeNew); - if (bAppend) { - StringCchCopy(pszNew, sizeNew, pszOld); - StringCchCat(pszNew, sizeNew, pszSep); - StringCchCat(pszNew, sizeNew, pszTextW); - } - else { - StringCchCopy(pszNew, sizeNew, pszTextW); - } - GlobalUnlock(hNew); - GlobalUnlock(hOld); + if (pszOld) + StringCchCopy(pszNewTextW, sizeNew, pszOld); - EmptyClipboard(); - SetClipboardData(CF_UNICODETEXT,hNew); + GlobalUnlock(hOld); CloseClipboard(); - return TRUE; + + // Add New + StringCchCat(pszNewTextW, sizeNew, pszSep); + StringCchCat(pszNewTextW, sizeNew, pszTextW); + + BOOL res = (BOOL)SetClipboardTextW(GetParent(hwnd), pszNewTextW); + + LocalFree(pszNewTextW); + return res; } diff --git a/src/Helpers.c b/src/Helpers.c index d9d31c8c7..ca99e6e7b 100644 --- a/src/Helpers.c +++ b/src/Helpers.c @@ -78,6 +78,30 @@ WCHAR* _StrCutIW(WCHAR* s,const WCHAR* pattern) } +//============================================================================= +// +// SetClipboardWchTextW() +// +bool SetClipboardTextW(HWND hwnd, LPCWSTR pszTextW) +{ + if (!OpenClipboard(hwnd)) { + return false; + } + + int cchTextW = lstrlen(pszTextW) + 1; + HANDLE hData = GlobalAlloc(GMEM_MOVEABLE | GMEM_ZEROINIT, sizeof(WCHAR) * cchTextW); + WCHAR* pszNew = GlobalLock(hData); + + StringCchCopy(pszNew, cchTextW, pszTextW); + GlobalUnlock(hData); + + EmptyClipboard(); + SetClipboardData(CF_UNICODETEXT, hData); + CloseClipboard(); + return true; +} + + //============================================================================= // // Manipulation of (cached) ini file sections @@ -189,16 +213,18 @@ BOOL IniSectionSetString(LPWSTR lpCachedIniSection,LPCWSTR lpName,LPCWSTR lpStri // PrivateIsAppThemed() // extern HMODULE hModUxTheme; + BOOL PrivateIsAppThemed() { - FARPROC pfnIsAppThemed; - BOOL bIsAppThemed = FALSE; + BOOL bIsAppThemed = IsWin8() ? TRUE : FALSE; - if (hModUxTheme) { - pfnIsAppThemed = GetProcAddress(hModUxTheme,"IsAppThemed"); + if (hModUxTheme && !bIsAppThemed) + { + FARPROC pfnIsAppThemed = GetProcAddress(hModUxTheme,"IsAppThemed"); - if (pfnIsAppThemed) + if (pfnIsAppThemed) { bIsAppThemed = (BOOL)pfnIsAppThemed(); + } } return bIsAppThemed; } diff --git a/src/Helpers.h b/src/Helpers.h index 228dd753e..dd8266b57 100644 --- a/src/Helpers.h +++ b/src/Helpers.h @@ -108,6 +108,8 @@ __inline BOOL IniSectionSetBool(LPWSTR lpCachedIniSection, LPCWSTR lpName, BOOL #define IsWinServer() IsWindowsServer() // Indicates if the current OS is a Windows Server release. // Applications that need to distinguish between server and client versions of Windows should call this function. +bool SetClipboardTextW(HWND, LPCWSTR); + BOOL PrivateIsAppThemed(); HRESULT PrivateSetCurrentProcessExplicitAppUserModelID(PCWSTR); BOOL IsElevated(); diff --git a/src/Notepad3.c b/src/Notepad3.c index dbc156a42..1db931b92 100644 --- a/src/Notepad3.c +++ b/src/Notepad3.c @@ -509,7 +509,9 @@ int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInst,LPSTR lpCmdLine,int n msgTaskbarCreated = RegisterWindowMessage(L"TaskbarCreated"); - hModUxTheme = LoadLibrary(L"uxtheme.dll"); + if (!IsWin8()) { + hModUxTheme = LoadLibrary(L"uxtheme.dll"); + } Scintilla_RegisterClasses(hInstance); @@ -4349,13 +4351,17 @@ LRESULT MsgCommand(HWND hwnd, WPARAM wParam, LPARAM lParam) break; - case IDM_HELP_ONLINEDOCUMENTATION: - ShellExecute(0, 0, ONLINE_HELP_WEBSITE, 0, 0, SW_SHOW); - break; + case IDM_HELP_ONLINEDOCUMENTATION: + ShellExecute(0, 0, ONLINE_HELP_WEBSITE, 0, 0, SW_SHOW); + break; - case IDM_HELP_ABOUT: - ThemedDialogBox(g_hInstance,MAKEINTRESOURCE(IDD_ABOUT), - hwnd,AboutDlgProc); + case IDM_HELP_ABOUT: + { + HMODULE hRichEdit = LoadLibrary(L"RichEd20.dll"); + if (hRichEdit) { + ThemedDialogBox(g_hInstance, MAKEINTRESOURCE(IDD_ABOUT), hwnd, AboutDlgProc); + } + } break; case IDM_SETPASS: @@ -4886,19 +4892,8 @@ LRESULT MsgCommand(HWND hwnd, WPARAM wParam, LPARAM lParam) GetString(IDS_UNTITLED,tchUntitled,COUNTOF(tchUntitled)); pszCopy = tchUntitled; } - - if (OpenClipboard(hwnd)) { - HANDLE hData; - WCHAR *pData; - EmptyClipboard(); - int len = lstrlen(pszCopy); - hData = GlobalAlloc(GMEM_MOVEABLE|GMEM_ZEROINIT,sizeof(WCHAR) * (len+1)); - pData = GlobalLock(hData); - StringCchCopyN(pData,(len+1),pszCopy,len); - GlobalUnlock(hData); - SetClipboardData(CF_UNICODETEXT,hData); - CloseClipboard(); - } + SetClipboardTextW(hwnd, pszCopy); + UpdateToolbar(); } break; @@ -4906,22 +4901,9 @@ LRESULT MsgCommand(HWND hwnd, WPARAM wParam, LPARAM lParam) case CMD_COPYWINPOS: { WCHAR wszWinPos[MIDSZ_BUFFER]; - WININFO wi = GetMyWindowPlacement(g_hwndMain,NULL); StringCchPrintf(wszWinPos,COUNTOF(wszWinPos),L"/pos %i,%i,%i,%i,%i",wi.x,wi.y,wi.cx,wi.cy,wi.max); - - if (OpenClipboard(hwnd)) { - HANDLE hData; - WCHAR *pData; - EmptyClipboard(); - int len = StringCchLenW(wszWinPos,COUNTOF(wszWinPos)); - hData = GlobalAlloc(GMEM_MOVEABLE|GMEM_ZEROINIT,sizeof(WCHAR) * (len+1)); - pData = GlobalLock(hData); - StringCchCopyN(pData,(len+1),wszWinPos,len); - GlobalUnlock(hData); - SetClipboardData(CF_UNICODETEXT,hData); - CloseClipboard(); - } + SetClipboardTextW(hwnd, wszWinPos); UpdateToolbar(); } break; diff --git a/src/Notepad3.rc b/src/Notepad3.rc index 6e2598d39..40bc52fc4 100644 --- a/src/Notepad3.rc +++ b/src/Notepad3.rc @@ -12,7 +12,7 @@ #undef APSTUDIO_READONLY_SYMBOLS ///////////////////////////////////////////////////////////////////////////// -// English (United States) resources +// Englisch (USA) resources #if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU) LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US @@ -27,11 +27,12 @@ LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US // remains consistent on all systems. IDR_MAINWND ICON "..\\res\\Notepad3.ico" +IDR_MAINWND128 ICON "..\\res\\Notepad3_128.ico" + IDI_RUN ICON "..\\res\\Run.ico" IDI_STYLES ICON "..\\res\\Styles.ico" - ///////////////////////////////////////////////////////////////////////////// // // Bitmap @@ -60,6 +61,10 @@ IDR_MAINWND2 BITMAP "..\\res\\Toolbar2.bmp" IDC_COPY CURSOR "..\\res\\Copy.cur" + +IDR_ABOUTINFO_RTF TEXT "..\\res\\AboutInfo.rtf" + + ///////////////////////////////////////////////////////////////////////////// // // Menu @@ -179,8 +184,8 @@ BEGIN MENUITEM "&Fuse Lines\tCtrl+Alt+J", IDM_EDIT_JOINLN_NOSP MENUITEM "&Preserve Paragraphs\tCtrl+Shift+J", IDM_EDIT_JOINLINES_PARA MENUITEM SEPARATOR - MENUITEM "Merge &Blank Lines\tAlt+Y", IDM_EDIT_MERGEBLANKLINES - MENUITEM "&Remove Blank Lines\tAlt+R", IDM_EDIT_REMOVEBLANKLINES + MENUITEM "Merge &Blank Lines\tAlt+Y", IDM_EDIT_MERGEBLANKLINES + MENUITEM "&Remove Blank Lines\tAlt+R", IDM_EDIT_REMOVEBLANKLINES END POPUP "&Block" BEGIN @@ -634,27 +639,21 @@ END // Dialog // -IDD_ABOUT DIALOGEX 0, 0, 255, 227 +IDD_ABOUT DIALOGEX 0, 0, 360, 280 STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | DS_NOFAILCREATE | WS_POPUP | WS_CAPTION | WS_SYSMENU CAPTION "About Notepad3" FONT 8, "MS Shell Dlg", 0, 0, 0x0 BEGIN - DEFPUSHBUTTON "OK",IDOK,195,204,50,14 - ICON IDR_MAINWND,IDC_STATIC,7,7,21,20 - LTEXT "",IDC_VERSION,45,10,200,17 - LTEXT "Scintilla Library Version:",IDC_SCI_VERSION,45,24,200,8 - LTEXT "Compiled with:",IDC_COMPILER2,45,35,200,8 - LTEXT "",IDC_COMPILER,96,35,200,8 - LTEXT "",IDC_COPYRIGHT,45,55,200,8 - LTEXT "",IDC_WEBPAGE2,45,64,200,8,NOT WS_VISIBLE | WS_DISABLED - CONTROL "",IDC_WEBPAGE,"SysLink",WS_TABSTOP,45,64,200,10 - LTEXT "XhmikosR ( Notepad2-mod )",IDC_STATIC,45,85,200,8 - LTEXT "",IDC_MODWEBPAGE2,45,94,200,8,NOT WS_VISIBLE | WS_DISABLED - CONTROL "",IDC_MODWEBPAGE,"SysLink",WS_TABSTOP,45,94,200,10 - LTEXT "Florian Balmer et al. ( Notepad2 )",IDC_STATIC,45,110,200,8 - LTEXT "",IDC_NOTE2WEBPAGE2,45,119,200,8,NOT WS_VISIBLE | WS_DISABLED - CONTROL "",IDC_NOTE2WEBPAGE,"SysLink",WS_TABSTOP,45,119,200,10 - LTEXT "Contributors: Derick Payne (Rizonesoft), Flo Balmer (Notepad2), N.Hodgson (Scintilla), XhmikosR (Notepad2-mod), Kai Liu, RL Vision, A.Lekov, B.Barbieri, M.Ellis (MinimizeToTray), D.Dyer (crypt), T.D.Hanson (uthash), RaiKoHoff",IDC_STATIC,45,150,200,44 + DEFPUSHBUTTON "OK",IDOK,290,257,50,14 + ICON IDR_MAINWND128,IDC_STATIC,7,7,20,20,SS_REALSIZEIMAGE,WS_EX_TRANSPARENT + LTEXT "IDC_VERSION",IDC_VERSION,80,7,288,15 + LTEXT "Scintilla Library Version:",IDC_SCI_VERSION,80,24,280,8 + LTEXT "Compiled with:",IDC_COMPILER,80,35,300,8 + LTEXT "IDC_COPYRIGHT",IDC_COPYRIGHT,80,55,180,8 + LTEXT "",IDC_WEBPAGE2,190,55,130,8,NOT WS_VISIBLE | WS_DISABLED + CONTROL "",IDC_WEBPAGE,"SysLink",WS_TABSTOP,190,55,130,10 + CONTROL "",IDC_RICHEDITABOUT,"RichEdit20W",ES_MULTILINE | ES_AUTOVSCROLL | ES_AUTOHSCROLL | ES_NOHIDESEL | ES_READONLY | ES_NUMBER | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP,20,80,320,170 + PUSHBUTTON "Copy Version Text",IDC_COPYVERSTRG,260,7,80,14,BS_FLAT END IDD_FIND DIALOGEX 0, 0, 273, 129 @@ -1174,6 +1173,15 @@ BEGIN BOTTOMMARGIN, 218 END + IDD_ABOUT2, DIALOG + BEGIN + LEFTMARGIN, 7 + RIGHTMARGIN, 361 + VERTGUIDE, 80 + TOPMARGIN, 7 + BOTTOMMARGIN, 271 + END + IDD_FIND, DIALOG BEGIN LEFTMARGIN, 7 @@ -1950,12 +1958,12 @@ BEGIN 63272 "Other Package Functions" END -#endif // English (United States) resources +#endif // Englisch (USA) resources ///////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////// -// German (Switzerland) resources +// Deutsch (Schweiz) resources #if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_DES) LANGUAGE LANG_GERMAN, SUBLANG_GERMAN_SWISS @@ -1984,7 +1992,7 @@ END #endif // APSTUDIO_INVOKED -#endif // German (Switzerland) resources +#endif // Deutsch (Schweiz) resources ///////////////////////////////////////////////////////////////////////////// diff --git a/src/Version.h b/src/Version.h index ca33c6d1b0440f7e517bf0e396490dcb9c8fce8e..eb58e5d4709ecc88da67ebefd319a4f22fc5ac0e 100644 GIT binary patch literal 18432 zcmdU1eNWp)7{9+K?K`+ZszNs)fwI1A-9$;D9gw0lZC42?fDCXlFS+ga zyC;|P*=NTNP8wt-v5oI}zvu1F{P*vQx;Mwi_v$-P7tHN(Pu(60>*`YV)rtD34%M+* zn;V(lCKGT2>$CM2fBqpF+buPr;+@9etJ=MUSRaH?{e3pi1>$sQYa4F0(V%E>hl0qZj24wpM zvh6}QJ^Z#YLq*0F^>8HPheHX^j=~S1qYqEfQ;*dOjz9IW4BLs*yR5B?78Sr(-yVNB zYx~NI&&Y6|0R2efVz6An(CR_R~xE^DAQ7JaMe(+)C>Hjj_c=o z?80zFN85h(aRz4>R(GxjL$6i>mau1jrao)$TuP*~1u6|J(tXFF=NKOF1!&&K(ZX3B z@L#GOa8lEL@vgdyG3D5p*Ld=U+QhRpJWCJyH;y3oTuVitT=YtXRF-wr{)}(J+l9mz zMt6jR6G(#oUamwFMy_!P%mE0^jHT|VL*KOzVh!B2Ae$z%O37^FdrQ58zRQ418s%8P zRi5#0N8^QNj`vGNaBq*EHyF+DI0}7K#rbi$NrGvpCQN?lEdzM&`8*7j(b=~L{k5P$ z+It*8e4qKQ(z=5HLXRTg+#IVY4=IXXIoKdmLHkrCHSurB#>>a;ny8|pn368G}*l@ zw1|9NI?=A7w(rIQ$#%4^2pcUM1Z_rs2n(VF3QxQNj+k*sCbEm` zcbY>xdx>k3Ts<2d%wzU69d%$%<9a;LS#-Pye6@-B{_NDMSMZ;w$ZPtzJ5WcsV$HsS zY%?6IY}LC0Nt*aQ&K6w#tfpuvtRJ_MY9nW3O}&K7>k1j!2`a2Zea3p~!;qTsUXYpC zCM?9AFV;fBXQbv8pffk@v6B{R@_iEl zh`)?Ea{_HJD<`yIer$fz%&&#u-nyKTLg<*nh)0KW4WQfEfKqJD!U!ZpkjEp=C~ zNfD2BBDTUz-dAtDg&gbZCv|_AQ%jyoKF3+RKgPy=ZZr#|-idDsw#9i!i%7DgD3|eU zD1b*CXq#nMD=VC61Qfl_l4GGY%Aa4R)L<40lQSPzEAh7Xw@fJe