Widget Layout und das Wort Expanding



  • Um Widgets für ein GUI anzuordnen gibt es ja bei Qt Layout Management und bei wxWidgets Window Layout.

    Nun finde ich das Wort Expanding (wenn sich ein Widget mit dem Basiswidget "ausdehnen" bzw. "schrumpfen" soll) nicht auf Anhieb verständlich, das es ja auch schrumpft und nicht nur ausdehnt. Aber mir kommt kein besseres Wort als Ersatz in den Sinn, hat jemand geeignetere Begriffe dazu als Idee?

    Edit: Habe das Wort glaube ich falsch verstanden. Gemeint ist damit, dass ein Widget so viel Platz einnimmt wie möglich.



  • Ich wüsste jetzt auch kein anderes Wort, ab ich finde expand, von to expand (expandieren, ausdehen) eigentlich auch einleuchtent. Bei wxWidgets gibt es als Flag auch wxGROW, was genau das Selbe ist, wie wxEXPAND. Wobei ich wxSizerFlags anstatt der Flags verwenden würde, da ist das ältere wxGROW rausgeflogen.
    Neben expand gibt es in wxWidgets auch noch die Proportion.

    QT habe ich in letzter Zeit eher seltener benutzt, das weiß ich auf anhieb nicht, wie das resizing gehändelt wird, müsste ich nachlesen.

    Um auf das Wort zurück zu kommen, ich finde expand passend und alles, was mir als Synonym einfallen würde, eigentlich weniger passend.



  • @Schlangenmensch sagte in Widget Layout und das Wort Expanding:

    Wobei ich wxSizerFlags anstatt der Flags verwenden würde, da ist das ältere wxGROW rausgeflogen.

    Genau das bin ich im Moment am machen, die Flags mit wxSizerFlags zu ersetzen, da es bei identischen Flags zu weniger Schreibmühen kommt.

    @Schlangenmensch sagte in Widget Layout und das Wort Expanding:

    Neben expand gibt es in wxWidgets auch noch die Proportion.

    Ja, soll bei wxBoxSizer, je nach dem ob mit wxVERTICAL oder wxHORIZONTAL initialisiert, in die entsprechende Orientierung eine Änderung der Grösse mitbestimmen.

    Offen gesagt, verstehe ich die Zusammenhänge nicht ganz und mir fällt es schwer das Verhalten vorauszusagen bzw. es so einzustellen, dass es genau das tut, was ich möchte bzw. weiss ich nicht genau, wie ich es einstellen soll, damit es das tut, was ich es mir vorstelle. Also es einigermassen geht es schon.

    Wieder verworfen habe ich die Idee, die Sizer in einer Klasse zu kapseln und einfachere Methoden zur Verfügung zu stellen, um weniger Schrieben zu müssen und den Code kompakt zu halten.

    Edit: Also sehr gut ging das mit dem https://trac.wxwidgets.org/ticket/18718 Ticket welches ich Anfang des Monats erstellte. Es ging sehr schnell und der Erstellungsfehler wurde behoben ( Pull Request ).



  • @titan99_ sagte in Widget Layout und das Wort Expanding:

    Genau das bin ich im Moment am machen, die Flags mit wxSizerFlags zu ersetzen, da es bei identischen Flags zu weniger Schreibmühen kommt.

    Ich finde vor allem die IDE Unterstützung dann sehr angenehm 😉

    Die Proportion gibtst du mit, wenn du ein Objekt in einen Sizer einhängst, und beeinflusst damit das Verhalten in Sizer Orientierung, zum Beispiel, wenn du zwei Textfelder untereinander in einem vertikalen Box Sizer hast und eins doppelt so hoch wie das andere sein soll.

    Ich habe da auch ein bisschen Eingewöhnung gebraucht, aber mit der Zeit wird's besser.

    In dem wxWidgets Forum oder auf der Mailingliste bekommt man auch recht zügig Hilfe, wenn man mal welche braucht. Und bei einfachen (im Sinne von einfach zu fixen) Bugs sind die auch echt schnell mit 'nem Fix zur Hand.



  • Bin im Moment neu am büscheln. Zuvor hatte ich ein Gemisch von Widget-Initialisierungen, Sizer-Initialisierungen und noch Anderem. Jetzt bin daran dies jeweils zusammenzufassen und je nach dem auch in eine seperate private Methode zu packen.

    Dass z.B. das native windows widget color-dialog-box (z.B. in der Visual Studio IDE unter dem Menu Tools -> Options... -> Environment -> Fonts and Colors -> Custom... aufrufbar) keinen Alpha-Kanal kennt, finde ich nicht so gut, dafür kann aber wxWidgets nichts.



  • @titan99_ sagte in Widget Layout und das Wort Expanding:

    Dass z.B. das native windows widget color-dialog-box (z.B. in der Visual Studio IDE unter dem Menu Tools -> Options... -> Environment -> Fonts and Colors -> Custom... aufrufbar) keinen Alpha-Kanal kennt, finde ich nicht so gut, dafür kann aber wxWidgets nichts.

    Hilft dir mit der "native" Variante natürlicht nicht weiter, aber der Generic Colour Dialog (wxGenericColourDialog) unterstützt den Alpha-Kanal 😉



  • @Schlangenmensch sagte in Widget Layout und das Wort Expanding:

    @titan99_ sagte in Widget Layout und das Wort Expanding:

    Dass z.B. das native windows widget color-dialog-box (z.B. in der Visual Studio IDE unter dem Menu Tools -> Options... -> Environment -> Fonts and Colors -> Custom... aufrufbar) keinen Alpha-Kanal kennt, finde ich nicht so gut, dafür kann aber wxWidgets nichts.

    Hilft dir mit der "native" Variante natürlicht nicht weiter, aber der Generic Colour Dialog (wxGenericColourDialog) unterstützt den Alpha-Kanal 😉

    Mmh. Ich aber aber ein wxColourPickerCtrl der den color-Dialog aufruft.



  • @titan99_ Den wirst du dir wahrscheinlich selbst zusammen bauen müssen, aber da ja alles open source ist, könntest du wahrscheinlich das meiste von wxColourPickerCtrl übernehmen. Oder den templetisieren, damit man die Wahl hat, welchen Dialog man verwenden möchte und nicht alles doppelt hat 😉


Log in to reply