LangResource.h

Go to the documentation of this file.
00001 ////////////////////////////////////////////////////////////////////////////////
00002 //    Scorched3D (c) 2000-2009
00003 //
00004 //    This file is part of Scorched3D.
00005 //
00006 //    Scorched3D is free software; you can redistribute it and/or modify
00007 //    it under the terms of the GNU General Public License as published by
00008 //    the Free Software Foundation; either version 2 of the License, or
00009 //    (at your option) any later version.
00010 //
00011 //    Scorched3D is distributed in the hope that it will be useful,
00012 //    but WITHOUT ANY WARRANTY; without even the implied warranty of
00013 //    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00014 //    GNU General Public License for more details.
00015 //
00016 //    You should have received a copy of the GNU General Public License
00017 //    along with Scorched3D; if not, write to the Free Software
00018 //    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00019 ////////////////////////////////////////////////////////////////////////////////
00020 
00021 #if !defined(__INCLUDE_LangText_INCLUDE__)
00022 #define __INCLUDE_LangText_INCLUDE__
00023 
00024 #include <lang/Lang.h>
00025 
00026 #define LANG_RESOURCE(key, value) LangResource::getKey(key, value)
00027 #define LANG_RESOURCE_1(key, value, param1) LangResource::getKey(key, value, param1)
00028 #define LANG_RESOURCE_2(key, value, param1, param2) LangResource::getKey(key, value, param1, param2)
00029 #define LANG_RESOURCE_3(key, value, param1, param2, param3) LangResource::getKey(key, value, param1, param2, param3)
00030 #define LANG_RESOURCE_4(key, value, param1, param2, param3, param4) LangResource::getKey(key, value, param1, param2, param3, param4)
00031 
00032 #define LANG_RESOURCE_VAR(name, key, value) static ResourceBundleEntry *TEXT_BUNDLE_##name = \
00033         Lang::instance()->getEntry(key, value); \
00034         static LangString name = TEXT_BUNDLE_##name->getString();
00035 #define LANG_RESOURCE_VAR_1(name, key, value, param1) static ResourceBundleEntry *TEXT_BUNDLE_##name = \
00036         Lang::instance()->getEntry(key, value); \
00037         LangString name = TEXT_BUNDLE_##name->getString(param1);
00038 #define LANG_RESOURCE_VAR_2(name, key, value, param1, param2) static ResourceBundleEntry *TEXT_BUNDLE_##name = \
00039         Lang::instance()->getEntry(key, value); \
00040         LangString name = TEXT_BUNDLE_##name->getString(param1, param2);
00041 #define LANG_RESOURCE_VAR_3(name, key, value, param1, param2, param3) static ResourceBundleEntry *TEXT_BUNDLE_##name = \
00042         Lang::instance()->getEntry(key, value); \
00043         LangString name = TEXT_BUNDLE_##name->getString(param1, param2, param3);
00044 #define LANG_RESOURCE_VAR_4(name, key, value, param1, param2, param3, param4) static ResourceBundleEntry *TEXT_BUNDLE_##name = \
00045         Lang::instance()->getEntry(key, value); \
00046         LangString name = TEXT_BUNDLE_##name->getString(param1, param2, param3, param4);
00047 
00048 #define LANG_RESOURCE_CONST_VAR(name, key, value) static ResourceBundleEntry *TEXT_BUNDLE_##name = \
00049         Lang::instance()->getEntry(key, value); \
00050         static LangString name = TEXT_BUNDLE_##name->getString();
00051 #define LANG_RESOURCE_CONST_VAR_1(name, key, value, param1) static ResourceBundleEntry *TEXT_BUNDLE_##name = \
00052         Lang::instance()->getEntry(key, value); \
00053         static LangString name = TEXT_BUNDLE_##name->getString(param1);
00054 #define LANG_RESOURCE_CONST_VAR_2(name, key, value, param1, param2) static ResourceBundleEntry *TEXT_BUNDLE_##name = \
00055         Lang::instance()->getEntry(key, value); \
00056         static LangString name = TEXT_BUNDLE_##name->getString(param1, param2);
00057 #define LANG_RESOURCE_CONST_VAR_3(name, key, value, param1, param2, param3) static ResourceBundleEntry *TEXT_BUNDLE_##name = \
00058         Lang::instance()->getEntry(key, value); \
00059         static LangString name = TEXT_BUNDLE_##name->getString(param1, param2, param3);
00060 #define LANG_RESOURCE_CONST_VAR_4(name, key, value, param1, param2, param3, param4) static ResourceBundleEntry *TEXT_BUNDLE_##name = \
00061         Lang::instance()->getEntry(key, value); \
00062         static LangString name = TEXT_BUNDLE_##name->getString(param1, param2, param3, param4);
00063 
00064 namespace LangResource
00065 {
00066         LangString getKey(const std::string &key, const std::string &value);
00067         LangString getKey(const std::string &key, const std::string &value, const LangStringConverter &param1);
00068         LangString getKey(const std::string &key, const std::string &value, const LangStringConverter &param1, 
00069                 const LangStringConverter &param2);
00070         LangString getKey(const std::string &key, const std::string &value, const LangStringConverter &param1, 
00071                 const LangStringConverter &param2, const LangStringConverter &param3);
00072         LangString getKey(const std::string &key, const std::string &value, const LangStringConverter &param1, 
00073                 const LangStringConverter &param2, const LangStringConverter &param3, const LangStringConverter &param4);
00074 }
00075 
00076 #endif // __INCLUDE_LangText_INCLUDE__

Generated on Mon Feb 16 15:14:50 2009 for Scorched3D by  doxygen 1.5.3