summaryrefslogtreecommitdiff
path: root/gtk2_ardour
diff options
context:
space:
mode:
authorHans Baier <hansfbaier@googlemail.com>2012-10-11 08:13:40 +0000
committerHans Baier <hansfbaier@googlemail.com>2012-10-11 08:13:40 +0000
commit5bb898fa41d19064f3d88a7dd636c6670e7807ef (patch)
tree51ed4e5bcb6b2ae3561ecf74e999ddc2193ba110 /gtk2_ardour
parent617720539880e62e838f6215c719e5129f98b140 (diff)
nicer layout of MIDI channel selector
git-svn-id: svn://localhost/ardour2/branches/3.0@13245 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour')
-rw-r--r--gtk2_ardour/midi_channel_selector.h7
-rw-r--r--gtk2_ardour/midi_time_axis.cc16
-rw-r--r--gtk2_ardour/midi_time_axis.h2
3 files changed, 15 insertions, 10 deletions
diff --git a/gtk2_ardour/midi_channel_selector.h b/gtk2_ardour/midi_channel_selector.h
index d1a43ff9b7..5764a8d813 100644
--- a/gtk2_ardour/midi_channel_selector.h
+++ b/gtk2_ardour/midi_channel_selector.h
@@ -44,10 +44,11 @@ public:
protected:
virtual void button_toggled(Gtk::ToggleButton* button, uint8_t button_nr) = 0;
- Gtk::Label _button_labels[4][4];
+ Gtk::Label _button_labels[4][4];
Gtkmm2ext::StatefulToggleButton _buttons[4][4];
- int _recursion_counter;
- bool was_clicked (GdkEventButton*);
+ int _recursion_counter;
+
+ bool was_clicked (GdkEventButton*);
};
class SingleMidiChannelSelector : public MidiChannelSelector
diff --git a/gtk2_ardour/midi_time_axis.cc b/gtk2_ardour/midi_time_axis.cc
index 9a4200b4af..a8960663e4 100644
--- a/gtk2_ardour/midi_time_axis.cc
+++ b/gtk2_ardour/midi_time_axis.cc
@@ -201,7 +201,6 @@ MidiTimeAxisView::set_route (boost::shared_ptr<Route> rt)
}
}
- HBox* midi_controls_hbox = manage(new HBox());
MIDI::Name::MidiPatchManager& patch_manager = MIDI::Name::MidiPatchManager::instance();
@@ -222,15 +221,20 @@ MidiTimeAxisView::set_route (boost::shared_ptr<Route> rt)
ARDOUR_UI::instance()->set_tip (_model_selector, _("External MIDI Device"));
ARDOUR_UI::instance()->set_tip (_custom_device_mode_selector, _("External Device Mode"));
- midi_controls_hbox->pack_start(_channel_selector, true, false);
+ _midi_controls_box.set_homogeneous(false);
+
if (!patch_manager.all_models().empty()) {
+ _midi_controls_box.resize(3, 3);
_midi_controls_box.set_border_width (5);
- _midi_controls_box.pack_start(_model_selector, true, false);
- _midi_controls_box.pack_start(_custom_device_mode_selector, true, false);
+ _midi_controls_box.attach(_channel_selector, 1, 2, 0, 1);
+ _midi_controls_box.attach(*(new Label(" ", false)), 0, 1, 1, 2);
+ _midi_controls_box.attach(*(new Label(" ", false)), 2, 3, 1, 2);
+ _midi_controls_box.attach(_model_selector, 1, 2, 1, 2);
+ _midi_controls_box.attach(_custom_device_mode_selector, 1, 2, 2, 3);
+ } else {
+ _midi_controls_box.attach(_channel_selector, 1, 2, 0, 1);
}
- _midi_controls_box.pack_start(*midi_controls_hbox, true, true);
-
controls_vbox.pack_start(_midi_controls_box, false, false);
// restore channel selector settings
diff --git a/gtk2_ardour/midi_time_axis.h b/gtk2_ardour/midi_time_axis.h
index 8761979947..bad85bcc93 100644
--- a/gtk2_ardour/midi_time_axis.h
+++ b/gtk2_ardour/midi_time_axis.h
@@ -130,7 +130,7 @@ class MidiTimeAxisView : public RouteTimeAxisView
Gtk::RadioMenuItem* _meter_color_mode_item;
Gtk::RadioMenuItem* _channel_color_mode_item;
Gtk::RadioMenuItem* _track_color_mode_item;
- Gtk::VBox _midi_controls_box;
+ Gtk::Table _midi_controls_box;
MidiMultipleChannelSelector _channel_selector;
Gtk::ComboBoxText _model_selector;
Gtk::ComboBoxText _custom_device_mode_selector;