| @@ -47,7 +47,7 @@ public: | |||||
| : QDialog(nullptr), | : QDialog(nullptr), | ||||
| m_host(host), | m_host(host), | ||||
| m_plugin(plugin), | m_plugin(plugin), | ||||
| ui(this, winId(), setParameterCallback, setStateCallback, uiEditParameterCallback, uiSendNoteCallback, uiResizeCallback) | |||||
| ui(this, realWinId(), setParameterCallback, setStateCallback, uiEditParameterCallback, uiSendNoteCallback, uiResizeCallback) | |||||
| { | { | ||||
| setFixedSize(ui.getWidth(), ui.getHeight()); | setFixedSize(ui.getWidth(), ui.getHeight()); | ||||
| setWindowTitle("TEST GUI"); | setWindowTitle("TEST GUI"); | ||||
| @@ -57,6 +57,16 @@ public: | |||||
| { | { | ||||
| } | } | ||||
| intptr_t realWinId() const | |||||
| { | |||||
| WId wId = winId(); | |||||
| #if DISTRHO_OS_WINDOWS | |||||
| return (intptr_t)static_cast<HWND>(wId); | |||||
| #else | |||||
| return wId; | |||||
| #endif | |||||
| } | |||||
| // --------------------------------------------- | // --------------------------------------------- | ||||
| void carla_show(const bool yesNo) | void carla_show(const bool yesNo) | ||||
| @@ -30,6 +30,14 @@ | |||||
| # include <GL/glu.h> | # include <GL/glu.h> | ||||
| #endif | #endif | ||||
| #if defined(GL_BGR_EXT) && ! defined(GL_BGR) | |||||
| # define GL_BGR GL_BGR_EXT | |||||
| #endif | |||||
| #if defined(GL_BGRA_EXT) && ! defined(GL_BGRA) | |||||
| # define GL_BGRA GL_BGRA_EXT | |||||
| #endif | |||||
| START_NAMESPACE_DISTRHO | START_NAMESPACE_DISTRHO | ||||
| // ------------------------------------------------- | // ------------------------------------------------- | ||||
| @@ -68,11 +76,11 @@ enum Key { | |||||
| KEY_SUPER | KEY_SUPER | ||||
| }; | }; | ||||
| enum Mod { | |||||
| MOD_SHIFT = 1 << 0, /**< Shift key */ | |||||
| MOD_CTRL = 1 << 1, /**< Control key */ | |||||
| MOD_ALT = 1 << 2, /**< Alt/Option key */ | |||||
| MOD_SUPER = 1 << 3 /**< Mod4/Command/Windows key */ | |||||
| enum Modifier { | |||||
| MODIFIER_SHIFT = 1 << 0, /**< Shift key */ | |||||
| MODIFIER_CTRL = 1 << 1, /**< Control key */ | |||||
| MODIFIER_ALT = 1 << 2, /**< Alt/Option key */ | |||||
| MODIFIER_SUPER = 1 << 3 /**< Mod4/Command/Windows key */ | |||||
| }; | }; | ||||
| // ------------------------------------------------- | // ------------------------------------------------- | ||||
| @@ -23,6 +23,7 @@ | |||||
| #ifdef DISTRHO_UI_OPENGL | #ifdef DISTRHO_UI_OPENGL | ||||
| #include "DistrhoUIOpenGL.h" | #include "DistrhoUIOpenGL.h" | ||||
| #include <GL/gl.h> | |||||
| START_NAMESPACE_DISTRHO | START_NAMESPACE_DISTRHO | ||||
| @@ -697,6 +697,12 @@ public: | |||||
| XSetTransientForHint(display, thisWindow, parentWindow); | XSetTransientForHint(display, thisWindow, parentWindow); | ||||
| XMapRaised(display, thisWindow); | XMapRaised(display, thisWindow); | ||||
| #else | |||||
| return; | |||||
| // unused | |||||
| (void)parentView; | |||||
| (void)parentSize; | |||||
| #endif | #endif | ||||
| } | } | ||||
| @@ -74,7 +74,7 @@ puglCreate(PuglNativeWindow parent, | |||||
| impl->hwnd = CreateWindow( | impl->hwnd = CreateWindow( | ||||
| "Pugl", title, | "Pugl", title, | ||||
| WS_VISIBLE | (parent ? WS_CHILD : (WS_POPUPWINDOW | WS_CAPTION)), | |||||
| (addToDesktop ? WS_VISIBLE : 0) | (parent ? WS_CHILD : (WS_POPUPWINDOW | WS_CAPTION)), | |||||
| 0, 0, width, height, | 0, 0, width, height, | ||||
| (HWND)parent, NULL, NULL, NULL); | (HWND)parent, NULL, NULL, NULL); | ||||
| if (!impl->hwnd) { | if (!impl->hwnd) { | ||||
| @@ -109,6 +109,7 @@ puglCreate(PuglNativeWindow parent, | |||||
| return view; | return view; | ||||
| // unused | // unused | ||||
| (void)resizable; | |||||
| (void)addToDesktop; | (void)addToDesktop; | ||||
| (void)x11Display; | (void)x11Display; | ||||
| } | } | ||||
| @@ -213,7 +214,6 @@ setModifiers(PuglView* view) | |||||
| static LRESULT | static LRESULT | ||||
| handleMessage(PuglView* view, UINT message, WPARAM wParam, LPARAM lParam) | handleMessage(PuglView* view, UINT message, WPARAM wParam, LPARAM lParam) | ||||
| { | { | ||||
| MSG msg; | |||||
| PAINTSTRUCT ps; | PAINTSTRUCT ps; | ||||
| PuglKey key; | PuglKey key; | ||||
| @@ -270,7 +270,7 @@ handleMessage(PuglView* view, UINT message, WPARAM wParam, LPARAM lParam) | |||||
| break; | break; | ||||
| } // else nobreak | } // else nobreak | ||||
| case WM_KEYUP: | case WM_KEYUP: | ||||
| if (key = keySymToSpecial(wParam)) { | |||||
| if ((key = keySymToSpecial(wParam))) { | |||||
| if (view->specialFunc) { | if (view->specialFunc) { | ||||
| view->specialFunc(view, message == WM_KEYDOWN, key); | view->specialFunc(view, message == WM_KEYDOWN, key); | ||||
| } | } | ||||