GPUI ist eine GUI-Library in und für Rust.
GPUI wurde speziell für den GUI-Texteditor Zed entwickelt und ist mit diesem derzeit noch eng verzahnt:
GPUIs Entwicklung ist noch jung, so dass es zu Brüchen kommen kann. Dokumentation ist nur spärlich vorhanden:
GPUI-Projekte können mit create-gpui-app
erzeugt werden.
Mit Application
wird die
Applikation konfiguriert, um sie mit Application::run()
schließlich zu starten.
run()
erwartet eine Closure mit dem Argument &mut App
. Die Closure wird aufgerufen, sobald die Applikation
gestartet wurde.
Element
: TODORender
: Wird für "Views" implementiert. Views sind Entity
s, die sich graphisch darstellen lassen, mittels der
render()
Methode.Window
: Der State eines Fensters.Entity
: Reference-counted Smart Pointer auf einen Struct mit Daten der Applikation.
Global
: Marker Trait für Datentypen, die im Global State gespeichert werden sollen.
Entity
vs Global
:
Entity
kann Events emittierenEntity
kann in einem Global
gehalten werdenApp
:
der vollständige State einer Applikation.AsyncApp
: TODOContext<T>
: TODOAsyncWindowContext
: TODOTestAppContext
: TODOSharedString
: TODOSharedUri
: TODOKey Dispatch: TODO
Coop, Drakkar VFX, Gpui Based Calculator, GPUI Calculator, GPUI List examples, GPUI TODO App, Helix gpui, Hummingbird, Kagi, Kallax, Longbridge Pro, Loungy, Memory Match Game, Ngurra, PGUI, Solitaire vibe coding session, Zed