-# Copyright (C) 2012-2013 CEA/DEN, EDF R&D, OPEN CASCADE
+# Copyright (C) 2012-2020 CEA/DEN, EDF R&D, OPEN CASCADE
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
-# version 2.1 of the License.
+# version 2.1 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
#
-INCLUDE(UseQt4Ext)
+INCLUDE(UseQtExt)
-INCLUDE_DIRECTORIES(
- ${QT_INCLUDES}
-)
+# --- options ---
+
+# additional include directories
+INCLUDE_DIRECTORIES(${QT_INCLUDES})
+
+# additional preprocessor / compiler flags
+ADD_DEFINITIONS(${QT_DEFINITIONS})
+# libraries to link to
+SET(_link_LIBRARIES ${QT_LIBRARIES} ${OPENGL_LIBRARIES})
+# --- headers ---
-SET(GUI_HEADERS
+# header files / to be processed by moc
+SET(_moc_HEADERS
QtxAction.h
QtxActionGroup.h
QtxActionMenuMgr.h
QtxDockAction.h
QtxDockWidget.h
QtxDoubleSpinBox.h
+ QtxDoubleSpinSlider.h
QtxFontEdit.h
QtxGridBox.h
QtxGroupBox.h
+ QtxInfoPanel.h
QtxIntSpinBox.h
+ QtxIntSpinSlider.h
QtxListAction.h
- QtxTreeView.h
QtxLogoMgr.h
+ QtxMRUAction.h
QtxMainWindow.h
QtxMenu.h
QtxMultiAction.h
- QtxMRUAction.h
+ QtxNotify.h
QtxPagePrefMgr.h
QtxPathDialog.h
QtxPathEdit.h
QtxRubberBand.h
QtxSearchTool.h
QtxShortcutEdit.h
+ QtxSlider.h
QtxSplash.h
QtxToolBar.h
+ QtxToolButton.h
QtxToolTip.h
+ QtxTreeView.h
QtxValidator.h
QtxWorkspace.h
QtxWorkspaceAction.h
QtxWorkstack.h
QtxWorkstackAction.h
- QtxWebBrowser.h
)
-QT4_WRAP_CPP(GUI_HEADERS_MOC ${GUI_HEADERS})
-SET(RCCS Qtx.qrc)
-QT4_ADD_RESOURCES(RCC_SRCS ${RCCS})
+IF(SALOME_GUI_ENABLE_QTXWEBBROWSER)
+ SET(_moc_HEADERS ${_moc_HEADERS} QtxWebBrowser.h)
+ENDIF()
+
+# obsolete files: not migrated to Qt4
+# _moc_HEADERS << QtxListBox.h QtxTable.h
+# TODO: migrate or remove?
+
+# header files / no moc processing
+SET(_other_HEADERS
+ Qtx.h
+ QtxEvalExpr.h
+ QtxMap.h
+ QtxMsgHandler.h
+ QtxPreferenceMgr.h
+ QtxResourceMgr.h
+ QtxTranslator.h
+)
+
+# header files / to install
+SET(qtx_HEADERS ${_moc_HEADERS} ${_other_HEADERS})
+
+# --- resources ---
+
+# resource files / to be processed by rcc
+SET(_rcc_RESOURCES Qtx.qrc)
+
+# resource files / to be processed by lrelease
+SET(_ts_RESOURCES resources/Qtx_msg_fr.ts
+ resources/Qtx_msg_ja.ts
+)
+
+# --- sources ---
+
+# sources / moc wrappings
+QT_WRAP_MOC(_moc_SOURCES ${_moc_HEADERS})
-SET(qtx_SOURCES
+# sources / rcc wrappings
+QT_ADD_RESOURCES(_rcc_SOURCES ${_rcc_RESOURCES})
+
+# sources / static
+SET(_other_SOURCES
Qtx.cxx
QtxAction.cxx
QtxActionGroup.cxx
QtxDockAction.cxx
QtxDockWidget.cxx
QtxDoubleSpinBox.cxx
+ QtxDoubleSpinSlider.cxx
QtxEvalExpr.cxx
QtxFontEdit.cxx
QtxGridBox.cxx
QtxGroupBox.cxx
+ QtxInfoPanel.cxx
QtxIntSpinBox.cxx
+ QtxIntSpinSlider.cxx
QtxListAction.cxx
- QtxTreeView.cxx
QtxLogoMgr.cxx
+ QtxMRUAction.cxx
QtxMainWindow.cxx
QtxMenu.cxx
+ QtxMsgHandler.cxx
QtxMultiAction.cxx
- QtxMRUAction.cxx
+ QtxNotify.cxx
QtxPagePrefMgr.cxx
QtxPathDialog.cxx
QtxPathEdit.cxx
QtxRubberBand.cxx
QtxSearchTool.cxx
QtxShortcutEdit.cxx
+ QtxSlider.cxx
QtxSplash.cxx
QtxToolBar.cxx
+ QtxToolButton.cxx
QtxToolTip.cxx
QtxTranslator.cxx
+ QtxTreeView.cxx
QtxValidator.cxx
QtxWorkspace.cxx
QtxWorkspaceAction.cxx
QtxWorkstack.cxx
QtxWorkstackAction.cxx
- QtxWebBrowser.cxx
-)
-SET(GUITS_SOURCES
- resources/Qtx_msg_fr.ts
)
-ADD_DEFINITIONS(${QT_DEFINITIONS})
-ADD_LIBRARY(qtx ${qtx_SOURCES} ${GUI_HEADERS_MOC} ${RCC_SRCS})
-TARGET_LINK_LIBRARIES(qtx ${QT_LIBRARIES} ${OPENGL_LIBRARIES})
+IF(SALOME_GUI_ENABLE_QTXWEBBROWSER)
+ SET(_other_SOURCES ${_other_SOURCES} QtxWebBrowser.cxx)
+ENDIF()
+
+# obsolete files: not migrated to Qt4
+# _other_SOURCES << QtxListBox.cxx QtxTable.cxx
+# TODO: migrate or remove?
+
+# sources / to compile
+SET(qtx_SOURCES ${_other_SOURCES} ${_moc_SOURCES} ${_rcc_SOURCES})
+
+# --- rules ---
+
+ADD_LIBRARY(qtx ${qtx_SOURCES})
+TARGET_LINK_LIBRARIES(qtx ${_link_LIBRARIES})
INSTALL(TARGETS qtx EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
-SET(COMMON_HEADERS_H
- Qtx.h
- QtxAction.h
- QtxActionGroup.h
- QtxActionMenuMgr.h
- QtxActionMgr.h
- QtxActionSet.h
- QtxActionToolMgr.h
- QtxBackgroundTool.h
- QtxBiColorTool.h
- QtxColorButton.h
- QtxColorScale.h
- QtxComboBox.h
- QtxDialog.h
- QtxDockAction.h
- QtxDockWidget.h
- QtxDoubleSpinBox.h
- QtxEvalExpr.h
- QtxFontEdit.h
- QtxGridBox.h
- QtxGroupBox.h
- QtxIntSpinBox.h
- QtxListAction.h
- QtxTreeView.h
- QtxLogoMgr.h
- QtxMainWindow.h
- QtxMap.h
- QtxMenu.h
- QtxMultiAction.h
- QtxMRUAction.h
- QtxPagePrefMgr.h
- QtxPathDialog.h
- QtxPathEdit.h
- QtxPathListEdit.h
- QtxPopupMgr.h
- QtxPreferenceMgr.h
- QtxResourceMgr.h
- QtxRubberBand.h
- QtxSearchTool.h
- QtxShortcutEdit.h
- QtxSplash.h
- QtxToolBar.h
- QtxToolTip.h
- QtxTranslator.h
- QtxValidator.h
- QtxWorkspace.h
- QtxWorkspaceAction.h
- QtxWorkstack.h
- QtxWorkstackAction.h
- QtxWebBrowser.h
-)
-INSTALL(FILES ${COMMON_HEADERS_H} DESTINATION ${SALOME_INSTALL_HEADERS})
-QT4_INSTALL_TS_RESOURCES("${GUITS_SOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
\ No newline at end of file
+INSTALL(FILES ${qtx_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
+QT_INSTALL_TS_RESOURCES("${_ts_RESOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")