diff options
-rw-r--r-- | src/menuconfiguration.cpp | 4 | ||||
-rw-r--r-- | src/pluginmenunode.cpp | 9 | ||||
-rw-r--r-- | src/pluginmenunode.h | 6 |
3 files changed, 10 insertions, 9 deletions
diff --git a/src/menuconfiguration.cpp b/src/menuconfiguration.cpp index 39d2e34..9a24e85 100644 --- a/src/menuconfiguration.cpp +++ b/src/menuconfiguration.cpp @@ -211,8 +211,8 @@ void MenuConfiguration::AddCommandMenuNode(string name, string command, bool con void MenuConfiguration::AddPluginMenuNode(cPlugin* plugin, int pluginIndex, MenuNode* menu) { - if (const char *item = plugin->MainMenuEntry()) + if (plugin->MainMenuEntry()) { - menu->AddChild(new PluginMenuNode(item, pluginIndex)); + menu->AddChild(new PluginMenuNode(plugin, pluginIndex)); } } diff --git a/src/pluginmenunode.cpp b/src/pluginmenunode.cpp index 6745960..1f2eec9 100644 --- a/src/pluginmenunode.cpp +++ b/src/pluginmenunode.cpp @@ -26,19 +26,18 @@ #include "pluginitemdefinition.h" #include "childlock.h" -PluginMenuNode::PluginMenuNode(const char* pluginMainMenuEntry, int pluginIndex) +PluginMenuNode::PluginMenuNode(cPlugin* plugin, int pluginIndex) { - _pluginMainMenuEntry = pluginMainMenuEntry; + _plugin = plugin; _pluginIndex = pluginIndex; } IMenuItemDefinition* PluginMenuNode::CreateMenuItemDefinition() { - return new PluginItemDefinition(_pluginMainMenuEntry, _pluginIndex); + return new PluginItemDefinition(_plugin->MainMenuEntry(), _pluginIndex); } bool PluginMenuNode::IsHidden() { - cPlugin* plugin = cPluginManager::GetPlugin(_pluginIndex); - return ChildLock::IsPluginHidden(plugin); + return ChildLock::IsPluginHidden(_plugin); } diff --git a/src/pluginmenunode.h b/src/pluginmenunode.h index cbf3477..4954752 100644 --- a/src/pluginmenunode.h +++ b/src/pluginmenunode.h @@ -25,14 +25,16 @@ #include "menunode.h" +class cPlugin; + class PluginMenuNode: public MenuNode { private: - const char* _pluginMainMenuEntry; + cPlugin* _plugin; int _pluginIndex; public: - PluginMenuNode(const char* pluginMainMenuEntry, int pluginIndex); + PluginMenuNode(cPlugin* plugin, int pluginIndex); IMenuItemDefinition* CreateMenuItemDefinition(); bool IsHidden(); }; |