00001 #include <QResizeEvent>
00002 #include <QHeaderView>
00003 #include "settingstable.h"
00004
00005 SettingsTable::SettingsTable(QWidget *parent)
00006 : QTableWidget(0, 2, parent)
00007 {
00008 verticalHeader()->setVisible(false);
00009 horizontalHeader()->setVisible(false);
00010 }
00011
00012 SettingsTable::~SettingsTable()
00013 {
00014 }
00015
00016 void SettingsTable::appendRow(const QString &key, const QString &value)
00017 {
00018 QTableWidgetItem *k = new QTableWidgetItem(key);
00019 QTableWidgetItem *v = new QTableWidgetItem(value);
00020 k->setFlags(Qt::NoItemFlags | Qt::ItemIsEnabled);
00021 v->setFlags(Qt::ItemIsEnabled | Qt::ItemIsEditable);
00022 insertRow(rowCount());
00023 setItem(rowCount() - 1, 0, k);
00024 setItem(rowCount() - 1, 1, v);
00025 }
00026
00027 void SettingsTable::removeAllRows()
00028 {
00029 clear();
00030 setRowCount(0);
00031 }
00032
00033 void SettingsTable::resizeEvent(QResizeEvent *e)
00034 {
00035 setColumnWidth(0, (e->size().width() / 3) - 10);
00036 setColumnWidth(1, (2 * e->size().width() / 3) - 10);
00037 }
00038
00039 QString SettingsTable::key(unsigned int row) const
00040 {
00041 return item(row, 0)->text();
00042 }
00043
00044 QString SettingsTable::value(unsigned int row) const
00045 {
00046 return item(row, 1)->text();
00047 }
00048