summaryrefslogtreecommitdiff
path: root/gtk2_ardour
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2013-01-20 03:09:43 +0000
committerDavid Robillard <d@drobilla.net>2013-01-20 03:09:43 +0000
commit16a09cad63133004dabcee9c05cc7010ec75930c (patch)
tree1dba3e1a805b5c5c18924bb62afc0f4187c53ae5 /gtk2_ardour
parent511d68000c4b832156e3025e7ce655e50a428b77 (diff)
Allow PC flags to be editing with the draw tool as well.
git-svn-id: svn://localhost/ardour2/branches/3.0@13915 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour')
-rw-r--r--gtk2_ardour/canvas_patch_change.cc12
1 files changed, 10 insertions, 2 deletions
diff --git a/gtk2_ardour/canvas_patch_change.cc b/gtk2_ardour/canvas_patch_change.cc
index 8ba644f025..2678868e02 100644
--- a/gtk2_ardour/canvas_patch_change.cc
+++ b/gtk2_ardour/canvas_patch_change.cc
@@ -143,6 +143,14 @@ CanvasPatchChange::on_patch_menu_selected(const PatchPrimaryKey& key)
_region.change_patch_change (*this, key);
}
+static bool
+in_edit_mode(Editor* editor)
+{
+ return (editor->internal_editing() &&
+ (editor->current_mouse_mode() == Editing::MouseObject ||
+ editor->current_mouse_mode() == Editing::MouseDraw));
+}
+
bool
CanvasPatchChange::on_event (GdkEvent* ev)
{
@@ -152,7 +160,7 @@ CanvasPatchChange::on_event (GdkEvent* ev)
case GDK_BUTTON_PRESS:
/* XXX: icky dcast */
e = dynamic_cast<Editor*> (&_region.get_time_axis_view().editor());
- if (e->current_mouse_mode() == Editing::MouseObject && e->internal_editing()) {
+ if (in_edit_mode(e)) {
if (Gtkmm2ext::Keyboard::is_delete_event (&ev->button)) {
@@ -214,7 +222,7 @@ CanvasPatchChange::on_event (GdkEvent* ev)
case GDK_SCROLL:
/* XXX: icky dcast */
e = dynamic_cast<Editor*> (&_region.get_time_axis_view().editor());
- if (e->current_mouse_mode() == Editing::MouseObject && e->internal_editing()) {
+ if (in_edit_mode(e)) {
if (ev->scroll.direction == GDK_SCROLL_UP) {
if (Keyboard::modifier_state_contains (ev->scroll.state, Keyboard::PrimaryModifier)) {
_region.previous_bank (*this);