diff options
author | Conor Curran <conor.curran@canonical.com> | 2010-06-10 12:46:17 +0100 |
---|---|---|
committer | Conor Curran <conor.curran@canonical.com> | 2010-06-10 12:46:17 +0100 |
commit | c98d1cd6c1f1bc875eae17d77680c8ce5d6acb5f (patch) | |
tree | 300af11448e6524603548570d55560053465d9d3 /src/player-controller.vala | |
parent | 8e51465790989d6b8ed8194a0d9a86fe7b3412d5 (diff) | |
download | ayatana-indicator-sound-c98d1cd6c1f1bc875eae17d77680c8ce5d6acb5f.tar.gz ayatana-indicator-sound-c98d1cd6c1f1bc875eae17d77680c8ce5d6acb5f.tar.bz2 ayatana-indicator-sound-c98d1cd6c1f1bc875eae17d77680c8ce5d6acb5f.zip |
player controller object underway
Diffstat (limited to 'src/player-controller.vala')
-rw-r--r-- | src/player-controller.vala | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/src/player-controller.vala b/src/player-controller.vala new file mode 100644 index 0000000..9cdf527 --- /dev/null +++ b/src/player-controller.vala @@ -0,0 +1,47 @@ +using Dbusmenu; +using Gee; + +public class PlayerController : GLib.Object +{ + private Dbusmenu.Menuitem root_menu; + private string name; + private bool is_active; + private ArrayList<Dbusmenu.Menuitem> custom_items; + + public PlayerController(Dbusmenu.Menuitem root, string client_name, bool active) + { + this.root_menu = root; + this.name = format_client_name(client_name); + this.is_active = active; + this.custom_items = new ArrayList<Dbusmenu.Menuitem>(); + //Dbusmenu.Menuitem[]; + self_construct(); + } + + public void self_construct() + { + Dbusmenu.Menuitem client_item = new Dbusmenu.Menuitem(); + this.custom_items.add(client_item); + client_item.property_set(MENUITEM_PROP_LABEL, this.name.concat("")); + TransportMenuItem transport_item = new TransportMenuItem(); + this.custom_items.add(transport_item); + root_menu.child_append(client_item); + root_menu.child_append(transport_item); + } + + public void vanish() + { + foreach(Dbusmenu.Menuitem item in this.custom_items){ + root_menu.child_delete(item); + } + } + + public static string format_client_name(string client_name) + { + debug("PlayerController->format_client_name"); + //string first_letter = client_name.slice(1); + //debug("PlayerController->format_client_name - first_letter: %s", first_letter); + return client_name; + } + +}
\ No newline at end of file |