#ifndef AVHSCROLLHANDLER_H #define AVHSCROLLHANDLER_H //@2014 added these two headers #include #include #include using namespace vgui; class AvHScrollHandler : public InputSignal { public: AvHScrollHandler(); int GetXScroll() const; int GetYScroll() const; int GetZScroll() const; int GetMouseX() const; int GetMouseY() const; bool GetMouseOneDown() const; bool GetMouseTwoDown() const; static void ClearScrollHeight(); ////Key scrolling now handled in input.cpp //static void KeyScrollLeft(); //static void KeyScrollRight(); //static void KeyScrollUp(); //static void KeyScrollDown(); //static void KeyScrollLeftStop(); //static void KeyScrollRightStop(); //static void KeyScrollUpStop(); //static void KeyScrollDownStop(); static void ScrollLeft(); static void ScrollRight(); static void ScrollUp(); static void ScrollDown(); static void ScrollHeightUp(); static void ScrollHeightDown(); static void StopScroll(); virtual void cursorMoved(int x,int y,Panel* panel); virtual void cursorEntered(Panel* panel) {} virtual void cursorExited(Panel* panel) {} virtual void mousePressed(MouseCode code,Panel* panel); virtual void mouseDoublePressed(MouseCode code,Panel* panel) {} virtual void mouseReleased(MouseCode code,Panel* panel); virtual void mouseWheeled(int delta,Panel* panel); virtual void keyPressed(KeyCode code,Panel* panel); virtual void keyTyped(KeyCode code,Panel* panel) {} virtual void keyReleased(KeyCode code,Panel* panel) {} virtual void keyFocusTicked(Panel* panel) {} private: static int sScrollX; static int sScrollY; static int sScrollZ; static int sLastMouseX; static int sLastMouseY; static int sLastMouseDownX; static int sLastMouseDownY; static int sLastMouseUpX; static int sLastMouseUpY; static bool sMouseOneDown; static bool sMouseTwoDown; static int sKeyDown; }; #endif