GXINE KEYBINDINGS TINY-HOWTO
----------------------------

To edit gxine's vdr keybindings:

1. Select Keybindings from the File menu
2. Click on the New button, or select an existing keybinding and click
   the "Edit" button.
3. Enter a Description, e.g. "Red"
4. Enter the Command, e.g."vdr('RED');"
5. Enter the Accelerator Key to bind it to, e.g. "r"

Here is the list of VDR-specific commands that can be bound to keys:

  AUDIO
  BACK
  BLUE
  CHANNELMINUS
  CHANNELPLUS
  CHANNELS
  COMMANDS
  FASTFWD
  FASTREW
  GREEN
  MUTE
  PAUSE
  PLAY
  POWER
  RECORD
  RECORDINGS
  RED
  SCHEDULE
  SETUP
  STOP
  TIMERS
  USER1
  USER2
  USER3
  USER4
  USER5
  USER6
  USER7
  USER8
  USER9
  VOLMINUS
  VOLPLUS
  YELLOW

Most of these are already in the default gxine keybindings.

Other gxine commands can be found by running gxine_client and typing
"help();" or "event();".

Here's a list, correct as of 5 April 2007:

Available commands (gxine Javascript interface):

  Engine control:
    exit ()
    callback (Javascript)
    play ([mrl] [, pos, time])  /* time in milliseconds */
    get_time ()  /* stream time index */
    get_pos ()  /* stream position (%) */
    has_time ()  /* whether the stream has a time index */
    pause ([bool])
    stop ()
    eject ()
    play_pause ([bool])
    snapshot ([file name [, scale, blend]])
    set_vis (string)  /* visualisation name */
    event         /* stream_end=JS */

  Dialogue boxes:
    js_console_show ()
    about_show ()
    startup_cmds_show ()
    log_show ()
    preferences_show ()
    playlist_show ()
    settings_show ()
    settings_revert ()
    settings_reset ()
    settings_clear ()
    mm_add_show ()
    mm_manage_show ()
    keybindings_show ()
    keypad_show ()
    deinterlace_show ()
    postproc_video_show ()
    postproc_audio_show ()
    stream_info_show ([bool])

  Playlist control:
    playlist_clear ()
    playlist_flush ()
    playlist_load (file)
    playlist_add (MRL[, title])
    playlist_delete (int)
    playlist_play (int)  /* playlist entry number */
    playlist_get_item ()

  File access:
    open_show ()
    open_mrl_show ()
    import_mediamarks ()

  Properties:
    xine_cfg_get ()
    xine_cfg_set ()
    set_video_size (int)
    is_live_stream ()
    vo_zoom.x     /* v=int, min, max; video zoom (within window) */
    vo_zoom.y     /* v=int, min, max; video zoom (within window) */
    vo_fullscreen.sticky          /* v=bool, toggle(); forced stickiness in full-screen mode */
    toolbar.fs.at_top     /* v=bool, toggle(): full-screen toolbar position */
    toolbar.wm.snap       /* v=bool, toggle(): windowed-mode toolbar attachment */
    toolbar.fs    /* v=bool, toggle(): full-screen toolbar visibility */
    toolbar.wm    /* v=bool, toggle(): windowed-mode toolbar visibility */
    playlist.repeat       /* v=bool, toggle() */
    playlist.repeat_track         /* v=bool, toggle() */
    playlist.random       /* v=bool, toggle() */
    av_speed      /* v=int, min, max; playback speed */
    vo_aspect     /* v=int; aspect ratio */
    vo_subtitle   /* v=int, min, max; subtitle channel */
    vo_zoom       /* v=int, min, max; video zoom (within window) */
    ao_mute       /* v=bool, toggle(): audio mute */
    vo_auto_resize        /* v=bool, toggle(): auto-resize video on frame shape change */
    vo_auto_rescale       /* v=bool, toggle(): double size of low-resolution video */
    vo_fullscreen         /* v=bool, toggle(): full-screen mode */
    vo_deinterlace        /* v=bool, toggle(): enable deinterlacing */
    ao_postproc   /* v=bool, toggle(): audio post-processing; chain=string: plugin chain */
    vo_postproc   /* v=bool, toggle(): video post-processing; chain=string: plugin chain */
    wm_unblank    /* v=bool, toggle(): unblanking in windowed mode */
    toolbar
    ao_volume     /* v=int, min, max; revert(), reset() */
    ao_compressor         /* v=int, min, max; revert(), reset() */
    ao_amplifier          /* v=int, min, max; revert(), reset() */
    av_sync       /* v=int, min, max; revert(), reset() */
    spu_sync      /* v=int, min, max; revert(), reset() */
    vo_hue        /* v=int, min, max; revert(), reset() */
    vo_saturation         /* v=int, min, max; revert(), reset() */
    vo_contrast   /* v=int, min, max; revert(), reset() */
    vo_brightness         /* v=int, min, max; revert(), reset() */
    vo_gamma      /* v=int, min, max; revert(), reset() */
    eq_30         /* v=int, min, max; revert(), reset() */
    eq_60         /* v=int, min, max; revert(), reset() */
    eq_125        /* v=int, min, max; revert(), reset() */
    eq_250        /* v=int, min, max; revert(), reset() */
    eq_500        /* v=int, min, max; revert(), reset() */
    eq_1K         /* v=int, min, max; revert(), reset() */
    eq_2K         /* v=int, min, max; revert(), reset() */
    eq_4K         /* v=int, min, max; revert(), reset() */
    eq_8K         /* v=int, min, max; revert(), reset() */
    eq_16K        /* v=int, min, max; revert(), reset() */
    playlist

  Input event generation (DVD menus etc.):
    input_up ()
    input_down ()
    input_left ()
    input_right ()
    input_select ()
    input_menu (int)  /* range is 1 to 7 */
    input_menu1 ()
    input_menu2 ()
    input_menu3 ()
    input_previous ()
    input_next ()
    event (string)  /* event; returns true if sent */

  External program support:
    vdr (string)  /* VDR event; returns true if sent */


Events

  LEFT
  MENU1
  MENU2
  MENU3
  MENU4
  MENU5
  MENU6
  MENU7
  NEXT
  NUMBER_0
  NUMBER_1
  NUMBER_10_ADD
  NUMBER_2
  NUMBER_3
  NUMBER_4
  NUMBER_5
  NUMBER_6
  NUMBER_7
  NUMBER_8
  NUMBER_9
  PREVIOUS
  RIGHT
  SELECT
  UP
  0
  1
  10
  2
  3
  4
  5
  6
  7
  8
  9
  -


VDR events

VDR_*
  AUDIO
  BACK
  BLUE
  CHANNELMINUS
  CHANNELPLUS
  CHANNELPREV
  CHANNELS
  COMMANDS
  FASTFWD
  FASTREW
  GREEN
  INFO
  MUTE
  PAUSE
  PLAY
  POWER
  RECORD
  RECORDINGS
  RED
  SCHEDULE
  SETUP
  STOP
  TIMERS
  USER1
  USER2
  USER3
  USER4
  USER5
  USER6
  USER7
  USER8
  USER9
  VOLMINUS
  VOLPLUS
  YELLOW

INPUT_*:
  ANGLE_NEXT
  ANGLE_PREVIOUS
  DOWN
  LEFT
  MENU1
  MENU2
  MENU3
  MENU4
  MENU5
  MENU6
  MENU7
  NEXT
  NUMBER_0
  NUMBER_1
  NUMBER_10_ADD
  NUMBER_2
  NUMBER_3
  NUMBER_4
  NUMBER_5
  NUMBER_6
  NUMBER_7
  NUMBER_8
  NUMBER_9
  PREVIOUS
  RIGHT
  SELECT
  UP
  0
  1
  10
  2
  3
  4
  5
  6
  7
  8
  9
  -
