projects
/
synfig.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Improve the waypoint context menus. Now it's possible to delete and duplicate comple...
[synfig.git]
/
synfig-studio
/
trunk
/
src
/
gtkmm
/
instance.cpp
diff --git
a/synfig-studio/trunk/src/gtkmm/instance.cpp
b/synfig-studio/trunk/src/gtkmm/instance.cpp
index
8ac71f2
..
e148787
100644
(file)
--- a/
synfig-studio/trunk/src/gtkmm/instance.cpp
+++ b/
synfig-studio/trunk/src/gtkmm/instance.cpp
@@
-1065,15
+1065,23
@@
Instance::make_param_menu(Gtk::Menu *menu,synfig::Canvas::Handle canvas, synfiga
try
{
try
{
+ // try to find a waypoint at the current time - if we
+ // can't, we don't want the menu entry - an exception is thrown
WaypointList::iterator iter(value_node->find(canvas->get_time()));
WaypointList::iterator iter(value_node->find(canvas->get_time()));
+ std::set<synfig::Waypoint, std::less<UniqueID> > waypoint_set;
+ waypoint_set.insert(*iter);
+
parammenu.items().push_back(Gtk::Menu_Helpers::MenuElem(_("Edit Waypoint"),
sigc::bind(
sigc::bind(
sigc::bind(
parammenu.items().push_back(Gtk::Menu_Helpers::MenuElem(_("Edit Waypoint"),
sigc::bind(
sigc::bind(
sigc::bind(
- sigc::mem_fun(*find_canvas_view(canvas),&studio::CanvasView::on_waypoint_clicked),
+ sigc::bind(
+ sigc::mem_fun(*find_canvas_view(canvas),&studio::CanvasView::on_waypoint_clicked_canvasview),
+ synfig::Waypoint::SIDE_UNSPECIFIED
+ ),
-1
),
-1
),
- *iter
+ waypoint_set
),
value_desc
)
),
value_desc
)