summaryrefslogtreecommitdiffstats
path: root/pokemodr/MoveUI.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'pokemodr/MoveUI.cpp')
-rw-r--r--pokemodr/MoveUI.cpp17
1 files changed, 13 insertions, 4 deletions
diff --git a/pokemodr/MoveUI.cpp b/pokemodr/MoveUI.cpp
index effe2770..e306cfbe 100644
--- a/pokemodr/MoveUI.cpp
+++ b/pokemodr/MoveUI.cpp
@@ -44,22 +44,24 @@ void MoveUI::initGui()
void MoveUI::refreshGui()
{
varType->clear();
- for (int i = 0; i < static_cast<const Pokemod*>(original()->pokemod())->typeCount(); ++i)
+ for (int i = 0; i < pokemod()->typeCount(); ++i)
{
- const Type* type = static_cast<const Pokemod*>(original()->pokemod())->type(i);
+ const Type* type = pokemod()->type(i);
varType->addItem(type->name(), type->id());
}
- varNumTargets->setMaximum(static_cast<const Pokemod*>(original()->pokemod())->rules()->maxFight());
+ varNumTargets->setMaximum(pokemod()->rules()->maxFight() * pokemod()->rules()->maxPlayers());
}
void MoveUI::setGui()
{
varName->setText(static_cast<Move*>(modified())->name());
varAccuracy->setValue(static_cast<Move*>(modified())->accuracy());
+ varPower->setValue(static_cast<Move*>(modified())->power());
varType->setCurrentIndex(varType->findData(static_cast<Move*>(modified())->type()));
varTarget->setCurrentIndex(static_cast<Move*>(modified())->target());
- varNumTargets->setValue(static_cast<Move*>(modified())->numTargets());
varTargetChoice->setCurrentIndex(static_cast<Move*>(modified())->targetChoice());
+ varPowerPoints->setValue(static_cast<Move*>(modified())->powerPoints());
+ varNumTargets->setValue(static_cast<Move*>(modified())->numTargets());
varSpecial->setChecked(static_cast<Move*>(modified())->special() ? Qt::Checked : Qt::Unchecked);
varOverworld->setChecked(static_cast<Move*>(modified())->overworld() ? Qt::Checked : Qt::Unchecked);
varDescription->setPlainText(static_cast<Move*>(modified())->description());
@@ -80,7 +82,9 @@ void MoveUI::discard()
void MoveUI::on_varName_textChanged(const QString& name)
{
+ const int cursor = varName->cursorPosition();
static_cast<Move*>(modified())->setName(name);
+ varName->setCursorPosition(cursor);
}
void MoveUI::on_varAccuracy_valueChanged(const Fraction& accuracy)
@@ -88,6 +92,11 @@ void MoveUI::on_varAccuracy_valueChanged(const Fraction& accuracy)
static_cast<Move*>(modified())->setAccuracy(accuracy);
}
+void MoveUI::on_varPower_valueChanged(const int power)
+{
+ static_cast<Move*>(modified())->setPower(power);
+}
+
void MoveUI::on_varType_activated(const int type)
{
static_cast<Move*>(modified())->setType(varType->itemData(type).toInt());