qrailway 0.9
|
Steuerungsfenster, um Zug zu kontrollieren. Mehr ...
#include <cFensterLokSteuerung.h>
Öffentliche Slots | |
void | SlotSetManuelleSteuerung (bool aktiviert) |
Wird aufgerufen, um die Buttons der Befehlsliste zu (de)aktivieren. | |
void | SlotNeueTrainAuswahl (int CBid) |
Wird aufgerufen, wenn ein anderer Zug in der Auswahlliste ausgewaehlt wird. Ruft AndererDatensatz auf. | |
void | SlotSollKmhAendern (void) |
Wird aufgerufen, wenn das Regler-Rad bewegt wurde. Ruft Intelligenz->manuelleSteuerung auf. | |
void | SlotEinstellungenAendern () |
Oeffnet das Einstellungsfenster. | |
void | SlotBefehlEditieren () |
Oeffnet das Fenster zum Befehl editieren. | |
void | SlotBefehlSchliessen (void) |
Wird aufgerufen, wenn das Befehl-Editieren-Fenster geschlossen wird. Setzt den Zeiger auf NULL. | |
void | SlotBefehlLadenSchliessen (void) |
Wird aufgerufen, wenn das Befehl-Laden-Fenster geschlossen wird. Setzt den Zeiger auf NULL. | |
void | SlotBefehlSpeichernSchliessen (void) |
Wird aufgerufen, wenn das Befehl-Speichern-Fenster geschlossen wird. Setzt den Zeiger auf NULL. | |
void | SlotEinstellungenSchliessen (void) |
Wird aufgerufen, wenn das Einstellungsfenster geschlossen wird. Setzt den Zeiger auf NULL. | |
void | SlotAutomatischeSteuerung (void) |
(de)aktiviert die automatische steuerung | |
void | SlotRangieren (void) |
(de)aktiviert den Rangiermodus | |
void | SlotZugOrt (int trainidtmp, int connid) |
Wird aufgerufen, wenn der Zug trainidtmp ueber den Konnektor connid faehrt. | |
void | SlotUpdate (int trainidtmp) |
Wird aufgerufne, wenn sich die Einstellungen fuer den aktuellen Zug geaendert haben. Die Daten werden sodann aus der Datenbank nachgeladen. Ist das Einstellungsfenster geoeffnet, so wird es auch aktualisiert. | |
void | SlotZugGeschwindigkeit (int trainidtmp, int geschwindigkeitkmhtmp, int richtungtmp) |
Wird aufgerufen, wenn der Zug trainidtmp seine Geschwindigkeit auf geschwindigkeittmp geaendert hat und jetzt in Richtung richtungtmp faehrt. | |
void | SlotSetSollKmh (int trainidtmp, int geschwindigkeitkmhtmp, int richtungtmp) |
Wird aufgerufen, wenn sich die Sollgeschwindigkeit eines Zuges aendert und aendert sodann die Geschwindigkeitsreglereinstellung. | |
void | SlotBefehlsListBoxAktualisieren () |
Aktualisiert die ListBox mit den Befehlen des Zugs. Dazu wird der aktuelle Befehlssatz der Lok ausgelesen und dargestellt. | |
void | SlotBefehlLaden () |
Laedt einen in der Datenbank abgelegten Befehlssatz. | |
void | SlotBefehlSpeichern () |
Speichert einen Befehlssatz in der Datenbank. | |
void | SlotBefehlHinzufuegen () |
Button Befehl hinzufuegen. | |
void | SlotBefehlLoeschen () |
Button Befehl loeschen. | |
void | SlotBefehlVeraendert (int altebefehlsnr, int neuebefehlsnr, QString befehl) |
Uebernimmt einen editierten Befehl. | |
void | SlotBefehlGewaehlt (int cmdnr) |
uebernimmt einen ausgewaehlten Befehlssatz zum Laden | |
void | SlotBefehlGewaehltSpeichern (int cmdnr) |
uebernimmt einen ausgewaehlten Befehlssatz zum Speichern | |
Signale | |
void | SignalUpdateLokSteuerung (int) |
Updatemeldung an cFensterLokSteuerung. | |
Öffentliche Methoden | |
cFensterLokSteuerung (QWidget *parent, cIntelligenz *Intelligenztmp, int trainid) | |
Initialisiert das Fenster und startet mit Zug trainid. Ist trainid=0, so wird der alphabetisch erste Zug verwendet. | |
~cFensterLokSteuerung () | |
Entfernt das Fenster. | |
void | AndererDatensatz (int trainidtmp) |
Wechselt Darstellung auf den Zug mit der Nummer trainid. | |
int | getTrainid (void) |
Liefert die aktuell behandelte Lok zurueck. | |
int | befuelleComboLok (int trainidtmp) |
Fuellt ComboLok auf und setzt Icons innerhalb von ComboLok. Liefert gueltige trainid zurueck (sofern moeglich) | |
Private Methoden | |
bool | unparseBefehle (void) |
Unparsed den Befehlssatz (entfernt alle geparsten Informationen), liefert TRUE zurueck, falls Aenderungen durchgefuehrt wurden, sonst FALSE. | |
void | cDebug (int prioritaet, const QString &meldung) |
Gibt die Meldung "meldung" in eine der Klasse zugeordnete Logdatei aus. Dabei werden Meldungen mit der Prioritaet prioritaet 0 auch auf dem Bildschirm als Warnung ausgegeben. Meldungen mit Prioritaet >=2 (bzw. >=1) werden in aller Regel nicht in die Log-Datei ausgegeben, lassen sich aber durch Modifikation der Funktion cDebug zur Ausgabe hinzufuegen. | |
Private Attribute | |
bool | ComboLokUpdate |
Ist TRUE, falls ComboLok neu aufgebaut werden muss. Noch nicht ganz ausgereift, vergleiche ###-Kommentar in AndererDatensatz. | |
cFensterLok * | Einstellungen |
Zeiger auf das Einstellungsfenster. | |
cFensterBefehl * | Befehl |
Zeiger auf das Befehlsfenster. | |
cFensterBefehlLaden * | Laden |
Zeiger auf das Fenster zum Laden eines Befehlssatzes. | |
cFensterBefehlSpeichern * | Speichern |
Zeiger auf das Fenster zum Speichern eines Befehlssatzes. | |
QPixmap * | PixmapLokbildklein |
Kleines Bild bei der Lokauswahl. | |
QString * | ArtNummer |
Artikelnummer. | |
int | trainid |
Aktuell dargestellter Zug. | |
cIntelligenz * | Intelligenz |
Pointer auf die Fahrsteuerungsroutinen-Klasse. |
Steuerungsfenster, um Zug zu kontrollieren.
Diese Klasse stellt das Fenster dar, in dem man einen Zug steuern und die zugehoerigen Statusmeldungen ueberwachen kann.
Tab Steuerung: Hier kann die Geschwindigkeit des Zugs bei manueller Fahrt geregelt werden, indem der obere Regler nach links (rueckwaerts) bzw. rechts (vorwaerts) geschoben wird. Der untere Regler gibt die Ist-Geschwindigkeit wieder. Die Checkbox "automatisch" gibt an, ob der Zug gerade automatisch gesteuert wird. Die Checkbox "Rangieren" erlaubt die manuelle Bewegung des Zugs ohne Belegung und Kontrolle der Reedkontakte (Achtung: Dies ist normalerweise nicht notwendig). Der angegebene Ort ist die aus der "connectors"-Tabelle abgelesene Bezeichnung des Reedkontakts, bei dem sich die Lok befindet.
Tab Befehle: Hier koennen die Befehle fuer die automatische Steuerung editiert werden. Ganz links befinden sich die Knoepfe zum Laden (cFensterBefehlLaden) und Speichern (cFensterBefehlSpeichern) eines Befehlssatzes. Daneben die Knoepfe zum Bearbeiten eines Befehls (cFensterBefehl, nach Auswahl in der darueber liegenden Liste), das Anlegen eines neuen Befehls (wird nach dem ausgewaehlten Befehl eingefuegt) und das Loeschen eines Befehls. In der Liste werden die Befehle des Befehlssatzes dargestellt. An oberster Stelle, unter der orderid
0, findet sich die Bezeichnug des Befehlssatzes. Ein "-" vor einer der folgenden orderid
's gibt an, dass der Befehl noch nicht geparsed worden ist, d.h. noch nicht - sofern erforderlich - in weitere Befehle uebersetzt wurde (vgl. FINDE). In Klammern wird die Listen-SubID angegeben. Dies ist fuer das Parsen von WEICHE oder FAHRE Befehlen notwendig, bei denen mehrere Weichen/Reedkontakte in einem Befehl genannt werden koennen, diese dann aber im Programm sequentiell abgearbeitet werden muessen. Im Anschluss wird der Befehl (ggf. nach Parsen) dargestellt.
Tab Einstellungen: Zeigt die Statusmeldungen des Zugs an und ermoeglicht den Aufruf der Einstellungen des Zugs, cFensterLok.
Definiert in Zeile 92 der Datei cFensterLokSteuerung.h.
cFensterLokSteuerung::cFensterLokSteuerung | ( | QWidget * | parent, |
cIntelligenz * | Intelligenztmp, | ||
int | trainid | ||
) |
Initialisiert das Fenster und startet mit Zug trainid. Ist trainid=0, so wird der alphabetisch erste Zug verwendet.
cFensterLokSteuerung::~cFensterLokSteuerung | ( | ) |
Entfernt das Fenster.
void cFensterLokSteuerung::AndererDatensatz | ( | int | trainidtmp | ) |
Wechselt Darstellung auf den Zug mit der Nummer trainid.
int cFensterLokSteuerung::befuelleComboLok | ( | int | trainidtmp | ) |
Fuellt ComboLok auf und setzt Icons innerhalb von ComboLok. Liefert gueltige trainid zurueck (sofern moeglich)
void cFensterLokSteuerung::cDebug | ( | int | prioritaet, |
const QString & | meldung | ||
) | [private] |
Gibt die Meldung "meldung" in eine der Klasse zugeordnete Logdatei aus. Dabei werden Meldungen mit der Prioritaet prioritaet 0 auch auf dem Bildschirm als Warnung ausgegeben. Meldungen mit Prioritaet >=2 (bzw. >=1) werden in aller Regel nicht in die Log-Datei ausgegeben, lassen sich aber durch Modifikation der Funktion cDebug zur Ausgabe hinzufuegen.
int cFensterLokSteuerung::getTrainid | ( | void | ) | [inline] |
Liefert die aktuell behandelte Lok zurueck.
Definiert in Zeile 103 der Datei cFensterLokSteuerung.h.
{ return(trainid); };
void cFensterLokSteuerung::SignalUpdateLokSteuerung | ( | int | ) | [signal] |
Updatemeldung an cFensterLokSteuerung.
void cFensterLokSteuerung::SlotAutomatischeSteuerung | ( | void | ) | [slot] |
(de)aktiviert die automatische steuerung
void cFensterLokSteuerung::SlotBefehlEditieren | ( | ) | [slot] |
Oeffnet das Fenster zum Befehl editieren.
void cFensterLokSteuerung::SlotBefehlGewaehlt | ( | int | cmdnr | ) | [slot] |
uebernimmt einen ausgewaehlten Befehlssatz zum Laden
void cFensterLokSteuerung::SlotBefehlGewaehltSpeichern | ( | int | cmdnr | ) | [slot] |
uebernimmt einen ausgewaehlten Befehlssatz zum Speichern
void cFensterLokSteuerung::SlotBefehlHinzufuegen | ( | ) | [slot] |
Button Befehl hinzufuegen.
void cFensterLokSteuerung::SlotBefehlLaden | ( | ) | [slot] |
Laedt einen in der Datenbank abgelegten Befehlssatz.
void cFensterLokSteuerung::SlotBefehlLadenSchliessen | ( | void | ) | [slot] |
Wird aufgerufen, wenn das Befehl-Laden-Fenster geschlossen wird. Setzt den Zeiger auf NULL.
void cFensterLokSteuerung::SlotBefehlLoeschen | ( | ) | [slot] |
Button Befehl loeschen.
void cFensterLokSteuerung::SlotBefehlSchliessen | ( | void | ) | [slot] |
Wird aufgerufen, wenn das Befehl-Editieren-Fenster geschlossen wird. Setzt den Zeiger auf NULL.
void cFensterLokSteuerung::SlotBefehlsListBoxAktualisieren | ( | ) | [slot] |
Aktualisiert die ListBox mit den Befehlen des Zugs. Dazu wird der aktuelle Befehlssatz der Lok ausgelesen und dargestellt.
void cFensterLokSteuerung::SlotBefehlSpeichern | ( | ) | [slot] |
Speichert einen Befehlssatz in der Datenbank.
void cFensterLokSteuerung::SlotBefehlSpeichernSchliessen | ( | void | ) | [slot] |
Wird aufgerufen, wenn das Befehl-Speichern-Fenster geschlossen wird. Setzt den Zeiger auf NULL.
void cFensterLokSteuerung::SlotBefehlVeraendert | ( | int | altebefehlsnr, |
int | neuebefehlsnr, | ||
QString | befehl | ||
) | [slot] |
Uebernimmt einen editierten Befehl.
void cFensterLokSteuerung::SlotEinstellungenAendern | ( | ) | [slot] |
Oeffnet das Einstellungsfenster.
void cFensterLokSteuerung::SlotEinstellungenSchliessen | ( | void | ) | [slot] |
Wird aufgerufen, wenn das Einstellungsfenster geschlossen wird. Setzt den Zeiger auf NULL.
void cFensterLokSteuerung::SlotNeueTrainAuswahl | ( | int | CBid | ) | [slot] |
Wird aufgerufen, wenn ein anderer Zug in der Auswahlliste ausgewaehlt wird. Ruft AndererDatensatz auf.
void cFensterLokSteuerung::SlotRangieren | ( | void | ) | [slot] |
(de)aktiviert den Rangiermodus
void cFensterLokSteuerung::SlotSetManuelleSteuerung | ( | bool | aktiviert | ) | [slot] |
Wird aufgerufen, um die Buttons der Befehlsliste zu (de)aktivieren.
void cFensterLokSteuerung::SlotSetSollKmh | ( | int | trainidtmp, |
int | geschwindigkeitkmhtmp, | ||
int | richtungtmp | ||
) | [slot] |
Wird aufgerufen, wenn sich die Sollgeschwindigkeit eines Zuges aendert und aendert sodann die Geschwindigkeitsreglereinstellung.
void cFensterLokSteuerung::SlotSollKmhAendern | ( | void | ) | [slot] |
Wird aufgerufen, wenn das Regler-Rad bewegt wurde. Ruft Intelligenz->manuelleSteuerung auf.
void cFensterLokSteuerung::SlotUpdate | ( | int | trainidtmp | ) | [slot] |
Wird aufgerufne, wenn sich die Einstellungen fuer den aktuellen Zug geaendert haben. Die Daten werden sodann aus der Datenbank nachgeladen. Ist das Einstellungsfenster geoeffnet, so wird es auch aktualisiert.
void cFensterLokSteuerung::SlotZugGeschwindigkeit | ( | int | trainidtmp, |
int | geschwindigkeitkmhtmp, | ||
int | richtungtmp | ||
) | [slot] |
Wird aufgerufen, wenn der Zug trainidtmp seine Geschwindigkeit auf geschwindigkeittmp geaendert hat und jetzt in Richtung richtungtmp faehrt.
void cFensterLokSteuerung::SlotZugOrt | ( | int | trainidtmp, |
int | connid | ||
) | [slot] |
Wird aufgerufen, wenn der Zug trainidtmp ueber den Konnektor connid faehrt.
bool cFensterLokSteuerung::unparseBefehle | ( | void | ) | [private] |
Unparsed den Befehlssatz (entfernt alle geparsten Informationen), liefert TRUE zurueck, falls Aenderungen durchgefuehrt wurden, sonst FALSE.
QString* cFensterLokSteuerung::ArtNummer [private] |
Artikelnummer.
Definiert in Zeile 175 der Datei cFensterLokSteuerung.h.
cFensterBefehl* cFensterLokSteuerung::Befehl [private] |
Zeiger auf das Befehlsfenster.
Definiert in Zeile 167 der Datei cFensterLokSteuerung.h.
bool cFensterLokSteuerung::ComboLokUpdate [private] |
Ist TRUE, falls ComboLok neu aufgebaut werden muss. Noch nicht ganz ausgereift, vergleiche ###-Kommentar in AndererDatensatz.
Definiert in Zeile 159 der Datei cFensterLokSteuerung.h.
cFensterLok* cFensterLokSteuerung::Einstellungen [private] |
Zeiger auf das Einstellungsfenster.
Definiert in Zeile 165 der Datei cFensterLokSteuerung.h.
cIntelligenz* cFensterLokSteuerung::Intelligenz [private] |
Pointer auf die Fahrsteuerungsroutinen-Klasse.
Definiert in Zeile 179 der Datei cFensterLokSteuerung.h.
cFensterBefehlLaden* cFensterLokSteuerung::Laden [private] |
Zeiger auf das Fenster zum Laden eines Befehlssatzes.
Definiert in Zeile 169 der Datei cFensterLokSteuerung.h.
QPixmap* cFensterLokSteuerung::PixmapLokbildklein [private] |
Kleines Bild bei der Lokauswahl.
Definiert in Zeile 173 der Datei cFensterLokSteuerung.h.
Zeiger auf das Fenster zum Speichern eines Befehlssatzes.
Definiert in Zeile 171 der Datei cFensterLokSteuerung.h.
int cFensterLokSteuerung::trainid [private] |
Aktuell dargestellter Zug.
Definiert in Zeile 177 der Datei cFensterLokSteuerung.h.