summaryrefslogtreecommitdiffstats
path: root/sigmodr/widgets/StoreUI.cpp
diff options
context:
space:
mode:
authorBen Boeckel <MathStuf@gmail.com>2009-02-24 11:15:57 -0500
committerBen Boeckel <MathStuf@gmail.com>2009-02-24 11:15:57 -0500
commit4a2e1b318419361fb814581aab583f7d856b7149 (patch)
tree9d406c9f7dbed40c31d76363d8772f121b3a25af /sigmodr/widgets/StoreUI.cpp
parentb48cebf7472f2a30e1ae8747349045661ecf6547 (diff)
downloadsigen-4a2e1b318419361fb814581aab583f7d856b7149.tar.gz
sigen-4a2e1b318419361fb814581aab583f7d856b7149.tar.xz
sigen-4a2e1b318419361fb814581aab583f7d856b7149.zip
MOve widgets cleaned up
Diffstat (limited to 'sigmodr/widgets/StoreUI.cpp')
-rw-r--r--sigmodr/widgets/StoreUI.cpp56
1 files changed, 35 insertions, 21 deletions
diff --git a/sigmodr/widgets/StoreUI.cpp b/sigmodr/widgets/StoreUI.cpp
index 4b598179..f03a3b03 100644
--- a/sigmodr/widgets/StoreUI.cpp
+++ b/sigmodr/widgets/StoreUI.cpp
@@ -23,51 +23,65 @@
#include <sigmod/Sigmod.h>
#include <sigmod/Store.h>
+// KDE includes
+#include <KActionSelector>
+#include <KLineEdit>
+
// Qt includes
+#include <QtCore/QFile>
#include <QtGui/QListWidgetItem>
+#include <QtUiTools/QUiLoader>
Sigmodr::Widgets::StoreUI::StoreUI(Sigmod::Store* store, QWidget* parent) :
ObjectUI(parent)
{
- setupUi(this);
setObjects(store, new Sigmod::Store(*store));
}
-Sigmodr::Widgets::StoreUI::~StoreUI()
+void Sigmodr::Widgets::StoreUI::initGui()
{
+ QFile file(":/gui/store.ui");
+ file.open(QFile::ReadOnly);
+ QWidget *formWidget = QUiLoader().load(&file, this);
+ file.close();
+ ui_name = formWidget->findChild<KLineEdit*>("varName");
+ ui_items = formWidget->findChild<KActionSelector*>("varItems");
+ connect(ui_name, SIGNAL(textChanged(QString)), this, SLOT(nameChanged(QString)));
+ connect(ui_items, SIGNAL(added(QListWidgetItem*)), this, SLOT(itemAdded(QListWidgetItem*)));
+ connect(ui_items, SIGNAL(removed(QListWidgetItem*)), this, SLOT(itemRemoved(QListWidgetItem*)));
}
void Sigmodr::Widgets::StoreUI::refreshGui()
{
- const bool blockedItems = varItems->blockSignals(true);
- varItems->availableListWidget()->clear();
- varItems->selectedListWidget()->clear();
+ const bool blockedItems = ui_items->blockSignals(true);
+ ui_items->availableListWidget()->clear();
+ ui_items->selectedListWidget()->clear();
for (int i = 0; i < sigmod()->itemCount(); ++i)
{
const Sigmod::Item* item = sigmod()->item(i);
- QListWidgetItem* widgetItem = new QListWidgetItem(item->name(), varItems->availableListWidget());
+ QListWidgetItem* widgetItem = new QListWidgetItem(item->name(), ui_items->availableListWidget());
widgetItem->setData(Qt::UserRole, item->id());
}
- varItems->blockSignals(blockedItems);
- varItems->setButtonsEnabled();
+ ui_items->blockSignals(blockedItems);
+ ui_items->setButtonsEnabled();
}
void Sigmodr::Widgets::StoreUI::setGui()
{
- varName->setText(qobject_cast<Sigmod::Store*>(modified())->name());
- for (int i = 0; i < varItems->availableListWidget()->count(); ++i)
+ ui_name->setText(qobject_cast<Sigmod::Store*>(modified())->name());
+ for (int i = 0; i < ui_items->availableListWidget()->count(); ++i)
{
- QListWidgetItem* widgetItem = varItems->availableListWidget()->item(i);
+ QListWidgetItem* widgetItem = ui_items->availableListWidget()->item(i);
if (qobject_cast<Sigmod::Store*>(modified())->item(widgetItem->data(Qt::UserRole).toInt()))
- varItems->selectedListWidget()->addItem(varItems->availableListWidget()->takeItem(i--));
+ ui_items->selectedListWidget()->addItem(ui_items->availableListWidget()->takeItem(i--));
}
- for (int i = 0; i < varItems->selectedListWidget()->count(); ++i)
+ for (int i = 0; i < ui_items->selectedListWidget()->count(); ++i)
{
- QListWidgetItem* widgetItem = varItems->selectedListWidget()->item(i);
+ QListWidgetItem* widgetItem = ui_items->selectedListWidget()->item(i);
if (!qobject_cast<Sigmod::Store*>(modified())->item(widgetItem->data(Qt::UserRole).toInt()))
- varItems->availableListWidget()->addItem(varItems->selectedListWidget()->takeItem(i--));
+ ui_items->availableListWidget()->addItem(ui_items->selectedListWidget()->takeItem(i--));
}
- varItems->setButtonsEnabled();
+ ui_items->setButtonsEnabled();
}
void Sigmodr::Widgets::StoreUI::apply()
@@ -83,20 +97,20 @@ void Sigmodr::Widgets::StoreUI::discard()
emit(changed(false));
}
-void Sigmodr::Widgets::StoreUI::on_varName_textChanged(const QString& name)
+void Sigmodr::Widgets::StoreUI::nameChanged(const QString& name)
{
- const int cursor = varName->cursorPosition();
+ const int cursor = ui_name->cursorPosition();
qobject_cast<Sigmod::Store*>(modified())->setName(name);
- varName->setCursorPosition(cursor);
+ ui_name->setCursorPosition(cursor);
}
-void Sigmodr::Widgets::StoreUI::on_varItems_added(QListWidgetItem* item)
+void Sigmodr::Widgets::StoreUI::itemAdded(QListWidgetItem* item)
{
qobject_cast<Sigmod::Store*>(modified())->setItem(item->data(Qt::UserRole).toInt(), true);
setGui();
}
-void Sigmodr::Widgets::StoreUI::on_varItems_removed(QListWidgetItem* item)
+void Sigmodr::Widgets::StoreUI::itemRemoved(QListWidgetItem* item)
{
qobject_cast<Sigmod::Store*>(modified())->setItem(item->data(Qt::UserRole).toInt(), false);
setGui();