diff options
author | svntobi <svntobi@cd0d6b48-d4f9-0310-940f-ab8c4eb44d3f> | 2007-08-26 09:31:12 +0000 |
---|---|---|
committer | svntobi <svntobi@cd0d6b48-d4f9-0310-940f-ab8c4eb44d3f> | 2007-08-26 09:31:12 +0000 |
commit | 891e608a185e1cde99ce327feeb59f6d176d68c9 (patch) | |
tree | eb4e918125c454f361bcc90bbc0d2a106ab4d1c4 | |
parent | 8c69e3880a9c0e48ea130962ceddd43c661f3888 (diff) | |
download | vdr-plugin-menuorg-891e608a185e1cde99ce327feeb59f6d176d68c9.tar.gz vdr-plugin-menuorg-891e608a185e1cde99ce327feeb59f6d176d68c9.tar.bz2 |
- Fixed system menu node creation
- Changed parameter order
- Use default paramter title="" for PluginMenuNode
git-svn-id: file:///home/tobias/sandbox/vdr/--/vdr-pkg/vdr-pkg/menuorg/trunk@5997 cd0d6b48-d4f9-0310-940f-ab8c4eb44d3f
-rw-r--r-- | src/menuconfiguration.cpp | 12 | ||||
-rw-r--r-- | src/menuconfiguration.h | 4 | ||||
-rw-r--r-- | src/pluginmenunode.cpp | 10 | ||||
-rw-r--r-- | src/pluginmenunode.h | 3 |
4 files changed, 11 insertions, 18 deletions
diff --git a/src/menuconfiguration.cpp b/src/menuconfiguration.cpp index c8b0f0e..e3a9d3b 100644 --- a/src/menuconfiguration.cpp +++ b/src/menuconfiguration.cpp @@ -109,14 +109,14 @@ void MenuConfiguration::ParseElement(const Element* element, MenuNode* menuNode) else if (type == "system") { const xmlpp::Attribute* titleAttribute = childElement->get_attribute("title"); - name = titleAttribute ? (string) UnicodeToLocaleOrIso8859(titleAttribute->get_value()) : name; - AddSystemMenuNode(name, menuNode); + string title = titleAttribute ? (string) UnicodeToLocaleOrIso8859(titleAttribute->get_value()) : name; + AddSystemMenuNode(name, title, menuNode); } else if (type == "plugin") { const xmlpp::Attribute* titleAttribute = childElement->get_attribute("title"); string title = titleAttribute ? (string) UnicodeToLocaleOrIso8859(titleAttribute->get_value()) : name; - AddPluginMenuNode(name, menuNode, title); + AddPluginMenuNode(name, title, menuNode); } else if (type == "command") { @@ -134,12 +134,12 @@ MenuNode* MenuConfiguration::AddSubMenuNode(string name, MenuNode* menu) return menu->AddChild(new SubMenuNode(name)); } -void MenuConfiguration::AddSystemMenuNode(string name, MenuNode* menu) +void MenuConfiguration::AddSystemMenuNode(string name, string title, MenuNode* menu) { - menu->AddChild(new SystemMenuNode(name, MenuTextToVdrState(name))); + menu->AddChild(new SystemMenuNode(title, MenuTextToVdrState(name))); } -void MenuConfiguration::AddPluginMenuNode(string pluginName, MenuNode* menu, string title) +void MenuConfiguration::AddPluginMenuNode(string pluginName, string title, MenuNode* menu) { int pluginIndex; cPlugin* plugin; diff --git a/src/menuconfiguration.h b/src/menuconfiguration.h index f11d2f4..8ef64b6 100644 --- a/src/menuconfiguration.h +++ b/src/menuconfiguration.h @@ -46,8 +46,8 @@ class MenuConfiguration eOSState MenuTextToVdrState(std::string menuText); bool FindPluginByName(std::string name, cPlugin*& plugin, int& pluginIndex); MenuNode* AddSubMenuNode(std::string name, MenuNode* menu); - void AddSystemMenuNode(std::string name, MenuNode* menu); - void AddPluginMenuNode(std::string pluginName, MenuNode* menu, std::string title); + void AddSystemMenuNode(std::string name, std::string title, MenuNode* menu); + void AddPluginMenuNode(std::string pluginName, std::string title, MenuNode* menu); void AddUnconfiguredPlugins(MenuNode* menu); void AddCommandMenuNode(std::string name, std::string command, bool confirm, MenuNode* menu); std::string UnicodeToLocaleOrIso8859(Glib::ustring unicodeString); diff --git a/src/pluginmenunode.cpp b/src/pluginmenunode.cpp index 996cffc..1e8bc5f 100644 --- a/src/pluginmenunode.cpp +++ b/src/pluginmenunode.cpp @@ -29,12 +29,6 @@ using namespace std; -PluginMenuNode::PluginMenuNode(cPlugin* plugin, int pluginIndex) -{ - _plugin = plugin; - _pluginIndex = pluginIndex; -} - PluginMenuNode::PluginMenuNode(cPlugin* plugin, int pluginIndex, string title) { _plugin = plugin; @@ -44,8 +38,8 @@ PluginMenuNode::PluginMenuNode(cPlugin* plugin, int pluginIndex, string title) IMenuItemDefinition* PluginMenuNode::CreateMenuItemDefinition() { - const char* title = _title.empty() ? _plugin->MainMenuEntry() : _title.c_str(); - return new PluginItemDefinition(title, _pluginIndex); + const char* mainMenuEntry = _title.empty() ? _plugin->MainMenuEntry() : _title.c_str(); + return new PluginItemDefinition(mainMenuEntry, _pluginIndex); } bool PluginMenuNode::IsHidden() diff --git a/src/pluginmenunode.h b/src/pluginmenunode.h index 5698fb1..2b982c4 100644 --- a/src/pluginmenunode.h +++ b/src/pluginmenunode.h @@ -36,8 +36,7 @@ class PluginMenuNode: public MenuNode std::string _title; public: - PluginMenuNode(cPlugin* plugin, int pluginIndex); - PluginMenuNode(cPlugin* plugin, int pluginIndex, std::string title); + PluginMenuNode(cPlugin* plugin, int pluginIndex, std::string title = ""); IMenuItemDefinition* CreateMenuItemDefinition(); bool IsHidden(); |