X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Fmidi_streamview.h;h=b3506d42248d2c34cea8b16911b1c56dcab6c48d;hb=7022456b4fc49bbef6a0f308f6f6557d659eff52;hp=a939d8ea7d5e76b511784e65bfe819a339789e5a;hpb=e64486acfad5c366f33d13ccd9b1303e0767fbe9;p=ardour.git diff --git a/gtk2_ardour/midi_streamview.h b/gtk2_ardour/midi_streamview.h index a939d8ea7d..b3506d4224 100644 --- a/gtk2_ardour/midi_streamview.h +++ b/gtk2_ardour/midi_streamview.h @@ -27,19 +27,22 @@ #include "streamview.h" #include "time_axis_view_item.h" #include "route_time_axis.h" -#include "canvas.h" namespace Gdk { class Color; } namespace ARDOUR { - class Route; class Crossfade; - class PeakData; + class MidiModel; class MidiRegion; + class Route; class Source; - class MidiModel; + struct PeakData; +} + +namespace ArdourCanvas { + class LineSet; } class PublicEditor; @@ -76,6 +79,8 @@ class MidiStreamView : public StreamView void redisplay_track (); + void leave_internal_edit_mode (); + inline double contents_height() const { return (child_height() - TimeAxisViewItem::NAME_HIGHLIGHT_SIZE - 2); } @@ -97,6 +102,9 @@ class MidiStreamView : public StreamView void apply_note_range(uint8_t lowest, uint8_t highest, bool to_region_views); + void suspend_updates (); + void resume_updates (); + private: void setup_rec_box (); void update_rec_box (); @@ -118,6 +126,7 @@ class MidiStreamView : public StreamView void color_handler (); void note_range_adjustment_changed(); + void apply_note_range_to_regions (); bool _range_dirty; double _range_sum_cache; @@ -126,6 +135,8 @@ class MidiStreamView : public StreamView uint8_t _data_note_min; ///< in data uint8_t _data_note_max; ///< in data ArdourCanvas::LineSet* _note_lines; + /** true if updates to the note lines and regions are currently suspended */ + bool _updates_suspended; }; #endif /* __ardour_midi_streamview_h__ */