check for active downloads before shutting down; indicate dl on vfd

Conflicts:
	data/locale/deutsch.locale
	data/locale/english.locale
	src/driver/lcdd.h
	src/driver/simple_display.cpp
	src/neutrino.cpp
	src/system/locals.h
	src/system/locals_intern.h
This commit is contained in:
martii
2013-12-15 11:29:12 +01:00
committed by [CST] Focus
parent fd1ba8df97
commit a3adf2798a
8 changed files with 17 additions and 8 deletions

View File

@@ -2051,7 +2051,7 @@ settings.pos_top_left oben links
settings.pos_top_right oben rechts settings.pos_top_right oben rechts
settings.restore Image-Einstellungen: Wiederherstellen settings.restore Image-Einstellungen: Wiederherstellen
settings.restore_warn Alle Settings werden ersetzt.\nDie Box wird neu gestartet.\nWeiter? settings.restore_warn Alle Settings werden ersetzt.\nDie Box wird neu gestartet.\nWeiter?
shutdown.recoding_query Aufnahme läuft. Trotzdem beenden? shutdown.recording_query Aufnahme läuft. Trotzdem beenden?
shutdowntimer.announce Die Box wird in 1 Min. heruntergefahren.\nShutdown abbrechen? shutdowntimer.announce Die Box wird in 1 Min. heruntergefahren.\nShutdown abbrechen?
sleeptimerbox.announce Die Box wird in 1 Min. in Standby-Betrieb gehen.\nStandby-Betrieb abbrechen? sleeptimerbox.announce Die Box wird in 1 Min. in Standby-Betrieb gehen.\nStandby-Betrieb abbrechen?
sleeptimerbox.hint1 Ausschaltzeit in Minuten (000 = aus) sleeptimerbox.hint1 Ausschaltzeit in Minuten (000 = aus)

View File

@@ -2047,7 +2047,7 @@ settings.pos_top_left top left
settings.pos_top_right top right settings.pos_top_right top right
settings.restore Image-Settings: Restore settings.restore Image-Settings: Restore
settings.restore_warn This will replace all settings and reboot\nContinue ? settings.restore_warn This will replace all settings and reboot\nContinue ?
shutdown.recoding_query You really want to to stop record ? shutdown.recording_query You really want to to stop record ?
shutdowntimer.announce Box will shutdown in 1 min.\nCancel Shutdown ? shutdowntimer.announce Box will shutdown in 1 min.\nCancel Shutdown ?
sleeptimerbox.announce Box will standby in 1 min.\nCancel Standby ? sleeptimerbox.announce Box will standby in 1 min.\nCancel Standby ?
sleeptimerbox.hint1 Shutdown time in minutes (000 = off) sleeptimerbox.hint1 Shutdown time in minutes (000 = off)

View File

@@ -1298,7 +1298,7 @@ int CRecordManager::exec(CMenuTarget* parent, const std::string & actionKey )
snprintf(rec_msg1, sizeof(rec_msg1)-1, "%s", g_Locale->getText(LOCALE_RECORDINGMENU_MULTIMENU_ASK_STOP_ALL)); snprintf(rec_msg1, sizeof(rec_msg1)-1, "%s", g_Locale->getText(LOCALE_RECORDINGMENU_MULTIMENU_ASK_STOP_ALL));
snprintf(rec_msg, sizeof(rec_msg)-1, rec_msg1, records); snprintf(rec_msg, sizeof(rec_msg)-1, rec_msg1, records);
if(ShowMsg(LOCALE_SHUTDOWN_RECODING_QUERY, rec_msg, if(ShowMsg(LOCALE_SHUTDOWN_RECORDING_QUERY, rec_msg,
CMessageBox::mbrYes, CMessageBox::mbYes | CMessageBox::mbNo, NULL, 450, 30, false) == CMessageBox::mbrYes) CMessageBox::mbrYes, CMessageBox::mbYes | CMessageBox::mbNo, NULL, 450, 30, false) == CMessageBox::mbrYes)
{ {
snprintf(rec_msg1, sizeof(rec_msg1)-1, "%s", g_Locale->getText(LOCALE_RECORDINGMENU_MULTIMENU_INFO_STOP_ALL)); snprintf(rec_msg1, sizeof(rec_msg1)-1, "%s", g_Locale->getText(LOCALE_RECORDINGMENU_MULTIMENU_INFO_STOP_ALL));
@@ -1478,7 +1478,7 @@ bool CRecordManager::AskToStop(const t_channel_id channel_id, const int recid)
if(inst == NULL) if(inst == NULL)
return false; return false;
if(ShowMsg(LOCALE_SHUTDOWN_RECODING_QUERY, title.c_str(), if(ShowMsg(LOCALE_SHUTDOWN_RECORDING_QUERY, title.c_str(),
CMessageBox::mbrYes, CMessageBox::mbYes | CMessageBox::mbNo, NULL, 450, 30, false) == CMessageBox::mbrYes) { CMessageBox::mbrYes, CMessageBox::mbYes | CMessageBox::mbNo, NULL, 450, 30, false) == CMessageBox::mbrYes) {
mutex.lock(); mutex.lock();
if (recid) if (recid)

View File

@@ -99,6 +99,8 @@
#endif #endif
#include "gui/themes.h" #include "gui/themes.h"
#include <system/ytcache.h>
#include <audio.h> #include <audio.h>
#include <ca_cs.h> #include <ca_cs.h>
#include <cs_api.h> #include <cs_api.h>
@@ -3146,9 +3148,9 @@ void CNeutrinoApp::ExitRun(const bool /*write_si*/, int retcode)
bool do_shutdown = true; bool do_shutdown = true;
CRecordManager::getInstance()->StopAutoRecord(); CRecordManager::getInstance()->StopAutoRecord();
if(CRecordManager::getInstance()->RecordingStatus()) { if(CRecordManager::getInstance()->RecordingStatus() || cYTCache::getInstance()->isActive()) {
do_shutdown = do_shutdown =
(ShowMsg(LOCALE_MESSAGEBOX_INFO, LOCALE_SHUTDOWN_RECODING_QUERY, CMessageBox::mbrNo, (ShowMsg(LOCALE_MESSAGEBOX_INFO, LOCALE_SHUTDOWN_RECORDING_QUERY, CMessageBox::mbrNo,
CMessageBox::mbYes | CMessageBox::mbNo, NULL, 450, 30, true) == CMessageBox::mbrYes); CMessageBox::mbYes | CMessageBox::mbNo, NULL, 450, 30, true) == CMessageBox::mbrYes);
} }

View File

@@ -2074,7 +2074,7 @@ typedef enum
LOCALE_SETTINGS_POS_TOP_RIGHT, LOCALE_SETTINGS_POS_TOP_RIGHT,
LOCALE_SETTINGS_RESTORE, LOCALE_SETTINGS_RESTORE,
LOCALE_SETTINGS_RESTORE_WARN, LOCALE_SETTINGS_RESTORE_WARN,
LOCALE_SHUTDOWN_RECODING_QUERY, LOCALE_SHUTDOWN_RECORDING_QUERY,
LOCALE_SHUTDOWNTIMER_ANNOUNCE, LOCALE_SHUTDOWNTIMER_ANNOUNCE,
LOCALE_SLEEPTIMERBOX_ANNOUNCE, LOCALE_SLEEPTIMERBOX_ANNOUNCE,
LOCALE_SLEEPTIMERBOX_HINT1, LOCALE_SLEEPTIMERBOX_HINT1,

View File

@@ -2074,7 +2074,7 @@ const char * locale_real_names[] =
"settings.pos_top_right", "settings.pos_top_right",
"settings.restore", "settings.restore",
"settings.restore_warn", "settings.restore_warn",
"shutdown.recoding_query", "shutdown.recording_query",
"shutdowntimer.announce", "shutdowntimer.announce",
"sleeptimerbox.announce", "sleeptimerbox.announce",
"sleeptimerbox.hint1", "sleeptimerbox.hint1",

View File

@@ -36,6 +36,7 @@
#include "settings.h" #include "settings.h"
#include "set_threadname.h" #include "set_threadname.h"
#include <global.h> #include <global.h>
#include <driver/display.h>
static cYTCache *instance = NULL; static cYTCache *instance = NULL;
@@ -178,6 +179,8 @@ void *cYTCache::downloadThread(void *arg) {
set_threadname("ytdownload"); set_threadname("ytdownload");
cYTCache *caller = (cYTCache *)arg; cYTCache *caller = (cYTCache *)arg;
//CVFD::getInstance()->ShowIcon(FP_ICON_DOWNLOAD, true);
while (caller->thread) { while (caller->thread) {
MI_MOVIE_INFO mi; MI_MOVIE_INFO mi;
{ {
@@ -207,6 +210,9 @@ void *cYTCache::downloadThread(void *arg) {
caller->pending.erase(caller->pending.begin()); caller->pending.erase(caller->pending.begin());
} }
} }
//CVFD::getInstance()->ShowIcon(FP_ICON_DOWNLOAD, false);
fprintf(stderr, "%s exiting\n", __func__); fprintf(stderr, "%s exiting\n", __func__);
pthread_exit(NULL); pthread_exit(NULL);
} }

View File

@@ -63,5 +63,6 @@ class cYTCache
void clearCompleted(MI_MOVIE_INFO::miSource source = MI_MOVIE_INFO::YT); void clearCompleted(MI_MOVIE_INFO::miSource source = MI_MOVIE_INFO::YT);
void clearFailed(MI_MOVIE_INFO::miSource source = MI_MOVIE_INFO::YT); void clearFailed(MI_MOVIE_INFO::miSource source = MI_MOVIE_INFO::YT);
bool getNameIfExists(std::string &fname, const std::string &id, int itag, std::string ext = ".jpg"); bool getNameIfExists(std::string &fname, const std::string &id, int itag, std::string ext = ".jpg");
bool isActive(void) { return (bool) thread; }
}; };
#endif #endif