[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    extragear/multimedia/amarok/src/collection/iphoneos
From:       Martin Aumüller <aumuell () reserv ! at>
Date:       2009-07-15 0:21:27
Message-ID: 1247617287.125581.31834.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 996841 by aumuell:

implement playlist capability

 M  +1 -0      CMakeLists.txt  
 M  +13 -8     handler/IphoneOsHandler.cpp  
 M  +3 -1      handler/IphoneOsHandler.h  
 A             handler/capabilities/IphoneOsPlaylistCapability.cpp   [License: GPL \
(v2+)]  A             handler/capabilities/IphoneOsPlaylistCapability.h   [License: \
GPL (v2+)]  M  +3 -0      handler/capabilities/IphoneOsReadCapability.cpp  


--- trunk/extragear/multimedia/amarok/src/collection/iphoneos/CMakeLists.txt \
#996840:996841 @@ -27,6 +27,7 @@
    support/IphoneOsDeviceInfo.cpp
    handler/IphoneOsHandler.cpp
    handler/capabilities/IphoneOsReadCapability.cpp
+   handler/capabilities/IphoneOsPlaylistCapability.cpp
    )
 
 kde4_add_plugin(amarok_collection-iphoneoscollection WITH_PREFIX
--- trunk/extragear/multimedia/amarok/src/collection/iphoneos/handler/IphoneOsHandler.cpp \
#996840:996841 @@ -36,6 +36,7 @@
 
 #include "IphoneOsCollection.h"
 #include "capabilities/IphoneOsReadCapability.h"
+#include "capabilities/IphoneOsPlaylistCapability.h"
 #include "Debug.h"
 
 #include <KCodecs> // KMD5
@@ -96,6 +97,8 @@
     {
         case Handler::Capability::Readable:
             return true;
+        case Handler::Capability::Playlist:
+            return true;
 
         default:
             return false;
@@ -109,6 +112,8 @@
     {
         case Handler::Capability::Readable:
             return new Handler::IphoneOsReadCapability( this );
+        case Handler::Capability::Playlist:
+            return new Handler::IphoneOsPlaylistCapability( this );
 
         default:
             return 0;
@@ -155,10 +160,10 @@
 MediaDeviceTrackPtr &
 IphoneOsHandler::metaForPid(const QString &pid)
 {
-    if(pid == m_currentPid)
+    if(pid == m_cachedPid)
         return m_currentMeta;
 
-    m_currentPid = pid;
+    m_cachedPid = pid;
 
     MediaDeviceTrackPtr &meta = m_currentMeta;
 
@@ -175,7 +180,7 @@
     QStringList libResult = query(m_libraryDb, sql);
     if(libResult.size() < 14)
     {
-        debug() << "track lib" << m_currentPidIndex << m_currentPid << libResult;
+        debug() << "track lib" << pid << libResult;
         while(libResult.size() < 20)
             libResult.push_back(QString("ERROR!!!"));
     }
@@ -216,7 +221,7 @@
     QStringList dynResult = query(m_dynamicDb, sql);
     if(dynResult.size() < 3)
     {
-        debug() << "track dyn" << m_currentPidIndex << dynResult;
+        debug() << "track dyn" << pid << dynResult;
         while(dynResult.size() < 10)
             dynResult.push_back(QString("ERROR!!!"));
     }
@@ -234,7 +239,7 @@
     QStringList locResult = query(m_locationsDb, sql);
     if(locResult.size() < 5)
     {
-        debug() << "track loc" << m_currentPidIndex << locResult;
+        debug() << "track loc" << pid << locResult;
         while(locResult.size() < 10)
             locResult.push_back(QString("ERROR!!!"));
     }
@@ -354,7 +359,8 @@
 void
 IphoneOsHandler::prepareToParseTracks()
 {
-    QString statement = "SELECT pid FROM item WHERE is_song='1';";
+    //QString statement = "SELECT pid FROM item WHERE is_song='1';";
+    QString statement = "SELECT pid FROM item;";
     m_pids = query(m_libraryDb, statement);
     m_currentPidIndex = 0;
 
@@ -370,8 +376,7 @@
 void
 IphoneOsHandler::prepareToParseNextTrack()
 {
-    m_currentPid = m_pids[m_currentPidIndex];
-    metaForPid(m_currentPid);
+    metaForPid(m_pids[m_currentPidIndex]);
 }
 
 void
--- trunk/extragear/multimedia/amarok/src/collection/iphoneos/handler/IphoneOsHandler.h \
#996840:996841 @@ -44,6 +44,7 @@
 namespace Handler
 {
     class IphoneOsReadCapability;
+    class IphoneOsPlaylistCapability;
 };
 
 struct sqlite3;
@@ -72,6 +73,7 @@
     virtual Handler::Capability* createCapabilityInterface( \
Handler::Capability::Type type );  
     friend class Handler::IphoneOsReadCapability;
+    friend class Handler::IphoneOsPlaylistCapability;
 
 public:
     bool isWritable() const { return false; }
@@ -96,7 +98,7 @@
     QStringList       m_pids; // list of all persistent ids
 
     int               m_currentPidIndex;
-    QString           m_currentPid;
+    QString           m_cachedPid;
     MediaDeviceTrackPtr  m_currentMeta;
     QHash<Meta::MediaDeviceTrackPtr, QString> m_trackhash;
 
--- trunk/extragear/multimedia/amarok/src/collection/iphoneos/handler/capabilities/IphoneOsReadCapability.cpp \
#996840:996841 @@ -14,6 +14,8 @@
  * this program.  If not, see <http://www.gnu.org/licenses/>.                        \
                *
  ****************************************************************************************/
  
+#define DEBUG_PREFIX "IphoneOs::ReadCapability"
+
 #include "IphoneOsReadCapability.h"
 #include "../IphoneOsHandler.h"
 
@@ -23,6 +25,7 @@
 IphoneOsReadCapability::IphoneOsReadCapability( Meta::IphoneOsHandler *handler )
 : m_handler(handler)
 {
+    DEBUG_BLOCK
 }
 
 bool


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic