banshee r4307 - in trunk/banshee: . src/Core/Banshee.ThickClient src/Core/Banshee.ThickClient/Banshee.Library.Gui
- From: gburt svn gnome org
- To: svn-commits-list gnome org
- Subject: banshee r4307 - in trunk/banshee: . src/Core/Banshee.ThickClient src/Core/Banshee.ThickClient/Banshee.Library.Gui
- Date: Thu, 31 Jul 2008 01:08:04 +0000 (UTC)
Author: gburt
Date: Thu Jul 31 01:08:04 2008
New Revision: 4307
URL: http://svn.gnome.org/viewvc/banshee?rev=4307&view=rev
Log:
2008-07-30 Gabriel Burt <gabriel burt gmail com>
* src/Core/Banshee.ThickClient/Makefile.am:
* src/Core/Banshee.ThickClient/Banshee.ThickClient.mdp:
* src/Core/Banshee.ThickClient/Banshee.Library.Gui/PhotoFolderImportSource.cs:
New import source to help people import videos they took on their digital
cameras, located in their Photos directory.
Added:
trunk/banshee/src/Core/Banshee.ThickClient/Banshee.Library.Gui/PhotoFolderImportSource.cs
Modified:
trunk/banshee/ChangeLog
trunk/banshee/src/Core/Banshee.ThickClient/Banshee.ThickClient.mdp
trunk/banshee/src/Core/Banshee.ThickClient/Makefile.am
Added: trunk/banshee/src/Core/Banshee.ThickClient/Banshee.Library.Gui/PhotoFolderImportSource.cs
==============================================================================
--- (empty file)
+++ trunk/banshee/src/Core/Banshee.ThickClient/Banshee.Library.Gui/PhotoFolderImportSource.cs Thu Jul 31 01:08:04 2008
@@ -0,0 +1,93 @@
+//
+// PhotoFolderImportSource.cs
+//
+// Author:
+// Gabriel Burt <gburt novell com>
+//
+// Copyright (C) 2008 Novell, Inc.
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using Mono.Unix;
+using Gtk;
+
+using Banshee.Base;
+
+namespace Banshee.Library.Gui
+{
+ public class PhotoFolderImportSource : IImportSource
+ {
+ private string [] photo_folders;
+
+ public PhotoFolderImportSource ()
+ {
+ string personal = Environment.GetFolderPath (Environment.SpecialFolder.Personal);
+ string desktop = Environment.GetFolderPath (Environment.SpecialFolder.Desktop);
+
+ photo_folders = new string [] {
+ Environment.GetFolderPath (Environment.SpecialFolder.MyPictures),
+ Paths.Combine (desktop, "Photos"),
+ Paths.Combine (personal, "Photos")
+ };
+
+ // Make sure we don't accidentally scan the entire home or desktop directory
+ for (int i = 0; i < photo_folders.Length; i++) {
+ if (photo_folders[i] == personal || photo_folders[i] == desktop) {
+ photo_folders[i] = null;
+ }
+ }
+ }
+
+ public void Import ()
+ {
+ Hyena.Log.DebugFormat ("Importing photo folder: {0}", PhotoFolder);
+ Banshee.ServiceStack.ServiceManager.Get<LibraryImportManager> ().Enqueue (PhotoFolder);
+ }
+
+ public string Name {
+ get { return Catalog.GetString ("Videos from Photos Folder"); }
+ }
+
+ public string [] IconNames {
+ get { return new string [] { "gtk-open" }; }
+ }
+
+ public bool CanImport {
+ get { return PhotoFolder != null; }
+ }
+
+ private string PhotoFolder {
+ get {
+ foreach (string folder in photo_folders) {
+ if (folder != null && Banshee.IO.Directory.Exists (folder)) {
+ return folder;
+ }
+ }
+ return null;
+ }
+ }
+
+ public int SortOrder {
+ get { return 0; }
+ }
+ }
+}
Modified: trunk/banshee/src/Core/Banshee.ThickClient/Banshee.ThickClient.mdp
==============================================================================
--- trunk/banshee/src/Core/Banshee.ThickClient/Banshee.ThickClient.mdp (original)
+++ trunk/banshee/src/Core/Banshee.ThickClient/Banshee.ThickClient.mdp Thu Jul 31 01:08:04 2008
@@ -118,6 +118,7 @@
<File name="Banshee.Collection.Gui/ColumnCellQueryText.cs" subtype="Code" buildaction="Compile" />
<File name="Banshee.Collection.Gui/QueryFilterView.cs" subtype="Code" buildaction="Compile" />
<File name="Banshee.Gui.Widgets/ClassicTrackInfoDisplay.cs" subtype="Code" buildaction="Compile" />
+ <File name="Banshee.Library.Gui/PhotoFolderImportSource.cs" subtype="Code" buildaction="Compile" />
</Contents>
<References>
<ProjectReference type="Project" localcopy="False" refto="Hyena.Gui" />
@@ -139,6 +140,7 @@
<ProjectReference type="Gac" localcopy="True" refto="taglib-sharp, Version=2.0.3.0, Culture=neutral, PublicKeyToken=db62eba44689b5b0" />
</References>
<Deployment.LinuxDeployData generateScript="False" />
+ <GtkDesignInfo gtkVersion="2.12.1" />
<MonoDevelop.Autotools.MakefileInfo IntegrationEnabled="True" RelativeMakefileName="Makefile.am">
<BuildFilesVar Sync="True" Name="SOURCES" />
<DeployFilesVar />
Modified: trunk/banshee/src/Core/Banshee.ThickClient/Makefile.am
==============================================================================
--- trunk/banshee/src/Core/Banshee.ThickClient/Makefile.am (original)
+++ trunk/banshee/src/Core/Banshee.ThickClient/Makefile.am Thu Jul 31 01:08:04 2008
@@ -81,6 +81,7 @@
Banshee.Library.Gui/FileImportSource.cs \
Banshee.Library.Gui/FolderImportSource.cs \
Banshee.Library.Gui/ImportDialog.cs \
+ Banshee.Library.Gui/PhotoFolderImportSource.cs \
Banshee.MediaProfiles.Gui/ProfileComboBox.cs \
Banshee.MediaProfiles.Gui/ProfileComboBoxConfigurable.cs \
Banshee.MediaProfiles.Gui/ProfileConfigurationDialog.cs \
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]