Team Fortress 2 Source Code as on 22/4/2020
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

79 lines
2.2 KiB

  1. //========= Copyright Valve Corporation, All rights reserved. ============//
  2. //
  3. // Purpose:
  4. //
  5. // $NoKeywords: $
  6. //=============================================================================//
  7. #ifndef OPTIONS_SUB_MOUSE_H
  8. #define OPTIONS_SUB_MOUSE_H
  9. #ifdef _WIN32
  10. #pragma once
  11. #endif
  12. #include <vgui_controls/PropertyPage.h>
  13. class CCvarNegateCheckButton;
  14. class CKeyToggleCheckButton;
  15. class CCvarToggleCheckButton;
  16. class CCvarSlider;
  17. namespace vgui
  18. {
  19. class Label;
  20. class Panel;
  21. }
  22. //-----------------------------------------------------------------------------
  23. // Purpose: Mouse Details, Part of OptionsDialog
  24. //-----------------------------------------------------------------------------
  25. class COptionsSubMouse : public vgui::PropertyPage
  26. {
  27. DECLARE_CLASS_SIMPLE( COptionsSubMouse, vgui::PropertyPage );
  28. public:
  29. COptionsSubMouse(vgui::Panel *parent);
  30. ~COptionsSubMouse();
  31. virtual void OnResetData();
  32. virtual void OnApplyChanges();
  33. protected:
  34. virtual void ApplySchemeSettings(vgui::IScheme *pScheme);
  35. MESSAGE_FUNC_PTR( OnControlModified, "ControlModified", panel );
  36. MESSAGE_FUNC_PTR( OnTextChanged, "TextChanged", panel );
  37. MESSAGE_FUNC_PTR( OnCheckButtonChecked, "CheckButtonChecked", panel )
  38. {
  39. OnControlModified( panel );
  40. }
  41. void UpdateSensitivityLabel();
  42. void UpdateAccelerationLabel();
  43. void UpdateJoystickPanels();
  44. private:
  45. CCvarNegateCheckButton *m_pReverseMouseCheckBox;
  46. CCvarToggleCheckButton *m_pMouseFilterCheckBox;
  47. CCvarToggleCheckButton *m_pMouseRawCheckBox;
  48. vgui::CheckButton *m_pMouseAccelerationCheckBox;
  49. CCvarToggleCheckButton *m_pJoystickCheckBox;
  50. CCvarToggleCheckButton *m_pJoystickSouthpawCheckBox;
  51. CCvarToggleCheckButton *m_pQuickInfoCheckBox;
  52. CCvarToggleCheckButton *m_pReverseJoystickCheckBox;
  53. CCvarSlider *m_pMouseSensitivitySlider;
  54. vgui::TextEntry *m_pMouseSensitivityLabel;
  55. CCvarSlider *m_pMouseAccelExponentSlider;
  56. vgui::TextEntry *m_pMouseAccelExponentLabel;
  57. CCvarSlider *m_pJoyYawSensitivitySlider;
  58. vgui::Label *m_pJoyYawSensitivityPreLabel;
  59. CCvarSlider *m_pJoyPitchSensitivitySlider;
  60. vgui::Label *m_pJoyPitchSensitivityPreLabel;
  61. };
  62. #endif // OPTIONS_SUB_MOUSE_H