events-howto.txt
上传用户:riyaled888
上传日期:2009-03-27
资源大小:7338k
文件大小:7k
源码类别:

多媒体

开发平台:

MultiPlatform

  1. Before reading this document, you should first take a look at skins-howto.txt
  2. to understand the general functioning of VLC skins.
  3. What is an event ?
  4. ==================
  5. Events are the dynamic part of the skins. It means that beyond visual aspect,
  6. the interface must react with the user actions. An event describes a simple
  7. interaction, in fact one simple action such as playing a file, hiding a
  8. window...
  9. So when designing a skin you will have to specify what those interactions are.
  10. For this you will use simple actions that are described in event tags and you
  11. would be able to add them and associate them to controls.
  12. How to create an event ?
  13. ========================
  14. An event describes a simple action as seen above.
  15. All attributes are explained in the 'skins-howto.txt' file except the 'event'
  16. attribute wich is a bit special.
  17. In the 'event' attribute you will enter a simple script with the following
  18. syntax :
  19.   "EVENT(parameter1,parameter2,...)"
  20. The number of parameters depends on EVENT.
  21. All this is case sensitive.
  22. Don't add spaces.
  23. EVENT is the action to execute, it can be one of the following:
  24.  - VLC_NOTHING:
  25.    Action    : none, it executes nothing so don't use it !
  26.    Parameters: none.
  27.  - VLC_SHOW:
  28.    Action    : Open all windows of the interface with a fading effect if
  29.                selected.
  30.    Parameters: none.
  31.  - VLC_HIDE:
  32.    Action    : Close all windows of the interface with a fading effect if
  33.                selected.
  34.    Parameters:
  35.      - First 1 is an EVENT to execute when all windows have been closed.
  36.  - VLC_QUIT:
  37.    Action    : Quit the interface
  38.    Parameters: none.
  39.  - VLC_OPEN:
  40.    Action    : Open an "open file dialog box" to open a file to play.
  41.    Parameters: none.
  42.  - VLC_LOAD_SKIN:
  43.    Action    : Open an "open file dialog box" to change the current skin.
  44.    Parameters: none.
  45.  - VLC_ON_TOP:
  46.    Action    : Toggle the "Always on top" status
  47.    Parameters: none.
  48.  - VLC_LOG_SHOW:
  49.    Not supported yet
  50.  - VLC_LOG_CLEAR:
  51.    Not supported yet.
  52.  - VLC_INTF_REFRESH:
  53.    Action    : Force refreshing of the interface.
  54.    Parameters: none.
  55.  - VLC_CHANGE_TRAY:
  56.    Action    : if VLC is not visible in system tray, show it, else hide it.
  57.    Parameters: none.
  58.  - VLC_CHANGE_TASKBAR:
  59.    Action    : if VLC is not visible in taskbar, show it, else hide it.
  60.    Parameters: none.
  61.  - VLC_FULLSCREEN:
  62.    Action    : switch current playlist item to fullscreen mode.
  63.    Parameters: none.
  64.  - VLC_PLAY:
  65.    Action    : play the stream.
  66.    Parameters: none.
  67.  - VLC_STOP:
  68.    Action    : stop the stream.
  69.    Parameters: none.
  70.  - VLC_PAUSE:
  71.    Action    : pause the stream.
  72.    Parameters: none.
  73.  - VLC_NEXT:
  74.    Action    : go to the next file in the playlist.
  75.    Parameters: none.
  76.  - VLC_PREV:
  77.    Action    : go to the previous file in the playlist.
  78.    Parameters: none.
  79.  - VLC_SLOWER:
  80.    Action    : play the stream slower.
  81.    Parameters: none.
  82.  - VLC_FASTER:
  83.    Action    : play the stream faster.
  84.    Parameters: none.
  85.  - VLC_STREAMPOS:
  86.    Not supported yet.
  87.  - VLC_VOLUME_CHANGE:
  88.    Action    : change sound volume.
  89.    Parameters:
  90.      1: - VLC_VOLUME_MUTE: switch to mute mode.
  91.         - VLC_VOLUME_UP: raise sounds volume.
  92.         - VLC_VOLUME_DOWN:
  93.         - VLC_VOLUME_SET: set sound volume to second parameter
  94.      2: if first parameter is VLC_VOLUME_SET only, an integer between 0 and 100.
  95.  - VLC_PLAYLIST_ADD_FILE:
  96.    Action    : Open an "open file dialog box" to add files to playlist.
  97.    Parameters: none.
  98.  - VLC_WINDOW_MOVE:
  99.    Action    : initiate manual window movement.
  100.    Parameters: only one which must match the ID of a window. It should be
  101.                used with image controls.
  102.  - VLC_WINDOW_OPEN:
  103.    Action    : open a window with a fading effect if selected.
  104.    Parameters:
  105.      1: ID of the window to open.
  106.      2: Describe what to do. Nothing is opening. 'TRUE' is the same. 'FALSE' is
  107.         closing window. 'CHANGE' is switching between these two states.
  108.  - VLC_WINDOW_CLOSE:
  109.    Action    : close a window with a fading effect if selected.
  110.    Parameters:
  111.      1: ID of the window to close.
  112.      2: Describe what to do. Nothing is closing. 'TRUE' is the same. 'FALSE' is
  113.         opening window. 'CHANGE' is switching between these two states.
  114.  - CTRL_SET_SLIDER:
  115.    Not supported yet.
  116.  - CTRL_SET_TEXT:
  117.    Not supported yet.
  118.  - CTRL_ID_VISIBLE:
  119.    Action    : hide/show a control.
  120.    Parameters:
  121.      1: ID of the control to hide/show.
  122.      2: Describe what to do. Nothing is showing control. 'TRUE' is the same.
  123.         'FALSE' is hiding control. 'CHANGE' is switching between these two
  124.         states.
  125.  - CTRL_ID_ENABLED:
  126.    Not supported yet.
  127.  - CTRL_ID_MOVE:
  128.    Action    : moves a control.
  129.    Parameters:
  130.      1: ID of the control to move.
  131.      2: horizontal offset of movement.
  132.      3: vertical offset of movement.
  133.  - PLAYLIST_ID_DEL:
  134.    Action    : remove items from playlist.
  135.    Parameters:
  136.      1: ID of the playlist.
  137. What to do with events ?
  138. =======================
  139. When creating your event, you must assign an ID to each of them.
  140. Now you have to associate events with controls.
  141. Some attributes of some controls are supposed to be filled with those IDs. That
  142. is to say that when the action corresponding to the attribute will be done,
  143. the event associated will be executed. The best exemple is assigning an event
  144. to the 'onclick' attribute of a button control. The event will be executed when
  145. clicking on the button.
  146. You can execute several events. To do this you just have to separate them with
  147. semicolon.
  148. Exemple:
  149.   <ButtonControl [...] onclick="event1;event2;event3"/>
  150. Do I have to create every event for each skin ?
  151. ===============================================
  152. No, a set of predefined events are present. Here they are with their ID and
  153. shortcut.
  154.   ID           Shortcut     Description
  155.   tray                      Hide or show in the system tray.
  156.   taskbar      CTRL+B       Hide or show in the taskbar.
  157.   play         X            Play.
  158.   pause        C            Pause.
  159.   stop         V            Stop.
  160.   next         B            Next file.
  161.   prev         Z            Previous file.
  162.   slow                      Play slower.
  163.   fast                      Play faster.
  164.   fullscreen   F            Switch to fullscreen mode.
  165.   mute                      Mute the sound.
  166.   volume_up
  167.   volume_down
  168.   quit         CTRL+C       Quit VLC.
  169.   open         CTRL+O       Open a file.
  170.   add_file     CTRL+A       Add a file.
  171.   load_skin    CTRL+S       Change skin.
  172.   on_top       CTRL+T       Toggle the "Always on top" status
  173.   show_prefs                Show the preferences dialog box.
  174.   show_info                 Show the FileInfo dialog box.
  175.   show_log                  Show the Messages dialog box.
  176.   hide_log                  Hide the Messages dialog box.