diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2008-12-02 17:34:05 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2008-12-02 17:34:05 +0000 |
commit | 6e3190e17c83b468abf262618e7341b778819d85 (patch) | |
tree | c1f589f06a89a1b211f7fad86ac0a86749aac0ba /gtk2_ardour | |
parent | 4fc93e9381c44e4a7f1be787727a65caacae50aa (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.cc | 37 | ||||
-rw-r--r-- | gtk2_ardour/plugin_selector.h | 2 | ||||
-rw-r--r-- | gtk2_ardour/redirect_box.cc | 6 |
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; |