diff options
Diffstat (limited to 'intern/ghost/GHOST_ISystem.h')
-rw-r--r-- | intern/ghost/GHOST_ISystem.h | 25 |
1 files changed, 21 insertions, 4 deletions
diff --git a/intern/ghost/GHOST_ISystem.h b/intern/ghost/GHOST_ISystem.h index aa893a66a9d..edaeca1e159 100644 --- a/intern/ghost/GHOST_ISystem.h +++ b/intern/ghost/GHOST_ISystem.h @@ -117,9 +117,12 @@ class GHOST_ISystem { public: /** * Creates the one and only system. + * \param verbose: report back-ends that were attempted no back-end could be loaded. + * \param background: loading the system for background rendering (no visible windows). * \return An indication of success. */ - static GHOST_TSuccess createSystem(); + + static GHOST_TSuccess createSystem(bool verbose, bool background); static GHOST_TSuccess createSystemBackground(); /** @@ -133,6 +136,15 @@ class GHOST_ISystem { * \return A pointer to the system. */ static GHOST_ISystem *getSystem(); + /** + * Return an identifier for the one and only system. + * \warning while it may be tempting this should never be used to check for supported features, + * in that case, the GHOST API should be extended to query capabilities. + * This is needed for X11/WAYLAND on Unix, without this - there is no convenient way for users to + * check if WAYLAND or XWAYLAND are in use since they are dynamically selected at startup. + * When dynamically switching between X11/WAYLAND is removed, this function can go too. + */ + static const char *getSystemBackend(); static GHOST_TBacktraceFn getBacktraceFn(); static void setBacktraceFn(GHOST_TBacktraceFn backtrace_fn); @@ -222,7 +234,6 @@ class GHOST_ISystem { * \param width: The width the window. * \param height: The height the window. * \param state: The state of the window when opened. - * \param type: The type of drawing context installed in this window. * \param glSettings: Misc OpenGL settings. * \param exclusive: Use to show the window on top and ignore others (used full-screen). * \param is_dialog: Stay on top of parent window, no icon in taskbar, can't be minimized. @@ -235,7 +246,6 @@ class GHOST_ISystem { uint32_t width, uint32_t height, GHOST_TWindowState state, - GHOST_TDrawingContextType type, GHOST_GLSettings glSettings, const bool exclusive = false, const bool is_dialog = false, @@ -281,7 +291,7 @@ class GHOST_ISystem { const bool stereoVisual) = 0; /** - * Updates the resolution while in fullscreen mode. + * Updates the resolution while in full-screen mode. * \param setting: The new setting of the display. * \param window: Window displayed in full screen. * @@ -421,6 +431,12 @@ class GHOST_ISystem { virtual GHOST_TSuccess getButtonState(GHOST_TButton mask, bool &isDown) const = 0; /** + * Enable multi-touch gestures if supported. + * \param use: Enable or disable. + */ + virtual void setMultitouchGestures(const bool use) = 0; + + /** * Set which tablet API to use. Only affects Windows, other platforms have a single API. * \param api: Enum indicating which API to use. */ @@ -508,6 +524,7 @@ class GHOST_ISystem { /** The one and only system */ static GHOST_ISystem *m_system; + static const char *m_system_backend_id; /** Function to call that sets the back-trace. */ static GHOST_TBacktraceFn m_backtrace_fn; |