use a namespace instead of a singleton
This commit is contained in:
@@ -2,6 +2,7 @@
|
|||||||
#include "ScreenMessage.h"
|
#include "ScreenMessage.h"
|
||||||
#include "RageLog.h"
|
#include "RageLog.h"
|
||||||
#include "Foreach.h"
|
#include "Foreach.h"
|
||||||
|
#include <map>
|
||||||
|
|
||||||
const ScreenMessage SM_Invalid = 999999;
|
const ScreenMessage SM_Invalid = 999999;
|
||||||
AutoScreenMessage(SM_None);
|
AutoScreenMessage(SM_None);
|
||||||
@@ -16,9 +17,10 @@ AutoScreenMessage(SM_Pause);
|
|||||||
AutoScreenMessage(SM_Success);
|
AutoScreenMessage(SM_Success);
|
||||||
AutoScreenMessage(SM_Failure);
|
AutoScreenMessage(SM_Failure);
|
||||||
|
|
||||||
ASMHClass AutoScreenMessageHandler;
|
static map<RString, ScreenMessage> *m_pScreenMessages;
|
||||||
|
static ScreenMessage m_iCurScreenMessage;
|
||||||
|
|
||||||
ScreenMessage ASMHClass::ToMessageNumber( const RString &sName )
|
ScreenMessage ScreenMessageHelpers::ToMessageNumber( const RString &sName )
|
||||||
{
|
{
|
||||||
if( m_pScreenMessages == NULL )
|
if( m_pScreenMessages == NULL )
|
||||||
{
|
{
|
||||||
@@ -35,7 +37,7 @@ ScreenMessage ASMHClass::ToMessageNumber( const RString &sName )
|
|||||||
return (*m_pScreenMessages)[sName];
|
return (*m_pScreenMessages)[sName];
|
||||||
}
|
}
|
||||||
|
|
||||||
RString ASMHClass::NumberToString( ScreenMessage SM ) const
|
RString ScreenMessageHelpers::NumberToString( ScreenMessage SM )
|
||||||
{
|
{
|
||||||
FOREACHM( RString, ScreenMessage, *m_pScreenMessages, it )
|
FOREACHM( RString, ScreenMessage, *m_pScreenMessages, it )
|
||||||
if( SM == it->second )
|
if( SM == it->second )
|
||||||
|
|||||||
@@ -3,8 +3,6 @@
|
|||||||
#ifndef SCREEN_MESSAGE_H
|
#ifndef SCREEN_MESSAGE_H
|
||||||
#define SCREEN_MESSAGE_H
|
#define SCREEN_MESSAGE_H
|
||||||
|
|
||||||
#include <map>
|
|
||||||
|
|
||||||
typedef int ScreenMessage;
|
typedef int ScreenMessage;
|
||||||
|
|
||||||
extern const ScreenMessage SM_Invalid;
|
extern const ScreenMessage SM_Invalid;
|
||||||
@@ -20,22 +18,15 @@ extern const ScreenMessage SM_Pause;
|
|||||||
extern const ScreenMessage SM_Success;
|
extern const ScreenMessage SM_Success;
|
||||||
extern const ScreenMessage SM_Failure;
|
extern const ScreenMessage SM_Failure;
|
||||||
|
|
||||||
class ASMHClass
|
namespace ScreenMessageHelpers
|
||||||
{
|
{
|
||||||
public:
|
|
||||||
ScreenMessage ToMessageNumber( const RString & Name );
|
ScreenMessage ToMessageNumber( const RString & Name );
|
||||||
RString NumberToString( ScreenMessage SM ) const;
|
RString NumberToString( ScreenMessage SM );
|
||||||
|
|
||||||
private:
|
|
||||||
map<RString, ScreenMessage> *m_pScreenMessages;
|
|
||||||
ScreenMessage m_iCurScreenMessage;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
extern ASMHClass AutoScreenMessageHandler;
|
|
||||||
|
|
||||||
// Automatically generate a unique ScreenMessage value
|
// Automatically generate a unique ScreenMessage value
|
||||||
#define AutoScreenMessage( x ) \
|
#define AutoScreenMessage( x ) \
|
||||||
const ScreenMessage x = AutoScreenMessageHandler.ToMessageNumber( #x );
|
const ScreenMessage x = ScreenMessageHelpers::ToMessageNumber( #x );
|
||||||
|
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
Reference in New Issue
Block a user