mirror of
https://github.com/rizonesoft/Notepad3.git
synced 2026-06-14 21:09:05 +08:00
- remove FindReplaceDlg handle declared as external from compilation unit Edit.c - not really needed here.
(externals (handles / pointers) seemed to be a problem on module init instance time in 64-bit ?)
This commit is contained in:
parent
a2f250dd4f
commit
c4e31c396e
22
src/Edit.c
22
src/Edit.c
@ -51,7 +51,6 @@ extern HWND hwndEdit;
|
||||
extern HINSTANCE g_hInstance;
|
||||
//extern LPMALLOC g_lpMalloc;
|
||||
extern DWORD dwLastIOError;
|
||||
extern HWND hDlgFindReplace;
|
||||
extern UINT cpLastFind;
|
||||
extern BOOL bReplaceInitialized;
|
||||
|
||||
@ -5422,16 +5421,6 @@ INT_PTR CALLBACK EditFindReplaceDlgProcW(HWND hwnd,UINT umsg,WPARAM wParam,LPARA
|
||||
StringCchCopyA(lpefr->szReplaceUTF8,COUNTOF(lpefr->szReplaceUTF8),"");
|
||||
}
|
||||
|
||||
if (bIsFindDlg) {
|
||||
bCloseDlg = lpefr->bFindClose;
|
||||
}
|
||||
else {
|
||||
if (LOWORD(wParam) == IDOK)
|
||||
bCloseDlg = FALSE;
|
||||
else
|
||||
bCloseDlg = lpefr->bReplaceClose;
|
||||
}
|
||||
|
||||
// Reload MRUs
|
||||
SendDlgItemMessage(hwnd,IDC_FINDTEXT,CB_RESETCONTENT,0,0);
|
||||
SendDlgItemMessage(hwnd,IDC_REPLACETEXT,CB_RESETCONTENT,0,0);
|
||||
@ -5451,10 +5440,19 @@ INT_PTR CALLBACK EditFindReplaceDlgProcW(HWND hwnd,UINT umsg,WPARAM wParam,LPARA
|
||||
if (!bSwitchedFindReplace)
|
||||
SendMessage(hwnd,WM_NEXTDLGCTL,(WPARAM)(GetFocus()),1);
|
||||
|
||||
if (bIsFindDlg) {
|
||||
bCloseDlg = lpefr->bFindClose;
|
||||
}
|
||||
else {
|
||||
if (LOWORD(wParam) == IDOK)
|
||||
bCloseDlg = FALSE;
|
||||
else
|
||||
bCloseDlg = lpefr->bReplaceClose;
|
||||
}
|
||||
|
||||
if (bCloseDlg) {
|
||||
//EndDialog(hwnd,LOWORD(wParam));
|
||||
DestroyWindow(hwnd);
|
||||
hDlgFindReplace = NULL;
|
||||
}
|
||||
|
||||
switch (LOWORD(wParam))
|
||||
|
||||
@ -713,7 +713,7 @@ int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInst,LPSTR lpCmdLine,int n
|
||||
while (GetMessage(&msg,NULL,0,0))
|
||||
{
|
||||
if (IsWindow(hDlgFindReplace) && (msg.hwnd == hDlgFindReplace || IsChild(hDlgFindReplace,msg.hwnd)))
|
||||
if (TranslateAccelerator(hDlgFindReplace,hAccFindReplace,&msg) || IsDialogMessage(hDlgFindReplace,&msg))
|
||||
if (IsDialogMessage(hDlgFindReplace,&msg) || TranslateAccelerator(hDlgFindReplace,hAccFindReplace,&msg))
|
||||
continue;
|
||||
|
||||
if (!TranslateAccelerator(hwnd,hAccMain,&msg)) {
|
||||
@ -1477,6 +1477,15 @@ LRESULT CALLBACK MainWndProc(HWND hwnd,UINT umsg,WPARAM wParam,LPARAM lParam)
|
||||
return MsgNotify(hwnd,wParam,lParam);
|
||||
|
||||
|
||||
//case WM_PARENTNOTIFY:
|
||||
// if (LOWORD(wParam) & WM_DESTROY) {
|
||||
// if (IsWindow(hDlgFindReplace) && (hDlgFindReplace == (HWND)lParam)) {
|
||||
// hDlgFindReplace = NULL;
|
||||
// }
|
||||
// }
|
||||
// break;
|
||||
|
||||
|
||||
case WM_COMMAND:
|
||||
return MsgCommand(hwnd,wParam,lParam);
|
||||
|
||||
@ -3827,8 +3836,26 @@ LRESULT MsgCommand(HWND hwnd,WPARAM wParam,LPARAM lParam)
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
case IDM_EDIT_REPLACE:
|
||||
if (!IsWindow(hDlgFindReplace))
|
||||
hDlgFindReplace = EditFindReplaceDlg(hwndEdit,&efrData,TRUE);
|
||||
else {
|
||||
if (!GetDlgItem(hDlgFindReplace,IDC_REPLACE)) {
|
||||
SendMessage(hDlgFindReplace,WM_COMMAND,MAKELONG(IDMSG_SWITCHTOREPLACE,1),0);
|
||||
DestroyWindow(hDlgFindReplace);
|
||||
hDlgFindReplace = EditFindReplaceDlg(hwndEdit,&efrData,TRUE);
|
||||
}
|
||||
else {
|
||||
SetForegroundWindow(hDlgFindReplace);
|
||||
PostMessage(hDlgFindReplace,WM_NEXTDLGCTL,(WPARAM)(GetDlgItem(hDlgFindReplace,IDC_FINDTEXT)),1);
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
// Main Bookmark Functions
|
||||
case BME_EDIT_BOOKMARKNEXT:
|
||||
case BME_EDIT_BOOKMARKNEXT:
|
||||
{
|
||||
int iPos = (int)SendMessage( hwndEdit , SCI_GETCURRENTPOS , 0 , 0);
|
||||
int iLine = (int)SendMessage( hwndEdit , SCI_LINEFROMPOSITION , iPos , 0 );
|
||||
@ -3983,23 +4010,6 @@ LRESULT MsgCommand(HWND hwnd,WPARAM wParam,LPARAM lParam)
|
||||
break;
|
||||
|
||||
|
||||
case IDM_EDIT_REPLACE:
|
||||
if (!IsWindow(hDlgFindReplace))
|
||||
hDlgFindReplace = EditFindReplaceDlg(hwndEdit,&efrData,TRUE);
|
||||
else {
|
||||
if (!GetDlgItem(hDlgFindReplace,IDC_REPLACE)) {
|
||||
SendMessage(hDlgFindReplace,WM_COMMAND,MAKELONG(IDMSG_SWITCHTOREPLACE,1),0);
|
||||
DestroyWindow(hDlgFindReplace);
|
||||
hDlgFindReplace = EditFindReplaceDlg(hwndEdit,&efrData,TRUE);
|
||||
}
|
||||
else {
|
||||
SetForegroundWindow(hDlgFindReplace);
|
||||
PostMessage(hDlgFindReplace,WM_NEXTDLGCTL,(WPARAM)(GetDlgItem(hDlgFindReplace,IDC_FINDTEXT)),1);
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
case IDM_EDIT_GOTOLINE:
|
||||
EditLinenumDlg(hwndEdit);
|
||||
break;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user