From 7be2c7248a0b29ea74e8e36db405d5974995a57b Mon Sep 17 00:00:00 2001 From: Conor Curran Date: Mon, 21 Jun 2010 16:25:16 +0100 Subject: going for generic property updates --- src/metadata-menu-item.vala | 48 ++++++++++++++++++++++++--------------------- 1 file changed, 26 insertions(+), 22 deletions(-) (limited to 'src/metadata-menu-item.vala') diff --git a/src/metadata-menu-item.vala b/src/metadata-menu-item.vala index 2b865f7..5464074 100644 --- a/src/metadata-menu-item.vala +++ b/src/metadata-menu-item.vala @@ -1,22 +1,21 @@ using Dbusmenu; using Gee; -using CommonDefs; +using DbusmenuMetadata; public class MetadataMenuitem : PlayerItem { public MetadataMenuitem() { - this.property_set(MENUITEM_PROP_TYPE, DBUSMENU_METADATA_MENUITEM_TYPE); - + this.property_set(MENUITEM_PROP_TYPE, MENUITEM_TYPE); } - public override void update(HashMap data) - { - this.property_set(DBUSMENU_METADATA_MENUITEM_TEXT_ARTIST, data.get("artist").strip()); - this.property_set(DBUSMENU_METADATA_MENUITEM_TEXT_TITLE, data.get("title").strip()); - this.property_set(DBUSMENU_METADATA_MENUITEM_TEXT_ALBUM, data.get("album").strip()); - this.property_set(DBUSMENU_METADATA_MENUITEM_IMAGE_PATH, sanitize_image_path(data.get("arturl"))); - } + //public override void update(HashMap data) + //{ + // this.property_set(MENUITEM_TEXT_ARTIST, data.get("artist").strip()); + // this.property_set(MENUITEM_TEXT_TITLE, data.get("title").strip()); + // this.property_set(MENUITEM_TEXT_ALBUM, data.get("album").strip()); + // this.property_set(MENUITEM_IMAGE_PATH, sanitize_image_path(data.get("arturl"))); + //} public static string sanitize_image_path(string path) { @@ -27,21 +26,26 @@ public class MetadataMenuitem : PlayerItem debug("Sanitize image path - result = %s", result); return result; } - - public override void handle_event(string name, GLib.Value input_value, uint timestamp) + + public static HashMap attributes_format() { - debug("MetadataItem -> handle event caught!"); - } + HashMap results = new HashMap(); + results.set(MENUITEM_TEXT_TITLE, typeof(string)); + results.set(MENUITEM_TEXT_ARTIST, typeof(string)); + results.set(MENUITEM_TEXT_ALBUM, typeof(string)); + results.set(MENUITEM_TEXT_ARTURL, typeof(string)); + return results; + } + - public static HashMap attributes() + public static HashMap format_updates(HashMap data) { - HashMap result = new HashMap(); - result.set(DBUSMENU_METADATA_MENUITEM_TEXT_ARTIST, typeof(string)); - result.set(DBUSMENU_METADATA_MENUITEM_TEXT_TITLE, typeof(string)); - result.set(DBUSMENU_METADATA_MENUITEM_TEXT_ALBUM, typeof(string)); - result.set(DBUSMENU_METADATA_MENUITEM_IMAGE_PATH, typeof(string)); + HashMap results = new HashMap(); - return result; + results.set(MENUITEM_TEXT_TITLE, (string)data.lookup("title").strip()); + results.set(MENUITEM_TEXT_ARTIST, (string)data.lookup("artist").strip()); + results.set(MENUITEM_TEXT_ALBUM, (string)data.lookup("album").strip(), typeof(string)); + results.set(MENUITEM_TEXT_ARTURL, sanitize_image_path((string)data.lookup("arturl").strip()), typeof(string)); + return results; } - } \ No newline at end of file -- cgit v1.2.3