Move the qml/* files to the src folder. Now it is the main version
[mussorgsky] / src / qml / controller.py
diff --git a/src/qml/controller.py b/src/qml/controller.py
deleted file mode 100644 (file)
index db4f296..0000000
+++ /dev/null
@@ -1,126 +0,0 @@
-# -*- coding: utf-8 -*-
-import os
-import sys
-from PySide import QtCore
-from PySide import QtGui
-from PySide import QtDeclarative
-
-from aa_search import MussorgskyAlbumArt
-
-try:
-    from tracker_backend_gi import TrackerBackendGI as TrackerBackend
-except ImportError:
-    from tracker_backend_dbus import TrackerBackendDBus as TrackerBackend
-
-from albumItem import AlbumItem
-from coverModel import CoversModel 
-
-class DownloadThread (QtCore.QThread):
-
-    def __init__ (self, model, album):
-        QtCore.QThread.__init__ (self)
-        self.downloader = MussorgskyAlbumArt ()
-        self.model = model
-        self.album = album
-
-    def run (self):
-        print "Running the thread"
-        MAX_OPTIONS = 4
-        counter = 0
-        for img in self.downloader.get_alternatives (self.album.artist,
-                                                     self.album.title, MAX_OPTIONS):
-            if counter >= MAX_OPTIONS:
-                break
-
-            self.model.updateData (counter, img)
-            counter += 1
-
-
-class MassiveDownloadsThread (QtCore.QThread):
-
-    def __init__ (self, albumModel):
-        QtCore.QThread.__init__ (self)
-        self.downloader = MussorgskyAlbumArt ()
-        self.albumModel = albumModel
-
-    def run (self):
-        print "Download one cover per-album in a thread"
-        import time
-        time.sleep (4)
-        for albumItem in self.albumModel.get_albums ():
-            if albumItem.require_download:
-                self.downloader.get_album_art (albumItem)
-            
-
-class MussorgskyController (QtCore.QObject):
-
-    def __init__ (self, rootContext):
-        QtCore.QObject.__init__ (self)
-        self.download = None
-        self.ctx = rootContext 
-        self.tracker = TrackerBackend ()
-        self.__is_downloading = False
-
-    def _is_downloading (self):
-        return self.__is_downloading
-
-    def _set_is_downloading (self, value):
-        if (value != self.__is_downloading):
-            self.__is_downloading = value
-            self.is_downloading_changed.emit ()
-
-    is_downloading_changed = QtCore.Signal ()
-    is_downloading = QtCore.Property (bool, _is_downloading, notify=is_downloading_changed)
-
-    @QtCore.Slot (QtCore.QObject)
-    def download_all (self, albumModel):
-        self._set_is_downloading (True)
-        self.download_all_thread = MassiveDownloadsThread (albumModel)
-        self.download_all_thread.finished.connect (self.download_all_finished)
-        self.download_all_thread.start ()
-        print "now we are downloading..."
-
-    @QtCore.Slot ()
-    def download_all_finished (self):
-        self._set_is_downloading (False)
-        
-
-    @QtCore.Slot (QtCore.QObject)
-    def get_options_for (self, albumItem):
-        print "Getting options for", albumItem.title
-        m = CoversModel (albumItem)
-        print m.rowCount ()
-        self.ctx.setContextProperty ("coversModel", m)
-        self.download = DownloadThread (m, albumItem)
-        self.download.start ()
-
-    @QtCore.Slot (QtCore.QObject, int)
-    def save_option_for (self, coversModel, index):
-        print "Saving option", index
-        coverItem = coversModel.getData (index)
-        coverItem.save (coversModel.albumItem.get_aa ().get_media_art_path ())
-        # Update the main model. Is this enough?
-        if not coverItem.initialImage and not coverItem.deleteAction:
-            coversModel.albumItem.album_art = None
-            coversModel.albumItem.album_art = coversModel.albumItem.get_aa().get_media_art_path ()
-        elif coverItem.deleteAction:
-            coversModel.albumItem.resetAlbumArt ()
-
-        coversModel.cleanCache ()
-
-
-    @QtCore.Slot ()
-    def stop_pending_jobs (self):
-        if self.download :
-            self.download.quit ()
-
-    def get_all_albums (self):
-        """
-        Return a list of AlbumItem objects to build the model
-        This is not called from QML, no need to make it a slot
-        """
-        results = []
-        for album_title, album_artist in self.tracker.get_all_albums ():
-            results.append (AlbumItem (album_title, album_artist))
-        return results
-