add timecode units/alignment/probe, add prefs auto_rotate,
[goodguy/cinelerra.git] / cinelerra-5.1 / plugins / tracer / tracerwindow.C
index cff7659854c4864c5ce0a6fe3b838724a19e2235..980da954fcf3b13685905489c07527844dc73084 100644 (file)
@@ -85,7 +85,7 @@ int TracerPointY::handle_event()
 }
 
 TracerWindow::TracerWindow(Tracer *plugin)
- : PluginClientWindow(plugin, xS(400), yS(420), xS(400), yS(420), 0)
+ : PluginClientWindow(plugin, xS(460), yS(420), xS(460), yS(420), 0)
 {
        this->plugin = plugin;
        this->title_x = 0;    this->point_x = 0;
@@ -116,18 +116,18 @@ void TracerWindow::create_objects()
        TracerPoint *pt = hot_point >= 0 ? plugin->config.points[hot_point] : 0;
        point_x = new TracerPointX(this, x1, y, !pt ? 0 : pt->x);
        point_x->create_objects();
-       x1 += point_x->get_w() + margin;
+       x1 += point_x->get_w() + margin + xS(20);
        add_subwindow(new_point = new TracerNewPoint(this, plugin, x1, y));
-       x1 += new_point->get_w() + margin;
+       x1 += new_point->get_w() + margin + xS(30);
        add_subwindow(point_up = new TracerPointUp(this, x1, y));
        y += point_x->get_h() + margin;
        add_subwindow(title_y = new BC_Title(x, y, _("Y:")));
        x1 = x + title_y->get_w() + margin;
        point_y = new TracerPointY(this, x1, y, !pt ? 0 : pt->y);
        point_y->create_objects();
-       x1 += point_y->get_w() + margin;
+       x1 += point_y->get_w() + margin + xS(20);
        add_subwindow(del_point = new TracerDelPoint(this, plugin, x1, y));
-       x1 += del_point->get_w() + margin;
+       x1 += del_point->get_w() + margin + xS(30);
        add_subwindow(point_dn = new TracerPointDn(this, x1, y));
        y += point_y->get_h() + margin + yS(10);
 
@@ -545,6 +545,18 @@ int TracerDrag::handle_event()
        gui->send_configure_change();
        return 1;
 }
+int TracerWindow::handle_ungrab()
+{
+       CWindowGUI *cwindow_gui = plugin->server->mwindow->cwindow->gui;
+       int ret = ungrab(cwindow_gui);
+       if( ret ) {
+               drag->update(0);
+               plugin->config.drag = 0;
+               send_configure_change();
+       }
+       return ret;
+}
+
 
 TracerDraw::TracerDraw(TracerWindow *gui, int x, int y)
  : BC_CheckBox(x, y, gui->plugin->config.draw, _("Draw"))
@@ -595,7 +607,7 @@ int TracerRadius::handle_event()
 }
 
 TracerNewPoint::TracerNewPoint(TracerWindow *gui, Tracer *plugin, int x, int y)
- : BC_GenericButton(x, y, xS(80), _("New"))
+ : BC_GenericButton(x, y, xS(100), _("New"))
 {
        this->gui = gui;
        this->plugin = plugin;
@@ -612,7 +624,7 @@ int TracerNewPoint::handle_event()
 }
 
 TracerDelPoint::TracerDelPoint(TracerWindow *gui, Tracer *plugin, int x, int y)
- : BC_GenericButton(x, y, xS(80), C_("Del"))
+ : BC_GenericButton(x, y, xS(100), C_("Del"))
 {
        this->gui = gui;
        this->plugin = plugin;