SummaryInspectorWidget.hpp
1 #pragma once
2 #include <Inspector/InspectorWidgetBase.hpp>
3 
4 #include <ossia/detail/hash_map.hpp>
5 
6 #include <list>
7 #include <vector>
8 #include <verdigris>
9 
10 namespace Inspector
11 {
12 class InspectorSectionWidget;
13 }
14 namespace Scenario
15 {
16 class TimeSyncSummaryWidget;
17 class EventSummaryWidget;
18 class IntervalSummaryWidget;
19 class IntervalModel;
20 class TimeSyncModel;
21 class EventModel;
22 class StateModel;
24 {
25  W_OBJECT(SummaryInspectorWidget)
26 public:
28  const IdentifiedObjectAbstract* obj,
29  const ossia::hash_set<const IntervalModel*>& intervals,
30  const ossia::hash_set<const TimeSyncModel*>& timesyncs,
31  const ossia::hash_set<const EventModel*>& events,
32  const ossia::hash_set<const StateModel*>& states,
33  const score::DocumentContext& context, QWidget* parent = nullptr);
34  ~SummaryInspectorWidget() override;
35 
36  void update(const QList<const IdentifiedObjectAbstract*>&);
37 
38 private:
39  std::vector<QWidget*> m_properties;
40  Inspector::InspectorSectionWidget* m_itvSection{};
41  Inspector::InspectorSectionWidget* m_syncSection{};
42  Inspector::InspectorSectionWidget* m_evSection{};
43 
44  std::vector<IntervalSummaryWidget*> m_itvs;
45  std::vector<EventSummaryWidget*> m_evs;
46  std::vector<TimeSyncSummaryWidget*> m_syncs;
47 };
48 }
Base class for IdentifiedObject.
Definition: IdentifiedObjectAbstract.hpp:16
InspectorSectionWidget is widget that can fold or unfold his content.
Definition: InspectorSectionWidget.hpp:33
The InspectorWidgetBase class Set the global structuration for an inspected element.
Definition: InspectorWidgetBase.hpp:37
Definition: SummaryInspectorWidget.hpp:24
Classes used for making and extending the inspector (default right panel).
Definition: lib/score/widgets/Layout.hpp:27
Main plug-in of score.
Definition: score-plugin-dataflow/Dataflow/PortItem.hpp:14
Definition: DocumentContext.hpp:18