#
# $Id$
# $HeadURL$
# $Author$
# Created by Mike Wille, SLSE, 2016-09-06
#

# MrkCommon benötigt LtsDataView, welches nur mit BUILD_RTI verfügbar ist
# Make ${Qt6_Widgets} optional
if(QT6_GUI_AVAILABLE AND TARGET Qt6::Widgets)
  set(Qt6_Widgets ${Qt6_Widgets})
else()
  set(Qt6_Widgets "")
endif()


IF(BUILD_RTI)

#
# Data Plugin
#
SET(mrk_common_gui_SRCS
  mrk_dialog_model.cpp
  mrk_dialog_model.h
  CustomViews/mrk_marker.cpp
  CustomViews/mrk_marker.h
)

# FilterManagement-Plugins temporär ausgeschlossen für BUILD_RTI=OFF
# if(BUILD_RTI)
#   list(APPEND mrk_common_gui_SRCS
#     mrk_apply_filter.cpp
#     mrk_apply_filter.h
#   )
# endif()

NGL_WRAP_UI(mrk_common_gui_SRCS
  CustomViews/mrk_marker.ui
)

NGL_ADD_LIBRARY2(WS MrkCommon SHARED ${mrk_common_gui_SRCS})
NGL_TARGET_INCLUDE_DIRECTORIES(MrkCommon
  PUBLIC
    ${CMAKE_CURRENT_SOURCE_DIR}/../../Viewer/LtsDataView/
)
if(QT6_GUI_AVAILABLE)
  NGL_TARGET_LINK_LIBRARIES(MrkCommon
    PRIVATE
      NGLLogger
      LtsSession
      LtsSessionData
      LtsUtilsGuiDds
      # OpmDataPluginInterface  # External dependency
      ngltools
      # svcMrkCommon  # External dependency
    PUBLIC
      # MrkDataPluginInterface  # External dependency - check if available
      ${Qt6_Widgets}
      LtsWidgets
      LtsDataView
  )
endif()

# FilterManagement nur bei BUILD_RTI
if(BUILD_RTI)
  target_link_libraries(MrkCommon PRIVATE FltDataPluginInterface)
endif()

ENDIF() # BUILD_RTI
