2
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
3
"http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">
4
<refentry id="RBPlaylistManager">
6
<refentrytitle role="top_of_page" id="RBPlaylistManager.top_of_page">RBPlaylistManager</refentrytitle>
7
<manvolnum>3</manvolnum>
8
<refmiscinfo>RHYTHMBOX Library</refmiscinfo>
12
<refname>RBPlaylistManager</refname>
13
<refpurpose>Playlist management object</refpurpose>
16
<refsynopsisdiv id="RBPlaylistManager.synopsis" role="synopsis">
17
<title role="synopsis.title">Synopsis</title>
20
<link linkend="RBPlaylistManager-struct">RBPlaylistManager</link>;
21
<link linkend="RBPlaylistManagerClass">RBPlaylistManagerClass</link>;
22
enum <link linkend="RBPlaylistManagerError">RBPlaylistManagerError</link>;
23
<link linkend="RBPlaylistManager">RBPlaylistManager</link> * <link linkend="rb-playlist-manager-new">rb_playlist_manager_new</link> (<link linkend="RBShell">RBShell</link> *shell,
24
<link linkend="RBSourceList">RBSourceList</link> *sourcelist,
25
const <link linkend="char">char</link> *playlists_file);
26
<link linkend="void">void</link> <link linkend="rb-playlist-manager-shutdown">rb_playlist_manager_shutdown</link> (<link linkend="RBPlaylistManager">RBPlaylistManager</link> *mgr);
27
<link linkend="gboolean">gboolean</link> <link linkend="rb-playlist-manager-parse-file">rb_playlist_manager_parse_file</link> (<link linkend="RBPlaylistManager">RBPlaylistManager</link> *mgr,
28
const <link linkend="char">char</link> *uri,
29
<link linkend="GError">GError</link> **error);
30
<link linkend="void">void</link> <link linkend="rb-playlist-manager-load-playlists">rb_playlist_manager_load_playlists</link> (<link linkend="RBPlaylistManager">RBPlaylistManager</link> *mgr);
31
<link linkend="gboolean">gboolean</link> <link linkend="rb-playlist-manager-save-playlists">rb_playlist_manager_save_playlists</link> (<link linkend="RBPlaylistManager">RBPlaylistManager</link> *mgr,
32
<link linkend="gboolean">gboolean</link> force);
33
<link linkend="RBSource">RBSource</link> * <link linkend="rb-playlist-manager-new-playlist">rb_playlist_manager_new_playlist</link> (<link linkend="RBPlaylistManager">RBPlaylistManager</link> *mgr,
34
const <link linkend="char">char</link> *suggested_name,
35
<link linkend="gboolean">gboolean</link> automatic);
36
<link linkend="RBSource">RBSource</link> * <link linkend="rb-playlist-manager-new-playlist-from-selection-data">rb_playlist_manager_new_playlist_from_selection_data</link>
37
(<link linkend="RBPlaylistManager">RBPlaylistManager</link> *mgr,
38
<link linkend="GtkSelectionData">GtkSelectionData</link> *data);
39
<link linkend="GList">GList</link> * <link linkend="rb-playlist-manager-get-playlists">rb_playlist_manager_get_playlists</link> (<link linkend="RBPlaylistManager">RBPlaylistManager</link> *mgr);
40
<link linkend="gboolean">gboolean</link> <link linkend="rb-playlist-manager-get-playlist-names">rb_playlist_manager_get_playlist_names</link>
41
(<link linkend="RBPlaylistManager">RBPlaylistManager</link> *mgr,
42
<link linkend="gchar">gchar</link> ***playlists,
43
<link linkend="GError">GError</link> **error);
44
<link linkend="gboolean">gboolean</link> <link linkend="rb-playlist-manager-create-static-playlist">rb_playlist_manager_create_static_playlist</link>
45
(<link linkend="RBPlaylistManager">RBPlaylistManager</link> *mgr,
46
const <link linkend="gchar">gchar</link> *name,
47
<link linkend="GError">GError</link> **error);
48
<link linkend="gboolean">gboolean</link> <link linkend="rb-playlist-manager-delete-playlist">rb_playlist_manager_delete_playlist</link> (<link linkend="RBPlaylistManager">RBPlaylistManager</link> *mgr,
49
const <link linkend="gchar">gchar</link> *name,
50
<link linkend="GError">GError</link> **error);
51
<link linkend="gboolean">gboolean</link> <link linkend="rb-playlist-manager-add-to-playlist">rb_playlist_manager_add_to_playlist</link> (<link linkend="RBPlaylistManager">RBPlaylistManager</link> *mgr,
52
const <link linkend="gchar">gchar</link> *name,
53
const <link linkend="gchar">gchar</link> *uri,
54
<link linkend="GError">GError</link> **error);
55
<link linkend="gboolean">gboolean</link> <link linkend="rb-playlist-manager-remove-from-playlist">rb_playlist_manager_remove_from_playlist</link>
56
(<link linkend="RBPlaylistManager">RBPlaylistManager</link> *mgr,
57
const <link linkend="gchar">gchar</link> *name,
58
const <link linkend="gchar">gchar</link> *uri,
59
<link linkend="GError">GError</link> **error);
60
<link linkend="gboolean">gboolean</link> <link linkend="rb-playlist-manager-export-playlist">rb_playlist_manager_export_playlist</link> (<link linkend="RBPlaylistManager">RBPlaylistManager</link> *mgr,
61
const <link linkend="gchar">gchar</link> *name,
62
const <link linkend="gchar">gchar</link> *uri,
63
<link linkend="gboolean">gboolean</link> m3u_format,
64
<link linkend="GError">GError</link> **error);
68
<refsect1 id="RBPlaylistManager.object-hierarchy" role="object_hierarchy">
69
<title role="object_hierarchy.title">Object Hierarchy</title>
71
<link linkend="GObject">GObject</link>
72
+----RBPlaylistManager
80
<refsect1 id="RBPlaylistManager.properties" role="properties">
81
<title role="properties.title">Properties</title>
83
"<link linkend="RBPlaylistManager--playlists-file">playlists-file</link>" <link linkend="gchar">gchar</link>* : Read / Write
84
"<link linkend="RBPlaylistManager--shell">shell</link>" <link linkend="RBShell">RBShell</link>* : Read / Write
85
"<link linkend="RBPlaylistManager--source">source</link>" <link linkend="RBSource">RBSource</link>* : Read / Write
86
"<link linkend="RBPlaylistManager--sourcelist">sourcelist</link>" <link linkend="RBSourceList">RBSourceList</link>* : Read / Write / Construct Only
90
<refsect1 id="RBPlaylistManager.signals" role="signal_proto">
91
<title role="signal_proto.title">Signals</title>
93
"<link linkend="RBPlaylistManager-load-finish">load-finish</link>" : Run Last
94
"<link linkend="RBPlaylistManager-load-start">load-start</link>" : Run Last
95
"<link linkend="RBPlaylistManager-playlist-added">playlist-added</link>" : Run Last
96
"<link linkend="RBPlaylistManager-playlist-created">playlist-created</link>" : Run Last
101
<refsect1 id="RBPlaylistManager.description" role="desc">
102
<title role="desc.title">Description</title>
104
The playlist manager loads and saves the on-disk playlist file, provides
105
UI actions and a DBus interface for dealing with playlists, and internal
106
interfaces for creating playlists.</para>
111
<refsect1 id="RBPlaylistManager.details" role="details">
112
<title role="details.title">Details</title>
113
<refsect2 id="RBPlaylistManager-struct" role="struct">
114
<title>RBPlaylistManager</title>
115
<indexterm zone="RBPlaylistManager-struct"><primary sortas="RBPlaylistManager">RBPlaylistManager</primary></indexterm><programlisting>typedef struct _RBPlaylistManager RBPlaylistManager;</programlisting>
118
<refsect2 id="RBPlaylistManagerClass" role="struct">
119
<title>RBPlaylistManagerClass</title>
120
<indexterm zone="RBPlaylistManagerClass"><primary sortas="RBPlaylistManagerClass">RBPlaylistManagerClass</primary></indexterm><programlisting>typedef struct {
121
GObjectClass parent_class;
124
void (*playlist_added) (RBPlaylistManager *manager, RBSource *source);
125
void (*playlist_created) (RBPlaylistManager *manager, RBSource *source);
126
void (*load_start) (RBPlaylistManager *manager);
127
void (*load_finish) (RBPlaylistManager *manager);
128
} RBPlaylistManagerClass;
132
<refsect2 id="RBPlaylistManagerError" role="enum">
133
<title>enum RBPlaylistManagerError</title>
134
<indexterm zone="RBPlaylistManagerError"><primary sortas="RBPlaylistManagerError">RBPlaylistManagerError</primary></indexterm><programlisting>typedef enum
136
RB_PLAYLIST_MANAGER_ERROR_PARSE,
137
RB_PLAYLIST_MANAGER_ERROR_PLAYLIST_EXISTS,
138
RB_PLAYLIST_MANAGER_ERROR_PLAYLIST_NOT_FOUND
139
} RBPlaylistManagerError;
143
<refsect2 id="rb-playlist-manager-new" role="function">
144
<title>rb_playlist_manager_new ()</title>
145
<indexterm zone="rb-playlist-manager-new"><primary sortas="rb_playlist_manager_new">rb_playlist_manager_new</primary></indexterm><programlisting><link linkend="RBPlaylistManager">RBPlaylistManager</link> * rb_playlist_manager_new (<link linkend="RBShell">RBShell</link> *shell,
146
<link linkend="RBSourceList">RBSourceList</link> *sourcelist,
147
const <link linkend="char">char</link> *playlists_file);</programlisting>
149
Creates the <link linkend="RBPlaylistManager"><type>RBPlaylistManager</type></link> instance</para>
151
</para><variablelist role="params">
152
<varlistentry><term><parameter>shell</parameter> :</term>
153
<listitem><simpara> the <link linkend="RBShell"><type>RBShell</type></link>
154
</simpara></listitem></varlistentry>
155
<varlistentry><term><parameter>sourcelist</parameter> :</term>
156
<listitem><simpara> the <link linkend="RBSourceList"><type>RBSourceList</type></link>
157
</simpara></listitem></varlistentry>
158
<varlistentry><term><parameter>playlists_file</parameter> :</term>
159
<listitem><simpara> the full path to the playlist file to load
160
</simpara></listitem></varlistentry>
161
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> the <link linkend="RBPlaylistManager"><type>RBPlaylistManager</type></link>
162
</simpara></listitem></varlistentry>
163
</variablelist></refsect2>
164
<refsect2 id="rb-playlist-manager-shutdown" role="function">
165
<title>rb_playlist_manager_shutdown ()</title>
166
<indexterm zone="rb-playlist-manager-shutdown"><primary sortas="rb_playlist_manager_shutdown">rb_playlist_manager_shutdown</primary></indexterm><programlisting><link linkend="void">void</link> rb_playlist_manager_shutdown (<link linkend="RBPlaylistManager">RBPlaylistManager</link> *mgr);</programlisting>
168
Shuts down the playlist manager, making sure any outstanding playlist save
169
operation finishes.</para>
171
</para><variablelist role="params">
172
<varlistentry><term><parameter>mgr</parameter> :</term>
173
<listitem><simpara> the <link linkend="RBPlaylistManager"><type>RBPlaylistManager</type></link>
174
</simpara></listitem></varlistentry>
175
</variablelist></refsect2>
176
<refsect2 id="rb-playlist-manager-parse-file" role="function">
177
<title>rb_playlist_manager_parse_file ()</title>
178
<indexterm zone="rb-playlist-manager-parse-file"><primary sortas="rb_playlist_manager_parse_file">rb_playlist_manager_parse_file</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> rb_playlist_manager_parse_file (<link linkend="RBPlaylistManager">RBPlaylistManager</link> *mgr,
179
const <link linkend="char">char</link> *uri,
180
<link linkend="GError">GError</link> **error);</programlisting>
182
Parses a playlist file, adding entries to the database and to a new
183
static playlist. If the playlist file includes a title, the static
184
playlist created will have the same title.</para>
186
</para><variablelist role="params">
187
<varlistentry><term><parameter>mgr</parameter> :</term>
188
<listitem><simpara> the <link linkend="RBPlaylistManager"><type>RBPlaylistManager</type></link>
189
</simpara></listitem></varlistentry>
190
<varlistentry><term><parameter>uri</parameter> :</term>
191
<listitem><simpara> URI of the playlist to load
192
</simpara></listitem></varlistentry>
193
<varlistentry><term><parameter>error</parameter> :</term>
194
<listitem><simpara> returns a GError in case of error
195
</simpara></listitem></varlistentry>
196
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> TRUE on success
197
</simpara></listitem></varlistentry>
198
</variablelist></refsect2>
199
<refsect2 id="rb-playlist-manager-load-playlists" role="function">
200
<title>rb_playlist_manager_load_playlists ()</title>
201
<indexterm zone="rb-playlist-manager-load-playlists"><primary sortas="rb_playlist_manager_load_playlists">rb_playlist_manager_load_playlists</primary></indexterm><programlisting><link linkend="void">void</link> rb_playlist_manager_load_playlists (<link linkend="RBPlaylistManager">RBPlaylistManager</link> *mgr);</programlisting>
203
Loads the user's playlists, or if the playlist file does not exists,
204
reads the default playlist file. Should be called only once on startup.</para>
206
</para><variablelist role="params">
207
<varlistentry><term><parameter>mgr</parameter> :</term>
208
<listitem><simpara> the <link linkend="RBPlaylistManager"><type>RBPlaylistManager</type></link>
209
</simpara></listitem></varlistentry>
210
</variablelist></refsect2>
211
<refsect2 id="rb-playlist-manager-save-playlists" role="function">
212
<title>rb_playlist_manager_save_playlists ()</title>
213
<indexterm zone="rb-playlist-manager-save-playlists"><primary sortas="rb_playlist_manager_save_playlists">rb_playlist_manager_save_playlists</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> rb_playlist_manager_save_playlists (<link linkend="RBPlaylistManager">RBPlaylistManager</link> *mgr,
214
<link linkend="gboolean">gboolean</link> force);</programlisting>
216
Saves the user's playlists. If the force flag is
217
TRUE, the playlists will always be saved. Otherwise, the playlists
218
will only be saved if a playlist has been created, modified, or deleted
219
since the last time the playlists were saved, and no save operation is
220
currently taking place.</para>
222
</para><variablelist role="params">
223
<varlistentry><term><parameter>mgr</parameter> :</term>
224
<listitem><simpara> the <link linkend="RBPlaylistManager"><type>RBPlaylistManager</type></link>
225
</simpara></listitem></varlistentry>
226
<varlistentry><term><parameter>force</parameter> :</term>
227
<listitem><simpara> if TRUE, save playlists synchronously and unconditionally
228
</simpara></listitem></varlistentry>
229
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> TRUE if a playlist save operation has been started
230
</simpara></listitem></varlistentry>
231
</variablelist></refsect2>
232
<refsect2 id="rb-playlist-manager-new-playlist" role="function">
233
<title>rb_playlist_manager_new_playlist ()</title>
234
<indexterm zone="rb-playlist-manager-new-playlist"><primary sortas="rb_playlist_manager_new_playlist">rb_playlist_manager_new_playlist</primary></indexterm><programlisting><link linkend="RBSource">RBSource</link> * rb_playlist_manager_new_playlist (<link linkend="RBPlaylistManager">RBPlaylistManager</link> *mgr,
235
const <link linkend="char">char</link> *suggested_name,
236
<link linkend="gboolean">gboolean</link> automatic);</programlisting>
238
Creates a new playlist and adds it to the source list.</para>
240
</para><variablelist role="params">
241
<varlistentry><term><parameter>mgr</parameter> :</term>
242
<listitem><simpara> the <link linkend="RBPlaylistManager"><type>RBPlaylistManager</type></link>
243
</simpara></listitem></varlistentry>
244
<varlistentry><term><parameter>suggested_name</parameter> :</term>
245
<listitem><simpara> optional name to use for the new playlist
246
</simpara></listitem></varlistentry>
247
<varlistentry><term><parameter>automatic</parameter> :</term>
248
<listitem><simpara> if TRUE, create an auto playlist
249
</simpara></listitem></varlistentry>
250
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> the new playlist object.
251
</simpara></listitem></varlistentry>
252
</variablelist></refsect2>
253
<refsect2 id="rb-playlist-manager-new-playlist-from-selection-data" role="function">
254
<title>rb_playlist_manager_new_playlist_from_selection_data ()</title>
255
<indexterm zone="rb-playlist-manager-new-playlist-from-selection-data"><primary sortas="rb_playlist_manager_new_playlist_from_selection_data">rb_playlist_manager_new_playlist_from_selection_data</primary></indexterm><programlisting><link linkend="RBSource">RBSource</link> * rb_playlist_manager_new_playlist_from_selection_data
256
(<link linkend="RBPlaylistManager">RBPlaylistManager</link> *mgr,
257
<link linkend="GtkSelectionData">GtkSelectionData</link> *data);</programlisting>
259
Creates a new playlist based on selection data from gtk.
260
Used to implement playlist creation through drag and drop
261
to the source list.</para>
263
</para><variablelist role="params">
264
<varlistentry><term><parameter>mgr</parameter> :</term>
265
<listitem><simpara> the <link linkend="RBPlaylistManager"><type>RBPlaylistManager</type></link>
266
</simpara></listitem></varlistentry>
267
<varlistentry><term><parameter>data</parameter> :</term>
268
<listitem><simpara> the <link linkend="GtkSelectionData"><type>GtkSelectionData</type></link> from which to create a playlist
269
</simpara></listitem></varlistentry>
270
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> the new playlist.
271
</simpara></listitem></varlistentry>
272
</variablelist></refsect2>
273
<refsect2 id="rb-playlist-manager-get-playlists" role="function">
274
<title>rb_playlist_manager_get_playlists ()</title>
275
<indexterm zone="rb-playlist-manager-get-playlists"><primary sortas="rb_playlist_manager_get_playlists">rb_playlist_manager_get_playlists</primary></indexterm><programlisting><link linkend="GList">GList</link> * rb_playlist_manager_get_playlists (<link linkend="RBPlaylistManager">RBPlaylistManager</link> *mgr);</programlisting>
277
Returns a <link linkend="GList"><type>GList</type></link> containing all local playlist source objects.</para>
279
</para><variablelist role="params">
280
<varlistentry><term><parameter>mgr</parameter> :</term>
281
<listitem><simpara> the <link linkend="RBPlaylistManager"><type>RBPlaylistManager</type></link>
282
</simpara></listitem></varlistentry>
283
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> list of playlists
284
</simpara></listitem></varlistentry>
285
</variablelist></refsect2>
286
<refsect2 id="rb-playlist-manager-get-playlist-names" role="function">
287
<title>rb_playlist_manager_get_playlist_names ()</title>
288
<indexterm zone="rb-playlist-manager-get-playlist-names"><primary sortas="rb_playlist_manager_get_playlist_names">rb_playlist_manager_get_playlist_names</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> rb_playlist_manager_get_playlist_names
289
(<link linkend="RBPlaylistManager">RBPlaylistManager</link> *mgr,
290
<link linkend="gchar">gchar</link> ***playlists,
291
<link linkend="GError">GError</link> **error);</programlisting>
293
Allocates and returns an array containing the names of all local
294
playlists. This is part of the playlist manager dbus interface.</para>
296
</para><variablelist role="params">
297
<varlistentry><term><parameter>mgr</parameter> :</term>
298
<listitem><simpara> the <link linkend="RBPlaylistManager"><type>RBPlaylistManager</type></link>
299
</simpara></listitem></varlistentry>
300
<varlistentry><term><parameter>playlists</parameter> :</term>
301
<listitem><simpara> holds the array of playlist names on reutrn
302
</simpara></listitem></varlistentry>
303
<varlistentry><term><parameter>error</parameter> :</term>
304
<listitem><simpara> holds a <link linkend="GError"><type>GError</type></link> on return on failure
305
</simpara></listitem></varlistentry>
306
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> TRUE if successful.
307
</simpara></listitem></varlistentry>
308
</variablelist></refsect2>
309
<refsect2 id="rb-playlist-manager-create-static-playlist" role="function">
310
<title>rb_playlist_manager_create_static_playlist ()</title>
311
<indexterm zone="rb-playlist-manager-create-static-playlist"><primary sortas="rb_playlist_manager_create_static_playlist">rb_playlist_manager_create_static_playlist</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> rb_playlist_manager_create_static_playlist
312
(<link linkend="RBPlaylistManager">RBPlaylistManager</link> *mgr,
313
const <link linkend="gchar">gchar</link> *name,
314
<link linkend="GError">GError</link> **error);</programlisting>
316
Creates a new static playlist source with the given name.
317
Will fail if a playlist with that name already exists.
318
This is part of the playlist manager dbus interface.</para>
320
</para><variablelist role="params">
321
<varlistentry><term><parameter>mgr</parameter> :</term>
322
<listitem><simpara> the <link linkend="RBPlaylistManager"><type>RBPlaylistManager</type></link>
323
</simpara></listitem></varlistentry>
324
<varlistentry><term><parameter>name</parameter> :</term>
325
<listitem><simpara> name of the new playlist
326
</simpara></listitem></varlistentry>
327
<varlistentry><term><parameter>error</parameter> :</term>
328
<listitem><simpara> holds a <link linkend="GError"><type>GError</type></link> on return on failure
329
</simpara></listitem></varlistentry>
330
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> TRUE if successful.
331
</simpara></listitem></varlistentry>
332
</variablelist></refsect2>
333
<refsect2 id="rb-playlist-manager-delete-playlist" role="function">
334
<title>rb_playlist_manager_delete_playlist ()</title>
335
<indexterm zone="rb-playlist-manager-delete-playlist"><primary sortas="rb_playlist_manager_delete_playlist">rb_playlist_manager_delete_playlist</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> rb_playlist_manager_delete_playlist (<link linkend="RBPlaylistManager">RBPlaylistManager</link> *mgr,
336
const <link linkend="gchar">gchar</link> *name,
337
<link linkend="GError">GError</link> **error);</programlisting>
339
Deletes the specified playlist. Will fail if no playlist with
340
that name exists. This is part of the playlist manager dbus interface.</para>
342
</para><variablelist role="params">
343
<varlistentry><term><parameter>mgr</parameter> :</term>
344
<listitem><simpara> the <link linkend="RBPlaylistManager"><type>RBPlaylistManager</type></link>
345
</simpara></listitem></varlistentry>
346
<varlistentry><term><parameter>name</parameter> :</term>
347
<listitem><simpara> name of the playlist to delete
348
</simpara></listitem></varlistentry>
349
<varlistentry><term><parameter>error</parameter> :</term>
350
<listitem><simpara> holds a <link linkend="GError"><type>GError</type></link> on return on failure
351
</simpara></listitem></varlistentry>
352
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> TRUE if successful.
353
</simpara></listitem></varlistentry>
354
</variablelist></refsect2>
355
<refsect2 id="rb-playlist-manager-add-to-playlist" role="function">
356
<title>rb_playlist_manager_add_to_playlist ()</title>
357
<indexterm zone="rb-playlist-manager-add-to-playlist"><primary sortas="rb_playlist_manager_add_to_playlist">rb_playlist_manager_add_to_playlist</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> rb_playlist_manager_add_to_playlist (<link linkend="RBPlaylistManager">RBPlaylistManager</link> *mgr,
358
const <link linkend="gchar">gchar</link> *name,
359
const <link linkend="gchar">gchar</link> *uri,
360
<link linkend="GError">GError</link> **error);</programlisting>
362
Adds an entry to the specified playlist.
363
Fails if no playlist with that name exists.
364
This is part of the playlist manager dbus interface.</para>
366
</para><variablelist role="params">
367
<varlistentry><term><parameter>mgr</parameter> :</term>
368
<listitem><simpara> the <link linkend="RBPlaylistManager"><type>RBPlaylistManager</type></link>
369
</simpara></listitem></varlistentry>
370
<varlistentry><term><parameter>name</parameter> :</term>
371
<listitem><simpara> name of the playlist to add to
372
</simpara></listitem></varlistentry>
373
<varlistentry><term><parameter>uri</parameter> :</term>
374
<listitem><simpara> URI of the entry to add to the playlist
375
</simpara></listitem></varlistentry>
376
<varlistentry><term><parameter>error</parameter> :</term>
377
<listitem><simpara> holds a <link linkend="GError"><type>GError</type></link> on return on failure
378
</simpara></listitem></varlistentry>
379
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> TRUE if successful.
380
</simpara></listitem></varlistentry>
381
</variablelist></refsect2>
382
<refsect2 id="rb-playlist-manager-remove-from-playlist" role="function">
383
<title>rb_playlist_manager_remove_from_playlist ()</title>
384
<indexterm zone="rb-playlist-manager-remove-from-playlist"><primary sortas="rb_playlist_manager_remove_from_playlist">rb_playlist_manager_remove_from_playlist</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> rb_playlist_manager_remove_from_playlist
385
(<link linkend="RBPlaylistManager">RBPlaylistManager</link> *mgr,
386
const <link linkend="gchar">gchar</link> *name,
387
const <link linkend="gchar">gchar</link> *uri,
388
<link linkend="GError">GError</link> **error);</programlisting>
390
Removes an entry from the specified playlist.
391
Fails if no playlist with that name exists.
392
This is part of the playlist manager dbus interface.</para>
394
</para><variablelist role="params">
395
<varlistentry><term><parameter>mgr</parameter> :</term>
396
<listitem><simpara> the <link linkend="RBPlaylistManager"><type>RBPlaylistManager</type></link>
397
</simpara></listitem></varlistentry>
398
<varlistentry><term><parameter>name</parameter> :</term>
399
<listitem><simpara> name of the playlist to remove from
400
</simpara></listitem></varlistentry>
401
<varlistentry><term><parameter>uri</parameter> :</term>
402
<listitem><simpara> URI of the entry to remove from the playlist
403
</simpara></listitem></varlistentry>
404
<varlistentry><term><parameter>error</parameter> :</term>
405
<listitem><simpara> holds a <link linkend="GError"><type>GError</type></link> on return on failure
406
</simpara></listitem></varlistentry>
407
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> TRUE if successful.
408
</simpara></listitem></varlistentry>
409
</variablelist></refsect2>
410
<refsect2 id="rb-playlist-manager-export-playlist" role="function">
411
<title>rb_playlist_manager_export_playlist ()</title>
412
<indexterm zone="rb-playlist-manager-export-playlist"><primary sortas="rb_playlist_manager_export_playlist">rb_playlist_manager_export_playlist</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> rb_playlist_manager_export_playlist (<link linkend="RBPlaylistManager">RBPlaylistManager</link> *mgr,
413
const <link linkend="gchar">gchar</link> *name,
414
const <link linkend="gchar">gchar</link> *uri,
415
<link linkend="gboolean">gboolean</link> m3u_format,
416
<link linkend="GError">GError</link> **error);</programlisting>
418
Saves the specified playlist to a file in either M3U or PLS format.
419
This is part of the playlist manager dbus interface.</para>
421
</para><variablelist role="params">
422
<varlistentry><term><parameter>mgr</parameter> :</term>
423
<listitem><simpara> the <link linkend="RBPlaylistManager"><type>RBPlaylistManager</type></link>
424
</simpara></listitem></varlistentry>
425
<varlistentry><term><parameter>name</parameter> :</term>
426
<listitem><simpara> name of the playlist to export
427
</simpara></listitem></varlistentry>
428
<varlistentry><term><parameter>uri</parameter> :</term>
429
<listitem><simpara> playlist save location
430
</simpara></listitem></varlistentry>
431
<varlistentry><term><parameter>m3u_format</parameter> :</term>
432
<listitem><simpara> if TRUE, save in M3U format, otherwise save in PLS format
433
</simpara></listitem></varlistentry>
434
<varlistentry><term><parameter>error</parameter> :</term>
435
<listitem><simpara> holds a <link linkend="GError"><type>GError</type></link> on return on failure
436
</simpara></listitem></varlistentry>
437
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> TRUE if successful.
438
</simpara></listitem></varlistentry>
439
</variablelist></refsect2>
442
<refsect1 id="RBPlaylistManager.property-details" role="property_details">
443
<title role="property_details.title">Property Details</title>
444
<refsect2 id="RBPlaylistManager--playlists-file" role="property"><title>The <literal>"playlists-file"</literal> property</title>
445
<indexterm zone="RBPlaylistManager--playlists-file"><primary sortas="RBPlaylistManager:playlists-file">RBPlaylistManager:playlists-file</primary></indexterm><programlisting> "playlists-file" <link linkend="gchar">gchar</link>* : Read / Write</programlisting>
446
<para>playlists file.</para><para>Default value: NULL</para>
448
<refsect2 id="RBPlaylistManager--shell" role="property"><title>The <literal>"shell"</literal> property</title>
449
<indexterm zone="RBPlaylistManager--shell"><primary sortas="RBPlaylistManager:shell">RBPlaylistManager:shell</primary></indexterm><programlisting> "shell" <link linkend="RBShell">RBShell</link>* : Read / Write</programlisting>
450
<para>RBShell object.</para></refsect2>
451
<refsect2 id="RBPlaylistManager--source" role="property"><title>The <literal>"source"</literal> property</title>
452
<indexterm zone="RBPlaylistManager--source"><primary sortas="RBPlaylistManager:source">RBPlaylistManager:source</primary></indexterm><programlisting> "source" <link linkend="RBSource">RBSource</link>* : Read / Write</programlisting>
453
<para>RBSource object.</para></refsect2>
454
<refsect2 id="RBPlaylistManager--sourcelist" role="property"><title>The <literal>"sourcelist"</literal> property</title>
455
<indexterm zone="RBPlaylistManager--sourcelist"><primary sortas="RBPlaylistManager:sourcelist">RBPlaylistManager:sourcelist</primary></indexterm><programlisting> "sourcelist" <link linkend="RBSourceList">RBSourceList</link>* : Read / Write / Construct Only</programlisting>
456
<para>RBSourceList.</para></refsect2>
459
<refsect1 id="RBPlaylistManager.signal-details" role="signals">
460
<title role="signals.title">Signal Details</title>
461
<refsect2 id="RBPlaylistManager-load-finish" role="signal"><title>The <literal>"load-finish"</literal> signal</title>
462
<indexterm zone="RBPlaylistManager-load-finish"><primary sortas="RBPlaylistManager::load-finish">RBPlaylistManager::load-finish</primary></indexterm><programlisting><link linkend="void">void</link> user_function (<link linkend="RBPlaylistManager">RBPlaylistManager</link> *manager,
463
<link linkend="gpointer">gpointer</link> user_data) : Run Last</programlisting>
465
Emitted when the playlist manager finishes loading the user's
466
playlist file.</para>
468
</para><variablelist role="params">
469
<varlistentry><term><parameter>manager</parameter> :</term>
470
<listitem><simpara> the <link linkend="RBPlaylistManager"><type>RBPlaylistManager</type></link>
471
</simpara></listitem></varlistentry>
472
<varlistentry><term><parameter>user_data</parameter> :</term>
473
<listitem><simpara>user data set when the signal handler was connected.</simpara></listitem></varlistentry>
474
</variablelist></refsect2><refsect2 id="RBPlaylistManager-load-start" role="signal"><title>The <literal>"load-start"</literal> signal</title>
475
<indexterm zone="RBPlaylistManager-load-start"><primary sortas="RBPlaylistManager::load-start">RBPlaylistManager::load-start</primary></indexterm><programlisting><link linkend="void">void</link> user_function (<link linkend="RBPlaylistManager">RBPlaylistManager</link> *manager,
476
<link linkend="gpointer">gpointer</link> user_data) : Run Last</programlisting>
478
Emitted when the playlist manager starts loading the user's
479
playlist file.</para>
481
</para><variablelist role="params">
482
<varlistentry><term><parameter>manager</parameter> :</term>
483
<listitem><simpara> the <link linkend="RBPlaylistManager"><type>RBPlaylistManager</type></link>
484
</simpara></listitem></varlistentry>
485
<varlistentry><term><parameter>user_data</parameter> :</term>
486
<listitem><simpara>user data set when the signal handler was connected.</simpara></listitem></varlistentry>
487
</variablelist></refsect2><refsect2 id="RBPlaylistManager-playlist-added" role="signal"><title>The <literal>"playlist-added"</literal> signal</title>
488
<indexterm zone="RBPlaylistManager-playlist-added"><primary sortas="RBPlaylistManager::playlist-added">RBPlaylistManager::playlist-added</primary></indexterm><programlisting><link linkend="void">void</link> user_function (<link linkend="RBPlaylistManager">RBPlaylistManager</link> *manager,
489
<link linkend="GObject">GObject</link> *source,
490
<link linkend="gpointer">gpointer</link> user_data) : Run Last</programlisting>
492
Emitted when a playlist is added, including when being loaded
493
from the user's playlist file.</para>
495
</para><variablelist role="params">
496
<varlistentry><term><parameter>manager</parameter> :</term>
497
<listitem><simpara> the <link linkend="RBPlaylistManager"><type>RBPlaylistManager</type></link>
498
</simpara></listitem></varlistentry>
499
<varlistentry><term><parameter>source</parameter> :</term>
500
<listitem><simpara> the new <link linkend="RBSource"><type>RBSource</type></link>
501
</simpara></listitem></varlistentry>
502
<varlistentry><term><parameter>user_data</parameter> :</term>
503
<listitem><simpara>user data set when the signal handler was connected.</simpara></listitem></varlistentry>
504
</variablelist></refsect2><refsect2 id="RBPlaylistManager-playlist-created" role="signal"><title>The <literal>"playlist-created"</literal> signal</title>
505
<indexterm zone="RBPlaylistManager-playlist-created"><primary sortas="RBPlaylistManager::playlist-created">RBPlaylistManager::playlist-created</primary></indexterm><programlisting><link linkend="void">void</link> user_function (<link linkend="RBPlaylistManager">RBPlaylistManager</link> *manager,
506
<link linkend="GObject">GObject</link> *source,
507
<link linkend="gpointer">gpointer</link> user_data) : Run Last</programlisting>
509
Emitted when a new playlist is created.</para>
511
</para><variablelist role="params">
512
<varlistentry><term><parameter>manager</parameter> :</term>
513
<listitem><simpara> the <link linkend="RBPlaylistManager"><type>RBPlaylistManager</type></link>
514
</simpara></listitem></varlistentry>
515
<varlistentry><term><parameter>source</parameter> :</term>
516
<listitem><simpara> the newly created playlist <link linkend="RBSource"><type>RBSource</type></link>
517
</simpara></listitem></varlistentry>
518
<varlistentry><term><parameter>user_data</parameter> :</term>
519
<listitem><simpara>user data set when the signal handler was connected.</simpara></listitem></varlistentry>
520
</variablelist></refsect2>