summaryrefslogtreecommitdiffstats
path: root/sigmodr/widgets/AbilityUI.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'sigmodr/widgets/AbilityUI.cpp')
-rw-r--r--sigmodr/widgets/AbilityUI.cpp60
1 files changed, 44 insertions, 16 deletions
diff --git a/sigmodr/widgets/AbilityUI.cpp b/sigmodr/widgets/AbilityUI.cpp
index d7fb5ccd..c545f9eb 100644
--- a/sigmodr/widgets/AbilityUI.cpp
+++ b/sigmodr/widgets/AbilityUI.cpp
@@ -18,28 +18,54 @@
// Header include
#include "AbilityUI.h"
+// Sigmodr widget includes
+#include "ScriptWidget.h"
+
// Sigmod includes
#include <sigmod/Ability.h>
+// KDE includes
+#include <KIntNumInput>
+#include <KLineEdit>
+
+// Qt includes
+#include <QtCore/QFile>
+#include <QtUiTools/QUiLoader>
+
Sigmodr::Widgets::AbilityUI::AbilityUI(Sigmod::Ability* ability, QWidget* parent) :
ObjectUI(parent)
{
- setupUi(this);
setObjects(ability, new Sigmod::Ability(*ability));
}
-Sigmodr::Widgets::AbilityUI::~AbilityUI()
+void Sigmodr::Widgets::AbilityUI::initGui()
{
+ QFile file(":/gui/ability.ui");
+ file.open(QFile::ReadOnly);
+ QWidget *formWidget = QUiLoader().load(&file, this);
+ file.close();
+ ui_name = formWidget->findChild<KLineEdit*>("varName");
+ ui_priority = formWidget->findChild<KIntNumInput*>("varPriority");
+ ui_description = formWidget->findChild<KLineEdit*>("varDescription");
+ ui_battleScript = formWidget->findChild<ScriptWidget*>("varBattleScript");
+ ui_worldScript = formWidget->findChild<ScriptWidget*>("varWorldScript");
+ ui_priorityScript = formWidget->findChild<ScriptWidget*>("varPriorityScript");
+ connect(ui_name, SIGNAL(textChanged(QString)), this, SLOT(nameChanged(QString)));
+ connect(ui_priority, SIGNAL(valueChanged(int)), this, SLOT(priorityChanged(int)));
+ connect(ui_description, SIGNAL(Changed(QString)), this, SLOT(descriptionChanged(QString)));
+ connect(ui_battleScript, SIGNAL(valueChanged(Sigcore::Script)), this, SLOT(battleScriptChanged(Sigcore::Script)));
+ connect(ui_worldScript, SIGNAL(valueChanged(Sigcore::Script)), this, SLOT(worldScriptChanged(Sigcore::Script)));
+ connect(ui_priorityScript, SIGNAL(valueChanged(Sigcore::Script)), this, SLOT(priorityScriptChanged(Sigcore::Script)));
}
void Sigmodr::Widgets::AbilityUI::setGui()
{
- varName->setText(qobject_cast<Sigmod::Ability*>(modified())->name());
- varPriority->setValue(qobject_cast<Sigmod::Ability*>(modified())->priority());
- varDescription->setText(qobject_cast<Sigmod::Ability*>(modified())->description());
- varBattleScript->setValue(qobject_cast<Sigmod::Ability*>(modified())->battleScript());
- varWorldScript->setValue(qobject_cast<Sigmod::Ability*>(modified())->worldScript());
- varPriorityScript->setValue(qobject_cast<Sigmod::Ability*>(modified())->priorityScript());
+ ui_name->setText(qobject_cast<Sigmod::Ability*>(modified())->name());
+ ui_priority->setValue(qobject_cast<Sigmod::Ability*>(modified())->priority());
+ ui_description->setText(qobject_cast<Sigmod::Ability*>(modified())->description());
+ ui_battleScript->setValue(qobject_cast<Sigmod::Ability*>(modified())->battleScript());
+ ui_worldScript->setValue(qobject_cast<Sigmod::Ability*>(modified())->worldScript());
+ ui_priorityScript->setValue(qobject_cast<Sigmod::Ability*>(modified())->priorityScript());
}
void Sigmodr::Widgets::AbilityUI::apply()
@@ -55,34 +81,36 @@ void Sigmodr::Widgets::AbilityUI::discard()
emit(changed(false));
}
-void Sigmodr::Widgets::AbilityUI::on_varName_textChanged(const QString& name)
+void Sigmodr::Widgets::AbilityUI::nameChanged(const QString& name)
{
- const int cursor = varName->cursorPosition();
+ const int cursor = ui_name->cursorPosition();
qobject_cast<Sigmod::Ability*>(modified())->setName(name);
- varName->setCursorPosition(cursor);
+ ui_name->setCursorPosition(cursor);
}
-void Sigmodr::Widgets::AbilityUI::on_varPriority_valueChanged(const int priority)
+void Sigmodr::Widgets::AbilityUI::priorityChanged(const int priority)
{
qobject_cast<Sigmod::Ability*>(modified())->setPriority(priority);
}
-void Sigmodr::Widgets::AbilityUI::on_varDescription_textChanged(const QString& description)
+void Sigmodr::Widgets::AbilityUI::descriptionChanged(const QString& description)
{
+ const int cursor = ui_description->cursorPosition();
qobject_cast<Sigmod::Ability*>(modified())->setDescription(description);
+ ui_description->setCursorPosition(cursor);
}
-void Sigmodr::Widgets::AbilityUI::on_varBattleScript_valueChanged(const Sigcore::Script& battleScript)
+void Sigmodr::Widgets::AbilityUI::battleScriptChanged(const Sigcore::Script& battleScript)
{
qobject_cast<Sigmod::Ability*>(modified())->setBattleScript(battleScript);
}
-void Sigmodr::Widgets::AbilityUI::on_varWorldScript_valueChanged(const Sigcore::Script& worldScript)
+void Sigmodr::Widgets::AbilityUI::worldScriptChanged(const Sigcore::Script& worldScript)
{
qobject_cast<Sigmod::Ability*>(modified())->setWorldScript(worldScript);
}
-void Sigmodr::Widgets::AbilityUI::on_varPriorityScript_valueChanged(const Sigcore::Script& priorityScript)
+void Sigmodr::Widgets::AbilityUI::priorityScriptChanged(const Sigcore::Script& priorityScript)
{
qobject_cast<Sigmod::Ability*>(modified())->setPriorityScript(priorityScript);
}