summaryrefslogtreecommitdiff
path: root/gtk2_ardour
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2008-10-09 14:15:45 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2008-10-09 14:15:45 +0000
commit757c1c1026ffad4e56b0c4b5073d3925468c0a21 (patch)
tree9f2b15bd6c33d04dd1451e15e68d55d9610a88a0 /gtk2_ardour
parent7002aebbda78b11ddc006c3f5863916ce5992bfc (diff)
add global region fade toggle; fixup (?) reload of MIDI config state (both ported from 2.X)
git-svn-id: svn://localhost/ardour2/branches/3.0@3897 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour')
-rw-r--r--gtk2_ardour/ardour-sae.menus3
-rw-r--r--gtk2_ardour/ardour.menus1
-rw-r--r--gtk2_ardour/ardour_ui.cc2
-rw-r--r--gtk2_ardour/editor.h4
-rw-r--r--gtk2_ardour/editor_actions.cc10
-rw-r--r--gtk2_ardour/option_editor.cc19
-rw-r--r--gtk2_ardour/option_editor.h4
7 files changed, 39 insertions, 4 deletions
diff --git a/gtk2_ardour/ardour-sae.menus b/gtk2_ardour/ardour-sae.menus
index c2721f2a29..01482d61a3 100644
--- a/gtk2_ardour/ardour-sae.menus
+++ b/gtk2_ardour/ardour-sae.menus
@@ -212,7 +212,8 @@
<menuitem action='boost-region-gain'/>
<menuitem action='cut-region-gain'/>
<menuitem action='pitch-shift-region'/>
-
+ <separator/>
+ <menuitem action='toggle-region-fades'/>
</menu>
<menu name='View' action = 'View'>
diff --git a/gtk2_ardour/ardour.menus b/gtk2_ardour/ardour.menus
index 13468a5633..c56abbbcee 100644
--- a/gtk2_ardour/ardour.menus
+++ b/gtk2_ardour/ardour.menus
@@ -548,6 +548,7 @@
<menuitem action='link-region-and-track-selection'/>
<menuitem action='RubberbandingSnapsToGrid'/>
<menuitem action='AutoAnalyseAudio'/>
+ <menuitem action='toggle-region-fades'/>
</menu>
</menu>
<menu name='Help' action='Help'>
diff --git a/gtk2_ardour/ardour_ui.cc b/gtk2_ardour/ardour_ui.cc
index bf1a5bb5b4..694eb9b52b 100644
--- a/gtk2_ardour/ardour_ui.cc
+++ b/gtk2_ardour/ardour_ui.cc
@@ -304,8 +304,6 @@ ARDOUR_UI::create_engine ()
void
ARDOUR_UI::post_engine ()
{
- extern int setup_midi ();
-
/* Things to be done once we create the AudioEngine
*/
diff --git a/gtk2_ardour/editor.h b/gtk2_ardour/editor.h
index e3dd1050fc..81dad3c244 100644
--- a/gtk2_ardour/editor.h
+++ b/gtk2_ardour/editor.h
@@ -335,8 +335,10 @@ class Editor : public PublicEditor
void update_smpte_mode();
void update_video_pullup();
void update_subframes_per_frame ();
- /* xfades */
+ /* fades/xfades */
+
+ void toggle_region_fades ();
void toggle_auto_xfade ();
void toggle_xfades_active ();
void toggle_xfade_visibility ();
diff --git a/gtk2_ardour/editor_actions.cc b/gtk2_ardour/editor_actions.cc
index 06e4b2c91f..fb5c8d04f4 100644
--- a/gtk2_ardour/editor_actions.cc
+++ b/gtk2_ardour/editor_actions.cc
@@ -118,6 +118,8 @@ Editor::register_actions ()
ActionManager::session_sensitive_actions.push_back (act);
act = ActionManager::register_toggle_action (editor_actions, "toggle-auto-xfades", _("Created Automatically"), mem_fun(*this, &Editor::toggle_auto_xfade));
ActionManager::session_sensitive_actions.push_back (act);
+ act = ActionManager::register_toggle_action (editor_actions, "toggle-region-fades", _("Active Region Fades"), mem_fun(*this, &Editor::toggle_region_fades));
+ ActionManager::session_sensitive_actions.push_back (act);
act = ActionManager::register_action (editor_actions, "playhead-to-next-region-boundary", _("Playhead to Next Region Boundary"), bind (mem_fun(*this, &Editor::cursor_to_next_region_boundary), playhead_cursor));
ActionManager::session_sensitive_actions.push_back (act);
@@ -1657,6 +1659,12 @@ Editor::subframes_per_frame_chosen (uint32_t sfpf)
}
void
+Editor::toggle_region_fades ()
+{
+ ActionManager::toggle_config_state ("Editor", "toggle-region-fades", &Configuration::set_use_region_fades, &Configuration::get_use_region_fades);
+}
+
+void
Editor::toggle_auto_xfade ()
{
ActionManager::toggle_config_state ("Editor", "toggle-auto-xfades", &Configuration::set_auto_xfade, &Configuration::get_auto_xfade);
@@ -1708,6 +1716,8 @@ Editor::parameter_changed (const char* parameter_name)
} else if (PARAM_IS ("xfades-visible")) {
ActionManager::map_some_state ("Editor", "toggle-xfades-visible", &Configuration::get_xfades_visible);
update_xfade_visibility ();
+ } else if (PARAM_IS ("use-region-fades")) {
+ ActionManager::map_some_state ("Editor", "toggle-region-fades", &Configuration::get_use_region_fades);
} else if (PARAM_IS ("auto-xfade")) {
ActionManager::map_some_state ("Editor", "toggle-auto-xfades", &Configuration::get_auto_xfade);
} else if (PARAM_IS ("xfade-model")) {
diff --git a/gtk2_ardour/option_editor.cc b/gtk2_ardour/option_editor.cc
index 9ddf9999b9..ca598a363f 100644
--- a/gtk2_ardour/option_editor.cc
+++ b/gtk2_ardour/option_editor.cc
@@ -95,6 +95,8 @@ OptionEditor::OptionEditor (ARDOUR_UI& uip, PublicEditor& ed, Mixer_UI& mixui)
mmc_send_device_id_adjustment (0.0, 0.0, (double) 0x7f, 1.0, 16.0),
mmc_send_device_id_spinner (mmc_send_device_id_adjustment),
add_midi_port_button (_("Add new MIDI port")),
+ initial_program_change_adjustment (0.0, -1.0, (double) 0x7f, 1.0, 16.0),
+ initial_program_change_spinner (initial_program_change_adjustment),
/* Click */
@@ -528,10 +530,27 @@ OptionEditor::setup_midi_options ()
mmc_send_device_id_spinner.set_value(Config->get_mmc_send_device_id ());
+ hbox = manage (new HBox);
+ hbox->set_border_width (6);
+ hbox->set_spacing (6);
+ label = (manage (new Label (_("Startup program change"))));
+ hbox->pack_start (initial_program_change_spinner, false, false);
+ hbox->pack_start (*label, false, false);
+ midi_packer.pack_start (*hbox, false, false);
+
+ initial_program_change_spinner.set_value (Config->get_initial_program_change());
+ initial_program_change_adjustment.signal_value_changed().connect (mem_fun (*this, &OptionEditor::initial_program_change_adjusted));
+
add_midi_port_button.signal_clicked().connect (mem_fun (*this, &OptionEditor::add_midi_port));
}
void
+OptionEditor::initial_program_change_adjusted ()
+{
+ Config->set_initial_program_change (((int32_t) floor (initial_program_change_adjustment.get_value())) & 0x7f);
+}
+
+void
OptionEditor::redisplay_midi_ports ()
{
MIDI::Manager::PortMap::const_iterator i;
diff --git a/gtk2_ardour/option_editor.h b/gtk2_ardour/option_editor.h
index bb12698041..1aff7f2bcf 100644
--- a/gtk2_ardour/option_editor.h
+++ b/gtk2_ardour/option_editor.h
@@ -137,6 +137,8 @@ class OptionEditor : public ArdourDialog
Gtk::Adjustment mmc_send_device_id_adjustment;
Gtk::SpinButton mmc_send_device_id_spinner;
Gtk::Button add_midi_port_button;
+ Gtk::Adjustment initial_program_change_adjustment;
+ Gtk::SpinButton initial_program_change_spinner;
void add_midi_port ();
void remove_midi_port (MIDI::Port*);
@@ -155,6 +157,8 @@ class OptionEditor : public ArdourDialog
void mmc_receive_device_id_adjusted ();
void mmc_send_device_id_adjusted ();
+ void initial_program_change_adjusted ();
+
void map_port_online (MIDI::Port*, Gtk::ToggleButton*);
void setup_midi_options();