#
# $Id$
# $HeadURL$
# $Author$
#
# Created by Mike Wille, SLSE, 2016-03-17
#

add_library(ExportBdvTopicSetting INTERFACE)
target_compile_definitions(ExportBdvTopicSetting INTERFACE EXPORT_BDV_TOPIC_AS_JSON)

SET(pre_script_gui_SRCS
  pre_journal_dialog.h
  pre_journal_dialog.cpp
  pre_journal_types.h
  pre_journal_types.cpp
  pre_screen.h
  pre_screen.cpp
  pre_screen_recorder.h
  pre_screen_recorder.cpp
  pre_screen_shotter.h
  pre_screen_shotter.cpp
  pre_script_timeline_gui_plugin.cpp
  pre_script_timeline_gui_plugin.h
  pre_script_delegate.cpp
  pre_script_delegate.h
  pre_script_dialog.h
  pre_script_dialog.cpp
  pre_script_dialog_drag_handler.cpp
  pre_script_dialog_drag_handler.h
  pre_script_dialog_resize_handler.cpp
  pre_script_dialog_resize_handler.h
  pre_script_dialog_select_handler.cpp
  pre_script_dialog_select_handler.h
  pre_script_model.cpp
  pre_script_model.h
  pre_topic_recorder.cpp
  pre_topic_recorder.h
  pre_topic_shotter.cpp
  pre_topic_shotter.h
  pre_storyboard.cpp
  pre_storyboard.h
  pre_topic_item.cpp
  pre_topic_item.h
  pre_topic_track.cpp
  pre_topic_track.h
  pre_utils.cpp
  pre_utils.h
)

QT5_WRAP_UI(pre_script_gui_SRCS
  pre_storyboard.ui
  pre_script_dialog.ui
  pre_journal_dialog.ui
)

NGL_ADD_LIBRARY(WS PreScriptTimelineGuiPlugin MODULE ${pre_script_gui_SRCS})
NGL_TARGET_COMPILE_DEFINITIONS(PreScriptTimelineGuiPlugin PRIVATE L=QStringLiteral)
NGL_TARGET_LINK_LIBRARIES(PreScriptTimelineGuiPlugin
  NGLLogger
  LtsSession
  PreDataPluginInterface
  PreScriptTimelineGuiPluginInterface
  PreGuiCommon
  PreGuiScriptCommon
  LtsTimeline
  svcPreCommon
  Qt5::Widgets
  LtsWidgets
  LtsDataView
  LtsSessionData
  ProjectConfig
  LtsScriptTimeline
  LtsUtilsCoreHeaderOnly
  LtsMultiMonitor
  Thp2Common

  LtsAppManager # start replay app
  LtsSessionData # set partition preset for replay app
  TopicEditorInterface
  TopicEditorBase
  LtsPluginManager # manipulate apps

  # for Topics
  EvlGuiPluginInterface
  SrmDataPluginInterface # start playback
  LtsPrinting
  SituationMapGuiPluginInterface

  # Script Player Controls:
  SrpGuiPluginInterface

  # file topic
  FlmExplorerGuiPluginInterface
  # building topic
  BdvViewerGuiPluginInterface
  # report topic
  RepGuiPluginInterface
  LtsReportDisplay
  MrkCommon # for ApplyFilter @ SitmapFilter
  LtsUtilsSettings
  ngltools # DTG
  situationMap # set time string on map
  ExportBdvTopicSetting
)

NGL_INSTALL_TARGET(PreScriptTimelineGuiPlugin)
