from PyQt4.QtSql import (QSqlTableModel)
from PyQt4.QtGui import (QPixmap)
from PyQt4.QtCore import (Qt, QVariant)

from example_media_player import ExampleMediaPlayer

class ExercisesTableModel(QSqlTableModel):
    def data(self, index, role=Qt.DisplayRole):
        if role == Qt.DecorationRole:
            filename = self.record(index.row()).value("ex_media").toString()
            video = ExampleMediaPlayer().setFilename(filename)
            pixmap = QPixmap.grabWidget(video)
            #pixmap = QPixmap(filename)
            if pixmap.isNull():
                return QVariant()
            else:
                pixmap = pixmap.scaled(64, 64)
                return QVariant(pixmap)
        
        return super(ExercisesTableModel, self).data(index, role)
