Commit graph

737 commits

Author SHA1 Message Date
Simon Hausmann
dd6c931237 Hide sixtyfps::testing* from the C++ docs 2020-09-11 18:12:34 +02:00
Simon Hausmann
a3f917652a Exclude VOffset and VRefMut from the C++ docs 2020-09-11 18:11:56 +02:00
Simon Hausmann
831cf902fe C++: Add constructors to and from ARGBColor/Color 2020-09-11 18:08:37 +02:00
Simon Hausmann
520df89e2c Add the same (a)rgb_(uint8/float) functions in C++ Color as in Rust 2020-09-11 17:55:52 +02:00
Simon Hausmann
3c2172d043 Use new-style intra-crate rust-doc links instead of relying on .html links 2020-09-09 18:53:59 +02:00
Olivier Goffart
8761ca80a3 Add SharedArray::push and adjust a bit the API 2020-09-09 18:47:15 +02:00
Olivier Goffart
42aa91e3eb Support for signal with arguments in the interpreter 2020-09-09 11:27:58 +02:00
Simon Hausmann
8a70651038 Provide docs for C++ SharedString 2020-09-09 08:34:52 +02:00
Simon Hausmann
e87a650c46 Add SharedArray to the public Rust API 2020-09-08 22:54:58 +02:00
Simon Hausmann
25584317e8 Implement ARGBColor<T> for the C++ API
As discussed in the last API review.
2020-09-08 22:52:40 +02:00
Simon Hausmann
52b19606d1 Provide red/green/blue/alpha getters for Rust and C++ Color
And fix up the C++ class docs.
2020-09-08 22:32:15 +02:00
Simon Hausmann
09142beac4 Make C++'s Color consistent with Rust's Color
sixtyfps::Color shall have the same minimal API by providing from_argb_encoded and as_argb_encoded.
2020-09-08 22:19:58 +02:00
Simon Hausmann
02b3bce6dc Reformat sixtyfps_color.h 2020-09-08 22:13:17 +02:00
Simon Hausmann
19cce012a0 Add ARGBColor<T> to the color API
As discussed in the last API review, this replaces the as_rgba_f32/u8
"accessor" functions by returning a struct with named fields.
2020-09-08 22:11:23 +02:00
Olivier Goffart
a6504ee61b Start implementing some code that passes argument to functions and signals 2020-09-08 14:37:44 +02:00
Olivier Goffart
a192ffe283 Make the C++ Signal class templated on the arguments 2020-09-08 13:11:32 +02:00
Simon Hausmann
6f8018127a Fix standalone node api build
Right now the code calls print() on the diagnostics, so we do need the display-diagnostics feature of the compiler lib.
2020-09-07 20:40:06 +02:00
Olivier Goffart
9f026c820d Parse declaration of signal with arguments 2020-09-07 17:41:24 +02:00
Olivier Goffart
16f5cf42e3 Actually compute the layout of elements within a for loop 2020-09-07 14:04:14 +02:00
Olivier Goffart
3f45b545ff C++: Don't return model data by const value
Prevetn warning
2020-09-07 12:50:08 +02:00
Simon Hausmann
ccce46748f Remove trailing slash from docs symlink
Windows git seems to like that better
2020-09-07 11:22:55 +02:00
Olivier Goffart
72df23637d CMake: on windows need to add the IMPORTED_IMPLIB 2020-09-06 14:54:05 +02:00
Olivier Goffart
8465773b9b More fix for windows, make sure that slashes are escaped in the sixtyfps macro 2020-09-05 18:34:04 +02:00
Olivier Goffart
ae90a59513 Attempt to fix the window build by bringing a git version of neon 2020-09-05 17:26:09 +02:00
Simon Hausmann
49cf743a15 Fix wasm interpreter build 2020-09-04 21:53:17 +02:00
Simon Hausmann
ff9c118e07 Propagate warnings to the end of the compilation step and print them 2020-09-04 20:34:20 +02:00
Olivier Goffart
f6c8ea0f20 Make the Model/Repeater type safe in C++ 2020-09-04 19:02:56 +02:00
Olivier Goffart
4c07fbfb3d Fix destructor of SharedArray in C++
We should of course only free the memory if the refcount reaches 0
2020-09-04 16:21:47 +02:00
Olivier Goffart
f5aeb9ba60 Only the computation of the model needs to be done in the evaluation scope for it
Otherwise any change in any of the properties of the delegate will cause
the model to be reset.
2020-09-04 15:37:38 +02:00
Olivier Goffart
c8fa3354be Change the implementation of SharedArray so that it can destruct its contents 2020-09-04 15:37:38 +02:00
Simon Hausmann
6278a7168a Include the example preview also in the C++ documentation
The template system used by Sphinx makes this rather easy, just the selector for the
HTML element to inject to needs to be extended.
2020-09-04 11:44:08 +02:00
Simon Hausmann
f4958abba5 Simplify C++ docs build directory setup
Symlink the _static directory instead.
2020-09-04 11:30:51 +02:00
Simon Hausmann
a539dab848 Improve placement of live preview
As the commented out code suggested, place the preview canvas as a floating element
into the code box, along with a label.
2020-09-04 10:12:34 +02:00
Simon Hausmann
7690ab6b6d Reindent/Reformat the docs integration html
That'll make further edits easier to read in the diffs.
2020-09-04 10:12:34 +02:00
Olivier Goffart
9fbb40d91b Start working on a debug statement 2020-09-03 19:10:07 +02:00
Simon Hausmann
dcb923c1df Simplify markdown links to C++/Rust docs
and also offer them conveniently in the primary readme.
2020-09-03 17:35:07 +02:00
Olivier Goffart
51d48aad32 Some doc changes 2020-09-03 16:57:48 +02:00
Simon Hausmann
670091a773 Remove sixtyfps::EasingCurve from the public Rust API
It's not needed in public API usage right now.
2020-09-03 15:48:17 +02:00
Simon Hausmann
fab3d9355d Remove ItemVisitorRefMut and ComponentRef from the public C++ API
It's only for internal use and just typedefs to private types anyway.
2020-09-03 15:44:36 +02:00
Simon Hausmann
3eef23f93c Add widgets to the C++ docs as well 2020-09-03 12:05:50 +02:00
Simon Hausmann
834fa12206 Add the builtin elements to the C++ docs 2020-09-03 09:36:30 +02:00
Simon Hausmann
82ecae8ba6 Move the .60 <> C++ type mappings into a separate section
So the README.md remains usable also on Github.
2020-09-03 09:30:46 +02:00
Olivier Goffart
8a7afbc238 Documents the elements 2020-09-02 18:57:24 +02:00
Simon Hausmann
dc137fa0a6 Add a .60 <> C++ type mapping table to the C++ docs 2020-09-02 17:06:41 +02:00
Simon Hausmann
fd9aea97eb Fix markdown table rendering in C++ docs
This reverts commit 0bb904e10a and
re-introduces the markdown table support extension. The resulting table
by default is too wide in the "responsive" read-the-docs theme, but with
a CSS tweak it becomes readable.

Markdown tables are much easier to deal with and this way we can also
include references within the tables.
2020-09-02 17:06:41 +02:00
Olivier Goffart
1cf6d81169 Impletment GroupBox with the Qt style 2020-09-02 17:05:28 +02:00
Simon Hausmann
65ff715fbc Make C++ documentation generation an xtask
Tear it out of the CMakeLists.txt and instead run it via

    cargo xtask cppdocs

This allows the build_and_test step in the CI to only run cmake for the
library/header related bits and the docs_and_demos step to only generate
docs and not require a full host build of the library (as cargo xtask
cmake would otherwise do).
2020-09-01 17:03:55 +02:00
Simon Hausmann
21c472e739 Fix build 2020-09-01 13:18:40 +02:00
Olivier Goffart
9782d85fdb Native style works with C++ 2020-09-01 12:25:11 +02:00
Olivier Goffart
f1ad78bc25 Qt style support for the rust backend
Need to set the SIXTYFPS_STYLE=native env variable while compiling
2020-09-01 12:25:11 +02:00