Mercurial > audlegacy
annotate src/audacious/main.h @ 3979:67f01143e613
improve on-demand probing:
- playlist which contains subtunes is loaded properly.
- custom uri is handled properly.
- playlist_load_ins_file_tuple() has been rewritten. (necessary to subtune fix.)
- playlist_load_ins_file() became wrapper function of playlist_load_ins_file_tuple().
- __playlist_ins_with_info() has been removed.
author | Yoshiki Yazawa <yaz@cc.rim.or.jp> |
---|---|
date | Wed, 21 Nov 2007 00:46:54 +0900 |
parents | aea8b763b134 |
children | 4bf76111e29e |
rev | line source |
---|---|
2313 | 1 /* Audacious - Cross-platform multimedia player |
2 * Copyright (C) 2005-2007 Audacious development team | |
3 * | |
4 * Based on BMP: | |
5 * Copyright (C) 2003-2004 BMP development team | |
6 * | |
7 * Based on XMMS: | |
8 * Copyright (C) 1998-2003 XMMS development team | |
9 * | |
10 * This program is free software; you can redistribute it and/or modify | |
11 * it under the terms of the GNU General Public License as published by | |
3121
3b6d316f8b09
GPL3 relicensing.
William Pitcock <nenolod@atheme-project.org>
parents:
2968
diff
changeset
|
12 * the Free Software Foundation; under version 3 of the License. |
2313 | 13 * |
14 * This program is distributed in the hope that it will be useful, | |
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
17 * GNU General Public License for more details. | |
18 * | |
19 * You should have received a copy of the GNU General Public License | |
3121
3b6d316f8b09
GPL3 relicensing.
William Pitcock <nenolod@atheme-project.org>
parents:
2968
diff
changeset
|
20 * along with this program. If not, see <http://www.gnu.org/licenses>. |
3123
f1c756f39e6c
Invoke "Plugins are not derived work" clause provided by GPL3.
William Pitcock <nenolod@atheme-project.org>
parents:
3121
diff
changeset
|
21 * |
f1c756f39e6c
Invoke "Plugins are not derived work" clause provided by GPL3.
William Pitcock <nenolod@atheme-project.org>
parents:
3121
diff
changeset
|
22 * The Audacious team does not consider modular code linking to |
f1c756f39e6c
Invoke "Plugins are not derived work" clause provided by GPL3.
William Pitcock <nenolod@atheme-project.org>
parents:
3121
diff
changeset
|
23 * Audacious or using our public API to be a derived work. |
2313 | 24 */ |
25 | |
2386 | 26 #ifndef AUD_MAIN_H |
27 #define AUD_MAIN_H | |
2313 | 28 |
29 #ifdef _AUDACIOUS_CORE | |
30 # include "ui_main.h" | |
3742 | 31 # ifdef USE_DBUS |
32 # include "dbus-service.h" | |
33 # endif | |
3346
71d8d93f1bad
Implemented TrackChange, StatusChange signals, with a stub for CapsChange.
Ben Tucker <ben.tucker@gmail.com>
parents:
3251
diff
changeset
|
34 #endif |
71d8d93f1bad
Implemented TrackChange, StatusChange signals, with a stub for CapsChange.
Ben Tucker <ben.tucker@gmail.com>
parents:
3251
diff
changeset
|
35 |
2313 | 36 #include <sys/types.h> |
37 #include <sys/stat.h> | |
38 | |
39 G_BEGIN_DECLS | |
40 | |
41 #define PLAYER_HEIGHT \ | |
42 ((cfg.player_shaded ? MAINWIN_SHADED_HEIGHT : MAINWIN_HEIGHT) * (cfg.doublesize + 1)) | |
43 #define PLAYER_WIDTH \ | |
44 (MAINWIN_WIDTH * (cfg.doublesize + 1)) | |
45 | |
46 struct _BmpConfig { | |
47 gint player_x, player_y; | |
48 gint equalizer_x, equalizer_y; | |
49 gint playlist_x, playlist_y; | |
50 gint playlist_width, playlist_height; | |
51 gint snap_distance; | |
52 gboolean use_realtime; | |
53 gboolean shuffle, repeat; | |
54 gboolean doublesize, autoscroll; | |
55 gboolean analyzer_peaks, equalizer_autoload, easy_move, equalizer_active; | |
56 gboolean playlist_visible, equalizer_visible, player_visible; | |
57 gboolean player_shaded, playlist_shaded, equalizer_shaded; | |
58 gboolean allow_multiple_instances, always_show_cb; | |
59 gboolean convert_underscore, convert_twenty, convert_slash; | |
60 gboolean show_numbers_in_pl; | |
61 gboolean snap_windows, save_window_position; | |
62 gboolean dim_titlebar; | |
63 gboolean get_info_on_load, get_info_on_demand; | |
64 gboolean eq_doublesize_linked; | |
65 gboolean sort_jump_to_file; | |
66 gboolean use_eplugins; | |
67 gboolean always_on_top, sticky; | |
68 gboolean no_playlist_advance; | |
69 gboolean stopaftersong; | |
70 gboolean refresh_file_list; | |
71 gboolean smooth_title_scroll; | |
72 gboolean use_pl_metadata; | |
73 gboolean warn_about_unplayables; | |
2651
4d5e6a8717dd
[svn] - allow the player to start with all of its windows hidden (but give a warning to the user, whose display can be disabled); also, try to remember player windows positions when they stay hidden between sessions
giacomo
parents:
2463
diff
changeset
|
74 gboolean warn_about_win_visibility; |
2313 | 75 gboolean use_backslash_as_dir_delimiter; |
76 gboolean random_skin_on_play; | |
77 gboolean use_fontsets; | |
78 gboolean mainwin_use_xfont; | |
79 gboolean custom_cursors; | |
80 gboolean close_dialog_open; | |
81 gboolean close_dialog_add; | |
82 gfloat equalizer_preamp, equalizer_bands[10]; | |
83 gchar *skin; | |
84 gchar *outputplugin; | |
85 gchar *filesel_path; | |
86 gchar *playlist_path; | |
87 gchar *playlist_font, *mainwin_font; | |
88 gchar *disabled_iplugins; | |
3227
2619f4c62abe
added Discovery plugin type
Cristi Magherusan <majeru@atheme-project.org>
parents:
3123
diff
changeset
|
89 gchar *enabled_gplugins, *enabled_vplugins, *enabled_eplugins, *enabled_dplugins ; |
2313 | 90 gchar *eqpreset_default_file, *eqpreset_extension; |
91 GList *url_history; | |
92 gint timer_mode; | |
93 gint vis_type; | |
94 gint analyzer_mode, analyzer_type; | |
95 gint scope_mode; | |
96 gint voiceprint_mode; | |
97 gint vu_mode, vis_refresh; | |
98 gint analyzer_falloff, peaks_falloff; | |
99 gint playlist_position; | |
100 gint pause_between_songs_time; | |
101 gboolean pause_between_songs; | |
102 gboolean show_wm_decorations; | |
103 gint mouse_change; | |
104 gboolean playlist_transparent; | |
105 gint titlestring_preset; | |
106 gchar *gentitle_format; | |
107 gboolean softvolume_enable; | |
108 gboolean xmms_compat_mode; | |
109 gboolean eq_extra_filtering; | |
110 gint scroll_pl_by; | |
111 gboolean resume_playback_on_startup; | |
112 gint resume_playback_on_startup_time; | |
113 gboolean show_separator_in_pl; | |
114 gchar *chardet_detector; | |
115 gchar *chardet_fallback; | |
116 gint output_buffer_size; | |
117 gboolean playlist_detect; | |
118 gboolean show_filepopup_for_tuple; | |
119 gchar *cover_name_include, *cover_name_exclude; | |
120 gboolean recurse_for_cover; | |
121 gint recurse_for_cover_depth; | |
122 gchar *session_uri_base; | |
123 gint filepopup_pixelsize; | |
124 gint filepopup_delay; | |
125 gboolean use_file_cover; | |
126 gboolean use_xmms_style_fileselector; | |
127 gboolean use_extension_probing; | |
128 gint colorize_r; gint colorize_g; gint colorize_b; | |
129 gboolean terminate; | |
2405 | 130 gboolean filepopup_showprogressbar; |
2805
6295535fbf49
[svn] - add toggle button to keep jtf dialog opened on jump.
yaz
parents:
2682
diff
changeset
|
131 gboolean close_jtf_dialog; |
2968
83f03505f819
add support for one-way text scroll.
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents:
2908
diff
changeset
|
132 gboolean twoway_scroll; |
3543
6b8c8e051c1b
Add new configuration option: Software Volume Control.
William Pitcock <nenolod@atheme.org>
parents:
3400
diff
changeset
|
133 gboolean software_volume_control; |
3965
aea8b763b134
Work around the issues with broken Gtk-Qt-Engine and Modern skins with inline GTK.
William Pitcock <nenolod@atheme.org>
parents:
3743
diff
changeset
|
134 gboolean warn_about_broken_gtk_engines; |
aea8b763b134
Work around the issues with broken Gtk-Qt-Engine and Modern skins with inline GTK.
William Pitcock <nenolod@atheme.org>
parents:
3743
diff
changeset
|
135 gboolean disable_inline_gtk; |
2313 | 136 }; |
137 | |
138 typedef struct _BmpConfig BmpConfig; | |
139 | |
140 enum { | |
141 VOLSET_STARTUP, | |
142 VOLSET_UPDATE, | |
143 VOLUME_ADJUSTED, | |
144 VOLUME_SET | |
145 }; | |
146 | |
147 enum { | |
148 BMP_PATH_LOG_FILE, | |
149 BMP_PATH_USER_DIR, | |
150 BMP_PATH_USER_PLUGIN_DIR, | |
151 BMP_PATH_USER_SKIN_DIR, | |
152 BMP_PATH_SKIN_THUMB_DIR, | |
3400
8764498b75ed
Add new playlists directory to paths
Kieran Clancy <clancy.kieran+audacious@gmail.com>
parents:
3346
diff
changeset
|
153 BMP_PATH_PLAYLISTS_DIR, |
2313 | 154 BMP_PATH_ACCEL_FILE, |
155 BMP_PATH_CONFIG_FILE, | |
156 BMP_PATH_PLAYLIST_FILE, | |
2463 | 157 BMP_PATH_GTKRC_FILE, |
2313 | 158 BMP_PATH_COUNT |
159 }; | |
160 | |
161 extern BmpConfig cfg; | |
162 extern BmpConfig bmp_default_config; | |
163 | |
164 extern gchar *bmp_paths[]; | |
165 | |
166 extern const gchar *bmp_titlestring_presets[]; | |
167 extern const guint n_titlestring_presets; | |
168 | |
169 extern const gchar *chardet_detector_presets[]; | |
170 extern const guint n_chardet_detector_presets; | |
171 | |
172 extern GList *dock_window_list; | |
173 | |
174 extern gboolean has_x11_connection; | |
175 | |
176 void bmp_config_save(void); | |
177 void bmp_config_load(void); | |
2682
c3cd6e47faf6
[svn] - make the evil 'reload plugins' button behave a bit better
giacomo
parents:
2651
diff
changeset
|
178 void bmp_config_free(void); |
2313 | 179 void make_directory(const gchar * path, mode_t mode); |
2908
6a474a7954a0
Allow for printf-style format strings to be passed to report_error() via g_strdup_vprintf().
William Pitcock <nenolod@atheme.org>
parents:
2907
diff
changeset
|
180 void report_error(const gchar *error_message, ...); |
2313 | 181 |
182 extern GCond *cond_scan; | |
183 extern GMutex *mutex_scan; | |
3743 | 184 #if defined(USE_DBUS) && defined(_AUDACIOUS_CORE) |
3346
71d8d93f1bad
Implemented TrackChange, StatusChange signals, with a stub for CapsChange.
Ben Tucker <ben.tucker@gmail.com>
parents:
3251
diff
changeset
|
185 extern MprisPlayer *mpris; |
71d8d93f1bad
Implemented TrackChange, StatusChange signals, with a stub for CapsChange.
Ben Tucker <ben.tucker@gmail.com>
parents:
3251
diff
changeset
|
186 #endif |
2313 | 187 |
188 G_END_DECLS | |
189 | |
190 #endif |