neutrino: add option to limit CI usage to selected tuner

Origin commit data
------------------
Branch: ni/coolstream
Commit: 5a8fc39ef9
Author: [CST] Focus <focus.cst@gmail.com>
Date: 2015-11-05 (Thu, 05 Nov 2015)


------------------
No further description and justification available within origin commit message!

------------------
This commit was generated by Migit
This commit is contained in:
[CST] Focus
2015-11-05 17:51:36 +03:00
parent f32b6cdd57
commit 973549a293
9 changed files with 62 additions and 6 deletions

View File

@@ -109,6 +109,9 @@ int CCAMMenuHandler::doMainMenu()
CMenuWidget* cammenu = new CMenuWidget(LOCALE_CI_SETTINGS, NEUTRINO_ICON_SETTINGS);
cammenu->addIntroItems();
int fecount = CFEManager::getInstance()->getFrontendCount();
char fename[fecount+1][255];
if (!g_settings.easymenu) {
if(CiSlots) {
cammenu->addItem( new CMenuOptionChooser(LOCALE_CI_RESET_STANDBY, &g_settings.ci_standby_reset, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, true));
@@ -116,6 +119,27 @@ int CCAMMenuHandler::doMainMenu()
}
cammenu->addItem( new CMenuOptionChooser(LOCALE_CI_IGNORE_MSG, &g_settings.ci_ignore_messages, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, true));
cammenu->addItem( new CMenuOptionChooser(LOCALE_CI_SAVE_PINCODE, &g_settings.ci_save_pincode, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, true, this));
#ifdef BOXMODEL_APOLLO
CMenuOptionChooser::keyval_ext feselect[fecount+1];
feselect[0].key = -1;
feselect[0].value = NONEXISTANT_LOCALE;
feselect[0].valname = g_Locale->getText(LOCALE_OPTIONS_OFF);
int select_count = 1;
for (int i = 0; i < fecount; i++) {
CFrontend * fe = CFEManager::getInstance()->getFE(i);
int num = fe->getNumber();
snprintf(fename[select_count], sizeof(fename[select_count]), "%d: %s", num+1, fe->getName());
feselect[select_count].key = num;
feselect[select_count].value = NONEXISTANT_LOCALE;
feselect[select_count].valname = fename[select_count];
select_count++;
}
CMenuOptionChooser * mc = new CMenuOptionChooser(LOCALE_CI_TUNER, &g_settings.ci_tuner, feselect, select_count, true, this);
cammenu->addItem(mc);
#endif
cammenu->addItem( GenericMenuSeparatorLine );
}
@@ -537,5 +561,9 @@ bool CCAMMenuHandler::changeNotify(const neutrino_locale_t OptionName, void * Da
g_settings.ci_pincode.clear();
}
}
else if (ARE_LOCALES_EQUAL(OptionName, LOCALE_CI_TUNER)) {
printf("CCAMMenuHandler::changeNotify: bind CI to tuner %d\n", g_settings.ci_tuner);
CCamManager::getInstance()->SetCITuner(g_settings.ci_tuner);
}
return false;
}