Example #1
0
    def run(self):
        L.d("running")
        self.stopvar = False
        rex = re.compile(".*\[(\d{7})\]$")
        imdb_db = imdb.IMDb()
        db = get_user_db()
        tp = QThreadPool.globalInstance()
        writer = IndexWriter()
        count = 0

        it = QDirIterator(self.media_path, QDirIterator.Subdirectories)
        while it.hasNext():
            dir = it.next()
            try:
                directory = unicode(dir)
                match = rex.match(directory)
                if match:
                    count += 1
                    imdb_id = match.group(1)
                    movie = db.get_doc(imdb_id)
                    if movie:
                        L.d("%s already in db - skipping" % imdb_id)
                    else:
                        j = Job(imdb_db, imdb_id, self)
                        j.obj.finished.connect(writer.index_movie,
                                               Qt.QueuedConnection)
                        tp.start(j)
            except:
                pass
        print count
        self.exec_()
Example #2
0
    def load_icons(self):
        for format in QImageReader.supportedImageFormats():
            self.supported_image_formats.add('.' + str(format))

        it = QDirIterator(":", QDirIterator.Subdirectories)
        while it.hasNext():
            path = it.next()
            fn, ext = os.path.splitext(path)
            if ext in self.supported_image_formats:
                image = QImage(path)
                self.icons.append(image)
                self.paths.append(path)
Example #3
0
    def open_folder(self):
        self.imagesList.clear()
        if not self.current_directory:
            self.current_directory = QFileDialog.getExistingDirectory(
                parent=self, caption=u'Add images from directory')

        folder = QDir(self.current_directory)
        folder.setNameFilters(['*.png'])
        folder.setFilter(QDir.Files or QDir.NoDotAndDotDot)

        dir_iterator = QDirIterator(folder,
                                    flags=QDirIterator.Subdirectories,
                                    filters=QDir.Files)

        images = []

        while dir_iterator.hasNext():
            images.append(folder.relativeFilePath(dir_iterator.next()))

        self.white_albatross.addImages(folder, images)
        self.imagesList.addItems(images)