|
|
//Copyright (c) 1997-2000 Microsoft Corporation
#include "pch.hxx" // pch
#pragma hdrstop
#include "resource.h"
#include "pgMseBut.h"
CMouseButtonPg::CMouseButtonPg( LPPROPSHEETPAGE ppsp ) : WizardPage(ppsp, IDS_MSEWIZBUTTONCONFIGTITLE, IDS_MSEWIZBUTTONCONFIGSUBTITLE) { m_dwPageId = IDD_MSEWIZBUTTONCONFIG; ppsp->pszTemplate = MAKEINTRESOURCE(m_dwPageId); }
CMouseButtonPg::~CMouseButtonPg( VOID ) { }
LRESULT CMouseButtonPg::OnInitDialog( HWND hwnd, WPARAM wParam, LPARAM lParam ) { if(g_Options.m_schemePreview.m_bSwapMouseButtons) Button_SetCheck(GetDlgItem(m_hwnd, MOUSE_LEFTHAND), TRUE); else Button_SetCheck(GetDlgItem(m_hwnd, MOUSE_RIGHTHAND), TRUE);
RECT rc; GetWindowRect(GetDlgItem(m_hwnd, IDC_OBJECTMENU), &rc); MapWindowPoints(HWND_DESKTOP, m_hwnd, (LPPOINT)&rc, 2); m_ptRight.x = rc.left; m_ptRight.y = rc.top; GetWindowRect(GetDlgItem(m_hwnd, IDC_SELECTDRAG), &rc); MapWindowPoints(HWND_DESKTOP, m_hwnd, (LPPOINT)&rc, 2); m_ptLeft.x = rc.left; m_ptLeft.y = rc.top;
UpdateControls(); return 1; }
void CMouseButtonPg::UpdateControls() { if(Button_GetCheck(GetDlgItem(m_hwnd, MOUSE_RIGHTHAND))) { SetWindowPos(GetDlgItem(m_hwnd, IDC_OBJECTMENU), NULL, m_ptRight.x, m_ptRight.y, 0, 0, SWP_NOZORDER | SWP_NOSIZE); SetWindowPos(GetDlgItem(m_hwnd, IDC_SELECTDRAG), NULL, m_ptLeft.x, m_ptLeft.y, 0, 0, SWP_NOZORDER | SWP_NOSIZE); ShowWindow(GetDlgItem(m_hwnd, IDC_MOUSEPIC1), TRUE); ShowWindow(GetDlgItem(m_hwnd, IDC_MOUSEPIC2), FALSE); } else { SetWindowPos(GetDlgItem(m_hwnd, IDC_OBJECTMENU), NULL, m_ptLeft.x, m_ptLeft.y, 0, 0, SWP_NOZORDER | SWP_NOSIZE); SetWindowPos(GetDlgItem(m_hwnd, IDC_SELECTDRAG), NULL, m_ptRight.x, m_ptRight.y, 0, 0, SWP_NOZORDER | SWP_NOSIZE); ShowWindow(GetDlgItem(m_hwnd, IDC_MOUSEPIC1), FALSE); ShowWindow(GetDlgItem(m_hwnd, IDC_MOUSEPIC2), TRUE); }
}
LRESULT CMouseButtonPg::OnCommand( HWND hwnd, WPARAM wParam, LPARAM lParam ) { LRESULT lResult = 1;
WORD wNotifyCode = HIWORD(wParam); WORD wCtlID = LOWORD(wParam); HWND hwndCtl = (HWND)lParam;
switch(wCtlID) { case MOUSE_LEFTHAND: case MOUSE_RIGHTHAND: UpdateControls(); break;
} g_Options.m_schemePreview.m_bSwapMouseButtons = Button_GetCheck(GetDlgItem(m_hwnd, MOUSE_LEFTHAND)); g_Options.ApplyPreview(); return lResult; }
LRESULT CMouseButtonPg::OnPSN_WizNext( HWND hwnd, INT idCtl, LPPSHNOTIFY pnmh ) { return WizardPage::OnPSN_WizNext(hwnd, idCtl, pnmh); }
|