GUI options to select FLAC as media format
[ardour.git] / gtk2_ardour / midi_list_editor.h
index 6061f54db6d4c1962e140e85aa474e05e8cb0fab..764dc5696a5cb812fc263a1fd1618118cfa12075 100644 (file)
 #include <gtkmm/liststore.h>
 #include <gtkmm/scrolledwindow.h>
 
-#include "evoral/types.hpp"
-
 #include "ardour/session_handle.h"
 
 #include "ardour_window.h"
 
 namespace Evoral {
        template<typename Time> class Note;
+       class                         Beats;
 };
 
 namespace ARDOUR {
@@ -44,15 +43,16 @@ namespace ARDOUR {
 
 class MidiListEditor : public ArdourWindow
 {
-  public:
-       typedef Evoral::Note<Evoral::MusicalTime> NoteType;
+public:
+       typedef Evoral::Note<Temporal::Beats> NoteType;
 
        MidiListEditor(ARDOUR::Session*, boost::shared_ptr<ARDOUR::MidiRegion>,
-                      boost::shared_ptr<ARDOUR::MidiTrack>);
+                      boost::shared_ptr<ARDOUR::MidiTrack>);
        ~MidiListEditor();
 
-  private:
-       struct MidiListModelColumns : public Gtk::TreeModel::ColumnRecord {
+private:
+       struct MidiListModelColumns : public Gtk::TreeModel::ColumnRecord
+       {
                MidiListModelColumns() {
                        add (channel);
                        add (note);
@@ -60,7 +60,6 @@ class MidiListEditor : public ArdourWindow
                        add (velocity);
                        add (start);
                        add (length);
-                       add (end);
                        add (_note);
                };
                Gtk::TreeModelColumn<uint8_t>     channel;
@@ -69,11 +68,11 @@ class MidiListEditor : public ArdourWindow
                Gtk::TreeModelColumn<uint8_t>     velocity;
                Gtk::TreeModelColumn<std::string> start;
                Gtk::TreeModelColumn<std::string> length;
-               Gtk::TreeModelColumn<std::string> end;
                Gtk::TreeModelColumn<boost::shared_ptr<NoteType> > _note;
        };
 
-       struct NoteLengthColumns : public Gtk::TreeModel::ColumnRecord {
+       struct NoteLengthColumns : public Gtk::TreeModel::ColumnRecord
+       {
                NoteLengthColumns() {
                        add (ticks);
                        add (name);
@@ -111,6 +110,7 @@ class MidiListEditor : public ArdourWindow
 
        bool key_press (GdkEventKey* ev);
        bool key_release (GdkEventKey* ev);
+       bool scroll_event (GdkEventScroll*);
 
        void delete_selected_note ();
        void selection_changed ();