Tutorial:Erstellen neuer Tischfelder

Aus StellSi-Hilfewiki
Zur Navigation springen Zur Suche springen

Standard für alle neuen Zeichnungen:

Zeichnungen sollten grundsätzlich als SVG erstellt werden.

Als verbindlicher Maßstab 1mm in der Realität = 1px in der Zeichnung definiert. Dies ist sinnvoll, damit verschiedene Bauformen ohne Probleme in einem Stellwerk kombiniert werden können.

Provisorische Hinweise zu SimpleScript

Es gibt im Tischfeldeditor bei den Zuständen das Feld "einfaches Script". Wird dieses Feld verwendet, sind jegliche andere Zuweisungen auf diesen zustand ignoriert. Stattdessen wird das Script ausgewertet. Das script ist ein einzeiliger C-sprachiger-Ausdruck mit dem Rückgabetyp int. Zuzugreifende Werte werden zwischen zwei %-Zeichen gesetzt. Dabei gilt folgendes:

  • Wenn eine Schnittstelle "sname" und mit dem selben Namen ein Parameter "sname" existiert, dann kann über %sname.leitung% der Zahlenwert dieser Leitung abgefragt werden. leitung kann auch parametriert sein, z.B. %sname.*leitungsname% wenn leitungsname ein Text-Parameter ist, der den Name der zugehörigen Leitung angibt. Rückgabewert ist immer eine Ganzzahl.
    • Die Werte %sname.leitung.min% und %sname.leitung.max% geben Werte zurück, die beim Blinken den kleinsten bzw. größten Wert der Blinkreihe zurückgeben.
  • "%#mirror%" ist 1 wenn das Feld gespiegelt ist, -1 wenn es nicht gespiegelt ist, und 0 wenn keine Aussage getroffen werden kann. Punktspiegelung zählt als nicht gespiegelt.
  • Wenn ein Parameter "par" existiert und an die Script-Engine übergeben wird…
    • und dieser ein Text ist, gibt %..par% 0 zurück, wenn der Text leer oder <!--$auto--> war oder 1 wenn er ein Text-Parameter mit Inhalt war.
    • und dieser ein Text ist, gibt %$auto..par% 1 zurück, wenn der Text mit <!--$auto--> anfängt.
    • und dieser ein numerisch interpretierbare Auswahlbox (z.B. eine Combobox) war, gibt %..par% den entsprechenden Wert zurück. (Für Checkboxen gilt 0=uncecked, 1=checked, -1=3. Zustand (falls verfügbar).)
  • %% wird zum Operator "%"
  • Hinweis: Die Support-Dauer in zukünftigen Programmversionen ist unbekannt. :-)

Siehe auch: Tutorial:Namen von Signalen