Mercurial > pidgin-audacious
diff pidgin-audacious.h @ 22:fbad40babe88
build system update:
- ported Makefile.in from pidgin-twitter.
- ported autogen.sh from pidgin-twitter.
- moved some declarations and definitions to pidgin-audacious.h
- updated configure.in to go along with new Makefile.
- removed aclocal.m4 from version control.
author | Yoshiki Yazawa <yaz@honeyplanet.jp> |
---|---|
date | Mon, 06 Oct 2008 18:18:06 +0900 |
parents | |
children | dffc9604a9fb |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/pidgin-audacious.h Mon Oct 06 18:18:06 2008 +0900 @@ -0,0 +1,65 @@ +#ifndef _PIDGIN_AUDACIOUS_H_ +#define _PIDGIN_AUDACIOUS_H_ + +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#include <glib.h> +#include <dbus/dbus.h> +#include <dbus/dbus-glib.h> + +#include "gtkplugin.h" +#include "util.h" +#include "debug.h" +#include "connection.h" +#include "version.h" +#include "cmds.h" +#include "savedstatuses.h" + +#define PIDGINAUD_PLUGIN_ID "pidgin_audacious" +#define PLUGIN_NAME "Pidgin-Audacious" + +/* preferences */ +#define OPT_PIDGINAUD "/plugins/pidgin_audacious" +#define OPT_PROCESS_STATUS OPT_PIDGINAUD "/process_status" +#define OPT_PROCESS_USERINFO OPT_PIDGINAUD "/process_userinfo" +#define OPT_SONG_TEMPLATE OPT_PIDGINAUD "/song_template" +#define OPT_PASTE_TEMPLATE OPT_PIDGINAUD "/paste_template" +#define OPT_LOG_OUTPUT OPT_PIDGINAUD "/log_output" +#define OPT_PLAYER OPT_PIDGINAUD "/player" + +/* templates */ +#define TITLE "%title" +#define ARTIST "%artist" +#define ALBUM "%album" +#define GENRE "%genre" +#define DEFAULT_SONG_TEMPLATE "%title - %artist" +#define DEFAULT_PLAYER "audacious" +#define SONG_TOKEN "%song" +#define NO_SONG_MESSAGE "No song being played." + +/* constants */ +#define DBUS_TIMEOUT 1000 +#define PLAYING 0 +#define PAUSED 1 +#define STOPPED 2 + +/* custom data type */ +typedef struct song_tuple { + gchar *title; + gchar *artist; + gchar *album; + gchar *genre; +} song_tuple; + +/* mpris data containers */ +#define DBUS_TYPE_MPRIS_STATUS (dbus_g_type_get_struct ("GValueArray", G_TYPE_INT, G_TYPE_INT, G_TYPE_INT, G_TYPE_INT, G_TYPE_INVALID)) + +#define DBUS_TYPE_G_STRING_VALUE_HASHTABLE (dbus_g_type_get_map ("GHashTable", G_TYPE_STRING, G_TYPE_VALUE)) + +/* debug macros */ +#define aud_debug(fmt, ...) do { if(purple_prefs_get_bool(OPT_LOG_OUTPUT)) purple_debug(PURPLE_DEBUG_INFO, PLUGIN_NAME, "%s():%4d: " fmt, __FUNCTION__, (int)__LINE__, ## __VA_ARGS__); } while(0); + +#define aud_error(fmt, ...) do { if(purple_prefs_get_bool(OPT_LOG_OUTPUT)) purple_debug(PURPLE_DEBUG_ERROR, PLUGIN_NAME, "%s():%4d: " fmt, __FUNCTION__, (int)__LINE__, ## __VA_ARGS__); } while(0); + +#endif