10#ifndef __GUI_WIDGETS_EVENT_VIEWER_H__
11#define __GUI_WIDGETS_EVENT_VIEWER_H__
13#include "common/dsp/region_identifier.h"
14#include "common/utils/types.h"
15#include "gui/backend/gtk_widgets/gtk_wrapper.h"
16#include "gui/backend/gtk_widgets/item_factory.h"
18#define EVENT_VIEWER_WIDGET_TYPE (event_viewer_widget_get_type ())
27class ArrangerSelections;
35#define MW_TIMELINE_EVENT_VIEWER MW_MAIN_NOTEBOOK->event_viewer
36#define MW_EDITOR_EVENT_VIEWER_STACK MW_BOT_DOCK_EDGE->event_viewer_stack
37#define MW_MIDI_EVENT_VIEWER MW_BOT_DOCK_EDGE->event_viewer_midi
38#define MW_CHORD_EVENT_VIEWER MW_BOT_DOCK_EDGE->event_viewer_chord
39#define MW_AUDIO_EVENT_VIEWER MW_BOT_DOCK_EDGE->event_viewer_audio
40#define MW_AUTOMATION_EVENT_VIEWER MW_BOT_DOCK_EDGE->event_viewer_automation
42enum class EventViewerType
44 EVENT_VIEWER_TYPE_TIMELINE,
45 EVENT_VIEWER_TYPE_CHORD,
46 EVENT_VIEWER_TYPE_MIDI,
47 EVENT_VIEWER_TYPE_AUDIO,
48 EVENT_VIEWER_TYPE_AUTOMATION,
51using EventViewerWidget =
struct _EventViewerWidget
53 GtkBox parent_instance;
56 GtkColumnView * column_view;
59 ItemFactoryPtrVector item_factories;
69 std::unique_ptr<ArrangerSelections> last_selections;
72 bool marking_selected_objs;
101 bool selections_only);
104event_viewer_widget_new (
void);