- plugins: don't add hidden plugins to usermenu; ...

... use CPuginsExec::exec() to execute and drop CUserMenu::exec()
This commit is contained in:
svenhoefer
2014-11-07 09:34:37 +01:00
parent 6f3c77734c
commit c0b130c490
3 changed files with 8 additions and 12 deletions

View File

@@ -427,12 +427,14 @@ bool CUserMenu::showUserMenu(neutrino_msg_t msg)
int number_of_plugins = g_PluginList->getNumberOfPlugins();
if (!number_of_plugins)
continue;
char id[5];
int count = 0;
for(; count < number_of_plugins; count++) {
const char *pname = g_PluginList->getFileName(count);
if (pname && (std::string(pname) == *it)) {
if (pname && (std::string(pname) == *it) && !g_PluginList->isHidden(count)) {
sprintf(id, "%d", count);
keyhelper.get(&key,&icon);
menu_item = new CMenuForwarder(g_PluginList->getName(count), true, NULL, this, pname, key, icon);
menu_item = new CMenuForwarder(g_PluginList->getName(count), true, NULL, &plugins, id, key, icon);
menu_item->setHint(g_PluginList->getHintIcon(count), g_PluginList->getDescription(count));
break;
}
@@ -580,11 +582,3 @@ bool CUserMenu::changeNotify(const neutrino_locale_t OptionName, void * Data)
return false;
}
int CUserMenu::exec(CMenuTarget* /*parent*/, const std::string & actionKey)
{
if (actionKey == "")
return menu_return::RETURN_NONE;
g_PluginList->startPlugin(actionKey.c_str());
return menu_return::RETURN_EXIT;
}

View File

@@ -66,12 +66,11 @@ static user_menu_data_t user_menu[COL_BUTTONMAX] =
// const neutrino_msg_t col_key_helper_msg_def[COL_BUTTONMAX]={CRCInput::RC_red,CRCInput::RC_green,CRCInput::RC_yellow,CRCInput::RC_blue};
// const char * col_key_helper_icon_def[COL_BUTTONMAX]={NEUTRINO_ICON_BUTTON_RED,NEUTRINO_ICON_BUTTON_GREEN,NEUTRINO_ICON_BUTTON_YELLOW,NEUTRINO_ICON_BUTTON_BLUE};
class CUserMenu : public CChangeObserver, CMenuTarget
class CUserMenu : public CChangeObserver
{
private:
int width;
bool changeNotify(const neutrino_locale_t OptionName, void *);
int exec(CMenuTarget* parent, const std::string & actionKey);
public:
CUserMenu();

View File

@@ -369,6 +369,9 @@ int CNVODChangeExec::exec(CMenuTarget* parent, const std::string & actionKey)
int CPluginsExec::exec(CMenuTarget* parent, const std::string & actionKey)
{
if (actionKey.empty())
return menu_return::RETURN_NONE;
//printf("CPluginsExec exec: %s\n", actionKey.c_str());
int sel= atoi(actionKey.c_str());