Back to Slint

Slint's 7GUIs implementation

examples/7guis/README.md

1.16.13.7 KB
Original Source

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.

.slint code in web editor

Temperature Converter

Converts Celsius to Fahrenheit and vice versa.

.slint code in web editor

Flight Booker

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

.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.

.slint code in web editor

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.

.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.

.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.

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