Commit graph

42 commits

Author SHA1 Message Date
Simon Hausmann
f9ef21bffd Add a logo to the C++ docs
This requires working around a bug in sphinx and the rtd theme, hence
the git pinning.
2021-06-25 11:48:36 +02:00
Simon Hausmann
40d8c7633f Enable clang support in Doxygen 2021-06-25 08:48:28 +02:00
Simon Hausmann
376ed43544 Remove the "View Page Source" links from the sphinx docs
The rst source is not really all that interesting :-)
2021-06-24 12:23:58 +02:00
Olivier Goffart
8e44ac2351 Image type: some more docs 2021-05-28 17:05:16 +02:00
Olivier Goffart
052ea15989 Extends the C++ API docs for the interpreter a bit 2021-05-06 10:03:27 +02:00
Olivier Goffart
3380383787 Bump version number
(Does not include docs and README yet)
2021-04-26 13:16:48 +02:00
Olivier Goffart
91ed04a72c Make length (still the default for all property) be the logical length
And a new `physical_length` is now the physical_length unit

Note: this does not change the runtime part yet
2021-04-21 17:15:19 +02:00
Simon Hausmann
bfd2a2add9 Fix exhale warning about overriding PREDEFINED 2021-03-26 10:32:22 +01:00
Simon Hausmann
4142a9198d Include the intrerperter in the doxygen scan
Amends commit 63cfb9b870
2021-03-23 15:59:17 +01:00
Simon Hausmann
63cfb9b870 Revert back to a unified C++ reference docs
Unfortunately I can't separate the interpreter docs from the regular
run-time library C++ docs with exhale/breathe. One way or another it
breaks and one disappears or shows errors. This change reverts commit
0bb497c816, commit
a769b630ca and commit
0e82faf845 and merges the two into one
reference for now.
2021-03-23 15:36:53 +01:00
Simon Hausmann
0bb497c816 Fix C++ Interpreter docs not showing up in detail
The hacked multi-project support doesn't support multiple output
directories, breathe will look only in the default project directory for
doxygen xml files. Therefore share them.
2021-03-23 11:15:13 +01:00
Simon Hausmann
a769b630ca Separate the C++ Interpreter API into a separate library root
Since breathe doesn't support multiple projects by default, this
uses a fork of the monkey-patch extensions to enable this.
2021-03-22 14:37:02 +01:00
Simon Hausmann
0e82faf845 Exclude the interpreter C++ API from the general SixtyFPS API docs
These need to somehow go into a separate top-level item
2021-03-22 10:55:46 +01:00
Simon Hausmann
8372d3f6d8 Rename call_* to invoke_* for callbacks
Fixes #187
2021-03-15 17:01:05 +01:00
Olivier Goffart
98d40e291d Missing version update 2021-01-28 16:37:52 +01:00
Olivier Goffart
5a21f1bd81 Rename emit_ to call_ for callback
Signal was renamed to Callback, but one does not emit a callback, one calls it
2021-01-25 15:59:10 +01:00
Simon Hausmann
5f265ffc09 Split up ComponentWindow::run() into show(), hide() and sixtyfps::run_event_loop()
This allows creating multiple windows for example, and it will allow for
showing windows in those tests that require a mapped window.

As a bonus, the run() function on generated components is not consuming
anymore.
2021-01-19 09:50:22 +01:00
Olivier Goffart
0d2d48be4f Rename "signal" to "callback" 2020-12-18 09:51:01 +01:00
Olivier Goffart
63a0d9308b Bump version 2020-12-14 08:49:54 +01:00
Olivier Goffart
125ec13f24 Bump version numbers
Note: this does not update the documentation yet
2020-12-07 15:41:29 +01:00
Olivier Goffart
3886ed329f C++ docs update 2020-11-10 19:33:23 +01:00
Olivier Goffart
d3801e26d3 Change the syntax of structures to require the struct keyword 2020-10-27 16:09:05 +01:00
Olivier Goffart
20cfb65e53 Bump version 2020-10-22 08:41:45 +02:00
Simon Hausmann
fae046cef4
Small typo fix 2020-10-21 21:35:45 +02:00
Olivier Goffart
c50b9d73d3 Document the generated C++ code 2020-10-21 11:29:25 +02:00
Olivier Goffart
cbd8c6aefc Documentation for the newly added struct type 2020-09-17 13:14:01 +02:00
Simon Hausmann
0dc81895ed Exclude SharedArray::SharedArrayHeader from the C++ docs 2020-09-11 18:35:27 +02:00
Simon Hausmann
29a9bd05eb Remove Pin, etc. typedefs from C++ docs
Exclude everything from vtable.h, and apply the same logic for sixtyfps::testing.
2020-09-11 18:16:17 +02:00
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
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
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
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
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
Olivier Goffart
58cdaeb8dd Update license header to mention that commertial option are available 2020-08-26 13:23:42 +02:00
Simon Hausmann
9785919f6e Hide a few APIs from the C++ documentation
Since Doxygen can't seem to just exclude them via command, they are moved
into a private_api namespace and then excluded via Doxygen config:

    * *VTable
    * make_dyn_node, ItemTreeNode, etc.
    * VersionCheck
2020-08-25 17:45:12 +02:00
Simon Hausmann
91621aa87a Hide sixtyfps::cbindgen_private from the C++ docs 2020-08-25 16:43:43 +02:00
Simon Hausmann
3f64defaac Include the C++ API README in the C++ reference docs 2020-08-24 17:40:12 +02:00
Simon Hausmann
e9685c5851 Improve C++ documentation shell
Doxygen's markdown support can't quite deal with the Github flavor,
the language reference looks terrible.

So instead, this change switches to using Sphinx,
with two extensions that call Doxygen for us and allow including markdown.

The result is a read-the-docs themed sphinx site that includes search even
in the language reference.
2020-08-24 17:07:04 +02:00