diff options
Diffstat (limited to 'src/items/database/tableproperties.cpp')
-rw-r--r-- | src/items/database/tableproperties.cpp | 97 |
1 files changed, 0 insertions, 97 deletions
diff --git a/src/items/database/tableproperties.cpp b/src/items/database/tableproperties.cpp deleted file mode 100644 index 11b3fc4..0000000 --- a/src/items/database/tableproperties.cpp +++ /dev/null @@ -1,97 +0,0 @@ -// Copyright (C) 2008 Lukas Lalinsky -// -// This program is free software; you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation; either version 2 of the License, or -// at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License along -// with this program; if not, write to the Free Software Foundation, Inc., -// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - -#include "tableproperties.h" -#include "databasetable.h" -#include "mainwindow.h" -#include "commands.h" -#include "column.h" -#include <QCheckBox> -#include <QDebug> - -TableProperties::TableProperties(MainWindow *window, QWidget *parent) - : QWidget(parent), m_window(window), m_table(0) -{ - ui.setupUi(this); - setTable(0); - connect(ui.nameEdit, - SIGNAL(textEdited(const QString &)), - SLOT(setSelectedTableName(const QString &))); - connect(ui.addColumnButton, SIGNAL(clicked()), ui.columnsWidget, SLOT(addColumn())); - connect(ui.removeColumnButton, SIGNAL(clicked()), ui.columnsWidget, SLOT(removeColumn())); - connect(ui.moveColumnUpButton, SIGNAL(clicked()), ui.columnsWidget, SLOT(moveColumnUp())); - connect(ui.moveColumnDownButton, SIGNAL(clicked()), ui.columnsWidget, SLOT(moveColumnDown())); - connect(ui.columnsWidget->selectionModel(), - SIGNAL(selectionChanged(const QItemSelection &, const QItemSelection &)), - SLOT(updateColumnSelection())); -} - -void -TableProperties::setSelectedTableName(const QString &name) -{ - if (m_table) { - m_window->currentUndoStack()->push(new SetObjectPropertyCommand(m_table, "name", name)); - } -} - -void -TableProperties::setTable(DatabaseTable *table) -{ - // Disconnect all connections from the previous table - if (m_table) { - disconnect(m_table, 0, this, 0); - } - - m_table = NULL; - if (table == NULL) { - setEnabled(false); - ui.nameEdit->clear(); - ui.columnsWidget->setColumnList(0); - } - else { - setEnabled(true); - ui.nameEdit->setText(table->name()); - ui.columnsWidget->setColumnList(table->columnList()); - connect(table, SIGNAL(propertyChanged(const QString &, const QVariant &)), SLOT(updateProperty(const QString &, const QVariant &))); - } - m_table = table; - updateColumnSelection(); -} - -void -TableProperties::updateProperty(const QString &name, const QVariant &value) -{ - if (name == "name") { - ui.nameEdit->setText(value.toString()); - } -} - -void -TableProperties::updateColumnSelection() -{ - QList<int> columns = ui.columnsWidget->selectedColumns(); - if (columns.isEmpty()) { - ui.removeColumnButton->setEnabled(false); - ui.moveColumnUpButton->setEnabled(false); - ui.moveColumnDownButton->setEnabled(false); - } - else { - int index = columns[0]; - ui.removeColumnButton->setEnabled(true); - ui.moveColumnUpButton->setEnabled(index > 0); - ui.moveColumnDownButton->setEnabled(index + 1 < m_table->columnList()->columnCount()); - } -} |