diff options
author | James Cook <james@lindenlab.com> | 2007-01-02 08:33:20 +0000 |
---|---|---|
committer | James Cook <james@lindenlab.com> | 2007-01-02 08:33:20 +0000 |
commit | 420b91db29485df39fd6e724e782c449158811cb (patch) | |
tree | b471a94563af914d3ed3edd3e856d21cb1b69945 /indra/llui/llresmgr.h |
Print done when done.
Diffstat (limited to 'indra/llui/llresmgr.h')
-rw-r--r-- | indra/llui/llresmgr.h | 147 |
1 files changed, 147 insertions, 0 deletions
diff --git a/indra/llui/llresmgr.h b/indra/llui/llresmgr.h new file mode 100644 index 0000000000..b79fa2021f --- /dev/null +++ b/indra/llui/llresmgr.h @@ -0,0 +1,147 @@ +/** + * @file llresmgr.h + * @brief Localized resource manager + * + * Copyright (c) 2001-$CurrentYear$, Linden Research, Inc. + * $License$ + */ + +// NOTE: this is a MINIMAL implementation. The interface will remain, but the implementation will +// (when the time is right) become dynamic and probably use external files. + +#ifndef LL_LLRESMGR_H +#define LL_LLRESMGR_H + +#include "locale.h" +#include "stdtypes.h" +#include "llstring.h" + +enum LLLOCALE_ID +{ + LLLOCALE_USA, + LLLOCALE_UK, + LLLOCALE_COUNT // Number of values in this enum. Keep at end. +}; + +/* +enum LLSTR_ID +{ + LLSTR_HELLO, + LLSTR_GOODBYE, + LLSTR_CHAT_LABEL, + LLSTR_STATUS_LABEL, + LLSTR_X, + LLSTR_Y, + LLSTR_Z, + LLSTR_POSITION, + LLSTR_SCALE, + LLSTR_ROTATION, + LLSTR_HAS_PHYSICS, + LLSTR_SCRIPT, + LLSTR_HELP, + LLSTR_REMOVE, + LLSTR_CLEAR, + LLSTR_APPLY, + LLSTR_CANCEL, + LLSTR_MATERIAL, + LLSTR_FACE, + LLSTR_TEXTURE, + LLSTR_TEXTURE_SIZE, + LLSTR_TEXTURE_OFFSET, + LLSTR_TEXTURE_ROTATION, + LLSTR_U, + LLSTR_V, + LLSTR_OWNERSHIP, + LLSTR_PUBLIC, + LLSTR_PRIVATE, + LLSTR_REVERT, + LLSTR_INSERT_SAMPLE, + LLSTR_SET_TEXTURE, + LLSTR_EDIT_SCRIPT, + LLSTR_MOUSELOOK_INSTRUCTIONS, + LLSTR_EDIT_FACE_INSTRUCTIONS, + LLSTR_CLOSE, + LLSTR_MOVE, + LLSTR_ROTATE, + LLSTR_RESIZE, + LLSTR_PLACE_BOX, + LLSTR_PLACE_PRISM, + LLSTR_PLACE_PYRAMID, + LLSTR_PLACE_TETRAHEDRON, + LLSTR_PLACE_CYLINDER, + LLSTR_PLACE_HALF_CYLINDER, + LLSTR_PLACE_CONE, + LLSTR_PLACE_HALF_CONE, + LLSTR_PLACE_SPHERE, + LLSTR_PLACE_HALF_SPHERE, + LLSTR_PLACE_BIRD, + LLSTR_PLACE_SNAKE, + LLSTR_PLACE_ROCK, + LLSTR_PLACE_TREE, + LLSTR_PLACE_GRASS, + LLSTR_MODIFY_LAND, + LLSTR_COUNT // Number of values in this enum. Keep at end. +}; +*/ + +enum LLFONT_ID +{ + LLFONT_OCRA, + LLFONT_SANSSERIF, + LLFONT_SANSSERIF_SMALL, + LLFONT_SANSSERIF_BIG, + LLFONT_SMALL, + LLFONT_COUNT // Number of values in this enum. Keep at end. +}; + +class LLFontGL; + +class LLResMgr +{ +public: + LLResMgr(); + + void setLocale( LLLOCALE_ID locale_id ); + LLLOCALE_ID getLocale() const { return mLocale; } + + char getDecimalPoint() const; + char getThousandsSeparator() const; + + char getMonetaryDecimalPoint() const; + char getMonetaryThousandsSeparator() const; + void getMonetaryString( LLString& output, S32 input ) const; + void getIntegerString( LLString& output, S32 input ) const; + +// const char* getRes( LLSTR_ID string_id ) const { return mStrings[ string_id ]; } + const LLFontGL* getRes( LLFONT_ID font_id ) const { return mFonts[ font_id ]; } + const LLFontGL* getRes( LLString font_id ) const; + +private: + LLLOCALE_ID mLocale; +// const char** mStrings; + const LLFontGL** mFonts; + +// const char* mUSAStrings[LLSTR_COUNT]; + const LLFontGL* mUSAFonts[LLFONT_COUNT]; + +// const char* mUKStrings[LLSTR_COUNT]; + const LLFontGL* mUKFonts[LLFONT_COUNT]; +}; + +class LLLocale +{ +public: + LLLocale(const LLString& locale_string); + virtual ~LLLocale(); + +public: + static const LLString USER_LOCALE; + static const LLString SYSTEM_LOCALE; + +protected: + LLString mPrevLocaleString; +}; + +extern LLResMgr* gResMgr; + +#endif // LL_RESMGR_ |