AutoGUI - Eine library, um (Swing) GUIs für Java Beans und POJOs zu erstellen


#1

Es kommt immer wieder mal vor, dass man irgendeine POJO-Modellklasse oder Java Bean hat

class Person {
    private String name;
    private float height;
    private Pet pets[];
    // Getter, setter...
}
class Pet {
    private String name;
    private int age;
    // Getter, setter...
}

und dafür ein einfaches editier-GUI braucht. Das ist ziemlich lästig, wenn man es jedesmal neu machen muss. Natürlich gibt es da schon Lösungen dafür…

(das letzte ist wohl am ähnlichsten zu meinem)

Aber in klassicher Not-Invented-Here-Manier hab’ ich da auch mal was gebastelt:

Ein Screenshot mit einem Beispiel:

Ein wichtiger Punkt ist, dass wenn die Objekte Beans (mit PropertyChangeSupport) sind, schon eine bidirektionale Verbindung hergestellt wird. Das GUI aktualisiert das Modell, und umgekehrt. Automatisch.

Natürlich kann man da beliebig weit gehen, und es wird immer irgendeine spezifische Funktionalität nicht unterstützt. (Im Moment z.B: Wenn ein Property null ist, kann man es nicht per GUI “nicht-null” machen).

Aber ein paar use-cases habe ich schonmal abzudecken versucht. Beispiele liegen unter https://github.com/javagl/AutoGUI/tree/master/src/test/java/de/javagl/autogui/samples

Dabei bin ich vielleicht an der einen oder anderen Stelle mit bestimmten Konstrukten und Abstraktionen über’s Ziel hinausgeschossen, aber … muss ja keiner verwenden, ist nur für den internen Gebraucht gedacht :wink: