diff options
author | David Robillard <d@drobilla.net> | 2007-02-11 04:03:20 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2007-02-11 04:03:20 +0000 |
commit | 9be91674f5de3da9d27b6afcdf9d76d27f5b40cb (patch) | |
tree | 9841651284004afffa84a29b08c08b43b7a119e9 /src/gui/MachinaCanvas.cpp | |
parent | da3ac16cbfbf66edebe929f8d9bf7d76ab24dd74 (diff) | |
download | machina-9be91674f5de3da9d27b6afcdf9d76d27f5b40cb.tar.gz machina-9be91674f5de3da9d27b6afcdf9d76d27f5b40cb.tar.bz2 machina-9be91674f5de3da9d27b6afcdf9d76d27f5b40cb.zip |
Machina animation.
git-svn-id: http://svn.drobilla.net/lad/machina@303 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/gui/MachinaCanvas.cpp')
-rw-r--r-- | src/gui/MachinaCanvas.cpp | 22 |
1 files changed, 14 insertions, 8 deletions
diff --git a/src/gui/MachinaCanvas.cpp b/src/gui/MachinaCanvas.cpp index d725253..a691c9f 100644 --- a/src/gui/MachinaCanvas.cpp +++ b/src/gui/MachinaCanvas.cpp @@ -57,15 +57,21 @@ MachinaCanvas::node_clicked(SharedPtr<NodeView> item, GdkEventButton* event) if (event->button == 2) { _app->machine()->learn(Machina::LearnRequest::create(_app->maid(), node->node())); return; - } + } else if (event->button == 3) { - SharedPtr<NodeView> last = _last_clicked.lock(); + SharedPtr<NodeView> last = _last_clicked.lock(); - if (last) { - connect_node(last, node); - _last_clicked.reset(); - } else { - _last_clicked = node; + if (last) { + if (node != last) + connect_node(last, node); + + last->set_default_base_color(); + _last_clicked.reset(); + + } else { + _last_clicked = node; + node->set_base_color(0xFF0000FF); + } } } @@ -77,7 +83,7 @@ MachinaCanvas::canvas_event(GdkEvent* event) assert(event); - if (event->type == GDK_BUTTON_PRESS) { + if (event->type == GDK_BUTTON_RELEASE) { const double x = event->button.x; const double y = event->button.y; |