neutrino channellist: fix dynamic record button

show matching button to modes record/stop/disable

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


Origin commit data
------------------
Branch: ni/coolstream
Commit: 7db85cbb57
Author: Thilo Graf <dbt@novatux.de>
Date: 2011-10-01 (Sat, 01 Oct 2011)

Origin message was:
------------------
*neutrino channellist: fix dynamic record button

show matching button to modes record/stop/disable

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


------------------
This commit was generated by Migit
This commit is contained in:
2011-10-01 21:11:40 +00:00
parent eb6d31eb13
commit 086d753a29
2 changed files with 11 additions and 8 deletions

View File

@@ -583,6 +583,7 @@ int CChannelList::show()
{ {
printf("[neutrino channellist] start direct recording...\n"); printf("[neutrino channellist] start direct recording...\n");
CRecordManager::getInstance()->Record(chanlist[selected]->channel_id); CRecordManager::getInstance()->Record(chanlist[selected]->channel_id);
paint();
loop=false; loop=false;
} }
@@ -1770,22 +1771,24 @@ struct button_label SChannelListButtons[NUM_LIST_BUTTONS] =
{ NEUTRINO_ICON_BUTTON_RECORD_INACTIVE_16, NONEXISTANT_LOCALE} { NEUTRINO_ICON_BUTTON_RECORD_INACTIVE_16, NONEXISTANT_LOCALE}
}; };
void CChannelList::paintButtonBar(bool do_rec, bool is_current) void CChannelList::paintButtonBar(bool is_current)
{ {
printf("[neutrino channellist] %s...%d\n", __FUNCTION__, __LINE__); printf("[neutrino channellist] %s...%d, liststart %d\n", __FUNCTION__, __LINE__, selected);
//default color buttons //manage now/next button
if (displayNext) if (displayNext)
SChannelListButtons[1].locale = LOCALE_INFOVIEWER_NOW; SChannelListButtons[1].locale = LOCALE_INFOVIEWER_NOW;
else else
SChannelListButtons[1].locale = LOCALE_INFOVIEWER_NEXT; SChannelListButtons[1].locale = LOCALE_INFOVIEWER_NEXT;
//manage record button //manage record button
bool do_record = CRecordManager::getInstance()->RecordingStatus(getActiveChannel_ChannelID());
if (g_settings.recording_type != RECORDING_OFF && !displayNext){ if (g_settings.recording_type != RECORDING_OFF && !displayNext){
if (is_current && !do_rec){ if (is_current && !do_record){
SChannelListButtons[3].locale = LOCALE_MAINMENU_RECORDING; SChannelListButtons[3].locale = LOCALE_MAINMENU_RECORDING;
SChannelListButtons[3].button = NEUTRINO_ICON_BUTTON_RECORD_ACTIVE_16; SChannelListButtons[3].button = NEUTRINO_ICON_BUTTON_RECORD_ACTIVE_16;
}else if (do_rec){ }else if (do_record){
SChannelListButtons[3].locale = LOCALE_MAINMENU_RECORDING_STOP; SChannelListButtons[3].locale = LOCALE_MAINMENU_RECORDING_STOP;
SChannelListButtons[3].button = NEUTRINO_ICON_BUTTON_STOP_16; SChannelListButtons[3].button = NEUTRINO_ICON_BUTTON_STOP_16;
}else{ }else{
@@ -1870,7 +1873,7 @@ void CChannelList::paintItem(int pos)
frameBuffer->paintIcon(NEUTRINO_ICON_REC, r_icon_x - r_icon_w, ypos, fheight);//ypos + (fheight - 16)/2); frameBuffer->paintIcon(NEUTRINO_ICON_REC, r_icon_x - r_icon_w, ypos, fheight);//ypos + (fheight - 16)/2);
//paint buttons //paint buttons
paintButtonBar(do_rec, iscurrent); paintButtonBar(iscurrent);
int icon_space = r_icon_w+s_icon_w; int icon_space = r_icon_w+s_icon_w;

View File

@@ -88,7 +88,7 @@ private:
void paintItem(int pos); void paintItem(int pos);
void paint(); void paint();
void paintHead(); void paintHead();
void paintButtonBar(bool do_rec, bool is_current); void paintButtonBar(bool is_current);
void hide(); void hide();
void showChannelLogo(); void showChannelLogo();