Add Color column to GlyphDBEdit.

This commit is contained in:
Andrey Golovizin 2014-09-02 15:25:46 +02:00
parent dac3475579
commit 9bd40bd12d

View file

@ -25,6 +25,7 @@ from PyQt4.QtCore import (
from PyQt4.QtGui import (
QApplication,
QColor,
QTableView,
)
@ -78,12 +79,25 @@ class CheckBoxColumn(Column):
setattr(glyph_data, self.field_name, value == Qt.Checked)
class ColorColumn(Column):
flags = 0
data_type = None
def data(self, glyph_data, role):
r, g, b = getattr(glyph_data, self.field_name)
if role == Qt.DecorationRole:
return QColor(r, g, b)
elif role == Qt.DisplayRole:
return '#{:02x}{:02x}{:02x}'.format(r, g, b)
class GlyphDBModel(QAbstractTableModel):
COLUMNS = [
Column('Text', 'text', 'image'),
IntColumn('Elevation', 'elevation'),
CheckBoxColumn('Bold', 'bold'),
CheckBoxColumn('Italic', 'italic'),
ColorColumn('Color', 'color'),
DateColumn('Date added', 'date_added'),
]