summaryrefslogtreecommitdiff
path: root/gtk2_ardour
diff options
context:
space:
mode:
authorHans Baier <hansfbaier@googlemail.com>2008-04-19 02:11:11 +0000
committerHans Baier <hansfbaier@googlemail.com>2008-04-19 02:11:11 +0000
commit85c223da0dac610566e6461585892be1d2708660 (patch)
treee0d6800acb275cc4bdcda9fcb9a6352b1b6c00c5 /gtk2_ardour
parentaccc73a8c15ce9b86db269a52a132a88e9f17da2 (diff)
* first prototype for track based channel selection works
git-svn-id: svn://localhost/ardour2/branches/3.0@3267 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour')
-rw-r--r--gtk2_ardour/midi_time_axis.cc13
-rw-r--r--gtk2_ardour/midi_time_axis.h3
2 files changed, 16 insertions, 0 deletions
diff --git a/gtk2_ardour/midi_time_axis.cc b/gtk2_ardour/midi_time_axis.cc
index 7169302315..89ca218ea2 100644
--- a/gtk2_ardour/midi_time_axis.cc
+++ b/gtk2_ardour/midi_time_axis.cc
@@ -78,6 +78,7 @@
using namespace ARDOUR;
using namespace PBD;
using namespace Gtk;
+using namespace sigc;
using namespace Editing;
@@ -99,6 +100,18 @@ MidiTimeAxisView::MidiTimeAxisView (PublicEditor& ed, Session& sess, boost::shar
mute_button->set_active (false);
solo_button->set_active (false);
+ // add channel selection button
+ _channel_selection_button.add(*manage(new Label("c")));
+ controls_table.property_n_rows() = 3;
+ controls_table.attach(_channel_selection_button, 1, 2, 2, 3);
+ _channel_selection_button.show_all();
+
+ // add channel selector
+ controls_vbox.pack_end(_channel_selector);
+ _channel_selector.selection_changed.connect(
+ mem_fun(*midi_track()->midi_diskstream(), &MidiDiskstream::set_channel_mask));
+ _channel_selector.show_all();
+
if (is_midi_track()) {
controls_ebox.set_name ("MidiTimeAxisViewControlsBaseUnselected");
_note_mode = midi_track()->note_mode();
diff --git a/gtk2_ardour/midi_time_axis.h b/gtk2_ardour/midi_time_axis.h
index a91bd01d21..14aa4627e7 100644
--- a/gtk2_ardour/midi_time_axis.h
+++ b/gtk2_ardour/midi_time_axis.h
@@ -39,6 +39,7 @@
#include "route_time_axis.h"
#include "canvas.h"
#include "midi_streamview.h"
+#include "midi_channel_selector.h"
namespace ARDOUR {
class Session;
@@ -93,6 +94,8 @@ class MidiTimeAxisView : public RouteTimeAxisView
ARDOUR::NoteMode _note_mode;
Gtk::RadioMenuItem* _note_mode_item;
Gtk::RadioMenuItem* _percussion_mode_item;
+ Gtk::ToggleButton _channel_selection_button;
+ MidiMultipleChannelSelector _channel_selector;
};
#endif /* __ardour_midi_time_axis_h__ */