|
|
| version 1.11, 2005/03/20 23:48:03 | version 1.16, 2007/12/17 14:52:55 |
|---|---|
| Line 16 | Line 16 |
| #include "palettes.h" | #include "palettes.h" |
| static const TCHAR str_scropt[] = _T("Screen option"); | |
| static LRESULT CALLBACK Scropt1DlgProc(HWND hWnd, UINT msg, | static LRESULT CALLBACK Scropt1DlgProc(HWND hWnd, UINT msg, |
| WPARAM wp, LPARAM lp) { | WPARAM wp, LPARAM lp) { |
| TCHAR work[32]; | TCHAR work[32]; |
| Line 264 static LRESULT CALLBACK Scropt3DlgProc(H | Line 261 static LRESULT CALLBACK Scropt3DlgProc(H |
| return(FALSE); | return(FALSE); |
| } | } |
| void dialog_scropt(HWND hWnd) { | static const CBPARAM cpZoom[] = |
| { | |
| {MAKEINTRESOURCE(IDS_ZOOM_NONE), 0}, | |
| {MAKEINTRESOURCE(IDS_ZOOM_FIXEDASPECT), 1}, | |
| {MAKEINTRESOURCE(IDS_ZOOM_ADJUSTASPECT), 2}, | |
| {MAKEINTRESOURCE(IDS_ZOOM_FULL), 3}, | |
| }; | |
| static LRESULT CALLBACK ScroptFullScreenDlgProc(HWND hWnd, UINT uMsg, | |
| WPARAM wParam, LPARAM lParam) | |
| { | |
| UINT8 c; | |
| switch(uMsg) | |
| { | |
| case WM_INITDIALOG: | |
| c = np2oscfg.fscrnmod; | |
| SetDlgItemCheck(hWnd, IDC_FULLSCREEN_SAMEBPP, | |
| (c & FSCRNMOD_SAMEBPP)); | |
| SetDlgItemCheck(hWnd, IDC_FULLSCREEN_SAMERES, | |
| (c & FSCRNMOD_SAMERES)); | |
| dlgs_setcbitem(hWnd, IDC_FULLSCREEN_ZOOM, | |
| cpZoom, NELEMENTS(cpZoom)); | |
| dlgs_setcbcur(hWnd, IDC_FULLSCREEN_ZOOM, (c & 3)); | |
| EnableWindow(GetDlgItem(hWnd, IDC_FULLSCREEN_ZOOM), | |
| (c & FSCRNMOD_SAMERES) != 0); | |
| return(TRUE); | |
| HINSTANCE hinst; | case WM_COMMAND: |
| switch(LOWORD(wParam)) | |
| { | |
| case IDC_FULLSCREEN_SAMERES: | |
| dlgs_enablebyautocheck(hWnd, IDC_FULLSCREEN_ZOOM, | |
| IDC_FULLSCREEN_SAMERES); | |
| break; | |
| } | |
| break; | |
| case WM_NOTIFY: | |
| if ((((NMHDR *)lParam)->code) == (UINT)PSN_APPLY) | |
| { | |
| c = 0; | |
| if (GetDlgItemCheck(hWnd, IDC_FULLSCREEN_SAMEBPP)) | |
| { | |
| c |= FSCRNMOD_SAMEBPP; | |
| } | |
| if (GetDlgItemCheck(hWnd, IDC_FULLSCREEN_SAMERES)) | |
| { | |
| c |= FSCRNMOD_SAMERES; | |
| } | |
| c |= dlgs_getcbcur(hWnd, IDC_FULLSCREEN_ZOOM, 0); | |
| if (np2oscfg.fscrnmod != c) | |
| { | |
| np2oscfg.fscrnmod = c; | |
| sysmng_update(SYS_UPDATEOSCFG); | |
| } | |
| return(TRUE); | |
| } | |
| break; | |
| } | |
| return(FALSE); | |
| } | |
| void dialog_scropt(HWND hWnd) | |
| { | |
| HINSTANCE hInstance; | |
| PROPSHEETPAGE psp; | PROPSHEETPAGE psp; |
| PROPSHEETHEADER psh; | PROPSHEETHEADER psh; |
| HPROPSHEETPAGE hpsp[3]; | HPROPSHEETPAGE hpsp[4]; |
| TCHAR szTitle[128]; | |
| hinst = (HINSTANCE)GetWindowLong(hWnd, GWL_HINSTANCE); | hInstance = (HINSTANCE)GetWindowLongPtr(hWnd, GWLP_HINSTANCE); |
| ZeroMemory(&psp, sizeof(psp)); | ZeroMemory(&psp, sizeof(psp)); |
| psp.dwSize = sizeof(PROPSHEETPAGE); | psp.dwSize = sizeof(PROPSHEETPAGE); |
| psp.dwFlags = PSP_DEFAULT; | psp.dwFlags = PSP_DEFAULT; |
| psp.hInstance = hinst; | psp.hInstance = hInstance; |
| psp.pszTemplate = MAKEINTRESOURCE(IDD_SCROPT1); | psp.pszTemplate = MAKEINTRESOURCE(IDD_SCROPT1); |
| psp.pfnDlgProc = (DLGPROC)Scropt1DlgProc; | psp.pfnDlgProc = (DLGPROC)Scropt1DlgProc; |
| Line 290 void dialog_scropt(HWND hWnd) { | Line 351 void dialog_scropt(HWND hWnd) { |
| psp.pfnDlgProc = (DLGPROC)Scropt3DlgProc; | psp.pfnDlgProc = (DLGPROC)Scropt3DlgProc; |
| hpsp[2] = CreatePropertySheetPage(&psp); | hpsp[2] = CreatePropertySheetPage(&psp); |
| psp.pszTemplate = MAKEINTRESOURCE(IDD_SCROPT_FULLSCREEN); | |
| psp.pfnDlgProc = (DLGPROC)ScroptFullScreenDlgProc; | |
| hpsp[3] = CreatePropertySheetPage(&psp); | |
| loadstringresource(hInstance, IDS_SCREENOPTION, szTitle, NELEMENTS(szTitle)); | |
| ZeroMemory(&psh, sizeof(psh)); | ZeroMemory(&psh, sizeof(psh)); |
| psh.dwSize = sizeof(PROPSHEETHEADER); | psh.dwSize = sizeof(PROPSHEETHEADER); |
| psh.dwFlags = PSH_NOAPPLYNOW | PSH_USEHICON | PSH_USECALLBACK; | psh.dwFlags = PSH_NOAPPLYNOW | PSH_USEHICON | PSH_USECALLBACK; |
| psh.hwndParent = hWnd; | psh.hwndParent = hWnd; |
| psh.hInstance = hinst; | psh.hInstance = hInstance; |
| psh.hIcon = LoadIcon(hinst, MAKEINTRESOURCE(IDI_ICON2)); | psh.hIcon = LoadIcon(hInstance, MAKEINTRESOURCE(IDI_ICON2)); |
| psh.nPages = 3; | psh.nPages = 4; |
| psh.phpage = hpsp; | psh.phpage = hpsp; |
| psh.pszCaption = str_scropt; | psh.pszCaption = szTitle; |
| psh.pfnCallback = np2class_propetysheet; | psh.pfnCallback = np2class_propetysheet; |
| PropertySheet(&psh); | PropertySheet(&psh); |
| InvalidateRect(hWndMain, NULL, TRUE); | InvalidateRect(hWnd, NULL, TRUE); |
| } | } |