X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=gtk2_ardour%2Fgui_thread.h;h=cb9c1860f2486fbea705646610136b6c2f8069f7;hb=cba3ca64b359b32909bc29f5fe75e8e2fd9c83d8;hp=f9e5165a030f3f3e1cd69d61e1891663732a79f9;hpb=c38e02285fda1fd7966c9e4ad85994445247e6a6;p=ardour.git diff --git a/gtk2_ardour/gui_thread.h b/gtk2_ardour/gui_thread.h index f9e5165a03..cb9c1860f2 100644 --- a/gtk2_ardour/gui_thread.h +++ b/gtk2_ardour/gui_thread.h @@ -20,12 +20,14 @@ #ifndef __ardour_gtk_gui_thread_h__ #define __ardour_gtk_gui_thread_h__ +#include #include +#include +#include -#define ENSURE_GUI_THREAD(slot) \ - if (!Gtkmm2ext::UI::instance()->caller_is_self()) { \ - Gtkmm2ext::UI::instance()->call_slot ((slot));\ - return;\ - } +#define ENSURE_GUI_THREAD(obj,method, ...) if (!Gtkmm2ext::UI::instance()->caller_is_self()) { abort (); } + +#define gui_context() Gtkmm2ext::UI::instance() /* a UICallback-derived object that specifies the event loop for GUI signal handling */ +#define ui_bind(f, ...) boost::protect (boost::bind (f, __VA_ARGS__)) #endif /* __ardour_gtk_gui_thread_h__ */