summaryrefslogtreecommitdiffstats
path: root/private/unimodem/tapisp/manual.c
diff options
context:
space:
mode:
Diffstat (limited to 'private/unimodem/tapisp/manual.c')
-rw-r--r--private/unimodem/tapisp/manual.c170
1 files changed, 170 insertions, 0 deletions
diff --git a/private/unimodem/tapisp/manual.c b/private/unimodem/tapisp/manual.c
new file mode 100644
index 000000000..4731252e0
--- /dev/null
+++ b/private/unimodem/tapisp/manual.c
@@ -0,0 +1,170 @@
+//****************************************************************************
+//
+// Module: Unimdm
+// File: manual.c
+//
+// Copyright (c) 1992-1995, Microsoft Corporation, all rights reserved
+//
+// Revision History
+//
+//
+// 3/1/94 Chris Caputo Created
+//
+//
+// Description: Manual dial dialog.
+//
+//****************************************************************************
+
+#include "unimdm.h"
+#include "umdmspi.h"
+#include "wndthrd.h"
+#include "rcids.h"
+
+//****************************************************************************
+// Function prototypes
+//****************************************************************************
+
+LRESULT ManualDialDlgProc(HWND hwnd, UINT wMsg, WPARAM wParam, LPARAM lParam);
+
+//****************************************************************************
+// HWND CreateManualDlg(HWND hwndOwner, DWORD idLine)
+//
+// Function: creates a modeless talk/drop dialog box
+//
+// Returns: the modeless window handle
+//
+//****************************************************************************
+
+HWND CreateManualDlg(HWND hwndOwner, DWORD idLine)
+{
+ HWND hwnd;
+
+ // Create dialog
+ //
+ hwnd = CreateDialogParam(ghInstance,
+ MAKEINTRESOURCE(IDD_MANUAL_DIAL),
+ hwndOwner,
+ ManualDialDlgProc,
+ (LPARAM)idLine);
+ return hwnd;
+}
+
+//****************************************************************************
+// LRESULT ManualDialDlgProc(HWND hwnd, UINT wMsg, WPARAM wParam, LPARAM lParam)
+//
+// Function: Talk-Drop dialog routine
+//
+// Returns: varies
+//
+//****************************************************************************
+
+LRESULT ManualDialDlgProc(HWND hwnd, UINT wMsg, WPARAM wParam, LPARAM lParam )
+{
+ DWORD idLine;
+
+ switch(wMsg)
+ {
+ case WM_INITDIALOG:
+
+ {
+ NUMBERREQ NumberReq;
+ TCHAR szUnicodeBuf[MAXDEVICENAME+1];
+ PDLGNODE pDlgNode;
+ TUISPIDLLCALLBACK Callback;
+
+ pDlgNode=(PDLGNODE)lParam;
+
+ idLine = pDlgNode->idLine;
+
+ // remember the Line ID passed in
+ //
+ SetWindowLong(hwnd, DWL_USER, (LONG)lParam);
+
+ NumberReq.DlgReq.dwCmd = UI_REQ_GET_PHONENUMBER;
+ NumberReq.DlgReq.dwParam = MANUAL_DIAL_DLG;
+
+ Callback=GetCallbackProc(pDlgNode->Parent);
+
+ lstrcpyA(NumberReq.szPhoneNumber,"");
+
+ (*Callback)(idLine, TUISPIDLL_OBJECT_LINEID,
+ (LPVOID)&NumberReq, sizeof(NumberReq));
+
+#ifdef UNICODE
+ if (MultiByteToWideChar(CP_ACP,
+ 0,
+ NumberReq.szPhoneNumber,
+ -1,
+ szUnicodeBuf,
+ sizeof(szUnicodeBuf)))
+ {
+ SetDlgItemText(
+ hwnd,
+ IDC_PHONENUMBER,
+ szUnicodeBuf
+ );
+
+
+ }
+#else // UNICODE
+
+ SetDlgItemText(
+ hwnd,
+ IDC_PHONENUMBER,
+ NumberReq.szPhoneNumber
+ );
+
+
+#endif // UNICODE
+
+
+
+ return 1;
+ break;
+ }
+ case WM_COMMAND:
+ {
+ UINT idCmd = GET_WM_COMMAND_ID(wParam, lParam);
+
+
+
+ if (idCmd == IDCONNECT || idCmd == IDCANCEL)
+ {
+ PDLGNODE pDlgNode;
+
+ pDlgNode= (PDLGNODE)GetWindowLong(hwnd, DWL_USER);
+
+ idLine = pDlgNode->idLine;
+
+ EndMdmDialog(pDlgNode->Parent,idLine, MANUAL_DIAL_DLG,
+ (idCmd == IDCONNECT) ? MDM_SUCCESS : MDM_FAILURE);
+ return 1;
+ break;
+ }
+ break;
+ }
+ case WM_DESTROY:
+ {
+ DLGREQ DlgReq;
+ TUISPIDLLCALLBACK Callback;
+
+ PDLGNODE pDlgNode;
+
+ pDlgNode= (PDLGNODE)GetWindowLong(hwnd, DWL_USER);
+
+ idLine = pDlgNode->idLine;
+
+
+ DlgReq.dwCmd = UI_REQ_END_DLG;
+ DlgReq.dwParam = MANUAL_DIAL_DLG;
+
+ Callback=GetCallbackProc(pDlgNode->Parent);
+
+ (*Callback)(idLine, TUISPIDLL_OBJECT_LINEID,
+ (LPVOID)&DlgReq, sizeof(DlgReq));
+ break;
+ }
+ }
+
+ return 0;
+}