Simon Hausmann
c16253d29f
Use Property<LogicalLength> instead of Property<Coord>
...
This removes the special code for the generated property getters and
ensures type safety in the run-time library for property value setting.
In the Rust generated code we continue to do arithmetic on the scalar
values, that means we immediately extract the scalar, do arithmetic and
rely on the compiler to only allow compatible units.
Danger zone alert: In the interpreter Value::Number can now be converted
to LogicalLength as-is.
2022-10-24 12:49:37 +02:00
Simon Hausmann
c11b4305c1
Change Item::geometry() to return a LogicalRect
2022-10-13 17:02:18 +02:00
Simon Hausmann
c40b82c509
Add ItemRc to focus_event and key_event
...
This will be needed to compute the cursor rectangle in window coordinates, by
traversal of the parent chain.
2022-10-07 11:16:36 +02:00
Simon Hausmann
7e5de3d5d3
Remove use of euclid types and tags for logical/physical position and size in the public API
...
Instead provide our own types.
2022-09-02 11:05:53 +02:00
Tobias Hunger
1e6ffeaa0f
API cleanup: Rename PlatformWindow to WindowAdapter
2022-08-29 16:53:47 +02:00
Simon Hausmann
1d436778c1
Remove the use of the PlatformWindowRc alias again
...
and use Rc<dyn PlatformWindow> instead. The alias has to stay with the ffi
functions though and the item vtable definitions,
because we don't have an Rc<> template in C++.
2022-08-19 15:07:27 +02:00
Simon Hausmann
fd026a3991
Change itemtable to use &PlatformWindowRc instead of &WindowInner
...
The former is cbindgen friendly, the latter is entirely Rust internal.
2022-08-19 15:07:27 +02:00
Simon Hausmann
b0b8d8d899
Change the Item vtable to take a &WindowInner instead of &WindowRc
...
... in preparation for storing an Rc<dyn PlatformWindow> in the component.
This won't compile with C++ yet.
2022-08-19 15:07:27 +02:00
Olivier Goffart
a62a5cbd19
Rename MouseEvent pos
to position
2022-08-17 18:28:12 +02:00
Olivier Goffart
61739dcb81
Remove the Mouse
prefix from enum value of the MouseEvent
enum
2022-08-17 18:28:12 +02:00
Olivier Goffart
ac4f3e97ad
Change slint enum values to be PascalCase in rust
...
... while still being kebab-case in .slint
Some enums might become public API and we want to have them as
PascalCase to respect the rust conventions
2022-07-22 12:23:52 +02:00
Olivier Goffart
0c19751a1e
Qt: do not wrap QPainter directly, but use a unique_ptr instead
...
Because QPainter can't be relocated.
Fixes #1230
2022-05-05 13:50:26 +02:00
Tobias Hunger
6795d3ee00
Introduce a FocusEventResult enum ( #975 )
2022-02-21 17:43:41 +01:00
Tobias Hunger
4230ac2572
Update copyright information to reflect name change
...
Also run resue over the codebase and fix complaints from that tool.
2022-02-09 10:27:47 +01:00
Tobias Hunger
de4e195280
Rename internal crates and add a README.md to them
...
The README.md contains the warning that used to be in lib.rs.
Add README.md files to all internal crates
... pointing to the official public crate to use instead.
Rename internal crates
fixup: README files
fixup rename
2022-02-07 13:12:48 +01:00
Olivier Goffart
c00884d5a2
Rename SixtyFPSElement
2022-02-02 14:29:30 +01:00
Simon Hausmann
7d297da2fc
Rename the sixtyfps C++ namespaces
2022-02-02 12:11:27 +01:00
Simon Hausmann
ad0c020aa4
Rename the sixtyfps-corelib crate
2022-02-01 18:04:30 +01:00
Tobias Hunger
a3b86690ff
[reorg]: Move the rendering backends into internal
2022-01-31 16:00:50 +01:00