Opened 11 years ago
Last modified 10 years ago
#45 accepted Aufgabe
PaperTape-VIewer 2013
Reported by: | sven | Owned by: | sven |
---|---|---|---|
Priority: | major | Milestone: | Next Generation-Entwicklungsprojekte |
Component: | Entwicklungsprojekt | Severity: | unbekannt |
Keywords: | Cc: |
Description (last modified by sven)
Dieses Ticket soll den Versuch beschreiben, die alte PaperTapeSuite zu einem gesunden Schluss zu bringen. Das heißt: Nach den vielen Codeumwälzungen, die vor fünf Jahren stattgefunden haben, sollen die 6000 Zeilen C++-Code, die entstanden sind, funktionsfähig gemacht werden. In Ticket #44 sind die SVN-Revisionen etwas untersucht worden. Die TODO.txt von September 2008 beschreibt, wo das ganze stehen geblieben ist. Dann gab es mal eine TODO.htm, die 2009 ein Jahr später beschrieb, dass das ganze in einer Sackgasse endete.
Neue Features
Nach Sichtung der Features wäre folgender Projektabschluss in mehr oder minder günstiger Zeit möglich:
- Features, die aufgegeben werden:
- Kein eingebauter Binäreditor mehr. Das ganze darf nur Read-Only funktionieren.
- Keine eingebaute Hardware-Interaktion (kein Stanzen/Lesen) mehr mit grafischer Benutzeroberfläche.
- Es fliegen raus: Drag & Drop, Copy & Paste
- Features, die repariert oder aufgegeben werden müssen:
- Zoom/Rotations-Wahnsinn
- Repainting klappt nicht richtig (Bei Fixing sollte Performance nicht an erster Stelle stehen)
- Was bleibt:
- Ein PaperTape-Viewer, der Dateien als Lochstreifen darstellen kann.
- Export von Lochstreifen als PNG oder SVG
- Zoom-Funktionen, frei einstellbare Farben, mehrere Fenster, Nullbytes
- Vielleicht, wenn leicht handlebar, Maushovering mit Darstellung (nicht Manipulation!) des aktuellen Bytes, ggf. Bits.
- Leichte Anpassbarkeit möglich für:
- um (extern generierte standalone-) Beschriftungen anzuzeigen
- als Visualisierung "gerade gestanzter Dateien" (à la cat datei | puncher | gtk-viewer --life)
- Intelligente Fensterpositionierung und -dimensionierung. Praxisnahere Voreinstellungen (bei Farben und Zoom)
- Möglichst 1:1-Darstellung eines Streifens auf Bildschirm zwecks Vergleich
Neue Libraries
Außerdem sollte der Code (mit hoffentlich wenig Anpassungen) auf Gtk3 portiert werden. Nativere Cairo-Benutzung und damit vielleicht ein Wegfallen einiger Repainting-Bugs könnten die Folge sein.
Neue Richtung
Das Programm geht damit mehr in Richtung Matlab oder gnuplot, wo eine enge Verzahnung mit dem Terminal stattfindet. Es wird stark entschlackt zugunsten eines kleinen Tools. Die Kommandozeilenverwendung sollte sich am cli-Programm orientieren.
Insgesamt ließe sich damit leicht der Weg ebnen für eine Kommandozeilen-Tool-Sammlung, die unter $HOME/bin installiert wird. Diese kann dann von einer guten Dokumentation begleitet werden.
Randbemerkung:
Dieses Ziel ist mit der Plattformunabhängigkeit/RS232 wenig vereinbar, ggf. kann man aber Perl auch unter Windows verpflichtend machen und es dann dort ähnlich verwenden. Alternative reader-Programme, die aus RS232 lesen statt vom Parallelport, passen sich dort in das Piping ein.
Change History (2)
comment:1 Changed 11 years ago by sven
- Description modified (diff)
comment:2 Changed 10 years ago by sven
- Description modified (diff)
- Owner set to sven
- Status changed from new to accepted
Die Entwicklung wurde jetzt wieder aufgenommen. Sie wird sehr langsam vonstatten gehen (ca 1h/Woche Entwicklungszeit).
Gtk3 erwähnt.