diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/MenuConfigurationRepository.cpp | 7 | ||||
-rw-r--r-- | src/MenuConfigurationRepository.h | 1 | ||||
-rw-r--r-- | src/XmlConfigurationFactory.cpp | 92 | ||||
-rw-r--r-- | src/XmlConfigurationFactory.h | 55 |
4 files changed, 0 insertions, 155 deletions
diff --git a/src/MenuConfigurationRepository.cpp b/src/MenuConfigurationRepository.cpp index 6567361..63c25a1 100644 --- a/src/MenuConfigurationRepository.cpp +++ b/src/MenuConfigurationRepository.cpp @@ -32,7 +32,6 @@ #include "PluginMenuNode.h" #include "CommandMenuNode.h" #include "SeparatorMenuNode.h" -#include "XmlConfigurationFactory.h" using namespace xmlpp; using namespace std; @@ -107,12 +106,6 @@ SubMenuNode* MenuConfigurationRepository::Load() return _cachedMenuConfiguration; } -void MenuConfigurationRepository::Save(SubMenuNode& menuConfiguration) -{ - Document* doc = XmlConfigurationFactory::CreateXmlConfig(&menuConfiguration); - doc->write_to_file_formatted(_configurationFileName); -} - bool MenuConfigurationRepository::ConfigFileHasBeenChange() { return (CurrentConfigFileModificationTime() != _lastConfigFileModificationTime); diff --git a/src/MenuConfigurationRepository.h b/src/MenuConfigurationRepository.h index 0e6f4f5..2dd223e 100644 --- a/src/MenuConfigurationRepository.h +++ b/src/MenuConfigurationRepository.h @@ -43,7 +43,6 @@ class MenuConfigurationRepository MenuConfigurationRepository(std::string menuFileName); ~MenuConfigurationRepository(); SubMenuNode* Load(); - void Save(SubMenuNode& menuConfiguration); private: bool ConfigFileHasBeenChange(); diff --git a/src/XmlConfigurationFactory.cpp b/src/XmlConfigurationFactory.cpp deleted file mode 100644 index 39b54c9..0000000 --- a/src/XmlConfigurationFactory.cpp +++ /dev/null @@ -1,92 +0,0 @@ -/* - * vdr-menuorg - A plugin for the Linux Video Disk Recorder - * Copyright (C) 2007 Thomas Creutz, Tobias Grimm - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - * $Id$ - * - */ - -#include "XmlConfigurationFactory.h" -#include <libxml++/libxml++.h> -#include "SystemMenuNode.h" -#include "PluginMenuNode.h" -#include "SubMenuNode.h" -#include "CommandMenuNode.h" -#include "SeparatorMenuNode.h" - -using namespace xmlpp; - -Document* XmlConfigurationFactory::CreateXmlConfig(SubMenuNode* node) -{ - Document* doc = new Document(); - XmlConfigurationFactory xmlMenuNodeFactory(doc->create_root_node("menus")); - for (MenuNodeList::iterator i = node->Childs()->begin(); i != node->Childs()->end(); i++) - { - (*i)->Process(&xmlMenuNodeFactory); - } - return doc; -} - -void XmlConfigurationFactory::ProcessSystemMenuNode(SystemMenuNode* node) -{ - Element* systemNode = _parent->add_child("system"); - systemNode->set_attribute("name", node->State().Name()); - if (!node->CustomTitle().empty()) - { - systemNode->set_attribute("title", node->CustomTitle()); - } -} - -void XmlConfigurationFactory::ProcessPluginMenuNode(PluginMenuNode* node) -{ - Element* pluginNode = _parent->add_child("plugin"); - pluginNode->set_attribute("name", node->PluginName()); - if (!node->CustomTitle().empty()) - { - pluginNode->set_attribute("title", node->CustomTitle()); - } -} - -void XmlConfigurationFactory::ProcessSubMenuNode(SubMenuNode* node) -{ - Element* menuNode = _parent->add_child("menu"); - menuNode->set_attribute("name", node->Text()); - XmlConfigurationFactory subMenuFactory(menuNode); - for (MenuNodeList::iterator i = node->Childs()->begin(); i != node->Childs()->end(); i++) - { - (*i)->Process(&subMenuFactory); - } -} - -void XmlConfigurationFactory::ProcessCommandMenuNode(CommandMenuNode* node) -{ - Element* commandNode = _parent->add_child("command"); - commandNode->set_attribute("name", node->Text()); - commandNode->set_attribute("execute", node->Command()); - commandNode->set_attribute("confirm", node->ShouldConfirm() ? "yes" : "no"); -} - -void XmlConfigurationFactory::ProcessSeparatorMenuNode(SeparatorMenuNode* node) -{ - Element* separatorNode = _parent->add_child("separator"); - separatorNode->set_attribute("title", node->CustomTitle()); -} - -XmlConfigurationFactory::XmlConfigurationFactory(Element* parent) -{ - _parent = parent; -} diff --git a/src/XmlConfigurationFactory.h b/src/XmlConfigurationFactory.h deleted file mode 100644 index 7f1dc6e..0000000 --- a/src/XmlConfigurationFactory.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * vdr-menuorg - A plugin for the Linux Video Disk Recorder - * Copyright (C) 2007 Thomas Creutz, Tobias Grimm - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - * $Id$ - * - */ - -#ifndef ___XMLCONFIGURATIONFACTORY_H_ -#define ___XMLCONFIGURATIONFACTORY_H_ - -#include "IMenuNodeProcessor.h" - -namespace xmlpp { class Element; }; -namespace xmlpp { class Document; }; -class SystemMenuNode; -class PluginMenuNode; -class SubMenuNode; -class CommandMenuNode; -class SeparatorMenuNode; - -class XmlConfigurationFactory: public IMenuNodeProcessor -{ - private: - xmlpp::Element* _parent; - - public: - static xmlpp::Document* CreateXmlConfig(SubMenuNode* node); - - // IMenuNodeProcessor - void ProcessSystemMenuNode(SystemMenuNode* node); - void ProcessPluginMenuNode(PluginMenuNode* node); - void ProcessSubMenuNode(SubMenuNode* node); - void ProcessCommandMenuNode(CommandMenuNode* node); - void ProcessSeparatorMenuNode(SeparatorMenuNode* node); - - private: - XmlConfigurationFactory(xmlpp::Element* parent); -}; - -#endif |