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


FIND_PACKAGE(ArcGIS REQUIRED)

# During development: (instead top CMakeLists.txt"
IF(NOT MSVC)
  SET(CMAKE_C_FLAGS   "${CMAKE_C_FLAGS} -Wextra")
  SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wextra")
ENDIF()

# LIBRARY
SET(PlanEditor_SRCS
  icon_names.h
  setting_keys.h
  dialog.cpp
  dialog.h
  plan_editor_export.h
  plan_editor.h
  plan_editor.cpp
  plan_editor_const.h
  plan_editor_internal.h
  plan_editor_session.h
  plan_editor_utils.cpp
  plan_editor_utils.h
  attribute_dialog_manager.cpp
  attribute_dialog_manager.h
  drop_event_manager.h
  favourites_action_manager.cpp
  favourites_action_manager.h
  favourite_result_watcher.h
  lookup_symbol_manager.cpp
  lookup_symbol_manager.h
  geometry_placer.h
  logging.cpp
  logging.h
  lookup_symbol_dlg.cpp
  lookup_symbol_dlg.h
  metadata_dialog.cpp
  metadata_dialog.h
  model_tree_widget.cpp
  model_tree_widget.h
  model_tree_widget_item.cpp
  model_tree_widget_item.h
  selection_worker.cpp
  selection_worker.h
  symbol_favourites.cpp
  symbol_favourites.h
)

SOURCE_GROUP(PlanEditor   FILES ${PlanEditor_SRCS})

NGL_ADD_LIBRARY2(WS planEditor SHARED ${PlanEditor_SRCS} ${db_SNDS} )

if(QT6_GUI_AVAILABLE)
  NGL_TARGET_LINK_LIBRARIES(planEditor
    PRIVATE
      situationMap
      situationMapGeometryModel
      situationMapFunctionDialog
      advancedSymbology
      advancedSymbologyXML_Gui
      LtsCoordTrans
      LtsSession
      LtsSessionData
      NGLLogger
      Qt6::Xml
      # Qt6 Migration: Qt5::WebEngineWidgets transitively linked Qt5::PrintSupport
      # (plan_editor.cpp includes <QtPrintSupport/QPrintDialog>); Qt6 dropped that.
      Qt6::PrintSupport
      ngltranslator
  
    PUBLIC
      advancedSymbologyGui
      situationMapCommon
      LtsWidgets
      Qt6::Core
      ${Qt6_Widgets}
      Qt6::WebEngineWidgets
  )
endif()

NGL_INSTALL_TARGET(planEditor)

ADD_SUBDIRECTORY(Test)
ADD_SUBDIRECTORY(PlanEditorPlugin)

