Skip to content

Latest commit

 

History

History
 
 

7guis

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:

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

Screenshot of the 7GUIs Counter

.slint code in web editor

Converts Celsius to Fahrenheit and vice versa.

Screenshot of the 7GUIs Temperature Converter

.slint code in web editor

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

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

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

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

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