Commit graph

19 commits

Author SHA1 Message Date
Simon Hausmann
9001966dc9 Python: Fix mypy also on the Slint module implementation 2025-02-16 08:58:47 +00:00
Simon Hausmann
607d70b3fa Python: run mypy on the tests 2025-02-16 08:58:47 +00:00
Simon Hausmann
c111098e49 Python: Add more type stubs to the internal Rust API 2025-02-16 08:58:47 +00:00
Simon Hausmann
94c655731f
Add Python typings for Rust declared types (#7575)
This comes with a bump of the Python version to 3.11
due to the need for typing.Self.
2025-02-09 16:06:34 +01:00
Simon Hausmann
1888e58735 Add API to set the XDG app id
ChangeLog: Added function to set the XDG app id on Wayland/X11. This needs to be added with respective function names in the language sections.

Fixes #1332
2024-11-22 11:24:06 +01:00
Simon Hausmann
e3aab79fdb Python: Improve Struct mapping
When reading, create the local equivalent of a dataclass, so that access
doesn't require ["foo"] key syntax.

Also implement the copy protocol, so that we can safely make clones of
the references returned by the ListModel.
2024-07-11 22:08:10 +02:00
Simon Hausmann
0c7d2062a5 Python: Add support for exporting multiple components 2024-07-02 10:52:22 +02:00
Aurindam Jana
3523e86359
Simplify commercial license (#3063)
Base the commercial license on the Royalty-free license adding clauses pertaining to the fees.
2024-05-31 14:06:17 +02:00
Aurindam Jana
9a3aa265d5
Update Royalty-free license (#5257)
Add clarification that Application may not expose Slint APIs.
2024-05-31 10:53:19 +02:00
Simon Hausmann
6408eaf0ad Python: build against abi3 to support multiple Python versions
- Upgrade to pyo3 0.21 to enable timedelta for chrono
- Enable abi3 for multi-python support
2024-04-18 09:34:43 +02:00
Aurindam Jana
0cfeec1a31
Update Slint Community License (#4994)
Updated the version from 1.1 to 1.2 
Renamed the header to "Slint Royalty-free Desktop, Mobile, and Web Applications License"
Added definition of "Mobile Application" and grant of right
Moved "Limitations" to 3rd section and "License Conditions - Attributions" to 2nd section
Added flexibility to choose between showing "MadeWithSlint" as a dialog/splash screen or on a public webpage
Moved the para on copyright notices to section under "Limitations"
2024-04-15 15:18:55 +02:00
Simon Hausmann
2f313f84ec Python: Initial support for implementing models in Python
This provides a Model base class in Python and sub-classes of that
can be set as data models in slint.

The ListModel is provided as basic sub-class operating on a list() and
allowing mutation and notifying the view on the Slint side.

Similarly, an array declared in Slint is exposed as an object to Python
that looks like a Model.

Both support the sequence protocol.

Fixes #4135
2024-03-05 15:45:52 +01:00
Simon Hausmann
80fda11e0f Python: Add bindings for Brush and Color
cc #4202
2024-03-01 17:17:44 +01:00
Simon Hausmann
93efd74e24 Add support for mapping image properties
This exposes a slint.Image class, which has a load_from_path class
method as well as size/width/height properties.

cc #4202
2024-02-23 16:05:07 +01:00
Simon Hausmann
33a1d07226 Add support for timers and run/quit_event_loop 2023-12-21 12:57:35 +01:00
Simon Hausmann
644ebbb2aa Split value conversion into a separate module 2023-12-21 12:57:35 +01:00
Simon Hausmann
10d6aa199c Split errors out into a separate module 2023-12-21 12:57:35 +01:00
Simon Hausmann
73024beb98 Begin wrapping the component compiler 2023-12-21 12:57:35 +01:00
Simon Hausmann
a2054e7ebd Add boilerplate 2023-12-21 12:57:35 +01:00