Salome HOME
Task 2.3: Creation of Intersection
[modules/shaper.git] / src / PartSet / CMakeLists.txt
index 17b1fdedc478608acca1e76a9d838be3299d3253..389f4904fb89266639dd814f4d8165a018c1213e 100644 (file)
-## Copyright (C) 2014-20xx CEA/DEN, EDF R&D
+## Copyright (C) 2014-2017  CEA/DEN, EDF R&D
+##
+## 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, 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
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+## Lesser General Public License for more details.
+##
+## You should have received a copy of the GNU Lesser General Public
+## License along with this library; if not, write to the Free Software
+## Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##
+## See http:##www.salome-platform.org/ or
+## email : webmaster.salome@opencascade.com<mailto:webmaster.salome@opencascade.com>
+##
 
 INCLUDE(Common)
+INCLUDE(UseQtExt)
 
-SET(CMAKE_AUTOMOC ON)
+# additional include directories
+INCLUDE_DIRECTORIES(${QT_INCLUDES})
+
+# additional preprocessor / compiler flags
+ADD_DEFINITIONS(${QT_DEFINITIONS})
 
 SET(PROJECT_HEADERS
-       PartSet.h
-       PartSet_Constants.h
-       PartSet_CustomPrs.h
-       PartSet_ExternalObjectsMgr.h
-       PartSet_Module.h
-       PartSet_OperationPrs.h
-        PartSet_OverconstraintListener.h
-       PartSet_Tools.h
-       PartSet_WidgetSketchLabel.h
-       PartSet_Validators.h
-       PartSet_WidgetPoint2d.h
-       PartSet_WidgetEditor.h
-       PartSet_WidgetMultiSelector.h
-       PartSet_WidgetMultiSelectorComposite.h
-       PartSet_WidgetPoint2dDistance.h
-       PartSet_WidgetPoint2DFlyout.h
-       PartSet_WidgetShapeSelector.h
-       PartSet_WidgetFileSelector.h
-       PartSet_Filters.h
-       PartSet_FilterInfinite.h
-       PartSet_SketcherMgr.h
-       PartSet_SketcherReetntrantMgr.h
-       PartSet_MenuMgr.h
-       PartSet_WidgetSketchCreator.h
-       PartSet_IconFactory.h
-       PartSet_WidgetChoice.h
+    PartSet.h
+    PartSet_Constants.h
+    PartSet_CustomPrs.h
+    PartSet_ExternalObjectsMgr.h
+    PartSet_FilterInfinite.h
+    PartSet_Filters.h
+    PartSet_IconFactory.h
+    PartSet_MenuMgr.h
+    PartSet_Module.h
+    PartSet_MouseProcessor.h
+    PartSet_OperationPrs.h
+    PartSet_OverconstraintListener.h
+    PartSet_PreviewPlanes.h
+    PartSet_PreviewSketchPlane.h
+    PartSet_ResultSketchPrs.h
+    PartSet_SketcherMgr.h
+    PartSet_SketcherReentrantMgr.h
+    PartSet_Tools.h
+    PartSet_Validators.h
+    PartSet_WidgetEditor.h
+    PartSet_WidgetFeaturePointSelector.h
+    PartSet_WidgetFileSelector.h
+    PartSet_WidgetMultiSelector.h
+    PartSet_WidgetPoint2d.h
+    PartSet_WidgetPoint2DFlyout.h
+    PartSet_WidgetShapeSelector.h
+    PartSet_WidgetSketchCreator.h
+    PartSet_WidgetSketchLabel.h
+    PartSet_CenterPrs.h
+    PartSet_ExternalPointsMgr.h
+)
+
+SET(PROJECT_MOC_HEADERS
+
+    PartSet_MenuMgr.h
+    PartSet_Module.h
+    PartSet_SketcherMgr.h
+    PartSet_SketcherReentrantMgr.h
+    PartSet_WidgetEditor.h
+    PartSet_WidgetFeaturePointSelector.h
+    PartSet_WidgetFileSelector.h
+    PartSet_WidgetMultiSelector.h
+    PartSet_WidgetPoint2d.h
+    PartSet_WidgetPoint2DFlyout.h
+    PartSet_WidgetShapeSelector.h
+    PartSet_WidgetSketchCreator.h
+    PartSet_WidgetSketchLabel.h
+    PartSet_ExternalPointsMgr.h
 )
 
 SET(PROJECT_SOURCES
-       PartSet_CustomPrs.cpp
-       PartSet_ExternalObjectsMgr.cpp
-       PartSet_Module.cpp
-       PartSet_OperationPrs.cpp
-        PartSet_OverconstraintListener.cpp
-       PartSet_Tools.cpp
-       PartSet_WidgetSketchLabel.cpp
-       PartSet_Validators.cpp
-       PartSet_WidgetEditor.cpp
-       PartSet_WidgetMultiSelector.cpp
-       PartSet_WidgetMultiSelectorComposite.cpp
-       PartSet_WidgetPoint2d.cpp
-       PartSet_WidgetPoint2dDistance.cpp
-       PartSet_WidgetPoint2DFlyout.cpp
-       PartSet_WidgetShapeSelector.cpp
-       PartSet_WidgetFileSelector.cpp
-       PartSet_Filters.cpp
-       PartSet_FilterInfinite.cpp
-       PartSet_SketcherMgr.cpp
-       PartSet_SketcherReetntrantMgr.cpp
-       PartSet_MenuMgr.cpp
-       PartSet_WidgetSketchCreator.cpp
-       PartSet_IconFactory.cpp
+    PartSet_CustomPrs.cpp
+    PartSet_ExternalObjectsMgr.cpp
+    PartSet_FilterInfinite.cpp
+    PartSet_Filters.cpp
+    PartSet_IconFactory.cpp
+    PartSet_MenuMgr.cpp
+    PartSet_Module.cpp
+    PartSet_OperationPrs.cpp
+    PartSet_OverconstraintListener.cpp
+    PartSet_PreviewPlanes.cpp
+    PartSet_PreviewSketchPlane.cpp
+    PartSet_ResultSketchPrs.cpp
+    PartSet_SketcherMgr.cpp
+    PartSet_SketcherReentrantMgr.cpp
+    PartSet_Tools.cpp
+    PartSet_Validators.cpp
+    PartSet_WidgetEditor.cpp
+    PartSet_WidgetFeaturePointSelector.cpp
+    PartSet_WidgetFileSelector.cpp
+    PartSet_WidgetMultiSelector.cpp
+    PartSet_WidgetPoint2d.cpp
+    PartSet_WidgetPoint2DFlyout.cpp
+    PartSet_WidgetShapeSelector.cpp
+    PartSet_WidgetSketchCreator.cpp
+    PartSet_WidgetSketchLabel.cpp
+    PartSet_CenterPrs.cpp
+    PartSet_ExternalPointsMgr.cpp
 )
 
 SET(PROJECT_RESOURCES
@@ -64,31 +113,32 @@ SET(PROJECT_RESOURCES
 )
 
 #SET(TEXT_RESOURCES
-#      PartSet_msg_fr.ts
+#    PartSet_msg_fr.ts
 #)
 
 SET(PROJECT_LIBRARIES
     ModuleBase
+    ModelGeomAlgo
     Config
     GeomAPI
     GeomDataAPI
-       SketcherPrs
+    SketcherPrs
     ${QT_LIBRARIES}
     ${CAS_KERNEL}
     ${CAS_SHAPE}
 )
 
-SET(PROJECT_AUTOMOC
-    ${CMAKE_CURRENT_BINARY_DIR}/PartSet_automoc.cpp
-)
+# sources / moc wrappings
+QT_WRAP_MOC(PROJECT_AUTOMOC ${PROJECT_MOC_HEADERS})
 
-QT4_ADD_RESOURCES(PROJECT_COMPILED_RESOURCES ${PROJECT_RESOURCES})
+# sources / rcc wrappings
+QT_ADD_RESOURCES(PROJECT_COMPILED_RESOURCES ${PROJECT_RESOURCES})
 #QT4_ADD_TRANSLATION(QM_RESOURCES ${TEXT_RESOURCES})
 #QT4_CREATE_TRANSLATION(QM_RESOURCES
-#                                         ${PROJECT_SOURCES}
-#                                         ${TEXT_RESOURCES}
-#                                         OPTIONS -extensions cpp -no-recursive
-#                                         )
+#                       ${PROJECT_SOURCES}
+#                       ${TEXT_RESOURCES}
+#                       OPTIONS -extensions cpp -no-recursive
+#                       )
 
 #SOURCE_GROUP ("Generated Files" FILES ${PROJECT_AUTOMOC} ${PROJECT_COMPILED_RESOURCES} ${QM_RESOURCES})
 SOURCE_GROUP ("Generated Files" FILES ${PROJECT_AUTOMOC} ${PROJECT_COMPILED_RESOURCES})
@@ -100,6 +150,7 @@ INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/XGUI
                     ${PROJECT_SOURCE_DIR}/src/Events
                     ${PROJECT_SOURCE_DIR}/src/ModuleBase
                     ${PROJECT_SOURCE_DIR}/src/ModelAPI
+                    ${PROJECT_SOURCE_DIR}/src/ModelGeomAlgo
                     ${PROJECT_SOURCE_DIR}/src/GeomDataAPI
                     ${PROJECT_SOURCE_DIR}/src/GeomAlgoAPI
                     ${PROJECT_SOURCE_DIR}/src/SketchPlugin
@@ -108,21 +159,26 @@ INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/XGUI
                     ${PROJECT_SOURCE_DIR}/src/FeaturesPlugin
                     ${PROJECT_SOURCE_DIR}/src/PartSetPlugin
                     ${PROJECT_SOURCE_DIR}/src/GeomAPI
+                    ${PROJECT_SOURCE_DIR}/src/CollectionPlugin
                     ${CAS_INCLUDE_DIRS}
                     ${SUIT_INCLUDE}
 )
 
-IF(NOT ${HAVE_SALOME})
+IF(${HAVE_SALOME})
+  INCLUDE_DIRECTORIES(${SALOME_KERNEL_INCLUDE})
+ELSE(${HAVE_SALOME})
   INCLUDE_DIRECTORIES(${APPELEMENTS_INCLUDE_DIR})
-ENDIF(NOT ${HAVE_SALOME})
+ENDIF(${HAVE_SALOME})
+
 
 ADD_DEFINITIONS(-DPARTSET_EXPORTS ${CAS_DEFINITIONS})
 ADD_LIBRARY(PartSet SHARED
-       ${PROJECT_SOURCES}
-       ${PROJECT_HEADERS}
-       ${PROJECT_COMPILED_RESOURCES}
-#      ${TEXT_RESOURCES}
-#      ${QM_RESOURCES}
+    ${PROJECT_SOURCES}
+    ${PROJECT_HEADERS}
+    ${PROJECT_COMPILED_RESOURCES}
+    ${PROJECT_AUTOMOC}
+#    ${TEXT_RESOURCES}
+#    ${QM_RESOURCES}
 )
 
 # The Qt5Widgets_LIBRARIES variable also includes QtGui and QtCore