summaryrefslogtreecommitdiff
path: root/gtk2_ardour
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2008-12-02 17:34:05 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2008-12-02 17:34:05 +0000
commit6e3190e17c83b468abf262618e7341b778819d85 (patch)
treec1f589f06a89a1b211f7fad86ac0a86749aac0ba /gtk2_ardour
parent4fc93e9381c44e4a7f1be787727a65caacae50aa (diff)
define ARCH_X86 even on x86_64 (untested!); giso's patch for control surface track indexing; carl's patches for insert-time and double-click on redirect boxes
git-svn-id: svn://localhost/ardour2/branches/2.0-ongoing@4279 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour')
-rw-r--r--gtk2_ardour/editor_ops.cc37
-rw-r--r--gtk2_ardour/plugin_selector.h2
-rw-r--r--gtk2_ardour/redirect_box.cc6
3 files changed, 29 insertions, 16 deletions
diff --git a/gtk2_ardour/editor_ops.cc b/gtk2_ardour/editor_ops.cc
index 51cb8b6f2d..6b867500ae 100644
--- a/gtk2_ardour/editor_ops.cc
+++ b/gtk2_ardour/editor_ops.cc
@@ -36,7 +36,6 @@
#include <gtkmm2ext/window_title.h>
#include <gtkmm2ext/popup.h>
-
#include <ardour/audioengine.h>
#include <ardour/session.h>
#include <ardour/audioplaylist.h>
@@ -6014,26 +6013,34 @@ Editor::insert_time (nframes64_t pos, nframes64_t frames, InsertTimeOption opt,
begin_reversible_command (_("insert time"));
for (TrackSelection::iterator x = selection->tracks.begin(); x != selection->tracks.end(); ++x) {
+ /* regions */
boost::shared_ptr<Playlist> pl = (*x)->playlist();
- if (!pl) {
- continue;
- }
-
- XMLNode &before = pl->get_state();
+ if (pl) {
- if (opt == SplitIntersected) {
- pl->split (pos);
+ XMLNode &before = pl->get_state();
+
+ if (opt == SplitIntersected) {
+ pl->split (pos);
+ }
+
+ pl->shift (pos, frames, (opt == MoveIntersected), ignore_music_glue);
+
+ XMLNode &after = pl->get_state();
+
+ session->add_command (new MementoCommand<Playlist> (*pl, &before, &after));
+ commit = true;
+ }
+
+ /* automation */
+ RouteTimeAxisView* rtav = dynamic_cast<RouteTimeAxisView*> (*x);
+ if (rtav) {
+ rtav->route ()->shift (pos, frames);
+ commit = true;
}
-
- pl->shift (pos, frames, (opt == MoveIntersected), ignore_music_glue);
-
- XMLNode &after = pl->get_state();
-
- session->add_command (new MementoCommand<Playlist> (*pl, &before, &after));
- commit = true;
}
+ /* markers */
if (markers_too) {
bool moved = false;
XMLNode& before (session->locations()->get_state());
diff --git a/gtk2_ardour/plugin_selector.h b/gtk2_ardour/plugin_selector.h
index c2f657679f..ab5495b348 100644
--- a/gtk2_ardour/plugin_selector.h
+++ b/gtk2_ardour/plugin_selector.h
@@ -46,6 +46,7 @@ class PluginSelector : public ArdourDialog
void on_show ();
Gtk::Menu& plugin_menu ();
+ void show_manager ();
private:
PluginInterestedObject* interested_object;
@@ -125,7 +126,6 @@ class PluginSelector : public ArdourDialog
void plugin_chosen_from_menu (const ARDOUR::PluginInfoPtr&);
Gtk::Menu* _menu;
- void show_manager ();
};
#endif // __ardour_plugin_selector_h__
diff --git a/gtk2_ardour/redirect_box.cc b/gtk2_ardour/redirect_box.cc
index b6c5694dcf..2a696e2d2e 100644
--- a/gtk2_ardour/redirect_box.cc
+++ b/gtk2_ardour/redirect_box.cc
@@ -303,6 +303,12 @@ RedirectBox::redirect_button_press_event (GdkEventButton *ev)
// this is purely informational but necessary
RedirectSelected (redirect); // emit
+
+ } else if (!redirect && ev->button == 1 && ev->type == GDK_2BUTTON_PRESS) {
+
+ choose_plugin ();
+ _plugin_selector.show_manager ();
+
}
return ret;