diff options
Diffstat (limited to 'pokemodr/BadgeUI.cpp')
| -rw-r--r-- | pokemodr/BadgeUI.cpp | 138 |
1 files changed, 138 insertions, 0 deletions
diff --git a/pokemodr/BadgeUI.cpp b/pokemodr/BadgeUI.cpp new file mode 100644 index 00000000..e668e515 --- /dev/null +++ b/pokemodr/BadgeUI.cpp @@ -0,0 +1,138 @@ +///////////////////////////////////////////////////////////////////////////// +// Name: pokegen/BadgeUI.cpp +// Purpose: Badge UI form handling +// Author: Ben Boeckel +// Modified by: Ben Boeckel +// Created: Sun Jan 27 13:10:47 2008 +// Copyright: ©2007-2008 Ben Boeckel and Nerdy Productions +// Licence: +// 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 3 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, see <http://www.gnu.org/licenses/>. +///////////////////////////////////////////////////////////////////////////// + +#include <QMetaObject> +#include "../general/Exception.h" +#include "BadgeUI.h" + +BadgeUI::BadgeUI(Badge* b, QWidget* parent) : + ObjectUI(parent), + badge(b), + badge_mod(new Badge(b->getPokemod(), *b, b->getId())) +{ + setupUI(this); + QMetaObject::connectSlotsByName(this); + setObjects(badge, badge_mod); + setGui(); +} + +// KToolbar getToolbar(QWidget* parent) +// { +// +// } + +void BadgeUI::setGui(); +{ + +} + +void BadgeUI::on_buttonApply_clicked() +{ + *badge = *badge_mod; + emit(setChanged(false)); +} + +void BadgeUI::on_buttonDiscard_clicked() +{ + *badge_mod = *badge; + emit(setChanged(false)); + setGui(); +} + +void BadgeUI::on_varName_textChanged(const QString& n) +{ + badge_mod->setName(n); + emit(setChanged(true)); +} + +void BadgeUI::on_varObey_valueChanged(const QString& o) +{ + badge_mod->setObey(o); + emit(setChanged(true)); +} + +void BadgeUI::on_varBadge_customContextMenuRequested(const QPoint& p) +{ + + emit(setChanged(true)); +} + +void BadgeUI::on_varFace_customContextMenuRequested(const QPoint& p) +{ + + emit(setChanged(true)); +} + +void BadgeUI::on_varStat_currentIndexChanged(const QString& s) +{ + try + { + const QStringList& statList = badge_mod->getPokemod().getRules().getSpecialSplit() ? StatRBYStr : StatGSCStr; + if (statList.contains(s)) + curStat = statList.indexOf(s); + else + throw(BoundsException("BadgeUI", "stat")); + emit(setChanged(true)); + } + catch (BoundsException& e) + { + BugCatcher::report(e); + } + setGui(); +} + +void BadgeUI::on_varMultiplierNum_valueChanged(const QString& m) +{ + try + { + badge_mod->setMultiplierNum(curStat, m); + varMultiplier->setText(QString::number(badge_mod->getMultiplier(curStat), 'g', 15)); + emit(setChanged(true)); + } + catch (BoundsException& e) + { + BugCatcher::report(e); + setGui(); + } +} + +void BadgeUI::on_varMultiplierDenom_valueChanged(const QString& m) +{ + try + { + badge_mod->setStatDenom(curStat, m); + varMultiplierNum->setMaximum(m); + varMultiplier->setText(QString::number(nature_mod->getStat(curStat), 'g', 15)); + emit(setChanged(true)); + } + catch (BoundsException& e) + { + BugCatcher::report(e); + setGui(); + } +} + +void BadgeUI::on_varHMs_itemSelectionChanged() +{ + + emit(setChanged(true)); +} |
