diff options
Diffstat (limited to 'sigmodr/widgets/AbilityUI.cpp')
| -rw-r--r-- | sigmodr/widgets/AbilityUI.cpp | 60 |
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); } |
