mirror of
https://github.com/rizonesoft/Notepad3.git
synced 2026-06-14 21:09:05 +08:00
Merge pull request #393 from RaiKoHoff/AboutBox_0223
New AboutBox and minor fixes
This commit is contained in:
commit
95e75eb4f9
@ -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) {
|
||||
|
||||
Binary file not shown.
BIN
res/AboutInfo.rtf
Normal file
BIN
res/AboutInfo.rtf
Normal file
Binary file not shown.
BIN
res/Notepad3.ico
BIN
res/Notepad3.ico
Binary file not shown.
|
Before Width: | Height: | Size: 93 KiB After Width: | Height: | Size: 148 KiB |
BIN
res/Notepad3_128.ico
Normal file
BIN
res/Notepad3_128.ico
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 66 KiB |
BIN
res/rizonesoft.bmp
Normal file
BIN
res/rizonesoft.bmp
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 18 KiB |
333
src/Dialogs.c
333
src/Dialogs.c
@ -31,6 +31,12 @@
|
||||
#include <shlwapi.h>
|
||||
#include <commdlg.h>
|
||||
#include <string.h>
|
||||
|
||||
#pragma warning( push )
|
||||
#pragma warning( disable : 4201) // union/struct w/o name
|
||||
#include <richedit.h>
|
||||
#pragma warning( pop )
|
||||
|
||||
#include "scintilla.h"
|
||||
#include "notepad3.h"
|
||||
#include "edit.h"
|
||||
@ -60,7 +66,6 @@ extern int flagNoFileVariables;
|
||||
extern int flagUseSystemMRU;
|
||||
|
||||
|
||||
|
||||
//=============================================================================
|
||||
//
|
||||
// MsgBox()
|
||||
@ -205,105 +210,261 @@ 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* 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"<A>%s</A>", VERSION_WEBPAGEDISPLAY);
|
||||
SetDlgItemText(hwnd, IDC_WEBPAGE, wch);
|
||||
}
|
||||
|
||||
// --- 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)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 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) {
|
||||
// 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));
|
||||
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;
|
||||
|
||||
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://www.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);
|
||||
|
||||
if (hFontTitle)
|
||||
DeleteObject(hFontTitle);
|
||||
|
||||
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"<A>%s</A>",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"<A>%s</A>", 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"<A>%s</A>", 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;
|
||||
|
||||
case WM_COMMAND:
|
||||
|
||||
switch(LOWORD(wParam))
|
||||
case EN_LINK: // hyperlink from RichEdit Ctrl
|
||||
{
|
||||
case IDOK:
|
||||
case IDCANCEL:
|
||||
EndDialog(hwnd,IDOK);
|
||||
break;
|
||||
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);
|
||||
}
|
||||
}
|
||||
return TRUE;
|
||||
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))
|
||||
{
|
||||
case IDC_RIZONEBMP:
|
||||
ShellExecute(hwnd, L"open", L"https://www.rizonesoft.com", NULL, NULL, SW_SHOWNORMAL);
|
||||
break;
|
||||
|
||||
case IDC_COPYVERSTRG:
|
||||
{
|
||||
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);
|
||||
}
|
||||
break;
|
||||
|
||||
case IDOK:
|
||||
case IDCANCEL:
|
||||
EndDialog(hwnd, IDOK);
|
||||
break;
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
@ -2601,6 +2762,4 @@ INT_PTR InfoBox(int iType,LPCWSTR lpstrSetting,int uidMessage,...)
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
// End of Dialogs.c
|
||||
|
||||
70
src/Edit.c
70
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;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -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;
|
||||
}
|
||||
@ -941,6 +967,16 @@ BOOL StatusSetTextID(HWND hwnd,UINT nPart,UINT uID)
|
||||
}
|
||||
|
||||
|
||||
//=============================================================================
|
||||
//
|
||||
// StatusCalcPaneWidth()
|
||||
//
|
||||
COLORREF GetBackgroundColor(HWND hwnd)
|
||||
{
|
||||
return GetBkColor(GetDC(hwnd));
|
||||
}
|
||||
|
||||
|
||||
//=============================================================================
|
||||
//
|
||||
// StatusCalcPaneWidth()
|
||||
|
||||
@ -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();
|
||||
@ -143,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);
|
||||
|
||||
@ -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;
|
||||
@ -509,7 +510,11 @@ 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");
|
||||
}
|
||||
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);
|
||||
|
||||
@ -1367,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);
|
||||
}
|
||||
@ -4349,13 +4354,12 @@ 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:
|
||||
ThemedDialogBox(g_hInstance, MAKEINTRESOURCE(IDD_ABOUT), hwnd, AboutDlgProc);
|
||||
break;
|
||||
|
||||
case IDM_SETPASS:
|
||||
@ -4886,19 +4890,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 +4899,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;
|
||||
@ -8474,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);
|
||||
|
||||
@ -25,9 +25,11 @@ 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"
|
||||
|
||||
IDI_RUN ICON "..\\res\\Run.ico"
|
||||
IDR_MAINWND128 ICON "..\\res\\Notepad3_128.ico"
|
||||
|
||||
IDI_STYLES ICON "..\\res\\Styles.ico"
|
||||
|
||||
@ -37,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"
|
||||
|
||||
@ -49,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"
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
@ -179,8 +183,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 +638,22 @@ END
|
||||
// Dialog
|
||||
//
|
||||
|
||||
IDD_ABOUT DIALOGEX 0, 0, 255, 227
|
||||
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,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,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
|
||||
LTEXT "Build with:",IDC_COMPILER,80,35,210,8
|
||||
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,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
|
||||
@ -669,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
|
||||
@ -699,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
|
||||
@ -1167,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
|
||||
|
||||
@ -110,6 +110,7 @@
|
||||
<EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>
|
||||
<FloatingPointModel>Fast</FloatingPointModel>
|
||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||
<CompileAsWinRT>false</CompileAsWinRT>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>msimg32.lib;comctl32.lib;imm32.lib;shlwapi.lib;scintilla.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
@ -163,6 +164,7 @@
|
||||
<StringPooling>true</StringPooling>
|
||||
<FloatingPointModel>Fast</FloatingPointModel>
|
||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||
<CompileAsWinRT>false</CompileAsWinRT>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>msimg32.lib;comctl32.lib;imm32.lib;shlwapi.lib;scintilla.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
@ -215,6 +217,7 @@
|
||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||
<FavorSizeOrSpeed>Size</FavorSizeOrSpeed>
|
||||
<StringPooling>true</StringPooling>
|
||||
<CompileAsWinRT>false</CompileAsWinRT>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>msimg32.lib;comctl32.lib;imm32.lib;shlwapi.lib;scintilla.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
@ -269,6 +272,7 @@
|
||||
<LanguageStandard>stdcpp17</LanguageStandard>
|
||||
<FavorSizeOrSpeed>Size</FavorSizeOrSpeed>
|
||||
<StringPooling>true</StringPooling>
|
||||
<CompileAsWinRT>false</CompileAsWinRT>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>msimg32.lib;comctl32.lib;imm32.lib;shlwapi.lib;scintilla.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
@ -369,6 +373,8 @@
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Image Include="..\res\Notepad3.ico" />
|
||||
<Image Include="..\res\Notepad3_128.ico" />
|
||||
<Image Include="..\res\rizonesoft.bmp" />
|
||||
<Image Include="..\res\Toolbar2.bmp" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
|
||||
@ -150,6 +150,12 @@
|
||||
<Image Include="..\res\Toolbar2.bmp">
|
||||
<Filter>Resource Files</Filter>
|
||||
</Image>
|
||||
<Image Include="..\res\Notepad3_128.ico">
|
||||
<Filter>Resource Files</Filter>
|
||||
</Image>
|
||||
<Image Include="..\res\rizonesoft.bmp">
|
||||
<Filter>Resource Files</Filter>
|
||||
</Image>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ResourceCompile Include="Notepad3.rc">
|
||||
|
||||
@ -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", 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", "Notepad3.exe"
|
||||
VALUE "OriginalFilename", APPNAMEA ".exe"
|
||||
END
|
||||
END
|
||||
BLOCK "VarFileInfo"
|
||||
|
||||
BIN
src/Version.h
BIN
src/Version.h
Binary file not shown.
@ -5,7 +5,9 @@
|
||||
// //////////////////////////////////////////////////////////
|
||||
#define VERSION_MAJOR 3
|
||||
#define VERSION_MINOR 18
|
||||
#define VERSION_REV 222
|
||||
#define VERSION_BUILD 905
|
||||
#define VERSION_REV 227
|
||||
#define VERSION_BUILD 911
|
||||
#define SCINTILLA_VER 403
|
||||
#define ONIGMO_REGEX_VER 6.1.3
|
||||
#define VERSION_BETA L" beta "
|
||||
#define VERSIONA_BETA " beta "
|
||||
|
||||
@ -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
|
||||
@ -130,7 +129,7 @@
|
||||
#define IDC_WILDCARDHELP 225
|
||||
#define IDC_WILDCARDSEARCH 226
|
||||
#define IDC_SCI_VERSION 227
|
||||
#define IDR_MAINWND2 228
|
||||
#define IDR_MAINWNDTB 228
|
||||
#define IDC_REMOVE 229
|
||||
#define IDC_SWAPSTRG 230
|
||||
#define IDC_CHECK_OCC 231
|
||||
@ -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,12 @@
|
||||
#define IDM_HELP_UPDATEINSTALLER 513
|
||||
#define IDM_HELP_UPDATEWEBSITE 514
|
||||
#define IDS_FR_STATUS_TEXT 515
|
||||
#define IDR_MAINWNDTB2 550
|
||||
#define IDR_MAINWND128 551
|
||||
#define IDC_RICHEDITABOUT 552
|
||||
#define IDC_COPYVERSTRG 553
|
||||
#define IDR_RIZBITMAP 554
|
||||
#define IDC_RIZONEBMP 555
|
||||
#define IDS_APPTITLE 10000
|
||||
#define IDS_APPTITLE_ELEVATED 10001
|
||||
#define IDS_APPTITLE_PASTEBOARD 10002
|
||||
|
||||
Loading…
Reference in New Issue
Block a user