diff options
| author | Dana Jansens <danakj@orodu.net> | 2003-01-14 00:13:20 +0000 |
|---|---|---|
| committer | Dana Jansens <danakj@orodu.net> | 2003-01-14 00:13:20 +0000 |
| commit | 0afb43164484dcac4773ad778c032687da6b01aa (patch) | |
| tree | fa7e17844a338d346d74c8f06034692a527fc4fb /util/epist/config.cc | |
| parent | b683a4e0efe470ab38b75a767b4ea2abf004626a (diff) | |
rm the util directory
Diffstat (limited to 'util/epist/config.cc')
| -rw-r--r-- | util/epist/config.cc | 170 |
1 files changed, 0 insertions, 170 deletions
diff --git a/util/epist/config.cc b/util/epist/config.cc deleted file mode 100644 index 461778e5..00000000 --- a/util/epist/config.cc +++ /dev/null @@ -1,170 +0,0 @@ -// -*- mode: C++; indent-tabs-mode: nil; c-basic-offset: 2; -*- -// config.cc for Epistrophy - a key handler for NETWM/EWMH window managers. -// Copyright (c) 2002 - 2002 Ben Jansens <ben at orodu.net> -// -// Permission is hereby granted, free of charge, to any person obtaining a -// copy of this software and associated documentation files (the "Software"), -// to deal in the Software without restriction, including without limitation -// the rights to use, copy, modify, merge, publish, distribute, sublicense, -// and/or sell copies of the Software, and to permit persons to whom the -// Software is furnished to do so, subject to the following conditions: -// -// The above copyright notice and this permission notice shall be included in -// all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -// THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -// DEALINGS IN THE SOFTWARE. - -#ifdef HAVE_CONFIG_H -# include "../../config.h" -#endif // HAVE_CONFIG_H - -#include "config.hh" - -using std::string; - -Config::Config() {} - -Config::~Config() -{ - // deallocate memory for the 3 lists - BoolItemList::const_iterator b_it, b_end = bool_items.end(); - for (b_it = bool_items.begin(); b_it != b_end; ++b_it) - delete *b_it; - bool_items.clear(); - - NumberItemList::const_iterator n_it, n_end = number_items.end(); - for (n_it = number_items.begin(); n_it != n_end; ++n_it) - delete *n_it; - number_items.clear(); - - StringItemList::const_iterator s_it, s_end = string_items.end(); - for (s_it = string_items.begin(); s_it != s_end; ++s_it) - delete *s_it; - string_items.clear(); -} - - -bool Config::getValue(Config::StringType type, string &ret) const -{ - StringItemList::const_iterator it = string_items.begin(), end = string_items.end(); - for (; it != end; ++it) { - if ((*it)->type == type) { - ret = (*it)->value; - return true; - } - } - return false; -} - - -bool Config::getValue(Config::NumberType type, int &ret) const -{ - NumberItemList::const_iterator it = number_items.begin(), end = number_items.end(); - for (; it != end; ++it) { - if ((*it)->type == type) { - ret = (*it)->value; - return true; - } - } - return false; -} - - -bool Config::getValue(Config::BoolType type, bool &ret) const -{ - BoolItemList::const_iterator it = bool_items.begin(), end = bool_items.end(); - for (; it != end; ++it) { - if ((*it)->type == type) { - ret = (*it)->value; - return true; - } - } - return false; -} - - -void Config::addOption(const std::string &name, const std::string &value) -{ - const struct { - const char *name; - Config::BoolType type; - } - bool_options[] = { - { "stackedcycling", Config::stackedCycling }, - { "stackedcyclingraise", Config::stackedCyclingRaise }, - { "", NUM_BOOL_TYPES } - }; - - const struct { - const char *name; - Config::StringType type; - } - string_options[] = { - { "", NUM_STRING_TYPES } - }; - - const struct { - const char *name; - Config::NumberType type; - } - number_options[] = { - { "chaintimeout", chainTimeout }, - { "workspacecolumns", workspaceColumns }, - { "", NUM_NUMBER_TYPES } - }; - - // if it's bool option, add it to the bool_items list - size_t i = 0; - while (bool_options[i].type != NUM_BOOL_TYPES) { - if (strcasecmp(name.c_str(), bool_options[i].name) == 0) { - BoolItem *item = new BoolItem; - const char *tmp = value.c_str(); - - item->type = bool_options[i].type; - - if (strcasecmp(tmp, "true") == 0 || strcasecmp(tmp, "1") == 0 || - strcasecmp(tmp, "on") == 0) - item->value = true; - else - item->value = false; - - bool_items.push_back(item); - return; - } - i++; - } - - // if it's a string, add it to the string_items list - i = 0; - while (string_options[i].type != NUM_STRING_TYPES) { - if (strcasecmp(name.c_str(), string_options[i].name) == 0) { - StringItem *item = new StringItem; - item->type = string_options[i].type; - item->value = value; - - string_items.push_back(item); - return; - } - i++; - } - - // if it's a number, add it to the number_items list - i = 0; - while (number_options[i].type != NUM_NUMBER_TYPES) { - if (strcasecmp(name.c_str(), number_options[i].name) == 0) { - NumberItem *item = new NumberItem; - item->type = number_options[i].type; - item->value = atoi( value.c_str() ); - - number_items.push_back(item); - return; - } - i++; - } -} |
