diff options
author | David Robillard <d@drobilla.net> | 2020-11-26 16:07:41 +0100 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2020-11-26 17:09:15 +0100 |
commit | 503ba93a4ebf316ab01b468808e4cda2da8b863e (patch) | |
tree | ebfbcd7829879def472028617abeb021c9a26e64 /doc/pugl.rst | |
parent | caf3f4fc314608d8d8f8be853f4bde6bb50188b0 (diff) | |
download | pugl-503ba93a4ebf316ab01b468808e4cda2da8b863e.tar.gz pugl-503ba93a4ebf316ab01b468808e4cda2da8b863e.tar.bz2 pugl-503ba93a4ebf316ab01b468808e4cda2da8b863e.zip |
Generate documentation with Sphinx
Diffstat (limited to 'doc/pugl.rst')
-rw-r--r-- | doc/pugl.rst | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/doc/pugl.rst b/doc/pugl.rst new file mode 100644 index 0000000..c48021b --- /dev/null +++ b/doc/pugl.rst @@ -0,0 +1,26 @@ +#### +Pugl +#### + +Pugl is an API for writing portable and embeddable GUIs. +Pugl is not a toolkit or framework, +but a minimal portability layer that sets up a drawing context and delivers events. + +Compared to other libraries, +Pugl is particularly suitable for use in plugins or other loadable modules. +There is no implicit context or static data in the library, +so it may be statically linked and used multiple times in the same process. + +Pugl has a modular design that separates the core library from graphics backends. +The core library is graphics agnostic, +it implements platform support and depends only on standard system libraries. +MacOS, Windows, and X11 are currently supported as platforms. + +Graphics backends are separate so that applications only depend on the API that they use. +Pugl includes graphics backends for Cairo_, OpenGL_, and Vulkan_. +It is also possible to use some other graphics API by implementing a custom backend, +or simply accessing the native platform handle for a window. + +.. _Cairo: https://www.cairographics.org/ +.. _OpenGL: https://www.opengl.org/ +.. _Vulkan: https://www.khronos.org/vulkan/ |