chiark / gitweb /
propagate button in track properties popup
[disorder] / disobedience / disobedience.h
index 3998124d1b044a227064e7f9c99d8ad837797d18..c3acca7e51059577fab8b44bf10f99f68ff6e3c5 100644 (file)
@@ -1,6 +1,6 @@
 /*
  * This file is part of DisOrder.
- * Copyright (C) 2006 Richard Kettlewell
+ * Copyright (C) 2006, 2007 Richard Kettlewell
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -88,6 +88,11 @@ extern int playing;                     /* true if playing some track */
 extern int volume_l, volume_r;          /* current volume */
 extern double goesupto;                 /* volume upper bound */
 extern int choosealpha;                 /* break up choose by letter */
+extern GtkTooltips *tips;
+
+extern const disorder_eclient_log_callbacks log_callbacks;
+
+typedef void monitor_callback(void *u);
 
 /* Functions --------------------------------------------------------------- */
 
@@ -111,6 +116,13 @@ GdkPixbuf *find_image(const char *name);
 void popup_error(const char *msg);
 /* Pop up an error message */
 
+void register_monitor(monitor_callback *callback,
+                      void *u,
+                      unsigned long mask);
+/* Register a state monitor */
+
+void all_update(void);
+/* Update everything */
 
 /* Main menu */
 
@@ -127,9 +139,8 @@ void menu_update(int page);
 GtkWidget *control_widget(void);
 /* Make the controls widget */
 
-void control_update(void);
-/* Called whenever we think the control widget needs changing */
-
+void volume_update(void);
+/* Called whenever we think the volume control has changed */
 
 /* Queue/Recent */
 
@@ -147,9 +158,6 @@ void queue_select_all(struct queuelike *ql);
 void queue_properties(struct queuelike *ql);
 /* Pop up properties of selected items in some queue */
 
-void playing_update(void);
-/* Called whenever we think the currently playing track might have changed */
-
 int queued(const char *track);
 /* Return nonzero iff TRACK is queued or playing */
 
@@ -180,11 +188,22 @@ void choose_update(void);
 #define WT(what) static int current##what, max##what
 #define DW(what) (--current##what)
 #else
-#define NW(what) (0)
-#define DW(what) (0)
+#define NW(what) do { } while(0)
+#define DW(what) do { } while(0)
 #define WT(what) struct neverused
 #endif
 
+#if MTRACK
+extern const char *mtag;
+#define MTAG(x) do { mtag = x; } while(0)
+#define MTAG_PUSH(x) do { const char *save_mtag = mtag; mtag = x; (void)0
+#define MTAG_POP() mtag = save_mtag; } while(0)
+#else
+#define MTAG(x) do { } while(0)
+#define MTAG_PUSH(x) do {} while(0)
+#define MTAG_POP() do {} while(0)
+#endif
+
 #endif /* DISOBEDIENCE_H */
 
 /*