/* === S Y N F I G ========================================================= */
-/*! \file dialog_waypoint.cpp
+/*! \file widget_waypoint.cpp
** \brief Template Header
**
-** $Id: widget_waypoint.cpp,v 1.1.1.1 2005/01/07 03:34:37 darco Exp $
+** $Id$
**
** \legal
** Copyright (c) 2002-2005 Robert B. Quattlebaum Jr., Adrian Bentley
+** Copyright (c) 2008 Chris Moore
+** Copyright (c) 2008 Paul Wise
**
** This package is free software; you can redistribute it and/or
** modify it under the terms of the GNU General Public License as
#include <gtkmm/optionmenu.h>
#include "widget_time.h"
#include "widget_waypoint.h"
+#include "general.h"
+
#endif
using namespace synfig;
value_widget=manage(new Widget_ValueBase());
value_widget->set_canvas(canvas);
value_widget->show();
-
+
value_node_label=manage(new Gtk::Label(_("(Non-static value)")));
-
-
+
+
time_widget=manage(new Widget_Time());
time_widget->set_fps(canvas->rend_desc().get_frame_rate());
//spinbutton=manage(new Gtk::SpinButton(time_adjustment,0.05,3));
//spinbutton->show();
before_options=manage(new class Gtk::Menu());
- before_options->items().push_back(Gtk::Menu_Helpers::MenuElem("TCB Smooth"));
- before_options->items().push_back(Gtk::Menu_Helpers::MenuElem("Constant"));
- before_options->items().push_back(Gtk::Menu_Helpers::MenuElem("Linear"));
- before_options->items().push_back(Gtk::Menu_Helpers::MenuElem("Ease In"));
- before_options->items().push_back(Gtk::Menu_Helpers::MenuElem("Manual"));
+ before_options->items().push_back(Gtk::Menu_Helpers::MenuElem(_("TCB Smooth")));
+ before_options->items().push_back(Gtk::Menu_Helpers::MenuElem(_("Constant")));
+ before_options->items().push_back(Gtk::Menu_Helpers::MenuElem(_("Linear")));
+ before_options->items().push_back(Gtk::Menu_Helpers::MenuElem(_("Ease In")));
+ // before_options->items().push_back(Gtk::Menu_Helpers::MenuElem(_("Manual")));
after_options=manage(new class Gtk::Menu());
- after_options->items().push_back(Gtk::Menu_Helpers::MenuElem("TCB Smooth"));
- after_options->items().push_back(Gtk::Menu_Helpers::MenuElem("Constant"));
- after_options->items().push_back(Gtk::Menu_Helpers::MenuElem("Linear"));
- after_options->items().push_back(Gtk::Menu_Helpers::MenuElem("Ease Out"));
- after_options->items().push_back(Gtk::Menu_Helpers::MenuElem("Manual"));
+ after_options->items().push_back(Gtk::Menu_Helpers::MenuElem(_("TCB Smooth")));
+ after_options->items().push_back(Gtk::Menu_Helpers::MenuElem(_("Constant")));
+ after_options->items().push_back(Gtk::Menu_Helpers::MenuElem(_("Linear")));
+ after_options->items().push_back(Gtk::Menu_Helpers::MenuElem(_("Ease Out")));
+ // after_options->items().push_back(Gtk::Menu_Helpers::MenuElem(_("Manual")));
before=manage(new class Gtk::OptionMenu());
before->show();
spin_bias->show();
spin_temporal_tension=manage(new class Gtk::SpinButton(adj_temporal_tension,0.1,3));
spin_temporal_tension->show();
-
+
set_padding(12, 12, 12, 12);
-
+
Gtk::VBox *widgetBox = manage(new Gtk::VBox(false, 12));
add(*widgetBox);
-
+
Gtk::Frame *waypointFrame = manage(new Gtk::Frame(_("Waypoint")));
waypointFrame->set_shadow_type(Gtk::SHADOW_NONE);
((Gtk::Label *) waypointFrame->get_label_widget())->set_markup(_("<b>Waypoint</b>"));
waypointValueLabel->set_mnemonic_widget(*value_widget);
waypointTable->attach(*waypointValueLabel, 0, 1, 0, 1, Gtk::SHRINK | Gtk::FILL, Gtk::EXPAND | Gtk::FILL, 0, 0);
waypointTable->attach(*value_widget, 1, 2, 0, 1, Gtk::EXPAND | Gtk::FILL, Gtk::EXPAND | Gtk::FILL, 0, 0);
+ waypointTable->attach(*value_node_label, 1, 2, 0, 1, Gtk::EXPAND | Gtk::FILL, Gtk::EXPAND | Gtk::FILL, 0, 0);
Gtk::Label *waypointTimeLabel = manage(new Gtk::Label(_("_Time"), true));
waypointTimeLabel->set_alignment(0, 0.5);
interpolationTable->set_row_spacings(6);
interpolationTable->set_col_spacings(12);
interpolationPadding->add(*interpolationTable);
-
+
Gtk::Label *interpolationInLabel = manage(new Gtk::Label(_("_In Interpolation"), true));
interpolationInLabel->set_alignment(0, 0.5);
interpolationInLabel->set_mnemonic_widget(*before);
{
canvas=x;
assert(canvas);
-
+
time_widget->set_fps(canvas->rend_desc().get_frame_rate());
value_widget->set_canvas(canvas);
}
time_widget->set_fps(canvas->rend_desc().get_frame_rate());
waypoint=x;
-
-#warning This really needs to be fixed to support value node waypoints!
+
+ //! \todo This really needs to be fixed to support value node waypoints!
if(waypoint.is_static())
{
value_widget->set_value(waypoint.get_value());
value_widget->hide();
value_node_label->show();
}
-
+
time_widget->set_value(waypoint.get_time());
before->set_history((int)waypoint.get_before());
adj_continuity.set_value(waypoint.get_continuity());
adj_bias.set_value(waypoint.get_bias());
adj_temporal_tension.set_value(waypoint.get_temporal_tension());
-
+
}
const synfig::Waypoint &
Widget_Waypoint::get_waypoint()const
{
-#warning This too!
+ //! \todo This too!
waypoint.set_time(time_widget->get_value());
- waypoint.set_value(value_widget->get_value());
+ if(waypoint.is_static())
+ waypoint.set_value(value_widget->get_value());
//int i;
waypoint.set_before((synfig::Waypoint::Interpolation)before->get_history());