Ian McFarlane
1de7b1512c
Expose clipboard_text accessors to C++ ( #3265 )
2023-08-28 12:26:40 +02:00
Olivier Goffart
d23ba885ca
C++: add WindowAdaptor::update_window_properties
2023-08-25 13:58:55 +02:00
Olivier Goffart
7904493e1c
C++: dispatch close request and activation change
2023-08-24 17:27:04 +02:00
Olivier Goffart
725a259e3a
C++: move the window related stuff in its own header ( #3339 )
...
slint.h starts to be quite big, and lots of it is because of Window, so
move Window to its own header
2023-08-24 15:51:50 +02:00
Olivier Goffart
541e7137c6
Backends: don't resize the WindowItem in set_visible
...
We already query the size right after the call to set_visible in the
WindowInner::show()
2023-08-24 13:15:28 +02:00
Olivier Goffart
f611091470
C++ docs: don't use backtick for Class or method name
...
because otherwise doxygen don't make links
(also implements the `renderer()` funciton in the doc example)
2023-08-22 11:29:57 +02:00
Olivier Goffart
3e46680c16
C++: improve slint::platform docs ( #3319 )
2023-08-22 11:24:30 +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
Olivier Goffart
1288bb6848
C++ Rgb565Pixel: Invert red and blue
2023-08-15 14:45:33 +02:00
darknight
37488f015d
Refactoring: define macro rules to group builtin structs
...
apply new macro for struct declaration, type register,
doc generation, cpp header generation, struct-value conversion.
2023-08-03 11:01:18 +02:00
Simon Hausmann
0c9199b17f
Add support for flipping borrowed OpenGL textures vertically ( #3205 )
...
Closes #2986
Co-authored-by: Olivier Goffart <olivier.goffart@slint-ui.com>
2023-08-02 13:11:13 +02:00
Olivier Goffart
0a8f9c585a
C++: expose special key codes constants
2023-07-31 15:11:57 +02:00
Simon Hausmann
d681864a3b
c++: Fix missing platform API Docs
...
- Fix pre-processor include search path setup so that pre-processing
slint.h finds slint_internal.h and (most importantly)
slint_generated_public.h for the feature defines.
- Add missing documentation that caused doxygen errors.
2023-07-31 11:45:01 +02:00
Simon Hausmann
8c289fe3cc
Fix doxygen formatting for slint::interpreter::Value::operator==
2023-07-31 11:45:01 +02:00
Olivier Goffart
f3b2b5d457
Improve documentation of AbstractRenderer
2023-07-28 12:18:34 +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
3a807e46c1
Renderer feature refactor
2023-07-27 19:11:24 +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
Tobias Hunger
d47d52bf52
ItemVTable::init(...): Take an ItemRc so that the itan can know where in the Item Tree it is located
2023-07-27 12:04:16 +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
Olivier Goffart
51d8a15164
C++ platform: make the max_buffer_age an enum
...
Copying the Rust enum instead of using cbindgen because we would need to
create a new header just for it for bublic types generated in the
platform namespace. I've also put it in the SoftwareRenderer class since
the equivalent enum is in the software_renderer module in Rust.
2023-07-26 11:28:45 +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
Simon Hausmann
68a255b1d2
C++: Make the SkiaRenderer constructor explicit
...
As discussed in API review
2023-07-25 19:16:44 +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
Olivier Goffart
3137bfe775
C++ Rgb565Pixel
2023-07-25 15:24:59 +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
Simon Hausmann
5c0d88b71e
C++: Rename SoftwareRenderer::render_rgb565 to just render() and overload the Rgb8Pixel variant
2023-07-24 14:25:49 +02:00
Florian Blasius
8ce2620aaa
Added cpp ReverseModel ( #3132 )
2023-07-24 11:32:45 +02:00
Olivier Goffart
3a420d5769
C++ platform: return the updated region from the render function
2023-07-24 09:44:36 +02:00
Simon Hausmann
cc36915241
Add RGB565 rendering function to the C++ software renderer
2023-07-21 09:16:20 +02:00
Simon Hausmann
917cecff85
Add support for embedding bitmap fonts in C++
2023-07-20 16:20:51 +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
Olivier Goffart
a1bf77383f
C++: Add a mechanism to #define features that are enabled ( #3103 )
2023-07-18 11:49:00 +02:00
Simon Hausmann
a8c07d64c5
doc: Fix grammar of slint_interpreter::ComponentDefinition::properties() C++ docs
2023-07-17 15:52:42 +02:00
Olivier Goffart
3fabff9a0c
C++ Platform: allow to override the duration_since_start
2023-07-14 16:12:12 +02:00
Simon Hausmann
3565023a15
Improve error handling in C++ Skia Renderer API
...
- Don't try to create a GLX context when we only have an XCB window handle,
XLib is required for that.
- Make it possible to create a NativeWindowHandle from Xlib data types.
Fixes #2978
2023-07-14 15:33:03 +02:00
Simon Hausmann
59d869cb84
Fix missing invocation of init() on Items with C++
...
In Rust, register_component in the run-time library is called unconditionally and
invokes init(). The window adapter is an optional
parameter.
In C++, we'd call register_component only if we had a window adapter, which meant
that we're missing init calls().
Amends cd9994306e
2023-07-14 13:09:45 +02:00
Simon Hausmann
d8fe052cde
Fix bad red markup in C++ slint::Model docs
...
Revert da95051
and fix the link in the substitution instead.
Fixes #2992
2023-07-10 10:13:42 +02:00
Aurindam Jana
5a4a7fee63
Update royalty free license to 1.1 ( #2994 )
2023-07-10 10:12:11 +02:00