slint/examples/7guis
2022-09-06 13:00:22 +02:00
..
booker.rs move 7guis examples back to one folder 2022-03-17 08:43:49 +01:00
booker.slint move 7guis examples back to one folder 2022-03-17 08:43:49 +01:00
Cargo.toml Bump version number to 0.3.0 2022-09-06 13:00:22 +02:00
cells.rs Adjust to feedback from code review 2022-05-13 13:00:01 +02:00
cells.slint Adjust to feedback from code review 2022-05-13 13:00:01 +02:00
circledraw.rs implement undo redo for circledraw 2022-05-06 09:47:30 +02:00
circledraw.slint implement undo redo for circledraw 2022-05-06 09:47:30 +02:00
counter.slint move 7guis examples back to one folder 2022-03-17 08:43:49 +01:00
crud.rs Implement std::fmt::Write for SharedString and add a format! macro 2022-08-29 17:25:24 +02:00
crud.slint alignment improvements for 7guis examples 2022-05-13 13:34:08 +02:00
README.md Add 7GUIs Readme (#1266) 2022-05-19 14:27:52 +02:00
tempconv.slint alignment improvements for 7guis examples 2022-05-13 13:34:08 +02:00
timer.rs improve the 7guis timer example 2022-05-12 12:43:53 +02:00
timer.slint alignment improvements for 7guis examples 2022-05-13 13:34:08 +02:00

Slint's 7GUIs implementation

7GUIs is a "GUI Programming Benchmark". However rather than benchmarking performance, it offers 7 GUI related tasks that aim to make UI Toolkits comparable.

These 7 challenges have implementations for multiple frameworks already and the following are ours:

Counter

Just a Button that increases a value in a text field.

Screenshot of the 7GUIs Counter

.slint code in web editor

Temperature Converter

Converts Celsius to Fahrenheit and vice versa.

Screenshot of the 7GUIs Temperature Converter

.slint code in web editor

Flight Booker

Performs some validation checking on dates. Does not actually book flights.

Screenshot of the 7GUIs Flight Booker

.slint code in web editor (Note that the logic for date validation and date comparison is implemented in Rust.)

Timer

A simple timer where the duration is adjustable while running.

Screenshot of the 7GUIs Timer

.slint code in web editor (Note that the actual timer functionality is implemented in Rust.)

CRUD

Lets you create, read, update and delete names from a list as well as filter them by prefix. Our implementation makes use of MapModel and FilterModel to achieve this.

Screenshot of the 7GUIs CRUD

.slint code in web editor (Note that the changes to the data model and filtering is implemented in Rust.)

Circle Drawer

Draw some circles on a canvas and change their sizes. It has undo and redo capabilities.

Screenshot of the 7GUIs Circle Drawer

.slint code in web editor (Note that the undo-redo stack is implemented in Rust.)

Cells

Almost MS Excel. It uses nested models to create the table.

Screenshot of the 7GUIs Cells

.slint code in web editor (Note that the cell model, expression evaluation and dependency handling is implemented in Rust.)