summaryrefslogtreecommitdiffstats
path: root/input/cmd_list.h
diff options
context:
space:
mode:
Diffstat (limited to 'input/cmd_list.h')
-rw-r--r--input/cmd_list.h92
1 files changed, 4 insertions, 88 deletions
diff --git a/input/cmd_list.h b/input/cmd_list.h
index c6d7c66100..5f44602907 100644
--- a/input/cmd_list.h
+++ b/input/cmd_list.h
@@ -25,10 +25,13 @@
#define MP_CMD_OPT_ARG 0x1000
+struct mp_cmd_ctx;
+
struct mp_cmd_def {
- int id; // one of MP_CMD_...
const char *name; // user-visible name (as used in input.conf)
+ void (*handler)(void *ctx);
const struct m_option args[MP_CMD_DEF_MAX_ARGS];
+ const void *priv; // for free use by handler()
bool allow_auto_repeat; // react to repeated key events
bool on_updown; // always emit it on both up and down key events
bool vararg; // last argument can be given 0 to multiple times
@@ -40,93 +43,6 @@ struct mp_cmd_def {
extern const struct mp_cmd_def mp_cmds[];
-// All command IDs
-enum mp_command_type {
- MP_CMD_IGNORE,
- MP_CMD_SEEK,
- MP_CMD_REVERT_SEEK,
- MP_CMD_QUIT,
- MP_CMD_QUIT_WATCH_LATER,
- MP_CMD_PLAYLIST_NEXT,
- MP_CMD_PLAYLIST_PREV,
- MP_CMD_SCREENSHOT,
- MP_CMD_SCREENSHOT_TO_FILE,
- MP_CMD_SCREENSHOT_RAW,
- MP_CMD_LOADFILE,
- MP_CMD_LOADLIST,
- MP_CMD_PLAYLIST_CLEAR,
- MP_CMD_PLAYLIST_REMOVE,
- MP_CMD_PLAYLIST_MOVE,
- MP_CMD_PLAYLIST_SHUFFLE,
- MP_CMD_SUB_STEP,
- MP_CMD_SUB_SEEK,
- MP_CMD_TV_LAST_CHANNEL,
- MP_CMD_FRAME_STEP,
- MP_CMD_FRAME_BACK_STEP,
- MP_CMD_RUN,
- MP_CMD_SUB_ADD,
- MP_CMD_SUB_REMOVE,
- MP_CMD_SUB_RELOAD,
- MP_CMD_SET,
- MP_CMD_CHANGE_LIST,
- MP_CMD_PRINT_TEXT,
- MP_CMD_SHOW_TEXT,
- MP_CMD_EXPAND_TEXT,
- MP_CMD_SHOW_PROGRESS,
- MP_CMD_ADD,
- MP_CMD_CYCLE,
- MP_CMD_MULTIPLY,
- MP_CMD_CYCLE_VALUES,
- MP_CMD_STOP,
- MP_CMD_AUDIO_ADD,
- MP_CMD_AUDIO_REMOVE,
- MP_CMD_AUDIO_RELOAD,
-
- MP_CMD_ENABLE_INPUT_SECTION,
- MP_CMD_DISABLE_INPUT_SECTION,
- MP_CMD_DEFINE_INPUT_SECTION,
-
- MP_CMD_AB_LOOP,
-
- MP_CMD_DROP_BUFFERS,
-
- MP_CMD_MOUSE,
- MP_CMD_KEYPRESS,
- MP_CMD_KEYDOWN,
- MP_CMD_KEYUP,
-
- /// Audio Filter commands
- MP_CMD_AF,
- MP_CMD_AF_COMMAND,
- MP_CMD_AO_RELOAD,
-
- /// Video filter commands
- MP_CMD_VF,
- MP_CMD_VF_COMMAND,
-
- /// Internal for Lua scripts
- MP_CMD_SCRIPT_BINDING,
- MP_CMD_SCRIPT_MESSAGE,
- MP_CMD_SCRIPT_MESSAGE_TO,
-
- MP_CMD_OVERLAY_ADD,
- MP_CMD_OVERLAY_REMOVE,
-
- MP_CMD_WRITE_WATCH_LATER_CONFIG,
-
- MP_CMD_HOOK_ADD,
- MP_CMD_HOOK_ACK,
-
- MP_CMD_RESCAN_EXTERNAL_FILES,
-
- MP_CMD_APPLY_PROFILE,
-
- MP_CMD_LOAD_SCRIPT,
-
- // Internal
- MP_CMD_COMMAND_LIST, // list of sub-commands in args[0].v.p
-};
-
// Executing this command will maybe abort playback (play something else, or quit).
struct mp_cmd;
bool mp_input_is_maybe_abort_cmd(struct mp_cmd *cmd);