00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef GLUONBUTTONS_H
00021 #define GLUONBUTTONS_H
00022
00023 #include "gluon_input_export.h"
00024 #include "gluondevices.h"
00025
00026 #include <core/singleton.h>
00027
00028 #include <QtCore/QObject>
00029
00030 namespace GluonInput
00031 {
00032 class GLUON_INPUT_EXPORT GluonButtons : public GluonCore::Singleton<GluonButtons>
00033 {
00034 Q_OBJECT
00035 Q_ENUMS( Button )
00036 Q_ENUMS( Absolute )
00037 Q_ENUMS( Relative )
00038
00039 public:
00040 enum Button
00041 {
00042 ESC = 1,
00043 ONE,
00044 TWO,
00045 THREE,
00046 FOUR,
00047 FIVE,
00048 SIX,
00049 SEVEN,
00050 EIGHT,
00051 NINE,
00052 ZERO,
00053 MINUS,
00054 EQUAL,
00055 BACKSPACE,
00056 TAB,
00057 Q,
00058 W,
00059 E,
00060 R,
00061 T,
00062 Y,
00063 U,
00064 I,
00065 O,
00066 P,
00067 LEFT_BRACKET,
00068 RIGHT_BRACKET,
00069 ENTER,
00070 LEFT_CONTROL,
00071 A,
00072 S,
00073 D,
00074 F,
00075 G,
00076 H,
00077 J,
00078 K,
00079 L,
00080 SEMICOLON,
00081 APOSTROPHE,
00082 GRAVE,
00083 LEFT_SHIFT,
00084 BACKSLASH,
00085 Z,
00086 X,
00087 C,
00088 V,
00089 B,
00090 N,
00091 M,
00092 COMMA,
00093 PUNCTUATION,
00094 SLASH,
00095 RIGHT_SHIFT,
00096 KEYPAD_ASTERISK,
00097 LEFT_ALT,
00098 SPACE,
00099 CAPSLOCK,
00100 F_ONE,
00101 F_TWO,
00102 F_THREE,
00103 F_FOUR,
00104 F_FIVE,
00105 F_SIX,
00106 F_SEVEN,
00107 F_EIGHT,
00108 F_NINE,
00109 F_TEN,
00110 NUM_LOCK,
00111 SCROLL_LOCK,
00112 KEYPAD_SEVEN,
00113 KEYPAD_EIGHT,
00114 KEYPAD_NINE,
00115 KEYPAD_MINUSE,
00116 KEYPAD_FOUR,
00117 KEYPAD_FIVE,
00118 KEYPAD_SIX,
00119 KEYPAD_PLUS,
00120 KEYPAD_ONE,
00121 KEYPAD_TWO,
00122 KEYPAD_THREE,
00123 KEYPAD_ZERO,
00124 KEYPAD_PUNCTUATION,
00125 ZENKAKUHANKAKU = 85,
00126 ONEZEROTWOND,
00127 F_ELEVEN,
00128 F_TWELVE,
00129 R_ZERO,
00130 KATAKANA,
00131 HIRAGANA,
00132 HENKAN,
00133 KATAKANAHIRAGANA,
00134 MUHENKAN, KEYPAD_JPCOMMA,
00135 KEYPAD_ENTER,
00136 RIGHT_CTRL,
00137 KEYPAD_SLASH,
00138 SYSRQ,
00139 RIGHT_ALT,
00140 LINEFEED,
00141 HOME,
00142 UP_ARROW,
00143 PAGEUP,
00144 LEFT_ARROW,
00145 RIGHT_ARROW,
00146 END,
00147 DOWN_ARROW,
00148 PAGEDOWN,
00149 INSERT,
00150 DELETE,
00151 MACRO,
00152 MUTE,
00153 VOLUME_DOWN,
00154 VOLUME_UP,
00155 POWER,
00156 KEYPAD_EQUAL,
00157 KEYPAD_PLUS_AND_MINUS,
00158 PAUSE,
00159 KEYPAD_COMMA = 121,
00160 HANGUEL,
00161 HANJA,
00162 YEN,
00163 LEFT_META,
00164 RIGHT_META,
00165 COMPOSE,
00166 STOP,
00167 AGAIN,
00168 PROPS,
00169 UNDO,
00170 FRONT,
00171 COPY,
00172 OPEN,
00173 PASTE,
00174 FIND,
00175 CUT,
00176 HELP,
00177 MENU,
00178 CALC,
00179 SETUP,
00180 SLEEP,
00181 WAKEUP,
00182 FILE,
00183 SEND_FILE,
00184 DELETE_FILE,
00185 X_FER,
00186 PROG_ONE,
00187 PROG_TWO,
00188 WWW,
00189 MSDOS,
00190 COFFEE,
00191 DIRECTION,
00192 CYCLE_WINDOWS,
00193 MAIL,
00194 BOOKMARKS,
00195 COMPUTER,
00196 BACK,
00197 FORWARD,
00198 CLOSE_CD,
00199 EJECT_CD,
00200 EJECT_AND_CLOSE_CD,
00201 NEXT_SONG,
00202 PLAY_PAUSE,
00203 PREVIOUS_SONG,
00204 STOP_CD,
00205 RECORD,
00206 REWIND,
00207 PHONE,
00208 ISOKEY,
00209 CONFIG,
00210 HOMEPAGE,
00211 REFRESH,
00212 EXIT,
00213 MOVE,
00214 EDIT,
00215 SCROLLUP,
00216 SCROLLDOWN,
00217 KEYPAD_LEFT_PARENTHESE,
00218 KEYPAD_RIGHT_PARENTHESE,
00219 F_THIRTEEN = 183,
00220 F_FOURTEEN,
00221 F_FIFTEEN,
00222 F_SIXTEEN,
00223 F_SEVENTEEN,
00224 F_EIGHTTEEN,
00225 F_NINETEEN,
00226 F_TWENTY,
00227 F_TWENTYONE,
00228 F_TWENTYTWO,
00229 F_TWENTYTHREE,
00230 F_TWENTYFOUR,
00231 PLAY_CD = 200,
00232 PAUSE_CD,
00233 PROG_THREE,
00234 PROG_FOUR,
00235 SUSPEND = 205,
00236 CLOSE,
00237 PLAY,
00238 FASTFORWARD,
00239 BASS_BOOST,
00240 PRINT,
00241 HP,
00242 CAMERA,
00243 SOUND,
00244 QUESTION,
00245 EMAIL,
00246 CHAT,
00247 SEARCH,
00248 CONNECT,
00249 FINANCE,
00250 SPORT,
00251 SHOP,
00252 ALT_ERASE,
00253 CANCEL,
00254 BRIGHTNESS_DOWN,
00255 BRIGHTNESS_UP,
00256 MEDIA,
00257 SWITCH_VIDEOMODE,
00258 KB_ILLUM_TOGGLE,
00259 KB_ILLUM_DOWN,
00260 KB_ILLUM_UP,
00261 BUTTON_ZERO = 256,
00262 BUTTON_ONE,
00263 BUTTON_TWO,
00264 BUTTON_THREE,
00265 BUTTON_FOUR,
00266 BUTTON_FIVE,
00267 BUTTON_SIX,
00268 BUTTON_SEVEN,
00269 BUTTON_EIGHT,
00270 BUTTON_NINE,
00271 MOUSE_LEFT_BUTTON = 272,
00272 MOUSE_RIGHT_BUTTON,
00273 MOUSE_MIDDLE_BUTTON,
00274 MOUSE_BUTTON_FOUR,
00275 MOUSE_BUTTON_FIVE,
00276 MOUSE_BUTTON_SIX,
00277 MOUSE_BUTTON_SEVEN,
00278 MOUSE_BUTTON_EIGHT,
00279 TRIGGER = 288,
00280 THUMB_BUTTON_ONE,
00281 THUMB_BUTTON_TWO,
00282 TOP_BUTTON_ONE,
00283 TOP_BUTTON_TWO,
00284 PINKIE_BUTTON,
00285 BASE_BUTTON_ONE,
00286 BASE_BUTTON_TWO,
00287 BASE_BUTTON_THREE,
00288 BASE_BUTTON_FOUR,
00289 BASE_BUTTON_FIVE,
00290 BASE_BUTTON_SIX,
00291 BUTTON_DEAD = 303,
00292 BUTTON_A,
00293 BUTTON_B,
00294 BUTTON_C,
00295 BUTTON_X,
00296 BUTTON_Y,
00297 BUTTON_Z,
00298 BUTTON_TL_ONE,
00299 BUTTON_TR_ONE,
00300 BUTTON_TL_TWO,
00301 BUTTON_TR_TWO,
00302 BUTTON_SELECT,
00303 BUTTON_START,
00304 BUTTON_MODE,
00305 BUTTON_THUMB_LEFT,
00306 BUTTON_THUMB_RIGHT,
00307 TOOL_PEN = 320,
00308 TOOL_RUBBER,
00309 TOOL_BRUSH,
00310 TOOL_PENCIL,
00311 TOOL_AIRBRUSH,
00312 TOOL_FINGER,
00313 TOOL_MOUSE,
00314 TOOL_LENS,
00315 TOUCH = 330,
00316 STYLUS,
00317 STYLUS_TWO,
00318 DOUBLETAB,
00319 TRIPLETAB,
00320 GEAR_UP = 336,
00321 GEAR_DOWN,
00322 OK = 352,
00323 SELECT,
00324 GOTO,
00325 CLEAR,
00326 POWER_TWO,
00327 OPTION,
00328 INFO,
00329 TIME,
00330 VENDOR,
00331 ARCHIVE,
00332 PROGRAM,
00333 CHANNEL,
00334 FAVORITES,
00335 EPG,
00336 PVR,
00337 MHP,
00338 LANGUAGE,
00339 TITLE,
00340 SUBTITLE,
00341 ANGLE,
00342 ZOOM,
00343 MODE,
00344 KEYBOARD,
00345 SCREEN,
00346 PC,
00347 TV,
00348 TV_TWO,
00349 VCR,
00350 VCR_TWO,
00351 SAT,
00352 SAT_TWO,
00353 CD,
00354 TAPE,
00355 RADIO,
00356 TUNER,
00357 PLAYER,
00358 TEXT,
00359 DVD,
00360 AUX,
00361 MP_THREE,
00362 AUDIO,
00363 VIDEO,
00364 DIRECTORY,
00365 LIST,
00366 MEMO,
00367 CALENDAR,
00368 RED,
00369 GREEN,
00370 YELLOW,
00371 BLUE,
00372 CHANNEL_UP,
00373 CHANNEL_DOWN,
00374 FIRST,
00375 LAST,
00376 AB,
00377 NEXT,
00378 RESTART,
00379 SLOW,
00380 SHUFFLE,
00381 BREAK,
00382 PREVIOUS,
00383 DIGITS,
00384 TEEN,
00385 TWEN,
00386 DELEOL = 448,
00387 DELEOS,
00388 INSLINE,
00389 DELLINE,
00390 FN = 464,
00391 FN_ESC,
00392 FN_F_ONE,
00393 FN_F_TWO,
00394 FN_F_THREE,
00395 FN_F_FOUR,
00396 FN_F_FIVE,
00397 FN_F_SIX,
00398 FN_F_SEVEN,
00399 FN_F_EIGHT,
00400 FN_F_NINE,
00401 FN_F_TEN,
00402 FN_F_ELEVEN,
00403 FN_F_TWELVE,
00404 FN_ONE,
00405 FN_TWO,
00406 FN_D,
00407 FN_E,
00408 FN_F,
00409 FN_S,
00410 FN_B
00411 };
00412
00413 enum Relative
00414 {
00415 X_REL,
00416 Y_REL,
00417 Z_REL,
00418 HWHEEL = 6,
00419 DIAL,
00420 WHEEL_REL,
00421 MISC_REL
00422 };
00423
00424 enum Absolute
00425 {
00426 X_ABS,
00427 Y_ABS,
00428 Z_ABS,
00429 Rx,
00430 Ry,
00431 Rz,
00432 THROTTLE,
00433 RUDDER,
00434 WHEEL_ABS,
00435 GAS,
00436 BRAKE,
00437 HAT_ZERO_X = 16,
00438 HAT_ZERO_Y,
00439 HAT_ONE_X,
00440 HAT_ONE_Y,
00441 HAT_TWO_X,
00442 HAT_TWO_Y,
00443 HAT_THREE_X,
00444 HAT_THREE_Y,
00445 PRESSURE,
00446 DISTANCE,
00447 X_TILT,
00448 Y_TILT,
00449 TOOLWIDTH,
00450 VOLUME = 32,
00451 MISC_ABS = 40
00452 };
00453
00454 GluonButtons();
00455
00456 QString buttonName( DeviceFlag deviceType, int code );
00457 QString axisName( DeviceFlag deviceType, int code );
00458
00459 private:
00460 ~GluonButtons();
00461 };
00462 }
00463
00465 #endif // KCL_H