
set(libMvQtGui_srcs
    MvQAbout.cc
    MvQAbstractSearchLine.cc
    MvQX11Application.cc
    MvQApplication.cc
    MvQCheckBoxCombo.cc
    MvQComboLine.cc
    MvQConfigDialog.cc
    MvQDragDrop.cc
    MvQFileDialog.cc
    MvQFileInfoLabel.cc
    MvQGui.cc
    MvQGuiItem.cc
    MvQHighlighter.cc
    MvQKeyMimeData.cc
    MvQKeyModel.cc
    MvQKeyDialog.cc
    MvQKeyFilterModel.cc
    MvQKeyProfileModel.cc
    MvQKeyProfileTree.cc
    MvQLineEdit.cc
    MvQLogBrowser.cc
    MvQMailDialog.cc
    MvQMainWindow.cc
    MvQAbstractMessageExaminer.cc
    MvQPixmapCache.cc
    MvQPlainTextEditSearchLine.cc
    MvQProfileWidget.cc
    MvQProfileView.cc
    MvQRangeWidget.cc
    MvQScmDataWidget.cc
    MvQScmModel.cc
    MvQSearchLinePanel.cc
    MvQService.cc
    MvQSlider.cc
    MvQStackedEditor.cc
    MvQStationsWidget.cc
    MvQTabManager.cc
    MvQTextDialog.cc
    MvQTextEditSearchLine.cc
    MvQTreeView.cc
    MvQTreeViewSearchLine.cc
    MvQMemoryWidget.cc
)


# for when we want to start using web-based help
# list(APPEND libMvQtGui_srcs MvQWebViewSearchLine.cc MvQWebViewSearchLine.h)


set(moc_files
    MvQAbstractMessageExaminer.h
    MvQAbstractSearchLine.h
    MvQX11Application.h MvQApplication.h MvQCheckBoxCombo.h
    MvQComboLine.h
    MvQConfigDialog.h
    MvQGuiItem.h MvQGui.h
    MvQKeyDialog.h MvQKeyMimeData.h
    MvQKeyModel.h MvQKeyFilterModel.h MvQKeyProfileModel.h
    MvQKeyProfileTree.h
    MvQLineEdit.h
    MvQMailDialog.h
    MvQMemoryWidget.h
    MvQProfileView.h
    MvQProfileWidget.h
    MvQRangeWidget.h
    MvQPlainTextEditSearchLine.h
    MvQScmDataWidget.h
    MvQScmModel.h
    MvQSearchLinePanel.h
    MvQService.h
    MvQStackedEditor.h
    MvQStationsWidget.h
    MvQTabManager.h MvQTextEditSearchLine.h  MvQWebViewSearchLine.h
    MvQTreeView.h
    MvQTreeViewSearchLine.h 
    MvQWebViewSearchLine.h
)


if (METVIEW_ODB)
    list(APPEND libMvQtGui_srcs MvQOdbModel.cc MvQOdbDataWidget.cc MvQOdbModel.h)
    list(APPEND moc_files MvQOdbDataWidget.h)
    #list(APPEND generated_srcs MvQOdbDataWidget.moc.cpp)
    #######lib_libMvQtGui_a_CPPFLAGS += $(ODB_CPPFLAGS)
endif()

if(METVIEW_QT5)
 QT5_WRAP_CPP(libMvQtGui_MOC ${moc_files})
 QT5_ADD_RESOURCES(libMvQtGui_RES edit.qrc examiner.qrc find.qrc keyDialog.qrc mail.qrc window.qrc)
else()
 QT4_WRAP_CPP(libMvQtGui_MOC ${moc_files})
 QT4_ADD_RESOURCES(libMvQtGui_RES edit.qrc examiner.qrc find.qrc keyDialog.qrc mail.qrc window.qrc)
endif()



###QT4_WRAP_CPP(libMvQtGui_HEADERS_MOC ${moc_files})

#foreach( f ${moc_files} )
#    QT4_WRAP_CPP(${f}.moc.cpp ${f})
#    set_source_files_properties( ${f}.moc.cpp GENERATED )
#    list(APPEND generated_srcs ${f}.moc.cpp)
#endforeach()

#set(generated_srcs
#    MvQAbstractMessageExaminer.moc.cpp
#    MvQAbstractSearchLine.moc.cpp
#    MvQX11Application.moc.cpp MvQApplication.moc.cpp MvQCheckBoxCombo.moc.cpp
#    MvQComboLine.moc.cpp
#    MvQConfigDialog.moc.cpp
#    MvQGuiItem.moc.cpp MvQGui.moc.cpp
#    MvQKeyDialog.moc.cpp MvQKeyMimeData.moc.cpp
#    MvQKeyModel.moc.cpp MvQKeyFilterModel.moc.cpp MvQKeyProfileModel.moc.cpp
#    MvQKeyProfileTree.moc.cpp
#    MvQLineEdit.moc.cpp
#    MvQMailDialog.moc.cpp
#    MvQProfileView.moc.cpp
#    MvQProfileWidget.moc.cpp
#    MvQRangeWidget.moc.cpp
#    MvQPlainTextEditSearchLine.moc.cpp
#    MvQScmDataWidget.moc.cpp
#    MvQScmModel.moc.cpp
#    MvQSearchLinePanel.moc.cpp
#    MvQService.moc.cpp
#    MvQStackedEditor.moc.cpp
#    MvQStationsWidget.moc.cpp
#    MvQTabManager.moc.cpp MvQTextEditSearchLine.moc.cpp  MvQWebViewSearchLine.moc.cpp
#    MvQTreeView.moc.cpp
#    MvQTreeViewSearchLine.moc.cpp 
#    MvQMemoryWidget.moc.cpp
#    edit.qrc.cpp examiner.qrc.cpp find.qrc.cpp keyDialog.qrc.cpp mail.qrc.cpp window.qrc.cpp
#)


#if (METVIEW_ODB)
#    list(APPEND libMvQtGui_srcs MvQOdbModel.cc MvQOdbDataWidget.cc MvQOdbModel.h MvQOdbDataWidget.h)
#    list(APPEND generated_srcs MvQOdbDataWidget.moc.cpp)
#    #######lib_libMvQtGui_a_CPPFLAGS += $(ODB_CPPFLAGS)
#endif()


foreach( f ${generated_srcs} )
    set_source_files_properties( ${f} GENERATED )
endforeach()

ecbuild_add_library( TARGET      MvQtGui
                     TYPE        STATIC
                     NOINSTALL
                     SOURCES     ${libMvQtGui_MOC} ${libMvQtGui_RES} ${libMvQtGui_srcs}
                     TEMPLATES   ${common_templates}
                     INCLUDES    ${METVIEW_QT_INCLUDE_DIRS} ${X11_INCLUDE_DIR} ../uPlot  ${METVIEW_STANDARD_INCLUDES}
                     DEFINITIONS ${METVIEW_EXTRA_DEFINITIONS}
)
