Aufnahmeeinstellungen während einer laufenden Aufnahme
-
- Contributor
- Beiträge: 1688
- Registriert: Donnerstag 17. Februar 2005, 20:24
Aufnahmeeinstellungen während einer laufenden Aufnahme
Während eine Aufnahme lief, bin ich gestern zufällig in die Aufnahmeeinstellungen gegangen. Nach Verlassen des Menüs hat Neutrino vergessen, dass es eigentlich etwas aufnimmt. Ich habe mir deswegen eben mal record_setup.cpp angesehen und festgestellt, dass in Zeile 336 CNeutrinoApp::getInstance()->recordingstatus = 0; ausgeführt wird. Ist das Absicht? Wenn ja, wäre es nicht besser den Menüpunkt einfach zu sperren?
-
- Contributor
- Beiträge: 1688
- Registriert: Donnerstag 17. Februar 2005, 20:24
Re: Aufnahmeeinstellungen während einer laufenden Aufnahme
Ich habe die Historie des "record_setup" jetzt mal etwas verfolgt. Der Eintrag ist schon lange überflüssig und kann weg. Früher wurde an dieser Stelle wohl mal "recordingstatus" initialisiert. Inzwischen geschieht das aber beim Erzeugen von Neutrino. Das Fehlverhalten kam übrigens erst durch die Auslagerung der Aufnahmeeinstellungen in eine eigene Klasse zustande. Zuvor wurde das Aufnahmeeinstellungen-Menü ja nur einmal zusammengebaut und blieb im Speicher. Somit wurde die Initialisierung von "recordingstatus" auch nur einmal gemacht und nicht wie jetzt bei jedem Aufruf des Menüs.
Link entfernt
Link entfernt
Zuletzt geändert von Gaucho316 am Freitag 7. Mai 2010, 20:16, insgesamt 1-mal geändert.
-
- Administrator
- Beiträge: 2675
- Registriert: Donnerstag 28. September 2006, 19:18
Re: Aufnahmeeinstellungen während einer laufenden Aufnahme
Thx, evtl. sollte man sogar generell verhindern, dass die Aufnahmeeinstellungen überhaupt geöffnet werden können, während eine Aufnahme läuft. Man wechselt ja auch nicht während der Fahrt am Auto die Räder.
-
- Developer
- Beiträge: 4189
- Registriert: Sonntag 2. November 2003, 12:36
Re: Aufnahmeeinstellungen während einer laufenden Aufnahme
Das wäre jedenfalls sicherer
-
- Administrator
- Beiträge: 2675
- Registriert: Donnerstag 28. September 2006, 19:18
Re: Aufnahmeeinstellungen während einer laufenden Aufnahme
vlt. so:
Code: Alles auswählen
diff --git a/tuxbox/neutrino/data/locale/deutsch.locale b/tuxbox/neutrino/data/locale/deutsch.locale
index f515f4e..569fa71 100644
--- a/tuxbox/neutrino/data/locale/deutsch.locale
+++ b/tuxbox/neutrino/data/locale/deutsch.locale
@@ -1161,6 +1161,7 @@ recordingmenu.help Aufnahmegeräte:\n-----------------------\nServer:\nauf PC mi
recordingmenu.no_scart Unterdrücke Scart-Umschaltung
recordingmenu.off aus
recordingmenu.record_in_spts_mode in SPTS-Modus aufnehmen
+recordingmenu.record_is_running Aufnahme läuft gerade!
recordingmenu.recording_type Aufnahme Gerät
recordingmenu.ringbuffers Grösse Ringpuffer
recordingmenu.ringbuffers_05M 512 KB
diff --git a/tuxbox/neutrino/data/locale/english.locale b/tuxbox/neutrino/data/locale/english.locale
index 2d58243..a6e3f3d 100644
--- a/tuxbox/neutrino/data/locale/english.locale
+++ b/tuxbox/neutrino/data/locale/english.locale
@@ -1161,6 +1161,7 @@ recordingmenu.help Recording devices:\n--------------------------\nserver:\nusin
recordingmenu.no_scart Switch to SCART
recordingmenu.off off
recordingmenu.record_in_spts_mode Use spts mode
+recordingmenu.record_is_running Recording is in progress!
recordingmenu.recording_type Recording Device
recordingmenu.ringbuffers Ringbuffer Size
recordingmenu.ringbuffers_05M 512 KB
diff --git a/tuxbox/neutrino/src/gui/record_setup.cpp b/tuxbox/neutrino/src/gui/record_setup.cpp
index bfff2cc..8082a98 100644
--- a/tuxbox/neutrino/src/gui/record_setup.cpp
+++ b/tuxbox/neutrino/src/gui/record_setup.cpp
@@ -92,8 +92,10 @@ int CRecordSetup::exec(CMenuTarget* parent, const std::string &actionKey)
return res;
}
-
- showRecordSetup();
+ if (!CNeutrinoApp::getInstance()->recordingstatus)
+ showRecordSetup();
+ else
+ DisplayInfoMessage(g_Locale->getText(LOCALE_RECORDINGMENU_RECORD_IS_RUNNING));
return res;
}
@@ -333,7 +335,6 @@ void CRecordSetup::showRecordSetup()
recordingSettings->hide();
delete recordingSettings;
- CNeutrinoApp::getInstance()->recordingstatus = 0;
}
diff --git a/tuxbox/neutrino/src/system/locals_intern.h b/tuxbox/neutrino/src/system/locals_intern.h
index 16e75aa..ea91d11 100644
--- a/tuxbox/neutrino/src/system/locals_intern.h
+++ b/tuxbox/neutrino/src/system/locals_intern.h
@@ -1188,6 +1188,7 @@ const char * locale_real_names[] =
"recordingmenu.no_scart",
"recordingmenu.off",
"recordingmenu.record_in_spts_mode",
+ "recordingmenu.record_is_running",
"recordingmenu.recording_type",
"recordingmenu.ringbuffers",
"recordingmenu.ringbuffers_05M",
-
- Contributor
- Beiträge: 1688
- Registriert: Donnerstag 17. Februar 2005, 20:24
Re: Aufnahmeeinstellungen während einer laufenden Aufnahme
Könnte man nicht auch den Menüpunkt ausgrauen, solange eine Aufnahme läuft? Oder ist das nicht so einfach möglich?
-
- Contributor
- Beiträge: 1509
- Registriert: Donnerstag 27. Dezember 2007, 12:59
Re: Aufnahmeeinstellungen während einer laufenden Aufnahme
Ausgrauen klingt logisch, aber was, wenn du dich beim Start einer Aufnahme im Menü befindest?
-
- Administrator
- Beiträge: 2675
- Registriert: Donnerstag 28. September 2006, 19:18
Re: Aufnahmeeinstellungen während einer laufenden Aufnahme
Ich finde es eigentlich immer besser, wenn dem Benutzer angemessen mitgeteilt wird warum er dies und jenes nicht machen darf. Wenn man etwas nur ausgraut, weiß man zwar, dass die Option nicht möglich ist, aber nicht warum. Ausgrauen wäre zwar möglich aber so vom Aufwand her unverhältnismässig. Das dürfte erst einfacher werden, wenn wenn das Hauptmenü komplett aufgeräumt ist.
Ich vermute du meinst, wenn ein Timer startet, dann müsste man das vom Timer aus Regeln und den Benutzer freundlich darauf hinweisen, dass er jetzt nichts dort verloren hat. Dann müsste man das Menü auch unzugänglich machen können. Wie man sieht auch hier wieder der Effekt, je mehr die GUI mit dem Benutzer interagiert, um so aufwändiger wirds.
Edit: Erst mal schauen in wie weit das passieren kann, wäre ein ziemlicher Zufall
Edit: erledigtGetAway hat geschrieben:... aber was, wenn du dich beim Start einer Aufnahme im Menü befindest?
Ich vermute du meinst, wenn ein Timer startet, dann müsste man das vom Timer aus Regeln und den Benutzer freundlich darauf hinweisen, dass er jetzt nichts dort verloren hat. Dann müsste man das Menü auch unzugänglich machen können. Wie man sieht auch hier wieder der Effekt, je mehr die GUI mit dem Benutzer interagiert, um so aufwändiger wirds.
Edit: Erst mal schauen in wie weit das passieren kann, wäre ein ziemlicher Zufall