From 91a2cb9c90e2d2108d249a9bbb27eaaa666f67cd Mon Sep 17 00:00:00 2001 From: "techdragon.nguyen@gmail.com" Date: Sat, 5 Feb 2011 22:21:49 +0000 Subject: [PATCH] fixed deck renaming to make changes immediate. --- projects/mtg/include/DeckMetaData.h | 2 ++ projects/mtg/src/DeckMetaData.cpp | 5 +++++ projects/mtg/src/GameStateDeckViewer.cpp | 9 +++++++-- 3 files changed, 14 insertions(+), 2 deletions(-) diff --git a/projects/mtg/include/DeckMetaData.h b/projects/mtg/include/DeckMetaData.h index eeb074050..f26ca2282 100644 --- a/projects/mtg/include/DeckMetaData.h +++ b/projects/mtg/include/DeckMetaData.h @@ -52,7 +52,9 @@ public: int getDifficulty(); string getDifficultyString(); + // setters void setColorIndex(const string& colorIndex); + void setDeckName( const string& newDeckTitle ); void Invalidate(); string mStatsFilename; diff --git a/projects/mtg/src/DeckMetaData.cpp b/projects/mtg/src/DeckMetaData.cpp index 0520da750..ce29deb15 100644 --- a/projects/mtg/src/DeckMetaData.cpp +++ b/projects/mtg/src/DeckMetaData.cpp @@ -186,6 +186,11 @@ void DeckMetaData::setColorIndex(const string& colorIndex) mColorIndex = colorIndex; } +void DeckMetaData::setDeckName(const string& newDeckTitle) +{ + mName = newDeckTitle; +} + void DeckMetaData::Invalidate() { mStatsLoaded = false; diff --git a/projects/mtg/src/GameStateDeckViewer.cpp b/projects/mtg/src/GameStateDeckViewer.cpp index 922e262f2..25871e2d7 100644 --- a/projects/mtg/src/GameStateDeckViewer.cpp +++ b/projects/mtg/src/GameStateDeckViewer.cpp @@ -8,7 +8,6 @@ #include #include -#include "DeckManager.h" #include "GameStateDuel.h" #include "GameStateDeckViewer.h" #include "Translate.h" @@ -16,6 +15,8 @@ #include "MTGCardInstance.h" #include "WFilter.h" #include "WDataSrc.h" +#include "DeckManager.h" +#include "DeckMetaData.h" #include "DeckEditorMenu.h" #include "SimpleMenu.h" #include "utils.h" @@ -302,6 +303,10 @@ void GameStateDeckViewer::addRemove(MTGCard * card) void GameStateDeckViewer::saveDeck() { + //update the corresponding meta data object + DeckMetaData *metaData = DeckManager::GetInstance()->getDeckMetaDataById( myDeck->parent->meta_id, false ); + metaData->setDeckName( newDeckname ); + mSwitching = true; myDeck->save(); playerdata->save(); pricelist->save(); @@ -360,6 +365,7 @@ void GameStateDeckViewer::Update(float dt) { myDeck->parent->meta_name = newDeckname; saveDeck(); + updateDecks(); } mStage = STAGE_WAITING; } @@ -1558,7 +1564,6 @@ void GameStateDeckViewer::ButtonPressed(int controllerId, int controlId) break; case MENU_ITEM_SWITCH_DECKS_NO_SAVE: - //updateDecks(); mStage = STAGE_WELCOME; mSwitching = true; break;