# CMake script for SymbolEditor

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

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


SET(symboleditor_SRCS
  asb_save_as_symbol.cpp
  asb_save_as_symbol.h
  asb_symbol_editor_gui_plugin.cpp
  asb_symbol_editor_gui_plugin.h
  asb_save_as_symbol.cpp
  asb_save_as_symbol.h
  asb_delete_elements_dialog.cpp
  asb_delete_elements_dialog.h
  asb_resize_dialog.cpp
  asb_resize_dialog.h
  asb_rotate_dialog.cpp
  asb_rotate_dialog.h
  asb_select_text_dialog.cpp
  asb_select_text_dialog.h
  asb_symbol_editor.cpp
  asb_symbol_editor.h
  asb_symbol_edit_scene.cpp
  asb_symbol_edit_scene.h
  flm_reply_handler.cpp
  flm_reply_handler.h
)

SET(symboleditor_UICS
  forms/asb_select_text_dialog.ui
  forms/asb_delete_elements_dialog.ui
  forms/asb_symbol_editor.ui
  forms/asb_save_as_symbol.ui
  forms/asb_rotate_dialog.ui
  forms/asb_resize_dialog.ui
)

# Fuer die Icons
QT5_ADD_RESOURCES(symboleditor_SRCS application.qrc)
NGL_WRAP_UI(symboleditor_SRCS ${symboleditor_UICS})

NGL_ADD_LIBRARY(WS AsbSymEditGuiPlugin MODULE ${symboleditor_SRCS} ${symboleditor_UICS})
set_target_properties(AsbSymEditGuiPlugin PROPERTIES AUTOUIC ON)
set_target_properties(AsbSymEditGuiPlugin PROPERTIES AUTOUIC_SEARCH_PATHS "${CMAKE_CURRENT_SOURCE_DIR}/forms")
TARGET_INCLUDE_DIRECTORIES(AsbSymEditGuiPlugin PRIVATE
  ${CMAKE_CURRENT_SOURCE_DIR}/../../../../Viewer/SituationMap
  ${CMAKE_CURRENT_SOURCE_DIR}/../../../../Viewer/SituationMap/Symbology
)
if(QT6_GUI_AVAILABLE)
  NGL_TARGET_LINK_LIBRARIES(AsbSymEditGuiPlugin
    NGLLogger
    LtsWidgets
    FlmDataPluginInterface
    PpmDataPluginInterface
    advancedSymbology
    advancedSymbologyXML
    LtsSession
    LtsSessionData
    LtsUtilsGuiDds
    Qt6::Core
    ${Qt6_Gui}
    ${Qt6_Widgets}
  )
endif()
NGL_INSTALL_TARGET(AsbSymEditGuiPlugin)
