DPF

DISTRHO Plugin Framework
Log | Files | Refs | Submodules | README | LICENSE

commit f97904136f3036b46dccc06ee88296a043f86159
parent 85ab63ade88fe7ec0f6f3d6c9261f3a3b1cdd3fb
Author: falkTX <falktx@falktx.com>
Date:   Sun, 22 Aug 2021 23:30:52 +0100

Remove some virtuals, cleanup

Signed-off-by: falkTX <falktx@falktx.com>

Diffstat:
Mdistrho/extra/ExternalWindow.hpp | 49++++++++++++++++++++++++++++---------------------
1 file changed, 28 insertions(+), 21 deletions(-)

diff --git a/distrho/extra/ExternalWindow.hpp b/distrho/extra/ExternalWindow.hpp @@ -85,12 +85,36 @@ public: return !isVisible(); } + /** + Hide the UI and gracefully terminate. + */ + virtual void close() + { + hide(); + + if (ext.inUse) + terminateAndWaitForExternalProcess(); + } + + /** + Grab the keyboard input focus. + */ + virtual void focus() {} + + /** + Get the transient window that we should attach ourselves to. + TODO what id? also NSView* on macOS, or NSWindow? + */ uintptr_t getTransientWindowId() const noexcept { return pData.transientWinId; } - virtual void setTransientWindowId(uintptr_t winId) + /** + Called by the host to set the transient window that we should attach ourselves to. + TODO what id? also NSView* on macOS, or NSWindow? + */ + void setTransientWindowId(uintptr_t winId) { if (pData.transientWinId == winId) return; @@ -98,14 +122,6 @@ public: transientWindowChanged(winId); } - void close() - { - hide(); - - if (ext.inUse) - terminateAndWaitForExternalProcess(); - } - #if DISTRHO_PLUGIN_HAS_EMBED_UI /** Whether this Window is embed into another (usually not DGL-controlled) Window. @@ -160,7 +176,7 @@ public: Set window visible (or not) according to @a visible. @see isVisible(), hide(), show() */ - virtual void setVisible(bool visible) + void setVisible(bool visible) { if (pData.visible == visible) return; @@ -223,7 +239,7 @@ public: /** Set size using @a width and @a height values. */ - virtual void setSize(uint width, uint height) + void setSize(uint width, uint height) { DISTRHO_SAFE_ASSERT_UINT2_RETURN(width > 1 && height > 1, width, height,); @@ -246,7 +262,7 @@ public: /** Set the title of the window, typically displayed in the title bar or in window switchers. */ - virtual void setTitle(const char* title) + void setTitle(const char* title) { if (pData.title == title) return; @@ -257,21 +273,12 @@ public: /** Get the scale factor requested for this window. This is purely informational, and up to developers to choose what to do with it. - - If you do not want to deal with this yourself, - consider using setGeometryConstraints() where you can specify to automatically scale the window contents. - @see setGeometryConstraints */ double getScaleFactor() const noexcept { return pData.scaleFactor; } - /** - Grab the keyboard input focus. - */ - virtual void focus() {} - protected: /* -------------------------------------------------------------------------------------------------------- * ExternalWindow special calls for running externals tools */