diff options
Diffstat (limited to 'doc')
-rw-r--r-- | doc/c/Doxyfile.in | 1 | ||||
-rw-r--r-- | doc/c/api/meson.build | 6 | ||||
-rw-r--r-- | doc/c/event-loop.rst | 5 | ||||
-rw-r--r-- | doc/c/meson.build | 6 | ||||
-rw-r--r-- | doc/c/view.rst | 4 | ||||
-rw-r--r-- | doc/c/xml/meson.build | 4 | ||||
-rw-r--r-- | doc/cpp/Doxyfile.in | 1 | ||||
-rw-r--r-- | doc/cpp/api/meson.build | 2 | ||||
-rw-r--r-- | doc/cpp/event-loop.rst | 5 | ||||
-rw-r--r-- | doc/cpp/meson.build | 6 | ||||
-rw-r--r-- | doc/cpp/view.rst | 4 | ||||
-rw-r--r-- | doc/cpp/xml/meson.build | 4 | ||||
-rw-r--r-- | doc/meson.build | 18 |
13 files changed, 34 insertions, 32 deletions
diff --git a/doc/c/Doxyfile.in b/doc/c/Doxyfile.in index 4bf1b42..f6990af 100644 --- a/doc/c/Doxyfile.in +++ b/doc/c/Doxyfile.in @@ -26,7 +26,6 @@ MACRO_EXPANSION = YES PREDEFINED = PUGL_API \ PUGL_CONST_API= \ PUGL_CONST_FUNC= \ - PUGL_DISABLE_DEPRECATED \ PUGL_MALLOC_API= \ PUGL_MALLOC_FUNC= diff --git a/doc/c/api/meson.build b/doc/c/api/meson.build index 6b21aae..846dc94 100644 --- a/doc/c/api/meson.build +++ b/doc/c/api/meson.build @@ -1,9 +1,9 @@ -# Copyright 2021 David Robillard <d@drobilla.net> +# Copyright 2021-2024 David Robillard <d@drobilla.net> # SPDX-License-Identifier: 0BSD OR ISC c_pugl_rst = custom_target( - 'C API ReST Documentation', - command: [sphinxygen, '-f', '@INPUT0@', 'doc/c/api'], + 'c_pugl.rst', + command: [sphinxygen, '-f', '@INPUT0@', '@OUTDIR@'], input: [c_index_xml] + c_rst_files, output: 'pugl.rst', ) diff --git a/doc/c/event-loop.rst b/doc/c/event-loop.rst index be4e315..7bee397 100644 --- a/doc/c/event-loop.rst +++ b/doc/c/event-loop.rst @@ -23,12 +23,11 @@ while those that draw continuously may use a significant fraction of the frame p Redrawing ********* -Occasional redrawing can be requested by calling :func:`puglPostRedisplay` or :func:`puglPostRedisplayRect`. +Occasional redrawing can be requested by calling :func:`puglObscureView` or :func:`puglObscureRegion`. After these are called, a :struct:`PuglExposeEvent` will be dispatched on the next call to :func:`puglUpdate`. -For continuous redrawing, -call :func:`puglPostRedisplay` while handling a :struct:`PuglUpdateEvent` event. +For continuous redrawing, obscure the view while handling a :struct:`PuglUpdateEvent` event. This event is sent just before views are redrawn, so it can be used as a hook to expand the update region right before the view is exposed. Anything else that needs to be done every frame can be handled similarly. diff --git a/doc/c/meson.build b/doc/c/meson.build index 1401aa3..ba14ca9 100644 --- a/doc/c/meson.build +++ b/doc/c/meson.build @@ -1,4 +1,4 @@ -# Copyright 2021-2022 David Robillard <d@drobilla.net> +# Copyright 2021-2024 David Robillard <d@drobilla.net> # SPDX-License-Identifier: 0BSD OR ISC config = configuration_data() @@ -43,7 +43,7 @@ subdir('xml') subdir('api') docs = custom_target( - 'singlehtml', + 'c_singlehtml', build_by_default: true, command: [ sphinx_build, @@ -61,7 +61,7 @@ docs = custom_target( ) docs = custom_target( - 'html', + 'c_html', build_by_default: true, command: [ sphinx_build, diff --git a/doc/c/view.rst b/doc/c/view.rst index 31eab21..8c74ca1 100644 --- a/doc/c/view.rst +++ b/doc/c/view.rst @@ -50,14 +50,14 @@ Embedding To embed the view in another window, you will need to somehow get the :type:`native view handle <PuglNativeView>` for the parent, -then set it with :func:`puglSetParentWindow`. +then set it with :func:`puglSetParent`. If the parent is a Pugl view, the native handle can be accessed with :func:`puglGetNativeView`. For example: .. code-block:: c - puglSetParentWindow(view, puglGetNativeView(parent)); + puglSetParent(view, puglGetNativeView(parent)); ************************ Setting an Event Handler diff --git a/doc/c/xml/meson.build b/doc/c/xml/meson.build index 8b5e0e2..3e371dc 100644 --- a/doc/c/xml/meson.build +++ b/doc/c/xml/meson.build @@ -1,4 +1,4 @@ -# Copyright 2021 David Robillard <d@drobilla.net> +# Copyright 2021-2024 David Robillard <d@drobilla.net> # SPDX-License-Identifier: 0BSD OR ISC config = configuration_data() @@ -12,7 +12,7 @@ c_doxyfile = configure_file( ) c_index_xml = custom_target( - 'c-index.xml', + 'c_index.xml', command: [doxygen, '@INPUT0@'], input: [c_doxyfile] + c_headers, output: 'index.xml', diff --git a/doc/cpp/Doxyfile.in b/doc/cpp/Doxyfile.in index 05deae7..3d0d45f 100644 --- a/doc/cpp/Doxyfile.in +++ b/doc/cpp/Doxyfile.in @@ -31,7 +31,6 @@ MACRO_EXPANSION = YES PREDEFINED = PUGL_API \ PUGL_CONST_API= \ PUGL_CONST_FUNC= \ - PUGL_DISABLE_DEPRECATED \ PUGL_MALLOC_API= \ PUGL_MALLOC_FUNC= diff --git a/doc/cpp/api/meson.build b/doc/cpp/api/meson.build index 9b2f7e6..7f05f42 100644 --- a/doc/cpp/api/meson.build +++ b/doc/cpp/api/meson.build @@ -2,7 +2,7 @@ # SPDX-License-Identifier: 0BSD OR ISC cpp_pugl_rst = custom_target( - 'C++ API ReST Documentation', + 'cpp_pugl.rst', command: [sphinxygen, '-l', 'cpp', '-f', '@INPUT@', '@OUTDIR@'], input: cpp_index_xml, output: 'pugl.rst', diff --git a/doc/cpp/event-loop.rst b/doc/cpp/event-loop.rst index 1d2ac41..3223069 100644 --- a/doc/cpp/event-loop.rst +++ b/doc/cpp/event-loop.rst @@ -24,14 +24,13 @@ while those that draw continuously may use a significant fraction of the frame p Redrawing ********* -Occasional redrawing can be requested by calling :func:`View::postRedisplay` or :func:`View::postRedisplayRect`. +Occasional redrawing can be requested by calling :func:`View::obscure`. After these are called, a :type:`ExposeEvent` will be dispatched on the next call to :func:`World::update`. Note, however, that this will not wake up a blocked :func:`World::update` call on MacOS (which does not handle drawing via events). -For continuous redrawing, -call :func:`View::postRedisplay` while handling a :type:`UpdateEvent`. +For continuous redrawing, obscure the view while handling a :type:`UpdateEvent`. This event is sent just before views are redrawn, so it can be used as a hook to expand the update region right before the view is exposed. Anything else that needs to be done every frame can be handled similarly. diff --git a/doc/cpp/meson.build b/doc/cpp/meson.build index ca6bc5b..723510b 100644 --- a/doc/cpp/meson.build +++ b/doc/cpp/meson.build @@ -1,4 +1,4 @@ -# Copyright 2021 David Robillard <d@drobilla.net> +# Copyright 2021-2024 David Robillard <d@drobilla.net> # SPDX-License-Identifier: 0BSD OR ISC config = configuration_data() @@ -30,7 +30,7 @@ subdir('xml') subdir('api') docs = custom_target( - 'singlehtml', + 'cpp_singlehtml', build_by_default: true, command: [ sphinx_build, @@ -48,7 +48,7 @@ docs = custom_target( ) docs = custom_target( - 'html', + 'cpp_html', command: [ sphinx_build, '-M', 'html', diff --git a/doc/cpp/view.rst b/doc/cpp/view.rst index 49940c9..e2fc994 100644 --- a/doc/cpp/view.rst +++ b/doc/cpp/view.rst @@ -90,14 +90,14 @@ Embedding To embed the view in another window, you will need to somehow get the :type:`native view handle <pugl::NativeView>` for the parent, -then set it with :func:`View::setParentWindow`. +then set it with :func:`View::setParent`. If the parent is a Pugl view, the native handle can be accessed with :func:`View::nativeView`. For example: .. code-block:: cpp - view.setParentWindow(view, parent.getNativeView()); + view.setParent(view, parent.nativeView()); ***************** Setting a Backend diff --git a/doc/cpp/xml/meson.build b/doc/cpp/xml/meson.build index 72bb8ee..083a6cc 100644 --- a/doc/cpp/xml/meson.build +++ b/doc/cpp/xml/meson.build @@ -1,4 +1,4 @@ -# Copyright 2021 David Robillard <d@drobilla.net> +# Copyright 2021-2024 David Robillard <d@drobilla.net> # SPDX-License-Identifier: 0BSD OR ISC config = configuration_data() @@ -12,7 +12,7 @@ cpp_doxyfile = configure_file( ) cpp_index_xml = custom_target( - 'cpp-index.xml', + 'cpp_index.xml', command: [doxygen, '@INPUT0@'], input: [cpp_doxyfile] + c_headers + cpp_headers, output: 'index.xml', diff --git a/doc/meson.build b/doc/meson.build index e7a1763..6368f8a 100644 --- a/doc/meson.build +++ b/doc/meson.build @@ -1,19 +1,25 @@ -# Copyright 2021 David Robillard <d@drobilla.net> +# Copyright 2021-2024 David Robillard <d@drobilla.net> # SPDX-License-Identifier: 0BSD OR ISC docdir = get_option('datadir') / 'doc' +# Find required external programs doxygen = find_program('doxygen', required: get_option('docs')) -sphinxygen = find_program('sphinxygen', required: false) sphinx_build = find_program('sphinx-build', required: get_option('docs')) -if not sphinxygen.found() - subproject('sphinxygen') - sphinxygen = find_program('sphinxygen', required: get_option('docs')) +# Find sphinxygen or fall back to subproject +if doxygen.found() and sphinx_build.found() + sphinxygen = find_program('sphinxygen', required: false) + if not sphinxygen.found() + subproject('sphinxygen') + sphinxygen = find_program('sphinxygen', required: get_option('docs')) + endif +else + sphinxygen = disabler() endif +# Build documentation if all required tools are found build_docs = doxygen.found() and sphinxygen.found() and sphinx_build.found() - if build_docs subdir('_static') subdir('c') |