|
|
|
@ -49,10 +49,10 @@ enum PropPriority {IGNORED=0, NORMAL=1, HIGH=2, MAXIMUM=7};
@@ -49,10 +49,10 @@ enum PropPriority {IGNORED=0, NORMAL=1, HIGH=2, MAXIMUM=7};
|
|
|
|
|
class PropListDelegate: public QItemDelegate { |
|
|
|
|
Q_OBJECT |
|
|
|
|
|
|
|
|
|
signals: |
|
|
|
|
void filteredFilesChanged(); |
|
|
|
|
signals: |
|
|
|
|
void filteredFilesChanged() const; |
|
|
|
|
|
|
|
|
|
public: |
|
|
|
|
public: |
|
|
|
|
PropListDelegate(QObject *parent=0) : QItemDelegate(parent){ |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -60,7 +60,6 @@ class PropListDelegate: public QItemDelegate {
@@ -60,7 +60,6 @@ class PropListDelegate: public QItemDelegate {
|
|
|
|
|
|
|
|
|
|
void paint(QPainter * painter, const QStyleOptionViewItem & option, const QModelIndex & index) const{ |
|
|
|
|
QStyleOptionViewItemV2 opt = QItemDelegate::setOptions(index, option); |
|
|
|
|
QPalette::ColorGroup cg = option.state & QStyle::State_Enabled ? QPalette::Normal : QPalette::Disabled; |
|
|
|
|
switch(index.column()){ |
|
|
|
|
case SIZE: |
|
|
|
|
QItemDelegate::drawBackground(painter, opt, index); |
|
|
|
@ -100,11 +99,11 @@ class PropListDelegate: public QItemDelegate {
@@ -100,11 +99,11 @@ class PropListDelegate: public QItemDelegate {
|
|
|
|
|
newopt.currentText = tr("Normal", "Normal (priority)"); |
|
|
|
|
} |
|
|
|
|
newopt.state |= QStyle::State_Enabled; |
|
|
|
|
QApplication::style()->drawComplexControl(QStyle::CC_ComboBox, &newopt, |
|
|
|
|
painter); |
|
|
|
|
opt.palette.setColor(QPalette::Text, QColor("black")); |
|
|
|
|
painter->setPen(opt.palette.color(cg, QPalette::Text)); |
|
|
|
|
painter->drawText(option.rect, Qt::AlignLeft, QString::fromUtf8(" ")+newopt.currentText); |
|
|
|
|
newopt.subControls = QStyle::SC_All; |
|
|
|
|
//painter->translate(QPoint(opt.rect.x()*-1,opt.rect.y()*-1));
|
|
|
|
|
//QApplication::style()->drawComplexControl(QStyle::CC_ComboBox, &newopt, painter);
|
|
|
|
|
//painter->translate(QPoint(opt.rect.x(),opt.rect.y()));
|
|
|
|
|
QApplication::style()->drawControl(QStyle::CE_ComboBoxLabel, &newopt, painter); |
|
|
|
|
break; |
|
|
|
|
} |
|
|
|
|
default: |
|
|
|
@ -154,11 +153,12 @@ class PropListDelegate: public QItemDelegate {
@@ -154,11 +153,12 @@ class PropListDelegate: public QItemDelegate {
|
|
|
|
|
QFontMetrics fontMetrics(fnt); |
|
|
|
|
const QString text = index.data(Qt::DisplayRole).toString(); |
|
|
|
|
QRect textRect = QRect(0, 0, 0, fontMetrics.lineSpacing() * (text.count(QLatin1Char('\n')) + 1)); |
|
|
|
|
textRect.setHeight(textRect.height()+10); |
|
|
|
|
return textRect.size(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public slots: |
|
|
|
|
void setModelData(QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) { |
|
|
|
|
void setModelData(QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) const { |
|
|
|
|
QComboBox *combobox = static_cast<QComboBox*>(editor); |
|
|
|
|
int value = combobox->currentIndex(); |
|
|
|
|
qDebug("Setting combobox value in index: %d", value); |
|
|
|
@ -175,15 +175,15 @@ class PropListDelegate: public QItemDelegate {
@@ -175,15 +175,15 @@ class PropListDelegate: public QItemDelegate {
|
|
|
|
|
} |
|
|
|
|
break; |
|
|
|
|
case 1: |
|
|
|
|
// if(old_val != NORMAL){
|
|
|
|
|
// model->setData(index, QVariant(NORMAL));
|
|
|
|
|
// if(filteredFilesChanged != 0)
|
|
|
|
|
// *filteredFilesChanged = true;
|
|
|
|
|
// } else {
|
|
|
|
|
// if(old_val != NORMAL){
|
|
|
|
|
// model->setData(index, QVariant(NORMAL));
|
|
|
|
|
// if(filteredFilesChanged != 0)
|
|
|
|
|
// *filteredFilesChanged = true;
|
|
|
|
|
// } else {
|
|
|
|
|
model->setData(index, QVariant(HIGH)); |
|
|
|
|
model->setData(index, QVariant(NORMAL)); |
|
|
|
|
emit filteredFilesChanged(); |
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
break; |
|
|
|
|
case 2: |
|
|
|
|
if(old_val != HIGH){ |
|
|
|
|