Add Color column to GlyphDBEdit.
This commit is contained in:
parent
dac3475579
commit
9bd40bd12d
1 changed files with 14 additions and 0 deletions
|
|
@ -25,6 +25,7 @@ from PyQt4.QtCore import (
|
||||||
|
|
||||||
from PyQt4.QtGui import (
|
from PyQt4.QtGui import (
|
||||||
QApplication,
|
QApplication,
|
||||||
|
QColor,
|
||||||
QTableView,
|
QTableView,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
@ -78,12 +79,25 @@ class CheckBoxColumn(Column):
|
||||||
setattr(glyph_data, self.field_name, value == Qt.Checked)
|
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):
|
class GlyphDBModel(QAbstractTableModel):
|
||||||
COLUMNS = [
|
COLUMNS = [
|
||||||
Column('Text', 'text', 'image'),
|
Column('Text', 'text', 'image'),
|
||||||
IntColumn('Elevation', 'elevation'),
|
IntColumn('Elevation', 'elevation'),
|
||||||
CheckBoxColumn('Bold', 'bold'),
|
CheckBoxColumn('Bold', 'bold'),
|
||||||
CheckBoxColumn('Italic', 'italic'),
|
CheckBoxColumn('Italic', 'italic'),
|
||||||
|
ColorColumn('Color', 'color'),
|
||||||
DateColumn('Date added', 'date_added'),
|
DateColumn('Date added', 'date_added'),
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue