Search the FirstSpirit Knowledge Base
Hallo,
wir haben eine eigene Swing Eingabekomponente entwickelt (AbstractValueHoldingSwingGadget) die wir jetzt in einem mehrsprachigen Projekt einsetzen wollen, wobei die Eingabekomponente generell sprachunabhängig sein soll. Allerdings ist uns das generelle Vorgehen hier noch nicht ganz klar.
Im Gom haben wir die Methoden getUseLanguages() und setUseLanguages() entsprechend überschrieben. Beim Wechseln des Sprache-Tabs im FS Client wird allerdings die Methode create() der SwingGadgetFactory aufgerufen, was aktuell dazu führt, das eine neue Instanz des Gadget erzeugt wird. Ist das das richtige vorgehen, oder darf beim Wechsel der Sprache keine neue Instanz erzeugt, sondern die bestehende wiederverwendet werden.
Ist generell noch etwas zu konfigurieren um die Eingabekomponente sprachunabhängig zu machen?
Aktuell reagiert die Eingabekomponente wie folgt: Eingaben in der 1. Sprache werden gespeichert. Beim ersten Wechseln zur 2. Sprache werden die Änderungen korrekt angezeigt (2. Instanz wird durch create() erzeugt). Werden anschließend in der 2. Sprache Änderungen durchgeführt, wirken sich diese nicht auf die 1. Sprache aus. Umgekehrt auch nicht mehr, da 2 Instanzen.
Gibt es Beispiele oder Dokumentation zu diesem Problem?
Viele Dank und viele Grüße!
Hi,
generell werden für jede Sprache neue Gadget Instanzen erzeugt, ansonsten gäbe es auch massive Probleme mit Swing, da eine Komponente nur in einer Komponentenhierarchie angezeigt werden kann. Bei einem Sprachwechsel sorgt das Framework dafür, dass die Werte in sprachunabhängigen Gadgets synchronisiert werden.
Bitte mal die FS-Version angeben und evtl. eure GOM-Klasse anhängen. Was macht das Gadget, wenn der Wert neu gesetzt wird?
Gruß
Stefan
Hallo,
danke für die Antwort. Dann sind wir ja schon auf dem richtigen Weg. 😉 Wie können wir den auf das Setzen des Wertes bzw. den Sprachwechsel reagiegen? Gibt es einen Listener o.ä.? Das wäre ja dann notwendig um die anderen Gadgets/Swing Komponenten zu aktualisieren, damit sie den neu gesetzten Wert wiederspiegeln.
Viele Dank und viele Grüße!
PS: FirstSpirit Version 5.0.425
Hallo Ronny,
benötigst du noch weitere Unterstützung oder konntest du dein Problem inzwischen lösen? In diesem Fall wäre es nett, wenn Du die Lösung hier bereitstellst.
Viele Grüße
Tim