summaryrefslogtreecommitdiffstats
path: root/pokemod/MapTrainer.cpp
diff options
context:
space:
mode:
authorBen Boeckel <MathStuf@gmail.com>2008-05-03 10:45:40 +0000
committerBen Boeckel <MathStuf@gmail.com>2008-05-03 10:45:40 +0000
commit8714e1d409f46b05980b3e1e9f3a10910294b429 (patch)
tree5d4931ed73a4947df329c6825474ddb902c465b8 /pokemod/MapTrainer.cpp
parent822b5fcaa34b78b9668a58680f9e0d89aa3fd7bd (diff)
downloadsigen-8714e1d409f46b05980b3e1e9f3a10910294b429.tar.gz
sigen-8714e1d409f46b05980b3e1e9f3a10910294b429.tar.xz
sigen-8714e1d409f46b05980b3e1e9f3a10910294b429.zip
[FIX] pokemod now uses signals/slots for errors and warnings
git-svn-id: https://pokegen.svn.sourceforge.net/svnroot/pokegen/trunk@120 6ecfd1a5-f3ed-3746-8530-beee90d26b22
Diffstat (limited to 'pokemod/MapTrainer.cpp')
-rw-r--r--pokemod/MapTrainer.cpp30
1 files changed, 14 insertions, 16 deletions
diff --git a/pokemod/MapTrainer.cpp b/pokemod/MapTrainer.cpp
index e486475a..898c7a99 100644
--- a/pokemod/MapTrainer.cpp
+++ b/pokemod/MapTrainer.cpp
@@ -33,7 +33,7 @@ MapTrainer::MapTrainer(const MapTrainer& trainer) :
*this = trainer;
}
-MapTrainer::MapTrainer(const Object* parent, const int id) :
+MapTrainer::MapTrainer(const Map* parent, const int id) :
Object("MapTrainer", parent, id),
m_name(""),
m_trainerClass(INT_MAX),
@@ -47,13 +47,13 @@ MapTrainer::MapTrainer(const Object* parent, const int id) :
{
}
-MapTrainer::MapTrainer(const MapTrainer& trainer, const Object* parent, const int id) :
+MapTrainer::MapTrainer(const MapTrainer& trainer, const Map* parent, const int id) :
Object("MapTrainer", parent, id)
{
*this = trainer;
}
-MapTrainer::MapTrainer(const QDomElement& xml, const Object* parent, const int id) :
+MapTrainer::MapTrainer(const QDomElement& xml, const Map* parent, const int id) :
Object("MapTrainer", parent, id)
{
load(xml, id);
@@ -64,11 +64,10 @@ MapTrainer::~MapTrainer()
clear();
}
-void MapTrainer::validate(QTextStream& stream)
+void MapTrainer::validate()
{
- TEST_SETUP();
if (m_name.isEmpty())
- error(stream, "Name is empty");
+ emit(error("Name is empty"));
TEST(setTrainerClass, trainerClass);
TEST(setCoordinate, coordinate);
TEST(setDirection, direction);
@@ -76,14 +75,13 @@ void MapTrainer::validate(QTextStream& stream)
TEST(setDialog, dialog);
TEST(setLeadTeamMember, leadTeamMember);
if (!teamMemberCount())
- error(stream, "There are no team members");
+ emit(error("There are no team members"));
QSet<int> idChecker;
foreach (MapTrainerTeamMember* teamMember, m_teamMember)
{
- if (!teamMember->isValid(stream))
- setValid(false);
+ teamMember->validate();
if (idChecker.contains(teamMember->id()))
- subclassError(stream, "team member", teamMember->id());
+ emit(error(subclass("team member", teamMember->id())));
idChecker.insert(teamMember->id());
}
}
@@ -127,7 +125,7 @@ void MapTrainer::setTrainerClass(const int trainerClass)
{
if (static_cast<const Pokemod*>(pokemod())->trainerIndex(trainerClass) == INT_MAX)
{
- boundsError("trainerClass");
+ emit(error(bounds("trainerClass")));
return;
}
m_trainerClass = trainerClass;
@@ -137,7 +135,7 @@ void MapTrainer::setCoordinate(const Point& coordinate)
{
if ((static_cast<const Map*>(parent())->width() <= coordinate.x()) || (static_cast<const Map*>(parent())->height() <= coordinate.y()))
{
- boundsError("coordinate");
+ emit(error(bounds("coordinate")));
return;
}
m_coordinate = coordinate;
@@ -152,7 +150,7 @@ void MapTrainer::setDirection(const int direction)
{
if (Pokemod::D_End_None <= direction)
{
- boundsError("direction");
+ emit(error(bounds("direction")));
return;
}
m_direction = direction;
@@ -162,7 +160,7 @@ void MapTrainer::setNumFight(const int numFight)
{
if (!numFight || (static_cast<const Pokemod*>(pokemod())->rules()->maxFight() < numFight))
{
- boundsError("numFight");
+ emit(error(bounds("numFight")));
return;
}
m_numFight = numFight;
@@ -177,7 +175,7 @@ void MapTrainer::setDialog(const int dialog)
{
if (static_cast<const Pokemod*>(pokemod())->dialogIndex(dialog) == INT_MAX)
{
- boundsError("dialog");
+ emit(error(bounds("dialog")));
return;
}
m_dialog = dialog;
@@ -187,7 +185,7 @@ void MapTrainer::setLeadTeamMember(const int leadMember)
{
if (teamMemberCount() <= leadMember)
{
- boundsError("leadTeamMember");
+ emit(error(bounds("leadTeamMember")));
return;
}
m_leadTeamMember = leadMember;