X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=toolmenu.c;h=4d58859b62429e3ca0310c219fae9588ae05ddf2;hb=refs%2Fheads%2F1.98e;hp=4753addcd21e35271ca05714c0599d9da5f5f2cf;hpb=700b7eb9066c105aaf9b42ad67ba43ee8c030f0b;p=ffftp%2Fffftp.git diff --git a/toolmenu.c b/toolmenu.c index 4753add..4d58859 100644 --- a/toolmenu.c +++ b/toolmenu.c @@ -252,7 +252,9 @@ int MakeToolBarWindow(HWND hWnd, HINSTANCE hInst) if(hWndTbarMain != NULL) { /* 2007/09/21 sunasunamix ここから *********************/ - pOldTbarMainProc = (WNDPROC)SetWindowLong(hWndTbarMain, GWL_WNDPROC, (DWORD)CountermeasureTbarMainProc); + // 64ビット対応 +// pOldTbarMainProc = (WNDPROC)SetWindowLong(hWndTbarMain, GWL_WNDPROC, (DWORD)CountermeasureTbarMainProc); + pOldTbarMainProc = (WNDPROC)SetWindowLongPtr(hWndTbarMain, GWLP_WNDPROC, (LONG_PTR)CountermeasureTbarMainProc); /********************************************* ここまで */ GetClientRect(hWnd, &Rect1); @@ -277,7 +279,9 @@ int MakeToolBarWindow(HWND hWnd, HINSTANCE hInst) if(hWndTbarLocal != NULL) { /* 2007/09/21 sunasunamix ここから *********************/ - pOldTbarLocalProc = (WNDPROC)SetWindowLong(hWndTbarLocal, GWL_WNDPROC, (DWORD)CountermeasureTbarLocalProc); + // 64ビット対応 +// pOldTbarLocalProc = (WNDPROC)SetWindowLong(hWndTbarLocal, GWL_WNDPROC, (DWORD)CountermeasureTbarLocalProc); + pOldTbarLocalProc = (WNDPROC)SetWindowLongPtr(hWndTbarLocal, GWLP_WNDPROC, (LONG_PTR)CountermeasureTbarLocalProc); /********************************************* ここまで */ MoveWindow(hWndTbarLocal, 0, TOOLWIN_HEIGHT, LocalWidth, TOOLWIN_HEIGHT, FALSE); @@ -285,7 +289,7 @@ int MakeToolBarWindow(HWND hWnd, HINSTANCE hInst) /*===== ローカルのディレクトリ名ウインドウ =====*/ SendMessage(hWndTbarLocal, TB_GETITEMRECT, 3, (LPARAM)&Rect1); -#ifndef ENGLISH +#ifndef FFFTP_ENGLISH DlgFont = CreateFont(Rect1.bottom-Rect1.top-8, 0, 0, 0, 0, FALSE,FALSE,FALSE,SHIFTJIS_CHARSET,OUT_DEFAULT_PRECIS,CLIP_DEFAULT_PRECIS,DEFAULT_QUALITY,DEFAULT_PITCH,MSGJPN254); #else DlgFont = CreateFont(Rect1.bottom-Rect1.top-8, 0, 0, 0, 0, FALSE,FALSE,FALSE,ANSI_CHARSET,OUT_DEFAULT_PRECIS,CLIP_DEFAULT_PRECIS,DEFAULT_QUALITY,DEFAULT_PITCH,MSGJPN254); @@ -302,14 +306,16 @@ int MakeToolBarWindow(HWND hWnd, HINSTANCE hInst) /* エディットコントロールを探す */ hWndDirLocalEdit = GetWindow(hWndDirLocal, GW_CHILD); if(hWndDirLocalEdit != NULL) - HistEditBoxProcPtr = (WNDPROC)SetWindowLong(hWndDirLocalEdit, GWL_WNDPROC, (LONG)HistEditBoxWndProc); + // 64ビット対応 +// HistEditBoxProcPtr = (WNDPROC)SetWindowLong(hWndDirLocalEdit, GWL_WNDPROC, (LONG)HistEditBoxWndProc); + HistEditBoxProcPtr = (WNDPROC)SetWindowLongPtr(hWndDirLocalEdit, GWLP_WNDPROC, (LONG_PTR)HistEditBoxWndProc); SendMessage(hWndDirLocal, WM_SETFONT, (WPARAM)DlgFont, MAKELPARAM(TRUE, 0)); SendMessage(hWndDirLocal, CB_LIMITTEXT, FMAX_PATH, 0); /* ドライブ名をセットしておく */ GetLogicalDriveStrings(FMAX_PATH, Tmp); - NoDrives = LoadHideDriveListRegistory(); + NoDrives = LoadHideDriveListRegistry(); Pos = Tmp; while(*Pos != NUL) { @@ -340,7 +346,9 @@ int MakeToolBarWindow(HWND hWnd, HINSTANCE hInst) if(hWndTbarRemote != NULL) { /* 2007/09/21 sunasunamix ここから *********************/ - pOldTbarRemoteProc = (WNDPROC)SetWindowLong(hWndTbarRemote, GWL_WNDPROC, (DWORD)CountermeasureTbarRemoteProc); + // 64ビット対応 +// pOldTbarRemoteProc = (WNDPROC)SetWindowLong(hWndTbarRemote, GWL_WNDPROC, (DWORD)CountermeasureTbarRemoteProc); + pOldTbarRemoteProc = (WNDPROC)SetWindowLongPtr(hWndTbarRemote, GWLP_WNDPROC, (LONG_PTR)CountermeasureTbarRemoteProc); /********************************************* ここまで */ MoveWindow(hWndTbarRemote, LocalWidth + SepaWidth, TOOLWIN_HEIGHT, RemoteWidth, TOOLWIN_HEIGHT, FALSE); @@ -359,7 +367,9 @@ int MakeToolBarWindow(HWND hWnd, HINSTANCE hInst) /* エディットコントロールを探す */ hWndDirRemoteEdit = GetWindow(hWndDirRemote, GW_CHILD); if(hWndDirRemoteEdit != NULL) - HistEditBoxProcPtr = (WNDPROC)SetWindowLong(hWndDirRemoteEdit, GWL_WNDPROC, (LONG)HistEditBoxWndProc); + // 64ビット対応 +// HistEditBoxProcPtr = (WNDPROC)SetWindowLong(hWndDirRemoteEdit, GWL_WNDPROC, (LONG)HistEditBoxWndProc); + HistEditBoxProcPtr = (WNDPROC)SetWindowLongPtr(hWndDirRemoteEdit, GWLP_WNDPROC, (LONG_PTR)HistEditBoxWndProc); SendMessage(hWndDirRemote, WM_SETFONT, (WPARAM)DlgFont, MAKELPARAM(TRUE, 0)); SendMessage(hWndDirRemote, CB_LIMITTEXT, FMAX_PATH, 0); @@ -1836,9 +1846,18 @@ void RemoteRbuttonMenu(int Pos) AppendMenu(hMenu, MF_STRING | Flg1, MENU_DOWNLOAD_ALL, MSGJPN266); AppendMenu(hMenu, MF_STRING | Flg1 | Flg2, MENU_DELETE, MSGJPN267); AppendMenu(hMenu, MF_STRING | Flg1 | Flg2, MENU_RENAME, MSGJPN268); +#if defined(HAVE_TANDEM) + /* HP NonStop Server では CHMOD の仕様が異なるため使用不可 */ + if (AskRealHostType() != HTYPE_TANDEM) +#endif AppendMenu(hMenu, MF_STRING | Flg1 | Flg2, MENU_CHMOD, MSGJPN269); AppendMenu(hMenu, MF_STRING | Flg1, MENU_MKDIR, MSGJPN270); AppendMenu(hMenu, MF_STRING | Flg1 | Flg2, MENU_URL_COPY, MSGJPN271); +#if defined(HAVE_TANDEM) + /* OSS モードのときに表示されるように AskRealHostType() を使用する */ + if (AskRealHostType() == HTYPE_TANDEM) + AppendMenu(hMenu, MF_STRING | Flg1, MENU_SWITCH_OSS, MSGJPN2001); +#endif AppendMenu(hMenu, MF_SEPARATOR, 0, NULL); AppendMenu(hMenu, MF_STRING | Flg1, MENU_FILESIZE, MSGJPN272); AppendMenu(hMenu, MF_SEPARATOR, 0, NULL); @@ -1877,7 +1896,9 @@ static void AddOpenMenu(HMENU hMenu, UINT Flg) char Tmp[FMAX_PATH+1]; int i; - AppendMenu(hMenu, MF_STRING | Flg, MENU_DCLICK, MSGJPN274); + // ローカルフォルダを開く +// AppendMenu(hMenu, MF_STRING | Flg, MENU_DCLICK, MSGJPN274); + AppendMenu(hMenu, MF_STRING | Flg, MENU_OPEN, MSGJPN274); for(i = 0; i < VIEWERS; i++) { if(strlen(ViewerName[i]) != 0) @@ -1899,7 +1920,9 @@ static LRESULT CALLBACK CountermeasureTbarMainProc(HWND hWnd,UINT uMessage,WPARA { switch (uMessage) { case WM_DESTROY : - SetWindowLong(hWnd,GWL_WNDPROC,(DWORD)pOldTbarMainProc); + // 64ビット対応 +// SetWindowLong(hWnd,GWL_WNDPROC,(DWORD)pOldTbarMainProc); + SetWindowLongPtr(hWnd,GWLP_WNDPROC,(LONG_PTR)pOldTbarMainProc); break; case WM_RBUTTONDBLCLK : case WM_RBUTTONDOWN : @@ -1916,7 +1939,9 @@ static LRESULT CALLBACK CountermeasureTbarLocalProc(HWND hWnd,UINT uMessage,WPAR { switch (uMessage) { case WM_DESTROY : - SetWindowLong(hWnd,GWL_WNDPROC,(DWORD)pOldTbarLocalProc); + // 64ビット対応 +// SetWindowLong(hWnd,GWL_WNDPROC,(DWORD)pOldTbarLocalProc); + SetWindowLongPtr(hWnd,GWLP_WNDPROC,(LONG_PTR)pOldTbarLocalProc); break; case WM_RBUTTONDBLCLK : case WM_RBUTTONDOWN : @@ -1933,7 +1958,9 @@ static LRESULT CALLBACK CountermeasureTbarRemoteProc(HWND hWnd,UINT uMessage,WPA { switch (uMessage) { case WM_DESTROY : - SetWindowLong(hWnd,GWL_WNDPROC,(DWORD)pOldTbarRemoteProc); + // 64ビット対応 +// SetWindowLong(hWnd,GWL_WNDPROC,(DWORD)pOldTbarRemoteProc); + SetWindowLongPtr(hWnd,GWLP_WNDPROC,(LONG_PTR)pOldTbarRemoteProc); break; case WM_RBUTTONDBLCLK : case WM_RBUTTONDOWN :