X-Git-Url: https://git.cinelerra-gg.org/git/?p=goodguy%2Fcinelerra.git;a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Fattachmentpoint.C;h=adc1c4acb8c557357588886f45d73feb91bce5c3;hp=362a5e1f43e88af652578204398d1a180b11ce3c;hb=0e6cf5b52d1ebce9272270144bcf43df4683507e;hpb=f068b73c1d4afafbf6d86e7f5bc8f1c96b5366d3 diff --git a/cinelerra-5.1/cinelerra/attachmentpoint.C b/cinelerra-5.1/cinelerra/attachmentpoint.C index 362a5e1f..adc1c4ac 100644 --- a/cinelerra-5.1/cinelerra/attachmentpoint.C +++ b/cinelerra-5.1/cinelerra/attachmentpoint.C @@ -211,13 +211,32 @@ int AttachmentPoint::singlechannel() return 0; } +void AttachmentPoint::reset_gui_frames(PluginServer *server) +{ + if( server != plugin_servers.get(0) ) return; + if( renderengine && renderengine->mwindow ) + renderengine->mwindow->reset_plugin_gui_frames(plugin); +} -void AttachmentPoint::render_gui(void *data, PluginServer *server) +void AttachmentPoint::render_gui_frames(PluginClientFrames *frames, PluginServer *server) { //printf("AttachmentPoint::render_gui 1 %p %p\n", server, plugin_servers.get(0)); void *This = this; if(!This) printf("AttachmentPoint::render_gui 1 NULL\n"); +// Discard if not 1st plugin server, so single channel plugins don't get double GUI updates + if(server != plugin_servers.get(0)) return; + + if(renderengine && renderengine->mwindow) + renderengine->mwindow->render_plugin_gui_frames(frames, plugin); +} + + +void AttachmentPoint::render_gui(void *data, PluginServer *server) +{ + void *This = this; + if(!This) printf("AttachmentPoint::render_gui 2 NULL\n"); + // Discard if not 1st plugin server, so single channel plugins don't get double GUI updates if(server != plugin_servers.get(0)) return; @@ -228,7 +247,7 @@ void AttachmentPoint::render_gui(void *data, PluginServer *server) void AttachmentPoint::render_gui(void *data, int size, PluginServer *server) { void *This = this; - if(!This) printf("AttachmentPoint::render_gui 2 NULL\n"); + if(!This) printf("AttachmentPoint::render_gui 3 NULL\n"); // Discard if not 1st plugin server, so single channel plugins don't get double GUI updates if(server != plugin_servers.get(0)) return; @@ -237,6 +256,7 @@ void AttachmentPoint::render_gui(void *data, int size, PluginServer *server) renderengine->mwindow->render_plugin_gui(data, size, plugin); } + int AttachmentPoint::gui_open() { if(renderengine && renderengine->mwindow)