9#include <QStandardItemModel>
23 Ui_KisDetailsPaneBase(),
26 d->
m_model.setHorizontalHeaderItem(0,
new QStandardItem(header));
30 m_documentList->installEventFilter(
this);
32 m_documentList->setModel(&
d->
m_model);
37 connect(m_documentList->selectionModel(), SIGNAL(currentChanged(QModelIndex,QModelIndex)),
39 connect(m_documentList, SIGNAL(doubleClicked(QModelIndex)),
51 if (watched == m_documentList) {
52 if ((e->type() == QEvent::Resize) && isVisible()) {
56 if ((e->type() == QEvent::KeyPress)) {
57 QKeyEvent* keyEvent =
static_cast<QKeyEvent*
>(e);
59 if (keyEvent->key() == Qt::Key_Enter || keyEvent->key() == Qt::Key_Return) {
73 m_splitter->setSizes(sizes);
78 QModelIndex index = m_documentList->selectionModel()->currentIndex();
85 p.setBrush(QPalette::Base, QColor(Qt::transparent));
86 p.setColor(QPalette::Text,
p.color(QPalette::Normal, QPalette::WindowText));
87 m_detailsLabel->setPalette(
p);
connect(this, SIGNAL(optionsChanged()), this, SLOT(saveOptions()))
KisDetailsPane(QWidget *parent, const QString &header)
void resizeSplitter(KisDetailsPane *sender, const QList< int > &sizes)
This is used to keep all splitters in different details panes synced.
QStandardItemModel * model() const
~KisDetailsPane() override
bool eventFilter(QObject *watched, QEvent *e) override
virtual void selectionChanged(const QModelIndex &index)=0
This is called when the selection in the listview changed.
void splitterResized(KisDetailsPane *sender, const QList< int > &sizes)
This is used to keep all splitters in different details panes synced.
KisDetailsPanePrivate *const d
rgba palette[MAX_PALETTE]
QStandardItemModel m_model