#-----------------------------------------------------------------------------
#
# Testmanager - Graphical Automation and Visualisation Tool
#
# Copyright (C) 2018  Florian Pose <fp@igh.de>
#               2023  Bjarne von Horn <vh@igh.de>
#
# This file is part of Testmanager.
#
# Testmanager is free software: you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by the Free
# Software Foundation, either version 3 of the License, or (at your option)
# any later version.
#
# Testmanager is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
# more details.
#
# You should have received a copy of the GNU General Public License along
# with Testmanager. If not, see <http://www.gnu.org/licenses/>.
#
#-----------------------------------------------------------------------------

add_library(plugins OBJECT
    BarPlugin.cpp
    BarPlugin.h
    CheckBoxPlugin.cpp
    CheckBoxPlugin.h
    DialPlugin.cpp
    DialPlugin.h
    DialPluginDialog.cpp
    DialPluginDialog.h
    DialPluginDialog.ui
    DigitalPlugin.cpp
    DigitalPlugin.h
    DoubleSpinBoxPlugin.cpp
    DoubleSpinBoxPlugin.h
    GraphPlugin.cpp
    GraphPlugin.h
    LedPlugin.cpp
    LedPlugin.h
    ParameterSetWidgetPlugin.cpp
    ParameterSetWidgetPlugin.h
    PushButtonPlugin.cpp
    PushButtonPlugin.h
    QLabelPlugin.cpp
    QLabelPlugin.h
    RadioButtonPlugin.cpp
    RadioButtonPlugin.h
    SendBroadcastPlugin.cpp
    SendBroadcastPlugin.h
    SvgPlugin.cpp
    SvgPlugin.h
    SvgPluginDialog.cpp
    SvgPluginDialog.h
    SvgPluginDialog.ui
    TableViewPlugin.cpp
    TableViewPlugin.h
    TableViewPluginDialog.cpp
    TableViewPluginDialog.h
    TableViewPluginPrivate.cpp
    TableViewPluginPrivate.h
    TextPlugin.cpp
    TextPlugin.h
    TextPluginDialog.cpp
    TextPluginDialog.h
    TextPluginDialog.ui
    TouchEditPlugin.cpp
    TouchEditPlugin.h
    XYGraphPlugin.cpp
    XYGraphPlugin.h
)

target_link_libraries(plugins PRIVATE
    EtherLab::QtPdWidgets2
    Qt5::Gui
    Qt5::Network
    Qt5::Svg
    Qt5::Widgets
    ${PYTHON_LIBRARIES}
)

target_include_directories(plugins PRIVATE
    "${CMAKE_CURRENT_SOURCE_DIR}/.."
    ${PYTHON_INCLUDE_DIRS}
)

set_target_properties(plugins PROPERTIES
    AUTOUIC 1
    AUTOMOC 1
    AUTORCC 1
)
