summaryrefslogtreecommitdiff
path: root/gtk2_ardour
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2019-10-18 15:17:54 +0200
committerRobin Gareus <robin@gareus.org>2019-10-18 22:56:46 +0200
commitf0d2327af09447c237dadb26e48923ca2129b863 (patch)
treef43df5bf5cd9840004ab05db68d24214d6f81e49 /gtk2_ardour
parenteade673771c8c57918c23b305317179bd5d6eed3 (diff)
Use AsyncMIDIPort API
Diffstat (limited to 'gtk2_ardour')
-rw-r--r--gtk2_ardour/port_group.cc14
-rw-r--r--gtk2_ardour/virtual_keyboard_window.cc4
2 files changed, 8 insertions, 10 deletions
diff --git a/gtk2_ardour/port_group.cc b/gtk2_ardour/port_group.cc
index ca3a73643b..ab7feb6185 100644
--- a/gtk2_ardour/port_group.cc
+++ b/gtk2_ardour/port_group.cc
@@ -26,6 +26,7 @@
#include "midi++/mmc.h"
+#include "ardour/async_midi_port.h"
#include "ardour/audioengine.h"
#include "ardour/auditioner.h"
#include "ardour/bundle.h"
@@ -490,15 +491,12 @@ PortGroupList::gather (ARDOUR::Session* session, ARDOUR::DataType type, bool inp
}
/* virtual keyboard */
- if ((type == DataType::MIDI || type == DataType::NIL)) {
+ if (!inputs && (type == DataType::MIDI || type == DataType::NIL)) {
+ boost::shared_ptr<ARDOUR::Port> ap = boost::dynamic_pointer_cast<ARDOUR::Port> (session->vkbd_output_port());
AudioEngine* ae = AudioEngine::instance();
- if (!inputs) {
- boost::shared_ptr<Bundle> vm (new Bundle (_("Virtual MIDI"), inputs));
- vm->add_channel (
- _("Virtual Keyboard"), DataType::MIDI, ae->make_port_name_non_relative (session->vkbd_output_port()->name())
- );
- program->add_bundle (vm);
- }
+ boost::shared_ptr<Bundle> vm (new Bundle (_("Virtual MIDI"), inputs));
+ vm->add_channel (_("Virtual Keyboard"), DataType::MIDI, ae->make_port_name_non_relative (ap->name()));
+ program->add_bundle (vm);
}
/* our sync ports */
diff --git a/gtk2_ardour/virtual_keyboard_window.cc b/gtk2_ardour/virtual_keyboard_window.cc
index 65efd089aa..bda15edce4 100644
--- a/gtk2_ardour/virtual_keyboard_window.cc
+++ b/gtk2_ardour/virtual_keyboard_window.cc
@@ -92,7 +92,7 @@ VirtualKeyboardWindow::note_on_event_handler (int note)
ev[0] = (MIDI_CMD_NOTE_ON | channel);
ev[1] = note;
ev[2] = _piano_velocity.get_value_as_int ();
- boost::dynamic_pointer_cast<ARDOUR::AsyncMIDIPort>(_session->vkbd_output_port())->write (ev, 3, 0);
+ _session->vkbd_output_port()->write (ev, 3, 0);
}
void
@@ -107,5 +107,5 @@ VirtualKeyboardWindow::note_off_event_handler (int note)
ev[0] = (MIDI_CMD_NOTE_OFF | channel);
ev[1] = note;
ev[2] = 0;
- boost::dynamic_pointer_cast<ARDOUR::AsyncMIDIPort>(_session->vkbd_output_port())->write (ev, 3, 0);
+ _session->vkbd_output_port()->write (ev, 3, 0);
}