| 61 | } |
| 62 | |
| 63 | INT_PTR CPageAdvanced::DlgProcInternal(HWND hWnd, UINT message, WPARAM wparam, LPARAM lparam) |
| 64 | { |
| 65 | switch (message) |
| 66 | { |
| 67 | case WM_NOTIFY: |
| 68 | { |
| 69 | // Property Sheet notifications |
| 70 | |
| 71 | switch (((LPPSHNOTIFY)lparam)->hdr.code) |
| 72 | { |
| 73 | case PSN_SETACTIVE: |
| 74 | // About to become the active page |
| 75 | m_PropertySheetHelper.SetLastPage(m_Page); |
| 76 | InitOptions(hWnd); |
| 77 | break; |
| 78 | case PSN_KILLACTIVE: |
| 79 | SetWindowLongPtr(hWnd, DWLP_MSGRESULT, FALSE); // Changes are valid |
| 80 | break; |
| 81 | case PSN_APPLY: |
| 82 | DlgOK(hWnd); |
| 83 | SetWindowLongPtr(hWnd, DWLP_MSGRESULT, PSNRET_NOERROR); // Changes are valid |
| 84 | break; |
| 85 | case PSN_QUERYCANCEL: |
| 86 | // Can use this to ask user to confirm cancel |
| 87 | break; |
| 88 | case PSN_RESET: |
| 89 | DlgCANCEL(hWnd); |
| 90 | break; |
| 91 | } |
| 92 | } |
| 93 | break; |
| 94 | |
| 95 | case WM_COMMAND: |
| 96 | switch (LOWORD(wparam)) |
| 97 | { |
| 98 | case IDC_SAVESTATE_FILENAME: |
| 99 | break; |
| 100 | case IDC_SAVESTATE_BROWSE: |
| 101 | if (m_PropertySheetHelper.SaveStateSelectImage(hWnd, "Select Save State file", true)) |
| 102 | SendDlgItemMessage(hWnd, IDC_SAVESTATE_FILENAME, WM_SETTEXT, 0, (LPARAM)m_PropertySheetHelper.GetSSNewFilename().c_str()); |
| 103 | break; |
| 104 | case IDC_SAVESTATE_ON_EXIT: |
| 105 | break; |
| 106 | case IDC_SAVESTATE: |
| 107 | m_PropertySheetHelper.GetConfigNew().m_uSaveLoadStateMsg = WM_USER_SAVESTATE; |
| 108 | break; |
| 109 | case IDC_LOADSTATE: |
| 110 | m_PropertySheetHelper.GetConfigNew().m_uSaveLoadStateMsg = WM_USER_LOADSTATE; |
| 111 | break; |
| 112 | |
| 113 | // |
| 114 | |
| 115 | case IDC_CIDERPRESS_BROWSE: |
| 116 | { |
| 117 | std::string CiderPressLoc = m_PropertySheetHelper.BrowseToFile(hWnd, "Select path to CiderPress", REGVALUE_CIDERPRESSLOC, "Applications (*.exe)\0*.exe\0" "All Files\0*.*\0"); |
| 118 | SendDlgItemMessage(hWnd, IDC_CIDERPRESS_FILENAME, WM_SETTEXT, 0, (LPARAM)CiderPressLoc.c_str()); |
| 119 | } |
| 120 | break; |
no test coverage detected