diff options
Diffstat (limited to 'sigmod/MapTrainer.cpp')
| -rw-r--r-- | sigmod/MapTrainer.cpp | 85 |
1 files changed, 2 insertions, 83 deletions
diff --git a/sigmod/MapTrainer.cpp b/sigmod/MapTrainer.cpp index ccef08fe..516af27c 100644 --- a/sigmod/MapTrainer.cpp +++ b/sigmod/MapTrainer.cpp @@ -138,87 +138,7 @@ CHECK_BEGIN(MapTrainer, int, leadTeamMember) } CHECK_END() -const Sigmod::MapTrainerTeamMember* Sigmod::MapTrainer::teamMember(const int index) const -{ - if (index < teamMemberCount()) - return m_teamMembers.at(index); - return NULL; -} - -Sigmod::MapTrainerTeamMember* Sigmod::MapTrainer::teamMember(const int index) -{ - if (index < teamMemberCount()) - return m_teamMembers[index]; - return NULL; -} - -const Sigmod::MapTrainerTeamMember* Sigmod::MapTrainer::teamMemberById(const int id) const -{ - return teamMember(teamMemberIndex(id)); -} - -Sigmod::MapTrainerTeamMember* Sigmod::MapTrainer::teamMemberById(const int id) -{ - return teamMember(teamMemberIndex(id)); -} - -int Sigmod::MapTrainer::teamMemberIndex(const int id) const -{ - for (int i = 0; i < teamMemberCount(); ++i) - { - if (m_teamMembers[i]->id() == id) - return i; - } - return INT_MAX; -} - -int Sigmod::MapTrainer::teamMemberCount() const -{ - return m_teamMembers.size(); -} - -Sigmod::MapTrainerTeamMember* Sigmod::MapTrainer::newTeamMember() -{ - return newTeamMember(new MapTrainerTeamMember(this, newTeamMemberId())); -} - -Sigmod::MapTrainerTeamMember* Sigmod::MapTrainer::newTeamMember(const QDomElement& xml) -{ - return newTeamMember(new MapTrainerTeamMember(xml, this, newTeamMemberId())); -} - -Sigmod::MapTrainerTeamMember* Sigmod::MapTrainer::newTeamMember(const MapTrainerTeamMember& teamMember) -{ - return newTeamMember(new MapTrainerTeamMember(teamMember, this, newTeamMemberId())); -} - -Sigmod::MapTrainerTeamMember* Sigmod::MapTrainer::newTeamMember(MapTrainerTeamMember* teamMember) -{ - m_teamMembers.append(teamMember); - return teamMember; -} - -void Sigmod::MapTrainer::deleteTeamMember(const int index) -{ - if (index < teamMemberCount()) - { - delete m_teamMembers[index]; - m_teamMembers.removeAt(index); - } -} - -void Sigmod::MapTrainer::deleteTeamMemberById(const int id) -{ - deleteTeamMember(teamMemberIndex(id)); -} - -int Sigmod::MapTrainer::newTeamMemberId() const -{ - int i = 0; - while ((i < teamMemberCount()) && (teamMemberIndex(i) != INT_MAX)) - ++i; - return i; -} +SUBCLASS(MapTrainer, TeamMember, teamMember, teamMembers) Sigmod::MapTrainer& Sigmod::MapTrainer::operator=(const MapTrainer& rhs) { @@ -237,6 +157,5 @@ Sigmod::MapTrainer& Sigmod::MapTrainer::operator=(const MapTrainer& rhs) void Sigmod::MapTrainer::clear() { - while (teamMemberCount()) - deleteTeamMember(0); + SUBCLASS_CLEAR(teamMembers); } |
