summaryrefslogtreecommitdiffstats
path: root/src/x11_in_qt4.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/x11_in_qt4.cpp')
-rw-r--r--src/x11_in_qt4.cpp157
1 files changed, 80 insertions, 77 deletions
diff --git a/src/x11_in_qt4.cpp b/src/x11_in_qt4.cpp
index 9acb842..914609f 100644
--- a/src/x11_in_qt4.cpp
+++ b/src/x11_in_qt4.cpp
@@ -25,97 +25,100 @@
extern "C" {
struct SuilX11InQt4Wrapper {
- QX11EmbedContainer* host_widget;
- QX11EmbedWidget* parent;
+ QX11EmbedContainer* host_widget;
+ QX11EmbedWidget* parent;
};
class SuilQX11Container : public QX11EmbedContainer
{
public:
- SuilQX11Container(SuilInstance* instance,
- const LV2UI_Idle_Interface* idle_iface,
- QX11EmbedWidget* widget)
- : QX11EmbedContainer()
- , _instance(instance)
- , _idle_iface(idle_iface)
- , _widget(widget)
- , _ui_timer(0)
- {}
+ SuilQX11Container(SuilInstance* instance,
+ const LV2UI_Idle_Interface* idle_iface,
+ QX11EmbedWidget* widget)
+ : QX11EmbedContainer()
+ , _instance(instance)
+ , _idle_iface(idle_iface)
+ , _widget(widget)
+ , _ui_timer(0)
+ {}
protected:
- void showEvent(QShowEvent* event) {
- if (_idle_iface && _ui_timer == 0) {
- _ui_timer = this->startTimer(30);
- _widget->embedInto(winId());
- resize(_widget->size());
- }
- QX11EmbedContainer::showEvent(event);
- }
-
- void timerEvent(QTimerEvent* event) {
- if (event->timerId() == _ui_timer && _idle_iface) {
- _idle_iface->idle(_instance->handle);
- }
- QX11EmbedContainer::timerEvent(event);
- }
-
- void closeEvent(QCloseEvent* event) {
- if (_ui_timer && _idle_iface) {
- this->killTimer(_ui_timer);
- _ui_timer = 0;
- }
- QX11EmbedContainer::closeEvent(event);
- }
+ void showEvent(QShowEvent* event)
+ {
+ if (_idle_iface && _ui_timer == 0) {
+ _ui_timer = this->startTimer(30);
+ _widget->embedInto(winId());
+ resize(_widget->size());
+ }
+ QX11EmbedContainer::showEvent(event);
+ }
+
+ void timerEvent(QTimerEvent* event)
+ {
+ if (event->timerId() == _ui_timer && _idle_iface) {
+ _idle_iface->idle(_instance->handle);
+ }
+ QX11EmbedContainer::timerEvent(event);
+ }
+
+ void closeEvent(QCloseEvent* event)
+ {
+ if (_ui_timer && _idle_iface) {
+ this->killTimer(_ui_timer);
+ _ui_timer = 0;
+ }
+ QX11EmbedContainer::closeEvent(event);
+ }
private:
- SuilInstance* const _instance;
- const LV2UI_Idle_Interface* const _idle_iface;
- QX11EmbedWidget* const _widget;
- int _ui_timer;
+ SuilInstance* const _instance;
+ const LV2UI_Idle_Interface* const _idle_iface;
+ QX11EmbedWidget* const _widget;
+ int _ui_timer;
};
static void
wrapper_free(SuilWrapper* wrapper)
{
- SuilX11InQt4Wrapper* impl = (SuilX11InQt4Wrapper*)wrapper->impl;
+ SuilX11InQt4Wrapper* impl = (SuilX11InQt4Wrapper*)wrapper->impl;
- if (impl->parent) {
- delete impl->parent;
- }
+ if (impl->parent) {
+ delete impl->parent;
+ }
- if (impl->host_widget) {
- delete impl->host_widget;
- }
+ if (impl->host_widget) {
+ delete impl->host_widget;
+ }
- free(impl);
+ free(impl);
}
static int
-wrapper_wrap(SuilWrapper* wrapper,
- SuilInstance* instance)
+wrapper_wrap(SuilWrapper* wrapper, SuilInstance* instance)
{
- const LV2UI_Idle_Interface* idle_iface = nullptr;
- if (instance->descriptor->extension_data) {
- idle_iface = (const LV2UI_Idle_Interface*)
- instance->descriptor->extension_data(LV2_UI__idleInterface);
- }
+ const LV2UI_Idle_Interface* idle_iface = nullptr;
+ if (instance->descriptor->extension_data) {
+ idle_iface =
+ (const LV2UI_Idle_Interface*)instance->descriptor->extension_data(
+ LV2_UI__idleInterface);
+ }
- SuilX11InQt4Wrapper* const impl = (SuilX11InQt4Wrapper*)wrapper->impl;
- QX11EmbedWidget* const ew = impl->parent;
+ SuilX11InQt4Wrapper* const impl = (SuilX11InQt4Wrapper*)wrapper->impl;
+ QX11EmbedWidget* const ew = impl->parent;
- impl->host_widget = new SuilQX11Container(instance, idle_iface, ew);
+ impl->host_widget = new SuilQX11Container(instance, idle_iface, ew);
- instance->host_widget = impl->host_widget;
+ instance->host_widget = impl->host_widget;
- return 0;
+ return 0;
}
static int
wrapper_resize(LV2UI_Feature_Handle handle, int width, int height)
{
- QX11EmbedWidget* const ew = (QX11EmbedWidget*)handle;
- ew->resize(width, height);
- return 0;
+ QX11EmbedWidget* const ew = (QX11EmbedWidget*)handle;
+ ew->resize(width, height);
+ return 0;
}
SUIL_LIB_EXPORT
@@ -126,27 +129,27 @@ suil_wrapper_new(SuilHost* host,
LV2_Feature*** features,
unsigned n_features)
{
- SuilX11InQt4Wrapper* const impl = (SuilX11InQt4Wrapper*)
- calloc(1, sizeof(SuilX11InQt4Wrapper));
+ SuilX11InQt4Wrapper* const impl =
+ (SuilX11InQt4Wrapper*)calloc(1, sizeof(SuilX11InQt4Wrapper));
- SuilWrapper* wrapper = (SuilWrapper*)calloc(1, sizeof(SuilWrapper));
- wrapper->wrap = wrapper_wrap;
- wrapper->free = wrapper_free;
+ SuilWrapper* wrapper = (SuilWrapper*)calloc(1, sizeof(SuilWrapper));
+ wrapper->wrap = wrapper_wrap;
+ wrapper->free = wrapper_free;
- QX11EmbedWidget* const ew = new QX11EmbedWidget();
+ QX11EmbedWidget* const ew = new QX11EmbedWidget();
- impl->parent = ew;
+ impl->parent = ew;
- wrapper->impl = impl;
- wrapper->resize.handle = ew;
- wrapper->resize.ui_resize = wrapper_resize;
+ wrapper->impl = impl;
+ wrapper->resize.handle = ew;
+ wrapper->resize.ui_resize = wrapper_resize;
- const intptr_t parent_id = (intptr_t)ew->winId();
- suil_add_feature(features, &n_features, LV2_UI__parent, (void*)parent_id);
- suil_add_feature(features, &n_features, LV2_UI__resize, &wrapper->resize);
- suil_add_feature(features, &n_features, LV2_UI__idleInterface, nullptr);
+ const intptr_t parent_id = (intptr_t)ew->winId();
+ suil_add_feature(features, &n_features, LV2_UI__parent, (void*)parent_id);
+ suil_add_feature(features, &n_features, LV2_UI__resize, &wrapper->resize);
+ suil_add_feature(features, &n_features, LV2_UI__idleInterface, nullptr);
- return wrapper;
+ return wrapper;
}
-} // extern "C"
+} // extern "C"