diff options
Diffstat (limited to 'gtk2_ardour/editor_timefx.cc')
-rw-r--r-- | gtk2_ardour/editor_timefx.cc | 131 |
1 files changed, 3 insertions, 128 deletions
diff --git a/gtk2_ardour/editor_timefx.cc b/gtk2_ardour/editor_timefx.cc index 7552dfe8f7..79266c2285 100644 --- a/gtk2_ardour/editor_timefx.cc +++ b/gtk2_ardour/editor_timefx.cc @@ -30,10 +30,11 @@ #include <gtkmm2ext/window_title.h> #include <gtkmm2ext/utils.h> -#include "editor.h" -#include "audio_time_axis.h" #include "audio_region_view.h" +#include "audio_time_axis.h" +#include "editor.h" #include "region_selection.h" +#include "time_fx_dialog.h" #include "ardour/session.h" #include "ardour/region.h" @@ -59,132 +60,6 @@ using namespace sigc; using namespace Gtk; using namespace Gtkmm2ext; -Editor::TimeFXDialog::TimeFXDialog (Editor& e, bool pitch) - : ArdourDialog (X_("time fx dialog")), - editor (e), - pitching (pitch), - pitch_octave_adjustment (0.0, -4.0, 4.0, 1, 2.0), - pitch_semitone_adjustment (0.0, -12.0, 12.0, 1.0, 4.0), - pitch_cent_adjustment (0.0, -499.0, 500.0, 5.0, 15.0), - pitch_octave_spinner (pitch_octave_adjustment), - pitch_semitone_spinner (pitch_semitone_adjustment), - pitch_cent_spinner (pitch_cent_adjustment), - quick_button (_("Quick but Ugly")), - antialias_button (_("Skip Anti-aliasing")), - stretch_opts_label (_("Contents:")), - precise_button (_("Strict Linear")), - preserve_formants_button(_("Preserve Formants")) -{ - set_modal (true); - set_position (Gtk::WIN_POS_MOUSE); - set_name (N_("TimeFXDialog")); - - WindowTitle title(Glib::get_application_name()); - if (pitching) { - title += _("Pitch Shift"); - } else { - title += _("Time Stretch"); - } - set_title(title.get_string()); - - cancel_button = add_button (_("Cancel"), Gtk::RESPONSE_CANCEL); - - get_vbox()->set_spacing (5); - get_vbox()->set_border_width (12); - - if (pitching) { - - upper_button_box.set_spacing (5); - upper_button_box.set_border_width (5); - - Gtk::Label* l; - - l = manage (new Label (_("Octaves"))); - upper_button_box.pack_start (*l, false, false); - upper_button_box.pack_start (pitch_octave_spinner, false, false); - - l = manage (new Label (_("Semitones (12TET)"))); - upper_button_box.pack_start (*l, false, false); - upper_button_box.pack_start (pitch_semitone_spinner, false, false); - - l = manage (new Label (_("Cents"))); - upper_button_box.pack_start (*l, false, false); - upper_button_box.pack_start (pitch_cent_spinner, false, false); - - pitch_cent_spinner.set_digits (1); - - upper_button_box.pack_start (preserve_formants_button, false, false); - - - add_button (_("Shift"), Gtk::RESPONSE_ACCEPT); - - get_vbox()->pack_start (upper_button_box, false, false); - - } else { - -#ifdef USE_RUBBERBAND - opts_box.set_spacing (5); - opts_box.set_border_width (5); - vector<string> strings; - - set_popdown_strings (stretch_opts_selector, editor.rb_opt_strings); - /* set default */ - stretch_opts_selector.set_active_text (editor.rb_opt_strings[4]); - - opts_box.pack_start (precise_button, false, false); - opts_box.pack_start (stretch_opts_label, false, false); - opts_box.pack_start (stretch_opts_selector, false, false); - - get_vbox()->pack_start (opts_box, false, false); - -#else - upper_button_box.set_homogeneous (true); - upper_button_box.set_spacing (5); - upper_button_box.set_border_width (5); - - upper_button_box.pack_start (quick_button, true, true); - upper_button_box.pack_start (antialias_button, true, true); - - quick_button.set_name (N_("TimeFXButton")); - antialias_button.set_name (N_("TimeFXButton")); - - get_vbox()->pack_start (upper_button_box, false, false); - -#endif - add_button (_("Stretch/Shrink"), Gtk::RESPONSE_ACCEPT); - } - - get_vbox()->pack_start (progress_bar); - - progress_bar.set_name (N_("TimeFXProgress")); - - show_all_children (); -} - -gint -Editor::TimeFXDialog::update_progress () -{ - progress_bar.set_fraction (request.progress); - return !request.done; -} - -void -Editor::TimeFXDialog::cancel_in_progress () -{ - status = -2; - request.cancel = true; - first_cancel.disconnect(); -} - -gint -Editor::TimeFXDialog::delete_in_progress (GdkEventAny* ev) -{ - status = -2; - request.cancel = true; - first_delete.disconnect(); - return TRUE; -} - int Editor::time_stretch (RegionSelection& regions, float fraction) { |