1 Before reading this document, you should first take a look at skins-howto.txt
2 to understand the general functioning of VLC skins.
7 Events are the dynamic part of the skins. It means that beyond visual aspect,
8 the interface must react with the user actions. An event describes a simple
9 interaction, in fact one simple action such as playing a file, hiding a
11 So when designing a skin you will have to specify what those interactions are.
12 For this you will use simple actions that are described in event tags and you
13 would be able to add them and associate them to controls.
15 How to create an event ?
16 ========================
18 An event describes a simple action as seen above.
19 All attributes are explained in the 'skins-howto.txt' file except the 'event'
20 attribute which is a bit special.
21 In the 'event' attribute you will enter a simple script with the following
23 "EVENT(parameter1,parameter2,...)"
25 The number of parameters depends on EVENT.
26 All this is case sensitive.
28 EVENT is the action to execute, it can be one of the following:
31 Action : none, it executes nothing so don't use it !
35 Action : Open all windows of the interface with a fading effect if
40 Action : Close all windows of the interface with a fading effect if
43 - First 1 is an EVENT to execute when all windows have been closed.
46 Action : Quit the interface
50 Action : Open an "open file dialog box" to open a file to play.
54 Action : Open an "open file dialog box" to change the current skin.
58 Action : Toggle the "Always on top" status
68 Action : Force refreshing of the interface.
72 Action : if VLC is not visible in system tray, show it, else hide it.
76 Action : if VLC is not visible in taskbar, show it, else hide it.
80 Action : switch current playlist item to fullscreen mode.
84 Action : play the stream.
88 Action : stop the stream.
92 Action : pause the stream.
96 Action : go to the next file in the playlist.
100 Action : go to the previous file in the playlist.
104 Action : play the stream slower.
108 Action : play the stream faster.
115 Action : change sound volume.
117 1: - VLC_VOLUME_MUTE: switch to mute mode.
118 - VLC_VOLUME_UP: raise sounds volume.
120 - VLC_VOLUME_SET: set sound volume to second parameter
121 2: if first parameter is VLC_VOLUME_SET only, an integer between 0 and 100.
123 - VLC_PLAYLIST_ADD_FILE:
124 Action : Open an "open file dialog box" to add files to playlist.
128 Action : initiate manual window movement.
129 Parameters: only one which must match the ID of a window. It should be
130 used with image controls.
133 Action : open a window with a fading effect if selected.
135 1: ID of the window to open.
136 2: Describe what to do. Nothing is opening. 'TRUE' is the same. 'FALSE' is
137 closing window. 'CHANGE' is switching between these two states.
140 Action : close a window with a fading effect if selected.
142 1: ID of the window to close.
143 2: Describe what to do. Nothing is closing. 'TRUE' is the same. 'FALSE' is
144 opening window. 'CHANGE' is switching between these two states.
153 Action : hide/show a control.
155 1: ID of the control to hide/show.
156 2: Describe what to do. Nothing is showing control. 'TRUE' is the same.
157 'FALSE' is hiding control. 'CHANGE' is switching between these two
164 Action : moves a control.
166 1: ID of the control to move.
167 2: horizontal offset of movement.
168 3: vertical offset of movement.
171 Action : remove items from playlist.
173 1: ID of the playlist.
176 What to do with events ?
177 =======================
179 When creating your event, you must assign an ID to each of them.
180 Now you have to associate events with controls.
181 Some attributes of some controls are supposed to be filled with those IDs. That
182 is to say that when the action corresponding to the attribute will be done,
183 the event associated will be executed. The best example is assigning an event
184 to the 'onclick' attribute of a button control. The event will be executed when
185 clicking on the button.
186 You can execute several events. To do this you just have to separate them with
189 <ButtonControl [...] onclick="event1;event2;event3"/>
192 Do I have to create every event for each skin ?
193 ===============================================
195 No, a set of predefined events are present. Here they are with their ID and
198 ID Shortcut Description
200 tray Hide or show in the system tray.
201 taskbar CTRL+B Hide or show in the taskbar.
206 prev Z Previous file.
209 fullscreen F Switch to fullscreen mode.
213 quit CTRL+C Quit VLC.
214 open CTRL+O Open a file.
215 add_file CTRL+A Add a file.
216 load_skin CTRL+S Change skin.
217 on_top CTRL+T Toggle the "Always on top" status
218 show_prefs Show the preferences dialog box.
219 show_info Show the FileInfo dialog box.
220 show_log Show the Messages dialog box.
221 hide_log Hide the Messages dialog box.