Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2020-03-09 | Add PuglEventClient and puglSendEvent() | David Robillard | 1 | -0/+8 | |
This event makes it possible to send an arbitrary event to a view, which is useful for many things. In particular, this method of communication with views will wake up the event loop, unlike hacks in applications that share data in some other way. | |||||
2020-03-09 | Add test for basic view creation, exposure, and destruction | David Robillard | 1 | -0/+149 | |
2020-03-09 | Add create, destroy, map, and unmap events | David Robillard | 1 | -0/+8 | |
These can be used to do things when a view is created or destroyed, in particular set up the GL context in a more controlled way. Map and unmap events are also added for when views are shown and hidden so application can react to this as well. Towards the deprecation of puglEnterContext() and puglLeaveContext(), which are prone to abuse. squash! Remove client event stuff | |||||
2020-03-08 | Enable double buffering by default | David Robillard | 1 | -3/+3 | |
2020-03-08 | Add vsync command line options to demos | David Robillard | 1 | -2/+19 | |
2020-03-08 | Move demo programs to examples directory | David Robillard | 9 | -4950/+0 | |
These are not really tests, but examples or demos, which has caused some confusion in the past. So, move them, and make room for actual tests. | |||||
2020-03-08 | Split graphical utilities out from test_utils.h | David Robillard | 5 | -149/+174 | |
2020-03-08 | Print when unknown events are received in tests | David Robillard | 1 | -0/+3 | |
2020-03-08 | Cleanup: Fix some conversion warnings | David Robillard | 1 | -7/+7 | |
2020-03-07 | Test: Don't reuse cube vertices for background | David Robillard | 1 | -3/+10 | |
This was pretty confusing since it looked like the parent view was drawing the cube as well, and inefficient since only a single rect needs to be drawn here. | |||||
2020-03-07 | Test: Fix cube rotation via mouse | David Robillard | 1 | -2/+2 | |
2020-03-02 | Strengthen ultra-strict warnings with clang | David Robillard | 3 | -12/+15 | |
2020-03-01 | Cleanup: Adjust some code to be more clang-format friendly | David Robillard | 1 | -0/+6 | |
2020-03-01 | Cleanup: Shorten event printing code | David Robillard | 1 | -42/+63 | |
2020-03-01 | Cleanup: Fix includes | David Robillard | 1 | -0/+1 | |
2020-02-18 | Cairo Test: Preserve clip rectangle for background fill | David Robillard | 1 | -2/+1 | |
2019-12-11 | GL3 Test: Use instancing | David Robillard | 1 | -49/+62 | |
2019-12-11 | GL3 Test: Update bindings to OpenGL 3.3 | David Robillard | 2 | -8/+324 | |
2019-12-11 | GL3 Test: Spread out rectangles more | David Robillard | 1 | -7/+11 | |
2019-12-11 | GL3 Test: Calculate border color on the GPU | David Robillard | 1 | -13/+5 | |
2019-12-11 | GL3 Test: Move shaders to separate files | David Robillard | 1 | -43/+33 | |
2019-12-09 | Fix use of incorrect union element | David Robillard | 1 | -4/+4 | |
2019-11-21 | Rename "backend" headers | David Robillard | 4 | -4/+4 | |
Working on Vulkan clarified what has always been slightly smelly about the design and organization here: not everything that is API specific is really in a "backend" (a PuglBackend). The concrete example is puglGetProcAddress(), which only makes sense for GL and is actually implemented in the "backend" files. Arguably puglGetContext() is also such a thing. So, rename the headers so they can be the place where API-specific things go in general, which happens to include a backend most of the time. The stub is a bit of an exception to this, but whatever. The includes look tidier this way. In place of the old headers are compatibility stubs that just emit a warning and include the new version, which will be maintained for a while. | |||||
2019-11-18 | Cleanup: Remove unnecessary includes | David Robillard | 3 | -5/+0 | |
2019-11-18 | Add test utility function for logging errors | David Robillard | 5 | -16/+23 | |
2019-11-18 | Add error checking option to test programs | David Robillard | 3 | -1/+8 | |
2019-11-09 | Fix various clang-tidy warnings | David Robillard | 1 | -1/+3 | |
2019-11-09 | Make pugl_gl3_test deterministic | David Robillard | 1 | -16/+15 | |
2019-11-09 | Add puglStrerror() and improve test program error reporting | David Robillard | 3 | -8/+15 | |
2019-11-03 | Remove redisplay flag and add puglPostRedisplayRect() | David Robillard | 1 | -5/+28 | |
2019-11-03 | Add pugl_print_events test program | David Robillard | 1 | -0/+83 | |
2019-11-03 | Add verbose option to test programs to print all events | David Robillard | 3 | -13/+49 | |
2019-11-03 | Fix duplicate word in error message | David Robillard | 1 | -1/+1 | |
2019-10-21 | Don't use compatible profile in pugl_gl3_test | David Robillard | 1 | -1/+1 | |
It turns out that there are some systems where having this on makes things not work, because compatible profiles are only supported up to earlier versions, despite a much higher version being available. | |||||
2019-09-07 | Add clipboard support | David Robillard | 1 | -3/+11 | |
2019-09-07 | Add OpenGL 3 test program | David Robillard | 6 | -0/+3791 | |
2019-09-03 | Make event handler return a status | David Robillard | 2 | -3/+9 | |
Currently unused, but this is to leave open the possibility of event propagation or better errror handling. | |||||
2019-09-03 | Factor out parsing test options | David Robillard | 3 | -60/+82 | |
2019-09-03 | Rename remaining init functions | David Robillard | 2 | -15/+15 | |
This finishes the removal of the init/set split. While these ones are superficial, the general idea here is to provide general functions that work before or after window creation where possible. This prevents the situation where ever more dynamic counterparts to existing init functions get added over time. | |||||
2019-09-03 | Add puglSetClassName() | David Robillard | 2 | -3/+3 | |
2019-09-03 | Replace size and aspect ratio init functions with dynamic ones | David Robillard | 2 | -3/+3 | |
2019-09-03 | Add swap interval hint | David Robillard | 1 | -0/+2 | |
2019-09-03 | Make pugl_test use a nested view and test focus and movement | David Robillard | 3 | -83/+228 | |
2019-09-03 | Add functions to get and set view size and position | David Robillard | 2 | -6/+11 | |
2019-09-03 | Add puglDispatchEvents() | David Robillard | 2 | -2/+2 | |
2019-09-03 | Add puglPollEvents() | David Robillard | 2 | -2/+2 | |
This allows waiting for events for any view in the world. It also improves on puglWaitForEvent() by the addition of a time parameter that allows indefinite blocking, non-blocking polling, and blocking polling with a timeout. | |||||
2019-09-03 | Move puglGetTime() to PuglWorld | David Robillard | 3 | -13/+16 | |
2019-09-03 | Add PuglWorld | David Robillard | 2 | -14/+21 | |
The old API was broken for programs that manage multiple views, since it was impossible to wait for events on any view. There are also several functions in the API which are not actually associated with views at all, so those can now be moved to the more appropriate PuglWorld to make this more clear. The old puglInit() and puglDestroy() functions are preserved for compatibility, but marked as deprecated. | |||||
2019-08-02 | Clean up includes | David Robillard | 1 | -0/+1 | |
2019-08-02 | Test: Remove use of static data | David Robillard | 1 | -39/+48 | |
Not very becoming of a library that exists specifically to avoid static data. |