Seite 1 von 1
[Patch] Mo. bis Fr. vorauswählen bei Wochentagstimern
Verfasst: Mittwoch 30. Mai 2012, 22:42
von GetAway
Timerlist: automatic set mo.-fr. when selected weekdays. Ported from Neutrino-HD.
auto_set_mo_to_fri_when_selected_weekdays_timerlist.diff
Re: Commit-Wünsche für das CVS II
Verfasst: Mittwoch 6. Juni 2012, 09:07
von Mourice
Hi,
getestet --> geht schon ganz gut.
Nur beim Aufrufen der Timerliste --> Neuer Timer ist ja standardmässig "einmalig" aktiv.
Da sind dann schon die Wochentage "markiert".
Schaltet man einmal durch sind dann auch bei "einmalig" wieder die Wochentage deaktiviert.
MfG
Edit:
vielleicht besser weglassen ...
.
.
.
@@ -1049,8 +1055,8 @@ int CTimerList::newTimer()
CIntInput timerSettings_repeatCount(LOCALE_TIMERLIST_REPEATCOUNT, (long&)timerNew.repeatCount,3, LOCALE_TIMERLIST_REPEATCOUNT_HELP1, LOCALE_TIMERLIST_REPEATCOUNT_HELP2);
CMenuForwarder *m5 = new CMenuForwarder(LOCALE_TIMERLIST_REPEATCOUNT, false,timerSettings_repeatCount.getValue() , &timerSettings_repeatCount);
- CTimerListRepeatNotifier notifier((int *)&timerNew.eventRepeat,m4,m5);
- strcpy(m_weekdaysStr,"-------");
+ CTimerListRepeatNotifier notifier((int *)&timerNew.eventRepeat, m4, m5, m_weekdaysStr);
+ strcpy(m_weekdaysStr,"XXXXX--");
CMenuOptionChooser* m3 = new CMenuOptionChooser(LOCALE_TIMERLIST_REPEAT, (int *)&timerNew.eventRepeat, TIMERLIST_REPEAT_OPTIONS, TIMERLIST_REPEAT_OPTION_COUNT, true, ¬ifier);
Re: Commit-Wünsche für das CVS II
Verfasst: Mittwoch 6. Juni 2012, 12:37
von GetAway
@Mourice
Danke fürs Testen. Ich hatte nur mit einem bereits angelegten Timer geprüft.
Der Bug müsste dann auch in Neutrino-HD gefixt werden.
Patch aktualisiert:
auto_set_mo_to_fri_when_selected_weekdays_timerlist.diff
Re: Commit-Wünsche für das CVS II
Verfasst: Mittwoch 6. Juni 2012, 13:04
von Mourice
Hi,
jetzt haste eine Zeile zuviel wegoptimiert ...
strcpy(m_weekdaysStr,"-------"); muss schon bleiben
der Patch müsste so aussehen ...
Code: Alles auswählen
.
.
.
@@ -975,7 +981,7 @@ int CTimerList::modifyTimer()
CMenuForwarder *m5 = new CMenuForwarder(LOCALE_TIMERLIST_REPEATCOUNT, timer->eventRepeat != (int)CTimerd::TIMERREPEAT_ONCE ,timerSettings_repeatCount.getValue() , &timerSettings_repeatCount);
- CTimerListRepeatNotifier notifier((int *)&timer->eventRepeat,m4,m5);
+ CTimerListRepeatNotifier notifier((int *)&timer->eventRepeat, m4, m5, m_weekdaysStr);
CMenuOptionChooser* m3 = new CMenuOptionChooser(LOCALE_TIMERLIST_REPEAT, (int *)&timer->eventRepeat, TIMERLIST_REPEAT_OPTIONS, TIMERLIST_REPEAT_OPTION_COUNT, true, ¬ifier);
CRecDirChooser recDirs(LOCALE_TIMERLIST_RECORDING_DIR,NEUTRINO_ICON_SETTINGS,NULL,timer->recordingDir);
@@ -1049,8 +1055,8 @@ int CTimerList::newTimer()
CIntInput timerSettings_repeatCount(LOCALE_TIMERLIST_REPEATCOUNT, (long&)timerNew.repeatCount,3, LOCALE_TIMERLIST_REPEATCOUNT_HELP1, LOCALE_TIMERLIST_REPEATCOUNT_HELP2);
CMenuForwarder *m5 = new CMenuForwarder(LOCALE_TIMERLIST_REPEATCOUNT, false,timerSettings_repeatCount.getValue() , &timerSettings_repeatCount);
- CTimerListRepeatNotifier notifier((int *)&timerNew.eventRepeat,m4,m5);
+ CTimerListRepeatNotifier notifier((int *)&timerNew.eventRepeat, m4, m5, m_weekdaysStr);
CMenuOptionChooser* m3 = new CMenuOptionChooser(LOCALE_TIMERLIST_REPEAT, (int *)&timerNew.eventRepeat, TIMERLIST_REPEAT_OPTIONS, TIMERLIST_REPEAT_OPTION_COUNT, true, ¬ifier);
//bouquets
Re: Commit-Wünsche für das CVS II
Verfasst: Mittwoch 6. Juni 2012, 13:14
von GetAway
Was geht denn nicht?
Re: Commit-Wünsche für das CVS II
Verfasst: Mittwoch 6. Juni 2012, 14:09
von Mourice
GetAway hat geschrieben:Was geht denn nicht?
Hi,
wenn Du diese Zeile weglässt, fehlen auch die "-----" bei Wochentag beim ersten anstarten.
MfG
Edit:
Index: apps/tuxbox/neutrino/src/gui/timerlist.cpp
===================================================================
RCS file: /cvs/tuxbox/apps/tuxbox/neutrino/src/gui/timerlist.cpp,v
retrieving revision 1.115
diff -u -p -r1.115 timerlist.cpp
--- a/apps/tuxbox/neutrino/src/gui/timerlist.cpp 10 Apr 2012 13:03:49 -0000 1.115
+++ b/apps/tuxbox/neutrino/src/gui/timerlist.cpp 6 Jun 2012 10:21:11 -0000
@@ -158,20 +158,26 @@ private:
CMenuForwarder* m2;
int* iRepeat;
+ char * weekdays;
public:
- CTimerListRepeatNotifier( int* repeat, CMenuForwarder* a1, CMenuForwarder *a2)
+ CTimerListRepeatNotifier( int* repeat, CMenuForwarder* a1, CMenuForwarder *a2, char * wstr)
{
m1 = a1;
m2 = a2;
iRepeat=repeat;
+ weekdays = wstr;
}
bool changeNotify(const neutrino_locale_t, void *)
{
- if(*iRepeat >= (int)CTimerd::TIMERREPEAT_WEEKDAYS)
+ if(*iRepeat >= (int)CTimerd::TIMERREPEAT_WEEKDAYS) {
m1->setActive (true);
- else
+ strcpy(weekdays, "XXXXX--");
+ }
+ else {
m1->setActive (false);
+ strcpy(weekdays, "-------");
+ }
if (*iRepeat != (int)CTimerd::TIMERREPEAT_ONCE)
m2->setActive(true);
else
@@ -975,7 +981,7 @@ int CTimerList::modifyTimer()
CMenuForwarder *m5 = new CMenuForwarder(LOCALE_TIMERLIST_REPEATCOUNT, timer->eventRepeat != (int)CTimerd::TIMERREPEAT_ONCE ,timerSettings_repeatCount.getValue() , &timerSettings_repeatCount);
- CTimerListRepeatNotifier notifier((int *)&timer->eventRepeat,m4,m5);
+ CTimerListRepeatNotifier notifier((int *)&timer->eventRepeat, m4, m5, m_weekdaysStr);
CMenuOptionChooser* m3 = new CMenuOptionChooser(LOCALE_TIMERLIST_REPEAT, (int *)&timer->eventRepeat, TIMERLIST_REPEAT_OPTIONS, TIMERLIST_REPEAT_OPTION_COUNT, true, ¬ifier);
CRecDirChooser recDirs(LOCALE_TIMERLIST_RECORDING_DIR,NEUTRINO_ICON_SETTINGS,NULL,timer->recordingDir);
@@ -1049,8 +1055,7 @@ int CTimerList::newTimer()
CIntInput timerSettings_repeatCount(LOCALE_TIMERLIST_REPEATCOUNT, (long&)timerNew.repeatCount,3, LOCALE_TIMERLIST_REPEATCOUNT_HELP1, LOCALE_TIMERLIST_REPEATCOUNT_HELP2);
CMenuForwarder *m5 = new CMenuForwarder(LOCALE_TIMERLIST_REPEATCOUNT, false,timerSettings_repeatCount.getValue() , &timerSettings_repeatCount);
- CTimerListRepeatNotifier notifier((int *)&timerNew.eventRepeat,m4,m5);
- strcpy(m_weekdaysStr,"-------");
+ CTimerListRepeatNotifier notifier((int *)&timerNew.eventRepeat, m4, m5, m_weekdaysStr);
CMenuOptionChooser* m3 = new CMenuOptionChooser(LOCALE_TIMERLIST_REPEAT, (int *)&timerNew.eventRepeat, TIMERLIST_REPEAT_OPTIONS, TIMERLIST_REPEAT_OPTION_COUNT, true, ¬ifier);
//bouquets
Die rot markierte Zeile muss aus dem Diff raus, da diese Zeile in der Quelle drin bleiben muss.
Re: Commit-Wünsche für das CVS II
Verfasst: Mittwoch 6. Juni 2012, 16:39
von GetAway
Stimmt. Bitte beim einchecken dran denken .
Re: [Patch] Mo. bis Fr. vorauswählen bei Wochentagstimern
Verfasst: Samstag 9. Juni 2012, 20:28
von rhabarber1848
Steht die strcpy-Zeile vor oder nach der CTimerListRepeatNotifier-Zeile?
Re: [Patch] Mo. bis Fr. vorauswählen bei Wochentagstimern
Verfasst: Samstag 9. Juni 2012, 20:38
von GetAway
Danach:
Code: Alles auswählen
CTimerListRepeatNotifier notifier((int *)&timerNew.eventRepeat, m4, m5, m_weekdaysStr);
strcpy(m_weekdaysStr,"-------");
CMenuOptionChooser* m3 = new CMenuOptionChooser(LOCALE_TIMERLIST_REPEAT, (int *)&timerNew.eventRepeat, TIMERLIST_REPEAT_OPTIONS, TIMERLIST_REPEAT_OPTION_COUNT, true, ¬ifier);
Re: [Patch] Mo. bis Fr. vorauswählen bei Wochentagstimern
Verfasst: Sonntag 24. Juni 2012, 08:44
von GetAway
Re: [Patch] Mo. bis Fr. vorauswählen bei Wochentagstimern
Verfasst: Montag 25. Juni 2012, 19:46
von Gaucho316
Ich habe eine Bitte. Es wäre schön, wenn der Patch mit einer kleineren Änderung der Reihenfolge eingecheckt werden würde. Die Zeilen
und
sind vertauscht. Funktionstechnisch ändert sich dabei nichts. Es ist aber Voraussetzung für einen zweiten Patch, der das unnötige Neuzeichnen des gesamten Menuwidgets verhindert.
Timerlist: auto set Mon to Fri when selected weekdays
Link entfernt, da Patch im CVS
Timerlist: remove unnecessary repaint calls in notifiers
Link entfernt, da Patch im CVS
Re: [Patch] Mo. bis Fr. vorauswählen bei Wochentagstimern
Verfasst: Samstag 30. Juni 2012, 13:24
von rhabarber1848
committed:
Gaucho316 hat geschrieben:timerlist_auto-set-mo-to-fri-when-selected-weekdays_2012-06-25_1813.diff
http://article.gmane.org/gmane.comp.vid ... x.scm/3515
Gaucho316 hat geschrieben:timerlist_remove-unnecessary-repaint-calls-in-notifiers_2012-06-25_1816.diff
http://article.gmane.org/gmane.comp.vid ... x.scm/3516