wxTimelineCtrlWidget
Loading...
Searching...
No Matches
TimelineItemData.h
Go to the documentation of this file.
1#ifndef _TIMELINEITEMDATA_H
2#define _TIMELINEITEMDATA_H
3
4#include <wx/datetime.h>
5
6// A simple reusable structure for Timeline data
8{
9public:
11 : Start(0)
12 , End(0)
13 {
14 }
15
16 TimelineItemData(int startSeconds, int endSeconds)
17 : Start(startSeconds)
18 , End(endSeconds)
19 {
20 }
21
22 TimelineItemData(wxTimeSpan startSpan, wxTimeSpan endSpan)
23 : Start(startSpan.GetSeconds().ToLong())
24 , End(endSpan.GetSeconds().ToLong())
25 {
26 }
27
28 int GetStartTime() const { return Start; }
29 int GetEndTime() const { return End; }
30 int GetDuration() const { return End - Start; }
31
32 void SetStartTime(int start) { Start = start; }
33 void SetEndTime(int end) { End = end; }
34 void SetDuration(int duration) { End = Start + duration; }
35
36 virtual ~TimelineItemData() = default;
37
38 virtual const wxString& GetName() const = 0;
39
40 // Set the name of the item
41 virtual void SetName(const wxString& name) = 0;
42
43private:
44 int Start;
45 int End;
46};
47
48#endif // _TIMELINEITEMDATA_H
Definition TimelineItemData.h:8
TimelineItemData(wxTimeSpan startSpan, wxTimeSpan endSpan)
Definition TimelineItemData.h:22
int End
Definition TimelineItemData.h:45
int GetEndTime() const
Definition TimelineItemData.h:29
virtual ~TimelineItemData()=default
void SetStartTime(int start)
Definition TimelineItemData.h:32
TimelineItemData()
Definition TimelineItemData.h:10
TimelineItemData(int startSeconds, int endSeconds)
Definition TimelineItemData.h:16
void SetDuration(int duration)
Definition TimelineItemData.h:34
void SetEndTime(int end)
Definition TimelineItemData.h:33
int GetDuration() const
Definition TimelineItemData.h:30
virtual void SetName(const wxString &name)=0
virtual const wxString & GetName() const =0
int GetStartTime() const
Definition TimelineItemData.h:28
int Start
Definition TimelineItemData.h:44