SixtyFPS v0.1.1 Release Notes
Release Date: 2021-08-19 // over 2 years ago-
🔄 Changed
- Fixed lookup scope when resolving model expression in
for
orif
constructs: theself
element now refers to the correct element instead of the root. - Rust: default to the native style if Qt is available
- Rust: deprecated
SharedVector::as_slice_mut()
. UseSharedVector::make_mut_slice()
instead. - The default non-native widget style is now the new "fluent" style.
- The internal normalization of identifiers is using
-
instead of_
, this is an internal change, but it can be seen in error messages. When listing properties the identifiers are preserved. For fields in structures they are normalized.- 👉 Show a compilation error when there are duplicated element ids.
- The
clip
property can now be any expression.
➕ Added
ComboBox
now has aselected
callback.Window
now has anicon
property.- Added
sixtyfps::Weak::upgrade_in_event_loop
in the Rust API. - Added
sixtyfps::Model::as_any()
in the Rust API. - Added conversion between
sixtyfps::Image
andsixtyfps::interpreter::Value
in the C++ API. - Properties of type
angle
andduration
are allowed in the public API. - Every element now has a
visible
property. Slider
now has achanged
callback.- Added
TabWidget
widget. - Rust:
sixtyfps::Image
can now be constructed from image data provided bysixtyfps::SharedPixelBuffer
. This enables integrating with other low-level software rendering or the the popular Rust image crate. - VSCode extension: added an option to specify command line arguments for the LSP.
🛠 Fixed
- GridLayout cells with colspan and rowspan respect properly their constraints.
- Don't panic when replacing programmatically text in a
TextInput
and then editing it. - The default height of elements in a ListView no longer defaults to 100%.
- Fixed support for
*=
and/=
on types with unit such as length. - Don't panic when using a self assignment operator on an invalid type - this produces a compiler error instead.
- Fixed angle conversion for values specified in radians, gradians and turns.
- Fixed SharedVector sometimes not allocating big enough storage.
- Fixed lookup scope when resolving model expression in