Fast fix for picviewer; Page up/down change for channel list

git-svn-id: file:///home/bas/coolstream_public_svn/THIRDPARTY/applications/neutrino-experimental@388 e54a6e83-5905-42d5-8d5c-058d10e6a962


Origin commit data
------------------
Branch: ni/coolstream
Commit: b5655fb6f4
Author: [CST] Focus <focus.cst@gmail.com>
Date: 2010-02-20 (Sat, 20 Feb 2010)



------------------
This commit was generated by Migit
This commit is contained in:
[CST] Focus
2010-02-20 12:30:22 +00:00
parent cee3d395c7
commit 4dd95d9825
6 changed files with 26 additions and 9 deletions

View File

@@ -142,6 +142,7 @@ audiomenu.avsync A/V sync
audiomenu.avsync_am Audio master
audiomenu.auto_lang Auto select audio
audiomenu.auto_subs Auto select subtitles
audiomenu.pref_languages Language preferences
audiomenu.pref_lang_head Audio/EPG language preferences
audiomenu.pref_lang Prefered language
audiomenu.pref_subs_head Subtitle language preferences

View File

@@ -83,11 +83,12 @@ CPictureViewer::CFormathandler * CPictureViewer::fh_getsize (const char *name, i
bool CPictureViewer::DecodeImage (const std::string & name, bool showBusySign, bool unscaled)
{
// dbout("DecodeImage {\n");
#if 0 // quick fix for issue #245. TODO more smart fix for this problem
if (name == m_NextPic_Name) {
// dbout("DecodeImage }\n");
return true;
}
#endif
int x, y, xs, ys, imx, imy;
xs = CFrameBuffer::getInstance()->getScreenWidth(true);

View File

@@ -546,8 +546,16 @@ int CChannelList::show()
step = ((int) msg == g_settings.key_channelList_pageup) ? listmaxshow : 1; // browse or step 1
selected -= step;
#if 0
if((prev_selected-step) < 0) // because of uint
selected = chanlist.size() - 1;
#endif
if((prev_selected-step) < 0) {
if(prev_selected != 0 && step != 1)
selected = 0;
else
selected = chanlist.size() - 1;
}
paintItem(prev_selected - liststart);
unsigned int oldliststart = liststart;
@@ -569,13 +577,22 @@ int CChannelList::show()
step = ((int) msg == g_settings.key_channelList_pagedown) ? listmaxshow : 1; // browse or step 1
selected += step;
#if 0
if(selected >= chanlist.size()) {
if (((chanlist.size() / listmaxshow) + 1) * listmaxshow == chanlist.size() + listmaxshow) // last page has full entries
selected = 0;
else
selected = ((step == listmaxshow) && (selected < (((chanlist.size() / listmaxshow)+1) * listmaxshow))) ? (chanlist.size() - 1) : 0;
}
#endif
if(selected >= chanlist.size()) {
if((chanlist.size() - listmaxshow -1 < prev_selected) && (prev_selected != (chanlist.size() - 1)) && (step != 1))
selected = chanlist.size() - 1;
else if (((chanlist.size() / listmaxshow) + 1) * listmaxshow == chanlist.size() + listmaxshow) // last page has full entries
selected = 0;
else
selected = ((step == listmaxshow) && (selected < (((chanlist.size() / listmaxshow)+1) * listmaxshow))) ? (chanlist.size() - 1) : 0;
}
paintItem(prev_selected - liststart);
unsigned int oldliststart = liststart;

View File

@@ -1674,12 +1674,8 @@ void CNeutrinoApp::InitLanguageSettings(CMenuWidget &languageSettings)
xmlFreeDoc(parser);
}
// languageSettings.addItem(new CMenuSeparator(CMenuSeparator::LINE | CMenuSeparator::STRING, LOCALE_AUDIOMENU_PREF_LANG_HEAD));
CMenuWidget * prefMenu = new CMenuWidget(LOCALE_AUDIOMENU_PREF_LANGUAGES, NEUTRINO_ICON_LANGUAGE);
//audioSettings.addItem(new CMenuSeparator(CMenuSeparator::LINE | CMenuSeparator::STRING, LOCALE_AUDIOMENU_PREF_LANG_HEAD));
CMenuWidget * prefMenu = new CMenuWidget(LOCALE_AUDIOMENU_PREF_LANG, NEUTRINO_ICON_LANGUAGE);
//addMenueIntroItems(*prefMenu);
prefMenu->addItem(GenericMenuSeparator);
prefMenu->addItem(GenericMenuBack);
prefMenu->addItem(new CMenuSeparator(CMenuSeparator::LINE | CMenuSeparator::STRING, LOCALE_AUDIOMENU_PREF_LANG_HEAD));
@@ -1699,7 +1695,7 @@ void CNeutrinoApp::InitLanguageSettings(CMenuWidget &languageSettings)
prefMenu->addItem(new CMenuSeparator(CMenuSeparator::LINE | CMenuSeparator::STRING, LOCALE_AUDIOMENU_PREF_SUBS_HEAD));
prefMenu->addItem(new CMenuOptionChooser(LOCALE_AUDIOMENU_AUTO_SUBS, &g_settings.auto_subs, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, true, NULL));
for(int i = 0; i < 3; i++) {
CMenuOptionStringChooser * langSelect = new CMenuOptionStringChooser(LOCALE_AUDIOMENU_PREF_SUBS, g_settings.pref_subs[i], true, NULL, CRCInput::RC_nokey, "", true);
CMenuOptionStringChooser * langSelect = new CMenuOptionStringChooser(LOCALE_AUDIOMENU_PREF_SUBS, g_settings.pref_subs[i], true, NULL, CRCInput::convertDigitToKey(i+4), "", true);
std::map<std::string, std::string>::const_iterator it;
for(it = iso639rev.begin(); it != iso639rev.end(); it++) {
langSelect->addOption(it->first.c_str());
@@ -1707,7 +1703,7 @@ void CNeutrinoApp::InitLanguageSettings(CMenuWidget &languageSettings)
prefMenu->addItem(langSelect);
}
languageSettings.addItem(new CMenuForwarder(LOCALE_AUDIOMENU_PREF_LANG_HEAD, true, NULL, prefMenu, NULL, CRCInput::RC_yellow, NEUTRINO_ICON_BUTTON_YELLOW));
languageSettings.addItem(new CMenuForwarder(LOCALE_AUDIOMENU_PREF_LANGUAGES, true, NULL, prefMenu, NULL, CRCInput::RC_yellow, NEUTRINO_ICON_BUTTON_YELLOW));
langNotifier->changeNotify(NONEXISTANT_LOCALE, NULL);
}

View File

@@ -149,6 +149,7 @@ typedef enum {
LOCALE_AUDIOMENU_CLOCKREC,
LOCALE_AUDIOMENU_AUTO_LANG,
LOCALE_AUDIOMENU_AUTO_SUBS,
LOCALE_AUDIOMENU_PREF_LANGUAGES,
LOCALE_AUDIOMENU_PREF_LANG_HEAD,
LOCALE_AUDIOMENU_PREF_LANG,
LOCALE_AUDIOMENU_PREF_SUBS_HEAD,

View File

@@ -149,6 +149,7 @@ const char *locale_real_names[] = {
"audiomenu.clockrec",
"audiomenu.auto_lang",
"audiomenu.auto_subs",
"audiomenu.pref_languages",
"audiomenu.pref_lang_head",
"audiomenu.pref_lang",
"audiomenu.pref_subs_head",