50 lines
2.6 KiB
C++
Executable File
50 lines
2.6 KiB
C++
Executable File
#include "toolz.h"
|
|
|
|
#include <LtsScriptTimeline/script_timeline.h>
|
|
#include <LtsScriptTimeline/track_widget.h>
|
|
#include <LtsScriptTimeline/track_content_widget.h>
|
|
#include <LtsScriptTimeline/track_entry_painters.h>
|
|
|
|
|
|
namespace PresentationManagement
|
|
{
|
|
void prepareScriptTimeline(LtsScriptTimeline::ScriptTimeline *scriptTimeline, const QString &screen1Text, const QString &screen2Text, const QString &replayText, const QString &audioText)
|
|
{
|
|
LtsScriptTimeline::TrackWidget *twScreen2 = scriptTimeline->addTrack(screen2Text);
|
|
twScreen2->setInternalName(QStringLiteral("Screen 2"));
|
|
twScreen2->getTrackContentWidget()->addDisallowedType(LtsScriptTimeline::TrackEntryType::SituationReplay);
|
|
twScreen2->getTrackContentWidget()->addDisallowedType(LtsScriptTimeline::TrackEntryType::Snapshot);
|
|
twScreen2->getTrackContentWidget()->addDisallowedType(LtsScriptTimeline::TrackEntryType::Audio);
|
|
|
|
|
|
LtsScriptTimeline::TrackWidget *twScreen1 = scriptTimeline->addTrack(screen1Text);
|
|
twScreen1->setInternalName(QStringLiteral("Screen 1"));
|
|
twScreen1->getTrackContentWidget()->addDisallowedType(LtsScriptTimeline::TrackEntryType::SituationReplay);
|
|
twScreen1->getTrackContentWidget()->addDisallowedType(LtsScriptTimeline::TrackEntryType::Snapshot);
|
|
twScreen1->getTrackContentWidget()->addDisallowedType(LtsScriptTimeline::TrackEntryType::Audio);
|
|
|
|
|
|
// Give both trackwidgets knowledge of each other which allows detecting collisions on both TrackEntryWidgets
|
|
twScreen1->addCorrespondingTrackWidget(twScreen2->getTrackContentWidget());
|
|
twScreen2->addCorrespondingTrackWidget(twScreen1->getTrackContentWidget());
|
|
|
|
|
|
LtsScriptTimeline::TrackWidget *twReplay = scriptTimeline->addTrack(replayText, false);
|
|
twReplay->setInternalName(QStringLiteral("Replay"));
|
|
twReplay->getTrackContentWidget()->addAllowedType(LtsScriptTimeline::TrackEntryType::SituationReplay);
|
|
twReplay->getTrackContentWidget()->addAllowedType(LtsScriptTimeline::TrackEntryType::Snapshot);
|
|
twReplay->getTrackContentWidget()->addDisallowedType(LtsScriptTimeline::TrackEntryType::Audio);
|
|
|
|
// add replay to screens and vice versa
|
|
twScreen1->addCorrespondingTrackWidget(twReplay->getTrackContentWidget());
|
|
twScreen2->addCorrespondingTrackWidget(twReplay->getTrackContentWidget());
|
|
twReplay->addCorrespondingTrackWidget(twScreen1->getTrackContentWidget());
|
|
twReplay->addCorrespondingTrackWidget(twScreen2->getTrackContentWidget());
|
|
|
|
|
|
LtsScriptTimeline::TrackWidget *twAudio = scriptTimeline->addTrack(audioText, false);
|
|
twAudio->setInternalName(QStringLiteral("Audio"));
|
|
twAudio->getTrackContentWidget()->addAllowedType(LtsScriptTimeline::TrackEntryType::Audio);
|
|
}
|
|
} // namespace PresentationManagement
|