Fresnel - das kommende UI für Lazarus

Für alles, was in den übrigen Lazarusthemen keinen Platz, aber mit Lazarus zutun hat.
Antworten
Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6199
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Fresnel - das kommende UI für Lazarus

Beitrag von af0815 »

Bin mal darüber gestolpert, das sich bezüglich neuer UI, die die VCL hinter sich lassen kann, was tut.

https://gitlab.com/freepascal.org/lazarus/fresnel

Übersetzung by Google
Das Design der VCL und LCL ist alt. Im Browser haben sich UX und UI weit darüber hinaus entwickelt
was die LCL zu bieten hat, vor allem dank der Stärke von CSS. Die Wahl für CSS
als Mechanismus zur Gestaltung und Anzeige ist daher logisch.
Dies ermöglicht auch die Wiederverwendung bestehender CSS-Frameworks.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

Benutzeravatar
theo
Beiträge: 10468
Registriert: Mo 11. Sep 2006, 19:01

Re: Fresnel - das kommende UI für Lazarus

Beitrag von theo »

Sieht interessant aus, kompiliert mit 3.2.2. aber nicht, oder?

charlytango
Beiträge: 843
Registriert: Sa 12. Sep 2015, 12:10
OS, Lazarus, FPC: Laz stable (2.2.6, 3.x)
CPU-Target: Win 32/64, Linux64
Wohnort: Wien

Re: Freshnel - die kommende UI für Lazarus

Beitrag von charlytango »

und alles wird dann eine Webseite?
CSS ??
will ich das ?
Die Wahl für CSS als Mechanismus zur Gestaltung und Anzeige ist daher logisch.
Dies ermöglicht auch die Wiederverwendung bestehender CSS-Frameworks.
Logisch ist das für mich nicht, zwingend auch nicht. Webapplikationen haben wohl ihre sinnvollen Einsatzgebiete aber auch ihre Probleme die man sich gleich mit rein nimmt.
Ich benutze Lazarus eben weil ich diesen ganzen Webmist aus verschiedenen Gründen nicht mag.

Wenn ich meinen ganzen Lazarus-Code ohne weitere Arbeit durch Neukompilieren in eine funktionierende, unabhängige WebApp umwandeln könnte wäre es einen zweiten Gedanken wert.

grübel....

Warf
Beiträge: 1908
Registriert: Di 23. Sep 2014, 17:46
OS, Lazarus, FPC: Win10 | Linux
CPU-Target: x86_64

Re: Freshnel - die kommende UI für Lazarus

Beitrag von Warf »

CSS bedeutet nicht webapp. CSS wird in Desktopanwendungen schon seit Jahrzehnten in Desktopanwendungen. Es ist lediglich eine Art und Weise das Aussehen von Komponenten zu beschreiben. In JavaFX z.B. baust du keine Webapps, du erstellst deine Controls alle immernoch im Code mit sehr LCL ähnlichen Klassenstrukturen, lediglich das aussehen wird über CSS festgelegt. QT bietet zwar mit QML eine HTML artige möglichkeit GUIs zu bauen (was auch seine Vorteile hat, grade wenn es um dynamisches Layout geht sind Webtechnologien deutlich besser als klassiche GUI frameworks), aber QT Widgets sind auch sehr ähnlich von der Struktur zur LCL und können trozdem CSS benutzen zum Stylen

Und wer schonmal versucht hat eine Anwendung mit Dark und Light mode zu bauen, kennt das spielchen vermutlich zu gut, durch die Limitations von Win32 Anwendungen sieht Darkmode echt nicht gut aus, denn man hat einfach nicht genug kontrolle zum einfärben aller komponenten.
Wenn ich mit QT einen darkmode machen will geht das so:

Code: Alles auswählen

QApplication::setStyle(DarkTheme);
Natürlich könnte man auch was eigenes bauen und kein CSS benutzen, aber warum das Rad neu erfinden, wenn es was gibt was so gut funktioniert das es sich mittlerweile in praktisch jedem GUI framework durchgesetzt hat.
Zuletzt geändert von Warf am Di 17. Jan 2023, 19:01, insgesamt 1-mal geändert.

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6199
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: Freshnel - die kommende UI für Lazarus

Beitrag von af0815 »

charlytango hat geschrieben:
Di 17. Jan 2023, 17:04
und alles wird dann eine Webseite?
CSS ??
Wird dann so werden wie bei M$ das C#.
Es macht schon einen gewissen Sinn, wenn die UI vom Code getrennt wird. Ist nicht neu, aber man durchbricht damit auch die BS Schranke leichter. Und wenn du ein UI mit QT machst, bist du schon teilweise im Thema, nur wird es von der LCL gut versteckt.

Man darf nicht vergessen, die LCL stammt von der VCL ab und die ist doch seit 1995 in Verwendung. Also doch schon ein wenig angestaubt. Und vor allen, wenn die Features (äh genaugenommen Bugs) aus Delphi als Argument genommen werden ("won't fix, it's Delphi compatible"), so ist ein UI das nur für Lazarus/FPC genommen wird, ja nicht die schlechteste Idee. Vor allen das Dilemma mit GTK, QT etc. kann man damit leichter erschlagen.

Und alles wird eine Website - nein - es werden nur die Renderer verwendet, die sowieso vorhanden sind. Und dort kann man viele Funktionen nativ in die GPU auslagern. Also ist die Idee einmal positiv zu sehen. Und zur Website wird etwas, wenn man es aus dem Internet läd. Rendern ist gebräuchlicher als man glaubt, nur wird oft der Begriff nicht so gesehen oder anders verkauft.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

ArchChem
Beiträge: 82
Registriert: Mo 11. Jul 2022, 10:41

Re: Freshnel - die kommende UI für Lazarus

Beitrag von ArchChem »

Klingt sehr gut! Gibt es irgendwelche Beispiel-Screenshots oder so?

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6199
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: Freshnel - die kommende UI für Lazarus

Beitrag von af0815 »

ArchChem hat geschrieben:
Di 17. Jan 2023, 20:55
Klingt sehr gut! Gibt es irgendwelche Beispiel-Screenshots oder so?
Brrrr langsam mit den jungen Pferden :-) Schau dir mal die History des Repositories an, das ist pre-pre-pre Alpha.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

Benutzeravatar
theo
Beiträge: 10468
Registriert: Mo 11. Sep 2006, 19:01

Re: Freshnel - die kommende UI für Lazarus

Beitrag von theo »

ArchChem hat geschrieben:
Di 17. Jan 2023, 20:55
Klingt sehr gut! Gibt es irgendwelche Beispiel-Screenshots oder so?
Ich habe mal einen gemacht.
Wie af0815 sagt, das sieht noch nicht nach viel aus. :wink:

fresnel1.png
fresnel1.png (93.08 KiB) 1805 mal betrachtet

charlytango
Beiträge: 843
Registriert: Sa 12. Sep 2015, 12:10
OS, Lazarus, FPC: Laz stable (2.2.6, 3.x)
CPU-Target: Win 32/64, Linux64
Wohnort: Wien

Re: Fresnel - das kommende UI für Lazarus

Beitrag von charlytango »

Also... ich weiß schon warum ich mich hier im Forum gut aufgehoben fühle.

SO (danke an @af0815, @Warf, @Theo) erklärt, sieht für mich die Welt gleich wieder ganz anders aus.
Delphi-Zöpfe bzw Bremsblöcke abzuschneiden und dann noch besser mit anderen OS zu arbeiten, Theming und Layout zu verbessern, Trennung von UI und Code.
Da bin ich wieder mit kindlicher Begeisterung dabei. Dabei hoffe ich dass ich mir den Rechner nicht wieder mit .NET a la Delphi zukleistern muss. (einer der Gründe warum ich von Delphi weg bin) . Aber vielleicht liege ich auch hier nicht ganz richtig.

Ich plädiere dafür die Beiträge von af0815, Warf und Theo mit in die Gitlab-Beschreibung zu integrieren um so einfach gestrickte Typen wie mich (denen es auch am nötigen Hintergrundwissen mangelt) mitzunehmen.
Eine tolle Funktionalität zu haben ist nur ein kleiner Teil .... darüber (richtig) zu gackern ein ganz anderer. (siehe Hühnerei :wink: )

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6199
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: Fresnel - das kommende UI für Lazarus

Beitrag von af0815 »

charlytango hat geschrieben:
Mi 18. Jan 2023, 08:36
Ich plädiere dafür die Beiträge von af0815, Warf und Theo mit in die Gitlab-Beschreibung zu integrieren um so einfach gestrickte Typen wie mich (denen es auch am nötigen Hintergrundwissen mangelt) mitzunehmen.
Nochmals, das ist pre-pre-pre Alpha, ich bin durch Zufall drübergestolpert. Genaugenommen weil ich bei den Begriff Fresnel auf den falschen Dampfer gekommen bin. Ich habe das zuerst in der Optik verortet gehabt (Fresnel-Linsen) und mal kurz nachgeschaut und siehe da, da ist was im entstehen. Das wollte ich euch nicht vorenthalten. Auch auf der Seite der Lazarus foundation steht nichts darüber. Vielleicht noch Top-Secret :-)

Edit: Namen richtig gestellt
Zuletzt geändert von af0815 am Mi 18. Jan 2023, 10:42, insgesamt 1-mal geändert.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

Benutzeravatar
theo
Beiträge: 10468
Registriert: Mo 11. Sep 2006, 19:01

Re: Fresnel - das kommende UI für Lazarus

Beitrag von theo »

@af0815: Der Herr hiess Fresnel, ohne h.
Habe mal den Thread Titel korrigiert, für die spätere Suche. :wink:

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6199
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: Fresnel - das kommende UI für Lazarus

Beitrag von af0815 »

Danke, ist klar, so frisch ist der nicht mehr :lol:
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

Benutzeravatar
kupferstecher
Beiträge: 418
Registriert: Do 17. Nov 2016, 11:52

Re: Fresnel - das kommende UI für Lazarus

Beitrag von kupferstecher »

So wie es aussieht also sowas wie fpGUI oder mseGUI, ein GUI-Framework ohne native Elemente. Nur diesmal offiziell vom Lazarus-Team.

Was ich davon halten soll weiß ich noch nicht. Es besteht mittelfristig die Gefahr, dass dann die LCL mit ihrer nativen Unterstützung (dem Lazarus-Alleinstellungsmerkmal) einschläft bzw. fallen gelassen wird. Dafür könnte das für mobile Targets einen neuen Schub geben.

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6199
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: Fresnel - das kommende UI für Lazarus

Beitrag von af0815 »

kupferstecher hat geschrieben:
Mi 18. Jan 2023, 13:31
Was ich davon halten soll weiß ich noch nicht. Es besteht mittelfristig die Gefahr, dass dann die LCL mit ihrer nativen Unterstützung (dem Lazarus-Alleinstellungsmerkmal) einschläft bzw. fallen gelassen wird.
Die Frage ist was man als LCL sieht, So wie ich es sehe wird es ein Ersatz der keinen Verknüpfung zur LCL hat, aber umgekehrt sagt das das die LCL das ganze verwenden kann. Aus Sicht der LCL könnte das wie ein weiters Widgetset aussehen. Wenn man sowas angeht, dann macht das sehr wohl einen Sinn nicht auf die LCL aufzubauen, eher dafür doppelten Code in kauf zu nehmen. Damit ist die Plattform dann flexibler und braucht keine 'alten Features' mit zu schleppen.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

Benutzeravatar
theo
Beiträge: 10468
Registriert: Mo 11. Sep 2006, 19:01

Re: Fresnel - das kommende UI für Lazarus

Beitrag von theo »

Da hat sich wieder was getan.
Man kann jetzt inline CSS bearbeiten.

fresnel3.png
fresnel3.png (194.46 KiB) 1250 mal betrachtet

Antworten