1st of August to 8th of August 2021
source link: https://sixtyfps.io/thisweek/2021-08-09.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
This week in SixtyFPS
1st of August to 8th of August 2021
Posted on August 9, 2021
SixtyFPS is a toolkit to efficiently develop fluid graphical user interfaces for any display: embedded devices and desktop applications. We support multiple programming languages, such as Rust, C++, and JavaScript.
Find more information at https://sixtyfps.io/ or go straight to github at https://github.com/sixtyfpsui/sixtyfps
SixtyFPS UI Library
- New Features
- Changes to the
.60
language - Documentation
A tutorial video was created and referenced in the documentation
Olivier made a video explaining how to get started with the
.60
language and how to embed the UI into C++ and Rust projects.- Link to the tutorial and license information in more places
Building the doc no longer need nightly rust ( 603c5d )
Rust 1.54 has the feature that allow us to include markdown files in the docs
- Online editor now lets you pick the widget style ( 23e3c6 )
- Rust client API
Provide
sixtyfps::Window
by reference in the Rust API ( 29f585 )This also removes Clone from the Window again, to avoid having to face the question: Does cloning a window duplicate it on the screen?
- C++ language bindings
- Fixes
Fix regression of two-way binding on default geometry related properties causing binding loop ( 38cf15 )
Commit 064c39 introduced the regression that if a two-way binding was set on a property that we'd also set a default geometry on, we'd end up applying that on the two-way binding, causing a binding loop.
set_binding_if_not_set needs to only set the binding if... there's really none yet.
Fixes #385
GL backend: Avoid run-time opengl errors with clipped zero width or height rectangles ( 25fac2 )
If a Rectangle has a border-radius and clipping, we use an FBO to render the children and then use femtovg's stencil clipping. If the Rectangle has a zero width or height, we would end up trying to create a texture with such dimensions, which produces run-time opengl errors.
We can detect this situation and avoid it early on. The same might happen for shadows.
Fixes #377
Fix disappearing elements with implicit width/height ( 064c39 )
When an element gets its width and height from the parent through an implicit 100% binding, those bindings were missing when an animation was pre-defined.
The provided new-type wrapper offers a function to deal with replacing just binding expression, instead of the expression *and* the animation.
Fixes #376
Fix cursor rendering with the Qt backend for non-ascii text ( 35541c )
We calculate the cursor position as byte offset in the utf-8 encoded string, while Qt expects an index in the utf-16 encoded QString. When those differ, the cursor is rendered at the wrong location.
Fixes #363
Fix the qt backend always rebuilding ( 58af76 )
(because of one of the previous changes which renamed the file)
Fix panic when one of the two branch of a condition is Type::Void ( fa770e )
Throw a proper compilation error. Note that there may be a bit too many error now when the two branch of a condition are not the same, but it's better than a panic
- Janitor work
Changes: 61af35, ff76aa, 9c1242, 4c7ecc, 04738a, 0d7391, 2606d6, 46edbd, ce976a, c74565, 24a202, 22c657, 60ef09, ce4727, 5cf23f, 3c9451, 04a2df, 57ed13, 89a93d, 601e93
Statistics
80 patches were committed by 4 authors.
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK