Hallo zusammen,
lasst mich etwas ausholen. Wie ich an anderer Stelle bereits beschrieben habe ist der Loksim (also sowohl Simulator als auch Editor) ein historisch gewachsenes Projekt und nutzt einige Technologien, die a) inzwischen veraltet und b) ekelhaft sind.
Eine davon ist MFC. Das benutzen wir unter Anderem für die Benutzeroberflächen, also (zum Glück nicht mehr) alle Dialoge, Fenster, Menüs. Wir wollen davon wegkommen und setzen dabei auf Qt. Das ist eine moderne C++-Bibliothek, mit der man betriebssystemunabhängige Benutzeroberflächen gestalten kann und noch vieles mehr. Alle Dialoge die wir in den letzten Jahren im Editor neu hinzugefügt haben verwenden das schon und wir wollen nach und nach auch den Rest umstellen.
Die Tatsache, dass ich für das SEP (mit dem man z.B. Fahrpulte ansteuern kann) einen neuen Einstellungsdialog im Simulator brauche hat mich gestern Abend dazu bewogen, für den Simulator ein paar Vorbereitungen zu treffen, um Benutzeroberflächen mit Qt bauen zu können und dabei habe ich gemerkt "hey, so viele Dialoge hat der Simulator ja eigentlich nicht". Ich denke dass es ein schaffbares Ziel ist, in vernünftiger Zeit die gesamte Benutzeroberfläche vom Simulator - und nur um den soll es hier zunächst gehen - auf Qt umzustellen.
Wenn wir die Benutzeroberfläche anfassen, dann wollen wir das aber gleich richtig machen, also bei der Gelegenheit die Benutzbarkeit verbessern und da denke ich ist es nicht so verkehrt die Nutzer, also euch, einzubeziehen. Dabei denke ich vor allem an Folgendes:
a) Ich möchte zur Diskussion stellen, ob die derzeitige Form mit dem schrittweisen Assistenten wirklich so gut ist oder wir es anders machen wollen. Ich kenne jetzt den Loksim aus Benutzersicht mein halbes Leben und ich habe mich dran gewöhnt, aber wirklich praktisch finde ich es nicht. Ich fänd es besser, wenn man nach dem Start ein Fenster sieht in dem man alles was die Fahrt selbst angeht (Fahrplan, Startpunkt, Uhrzeit, Fahrzeug, Wetter, ...?) im Blick hat. Der Assistent setzt momentan alles in Abhängigkeit zueinander, tatsächlich gibt es aber nach dem Funktionsprinzip vom Loksim nur die Abhängigkeit Fahrplan->Startpunkt->Uhrzeit. Ein einziges Fenster hätte den Vorteil, diese nicht existenten Abhängigkeiten auch in der Benutzerführung zu eliminieren. Wie seht ihr das? Wie würdet ihr euch das wünschen? Bitte beschränkt euch zunächst auf Vorschläge, die keine oder wenig konzeptionell neue Funktionalitäten im Simulator bräuchten.
b) Um Benutzeroberflächen mit/für Qt zu designen muss man nicht programmieren können. Mit dem Tool Qt Designer kann man sich die einfach zusammen klicken. Das Resultat ist dann eine Beschreibungsdatei mit der Endung .ui, mit denen wir dann weiter arbeiten können um tatsächlich die Dialoge zu erzeugen und das bestehende Programm damit zu verwursten. Gestern abend habe ich mal eben drei statische einfache Dialoge vom Simulator im Qt Designer nachgebaut, das geht wirklich flott von der Hand. Ich möchte euch aufrufen, davon Gebrauch zu machen und eure Idee insbesondere wenn sie voran schreitet und mit anderen Ideen kombiniert wird darin zu modellieren. Das ist einfacher als Objekte bauen Ich möchte die Sammlung der .ui-Dateien für den Loksim als open source auf Github packen. Ihr könntet dann ggfs. darauf auch Pull Requests machen (auf deutsch: "Schau mal, ich hab hier was gebaut, bitte übernehme das in deine Sammlung" - für Details verweise ich auf die Doku vom Versionsverwaltungssystem Git [1])
Viele Grüße
Martin