1 #include <QResizeEvent>
3 #include "settingstable.h"
5 SettingsTable::SettingsTable(QWidget *parent)
6 : QTableWidget(0, 2, parent) // Always two columns. Key and value.
8 verticalHeader()->setVisible(false);
9 horizontalHeader()->setVisible(false);
12 SettingsTable::~SettingsTable()
16 void SettingsTable::appendRow(const QString &key, const QString &value)
18 QTableWidgetItem *k = new QTableWidgetItem(key);
19 QTableWidgetItem *v = new QTableWidgetItem(value);
20 k->setFlags(Qt::NoItemFlags | Qt::ItemIsEnabled);
21 v->setFlags(Qt::ItemIsEnabled | Qt::ItemIsEditable);
22 insertRow(rowCount());
23 setItem(rowCount() - 1, 0, k);
24 setItem(rowCount() - 1, 1, v);
27 void SettingsTable::removeAllRows()
33 void SettingsTable::resizeEvent(QResizeEvent *e)
35 setColumnWidth(0, (e->size().width() / 3) - 10);
36 setColumnWidth(1, (2 * e->size().width() / 3) - 10);
39 QString SettingsTable::key(unsigned int row) const
41 return item(row, 0)->text();
44 QString SettingsTable::value(unsigned int row) const
46 return item(row, 1)->text();