|
|
1.1 ! root 1: /***************************************************************************** ! 2: * ! 3: * ChoseCom.c - This module handles the Dialog user interactions for the ! 4: * choose computers within a log file ! 5: * ! 6: * Microsoft Confidential ! 7: * Copyright (c) 1992-1993 Microsoft Corporation ! 8: * ! 9: ****************************************************************************/ ! 10: ! 11: ! 12: //==========================================================================// ! 13: // Includes // ! 14: //==========================================================================// ! 15: ! 16: ! 17: #include "perfmon.h" // basic defns, windows.h ! 18: ! 19: #include "dlgs.h" // common dialog control IDs ! 20: #include "playback.h" // for PlayingBackLog ! 21: #include "pmhelpid.h" // Help IDs ! 22: #include "utils.h" // for CallWinHelp ! 23: ! 24: static LPTSTR lpChooseComputerText ; ! 25: static DWORD TextLength ; ! 26: ! 27: //==========================================================================// ! 28: // Message Handlers // ! 29: //==========================================================================// ! 30: ! 31: ! 32: void static OnInitDialog (HDLG hDlg) ! 33: { ! 34: // build the listbox of computers wintin the log file ! 35: BuildLogComputerList (hDlg, IDD_CHOOSECOMPUTERLISTBOX) ; ! 36: ! 37: // set the scroll limit on the edit box ! 38: EditSetLimit (GetDlgItem(hDlg, IDD_CHOOSECOMPUTERNAME), TextLength-1) ; ! 39: ! 40: dwCurrentDlgID = HC_PM_idDlgLogComputerList ; ! 41: ! 42: WindowCenter (hDlg) ; ! 43: } // OnInitDialog ! 44: ! 45: void static OnOK (HDLG hDlg) ! 46: { ! 47: ! 48: GetDlgItemText (hDlg, ! 49: IDD_CHOOSECOMPUTERNAME, ! 50: lpChooseComputerText, ! 51: TextLength-1) ; ! 52: ! 53: } // OnOK ! 54: ! 55: void OnComputerSelectionChanged (HWND hDlg) ! 56: { ! 57: TCHAR localComputerName [MAX_COMPUTERNAME_LENGTH + 3] ; ! 58: int SelectedIndex ; ! 59: HWND hWndLB = GetDlgItem (hDlg, IDD_CHOOSECOMPUTERLISTBOX) ; ! 60: ! 61: // get the listbox selection and put it in the editbox ! 62: SelectedIndex = LBSelection (hWndLB) ; ! 63: if (SelectedIndex != LB_ERR) ! 64: { ! 65: localComputerName[0] = TEXT('\0') ; ! 66: if (LBString (hWndLB, SelectedIndex, localComputerName) != LB_ERR && ! 67: localComputerName[0]) ! 68: { ! 69: SetDlgItemText (hDlg, IDD_CHOOSECOMPUTERNAME, localComputerName) ; ! 70: } ! 71: } ! 72: } // OnComputerSelectionChanged ! 73: ! 74: BOOL FAR PASCAL ChooseLogComputerDlgProc(HWND hDlg, WORD msg, DWORD wParam, LONG lParam) ! 75: { ! 76: ! 77: switch (msg) ! 78: { ! 79: case WM_INITDIALOG: ! 80: OnInitDialog (hDlg) ; ! 81: break ; ! 82: ! 83: case WM_COMMAND: ! 84: switch (LOWORD(wParam)) ! 85: { ! 86: case IDOK: ! 87: OnOK (hDlg) ; ! 88: dwCurrentDlgID = 0 ; ! 89: EndDialog (hDlg, TRUE) ; ! 90: return (TRUE) ; ! 91: break ; ! 92: ! 93: case IDCANCEL: ! 94: dwCurrentDlgID = 0 ; ! 95: EndDialog (hDlg, FALSE) ; ! 96: return (TRUE) ; ! 97: ! 98: case ID_HELP: ! 99: CallWinHelp (dwCurrentDlgID) ; ! 100: break ; ! 101: ! 102: case IDD_CHOOSECOMPUTERLISTBOX: ! 103: if (HIWORD (wParam) == LBN_SELCHANGE) ! 104: OnComputerSelectionChanged (hDlg) ; ! 105: break ; ! 106: ! 107: default: ! 108: break; ! 109: ! 110: } ! 111: break ; ! 112: ! 113: ! 114: default: ! 115: break ; ! 116: } ! 117: ! 118: return (FALSE) ; ! 119: } // ChooseLogComputerDlgProc ! 120: ! 121: ! 122: BOOL GetLogFileComputer (HWND hWndParent, LPTSTR lpComputerName, DWORD BufferSize) ! 123: { ! 124: BOOL bSuccess ; ! 125: DWORD LocalDlgID = dwCurrentDlgID ; ! 126: ! 127: // initialize some globals ! 128: *lpComputerName = TEXT('\0') ; ! 129: lpChooseComputerText = lpComputerName ; ! 130: TextLength = BufferSize ; ! 131: ! 132: bSuccess = DialogBox (hInstance, ! 133: idDlgChooseComputer, ! 134: hWndParent, ! 135: (DLGPROC)ChooseLogComputerDlgProc) ; ! 136: ! 137: dwCurrentDlgID = LocalDlgID ; ! 138: ! 139: if (*lpComputerName == '\0') ! 140: { ! 141: bSuccess = FALSE ; ! 142: } ! 143: ! 144: return (bSuccess) ; ! 145: } // GetLogFileComputer ! 146:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.