Jump to content
Sign in to follow this  
Timba

Bearbeitung von Variablen

Recommended Posts

Was mich ja mittlerweile mega stört: Wenn ich einige Variablen in der EV manuell verändern will, beispielsweise Z1, Z2, Z3 ... Z10, die ja dankenswerterweise alphabetisch sortiert am Ende der Auflistung meiner gefühlten 250 Variablen :D zu finden sind, muss ich nach jeder Eingabe wieder von ganz oben nach ganz unten scrollen. Jedes Mal!! Kann das Ding nicht einfach da stehen bleiben wo ich gerade schreibe?? Es ist ok, wenn bei jedem neuen Aufruf der EV der Cursor am Anfang der Liste steht, aber warum muss das nach jeder Eingabe sein? Das nervt wirklich, wenn man mehrere Variablen ändern will.

Share this post


Link to post
Share on other sites

Hallo Timba,

diese Usability-Verbesserung bau ich gern noch ein, in der Zwischenzeit könnte es eine Lösung für dich sein, das Variablenfenster einfach größer zu ziehen, sodass keine Scrollleiste erscheint.

Viele Grüße,

Neo

Share this post


Link to post
Share on other sites

Tja Timba, hättste die Variablen mal als Objektvariablen gemacht, dann ging das schon heute ;)
Ich wollte damit eigentlich nur sagen, dass mir das gefühlt wie ein Designproblem aussieht, bei dem besser Abhilfe geschaffen werden sollte, bevor es 750 sind.
Weniger werden's unterm Strich wohl nicht, aber sie sind dann anders verteilt. Ich schätze, Deinen derzeitigen Stand hatte ich anfangs auch mal...
Bevor Du zu viele Änderungen manuell machst:
Mach Dir ein Skript, dass durch einen speziellen Button ausgelöst wird. Hier haust Du mit einem schnellen externen Editor wie Notepad++ die Namensliste rein und machst Lua-Zuweisungsbefehle draus. Zurückkopiert, Knöpfchen gedrückt, fertig. Beugt Sehnenscheidenentzündungen vor...

$("Ereignisse").variables["Z1"] = 1
$("Ereignisse").variables["Z2"] = 2
$("Ereignisse").variables["Z3"] = 3
$("Ereignisse").variables["Z4"] = 5
...
$("Ereignisse").variables["Z750"] = 7

Gruß
  Andy

Edited by Andy

Share this post


Link to post
Share on other sites
vor 1 Stunde schrieb Neo:

in der Zwischenzeit könnte es eine Lösung für dich sein, das Variablenfenster einfach größer zu ziehen, sodass keine Scrollleiste erscheint.

Also, einfach mal einen 60"-Monitor bestellen und den hochkant auf'n Schreibtisch basteln. Hm ... ok. Wäre 'ne Idee. :D Spaß beiseite, ich kann es schon noch aushalten bis die Verbesserung kommt. Ist ja auch momentan dem Umstieg auf V5 geschuldet, weil man ja alles ausprobieren und umstricken will und zum Testen muss man halt hier und da mal Variablen manipulieren. Das legt sich auch wieder.

 

vor einer Stunde schrieb Andy:

Tja Timba, hättste die Variablen mal als Objektvariablen gemacht, dann ging das schon heute ;)

Wie meinst du das? An die Objektvariablen kommt man ja noch umständlicher, weil man da erst übers Objekt gehen muss. Bei V4 waren die Objektvariablen unterhalb der Modulvariablen, das fand ich persönlich angenehmer. Wobei ... noch mehr scrollen ... ja ja ich weiß, ich widerspreche mich selbst. :D

vor einer Stunde schrieb Andy:

bevor es 750 sind

Sind es nicht! Ich neige aus stilistischen Gründen hin und wieder zur Übertreibung.

 

vor einer Stunde schrieb Andy:

Mach Dir ein Skript, dass durch einen speziellen Button ausgelöst wird. Hier haust Du mit einem schnellen externen Editor wie Notepad++ die Namensliste rein und machst Lua-Zuweisungsbefehle draus. Zurückkopiert, Knöpfchen gedrückt, fertig. Beugt Sehnenscheidenentzündungen vor...

Gebe dir recht! Das wäre ganz sicher die Option, wenn es für Dauer und öfter wäre. Aus demselben Grund habe ich mir gestern noch schnell eine Schalttafel zusammengebastelt um meine Züge zu dirigieren. Jede meiner Loks hat eine Objektvariable, in der das Ziel abgelegt ist und an jeder Weiche wird die Variable abgefragt und die Weiche entsprechend geschaltet. So kommt der Zug immer ans Ziel. Das geht automatisch oder auch manuell, je nach Wunsch. Nun konnte man bei V4 noch manuell die Variable ändern ohne dass die Simulation anhielt. In V5 stoppt die Simulation beim Aufruf des Dialogs für die Objektvarialbe, was mich beim "Spielen" stört. Nun steuere ich bei Bedarf die Züge halt über diese Schalttafel, während der Fahrt und auch flotter.

2019-09-02_221950.thumb.jpg.43c635a3000dd16499651b300af5ac3e.jpg

Share this post


Link to post
Share on other sites

Naja, bekanntlich führen viele Wege nach Rom und solange Du den Überblick behältst und zufrieden damit bist, gibt es keinen Grund etwas zu ändern.
Hast schon recht, bring' die Anlage nicht in Gefahr.
Notfalls gäbe es ein paar sehr starke Lua-Funktionen, mit denen eine große Umverdrahtung automatisiert möglich wäre. Bin gespannt auf die Anlage.

Übrigens: Wenn Du bei einem Objekt die OV öffnest, sind im linken Fenster auch alle anderen Objekte und dort kannst Du Schritt für Schritt weiter gehen.

Gruß
  Andy

Share this post


Link to post
Share on other sites
vor 7 Stunden schrieb Andy:

Notfalls gäbe es ein paar sehr starke Lua-Funktionen

Das glaube ich, aber mir Lua bin ich jetzt erstmalig in Kontakt gekommen. Da brauche ich wohl noch etwas Einarbeitungszeit. Bisher habe ich ein paar kleine Sachen in Visual Basic programmiert. Da sind ja nur wenig Ähnlichkeiten.

 

vor 7 Stunden schrieb Andy:

Übrigens: Wenn Du bei einem Objekt die OV öffnest, sind im linken Fenster auch alle anderen Objekte und dort kannst Du Schritt für Schritt weiter gehen.

Ja, das habe ich gesehen. Ist aber nicht wirklich übersichtich, weil da ja jedes Objekt aufgelistet ist. Wäre vielleicht hilfreich, wenn da nur die Objekte stünden, die auch tatsächlich bereits eine Objektvariable besitzen. Würde die Liste deutlich reduzieren. Wenn man dann einem Objekt eine Variable neu zuordnen will, die noch nicht in der Liste ist, kann man ja immer noch direkt übers Objekt reingehen. Nur mal so als Idee.

Share this post


Link to post
Share on other sites

Hallo Timba,

vor 56 Minuten schrieb Timba:

Wäre vielleicht hilfreich, wenn da nur die Objekte stünden, die auch tatsächlich bereits eine Objektvariable besitzen.

du kannst die Liste der Objekte filtern, klicke dazu einfach auf die Lupe in der oben Leiste.

Viele Grüße,

Neo

Share this post


Link to post
Share on other sites

Oh, Danke, das ist schon etwas besser. Hatte ich nicht gesehen. Trotzdem fände ich es nach wie vor am besten, wenn die Objekte so angeboten würden wie es in der Ereignisverwaltung ist, wenn ich dort eine Objektvariable auswählen will. Dort ist dann auch nur die Liste der Objekte, die tatsächlich eine Variable besitzen.

Share this post


Link to post
Share on other sites

Hallo,

vor 1 Minute schrieb Timba:

Dort ist dann auch nur die Liste der Objekte, die tatsächlich eine Variable besitzen.

wie willst du in diesem Fall eine Variable zu einem Objekt hinzufügen, dass noch keine Variable besitzt? Die Liste wurde ja genau aus dem Grund dort eingefügt, damit man nicht ständig den Dialog schließen, ein anderes Objekt selektieren und wieder neu bearbeiten muss.

Viele Grüße,

Neo

Share this post


Link to post
Share on other sites
vor 5 Minuten schrieb Neo:

wie willst du in diesem Fall eine Variable zu einem Objekt hinzufügen, dass noch keine Variable besitzt?

Wie ich bereits schrieb, über das betreffende Objekt.

vor 5 Minuten schrieb Neo:

Die Liste wurde ja genau aus dem Grund dort eingefügt, damit man nicht ständig den Dialog schließen, ein anderes Objekt selektieren und wieder neu bearbeiten muss.

Der Gedanke hinter dem aktuell beschrittenen Weg ist durchaus nachvollziehbar für mich. Stimmt, man muss den Dialog schließen um einem Objekt eine Variable zu geben, das bisher keine hat. Nur denke ich, dass es bei Weitem öfter vorkommt, dass einer Objektvariablen manuell ein anderer Wert zugewiesen werden muss als dass eine Objektvariable eingerichtet werden muss. Letzteres geschieht in der Regel genau einmal. Daher müsste der Schwerpunkt der Betrachtung auf die Wartung gelegt werden und weniger auf die Einrichtung. Aber ok, vielleicht ist meine Sichtweise diesbezüglich sehr speziell und die Mehrzahl der Nutzer sieht es genau andersrum.

Share this post


Link to post
Share on other sites

Hallo @Timba,

vor 47 Minuten schrieb Timba:

Aber ok, vielleicht ist meine Sichtweise diesbezüglich sehr speziell und die Mehrzahl der Nutzer sieht es genau andersrum.

gerade dann, wenn man mit möglichst wenigen Ereignisdefinitionen auskommen möchte, die von möglichst vielen Objekten gemeinsam genutzt werden sollen, kommt den Objektvariablen als "Verkettungs-Mechanismus" eine wesentliche Bedeutung zu. Dann ist es aber erforderlich, vielen Objekten dieselbe Objektvariable mit demselben oder gleichartigem Inhalt zuzuweisen. Und da hat es sich zumindest für mich als sehr praktisch herausgestellt, dass man bei geöffnetem Variablen-Fenster

  1. zu einem anderen Objekt wechseln kann, dem man diese Variable neu hinzufügen möchte, und
  2. mittels Copy&Paste einen kompletten Variablensatz (mit Inhalten) von einem Objekt auf ein anderes hinüberkopieren kann.

So kann man "ruckzuck" eine ganze Liste von Objekten mit dem gleichen Objektvariablensatz versorgen und hat auch gleich die (zumindest nahezu) passenden Inhalte darin stehen. Muss der Inhalt dann noch Objekt-spezifisch angepasst werden, ist auch dies "einfacher", weil es sich dann im Wesentlichen um "gleichartigen" Inhalt handelt, der sich dann, wenn es sich um referenzierte Objekte handelt, bei einem passenden "Bezeichnungssystem" in unmittelbarer alphabetischer Nachbarschaft befindet. Man muss sich also dann nach dem Anklicken des anzupassenden Varaibleninhalts nicht durch die komplette Objektliste hangeln, um das zu übernehmende korrekte Objekt zu lokalisieren.

Es hat also durchaus seine Berechigung, sich zum Bearbeiten von Objektvariablen die Liste sämtlicher Objekte anzeigen zu lassen, um schnell auf ein Objekt wechseln zu können, auf das der komplette Objektvariablensatz (oder auch Teile davon) des bisher angezeigten Objekts übertragen zu können.

Viele Grüße
BahnLand

Share this post


Link to post
Share on other sites

Hallo BahnLand,

so besehen macht es tatsächlich mehr Sinn. Übrigens sehr interessant, andere Ansätze und Herangehensweisen kennenzulernen.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×