source: roaraudio/plugins/audacious/gui.c @ 5961:06e7fd9e4c25

Last change on this file since 5961:06e7fd9e4c25 was 5961:06e7fd9e4c25, checked in by phi, 10 years ago

Updates of copyright and license headers

File size: 13.4 KB
Line 
1//gui.c:
2
3/*
4 *      Copyright (C) Philipp 'ph3-der-loewe' Schafft    - 2008-2014,
5 *                    Daniel Duntemann <dauxx@dauxx.org> - 2009
6 *
7 *  This file is part of the XMMS RoarAudio output plugin a part of RoarAudio,
8 *  a cross-platform sound system for both, home and professional use.
9 *  See README for details.
10 *
11 *  This file is free software; you can redistribute it and/or modify
12 *  it under the terms of the GNU General Public License version 3
13 *  as published by the Free Software Foundation.
14 *
15 *  RoarAudio is distributed in the hope that it will be useful,
16 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
17 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18 *  GNU General Public License for more details.
19 *
20 *  You should have received a copy of the GNU General Public License
21 *  along with this software; see the file COPYING.  If not, write to
22 *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
23 *  Boston, MA 02110-1301, USA.
24 *
25 */
26
27#include "all.h"
28
29// ABOUT:
30
31void roar_about(void) {
32 static GtkWidget *dialog;
33
34 if (dialog != NULL)
35  return;
36
37 dialog = audacious_info_dialog(
38                _("About RoarAudio Plugin"),
39                _("RoarAudio Audacious Plugin..."
40                 ), _("OK"), FALSE, NULL, NULL);
41 gtk_signal_connect(GTK_OBJECT(dialog), "destroy",
42                    GTK_SIGNAL_FUNC(gtk_widget_destroyed),
43                    &dialog);
44}
45
46// CONFIG:
47
48void on_button_ok_enter(GtkButton * button, gpointer user_data) {
49}
50
51void roar_configure(void) {
52  GtkWidget *config_win;
53  GtkWidget *vbox_main;
54  GtkWidget *tabs_main;
55  GtkWidget *frame_server;
56  GtkWidget *alignment_server;
57  GtkWidget *table1;
58  GtkWidget *label_server_type;
59  GtkWidget *label_server_host;
60  GtkWidget *label_server_port;
61  GtkObject *input_server_port_adj;
62  GtkWidget *input_server_port;
63  GtkWidget *input_server_host;
64/*
65  GtkWidget *input_server_type;
66*/
67  GtkWidget *label_host;
68  GtkWidget *label_server;
69  GtkWidget *frame_proxy;
70  GtkWidget *alignment_proxy;
71  GtkWidget *table2;
72  GtkWidget *label_proxy_type;
73  GtkWidget *label_proxy_addr;
74  GtkWidget *input_proxy_host;
75/*
76  GtkWidget *input_proxy_type;
77*/
78  GtkWidget *label_frame_proxy;
79  GtkWidget *label_proxy;
80  GtkWidget *vbox_meta;
81  GtkWidget *frame_meta_player;
82  GtkWidget *alignment1;
83  GtkWidget *hbox_meta_player;
84  GtkWidget *label_player_name;
85  GtkWidget *input_meta_player_name;
86  GtkWidget *label_player;
87  GtkWidget *frame_meta_title;
88  GtkWidget *alignment2;
89  GtkWidget *hbox_meta_title;
90/*
91  GtkWidget *input_meta_send_title;
92  GtkWidget *input_meta_send_filename;
93*/
94  GtkWidget *label_meta_title;
95  GtkWidget *label_meta;
96  GtkWidget *hbox_buttons;
97  GtkWidget *button_ok;
98  GtkWidget *button_cancel;
99
100  config_win = gtk_window_new(GTK_WINDOW_TOPLEVEL);
101  gtk_window_set_title(GTK_WINDOW(config_win), _("RoarAudio Plugin - Configuration"));
102//  gtk_window_set_destroy_with_parent(GTK_WINDOW(config_win), TRUE);
103//  gtk_window_set_icon_name(GTK_WINDOW(config_win), "gtk-preferences");
104
105  gtk_widget_show (config_win);
106
107  vbox_main = gtk_vbox_new (FALSE, 0);
108  gtk_widget_show (vbox_main);
109  gtk_container_add (GTK_CONTAINER (config_win), vbox_main);
110
111  tabs_main = gtk_notebook_new ();
112  gtk_widget_show (tabs_main);
113  gtk_box_pack_start (GTK_BOX (vbox_main), tabs_main, TRUE, TRUE, 0);
114
115  frame_server = gtk_frame_new (NULL);
116  gtk_widget_show (frame_server);
117  gtk_container_add (GTK_CONTAINER (tabs_main), frame_server);
118  gtk_frame_set_shadow_type (GTK_FRAME (frame_server), GTK_SHADOW_NONE);
119
120  alignment_server = gtk_alignment_new (0.5, 0.5, 1, 1);
121  gtk_widget_show (alignment_server);
122  gtk_container_add (GTK_CONTAINER (frame_server), alignment_server);
123//  gtk_alignment_set_padding (GTK_ALIGNMENT (alignment_server), 0, 0, 12, 0);
124
125  table1 = gtk_table_new (3, 2, FALSE);
126  gtk_widget_show (table1);
127  gtk_container_add (GTK_CONTAINER (alignment_server), table1);
128
129  label_server_type = gtk_label_new (_("Server Type:"));
130  gtk_widget_show (label_server_type);
131  gtk_table_attach (GTK_TABLE (table1), label_server_type, 0, 1, 0, 1,
132                    (GtkAttachOptions) (GTK_FILL),
133                    (GtkAttachOptions) (0), 0, 0);
134  gtk_misc_set_alignment (GTK_MISC (label_server_type), 0, 0.5);
135
136  label_server_host = gtk_label_new (_("Host or Path:"));
137  gtk_widget_show (label_server_host);
138  gtk_table_attach (GTK_TABLE (table1), label_server_host, 0, 1, 1, 2,
139                    (GtkAttachOptions) (GTK_FILL),
140                    (GtkAttachOptions) (0), 0, 0);
141  gtk_misc_set_alignment (GTK_MISC (label_server_host), 0, 0.5);
142
143  label_server_port = gtk_label_new (_("Port:"));
144  gtk_widget_show (label_server_port);
145  gtk_table_attach (GTK_TABLE (table1), label_server_port, 0, 1, 2, 3,
146                    (GtkAttachOptions) (GTK_FILL),
147                    (GtkAttachOptions) (0), 0, 0);
148  gtk_misc_set_alignment (GTK_MISC (label_server_port), 0, 0.5);
149
150  input_server_port_adj = gtk_adjustment_new (16002, 0, 65535, 1, 10, 10);
151  input_server_port = gtk_spin_button_new (GTK_ADJUSTMENT (input_server_port_adj), 1, 0);
152  gtk_widget_show (input_server_port);
153  gtk_table_attach (GTK_TABLE (table1), input_server_port, 1, 2, 2, 3,
154                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
155                    (GtkAttachOptions) (0), 0, 0);
156
157  input_server_host = gtk_entry_new ();
158  gtk_widget_show (input_server_host);
159  gtk_table_attach (GTK_TABLE (table1), input_server_host, 1, 2, 1, 2,
160                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
161                    (GtkAttachOptions) (0), 0, 0);
162
163/*
164  input_server_type = gtk_combo_box_entry_new_text ();
165  gtk_widget_show (input_server_type);
166  gtk_table_attach (GTK_TABLE (table1), input_server_type, 1, 2, 0, 1,
167                    (GtkAttachOptions) (GTK_FILL),
168                    (GtkAttachOptions) (GTK_FILL), 0, 0);
169  gtk_combo_box_append_text (GTK_COMBO_BOX (input_server_type), _("Local"));
170  gtk_combo_box_append_text (GTK_COMBO_BOX (input_server_type), _("TCP/IP"));
171  gtk_combo_box_append_text (GTK_COMBO_BOX (input_server_type), _("DECnet"));
172  gtk_combo_box_append_text (GTK_COMBO_BOX (input_server_type), _("Fork"));
173*/
174  label_host = gtk_label_new (_("<b>Host:</b>"));
175  gtk_widget_show (label_host);
176//  gtk_frame_set_label_widget (GTK_FRAME (frame_server), label_host);
177//  gtk_label_set_use_markup (GTK_LABEL (label_host), TRUE);
178
179  label_server = gtk_label_new (_("Server & Network"));
180  gtk_widget_show (label_server);
181  gtk_notebook_set_tab_label (GTK_NOTEBOOK (tabs_main), gtk_notebook_get_nth_page (GTK_NOTEBOOK (tabs_main), 0), label_server);
182
183  frame_proxy = gtk_frame_new (NULL);
184  gtk_widget_show (frame_proxy);
185  gtk_container_add (GTK_CONTAINER (tabs_main), frame_proxy);
186  gtk_frame_set_shadow_type (GTK_FRAME (frame_proxy), GTK_SHADOW_NONE);
187
188  alignment_proxy = gtk_alignment_new (0.5, 0.5, 1, 1);
189  gtk_widget_show (alignment_proxy);
190  gtk_container_add (GTK_CONTAINER (frame_proxy), alignment_proxy);
191//  gtk_alignment_set_padding (GTK_ALIGNMENT (alignment_proxy), 0, 0, 12, 0);
192
193  table2 = gtk_table_new (2, 2, FALSE);
194  gtk_widget_show (table2);
195  gtk_container_add (GTK_CONTAINER (alignment_proxy), table2);
196
197  label_proxy_type = gtk_label_new (_("Type:"));
198  gtk_widget_show (label_proxy_type);
199  gtk_table_attach (GTK_TABLE (table2), label_proxy_type, 0, 1, 0, 1,
200                    (GtkAttachOptions) (GTK_FILL),
201                    (GtkAttachOptions) (0), 0, 0);
202  gtk_misc_set_alignment (GTK_MISC (label_proxy_type), 0, 0.5);
203
204  label_proxy_addr = gtk_label_new (_("Proxy Address"));
205  gtk_widget_show (label_proxy_addr);
206  gtk_table_attach (GTK_TABLE (table2), label_proxy_addr, 0, 1, 1, 2,
207                    (GtkAttachOptions) (GTK_FILL),
208                    (GtkAttachOptions) (0), 0, 0);
209  gtk_misc_set_alignment (GTK_MISC (label_proxy_addr), 0, 0.5);
210
211  input_proxy_host = gtk_entry_new ();
212  gtk_widget_show (input_proxy_host);
213  gtk_table_attach (GTK_TABLE (table2), input_proxy_host, 1, 2, 1, 2,
214                    (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
215                    (GtkAttachOptions) (0), 0, 0);
216
217/*
218  input_proxy_type = gtk_combo_box_entry_new_text ();
219  gtk_widget_show (input_proxy_type);
220  gtk_table_attach (GTK_TABLE (table2), input_proxy_type, 1, 2, 0, 1,
221                    (GtkAttachOptions) (GTK_FILL),
222                    (GtkAttachOptions) (GTK_FILL), 0, 0);
223  gtk_combo_box_append_text (GTK_COMBO_BOX (input_proxy_type), _("None"));
224  gtk_combo_box_append_text (GTK_COMBO_BOX (input_proxy_type), _("SOCKS4"));
225  gtk_combo_box_append_text (GTK_COMBO_BOX (input_proxy_type), _("SOCKS4a"));
226  gtk_combo_box_append_text (GTK_COMBO_BOX (input_proxy_type), _("SOCKS4d"));
227  gtk_combo_box_append_text (GTK_COMBO_BOX (input_proxy_type), _("HTTP Connect"));
228  gtk_combo_box_append_text (GTK_COMBO_BOX (input_proxy_type), _("SSH"));
229*/
230
231  label_frame_proxy = gtk_label_new (_("<b>Proxy</b>"));
232  gtk_widget_show (label_frame_proxy);
233/*
234  gtk_frame_set_label_widget (GTK_FRAME (frame_proxy), label_frame_proxy);
235  gtk_label_set_use_markup (GTK_LABEL (label_frame_proxy), TRUE);
236*/
237
238  label_proxy = gtk_label_new (_("Proxy"));
239  gtk_widget_show (label_proxy);
240  gtk_notebook_set_tab_label (GTK_NOTEBOOK (tabs_main), gtk_notebook_get_nth_page (GTK_NOTEBOOK (tabs_main), 1), label_proxy);
241
242  vbox_meta = gtk_vbox_new (FALSE, 0);
243  gtk_widget_show (vbox_meta);
244  gtk_container_add (GTK_CONTAINER (tabs_main), vbox_meta);
245
246  frame_meta_player = gtk_frame_new (NULL);
247  gtk_widget_show (frame_meta_player);
248  gtk_box_pack_start (GTK_BOX (vbox_meta), frame_meta_player, TRUE, TRUE, 0);
249  gtk_frame_set_shadow_type (GTK_FRAME (frame_meta_player), GTK_SHADOW_NONE);
250
251  alignment1 = gtk_alignment_new (0.5, 0.5, 1, 1);
252  gtk_widget_show (alignment1);
253  gtk_container_add (GTK_CONTAINER (frame_meta_player), alignment1);
254//  gtk_alignment_set_padding (GTK_ALIGNMENT (alignment1), 0, 0, 12, 0);
255
256  hbox_meta_player = gtk_hbox_new (FALSE, 0);
257  gtk_widget_show (hbox_meta_player);
258  gtk_container_add (GTK_CONTAINER (alignment1), hbox_meta_player);
259
260  label_player_name = gtk_label_new (_("Player Name:"));
261  gtk_widget_show (label_player_name);
262  gtk_box_pack_start (GTK_BOX (hbox_meta_player), label_player_name, FALSE, FALSE, 0);
263
264  input_meta_player_name = gtk_entry_new ();
265  gtk_widget_show (input_meta_player_name);
266  gtk_box_pack_start (GTK_BOX (hbox_meta_player), input_meta_player_name, TRUE, TRUE, 0);
267  gtk_entry_set_text (GTK_ENTRY (input_meta_player_name), _("Audacious"));
268
269  label_player = gtk_label_new (_("<b>Player</b>"));
270  gtk_widget_show (label_player);
271/*
272  gtk_frame_set_label_widget (GTK_FRAME (frame_meta_player), label_player);
273  gtk_label_set_use_markup (GTK_LABEL (label_player), TRUE);
274*/
275
276  frame_meta_title = gtk_frame_new (NULL);
277  gtk_widget_show (frame_meta_title);
278  gtk_box_pack_start (GTK_BOX (vbox_meta), frame_meta_title, TRUE, TRUE, 0);
279  gtk_frame_set_shadow_type (GTK_FRAME (frame_meta_title), GTK_SHADOW_NONE);
280
281  alignment2 = gtk_alignment_new (0.5, 0.5, 1, 1);
282  gtk_widget_show (alignment2);
283  gtk_container_add (GTK_CONTAINER (frame_meta_title), alignment2);
284//  gtk_alignment_set_padding (GTK_ALIGNMENT (alignment2), 0, 0, 12, 0);
285
286  hbox_meta_title = gtk_hbox_new (FALSE, 0);
287  gtk_widget_show (hbox_meta_title);
288  gtk_container_add (GTK_CONTAINER (alignment2), hbox_meta_title);
289
290/*
291  input_meta_send_title = gtk_check_button_new_with_mnemonic (_("Send song title to server"));
292  gtk_widget_show (input_meta_send_title);
293  gtk_box_pack_start (GTK_BOX (hbox_meta_title), input_meta_send_title, FALSE, FALSE, 0);
294  gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (input_meta_send_title), TRUE);
295
296  input_meta_send_filename = gtk_check_button_new_with_mnemonic (_("Send song filename to server"));
297  gtk_widget_show (input_meta_send_filename);
298  gtk_box_pack_start (GTK_BOX (hbox_meta_title), input_meta_send_filename, FALSE, FALSE, 0);
299  gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (input_meta_send_filename), TRUE);
300*/
301
302  label_meta_title = gtk_label_new (_("<b>Current Song</b>"));
303  gtk_widget_show (label_meta_title);
304/*
305  gtk_frame_set_label_widget (GTK_FRAME (frame_meta_title), label_meta_title);
306  gtk_label_set_use_markup (GTK_LABEL (label_meta_title), TRUE);
307*/
308
309  label_meta = gtk_label_new (_("Meta Data"));
310  gtk_widget_show (label_meta);
311  gtk_notebook_set_tab_label (GTK_NOTEBOOK (tabs_main), gtk_notebook_get_nth_page (GTK_NOTEBOOK (tabs_main), 2), label_meta);
312
313  hbox_buttons = gtk_hbox_new (FALSE, 0);
314  gtk_widget_show (hbox_buttons);
315  gtk_box_pack_start (GTK_BOX (vbox_main), hbox_buttons, TRUE, TRUE, 0);
316
317
318  button_ok = gtk_button_new_with_label(_("OK"));
319  gtk_box_pack_start (GTK_BOX (hbox_buttons), button_ok, FALSE, FALSE, 0);
320
321  button_cancel = gtk_button_new_with_label(_("Cancel"));
322  gtk_signal_connect_object(GTK_OBJECT(button_cancel), "clicked",
323                            GTK_SIGNAL_FUNC(gtk_widget_destroy),
324                            GTK_OBJECT(config_win));
325  gtk_box_pack_start (GTK_BOX (hbox_buttons), button_cancel, FALSE, FALSE, 0);
326
327/*
328  button_ok = gtk_button_new_from_stock ("gtk-ok");
329  gtk_widget_show (button_ok);
330  gtk_box_pack_start (GTK_BOX (hbox_buttons), button_ok, FALSE, FALSE, 0);
331
332  button_cancel = gtk_button_new_from_stock ("gtk-cancel");
333  gtk_widget_show (button_cancel);
334  gtk_box_pack_start (GTK_BOX (hbox_buttons), button_cancel, FALSE, FALSE, 0);
335
336  g_signal_connect_swapped ((gpointer) button_ok, "clicked",
337                            G_CALLBACK (on_button_ok_enter),
338                            GTK_OBJECT (config_win));
339  g_signal_connect_swapped ((gpointer) button_cancel, "clicked",
340                            G_CALLBACK (gtk_widget_destroy),
341                            GTK_OBJECT (config_win));
342*/
343}
344
345//ll
Note: See TracBrowser for help on using the repository browser.