SpaceballEvent.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #ifndef SPACEBALLEVENT_H
00024 #define SPACEBALLEVENT_H
00025
00026 #include <QInputEvent>
00027 namespace Spaceball
00028 {
00029 enum ButtonStateType {BUTTON_NONE = 0, BUTTON_PRESSED, BUTTON_RELEASED};
00030
00031 class MotionEvent : public QInputEvent
00032 {
00033 public:
00034 MotionEvent();
00035 void translations(int &xTransOut, int &yTransOut, int &zTransOut);
00036 void setTranslations(const int &xTransIn, const int &yTransIn, const int &zTransIn);
00037 int translationX(){return xTrans;}
00038 int translationY(){return yTrans;}
00039 int translationZ(){return zTrans;}
00040
00041 void rotations(int &xRotOut, int &yRotOut, int &zRotOut);
00042 void setRotations(const int &xRotIn, const int &yRotIn, const int &zRotIn);
00043 int rotationX(){return xRot;}
00044 int rotationY(){return yRot;}
00045 int rotationZ(){return zRot;}
00046
00047 static int MotionEventType;
00048
00049 private:
00050 int xTrans;
00051 int yTrans;
00052 int zTrans;
00053 int xRot;
00054 int yRot;
00055 int zRot;
00056 };
00057
00058 class ButtonEvent : public QInputEvent
00059 {
00060 public:
00061 ButtonEvent();
00062 ButtonEvent(const ButtonEvent& in);
00063 ButtonStateType buttonStatus();
00064 void setButtonStatus(const ButtonStateType &buttonStatusIn);
00065 int buttonNumber();
00066 void setButtonNumber(const int &buttonNumberIn);
00067 bool isHandled(){return handled;}
00068 void setHandled(bool in){handled = in;}
00069
00070 static int ButtonEventType;
00071
00072 private:
00073 ButtonStateType buttonState;
00074 int button;
00075 bool handled;
00076 };
00077 }
00078 #endif // SPACEBALLEVENT_H