void MWindowGUI::create_objects()
{
+ lock_window("MWindowGUI::create_objects");
const int debug = 0;
resource_thread = new ResourceThread(mwindow, this);
pane[TOP_LEFT_PANE]->canvas->activate();
if(debug) printf("MWindowGUI::create_objects %d\n", __LINE__);
+ unlock_window();
}
void MWindowGUI::redraw_time_dependancies()
{
if( mwindow->edl->session->proxy_scale == 1 &&
mwindow->edl->session->proxy_disabled_scale == 1 )
- proxy_toggle->hide_window();
+ proxy_toggle->hide();
else
- proxy_toggle->show_window();
+ proxy_toggle->show();
}
void MWindowGUI::update_plugintoggles()
ProxyToggle::ProxyToggle(MWindow *mwindow, MButtons *mbuttons, int x, int y)
- : BC_Toggle(x, y, mwindow->theme->proxy_toggle,
+ : BC_Toggle(x, y, ( !mwindow->edl->session->proxy_use_scaler ?
+ mwindow->theme->proxy_p_toggle :
+ mwindow->theme->proxy_s_toggle ),
mwindow->edl->session->proxy_disabled_scale != 1)
{
this->mwindow = mwindow;
this->mbuttons = mbuttons;
+ scaler_images = mwindow->edl->session->proxy_use_scaler;
set_tooltip(mwindow->edl->session->proxy_disabled_scale==1 ?
_("Disable proxy") : _("Enable proxy"));
}
+void ProxyToggle::show()
+{
+ int use_scaler = mwindow->edl->session->proxy_use_scaler;
+ if( scaler_images != use_scaler )
+ set_images(!(scaler_images=use_scaler) ?
+ mwindow->theme->proxy_p_toggle :
+ mwindow->theme->proxy_s_toggle );
+ draw_face(1, 0);
+ if( is_hidden() )
+ show_window();
+}
+
+void ProxyToggle::hide()
+{
+ if( !is_hidden() )
+ hide_window();
+}
+
ProxyToggle::~ProxyToggle()
{
}