banshee r3275 - in trunk/banshee: . src/Clients/Nereid/Nereid src/Extensions/Banshee.Lastfm src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Radio



Author: gburt
Date: Tue Feb 19 21:35:08 2008
New Revision: 3275
URL: http://svn.gnome.org/viewvc/banshee?rev=3275&view=rev

Log:
2008-02-19  Gabriel Burt  <gabriel burt gmail com>

	* src/Clients/Nereid/Nereid/PlayerInterface.cs: Fix bug in getting
	sources' custom views.

	* src/Extensions/Banshee.Lastfm/Banshee.Lastfm.mdp:
	* src/Extensions/Banshee.Lastfm/Makefile.am:
	* src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Radio/LastfmSourceContents.cs:
	New class, shows how sources can set custom views.

	* src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Radio/LastfmSource.cs: Set
	the custom view, allow activating.


Added:
   trunk/banshee/src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Radio/LastfmSourceContents.cs
Modified:
   trunk/banshee/ChangeLog
   trunk/banshee/src/Clients/Nereid/Nereid/PlayerInterface.cs
   trunk/banshee/src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Radio/LastfmSource.cs
   trunk/banshee/src/Extensions/Banshee.Lastfm/Banshee.Lastfm.mdp
   trunk/banshee/src/Extensions/Banshee.Lastfm/Makefile.am

Modified: trunk/banshee/src/Clients/Nereid/Nereid/PlayerInterface.cs
==============================================================================
--- trunk/banshee/src/Clients/Nereid/Nereid/PlayerInterface.cs	(original)
+++ trunk/banshee/src/Clients/Nereid/Nereid/PlayerInterface.cs	Tue Feb 19 21:35:08 2008
@@ -282,7 +282,7 @@
 
             // Connect the source models to the views if possible
             if (source.Properties.Contains ("NereidSourceContents")) {
-                view_container.Content = source.Properties.Get<ISourceContents> ("NereidView");
+                view_container.Content = source.Properties.Get<ISourceContents> ("NereidSourceContents");
                 view_container.Content.SetSource (source);
             } else if (source is ITrackModelSource) {
                 if (composite_view.TrackModel != null) {

Modified: trunk/banshee/src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Radio/LastfmSource.cs
==============================================================================
--- trunk/banshee/src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Radio/LastfmSource.cs	(original)
+++ trunk/banshee/src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Radio/LastfmSource.cs	Tue Feb 19 21:35:08 2008
@@ -44,6 +44,8 @@
 using Banshee.ServiceStack;
 using Banshee.Networking;
 
+using Banshee.Sources.Gui;
+
 namespace Banshee.Lastfm.Radio
 {   
     public class LastfmSource : Source, IDisposable
@@ -87,6 +89,9 @@
             Properties.SetString ("Icon.Name", "audioscrobbler");
             Properties.SetString ("SourcePropertiesActionLabel", Catalog.GetString ("Edit Last.fm Settings"));
 
+            // FIXME this is temporary until we split the GUI part from the non-GUI part
+            Properties.Set<ISourceContents> ("NereidSourceContents", new LastfmSourceContents ());
+
             actions = new LastfmActions (this);
 
             ServiceManager.SourceManager.AddSource (this);
@@ -246,7 +251,7 @@
         }
 
         public override bool CanActivate {
-            get { return false; }
+            get { return true; }
         }
 
         public override bool HasProperties {

Added: trunk/banshee/src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Radio/LastfmSourceContents.cs
==============================================================================
--- (empty file)
+++ trunk/banshee/src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Radio/LastfmSourceContents.cs	Tue Feb 19 21:35:08 2008
@@ -0,0 +1,35 @@
+
+using System;
+using Gtk;
+using Banshee.Sources;
+using Banshee.Sources.Gui;
+
+namespace Banshee.Lastfm.Radio
+{
+    public class LastfmSourceContents : Gtk.Label, ISourceContents
+    {
+        private Source source;
+        public LastfmSourceContents () : base ("Coming Soon: Profile, Friends, Recently Loved Songs, etc")
+        {
+        }
+
+        public bool SetSource (Source source)
+        {
+            this.source = source;
+            return true;
+        }
+
+        public Source Source {
+            get { return source; }
+        }
+
+        public void ResetSource ()
+        {
+            source = null;
+        }
+
+        public Widget Widget {
+            get { return this; }
+        }
+    }
+}

Modified: trunk/banshee/src/Extensions/Banshee.Lastfm/Banshee.Lastfm.mdp
==============================================================================
--- trunk/banshee/src/Extensions/Banshee.Lastfm/Banshee.Lastfm.mdp	(original)
+++ trunk/banshee/src/Extensions/Banshee.Lastfm/Banshee.Lastfm.mdp	Tue Feb 19 21:35:08 2008
@@ -10,6 +10,7 @@
   <Contents>
     <File name="Banshee.Lastfm.Radio/LastfmActions.cs" subtype="Code" buildaction="Compile" />
     <File name="Banshee.Lastfm.Radio/LastfmSource.cs" subtype="Code" buildaction="Compile" />
+    <File name="Banshee.Lastfm.Radio/LastfmSourceContents.cs" subtype="Code" buildaction="Compile" />
     <File name="Banshee.Lastfm.Radio/LastfmTrackInfo.cs" subtype="Code" buildaction="Compile" />
     <File name="Banshee.Lastfm.Radio/LastfmTrackListModel.cs" subtype="Code" buildaction="Compile" />
     <File name="Banshee.Lastfm.Radio/StationEditor.cs" subtype="Code" buildaction="Compile" />

Modified: trunk/banshee/src/Extensions/Banshee.Lastfm/Makefile.am
==============================================================================
--- trunk/banshee/src/Extensions/Banshee.Lastfm/Makefile.am	(original)
+++ trunk/banshee/src/Extensions/Banshee.Lastfm/Makefile.am	Tue Feb 19 21:35:08 2008
@@ -6,6 +6,7 @@
 	Banshee.Lastfm.Radio/Connection.cs \
 	Banshee.Lastfm.Radio/LastfmActions.cs \
 	Banshee.Lastfm.Radio/LastfmSource.cs \
+	Banshee.Lastfm.Radio/LastfmSourceContents.cs \
 	Banshee.Lastfm.Radio/LastfmTrackInfo.cs \
 	Banshee.Lastfm.Radio/LastfmTrackListModel.cs \
 	Banshee.Lastfm.Radio/StationEditor.cs \



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]