8 #include <nap/service.h>
10 #include <nap/datetime.h>
11 #include <rtti/factory.h>
12 #include <imguiservice.h>
19 class SequenceEventTrackSegmentViewBase;
20 class SequenceEventTrackView;
21 class SequenceTrackSegmentEventBase;
22 class SequenceTrackView;
23 class SequenceGUIService;
24 class SequenceEditorGUIView;
25 class SequenceEditorGUIState;
40 inline constexpr
const char *
play =
"seq_play.png";
41 inline constexpr
const char *
stop =
"seq_stop.png";
42 inline constexpr
const char *
rewind =
"seq_replay.png";
43 inline constexpr
const char *
up =
"seq_up-arrow.png";
44 inline constexpr
const char *
down =
"seq_down-arrow.png";
45 inline constexpr
const char *
pause =
"seq_pause.png";
46 inline constexpr
const char *
unpause =
"seq_unpause.png";
47 inline constexpr
const char *
lock =
"seq_lock.png";
48 inline constexpr
const char *
undo =
"seq_undo.png";
49 inline constexpr
const char *
redo =
"seq_redo.png";
50 inline constexpr
const char *
history =
"seq_history.png";
92 ImU32 mCurveColors[4] = {4285098440, 4278255360, 4294901760, 4278255615};
103 static bool registerObjectCreator(std::unique_ptr<rtti::IObjectCreator>(* objectCreator)(
SequenceGUIService*));
112 bool registerEventView();
144 std::unique_ptr<SequenceEventTrackSegmentViewBase> invokeEventTrackSegmentViewFactory(
rtti::TypeInfo eventType);
157 const std::vector<rtti::TypeInfo>& getRegisteredSegmentEventTypes()
const;
182 std::vector<rtti::TypeInfo> getAllTrackTypes()
const;
188 std::vector<rtti::TypeInfo> getAllRegisteredEventActions()
const;
212 void registerObjectCreators(
rtti::Factory& factory)
override;
228 virtual void getDependentServices(std::vector<rtti::TypeInfo>& dependencies);
238 std::unordered_map<rtti::TypeInfo, SequenceEventTrackEditFunc> mEditEventHandlerMap;
241 std::unordered_map<rtti::TypeInfo, SequenceEventTrackPasteFunc> mPasteEventMap;
244 std::vector<rtti::TypeInfo> mSegmentEventTypes;
std::unordered_map< rtti::TypeInfo, rtti::TypeInfo > SequenceTrackTypeForViewTypeMap
Definition: sequenceguiservice.h:32
const Colors & getColors() const
Definition: sequenceguiservice.h:205
constexpr const char * up
Definition: sequenceguiservice.h:43
Definition: sequenceeditorguistate.h:23
constexpr const char * pause
Definition: sequenceguiservice.h:45
constexpr const char * lock
Definition: sequenceguiservice.h:47
Definition: errorstate.h:19
constexpr const char * down
Definition: sequenceguiservice.h:44
Definition: sequenceguiservice.h:73
constexpr const char * play
Definition: sequenceguiservice.h:40
Definition: imguiservice.h:90
constexpr const char * stop
Definition: sequenceguiservice.h:41
constexpr const char * undo
Definition: sequenceguiservice.h:48
Definition: sequenceguiservice.h:63
Definition: sequenceeventtrackview.h:146
Definition: sequenceplayeroutput.h:23
std::unordered_map< rtti::TypeInfo, SequenceEventTrackSegmentViewFactoryFunc > SequenceEventTrackSegmentViewFactoryMap
Definition: sequenceguiservice.h:29
constexpr const char * redo
Definition: sequenceguiservice.h:49
std::function< std::unique_ptr< SequenceTrackView >(SequenceGUIService &, SequenceEditorGUIView &, SequenceEditorGUIState &)> SequenceTrackViewFactoryFunc
Definition: sequenceguiservice.h:30
Definition: templateservice.h:8
std::function< void(SequenceEventTrackView &)> SequenceEventTrackEditFunc
Definition: sequenceguiservice.h:34
Definition: sequenceeditorgui.h:80
Definition: sequencetracksegmentevent.h:21
Definition: imguiservice.h:165
Definition: templateapp.h:17
std::unordered_map< rtti::TypeInfo, SequenceTrackViewFactoryFunc > SequenceTrackViewFactoryMap
Definition: sequenceguiservice.h:31
std::function< std::unique_ptr< SequenceEventTrackSegmentViewBase >()> SequenceEventTrackSegmentViewFactoryFunc
Definition: sequenceguiservice.h:28
constexpr const char * history
Definition: sequenceguiservice.h:50
constexpr const char * rewind
Definition: sequenceguiservice.h:42
rttr::type TypeInfo
Definition: typeinfo.h:140
constexpr const char * unpause
Definition: sequenceguiservice.h:46
std::function< void(SequenceEventTrackView &, const std::string &, const SequenceTrackSegmentEventBase &, double)> SequenceEventTrackPasteFunc
Definition: sequenceguiservice.h:33