From 0191933210bd20a59527fcf2732a4f3c846fb2a9 Mon Sep 17 00:00:00 2001 From: Ben Boeckel Date: Sun, 9 Mar 2008 22:20:15 +0000 Subject: [ADD] ItemType now has a count descriptor [ADD] Species now has a flee chance [FIX] Empty fields removed from .ui files [FIX] Fixed compile errors in pokemodr [ADD] Trainer now helps to simplify MapTrainers [ADD] Trainer UI file [FIX] MapTrainer dialogs condensed [FIX] Home direcotry now gotten by QDir::homePath() rather than ~ git-svn-id: https://pokegen.svn.sourceforge.net/svnroot/pokegen/trunk@93 6ecfd1a5-f3ed-3746-8530-beee90d26b22 --- pokemodr/PokeModTreeItem.cpp | 46 +++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 45 insertions(+), 1 deletion(-) (limited to 'pokemodr/PokeModTreeItem.cpp') diff --git a/pokemodr/PokeModTreeItem.cpp b/pokemodr/PokeModTreeItem.cpp index 35ad701d..e44e14c6 100644 --- a/pokemodr/PokeModTreeItem.cpp +++ b/pokemodr/PokeModTreeItem.cpp @@ -459,7 +459,7 @@ void PokeModTreeItem::makeMenu(const QPoint& pos) { } -Object* PokeModTreeItem::makeCopy() +Object* PokeModTreeItem::copy() { if (obj) { @@ -501,3 +501,47 @@ Object* PokeModTreeItem::makeCopy() } return NULL; } + +Object* PokeModTreeItem::cut() +{ + // TODO: actually cut the item + if (obj) + { + QString name(obj->getClassName()); +#define IF_IS_CLASS(class) if (name == #class) return new ::class(obj->getPokemod(), *static_cast< ::class* >(obj), obj->getId()); + IF_IS_CLASS(Ability) + else IF_IS_CLASS(AbilityEffect) + else IF_IS_CLASS(Author) + else IF_IS_CLASS(Badge) + else IF_IS_CLASS(CoinList) + else IF_IS_CLASS(CoinListObject) + else IF_IS_CLASS(Dialog) + else IF_IS_CLASS(EggGroup) + else IF_IS_CLASS(Item) + else IF_IS_CLASS(ItemEffect) + else IF_IS_CLASS(ItemType) + else IF_IS_CLASS(Map) + else IF_IS_CLASS(MapEffect) + else IF_IS_CLASS(MapTrainer) + else IF_IS_CLASS(MapTrainerTeamMember) + else IF_IS_CLASS(MapWarp) + else IF_IS_CLASS(MapWildList) + else IF_IS_CLASS(MapWildListEncounter) + else IF_IS_CLASS(Move) + else IF_IS_CLASS(MoveEffect) + else IF_IS_CLASS(Nature) + else if (name == "Pokemod") return new Pokemod(*static_cast(obj)); + else if (name == "Rules") return new Rules(obj->getPokemod()); + else IF_IS_CLASS(Species) + else IF_IS_CLASS(SpeciesAbility) + else IF_IS_CLASS(SpeciesEvolution) + else IF_IS_CLASS(SpeciesItem) + else IF_IS_CLASS(SpeciesMove) + else IF_IS_CLASS(Store) + else IF_IS_CLASS(Tile) + else IF_IS_CLASS(Time) + else IF_IS_CLASS(Type) +#undef IF_IS_CLASS + } + return NULL; +} -- cgit