Querdurchstreichung in Befehlen

Hier kann alles Allgemeine rund um Zusi 3 gefragt und beantwortet werden. Neuigkeiten zum Programm werden hier erscheinen.
Nachricht
Autor
Benutzeravatar
Johannes
Beiträge: 3197
Registriert: 14.03.2009 22:36:06
Aktuelle Projekte: Zusitools (http://git.io/zusitools)

Re: Querdurchstreichung in Befehlen

#81 Beitrag von Johannes »

Behebt das Skript dieses Druckproblem? http://forum.zusi.de/viewtopic.php?p=251667#p251667" target="_blank

Benutzeravatar
F. Schn.
Beiträge: 6629
Registriert: 24.10.2011 18:58:26

Re: Querdurchstreichung in Befehlen

#82 Beitrag von F. Schn. »

Ja, der Bug besteht wohl auch nur bei Hintergrundbildern und ist bei dem Script bei mir auch nicht aufgetreten.
Diese Signatur möchte folgendes bekannter machen: ZusiWiki · ZusiSK: Streckenprojekte · YouTube: Objektbau für Zusi · euirc: Zusi-Chat

Benutzeravatar
Max Senft
Administrator
Beiträge: 3004
Registriert: 04.11.2001 14:01:40
Aktuelle Projekte: Dies und das
Wohnort: Blieskastel, Saarland, Deutschland
Kontaktdaten:

Re: Querdurchstreichung in Befehlen

#83 Beitrag von Max Senft »

Hi,

bitte mal testen, ob das auch im "embedded" Browser in Zusi geht. Da gab es meines Wissens nach Beschränkungen, was JavaScript betrifft. Und das auch noch unterschiedlich, je nach Betriebssystem und IE Kombination. Wär ja sonst zu einfach. :rolleyes:

Gruß
Max
Administrator, Programmierer, Ansprechpartner bei Problemen mit dem Board

Benutzeravatar
F. Schn.
Beiträge: 6629
Registriert: 24.10.2011 18:58:26

Re: Querdurchstreichung in Befehlen

#84 Beitrag von F. Schn. »

Ulkigerweise bei mir genau umgekehrt: In Zusi (3D-Editor) geht es, wenn ich aber via Doppelklick öffne blockiert er das Script.
Würde mich aber nicht wundern, wenn das von irgendwelchen Einstellungen abhängig ist.

Johannes: Kannst du mal mit Gecko testen?
Diese Signatur möchte folgendes bekannter machen: ZusiWiki · ZusiSK: Streckenprojekte · YouTube: Objektbau für Zusi · euirc: Zusi-Chat

Benutzeravatar
Johannes
Beiträge: 3197
Registriert: 14.03.2009 22:36:06
Aktuelle Projekte: Zusitools (http://git.io/zusitools)

Re: Querdurchstreichung in Befehlen

#85 Beitrag von Johannes »

Wenn man das einsetzt, bitte fuer das SVG-Element den aktuellen Code verwenden:

Code: Alles auswählen

<svg style="position: absolute" id="svgsource" xmlns='http://www.w3.org/2000/svg' version='1.1' preserveAspectRatio='none' width="10px" height="10px" viewBox='0 0 1000 10'>
<path d='M0 8 L1000 2' stroke='MediumBlue' stroke-width='1' />
</svg>
So ganz tut's unter Wine auch noch nicht. Ich habe das SVG im <data>-Element mal rot gemacht, blau sind die Durchstreichungen per CSS:

Bild

Weiterhin gibt es ein Problem, wenn ich die Ansicht per Strg+Mausrad zoome; dann bleiben naemlich die Durchstreichungen in der urspruenglichen Groesse.

P.S. Was bringt eigentlich das hier?

Code: Alles auswählen

var lengthBefore = durchgestrichene.length;
[...]
i = i - lengthBefore + durchgestrichene.length;
i = i?
Zuletzt geändert von Johannes am 11.04.2016 18:31:51, insgesamt 1-mal geändert.

Benutzeravatar
F. Schn.
Beiträge: 6629
Registriert: 24.10.2011 18:58:26

Re: Querdurchstreichung in Befehlen

#86 Beitrag von F. Schn. »

Manche (alle?) IE-Versionen schmeißen mit dem Ändern des Class-Attributes das Item aus der Auflistung. Diese Anweisung soll das Kompensieren. (Offenbar habe ich beim Entsorgen der auskommentierten Experiemente auch den zogehörigen Kommentar entsorgt.... ?( )
Johannes hat geschrieben:Weiterhin gibt es ein Problem, wenn ich die Ansicht per Strg+Mausrad zoome; dann bleiben naemlich die Durchstreichungen in der urspruenglichen Groesse.
Bei welchem Browser? Firefox? Wine? Im IE (~10?) werden die Striche korrekt angepasst.

Ich habe inzwischen ein paar weitere Workarounds als Script implentiert, beispielsweise die von Alwin in seinem Video beanstandeten falschen Zugfolgestellen, soweit sich diese Auflösen lassen.
Diese Signatur möchte folgendes bekannter machen: ZusiWiki · ZusiSK: Streckenprojekte · YouTube: Objektbau für Zusi · euirc: Zusi-Chat

Alwin Meschede
Beiträge: 8926
Registriert: 04.11.2001 19:57:46
Aktuelle Projekte: Zusi3 Objektbau
Kontaktdaten:

Re: Querdurchstreichung in Befehlen

#87 Beitrag von Alwin Meschede »

F. Schn. hat geschrieben:Ich habe inzwischen ein paar weitere Workarounds als Script implentiert, beispielsweise die von Alwin in seinem Video beanstandeten falschen Zugfolgestellen, soweit sich diese Auflösen lassen.
Ein hartcodierte Ersetzungsliste? Die sollte dann bitte als separate Datei gepflegt werden, und er sollte folglich auch nicht kotzen wenn diese Datei dann mal fehlt (Zusi 3 Hobby ist nicht der einzige Nutzer der Befehlsformulare, und der Professional-Version sollte man diesen zusätzlichen Bloat nicht aufzwingen).
Mein Youtube-Kanal: youtube.com/echoray1

Benutzeravatar
Johannes
Beiträge: 3197
Registriert: 14.03.2009 22:36:06
Aktuelle Projekte: Zusitools (http://git.io/zusitools)

Re: Querdurchstreichung in Befehlen

#88 Beitrag von Johannes »

Das ist unter Wine (beim Testen im 3D-Editor).

Benutzeravatar
F. Schn.
Beiträge: 6629
Registriert: 24.10.2011 18:58:26

Re: Querdurchstreichung in Befehlen

#89 Beitrag von F. Schn. »

So, jetzt noch ein Versuch:

Code: Alles auswählen

...
<meta http-equiv="Version" content="$Header$">
<meta http-equiv="X-UA-Compatible" content="IE=10"/>
...
<style type="text/css"> 
p { margin: 0; }
...
</style>
<script type='text/javascript' src='_workaround.txt'>
</script>
<script type='text/javascript'>
function OnLoad()
{
  ersetzeZugmeldestellen();
  ersetzteDurchstreichungenDrucksicher();
}
function ersetzeZugmeldestellen()
{
  try
  {
    var d = document.getElementById('Zugmeldestellenersetzung').innerText;
    d = ReplaceZugfolgestellen(d);
    document.getElementById('Zugmeldestellenersetzung').innerText = d;
  }
  catch(e) /*Schlaegt bei fehlender Datei fehl.*/
  {
  }
}
function ersetzteDurchstreichungenDrucksicher()
{
  try
  {
    var durchgestrichene = document.getElementsByClassName('durchgestrichen');
    var svg = document.getElementById('svgsource');
    for (var i = 0; i < durchgestrichene.length; i++)
    {
      var element = durchgestrichene.item(i);
      var bild = svg.cloneNode(true);
      bild.id = "";
      bild.style.display = "";
      element.parentNode.insertBefore(bild, element);
      bild.setAttribute('height', element.offsetHeight + 'px');
      bild.setAttribute('width', element.offsetWidth + 'px');
      var lengthBefore = durchgestrichene.length;
      element.className = (element.className + ' ').replace('durchgestrichen ', '');
      /*Fuer Browser, bei denen mit dem edit von ClassName das Element aus der Auflistung verschwindet*/
      i = i - lengthBefore + durchgestrichene.length;
    }
  }
  catch(e) /*Schlaegt beim IE7 fehl, getElementsByClassName not supported.*/
  {
  }
}
</script>
</head>

<body bgcolor="#FFFFFF" onload='javascript:OnLoad()'>
...
</p>
<svg style="position:absolute;display:none" id="svgsource" xmlns='http://www.w3.org/2000/svg' version='1.1' preserveAspectRatio='none' width="10px" height="10px" viewBox='0 0 1000 10'>
<path d='M0 8 L1000 2' stroke='MediumBlue' stroke-width='1' />
</svg>
</body>
</html>
Diese Signatur möchte folgendes bekannter machen: ZusiWiki · ZusiSK: Streckenprojekte · YouTube: Objektbau für Zusi · euirc: Zusi-Chat

Benutzeravatar
Johannes
Beiträge: 3197
Registriert: 14.03.2009 22:36:06
Aktuelle Projekte: Zusitools (http://git.io/zusitools)

Re: Querdurchstreichung in Befehlen

#90 Beitrag von Johannes »

Beim Einbinden externer Dateien in Befehlsformularen muss man uebrigens darauf achten, dass die fertig generierte befehl.html hinterher im Temp-Verzeichnis liegt, und entsprechende relative Pfade verwenden.

Benutzeravatar
Carsten Hölscher
Administrator
Beiträge: 33384
Registriert: 04.07.2002 00:14:42
Wohnort: Braunschweig
Kontaktdaten:

Re: Querdurchstreichung in Befehlen

#91 Beitrag von Carsten Hölscher »

Vorsicht. Als Temp-Verzeichnis soll grundsätzlich auch das Windows-Temp-Verzeichnis herhalten können. Das ist zwar im Moment nocht nicht vollständig umgesetzt, aber es soll in der aktuellen Form nicht als "fest codiertes" Verzeichnis betrachtet werden.

Carsten

Alwin Meschede
Beiträge: 8926
Registriert: 04.11.2001 19:57:46
Aktuelle Projekte: Zusi3 Objektbau
Kontaktdaten:

Re: Querdurchstreichung in Befehlen

#92 Beitrag von Alwin Meschede »

Carsten Hölscher hat geschrieben:Vorsicht. Als Temp-Verzeichnis soll grundsätzlich auch das Windows-Temp-Verzeichnis herhalten können.
Gibt es denn irgendwelche grundsätzlichen Probleme mit dem Temp-Ordner im Zusi-Datenverzeichnis? Ich finde den jedenfalls viel praktischer als wenn das ganze Geraffel zusammen mit dem Mist von anderen Programmen im Windows-Temp-Verzeichnis landen würde.

Wenn Du das umsetzt, dann solltest Du in Erwägung ziehen, deinen Text-Ersetzungsfunktionen für die Befehlsformulare auch noch beizubringen, dass sie an bestimmten Stellen den Pfad zum Zusi-Datenverzeichnis in die HTML-Datei einsetzen. Die Fähigkeit, auf externe Dateien zu verlinken, hat nämlich durchaus einen Wert. Sonst müsste man zum Beispiel die hier diskutierte Ersetzungsliste in jeder Befehlsvorlage separat pflegen. Das wäre ja Irrsinn.
Mein Youtube-Kanal: youtube.com/echoray1

Benutzeravatar
F. Schn.
Beiträge: 6629
Registriert: 24.10.2011 18:58:26

Re: Querdurchstreichung in Befehlen

#93 Beitrag von F. Schn. »

Carsten Hölscher hat geschrieben: im Moment
Hallo Carsten,

mir wäre es wirklich lieb, wenn der JS-Workaround zu den Zugfolgestellen nur wiklich so kurz wie möglich anhält. Langfristig würde ich da dringend auf eine (sehr Primitive) Plugin-Schnittstelle setzen, die vermutlich am einfachsten an der Stelle ansetzt, wo Zusi die Textersetzung macht.* Ich würde zwar auch eine Zusi-Kernfunktionalität vorschlagen, aber da bekomme ich von den Prioritätsjägern (wie Poschi) nur Haue, und in dem Punkt vermutlich auch zu Recht. ;D

Nach einer kurzen Überlegung bräuchte ich als Parameter für die Plugin-Schnittstelle nur folgendes:
Den Text der Befehls.html als In/Out-Parameter
Den Pfad zum Zusi-Modul der Fahrstraße, die der Zug jetzt belegt In
Den Namen der Fahrstraße, die der Zug jetzt belegt (oder eine ander Identifikationsmöglichkeit) In
Das selbe noch für die Fahrstraße, für die der Befehl gilt (2x In)
Optional noch ein Array aller Texte, die Zusi in seiner eigenen Textersetzung bereitstellt. (In)
Optional noch den Zustand des LZB-Ü-Melders. (In)

Dementsprechend hoffe ich auch darauf, dass der Workaround wieder weg kommt, bevor du das mit dem Temp-Verzeichnis einbaust. (IMHO auch keine doofe Idee, weil das Temp-Verzeichnis bei mir automatisch geleert wird.)

Gruß
F. Schn.

*Schon jetzt gibt es einige Signale, bei denen eine zweifelsfreie Auflösung der letzten Zugmeldestelle nicht ohne weiteres möglich ist.
Zuletzt geändert von F. Schn. am 12.04.2016 18:47:24, insgesamt 1-mal geändert.
Diese Signatur möchte folgendes bekannter machen: ZusiWiki · ZusiSK: Streckenprojekte · YouTube: Objektbau für Zusi · euirc: Zusi-Chat

Benutzeravatar
F. Schn.
Beiträge: 6629
Registriert: 24.10.2011 18:58:26

Re: Querdurchstreichung in Befehlen

#94 Beitrag von F. Schn. »

Hi,

darf ich mal fragen, was hier raus jetzt geworden ist? Gab es noch grundlegende Fragezeichen?
Diese Signatur möchte folgendes bekannter machen: ZusiWiki · ZusiSK: Streckenprojekte · YouTube: Objektbau für Zusi · euirc: Zusi-Chat

Benutzeravatar
K-laus
Beiträge: 30
Registriert: 01.10.2019 09:32:31

Darstellung der ausgefüllten Befehle ist falsch

#95 Beitrag von K-laus »

Moin!

In Zusi werden leider die angezeigten Befehle falsch ausgefüllt dargestellt.

Bild

Nicht Zutreffendes ist grundsätzlich schräg zu streichen. Dies soll beim Schreiben mit Durchschlag die Verwechslung mit Unterstreichungen verhindern.
Außerdem ist immer alles nicht Zutreffende zu streichen. Im Beispiel von Befehl A ist im Abschnitt c) nicht klar, ob es sich nun um einen Bahnhof (Bf) oder nur um einen Bahnhofsteil (Bft) handelt. Einer von den beiden Einträgen müsste schräg gestrichen sein.

Bild

Gleiches gilt für den Befehl B.
In Abschnitt c) ist die Art der Betriebsstelle Langeland nicht spezifiziert. Außerdem müsste Sperrsig schräg gestrichen sein.
In Abschnitt e) müsste in den ersten 3 Zeilen Bksig, km, Abzw und Üst jeweils einzeln schräg gestrichen sein.
Felder, in denen Signalbezeichnungen, Betriebsstellen oder Kilometerangaben eingetragen werden sind hingegen nicht zu streichen, sondern bei Nichtgebrauch leer zu lassen.

Gruß Klaus

Benutzeravatar
Johannes
Beiträge: 3197
Registriert: 14.03.2009 22:36:06
Aktuelle Projekte: Zusitools (http://git.io/zusitools)

Re: Darstellung der ausgefüllten Befehle ist falsch

#96 Beitrag von Johannes »

Zumindest zum schrägen Durchstreichen kann ich was sagen: Nach sehr viel Feinschliff (viewtopic.php?f=47&t=12371" target="_blank) haben wir das in fast allen Browsern hinbekommen. Nur unter XP ist der integrierte Browser einfach zu alt für solche Spielereien.

Benutzeravatar
K-laus
Beiträge: 30
Registriert: 01.10.2019 09:32:31

Re: Darstellung der ausgefüllten Befehle ist falsch

#97 Beitrag von K-laus »

Wie ich sehe, habe ich da ein längst bekanntes Thema angeschnitten, und das auch noch in der falschen Rubrik platziert. Sorry, vielleicht kann ein Moderator das mal in die Programmfehler verschieben, das wäre nett. Danke.
Mein Browser ist tatsächlich ein IE8 auf einem antiquierten XP, weil ich normal nur Ubuntu verwende. Was Neueres von Klein&Weich zu installieren hatte ich bisher keinen Grund...

Gruß Klaus

Benutzeravatar
F. Schn.
Beiträge: 6629
Registriert: 24.10.2011 18:58:26

Re: Querdurchstreichung in Befehlen

#98 Beitrag von F. Schn. »

K-laus hat geschrieben: weil ich normal nur Ubuntu verwende
Wine müsste es korrekt machen.

Der Rest, also die fehlenden Durchstreichungen wäre ein anderes Thema und ggf. zu prüfen, ob da noch was fehlt. Ich gebe aber zu bedenken, dass du gerade die uralt-Befehlsformulare prüfst.
Diese Signatur möchte folgendes bekannter machen: ZusiWiki · ZusiSK: Streckenprojekte · YouTube: Objektbau für Zusi · euirc: Zusi-Chat

Benutzeravatar
Carsten Hölscher
Administrator
Beiträge: 33384
Registriert: 04.07.2002 00:14:42
Wohnort: Braunschweig
Kontaktdaten:

Re: Querdurchstreichung in Befehlen

#99 Beitrag von Carsten Hölscher »

Bf/Bft kann Zusi nicht differenzieren, da das in der Strecke nicht hinterlegbar ist.

Carsten

Benutzeravatar
Johannes
Beiträge: 3197
Registriert: 14.03.2009 22:36:06
Aktuelle Projekte: Zusitools (http://git.io/zusitools)

Re: Querdurchstreichung in Befehlen

#100 Beitrag von Johannes »

Was man umsetzen könnte: in Befehl B c) Nr. 2 „Sperrsig“ durchstreichen und in Befehl B e) die Texte in den nicht genutzten Zeilen streichen. Gibt es dagegen irgendwelche Einwände?

Antworten