Absender: Timo Sandmann
Datum: Di, 21.03.2006 22:04:49
In-reply-to:
<BCF016D5ED5AC34FBB655D109519ABCF083DC8@xxxxxxxxxxxxxxxxxxxx>
Hi, hm, vielleicht ist es auch nicht gut erklärt. Mein Gedanke war nur, die "innere case Auswahl" jeweils in separate Funktionen zu legen. Ich denke es kommt auch stark darauf an, was man per FB für Kommandos geben möchte: Angenommen ich möchte z.B. auf Screen 3 eine Eingabe machen, wo ich per FB die zu fahrende Strecke eingeben kann, also ich drücke z.B. "3 + 2 + 0 + 0 + Bestätigung" auf diesem Screen und dann soll Bot 200mm in Richtung "3" fahren. Da fände ich es unschön, das Parsen der Eingabe, Updaten des Displays usw. alles in einem case-Block zu machen, also würde ich dafür dann sowieso eine extra Funktion aufrufen. Und diese "Struktur" könnte ich dann auch gleich für alle Kommandos / Screens verwenden. Wie gesagt, der Aufbau wäre umfangreicher, dafür fände ich das Ausfüllen der jeweiligen Screens mit Aktionen dann einfacher / übersichtlicher. (Un-)Übersichtlich ist letztlich aber wohl sowieso Geschmackssache ;) Warten wir doch einfach mal ein paar andere Meinungen zu dem Thema ab. Mit freundlichen Grüßen Timo Sandmann > -----Original Message----- > From: ct-bot-entwickler-bounces@xxxxxxxxxxxxxxxxx > [mailto:ct-bot-entwickler-bounces@xxxxxxxxxxxxxxxxx] On > Behalf Of Carsten Giesen > Sent: Tuesday, March 21, 2006 9:26 PM > To: Entwicklung rund um den c't-bot > Subject: AW: [ct-bot] Ziffern Tasten mehrfach nutzen > > Hi, > > Sorry, aber das finde ich nun unübersichtlich. > Und verstehen tue ich nur Bahnhof, oder leigt es daran ?!!? > > Cu > > Carsten > > -----Ursprüngliche Nachricht----- > Von: ct-bot-entwickler-bounces@xxxxxxxxxxxxxxxxx > [mailto:ct-bot-entwickler-bounces@xxxxxxxxxxxxxxxxx] Im > Auftrag von Timo Sandmann > Gesendet: Dienstag, 21. März 2006 21:22 > An: 'Entwicklung rund um den c't-bot' > Betreff: RE: [ct-bot] Ziffern Tasten mehrfach nutzen > > Hallo, > > > Ich habe einen Patch eingereicht, mit dem man die Zifferntasten > > mehrfach nutzen kann. > > > > Herr Benz bat nun darum das bevor er aufgenommen wird, > dieses hier zu > > diskutieren. > > > > Meine Idee, ist abhängig vom Screen den Tsten unterschiedliche > > Funktionen geben zu können. > > die Idee gefällt mir sehr gut, nur finde ich den Code mit den > verschachtelten switches etwas unübersichtlich. Was > vielleicht auch eine (IMHO übersichtlichere) Möglichkeit wäre: > > - Es gibt für jeden Screen eine Funktion void > actual_display_action(uint8 key), in der steht, was bei den > Tasten 0-9 zu tun ist. > - Es gibt einen Zeiger auf diesen Funktionstyp, der immer auf > die Funktion zeigt, "deren" Display gerade angezeigt wird. > - Es gibt eine weitere Konstante wie DISPLAY_SCREEN_TOGGLE, z.B. > DISPLAY_ACTION, die benutzt wird, um der Funktion > rc5_screen_set() mitzuteilen, dass eine Zifferntaste, die > displayspezifisch verwendet werden soll, gedrückt wurde. > - RC5_CODE_X wird jeweils rc5_screen_set, {DISPLAY_ACTION, X > } zugewiesen. > - Der zweite Parameter (bei rc5_screen_set() bisher > ungenutzt) ist die gedrückte Taste. > - In rc5_screen_set() setze ich im Fall von !DISPLAY_ACTION > den o.a. Zeiger auf die Funktion für's "neue" Display. > - Im Fall von DISPLAY_ACTION rufe ich > actual_display_action(par->value2) > auf. > > So das wäre mein erster Einfall dazu. Das ganze ist > vielleicht ein bisschen mehr Code, aber ich fände es > strukturierter / übersichtlicher. > > Mit freundlichen Grüßen > Timo Sandmann > > _______________________________________________ > ct-bot-entwickler Mailingliste > ct-bot-entwickler@xxxxxxxxxxxxxxxxx > http://www.heise.de/bin/newsletter/listinfo/ct-bot-entwickler > > >