VLC  3.0.21
Macros | Typedefs | Enumerations | Functions
vlc_actions.h File Reference
Include dependency graph for vlc_actions.h:

Go to the source code of this file.

Macros

#define KEY_MODIFIER   0xFF000000
 
#define KEY_MODIFIER_ALT   0x01000000
 
#define KEY_MODIFIER_SHIFT   0x02000000
 
#define KEY_MODIFIER_CTRL   0x04000000
 
#define KEY_MODIFIER_META   0x08000000
 
#define KEY_MODIFIER_COMMAND   0x10000000
 
#define KEY_UNSET   0x00000000
 
#define KEY_BACKSPACE   0x08
 
#define KEY_TAB   0x09
 
#define KEY_ENTER   0x0D
 
#define KEY_ESC   0x1B
 
#define KEY_LEFT   0x00210000
 
#define KEY_RIGHT   0x00220000
 
#define KEY_UP   0x00230000
 
#define KEY_DOWN   0x00240000
 
#define KEY_F1   0x00270000
 
#define KEY_F2   0x00280000
 
#define KEY_F3   0x00290000
 
#define KEY_F4   0x002A0000
 
#define KEY_F5   0x002B0000
 
#define KEY_F6   0x002C0000
 
#define KEY_F7   0x002D0000
 
#define KEY_F8   0x002E0000
 
#define KEY_F9   0x002F0000
 
#define KEY_F10   0x00300000
 
#define KEY_F11   0x00310000
 
#define KEY_F12   0x00320000
 
#define KEY_HOME   0x00330000
 
#define KEY_END   0x00340000
 
#define KEY_INSERT   0x00350000
 
#define KEY_DELETE   0x00360000
 
#define KEY_MENU   0x00370000
 
#define KEY_PAGEUP   0x00390000
 
#define KEY_PAGEDOWN   0x003A0000
 
#define KEY_PRINT   0x003B0000
 
#define KEY_PAUSE   0x003D0000
 
#define KEY_BROWSER_BACK   0x003F0000
 
#define KEY_BROWSER_FORWARD   0x00400000
 
#define KEY_BROWSER_REFRESH   0x00410000
 
#define KEY_BROWSER_STOP   0x00420000
 
#define KEY_BROWSER_SEARCH   0x00430000
 
#define KEY_BROWSER_FAVORITES   0x00440000
 
#define KEY_BROWSER_HOME   0x00450000
 
#define KEY_VOLUME_MUTE   0x00460000
 
#define KEY_VOLUME_DOWN   0x00470000
 
#define KEY_VOLUME_UP   0x00480000
 
#define KEY_MEDIA_NEXT_TRACK   0x00490000
 
#define KEY_MEDIA_PREV_TRACK   0x004A0000
 
#define KEY_MEDIA_STOP   0x004B0000
 
#define KEY_MEDIA_PLAY_PAUSE   0x004C0000
 
#define KEY_MEDIA_RECORD   0x004D0000
 
#define KEY_MEDIA_REWIND   0x004E0000
 
#define KEY_MEDIA_FORWARD   0x004F0000
 
#define KEY_MEDIA_REPEAT   0x00500000
 
#define KEY_MEDIA_SHUFFLE   0x00510000
 
#define KEY_MEDIA_SUBTITLE   0x00520000
 
#define KEY_MEDIA_AUDIO   0x00530000
 
#define KEY_MEDIA_ANGLE   0x00540000
 
#define KEY_MEDIA_TIME   0x00550000
 
#define KEY_MEDIA_FRAME_PREV   0x00560000
 
#define KEY_MEDIA_FRAME_NEXT   0x00570000
 
#define KEY_MEDIA_SELECT   0x00580000
 
#define KEY_MEDIA_VIEW   0x00590000
 
#define KEY_MEDIA_MENU   0x005A0000
 
#define KEY_ZOOM_IN   0x00600000
 
#define KEY_ZOOM_OUT   0x00610000
 
#define KEY_BRIGHTNESS_UP   0x00620000
 
#define KEY_BRIGHTNESS_DOWN   0x00630000
 
#define KEY_MOUSEWHEELUP   0x00F00000
 
#define KEY_MOUSEWHEELDOWN   0x00F10000
 
#define KEY_MOUSEWHEELLEFT   0x00F20000
 
#define KEY_MOUSEWHEELRIGHT   0x00F30000
 
#define vlc_actions_get_keycodes(a, b, c, d)   vlc_actions_get_keycodes(VLC_OBJECT(a), b, c, d)
 
#define vlc_actions_get_key_names(x)   vlc_actions_get_key_names(VLC_OBJECT(x))
 

Typedefs

typedef enum vlc_action_id vlc_action_id_t
 

Enumerations

enum  vlc_action_id {
  ACTIONID_NONE = 0, ACTIONID_QUIT, ACTIONID_PLAY_PAUSE, ACTIONID_PLAY,
  ACTIONID_PAUSE, ACTIONID_STOP, ACTIONID_PREV, ACTIONID_NEXT,
  ACTIONID_SLOWER, ACTIONID_FASTER, ACTIONID_TOGGLE_FULLSCREEN, ACTIONID_VOL_UP,
  ACTIONID_VOL_DOWN, ACTIONID_NAV_ACTIVATE, ACTIONID_NAV_UP, ACTIONID_NAV_DOWN,
  ACTIONID_NAV_LEFT, ACTIONID_NAV_RIGHT, ACTIONID_JUMP_BACKWARD_EXTRASHORT, ACTIONID_JUMP_FORWARD_EXTRASHORT,
  ACTIONID_JUMP_BACKWARD_SHORT, ACTIONID_JUMP_FORWARD_SHORT, ACTIONID_JUMP_BACKWARD_MEDIUM, ACTIONID_JUMP_FORWARD_MEDIUM,
  ACTIONID_JUMP_BACKWARD_LONG, ACTIONID_JUMP_FORWARD_LONG, ACTIONID_FRAME_NEXT, ACTIONID_POSITION,
  ACTIONID_VOL_MUTE, ACTIONID_SET_BOOKMARK1, ACTIONID_SET_BOOKMARK2, ACTIONID_SET_BOOKMARK3,
  ACTIONID_SET_BOOKMARK4, ACTIONID_SET_BOOKMARK5, ACTIONID_SET_BOOKMARK6, ACTIONID_SET_BOOKMARK7,
  ACTIONID_SET_BOOKMARK8, ACTIONID_SET_BOOKMARK9, ACTIONID_SET_BOOKMARK10, ACTIONID_PLAY_BOOKMARK1,
  ACTIONID_PLAY_BOOKMARK2, ACTIONID_PLAY_BOOKMARK3, ACTIONID_PLAY_BOOKMARK4, ACTIONID_PLAY_BOOKMARK5,
  ACTIONID_PLAY_BOOKMARK6, ACTIONID_PLAY_BOOKMARK7, ACTIONID_PLAY_BOOKMARK8, ACTIONID_PLAY_BOOKMARK9,
  ACTIONID_PLAY_BOOKMARK10, ACTIONID_PLAY_CLEAR, ACTIONID_SUBDELAY_UP, ACTIONID_SUBDELAY_DOWN,
  ACTIONID_SUBSYNC_MARKAUDIO, ACTIONID_SUBSYNC_MARKSUB, ACTIONID_SUBSYNC_APPLY, ACTIONID_SUBSYNC_RESET,
  ACTIONID_SUBPOS_UP, ACTIONID_SUBPOS_DOWN, ACTIONID_AUDIO_TRACK, ACTIONID_SUBTITLE_REVERSE_TRACK,
  ACTIONID_SUBTITLE_TRACK, ACTIONID_SUBTITLE_TOGGLE, ACTIONID_SUBTITLE_TEXT_SCALE_NORMAL, ACTIONID_SUBTITLE_TEXT_SCALE_UP,
  ACTIONID_SUBTITLE_TEXT_SCALE_DOWN, ACTIONID_INTF_TOGGLE_FSC, ACTIONID_INTF_HIDE, ACTIONID_INTF_BOSS,
  ACTIONID_TITLE_PREV, ACTIONID_TITLE_NEXT, ACTIONID_CHAPTER_PREV, ACTIONID_CHAPTER_NEXT,
  ACTIONID_AUDIODELAY_UP, ACTIONID_AUDIODELAY_DOWN, ACTIONID_SNAPSHOT, ACTIONID_RECORD,
  ACTIONID_DISC_MENU, ACTIONID_ASPECT_RATIO, ACTIONID_CROP, ACTIONID_DEINTERLACE,
  ACTIONID_DEINTERLACE_MODE, ACTIONID_ZOOM, ACTIONID_UNZOOM, ACTIONID_CROP_TOP,
  ACTIONID_UNCROP_TOP, ACTIONID_CROP_LEFT, ACTIONID_UNCROP_LEFT, ACTIONID_CROP_BOTTOM,
  ACTIONID_UNCROP_BOTTOM, ACTIONID_CROP_RIGHT, ACTIONID_UNCROP_RIGHT, ACTIONID_RANDOM,
  ACTIONID_LOOP, ACTIONID_WALLPAPER, ACTIONID_LEAVE_FULLSCREEN, ACTIONID_ZOOM_QUARTER,
  ACTIONID_ZOOM_HALF, ACTIONID_ZOOM_ORIGINAL, ACTIONID_ZOOM_DOUBLE, ACTIONID_AUDIODEVICE_CYCLE,
  ACTIONID_TOGGLE_AUTOSCALE, ACTIONID_SCALE_UP, ACTIONID_SCALE_DOWN, ACTIONID_RATE_NORMAL,
  ACTIONID_RATE_SLOWER_FINE, ACTIONID_RATE_FASTER_FINE, ACTIONID_PROGRAM_SID_NEXT, ACTIONID_PROGRAM_SID_PREV,
  ACTIONID_INTF_POPUP_MENU, ACTIONID_VIEWPOINT_FOV_IN, ACTIONID_VIEWPOINT_FOV_OUT, ACTIONID_VIEWPOINT_ROLL_CLOCK,
  ACTIONID_VIEWPOINT_ROLL_ANTICLOCK, ACTIONID_COMBO_VOL_FOV_UP, ACTIONID_COMBO_VOL_FOV_DOWN
}
 

Functions

int libvlc_InternalActionsInit (libvlc_int_t *p_libvlc)
 Initializes the key map from configuration. More...
 
void libvlc_InternalActionsClean (libvlc_int_t *p_libvlc)
 Destroys the key map. More...
 
char * vlc_keycode2str (uint_fast32_t i_key, bool locale)
 Format a human-readable and unique representation of a VLC key code (including modifiers). More...
 
uint_fast32_t vlc_str2keycode (const char *str)
 Parse a human-readable string representation of a VLC key code. More...
 
vlc_action_id_t vlc_actions_get_id (const char *psz_key_name)
 Get the action ID from an action key name. More...
 
size_t vlc_actions_get_keycodes (vlc_object_t *p_obj, const char *psz_key_name, bool b_global, uint_fast32_t **pp_keycodes)
 Get keycodes from a action key name and vlc configuration. More...
 
const char *const * vlc_actions_get_key_names (vlc_object_t *p_obj)
 Get a list a key names. More...
 

Detailed Description

This file defines keys and functions

Macro Definition Documentation

◆ KEY_BACKSPACE

#define KEY_BACKSPACE   0x08

◆ KEY_BRIGHTNESS_DOWN

#define KEY_BRIGHTNESS_DOWN   0x00630000

◆ KEY_BRIGHTNESS_UP

#define KEY_BRIGHTNESS_UP   0x00620000

◆ KEY_BROWSER_BACK

#define KEY_BROWSER_BACK   0x003F0000

◆ KEY_BROWSER_FAVORITES

#define KEY_BROWSER_FAVORITES   0x00440000

◆ KEY_BROWSER_FORWARD

#define KEY_BROWSER_FORWARD   0x00400000

◆ KEY_BROWSER_HOME

#define KEY_BROWSER_HOME   0x00450000

◆ KEY_BROWSER_REFRESH

#define KEY_BROWSER_REFRESH   0x00410000

◆ KEY_BROWSER_SEARCH

#define KEY_BROWSER_SEARCH   0x00430000

◆ KEY_BROWSER_STOP

#define KEY_BROWSER_STOP   0x00420000

◆ KEY_DELETE

#define KEY_DELETE   0x00360000

◆ KEY_DOWN

#define KEY_DOWN   0x00240000

◆ KEY_END

#define KEY_END   0x00340000

◆ KEY_ENTER

#define KEY_ENTER   0x0D

◆ KEY_ESC

#define KEY_ESC   0x1B

◆ KEY_F1

#define KEY_F1   0x00270000

◆ KEY_F10

#define KEY_F10   0x00300000

◆ KEY_F11

#define KEY_F11   0x00310000

◆ KEY_F12

#define KEY_F12   0x00320000

◆ KEY_F2

#define KEY_F2   0x00280000

◆ KEY_F3

#define KEY_F3   0x00290000

◆ KEY_F4

#define KEY_F4   0x002A0000

◆ KEY_F5

#define KEY_F5   0x002B0000

◆ KEY_F6

#define KEY_F6   0x002C0000

◆ KEY_F7

#define KEY_F7   0x002D0000

◆ KEY_F8

#define KEY_F8   0x002E0000

◆ KEY_F9

#define KEY_F9   0x002F0000

◆ KEY_HOME

#define KEY_HOME   0x00330000

◆ KEY_INSERT

#define KEY_INSERT   0x00350000

◆ KEY_LEFT

#define KEY_LEFT   0x00210000

◆ KEY_MEDIA_ANGLE

#define KEY_MEDIA_ANGLE   0x00540000

◆ KEY_MEDIA_AUDIO

#define KEY_MEDIA_AUDIO   0x00530000

◆ KEY_MEDIA_FORWARD

#define KEY_MEDIA_FORWARD   0x004F0000

◆ KEY_MEDIA_FRAME_NEXT

#define KEY_MEDIA_FRAME_NEXT   0x00570000

◆ KEY_MEDIA_FRAME_PREV

#define KEY_MEDIA_FRAME_PREV   0x00560000

◆ KEY_MEDIA_MENU

#define KEY_MEDIA_MENU   0x005A0000

◆ KEY_MEDIA_NEXT_TRACK

#define KEY_MEDIA_NEXT_TRACK   0x00490000

◆ KEY_MEDIA_PLAY_PAUSE

#define KEY_MEDIA_PLAY_PAUSE   0x004C0000

◆ KEY_MEDIA_PREV_TRACK

#define KEY_MEDIA_PREV_TRACK   0x004A0000

◆ KEY_MEDIA_RECORD

#define KEY_MEDIA_RECORD   0x004D0000

◆ KEY_MEDIA_REPEAT

#define KEY_MEDIA_REPEAT   0x00500000

◆ KEY_MEDIA_REWIND

#define KEY_MEDIA_REWIND   0x004E0000

◆ KEY_MEDIA_SELECT

#define KEY_MEDIA_SELECT   0x00580000

◆ KEY_MEDIA_SHUFFLE

#define KEY_MEDIA_SHUFFLE   0x00510000

◆ KEY_MEDIA_STOP

#define KEY_MEDIA_STOP   0x004B0000

◆ KEY_MEDIA_SUBTITLE

#define KEY_MEDIA_SUBTITLE   0x00520000

◆ KEY_MEDIA_TIME

#define KEY_MEDIA_TIME   0x00550000

◆ KEY_MEDIA_VIEW

#define KEY_MEDIA_VIEW   0x00590000

◆ KEY_MENU

#define KEY_MENU   0x00370000

◆ KEY_MODIFIER

#define KEY_MODIFIER   0xFF000000

◆ KEY_MODIFIER_ALT

#define KEY_MODIFIER_ALT   0x01000000

◆ KEY_MODIFIER_COMMAND

#define KEY_MODIFIER_COMMAND   0x10000000

◆ KEY_MODIFIER_CTRL

#define KEY_MODIFIER_CTRL   0x04000000

◆ KEY_MODIFIER_META

#define KEY_MODIFIER_META   0x08000000

◆ KEY_MODIFIER_SHIFT

#define KEY_MODIFIER_SHIFT   0x02000000

◆ KEY_MOUSEWHEELDOWN

#define KEY_MOUSEWHEELDOWN   0x00F10000

◆ KEY_MOUSEWHEELLEFT

#define KEY_MOUSEWHEELLEFT   0x00F20000

◆ KEY_MOUSEWHEELRIGHT

#define KEY_MOUSEWHEELRIGHT   0x00F30000

◆ KEY_MOUSEWHEELUP

#define KEY_MOUSEWHEELUP   0x00F00000

◆ KEY_PAGEDOWN

#define KEY_PAGEDOWN   0x003A0000

◆ KEY_PAGEUP

#define KEY_PAGEUP   0x00390000

◆ KEY_PAUSE

#define KEY_PAUSE   0x003D0000

◆ KEY_PRINT

#define KEY_PRINT   0x003B0000

◆ KEY_RIGHT

#define KEY_RIGHT   0x00220000

◆ KEY_TAB

#define KEY_TAB   0x09

◆ KEY_UNSET

#define KEY_UNSET   0x00000000

◆ KEY_UP

#define KEY_UP   0x00230000

◆ KEY_VOLUME_DOWN

#define KEY_VOLUME_DOWN   0x00470000

◆ KEY_VOLUME_MUTE

#define KEY_VOLUME_MUTE   0x00460000

◆ KEY_VOLUME_UP

#define KEY_VOLUME_UP   0x00480000

◆ KEY_ZOOM_IN

#define KEY_ZOOM_IN   0x00600000

◆ KEY_ZOOM_OUT

#define KEY_ZOOM_OUT   0x00610000

◆ vlc_actions_get_key_names

#define vlc_actions_get_key_names (   x)    vlc_actions_get_key_names(VLC_OBJECT(x))

◆ vlc_actions_get_keycodes

#define vlc_actions_get_keycodes (   a,
  b,
  c,
 
)    vlc_actions_get_keycodes(VLC_OBJECT(a), b, c, d)

Typedef Documentation

◆ vlc_action_id_t

Enumeration Type Documentation

◆ vlc_action_id

Enumerator
ACTIONID_NONE 
ACTIONID_QUIT 
ACTIONID_PLAY_PAUSE 
ACTIONID_PLAY 
ACTIONID_PAUSE 
ACTIONID_STOP 
ACTIONID_PREV 
ACTIONID_NEXT 
ACTIONID_SLOWER 
ACTIONID_FASTER 
ACTIONID_TOGGLE_FULLSCREEN 
ACTIONID_VOL_UP 
ACTIONID_VOL_DOWN 
ACTIONID_NAV_ACTIVATE 
ACTIONID_NAV_UP 
ACTIONID_NAV_DOWN 
ACTIONID_NAV_LEFT 
ACTIONID_NAV_RIGHT 
ACTIONID_JUMP_BACKWARD_EXTRASHORT 
ACTIONID_JUMP_FORWARD_EXTRASHORT 
ACTIONID_JUMP_BACKWARD_SHORT 
ACTIONID_JUMP_FORWARD_SHORT 
ACTIONID_JUMP_BACKWARD_MEDIUM 
ACTIONID_JUMP_FORWARD_MEDIUM 
ACTIONID_JUMP_BACKWARD_LONG 
ACTIONID_JUMP_FORWARD_LONG 
ACTIONID_FRAME_NEXT 
ACTIONID_POSITION 
ACTIONID_VOL_MUTE 
ACTIONID_SET_BOOKMARK1 
ACTIONID_SET_BOOKMARK2 
ACTIONID_SET_BOOKMARK3 
ACTIONID_SET_BOOKMARK4 
ACTIONID_SET_BOOKMARK5 
ACTIONID_SET_BOOKMARK6 
ACTIONID_SET_BOOKMARK7 
ACTIONID_SET_BOOKMARK8 
ACTIONID_SET_BOOKMARK9 
ACTIONID_SET_BOOKMARK10 
ACTIONID_PLAY_BOOKMARK1 
ACTIONID_PLAY_BOOKMARK2 
ACTIONID_PLAY_BOOKMARK3 
ACTIONID_PLAY_BOOKMARK4 
ACTIONID_PLAY_BOOKMARK5 
ACTIONID_PLAY_BOOKMARK6 
ACTIONID_PLAY_BOOKMARK7 
ACTIONID_PLAY_BOOKMARK8 
ACTIONID_PLAY_BOOKMARK9 
ACTIONID_PLAY_BOOKMARK10 
ACTIONID_PLAY_CLEAR 
ACTIONID_SUBDELAY_UP 
ACTIONID_SUBDELAY_DOWN 
ACTIONID_SUBSYNC_MARKAUDIO 
ACTIONID_SUBSYNC_MARKSUB 
ACTIONID_SUBSYNC_APPLY 
ACTIONID_SUBSYNC_RESET 
ACTIONID_SUBPOS_UP 
ACTIONID_SUBPOS_DOWN 
ACTIONID_AUDIO_TRACK 
ACTIONID_SUBTITLE_REVERSE_TRACK 
ACTIONID_SUBTITLE_TRACK 
ACTIONID_SUBTITLE_TOGGLE 
ACTIONID_SUBTITLE_TEXT_SCALE_NORMAL 
ACTIONID_SUBTITLE_TEXT_SCALE_UP 
ACTIONID_SUBTITLE_TEXT_SCALE_DOWN 
ACTIONID_INTF_TOGGLE_FSC 
ACTIONID_INTF_HIDE 
ACTIONID_INTF_BOSS 
ACTIONID_TITLE_PREV 
ACTIONID_TITLE_NEXT 
ACTIONID_CHAPTER_PREV 
ACTIONID_CHAPTER_NEXT 
ACTIONID_AUDIODELAY_UP 
ACTIONID_AUDIODELAY_DOWN 
ACTIONID_SNAPSHOT 
ACTIONID_RECORD 
ACTIONID_DISC_MENU 
ACTIONID_ASPECT_RATIO 
ACTIONID_CROP 
ACTIONID_DEINTERLACE 
ACTIONID_DEINTERLACE_MODE 
ACTIONID_ZOOM 
ACTIONID_UNZOOM 
ACTIONID_CROP_TOP 
ACTIONID_UNCROP_TOP 
ACTIONID_CROP_LEFT 
ACTIONID_UNCROP_LEFT 
ACTIONID_CROP_BOTTOM 
ACTIONID_UNCROP_BOTTOM 
ACTIONID_CROP_RIGHT 
ACTIONID_UNCROP_RIGHT 
ACTIONID_RANDOM 
ACTIONID_LOOP 
ACTIONID_WALLPAPER 
ACTIONID_LEAVE_FULLSCREEN 
ACTIONID_ZOOM_QUARTER 
ACTIONID_ZOOM_HALF 
ACTIONID_ZOOM_ORIGINAL 
ACTIONID_ZOOM_DOUBLE 
ACTIONID_AUDIODEVICE_CYCLE 
ACTIONID_TOGGLE_AUTOSCALE 
ACTIONID_SCALE_UP 
ACTIONID_SCALE_DOWN 
ACTIONID_RATE_NORMAL 
ACTIONID_RATE_SLOWER_FINE 
ACTIONID_RATE_FASTER_FINE 
ACTIONID_PROGRAM_SID_NEXT 
ACTIONID_PROGRAM_SID_PREV 
ACTIONID_INTF_POPUP_MENU 
ACTIONID_VIEWPOINT_FOV_IN 
ACTIONID_VIEWPOINT_FOV_OUT 
ACTIONID_VIEWPOINT_ROLL_CLOCK 
ACTIONID_VIEWPOINT_ROLL_ANTICLOCK 
ACTIONID_COMBO_VOL_FOV_UP 
ACTIONID_COMBO_VOL_FOV_DOWN 

Function Documentation

◆ libvlc_InternalActionsClean()

void libvlc_InternalActionsClean ( libvlc_int_t p_libvlc)

◆ libvlc_InternalActionsInit()

int libvlc_InternalActionsInit ( libvlc_int_t p_libvlc)

◆ vlc_actions_get_id()

vlc_action_id_t vlc_actions_get_id ( const char *  name)

Get the action ID from an action key name.

Returns
the action ID or ACTIONID_NONE on error.

Get the action ID from an action key name.

Returns
the action ID or ACTIONID_NONE on error.

References actcmp(), ACTIONID_NONE, ACTIONS_COUNT, name2action::id, name, and s_names2actions.

◆ vlc_actions_get_key_names()

const char* const* vlc_actions_get_key_names ( vlc_object_t p_obj)

Get a list a key names.

Returns
A NULL terminated list of const char *

References libvlc_priv_t::actions, vlc_common_members::libvlc, libvlc_priv(), vlc_object_t::obj, and vlc_actions_t::ppsz_keys.

◆ vlc_actions_get_keycodes()

size_t vlc_actions_get_keycodes ( vlc_object_t p_obj,
const char *  psz_key_name,
bool  b_global,
uint_fast32_t **  pp_keycodes 
)

Get keycodes from a action key name and vlc configuration.

Returns
The number of keycodes for this action, or 0 in case of an error. The list needs to be released with free()

References strtok_r(), unlikely, var_InheritString, vlc_alloc(), and vlc_str2keycode().

◆ vlc_keycode2str()

char* vlc_keycode2str ( uint_fast32_t  code,
bool  locale 
)

Format a human-readable and unique representation of a VLC key code (including modifiers).

Parameters
codekey code to translate to a string
localetrue to get a localized string, false to get a C string suitable for 'vlcrc'
Returns
a heap-allocated string, or NULL on error.

References asprintf(), key_descriptor::i_code, KEY_MODIFIER, KEY_MODIFIER_ALT, KEY_MODIFIER_COMMAND, KEY_MODIFIER_CTRL, KEY_MODIFIER_META, KEY_MODIFIER_SHIFT, KEYS_COUNT, N_, name, nooptext(), key_descriptor::psz, s_keys, utf8_cp(), and vlc_gettext().

◆ vlc_str2keycode()

uint_fast32_t vlc_str2keycode ( const char *  name)

Parse a human-readable string representation of a VLC key code.

Note
This only works with the American English representation (a.k.a. C or POSIX), not with the local representation returned from vlc_keycode2str().
Returns
a VLC key code, or KEY_UNSET on failure.

References key_descriptor::i_code, KEY_MODIFIER_ALT, KEY_MODIFIER_COMMAND, KEY_MODIFIER_CTRL, KEY_MODIFIER_META, KEY_MODIFIER_SHIFT, KEY_UNSET, KEYS_COUNT, keystrcmp(), name, s_keys, and vlc_towc().

Referenced by init_action(), and vlc_actions_get_keycodes().