diff --git a/stepmania/src/DifficultyList.cpp b/stepmania/src/DifficultyList.cpp index 50171be085..3797389301 100644 --- a/stepmania/src/DifficultyList.cpp +++ b/stepmania/src/DifficultyList.cpp @@ -13,12 +13,6 @@ #include "CommonMetrics.h" #include "Command.h" -#define ITEMS_SPACING_Y THEME->GetMetricF(m_sName,"ItemsSpacingY") -#define DESCRIPTION_MAX_WIDTH THEME->GetMetricF(m_sName,"DescriptionMaxWidth") -#define NUM_SHOWN_ITEMS THEME->GetMetricI(m_sName,"NumShownItems") -#define CAPITALIZE_DIFFICULTY_NAMES THEME->GetMetric( m_sName,"CapitalizeDifficultyNames" ) -#define MOVE_COMMAND THEME->GetMetricA(m_sName,"MoveCommand") - #define MAX_METERS NUM_DIFFICULTIES + MAX_EDITS_PER_SONG DifficultyList::DifficultyList() @@ -30,6 +24,17 @@ DifficultyList::~DifficultyList() { } +void DifficultyList::SetName( const CString &sName, const CString &sID ) +{ + ActorFrame::SetName( sName, sID ); + + ITEMS_SPACING_Y.Load( m_sName, "ItemsSpacingY" ); + DESCRIPTION_MAX_WIDTH.Load( m_sName, "DescriptionMaxWidth" ); + NUM_SHOWN_ITEMS.Load( m_sName, "NumShownItems" ); + CAPITALIZE_DIFFICULTY_NAMES.Load( m_sName, "CapitalizeDifficultyNames" ); + MOVE_COMMAND.Load( m_sName, "MoveCommand" ); +} + void DifficultyList::Load() { m_Lines.resize( MAX_METERS ); diff --git a/stepmania/src/DifficultyList.h b/stepmania/src/DifficultyList.h index a801c19655..87154c904c 100644 --- a/stepmania/src/DifficultyList.h +++ b/stepmania/src/DifficultyList.h @@ -15,7 +15,8 @@ class DifficultyList: public ActorFrame { public: DifficultyList(); - ~DifficultyList(); + virtual ~DifficultyList(); + virtual void SetName( const CString &sName, const CString &sID = "" ); void Load(); void SetFromGameState(); @@ -31,6 +32,12 @@ private: void HideRows(); CString GetDifficultyString( Difficulty d ) const; + ThemeMetric ITEMS_SPACING_Y; + ThemeMetric DESCRIPTION_MAX_WIDTH; + ThemeMetric NUM_SHOWN_ITEMS; + ThemeMetric CAPITALIZE_DIFFICULTY_NAMES; + ThemeMetric MOVE_COMMAND; + AutoActor m_Cursors[NUM_PLAYERS]; ActorFrame m_CursorFrames[NUM_PLAYERS];