annotate libaudacious/util.c @ 2239:bb4d730fbcd0 trunk

[svn] - fix sed
author nenolod
date Tue, 02 Jan 2007 22:05:31 -0800
parents f18a5b617c34
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2053
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
1 /* Audacious
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
2 * Copyright (C) 2005-2007 Audacious team
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
3 *
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
4 * XMMS - Cross-platform multimedia player
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
5 * Copyright (C) 1998-2003 Peter Alm, Mikael Alm, Olle Hallnas,
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
6 * Thomas Nilsson and 4Front Technologies
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
7 * Copyright (C) 1999-2003 Haavard Kvaalen
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
8 *
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
9 * This program is free software; you can redistribute it and/or modify
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
10 * it under the terms of the GNU General Public License as published by
2105
f18a5b617c34 [svn] - move to GPLv2-only. Based on my interpretation of the license, we are
nenolod
parents: 2053
diff changeset
11 * the Free Software Foundation; under version 2 of the License.
2053
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
12 *
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
13 * This program is distributed in the hope that it will be useful,
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
16 * GNU General Public License for more details.
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
17 *
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
18 * You should have received a copy of the GNU General Public License
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
19 * along with this program; if not, write to the Free Software
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
20 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
21 */
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
22
0
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
23 #ifdef HAVE_CONFIG_H
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
24 # include "config.h"
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
25 #endif
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
26
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
27 #include <glib.h>
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
28 #include <gtk/gtk.h>
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
29
2053
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
30 /**
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
31 * xmms_show_message:
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
32 * @title: The title of the message to show.
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
33 * @text: The text of the message to show.
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
34 * @button_text: The text of the button which will close the messagebox.
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
35 * @modal: Whether or not the messagebox should be modal.
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
36 * @button_action: Code to execute on when the messagebox is closed, or %NULL.
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
37 * @action_data: Optional opaque data to pass to @button_action.
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
38 *
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
39 * Displays a message box.
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
40 *
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
41 * Return value: A GTK widget handle for the message box.
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
42 **/
0
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
43 GtkWidget *
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
44 xmms_show_message(const gchar * title, const gchar * text,
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
45 const gchar * button_text, gboolean modal,
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
46 GtkSignalFunc button_action, gpointer action_data)
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
47 {
863
25f42f39c44c [svn] new xmms_show_message look
giacomo
parents: 0
diff changeset
48 GtkWidget *dialog;
25f42f39c44c [svn] new xmms_show_message look
giacomo
parents: 0
diff changeset
49 GtkWidget *dialog_vbox, *dialog_hbox, *dialog_bbox;
25f42f39c44c [svn] new xmms_show_message look
giacomo
parents: 0
diff changeset
50 GtkWidget *dialog_bbox_b1;
25f42f39c44c [svn] new xmms_show_message look
giacomo
parents: 0
diff changeset
51 GtkWidget *dialog_textlabel;
25f42f39c44c [svn] new xmms_show_message look
giacomo
parents: 0
diff changeset
52 GtkWidget *dialog_icon;
0
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
53
863
25f42f39c44c [svn] new xmms_show_message look
giacomo
parents: 0
diff changeset
54 dialog = gtk_window_new(GTK_WINDOW_TOPLEVEL);
25f42f39c44c [svn] new xmms_show_message look
giacomo
parents: 0
diff changeset
55 gtk_window_set_type_hint( GTK_WINDOW(dialog) , GDK_WINDOW_TYPE_HINT_DIALOG );
25f42f39c44c [svn] new xmms_show_message look
giacomo
parents: 0
diff changeset
56 gtk_window_set_modal( GTK_WINDOW(dialog) , modal );
25f42f39c44c [svn] new xmms_show_message look
giacomo
parents: 0
diff changeset
57 gtk_window_set_title( GTK_WINDOW(dialog) , title );
25f42f39c44c [svn] new xmms_show_message look
giacomo
parents: 0
diff changeset
58 gtk_container_set_border_width( GTK_CONTAINER(dialog) , 10 );
0
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
59
863
25f42f39c44c [svn] new xmms_show_message look
giacomo
parents: 0
diff changeset
60 dialog_vbox = gtk_vbox_new( FALSE , 0 );
25f42f39c44c [svn] new xmms_show_message look
giacomo
parents: 0
diff changeset
61 dialog_hbox = gtk_hbox_new( FALSE , 0 );
0
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
62
863
25f42f39c44c [svn] new xmms_show_message look
giacomo
parents: 0
diff changeset
63 /* icon */
25f42f39c44c [svn] new xmms_show_message look
giacomo
parents: 0
diff changeset
64 dialog_icon = gtk_image_new_from_stock( GTK_STOCK_DIALOG_INFO , GTK_ICON_SIZE_DIALOG );
25f42f39c44c [svn] new xmms_show_message look
giacomo
parents: 0
diff changeset
65 gtk_box_pack_start( GTK_BOX(dialog_hbox) , dialog_icon , FALSE , FALSE , 2 );
0
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
66
863
25f42f39c44c [svn] new xmms_show_message look
giacomo
parents: 0
diff changeset
67 /* label */
25f42f39c44c [svn] new xmms_show_message look
giacomo
parents: 0
diff changeset
68 dialog_textlabel = gtk_label_new( text );
25f42f39c44c [svn] new xmms_show_message look
giacomo
parents: 0
diff changeset
69 /* gtk_label_set_selectable( GTK_LABEL(dialog_textlabel) , TRUE ); */
25f42f39c44c [svn] new xmms_show_message look
giacomo
parents: 0
diff changeset
70 gtk_box_pack_start( GTK_BOX(dialog_hbox) , dialog_textlabel , TRUE , TRUE , 2 );
0
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
71
863
25f42f39c44c [svn] new xmms_show_message look
giacomo
parents: 0
diff changeset
72 gtk_box_pack_start( GTK_BOX(dialog_vbox) , dialog_hbox , FALSE , FALSE , 2 );
25f42f39c44c [svn] new xmms_show_message look
giacomo
parents: 0
diff changeset
73 gtk_box_pack_start( GTK_BOX(dialog_vbox) , gtk_hseparator_new() , FALSE , FALSE , 4 );
0
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
74
863
25f42f39c44c [svn] new xmms_show_message look
giacomo
parents: 0
diff changeset
75 dialog_bbox = gtk_hbutton_box_new();
25f42f39c44c [svn] new xmms_show_message look
giacomo
parents: 0
diff changeset
76 gtk_button_box_set_layout( GTK_BUTTON_BOX(dialog_bbox) , GTK_BUTTONBOX_END );
25f42f39c44c [svn] new xmms_show_message look
giacomo
parents: 0
diff changeset
77 dialog_bbox_b1 = gtk_button_new_with_label( button_text );
25f42f39c44c [svn] new xmms_show_message look
giacomo
parents: 0
diff changeset
78 g_signal_connect_swapped( G_OBJECT(dialog_bbox_b1) , "clicked" ,
25f42f39c44c [svn] new xmms_show_message look
giacomo
parents: 0
diff changeset
79 G_CALLBACK(gtk_widget_destroy) , dialog );
25f42f39c44c [svn] new xmms_show_message look
giacomo
parents: 0
diff changeset
80 if ( button_action )
25f42f39c44c [svn] new xmms_show_message look
giacomo
parents: 0
diff changeset
81 g_signal_connect( G_OBJECT(dialog_bbox_b1) , "clicked" ,
25f42f39c44c [svn] new xmms_show_message look
giacomo
parents: 0
diff changeset
82 button_action , action_data );
25f42f39c44c [svn] new xmms_show_message look
giacomo
parents: 0
diff changeset
83 GTK_WIDGET_SET_FLAGS( dialog_bbox_b1 , GTK_CAN_DEFAULT);
25f42f39c44c [svn] new xmms_show_message look
giacomo
parents: 0
diff changeset
84 gtk_widget_grab_default( dialog_bbox_b1 );
0
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
85
863
25f42f39c44c [svn] new xmms_show_message look
giacomo
parents: 0
diff changeset
86 gtk_container_add( GTK_CONTAINER(dialog_bbox) , dialog_bbox_b1 );
25f42f39c44c [svn] new xmms_show_message look
giacomo
parents: 0
diff changeset
87 gtk_box_pack_start( GTK_BOX(dialog_vbox) , dialog_bbox , FALSE , FALSE , 0 );
0
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
88
863
25f42f39c44c [svn] new xmms_show_message look
giacomo
parents: 0
diff changeset
89 gtk_container_add( GTK_CONTAINER(dialog) , dialog_vbox );
25f42f39c44c [svn] new xmms_show_message look
giacomo
parents: 0
diff changeset
90 gtk_widget_show_all(dialog);
0
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
91
863
25f42f39c44c [svn] new xmms_show_message look
giacomo
parents: 0
diff changeset
92 return dialog;
0
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
93 }
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
94
2053
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
95 /**
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
96 * xmms_check_realtime_priority:
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
97 *
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
98 * Legacy function included for compatibility with XMMS.
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
99 *
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
100 * Return value: FALSE
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
101 **/
0
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
102 gboolean
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
103 xmms_check_realtime_priority(void)
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
104 {
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
105 return FALSE;
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
106 }
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
107
2053
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
108 /**
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
109 * xmms_usleep:
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
110 * @usec: The amount of microseconds to sleep.
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
111 *
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
112 * Legacy function included for compatibility with XMMS.
4ecd967bfd8f [svn] - add gtkdoc settings
nenolod
parents: 863
diff changeset
113 **/
0
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
114 void
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
115 xmms_usleep(gint usec)
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
116 {
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
117 g_usleep(usec);
cb178e5ad177 [svn] Import audacious source.
nenolod
parents:
diff changeset
118 }