comparison src/xs_about.c @ 24:271be59be975

Lots of changes
author Matti Hamalainen <ccr@tnsp.org>
date Sat, 07 Jun 2003 12:42:05 +0000
parents 183e7cbc1036
children
comparison
equal deleted inserted replaced
23:469efc05e01e 24:271be59be975
39 /* 39 /*
40 * Execute the aboutbox 40 * Execute the aboutbox
41 */ 41 */
42 void xs_aboutbox(void) 42 void xs_aboutbox(void)
43 { 43 {
44 GtkWidget *vbox1, *hbox1, *frame1, *pixmapwid; 44 /* Check if there already is an open about window */
45 GtkWidget *label1, *hbuttonbox1, *about_ok; 45 if (xs_aboutwin != NULL)
46 GdkPixmap *pixmap; 46 {
47 GdkBitmap *pixmask; 47 gdk_window_raise(xs_aboutwin->window);
48 GtkStyle *style; 48 return;
49 49 }
50 /* Check if there already is an open about window */
51 if (xs_aboutwin != NULL) {
52 gdk_window_raise(xs_aboutwin->window);
53 return;
54 }
55 50
56 /* No, create one ... */ 51 /* No, create one ... */
57 xs_aboutwin = gtk_dialog_new();
58 gtk_object_set_data(GTK_OBJECT(xs_aboutwin), "xs_aboutwin", xs_aboutwin);
59 gtk_window_set_title(GTK_WINDOW(xs_aboutwin), "About xmms-sid SIDPlay plugin");
60 gtk_window_set_policy(GTK_WINDOW(xs_aboutwin), FALSE, FALSE, FALSE);
61 gtk_window_set_position(GTK_WINDOW(xs_aboutwin), GTK_WIN_POS_MOUSE);
62 gtk_signal_connect(GTK_OBJECT(xs_aboutwin), "destroy", GTK_SIGNAL_FUNC(gtk_widget_destroyed), &xs_aboutwin);
63 gtk_container_border_width(GTK_CONTAINER(xs_aboutwin), 10);
64
65 vbox1 = GTK_DIALOG(xs_aboutwin)->vbox;
66 gtk_object_set_data(GTK_OBJECT(xs_aboutwin), "vbox1", vbox1);
67 gtk_widget_show(vbox1);
68 /* gtk_container_add(GTK_CONTAINER(xs_aboutwin), vbox1);
69 */
70 hbox1 = gtk_hbox_new(FALSE, 0);
71 gtk_object_set_data(GTK_OBJECT(xs_aboutwin), "hbox1", hbox1);
72 gtk_widget_show (hbox1);
73 gtk_box_pack_start(GTK_BOX(vbox1), hbox1, TRUE, TRUE, 0);
74
75 frame1 = gtk_frame_new (NULL);
76 gtk_object_set_data (GTK_OBJECT (xs_aboutwin), "frame1", frame1);
77 gtk_widget_show (frame1);
78 gtk_box_pack_start (GTK_BOX (hbox1), frame1, TRUE, TRUE, 0);
79 gtk_container_set_border_width (GTK_CONTAINER (frame1), 4);
80
81 gtk_widget_realize (xs_aboutwin);
82
83 /* The pixmap */
84 style = gtk_widget_get_style (xs_aboutwin);
85 pixmap = gdk_pixmap_create_from_xpm_d(xs_aboutwin->window, &pixmask,
86 &style->bg[GTK_STATE_NORMAL],
87 (gchar **) xmms_sid_logo_xpm);
88
89 pixmapwid = gtk_pixmap_new(pixmap, pixmask);
90 gtk_widget_show (pixmapwid);
91 gtk_container_add (GTK_CONTAINER (frame1), pixmapwid);
92 gtk_misc_set_padding (GTK_MISC (pixmapwid), 4, 4);
93
94 label1 = gtk_label_new (
95 "XMMS-SID SIDPlay plugin v" VERSION "\n"
96 "for X MultiMedia System\n"
97 "by Willem Monsuwe and\n"
98 "Matti \"ccr\" H\344m\344l\344inen\n\n"
99 "libSIDPlay by Michael Schwendt");
100
101 gtk_object_set_data (GTK_OBJECT (xs_aboutwin), "label1", label1);
102 gtk_widget_show (label1);
103 gtk_box_pack_start (GTK_BOX (hbox1), label1, FALSE, FALSE, 0);
104 gtk_misc_set_padding (GTK_MISC (label1), 8, 0);
105
106 hbuttonbox1 = gtk_hbutton_box_new ();
107 gtk_object_set_data (GTK_OBJECT (xs_aboutwin), "hbuttonbox1", hbuttonbox1);
108 gtk_widget_show (hbuttonbox1);
109 gtk_box_pack_start (GTK_BOX (vbox1), hbuttonbox1, TRUE, TRUE, 0);
110
111 /* OK-button */
112 about_ok = gtk_button_new_with_label("OK");
113
114 gtk_signal_connect (GTK_OBJECT (about_ok), "clicked",
115 GTK_SIGNAL_FUNC(xs_aboutwin_ok),
116 NULL);
117
118 gtk_object_set_data (GTK_OBJECT (xs_aboutwin), "about_ok", about_ok);
119 gtk_widget_show (about_ok);
120 gtk_container_add (GTK_CONTAINER (hbuttonbox1), about_ok);
121 GTK_WIDGET_SET_FLAGS (about_ok, GTK_CAN_DEFAULT);
122
123 gtk_widget_show(xs_aboutwin);
124 } 52 }
125 53