aboutsummaryrefslogtreecommitdiff
path: root/src/FbTk/LResource.cc
diff options
context:
space:
mode:
authorPavel Labath <pavelo@centrum.sk>2011-06-12 12:18:58 (GMT)
committerPavel Labath <pavelo@centrum.sk>2011-11-01 09:54:48 (GMT)
commit7817fd254e9bd1529fa6e98cdba249b7c0b8a6f8 (patch)
tree5842eefc426161b8b88a817c4a7fe900e116a4a4 /src/FbTk/LResource.cc
parent2a6803c7343bbe7ab1da9219fe56a03172b98bf9 (diff)
downloadfluxbox_pavel-7817fd254e9bd1529fa6e98cdba249b7c0b8a6f8.zip
fluxbox_pavel-7817fd254e9bd1529fa6e98cdba249b7c0b8a6f8.tar.bz2
Move more common stuff of (L)ResourceManagers to their base class
Diffstat (limited to 'src/FbTk/LResource.cc')
-rw-r--r--src/FbTk/LResource.cc29
1 files changed, 2 insertions, 27 deletions
diff --git a/src/FbTk/LResource.cc b/src/FbTk/LResource.cc
index fd8ef2f..5842b65 100644
--- a/src/FbTk/LResource.cc
+++ b/src/FbTk/LResource.cc
@@ -108,8 +108,7 @@ void LResourceManager::addResource(Resource_base &r) {
108 m_l->checkstack(5); 108 m_l->checkstack(5);
109 lua::stack_sentry s(*m_l); 109 lua::stack_sentry s(*m_l);
110 110
111 m_resourcelist.push_back(&r); 111 ResourceManager_base::addResource(r);
112 m_resourcelist.unique();
113 112
114 m_l->getfield(lua::REGISTRYINDEX, register_resource); 113 m_l->getfield(lua::REGISTRYINDEX, register_resource);
115 m_l->getfield(lua::GLOBALSINDEX, m_root.c_str()); 114 m_l->getfield(lua::GLOBALSINDEX, m_root.c_str());
@@ -133,31 +132,7 @@ void LResourceManager::removeResource(Resource_base &r) {
133 *static_cast<Resource_base **>(m_l->touserdata(-1)) = NULL; 132 *static_cast<Resource_base **>(m_l->touserdata(-1)) = NULL;
134 m_l->pop(); 133 m_l->pop();
135 134
136 m_resourcelist.remove(&r); 135 ResourceManager_base::removeResource(r);
137}
138
139Resource_base *LResourceManager::findResource(const std::string &resname) {
140 // find resource name
141 ResourceList::const_iterator i = m_resourcelist.begin();
142 ResourceList::const_iterator i_end = m_resourcelist.end();
143 for (; i != i_end; ++i) {
144 if ((*i)->name() == resname ||
145 (*i)->altName() == resname)
146 return *i;
147 }
148 return 0;
149}
150
151const Resource_base *LResourceManager::findResource(const std::string &resname) const {
152 // find resource name
153 ResourceList::const_iterator i = m_resourcelist.begin();
154 ResourceList::const_iterator i_end = m_resourcelist.end();
155 for (; i != i_end; ++i) {
156 if ((*i)->name() == resname ||
157 (*i)->altName() == resname)
158 return *i;
159 }
160 return 0;
161} 136}
162 137
163} // end namespace FbTk 138} // end namespace FbTk