Project::OSiRiON - Git repositories
Project::OSiRiON
News . About . Screenshots . Downloads . Forum . Wiki . Tracker . Git
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStijn Buys <ingar@osirion.org>2008-02-05 22:23:15 +0000
committerStijn Buys <ingar@osirion.org>2008-02-05 22:23:15 +0000
commit1ed2e8eb1f1909a35f6fc8d5d6065bcac37c27ea (patch)
treebb1007c12c205b265c1e7515cdc7924496e19cf3 /src/core/func.cc
parenta51deebd87036ceb87c77a20117977d077b771e3 (diff)
keyboard handling, cvar fixes
Diffstat (limited to 'src/core/func.cc')
-rw-r--r--src/core/func.cc21
1 files changed, 13 insertions, 8 deletions
diff --git a/src/core/func.cc b/src/core/func.cc
index c1ed826..c72faea 100644
--- a/src/core/func.cc
+++ b/src/core/func.cc
@@ -14,34 +14,39 @@ namespace core
namespace func
{
-std::map<std::string, Func> funcregistry;
+std::map<std::string, Func> registry;
+
void add(const char * functionname, Func functionptr)
{
- funcregistry[std::string(functionname)] = functionptr;
+ registry[std::string(functionname)] = functionptr;
}
void remove(const char *functionname)
{
- funcregistry.erase(std::string(functionname));
+ registry.erase(std::string(functionname));
}
void remove(const std::string &functionname)
{
- funcregistry.erase(functionname);
+ registry.erase(functionname);
}
Func find(const std::string &functionname)
{
- return funcregistry[functionname];
+ std::map<std::string, Func>::iterator it = registry.find(functionname);
+ if (it == registry.end())
+ return 0;
+ else
+ return (*it).second;
}
void list()
{
con_print << "-- listfunc -----------------" << std::endl;
- std::map<std::string, Func>::iterator funcregistryiterator;
- for (funcregistryiterator = funcregistry.begin(); funcregistryiterator != funcregistry.end(); funcregistryiterator++) {
- con_print << " " << (*funcregistryiterator).first << std::endl;
+ std::map<std::string, Func>::iterator it;
+ for (it = registry.begin(); it != registry.end(); it++) {
+ con_print << " " << (*it).first << std::endl;
}
}