1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
|
diff -ur xosd-2.2.5.orig/src/xmms_plugin/dlg_config.c xosd-2.2.5/src/xmms_plugin/dlg_config.c
--- xosd-2.2.5.orig/src/xmms_plugin/dlg_config.c 2003-09-29 22:48:34.875787152 -0400
+++ xosd-2.2.5/src/xmms_plugin/dlg_config.c 2003-09-29 22:49:59.710890256 -0400
@@ -26,7 +26,7 @@
static GtkToggleButton
* vol_on, *bal_on,
- *pause_on, *trackname_on, *stop_on, *repeat_on, *shuffle_on;
+ *pause_on, *trackname_on, *stop_on, *repeat_on, *shuffle_on, *listpos_on;
static GtkWidget *configure_win;
static GtkObject *timeout_obj, *offset_obj, *h_offset_obj, *shadow_obj,
*outline_obj;
@@ -58,7 +58,7 @@
show.stop = isactive (stop_on);
show.repeat = isactive (repeat_on);
show.shuffle = isactive (shuffle_on);
-
+ show.listpos = isactive (listpos_on);
if (colour)
g_free (colour);
@@ -564,11 +564,12 @@
show_item (vbox2, "Balance", show.balance, &bal_on);
show_item (vbox2, "Pause", show.pause, &pause_on);
show_item (vbox2, "Track Name", show.trackname, &trackname_on);
- vbox2 = gtk_vbox_new (FALSE, 5);
+ vbox2 = gtk_vbox_new (FALSE, 4);
gtk_box_pack_start (GTK_BOX (hbox2), vbox2, FALSE, FALSE, 0);
show_item (vbox2, "Stop", show.stop, &stop_on);
show_item (vbox2, "Repeat", show.repeat, &repeat_on);
show_item (vbox2, "Shuffle", show.shuffle, &shuffle_on);
+ show_item (vbox2, "Playlist Position", show.listpos, &listpos_on);
sep = gtk_hseparator_new ();
gtk_box_pack_start (GTK_BOX (vbox), sep, FALSE, FALSE, 0);
diff -ur xosd-2.2.5.orig/src/xmms_plugin/xmms_osd.c xosd-2.2.5/src/xmms_plugin/xmms_osd.c
--- xosd-2.2.5.orig/src/xmms_plugin/xmms_osd.c 2003-09-29 22:48:34.874787304 -0400
+++ xosd-2.2.5/src/xmms_plugin/xmms_osd.c 2003-09-29 22:54:27.111239224 -0400
@@ -175,6 +175,7 @@
show.stop = 1;
show.repeat = 1;
show.shuffle = 1;
+ show.listpos = 1;
g_free (colour);
g_free (font);
@@ -207,6 +208,7 @@
xmms_cfg_read_int (cfgfile, "osd", "show_stop", &show.stop);
xmms_cfg_read_int (cfgfile, "osd", "show_repeat", &show.repeat);
xmms_cfg_read_int (cfgfile, "osd", "show_shuffle", &show.shuffle);
+ xmms_cfg_read_int (cfgfile, "osd", "show_listpos", &show.listpos);
xmms_cfg_free (cfgfile);
}
@@ -249,6 +251,7 @@
xmms_cfg_write_int (cfgfile, "osd", "show_stop", show.stop);
xmms_cfg_write_int (cfgfile, "osd", "show_repeat", show.repeat);
xmms_cfg_write_int (cfgfile, "osd", "show_shuffle", show.shuffle);
+ xmms_cfg_write_int (cfgfile, "osd", "show_listpos", show.listpos);
xmms_cfg_write_default_file (cfgfile);
xmms_cfg_free (cfgfile);
@@ -376,10 +379,13 @@
if (title != NULL)
{
title2 = malloc (strlen (current.title) + 26);
+ if (show.listpos)
sprintf (title2, "%i/%i: %s",
xmms_remote_get_playlist_pos (gp.xmms_session) + 1,
xmms_remote_get_playlist_length (gp.xmms_session),
current.title);
+ else
+ sprintf (title2,"%s",current.title);
}
}
}
@@ -400,6 +406,7 @@
if (current.title != NULL)
{
title2 = malloc (strlen (current.title) + 52);
+ if (show.listpos)
sprintf (title2, "%i/%i: %s (%.2i:%.2i)",
xmms_remote_get_playlist_pos (gp.xmms_session) + 1,
xmms_remote_get_playlist_length (gp.xmms_session),
@@ -408,6 +415,11 @@
1000 / 60,
xmms_remote_get_output_time (gp.xmms_session) /
1000 % 60);
+ else
+ sprintf (title2,"%s (%.2i:%.2i)",
+ current.title,
+ xmms_remote_get_output_time(gp.xmms_session)/1000/60,
+ xmms_remote_get_output_time(gp.xmms_session)/1000%60);
}
}
}
diff -ur xosd-2.2.5.orig/src/xmms_plugin/xmms_osd.h xosd-2.2.5/src/xmms_plugin/xmms_osd.h
--- xosd-2.2.5.orig/src/xmms_plugin/xmms_osd.h 2003-09-29 22:48:34.874787304 -0400
+++ xosd-2.2.5/src/xmms_plugin/xmms_osd.h 2003-09-29 22:54:45.944376152 -0400
@@ -21,6 +21,7 @@
gboolean stop;
gboolean repeat;
gboolean shuffle;
+ gboolean listpos;
};
extern struct show show;
|