summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/plugins/clangtools/clangtoolsdiagnosticview.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/plugins/clangtools/clangtoolsdiagnosticview.cpp b/src/plugins/clangtools/clangtoolsdiagnosticview.cpp
index f1e00802c7..4e27b060cf 100644
--- a/src/plugins/clangtools/clangtoolsdiagnosticview.cpp
+++ b/src/plugins/clangtools/clangtoolsdiagnosticview.cpp
@@ -50,6 +50,7 @@ public:
ClickableFixItHeader(Qt::Orientation orientation, QWidget *parent = nullptr)
: QHeaderView(orientation, parent)
{
+ setDefaultAlignment(Qt::AlignLeft);
}
void setState(QFlags<QStyle::StateFlag> newState)
@@ -68,6 +69,10 @@ protected:
const int side = sizeHint().height();
option.rect = QRect(rect.left() + 1, 1, side - 3, side - 3);
option.state = state;
+ painter->save();
+ painter->translate(QPoint(side - 2, 0));
+ QHeaderView::paintSection(painter, rect, logicalIndex);
+ painter->restore();
style()->drawPrimitive(QStyle::PE_IndicatorCheckBox, &option, painter);
}
}
@@ -181,6 +186,10 @@ void DiagnosticView::setModel(QAbstractItemModel *model)
clickableFixItHeader->setSectionResizeMode(0, QHeaderView::Stretch);
clickableFixItHeader->setSectionResizeMode(1, QHeaderView::ResizeToContents);
clickableFixItHeader->setSectionResizeMode(2, QHeaderView::ResizeToContents);
+
+ const int fixitColumnWidth = clickableFixItHeader->sectionSizeHint(DiagnosticView::FixItColumn);
+ const int checkboxWidth = clickableFixItHeader->height();
+ clickableFixItHeader->setMinimumSectionSize(fixitColumnWidth + checkboxWidth);
}
} // namespace Internal