1 /* 2 * Copyright (C) 2005-2018 Team Kodi 3 * This file is part of Kodi - https://kodi.tv 4 * 5 * SPDX-License-Identifier: GPL-2.0-or-later 6 * See LICENSES/README.md for more information. 7 */ 8 9 #pragma once 10 11 /** 12 * \defgroup kodi_key_action_ids Action Id's 13 * \ingroup python_xbmcgui_window_cb 14 * \ingroup python_xbmcgui_action 15 * @{ 16 * @brief Actions that we have defined. 17 */ 18 #define ACTION_NONE 0 19 #define ACTION_MOVE_LEFT 1 20 #define ACTION_MOVE_RIGHT 2 21 #define ACTION_MOVE_UP 3 22 #define ACTION_MOVE_DOWN 4 23 #define ACTION_PAGE_UP 5 24 #define ACTION_PAGE_DOWN 6 25 #define ACTION_SELECT_ITEM 7 26 #define ACTION_HIGHLIGHT_ITEM 8 27 #define ACTION_PARENT_DIR 9 28 #define ACTION_PREVIOUS_MENU 10 29 #define ACTION_SHOW_INFO 11 30 31 #define ACTION_PAUSE 12 32 #define ACTION_STOP 13 33 #define ACTION_NEXT_ITEM 14 34 #define ACTION_PREV_ITEM 15 35 36 //! Can be used to specify specific action in a window, Playback control is 37 //! handled in ACTION_PLAYER_* 38 #define ACTION_FORWARD 16 39 40 //! Can be used to specify specific action in a window, Playback control is 41 //! handled in ACTION_PLAYER_* 42 #define ACTION_REWIND 17 43 44 //! Toggle between GUI and movie or GUI and visualisation. 45 #define ACTION_SHOW_GUI 18 46 47 //! Toggle quick-access zoom modes. Can be used in videoFullScreen.zml window id=2005 48 #define ACTION_ASPECT_RATIO 19 49 50 //! Seek +1% in the movie. Can be used in videoFullScreen.xml window id=2005 51 #define ACTION_STEP_FORWARD 20 52 53 //! Seek -1% in the movie. Can be used in videoFullScreen.xml window id=2005 54 #define ACTION_STEP_BACK 21 55 56 //! Seek +10% in the movie. Can be used in videoFullScreen.xml window id=2005 57 #define ACTION_BIG_STEP_FORWARD 22 58 59 //! Seek -10% in the movie. Can be used in videoFullScreen.xml window id=2005 60 #define ACTION_BIG_STEP_BACK 23 61 62 //! Show/hide OSD. Can be used in videoFullScreen.xml window id=2005 63 #define ACTION_SHOW_OSD 24 64 65 //! Turn subtitles on/off. Can be used in videoFullScreen.xml window id=2005 66 #define ACTION_SHOW_SUBTITLES 25 67 68 //! Switch to next subtitle of movie. Can be used in videoFullScreen.xml window id=2005 69 #define ACTION_NEXT_SUBTITLE 26 70 71 //! Show debug info for VideoPlayer 72 #define ACTION_PLAYER_DEBUG 27 73 74 //! Show next picture of slideshow. Can be used in slideshow.xml window id=2007 75 #define ACTION_NEXT_PICTURE 28 76 77 //! Show previous picture of slideshow. Can be used in slideshow.xml window id=2007 78 #define ACTION_PREV_PICTURE 29 79 80 //! Zoom in picture during slideshow. Can be used in slideshow.xml window id=2007 81 #define ACTION_ZOOM_OUT 30 82 83 //! Zoom out picture during slideshow. Can be used in slideshow.xml window id=2007 84 #define ACTION_ZOOM_IN 31 85 86 //! Used to toggle between source view and destination view. Can be used in 87 //! myfiles.xml window < id=3 88 #define ACTION_TOGGLE_SOURCE_DEST 32 89 90 //! Used to toggle between current view and playlist view. Can be used in all mymusic xml files 91 #define ACTION_SHOW_PLAYLIST 33 92 93 //! Used to queue a item to the playlist. Can be used in all mymusic xml files 94 #define ACTION_QUEUE_ITEM 34 95 96 //! Not used anymore 97 #define ACTION_REMOVE_ITEM 35 98 99 //! Not used anymore 100 #define ACTION_SHOW_FULLSCREEN 36 101 102 //! Zoom 1x picture during slideshow. Can be used in slideshow.xml window id=2007 103 #define ACTION_ZOOM_LEVEL_NORMAL 37 104 105 //! Zoom 2x picture during slideshow. Can be used in slideshow.xml window id=2007 106 #define ACTION_ZOOM_LEVEL_1 38 107 108 //! Zoom 3x picture during slideshow. Can be used in slideshow.xml window id=2007 109 #define ACTION_ZOOM_LEVEL_2 39 110 111 //! Zoom 4x picture during slideshow. Can be used in slideshow.xml window id=2007 112 #define ACTION_ZOOM_LEVEL_3 40 113 114 //! Zoom 5x picture during slideshow. Can be used in slideshow.xml window id=2007 115 #define ACTION_ZOOM_LEVEL_4 41 116 117 //! Zoom 6x picture during slideshow. Can be used in slideshow.xml window id=2007 118 #define ACTION_ZOOM_LEVEL_5 42 119 120 //! Zoom 7x picture during slideshow. Can be used in slideshow.xml window id=2007 121 #define ACTION_ZOOM_LEVEL_6 43 122 123 //! Zoom 8x picture during slideshow. Can be used in slideshow.xml window id=2007 124 #define ACTION_ZOOM_LEVEL_7 44 125 126 //! Zoom 9x picture during slideshow. Can be used in slideshow.xml window id=2007 127 #define ACTION_ZOOM_LEVEL_8 45 128 129 //< Zoom 10x picture during slideshow. Can be used in slideshow.xml window id=2007 130 #define ACTION_ZOOM_LEVEL_9 46 131 132 //< Select next arrow. Can be used in: settingsScreenCalibration.xml windowid=11 133 #define ACTION_CALIBRATE_SWAP_ARROWS 47 134 135 //! Reset calibration to defaults. Can be used in: `settingsScreenCalibration.xml` 136 //! windowid=11/settingsUICalibration.xml windowid=10 137 #define ACTION_CALIBRATE_RESET 48 138 139 //! Analog thumbstick move. Can be used in: `slideshow.xml` 140 //! windowid=2007/settingsScreenCalibration.xml windowid=11/settingsUICalibration.xml 141 //! windowid=10 142 //! @note see also ACTION_ANALOG_MOVE_X_LEFT, ACTION_ANALOG_MOVE_X_RIGHT, 143 //! ACTION_ANALOG_MOVE_Y_UP, ACTION_ANALOG_MOVE_Y_DOWN 144 #define ACTION_ANALOG_MOVE 49 145 146 //! Rotate current picture clockwise during slideshow. Can be used in 147 //! slideshow.xml window < id=2007 148 #define ACTION_ROTATE_PICTURE_CW 50 149 150 //! Rotate current picture counterclockwise during slideshow. Can be used in 151 //! slideshow.xml window id=2007 152 #define ACTION_ROTATE_PICTURE_CCW 51 153 154 //! Decrease subtitle/movie Delay. Can be used in videoFullScreen.xml window id=2005 155 #define ACTION_SUBTITLE_DELAY_MIN 52 156 157 //! Increase subtitle/movie Delay. Can be used in videoFullScreen.xml window id=2005 158 #define ACTION_SUBTITLE_DELAY_PLUS 53 159 160 //! Increase avsync delay. Can be used in videoFullScreen.xml window id=2005 161 #define ACTION_AUDIO_DELAY_MIN 54 162 163 //! Decrease avsync delay. Can be used in videoFullScreen.xml window id=2005 164 #define ACTION_AUDIO_DELAY_PLUS 55 165 166 //! Select next language in movie. Can be used in videoFullScreen.xml window id=2005 167 #define ACTION_AUDIO_NEXT_LANGUAGE 56 168 169 //! Switch 2 next resolution. Can b used during screen calibration 170 //! settingsScreenCalibration.xml windowid=11 171 #define ACTION_CHANGE_RESOLUTION 57 172 173 //! Remote keys 0-9 are used by multiple windows. 174 //! 175 //! For example, in videoFullScreen.xml window id=2005 you can enter 176 //! time (mmss) to jump to particular point in the movie. 177 //! 178 //! With spincontrols you can enter a 3-digit number to quickly set the 179 //! spincontrol to desired value. 180 //!@{ 181 #define REMOTE_0 58 182 183 //! @see REMOTE_0 about details. 184 #define REMOTE_1 59 185 186 //! @see REMOTE_0 about details. 187 #define REMOTE_2 60 188 189 //! @see REMOTE_0 about details. 190 #define REMOTE_3 61 191 192 //! @see REMOTE_0 about details. 193 #define REMOTE_4 62 194 195 //! @see REMOTE_0 about details. 196 #define REMOTE_5 63 197 198 //! @see REMOTE_0 about details. 199 #define REMOTE_6 64 200 201 //! @see REMOTE_0 about details. 202 #define REMOTE_7 65 203 204 //! @see REMOTE_0 about details. 205 #define REMOTE_8 66 206 207 //! @see REMOTE_0 about details. 208 #define REMOTE_9 67 209 //!@} 210 211 //! Show player process info (video decoder, pixel format, pvr signal strength 212 //! and the like 213 #define ACTION_PLAYER_PROCESS_INFO 69 214 215 #define ACTION_PLAYER_PROGRAM_SELECT 70 216 217 #define ACTION_PLAYER_RESOLUTION_SELECT 71 218 219 //! Jumps a few seconds back during playback of movie. Can be used in videoFullScreen.xml 220 //! window id=2005 221 #define ACTION_SMALL_STEP_BACK 76 222 223 //! FF in current file played. global action, can be used anywhere 224 #define ACTION_PLAYER_FORWARD 77 225 226 //! RW in current file played. global action, can be used anywhere 227 #define ACTION_PLAYER_REWIND 78 228 229 //! Play current song. Unpauses song and sets playspeed to 1x. global action, 230 //! can be used anywhere 231 #define ACTION_PLAYER_PLAY 79 232 233 //! Delete current selected item. Can be used in myfiles.xml window id=3 and in 234 //! myvideoTitle.xml window id=25 235 #define ACTION_DELETE_ITEM 80 236 237 //! Copy current selected item. Can be used in myfiles.xml window id=3 238 #define ACTION_COPY_ITEM 81 239 240 //! Move current selected item. Can be used in myfiles.xml window id=3 241 #define ACTION_MOVE_ITEM 82 242 243 //! Take a screenshot 244 #define ACTION_TAKE_SCREENSHOT 85 245 246 //! Rename item 247 #define ACTION_RENAME_ITEM 87 248 249 #define ACTION_VOLUME_UP 88 250 #define ACTION_VOLUME_DOWN 89 251 #define ACTION_VOLAMP 90 252 #define ACTION_MUTE 91 253 #define ACTION_NAV_BACK 92 254 #define ACTION_VOLAMP_UP 93 255 #define ACTION_VOLAMP_DOWN 94 256 257 //! Creates an episode bookmark on the currently playing video file containing 258 //! more than one episode 259 #define ACTION_CREATE_EPISODE_BOOKMARK 95 260 261 //! Creates a bookmark of the currently playing video file 262 #define ACTION_CREATE_BOOKMARK 96 263 264 //! Goto the next chapter, if not available perform a big step forward 265 #define ACTION_CHAPTER_OR_BIG_STEP_FORWARD 97 266 267 //! Goto the previous chapter, if not available perform a big step back 268 #define ACTION_CHAPTER_OR_BIG_STEP_BACK 98 269 270 //! Switch to next subtitle of movie, but will not enable/disable the subtitles. 271 //! Can be used in videoFullScreen.xml window id=2005 272 #define ACTION_CYCLE_SUBTITLE 99 273 274 #define ACTION_MOUSE_START 100 275 #define ACTION_MOUSE_LEFT_CLICK 100 276 #define ACTION_MOUSE_RIGHT_CLICK 101 277 #define ACTION_MOUSE_MIDDLE_CLICK 102 278 #define ACTION_MOUSE_DOUBLE_CLICK 103 279 #define ACTION_MOUSE_WHEEL_UP 104 280 #define ACTION_MOUSE_WHEEL_DOWN 105 281 #define ACTION_MOUSE_DRAG 106 282 #define ACTION_MOUSE_MOVE 107 283 #define ACTION_MOUSE_LONG_CLICK 108 284 #define ACTION_MOUSE_DRAG_END 109 285 #define ACTION_MOUSE_END 109 286 287 #define ACTION_BACKSPACE 110 288 #define ACTION_SCROLL_UP 111 289 #define ACTION_SCROLL_DOWN 112 290 #define ACTION_ANALOG_FORWARD 113 291 #define ACTION_ANALOG_REWIND 114 292 293 #define ACTION_MOVE_ITEM_UP 115 //!< move item up in playlist 294 #define ACTION_MOVE_ITEM_DOWN 116 //!< move item down in playlist 295 #define ACTION_CONTEXT_MENU 117 //!< pops up the context menu 296 297 // stuff for virtual keyboard shortcuts 298 #define ACTION_SHIFT 118 //!< stuff for virtual keyboard shortcuts 299 #define ACTION_SYMBOLS 119 //!< stuff for virtual keyboard shortcuts 300 #define ACTION_CURSOR_LEFT 120 //!< stuff for virtual keyboard shortcuts 301 #define ACTION_CURSOR_RIGHT 121 //!< stuff for virtual keyboard shortcuts 302 303 #define ACTION_BUILT_IN_FUNCTION 122 304 305 //! Displays current time, can be used in videoFullScreen.xml window id=2005 306 #define ACTION_SHOW_OSD_TIME 123 307 308 #define ACTION_ANALOG_SEEK_FORWARD 124 //!< seeks forward, and displays the seek bar. 309 #define ACTION_ANALOG_SEEK_BACK 125 //!< seeks backward, and displays the seek bar. 310 311 #define ACTION_VIS_PRESET_SHOW 126 312 #define ACTION_VIS_PRESET_NEXT 128 313 #define ACTION_VIS_PRESET_PREV 129 314 #define ACTION_VIS_PRESET_LOCK 130 315 #define ACTION_VIS_PRESET_RANDOM 131 316 #define ACTION_VIS_RATE_PRESET_PLUS 132 317 #define ACTION_VIS_RATE_PRESET_MINUS 133 318 319 #define ACTION_SHOW_VIDEOMENU 134 320 #define ACTION_ENTER 135 321 322 #define ACTION_INCREASE_RATING 136 323 #define ACTION_DECREASE_RATING 137 324 325 #define ACTION_NEXT_SCENE 138 //!< switch to next scene/cutpoint in movie 326 #define ACTION_PREV_SCENE 139 //!< switch to previous scene/cutpoint in movie 327 328 #define ACTION_NEXT_LETTER 140 //!< jump through a list or container by letter 329 #define ACTION_PREV_LETTER 141 330 331 #define ACTION_JUMP_SMS2 142 //!< jump direct to a particular letter using SMS-style input 332 #define ACTION_JUMP_SMS3 143 333 #define ACTION_JUMP_SMS4 144 334 #define ACTION_JUMP_SMS5 145 335 #define ACTION_JUMP_SMS6 146 336 #define ACTION_JUMP_SMS7 147 337 #define ACTION_JUMP_SMS8 148 338 #define ACTION_JUMP_SMS9 149 339 340 #define ACTION_FILTER_CLEAR 150 341 #define ACTION_FILTER_SMS2 151 342 #define ACTION_FILTER_SMS3 152 343 #define ACTION_FILTER_SMS4 153 344 #define ACTION_FILTER_SMS5 154 345 #define ACTION_FILTER_SMS6 155 346 #define ACTION_FILTER_SMS7 156 347 #define ACTION_FILTER_SMS8 157 348 #define ACTION_FILTER_SMS9 158 349 350 #define ACTION_FIRST_PAGE 159 351 #define ACTION_LAST_PAGE 160 352 353 #define ACTION_AUDIO_DELAY 161 354 #define ACTION_SUBTITLE_DELAY 162 355 #define ACTION_MENU 163 356 357 #define ACTION_SET_RATING 164 358 359 #define ACTION_RECORD 170 360 361 #define ACTION_PASTE 180 362 #define ACTION_NEXT_CONTROL 181 363 #define ACTION_PREV_CONTROL 182 364 #define ACTION_CHANNEL_SWITCH 183 365 #define ACTION_CHANNEL_UP 184 366 #define ACTION_CHANNEL_DOWN 185 367 #define ACTION_NEXT_CHANNELGROUP 186 368 #define ACTION_PREVIOUS_CHANNELGROUP 187 369 #define ACTION_PVR_PLAY 188 370 #define ACTION_PVR_PLAY_TV 189 371 #define ACTION_PVR_PLAY_RADIO 190 372 #define ACTION_PVR_SHOW_TIMER_RULE 191 373 #define ACTION_CHANNEL_NUMBER_SEP 192 374 #define ACTION_PVR_ANNOUNCE_REMINDERS 193 375 376 #define ACTION_TOGGLE_FULLSCREEN 199 //!< switch 2 desktop resolution 377 #define ACTION_TOGGLE_WATCHED 200 //!< Toggle watched status (videos) 378 #define ACTION_SCAN_ITEM 201 //!< scan item 379 #define ACTION_TOGGLE_DIGITAL_ANALOG 202 //!< switch digital <-> analog 380 #define ACTION_RELOAD_KEYMAPS 203 //!< reloads CButtonTranslator's keymaps 381 #define ACTION_GUIPROFILE_BEGIN 204 //!< start the GUIControlProfiler running 382 383 #define ACTION_TELETEXT_RED 215 //!< Teletext Color button <b>Red</b> to control TopText 384 #define ACTION_TELETEXT_GREEN 216 //!< Teletext Color button <b>Green</b> to control TopText 385 #define ACTION_TELETEXT_YELLOW 217 //!< Teletext Color button <b>Yellow</b> to control TopText 386 #define ACTION_TELETEXT_BLUE 218 //!< Teletext Color button <b>Blue</b> to control TopText 387 388 #define ACTION_INCREASE_PAR 219 389 #define ACTION_DECREASE_PAR 220 390 391 #define ACTION_VSHIFT_UP 227 //!< shift up video image in VideoPlayer 392 #define ACTION_VSHIFT_DOWN 228 //!< shift down video image in VideoPlayer 393 394 #define ACTION_PLAYER_PLAYPAUSE 229 //!< Play/pause. If playing it pauses, if paused it plays. 395 396 #define ACTION_SUBTITLE_VSHIFT_UP 230 //!< shift up subtitles in VideoPlayer 397 #define ACTION_SUBTITLE_VSHIFT_DOWN 231 //!< shift down subtitles in VideoPlayer 398 #define ACTION_SUBTITLE_ALIGN 232 //!< toggle vertical alignment of subtitles 399 400 #define ACTION_FILTER 233 401 402 #define ACTION_SWITCH_PLAYER 234 403 404 #define ACTION_STEREOMODE_NEXT 235 405 #define ACTION_STEREOMODE_PREVIOUS 236 406 #define ACTION_STEREOMODE_TOGGLE 237 //!< turns 3d mode on/off 407 #define ACTION_STEREOMODE_SELECT 238 408 #define ACTION_STEREOMODE_TOMONO 239 409 #define ACTION_STEREOMODE_SET 240 410 411 #define ACTION_SETTINGS_RESET 241 412 #define ACTION_SETTINGS_LEVEL_CHANGE 242 413 414 //! Show autoclosing OSD. Can be used in videoFullScreen.xml window id=2005 415 #define ACTION_TRIGGER_OSD 243 416 #define ACTION_INPUT_TEXT 244 417 #define ACTION_VOLUME_SET 245 418 #define ACTION_TOGGLE_COMMSKIP 246 419 420 #define ACTION_BROWSE_SUBTITLE 247 //!< Browse for subtitle. Can be used in videofullscreen 421 422 #define ACTION_PLAYER_RESET 248 //!< Send a reset command to the active game 423 424 #define ACTION_TOGGLE_FONT 249 //!< Toggle font. Used in TextViewer dialog 425 426 #define ACTION_VIDEO_NEXT_STREAM 250 //!< Cycle video streams. Used in videofullscreen. 427 428 //! Used to queue an item to the next position in the playlist 429 #define ACTION_QUEUE_ITEM_NEXT 251 430 431 #define ACTION_HDR_TOGGLE 260 //!< Toggle display HDR on/off 432 433 #define ACTION_CYCLE_TONEMAP_METHOD 261 //!< Switch to next tonemap method 434 435 //! Show debug info for video (source format, metadata, shaders, render flags and output format) 436 #define ACTION_PLAYER_DEBUG_VIDEO 262 437 438 // Voice actions 439 #define ACTION_VOICE_RECOGNIZE 300 440 441 // Touch actions 442 #define ACTION_TOUCH_TAP 401 //!< touch actions 443 #define ACTION_TOUCH_TAP_TEN 410 //!< touch actions 444 #define ACTION_TOUCH_LONGPRESS 411 //!< touch actions 445 #define ACTION_TOUCH_LONGPRESS_TEN 420 //!< touch actions 446 447 #define ACTION_GESTURE_NOTIFY 500 448 #define ACTION_GESTURE_BEGIN 501 449 450 //! sendaction with point and currentPinchScale (fingers together < 1.0 -> 451 //! fingers apart > 1.0) 452 #define ACTION_GESTURE_ZOOM 502 453 #define ACTION_GESTURE_ROTATE 503 454 #define ACTION_GESTURE_PAN 504 455 #define ACTION_GESTURE_ABORT 505 //!< gesture was interrupted in unspecified state 456 457 #define ACTION_GESTURE_SWIPE_LEFT 511 458 #define ACTION_GESTURE_SWIPE_LEFT_TEN 520 459 #define ACTION_GESTURE_SWIPE_RIGHT 521 460 #define ACTION_GESTURE_SWIPE_RIGHT_TEN 530 461 #define ACTION_GESTURE_SWIPE_UP 531 462 #define ACTION_GESTURE_SWIPE_UP_TEN 540 463 #define ACTION_GESTURE_SWIPE_DOWN 541 464 #define ACTION_GESTURE_SWIPE_DOWN_TEN 550 465 466 //! 5xx is reserved for additional gesture actions 467 #define ACTION_GESTURE_END 599 468 469 /*! 470 * @brief Other, non-gesture actions 471 */ 472 ///@{ 473 474 //!< analog thumbstick move, horizontal axis, left; see ACTION_ANALOG_MOVE 475 #define ACTION_ANALOG_MOVE_X_LEFT 601 476 477 //!< analog thumbstick move, horizontal axis, right; see ACTION_ANALOG_MOVE 478 #define ACTION_ANALOG_MOVE_X_RIGHT 602 479 480 //!< analog thumbstick move, vertical axis, up; see ACTION_ANALOG_MOVE 481 #define ACTION_ANALOG_MOVE_Y_UP 603 482 483 //!< analog thumbstick move, vertical axis, down; see ACTION_ANALOG_MOVE 484 #define ACTION_ANALOG_MOVE_Y_DOWN 604 485 486 ///@} 487 488 // The NOOP action can be specified to disable an input event. This is 489 // useful in user keyboard.xml etc to disable actions specified in the 490 // system mappings. ERROR action is used to play an error sound 491 #define ACTION_ERROR 998 492 #define ACTION_NOOP 999 493