Home | Info | Community | Development | myReactOS | Contact Us
Definition at line 17 of file options.c.
{ PConsoleInfo pConInfo; LRESULT lResult; HWND hDlgCtrl; LPPSHNOTIFY lppsn; pConInfo = (PConsoleInfo) GetWindowLongPtr(hwndDlg, DWLP_USER); switch(uMsg) { case WM_INITDIALOG: { pConInfo = (PConsoleInfo) ((LPPROPSHEETPAGE)lParam)->lParam; SetWindowLongPtr(hwndDlg, DWLP_USER, (LONG_PTR)pConInfo); UpdateDialogElements(hwndDlg, pConInfo); return TRUE; } case WM_NOTIFY: { if (!pConInfo) { break; } lppsn = (LPPSHNOTIFY) lParam; if (lppsn->hdr.code == UDN_DELTAPOS) { hDlgCtrl = GetDlgItem(hwndDlg, IDC_EDIT_BUFFER_SIZE); pConInfo->HistoryBufferSize = LOWORD(SendMessage(hDlgCtrl, UDM_GETPOS, 0, 0)); hDlgCtrl = GetDlgItem(hwndDlg, IDC_EDIT_NUM_BUFFER); pConInfo->NumberOfHistoryBuffers = LOWORD(SendMessage(hDlgCtrl, UDM_GETPOS, 0, 0)); PropSheet_Changed(GetParent(hwndDlg), hwndDlg); } else if (lppsn->hdr.code == PSN_APPLY) { if (!pConInfo->AppliedConfig) { ApplyConsoleInfo(hwndDlg, pConInfo); } else { /* Options have already been applied */ SetWindowLongPtr(hwndDlg, DWL_MSGRESULT, PSNRET_NOERROR); return TRUE; } return TRUE; } break; } case WM_COMMAND: { if (!pConInfo) { break; } switch(LOWORD(wParam)) { case IDC_RADIO_SMALL_CURSOR: { pConInfo->CursorSize = 0x0; PropSheet_Changed(GetParent(hwndDlg), hwndDlg); break; } case IDC_RADIO_MEDIUM_CURSOR: { pConInfo->CursorSize = 0x32; PropSheet_Changed(GetParent(hwndDlg), hwndDlg); break; } case IDC_RADIO_LARGE_CURSOR: { pConInfo->CursorSize = 0x64; PropSheet_Changed(GetParent(hwndDlg), hwndDlg); break; } case IDC_RADIO_DISPLAY_WINDOW: { pConInfo->FullScreen = FALSE; PropSheet_Changed(GetParent(hwndDlg), hwndDlg); break; } case IDC_RADIO_DISPLAY_FULL: { pConInfo->FullScreen = TRUE; PropSheet_Changed(GetParent(hwndDlg), hwndDlg); break; } case IDC_CHECK_QUICK_EDIT: { lResult = SendMessage((HWND)lParam, BM_GETCHECK, (WPARAM)0, (LPARAM)0); if (lResult == BST_CHECKED) { pConInfo->QuickEdit = FALSE; SendMessage((HWND)lParam, BM_SETCHECK, (WPARAM)BST_UNCHECKED, (LPARAM)0); } else if (lResult == BST_UNCHECKED) { pConInfo->QuickEdit = TRUE; SendMessage((HWND)lParam, BM_SETCHECK, (WPARAM)BST_CHECKED, (LPARAM)0); } PropSheet_Changed(GetParent(hwndDlg), hwndDlg); break; } case IDC_CHECK_INSERT_MODE: { lResult = SendMessage((HWND)lParam, BM_GETCHECK, (WPARAM)0, (LPARAM)0); if (lResult == BST_CHECKED) { pConInfo->InsertMode = FALSE; SendMessage((HWND)lParam, BM_SETCHECK, (WPARAM)BST_UNCHECKED, (LPARAM)0); } else if (lResult == BST_UNCHECKED) { pConInfo->InsertMode = TRUE; SendMessage((HWND)lParam, BM_SETCHECK, (WPARAM)BST_CHECKED, (LPARAM)0); } PropSheet_Changed(GetParent(hwndDlg), hwndDlg); break; } case IDC_CHECK_DISCARD_DUPLICATES: { lResult = SendMessage((HWND)lParam, BM_GETCHECK, (WPARAM)0, (LPARAM)0); if (lResult == BST_CHECKED) { pConInfo->HistoryNoDup = FALSE; SendMessage((HWND)lParam, BM_SETCHECK, (WPARAM)BST_UNCHECKED, (LPARAM)0); } else if (lResult == BST_UNCHECKED) { pConInfo->HistoryNoDup = TRUE; SendMessage((HWND)lParam, BM_SETCHECK, (WPARAM)BST_CHECKED, (LPARAM)0); } PropSheet_Changed(GetParent(hwndDlg), hwndDlg); break; } default: break; } break; } default: break; } return FALSE; }