D:/Zythum/DinoKod/Common/LocalizedString.h

00001 //---------------------------------------------------------------------------------------------
00002 //      This file is a part of "DinoKod".
00003 //      Copyright © 2003 Dino Productions. All Rights Reserved.
00004 //      
00005 //      File                    : LocalizedString.h
00006 //      Author                  : Cedric STANUS
00007 //      Date                    : 13/08/2003
00008 //      Modification    :
00009 //
00010 //---------------------------------------------------------------------------------------------
00011 #ifndef __LOCALIZEDSTRING_H__
00012 #define __LOCALIZEDSTRING_H__
00013 
00014 #include "Common/CommonDll.h"
00015 #include "Common/ini.h"
00016 
00017 //------------------------------------------------------------------------------------------------
00018 enum E_LANGUAGE
00019 {
00020         E_LANGUAGE_FRENCH,
00021         E_LANGUAGE_ENGLISH,
00022         E_LANGUAGE_ITALIAN,
00023         E_LANGUAGE_SPANISH,
00024         E_LANGUAGE_GERMAN,
00025         E_LANGUAGE_COUNT
00026 };
00027 
00028 //------------------------------------------------------------------------------------------------
00029 class COMMON_API KLocalizedString
00030 {
00031 protected :
00032 
00033         KIni*                   m_pIniFile ;
00034         E_LANGUAGE              m_eLanguage ;
00035         static char*    s_Language[E_LANGUAGE_COUNT] ;
00036 
00037 public :
00038         KLocalizedString() ;
00039         ~KLocalizedString() ;
00040 
00041         bool                    Init(char *pIniFile) ;
00042         const char*             GetString(char *pSection) ;
00043 
00044         void                    SetLanguage(E_LANGUAGE eLanguage)                       { m_eLanguage = eLanguage ;                     }
00045         void                    SetLanguagePrefix( char* pPrefix );
00046         const char*             GetLanguagePrefix()                                                     { return s_Language[m_eLanguage];       }
00047         const char*             GetLanguagePrefix(E_LANGUAGE eLanguage)         { return s_Language[eLanguage];         }
00048         E_LANGUAGE              GetLanguage()                                                           { return m_eLanguage ;                          }
00049 };
00050 
00051 //------------------------------------------------------------------------------------------------
00052 extern COMMON_API KLocalizedString g_LocalizedString ;
00053 
00054 #define INITLOCALSTRING(inifile)                        g_LocalizedString.Init(inifile) // Ouvre le fichier .ini contenant les textes
00055 #define SETLANGUAGELOCALSTRING(language)        g_LocalizedString.SetLanguage(language) // Change la langue
00056 #define GETLOCALSTRING(__x)                                     g_LocalizedString.GetString(#__x) // Retourne la chaine localisée
00057 #define GETLOCALSTRINGSTR(x)                            g_LocalizedString.GetString(x) // Retourne la chaine localisée
00058 #define GETLANGUAGE()                                           g_LocalizedString.GetLanguage()
00059 #define GETLANGUAGEPREFIX()                                     g_LocalizedString.GetLanguagePrefix()
00060 #define GETLANGUAGEPREFIX2(x)                           g_LocalizedString.GetLanguagePrefix(x)
00061 
00062 #endif __LOCALIZEDSTRING_H__

Generated on Sun Mar 25 20:02:10 2007 for Zythum Project by  doxygen 1.5.1-p1