#
# $Id$
# $HeadURL$
# $Author$
# Created by Christian Ehrlicher, SLSE, 2016-02-29
#

# Make ${Qt6_Widgets} optional
if(QT6_GUI_AVAILABLE AND TARGET Qt6::Widgets)
  set(Qt6_Widgets ${Qt6_Widgets})
else()
  set(Qt6_Widgets "")
endif()


SET(smo_monitors_gui_SRCS
  smo_monitors_gui_plugin.cpp
  smo_monitors_gui_plugin.h
  smo_base_equipment_check.cpp
  smo_base_equipment_check.h
  smo_base_player_model.cpp
  smo_base_player_model.h
  smo_bite_model.h
  smo_bite_model.cpp
  smo_ctas_error_model.cpp
  smo_ctas_error_model.h
  smo_dialog.cpp
  smo_dialog.h
  smo_egcu_model.cpp
  smo_egcu_model.h
  smo_egcu_edit.cpp
  smo_egcu_edit.h
  smo_fault_message_dialog.cpp
  smo_fault_message_dialog.h
  smo_manipulation_model.h
  smo_manipulation_model.cpp
  smo_party_equipment_check_dialog.cpp
  smo_party_equipment_check_dialog.h
  smo_party_player_model.cpp
  smo_party_player_model.h
  smo_single_service_equipment_check_dialog.cpp
  smo_single_service_equipment_check_dialog.h
  smo_single_player_model.cpp
  smo_single_player_model.h
  smo_structure_element_edit.cpp
  smo_structure_element_edit.h
)

NGL_WRAP_UI(smo_monitors_gui_SRCS
  smo_dialog.ui
  smo_egcu_edit.ui
  smo_fault_message_dialog.ui
  smo_party_equipment_check_dialog.ui
  smo_single_service_equipment_check_dialog.ui
  smo_structure_element_edit.ui
)

NGL_ADD_LIBRARY(WS SmoMonitorsGuiPlugin MODULE ${smo_monitors_gui_SRCS})
if(QT6_GUI_AVAILABLE)
  NGL_TARGET_LINK_LIBRARIES(SmoMonitorsGuiPlugin
    ${Qt6_Widgets}
    AsbDataPluginInterface
    AsbHelper
    FlmDataPluginInterface
    FlmExplorerGuiPluginInterface
    GuiPluginInterface
    IsmDataPluginInterface
    IsmShared
    LtsCoordTrans
    LtsDataView
    LtsPrinting
    LtsSession
    LtsSessionData
    LtsUtilsGuiDds
    LtsUtilsSettings
    ngltools
    nglwidgets
    PpmCommon
    PpmDataPluginInterface
    SmoCheckButtonHandler
    SmoCommon
    SmoMonitorsGuiPluginInterface
    SituationMapGuiPluginInterface
    svcAsmClient
    svcBldCommon
  #  svcOssCommon
    svcOssClient
    svcSmoDummy
    TabocDataPluginInterface
    tabTelegrams
    svcAesClient
  )
endif()

NGL_INSTALL_TARGET(SmoMonitorsGuiPlugin)

## check_button_handler
SET(smo_check_button_handler_SRCS
  smo_check_button_handler.cpp
  smo_check_button_handler.h
  )
NGL_ADD_LIBRARY2(WS SmoCheckButtonHandler SHARED ${smo_check_button_handler_SRCS})
NGL_TARGET_INCLUDE_DIRECTORIES(SmoCheckButtonHandler
  PUBLIC
    ${CMAKE_CURRENT_SOURCE_DIR}/../
)

if(QT6_GUI_AVAILABLE)
  NGL_TARGET_LINK_LIBRARIES(SmoCheckButtonHandler
    ${Qt6_Widgets}
    LtsPrinting
    LtsSessionData
    LtsUtilsGuiDds
    LtsUtilsSettings
    PpmDataPluginInterface
  )
endif()

