summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gtk2_ardour/processor_box.cc36
-rw-r--r--gtk2_ardour/processor_box.h2
2 files changed, 35 insertions, 3 deletions
diff --git a/gtk2_ardour/processor_box.cc b/gtk2_ardour/processor_box.cc
index bb09aba272..6e63146acf 100644
--- a/gtk2_ardour/processor_box.cc
+++ b/gtk2_ardour/processor_box.cc
@@ -708,10 +708,23 @@ ProcessorBox::leave_notify (GdkEventCrossing* ev)
}
bool
-ProcessorBox::processor_key_press_event (GdkEventKey *)
+ProcessorBox::processor_key_press_event (GdkEventKey *ev)
{
- /* do real stuff on key release */
- return false;
+ switch (ev->keyval) {
+ case GDK_a:
+ case GDK_c:
+ case GDK_x:
+ case GDK_v:
+ case GDK_Up:
+ case GDK_Down:
+ case GDK_Delete:
+ case GDK_BackSpace:
+ case GDK_Return:
+ case GDK_slash:
+ /* do real stuff on key release */
+ return false;
+ }
+ return forward_key_press (ev);
}
bool
@@ -769,9 +782,13 @@ ProcessorBox::processor_key_release_event (GdkEventKey *ev)
break;
case GDK_Up:
+ processors_down ();
+ ret = true;
break;
case GDK_Down:
+ processors_up ();
+ ret = true;
break;
case GDK_Delete:
@@ -1455,6 +1472,19 @@ ProcessorBox::copy_processors (const ProcSelection& to_be_copied)
}
void
+ProcessorBox::processors_up ()
+{
+ /* unimplemented */
+}
+
+void
+ProcessorBox::processors_down ()
+{
+ /* unimplemented */
+}
+
+
+void
ProcessorBox::delete_processors ()
{
ProcSelection to_be_deleted;
diff --git a/gtk2_ardour/processor_box.h b/gtk2_ardour/processor_box.h
index 13eed5e663..a2c28a945a 100644
--- a/gtk2_ardour/processor_box.h
+++ b/gtk2_ardour/processor_box.h
@@ -306,6 +306,8 @@ class ProcessorBox : public Gtk::HBox, public PluginInterestedObject, public ARD
void delete_processors ();
void paste_processors ();
void paste_processors (boost::shared_ptr<ARDOUR::Processor> before);
+ void processors_up ();
+ void processors_down ();
void delete_dragged_processors (const std::list<boost::shared_ptr<ARDOUR::Processor> >&);
void clear_processors ();