FloVanGH
6ebce7e5f4
cpp: added to_lowercase and to_uppercase to SharedString ( #6869 )
...
* cpp: added to_lowercase and to_uppercase to SharedString
* Update api/cpp/include/slint_string.h
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* Update api/cpp/include/slint_string.h
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* Update api/cpp/include/slint_string.h
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* Update api/cpp/include/slint_string.h
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* Update internal/core/string.rs
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* Update internal/core/string.rs
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* Update internal/core/string.rs
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* Update internal/core/string.rs
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* code review feedback
* Update api/cpp/tests/datastructures.cpp
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* code review feedback
* Update api/cpp/include/slint_string.h
Co-authored-by: Simon Hausmann <simon.hausmann@slint.dev>
* Update api/cpp/include/slint_string.h
Co-authored-by: Simon Hausmann <simon.hausmann@slint.dev>
---------
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Simon Hausmann <simon.hausmann@slint.dev>
2024-11-21 18:53:02 +00:00
U. Bruhin
40811193aa
C++: Add size() method to SharedString ( #6417 )
...
The length is an important property of a string and should be available
as a getter. The new size() method is consistent with std::string.
ChangeLog: [C++] Added `SharedString::size()`
2024-10-01 14:51:56 +02:00
Simon Hausmann
7db5024c52
Generate bindings of Image::to_rgb8/to_rgba8/to_rgba8_premultiplied f… ( #6405 )
...
ChangeLog: [C++] Add `Image::to_rgb8/to_rgba8/to_rgba8_premultiplied` pixel buffer accessors.
Fixes #6399
2024-10-01 10:55:11 +02:00
Enyium
9894eca229
Fixed kebab casing of previous appwindow.slint
.
2024-09-20 10:26:49 +02:00
Simon Hausmann
9bdade0105
Compile the multiple-includes test with a header-only build of appwindow.slint
2024-08-20 15:53:24 +02:00
Olivier Goffart
42d7661ec6
C++: make the PhysicalRegion::rectangles non-overlapping
2024-07-10 10:58:27 +02:00
Simon Hausmann
5247b0afae
Add ElementHandle::accessible_role() to the C++ API ( #5388 )
2024-06-13 06:32:25 +02:00
Simon Hausmann
37b63e4bd4
Add public API in the interpreter (Rust/C++) to obtain the list of functions
2024-06-05 14:06:10 -07:00
Simon Hausmann
6f2a6c3f09
CMake: Add support for LIBRARY_PATHS to slint_target_sources
...
This makes it possible to use component libraries with C++.
2024-06-05 11:07:12 -07:00
Simon Hausmann
622991a627
Fix ElementHandle::find_by_element_id docs
...
Describe what an id is and provide an example.
2024-06-05 01:29:58 -07: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
Olivier Goffart
7c3f8683b7
C++: Move internal testing function to the internal namespace
...
Remove send_keyboard_char as it doesn't appear to be used
(while send_keyboard_string_sequence is used in a single test)
2024-04-23 11:19:14 +02:00
Olivier Goffart
5a4713aa17
C++: add #pragma once
to generated file
2024-04-22 13:06:05 +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
Francesco Cusolito
e8ce0cb5e5
C++: FilterModel with deferred filtering ( #4984 )
...
Avoids to invoke filtering function until FilterModel is completely constructed, deferring it to first model usage.
2024-04-02 09:03:07 +02:00
Olivier Goffart
fe38a1e97d
C++: Fix and test the reset
function on model adapter
...
They were causing infinite recursion because they were calling
themselves.
Also add the missing MapModel::reset
Yet another motivation for https://github.com/slint-ui/slint/issues/3888
as the code was mixing the `reset` function on the adapter meaning
"please re-apply the adapter filter/map/sort function" with the `reset`
function on Model which means "the subclass has changed and we should
notify listeners".
Fixes #4968
2024-03-28 11:11:57 +01:00
Simon Hausmann
fa2cf8c28a
C++ Interpreter: Add support for setting the translation domain
...
This maps straight to the Rust API.
2024-02-22 16:58:38 +01:00
Simon Hausmann
45f182e666
C++: Permit passing a value to VectorModel::set_vector by value ( #4491 )
...
The previous signature would not allow that, but we should allow it for consistency with the constructor.
2024-01-31 16:09:06 +01:00
Simon Hausmann
8e0af0bf63
C++: Add convenience functions to clear and replace the VectorModel's vector
...
This was requested by a customer recently and it seems rather straight-forward to implement and offer. `clear()` mirrors `std::vector::clear()` and `set_vector` mirrors the `set_vec` we have in Rust.
2024-01-19 16:58:20 +01:00
Olivier Goffart
9111946a82
Introduce slint::run_event_loop_until_quit
...
Closes #1499
2024-01-11 13:52:02 +01:00
Simon Hausmann
75f24163ed
C++: Added ComponentInstance::definition()
getter to retrieve the ComponentDefinition
for an instance
...
Fixes #4087
2023-12-14 07:43:29 +01:00
Tobias Hunger
471bef422d
core: Do not report singleshot timers set up via start()
as running
...
... after firing once. `running()` will now return `true` for such timers
till just before the callback is run and `false` after that point.
Add test a new test and update existing C++ tests to make them comply
with the changed behavior.
2023-11-30 20:14:45 +01:00
Simon Hausmann
42d575262e
Fix SharedString::end() throwing an exception when MSVC iterator debugging is enabled ( #4017 )
...
Don't dereference end() of a string_view.
Co-authored-by: Olivier Goffart <olivier.goffart@slint.dev>
2023-11-27 18:11:55 +01:00
Olivier Goffart
14f7fe4ba2
cmake: add flags to only build the compiler
...
... and to use an external compiler
For example, this is how one only build the compiler:
```
cmake .. -DSLINT_BUILD_RUNTIME=OFF -DCMAKE_INSTALL_PREFIX=/tmp/slint_compiler
make install
```
And this only build the runtime
```
cmake .. -DSLINT_FEATURE_COMPILER=OFF -DCMAKE_INSTALL_PREFIX=/tmp/install_runtime
make install
```
And then this can be used in a project like so:
```
cmake .. -DCMAKE_PREFIX_PATH=/tmp/install_runtime/ -DSLINT_COMPILER=/tmp/install_compiler/bin/slint-compiler
```
2023-09-15 14:42:52 +02:00
Olivier Goffart
932db7ac38
C++: make Platform::duration_since_start non-const and pure
...
When SLINT_FEATURE_FREESTANDING is set, it must be re-implemented
otherwise the time doesn't pass
2023-08-30 14:59:41 +02:00
Olivier Goffart
146ed520e8
C++: rename SLINT_FEATURE_STD in SLINT_FEATURE_FREESTANDING with the opposite meaning
2023-08-21 16:52:30 +02:00
Simon Hausmann
96d7bb132c
reuse: remove glob for markdown files
...
Instead, place the copyright and license right into the source.
To satisfy reuse, this also removes the unnecessary MIT.txt
symlinks.
2023-08-17 08:55:28 +02:00
Olivier Goffart
a34074db11
Move the C++ specific example to the examples/cpp directory
...
The platform ones are not experimental so move out of tests
2023-07-31 12:58:38 +02:00
Olivier Goffart
fd7fc5ab9b
C++, remove the experimental flag
...
The platform namespace is now always enabled.
2023-07-28 10:36:08 +02:00
Olivier Goffart
c3bec089fe
C++: Rename slint_platform.h -> slint-platform.h
2023-07-27 15:42:11 +02:00
Olivier Goffart
643512f60a
C++: rename slint_intepreter.h to slint-interpreter.h
2023-07-27 15:42:11 +02:00
Olivier Goffart
116648ffcf
C++ Platform: remove the experimental namespace
2023-07-27 13:22:22 +02:00
Olivier Goffart
3054ecfb71
C++ platform API: move the dispatch_* function on the Window like in rust
2023-07-26 16:03:05 +02:00
Simon Hausmann
af97435463
Replace show()/hide() in the WindowAdapter with set_visible(bool)
...
This makes for a smaller interface.
2023-07-26 13:53:45 +02:00
Simon Hausmann
835510c7f6
C++ platform API: Remove const qualified from request_redraw()
2023-07-26 13:25:36 +02:00
Simon Hausmann
f15bc6147e
Simplify FemtoVG and Skia renderer APIs: remove resize()
...
We can convey the new physical window size from the run-time
through the private renderer API
when a window resize event is dispatched.
2023-07-25 19:33:26 +02:00
Olivier Goffart
69a11f7dbc
C++: Platform::register_platform -> platform::set_platform
2023-07-25 17:38:20 +02:00
Olivier Goffart
42bb2bf705
C++: some changes to the Platform API
2023-07-25 17:38:20 +02:00
Simon Hausmann
7d136b6568
Remove the window parameter from the render() function of all the renderers
...
This makes for a slimmer API and instead we can create the renderer <-> window association
behind the scenes ourselves,
in set_component.
2023-07-25 17:28:08 +02:00
Simon Hausmann
507428b03e
Simplify FemtoVG and Skia renderer API ( #3153 )
...
Fold show() into the first time render() is invoked,
and hide() into the Drop implementation.
2023-07-25 17:17:40 +02:00
Olivier Goffart
2a56e25788
C++: rename PlatformEvent to Platform::Task
2023-07-25 16:15:35 +02:00
Simon Hausmann
7893ec3fd4
C++: Improve type-safety of NativeWindowHandle API on macOS
...
Replace void* with forward-declared NSView/NSWindow in NativeWindowHandle::from_appkit
2023-07-25 15:19:56 +02:00
Olivier Goffart
3a2359f107
C++ Pointer dispatch API
2023-07-25 14:03:40 +02:00
Florian Blasius
8ce2620aaa
Added cpp ReverseModel ( #3132 )
2023-07-24 11:32:45 +02:00
Olivier Goffart
81bb6e2c70
C++ platform: duration_until_next_timer_update and change return type of duration_since_start
2023-07-20 10:58:33 +02:00
Olivier Goffart
de532d372a
C++ experimental platform event loop
2023-07-20 10:26:09 +02:00
Olivier Goffart
7cffad2c3f
C++: add a STD feature enabled by default
2023-07-18 12:44:20 +02:00
Simon Hausmann
06cb0e8703
Make in (theoretically) possible to run the qt platform example against a wayland compositor
...
This compiles but fails at run-time with
xdg_surface@24: error 3: xdg_surface has never been configured
2023-07-14 15:33:03 +02:00
Simon Hausmann
648680da6e
Fix qt platform example on X11
...
The "screen" native resource returns a xcb_screen_t pointer while the raw_window_handle's
XcbDisplayHandle::screen field is the screen number.
2023-07-14 15:33:03 +02:00