3 [CCode (cname="TRUE",cheader_filename="gtk/gtk.h,gtktransition.h")]
4 static const bool use_transition;
6 [CCode (cname="browsers_metadata")]
7 static Gmpc.Browsers.Metadata browsers_metadata;
9 [CCode (cname="tag2_browser_update_orientation")]
10 static void tag2_browser_update_orientation();
12 [CCode (cname="paned_size_group", cheader_filename="plugin.h")]
13 static PanedSizeGroup paned_size_group;
15 [CCode (cname = "gmpcconn", cheader_filename="main.h")]
16 static Connection gmpcconn;
18 [CCode (cname = "connection", cheader_filename="plugin.h")]
19 static MPD.Server server;
21 [CCode (cname = "gmw", cheader_filename="main.h")]
22 static Meta.Watcher metawatcher;
24 [CCode (cname = "gmpc_profiles", cheader_filename="plugin.h")]
25 static Profiles profiles;
27 [CCode (cname = "gmpc_easy_command", cheader_filename="plugin.h")]
28 static Easy.Command easy_command;
30 [CCode (cname = "playlist", cheader_filename="main.h")]
31 static Gmpc.MpdData.ModelPlaylist playlist;
34 [CCode (cheader_filename="metadata.h")]
36 [CCode (cname="MetaDataContentType", cprefix = "META_DATA_CONTENT_", cheader_filename = "libmpd/libmpd.h,metadata.h")]
37 public enum ContentType {
47 [CCode (cname="MetaData",free_function="meta_data_free",copy_function="meta_data_dup",has_type_id = false)]
50 [CCode (cname="meta_data_new")]
52 public Gmpc.MetaData.Type type;
53 [CCode (cname="meta_data_dup")]
54 public static Item copy(Item item);
55 [CCode (cname="meta_data_dup")]
59 public unowned string plugin_name;
61 public void * content;
62 [CCode (array_length = false)]
63 public uchar[] md5sum;
64 public Gmpc.MetaData.ContentType content_type;
66 [CCode (cname="meta_data_is_empty")]
67 public bool is_empty();
71 [CCode (cname="meta_data_get_raw")]
72 public unowned uchar[] get_raw();
73 [CCode (cname="meta_data_set_raw")]
74 public void set_raw(uchar[] data);
75 [CCode (cname="meta_data_set_raw_owned")]
76 public void set_raw_void(ref void *data,ref uint length);
78 [CCode (cname="meta_data_get_text")]
79 public unowned string get_text();
80 [CCode (cname="meta_data_set_text")]
81 public void set_text(string data);
83 [CCode (cname="meta_data_get_text_from_html")]
84 public string get_text_from_html();
85 /* same as get_text */
87 [CCode (cname="meta_data_get_uri")]
88 public unowned string? get_uri();
89 [CCode (cname="meta_data_set_uri")]
90 public void set_uri(string uri);
91 [CCode (cname="meta_data_get_thumbnail_uri")]
92 public unowned string? get_thumbnail_uri();
93 [CCode (cname="meta_data_set_thumbnail_uri")]
94 public void set_thumbnail_uri(string uri);
96 [CCode (cname="meta_data_get_html")]
97 public unowned string get_html();
99 [CCode (cname="meta_data_get_text_vector")]
100 public unowned string[] get_text_vector();
102 [CCode (cname="meta_data_get_text_list")]
103 public unowned GLib.List<unowned string> get_text_list();
105 [CCode (cname="meta_data_is_text_list")]
106 public bool is_text_list();
107 [CCode (cname="meta_data_dup_steal")]
108 public MetaData.Item dup_steal();
112 [CCode (cname="MetaDataType", cprefix = "META_", cheader_filename = "metadata.h", has_type_id = false)]
122 SONG_GUITAR_TAB = 256,
124 QUERY_DATA_TYPES = 65535,
125 QUERY_NO_CACHE = 65536
128 [CCode (cname="MetaDataResult", cprefix = "META_DATA_", cheader_filename = "metadata.h", has_type_id = false)]
135 [CCode (cname="meta_data_get_path")]
136 public MetaData.Result get_path(MPD.Song song, Type type, out MetaData.Item item, Callback? callback=null);
138 public delegate void Callback (void *handle,string? plugin_name, GLib.List<MetaData.Item>? list);
139 [CCode ( cname="metadata_get_list", cheader_filename="libmpd/libmpd.h,metadata.h" )]
140 public void* get_list(MPD.Song song, Type type, Callback callback);
142 [CCode ( cname="metadata_get_list_cancel", cheader_filename="metadata.h" )]
143 public void* get_list_cancel(void *handle);
146 [CCode ( cname="meta_data_set_entry", cheader_filename="metadata.h")]
147 public void set_metadata(MPD.Song song, Gmpc.MetaData.Item met);
149 [CCode ( cname="gmpc_get_metadata_filename", cheader_filename="libmpd/libmpd.h,metadata.h")]
150 public string get_metadata_filename(Type type, MPD.Song song, string? extension);
152 [CCode ( cname="GmpcMetaImage", cheader_filename="gmpc-metaimage.h")]
153 public class Image: Gtk.Widget {
155 [CCode (cname="gmpc_metaimage_new_size")]
156 public Image(Type type, int size);
157 [CCode (cname="gmpc_metaimage_update_cover_from_song")]
158 public void update_from_song(MPD.Song song);
160 [CCode (cname="gmpc_metaimage_update_cover_from_song_delayed")]
161 public void update_from_song_delayed(MPD.Song song);
162 [CCode (cname="gmpc_metaimage_set_squared")]
163 public void set_squared(bool squared);
164 [CCode (cname="gmpc_metaimage_set_hide_on_na")]
165 public void set_hide_on_na(bool hide);
166 [CCode (cname="gmpc_metaimage_set_no_cover_icon")]
167 public void set_no_cover_icon(string name);
168 [CCode (cname="gmpc_metaimage_set_loading_cover_icon")]
169 public void set_loading_cover_icon(string name);
171 [CCode (cname="gmpc_metaimage_set_cover_na")]
172 public void set_cover_na();
173 [CCode (cname="gmpc_metaimage_set_scale_up")]
174 public void set_scale_up(bool scale);
176 [CCode (cname="gmpc_metaimage_set_dirty")]
177 public void set_dirty();
180 [CCode ( cname="GmpcMetaTextView", cheader_filename="gmpc-meta-text-view.h")]
181 public class TextView: Gtk.TextView {
182 public bool use_monospace;
183 [CCode (cname="gmpc_meta_text_view_new")]
184 public TextView(Type type);
185 [CCode (cname="gmpc_meta_text_view_query_text_from_song")]
186 public void query_from_song(MPD.Song song);
187 public bool force_ro;
193 [CCode (cprefix = "ERROR_", cheader_filename = "playlist3-messages.h")]
200 [CCode (cname = "playlist3_show_error_message", cheader_filename="playlist3-messages.h")]
201 void show(string message, Gmpc.Messages.Level level);
203 [CCode (cname = "playlist3_error_add_widget", cheader_filename="playlist3-messages.h")]
204 void add_widget(Gtk.Widget widget);
207 namespace AsyncDownload {
208 [CCode (cname="GEADStatus",cprefix = "GEAD_", cheader_filename = "gmpc_easy_download.h")]
216 [CCode (cname="GEADAsyncHandler", cheader_filename="gmpc_easy_download.h",ref_function="", unref_function ="")]
219 public class Handle {
220 [CCode (cname="gmpc_easy_async_cancel", cheader_filename="gmpc_easy_download.h")]
221 public void cancel ();
222 /* Gets raw data. Remember data_length does not include trailing \0. */
223 [CCode (cname="gmpc_easy_handler_get_data_vala_wrap", cheader_filename="gmpc_easy_download.h")]
224 public unowned uchar[] get_data();
226 [CCode (cname="gmpc_easy_handler_get_data_as_string", cheader_filename="gmpc_easy_download.h")]
227 public unowned string get_data_as_string();
229 [CCode (cname="gmpc_easy_handler_get_uri", cheader_filename="gmpc_easy_download.h")]
230 public unowned string get_uri();
232 [CCode (cname="gmpc_easy_handler_get_user_data", cheader_filename="gmpc_easy_download.h")]
233 public void * get_user_data();
235 [CCode (cname="gmpc_easy_handler_set_user_data", cheader_filename="gmpc_easy_download.h")]
236 public void set_user_data(void *user_data);
238 [CCode (cname="gmpc_easy_handler_get_content_size", cheader_filename="gmpc_easy_download.h")]
239 public int64 get_content_size();
243 public delegate void Callback (Gmpc.AsyncDownload.Handle handle, Gmpc.AsyncDownload.Status status);
244 public delegate void CallbackVala (Gmpc.AsyncDownload.Handle handle, Gmpc.AsyncDownload.Status status, void *p);
246 [CCode (cname="gmpc_easy_async_downloader_vala", cheader_filename="gmpc_easy_download.h")]
247 public unowned Gmpc.AsyncDownload.Handle download_vala(string uri, void *p,Gmpc.AsyncDownload.CallbackVala callback);
248 [CCode (cname="gmpc_easy_async_downloader", cheader_filename="gmpc_easy_download.h")]
249 public unowned Gmpc.AsyncDownload.Handle download(string uri, Gmpc.AsyncDownload.Callback callback);
251 [CCode (cname="gmpc_easy_download_uri_escape", cheader_filename="gmpc_easy_download.h")]
252 public string escape_uri(string part);
255 [CCode (cname="gmpc_get_full_glade_path", cheader_filename="plugin.h")]
256 public string data_path(string file);
257 [CCode (cname="gmpc_get_user_path", cheader_filename="plugin.h")]
258 public string user_path(string file);
259 [CCode (cname="open_uri", cheader_filename="misc.h")]
260 public void open_uri(string uri);
261 [CCode (cname="open_help", cheader_filename="misc.h")]
262 public void open_help(string uri);
265 [CCode (cname="Pl3CatBrowserType", cprefix="PL3_CAT_BROWSER_", cheader_filename="plugin.h")]
266 public enum BrowserType{
272 [CCode (cname="(GtkWindow *)playlist3_get_window", cheader_filename="plugin.h")]
273 public unowned Gtk.Window get_window();
274 [CCode (cname="playlist3_window_is_hidden", cheader_filename="plugin.h")]
275 public bool is_hidden();
277 [CCode (cname="pl3_hide", cheader_filename="plugin.h")]
280 [CCode (cname="create_playlist3", cheader_filename="plugin.h")]
282 [CCode (cname="playlist3_get_accel_group", cheader_filename="playlist3.h")]
283 public unowned Gtk.AccelGroup get_accel_group();
285 [CCode (cname="playlist3_get_widget_by_id", cheader_filename="playlist3.h")]
286 public Gtk.Widget get_widget_by_id(string id);
288 [CCode (cname="playlist3_get_sidebar_state", cheader_filename="plugin.h")]
289 public Gmpc.Plugin.SidebarState get_sidebar_state();
292 namespace TrayIcon2 {
293 [CCode (cname="trayicon2_toggle_use_appindicator", cheader_filename="tray-icon2.h")]
294 public void toggle_use_appindicator();
296 [CCode (cname="trayicon2_have_appindicator_support", cheader_filename="tray-icon2.h")]
297 public bool have_appindicator_support();
300 [CCode (cname = "config", cheader_filename="plugin.h")]
301 static Settings config;
302 [CCode (cheader_filename="config1.h",cname="config_obj", free_function="cfg_close")]
305 public class Settings {
306 [CCode (cname="cfg_open", cheader_filename="config1.h")]
307 public Settings.from_file(string file);
308 [CCode (cname="cfg_get_single_value_as_string_with_default", cheader_filename="config1.h")]
309 public string get_string_with_default(string class, string key, string value);
310 [CCode (cname="cfg_get_single_value_as_string", cheader_filename="config1.h")]
311 public string? get_string(string @class, string key);
312 [CCode (cname="cfg_get_single_value_as_int_with_default", cheader_filename="config1.h")]
313 public int get_int_with_default(string class, string key, int value);
314 [CCode (cname="cfg_get_single_value_as_int", cheader_filename="config1.h")]
315 public int get_int(string @class, string key);
316 [CCode (cname="cfg_get_single_value_as_int", cheader_filename="config1.h")]
317 public bool get_bool(string @class, string key);
318 [CCode (cname="cfg_get_single_value_as_int_with_default", cheader_filename="config1.h")]
319 public bool get_bool_with_default(string @class, string key, bool value);
320 [CCode (cname="cfg_set_single_value_as_string", cheader_filename="config1.h")]
321 public void set_string(string @class, string key, string @value);
322 [CCode (cname="cfg_set_single_value_as_int", cheader_filename="config1.h")]
323 public int set_int(string class, string key, int value);
324 [CCode (cname="cfg_set_single_value_as_int", cheader_filename="config1.h")]
325 public int set_bool(string @class, string key, bool @value);
326 [CCode (cname="cfg_get_class_list", cheader_filename="config1.h")]
327 public SettingsList get_class_list();
328 [CCode (cname="cfg_remove_class", cheader_filename="config1.h")]
329 public void remove_class(string key);
332 [CCode (cheader_filename="config1.h", cname="conf_mult_obj", free_function="cfg_free_multiple")]
335 public class SettingsList {
337 public string @value;
338 public SettingsList next;
339 public unowned SettingsList prev;
343 [CCode (cname="colorshift_pixbuf",cheader_filename="misc.h")]
344 public void colorshift_pixbuf(Gdk.Pixbuf dest, Gdk.Pixbuf src, int shift);
346 [CCode (cname="darken_pixbuf",cheader_filename="misc.h")]
347 public void darken_pixbuf(Gdk.Pixbuf dest, uint factor = 1);
348 [CCode (cname="decolor_pixbuf",cheader_filename="misc.h")]
349 public void decolor_pixbuf(Gdk.Pixbuf dest, Gdk.Pixbuf src);
350 [CCode (cname="screenshot_add_border",cheader_filename="misc.h")]
351 public void border_pixbuf (Gdk.Pixbuf buf);
352 [CCode (cname="misc_header_expose_event",cheader_filename="misc.h")]
353 public bool misc_header_expose_event(Gtk.Widget widget, Cairo.Context ct);
356 [CCode (cname="format_time_real", cheader_filename="misc.h")]
357 public string format_time(ulong seconds, string pre="");
358 [CCode (cname="format_time_real_newline", cheader_filename="misc.h")]
359 public string format_time_newline(ulong seconds, string pre="");
362 [CCode (cname="mpd_song_checksum",cheader_filename="misc.h")]
363 public string? song_checksum(MPD.Song? song);
364 [CCode (cname="mpd_song_checksum_type",cheader_filename="misc.h")]
365 public string? song_checksum_type(MPD.Song? song, Gmpc.MetaData.Type type);
370 [CCode (cname="playlist3_insert_browser")]
371 public void insert(out Gtk.TreeIter iter, int position);
374 [CCode (cname="pl3_file_browser_open_path")]
375 public void open_path(string path);
379 [CCode (cname="pl3_find2_ec_database")]
380 public void query_database(void *user_data, string query);
384 [CCode (cname="info2_activate")]
386 [CCode (cname="info2_fill_song_view")]
387 public void show_song(MPD.Song song);
388 [CCode (cname="info2_fill_artist_view")]
389 public void show_artist(string artist);
391 [CCode (cname="info2_fill_album_view")]
392 public void show_album(string artist,string album);
394 namespace PlaylistEditor {
397 public delegate void Callback (Gtk.MenuItem item);
398 [CCode (cname="playlist_editor_right_mouse")]
399 public void right_mouse(Gtk.Menu menu, Callback cb);
403 namespace Playlist3 {
404 [CCode (cname="playlist3_get_category_tree_view")]
405 public unowned Gtk.TreeView get_category_tree_view();
407 [CCode (cname="main_window_add_status_icon")]
408 public void add_status_icon(Gtk.Widget widget);
410 [CCode (cname="pl3_update_go_menu",cheader_filename="plugin.h")]
411 public void update_go_menu();
417 [CCode (cheader_filename="gmpc-mpddata-model.h")]
418 public class Model : GLib.Object, Gtk.TreeModel{
419 [CCode (has_construct_function = true,cname="gmpc_mpddata_model_new")]
422 [CCode (cname="gmpc_mpddata_model_set_mpd_data")]
423 public void set_mpd_data(owned MPD.Data.Item? list);
425 [CCode (cname="gmpc_mpddata_model_set_request_artist")]
426 public void set_request_artist(string? list);
428 [CCode (cname="gmpc_mpddata_model_get_request_artist")]
429 public unowned string get_request_artist();
430 public int icon_size;
433 [CCode (cheader_filename="gmpc-mpddata-model-playlist.h",type_check_function="GMPC_IS_MPDDATA_MODEL_PLAYLIST", type_id="GMPC_TYPE_MPDDATA_MODEL_PLAYLIST")]
434 public class ModelPlaylist : Gmpc.MpdData.Model {
435 public signal void total_playtime_changed(ulong loaded_songs, ulong total_playtime);
437 [CCode (cname="gmpc_mpddata_model_playlist_get_total_playtime")]
438 public void get_total_playtime( out ulong loaded_song, out ulong total_playtime);
440 [CCode (cname="gmpc_mpddata_model_playlist_is_current_song")]
441 public bool is_current_song(Gtk.TreeIter iter);
444 [CCode (cname="", cprefix = "MPDDATA_MODEL_", cheader_filename = "gmpc-mpddata-model.h")]
445 public enum ColumnTypes {
450 COL_SONG_ALBUM, /* album name */
451 COL_SONG_TITLE, /* song title */
452 COL_SONG_TITLEFILE, /* song title */
453 COL_SONG_GENRE, /* song genre */
454 COL_SONG_TRACK, /* song track */
455 COL_SONG_NAME, /* stream name */
456 COL_SONG_COMPOSER, /* composer name */
457 COL_SONG_PERFORMER, /* performer */
458 COL_SONG_DATE, /* date */
459 COL_SONG_LENGTH_FORMAT, /* length formatted */
460 COL_SONG_DISC, /* disc */
461 COL_SONG_COMMENT, /* comment */
462 COL_ICON_ID, /* icon id */
465 COL_SONG_ALBUMARTIST,
466 COL_PATH_EXTENSION, /* Extension */
467 COL_PATH_DIRECTORY, /* Directory */
476 namespace MpdInteraction {
477 [CCode (cname="play_path",cheader_filename="mpdinteraction.h")]
478 public void play_path(string path);
479 [CCode (cname="submenu_for_song")]
480 public void submenu_for_song(Gtk.Widget menu, MPD.Song song);
482 [CCode (cname="connection_set_current_profile")]
483 public void set_current_profile(string id);
485 [CCode (cname="connect_to_mpd")]
486 public void connect();
487 [CCode (cname="disconnect_from_mpd")]
488 public void disconnect();
492 [CCode (cname="gdk_pixbuf_loader_write", cheader_filename="gdk-pixbuf/gdk-pixdata.h")]
493 public void write_loader(Gdk.PixbufLoader loader, string data, size_t size) throws GLib.Error;
495 [CCode (cname="screenshot_add_border", cheader_filename="misc.h")]
496 public void add_border(Gdk.Pixbuf image);
498 [CCode (cname="pango_attr_list_change", cheader_filename="pango/pango.h")]
499 public void change (Pango.AttrList list,owned Pango.Attribute attr);
502 [CCode (cheader_filename="pixbuf-cache.h")]
503 namespace PixbufCache {
504 [CCode (cname="pixbuf_cache_lookup_icon")]
505 public Gdk.Pixbuf? lookup_icon(int size,[CCode (array_length = false)] uchar[] url);
506 [CCode (cname="pixbuf_cache_add_icon")]
507 public void add_icon(int size,[CCode (array_length = false)] uchar[] url, Gdk.Pixbuf pb);
511 [CCode (cheader_filename="advanced-search.h")]
513 [CCode (cname="advanced_search")]
514 public MPD.Data.Item? search(string query, bool playlist);
518 [CCode (cname="gmpcPluginParent",cprefix="gmpc_plugin_",cheader_filename="plugin-internal.h")]
521 public class ParentPlugin
524 public unowned string get_name();
525 public bool get_enabled();
526 public bool has_enabled();
527 public void set_enabled(int e);
528 public bool is_browser();
529 public int tool_menu_integration(Gtk.Menu menu);
530 public int browser_cat_right_mouse_menu(Gtk.Menu menu, int type, Gtk.TreeView tree, Gdk.EventButton button);
531 public int browser_song_list_option_menu(Gtk.TreeView tree, Gtk.Menu menu);
533 [CCode (cheader_filename="main.h", array_length = false, cname="plugins")]
534 static weak ParentPlugin[] plugins;
535 [CCode (cname="num_plugins",cheader_filename="main.h")]
536 static int num_plugins;
538 namespace Preferences {
539 [CCode (cname="preferences_window_update", cheader_filename="preferences.h")]
540 public void update();
541 [CCode (cname="preferences_show_pref_window", cheader_filename="preferences.h")]
542 public void show(int id);