diff options
-rw-r--r-- | sources.mk | 4 | ||||
-rw-r--r-- | src/menuorg.cpp | 18 | ||||
-rw-r--r-- | src/menuorg.h | 4 | ||||
-rw-r--r-- | src/pluginsetup.cpp (renamed from src/menuorgsetup.cpp) | 29 | ||||
-rw-r--r-- | src/pluginsetup.h (renamed from src/menuorgsetup.h) | 24 | ||||
-rw-r--r-- | src/version.h | 2 |
6 files changed, 46 insertions, 35 deletions
@@ -9,8 +9,8 @@ SRCS = \ src/plugincreator.cpp \ src/pluginitemdefinition.cpp \ src/pluginmenunode.cpp \ + src/pluginsetup.cpp \ src/submenunode.cpp \ src/systemmenunode.cpp \ src/i18n.cpp \ - src/menuorgsetup.cpp \ - src/menusetup.cpp + src/menusetup.cpp \ diff --git a/src/menuorg.cpp b/src/menuorg.cpp index 405e0fc..0b0111d 100644 --- a/src/menuorg.cpp +++ b/src/menuorg.cpp @@ -33,7 +33,7 @@ #include "menuconfiguration.h" #include "mainmenuitemsprovider.h" #include "i18n.h" -#include "menuorgsetup.h" +#include "pluginsetup.h" using namespace std; @@ -42,8 +42,8 @@ MenuOrgPlugin::MenuOrgPlugin(void) // Initialize any member variables here. // DON'T DO ANYTHING ELSE THAT MAY HAVE SIDE EFFECTS, REQUIRE GLOBAL // VDR OBJECTS TO EXIST OR PRODUCE ANY OUTPUT! - _pluginIsActive = 1; - _showLostPlugins = 1; + _customMenuShouldBeActive = true; + _unconfiguredPluginsShouldBeIncluded = true; } MenuOrgPlugin::~MenuOrgPlugin() @@ -132,18 +132,18 @@ cOsdObject *MenuOrgPlugin::MainMenuAction(void) cMenuSetupPage *MenuOrgPlugin::SetupMenu(void) { // Return a setup menu in case the plugin supports one. - return new cMenuOrgPluginSetup(&_pluginIsActive, &_showLostPlugins); + return new PluginSetup(_customMenuShouldBeActive, _unconfiguredPluginsShouldBeIncluded); } bool MenuOrgPlugin::SetupParse(const char *Name, const char *Value) { - if (!strcasecmp(Name, "pluginIsActive")) + if (!strcasecmp(Name, PluginSetup::SetupName::CustomMenuActive)) { - _pluginIsActive = atoi(Value); + _customMenuShouldBeActive = (atoi(Value) != 0); } - else if(!strcasecmp(Name, "showLostPlugins")) + else if(!strcasecmp(Name, PluginSetup::SetupName::UnconfiguredPluginsIncluded)) { - _showLostPlugins = atoi(Value); + _unconfiguredPluginsShouldBeIncluded = (atoi(Value) != 0); } else return false; @@ -153,7 +153,7 @@ bool MenuOrgPlugin::SetupParse(const char *Name, const char *Value) bool MenuOrgPlugin::Service(const char *Id, void *Data) { - if (strcmp(Id, MENU_ITEMS_PROVIDER_SERVICE_ID) == 0 && _pluginIsActive == 1) + if (strcmp(Id, MENU_ITEMS_PROVIDER_SERVICE_ID) == 0 && _customMenuShouldBeActive) { if (_subMenuProvider) { diff --git a/src/menuorg.h b/src/menuorg.h index e5b1e11..8ef4213 100644 --- a/src/menuorg.h +++ b/src/menuorg.h @@ -33,8 +33,8 @@ class MenuOrgPlugin : public cPlugin private: MainMenuItemsProvider* _subMenuProvider; std::string configFile; - int _pluginIsActive; - int _showLostPlugins; + bool _customMenuShouldBeActive; + bool _unconfiguredPluginsShouldBeIncluded; public: MenuOrgPlugin(void); diff --git a/src/menuorgsetup.cpp b/src/pluginsetup.cpp index 1628f90..8069113 100644 --- a/src/menuorgsetup.cpp +++ b/src/pluginsetup.cpp @@ -22,32 +22,31 @@ #include <vdr/menu.h> #include "menuorg.h" -#include "menuorgsetup.h" +#include "pluginsetup.h" #include "menusetup.h" -cMenuOrgPluginSetup::cMenuOrgPluginSetup(int* pluginIsActive, int* showLostPlugins) -{ - // store the pointers for writing values back - _pluginIsActive = pluginIsActive; - _showLostPlugins = showLostPlugins; +const char* PluginSetup::SetupName::CustomMenuActive = "customMenuActive"; +const char* PluginSetup::SetupName::UnconfiguredPluginsIncluded = "unconfiguredPluginsIncluded"; - // make a temporary copy of the values - _newpluginIsActive = *pluginIsActive; - _newshowLostPlugins = *showLostPlugins; +PluginSetup::PluginSetup(bool& customMenuActive, bool& unconfiguredPluginsIncluded) + :_customMenuActive(customMenuActive), _unconfiguredPluginsIncluded(unconfiguredPluginsIncluded) +{ + _newCustomMenuActive = _customMenuActive; + _newUnconfiguredPluginsIncluded = _unconfiguredPluginsIncluded; // create the setup entrys - Add(new cMenuEditBoolItem(tr("PluginActive"), &_newpluginIsActive)); - Add(new cMenuEditBoolItem(tr("Add lost Plugins to MainMenu"), &_newshowLostPlugins)); + Add(new cMenuEditBoolItem(tr("Enable custom menu"), &_newCustomMenuActive)); + Add(new cMenuEditBoolItem(tr("Include unconfigured Plugins"), &_newUnconfiguredPluginsIncluded)); Add(new cOsdItem(tr("Configure Menu"), osUser1)); } -void cMenuOrgPluginSetup::Store(void) +void PluginSetup::Store(void) { - SetupStore("pluginIsActive", *_pluginIsActive = _newpluginIsActive); - SetupStore("showLostPlugins", *_showLostPlugins = _newshowLostPlugins); + SetupStore(SetupName::CustomMenuActive, _customMenuActive = _newCustomMenuActive); + SetupStore(SetupName::UnconfiguredPluginsIncluded, _unconfiguredPluginsIncluded = _newUnconfiguredPluginsIncluded); } -eOSState cMenuOrgPluginSetup::ProcessKey(eKeys Key) +eOSState PluginSetup::ProcessKey(eKeys Key) { eOSState state = cOsdMenu::ProcessKey(Key); switch(state) diff --git a/src/menuorgsetup.h b/src/pluginsetup.h index b2fea9b..34a501f 100644 --- a/src/menuorgsetup.h +++ b/src/pluginsetup.h @@ -20,20 +20,32 @@ * */ +#ifndef ___PLUGINSETUP_H +#define ___PLUGINSETUP_H + #include <vdr/menu.h> -class cMenuOrgPluginSetup : public cMenuSetupPage +class PluginSetup : public cMenuSetupPage { private: - int _newpluginIsActive; - int _newshowLostPlugins; - int* _pluginIsActive; - int* _showLostPlugins; + int _newCustomMenuActive; + int _newUnconfiguredPluginsIncluded; + bool& _customMenuActive; + bool& _unconfiguredPluginsIncluded; + + public: + struct SetupName + { + static const char* CustomMenuActive; + static const char* UnconfiguredPluginsIncluded; + }; protected: virtual void Store(void); public: - cMenuOrgPluginSetup(int *pluginActive, int *getLostPlugins); + PluginSetup(bool& customMenuActive, bool& unconfiguredPluginsIncluded); virtual eOSState ProcessKey(eKeys Key); }; + +#endif diff --git a/src/version.h b/src/version.h index 8b208f0..4a02c5f 100644 --- a/src/version.h +++ b/src/version.h @@ -23,6 +23,6 @@ #ifndef ___VERSION_H #define ___VERSION_H -static const char VERSION[] = "0.3"; +static const char VERSION[] = "0.4"; #endif |