// Build the menu items for this class void CMenuJoystickAxisBase::Build(CClientDE *pClientDE, CMenuBase *pDestMenu) { if (!pDestMenu) { return; } // Get the main menus pointer CMainMenus *pMainMenus=pDestMenu->GetMainMenus(); if (!pMainMenus) { return; } // figure out the name of the joystick device SetDeviceName(pClientDE); // create the array of possible axis CreateAxisArray(pClientDE); // just a test BLB TEMP!!! // FindMouseControls(pClientDE); // The axis option m_pAxisCtrl=BuildAxisOption(pClientDE, pDestMenu, m_nAxisID, &m_nAxis); // The invert axis control m_pInvertAxisCtrl=pDestMenu->AddOnOffOption(m_nInvertAxisID, pMainMenus->GetSmallFont(), MENUJOYSTICK_ONOFFOFFSET, &m_bInvertAxis); // The dead zone control m_pDeadZoneCtrl=pDestMenu->AddSliderOption(m_nDeadZoneID, pMainMenus->GetSmallFont(), MENUJOYSTICK_SLIDEROFFSET, pMainMenus->GetSurfaceSliderBar(), pMainMenus->GetSurfaceSliderTab(), &m_nDeadZone); if (m_pDeadZoneCtrl) { m_pDeadZoneCtrl->SetSliderRange(DEADZONESLIDERLOW, DEADZONESLIDERHIGH); m_pDeadZoneCtrl->SetSliderIncrement(1); } // Analog on/off m_pAnalogCtrl=pDestMenu->AddOnOffOption(m_nAnalogID, pMainMenus->GetSmallFont(), MENUJOYSTICK_ONOFFOFFSET, &m_bAnalog); // The sensitivity control m_pSensitivityCtrl=pDestMenu->AddSliderOption(m_nSensitivityID, pMainMenus->GetSmallFont(), MENUJOYSTICK_SLIDEROFFSET, pMainMenus->GetSurfaceSliderBar(), pMainMenus->GetSurfaceSliderTab(), &m_nSensitivity); if (m_pSensitivityCtrl) { m_pSensitivityCtrl->SetSliderRange(SENSITIVITYSLIDERLOW, SENSITIVITYSLIDERHIGH); m_pSensitivityCtrl->SetSliderIncrement(1); } // The center offset axis control m_pCenterOffsetCtrl=pDestMenu->AddOnOffOption(m_nCenterOffsetID, pMainMenus->GetSmallFont(), MENUJOYSTICK_ONOFFOFFSET, &m_bCenterOffset); }
// Build the items for this class void CJoystickAxisBase::Build(ILTClient *pClientDE, CBaseFolder *pDestFolder) { if (!pDestFolder) { return; } if (g_pLayoutMgr->HasCustomValue(FOLDER_ID_JOYSTICK,"ColumnWidth")) kGap = g_pLayoutMgr->GetFolderCustomInt(FOLDER_ID_JOYSTICK,"ColumnWidth"); if (g_pLayoutMgr->HasCustomValue(FOLDER_ID_JOYSTICK,"SliderWidth")) kWidth = g_pLayoutMgr->GetFolderCustomInt(FOLDER_ID_JOYSTICK,"SliderWidth"); // figure out the name of the joystick device SetDeviceName(pClientDE); // create the array of possible axis CreateAxisArray(pClientDE); // The axis option m_pAxisCtrl=BuildAxisOption(pClientDE, pDestFolder, m_nAxisID, &m_nAxis); // The invert axis control m_pInvertAxisCtrl=pDestFolder->AddToggle(m_nInvertAxisID, IDS_HELP_INVERTAXIS, kGap, &m_bInvertAxis, LTFALSE, g_pInterfaceResMgr->GetSmallFont()); m_pInvertAxisCtrl->SetOnString(IDS_ON); m_pInvertAxisCtrl->SetOffString(IDS_OFF); // The dead zone control m_pDeadZoneCtrl=pDestFolder->AddSlider(m_nDeadZoneID, IDS_HELP_DEADZONE, kGap, kWidth, &m_nDeadZone, LTFALSE, g_pInterfaceResMgr->GetSmallFont()); if (m_pDeadZoneCtrl) { m_pDeadZoneCtrl->SetSliderRange(DEADZONESLIDERLOW, DEADZONESLIDERHIGH); m_pDeadZoneCtrl->SetSliderIncrement(1); } // Analog on/off m_pAnalogCtrl=pDestFolder->AddToggle(m_nAnalogID, IDS_HELP_ANALOG, kGap, &m_bAnalog, LTFALSE, g_pInterfaceResMgr->GetSmallFont()); m_pAnalogCtrl->SetOnString(IDS_ON); m_pAnalogCtrl->SetOffString(IDS_OFF); // The sensitivity control m_pSensitivityCtrl=pDestFolder->AddSlider(m_nSensitivityID, IDS_HELP_JOY_SENSE, kGap, kWidth, &m_nSensitivity, LTFALSE, g_pInterfaceResMgr->GetSmallFont()); if (m_pSensitivityCtrl) { m_pSensitivityCtrl->SetSliderRange(SENSITIVITYSLIDERLOW, SENSITIVITYSLIDERHIGH); m_pSensitivityCtrl->SetSliderIncrement(1); } // The center offset axis control m_pCenterOffsetCtrl=pDestFolder->AddToggle(m_nCenterOffsetID, IDS_HELP_JOY_CENTER, kGap, &m_bCenterOffset, LTFALSE, g_pInterfaceResMgr->GetSmallFont()); m_pCenterOffsetCtrl->SetOnString(IDS_ON); m_pCenterOffsetCtrl->SetOffString(IDS_OFF); }