From 00bf20c236d38a754e62c74cec3518aeec70d78a Mon Sep 17 00:00:00 2001 From: Sampo Savolainen Date: Thu, 10 Aug 2006 14:41:53 +0000 Subject: Plugin selector keyboard focus should now stay in the plugin list. More sensible defaults for the NSD and accelerators will work in plugin windows (plus keyboard will not affect the plugin window itself). git-svn-id: svn://localhost/ardour2/trunk@783 d708f5d6-7413-0410-9779-e7cbd77b26cf --- gtk2_ardour/new_session_dialog.cc | 23 +++++++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) (limited to 'gtk2_ardour/new_session_dialog.cc') diff --git a/gtk2_ardour/new_session_dialog.cc b/gtk2_ardour/new_session_dialog.cc index 47a2b2b6d3..993db62d59 100644 --- a/gtk2_ardour/new_session_dialog.cc +++ b/gtk2_ardour/new_session_dialog.cc @@ -141,15 +141,17 @@ NewSessionDialog::NewSessionDialog() advanced_table->attach(*m_control_bus_channel_count, 1, 2, 2, 3, Gtk::AttachOptions(), Gtk::AttachOptions(), 0, 0); advanced_table->attach(*m_master_bus_channel_count, 1, 2, 1, 2, Gtk::AttachOptions(), Gtk::AttachOptions(), 0, 0); advanced_table->attach(*m_create_master_bus, 0, 1, 1, 2, Gtk::FILL, Gtk::AttachOptions(), 0, 0); + m_connect_inputs->set_flags(Gtk::CAN_FOCUS); m_connect_inputs->set_relief(Gtk::RELIEF_NORMAL); m_connect_inputs->set_mode(true); - m_connect_inputs->set_active(false); + m_connect_inputs->set_active(true); m_connect_inputs->set_border_width(0); + m_limit_input_ports->set_flags(Gtk::CAN_FOCUS); m_limit_input_ports->set_relief(Gtk::RELIEF_NORMAL); m_limit_input_ports->set_mode(true); - m_limit_input_ports->set_sensitive(false); + m_limit_input_ports->set_sensitive(true); m_limit_input_ports->set_border_width(0); m_input_limit_count->set_flags(Gtk::CAN_FOCUS); m_input_limit_count->set_update_policy(Gtk::UPDATE_ALWAYS); @@ -157,6 +159,7 @@ NewSessionDialog::NewSessionDialog() m_input_limit_count->set_digits(0); m_input_limit_count->set_wrap(false); m_input_limit_count->set_sensitive(false); + input_port_limit_hbox->pack_start(*m_limit_input_ports, Gtk::PACK_SHRINK, 6); input_port_limit_hbox->pack_start(*m_input_limit_count, Gtk::PACK_EXPAND_PADDING, 0); input_port_vbox->pack_start(*m_connect_inputs, Gtk::PACK_SHRINK, 0); @@ -177,12 +180,12 @@ NewSessionDialog::NewSessionDialog() m_connect_outputs->set_flags(Gtk::CAN_FOCUS); m_connect_outputs->set_relief(Gtk::RELIEF_NORMAL); m_connect_outputs->set_mode(true); - m_connect_outputs->set_active(false); + m_connect_outputs->set_active(true); m_connect_outputs->set_border_width(0); m_limit_output_ports->set_flags(Gtk::CAN_FOCUS); m_limit_output_ports->set_relief(Gtk::RELIEF_NORMAL); m_limit_output_ports->set_mode(true); - m_limit_output_ports->set_sensitive(false); + m_limit_output_ports->set_sensitive(true); m_limit_output_ports->set_border_width(0); m_output_limit_count->set_flags(Gtk::CAN_FOCUS); m_output_limit_count->set_update_policy(Gtk::UPDATE_ALWAYS); @@ -597,12 +600,24 @@ void NewSessionDialog::connect_inputs_clicked () { m_limit_input_ports->set_sensitive(m_connect_inputs->get_active()); + + if (m_connect_inputs->get_active() && m_limit_input_ports->get_active()) { + m_input_limit_count->set_sensitive(true); + } else { + m_input_limit_count->set_sensitive(false); + } } void NewSessionDialog::connect_outputs_clicked () { m_limit_output_ports->set_sensitive(m_connect_outputs->get_active()); + + if (m_connect_outputs->get_active() && m_limit_output_ports->get_active()) { + m_output_limit_count->set_sensitive(true); + } else { + m_output_limit_count->set_sensitive(false); + } } void -- cgit v1.2.3