|
|
/*---------------------------------------------------------------------------*\
| WINCHAT RESOURCE FILE | This module defines the resources for the WinChat application | | FUNCTIONS | --------- | dlgConnectProc | dlgPreferencesProc | | | Copyright (c) Microsoft Corp., 1990-1993 | | created: 01-Nov-91 | history: 01-Nov-91 <clausgi> created. | 29-Dec-92 <chriswil> port to NT, cleanup. | 19-Oct-93 <chriswil> unicode enhancements from a-dianeo. | \*---------------------------------------------------------------------------*/
#include <windows.h>
#include <ddeml.h>
#include <commdlg.h>
#include <winchat.h>
#include "dialogs.h"
#include "globals.h"
#ifdef WIN16
#pragma alloc_text (_DLGS, dlgConnectProc, dlgPreferencesProc)
#endif
/*---------------------------------------------------------------------------*\
| DISPLAY DIALOG BOX | This is a routine to display a generic modal-dialog box. | | created: 29-Dec-92 | history: 29-Dec-92 <chriswil> created. | \*---------------------------------------------------------------------------*/ INT_PTR FAR dlgDisplayBox(HINSTANCE hInstance, HWND hWndParent, LPTSTR lpszTemplate, DLGPROC lpfFunction, LPARAM lParam) { INT_PTR nRet;
nRet = DialogBoxParam(hInstance,lpszTemplate,hWndParent,lpfFunction,lParam);
return(nRet); }
/*---------------------------------------------------------------------------*\
| CONNECT DIALOGBOX PROCEDURE | This routines prompts the connection dialogbox | | created: 11-Nov-91 | history: 29-Dev-92 <chriswil> ported to NT. | \*---------------------------------------------------------------------------*/ INT_PTR CALLBACK dlgConnectProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) { BOOL bHandled;
bHandled = TRUE; switch(msg) { // result in global szConvPartner (CODEWORK replace lParam)
//
case WM_INITDIALOG: szConvPartner[0] = TEXT('\0'); break;
case WM_COMMAND: switch(wParam) { case IDOK: GetDlgItemText(hwnd,IDC_CONNECTNAME,szBuf,SZBUFSIZ); EndDialog(hwnd,0); break;
case IDCANCEL: szConvPartner[0] = TEXT('\0'); EndDialog(hwnd,0); break;
default: bHandled = FALSE; break; } break;
default: bHandled = FALSE; break; }
return(bHandled); }
/*---------------------------------------------------------------------------*\
| PREFERENCES DIALOGBOX PROCEDURE | This routines prompts the connection dialogbox | | created: 11-Nov-91 | history: 29-Dev-92 <chriswil> ported to NT. | \*---------------------------------------------------------------------------*/
// context sensitive help array
static const DWORD aHelpIDs[] = { ID_TOPANDBOTTOM, IDH_TOPANDBOTTOM, ID_SIDEBYSIDE , IDH_SIDEBYSIDE, ID_RECEIVEPFONT, IDH_RECEIVEPFONT, ID_RECEIVEOFONT, IDH_RECEIVEOFONT, IDOK , IDH_OKBUTTON, IDCANCEL , IDH_CANCELBUTTON, 0, 0 };
INT_PTR CALLBACK dlgPreferencesProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) { BOOL bHandled; UINT tmp;
bHandled = TRUE; switch(msg) { case WM_INITDIALOG: CheckDlgButton(hwnd,ID_SIDEBYSIDE ,ChatState.fSideBySide); CheckDlgButton(hwnd,ID_TOPANDBOTTOM,!ChatState.fSideBySide); CheckDlgButton(hwnd,ID_RECEIVEOFONT,ChatState.fUseOwnFont); CheckDlgButton(hwnd,ID_RECEIVEPFONT,!ChatState.fUseOwnFont); break;
case WM_COMMAND: switch(wParam) { case IDOK: tmp = (BOOL)SendDlgItemMessage(hwnd,ID_RECEIVEOFONT,BM_GETCHECK,0,0L);
if(tmp != ChatState.fUseOwnFont) { ChatState.fUseOwnFont = tmp;
// delete old objects
//
if(hEditRcvFont) DeleteObject(hEditRcvFont);
if(hEditRcvBrush) DeleteObject(hEditRcvBrush);
if(ChatState.fUseOwnFont) { hEditRcvFont = CreateFontIndirect((LPLOGFONT)&lfSnd); hEditRcvBrush = CreateSolidBrush(SndBrushColor); } else { RcvBrushColor = PartBrushColor; hEditRcvFont = CreateFontIndirect((LPLOGFONT)&lfRcv); hEditRcvBrush = CreateSolidBrush(RcvBrushColor); }
if(hEditRcvFont) { SendMessage(hwndRcv,WM_SETFONT,(WPARAM)hEditRcvFont,1L); InvalidateRect(hwndRcv,NULL,TRUE); }
}
tmp = (BOOL)SendDlgItemMessage(hwnd,ID_SIDEBYSIDE,BM_GETCHECK,0,0L);
if(tmp != ChatState.fSideBySide) { ChatState.fSideBySide = tmp; AdjustEditWindows(); InvalidateRect(hwndApp,NULL,FALSE); }
EndDialog(hwnd,0); break;
case IDCANCEL: EndDialog(hwnd,0); break;
default: bHandled = FALSE; break; } break;
case WM_HELP: { LPHELPINFO lphi; lphi = (LPHELPINFO)lParam; if (lphi->iContextType == HELPINFO_WINDOW) // must be for a control
{ WinHelp (lphi->hItemHandle, szHelpFile, HELP_WM_HELP, (ULONG_PTR)aHelpIDs); } return TRUE; } break;
case WM_CONTEXTMENU: { WinHelp ((HWND)wParam, szHelpFile, HELP_CONTEXTMENU, (ULONG_PTR)aHelpIDs); return TRUE; } break;
default: bHandled = FALSE; break; }
return(bHandled); }
|