Infoskjerm for Trondheimkontoret, skrive i Rust, med Slint.
-
Installer Rust Analyzer for VSCode*
-
Installer Slint plugin for VSCode *
-
cargo run
bygger og starter applikasjonen*Rust Analyzer og Slint plugin er også støtta av andre editors.
Kildekoden ligg i src-mappa. main.rs
inneheld entrypoint for applikasjonen. Undermapper med ein mod.rs-fil
er moduler for ulik funksjonalitet.
GUIet er laga med DSL'en Slint, og ligg i ui-mappa. mainwindow.slint eksponerar in properties
som blir tilgjengelige fra Rust-koden med setters. F.eks:
in property <string> month: "jan";
eksponerar set_month(string: SharedString)
, og har "jan" som defaultverdi.
SharedString er ein spesiell type String brukt av Slint, og lagast ved å kalle .into()
på &str
og Strings
. Strengar er litt rare i Rust. Sjå gjerne denne.
GUI-koden eksponerar også typar, som Forecast
-structen i weatherwidget.slint. Denne blir også tilgjengelig i Rust-koden gjennom ui
-modulen.
- XKCD
- Vær
- Klokke og dato
- Matsporing via Wolt
- Busstider
- Aktivitetskalender
- Møteromsstatus
- Matsporing fra Foodora
- AI assistent: For *GPT med data og kontekst, dato, kalender, vær etc etc og be den gi råd for morgendagen eller lignende.
- Bursdager 🎉
- Dagens visdomsord/quote
- Nyhende / overskrifter
- Countdown til neste seminar
- Andre comics?
- Koderydding
- Feilhåndtering
- Fikse minnelekkasje?
graphql-client introspect-schema "https://api.entur.io/journey-planner/v3/graphql" --output "src/resources/journey-planner_schema.json"