Verfasst am: Mo Jun 14, 2010 6:55 pmTitel: FClock (Vollbild Wecker)
FClock ist ein simples Programm, dass als Vollbild Wecker unter Haiku fungiert.
Gerade für Netbooks ein interessantes Programm, dass z.B. das mitnehmen eines zusätzlichen Weckers in den Urlaub überflüssig macht. Lasst euch einfach mit eurer Lieblingsmusikdatei sanft wecken.
Oder spielt sogar eine Videosequenz ab.
FClock benutzt zum Abspielen den Haiku Media Player.
Version 1.0 basiert auf YAB 1.5 und setzt dieses installiert auch auf Festplatte voraus. Außerdem wird Haiku ab Revision 37035 mit mktemp benötigt.
(möglicherweise auch auf alpha 2 startbar, wenn mktemp vorhanden)
Da das Programm komplett in YAB geschrieben wurde hat sie momentan noch einige Nachteile, die bei meinem alten eeePC 701 deutlich werden.
Für die Darstellung der Zeichen wird der Draw Text befehl benutzt, der fürs hochsetzten der Uhrzeit bzw. das Blinken des "Sekunden Trenners" ( : ) jede 2 Sekunden geflushed wird.
Mir ist bei längerem Betrieb jedoch aufgefallen, dass auf einmal alles schwarz wird und nur noch das Weckersymbol angezeigt wird. (neben teils starkem Flackern der Schrift)
Meine Idee den 2 Sekunden flush auf ein eigenes View rein für den "Sekunden Trenner" zu verwenden und den MainWindow View jedesmal zu flushen nachdem die Sekunde 58 bzw. 59 abgelaufen ist, klappt nicht.
Das heißt manchmal flusht er nicht oder nicht richtig und ich habe 2 Zahlen im Minuten Anzeiger die sich überschreiben und so nicht mehr richtig lesbar sind.
Ich vermute mal sehr stark, dass Draw Text hier das falsche widget ist für solche dynamischen Texte. Nur konnte ich nichts besseres bisher finden.
Canvas benötigt zwar kein Flush, hat aber nur einen fest eingestellten nicht änderbaren weißen Hintergrund.
Momentan habe ich als letzten Versuch noch die Idee Textcontrols zu benutzen und diese für die Anzeige der Minute zu benutzen und jede Minute dann zu löschen und mit der aktuellen Minute zu überschreiben.
Ich denke das würde wunderbar klappen, aber Textcontrols sehen natürlich komplett anders aus und lassen sich auch nicht "designen".
Ich bin mit meinem Latein am Ende.
Vielleicht hab ich aber auch nur Murks gecoded oder aber in YAB lässt sich keine interaktive Uhr erstellen.
Ok danke nochmal an jan_64 (und der Hilfe im IRC).
Für die die es interessiert :
Problem: (ist wohl)
Flushs auf Views scheinen in ein Array geschrieben zu werden und dann läuft dieses Array wohl voll.
Lösung in kurzen Worten:
Canvas benutzen mit Draw Rect ein Hintergrund zeichnen und das auf ein Bitmap legen und dieses Bitmap anschließend mit Draw Bitmap auf das Canvas zeichnen. Dann verschwindet auch das blinken (außer die bereiche die gewollt blinken sollen) _________________ Leszek Lesner Webmaster von LLelectronics.de.vu
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.