fix misdesign of VST GUI thread
git-svn-id: svn://localhost/ardour2/trunk@1428 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
parent
1161fa8731
commit
27cd4034bd
|
@ -96,13 +96,14 @@ PluginUIWindow::PluginUIWindow (boost::shared_ptr<PluginInsert> insert, bool scr
|
|||
_pluginui = pu;
|
||||
get_vbox()->add (*pu);
|
||||
|
||||
set_wmclass (X_("ardour_plugin_editor"), "Ardour");
|
||||
|
||||
signal_map_event().connect (mem_fun (*pu, &LadspaPluginUI::start_updating));
|
||||
signal_unmap_event().connect (mem_fun (*pu, &LadspaPluginUI::stop_updating));
|
||||
}
|
||||
|
||||
set_position (Gtk::WIN_POS_MOUSE);
|
||||
set_name ("PluginEditor");
|
||||
set_wmclass (X_("ardour_plugin_editor"), "Ardour");
|
||||
add_events (Gdk::KEY_PRESS_MASK|Gdk::KEY_RELEASE_MASK|Gdk::BUTTON_PRESS_MASK|Gdk::BUTTON_RELEASE_MASK);
|
||||
|
||||
signal_delete_event().connect (bind (sigc::ptr_fun (just_hide_it), reinterpret_cast<Window*> (this)));
|
||||
|
|
|
@ -82,6 +82,7 @@ extern "C" {
|
|||
#endif
|
||||
|
||||
extern int fst_init ();
|
||||
extern void fst_finish ();
|
||||
|
||||
extern FSTHandle* fst_load (const char*);
|
||||
extern int fst_unload (FSTHandle*);
|
||||
|
|
|
@ -326,12 +326,12 @@ DWORD WINAPI gui_event_loop (LPVOID param)
|
|||
fst_error ("cannot set timer on dummy window");
|
||||
}
|
||||
|
||||
while (true) {
|
||||
while (1) {
|
||||
|
||||
GetMessageA (&msg, NULL, 0,0);
|
||||
|
||||
if (msg.message == WM_QUIT) {
|
||||
cerr << "WM QUIT received\n";
|
||||
if (msg.message == WM_SYSTEMERROR) {
|
||||
/* sent when this thread is supposed to exist */
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -418,6 +418,12 @@ fst_init ()
|
|||
return 0;
|
||||
}
|
||||
|
||||
void
|
||||
fst_finish ()
|
||||
{
|
||||
PostThreadMessageA (gui_thread_id, WM_SYSTEMERROR, 0, 0);
|
||||
}
|
||||
|
||||
int
|
||||
fst_run_editor (FST* fst)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue
Block a user