OPTION(SALOME_USE_GLVIEWER "Enable OpenGL visualization (Mandatory in classic configurations)" ON)
OPTION(SALOME_USE_PLOT2DVIEWER "Enable Plot2D visualization (Mandatory in classic configurations)" ON)
OPTION(SALOME_USE_PYCONSOLE "Enable Python GUI interface (Mandatory in classic configurations)" ON)
-OPTION(SALOME_USE_SUPERVGRAPHVIEWER "Enable Supervision visualization (Mandatory in classic configurations)" ON)
OPTION(SALOME_USE_QXGRAPHVIEWER "Enable QX graph visualization (Mandatory in classic configurations)" ON)
MARK_AS_ADVANCED(SALOME_LIGHT_ONLY SALOME_USE_LIBBATCH SALOME_USE_VTKVIEWER SALOME_USE_VTKVIEWER)
MARK_AS_ADVANCED(SALOME_USE_SALOMEOBJECT SALOME_USE_OCCVIEWER SALOME_USE_GLVIEWER SALOME_USE_PLOT2DVIEWER)
-MARK_AS_ADVANCED(SALOME_USE_PYCONSOLE SALOME_USE_SUPERVGRAPHVIEWER SALOME_USE_QXGRAPHVIEWER)
+MARK_AS_ADVANCED(SALOME_USE_PYCONSOLE SALOME_USE_QXGRAPHVIEWER)
# Prerequisites
# =============
OCCViewer OpenGLUtils Plot2d PyConsole PyInterp QDS qtx QxScene SalomeApp
SalomeIDLGUI SalomeObject SalomePrs SalomePyQtGUILight SalomePyQtGUI
SalomePyQt SalomePy SalomeSession SalomeStyle SOCC SPlot2d std SUITApp suit
- SUPERVGraph SVTK ToolsGUI ViewerTools VTKViewer vtkTools vtkEDFOverloads SalomeGuiHelpers
+ SVTK ToolsGUI ViewerTools VTKViewer vtkTools vtkEDFOverloads SalomeGuiHelpers
SalomeTreeData
)
-IF(SALOME_BUILD_TESTS)
- LIST(APPEND _${PROJECT_NAME}_exposed_targets SalomeAppTest)
-ENDIF()
-
# Add all targets to the build-tree export set
EXPORT(TARGETS ${_${PROJECT_NAME}_exposed_targets}
FILE ${PROJECT_BINARY_DIR}/${PROJECT_NAME}Targets.cmake)
# These files are data, module or lib files
SET(_adm_data
FindCAS.cmake
- UseQt4Ext.cmake
FindQwt.cmake
FindGUI.cmake
FindSIP.cmake
FindSalomeVTK.cmake
FindSalomeGUI.cmake
FindSalomeOpenGL.cmake
+ UsePyQt4.cmake
+ UseQt4Ext.cmake
)
INSTALL(FILES ${_adm_data} DESTINATION ${SALOME_INSTALL_CMAKE_LOCAL})
FIND_LIBRARY(qtx qtx ${GUI_ROOT_DIR}/lib/salome)
FIND_LIBRARY(QxScene QxScene ${GUI_ROOT_DIR}/lib/salome)
FIND_LIBRARY(SalomeApp SalomeApp ${GUI_ROOT_DIR}/lib/salome)
-FIND_LIBRARY(SalomeAppTest SalomeAppTest ${GUI_ROOT_DIR}/lib/salome)
FIND_LIBRARY(SalomeIDLGUI SalomeIDLGUI ${GUI_ROOT_DIR}/lib/salome)
FIND_LIBRARY(SalomeObject SalomeObject ${GUI_ROOT_DIR}/lib/salome)
FIND_LIBRARY(SalomePrs SalomePrs ${GUI_ROOT_DIR}/lib/salome)
FIND_LIBRARY(std std ${GUI_ROOT_DIR}/lib/salome)
FIND_LIBRARY(SUITApp SUITApp ${GUI_ROOT_DIR}/lib/salome)
FIND_LIBRARY(suit suit ${GUI_ROOT_DIR}/lib/salome)
-FIND_LIBRARY(SUPERVGraph SUPERVGraph ${GUI_ROOT_DIR}/lib/salome)
FIND_LIBRARY(SVTK SVTK ${GUI_ROOT_DIR}/lib/salome)
FIND_LIBRARY(ToolsGUI ToolsGUI ${GUI_ROOT_DIR}/lib/salome)
FIND_LIBRARY(ViewerTools ViewerTools ${GUI_ROOT_DIR}/lib/salome)
"${PYQT_SIPS_DIR}/QtTest"
)
-SET(PYQT_SIPFLAGS ${PYQT_SIPFLAGS} -s .cc -c .)
+SET(PYQT_CXX_EXT ".cc")
+SET(PYQT_SIPFLAGS ${PYQT_SIPFLAGS} -s ${PYQT_CXX_EXT} -c .)
FOREACH(_dir ${PYQT_INCLUDE_DIRS})
LIST(APPEND PYQT_SIPFLAGS -I ${_dir})
ENDFOREACH()
vtkRenderingFreeTypeOpenGL
vtkRenderingLOD
vtkRenderingAnnotation
- vtkFiltersParallel
- vtkIOExport)
+ vtkFiltersParallel
+ vtkIOExport
+ vtkWrappingPython
+)
# If no VTK root dir is specified, try the ParaView root dir:
SET(PARAVIEW_ROOT_DIR "$ENV{PARAVIEW_ROOT_DIR}" CACHE PATH "Path to the ParaView installation")
SET(GUI_qtx qtx)
SET(GUI_QxScene QxScene)
SET(GUI_SalomeApp SalomeApp)
-SET(GUI_SalomeAppTest SalomeAppTest)
SET(GUI_SalomeIDLGUI SalomeIDLGUI)
SET(GUI_SalomeObject SalomeObject)
SET(GUI_SalomePrs SalomePrs)
SET(GUI_std std)
SET(GUI_SUITApp SUITApp)
SET(GUI_suit suit)
-SET(GUI_SUPERVGraph SUPERVGraph)
SET(GUI_SVTK SVTK)
SET(GUI_ToolsGUI ToolsGUI)
SET(GUI_ViewerTools ViewerTools)
--- /dev/null
+# Copyright (C) 2012-2013 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.
+#
+# 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
+#
+# Author: Vadim SANDLER, Open CASCADE S.A.S. (vadim.sandler@opencascade.com)
+
+####################################################################
+#
+# PYQT4_WRAP_UIC macro
+#
+# Create Python modules by processing input *.ui (Qt designer) files with
+# PyQt4 pyuic4 tool.
+#
+# USAGE: PYQT4_WRAP_UIC(output_files pyuic_files)
+#
+# ARGUMENTS:
+# output_files [out] variable where output file names are listed to
+# pyuic_files [in] list of *.ui files
+#
+# NOTES:
+# - Input files are considered relative to the current source directory.
+# - Output files are generated in the current build directory.
+# - Macro automatically adds custom build target to generate output files
+#
+####################################################################
+MACRO(PYQT4_WRAP_UIC outfiles)
+ FOREACH(_input ${ARGN})
+ GET_FILENAME_COMPONENT(_input_name ${_input} NAME)
+ STRING(REPLACE ".ui" "_ui.py" _input_name ${_input_name})
+ SET(_output ${CMAKE_CURRENT_BINARY_DIR}/${_input_name})
+ ADD_CUSTOM_COMMAND(
+ OUTPUT ${_output}
+ COMMAND ${PYQT_PYUIC_EXECUTABLE} -o ${_output} ${CMAKE_CURRENT_SOURCE_DIR}/${_input}
+ MAIN_DEPENDENCY ${_input}
+ )
+ SET(${outfiles} ${${outfiles}} ${_output})
+ ENDFOREACH()
+ ADD_CUSTOM_TARGET(BUILD_UI_PY_FILES ALL DEPENDS ${${outfiles}})
+ENDMACRO(PYQT4_WRAP_UIC)
+
+####################################################################
+#
+# PYQT4_WRAP_SIP macro
+#
+# Generate C++ wrappings for *.sip files by processing them with sip.
+#
+# USAGE: PYQT4_WRAP_SIP(output_files sip_files)
+#
+# ARGUMENTS:
+# output_files [out] variable where output file names are listed to
+# sip_files [in] list of *.sip files
+#
+# NOTES:
+# - Input files are considered relative to the current source directory.
+# - Output files are generated in the current build directory.
+# - This version of macro requires class(es) definition in the
+# *.sip file to be started on a new line without any preceeding characters.
+#
+# TODO:
+# - Check if dependency of static sources on generated headers works properly:
+# if header is changed, dependant sources should be recompiled.
+#
+####################################################################
+MACRO(PYQT4_WRAP_SIP outfiles)
+ FOREACH(_input ${ARGN})
+ FILE(STRINGS ${_input} _sip_modules REGEX "%Module")
+ FILE(STRINGS ${_input} _sip_classes REGEX "^class ")
+ SET(_output)
+ FOREACH(_sip_module ${_sip_modules})
+ STRING(REGEX MATCH ".*%Module *\\( *name=.*\\).*" _mod_name "${_sip_module}")
+ IF (_mod_name)
+ STRING(REGEX REPLACE ".*%Module *\\( *name=(.*).*\\).*" "\\1" _mod_name ${_sip_module})
+ ELSE()
+ STRING(REGEX REPLACE ".*%Module *(.*)" "\\1" _mod_name ${_sip_module})
+ ENDIF()
+ SET(_mod_header "sipAPI${_mod_name}.h")
+ SET(_mod_source "sip${_mod_name}cmodule${PYQT_CXX_EXT}")
+ LIST(APPEND _output ${CMAKE_CURRENT_BINARY_DIR}/${_mod_source})
+ SET(${outfiles} ${${outfiles}} ${CMAKE_CURRENT_BINARY_DIR}/${_mod_source})
+ ENDFOREACH()
+ FOREACH(_sip_class ${_sip_classes})
+ STRING(REGEX MATCH ".*class +.* *:" _class_name "${_sip_class}")
+ IF (_class_name)
+ STRING(REGEX REPLACE ".*class +(.*) *:.*" "\\1" _class_name ${_sip_class})
+ ELSE()
+ STRING(REGEX REPLACE ".*class *(.*)" "\\1" _class_name ${_sip_class})
+ ENDIF()
+ STRING(STRIP ${_class_name} _class_name)
+ SET(_class_source "sip${_mod_name}${_class_name}${PYQT_CXX_EXT}")
+ LIST(APPEND _output ${CMAKE_CURRENT_BINARY_DIR}/${_class_source})
+ SET(${outfiles} ${${outfiles}} ${CMAKE_CURRENT_BINARY_DIR}/${_class_source})
+ ENDFOREACH()
+ ADD_CUSTOM_COMMAND(
+ OUTPUT ${_output}
+ COMMAND ${SIP_EXECUTABLE} ${PYQT_SIPFLAGS} ${CMAKE_CURRENT_SOURCE_DIR}/${_input}
+ MAIN_DEPENDENCY ${_input}
+ )
+ ENDFOREACH()
+ENDMACRO(PYQT4_WRAP_SIP)
FIND_LIBRARY(qtx qtx ${GUI_ROOT_DIR}/lib/salome)
FIND_LIBRARY(QxScene QxScene ${GUI_ROOT_DIR}/lib/salome)
FIND_LIBRARY(SalomeApp SalomeApp ${GUI_ROOT_DIR}/lib/salome)
-FIND_LIBRARY(SalomeAppTest SalomeAppTest ${GUI_ROOT_DIR}/lib/salome)
FIND_LIBRARY(SalomeIDLGUI SalomeIDLGUI ${GUI_ROOT_DIR}/lib/salome)
FIND_LIBRARY(SalomeObject SalomeObject ${GUI_ROOT_DIR}/lib/salome)
FIND_LIBRARY(SalomePrs SalomePrs ${GUI_ROOT_DIR}/lib/salome)
FIND_LIBRARY(std std ${GUI_ROOT_DIR}/lib/salome)
FIND_LIBRARY(SUITApp SUITApp ${GUI_ROOT_DIR}/lib/salome)
FIND_LIBRARY(suit suit ${GUI_ROOT_DIR}/lib/salome)
-FIND_LIBRARY(SUPERVGraph SUPERVGraph ${GUI_ROOT_DIR}/lib/salome)
FIND_LIBRARY(SVTK SVTK ${GUI_ROOT_DIR}/lib/salome)
FIND_LIBRARY(ToolsGUI ToolsGUI ${GUI_ROOT_DIR}/lib/salome)
FIND_LIBRARY(ViewerTools ViewerTools ${GUI_ROOT_DIR}/lib/salome)
#
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
#
-\r
-ADD_SUBDIRECTORY(config_files)\r
+
+ADD_SUBDIRECTORY(config_files)
#
SET(_m4_data
- check_disable_Corba.m4
- check_GLViewer.m4
check_GUI.m4
- check_msg2qm.m4
- check_OCCViewer.m4
check_opengl.m4
- check_Plot2dViewer.m4
- check_PyConsole.m4
check_pyqt.m4
check_qt.m4
check_qwt.m4
- check_SalomeObject.m4
check_sip.m4
- check_SupervGraphViewer.m4
- check_VTKViewer.m4
- check_QxGraphViewer.m4
check_TestRecorder.m4
check_salome_version.m4
)
+++ /dev/null
-dnl Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-dnl
-dnl Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-dnl CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-dnl
-dnl This library is free software; you can redistribute it and/or
-dnl modify it under the terms of the GNU Lesser General Public
-dnl License as published by the Free Software Foundation; either
-dnl version 2.1 of the License.
-dnl
-dnl This library is distributed in the hope that it will be useful,
-dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
-dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-dnl Lesser General Public License for more details.
-dnl
-dnl You should have received a copy of the GNU Lesser General Public
-dnl License along with this library; if not, write to the Free Software
-dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-dnl
-dnl See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-dnl
-
-#
-# Check configure option --disable-glViewer=[yes|no|DIR] taking into account that
-# DISABLE_GLVIEWER may be already set during build_configure,
-# Set DISABLE_GLVIEWER to yes|no
-#
-# Author : Edawrd AGAPOV (OCC, 2005)
-#
-
-AC_DEFUN([CHECK_GLVIEWER],[
-
-AC_ARG_WITH(glViewer,
- [ --disable-glViewer default=no ],
- disable_glViewer="$withval",disable_glViewer="${DISABLE_GLVIEWER}")
-
-case $disable_glViewer in
- yes)
-# AC_MSG_RESULT(************************************************)
-# AC_MSG_RESULT(******* DISABLE GLViewer configuration *****)
-# AC_MSG_RESULT(************************************************)
- DISABLE_GLVIEWER="yes"
- AC_SUBST(DISABLE_GLVIEWER)
-esac
-
-
-])dnl
+++ /dev/null
-dnl Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-dnl
-dnl Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-dnl CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-dnl
-dnl This library is free software; you can redistribute it and/or
-dnl modify it under the terms of the GNU Lesser General Public
-dnl License as published by the Free Software Foundation; either
-dnl version 2.1 of the License.
-dnl
-dnl This library is distributed in the hope that it will be useful,
-dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
-dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-dnl Lesser General Public License for more details.
-dnl
-dnl You should have received a copy of the GNU Lesser General Public
-dnl License along with this library; if not, write to the Free Software
-dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-dnl
-dnl See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-dnl
-
-#
-# Check configure option --disable-occViewer=[yes|no|DIR] taking into account that
-# DISABLE_OCCVIEWER may be already set during build_configure,
-# Set DISABLE_OCCVIEWER to yes|no
-#
-# Author : Edawrd AGAPOV (OCC, 2005)
-#
-
-AC_DEFUN([CHECK_OCCVIEWER],[
-
-AC_ARG_WITH(occViewer,
- [ --disable-occViewer default=no ],
- disable_occViewer="$withval",disable_occViewer="${DISABLE_OCCVIEWER}")
-
-case $disable_occViewer in
- yes)
-# AC_MSG_RESULT(************************************************)
-# AC_MSG_RESULT(***** DISABLE OCCViewer configuration ******)
-# AC_MSG_RESULT(************************************************)
- DISABLE_OCCVIEWER="yes"
- AC_SUBST(DISABLE_OCCVIEWER)
-esac
-
-
-])dnl
+++ /dev/null
-dnl Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-dnl
-dnl Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-dnl CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-dnl
-dnl This library is free software; you can redistribute it and/or
-dnl modify it under the terms of the GNU Lesser General Public
-dnl License as published by the Free Software Foundation; either
-dnl version 2.1 of the License.
-dnl
-dnl This library is distributed in the hope that it will be useful,
-dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
-dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-dnl Lesser General Public License for more details.
-dnl
-dnl You should have received a copy of the GNU Lesser General Public
-dnl License along with this library; if not, write to the Free Software
-dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-dnl
-dnl See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-dnl
-
-#
-# Check configure option --disable-plot2dViewer=[yes|no|DIR] taking into account that
-# DISABLE_PLOT2DVIEWER may be already set during build_configure,
-# Set DISABLE_PLOT2DVIEWER to yes|no
-#
-# Author : Edawrd AGAPOV (OCC, 2005)
-#
-
-AC_DEFUN([CHECK_PLOT2DVIEWER],[
-
-AC_ARG_WITH(plot2dViewer,
- [ --disable-plot2dViewer default=no ],
- disable_plot2dViewer="$withval",disable_plot2dViewer="${DISABLE_PLOT2DVIEWER}")
-
-case $disable_plot2dViewer in
- yes)
-# AC_MSG_RESULT(************************************************)
-# AC_MSG_RESULT(*** DISABLE Plot2dViewer configuration *****)
-# AC_MSG_RESULT(************************************************)
- DISABLE_PLOT2DVIEWER="yes"
- AC_SUBST(DISABLE_PLOT2DVIEWER)
-esac
-
-
-])dnl
+++ /dev/null
-dnl Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-dnl
-dnl Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-dnl CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-dnl
-dnl This library is free software; you can redistribute it and/or
-dnl modify it under the terms of the GNU Lesser General Public
-dnl License as published by the Free Software Foundation; either
-dnl version 2.1 of the License.
-dnl
-dnl This library is distributed in the hope that it will be useful,
-dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
-dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-dnl Lesser General Public License for more details.
-dnl
-dnl You should have received a copy of the GNU Lesser General Public
-dnl License along with this library; if not, write to the Free Software
-dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-dnl
-dnl See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-dnl
-
-#
-# Check configure option --disable-pyConsole=[yes|no|DIR] taking into account that
-# DISABLE_PYCONSOLE may be already set during build_configure,
-# Set DISABLE_PYCONSOLE to yes|no
-#
-# Author : Edawrd AGAPOV (OCC, 2005)
-#
-
-AC_DEFUN([CHECK_PYCONSOLE],[
-
-AC_ARG_WITH(pyConsole,
- [ --disable-pyConsole default=no ],
- disable_pyConsole="$withval",disable_pyConsole="${DISABLE_PYCONSOLE}")
-
-case $disable_pyConsole in
- yes)
-# AC_MSG_RESULT(************************************************)
-# AC_MSG_RESULT(***** DISABLE PyConsole configuration ******)
-# AC_MSG_RESULT(************************************************)
- DISABLE_PYCONSOLE="yes"
- AC_SUBST(DISABLE_PYCONSOLE)
-esac
-
-
-])dnl
+++ /dev/null
-dnl Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-dnl
-dnl Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-dnl CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-dnl
-dnl This library is free software; you can redistribute it and/or
-dnl modify it under the terms of the GNU Lesser General Public
-dnl License as published by the Free Software Foundation; either
-dnl version 2.1 of the License.
-dnl
-dnl This library is distributed in the hope that it will be useful,
-dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
-dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-dnl Lesser General Public License for more details.
-dnl
-dnl You should have received a copy of the GNU Lesser General Public
-dnl License along with this library; if not, write to the Free Software
-dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-dnl
-dnl See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-dnl
-
-#
-# Check configure option --disable-qxGraphViewer=[yes|no|DIR] taking into account that
-# DISABLE_QXGRAPHVIEWER may be already set during build_configure,
-# Set DISABLE_QXGRAPHVIEWER to yes|no
-#
-# Author : Edawrd AGAPOV (OCC, 2005)
-#
-
-AC_DEFUN([CHECK_QXGRAPHVIEWER],[
-
-AC_ARG_WITH(qxGraphViewer,
- [ --disable-qxGraphViewer default=no ],
- disable_qxGraphViewer="$withval",disable_qxGraphViewer="${DISABLE_QXGRAPHVIEWER}")
-
-case $disable_qxGraphViewer in
- yes)
-# AC_MSG_RESULT(************************************************)
-# AC_MSG_RESULT(******* DISABLE QxGraphViewer configuration ********)
-# AC_MSG_RESULT(************************************************)
- DISABLE_QXGRAPHVIEWER="yes"
- AC_SUBST(DISABLE_QXGRAPHVIEWER)
-esac
-
-
-])dnl
+++ /dev/null
-dnl Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-dnl
-dnl Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-dnl CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-dnl
-dnl This library is free software; you can redistribute it and/or
-dnl modify it under the terms of the GNU Lesser General Public
-dnl License as published by the Free Software Foundation; either
-dnl version 2.1 of the License.
-dnl
-dnl This library is distributed in the hope that it will be useful,
-dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
-dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-dnl Lesser General Public License for more details.
-dnl
-dnl You should have received a copy of the GNU Lesser General Public
-dnl License along with this library; if not, write to the Free Software
-dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-dnl
-dnl See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-dnl
-
-#
-# Check configure option --disable-salomeObject=[yes|no|DIR] taking into account that
-# DISABLE_SALOMEOBJECT may be already set during build_configure,
-# Set DISABLE_SALOMEOBJECT to yes|no
-#
-# Author : Edawrd AGAPOV (OCC, 2005)
-#
-
-AC_DEFUN([CHECK_SALOMEOBJECT],[
-
-AC_ARG_WITH(salomeObject,
- [ --disable-salomeObject default=no ],
- disable_salomeObject="$withval",disable_salomeObject="${DISABLE_SALOMEOBJECT}")
-
-case $disable_salomeObject in
- yes)
-# AC_MSG_RESULT(************************************************)
-# AC_MSG_RESULT(*** DISABLE Salome object configuration ****)
-# AC_MSG_RESULT(************************************************)
- DISABLE_SALOMEOBJECT="yes"
- AC_SUBST(DISABLE_SALOMEOBJECT)
-esac
-
-
-])dnl
+++ /dev/null
-dnl Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-dnl
-dnl Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-dnl CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-dnl
-dnl This library is free software; you can redistribute it and/or
-dnl modify it under the terms of the GNU Lesser General Public
-dnl License as published by the Free Software Foundation; either
-dnl version 2.1 of the License.
-dnl
-dnl This library is distributed in the hope that it will be useful,
-dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
-dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-dnl Lesser General Public License for more details.
-dnl
-dnl You should have received a copy of the GNU Lesser General Public
-dnl License along with this library; if not, write to the Free Software
-dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-dnl
-dnl See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-dnl
-
-#
-# Check configure option --disable-supervGraphViewer=[yes|no|DIR] taking into account that
-# DISABLE_SUPERVGRAPHVIEWER may be already set during build_configure,
-# Set DISABLE_SUPERVGRAPHVIEWER to yes|no
-#
-# Author : Edawrd AGAPOV (OCC, 2005)
-#
-
-AC_DEFUN([CHECK_SUPERVGRAPHVIEWER],[
-
-AC_ARG_WITH(supervGraphViewer,
- [ --disable-supervGraphViewer default=no ],
- disable_supervGraphViewer="$withval",disable_supervGraphViewer="${DISABLE_SUPERVGRAPHVIEWER}")
-
-case $disable_supervGraphViewer in
- yes)
-# AC_MSG_RESULT(************************************************)
-# AC_MSG_RESULT(******* DISABLE SupervGraphViewer configuration ********)
-# AC_MSG_RESULT(************************************************)
- DISABLE_SUPERVGRAPHVIEWER="yes"
- AC_SUBST(DISABLE_SUPERVGRAPHVIEWER)
-esac
-
-
-])dnl
+++ /dev/null
-dnl Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-dnl
-dnl Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-dnl CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-dnl
-dnl This library is free software; you can redistribute it and/or
-dnl modify it under the terms of the GNU Lesser General Public
-dnl License as published by the Free Software Foundation; either
-dnl version 2.1 of the License.
-dnl
-dnl This library is distributed in the hope that it will be useful,
-dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
-dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-dnl Lesser General Public License for more details.
-dnl
-dnl You should have received a copy of the GNU Lesser General Public
-dnl License along with this library; if not, write to the Free Software
-dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-dnl
-dnl See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-dnl
-
-#
-# Check configure option --disable-vtkViewer=[yes|no|DIR] taking into account that
-# DISABLE_VTKVIEWER may be already set during build_configure,
-# Set DISABLE_VTKVIEWER to yes|no
-#
-# Author : Edawrd AGAPOV (OCC, 2005)
-#
-
-AC_DEFUN([CHECK_VTKVIEWER],[
-
-AC_ARG_WITH(vtkViewer,
- [ --disable-vtkViewer default=no ],
- disable_vtkViewer="$withval",disable_vtkViewer="${DISABLE_VTKVIEWER}")
-
-case $disable_vtkViewer in
- yes)
-# AC_MSG_RESULT(************************************************)
-# AC_MSG_RESULT(***** DISABLE VTK Viewer configuration *****)
-# AC_MSG_RESULT(************************************************)
- DISABLE_VTKVIEWER="yes"
- AC_SUBST(DISABLE_VTKVIEWER)
-esac
-
-
-])dnl
+++ /dev/null
-dnl Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-dnl
-dnl Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-dnl CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-dnl
-dnl This library is free software; you can redistribute it and/or
-dnl modify it under the terms of the GNU Lesser General Public
-dnl License as published by the Free Software Foundation; either
-dnl version 2.1 of the License.
-dnl
-dnl This library is distributed in the hope that it will be useful,
-dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
-dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-dnl Lesser General Public License for more details.
-dnl
-dnl You should have received a copy of the GNU Lesser General Public
-dnl License along with this library; if not, write to the Free Software
-dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-dnl
-dnl See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-dnl
-
-#
-# Check configure option --disable-corba=[yes|no|DIR] taking into account that
-# GUI_DISABLE_CORBA may be already set during build_configure,
-# Set GUI_DISABLE_CORBA to yes|no
-#
-# Author : Edawrd AGAPOV (OCC, 2005)
-#
-
-AC_DEFUN([CHECK_DISABLE_CORBA],[
-
-AC_ARG_WITH(corba,
- [ --disable-corba-gen default=no ],
- disable_corba="$withval",disable_corba="${GUI_DISABLE_CORBA}")
-
-case $disable_corba in
- yes)
-# AC_MSG_RESULT(************************************************)
-# AC_MSG_RESULT(******* DISABLE CORBA configuration ********)
-# AC_MSG_RESULT(************************************************)
- GUI_DISABLE_CORBA="yes";;
- *)
- GUI_DISABLE_CORBA="no"
-esac
-
-AC_SUBST(GUI_DISABLE_CORBA)
-
-])dnl
+++ /dev/null
-dnl Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-dnl
-dnl Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-dnl CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-dnl
-dnl This library is free software; you can redistribute it and/or
-dnl modify it under the terms of the GNU Lesser General Public
-dnl License as published by the Free Software Foundation; either
-dnl version 2.1 of the License.
-dnl
-dnl This library is distributed in the hope that it will be useful,
-dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
-dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-dnl Lesser General Public License for more details.
-dnl
-dnl You should have received a copy of the GNU Lesser General Public
-dnl License along with this library; if not, write to the Free Software
-dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-dnl
-dnl See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-dnl
-
-# Check availability of Qt's msg2qm tool binary distribution
-#
-# Author : Jerome Roy (CEA, 2003)
-#
-
-AC_DEFUN([CHECK_MSG2QM],[
-
-AC_CHECKING(for msg2qm)
-
-msg2qm_ok=no
-
-AC_ARG_WITH(msg2qm,
- [ --with-msg2qm=DIR root directory path of MSG2QM installation],
- MSG2QM_DIR="$withval",MSG2QM_DIR="")
-
-if test "x$MSG2QM_DIR" == "x" ; then
-
-# no --with-MSG2QM-dir option used
-
- if test "x$MSG2QM_ROOT" != "x" ; then
-
- # MSG2QM_ROOT environment variable defined
- MSG2QM_DIR=$MSG2QM_ROOT
-
- else
-
- # search MSG2QM binaries in PATH variable
- AC_PATH_PROG(TEMP, msg2qm)
- if test "x$TEMP" != "x" ; then
- MSG2QM_DIR=`dirname $TEMP`
- fi
-
- fi
-#
-fi
-
-# look for msg2qm in ${MSG2QM_DIR} directory
-if test -f ${MSG2QM_DIR}/msg2qm ; then
- msg2qm_ok=yes
- MSG2QM="${MSG2QM_DIR}/msg2qm"
- AC_MSG_RESULT(Using MSG2QM executable in ${MSG2QM_DIR})
-else
- # if not found, look for msg2qm in ${MSG2QM_DIR}/bin directory
- if test -f ${MSG2QM_DIR}/bin/msg2qm ; then
- msg2qm_ok=yes
- MSG2QM="${MSG2QM_DIR}/bin/msg2qm"
- AC_MSG_RESULT(Using MSG2QM executable in ${MSG2QM_DIR}/bin)
- else
- AC_MSG_WARN("Cannot find MSG2QM executable")
- fi
-fi
-
-AC_SUBST(MSG2QM)
-AC_MSG_RESULT(for MSG2QM: $msg2qm_ok)
-
-])dnl
-
INCLUDE(UseQt4Ext)
+# --- options ---
+
+# additional include directories
INCLUDE_DIRECTORIES(
- ${PTHREAD_INCLUDE_DIRS}
+ ${QT_INCLUDES}
${CAS_INCLUDE_DIRS}
${KERNEL_INCLUDE_DIRS}
- ${CMAKE_CURRENT_SOURCE_DIR}
- ${CMAKE_CURRENT_SOURCE_DIR}/../Qtx
- ${CMAKE_CURRENT_SOURCE_DIR}/../SUIT
- ${CMAKE_CURRENT_SOURCE_DIR}/../STD
+ ${PROJECT_SOURCE_DIR}/src/Qtx
+ ${PROJECT_SOURCE_DIR}/src/SUIT
+ ${PROJECT_SOURCE_DIR}/src/STD
)
-SET(COMMON_LIBS
- qtx
- suit
- std
- ${QT_LIBRARIES}
- ${CAS_OCAF}
- ${CAS_OCAFVIS}
+# additional preprocessor / compiler flags
+ADD_DEFINITIONS(${CAS_DEFINITIONS} ${QT_DEFINITIONS})
+
+# libraries to link to
+SET(_link_LIBRARIES ${QT_LIBRARIES} ${CAS_OCAF} ${CAS_OCAFVIS} qtx suit std)
+
+# --- headers ---
+
+# header files / to be processed by moc
+SET(_moc_HEADERS
+ CAF_Application.h
+ CAF_Operation.h
+ CAF_Study.h
)
-SET(GUI_HEADERS CAF_Application.h CAF_Operation.h CAF_Study.h)
-QT4_WRAP_CPP(GUI_HEADERS ${GUI_HEADERS})
-SET(caf_SOURCES
- CAF_Application.cxx
- CAF_Operation.cxx
- CAF_Study.cxx
- CAF_Tools.cxx
+# header files / no moc processing
+SET(_other_HEADERS
+ CAF.h
+ CAF_Tools.h
)
-SET(GUITS_SOURCES
+# header files / to install
+SET(caf_HEADERS ${_moc_HEADERS} ${_other_HEADERS})
+
+# --- resources ---
+
+# resource files / to be processed by lrelease
+SET(_ts_RESOURCES
resources/CAF_msg_en.ts
resources/CAF_msg_fr.ts
resources/CAF_msg_ja.ts
)
-ADD_DEFINITIONS(${CAS_DEFINITIONS} ${QT_DEFINITIONS})
+# --- sources ---
+
+# sources / moc wrappings
+QT4_WRAP_CPP(_moc_SOURCES ${_moc_HEADERS})
+
+# sources / static
+SET(_other_SOURCES
+ CAF_Application.cxx
+ CAF_Operation.cxx
+ CAF_Study.cxx
+ CAF_Tools.cxx
+)
+
+# sources / to compile
+SET(caf_SOURCES ${_other_SOURCES} ${_moc_SOURCES})
+
+# --- rules ---
-ADD_LIBRARY(caf ${caf_SOURCES} ${GUI_HEADERS})
-TARGET_LINK_LIBRARIES(caf ${COMMON_LIBS})
+ADD_LIBRARY(caf ${caf_SOURCES})
+TARGET_LINK_LIBRARIES(caf ${QT_LIBRARIES} ${_link_LIBRARIES})
INSTALL(TARGETS caf EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
-FILE(GLOB COMMON_HEADERS_H "${CMAKE_CURRENT_SOURCE_DIR}/*.h")
-INSTALL(FILES ${COMMON_HEADERS_H} DESTINATION ${SALOME_INSTALL_HEADERS})
-QT4_INSTALL_TS_RESOURCES("${GUITS_SOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
+INSTALL(FILES ${caf_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
+QT4_INSTALL_TS_RESOURCES("${_ts_RESOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
INCLUDE(UseQt4Ext)
+# --- options ---
+
+# additional include directories
INCLUDE_DIRECTORIES(
${QT_INCLUDES}
${KERNEL_INCLUDE_DIRS}
- ${CMAKE_CURRENT_SOURCE_DIR}
${PROJECT_BINARY_DIR}
- ${CMAKE_CURRENT_SOURCE_DIR}/../Qtx
- ${CMAKE_CURRENT_SOURCE_DIR}/../SUIT
- ${CMAKE_CURRENT_SOURCE_DIR}/../STD
+ ${PROJECT_SOURCE_DIR}/src/Qtx
+ ${PROJECT_SOURCE_DIR}/src/SUIT
+ ${PROJECT_SOURCE_DIR}/src/STD
+)
+
+# additional preprocessor / compiler flags
+ADD_DEFINITIONS(${QT_DEFINITIONS})
+
+# libraries to link to
+SET(_link_LIBRARIES ${QT_LIBRARIES} qtx suit std)
+
+# --- headers ---
+
+# header files / to be processed by moc
+SET(_moc_HEADERS
+ CAM_Application.h
+ CAM_DataModel.h
+ CAM_Module.h
+ CAM_Study.h
)
-SET(COMMON_LIBS
- qtx
- suit
- std
- ${QT_LIBRARIES}
+# header files / no moc processing
+SET(_other_HEADERS
+ CAM.h
+ CAM_DataObject.h
+)
+
+# header files / to install
+SET(CAM_HEADERS ${_moc_HEADERS} ${_other_HEADERS})
+
+# --- resources ---
+
+# resource files / to be processed by lrelease
+SET(_ts_RESOURCES
+ resources/CAM_msg_en.ts
+ resources/CAM_msg_fr.ts
+ resources/CAM_msg_ja.ts
)
-SET(CAM_HEADERS CAM_Application.h CAM_Module.h CAM_Study.h CAM_DataModel.h)
-QT4_WRAP_CPP(CAM_HEADERS_MOC ${CAM_HEADERS})
+# --- sources ---
+
+# sources / moc wrappings
+QT4_WRAP_CPP(_moc_SOURCES ${_moc_HEADERS})
-SET(CAM_SOURCES
+# sources / static
+SET(_other_SOURCES
CAM_Application.cxx
CAM_DataModel.cxx
CAM_DataObject.cxx
CAM_Study.cxx
)
-SET(CAMTS_SOURCES
- resources/CAM_msg_en.ts
- resources/CAM_msg_fr.ts
- resources/CAM_msg_ja.ts
-)
+# sources / to compile
+SET(CAM_SOURCES ${_other_SOURCES} ${_moc_SOURCES})
-ADD_DEFINITIONS(${QT_DEFINITIONS})
+# --- rules ---
-ADD_LIBRARY(CAM ${CAM_SOURCES} ${CAM_HEADERS_MOC})
-TARGET_LINK_LIBRARIES(CAM ${COMMON_LIBS})
+ADD_LIBRARY(CAM ${CAM_SOURCES})
+TARGET_LINK_LIBRARIES(CAM ${_link_LIBRARIES})
INSTALL(TARGETS CAM EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
-FILE(GLOB COMMON_HEADERS_H "${CMAKE_CURRENT_SOURCE_DIR}/*.h")
-INSTALL(FILES ${COMMON_HEADERS_H} DESTINATION ${SALOME_INSTALL_HEADERS})
-QT4_INSTALL_TS_RESOURCES("${CAMTS_SOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
+INSTALL(FILES ${CAM_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
+QT4_INSTALL_TS_RESOURCES("${_ts_RESOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
#
+# --- options ---
+
+# additional include directories
INCLUDE_DIRECTORIES(
- ${PTHREAD_INCLUDE_DIRS}
${CAS_INCLUDE_DIRS}
)
+# additional preprocessor / compiler flags
+ADD_DEFINITIONS(${CAS_DEFINITIONS})
+
+# libraries to link to
+SET(_link_LIBRARIES ${CAS_KERNEL})
+
+# --- headers ---
+
+# header files / to install
+SET(CASCatch_HEADERS
+ CASCatch.hxx
+ CASCatch_CatchSignals.hxx
+ CASCatch_ErrorHandler.hxx
+ CASCatch_Failure.hxx
+)
+
+# --- sources ---
+
+# sources / static
SET(CASCatch_SOURCES
CASCatch_CatchSignals.cxx
CASCatch_ErrorHandler.cxx
CASCatch_Failure.cxx
)
-ADD_DEFINITIONS(${CAS_DEFINITIONS})
+# --- rules ---
ADD_LIBRARY(CASCatch ${CASCatch_SOURCES})
-TARGET_LINK_LIBRARIES(CASCatch ${CAS_KERNEL})
+TARGET_LINK_LIBRARIES(CASCatch ${_link_LIBRARIES})
INSTALL(TARGETS CASCatch EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
-FILE(GLOB COMMON_HEADERS_HXX "${CMAKE_CURRENT_SOURCE_DIR}/*.hxx")
-INSTALL(FILES ${COMMON_HEADERS_HXX} DESTINATION ${SALOME_INSTALL_HEADERS})
+INSTALL(FILES ${CASCatch_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
# Common packages
##
SET(SUBDIRS_COMMON
- CASCatch
- Qtx
- Style
- DDS
- QDS
- ObjBrowser
- SUIT
- SUITApp
- STD
- CAF
- CAM
- LogWindow
- Prs
- Event
- OpenGLUtils
- GUI_PY
+ CASCatch Qtx Style DDS QDS ObjBrowser SUIT SUITApp STD CAF
+ CAM LogWindow Prs Event OpenGLUtils ViewerTools GUI_PY
)
##
SET(SUBDIRS_VTKVIEWER VTKViewer)
IF(SALOME_USE_SALOMEOBJECT)
- SET(SUBDIRS_VTKVIEWER ${SUBDIRS_VTKVIEWER} SVTK)
- SET(SUBDIRS_VIEWERTOOLSViewerTools)
+ LIST(APPEND SUBDIRS_VTKVIEWER SVTK)
ENDIF(SALOME_USE_SALOMEOBJECT)
ENDIF(SALOME_USE_VTKVIEWER)
##
IF(SALOME_USE_OCCVIEWER)
SET(SUBDIRS_OCCVIEWER OCCViewer)
- SET(SUBDIRS_VIEWERTOOLS ViewerTools)
IF(SALOME_USE_SALOMEOBJECT)
- SET(SUBDIRS_OCCVIEWER ${SUBDIRS_OCCVIEWER} SOCC)
+ LIST(APPEND SUBDIRS_OCCVIEWER SOCC)
ENDIF(SALOME_USE_SALOMEOBJECT)
ENDIF(SALOME_USE_OCCVIEWER)
# Plot2d viewer
##
IF(SALOME_USE_PLOT2DVIEWER)
- SET(SUBDIRS_PLOT2DVIEWER Plot2d)
+ SET(SUBDIRS_PLOT2DVIEWER Plot2d)
IF(SALOME_USE_SALOMEOBJECT)
- SET(SUBDIRS_PLOT2DVIEWER ${SUBDIRS_PLOT2DVIEWER} SPlot2d)
+ LIST(APPEND SUBDIRS_PLOT2DVIEWER SPlot2d)
ENDIF(SALOME_USE_SALOMEOBJECT)
ENDIF(SALOME_USE_PLOT2DVIEWER)
-##
-# SUPERV graph viewer
-##
-IF(SALOME_USE_SUPERVGRAPHVIEWER)
- SET(SUBDIRS_SUPERVGRAPHVIEWER SUPERVGraph)
-ENDIF(SALOME_USE_SUPERVGRAPHVIEWER)
-
##
# Qx scene viewer
##
-###VSR: QxGraph has been replaced by QxScene
-###SUBDIRS_QXGRAPHVIEWER = QxGraph
IF(SALOME_USE_QXGRAPHVIEWER)
SET(SUBDIRS_QXGRAPHVIEWER QxScene)
ENDIF(SALOME_USE_QXGRAPHVIEWER)
##
-# Python console (base)
+# Python-based packages
##
IF(SALOME_USE_PYCONSOLE)
SET(SUBDIRS_PYCONSOLE PyInterp PyConsole)
+ SET(SUBDIRS_PYTHON SALOME_SWIG SALOME_PY SALOME_PYQT)
ENDIF(SALOME_USE_PYCONSOLE)
##
# Light SALOME packages
##
-SET(SUBDIRS_LIGHT
- LightApp
- ResExporter
-)
+SET(SUBDIRS_LIGHT LightApp ResExporter)
##
# Full (CORBA) SALOME packages
##
IF(NOT SALOME_LIGHT_ONLY)
- SET(SUBDIRS_CORBA
- TOOLSGUI
- Session
- SalomeApp
- GuiHelpers
- TreeData
- )
+ SET(SUBDIRS_CORBA TOOLSGUI Session SalomeApp GuiHelpers TreeData)
ENDIF(NOT SALOME_LIGHT_ONLY)
-##
-# Extra Python packages
-##
-IF(SALOME_USE_PYCONSOLE)
- SET(SUBDIRS_PY_LIGHT
- SALOME_SWIG
- SALOME_PY
- SALOME_PYQT
- )
-ENDIF(SALOME_USE_PYCONSOLE)
-
SET(SUBDIRS
${SUBDIRS_COMMON}
${SUBDIRS_OBJECT}
- ${SUBDIRS_VIEWERTOOLS}
${SUBDIRS_GLVIEWER}
${SUBDIRS_VTKVIEWER}
${SUBDIRS_OCCVIEWER}
${SUBDIRS_PLOT2DVIEWER}
- ${SUBDIRS_SUPERVGRAPHVIEWER}
${SUBDIRS_QXGRAPHVIEWER}
${SUBDIRS_PYCONSOLE}
${SUBDIRS_LIGHT}
${SUBDIRS_CORBA}
- ${SUBDIRS_PY_LIGHT}
+ ${SUBDIRS_PYTHON}
)
FOREACH(dir ${SUBDIRS})
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
#
+# --- options ---
+
+# additional include directories
INCLUDE_DIRECTORIES(
- ${PTHREAD_INCLUDE_DIRS}
${CAS_INCLUDE_DIRS}
${KERNEL_INCLUDE_DIRS}
)
+# additional preprocessor / compiler flags
+ADD_DEFINITIONS(${CAS_DEFINITIONS})
+
+# libraries to link to
+SET(_link_LIBRARIES ${CAS_KERNEL} ${CAS_OCAF})
+
+# --- headers ---
+
+# header files / to install
+SET(DDS_HEADERS
+ DDS.h
+ DDS_DicGroup.h
+ DDS_DicItem.h
+ DDS_Dictionary.h
+ DDS_KeyWords.h
+)
+
+# --- sources ---
+
+# sources / static
SET(DDS_SOURCES
DDS_DicGroup.cxx
DDS_DicItem.cxx
DDS_KeyWords.cxx
)
-ADD_DEFINITIONS(${CAS_DEFINITIONS})
+# --- rules ---
ADD_LIBRARY(DDS ${DDS_SOURCES})
-TARGET_LINK_LIBRARIES(DDS ${CAS_KERNEL} ${CAS_OCAF})
+TARGET_LINK_LIBRARIES(DDS ${_link_LIBRARIES})
INSTALL(TARGETS DDS EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
-FILE(GLOB COMMON_HEADERS_H "${CMAKE_CURRENT_SOURCE_DIR}/*.h")
-INSTALL(FILES ${COMMON_HEADERS_H} DESTINATION ${SALOME_INSTALL_HEADERS})
+INSTALL(FILES ${DDS_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
#
-SET(Event_SOURCES
- ${QT_INCLUDES}
- SALOME_Event.cxx
- SALOME_EventFilter.cxx
-)
+# --- options ---
+# additional preprocessor / compiler flags
ADD_DEFINITIONS(${QT_DEFINITIONS})
+# libraries to link to
+SET(_link_LIBRARIES ${QT_LIBRARIES})
+
+# --- headers ---
+
+SET(Event_HEADERS Event.h SALOME_Event.h SALOME_EventFilter.h)
+
+# --- sources ---
+
+SET(Event_SOURCES SALOME_Event.cxx SALOME_EventFilter.cxx)
+
+# --- rules ---
+
ADD_LIBRARY(Event ${Event_SOURCES})
-TARGET_LINK_LIBRARIES(Event ${QT_LIBRARIES})
+TARGET_LINK_LIBRARIES(Event ${_link_LIBRARIES})
INSTALL(TARGETS Event EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
-FILE(GLOB COMMON_HEADERS_H "${CMAKE_CURRENT_SOURCE_DIR}/*.h")
-INSTALL(FILES ${COMMON_HEADERS_H} DESTINATION ${SALOME_INSTALL_HEADERS})
+INSTALL(FILES ${Event_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
INCLUDE(UseQt4Ext)
+# --- options ---
+
INCLUDE_DIRECTORIES(
${CAS_INCLUDE_DIRS}
- ${PTHREAD_INCLUDE_DIRS}
${QT_INCLUDES}
- ${CMAKE_CURRENT_SOURCE_DIR}/../Qtx
- ${CMAKE_CURRENT_SOURCE_DIR}/../SUIT
+ ${PROJECT_SOURCE_DIR}/src/Qtx
+ ${PROJECT_SOURCE_DIR}/src/SUIT
+)
+
+# additional preprocessor / compiler flags
+ADD_DEFINITIONS(${CAS_DEFINITIONS} ${QT_DEFINITIONS})
+
+# libraries to link to
+SET(_link_LIBRARIES ${QT_LIBRARIES} ${CAS_KERNEL} ${OPENGL_LIBRARIES} qtx suit)
+IF(NOT WINDOWS)
+ LIST(APPEND _link_LIBRARIES Xmu)
+ENDIF()
+
+# --- headers ---
+
+# header files / to be processed by moc
+SET(_moc_HEADERS
+ GLViewer_Selector.h
+ GLViewer_Selector2d.h
+ GLViewer_ToolTip.h
+ GLViewer_ViewFrame.h
+ GLViewer_ViewManager.h
+ GLViewer_ViewPort.h
+ GLViewer_ViewPort2d.h
+ GLViewer_Viewer.h
+ GLViewer_Viewer2d.h
+ GLViewer_Widget.h
+)
+
+# header files / no moc processing
+SET(_other_HEADERS
+ GLViewer.h
+ GLViewer_AspectLine.h
+ GLViewer_BaseDrawers.h
+ GLViewer_BaseObjects.h
+ GLViewer_Compass.h
+ GLViewer_Context.h
+ GLViewer_CoordSystem.h
+ GLViewer_Defs.h
+ GLViewer_Drawer.h
+ GLViewer_Geom.h
+ GLViewer_Grid.h
+ GLViewer_Group.h
+ GLViewer_MimeData.h
+ GLViewer_Object.h
+ GLViewer_Text.h
+ GLViewer_Tools.h
+)
+
+# header files / to install
+SET(GLViewer_HEADERS ${_moc_HEADERS} ${_other_HEADERS})
+
+# --- resources ---
+
+# resource files / to be processed by lrelease
+SET(_ts_RESOURCES
+ resources/GLViewer_images.ts
+ resources/GLViewer_msg_en.ts
+ resources/GLViewer_msg_fr.ts
+ resources/GLViewer_msg_ja.ts
)
-SET(COMMON_LIBS
- suit
- ${QT_LIBRARIES}
- ${CAS_KERNEL}
- ${OPENGL_LIBRARIES}
+# resource files / static
+SET(_other_RESOURCES
+ resources/gl_cursor_rotate.png
+ resources/gl_cursor_sketch.png
+ resources/gl_cursor_zoom.png
+ resources/gl_view_dump.png
+ resources/gl_view_fitall.png
+ resources/gl_view_fitarea.png
+ resources/gl_view_fitselect.png
+ resources/gl_view_glpan.png
+ resources/gl_view_pan.png
+ resources/gl_view_reset.png
+ resources/gl_view_zoom.png
)
-SET(GUI_HEADERS GLViewer_Selector.h GLViewer_Selector2d.h GLViewer_ToolTip.h GLViewer_ViewFrame.h GLViewer_ViewManager.h GLViewer_ViewPort.h GLViewer_ViewPort2d.h GLViewer_Viewer.h GLViewer_Viewer2d.h GLViewer_Widget.h)
-QT4_WRAP_CPP(GUI_HEADERS_MOC ${GUI_HEADERS})
+# --- sources ---
+
+# sources / moc wrappings
+QT4_WRAP_CPP(_moc_SOURCES ${_moc_HEADERS})
-SET(GLViewer_SOURCES
+# sources / static
+SET(_other_SOURCES
GLViewer_AspectLine.cxx
GLViewer_BaseDrawers.cxx
GLViewer_BaseObjects.cxx
GLViewer_Selector.cxx
GLViewer_Selector2d.cxx
GLViewer_Text.cxx
- GLViewer_Tools.cxx
GLViewer_ToolTip.cxx
+ GLViewer_Tools.cxx
GLViewer_ViewFrame.cxx
GLViewer_ViewManager.cxx
GLViewer_ViewPort.cxx
GLViewer_Widget.cxx
)
-SET(GUITS_SOURCES
- resources/GLViewer_images.ts
- resources/GLViewer_msg_en.ts
- resources/GLViewer_msg_fr.ts
- resources/GLViewer_msg_ja.ts
-)
+# sources / to compile
+SET(GLViewer_SOURCES ${_other_SOURCES} ${_moc_SOURCES})
-ADD_DEFINITIONS(${CAS_DEFINITIONS})
+# --- rules ---
-ADD_LIBRARY(GLViewer ${GLViewer_SOURCES} ${GUI_HEADERS_MOC})
-TARGET_LINK_LIBRARIES(GLViewer ${COMMON_LIBS})
+ADD_LIBRARY(GLViewer ${GLViewer_SOURCES})
+TARGET_LINK_LIBRARIES(GLViewer ${_link_LIBRARIES})
INSTALL(TARGETS GLViewer EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
-FILE(GLOB COMMON_HEADERS_H "${CMAKE_CURRENT_SOURCE_DIR}/*.h")
-INSTALL(FILES ${COMMON_HEADERS_H} DESTINATION ${SALOME_INSTALL_HEADERS})
-QT4_INSTALL_TS_RESOURCES("${GUITS_SOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
+INSTALL(FILES ${GLViewer_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
+QT4_INSTALL_TS_RESOURCES("${_ts_RESOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
-FILE(GLOB GUIPNG_DATA "${CMAKE_CURRENT_SOURCE_DIR}/resources/*.png")
-INSTALL(FILES ${GUIPNG_DATA} DESTINATION ${SALOME_GUI_INSTALL_RES_DATA})
+INSTALL(FILES ${_other_RESOURCES} DESTINATION ${SALOME_GUI_INSTALL_RES_DATA})
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
#
-INCLUDE_DIRECTORIES(
- ${CMAKE_CURRENT_BINARY_DIR}
+INCLUDE(UsePyQt4)
+
+# --- resources ---
+
+# uic files / to be processed by pyuic
+SET(_pyuic_files
+ SelectVarsDialog.ui
+ genericdialog.ui
+ mytestdialog.ui
)
-# Python modules to be installed
-SET(mypkgpython_PYTHON
+
+# --- scripts ---
+
+# scripts / pyuic wrappings
+
+PYQT4_WRAP_UIC(_pyuic_SCRIPTS ${_pyuic_files})
+
+# scripts / static
+SET(_other_SCRIPTS
__init__.py
- selectvars.py
genericdialog.py
- mytestdialog.py
helper.py
+ mytestdialog.py
+ selectvars.py
)
-SALOME_INSTALL_SCRIPTS("${mypkgpython_PYTHON}" ${SALOME_INSTALL_PYTHON}/salome/gui)
-SET(PYUIC_FILES
- SelectVarsDialog_ui.py
- genericdialog_ui.py
- mytestdialog_ui.py
-)
+# scritps / to install
+
+SET(_all_SCRIPTS ${_other_SCRIPTS} ${_pyuic_SCRIPTS})
+
+# --- rules ---
-FOREACH(output ${PYUIC_FILES})
- STRING(REPLACE "_ui.py" ".ui" input ${output})
- SET(input ${CMAKE_CURRENT_SOURCE_DIR}/${input})
- SET(output ${CMAKE_CURRENT_BINARY_DIR}/${output})
- ADD_CUSTOM_COMMAND(
- OUTPUT ${output}
- COMMAND ${PYQT_PYUIC_EXECUTABLE} -o ${output} ${input}
- MAIN_DEPENDENCY ${input}
- )
- #${PYQT_PYUIC_EXECUTABLE}
-ENDFOREACH(output ${PYUIC_FILES})
-
-ADD_CUSTOM_TARGET(BUILD_PY_UI_FILES ALL DEPENDS ${PYUIC_FILES})
-
-FOREACH(output ${PYUIC_FILES})
- INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${output} DESTINATION ${SALOME_INSTALL_PYTHON}/salome/gui)
-ENDFOREACH(output ${PYUIC_FILES})
+SALOME_INSTALL_SCRIPTS("${_all_SCRIPTS}" ${SALOME_INSTALL_PYTHON}/salome/gui)
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
#
+# additional include directories
INCLUDE_DIRECTORIES(
${CAS_INCLUDE_DIRS}
${QT_INCLUDES}
${Boost_INCLUDE_DIRS}
${OMNIORB_INCLUDE_DIR}
- ${PTHREAD_INCLUDE_DIRS}
${KERNEL_INCLUDE_DIRS}
- ${CMAKE_CURRENT_SOURCE_DIR}/../SalomeApp
- ${CMAKE_CURRENT_SOURCE_DIR}/../LightApp
- ${CMAKE_CURRENT_SOURCE_DIR}/../SUIT
- ${CMAKE_CURRENT_SOURCE_DIR}/../Qtx
- ${CMAKE_CURRENT_SOURCE_DIR}/../CAM
- ${CMAKE_CURRENT_SOURCE_DIR}/../STD
- ${CMAKE_CURRENT_SOURCE_DIR}/../OBJECT
+ ${PROJECT_SOURCE_DIR}/src/SalomeApp
+ ${PROJECT_SOURCE_DIR}/src/LightApp
+ ${PROJECT_SOURCE_DIR}/src/SUIT
+ ${PROJECT_SOURCE_DIR}/src/Qtx
+ ${PROJECT_SOURCE_DIR}/src/CAM
+ ${PROJECT_SOURCE_DIR}/src/STD
+ ${PROJECT_SOURCE_DIR}/src/OBJECT
)
-SET(GUI_HEADERS StandardApp_Module.hxx)
-QT4_WRAP_CPP(GUI_HEADERS_MOC ${GUI_HEADERS})
-SET(SalomeGuiHelpers_SOURCES
- SALOME_GuiServices.cxx
+# additional preprocessor / compiler flags
+ADD_DEFINITIONS(
+ ${CAS_DEFINITIONS}
+ ${QT_DEFINITIONS}
+ ${BOOST_DEFINITIONS}
+ ${OMNIORB_DEFINITIONS}
+)
+
+# libraries to link to
+SET(_link_LIBRARIES
+ ${CORBA_LIBS}
+ ${KERNEL_SalomeKernelHelpers}
+ qtx suit std CAM SalomeObject LightApp SalomeApp
+)
+
+# --- headers ---
+
+# header files / to be processed by moc
+SET(_moc_HEADERS
+ StandardApp_Module.hxx
+)
+
+# header files / no moc processing
+SET(_other_HEADERS
+ QtHelper.hxx
+ SALOME_AppStudyEditor.hxx
+ SALOME_GuiServices.hxx
+ SalomeGuiHelpers.hxx
+)
+
+# header files / to install
+SET(SalomeGuiHelpers_HEADERS ${_moc_HEADERS} ${_other_HEADERS})
+
+# --- sources ---
+
+# sources / moc wrappings
+QT4_WRAP_CPP(_moc_SOURCES ${_moc_HEADERS})
+
+# sources / static
+SET(_other_SOURCES
SALOME_AppStudyEditor.cxx
+ SALOME_GuiServices.cxx
StandardApp_Module.cxx
)
-ADD_DEFINITIONS(${CAS_DEFINITIONS} ${QT_DEFINITIONS} ${BOOST_DEFINITIONS} ${OMNIORB_DEFINITIONS})
+# sources / to compile
+SET(SalomeGuiHelpers_SOURCES ${_other_SOURCES} ${_moc_SOURCES})
+
+# --- rules ---
-ADD_LIBRARY(SalomeGuiHelpers ${SalomeGuiHelpers_SOURCES} ${GUI_HEADERS_MOC})
-TARGET_LINK_LIBRARIES(SalomeGuiHelpers SalomeApp ${SalomeKernelHelpers} ${CORBA_LIBS})
+ADD_LIBRARY(SalomeGuiHelpers ${SalomeGuiHelpers_SOURCES})
+TARGET_LINK_LIBRARIES(SalomeGuiHelpers ${_link_LIBRARIES})
INSTALL(TARGETS SalomeGuiHelpers EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
-FILE(GLOB COMMON_HEADERS_HXX "${CMAKE_CURRENT_SOURCE_DIR}/*.hxx")
-INSTALL(FILES ${COMMON_HEADERS_HXX} DESTINATION ${SALOME_INSTALL_HEADERS})
+INSTALL(FILES ${SalomeGuiHelpers_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
#
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
#
+
INCLUDE(UseQt4Ext)
+# --- options ---
+
+# additional include directories
INCLUDE_DIRECTORIES(
${CAS_INCLUDE_DIRS}
${QT_INCLUDES}
${HDF5_INCLUDE_DIRS}
- ${PYTHON_INCLUDE_DIRS}
- ${PTHREAD_INCLUDE_DIRS}
- ${QWT_INCLUDE_DIR}
${KERNEL_INCLUDE_DIRS}
${PROJECT_BINARY_DIR}
- ${CMAKE_CURRENT_SOURCE_DIR}/../SUIT
- ${CMAKE_CURRENT_SOURCE_DIR}/../STD
- ${CMAKE_CURRENT_SOURCE_DIR}/../CAM
- ${CMAKE_CURRENT_SOURCE_DIR}/../ObjBrowser
- ${CMAKE_CURRENT_SOURCE_DIR}/../LogWindow
- ${CMAKE_CURRENT_SOURCE_DIR}/../Prs
- ${CMAKE_CURRENT_SOURCE_DIR}/../Qtx
- ${CMAKE_CURRENT_SOURCE_DIR}/../Event
- ${CMAKE_CURRENT_SOURCE_DIR}/../Style
- ${CMAKE_CURRENT_SOURCE_DIR}/../CASCatch
+ ${PROJECT_SOURCE_DIR}/src/CAM
+ ${PROJECT_SOURCE_DIR}/src/CASCatch
+ ${PROJECT_SOURCE_DIR}/src/Event
+ ${PROJECT_SOURCE_DIR}/src/LogWindow
+ ${PROJECT_SOURCE_DIR}/src/ObjBrowser
+ ${PROJECT_SOURCE_DIR}/src/Prs
+ ${PROJECT_SOURCE_DIR}/src/Qtx
+ ${PROJECT_SOURCE_DIR}/src/STD
+ ${PROJECT_SOURCE_DIR}/src/SUIT
+ ${PROJECT_SOURCE_DIR}/src/Style
)
+IF(SALOME_USE_SALOMEOBJECT)
+ INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/OBJECT)
+ENDIF()
+IF(SALOME_USE_GLVIEWER)
+ INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/GLViewer)
+ENDIF()
+IF(SALOME_USE_OCCVIEWER)
+ INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/OCCViewer)
+ IF(SALOME_USE_SALOMEOBJECT)
+ INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/SOCC)
+ ENDIF()
+ENDIF()
+IF(SALOME_USE_PLOT2DVIEWER)
+ INCLUDE_DIRECTORIES(${QWT_INCLUDE_DIR})
+ INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/Plot2d)
+ IF(SALOME_USE_SALOMEOBJECT)
+ INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/SPlot2d)
+ ENDIF()
+ENDIF()
+IF(SALOME_USE_VTKVIEWER)
+ INCLUDE_DIRECTORIES(${VTK_INCLUDE_DIRS})
+ INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/VTKViewer)
+ IF(SALOME_USE_SALOMEOBJECT)
+ INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/SVTK)
+ ENDIF()
+ENDIF()
+IF(SALOME_USE_QXGRAPHVIEWER)
+ INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/QxScene)
+ENDIF()
+IF(SALOME_USE_PYCONSOLE)
+ INCLUDE_DIRECTORIES(
+ ${PYTHON_INCLUDE_DIRS}
+ ${PROJECT_SOURCE_DIR}/src/PyConsole
+ ${PROJECT_SOURCE_DIR}/src/PyInterp
+ ${PROJECT_SOURCE_DIR}/src/SUITApp
+ )
+ENDIF()
-ADD_DEFINITIONS(${PYTHON_DEFINITIONS} ${HDF5_DEFINITIONS} ${CAS_DEFINITIONS} ${QT_DEFINITIONS})
-
+# additional preprocessor / compiler flags
+ADD_DEFINITIONS(${CAS_DEFINITIONS} ${QT_DEFINITIONS} ${HDF5_DEFINITIONS})
IF(NOT WINDOWS)
ADD_DEFINITIONS("-Wno-deprecated")
-ENDIF(NOT WINDOWS)
+ENDIF()
+IF(NOT SALOME_USE_SALOMEOBJECT)
+ ADD_DEFINITIONS("-DDISABLE_SALOMEOBJECT")
+ENDIF()
+IF (NOT SALOME_USE_GLVIEWER)
+ ADD_DEFINITIONS("-DDISABLE_GLVIEWER")
+ENDIF()
+IF(NOT SALOME_USE_OCCVIEWER)
+ ADD_DEFINITIONS("-DDISABLE_OCCVIEWER")
+ENDIF()
+IF(SALOME_USE_PLOT2DVIEWER)
+ ADD_DEFINITIONS(${QWT_DEFINITIONS})
+ELSE()
+ ADD_DEFINITIONS("-DDISABLE_PLOT2DVIEWER")
+ENDIF()
+IF(NOT SALOME_USE_VTKVIEWER)
+ ADD_DEFINITIONS("-DDISABLE_VTKVIEWER")
+ENDIF()
+IF(NOT SALOME_USE_QXGRAPHVIEWER)
+ ADD_DEFINITIONS("-DDISABLE_QXGRAPHVIEWER")
+ENDIF()
+IF(SALOME_USE_PYCONSOLE)
+ ADD_DEFINITIONS(${PYTHON_DEFINITIONS})
+ELSE()
+ ADD_DEFINITIONS("-DDISABLE_PYCONSOLE")
+ENDIF()
-SET(COMMON_LIBS
- ${QT_LIBRARIES}
- suit
- std
- CAM
- LogWindow
+# libraries to link to
+SET(_link_LIBRARIES
${CAS_KERNEL}
- SalomePrs
- ObjBrowser
- SalomeStyle
- Event
+ ${QT_LIBRARIES}
${HDF5_LIBRARIES}
- ${KERNEL_LDFLAGS}
- ${KERNEL_SalomeHDFPersist}
- ${KERNEL_SALOMELocalTrace}
+ CASCatch qtx suit std SalomeStyle SalomePrs CAM LogWindow ObjBrowser
+ ${KERNEL_SalomeHDFPersist} ${KERNEL_SALOMELocalTrace}
)
+IF(SALOME_USE_SALOMEOBJECT)
+ LIST(APPEND _link_LIBRARIES SalomeObject)
+ENDIF()
+IF(SALOME_USE_GLVIEWER)
+ LIST(APPEND _link_LIBRARIES GLViewer)
+ENDIF()
+IF(SALOME_USE_OCCVIEWER)
+ LIST(APPEND _link_LIBRARIES OCCViewer)
+ IF(SALOME_USE_SALOMEOBJECT)
+ LIST(APPEND _link_LIBRARIES SOCC)
+ ENDIF()
+ENDIF()
+IF(SALOME_USE_PLOT2DVIEWER)
+ LIST(APPEND _link_LIBRARIES Plot2d)
+ IF(SALOME_USE_SALOMEOBJECT)
+ LIST(APPEND _link_LIBRARIES SPlot2d)
+ ENDIF()
+ENDIF()
+IF(SALOME_USE_VTKVIEWER)
+ LIST(APPEND _link_LIBRARIES VTKViewer)
+ IF(SALOME_USE_SALOMEOBJECT)
+ LIST(APPEND _link_LIBRARIES SVTK)
+ ENDIF()
+ENDIF()
+IF(SALOME_USE_QXGRAPHVIEWER)
+ LIST(APPEND _link_LIBRARIES QxScene)
+ENDIF()
+IF(SALOME_USE_PYCONSOLE)
+ LIST(APPEND _link_LIBRARIES PyInterp PyConsole SUITApp)
+ENDIF()
-SET(GUI_HEADERS
+# --- headers ---
+
+# header files / to be processed by moc
+SET(_moc_HEADERS
LightApp_AboutDlg.h
LightApp_Application.h
LightApp_DataModel.h
LightApp_Dialog.h
- LightApp_OBSelector.h
- LightApp_Operation.h
LightApp_Module.h
LightApp_ModuleAction.h
LightApp_ModuleDlg.h
LightApp_NameDlg.h
+ LightApp_OBSelector.h
+ LightApp_Operation.h
+ LightApp_Preferences.h
+ LightApp_PreferencesDlg.h
LightApp_SelectionMgr.h
LightApp_ShowHideOp.h
LightApp_Study.h
LightApp_SwitchOp.h
- LightApp_Preferences.h
- LightApp_PreferencesDlg.h
LightApp_WgViewModel.h
)
+IF(SALOME_USE_GLVIEWER)
+ LIST(APPEND _moc_HEADERS LightApp_GLSelector.h)
+ENDIF()
+IF(SALOME_USE_OCCVIEWER)
+ LIST(APPEND _moc_HEADERS LightApp_OCCSelector.h)
+ENDIF()
+IF(SALOME_USE_PLOT2DVIEWER)
+ LIST(APPEND _moc_HEADERS LightApp_Plot2dSelector.h)
+ENDIF()
+IF(SALOME_USE_VTKVIEWER)
+ IF(SALOME_USE_SALOMEOBJECT)
+ LIST(APPEND _moc_HEADERS LightApp_VTKSelector.h)
+ ENDIF()
+ENDIF()
+
+# header files / no moc processing
+SET(_other_HEADERS
+ LightApp.h
+ LightApp_DataObject.h
+ LightApp_DataOwner.h
+ LightApp_DataSubOwner.h
+ LightApp_Displayer.h
+ LightApp_Driver.h
+ LightApp_EventFilter.h
+ LightApp_FullScreenHelper.h
+ LightApp_HDFDriver.h
+ LightApp_Selection.h
+ LightApp_UpdateFlags.h
+)
+IF(SALOME_USE_PYCONSOLE)
+ LIST(APPEND _other_HEADERS LightApp_PyInterp.h)
+ENDIF()
+
+# header files / to install
+SET(LightApp_HEADERS ${_moc_HEADERS} ${_other_HEADERS})
+
+# --- resources ---
+
+# resource files / to be processed by rcc
+SET(_rcc_RESOURCES LightApp.qrc)
+
+# resource files / to be processed by lrelease
+SET(_ts_RESOURCES
+ resources/LightApp_images.ts
+ resources/LightApp_msg_en.ts
+ resources/LightApp_msg_fr.ts
+ resources/LightApp_msg_ja.ts
+)
-SET(RCCS LightApp.qrc)
+# resource files / static
+SET(_other_RESOURCES
+ resources/icon_about.png
+ resources/icon_applogo.png
+ resources/icon_default.png
+ resources/icon_module.png
+ resources/icon_module_big.png
+ resources/icon_select.png
+ resources/LightApp.ini
+ resources/LightApp.xml
+)
+
+# --- sources ---
+
+# sources / rcc wrappings
+QT4_ADD_RESOURCES(_rcc_SOURCES ${_rcc_RESOURCES})
-SET(LightApp_SOURCES
+# sources / moc wrappings
+QT4_WRAP_CPP(_moc_SOURCES ${_moc_HEADERS})
+
+# sources / static
+SET(_other_SOURCES
LightApp_AboutDlg.cxx
LightApp_Application.cxx
LightApp_DataModel.cxx
LightApp_Displayer.cxx
LightApp_Driver.cxx
LightApp_EventFilter.cxx
+ LightApp_FullScreenHelper.cxx
LightApp_HDFDriver.cxx
LightApp_Module.cxx
LightApp_ModuleAction.cxx
LightApp_NameDlg.cxx
LightApp_OBSelector.cxx
LightApp_Operation.cxx
+ LightApp_Preferences.cxx
+ LightApp_PreferencesDlg.cxx
LightApp_Selection.cxx
LightApp_SelectionMgr.cxx
LightApp_ShowHideOp.cxx
LightApp_Study.cxx
LightApp_SwitchOp.cxx
- LightApp_Preferences.cxx
- LightApp_PreferencesDlg.cxx
LightApp_WgViewModel.cxx
- LightApp_FullScreenHelper.cxx
-)
-
-SET(GUITS_SOURCES
- resources/LightApp_images.ts
- resources/LightApp_msg_en.ts
- resources/LightApp_msg_fr.ts
- resources/LightApp_msg_ja.ts
-)
-
-SET(COMMON_HEADERS_H
- LightApp.h
- LightApp_AboutDlg.h
- LightApp_Application.h
- LightApp_DataModel.h
- LightApp_DataObject.h
- LightApp_DataOwner.h
- LightApp_DataSubOwner.h
- LightApp_Dialog.h
- LightApp_Displayer.h
- LightApp_Driver.h
- LightApp_EventFilter.h
- LightApp_HDFDriver.h
- LightApp_Module.h
- LightApp_ModuleAction.h
- LightApp_ModuleDlg.h
- LightApp_NameDlg.h
- LightApp_OBSelector.h
- LightApp_Operation.h
- LightApp_Selection.h
- LightApp_SelectionMgr.h
- LightApp_ShowHideOp.h
- LightApp_Study.h
- LightApp_SwitchOp.h
- LightApp_Preferences.h
- LightApp_PreferencesDlg.h
- LightApp_UpdateFlags.h
- LightApp_WgViewModel.h
- LightApp_FullScreenHelper.h
)
-
-IF(SALOME_USE_PYCONSOLE)
- INCLUDE_DIRECTORIES(
- ${PYTHON_INCLUDE_DIRS}
- ${CMAKE_CURRENT_SOURCE_DIR}/../PyConsole
- ${CMAKE_CURRENT_SOURCE_DIR}/../PyInterp
- ${CMAKE_CURRENT_SOURCE_DIR}/../SUITApp
- )
- SET(COMMON_HEADERS_H ${COMMON_HEADERS_H} LightApp_PyInterp.h)
- SET(LightApp_SOURCES ${LightApp_SOURCES} LightApp_PyInterp.cxx)
- SET(COMMON_LIBS ${COMMON_LIBS} PyInterp PyConsole SUITApp)
-ELSE(SALOME_USE_PYCONSOLE)
- ADD_DEFINITIONS("-DDISABLE_PYCONSOLE")
-ENDIF(SALOME_USE_PYCONSOLE)
-
-IF(SALOME_USE_VTKVIEWER)
- INCLUDE_DIRECTORIES(
- ${VTK_INCLUDE_DIRS}
- ${CMAKE_CURRENT_SOURCE_DIR}/../VTKViewer
- )
- SET(COMMON_LIBS ${COMMON_LIBS} ${VTK_LIBRARIES} VTKViewer)
- IF(SALOME_USE_SALOMEOBJECT)
- SET(COMMON_HEADERS_H ${COMMON_HEADERS_H} LightApp_VTKSelector.h)
- SET(LightApp_SOURCES ${LightApp_SOURCES} LightApp_VTKSelector.cxx)
- SET(GUI_HEADERS ${GUI_HEADERS} LightApp_VTKSelector.h)
- SET(COMMON_LIBS ${COMMON_LIBS} SVTK)
- ENDIF(SALOME_USE_SALOMEOBJECT)
-ELSE(SALOME_USE_VTKVIEWER)
- ADD_DEFINITIONS("-DDISABLE_VTKVIEWER")
-ENDIF(SALOME_USE_VTKVIEWER)
-
-IF(SALOME_USE_OCCVIEWER)
- INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/../OCCViewer)
- SET(COMMON_HEADERS_H ${COMMON_HEADERS_H} LightApp_OCCSelector.h)
- SET(LightApp_SOURCES ${LightApp_SOURCES} LightApp_OCCSelector.cxx)
- SET(COMMON_LIBS ${COMMON_LIBS} OCCViewer)
- SET(GUI_HEADERS ${GUI_HEADERS} LightApp_OCCSelector.h)
-ELSE(SALOME_USE_OCCVIEWER)
- ADD_DEFINITIONS("-DDISABLE_OCCVIEWER")
-ENDIF(SALOME_USE_OCCVIEWER)
-
IF(SALOME_USE_GLVIEWER)
- INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/../GLViewer)
- SET(COMMON_HEADERS_H ${COMMON_HEADERS_H} LightApp_GLSelector.h)
- SET(LightApp_SOURCES ${LightApp_SOURCES} LightApp_GLSelector.cxx)
- SET(GUI_HEADERS ${GUI_HEADERS} LightApp_GLSelector.h)
- SET(COMMON_LIBS ${COMMON_LIBS} GLViewer)
-ELSE(SALOME_USE_GLVIEWER)
- ADD_DEFINITIONS("-DDISABLE_GLVIEWER")
-ENDIF(SALOME_USE_GLVIEWER)
-
+ LIST(APPEND _other_SOURCES LightApp_GLSelector.cxx)
+ENDIF()
+IF(SALOME_USE_OCCVIEWER)
+ LIST(APPEND _other_SOURCES LightApp_OCCSelector.cxx)
+ENDIF()
IF(SALOME_USE_PLOT2DVIEWER)
- INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/../Plot2d)
- ADD_DEFINITIONS(${QWT_DEFINITIONS})
- SET(COMMON_HEADERS_H ${COMMON_HEADERS_H} LightApp_Plot2dSelector.h)
- SET(LightApp_SOURCES ${LightApp_SOURCES} LightApp_Plot2dSelector.cxx)
- SET(GUI_HEADERS ${GUI_HEADERS} LightApp_Plot2dSelector.h)
- SET(COMMON_LIBS ${COMMON_LIBS} Plot2d)
-ELSE(SALOME_USE_PLOT2DVIEWER)
- ADD_DEFINITIONS("-DDISABLE_PLOT2DVIEWER")
-ENDIF(SALOME_USE_PLOT2DVIEWER)
+ LIST(APPEND _other_SOURCES LightApp_Plot2dSelector.cxx)
+ENDIF()
+IF(SALOME_USE_VTKVIEWER)
+ IF(SALOME_USE_SALOMEOBJECT)
+ LIST(APPEND _other_SOURCES LightApp_VTKSelector.cxx)
+ ENDIF()
+ENDIF()
+IF(SALOME_USE_PYCONSOLE)
+ LIST(APPEND _other_SOURCES LightApp_PyInterp.cxx)
+ENDIF()
-IF(SALOME_USE_SUPERVGRAPHVIEWER)
- INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/../SUPERVGraph)
- SET(COMMON_LIBS ${COMMON_LIBS} SUPERVGraph)
-ELSE(SALOME_USE_SUPERVGRAPHVIEWER)
- ADD_DEFINITIONS("-DDISABLE_SUPERVGRAPHVIEWER")
-ENDIF(SALOME_USE_SUPERVGRAPHVIEWER)
+# sources / to compile
+SET(LightApp_SOURCES ${_other_SOURCES} ${_moc_SOURCES} ${_rcc_SOURCES})
-IF(SALOME_USE_QXGRAPHVIEWER)
- INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/../QxScene)
- SET(COMMON_LIBS ${COMMON_LIBS} QxScene)
-ELSE(SALOME_USE_QXGRAPHVIEWER)
- ADD_DEFINITIONS("-DDISABLE_QXGRAPHVIEWER")
-ENDIF(SALOME_USE_QXGRAPHVIEWER)
-
-IF(SALOME_USE_SALOMEOBJECT)
- INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/../OBJECT)
- SET(COMMON_LIBS ${COMMON_LIBS} SalomeObject)
- IF(SALOME_USE_PLOT2DVIEWER)
- INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/../SPlot2d)
- SET(COMMON_LIBS ${COMMON_LIBS} SPlot2d)
- ENDIF(SALOME_USE_PLOT2DVIEWER)
-
- IF(SALOME_USE_OCCVIEWER)
- INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/../SOCC)
- SET(COMMON_LIBS ${COMMON_LIBS} SOCC)
- ENDIF(SALOME_USE_OCCVIEWER)
+# --- rules ---
- IF(SALOME_USE_VTKVIEWER)
- INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/../SVTK)
- ENDIF(SALOME_USE_VTKVIEWER)
-ELSE(SALOME_USE_SALOMEOBJECT)
- ADD_DEFINITIONS("-DDISABLE_SALOMEOBJECT")
-ENDIF(SALOME_USE_SALOMEOBJECT)
-
-QT4_WRAP_CPP(GUI_HEADERS_MOC ${GUI_HEADERS})
-QT4_ADD_RESOURCES(RCC_SRCS ${RCCS})
-ADD_LIBRARY(LightApp ${LightApp_SOURCES} ${GUI_HEADERS_MOC} ${RCC_SRCS})
-TARGET_LINK_LIBRARIES(LightApp ${COMMON_LIBS})
+ADD_LIBRARY(LightApp ${LightApp_SOURCES})
+TARGET_LINK_LIBRARIES(LightApp ${_link_LIBRARIES})
INSTALL(TARGETS LightApp EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
-INSTALL(FILES ${COMMON_HEADERS_H} DESTINATION ${SALOME_INSTALL_HEADERS})
-QT4_INSTALL_TS_RESOURCES("${GUITS_SOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
+INSTALL(FILES ${LightApp_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
+QT4_INSTALL_TS_RESOURCES("${_ts_RESOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
-FILE(GLOB GUIPNG_DATA "${CMAKE_CURRENT_SOURCE_DIR}/resources/*.png")
-SET(GUI_DATA ${GUIPNG_DATA} ${CMAKE_CURRENT_SOURCE_DIR}/resources/LightApp.ini ${CMAKE_CURRENT_SOURCE_DIR}/resources/LightApp.xml)
-INSTALL(FILES ${GUI_DATA} DESTINATION ${SALOME_GUI_INSTALL_RES_DATA})
+INSTALL(FILES ${_other_RESOURCES} DESTINATION ${SALOME_GUI_INSTALL_RES_DATA})
#include "LightApp_AboutDlg.h"
#include "LightApp_ModuleAction.h"
// temporary commented
-//#include "LightApp_OBFilter.h"
#include "LightApp_EventFilter.h"
#include "LightApp_OBSelector.h"
#include "LightApp_SelectionMgr.h"
#include <VTKViewer_ViewModel.h>
#endif
-//#ifndef DISABLE_SUPERVGRAPHVIEWER
-// #include <SUPERVGraph_ViewModel.h>
-// #include <SUPERVGraph_ViewFrame.h>
-// #include <SUPERVGraph_ViewManager.h>
-//#endif
-
#ifndef DISABLE_QXGRAPHVIEWER
-//VSR: QxGraph has been replaced by QxScene
-// #include <QxGraph_ViewModel.h>
-// #include <QxGraph_ViewWindow.h>
-// #include <QxGraph_ViewManager.h>
#include <QxScene_ViewManager.h>
#include <QxScene_ViewModel.h>
#include <QxScene_ViewWindow.h>
createActionForViewer( NewVTKViewId, newWinMenu, QString::number( 3 ), Qt::ALT+Qt::Key_K );
#endif
#ifndef DISABLE_QXGRAPHVIEWER
-//VSR: QxGraph has been replaced by QxScene
-// createActionForViewer( NewQxGraphViewId, newWinMenu, QString::number( 4 ), Qt::ALT+Qt::Key_C );
createActionForViewer( NewQxSceneViewId, newWinMenu, QString::number( 4 ), Qt::ALT+Qt::Key_S );
#endif
break;
#endif
#ifndef DISABLE_QXGRAPHVIEWER
-//VSR: QxGraph has been replaced by QxScene
-// case NewQxGraphViewId:
-// type = QxGraph_Viewer::Type();
-// break;
case NewQxSceneViewId:
type = QxScene_Viewer::Type();
break;
#endif
#ifndef DISABLE_QXGRAPHVIEWER
-//VSR: QxGraph has been replaced by QxScene
-// a = action( NewQxGraphViewId );
a = action( NewQxSceneViewId );
if( a )
a->setEnabled( activeStudy() );
}
}
#endif
- //#ifndef DISABLE_SUPERVGRAPHVIEWER
- // if( vmType == SUPERVGraph_Viewer::Type() )
- // {
- // viewMgr = new SUPERVGraph_ViewManager( activeStudy(), desktop(), new SUPERVGraph_Viewer() );
- // }
- //#endif
#ifndef DISABLE_QXGRAPHVIEWER
-//VSR: QxGraph has been replaced by QxScene
-// if( vmType == QxGraph_Viewer::Type() )
-// {
-// viewMgr = new QxGraph_ViewManager( activeStudy(), desktop(), new QxGraph_Viewer() );
-// }
if( vmType == QxScene_Viewer::Type() )
{
viewMgr = new QxScene_ViewManager( activeStudy(), desktop() );
OB_ListView* ob_list = dynamic_cast<OB_ListView*>( const_cast<QListView*>( ob->listView() ) );
if( ob_list )
ob_list->setColumnMaxWidth( 0, desktop()->width()/4 );
-
- ob->setFilter( new LightApp_OBFilter( selectionMgr() ) );
*/
// Create OBSelector
enum { RenameId = CAM_Application::UserID,
CloseId, CloseAllId, GroupAllId,
PreferencesId, MRUId, ModulesListId,
- NewGLViewId, NewPlot2dId, NewOCCViewId, NewVTKViewId, NewQxGraphViewId,
- NewQxSceneViewId = NewQxGraphViewId, StyleId, FullScreenId,
+ NewGLViewId, NewPlot2dId, NewOCCViewId, NewVTKViewId,
+ NewQxSceneViewId, StyleId, FullScreenId,
UserID };
protected:
+++ /dev/null
-// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-//
-// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
-// 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.
-//
-// 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
-//
-
-#include "LightApp_OBFilter.h"
-
-#include "LightApp_SelectionMgr.h"
-#include "LightApp_DataObject.h"
-#include "LightApp_DataOwner.h"
-
-/*!
- Constructor.
-*/
-LightApp_OBFilter::LightApp_OBFilter( LightApp_SelectionMgr* theSelMgr )
-{
- mySelMgr = theSelMgr;
-}
-
-/*!Destructor.*/
-LightApp_OBFilter::~LightApp_OBFilter()
-{
-}
-
-/*!Checks: data object is ok?*/
-bool LightApp_OBFilter::isOk( const SUIT_DataObject* theDataObj ) const
-{
- const LightApp_DataObject* obj = dynamic_cast<const LightApp_DataObject*>( theDataObj );
- if ( obj )
- return mySelMgr->isOk( new LightApp_DataOwner( obj->entry() ) );
-
- return true;
-}
-
+++ /dev/null
-// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-//
-// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
-// 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.
-//
-// 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
-//
-
-#ifndef LIGHTAPP_OBFILTER_H
-#define LIGHTAPP_OBFILTER_H
-
-#include "LightApp.h"
-#include "OB_Filter.h"
-
-class LightApp_SelectionMgr;
-
-/*!
- \class LightApp_OBFilter
- Custom Object Browser filter, that checks correctness of object by all filters set in selection manager
-*/
-class LIGHTAPP_EXPORT LightApp_OBFilter: public OB_Filter
-{
-public:
- LightApp_OBFilter( LightApp_SelectionMgr* theSelMgr );
- ~LightApp_OBFilter();
-
- virtual bool isOk( const SUIT_DataObject* ) const;
-
-private:
- LightApp_SelectionMgr* mySelMgr;
-
-};
-
-#endif
<parameter name="CAM" value="${GUI_ROOT_DIR}/share/salome/resources/gui"/>
<parameter name="LightApp" value="${GUI_ROOT_DIR}/share/salome/resources/gui"/>
<parameter name="SVTK" value="${GUI_ROOT_DIR}/share/salome/resources/gui"/>
- <parameter name="SUPERVGraph" value="${GUI_ROOT_DIR}/share/salome/resources/gui"/>
- <parameter name="QxGraph" value="${GUI_ROOT_DIR}/share/salome/resources/gui"/>
<parameter name="ToolsGUI" value="${GUI_ROOT_DIR}/share/salome/resources/gui"/>
<parameter name="LogWindow" value="${GUI_ROOT_DIR}/share/salome/resources/gui"/>
</section>
<parameter name="VerNormRMinMode" value="false"/>
<parameter name="VerNormRMaxMode" value="false"/>
</section>
- <section name="QxGraph" >
- <!-- QxGraph viewer preferences -->
- <parameter name="Background" value="144, 208, 211" />
- <parameter name="Title" value="63, 213, 255" />
- <parameter name="NodeBody" value="255, 249, 147" />
- </section>
<section name="QxSceneViewer" >
- <!-- QxGraph viewer preferences -->
+ <!-- QxScene viewer preferences -->
<parameter name="Background" value="144, 208, 211" />
<parameter name="Title" value="63, 213, 255" />
<parameter name="NodeBody" value="255, 249, 147" />
<source>PREF_BROWSE_ALWAYS</source>
<translation>Always</translation>
</message>
- <message>
- <source>PREF_GROUP_SUPERV</source>
- <translation>Graph Supervisor</translation>
- </message>
<message>
<source>PREF_TAB_OBJBROWSER</source>
<translation>Object browser</translation>
</message>
<message>
<source>NEW_WINDOW_4</source>
- <translation>&QxGraph 2D view</translation>
- </message>
- <message>
- <source>NEW_WINDOW_5</source>
<translation>Qx&Scene 2D view</translation>
</message>
<message>
<source>PREF_BROWSE_ALWAYS</source>
<translation>Toujours</translation>
</message>
- <message>
- <source>PREF_GROUP_SUPERV</source>
- <translation>Superviseur des graphes</translation>
- </message>
<message>
<source>PREF_TAB_OBJBROWSER</source>
<translation>Arbre d'étude</translation>
</message>
<message>
<source>NEW_WINDOW_4</source>
- <translation>Scène &QxGraph</translation>
- </message>
- <message>
- <source>NEW_WINDOW_5</source>
<translation>Scène Qx&Scene</translation>
</message>
<message>
<source>PREF_BROWSE_ALWAYS</source>
<translation>常に</translation>
</message>
- <message>
- <source>PREF_GROUP_SUPERV</source>
- <translation>グラフのスーパーバイザー</translation>
- </message>
<message>
<source>PREF_TAB_OBJBROWSER</source>
<translation>オブジェクト ブラウザー</translation>
</message>
<message>
<source>NEW_WINDOW_4</source>
- <translation>& QxGraph 2D ビュー</translation>
- </message>
- <message>
- <source>NEW_WINDOW_5</source>
<translation>Qx & シーン 2 D ビュー</translation>
</message>
<message>
INCLUDE(UseQt4Ext)
+# --- options ---
+
+# additional include directories
INCLUDE_DIRECTORIES(
${QT_INCLUDES}
- ${CMAKE_CURRENT_SOURCE_DIR}/../Qtx
- ${CMAKE_CURRENT_SOURCE_DIR}/../SUIT
+ ${PROJECT_SOURCE_DIR}/src/Qtx
+ ${PROJECT_SOURCE_DIR}/src/SUIT
)
-SET(GUI_HEADERS LogWindow.h)
-QT4_WRAP_CPP(GUI_HEADERS_MOC ${GUI_HEADERS})
+# additional preprocessor / compiler flags
+ADD_DEFINITIONS(${QT_DEFINITIONS})
+
+# libraries to link to
+SET(_link_LIBRARIES ${QT_LIBRARIES} qtx suit)
+
+# --- headers ---
+
+# header files / to be processed by moc
+SET(_moc_HEADERS LogWindow.h)
+
+# header files / to install
+SET(LogWindow_HEADERS ${_moc_HEADERS})
-SET(GUITS_SOURCES
+# --- resources ---
+
+# resource files / to be processed by lrelease
+SET(_ts_RESOURCES
resources/LogWindow_msg_en.ts
resources/LogWindow_msg_fr.ts
resources/LogWindow_msg_ja.ts
)
-ADD_DEFINITIONS(${QT_DEFINITIONS})
+# --- sources ---
+
+# sources / moc wrappings
+QT4_WRAP_CPP(_moc_SOURCES ${_moc_HEADERS})
+
+# sources / static
+SET(_other_SOURCES LogWindow.cxx)
+
+# sources / to compile
+SET(LogWindow_SOURCES ${_other_SOURCES} ${_moc_SOURCES})
+
+# --- rules ---
-ADD_LIBRARY(LogWindow LogWindow.cxx ${GUI_HEADERS_MOC})
-TARGET_LINK_LIBRARIES(LogWindow qtx suit ${QT_LIBRARIES})
+ADD_LIBRARY(LogWindow ${LogWindow_SOURCES})
+TARGET_LINK_LIBRARIES(LogWindow ${_link_LIBRARIES})
INSTALL(TARGETS LogWindow EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
-FILE(GLOB COMMON_HEADERS_H "${CMAKE_CURRENT_SOURCE_DIR}/*.h")
-INSTALL(FILES ${COMMON_HEADERS_H} DESTINATION ${SALOME_INSTALL_HEADERS})
-QT4_INSTALL_TS_RESOURCES("${GUITS_SOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
+INSTALL(FILES ${LogWindow_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
+QT4_INSTALL_TS_RESOURCES("${_ts_RESOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
#
+# --- options ---
+
+# additional include directories
INCLUDE_DIRECTORIES(
- ${PTHREAD_INCLUDE_DIRS}
${CAS_INCLUDE_DIRS}
- ${QT_INCLUDES}
${KERNEL_INCLUDE_DIRS}
)
-SET(COMMON_LIBS
- ${QT_LIBRARIES}
- ${CAS_LDPATH}
- ${CAS_KERNEL}
- ${CAS_TKV3d}
+# additional preprocessor / compiler flags
+ADD_DEFINITIONS(${QT_DEFINITIONS} ${CAS_DEFINITIONS})
+
+# libraries to link to
+SET(_link_LIBRARIES ${QT_LIBRARIES} ${CAS_LDPATH} ${CAS_KERNEL} ${CAS_TKV3d})
+
+# --- headers ---
+
+# header files / to install
+SET(SalomeObject_HEADERS
+ Handle_SALOME_AISObject.hxx
+ Handle_SALOME_AISShape.hxx
+ Handle_SALOME_DataMapNodeOfDataMapOfIOMapOfInteger.hxx
+ Handle_SALOME_Filter.hxx
+ Handle_SALOME_InteractiveObject.hxx
+ Handle_SALOME_ListNodeOfListIO.hxx
+ Handle_SALOME_TypeFilter.hxx
+ SALOME_AISObject.hxx
+ SALOME_AISShape.hxx
+ SALOME_DataMapIteratorOfDataMapOfIOMapOfInteger.hxx
+ SALOME_DataMapNodeOfDataMapOfIOMapOfInteger.hxx
+ SALOME_DataMapOfIOMapOfInteger.hxx
+ SALOME_Filter.hxx
+ SALOME_InteractiveObject.hxx
+ SALOME_ListIO.hxx
+ SALOME_ListIteratorOfListIO.hxx
+ SALOME_ListNodeOfListIO.hxx
+ SALOME_Selection.h
+ SALOME_TypeFilter.hxx
)
+# --- sources ---
+
+# sources / to compile
+
SET(SalomeObject_SOURCES
SALOME_InteractiveObject.cxx
SALOME_AISShape.cxx
SALOME_DataMapIteratorOfDataMapOfIOMapOfInteger_0.cxx
)
-ADD_DEFINITIONS(${QT_DEFINITIONS} ${CAS_DEFINITIONS})
+# --- rules ---
ADD_LIBRARY(SalomeObject ${SalomeObject_SOURCES})
-TARGET_LINK_LIBRARIES(SalomeObject ${COMMON_LIBS})
+TARGET_LINK_LIBRARIES(SalomeObject ${_link_LIBRARIES})
INSTALL(TARGETS SalomeObject EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
-FILE(GLOB COMMON_HEADERS_HXX "${CMAKE_CURRENT_SOURCE_DIR}/*.hxx")
-INSTALL(FILES ${COMMON_HEADERS_HXX} SALOME_Selection.h DESTINATION ${SALOME_INSTALL_HEADERS})
+INSTALL(FILES ${SalomeObject_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
INCLUDE(UseQt4Ext)
+# --- options ---
+
+# additional include directories
INCLUDE_DIRECTORIES(
${CAS_INCLUDE_DIRS}
${OGL_INCLUDE_DIRS}
${QT_INCLUDES}
- ${PTHREAD_INCLUDE_DIRS}
${KERNEL_INCLUDE_DIRS}
- ${CMAKE_CURRENT_SOURCE_DIR}/../SUIT
- ${CMAKE_CURRENT_SOURCE_DIR}/../ViewerTools
- ${CMAKE_CURRENT_SOURCE_DIR}/../Qtx
- ${CMAKE_CURRENT_SOURCE_DIR}/../OpenGLUtils
- ${CMAKE_CURRENT_SOURCE_DIR}/../CASCatch
+ ${PROJECT_SOURCE_DIR}/src/CASCatch
+ ${PROJECT_SOURCE_DIR}/src/Qtx
+ ${PROJECT_SOURCE_DIR}/src/OpenGLUtils
+ ${PROJECT_SOURCE_DIR}/src/SUIT
+ ${PROJECT_SOURCE_DIR}/src/ViewerTools
)
+# additional preprocessor / compiler flags
+ADD_DEFINITIONS(${QT_DEFINITIONS} ${CAS_DEFINITIONS} ${OGL_DEFINITIONS})
-
-SET(COMMON_LIBS
- qtx
- suit
- ViewerTools
- OpenGLUtils
- ${OPENGL_LIBRARIES}
- ${QT_LIBRARIES}
- ${CAS_KERNEL}
- ${CAS_VIEWER}
+# libraries to link to
+SET(_link_LIBRARIES
+ ${OPENGL_LIBRARIES} ${QT_LIBRARIES} ${CAS_KERNEL} ${CAS_VIEWER}
+ CASCatch qtx suit OpenGLUtils ViewerTools
)
-SET(GUI_HEADERS
+# --- headers ---
+
+# header files / to be processed by moc
+SET(_moc_HEADERS
OCCViewer_AISSelector.h
- OCCViewer_ViewModel.h
- OCCViewer_ViewPort3d.h
- OCCViewer_ViewPort.h
- OCCViewer_ViewSketcher.h
- OCCViewer_ViewWindow.h
- OCCViewer_ViewManager.h
- OCCViewer_CreateRestoreViewDlg.h
- OCCViewer_SetRotationPointDlg.h
- OCCViewer_ClippingDlg.h
OCCViewer_AxialScaleDlg.h
- OCCViewer_FontWidget.h
+ OCCViewer_ClippingDlg.h
+ OCCViewer_CreateRestoreViewDlg.h
OCCViewer_CubeAxesDlg.h
+ OCCViewer_FontWidget.h
+ OCCViewer_SetRotationPointDlg.h
OCCViewer_ToolTip.h
OCCViewer_ViewFrame.h
+ OCCViewer_ViewManager.h
+ OCCViewer_ViewModel.h
+ OCCViewer_ViewPort.h
+ OCCViewer_ViewPort3d.h
+ OCCViewer_ViewSketcher.h
+ OCCViewer_ViewWindow.h
+)
+
+# header files / no moc processing
+SET(_other_HEADERS
+ OCCViewer.h
+ OCCViewer_Trihedron.h
+ OCCViewer_VService.h
)
-QT4_WRAP_CPP(GUI_HEADERS ${GUI_HEADERS})
-SET(OCCViewer_SOURCES
+# header files / no moc processing / internal
+# no processing currently: TODO: check for MSVS project
+SET(_internal_HEADERS
+ OCCViewer_VService.h
+)
+
+# header files / to install
+SET(OCCViewer_HEADERS ${_moc_HEADERS} ${_other_HEADERS})
+
+# --- resources ---
+
+# resource files / to be processed by lrelease
+SET(_ts_RESOURCES
+ resources/OCCViewer_images.ts
+ resources/OCCViewer_msg_en.ts
+ resources/OCCViewer_msg_fr.ts
+ resources/OCCViewer_msg_ja.ts
+)
+
+# resource files / static
+SET(_other_RESOURCES
+ resources/occ_view_ambient.png
+ resources/occ_view_anticlockwise.png
+ resources/occ_view_back.png
+ resources/occ_view_bottom.png
+ resources/occ_view_camera_dump.png
+ resources/occ_view_clipping.png
+ resources/occ_view_clipping_pressed.png
+ resources/occ_view_clockwise.png
+ resources/occ_view_clone.png
+ resources/occ_view_fitall.png
+ resources/occ_view_fitarea.png
+ resources/occ_view_front.png
+ resources/occ_view_glpan.png
+ resources/occ_view_graduated_axes.png
+ resources/occ_view_left.png
+ resources/occ_view_maximized.png
+ resources/occ_view_minimized.png
+ resources/occ_view_pan.png
+ resources/occ_view_preselection.png
+ resources/occ_view_presets.png
+ resources/occ_view_reset.png
+ resources/occ_view_right.png
+ resources/occ_view_rotate.png
+ resources/occ_view_rotation_point.png
+ resources/occ_view_scaling.png
+ resources/occ_view_selection.png
+ resources/occ_view_shoot.png
+ resources/occ_view_style_switch.png
+ resources/occ_view_top.png
+ resources/occ_view_triedre.png
+ resources/occ_view_zoom.png
+ resources/occ_view_zooming_style_switch.png
+)
+
+# --- sources ---
+
+# sources / moc wrappings
+QT4_WRAP_CPP(_moc_SOURCES ${_moc_HEADERS})
+
+# sources / static
+SET(_other_SOURCES
OCCViewer_AISSelector.cxx
+ OCCViewer_AxialScaleDlg.cxx
+ OCCViewer_ClippingDlg.cxx
+ OCCViewer_CreateRestoreViewDlg.cxx
+ OCCViewer_CubeAxesDlg.cxx
+ OCCViewer_FontWidget.cxx
+ OCCViewer_SetRotationPointDlg.cxx
+ OCCViewer_ToolTip.cxx
+ OCCViewer_Trihedron.cxx
+ OCCViewer_VService.cxx
+ OCCViewer_ViewFrame.cxx
OCCViewer_ViewManager.cxx
OCCViewer_ViewModel.cxx
- OCCViewer_ViewPort3d.cxx
OCCViewer_ViewPort.cxx
+ OCCViewer_ViewPort3d.cxx
OCCViewer_ViewSketcher.cxx
OCCViewer_ViewWindow.cxx
- OCCViewer_VService.cxx
- OCCViewer_CreateRestoreViewDlg.cxx
- OCCViewer_SetRotationPointDlg.cxx
- OCCViewer_ClippingDlg.cxx
- OCCViewer_AxialScaleDlg.cxx
- OCCViewer_Trihedron.cxx
- OCCViewer_FontWidget.cxx
- OCCViewer_CubeAxesDlg.cxx
- OCCViewer_ToolTip.cxx
- OCCViewer_ViewFrame.cxx
)
-SET(GUITS_SOURCES
- resources/OCCViewer_images.ts
- resources/OCCViewer_msg_en.ts
- resources/OCCViewer_msg_fr.ts
- resources/OCCViewer_msg_ja.ts
-)
+# sources / to compile
+SET(OCCViewer_SOURCES ${_other_SOURCES} ${_moc_SOURCES})
-ADD_DEFINITIONS(${QT_DEFINITIONS} ${CAS_DEFINITIONS} ${OGL_DEFINITIONS})
+# --- rules ---
-ADD_LIBRARY(OCCViewer ${OCCViewer_SOURCES} ${GUI_HEADERS})
-TARGET_LINK_LIBRARIES(OCCViewer ${COMMON_LIBS})
+ADD_LIBRARY(OCCViewer ${OCCViewer_SOURCES})
+TARGET_LINK_LIBRARIES(OCCViewer ${_link_LIBRARIES})
INSTALL(TARGETS OCCViewer EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
-SET(COMMON_HEADERS_H
- OCCViewer_AISSelector.h
- OCCViewer_ViewManager.h
- OCCViewer_ViewModel.h
- OCCViewer_ViewPort3d.h
- OCCViewer_ViewPort.h
- OCCViewer_ViewSketcher.h
- OCCViewer_ViewWindow.h
- OCCViewer_VService.h
- OCCViewer_CreateRestoreViewDlg.h
- OCCViewer.h
- OCCViewer_ClippingDlg.h
- OCCViewer_AxialScaleDlg.h
- OCCViewer_SetRotationPointDlg.h
- OCCViewer_Trihedron.h
- OCCViewer_FontWidget.h
- OCCViewer_CubeAxesDlg.h
- OCCViewer_ToolTip.h
- OCCViewer_ViewFrame.h
-)
-INSTALL(FILES ${COMMON_HEADERS_H} DESTINATION ${SALOME_INSTALL_HEADERS})
-QT4_INSTALL_TS_RESOURCES("${GUITS_SOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
-FILE(GLOB GUIPNG_DATA "${CMAKE_CURRENT_SOURCE_DIR}/resources/*.png")
-INSTALL(FILES ${GUIPNG_DATA} DESTINATION ${SALOME_GUI_INSTALL_RES_DATA})
+INSTALL(FILES ${OCCViewer_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
+QT4_INSTALL_TS_RESOURCES("${_ts_RESOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
+
+INSTALL(FILES ${_other_RESOURCES} DESTINATION ${SALOME_GUI_INSTALL_RES_DATA})
INCLUDE(UseQt4Ext)
+# --- options ---
+
+# additional include directories
INCLUDE_DIRECTORIES(
${QT_INCLUDES}
- ${CMAKE_CURRENT_SOURCE_DIR}/../Qtx
+ ${PROJECT_SOURCE_DIR}/src/Qtx
)
-SET(GUI_HEADERS OB_Browser.h)
-QT4_WRAP_CPP(GUI_HEADERS ${GUI_HEADERS})
-SET(ObjBrowser_SOURCES
- OB_Browser.cxx
-)
+# additional preprocessor / compiler flags
+ADD_DEFINITIONS(${QT_DEFINITIONS})
+
+# libraries to link to
+SET(_link_LIBRARIES ${QT_LIBRARIES} qtx)
+
+# --- headers ---
+
+# header files / to be processed by moc
+SET(_moc_HEADERS OB_Browser.h)
+
+# header files / no moc processing
+SET(_other_HEADERS OB.h)
+
+# header files / to install
+SET(ObjBrowser_HEADERS ${_moc_HEADERS} ${_other_HEADERS})
-SET(GUITS_SOURCES
+# --- resources ---
+
+# resource files / to be processed by lrelease
+SET(_ts_RESOURCES
resources/OB_msg_en.ts
resources/OB_msg_fr.ts
resources/OB_msg_ja.ts
)
-ADD_DEFINITIONS(${QT_DEFINITIONS})
+# --- sources ---
+
+# sources / moc wrappings
+QT4_WRAP_CPP(_moc_SOURCES ${_moc_HEADERS})
+
+# sources / static
+SET(_other_SOURCES OB_Browser.cxx)
-ADD_LIBRARY(ObjBrowser ${ObjBrowser_SOURCES} ${GUI_HEADERS})
-TARGET_LINK_LIBRARIES(ObjBrowser qtx ${QT_LIBRARIES})
+# sources / to compile
+SET(ObjBrowser_SOURCES ${_other_SOURCES} ${_moc_SOURCES})
+
+# --- rules ---
+
+ADD_LIBRARY(ObjBrowser ${ObjBrowser_SOURCES})
+TARGET_LINK_LIBRARIES(ObjBrowser ${_link_LIBRARIES})
INSTALL(TARGETS ObjBrowser EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
-SET(COMMON_HEADERS_H
- OB.h
- OB_Browser.h
-)
-INSTALL(FILES ${COMMON_HEADERS_H} DESTINATION ${SALOME_INSTALL_HEADERS})
-QT4_INSTALL_TS_RESOURCES("${GUITS_SOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
+INSTALL(FILES ${ObjBrowser_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
+QT4_INSTALL_TS_RESOURCES("${_ts_RESOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
#
+# --- options ---
+
+# additional include directories
INCLUDE_DIRECTORIES(
- ${PTHREAD_INCLUDE_DIRS}
${KERNEL_INCLUDE_DIRS}
)
-SET(COMMON_LIBS ${OPENGL_LIBRARIES} ${KERNEL_SALOMELocalTrace})
+# libraries to link to
+SET(_link_LIBRARIES ${OPENGL_LIBRARIES} ${KERNEL_SALOMELocalTrace})
-ADD_LIBRARY(OpenGLUtils OpenGLUtils_FrameBuffer.cxx)
-TARGET_LINK_LIBRARIES(OpenGLUtils ${COMMON_LIBS})
-INSTALL(TARGETS OpenGLUtils EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
+# --- headers ---
-SET(COMMON_HEADERS_H
- OpenGLUtils.h
- OpenGLUtils_FrameBuffer.h
-)
+SET(OpenGLUtils_HEADERS OpenGLUtils.h OpenGLUtils_FrameBuffer.h)
+
+# --- sources ---
+
+SET(OpenGLUtils_SOURCES OpenGLUtils_FrameBuffer.cxx)
+
+# --- rules ---
+
+ADD_LIBRARY(OpenGLUtils ${OpenGLUtils_SOURCES})
+TARGET_LINK_LIBRARIES(OpenGLUtils ${_link_LIBRARIES})
+INSTALL(TARGETS OpenGLUtils EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
-INSTALL(FILES ${COMMON_HEADERS_H} DESTINATION ${SALOME_INSTALL_HEADERS})
+INSTALL(FILES ${OpenGLUtils_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
INCLUDE(UseQt4Ext)
+# --- options ---
+
+# additional include directories
INCLUDE_DIRECTORIES(
- ${QWT_INCLUDE_DIR}
${QT_INCLUDES}
- ${Boost_INCLUDE_DIRS}
- ${PYTHON_INCLUDE_DIRS}
- ${KERNEL_INCLUDE_DIRS}
- ${CMAKE_CURRENT_SOURCE_DIR}/../Qtx
- ${CMAKE_CURRENT_SOURCE_DIR}/../SUIT
+ ${QWT_INCLUDE_DIR}
+ ${PROJECT_SOURCE_DIR}/src/Qtx
+ ${PROJECT_SOURCE_DIR}/src/SUIT
)
+IF(SALOME_USE_PYCONSOLE)
+ INCLUDE_DIRECTORIES(${PYTHON_INCLUDE_DIRS})
+ENDIF()
+# additional preprocessor / compiler flags
ADD_DEFINITIONS(${QT_DEFINITIONS} ${QWT_DEFINITIONS} ${PYTHON_DEFINITIONS})
+IF(SALOME_USE_PYCONSOLE)
+ ADD_DEFINITIONS(${PYTHON_DEFINITIONS})
+ENDIF()
-SET(COMMON_LIBS ${QWT_LIBRARY} ${QT_LIBRARIES} ${PYTHON_LIBRARIES} suit)
+# libraries to link to
+SET(_link_LIBRARIES ${QT_LIBRARIES} ${QWT_LIBRARY} qtx suit)
+IF(SALOME_USE_PYCONSOLE)
+ LIST(APPEND _link_LIBRARIES ${PYTHON_LIBRARIES})
+ENDIF()
-SET(GUI_HEADERS
+# --- headers ---
+
+# header files / to be processed by moc
+SET(_moc_HEADERS
+ Plot2d_Algorithm.h
Plot2d_FitDataDlg.h
+ Plot2d_NormalizeAlgorithm.h
+ Plot2d_SetupCurveDlg.h
+ Plot2d_SetupCurveScaleDlg.h
Plot2d_SetupViewDlg.h
+ Plot2d_ToolTip.h
Plot2d_ViewFrame.h
Plot2d_ViewManager.h
Plot2d_ViewModel.h
Plot2d_ViewWindow.h
- Plot2d_SetupCurveDlg.h
- Plot2d_Algorithm.h
- Plot2d_NormalizeAlgorithm.h
- Plot2d_SetupCurveScaleDlg.h
- Plot2d_ToolTip.h
)
+IF(SALOME_USE_PYCONSOLE)
+ LIST(APPEND _moc_HEADERS
+ Plot2d_AnalyticalCurveDlg.h
+ )
+ENDIF()
-SET(Plot2d_SOURCES
- Plot2d.cxx
- Plot2d_PlotItems.cxx
- Plot2d_Object.cxx
- Plot2d_Curve.cxx
- Plot2d_Histogram.cxx
- Plot2d_FitDataDlg.cxx
- Plot2d_Prs.cxx
- Plot2d_SetupViewDlg.cxx
- Plot2d_ViewFrame.cxx
- Plot2d_ViewManager.cxx
- Plot2d_ViewModel.cxx
- Plot2d_ViewWindow.cxx
- Plot2d_Algorithm.cxx
- Plot2d_NormalizeAlgorithm.cxx
- Plot2d_SetupCurveDlg.cxx
- Plot2d_SetupCurveScaleDlg.cxx
- Plot2d_ToolTip.cxx
+# header files / no moc processing
+SET(_other_HEADERS
+ Plot2d.h
+ Plot2d_Curve.h
+ Plot2d_Histogram.h
+ Plot2d_Object.h
+ Plot2d_PlotItems.h
+ Plot2d_Prs.h
)
+IF(SALOME_USE_PYCONSOLE)
+ LIST(APPEND _other_HEADERS
+ Plot2d_AnalyticalCurve.h
+ Plot2d_AnalyticalParser.h
+ )
+ENDIF()
+
+# header files / to install
+SET(Plot2d_HEADERS ${_moc_HEADERS} ${_other_HEADERS})
+
+# --- resources ---
-SET(GUITS_SOURCES
+# resource files / to be processed by lrelease
+SET(_ts_RESOURCES
resources/Plot2d_images.ts
resources/Plot2d_msg_en.ts
resources/Plot2d_msg_fr.ts
resources/Plot2d_msg_ja.ts
)
-# header files
-SET(COMMON_HEADERS_H
- Plot2d.h
- Plot2d_PlotItems.h
- Plot2d_Object.h
- Plot2d_Curve.h
- Plot2d_Histogram.h
- Plot2d_FitDataDlg.h
- Plot2d_Prs.h
- Plot2d_SetupViewDlg.h
- Plot2d_ViewFrame.h
- Plot2d_ViewManager.h
- Plot2d_ViewModel.h
- Plot2d_ViewWindow.h
- Plot2d_Algorithm.h
- Plot2d_NormalizeAlgorithm.h
- Plot2d_SetupCurveDlg.h
- Plot2d_ToolTip.h
- Plot2d_SetupCurveScaleDlg.h
+# resource files / static
+SET(_other_RESOURCES
+ resources/plot2d_analytical_curve.png
+ resources/plot2d_camera_dump.png
+ resources/plot2d_clone.png
+ resources/plot2d_fitall.png
+ resources/plot2d_fitarea.png
+ resources/plot2d_glpan.png
+ resources/plot2d_legend.png
+ resources/plot2d_linear.png
+ resources/plot2d_linear_y.png
+ resources/plot2d_lines.png
+ resources/plot2d_lmax_normalization.png
+ resources/plot2d_lmin_normalization.png
+ resources/plot2d_log.png
+ resources/plot2d_log_y.png
+ resources/plot2d_pan.png
+ resources/plot2d_points.png
+ resources/plot2d_print.png
+ resources/plot2d_rmax_normalization.png
+ resources/plot2d_rmin_normalization.png
+ resources/plot2d_settings.png
+ resources/plot2d_splines.png
+ resources/plot2d_zoom.png
)
+# --- sources ---
+
+# sources / moc wrappings
+QT4_WRAP_CPP(_moc_SOURCES ${_moc_HEADERS})
+
+# sources / static
+SET(_other_SOURCES
+ Plot2d.cxx
+ Plot2d_Algorithm.cxx
+ Plot2d_Curve.cxx
+ Plot2d_FitDataDlg.cxx
+ Plot2d_Histogram.cxx
+ Plot2d_NormalizeAlgorithm.cxx
+ Plot2d_Object.cxx
+ Plot2d_PlotItems.cxx
+ Plot2d_Prs.cxx
+ Plot2d_SetupCurveDlg.cxx
+ Plot2d_SetupCurveScaleDlg.cxx
+ Plot2d_SetupViewDlg.cxx
+ Plot2d_ToolTip.cxx
+ Plot2d_ViewFrame.cxx
+ Plot2d_ViewManager.cxx
+ Plot2d_ViewModel.cxx
+ Plot2d_ViewWindow.cxx
+)
IF(SALOME_USE_PYCONSOLE)
- SET(COMMON_HEADERS_H
- ${COMMON_HEADERS_H}
- Plot2d_AnalyticalCurve.h
- Plot2d_AnalyticalCurveDlg.h
- Plot2d_AnalyticalParser.h
- )
- SET(Plot2d_SOURCES
- ${Plot2d_SOURCES}
- Plot2d_AnalyticalCurve.cxx
- Plot2d_AnalyticalCurveDlg.cxx
- Plot2d_AnalyticalParser.cxx
+ LIST(APPEND _other_SOURCES
+ Plot2d_AnalyticalCurve.cxx
+ Plot2d_AnalyticalCurveDlg.cxx
+ Plot2d_AnalyticalParser.cxx
)
- SET(GUI_HEADERS
- ${GUI_HEADERS}
- Plot2d_AnalyticalCurveDlg.h
- )
-ENDIF(SALOME_USE_PYCONSOLE)
+ENDIF()
+
+# sources / to compile
+SET(Plot2d_SOURCES ${_other_SOURCES} ${_moc_SOURCES})
-QT4_WRAP_CPP(GUI_HEADERS_MOC ${GUI_HEADERS})
+# --- rules ---
-ADD_LIBRARY(Plot2d ${Plot2d_SOURCES} ${GUI_HEADERS_MOC})
-TARGET_LINK_LIBRARIES(Plot2d ${COMMON_LIBS})
+ADD_LIBRARY(Plot2d ${Plot2d_SOURCES})
+TARGET_LINK_LIBRARIES(Plot2d ${_link_LIBRARIES})
INSTALL(TARGETS Plot2d EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
-INSTALL(FILES ${COMMON_HEADERS_H} DESTINATION ${SALOME_INSTALL_HEADERS})
-QT4_INSTALL_TS_RESOURCES("${GUITS_SOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
+INSTALL(FILES ${Plot2d_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
+QT4_INSTALL_TS_RESOURCES("${_ts_RESOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
-FILE(GLOB GUIPNG_DATA "${CMAKE_CURRENT_SOURCE_DIR}/resources/*.png")
-INSTALL(FILES ${GUIPNG_DATA} DESTINATION ${SALOME_GUI_INSTALL_RES_DATA})
+INSTALL(FILES ${_other_RESOURCES} DESTINATION ${SALOME_GUI_INSTALL_RES_DATA})
ADD_LIBRARY(SalomePrs SALOME_Prs.cxx)
INSTALL(TARGETS SalomePrs EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
-
INSTALL(FILES SALOME_Prs.h DESTINATION ${SALOME_INSTALL_HEADERS})
-
INCLUDE(UseQt4Ext)
+# --- options ---
+
+# additional include directories
INCLUDE_DIRECTORIES(
${QT_INCLUDES}
- ${PTHREAD_INCLUDE_DIRS}
${PYTHON_INCLUDE_DIRS}
- ${KERNEL_INCLUDE_DIRS}
- ${CMAKE_CURRENT_SOURCE_DIR}/../Qtx
- ${CMAKE_CURRENT_SOURCE_DIR}/../SUIT
- ${CMAKE_CURRENT_SOURCE_DIR}/../PyInterp
- ${CMAKE_CURRENT_SOURCE_DIR}/../Event
+ ${PROJECT_SOURCE_DIR}/src/Qtx
+ ${PROJECT_SOURCE_DIR}/src/SUIT
+ ${PROJECT_SOURCE_DIR}/src/Event
+ ${PROJECT_SOURCE_DIR}/src/PyInterp
)
-SET(COMMON_LIBS ${PYTHON_LIBRARIES} ${QT_LIBRARIES} ${SALOMELocalTrace} qtx suit PyInterp Event)
+# additional preprocessor / compiler flags
+ADD_DEFINITIONS(${QT_DEFINITIONS} ${PYTHON_DEFINITIONS})
+
+# libraries to link to
+SET(_link_LIBRARIES ${QT_LIBRARIES} ${PYTHON_LIBRARIES} qtx suit PyInterp Event)
-SET(GUI_HEADERS
+# --- headers ---
+
+# header files / to be processed by moc
+SET(_moc_HEADERS
+ PyConsole_Console.h
PyConsole_Editor.h
PyConsole_EnhEditor.h
- PyConsole_Console.h
)
-QT4_WRAP_CPP(GUI_HEADERS_MOC ${GUI_HEADERS})
-SET(PyConsole_SOURCES
+# header files / no moc processing
+SET(_other_HEADERS
+ PyConsole.h
+ PyConsole_EnhInterp.h
+ PyConsole_Event.h
+ PyConsole_Interp.h
+ PyConsole_Request.h
+)
+
+# header files / to install
+SET(PyConsole_HEADERS ${_moc_HEADERS} ${_other_HEADERS})
+
+# --- resources ---
+
+# resource files / to be processed by lrelease
+SET(_ts_RESOURCES
+ resources/PyConsole_msg_en.ts
+ resources/PyConsole_msg_fr.ts
+ resources/PyConsole_msg_ja.ts
+)
+
+# --- sources ---
+
+# sources / moc wrappings
+QT4_WRAP_CPP(_moc_SOURCES ${_moc_HEADERS})
+
+# sources / static
+SET(_other_SOURCES
PyConsole_Console.cxx
PyConsole_Editor.cxx
PyConsole_EnhEditor.cxx
- PyConsole_Interp.cxx
PyConsole_EnhInterp.cxx
PyConsole_Event.cxx
+ PyConsole_Interp.cxx
PyConsole_Request.cxx
)
-SET(GUITS_SOURCES
- resources/PyConsole_msg_en.ts
- resources/PyConsole_msg_fr.ts
- resources/PyConsole_msg_ja.ts
-)
+# sources / to compile
+SET(PyConsole_SOURCES ${_other_SOURCES} ${_moc_SOURCES})
-ADD_DEFINITIONS(${QT_DEFINITIONS} ${PYTHON_DEFINITIONS})
+# --- rules ---
-ADD_LIBRARY(PyConsole ${PyConsole_SOURCES} ${GUI_HEADERS_MOC})
-TARGET_LINK_LIBRARIES(PyConsole ${COMMON_LIBS})
+ADD_LIBRARY(PyConsole ${PyConsole_SOURCES})
+TARGET_LINK_LIBRARIES(PyConsole ${_link_LIBRARIES})
INSTALL(TARGETS PyConsole EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
-SET(COMMON_HEADERS_H
- PyConsole.h
- PyConsole_Console.h
- PyConsole_Editor.h
- PyConsole_EnhEditor.h
- PyConsole_Interp.h
- PyConsole_EnhInterp.h
- PyConsole_Event.h
- PyConsole_Request.h
-)
-INSTALL(FILES ${COMMON_HEADERS_H} DESTINATION ${SALOME_INSTALL_HEADERS})
-QT4_INSTALL_TS_RESOURCES("${GUITS_SOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
+INSTALL(FILES ${PyConsole_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
+QT4_INSTALL_TS_RESOURCES("${_ts_RESOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
INCLUDE(UseQt4Ext)
+# --- options ---
+
+# additional include directories
INCLUDE_DIRECTORIES(
${QT_INCLUDES}
${PYTHON_INCLUDE_DIRS}
- ${KERNEL_INCLUDE_DIRS}
- ${CMAKE_CURRENT_SOURCE_DIR}/../Event
+ ${PROJECT_SOURCE_DIR}/src/Event
)
-SET(COMMON_LIBS ${PYTHON_LIBRARIES} ${QT_LIBRARIES} Event)
+# additional preprocessor / compiler flags
+ADD_DEFINITIONS(${QT_DEFINITIONS} ${PYTHON_DEFINITIONS})
-SET(GUI_HEADERS PyInterp_Watcher.h)
-QT4_WRAP_CPP(GUI_HEADERS_MOC ${GUI_HEADERS})
+# libraries to link to
+SET(_link_LIBRARIES ${QT_LIBRARIES} ${PYTHON_LIBRARIES} Event)
-SET(PyInterp_SOURCES
- PyInterp_Interp.cxx
+# --- headers ---
+
+# header files / to be processed by moc / internal
+# TODO: check for MSVS project
+SET(_moc_internal_HEADERS PyInterp_Watcher.h)
+
+# header files / no moc processing
+SET(_other_HEADERS
+ PyInterp.h
+ PyInterp_Dispatcher.h
+ PyInterp_Event.h
+ PyInterp_Interp.h
+ PyInterp_Request.h
+)
+
+# header files / to install
+SET(PyInterp_HEADERS ${_other_HEADERS})
+
+# --- sources ---
+
+# sources / moc wrappings
+QT4_WRAP_CPP(_moc_SOURCES ${_moc_internal_HEADERS})
+
+# sources / static
+SET(_other_SOURCES
PyInterp_Dispatcher.cxx
PyInterp_Event.cxx
+ PyInterp_Interp.cxx
PyInterp_Request.cxx
)
-ADD_DEFINITIONS(${QT_DEFINITIONS} ${PYTHON_DEFINITIONS})
+# sources / to compile
+SET(PyInterp_SOURCES ${_other_SOURCES} ${_moc_SOURCES})
+
+# --- rules ---
-ADD_LIBRARY(PyInterp ${PyInterp_SOURCES} ${GUI_HEADERS_MOC})
-TARGET_LINK_LIBRARIES(PyInterp ${COMMON_LIBS})
+ADD_LIBRARY(PyInterp ${PyInterp_SOURCES})
+TARGET_LINK_LIBRARIES(PyInterp ${_link_LIBRARIES})
INSTALL(TARGETS PyInterp EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
-SET(COMMON_HEADERS_H
- PyInterp.h
- PyInterp_Interp.h
- PyInterp_Dispatcher.h
- PyInterp_Event.h
- PyInterp_Request.h
-)
-INSTALL(FILES ${COMMON_HEADERS_H} DESTINATION ${SALOME_INSTALL_HEADERS})
+INSTALL(FILES ${PyInterp_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
INCLUDE(UseQt4Ext)
+# --- options ---
+
+# additional include directories
INCLUDE_DIRECTORIES(
${CAS_INCLUDE_DIRS}
- ${PTHREAD_INCLUDE_DIRS}
${QT_INCLUDES}
- ${KERNEL_INCLUDE_DIRS}
- ${CMAKE_CURRENT_SOURCE_DIR}/../Qtx
- ${CMAKE_CURRENT_SOURCE_DIR}/../DDS
+ ${PROJECT_SOURCE_DIR}/src/Qtx
+ ${PROJECT_SOURCE_DIR}/src/DDS
)
-SET(COMMON_LIBS ${QT_LIBRARIES} ${CAS_KERNEL} DDS qtx)
+# additional preprocessor / compiler flags
+ADD_DEFINITIONS(${QT_DEFINITIONS} ${CAS_DEFINITIONS})
+
+# libraries to link to
+SET(_link_LIBRARIES ${QT_LIBRARIES} ${CAS_KERNEL} qtx DDS)
-SET(GUI_HEADERS
+# --- headers ---
+
+# header files / to be processed by moc
+SET(_moc_HEADERS
QDS_CheckBox.h
QDS_ComboBox.h
QDS_Datum.h
QDS_LineEdit.h
+ QDS_RadioBox.h
QDS_SpinBox.h
QDS_SpinBoxDbl.h
QDS_TextEdit.h
- QDS_RadioBox.h
)
-QT4_WRAP_CPP(GUI_HEADERS_MOC ${GUI_HEADERS})
-SET(QDS_SOURCES
+# obsolete files: not migrated to Qt4
+# _moc_HEADERS << QDS_Table.h
+# TODO: migrate or remove?
+
+# header files / no moc processing
+SET(_other_HEADERS
+ QDS.h
+ QDS_Validator.h
+)
+
+# header files / to install
+SET(QDS_HEADERS ${_moc_HEADERS} ${_other_HEADERS})
+
+# --- resources ---
+
+# resource files / to be processed by lrelease
+SET(_ts_RESOURCES
+ resources/QDS_msg_en.ts
+ resources/QDS_msg_fr.ts
+ resources/QDS_msg_ja.ts
+)
+
+# --- sources ---
+
+# sources / moc wrappings
+QT4_WRAP_CPP(_moc_SOURCES ${_moc_HEADERS})
+
+# sources / static
+SET(_other_SOURCES
QDS.cxx
QDS_CheckBox.cxx
QDS_ComboBox.cxx
QDS_Datum.cxx
QDS_LineEdit.cxx
+ QDS_RadioBox.cxx
QDS_SpinBox.cxx
QDS_SpinBoxDbl.cxx
QDS_TextEdit.cxx
QDS_Validator.cxx
- QDS_RadioBox.cxx
-)
-
-SET(GUITS_SOURCES
- resources/QDS_msg_en.ts
- resources/QDS_msg_fr.ts
- resources/QDS_msg_ja.ts
)
-ADD_DEFINITIONS(${QT_DEFINITIONS} ${CAS_DEFINITIONS})
+# obsolete files: not migrated to Qt4
+# _other_SOURCES << QDS_Table.cxx
+# TODO: migrate or remove?
-ADD_LIBRARY(QDS ${QDS_SOURCES} ${GUI_HEADERS_MOC})
-TARGET_LINK_LIBRARIES(QDS ${COMMON_LIBS})
-INSTALL(TARGETS QDS EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
+# sources / to compile
+SET(QDS_SOURCES ${_other_SOURCES} ${_moc_SOURCES})
-SET(COMMON_HEADERS_H
- QDS.h
- QDS_CheckBox.h
- QDS_ComboBox.h
- QDS_Datum.h
- QDS_LineEdit.h
- QDS_SpinBox.h
- QDS_SpinBoxDbl.h
- QDS_TextEdit.h
- QDS_Validator.h
- QDS_RadioBox.h
-)
+# --- rules ---
-INSTALL(FILES ${COMMON_HEADERS_H} DESTINATION ${SALOME_INSTALL_HEADERS})
-QT4_INSTALL_TS_RESOURCES("${GUITS_SOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
+ADD_LIBRARY(QDS ${QDS_SOURCES})
+TARGET_LINK_LIBRARIES(QDS ${_link_LIBRARIES})
+INSTALL(TARGETS QDS EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
+INSTALL(FILES ${QDS_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
+QT4_INSTALL_TS_RESOURCES("${_ts_RESOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
INCLUDE(UseQt4Ext)
-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
QtxGroupBox.h
QtxIntSpinBox.h
QtxListAction.h
- QtxTreeView.h
QtxLogoMgr.h
+ QtxMRUAction.h
QtxMainWindow.h
QtxMenu.h
QtxMultiAction.h
- QtxMRUAction.h
QtxPagePrefMgr.h
QtxPathDialog.h
QtxPathEdit.h
QtxSplash.h
QtxToolBar.h
QtxToolTip.h
+ QtxTreeView.h
QtxValidator.h
+ QtxWebBrowser.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})
+# 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
+ 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)
-SET(qtx_SOURCES
+# --- sources ---
+
+# sources / rcc wrappings
+QT4_ADD_RESOURCES(_rcc_SOURCES ${_rcc_RESOURCES})
+
+# sources / moc wrappings
+QT4_WRAP_CPP(_moc_SOURCES ${_moc_HEADERS})
+
+# sources / static
+SET(_other_SOURCES
Qtx.cxx
QtxAction.cxx
QtxActionGroup.cxx
QtxGroupBox.cxx
QtxIntSpinBox.cxx
QtxListAction.cxx
- QtxTreeView.cxx
QtxLogoMgr.cxx
+ QtxMRUAction.cxx
QtxMainWindow.cxx
QtxMenu.cxx
QtxMultiAction.cxx
- QtxMRUAction.cxx
QtxPagePrefMgr.cxx
QtxPathDialog.cxx
QtxPathEdit.cxx
QtxToolBar.cxx
QtxToolTip.cxx
QtxTranslator.cxx
+ QtxTreeView.cxx
QtxValidator.cxx
+ QtxWebBrowser.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})
+# 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})
+QT4_INSTALL_TS_RESOURCES("${_ts_RESOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
\ No newline at end of file
+++ /dev/null
-# Copyright (C) 2012-2013 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.
-#
-# 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
-#
-
-INCLUDE(UseQt4Ext)
-
-INCLUDE_DIRECTORIES(
- ${CAS_INCLUDE_DIRS}
- ${QT_INCLUDES}
- ${Boost_INCLUDE_DIRS}
- ${PYTHON_INCLUDE_DIRS}
- ${KERNEL_INCLUDE_DIRS}
- ${CMAKE_CURRENT_SOURCE_DIR}/../Qtx
- ${CMAKE_CURRENT_SOURCE_DIR}/../SUIT
-)
-
-SET(COMMON_LIBS ${QT_LIBRARIES} suit)
-
-SET(GUI_HEADERS
- QxGraph_Canvas.h
- QxGraph_CanvasView.h
- QxGraph_ViewWindow.h
- QxGraph_ViewManager.h
- QxGraph_ViewModel.h
-)
-QT4_WRAP_CPP(GUI_HEADERS_MOC ${GUI_HEADERS})
-
-SET(QxGraph_SOURCES
- QxGraph_Prs.cxx
- QxGraph_Canvas.cxx
- QxGraph_CanvasView.cxx
- QxGraph_ViewWindow.cxx
- QxGraph_ViewManager.cxx
- QxGraph_ViewModel.cxx
-)
-
-SET(GUITS_SOURCES
- resources/QxGraph_images.ts
- resources/QxGraph_msg_en.ts
- resources/QxGraph_msg_fr.ts
- resources/QxGraph_msg_ja.ts
-)
-
-ADD_DEFINITIONS("${QT_DEFINITIONS} ${CAS_DEFINITIONS} ${BOOST_DEFINITIONS} ${PYTHON_DEFINITIONS}")
-
-ADD_LIBRARY(QxGraph ${QxGraph_SOURCES} ${GUI_HEADERS_MOC})
-TARGET_LINK_LIBRARIES(QxGraph ${COMMON_LIBS})
-INSTALL(TARGETS QxGraph EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
-
-SET(COMMON_HEADERS_H
- QxGraph_ActiveItem.h
- QxGraph_Prs.h
- QxGraph_Canvas.h
- QxGraph_CanvasView.h
- QxGraph_ViewWindow.h
- QxGraph_ViewManager.h
- QxGraph_ViewModel.h
- QxGraph_Def.h
- QxGraph.h
-)
-
-INSTALL(FILES ${COMMON_HEADERS_H} DESTINATION ${SALOME_INSTALL_HEADERS})
-QT4_INSTALL_TS_RESOURCES("${GUITS_SOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
-
-FILE(GLOB GUIPNG_DATA "${CMAKE_CURRENT_SOURCE_DIR}/resources/*.png")
-INSTALL(FILES ${GUIPNG_DATA} DESTINATION ${SALOME_GUI_INSTALL_RES_DATA})
+++ /dev/null
-// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-//
-// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
-// 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.
-//
-// 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
-//
-
-// SALOME QxGraph : build Supervisor viewer into desktop
-//
-#ifdef WNT
-#if defined QXGRAPH_EXPORTS || defined QxGraph_EXPORTS
-#define QXGRAPH_EXPORT __declspec(dllexport)
-#else
-#define QXGRAPH_EXPORT __declspec(dllimport)
-#endif
-#else
-#define QXGRAPH_EXPORT
-#endif
-
-#ifdef WNT
-#pragma warning ( disable:4251 )
-#endif
+++ /dev/null
-// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-//
-// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
-// 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.
-//
-// 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
-//
-
-#ifndef QXGRAPH_ACTIVEITEM_H
-#define QXGRAPH_ACTIVEITEM_H
-
-#include "QxGraph.h"
-
-#include <qpoint.h>
-#include <qwmatrix.h>
-#include <qevent.h>
-
-class QXGRAPH_EXPORT QxGraph_ActiveItem
-{
- public:
- QxGraph_ActiveItem() {}
- ~QxGraph_ActiveItem() {}
-
- virtual bool isMoveable() = 0;
- virtual void beforeMoving() = 0;
- virtual void afterMoving() = 0;
-
- virtual bool isResizable(QPoint thePoint, int& theCursorType) { return false; }
- virtual bool isResizing() { return false; }
- virtual void beforeResizing(int theCursorType) {}
- virtual void resize(QPoint thePoint) {}
- virtual void afterResizing() {}
-
- virtual void hilight(const QPoint& theMousePos, const bool toHilight = true) = 0;
- virtual void select(const QPoint& theMousePos, const bool toSelect = true) = 0;
- virtual void showPopup(QWidget* theParent, QMouseEvent* theEvent, const QPoint& theMousePos = QPoint()) = 0;
-
- virtual QString getToolTipText(const QPoint& theMousePos, QRect& theRect) const = 0;
-
- virtual bool arePartsOfOtherItem(QxGraph_ActiveItem* theSecondItem) { return false; }
-
- void setTMatrix(QWMatrix theMatrix) { myTMatrix = theMatrix; }
- QWMatrix getTMatrix() const { return myTMatrix; }
-
- private:
- QWMatrix myTMatrix; // canvas view's current transformation matrix
-};
-
-#endif
+++ /dev/null
-// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-//
-// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
-// 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.
-//
-// 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
-//
-
-// SALOME QxGraph : build Supervisor viewer into desktop
-//
-#include "QxGraph_Canvas.h"
-#include "QxGraph_Def.h"
-#include "QxGraph_Prs.h"
-
-#include <SUIT_ResourceMgr.h>
-
-#include <qobjectlist.h>
-#include <QxGraph_CanvasView.h>
-
-/*!
- Constructor
-*/
-QxGraph_Canvas::QxGraph_Canvas(SUIT_ResourceMgr* theMgr) :
- QCanvas()
-{
- printf("Construct QxGraph_Canvas\n");
-
- resize(GRAPH_WIDTH, GRAPH_HEIGHT);
- setDoubleBuffering(true);
-
- QColor aColor = theMgr->colorValue( "QxGraph", "Background", DEF_BACK_COLOR );
- setBackgroundColor(aColor);
-}
-
-/*!
- Destructor
-*/
-QxGraph_Canvas::~QxGraph_Canvas()
-{
- /*QObjectList* aNodeList = queryList("QObject");
- QObjectListIt aIt(*aNodeList);
- QObject* anObj;
- while ( (anObj = aIt.current()) != 0 ) {
- ++aIt;
- aNodeList->removeRef(anObj);
- delete anObj;
- }
- delete aNodeList;*/
-
- myPrsList.setAutoDelete(true);
- myPrsList.clear();
-}
-
-/*!
- Add view
-*/
-void QxGraph_Canvas::addView(QCanvasView* theView)
-{
- myViews.append( theView );
- QCanvas::addView(theView);
- theView->setPaletteBackgroundColor(backgroundColor().light(120));
-}
-
-/*!
- Remove view
-*/
-void QxGraph_Canvas::removeView( QCanvasView* theView )
-{
- myViews.remove( theView );
-}
-
-/*!
- Remove item
-*/
-void QxGraph_Canvas::removeItem( QCanvasItem* theItem )
-{
- QValueList< QCanvasView* >::iterator anIter;
- for ( anIter = myViews.begin(); anIter != myViews.end(); ++anIter )
- {
- QxGraph_CanvasView* aView = dynamic_cast<QxGraph_CanvasView*>( *anIter );
- if ( aView )
- aView->itemRemoved( theItem );
- }
-
- QCanvas::removeItem( theItem );
-}
-
-/*!
- Get Prs object with index theIndex
-*/
-QxGraph_Prs* QxGraph_Canvas::getPrs(int theIndex)
-{
- QxGraph_Prs* aRetPrs = 0;
- if ( theIndex >= 0 && theIndex < myPrsList.count() )
- aRetPrs = myPrsList.at(theIndex);
- return aRetPrs;
-}
+++ /dev/null
-// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-//
-// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
-// 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.
-//
-// 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
-//
-
-// SALOME QxGraph : build Supervisor viewer into desktop
-//
-#ifndef QXGRAPH_CANVAS_H
-#define QXGRAPH_CANVAS_H
-
-#include "QxGraph.h"
-
-#include <qcanvas.h>
-#include <qptrlist.h>
-
-class SUIT_ResourceMgr;
-class QxGraph_Prs;
-
-class QXGRAPH_EXPORT QxGraph_Canvas : public QCanvas {
- Q_OBJECT
-
- public:
- QxGraph_Canvas(SUIT_ResourceMgr*);
- virtual ~QxGraph_Canvas();
-
- virtual void addView(QCanvasView* theView);
- virtual void removeView(QCanvasView*);
-
- QPtrList<QxGraph_Prs> getPrsList() const { return myPrsList; }
- QxGraph_Prs* getPrs(int theIndex = 0);
- void addPrs(QxGraph_Prs* thePrs) { myPrsList.append(thePrs); }
-
- virtual void removeItem( QCanvasItem* );
-
-private:
-
- QValueList< QCanvasView* > myViews;
- QPtrList<QxGraph_Prs> myPrsList;
-
-};
-
-#endif
+++ /dev/null
-// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-//
-// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
-// 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.
-//
-// 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
-//
-
-// SALOME QxGraph : build Supervisor viewer into desktop
-//
-#include "QxGraph_CanvasView.h"
-#include "QxGraph_Canvas.h"
-#include "QxGraph_ViewWindow.h"
-#include "QxGraph_ActiveItem.h"
-#include "QxGraph_Def.h"
-
-#include <qwmatrix.h>
-#include <math.h>
-
-const char* imageZoomCursor[] = {
-"32 32 3 1",
-". c None",
-"a c #000000",
-"# c #ffffff",
-"................................",
-"................................",
-".#######........................",
-"..aaaaaaa.......................",
-"................................",
-".............#####..............",
-"...........##.aaaa##............",
-"..........#.aa.....a#...........",
-".........#.a.........#..........",
-".........#a..........#a.........",
-"........#.a...........#.........",
-"........#a............#a........",
-"........#a............#a........",
-"........#a............#a........",
-"........#a............#a........",
-".........#...........#.a........",
-".........#a..........#a.........",
-".........##.........#.a.........",
-"........#####.....##.a..........",
-".......###aaa#####.aa...........",
-"......###aa...aaaaa.......#.....",
-".....###aa................#a....",
-"....###aa.................#a....",
-"...###aa...............#######..",
-"....#aa.................aa#aaaa.",
-".....a....................#a....",
-"..........................#a....",
-"...........................a....",
-"................................",
-"................................",
-"................................",
-"................................"};
-
-const char* imageCrossCursor[] = {
- "32 32 3 1",
- ". c None",
- "a c #000000",
- "# c #ffffff",
- "................................",
- "................................",
- "................................",
- "................................",
- "................................",
- "................................",
- "................................",
- "...............#................",
- "...............#a...............",
- "...............#a...............",
- "...............#a...............",
- "...............#a...............",
- "...............#a...............",
- "...............#a...............",
- "...............#a...............",
- ".......#################........",
- "........aaaaaaa#aaaaaaaaa.......",
- "...............#a...............",
- "...............#a...............",
- "...............#a...............",
- "...............#a...............",
- "...............#a...............",
- "...............#a...............",
- "...............#a...............",
- "................a...............",
- "................................",
- "................................",
- "................................",
- "................................",
- "................................",
- "................................",
- "................................"};
-
-/*!
- Constructor
-*/
-QxGraph_CanvasView::QxGraph_CanvasView(QxGraph_Canvas* theCanvas, QxGraph_ViewWindow* theViewWindow) :
- QCanvasView(theCanvas, theViewWindow, 0, Qt::WRepaintNoErase),
- myCurrentItem(0),
- myHilightedItem(0),
- mySelectedItem(0),
- myMovingDone(false),
- myCenter(0,0)
-{
- printf("Construct QxGraph_CanvasView\n");
- setName("QxGraph_CanvasView");
-
- myOperation = NOTHING;
- myCursor = cursor();
- mySelectedRect = 0;
-
- myTimer = new QTimer(this);
- connect(myTimer, SIGNAL(timeout()), this, SLOT(onTimeout()));
-
- viewport()->setMouseTracking(true);
-}
-
-/*!
- Destructor
-*/
-QxGraph_CanvasView::~QxGraph_CanvasView()
-{
-}
-
-void QxGraph_CanvasView::contentsMousePressEvent(QMouseEvent* theEvent)
-{
- myPoint = inverseWorldMatrix().map(theEvent->pos());
- myGlobalPoint = theEvent->globalPos();
- myCurrentItem = 0;
-
- if ( theEvent->button() == Qt::MidButton && theEvent->state() == Qt::ControlButton
- ||
- myOperation == PANVIEW )
- { // Panning
- if ( myOperation != PANVIEW ) {
- myOperation = PANVIEW;
- myCursor = cursor(); // save old cursor
- QCursor panCursor (Qt::SizeAllCursor);
- setCursor(panCursor);
- }
- return;
- }
-
- if ( myOperation == PANGLOBAL )
- { // Global panning
- return;
- }
-
- if ( myOperation == WINDOWFIT )
- { // Fit area
- return;
- }
-
- if ( theEvent->button() == Qt::LeftButton && theEvent->state() == Qt::ControlButton
- ||
- myOperation == ZOOMVIEW )
- { // Zoom
- if ( myOperation != ZOOMVIEW ) {
- myOperation = ZOOMVIEW;
- myCursor = cursor(); // save old cursor
- QPixmap zoomPixmap (imageZoomCursor);
- QCursor zoomCursor (zoomPixmap);
- setCursor(zoomCursor);
-
- // the center of the view before zooming
- int aXVCenter = viewport()->width()/2;
- int aYVCenter = viewport()->height()/2;
- myCenter = viewportToContents(QPoint(aXVCenter,aYVCenter));
- }
- return;
- }
-
- if ( theEvent->button() == Qt::LeftButton )
- {
- QCanvasItemList aList = canvas()->collisions(myPoint);
- // to move items on canvas view
- for (QCanvasItemList::Iterator it = aList.begin(); it != aList.end(); ++it) {
- QxGraph_ActiveItem* anActItem = dynamic_cast<QxGraph_ActiveItem*>( *it );
- int aCursorType;
- if ( anActItem && anActItem->isResizable(myPoint,aCursorType) )
- { // resize itself only active items if it is resizable
- anActItem->beforeResizing(aCursorType);
- myCurrentItem = *it;
- return;
- }
- else if ( anActItem && anActItem->isMoveable() )
- { // move itself only active items if it is moveable
- anActItem->beforeMoving();
- myCurrentItem = *it;
- return;
- }
- }
- }
-}
-
-void QxGraph_CanvasView::contentsMouseMoveEvent(QMouseEvent* theEvent)
-{
- QPoint aPoint = inverseWorldMatrix().map(theEvent->pos());
- QPoint aGlobalPoint = theEvent->globalPos();
-
- if (myTimer->isActive()) myTimer->stop();
-
- if ( myOperation == PANVIEW )
- { // Panning
- scrollBy(myGlobalPoint.x() - aGlobalPoint.x(),
- myGlobalPoint.y() - aGlobalPoint.y());
- myGlobalPoint = aGlobalPoint;
- myMovingDone = true;
- return;
- }
-
- if ( myOperation == WINDOWFIT )
- { // Fit within rectangle
- int aLX, aTY; //left x and top y
- if (myPoint.x() < aPoint.x()) aLX = myPoint.x();
- else aLX = aPoint.x();
- if (myPoint.y() < aPoint.y()) aTY = myPoint.y();
- else aTY = aPoint.y();
- QRect aRect(aLX, aTY, abs(myPoint.x()-aPoint.x()), abs(myPoint.y()-aPoint.y()));
- QCanvasRectangle* aRect1 = new QCanvasRectangle(aRect, canvas());
-
- //hide old selected rectangle
- if (mySelectedRect)
- mySelectedRect->hide();
- //draw new selected rectangle
- QPen pen(Qt::black,1,Qt::SolidLine);
- aRect1->setPen(pen);
- aRect1->setZ(1E+6);
- aRect1->show();
-
- mySelectedRect = aRect1;
- canvas()->update();
-
- return;
- }
-
- if ( myOperation == ZOOMVIEW )
- { // Zoom
- QCanvasItemList aList = canvas()->allItems();
- for (QCanvasItemList::Iterator it = aList.begin(); it != aList.end(); ++it)
- (*it)->hide();
-
- int aXContCenter = myCenter.x();
- int aYContCenter = myCenter.y();
-
- QWMatrix m = worldMatrix();
-
- double dx = aGlobalPoint.x() - myGlobalPoint.x();
- double s = 1. + fabs(dx)*( (m.m11() < 1) ? m.m11() : 1. )/70.;
- if (dx < 0) s = 1./s;
-
- int aXContCenterScaled = aXContCenter*s;
- int aYContCenterScaled = aYContCenter*s;
-
- m.scale(s, s);
- setWorldMatrix(m);
-
- center(aXContCenterScaled,aYContCenterScaled);
-
- myCenter.setX(aXContCenterScaled);
- myCenter.setY(aYContCenterScaled);
-
- // remember the canvas view's current transformation matrix in all canvas items
- aList = canvas()->allItems();
- for (QCanvasItemList::Iterator it = aList.begin(); it != aList.end(); ++it) {
- QxGraph_ActiveItem* anActItem = dynamic_cast<QxGraph_ActiveItem*>( *it );
- if ( anActItem ) anActItem->setTMatrix(m);
- (*it)->show();
- }
-
- myGlobalPoint = aGlobalPoint;
- myMovingDone = true;
-
- return;
- }
-
- if ( myCurrentItem )
- {
- QxGraph_ActiveItem* anActItem = dynamic_cast<QxGraph_ActiveItem*>( myCurrentItem );
- if ( anActItem && anActItem->isResizing() )
- { // to resize items on canvas view
- anActItem->resize(aPoint);
- myMovingDone = true;
- return;
- }
-
- // to move items on canvas view
- if ( myCurrentItem->x() && myCurrentItem->y() ) {
- double cx = myCurrentItem->x() - myPoint.x();
- double cy = myCurrentItem->y() - myPoint.y();
-
- if (aPoint.x()+cx < 0) aPoint.setX(-(int)cx);
- if (aPoint.y()+cy < 0) aPoint.setY(-(int)cy);
- }
- myCurrentItem->moveBy(aPoint.x() - myPoint.x(),
- aPoint.y() - myPoint.y());
- myMovingDone = true;
- myPoint = aPoint;
- canvas()->update();
-
- // scroll contents if mouse is outside
- QRect r(contentsX(), contentsY(), visibleWidth(), visibleHeight());
- if (!r.contains(theEvent->pos())) {
- int dx = 0, dy = 0;
- if (theEvent->pos().x() < r.left()) dx = theEvent->pos().x() - r.left();
- if (theEvent->pos().x() > r.right()) dx = theEvent->pos().x() - r.right();
- if (theEvent->pos().y() < r.top()) dy = theEvent->pos().y() - r.top();
- if (theEvent->pos().y() > r.bottom()) dy = theEvent->pos().y() - r.bottom();
- scrollBy(dx, dy);
- // start timer to scroll in silent mode
- myDX = dx; myDY = dy;
- myTimer->start(100);
- }
-
- return;
- }
- else
- {
- QCanvasItemList aList = canvas()->collisions(aPoint);
- // perform actions for active items
- bool isHilightPerformed = false;
-
- for (QCanvasItemList::Iterator it = aList.begin(); it != aList.end(); ++it) {
- QxGraph_ActiveItem* anActItem = dynamic_cast<QxGraph_ActiveItem*>( *it );
-
- if (!isHilightPerformed && anActItem) {
- // hilight
- anActItem->hilight(aPoint);
- if (anActItem != myHilightedItem) {
- if (myHilightedItem)
- myHilightedItem->hilight(aPoint, false);
- myHilightedItem = anActItem;
- }
- isHilightPerformed = true;
-
- // show tooltip
- QxGraph_ToolTip* aToolTip = new QxGraph_ToolTip(this);
- aToolTip->maybeTip(aPoint);
- }
-
- int aCursorType;
- if ( anActItem && anActItem->isResizable(aPoint,aCursorType) ) {
- // set resize cursor
- QCursor resizeCursor;
- switch (aCursorType)
- {
- case 1: //left
- case 3: //right
- resizeCursor = QCursor(Qt::SizeHorCursor);
- break;
- case 2: //top
- case 4: //bottom
- resizeCursor = QCursor(Qt::SizeVerCursor);
- break;
- case 5: //left-top
- case 7: //right-bottom
- resizeCursor = QCursor(Qt::SizeFDiagCursor);
- break;
- case 6: //right-top
- case 8: //left-bottom
- resizeCursor = QCursor(Qt::SizeBDiagCursor);
- break;
- default :
- resizeCursor = QCursor(Qt::ArrowCursor);
- break;
- }
- setCursor(resizeCursor);
- return;
- }
- else {
- // reset old cursor
- setCursor(QCursor(Qt::ArrowCursor));
- return;
- }
- }
-
- if (!isHilightPerformed && myHilightedItem) {
- myHilightedItem->hilight(aPoint, false);
- myHilightedItem = 0;
- QToolTip::hide(); //@ temporary solution
- }
-
- if ( cursor().shape() == Qt::SizeVerCursor || cursor().shape() == Qt::SizeHorCursor
- || cursor().shape() == Qt::SizeBDiagCursor || cursor().shape() == Qt::SizeFDiagCursor)
- setCursor(QCursor(Qt::ArrowCursor));
- }
-}
-
-/*!
- This method is called by QxGraph_Canvas when item is removed.
- QxGraph_CanvasView updates its own data accordingly
-*/
-void QxGraph_CanvasView::itemRemoved( QCanvasItem* theItem )
-{
- if ( myCurrentItem == theItem )
- myCurrentItem = 0;
-
- QxGraph_ActiveItem* anActiveItem = dynamic_cast<QxGraph_ActiveItem*>( theItem );
- if ( anActiveItem )
- {
- if ( myHilightedItem == anActiveItem )
- myHilightedItem = 0;
- if ( mySelectedItem == anActiveItem )
- mySelectedItem = 0;
- }
-}
-
-void QxGraph_CanvasView::setSelectedItem( QxGraph_ActiveItem* theItem )
-{
- mySelectedItem = theItem;
-}
-
-QxGraph_ActiveItem* QxGraph_CanvasView::getSelectedItem() const
-{
- return mySelectedItem;
-}
-
-void QxGraph_CanvasView::contentsMouseReleaseEvent(QMouseEvent* theEvent)
-{
- QPoint aPoint = inverseWorldMatrix().map(theEvent->pos());
-
- if (myTimer->isActive()) myTimer->stop();
-
- if (myCurrentItem)
- { // to move items on canvas view
- QxGraph_ActiveItem* anActItem = dynamic_cast<QxGraph_ActiveItem*>( myCurrentItem );
- if ( anActItem && anActItem->isResizing() )
- {
- anActItem->afterResizing();
- // reset old cursor
- setCursor(QCursor(Qt::ArrowCursor));
- }
- else if ( anActItem && anActItem->isMoveable() )
- anActItem->afterMoving();
- }
- myCurrentItem = 0;
-
- if ( myOperation == PANVIEW )
- { // Panning
- myOperation = NOTHING;
- viewport()->setMouseTracking(true);
- setCursor(myCursor);
-
- emit viewOperationDone();
- }
-
- if ( myOperation == PANGLOBAL )
- { // Global panning
- myOperation = NOTHING;
- center( theEvent->x(), theEvent->y() );
- setCursor(myCursor);
-
- emit viewOperationDone();
- }
-
- if ( myOperation == WINDOWFIT )
- { // Fit within rectangle
- myOperation = NOTHING;
-
- if (mySelectedRect) {
- mySelectedRect->hide();
- mySelectedRect = 0;
- //canvas()->update();
- }
-
- //myPoint is the start point for selecting rectangle now
- int aLX, aTY; //left x and top y
- if (myPoint.x() < aPoint.x()) aLX = myPoint.x();
- else aLX = aPoint.x();
- if (myPoint.y() < aPoint.y()) aTY = myPoint.y();
- else aTY = aPoint.y();
-
- //calculate width and height for new view and new zoom factor
- double aXzoom = ((double)visibleWidth())/((double)(abs(myPoint.x()-aPoint.x())));
- double aYzoom = ((double)visibleHeight())/((double)(abs(myPoint.y()-aPoint.y())));
- if (aXzoom > aYzoom) aXzoom = aYzoom;
-
- QWMatrix m;
- m.scale(aXzoom, aXzoom);
- setWorldMatrix(m);
-
- // remember the canvas view's current transformation matrix in all canvas items
- QCanvasItemList aList = canvas()->allItems();
- for (QCanvasItemList::Iterator it = aList.begin(); it != aList.end(); ++it) {
- QxGraph_ActiveItem* anActItem = dynamic_cast<QxGraph_ActiveItem*>( *it );
- if ( anActItem ) anActItem->setTMatrix(m);
- }
-
- setContentsPos((int)(aLX*aXzoom), (int)(aTY*aYzoom));
-
- canvas()->update();
-
- viewport()->setMouseTracking(true);
- setCursor(myCursor);
-
- emit viewOperationDone();
- }
-
- if ( myOperation == ZOOMVIEW )
- { // Zoom
- myOperation = NOTHING;
- viewport()->setMouseTracking(true);
- setCursor(myCursor);
-
- emit viewOperationDone();
- }
-
- if ( theEvent->button() == RightButton )
- {
- // Selection mechanism
- QCanvasItemList aList = canvas()->collisions(aPoint);
- bool isSelectionPerformed = false;
-
- for (QCanvasItemList::Iterator it = aList.begin(); it != aList.end(); ++it) {
- QxGraph_ActiveItem* anActItem = dynamic_cast<QxGraph_ActiveItem*>( *it );
- if (!isSelectionPerformed && anActItem)
- {
- anActItem->select(aPoint);
- if (anActItem != mySelectedItem)
- {
- if (mySelectedItem && isSelectedItemInCanvas() &&
- !mySelectedItem->arePartsOfOtherItem(anActItem)) mySelectedItem->select(aPoint, false);
- mySelectedItem = anActItem;
-
- // unhilight hilighted item if selection was performed
- if (myHilightedItem) {
- myHilightedItem->hilight(aPoint, false);
- myHilightedItem = 0;
- }
- }
- isSelectionPerformed = true;
- }
- }
-
- if (!isSelectionPerformed)
- {
- if ( mySelectedItem )
- {
- if ( isSelectedItemInCanvas() ) mySelectedItem->select(aPoint, false);
- mySelectedItem = 0;
- }
-
- // Background popup
- printf("Background popup\n");
- QContextMenuEvent aEvent( QContextMenuEvent::Mouse,
- theEvent->pos(), theEvent->globalPos(),
- theEvent->state() );
- if ( getViewWindow() )
- getViewWindow()->contextPopupEvent(&aEvent); // => emit contextMenuRequested( &aEvent );
- }
- else
- { // show context popup for the selected item
- mySelectedItem->showPopup(viewport(), theEvent, aPoint);
- }
- }
-
- if ( theEvent->button() == LeftButton && !myMovingDone )
- {
- // Selection mechanism
- QCanvasItemList aList = canvas()->collisions(aPoint);
-
- if ( aList.empty() && mySelectedItem )
- {
- if ( isSelectedItemInCanvas() ) mySelectedItem->select(aPoint, false);
- mySelectedItem = 0;
- }
- else
- {
- for (QCanvasItemList::Iterator it = aList.begin(); it != aList.end(); ++it) {
- QxGraph_ActiveItem* anActItem = dynamic_cast<QxGraph_ActiveItem*>( *it );
- if (anActItem)
- {
- anActItem->select(aPoint);
- if (anActItem != mySelectedItem)
- {
- if (mySelectedItem && isSelectedItemInCanvas() &&
- !mySelectedItem->arePartsOfOtherItem(anActItem)) mySelectedItem->select(aPoint, false);
- mySelectedItem = anActItem;
- }
- break;
- }
- }
- }
- }
-
- myMovingDone = false;
-}
-
-void QxGraph_CanvasView::contentsMouseDoubleClickEvent(QMouseEvent* theEvent)
-{
-
-}
-
-bool QxGraph_CanvasView::isSelectedItemInCanvas()
-{
- // check if mySelectedItem is included into the canvas:
- // if yes => unselect it
- // if no => do nothing
- bool anIsInCanvas = false;
- QCanvasItemList aListC = canvas()->allItems();
- for (QCanvasItemList::Iterator itC = aListC.begin(); itC != aListC.end(); ++itC) {
- QxGraph_ActiveItem* anActItemC = dynamic_cast<QxGraph_ActiveItem*>( *itC );
- if ( anActItemC && anActItemC == mySelectedItem ) {
- anIsInCanvas = true;
- break;
- }
- }
- return anIsInCanvas;
-}
-
-void QxGraph_CanvasView::activateFitAll()
-{
- //myOperation = FITALL;
- int w = 0, h = 0;
- QCanvasItemList l = canvas()->allItems();
- for (QCanvasItemList::Iterator it = l.begin(); it != l.end(); ++it) {
- QRect r = (*it)->boundingRect();
- if (w < r.right()) w = r.right();
- if (h < r.bottom()) h = r.bottom();
- }
- w += GRAPH_MARGIN; h += GRAPH_MARGIN;
- double s = ((double)visibleWidth())/((double)w);
- double s1 = ((double)visibleHeight())/((double)h);
- if (s > s1) s = s1;
-
- setContentsPos(0,0);
- QWMatrix m;
- m.scale(s, s);
- setWorldMatrix(m);
-
- // remember the canvas view's current transformation matrix in all canvas items
- QCanvasItemList aList = canvas()->allItems();
- for (QCanvasItemList::Iterator it = aList.begin(); it != aList.end(); ++it) {
- QxGraph_ActiveItem* anActItem = dynamic_cast<QxGraph_ActiveItem*>( *it );
- if ( anActItem ) anActItem->setTMatrix(m);
- }
-
- canvas()->update();
- //myOperation = NOTHING;
-
- emit viewOperationDone();
-}
-
-void QxGraph_CanvasView::activateFitRect()
-{
- myOperation = WINDOWFIT;
- viewport()->setMouseTracking(false);
- myCursor = cursor(); // save old cursor
- QCursor handCursor (Qt::PointingHandCursor);
- setCursor(handCursor);
-}
-
-void QxGraph_CanvasView::activateZoom()
-{
- myOperation = ZOOMVIEW;
- viewport()->setMouseTracking(false);
- myCursor = cursor(); // save old cursor
- QPixmap zoomPixmap (imageZoomCursor);
- QCursor zoomCursor (zoomPixmap);
- setCursor(zoomCursor);
-}
-
-void QxGraph_CanvasView::activatePanning()
-{
- myOperation = PANVIEW;
- viewport()->setMouseTracking(false);
- myCursor = cursor(); // save old cursor
- QCursor panCursor (Qt::SizeAllCursor);
- setCursor(panCursor);
-}
-
-void QxGraph_CanvasView::activateGlobalPanning()
-{
- myOperation = PANGLOBAL;
- myCursor = cursor(); // save old cursor
- QPixmap globalPanPixmap (imageCrossCursor);
- QCursor glPanCursor (globalPanPixmap);
- setCursor(glPanCursor);
-}
-
-void QxGraph_CanvasView::activateReset()
-{
- //myOperation = RESETVIEW;
- setContentsPos(0,0);
- QWMatrix m;
- setWorldMatrix(m);
-
- // remember the canvas view's current transformation matrix in all canvas items
- QCanvasItemList aList = canvas()->allItems();
- for (QCanvasItemList::Iterator it = aList.begin(); it != aList.end(); ++it) {
- QxGraph_ActiveItem* anActItem = dynamic_cast<QxGraph_ActiveItem*>( *it );
- if ( anActItem ) anActItem->setTMatrix(m);
- }
-
- //myOperation = NOTHING;
-
- emit viewOperationDone();
-}
-
-void QxGraph_CanvasView::onTimeout()
-{
- if (myCurrentItem) {
- scrollBy(myDX, myDY);
-
- double cx, cy;
- inverseWorldMatrix().map((double)myDX, (double)myDY, &cx, &cy);
- if (myCurrentItem->x()+cx < 0) cx = -myCurrentItem->x();
- if (myCurrentItem->y()+cy < 0) cy = -myCurrentItem->y();
- myCurrentItem->moveBy(cx, cy);
- myPoint.setX(myPoint.x()+(int)cx);
- myPoint.setY(myPoint.y()+(int)cy);
- canvas()->update();
- }
-}
-
-QxGraph_ViewWindow* QxGraph_CanvasView::getViewWindow() const
-{
- return dynamic_cast<QxGraph_ViewWindow*>( parent() );
-}
-
-/*!
- Shows tooltip if necessary
-*/
-void QxGraph_ToolTip::maybeTip(const QPoint& theMousePos) {
- QCanvasItemList aList = ((QCanvasView*)parentWidget())->canvas()->collisions(theMousePos);
-
- for (QCanvasItemList::Iterator it = aList.begin(); it != aList.end(); ++it) {
- QxGraph_ActiveItem* anActItem = dynamic_cast<QxGraph_ActiveItem*>( *it );
- if (anActItem)
- {
- QRect aRect;
- QString aText = anActItem->getToolTipText(theMousePos, aRect);
- int avX, avY;
- QWMatrix aWM = ((QCanvasView*)parentWidget())->worldMatrix();
- ((QCanvasView*)parentWidget())->contentsToViewport((int)(aRect.left()*aWM.m11()),
- (int)(aRect.top()*aWM.m22()),
- avX, avY);
- QRect aTipRect(avX, avY, (int)(aRect.width()*aWM.m11()), (int)(aRect.height()*aWM.m22()));
- if (!aText.isEmpty())
- tip(aTipRect, aText);
- return;
- }
- }
-}
-
-
-
+++ /dev/null
-// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-//
-// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
-// 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.
-//
-// 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
-//
-
-// SALOME QxGraph : build Supervisor viewer into desktop
-//
-#ifndef QXGRAPH_CANVASVIEW_H
-#define QXGRAPH_CANVASVIEW_H
-
-#include "QxGraph.h"
-
-#include <qcanvas.h>
-#include <qcursor.h>
-#include <qtimer.h>
-#include <qtooltip.h>
-
-class QxGraph_Canvas;
-class QxGraph_ViewWindow;
-class QxGraph_ActiveItem;
-
-class QXGRAPH_EXPORT QxGraph_CanvasView : public QCanvasView {
- Q_OBJECT
-
- public:
- enum OperationType{ NOTHING, PANVIEW, ZOOMVIEW, PANGLOBAL,
- WINDOWFIT, FITALLVIEW, RESETVIEW };
-
- QxGraph_CanvasView(QxGraph_Canvas* theCanvas, QxGraph_ViewWindow* theViewWindow);
- virtual ~QxGraph_CanvasView();
-
- QxGraph_ViewWindow* getViewWindow() const;
-
- void activateFitAll();
- void activateFitRect();
- void activateZoom();
- void activatePanning();
- void activateGlobalPanning();
- void activateReset();
-
- void itemRemoved( QCanvasItem* );
-
- void setSelectedItem( QxGraph_ActiveItem* theItem );
- QxGraph_ActiveItem* getSelectedItem() const;
-
- signals:
- void viewOperationDone();
-
- public slots:
- void onTimeout();
- //void changeBackground();
-
- protected:
- void contentsMousePressEvent(QMouseEvent* theEvent);
- void contentsMouseMoveEvent(QMouseEvent* theEvent);
- void contentsMouseReleaseEvent(QMouseEvent* theEvent);
- void contentsMouseDoubleClickEvent(QMouseEvent* theEvent);
-
- bool isSelectedItemInCanvas();
-
- private:
- // for moving items
- QCanvasItem* myCurrentItem;
- QPoint myPoint;
- QPoint myGlobalPoint;
- bool myMovingDone;
- QPoint myCenter;
-
- // for control toolbar actions
- OperationType myOperation;
- QCursor myCursor;
- QCanvasRectangle* mySelectedRect;
-
- // for automatic content scrolling if mouse is outside
- QTimer* myTimer;
- int myDX;
- int myDY;
-
- // for hilight
- QxGraph_ActiveItem* myHilightedItem;
-
- // for selection
- QxGraph_ActiveItem* mySelectedItem;
-};
-
-
-class QxGraph_ToolTip: public QToolTip {
-
- public:
- QxGraph_ToolTip(QWidget* theWidget, QToolTipGroup* theGroup = 0):
- QToolTip(theWidget, theGroup) {}
- ~QxGraph_ToolTip() { remove(parentWidget()); }
-
- virtual void maybeTip(const QPoint& theMousePos);
-};
-
-#endif
+++ /dev/null
-// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-//
-// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
-// 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.
-//
-// 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
-//
-
-// SALOME QxGraph : build Supervisor viewer into desktop
-//
-#ifndef QXGRAPH_DEF_H
-#define QXGRAPH_DEF_H
-
-#define DEF_BACK_COLOR QColor(144, 208, 211)
-#define RECTANGLE_BODY QColor(255,249,147)
-
-#define GRAPH_WIDTH 1250
-#define GRAPH_HEIGHT 950
-
-#define GRAPH_MARGIN 50
-
-#endif
+++ /dev/null
-// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-//
-// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
-// 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.
-//
-// 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
-//
-
-// SALOME QxGraph : build Supervisor viewer into desktop
-//
-#include "QxGraph_Prs.h"
-
-#include "QxGraph_Canvas.h"
-#include "QxGraph_Def.h" // for debug only
-
-#include "SUIT_Session.h" // for debug only
-
-/*!
- Constructor
-*/
-QxGraph_Prs::QxGraph_Prs(QxGraph_Canvas* theCanvas):
- myCanvas(theCanvas),
- myDMode(0),
- needUpdate(true)
-{
- myCanvas->addPrs(this);
-}
-
-/*!
- Destructor
-*/
-QxGraph_Prs::~QxGraph_Prs()
-{
- for ( DMode2ItemList::iterator it1 = myDisplayMap.begin();
- it1 != myDisplayMap.end();
- it1++ )
- {
- for ( std::list<QCanvasItem*>::iterator it2 = (*it1).second.begin();
- it2 != (*it1).second.end();
- it2++ )
- {
- QCanvasItem* anItem = *it2;
- if ( anItem ) delete anItem;
- }
- }
-
- myDisplayMap.clear();
-}
-
-/*!
- Add item to display in the view with index theDMode
-*/
-void QxGraph_Prs::addItem(QCanvasItem* theItem, int theDMode)
-{
- if ( theDMode == -1 ) // add item for the current display mode
- myDisplayMap[myDMode].push_back(theItem);
- else
- myDisplayMap[theDMode].push_back(theItem);
-}
-
-/*!
- Remove item from the view with index theDMode
-*/
-void QxGraph_Prs::removeItem(QCanvasItem* theItem, int theDMode)
-{
- if ( theDMode == -1 ) // remove item from the current display mode
- myDisplayMap[myDMode].remove(theItem);
- else
- myDisplayMap[theDMode].remove(theItem);
-}
-
-/*! Adds all the items of this presentation for the current display mode
- * to the canvas.
- */
-void QxGraph_Prs::show()
-{
- if ( isToUpdate() )
- update();
-
- for ( std::list<QCanvasItem*>::iterator it = myDisplayMap[myDMode].begin();
- it != myDisplayMap[myDMode].end();
- it++ )
- {
- QCanvasItem* anItem = *it;
- if ( anItem )
- {
- anItem->setCanvas( myCanvas );
- anItem->show();
- }
- }
-}
-
-/*! Removes all the items belonging to this presentation from the canvas.
- */
-void QxGraph_Prs::hide()
-{
- for ( DMode2ItemList::iterator it1 = myDisplayMap.begin();
- it1 != myDisplayMap.end();
- it1++ )
- {
- for ( std::list<QCanvasItem*>::iterator it2 = (*it1).second.begin();
- it2 != (*it1).second.end();
- it2++ )
- {
- QCanvasItem* anItem = *it2;
- if ( anItem )
- {
- anItem->setCanvas( 0 );
- }
- }
- }
-}
-
-/*! Prepare for full recomputation of the presentation
- */
-void QxGraph_Prs::setToUpdate( const bool theFlag )
-{
- needUpdate = theFlag;
-}
-
-/*! Re-fills the presentation with items.
- * Base implementation just resets <needUpdate> flag.
- * It should be called at the end by re-implementations.
- */
-void QxGraph_Prs::update()
-{
- setToUpdate( false );
-}
-
-/*!
- Add a QCanvasRectangle item for display mode DMode
-*/
-QCanvasItem* QxGraph_Prs::addRectangleItem(QRect theRect, int theDMode)
-{
- QCanvasRectangle* aRectItem;
- if ( myCanvas )
- {
- QCanvasRectangle* aRectItem = new QCanvasRectangle(theRect, myCanvas);
- aRectItem->setZ(0);
- aRectItem->show();
- myCanvas->update();
-
- // test drawing features: brush, pen ...
- QBrush aBr(SUIT_Session::session()->resourceMgr()->colorValue( "QxGraph", "NodeBody", RECTANGLE_BODY ));
- aRectItem->setBrush(aBr);
- }
- addItem(aRectItem);
- return aRectItem;
-}
-
-/*!
- Add a QCanvasPolygon item for display mode DMode
-*/
-QCanvasItem* QxGraph_Prs::addPolygonItem(QPointArray thePA, int theDMode)
-{
- QCanvasPolygon* aPolyItem;
- if ( myCanvas )
- {
- aPolyItem = new QCanvasPolygon(myCanvas);
- aPolyItem->setZ(0);
- aPolyItem->setPoints(thePA);
- aPolyItem->show();
- myCanvas->update();
-
- // test drawing features: brush, pen ...
- QBrush aBr(SUIT_Session::session()->resourceMgr()->colorValue( "QxGraph", "NodeBody", RECTANGLE_BODY ));
- aPolyItem->setBrush(aBr);
- QPen aPen(Qt::black,2);
- aPolyItem->setPen(aPen);
- }
- addItem(aPolyItem);
- return aPolyItem;
-}
-
-/*!
- Add a QCanvasLine item for display mode DMode
-*/
-QCanvasItem* QxGraph_Prs::addLineItem(QPoint theStart, QPoint theEnd, int theDMode)
-{
- QCanvasLine* aLineItem;
- if ( myCanvas )
- {
- aLineItem = new QCanvasLine(myCanvas);
- aLineItem->setZ(0);
- aLineItem->setPoints(theStart.x(), theStart.y(), theEnd.x(), theEnd.y());
- aLineItem->show();
- myCanvas->update();
-
- // test drawing features: brush, pen ...
- QPen aPen(Qt::black,2);
- aLineItem->setPen(aPen);
- }
- addItem(aLineItem);
- return aLineItem;
-}
-
-/*!
- Add a QCanvasEllipse item for display mode DMode
-*/
-QCanvasItem* QxGraph_Prs::addEllipseItem(int theW, int theH, int theStartAngle, int theAngle, int theDMode)
-{
- QCanvasEllipse* aEllipseItem;
- if ( myCanvas )
- {
- aEllipseItem = new QCanvasEllipse(theW, theH, theStartAngle, theAngle, myCanvas);
- aEllipseItem->setZ(0);
- aEllipseItem->show();
- myCanvas->update();
-
- // test drawing features: brush, pen ...
- QBrush aBr(SUIT_Session::session()->resourceMgr()->colorValue( "QxGraph", "NodeBody", RECTANGLE_BODY ));
- aEllipseItem->setBrush(aBr);
- QPen aPen(Qt::black,2);
- aEllipseItem->setPen(aPen);
- }
- addItem(aEllipseItem);
- return aEllipseItem;
-}
-
-/*!
- Add a QCanvasText item for display mode DMode
-*/
-QCanvasItem* QxGraph_Prs::addTextItem(QString theText, int theDMode)
-{
- QCanvasText* aTextItem;
- if ( myCanvas )
- {
- aTextItem = new QCanvasText(theText, myCanvas);
- aTextItem->setZ(0);
- aTextItem->show();
- myCanvas->update();
-
- // test drawing features: font, color, text flags ...
- aTextItem->setColor(Qt::darkBlue);
- //aTextItem->setFont(QFont("Times"/*"Helvetica"*/, 14, QFont::Normal, true));
- }
- addItem(aTextItem);
- return aTextItem;
-}
+++ /dev/null
-// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-//
-// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
-// 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.
-//
-// 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
-//
-
-#ifndef QXGRAPH_PRS_H
-#define QXGRAPH_PRS_H
-
-#include "QxGraph.h"
-
-#include <qcanvas.h>
-#include <map>
-#include <list>
-
-class QxGraph_Canvas;
-
-class QXGRAPH_EXPORT QxGraph_Prs
-{
- public:
- QxGraph_Prs(QxGraph_Canvas*);
- virtual ~QxGraph_Prs();
-
- QxGraph_Canvas* getCanvas() const { return myCanvas; }
-
- void addItem(QCanvasItem* theItem, int theDMode = -1);
- void removeItem(QCanvasItem* theItem, int theDMode = -1);
-
- /* add items for display mode theDMode
- if theDMode is equal to -1 add item for the current (active) display mode */
- QCanvasItem* addRectangleItem(QRect theRect, int theDMode = -1);
- QCanvasItem* addPolygonItem(QPointArray thePA, int theDMode = -1);
- QCanvasItem* addLineItem(QPoint theStart, QPoint theEnd, int theDMode = -1);
- QCanvasItem* addEllipseItem(int theW, int theH, int theStartAngle, int theAngle, int theDMode = -1);
- QCanvasItem* addTextItem(QString theText, int theDMode = -1);
-
- typedef std::map< int, std::list<QCanvasItem*> > DMode2ItemList;
-
- const DMode2ItemList& getDisplayMap() const { return myDisplayMap; }
- const std::list<QCanvasItem*>& getItems(int theDMode) { return myDisplayMap[theDMode]; }
-
- void setDMode(int theDMode) { myDMode = theDMode; }
- int getDMode() const { return myDMode; }
-
- virtual void show();
- virtual void hide();
- virtual void setToUpdate( const bool );
- bool isToUpdate() { return needUpdate; }
-
-protected:
- virtual void update();
-
-private:
- QxGraph_Canvas* myCanvas;
- DMode2ItemList myDisplayMap;
-
- int myDMode;
- bool needUpdate;
-};
-
-#endif
+++ /dev/null
-// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-//
-// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
-// 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.
-//
-// 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
-//
-
-#include "QxGraph_ViewManager.h"
-
-/*!
- Constructor
-*/
-QxGraph_ViewManager::QxGraph_ViewManager( SUIT_Study* theStudy,
- SUIT_Desktop* theDesktop,
- SUIT_ViewModel* theViewModel )
- : SUIT_ViewManager( theStudy, theDesktop, theViewModel )
-{
-}
-
-/*!
- Destructor
-*/
-QxGraph_ViewManager::~QxGraph_ViewManager()
-{
-}
-
-/*!
- Sets view name
- \param theView - view to assign name
-*/
-void QxGraph_ViewManager::setViewName(SUIT_ViewWindow* theView)
-{
- int aPos = myViews.find(theView);
- theView->setCaption( QString( "QxGraph scene:%1 - viewer:%2" ).arg( myId ).arg(aPos+1));
-}
-
-/*!
- Fills popup menu with custom actions
- \param popup - popup menu to be filled with
-*/
-void QxGraph_ViewManager::contextMenuPopup( QPopupMenu* thePopup)
-{
- SUIT_ViewManager::contextMenuPopup( thePopup );
- // to be implemented
-}
+++ /dev/null
-// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-//
-// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
-// 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.
-//
-// 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
-//
-
-#ifndef QXGRAPH_VIEWMANAGER_H
-#define QXGRAPH_VIEWMANAGER_H
-
-#include "QxGraph.h"
-
-#include "QxGraph_ViewModel.h"
-#include "SUIT_ViewManager.h"
-
-class SUIT_Desktop;
-
-class QXGRAPH_EXPORT QxGraph_ViewManager : public SUIT_ViewManager
-{
- Q_OBJECT
-
-public:
- QxGraph_ViewManager( SUIT_Study* theStudy, SUIT_Desktop* theDesktop, SUIT_ViewModel* theViewModel = 0 );
- ~QxGraph_ViewManager();
-
- virtual void contextMenuPopup( QPopupMenu* thePopup );
-
-protected:
- void setViewName(SUIT_ViewWindow* theView);
-
-};
-
-#endif
+++ /dev/null
-// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-//
-// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
-// 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.
-//
-// 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
-//
-
-#include "QxGraph_ViewModel.h"
-#include "QxGraph_ViewWindow.h"
-#include "QxGraph_Canvas.h"
-#include "QxGraph_CanvasView.h"
-#include "QxGraph_Def.h"
-#include "QxGraph_Prs.h"
-
-#include "SUIT_Desktop.h"
-#include "SUIT_ViewWindow.h"
-#include "SUIT_Session.h"
-
-#include <qcolordialog.h>
-#include <qpopupmenu.h>
-#include <qcanvas.h> // for addRectangleItem(...) method (can be removed in the future)
-
-/*!
- Constructor
-*/
-QxGraph_Viewer::QxGraph_Viewer()
- :SUIT_ViewModel(),
- myCanvas(0),
- myCurrentView(0)
-{
- printf("Construct QxGraph_Viewer\n");
- //myCanvases.setAutoDelete(true);
- //myCanvasViews.setAutoDelete(true);
-}
-
-/*!
- Destructor
-*/
-QxGraph_Viewer::~QxGraph_Viewer()
-{
- if ( myCanvas ) delete myCanvas;
- //if ( !myCanvases.isEmpty() ) myCanvases.clear();
- if ( !myCanvasViews.isEmpty() ) myCanvasViews.clear();
- myCurrentView = 0;
-}
-
-/*!
- Start initialization of view window
- \param view - view window to be initialized
-*/
-void QxGraph_Viewer::initView( QxGraph_ViewWindow* view )
-{
- if ( view )
- {
- view->initLayout();
-
- /*
- // test add items into the current canvas view
- QRect aRect(100,200,200,100);
- QCanvasItem* aRectItem = aPrs->addRectangleItem(aRect);
- //delete aRectItem;
-
- QPointArray aPA(6);
- aPA.putPoints(0, 6, 400,100, 500,70, 600,100, 600,200, 500,230, 400,200);
- QCanvasItem* aPolyItem = aPrs->addPolygonItem(aPA);
- //delete aPolyItem;
-
- QPoint aStart(500,300), aEnd(700,250);
- QCanvasItem* aLineItem = aPrs->addLineItem(aStart, aEnd);
- //delete aLineItem;
-
- QCanvasItem* aEllipseItem = aPrs->addEllipseItem(200, 100, 30*16, 120*16);
- aEllipseItem->setX(400);
- aEllipseItem->setY(400);
- //delete aEllipseItem;
-
- QCanvasItem* aTextItem = aPrs->addTextItem("This is a QCanvasText item");
- aTextItem->setX(100);
- aTextItem->setY(500);
- //delete aTextItem;
- */
- }
-}
-
-/*!
- Creates new view window
- \param theDesktop - main window of application
-*/
-SUIT_ViewWindow* QxGraph_Viewer::createView(SUIT_Desktop* theDesktop)
-{
- QxGraph_ViewWindow* aRes = new QxGraph_ViewWindow( theDesktop, this );
- initView( aRes );
- return aRes;
-}
-
-/*!
- Set view with index theIndex from myCanvasViews as current view
- \param theIndex - the index of the view in the list
-*/
-void QxGraph_Viewer::setCurrentView(int theIndex)
-{
- if ( theIndex >= 0 && theIndex < myCanvasViews.count() )
- {
- myCurrentView = myCanvasViews.at(theIndex);
- myViewManager->getActiveView()->setCentralWidget(myCurrentView);
- }
-}
-
-/*!
- Builds popup for QxGraph viewer
-*/
-void QxGraph_Viewer::contextMenuPopup(QPopupMenu* thePopup)
-{
- printf("QxGraph_Viewer::contextMenuPopup\n");
- thePopup->insertItem( tr( "MEN_CHANGE_BACKGROUND" ), this, SLOT( onChangeBgColor() ) );
-
- thePopup->insertSeparator();
-
- QxGraph_ViewWindow* aView = (QxGraph_ViewWindow*)(myViewManager->getActiveView());
- if ( aView && !aView->getToolBar()->isVisible() )
- thePopup->insertItem( tr( "MEN_SHOW_TOOLBAR" ), this, SLOT( onShowToolbar() ) );
-}
-
-/*!
- SLOT: called if background color is to be changed changed, passes new color to current canvas view
-*/
-void QxGraph_Viewer::onChangeBgColor()
-{
- QxGraph_ViewWindow* aView = (QxGraph_ViewWindow*)(myViewManager->getActiveView());
- if( !aView )
- return;
- QColor aColorActive = aView->backgroundColor();
-
- QColor selColor = QColorDialog::getColor( aColorActive, aView);
- if ( selColor.isValid() )
- aView->setBackgroundColor(selColor);
-}
-
-/*!
- SLOT: called when popup item "Show toolbar" is activated, shows toolbar of active view window
-*/
-void QxGraph_Viewer::onShowToolbar() {
- QxGraph_ViewWindow* aView = (QxGraph_ViewWindow*)(myViewManager->getActiveView());
- if ( aView )
- aView->getToolBar()->show();
-}
+++ /dev/null
-// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-//
-// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
-// 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.
-//
-// 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
-//
-
-#ifndef QXGRAPH_VIEWMODEL_H
-#define QXGRAPH_VIEWMODEL_H
-
-#include "QxGraph.h"
-
-#include "SUIT_ViewModel.h"
-
-class QCanvasItem; // for addRectangleItem(...) method (can be removed in the future)
-
-class QxGraph_Canvas;
-class QxGraph_CanvasView;
-class QxGraph_ViewWindow;
-class QxGraph_Prs;
-
-class QXGRAPH_EXPORT QxGraph_Viewer: public SUIT_ViewModel
-{
- Q_OBJECT
-
- public:
- static QString Type() { return "QxGraphViewer"; }
-
- QxGraph_Viewer();
- virtual ~QxGraph_Viewer();
-
- virtual SUIT_ViewWindow* createView(SUIT_Desktop* theDesktop);
- virtual QString getType() const { return Type(); }
-
- virtual void contextMenuPopup(QPopupMenu*);
-
- QxGraph_Canvas* getCanvas() const { return myCanvas; }
- void setCanvas(QxGraph_Canvas* theCanvas) { myCanvas = theCanvas; }
- //QPtrList<QxGraph_Canvas> getCanvases() { return myCanvases; }
- //void setCanvases(QPtrList<QxGraph_Canvas> theCanvases) { myCanvases = theCanvases; }
-
- //void addCanvas(QxGraph_Canvas* theCanvas) { myCanvases.append(theCanvas); }
- //void removeCanvas(QxGraph_Canvas* theCanvas) { myCanvases.remove(theCanvas); }
-
- QPtrList<QxGraph_CanvasView> getCanvasViews() { return myCanvasViews; }
- void setCanvasViews(QPtrList<QxGraph_CanvasView> theViews) { myCanvasViews = theViews; }
-
- void addView(QxGraph_CanvasView* theView) { myCanvasViews.append(theView); }
- void removeView(QxGraph_CanvasView* theView) { myCanvasViews.remove(theView); }
-
- QxGraph_CanvasView* getCurrentView() const { return myCurrentView; }
- void setCurrentView(QxGraph_CanvasView* theView) { myCurrentView = theView; }
- void setCurrentView(int theIndex);
-
- protected:
- void initView(QxGraph_ViewWindow* view);
-
- protected slots:
- void onShowToolbar();
- void onChangeBgColor();
-
- private:
- QxGraph_Canvas* myCanvas;
- //QPtrList<QxGraph_Canvas> myCanvases;
- QPtrList<QxGraph_CanvasView> myCanvasViews;
-
- QxGraph_CanvasView* myCurrentView;
-
-};
-
-#endif
+++ /dev/null
-// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-//
-// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
-// 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.
-//
-// 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
-//
-
-// SALOME QxGraph : build Supervisor viewer into desktop
-//
-#include "QxGraph_ViewWindow.h"
-#include "QxGraph_Def.h"
-#include "QxGraph_Canvas.h"
-#include "QxGraph_CanvasView.h"
-
-#include <SUIT_ResourceMgr.h>
-#include <SUIT_Session.h>
-#include <SUIT_ToolButton.h>
-
-//QT Include
-#include <qlayout.h>
-#include <qcolor.h>
-
-/*!
- Constructor
-*/
-QxGraph_ViewWindow::QxGraph_ViewWindow( SUIT_Desktop* theDesktop, QxGraph_Viewer* theModel)
- : SUIT_ViewWindow( theDesktop )
-{
- printf("Construct QxGraph_ViewWindow\n");
- myViewModel = theModel;
-}
-
-/*!
- Initialization
-*/
-void QxGraph_ViewWindow::initLayout()
-{
- initCanvas();
- initCanvasViews();
-
- myToolBar = new QToolBar(this);
- myToolBar->setCloseMode(QDockWindow::Undocked);
- myToolBar->setLabel(tr("LBL_TOOLBAR_LABEL"));
- createActions();
- createToolBar();
-}
-
-/*!
- Canvas initialization
-*/
-void QxGraph_ViewWindow::initCanvas()
-{
- if ( myViewModel )
- myViewModel->setCanvas( new QxGraph_Canvas(resMgr()) );
- //myViewModel->addCanvas( new QxGraph_Canvas(resMgr()) );
-}
-
-/*!
- Canvas views initialization
-*/
-void QxGraph_ViewWindow::initCanvasViews()
-{
- if ( myViewModel )
- {
- for (int i = 0; i < 2; i++)
- {
- //QxGraph_Canvas* aCanvas = new QxGraph_Canvas(resMgr());
- //myViewModel->addCanvas( aCanvas );
-
- QxGraph_CanvasView* aCanvasView = new QxGraph_CanvasView( myViewModel->getCanvas(), this );
- //QxGraph_CanvasView* aCanvasView = new QxGraph_CanvasView( aCanvas, this );
- myViewModel->addView(aCanvasView);
-
- aCanvasView->hide();
- }
-
- // the first view is shown and is the current
- myViewModel->getCanvasViews().first()->show();
- myViewModel->setCurrentView( myViewModel->getCanvasViews().first() );
-
- /* test for 1 view -->
- QxGraph_CanvasView* aCanvasView = new QxGraph_CanvasView( myViewModel->getCanvas(), this );
- myViewModel->addView(aCanvasView);
- myViewModel->setCurrentView(aCanvasView);
- test for 1 view <-- */
-
- setCentralWidget( myViewModel->getCurrentView() );
-
- /*if ( inherits( "QMainWindow" ) ) {
- printf("== > 1\n");
- ( ( QMainWindow* )this )->setCentralWidget( myViewModel->getCurrentView() );
- }
- else {
- printf("== > 2\n");
- QBoxLayout* layout = new QVBoxLayout( this );
- layout->addWidget( myViewModel->getCurrentView() );
- }*/
- }
-}
-
-/*!
- Creates actions of QxGraph view window
-*/
-void QxGraph_ViewWindow::createActions()
-{
- if (!myActionsMap.isEmpty()) return;
- SUIT_ResourceMgr* aResMgr = resMgr();
- QtxAction* aAction;
-
- // FitAll
- aAction = new QtxAction(tr("MNU_FITALL"), aResMgr->loadPixmap( "QxGraph", tr( "ICON_QXGRAPH_FITALL" ) ),
- tr( "MNU_FITALL" ), 0, this);
- aAction->setStatusTip(tr("DSC_FITALL"));
- connect(aAction, SIGNAL(activated()), this, SLOT(onViewFitAll()));
- myActionsMap[ FitAllId ] = aAction;
-
- // FitRect
- aAction = new QtxAction(tr("MNU_FITRECT"), aResMgr->loadPixmap( "QxGraph", tr( "ICON_QXGRAPH_FITAREA" ) ),
- tr( "MNU_FITRECT" ), 0, this);
- aAction->setStatusTip(tr("DSC_FITRECT"));
- connect(aAction, SIGNAL(activated()), this, SLOT(onViewFitArea()));
- myActionsMap[ FitRectId ] = aAction;
-
- // Zoom
- aAction = new QtxAction(tr("MNU_ZOOM_VIEW"), aResMgr->loadPixmap( "QxGraph", tr( "ICON_QXGRAPH_ZOOM" ) ),
- tr( "MNU_ZOOM_VIEW" ), 0, this);
- aAction->setStatusTip(tr("DSC_ZOOM_VIEW"));
- connect(aAction, SIGNAL(activated()), this, SLOT(onViewZoom()));
- myActionsMap[ ZoomId ] = aAction;
-
- // Panning
- aAction = new QtxAction(tr("MNU_PAN_VIEW"), aResMgr->loadPixmap( "QxGraph", tr( "ICON_QXGRAPH_PAN" ) ),
- tr( "MNU_PAN_VIEW" ), 0, this);
- aAction->setStatusTip(tr("DSC_PAN_VIEW"));
- connect(aAction, SIGNAL(activated()), this, SLOT(onViewPan()));
- myActionsMap[ PanId ] = aAction;
-
- // Global Panning
- aAction = new QtxAction(tr("MNU_GLOBALPAN_VIEW"), aResMgr->loadPixmap( "QxGraph", tr( "ICON_QXGRAPH_GLOBALPAN" ) ),
- tr( "MNU_GLOBALPAN_VIEW" ), 0, this);
- aAction->setStatusTip(tr("DSC_GLOBALPAN_VIEW"));
- connect(aAction, SIGNAL(activated()), this, SLOT(onViewGlobalPan()));
- myActionsMap[ GlobalPanId ] = aAction;
-
- // Reset
- aAction = new QtxAction(tr("MNU_RESET_VIEW"), aResMgr->loadPixmap( "QxGraph", tr( "ICON_QXGRAPH_RESET" ) ),
- tr( "MNU_RESET_VIEW" ), 0, this);
- aAction->setStatusTip(tr("DSC_RESET_VIEW"));
- connect(aAction, SIGNAL(activated()), this, SLOT(onViewReset()));
- myActionsMap[ ResetId ] = aAction;
-}
-
-/*!
- Creates toolbar of QxGraph view window
-*/
-void QxGraph_ViewWindow::createToolBar()
-{
- SUIT_ToolButton* aScaleBtn = new SUIT_ToolButton(myToolBar, "scale");
- aScaleBtn->AddAction(myActionsMap[FitAllId]);
- aScaleBtn->AddAction(myActionsMap[FitRectId]);
- aScaleBtn->AddAction(myActionsMap[ZoomId]);
-
- SUIT_ToolButton* aPanningBtn = new SUIT_ToolButton(myToolBar, "pan");
- aPanningBtn->AddAction(myActionsMap[PanId]);
- aPanningBtn->AddAction(myActionsMap[GlobalPanId]);
-
- myActionsMap[ResetId]->addTo(myToolBar);
-}
-
-/*!
- Destructor
-*/
-QxGraph_ViewWindow::~QxGraph_ViewWindow() {}
-
-/*!
- Reset the active view
-*/
-void QxGraph_ViewWindow::onViewReset()
-{
- printf( "QxGraph_ViewWindow::onViewReset\n" );
- if ( myViewModel && myViewModel->getCurrentView() )
- myViewModel->getCurrentView()->activateReset();
-}
-
-/*!
- Sets a new center of the active view
-*/
-void QxGraph_ViewWindow::onViewGlobalPan()
-{
- printf( "QxGraph_ViewWindow::onViewGlobalPan\n" );
- if ( myViewModel && myViewModel->getCurrentView() )
- myViewModel->getCurrentView()->activateGlobalPanning();
-}
-
-/*!
- Zooms the active view
-*/
-void QxGraph_ViewWindow::onViewZoom()
-{
- printf( "QxGraph_ViewWindow::onViewZoom\n" );
- if ( myViewModel && myViewModel->getCurrentView() )
- myViewModel->getCurrentView()->activateZoom();
-}
-
-/*!
- Moves the active view
-*/
-void QxGraph_ViewWindow::onViewPan()
-{
- printf( "QxGraph_ViewWindow::onViewPan\n" );
- if ( myViewModel && myViewModel->getCurrentView() )
- myViewModel->getCurrentView()->activatePanning();
-}
-
-/*!
- Fits all obejcts within a rectangular area of the active view
-*/
-void QxGraph_ViewWindow::onViewFitArea()
-{
- printf( "QxGraph_ViewWindow::onViewFitArea\n" );
- if ( myViewModel && myViewModel->getCurrentView() )
- myViewModel->getCurrentView()->activateFitRect();
-}
-
-/*!
- Fits all objects in the active view
-*/
-void QxGraph_ViewWindow::onViewFitAll()
-{
- printf( "QxGraph_ViewWindow::onViewFitAll\n" );
- if ( myViewModel && myViewModel->getCurrentView() )
- myViewModel->getCurrentView()->activateFitAll();
-}
-
-/*!
- Set background of the viewport
-*/
-void QxGraph_ViewWindow::setBackgroundColor( const QColor& color )
-{
- if ( myViewModel && myViewModel->getCurrentView()) {
- myViewModel->getCurrentView()->canvas()->setBackgroundColor(color);
- myViewModel->getCurrentView()->setPaletteBackgroundColor(color.light(120));
- }
-}
-
-/*!
- Returns background of the viewport
-*/
-QColor QxGraph_ViewWindow::backgroundColor() const
-{
- if ( myViewModel && myViewModel->getCurrentView())
- return myViewModel->getCurrentView()->canvas()->backgroundColor();
- return QColor();
-}
-
-/*!
- Custom resize event handler
-*/
-void QxGraph_ViewWindow::resizeEvent( QResizeEvent* theEvent )
-{
- // QMainWindow::resizeEvent( theEvent );
- //if ( myView ) myView->resizeView( theEvent );
-}
-
-/*!
- Get resource manager
-*/
-SUIT_ResourceMgr* QxGraph_ViewWindow::resMgr() const
-{
- return SUIT_Session::session()->resourceMgr();
-}
-
+++ /dev/null
-// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-//
-// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
-// 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.
-//
-// 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
-//
-
-// SALOME QxGraph : build Supervisor viewer into desktop
-//
-#ifndef QXGRAPH_VIEWWINDOW_H
-#define QXGRAPH_VIEWWINDOW_H
-
-#include "QxGraph.h"
-#include "QxGraph_ViewModel.h"
-
-#include "SUIT_ViewWindow.h"
-
-#include "QtxAction.h"
-
-#include <qaction.h>
-
-#ifdef WIN32
-#pragma warning ( disable:4251 )
-#endif
-
-class SUIT_ResourceMgr;
-
-class QXGRAPH_EXPORT QxGraph_ViewWindow : public SUIT_ViewWindow {
- Q_OBJECT
-
- public:
- QxGraph_ViewWindow(SUIT_Desktop* theDesktop, QxGraph_Viewer* theModel);
- virtual ~QxGraph_ViewWindow();
-
- void setBackgroundColor( const QColor& );
- QColor backgroundColor() const;
-
- QToolBar* getToolBar() { return myToolBar; }
-
- SUIT_ResourceMgr* resMgr() const;
-
- QxGraph_Viewer* getViewModel() const { return myViewModel; }
- void setViewModel(QxGraph_Viewer* theViewModel) { myViewModel = theViewModel; }
-
- virtual void initLayout();
-
- void contextPopupEvent(QContextMenuEvent* theEvent) { emit contextMenuRequested( theEvent); }
-
- public slots:
- void onViewFitAll();
- void onViewFitArea();
- void onViewZoom();
- void onViewPan();
- void onViewGlobalPan();
- void onViewReset();
-
- protected:
- void resizeEvent( QResizeEvent* theEvent );
-
- virtual void initCanvas();
- virtual void initCanvasViews();
-
- private:
- void createActions();
- void createToolBar();
-
- //! Actions ID
- enum { FitAllId, FitRectId, ZoomId, PanId, GlobalPanId, ResetId };
- typedef QMap<int, QtxAction*> ActionsMap;
-
- ActionsMap myActionsMap;
- QToolBar* myToolBar;
-
- QxGraph_Viewer* myViewModel;
-
-};
-
-#ifdef WIN32
-#pragma warning ( default:4251 )
-#endif
-
-#endif
+++ /dev/null
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE TS>
-<TS version="2.0" language="en_US">
-<context>
- <name>@default</name>
- <message>
- <source>ICON_QXGRAPH_RESET</source>
- <translation>qx_view_reset.png</translation>
- </message>
- <message>
- <source>ICON_QXGRAPH_ZOOM</source>
- <translation>qx_view_zoom.png</translation>
- </message>
- <message>
- <source>ICON_QXGRAPH_GLOBALPAN</source>
- <translation>qx_view_glpan.png</translation>
- </message>
- <message>
- <source>ICON_QXGRAPH_PAN</source>
- <translation>qx_view_pan.png</translation>
- </message>
- <message>
- <source>ICON_QXGRAPH_FITALL</source>
- <translation>qx_view_fitall.png</translation>
- </message>
- <message>
- <source>ICON_QXGRAPH_FITAREA</source>
- <translation>qx_view_fitarea.png</translation>
- </message>
-</context>
-</TS>
+++ /dev/null
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE TS>
-<TS version="2.0" language="en_US">
-<context>
- <name>@default</name>
- <message>
- <source>MEN_CHANGE_BACKGROUND</source>
- <translation>Change Background...</translation>
- </message>
- <message>
- <source>MNU_PAN_VIEW</source>
- <translation>Panning</translation>
- </message>
- <message>
- <source>DSC_PAN_VIEW</source>
- <translation>Panning the view</translation>
- </message>
- <message>
- <source>MNU_RESET_VIEW</source>
- <translation>Reset</translation>
- </message>
- <message>
- <source>DSC_RESET_VIEW</source>
- <translation>Reset View Point</translation>
- </message>
- <message>
- <source>LBL_TOOLBAR_LABEL</source>
- <translation>View Operations</translation>
- </message>
-</context>
-</TS>
+++ /dev/null
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE TS>
-<TS version="2.0" language="fr_FR">
-<context>
- <name>@default</name>
- <message>
- <source>MEN_CHANGE_BACKGROUND</source>
- <translation>Changer l'arrière-plan...</translation>
- </message>
- <message>
- <source>MNU_PAN_VIEW</source>
- <translation>Déplacement</translation>
- </message>
- <message>
- <source>DSC_PAN_VIEW</source>
- <translation>Déplacer la vue</translation>
- </message>
- <message>
- <source>MNU_RESET_VIEW</source>
- <translation>Restaurer</translation>
- </message>
- <message>
- <source>DSC_RESET_VIEW</source>
- <translation>Restaurer le point de vue</translation>
- </message>
- <message>
- <source>LBL_TOOLBAR_LABEL</source>
- <translation>Opérations de Visualisation</translation>
- </message>
-</context>
-</TS>
+++ /dev/null
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE TS>
-<TS>
- <context>
- <name>@default</name>
- <message>
- <source>MEN_CHANGE_BACKGROUND</source>
- <translation>背景の変更.</translation>
- </message>
- <message>
- <source>MNU_PAN_VIEW</source>
- <translation>パン</translation>
- </message>
- <message>
- <source>DSC_PAN_VIEW</source>
- <translation>パン表示]</translation>
- </message>
- <message>
- <source>MNU_RESET_VIEW</source>
- <translation>リセット</translation>
- </message>
- <message>
- <source>DSC_RESET_VIEW</source>
- <translation>リセット ビュー ポイント</translation>
- </message>
- <message>
- <source>LBL_TOOLBAR_LABEL</source>
- <translation>[操作の表示</translation>
- </message>
- </context>
-</TS>
INCLUDE(UseQt4Ext)
+# --- options ---
+
+# additional include directories
INCLUDE_DIRECTORIES(
- ${CAS_INCLUDE_DIRS}
${QT_INCLUDES}
- ${Boost_INCLUDE_DIRS}
- ${PYTHON_INCLUDE_DIRS}
- ${KERNEL_INCLUDE_DIRS}
- ${CMAKE_CURRENT_SOURCE_DIR}/../Qtx
- ${CMAKE_CURRENT_SOURCE_DIR}/../SUIT
+ ${PROJECT_SOURCE_DIR}/src/Qtx
+ ${PROJECT_SOURCE_DIR}/src/SUIT
)
-SET(COMMON_LIBS ${QT_LIBRARIES} suit)
+# additional preprocessor / compiler flags
+ADD_DEFINITIONS(${QT_DEFINITIONS})
-SET(GUI_HEADERS
- QxScene_ViewWindow.h
+# libraries to link to
+SET(_link_LIBRARIES ${QT_LIBRARIES} qtx suit)
+
+# --- headers ---
+
+# header files / to be processed by moc
+SET(_moc_HEADERS
QxScene_ViewManager.h
QxScene_ViewModel.h
+ QxScene_ViewWindow.h
)
-QT4_WRAP_CPP(GUI_HEADERS_MOC ${GUI_HEADERS})
-SET(QxScene_SOURCES
- QxScene_ViewWindow.cxx
- QxScene_ViewManager.cxx
- QxScene_ViewModel.cxx
+# header files / no moc processing
+SET(_other_HEADERS
+ QxScene.h
+ QxScene_Def.h
)
-SET(GUITS_SOURCES
+# header files / to install
+SET(QxScene_HEADERS ${_moc_HEADERS} ${_other_HEADERS})
+
+# --- resources ---
+
+# resource files / to be processed by lrelease
+SET(_ts_RESOURCES
resources/QxSceneViewer_images.ts
resources/QxSceneViewer_msg_en.ts
resources/QxSceneViewer_msg_fr.ts
resources/QxSceneViewer_msg_ja.ts
)
-ADD_DEFINITIONS(${QT_DEFINITIONS} ${CAS_DEFINITIONS} ${BOOST_DEFINITIONS} ${PYTHON_DEFINITIONS})
+# resource files / static
+SET(_other_RESOURCES
+ resources/qx_view_fitall.png
+ resources/qx_view_fitarea.png
+ resources/qx_view_glpan.png
+ resources/qx_view_pan.png
+ resources/qx_view_reset.png
+ resources/qx_view_zoom.png
+)
-ADD_LIBRARY(QxScene ${QxScene_SOURCES} ${GUI_HEADERS_MOC})
-TARGET_LINK_LIBRARIES(QxScene ${COMMON_LIBS})
-INSTALL(TARGETS QxScene EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
+# --- sources ---
-SET(COMMON_HEADERS_H
- QxScene_ViewWindow.h
- QxScene_ViewManager.h
- QxScene_ViewModel.h
- QxScene_Def.h
- QxScene.h
+# sources / moc wrappings
+QT4_WRAP_CPP(_moc_SOURCES ${_moc_HEADERS})
+
+# sources / static
+SET(_other_SOURCES
+ QxScene_ViewManager.cxx
+ QxScene_ViewModel.cxx
+ QxScene_ViewWindow.cxx
)
-INSTALL(FILES ${COMMON_HEADERS_H} DESTINATION ${SALOME_INSTALL_HEADERS})
-QT4_INSTALL_TS_RESOURCES("${GUITS_SOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
+# sources / to compile
+SET(QxScene_SOURCES ${_other_SOURCES} ${_moc_SOURCES})
+
+# --- rules ---
+
+ADD_LIBRARY(QxScene ${QxScene_SOURCES})
+TARGET_LINK_LIBRARIES(QxScene ${_link_LIBRARIES})
+INSTALL(TARGETS QxScene EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
+
+INSTALL(FILES ${QxScene_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
+QT4_INSTALL_TS_RESOURCES("${_ts_RESOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
-FILE(GLOB GUIPNG_DATA "${CMAKE_CURRENT_SOURCE_DIR}/resources/*.png")
-INSTALL(FILES ${GUIPNG_DATA} DESTINATION ${SALOME_GUI_INSTALL_RES_DATA})
+INSTALL(FILES ${_other_RESOURCES} DESTINATION ${SALOME_GUI_INSTALL_RES_DATA})
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
#
+# --- options ---
+
+# additional include directories
INCLUDE_DIRECTORIES(
${QT_INCLUDES}
- ${CMAKE_CURRENT_SOURCE_DIR}
${PROJECT_BINARY_DIR}
- ${CMAKE_CURRENT_SOURCE_DIR}/../Qtx
- ${CMAKE_CURRENT_SOURCE_DIR}/../SUIT
+ ${PROJECT_SOURCE_DIR}/src/Qtx
+ ${PROJECT_SOURCE_DIR}/src/SUIT
)
-SET(COMMON_LIBS qtx suit ${QT_LIBRARIES})
-
+# additional preprocessor / compiler flags
ADD_DEFINITIONS(${QT_DEFINITIONS})
+# libraries to link to
+SET(_link_LIBRARIES ${QT_LIBRARIES} qtx suit)
+
+# --- rules ---
+
ADD_EXECUTABLE(ResourceExporter ResourceExporter.cxx)
-TARGET_LINK_LIBRARIES(ResourceExporter SUITApp ${COMMON_LIBS})
+TARGET_LINK_LIBRARIES(ResourceExporter SUITApp ${_link_LIBRARIES})
INSTALL(TARGETS ResourceExporter EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_BINS})
-
INCLUDE(${VTK_USE_FILE})
+# --- options ---
+
+# additional include directories
INCLUDE_DIRECTORIES(
${CAS_INCLUDE_DIRS}
${QT_INCLUDES}
${PYTHON_INCLUDE_DIRS}
- ${Boost_INCLUDE_DIRS}
- ${PTHREAD_INCLUDE_DIRS}
- ${KERNEL_INCLUDE_DIRS}
- ${CMAKE_CURRENT_SOURCE_DIR}/../LightApp
- ${CMAKE_CURRENT_SOURCE_DIR}/../Event
- ${CMAKE_CURRENT_SOURCE_DIR}/../Session
- ${CMAKE_CURRENT_SOURCE_DIR}/../SVTK
- ${CMAKE_CURRENT_SOURCE_DIR}/../Qtx
- ${CMAKE_CURRENT_SOURCE_DIR}/../SUIT
- ${CMAKE_CURRENT_SOURCE_DIR}/../CAM
- ${CMAKE_CURRENT_SOURCE_DIR}/../STD
- ${CMAKE_CURRENT_SOURCE_DIR}/../VTKViewer
- ${CMAKE_CURRENT_SOURCE_DIR}/../OBJECT
+ ${PROJECT_SOURCE_DIR}/src/CAM
+ ${PROJECT_SOURCE_DIR}/src/Event
+ ${PROJECT_SOURCE_DIR}/src/LightApp
+ ${PROJECT_SOURCE_DIR}/src/OBJECT
+ ${PROJECT_SOURCE_DIR}/src/Qtx
+ ${PROJECT_SOURCE_DIR}/src/STD
+ ${PROJECT_SOURCE_DIR}/src/SUIT
+ ${PROJECT_SOURCE_DIR}/src/SVTK
+ ${PROJECT_SOURCE_DIR}/src/VTKViewer
+)
+
+# additional preprocessor / compiler flags
+ADD_DEFINITIONS(
+ ${CAS_DEFINITIONS}
+ ${QT_DEFINITIONS}
+ ${PYTHON_DEFINITIONS}
)
-SET(COMMON_LIBS
+# libraries to link to
+SET(_link_LIBRARIES
${PYTHON_LIBRARIES}
${QT_LIBRARIES}
- ${VTK_LIBRARIES}
${OPENGL_LIBRARIES}
+ ${VTK_LIBRARIES}
LightApp
- ${VTK_PYLIBS}
- # ${vtkCommonPythonD}
- # ${vtkGraphicsPythonD}
- # ${vtkImagingPythonD}
- # ${vtkPythonCore}
)
-IF(WINDOWS)
- ADD_DEFINITIONS("${CAS_DEFINITIONS} ${QT_DEFINITIONS} ${BOOST_DEFINITIONS} ${PYTHON_DEFINITIONS}")
-ELSE(WINDOWS)
- ADD_DEFINITIONS("-DHAVE_CONFIG_H ${CAS_DEFINITIONS} ${QT_DEFINITIONS} ${BOOST_DEFINITIONS} ${PYTHON_DEFINITIONS}")
-ENDIF(WINDOWS)
+
+# --- rules ---
ADD_LIBRARY(SalomePy SalomePy.cxx)
-TARGET_LINK_LIBRARIES(SalomePy ${COMMON_LIBS})
+TARGET_LINK_LIBRARIES(SalomePy ${_link_LIBRARIES})
INSTALL(TARGETS SalomePy DESTINATION ${SALOME_INSTALL_LIBS})
+# TODO: check on windows
IF(WINDOWS)
- IF(CMAKE_BUILD_TYPE STREQUAL Release)
- INSTALL(FILES ${CMAKE_INSTALL_PREFIX}/${SALOME_INSTALL_LIBS}/SalomePy.dll DESTINATION ${SALOME_INSTALL_LIBS} RENAME libSalomePy.pyd)
- ELSE(CMAKE_BUILD_TYPE STREQUAL Release)
- INSTALL(FILES ${CMAKE_INSTALL_PREFIX}/${SALOME_INSTALL_LIBS}/SalomePy.dll DESTINATION ${SALOME_INSTALL_LIBS} RENAME libSalomePy_d.pyd)
- ENDIF(CMAKE_BUILD_TYPE STREQUAL Release)
+ SET_TARGET_PROPERTIES(SalomePy PROPERTIES PREFIX "lib" SUFFIX ".pyd" DEBUG_OUTPUT_NAME SalomePy_d RELEASE_OUTPUT_NAME SalomePy)
ENDIF(WINDOWS)
+
+# TODO: check if PYTHON_ADD_MODULE() macro can be used to build this target
\ No newline at end of file
# 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.
+
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
INCLUDE(${VTK_USE_FILE})
+# --- options ---
+
+# additional include directories
INCLUDE_DIRECTORIES(
${CAS_INCLUDE_DIRS}
${QT_INCLUDES}
- ${PTHREAD_INCLUDE_DIRS}
- ${PYTHON_INCLUDE_DIRS}
${SIP_INCLUDE_DIRS}
- ${Boost_INCLUDE_DIRS}
${PYTHON_INCLUDE_DIRS}
+ ${Boost_INCLUDE_DIRS}
${OMNIORB_INCLUDE_DIR}
${KERNEL_INCLUDE_DIRS}
- ${CMAKE_CURRENT_SOURCE_DIR}
- ${CMAKE_CURRENT_SOURCE_DIR}/../../PyInterp
- ${CMAKE_CURRENT_SOURCE_DIR}/../../SalomeApp
- ${CMAKE_CURRENT_SOURCE_DIR}/../../SUIT
- ${CMAKE_CURRENT_SOURCE_DIR}/../../Qtx
- ${CMAKE_CURRENT_SOURCE_DIR}/../../LightApp
- ${CMAKE_CURRENT_SOURCE_DIR}/../SALOME_PYQT_GUILight
- ${CMAKE_CURRENT_SOURCE_DIR}/../../Plot2d
- ${CMAKE_CURRENT_SOURCE_DIR}/../../OCCViewer
- ${CMAKE_CURRENT_SOURCE_DIR}/../../SalomeApp
- ${CMAKE_CURRENT_SOURCE_DIR}/../../CAM
- ${CMAKE_CURRENT_SOURCE_DIR}/../../STD
+ ${PROJECT_SOURCE_DIR}/src/CAM
+ ${PROJECT_SOURCE_DIR}/src/LightApp
+ ${PROJECT_SOURCE_DIR}/src/PyInterp
+ ${PROJECT_SOURCE_DIR}/src/Qtx
+ ${PROJECT_SOURCE_DIR}/src/SALOME_PYQT/SALOME_PYQT_GUILight
+ ${PROJECT_SOURCE_DIR}/src/STD
+ ${PROJECT_SOURCE_DIR}/src/SUIT
+ ${PROJECT_SOURCE_DIR}/src/SalomeApp
+)
+
+# additional preprocessor / compiler flags
+ADD_DEFINITIONS(
+ "-DCALL_OLD_METHODS"
+ ${QT_DEFINITIONS}
+ ${CAS_DEFINITIONS}
+ ${PYTHON_DEFINITIONS}
+ ${BOOST_DEFINITIONS}
+ ${OMNIORB_DEFINITIONS}
)
-SET(COMMON_LIBS
+# libraries to link to
+SET(_link_LIBRARIES
${PYTHON_LIBRARIES}
- ${PYQT_LIBRARIES}
${VTK_LIBRARIES}
${OPENGL_LIBRARIES}
${PLATFORM_LIBS}
${OMNIORB_LIBRARIES}
- PyInterp
- SalomeApp
- OCCViewer
- Plot2d
- SalomePyQtGUILight
+ SalomePyQtGUILight SalomeApp
)
-SET(GUI_HEADERS SALOME_PYQT_Module.h)
-QT4_WRAP_CPP(GUI_HEADERS_MOC ${GUI_HEADERS})
+# --- headers ---
-IF(WINDOWS)
- ADD_DEFINITIONS("-DCALL_OLD_METHODS ${QT_DEFINITIONS} ${PYTHON_DEFINITIONS} ${CAS_DEFINITIONS} ${BOOST_DEFINITIONS} ${OMNIORB_DEFINITIONS}")
-ELSE(WINDOWS)
- ADD_DEFINITIONS("-DCALL_OLD_METHODS -DHAVE_CONFIG_H ${QT_DEFINITIONS} ${PYTHON_DEFINITIONS} ${CAS_DEFINITIONS} ${BOOST_DEFINITIONS} ${OMNIORB_DEFINITIONS}")
-ENDIF(WINDOWS)
+# header files / to be processed by moc
+SET(_moc_HEADERS SALOME_PYQT_Module.h)
+# header files / no moc processing
+SET(_other_HEADERS SALOME_PYQT_GUI.h)
-ADD_LIBRARY(SalomePyQtGUI SALOME_PYQT_Module.cxx ${GUI_HEADERS_MOC})
-TARGET_LINK_LIBRARIES(SalomePyQtGUI ${COMMON_LIBS})
-INSTALL(TARGETS SalomePyQtGUI DESTINATION ${SALOME_INSTALL_LIBS})
+# header files / to install
+SET(SalomePyQtGUI_HEADERS ${_moc_HEADERS} ${_other_HEADERS})
-SET(COMMON_HEADERS_H
- SALOME_PYQT_GUI.h
- SALOME_PYQT_Module.h
-)
+# --- sources ---
+
+# sources / moc wrappings
+QT4_WRAP_CPP(_moc_SOURCES ${_moc_HEADERS})
+
+# sources / static
+SET(_other_SOURCES SALOME_PYQT_Module.cxx)
+
+# sources / to compile
+SET(SalomePyQtGUI_SOURCES ${_other_SOURCES} ${_moc_SOURCES})
+
+# --- rules ---
+
+ADD_LIBRARY(SalomePyQtGUI ${SalomePyQtGUI_SOURCES})
+TARGET_LINK_LIBRARIES(SalomePyQtGUI ${_link_LIBRARIES})
+INSTALL(TARGETS SalomePyQtGUI DESTINATION ${SALOME_INSTALL_LIBS})
-INSTALL(FILES ${COMMON_HEADERS_H} DESTINATION ${SALOME_INSTALL_HEADERS})
+INSTALL(FILES ${SalomePyQtGUI_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
#
+INCLUDE(UsePyQt4)
INCLUDE(${VTK_USE_FILE})
+# --- options ---
+
+# additional include directories
INCLUDE_DIRECTORIES(
${CAS_INCLUDE_DIRS}
${QT_INCLUDES}
${SIP_INCLUDE_DIR}
- ${Boost_INCLUDE_DIRS}
${PYTHON_INCLUDE_DIRS}
- ${PTHREAD_INCLUDE_DIRS}
${KERNEL_INCLUDE_DIRS}
${CMAKE_CURRENT_BINARY_DIR}
- ${CMAKE_CURRENT_SOURCE_DIR}/../../PyInterp
- ${CMAKE_CURRENT_SOURCE_DIR}/../../PyConsole
- ${CMAKE_CURRENT_SOURCE_DIR}/../../SUIT
- ${CMAKE_CURRENT_SOURCE_DIR}/../../Qtx
- ${CMAKE_CURRENT_SOURCE_DIR}/../../LightApp
- ${CMAKE_CURRENT_SOURCE_DIR}/../../Plot2d
- ${CMAKE_CURRENT_SOURCE_DIR}/../../OCCViewer
- ${CMAKE_CURRENT_SOURCE_DIR}/../../CAM
- ${CMAKE_CURRENT_SOURCE_DIR}/../../STD
- ${CMAKE_CURRENT_SOURCE_DIR}/../../SUITApp
- ${CMAKE_CURRENT_SOURCE_DIR}/../../CAM
- ${CMAKE_CURRENT_SOURCE_DIR}/../../STD
- ${CMAKE_CURRENT_SOURCE_DIR}/../../Event
+ ${PROJECT_SOURCE_DIR}/src/CAM
+ ${PROJECT_SOURCE_DIR}/src/Event
+ ${PROJECT_SOURCE_DIR}/src/LightApp
+ ${PROJECT_SOURCE_DIR}/src/OCCViewer
+ ${PROJECT_SOURCE_DIR}/src/Plot2d
+ ${PROJECT_SOURCE_DIR}/src/PyConsole
+ ${PROJECT_SOURCE_DIR}/src/PyInterp
+ ${PROJECT_SOURCE_DIR}/src/Qtx
+ ${PROJECT_SOURCE_DIR}/src/STD
+ ${PROJECT_SOURCE_DIR}/src/SUIT
+ ${PROJECT_SOURCE_DIR}/src/SUITApp
)
-SET(COMMON_LIBS ${PYTHON_LIBRARIES} ${PYQT_LIBRARIES} ${VTK_LIBRARIES} ${OPENGL_LIBRARIES} PyInterp LightApp)
+# additional preprocessor / compiler flags
+ADD_DEFINITIONS(
+ "-DCALL_OLD_METHODS"
+ ${QT_DEFINITIONS}
+ ${CAS_DEFINITIONS}
+ ${PYTHON_DEFINITIONS}
+)
+IF(SALOME_LIGHT_ONLY)
+ ADD_DEFINITIONS("-DGUI_DISABLE_CORBA")
+ENDIF()
+# libraries to link to
+SET(_link_LIBRARIES
+ ${PYTHON_LIBRARIES}
+ ${VTK_LIBRARIES}
+ ${OPENGL_LIBRARIES}
+ LightApp
+)
IF(NOT SALOME_LIGHT_ONLY)
- INCLUDE_DIRECTORIES(
- ${CMAKE_CURRENT_SOURCE_DIR}/../../SalomeApp
- ${OMNIORB_INCLUDE_DIR}
- )
- SET(COMMON_LIBS ${COMMON_LIBS} SalomeApp ${SalomeContainer})
-ELSE(NOT SALOME_LIGHT_ONLY)
- SET(COMMON_FLAGS "${COMMON_FLAGS} -DGUI_DISABLE_CORBA")
-ENDIF(NOT SALOME_LIGHT_ONLY)
-
-SET(GUI_HEADERS SALOME_PYQT_PyModule.h SALOME_PYQT_ModuleLight.h SALOME_PYQT_DataModelLight.h)
-QT4_WRAP_CPP(GUI_HEADERS_MOC ${GUI_HEADERS})
-
-# extra source files (generated by sip)
-SET(SIP_SRC
- sipAPISalomePyQtGUILight.h
- sipSalomePyQtGUILightcmodule.cc
+ LIST(APPEND _link_LIBRARIES ${KERNEL_SalomeContainer})
+ENDIF()
+
+# --- headers ---
+
+# header files / to be processed by moc
+SET(_moc_HEADERS
+ SALOME_PYQT_DataModelLight.h
+ SALOME_PYQT_ModuleLight.h
+ SALOME_PYQT_PyModule.h
)
-# Sip definition file
-SET(SIP_FILES
- SALOME_PYQT_GUILight.sip
+
+# header files / no moc processing
+SET(_other_HEADERS
+ SALOME_PYQT_DataObjectLight.h
+ SALOME_PYQT_GUILight.h
+ SALOME_PYQT_PyInterp.h
)
-FOREACH(input ${SIP_FILES})
- SET(input ${CMAKE_CURRENT_SOURCE_DIR}/${input})
- SET(output)
- FOREACH(out ${SIP_SRC})
- SET(output ${output} ${CMAKE_CURRENT_BINARY_DIR}/${out})
- ENDFOREACH(out ${SIP_SRC})
- ADD_CUSTOM_COMMAND(
- OUTPUT ${output}
- COMMAND ${SIP_EXECUTABLE} ${PYQT_SIPFLAGS} ${input}
- MAIN_DEPENDENCY ${input}
- )
-ENDFOREACH(input ${SIP_FILES})
-
-
-SET(SalomePyQtGUI_SOURCES
- SALOME_PYQT_PyModule.cxx
- SALOME_PYQT_ModuleLight.cxx
- SALOME_PYQT_DataObjectLight.cxx
+
+# header files / to install
+SET(SalomePyQtGUILight_HEADERS ${_moc_HEADERS} ${_other_HEADERS})
+
+# --- resources ---
+
+# sip files / to be processed by sip
+SET(_sip_files SALOME_PYQT_GUILight.sip)
+
+# --- sources ---
+
+# sources / moc wrappings
+QT4_WRAP_CPP(_moc_SOURCES ${_moc_HEADERS})
+
+# sources / sip wrappings
+PYQT4_WRAP_SIP(_sip_SOURCES ${_sip_files})
+
+# sources / static
+SET(_other_SOURCES
SALOME_PYQT_DataModelLight.cxx
+ SALOME_PYQT_DataObjectLight.cxx
+ SALOME_PYQT_ModuleLight.cxx
SALOME_PYQT_PyInterp.cxx
+ SALOME_PYQT_PyModule.cxx
)
+# sources / to compile
+SET(SalomePyQtGUILight_SOURCES ${_other_SOURCES} ${_moc_SOURCES} ${_sip_SOURCES})
-IF(WINDOWS)
- ADD_DEFINITIONS( "-DCALL_OLD_METHODS ${QT_DEFINITIONS} ${CAS_DEFINITIONS} ${BOOST_DEFINITIONS} ${PYTHON_DEFINITIONS}")
-ELSE(WINDOWS)
- ADD_DEFINITIONS( "-DHAVE_CONFIG_H -DCALL_OLD_METHODS ${QT_DEFINITIONS} ${CAS_DEFINITIONS} ${BOOST_DEFINITIONS} ${PYTHON_DEFINITIONS}")
-ENDIF(WINDOWS)
+# --- rules ---
-
-ADD_LIBRARY(SalomePyQtGUILight ${SalomePyQtGUI_SOURCES} ${GUI_HEADERS_MOC} ${SIP_SRC})
-TARGET_LINK_LIBRARIES(SalomePyQtGUILight ${COMMON_LIBS})
+ADD_LIBRARY(SalomePyQtGUILight ${SalomePyQtGUILight_SOURCES})
+TARGET_LINK_LIBRARIES(SalomePyQtGUILight ${_link_LIBRARIES})
INSTALL(TARGETS SalomePyQtGUILight DESTINATION ${SALOME_INSTALL_LIBS})
-SET(COMMON_HEADERS_H
- SALOME_PYQT_GUILight.h
- SALOME_PYQT_ModuleLight.h
- SALOME_PYQT_DataObjectLight.h
- SALOME_PYQT_DataModelLight.h
- SALOME_PYQT_PyInterp.h
-)
-INSTALL(FILES ${COMMON_HEADERS_H} DESTINATION ${SALOME_INSTALL_HEADERS})
+INSTALL(FILES ${SalomePyQtGUILight_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
#
+INCLUDE(UsePyQt4)
INCLUDE(${VTK_USE_FILE})
+# --- options ---
+
+# additional include directories
INCLUDE_DIRECTORIES(
${CAS_INCLUDE_DIRS}
${QT_INCLUDES}
${SIP_INCLUDE_DIR}
${Boost_INCLUDE_DIRS}
${PYTHON_INCLUDE_DIRS}
- ${PTHREAD_INCLUDE_DIRS}
${KERNEL_INCLUDE_DIRS}
- ${CMAKE_CURRENT_BINARY_DIR}
${CMAKE_CURRENT_SOURCE_DIR}
- ${PROJECT_BINARY_DIR}/idl
- ${CMAKE_CURRENT_SOURCE_DIR}/../../SUIT
- ${CMAKE_CURRENT_SOURCE_DIR}/../../CAM
- ${CMAKE_CURRENT_SOURCE_DIR}/../../STD
- ${CMAKE_CURRENT_SOURCE_DIR}/../../Qtx
- ${CMAKE_CURRENT_SOURCE_DIR}/../../Event
- ${CMAKE_CURRENT_SOURCE_DIR}/../../LogWindow
- ${CMAKE_CURRENT_SOURCE_DIR}/../../VTKViewer
- ${CMAKE_CURRENT_SOURCE_DIR}/../../OCCViewer
- ${CMAKE_CURRENT_SOURCE_DIR}/../../Plot2d
- ${CMAKE_CURRENT_SOURCE_DIR}/../SALOME_PYQT_GUILight
- ${CMAKE_CURRENT_SOURCE_DIR}/../../PyInterp
- ${CMAKE_CURRENT_SOURCE_DIR}/../../LightApp
- ${CMAKE_CURRENT_SOURCE_DIR}/../../ObjBrowser
- ${CMAKE_CURRENT_SOURCE_DIR}/../../OBJECT
+ ${PROJECT_SOURCE_DIR}/src/CAM
+ ${PROJECT_SOURCE_DIR}/src/Event
+ ${PROJECT_SOURCE_DIR}/src/LightApp
+ ${PROJECT_SOURCE_DIR}/src/LogWindow
+ ${PROJECT_SOURCE_DIR}/src/OBJECT
+ ${PROJECT_SOURCE_DIR}/src/OCCViewer
+ ${PROJECT_SOURCE_DIR}/src/ObjBrowser
+ ${PROJECT_SOURCE_DIR}/src/Plot2d
+ ${PROJECT_SOURCE_DIR}/src/PyInterp
+ ${PROJECT_SOURCE_DIR}/src/Qtx
+ ${PROJECT_SOURCE_DIR}/src/SALOME_PYQT/SALOME_PYQT_GUILight
+ ${PROJECT_SOURCE_DIR}/src/STD
+ ${PROJECT_SOURCE_DIR}/src/SUIT
+)
+
+# additional preprocessor / compiler flags
+ADD_DEFINITIONS(
+ ${QWT_DEFINITIONS}
+ ${QT_DEFINITIONS}
+ ${CAS_DEFINITIONS}
+ ${BOOST_DEFINITIONS}
+ ${PYTHON_DEFINITIONS}
)
-SET(COMMON_LIBS
+
+# libraries to link to
+SET(_link_LIBRARIES
${PYTHON_LIBRARIES}
- ${SIP_LIBS}
- ${PYQT_LIBRARIES}
${VTK_LIBRARIES}
- ${QWT_LIBRARY}
${OPENGL_LIBRARIES}
- suit
- CAM
- std
- qtx
- Event
- LogWindow
- VTKViewer
+ ${QWT_LIBRARY}
SalomePyQtGUILight
- OCCViewer
- Plot2d
)
-SET(GUI_HEADERS SalomePyQt.h)
-QT4_WRAP_CPP(GUI_HEADERS_MOC ${GUI_HEADERS})
-
-# extra source files (generated by sip)
-SET(SIP_SRC
- sipAPISalomePyQt.h
- sipSalomePyQtSalomePyQt.cc
- sipSalomePyQtSALOME_Selection.cc
- sipSalomePyQtQtxAction.cc
- sipSalomePyQtQtxActionGroup.cc
- sipSalomePyQtQtxActionSet.cc
- sipSalomePyQtcmodule.cc
-)
-# Sip definition file
-SET(SIP_FILES
- SalomePyQt.sip
-)
-FOREACH(input ${SIP_FILES})
- SET(input ${CMAKE_CURRENT_SOURCE_DIR}/${input})
- SET(output)
- FOREACH(out ${SIP_SRC})
- SET(output ${output} ${CMAKE_CURRENT_BINARY_DIR}/${out})
- ENDFOREACH(out ${SIP_SRC})
- ADD_CUSTOM_COMMAND(
- OUTPUT ${output}
- COMMAND ${SIP_EXECUTABLE} ${PYQT_SIPFLAGS} ${input}
- MAIN_DEPENDENCY ${input}
- )
-ENDFOREACH(input ${SIP_FILES})
-
-SET(SalomePyQt_SOURCES SalomePyQt.cxx)
-
-# -DHAVE_CONFIG_H
-ADD_DEFINITIONS("${QWT_DEFINITIONS} ${QT_DEFINITIONS} ${CAS_DEFINITIONS} ${BOOST_DEFINITIONS} ${PYTHON_DEFINITIONS}")
-
-ADD_LIBRARY(SalomePyQt ${SalomePyQt_SOURCES} ${GUI_HEADERS_MOC} ${SIP_SRC})
-TARGET_LINK_LIBRARIES(SalomePyQt ${COMMON_LIBS})
+# --- headers ---
+
+# header files / to be processed by moc
+SET(_moc_HEADERS SalomePyQt.h)
+
+# --- resources ---
+
+# sip files / to be processed by sip
+SET(_sip_files SalomePyQt.sip)
+
+# --- sources ---
+
+# sources / moc wrappings
+QT4_WRAP_CPP(_moc_SOURCES ${_moc_HEADERS})
+
+# sources / sip wrappings
+PYQT4_WRAP_SIP(_sip_SOURCES ${_sip_files})
+
+# sources / static
+SET(_other_SOURCES SalomePyQt.cxx)
+
+# sources / to compile
+SET(SalomePyQt_SOURCES ${_other_SOURCES} ${_moc_SOURCES} ${_sip_SOURCES})
+
+# --- rules ---
+
+ADD_LIBRARY(SalomePyQt ${SalomePyQt_SOURCES})
+TARGET_LINK_LIBRARIES(SalomePyQt ${_link_LIBRARIES})
INSTALL(TARGETS SalomePyQt DESTINATION ${SALOME_INSTALL_LIBS})
IF(WINDOWS)
- IF(CMAKE_BUILD_TYPE STREQUAL Release)
- INSTALL(FILES ${CMAKE_INSTALL_PREFIX}/${SALOME_INSTALL_LIBS}/SalomePyQt.dll DESTINATION ${SALOME_INSTALL_LIBS} RENAME SalomePyQt.pyd)
- ELSE(CMAKE_BUILD_TYPE STREQUAL Release)
- INSTALL(FILES ${CMAKE_INSTALL_PREFIX}/${SALOME_INSTALL_LIBS}/SalomePyQt.dll DESTINATION ${SALOME_INSTALL_LIBS} RENAME SalomePyQt_d.pyd)
- ENDIF(CMAKE_BUILD_TYPE STREQUAL Release)
-ELSE(WINDOWS)
- INSTALL(CODE "EXECUTE_PROCESS(COMMAND ln -sf libSalomePyQt.so SalomePyQt.so
- WORKING_DIRECTORY ${CMAKE_INSTALL_PREFIX}/${SALOME_INSTALL_LIBS}
- OUTPUT_VARIABLE ln_res)" )
-ENDIF(WINDOWS)
+ SET_TARGET_PROPERTIES(SalomePyQt PROPERTIES SUFFIX ".pyd" DEBUG_OUTPUT_NAME SalomePyQt_d RELEASE_OUTPUT_NAME SalomePyQt)
+ELSE()
+ SET_TARGET_PROPERTIES(SalomePyQt PROPERTIES PREFIX "")
+ENDIF()
INCLUDE(${SWIG_USE_FILE})
INCLUDE(${VTK_USE_FILE})
-SET_SOURCE_FILES_PROPERTIES(libSALOME_Swig.i PROPERTIES CPLUSPLUS ON)
-SET_SOURCE_FILES_PROPERTIES(libSALOME_Swig.i PROPERTIES SWIG_DEFINITIONS "-shadow")
-SET_SOURCE_FILES_PROPERTIES(libSALOME_SwigPYTHON_wrap.cxx PROPERTIES COMPILE_FLAGS "-DHAVE_CONFIG_H")
+# --- options ---
+# additional include directories
INCLUDE_DIRECTORIES(
${PYTHON_INCLUDE_DIRS}
${CAS_INCLUDE_DIRS}
${QT_INCLUDES}
${QWT_INCLUDE_DIR}
- ${Boost_INCLUDE_DIRS}
- ${PTHREAD_INCLUDE_DIRS}
- ${CMAKE_CURRENT_SOURCE_DIR}
- ${PROJECT_BINARY_DIR}/salome_adm
- ${PROJECT_BINARY_DIR}/idl
${CMAKE_CURRENT_SOURCE_DIR}
- ${CMAKE_CURRENT_SOURCE_DIR}/../LightApp
- ${CMAKE_CURRENT_SOURCE_DIR}/../Qtx
- ${CMAKE_CURRENT_SOURCE_DIR}/../SUIT
- ${CMAKE_CURRENT_SOURCE_DIR}/../ObjBrowser
- ${CMAKE_CURRENT_SOURCE_DIR}/../LightApp
- ${CMAKE_CURRENT_SOURCE_DIR}/../SOCC
- ${CMAKE_CURRENT_SOURCE_DIR}/../SVTK
- ${CMAKE_CURRENT_SOURCE_DIR}/../Event
- ${CMAKE_CURRENT_SOURCE_DIR}/../OBJECT
- ${CMAKE_CURRENT_SOURCE_DIR}/../CAM
- ${CMAKE_CURRENT_SOURCE_DIR}/../STD
- ${CMAKE_CURRENT_SOURCE_DIR}/../OCCViewer
- ${CMAKE_CURRENT_SOURCE_DIR}/../Prs
- ${CMAKE_CURRENT_SOURCE_DIR}/../VTKViewer
- ${CMAKE_CURRENT_SOURCE_DIR}/../SPlot2d
- ${CMAKE_CURRENT_SOURCE_DIR}/../Plot2d
+ ${PROJECT_SOURCE_DIR}/src/CAM
+ ${PROJECT_SOURCE_DIR}/src/Event
+ ${PROJECT_SOURCE_DIR}/src/LightApp
+ ${PROJECT_SOURCE_DIR}/src/OBJECT
+ ${PROJECT_SOURCE_DIR}/src/OCCViewer
+ ${PROJECT_SOURCE_DIR}/src/Plot2d
+ ${PROJECT_SOURCE_DIR}/src/Prs
+ ${PROJECT_SOURCE_DIR}/src/Qtx
+ ${PROJECT_SOURCE_DIR}/src/SOCC
+ ${PROJECT_SOURCE_DIR}/src/STD
+ ${PROJECT_SOURCE_DIR}/src/SUIT
+ ${PROJECT_SOURCE_DIR}/src/SVTK
+ ${PROJECT_SOURCE_DIR}/src/SPlot2d
+ ${PROJECT_SOURCE_DIR}/src/VTKViewer
)
-ADD_DEFINITIONS(${PYTHON_DEFINITIONS} ${CAS_DEFINITIONS} ${QT_DEFINITIONS} ${QWT_DEFINITIONS} ${BOOST_DEFINITIONS})
-
-SWIG_ADD_MODULE(libSALOME_Swig python libSALOME_Swig.i SALOMEGUI_Swig.cxx)
-SWIG_LINK_LIBRARIES(libSALOME_Swig LightApp ${PYTHON_LIBRARIES})
+# swig flags
+SET_SOURCE_FILES_PROPERTIES(libSALOME_Swig.i PROPERTIES CPLUSPLUS ON)
+SET_SOURCE_FILES_PROPERTIES(libSALOME_Swig.i PROPERTIES SWIG_DEFINITIONS "-shadow")
+SET_SOURCE_FILES_PROPERTIES(libSALOME_SwigPYTHON_wrap.cxx PROPERTIES COMPILE_FLAGS "-DHAVE_CONFIG_H")
-IF(WINDOWS)
- SET_TARGET_PROPERTIES(_libSALOME_Swig PROPERTIES DEBUG_OUTPUT_NAME _libSALOME_Swig_d)
-ENDIF(WINDOWS)
+# additional preprocessor / compiler flags
+ADD_DEFINITIONS(${QT_DEFINITIONS} ${QWT_DEFINITIONS} ${CAS_DEFINITIONS} ${PYTHON_DEFINITIONS})
-INSTALL(TARGETS _libSALOME_Swig DESTINATION ${SALOME_INSTALL_PYTHON})
+# --- headers ---
-SET(COMMON_HEADERS
- libSALOME_Swig.i
+# header files / to install
+SET(libSALOME_Swig_HEADERS
SALOMEGUI_Swig.hxx
SALOMEGUI_Swig.i
+ libSALOME_Swig.i
)
-INSTALL(FILES ${COMMON_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
-INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/libSALOME_Swig.py DESTINATION ${SALOME_INSTALL_PYTHON})
-#
-# ===============================================================
-# Files to be installed
-# ===============================================================
-#
-SET(PYTHON_FILES
+# --- scripts ---
+
+# scripts / swig wrappings
+SET(_swig_SCRIPTS
+ ${CMAKE_CURRENT_BINARY_DIR}/libSALOME_Swig.py
+)
+
+# scripts / static
+SET(_other_SCRIPTS
examplevtk1.py
test_table.py
test_big_table.py
test_many_objects.py
test_remove_ref.py
)
-SALOME_INSTALL_SCRIPTS("${PYTHON_FILES}" ${SALOME_INSTALL_SCRIPT_DATA})
-SALOME_INSTALL_SCRIPTS("SALOMEGUI_shared_modules.py" ${SALOME_INSTALL_PYTHON_SHARED})
-CONFIGURE_FILE(supervisionexample.py.in supervisionexample.py @ONLY)
-CONFIGURE_FILE(supervisiongeomexample.py.in supervisiongeomexample.py @ONLY)
-SET(script_DATA
- ${CMAKE_CURRENT_BINARY_DIR}/libSALOME_Swig.py
- ${CMAKE_CURRENT_BINARY_DIR}/supervisionexample.py
- ${CMAKE_CURRENT_BINARY_DIR}/supervisiongeomexample.py
-)
-INSTALL(FILES ${script_DATA} DESTINATION ${SALOME_INSTALL_SCRIPT_DATA}
- PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
+# --- rules ---
+
+SWIG_ADD_MODULE(libSALOME_Swig python libSALOME_Swig.i SALOMEGUI_Swig.cxx)
+SWIG_LINK_LIBRARIES(libSALOME_Swig ${PYTHON_LIBRARIES} LightApp)
+IF(WINDOWS)
+ SET_TARGET_PROPERTIES(_libSALOME_Swig PROPERTIES DEBUG_OUTPUT_NAME _libSALOME_Swig_d)
+ENDIF(WINDOWS)
+
+INSTALL(TARGETS _libSALOME_Swig DESTINATION ${SALOME_INSTALL_PYTHON})
+
+SALOME_INSTALL_SCRIPTS("${_swig_SCRIPTS}" ${SALOME_INSTALL_PYTHON})
+SALOME_INSTALL_SCRIPTS("${_other_SCRIPTS}" ${SALOME_INSTALL_SCRIPT_DATA})
+SALOME_INSTALL_SCRIPTS(SALOMEGUI_shared_modules.py ${SALOME_INSTALL_PYTHON_SHARED})
+
+INSTALL(FILES ${libSALOME_Swig_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
+++ /dev/null
-# Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-#
-# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-#
-# 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.
-#
-# 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
-#
-
-#==============================================================================
-# File : supervisionexample.py
-# Created : 23 nov 2001
-# Author : Jean Rahuel
-# Project : SALOME
-#==============================================================================
-#
-from SuperV import *
-
-
-
-# load this object with Nodes, Links and Datas stored in GraphEssai.xml
-# (GraphEssai.xml was created with python in SuperVisionTest and GraphEssai.py)
-myGraph = Graph("@ROOT_BUILDDIR@/share/salome/resources/superv/GraphEssai.xml")
-
-#myGraph = Graph("/home/data/jr_HEAD/build/share/salome/resources/superv/GraphEssai.xml")
-# This DataFlow is "valid" : no loop, correct links between Nodes etc...
-
-print myGraph.IsValid()
-
-# Get Nodes
-myGraph.PrintNodes()
-Add,Sub,Mul,Div = myGraph.Nodes()
-
-# Load Datas
-Addx = Add.Input("x",3.)
-Addy = Add.Input("y",4.5)
-Subx = Sub.Input("x",1.5)
-
-# Get Output Port
-Addz = Add.Port('z')
-Subz = Sub.Port('z')
-Mulz = Mul.Port('z')
-Divz = Div.Port('z')
-
-# This DataFlow is "executable" : all pending Ports are defined with Datas
-print myGraph.IsExecutable()
-
-# Starts only execution of that DataFlow and gets control immediatly
-print myGraph.Run()
-
-# That DataFlow is running ==> 0 (false)
-print myGraph.IsDone()
-
-# Events of execution :
-aStatus,aNode,anEvent,aState = myGraph.Event()
-while aStatus :
- print aNode.Thread(),aNode.SubGraph(),aNode.Name(),anEvent,aState
- aStatus,aNode,anEvent,aState = myGraph.Event()
-print myGraph.IsDone()
-
-# Wait for Completion (but it is already done after event loop ...)
-print "Done : ",myGraph.DoneW()
-
-# Get result
-print "Result : ",Divz.ToString()
-
-# Intermediate results :
-print "Intermediate Result Add\z : ",Addz.ToString()
-print "Intermediate Result Sub\z : ",Subz.ToString()
-print "Intermediate Result Mul\z : ",Mulz.ToString()
-
-print " "
-print "Type : print myGraph.IsDone()"
-print " If execution is finished ==> 1 (true)"
-print " "
-print "Type : print Divz.ToString()"
-print " You will get the result"
-print " "
-print "Type : myGraph.PrintPorts()"
-print " to see input and output values of the graph"
-print " "
-print "Type : Add.PrintPorts()"
-print "Type : Sub.PrintPorts()"
-print "Type : Mul.PrintPorts()"
-print "Type : Div.PrintPorts()"
-print " to see input and output values of nodes"
-
-# Export will create newsupervisionexample.xml and the corresponding .py file
-print myGraph.Export("@ROOT_BUILDDIR@/share/salome/resources/superv/newsupervisionexample.xml")
-
-print " "
-print "See file @ROOT_BUILDDIR@/share/salome/resources/superv/newsupervisionexample.xml"
-print "See file @ROOT_BUILDDIR@/share/salome/resources/superv/newsupervisionexample.py"
+++ /dev/null
-# Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-#
-# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-#
-# 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.
-#
-# 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
-#
-
-# Generated python file of Graph GraphGeom2Essai
-#
-from SuperV import *
-
-import salome
-
-import geompy
-
-
-geom = lcc.FindOrLoadComponent("FactoryServer", "Geometry")
-geom.GetCurrentStudy(salome.myStudyId)
-
-myBuilder = salome.myStudy.NewBuilder()
-
-# Graph creation
-GraphGeom2Essai = Graph( 'GraphGeom2Essai' )
-print GraphGeom2Essai.SetAuthor( '' )
-print GraphGeom2Essai.SetComment( '' )
-GraphGeom2Essai.Coords( 0 , 0 )
-
-# Creation of Nodes
-MakeSphere = GraphGeom2Essai.Node( 'Geometry' , 'Geometry' , 'MakeSphere' )
-print MakeSphere.SetAuthor( '' )
-print MakeSphere.SetContainer( 'FactoryServer' )
-print MakeSphere.SetComment( '' )
-MakeSphere.Coords( 26 , 13 )
-MakeCopy = GraphGeom2Essai.Node( 'Geometry' , 'Geometry' , 'MakeCopy' )
-print MakeCopy.SetAuthor( '' )
-print MakeCopy.SetContainer( 'FactoryServer' )
-print MakeCopy.SetComment( '' )
-MakeCopy.Coords( 219 , 12 )
-MakeTranslation = GraphGeom2Essai.Node( 'Geometry' , 'Geometry' , 'MakeTranslation' )
-print MakeTranslation.SetAuthor( '' )
-print MakeTranslation.SetContainer( 'FactoryServer' )
-print MakeTranslation.SetComment( '' )
-MakeTranslation.Coords( 219 , 159 )
-MakeFuse = GraphGeom2Essai.Node( 'Geometry' , 'Geometry' , 'MakeFuse' )
-print MakeFuse.SetAuthor( '' )
-print MakeFuse.SetContainer( 'FactoryServer' )
-print MakeFuse.SetComment( '' )
-MakeFuse.Coords( 465 , 106 )
-
-# Creation of intermediate Output variables and of links
-MakeSphereshape = MakeSphere.Port( 'shape' )
-MakeCopyshape1 = GraphGeom2Essai.Link( MakeSphereshape , MakeCopy.Port( 'shape1' ) )
-MakeTranslationshape1 = GraphGeom2Essai.Link( MakeSphereshape , MakeTranslation.Port( 'shape1' ) )
-MakeCopyshape = MakeCopy.Port( 'shape' )
-MakeFuseshape1 = GraphGeom2Essai.Link( MakeCopyshape , MakeFuse.Port( 'shape1' ) )
-MakeTranslationshape = MakeTranslation.Port( 'shape' )
-MakeFuseshape2 = GraphGeom2Essai.Link( MakeTranslationshape , MakeFuse.Port( 'shape2' ) )
-
-# Creation of Input datas
-MakeSpherex1 = MakeSphere.Input( 'x1' , 0)
-MakeSpherey1 = MakeSphere.Input( 'y1' , 0)
-MakeSpherez1 = MakeSphere.Input( 'z1' , 0)
-MakeSphereradius = MakeSphere.Input( 'radius' , 50)
-MakeTranslationx1 = MakeTranslation.Input( 'x1' , 80)
-MakeTranslationy1 = MakeTranslation.Input( 'y1' , 0)
-MakeTranslationz1 = MakeTranslation.Input( 'z1' , 0)
-
-# Missing Input datas : None
-
-# Creation of Output variables
-MakeFuseshape = MakeFuse.Port( 'shape' )
-
-# State of Ports of the Graph
-GraphGeom2Essai.PrintPorts()
-
-# Start asynchronous run
-print GraphGeom2Essai.Run()
-
-# Done ?
-print GraphGeom2Essai.IsDone()
-
-# Events of execution :
-aStatus,aNode,anEvent,aState = GraphGeom2Essai.Event()
-while aStatus :
- print aNode.Thread(),aNode.SubGraph(),aNode.Name(),anEvent,aState
- aStatus,aNode,anEvent,aState = GraphGeom2Essai.Event()
-print GraphGeom2Essai.IsDone()
-
-# Waiting end of execution :
-print GraphGeom2Essai.DoneW()
-
-print " "
-print "Type print GraphGeom2Essai.IsDone()"
-print "1 <==> It's done"
-print " "
-print "Type print GraphGeom2Essai.DoneW()"
-print "Wait until end of execution : 1(success)"
-print " "
-print "Type GraphGeom2Essai.PrintPorts()"
-print " to see input and output values of the graph"
-print " "
-print "Type MakeSphere.PrintPorts()"
-print "Type MakeCopy.PrintPorts()"
-print "Type MakeTranslation.PrintPorts()"
-print "Type MakeFuse.PrintPorts()"
-print " to see input and output values of nodes"
-print " "
-print "Type print GraphGeom2Essai.Export('File-Name')"
-print "You will get a .py and a .xml file of this graph"
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
#
+INCLUDE(UseQt4Ext)
+
+# --- options ---
+
+# additional include directories
INCLUDE_DIRECTORIES(
${CAS_INCLUDE_DIRS}
${QT_INCLUDES}
- ${Boost_INCLUDE_DIRS}
- ${PTHREAD_INCLUDE_DIRS}
${KERNEL_INCLUDE_DIRS}
- ${CMAKE_CURRENT_SOURCE_DIR}/../SUIT
- ${CMAKE_CURRENT_SOURCE_DIR}/../OBJECT
- ${CMAKE_CURRENT_SOURCE_DIR}/../Prs
- ${CMAKE_CURRENT_SOURCE_DIR}/../OCCViewer
- ${CMAKE_CURRENT_SOURCE_DIR}/../Qtx
+ ${PROJECT_SOURCE_DIR}/src/Qtx
+ ${PROJECT_SOURCE_DIR}/src/SUIT
+ ${PROJECT_SOURCE_DIR}/src/OBJECT
+ ${PROJECT_SOURCE_DIR}/src/Prs
+ ${PROJECT_SOURCE_DIR}/src/OCCViewer
+)
+
+# additional preprocessor / compiler flags
+ADD_DEFINITIONS(${QT_DEFINITIONS} ${CAS_DEFINITIONS} ${OGL_DEFINITIONS})
+
+# libraries to link to
+SET(_link_LIBRARIES
+ ${QT_LIBRARIES} ${CAS_KERNEL} ${CAS_VIEWER}
+ qtx suit SalomeObject SalomePrs OCCViewer
)
-SET(COMMON_LIBS ${QT_LIBRARIES} qtx suit SalomeObject SalomePrs OCCViewer)
+# --- headers ---
-SET(GUI_HEADERS
+# header files / to be processed by moc
+SET(_moc_HEADERS
SOCC_ViewModel.h
SOCC_ViewWindow.h
)
-QT4_WRAP_CPP(GUI_HEADERS_MOC ${GUI_HEADERS})
-SET(SOCC_SOURCES
- SOCC_ViewModel.cxx
+# header files / no moc processing
+SET(_other_HEADERS
+ SOCC.h
+ SOCC_Prs.h
+)
+
+# header files / to install
+SET(SOCC_HEADERS ${_moc_HEADERS} ${_other_HEADERS})
+
+# --- sources ---
+
+# sources / moc wrappings
+QT4_WRAP_CPP(_moc_SOURCES ${_moc_HEADERS})
+
+# sources / static
+SET(_other_SOURCES
SOCC_Prs.cxx
+ SOCC_ViewModel.cxx
SOCC_ViewWindow.cxx
)
-ADD_DEFINITIONS(${QT_DEFINITIONS} ${CAS_DEFINITIONS} ${BOOST_DEFINITIONS})
+# sources / to compile
+SET(SOCC_SOURCES ${_other_SOURCES} ${_moc_SOURCES})
-ADD_LIBRARY(SOCC ${SOCC_SOURCES} ${GUI_HEADERS_MOC})
-TARGET_LINK_LIBRARIES(SOCC ${COMMON_LIBS})
-INSTALL(TARGETS SOCC EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
+# --- rules ---
-SET(COMMON_HEADERS_H
- SOCC.h
- SOCC_ViewModel.h
- SOCC_Prs.h
- SOCC_ViewWindow.h
-)
+ADD_LIBRARY(SOCC ${SOCC_SOURCES})
+TARGET_LINK_LIBRARIES(SOCC ${_link_LIBRARIES})
+INSTALL(TARGETS SOCC EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
-INSTALL(FILES ${COMMON_HEADERS_H} DESTINATION ${SALOME_INSTALL_HEADERS})
+INSTALL(FILES ${SOCC_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
#
+INCLUDE(UseQt4Ext)
+
+# --- options ---
+
+# additional include directories
INCLUDE_DIRECTORIES(
${CAS_INCLUDE_DIRS}
${QT_INCLUDES}
- ${Boost_INCLUDE_DIRS}
${QWT_INCLUDE_DIR}
- ${PTHREAD_INCLUDE_DIRS}
- ${KERNEL_INCLUDE_DIRS}
- ${CMAKE_CURRENT_SOURCE_DIR}/../Qtx
- ${CMAKE_CURRENT_SOURCE_DIR}/../SUIT
- ${CMAKE_CURRENT_SOURCE_DIR}/../Plot2d
- ${CMAKE_CURRENT_SOURCE_DIR}/../Prs
- ${CMAKE_CURRENT_SOURCE_DIR}/../OBJECT
+ ${PROJECT_SOURCE_DIR}/src/Qtx
+ ${PROJECT_SOURCE_DIR}/src/SUIT
+ ${PROJECT_SOURCE_DIR}/src/Plot2d
+ ${PROJECT_SOURCE_DIR}/src/Prs
+ ${PROJECT_SOURCE_DIR}/src/OBJECT
)
-ADD_DEFINITIONS("${QT_DEFINITIONS} ${CAS_DEFINITIONS} ${BOOST_DEFINITIONS} ${QWT_DEFINITIONS}")
-SET(COMMON_LIBS suit Plot2d SalomePrs SalomeObject)
+# additional preprocessor / compiler flags
+ADD_DEFINITIONS(${QT_DEFINITIONS} ${QWT_DEFINITIONS} ${CAS_DEFINITIONS})
+
+# libraries to link to
+SET(_link_LIBRARIES ${QT_LIBRARIES} ${QWT_LIBRARY} qtx suit Plot2d SalomePrs SalomeObject)
-SET(GUI_HEADERS
+# --- headers ---
+
+# header files / to be processed by moc
+SET(_moc_HEADERS
SPlot2d_ViewModel.h
SPlot2d_ViewWindow.h
)
-QT4_WRAP_CPP(GUI_HEADERS_MOC ${GUI_HEADERS})
-SET(SPlot2d_SOURCES
+# header files / no moc processing
+SET(_other_HEADERS
+ SPlot2d.h
+ SPlot2d_Curve.h
+ SPlot2d_Histogram.h
+ SPlot2d_Prs.h
+)
+
+# header files / to install
+SET(SPlot2d_HEADERS ${_moc_HEADERS} ${_other_HEADERS})
+
+# --- sources ---
+
+# sources / moc wrappings
+QT4_WRAP_CPP(_moc_SOURCES ${_moc_HEADERS})
+
+# sources / static
+SET(_other_SOURCES
SPlot2d_Curve.cxx
SPlot2d_Histogram.cxx
SPlot2d_Prs.cxx
SPlot2d_ViewWindow.cxx
)
-ADD_LIBRARY(SPlot2d ${SPlot2d_SOURCES} ${GUI_HEADERS_MOC})
-TARGET_LINK_LIBRARIES(SPlot2d ${COMMON_LIBS})
-INSTALL(TARGETS SPlot2d EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
+# sources / to compile
+SET(SPlot2d_SOURCES ${_other_SOURCES} ${_moc_SOURCES})
-SET(COMMON_HEADERS_H
- SPlot2d.h
- SPlot2d_Curve.h
- SPlot2d_Histogram.h
- SPlot2d_Prs.h
- SPlot2d_ViewModel.h
- SPlot2d_ViewWindow.h
-)
+# --- rules ---
+
+ADD_LIBRARY(SPlot2d ${SPlot2d_SOURCES})
+TARGET_LINK_LIBRARIES(SPlot2d ${_link_LIBRARIES})
+INSTALL(TARGETS SPlot2d EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
-INSTALL(FILES ${COMMON_HEADERS_H} DESTINATION ${SALOME_INSTALL_HEADERS})
+INSTALL(FILES ${SPlot2d_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
INCLUDE(UseQt4Ext)
+# --- options ---
+
+# additional include directories
INCLUDE_DIRECTORIES(
${QT_INCLUDES}
- ${KERNEL_INCLUDE_DIRS}
- ${CMAKE_CURRENT_SOURCE_DIR}/../Qtx
- ${CMAKE_CURRENT_SOURCE_DIR}/../SUIT
+ ${PROJECT_SOURCE_DIR}/src/Qtx
+ ${PROJECT_SOURCE_DIR}/src/SUIT
)
-SET(COMMON_LIBS ${QT_LIBRARIES} suit qtx)
+# additional preprocessor / compiler flags
+ADD_DEFINITIONS(${QT_DEFINITIONS})
+
+# libraries to link to
+SET(_link_LIBRARIES ${QT_LIBRARIES} qtx suit)
+
+# --- headers ---
-SET(GUI_HEADERS
+# header files / to be processed by moc
+SET(_moc_HEADERS
STD_Application.h
STD_MDIDesktop.h
STD_SDIDesktop.h
STD_TabDesktop.h
)
-QT4_WRAP_CPP(GUI_HEADERS_MOC ${GUI_HEADERS})
-SET(std_SOURCES
- STD_Application.cxx
- STD_MDIDesktop.cxx
- STD_SDIDesktop.cxx
- STD_TabDesktop.cxx
-)
+# header files / no moc processing
+SET(_other_HEADERS STD.h)
+
+# header files / to install
+SET(std_HEADERS ${_moc_HEADERS} ${_other_HEADERS})
+
+# --- resources ---
-SET(GUITS_SOURCES
+# resource files / to be processed by lrelease
+SET(_ts_RESOURCES
resources/STD_images.ts
resources/STD_msg_en.ts
resources/STD_msg_fr.ts
resources/STD_msg_ja.ts
)
-ADD_DEFINITIONS(${QT_DEFINITIONS})
+# resource files / static
+SET(_other_RESOURCES
+ resources/cascade.png
+ resources/close.png
+ resources/copy.png
+ resources/cut.png
+ resources/delete.png
+ resources/help.png
+ resources/htile.png
+ resources/new.png
+ resources/open.png
+ resources/paste.png
+ resources/print.png
+ resources/redo.png
+ resources/reset.png
+ resources/save.png
+ resources/std.ini
+ resources/undo.png
+ resources/vtile.png
+)
-ADD_LIBRARY(std ${std_SOURCES} ${GUI_HEADERS_MOC})
-TARGET_LINK_LIBRARIES(std ${COMMON_LIBS})
-INSTALL(TARGETS std EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
+# --- sources ---
-SET(COMMON_HEADERS_H
- STD.h
- STD_Application.h
- STD_MDIDesktop.h
- STD_SDIDesktop.h
- STD_TabDesktop.h
+# sources / moc wrappings
+QT4_WRAP_CPP(_moc_SOURCES ${_moc_HEADERS})
+
+# sources / static
+SET(_other_SOURCES
+ STD_Application.cxx
+ STD_MDIDesktop.cxx
+ STD_SDIDesktop.cxx
+ STD_TabDesktop.cxx
)
-INSTALL(FILES ${COMMON_HEADERS_H} DESTINATION ${SALOME_INSTALL_HEADERS})
-QT4_INSTALL_TS_RESOURCES("${GUITS_SOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
+# sources / to compile
+SET(std_SOURCES ${_other_SOURCES} ${_moc_SOURCES})
+
+# --- rules ---
+
+ADD_LIBRARY(std ${std_SOURCES})
+TARGET_LINK_LIBRARIES(std ${_link_LIBRARIES})
+INSTALL(TARGETS std EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
+
+INSTALL(FILES ${std_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
+QT4_INSTALL_TS_RESOURCES("${_ts_RESOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
-FILE(GLOB GUIPNG_DATA "${CMAKE_CURRENT_SOURCE_DIR}/resources/*.png")
-SET(GUIPNG_DATA ${GUIPNG_DATA} ${CMAKE_CURRENT_SOURCE_DIR}/resources/std.ini)
-INSTALL(FILES ${GUIPNG_DATA} DESTINATION ${SALOME_GUI_INSTALL_RES_DATA})
+INSTALL(FILES ${_other_RESOURCES} DESTINATION ${SALOME_GUI_INSTALL_RES_DATA})
INCLUDE(UseQt4Ext)
+# --- options ---
+
+# additional include directories
INCLUDE_DIRECTORIES(
${QT_INCLUDES}
- ${CMAKE_CURRENT_SOURCE_DIR}
- ${CMAKE_CURRENT_SOURCE_DIR}/../Qtx
- ${CMAKE_CURRENT_SOURCE_DIR}/../ObjBrowser
+ ${PROJECT_SOURCE_DIR}/src/Qtx
+ ${PROJECT_SOURCE_DIR}/src/ObjBrowser
)
-SET(COMMON_LIBS
- qtx
- ObjBrowser
- ${QT_LIBRARIES}
- ${PLATFORM_LIBS}
-)
+# additional preprocessor / compiler flags
+ADD_DEFINITIONS(${QT_DEFINITIONS})
IF(ENABLE_TESTRECORDER)
ADD_DEFINITIONS("-DENABLE_TESTRECORDER ${TESTRECORDER_DEFINITIONS}")
- SET(COMMON_LIBS ${COMMON_LIBS} ${TESTRECORDER_LIBS})
-ENDIF(ENABLE_TESTRECORDER)
+ENDIF()
+
+# libraries to link to
+SET(_link_LIBRARIES ${PLATFORM_LIBS} ${QT_LIBRARIES} qtx ObjBrowser)
+IF(ENABLE_TESTRECORDER)
+ LIST(APPEND _link_LIBRARIES ${TESTRECORDER_LIBS})
+ENDIF()
+
+# --- headers ---
-SET(GUI_HEADERS
+# header files / to be processed by moc
+SET(_moc_HEADERS
SUIT_Accel.h
SUIT_ActionOperation.h
SUIT_Application.h
SUIT_DataBrowser.h
SUIT_DataObject.h
SUIT_Desktop.h
- SUIT_LicenseDlg.h
SUIT_FileDlg.h
+ SUIT_LicenseDlg.h
+ SUIT_MessageBox.h
SUIT_Operation.h
SUIT_PopupClient.h
SUIT_PreferenceMgr.h
SUIT_SelectionMgr.h
- SUIT_Selector.h
SUIT_Session.h
+ SUIT_ShortcutMgr.h
SUIT_Study.h
SUIT_TreeModel.h
SUIT_ViewManager.h
SUIT_ViewModel.h
SUIT_ViewWindow.h
- SUIT_ShortcutMgr.h
+)
+
+# header files / no moc processing
+SET(_other_HEADERS
+ SUIT.h
SUIT_CameraProperties.h
+ SUIT_DataObjectIterator.h
+ SUIT_DataObjectKey.h
+ SUIT_DataOwner.h
+ SUIT_ExceptionHandler.h
+ SUIT_FileValidator.h
+ SUIT_OverrideCursor.h
+ SUIT_ResourceMgr.h
+ SUIT_SelectionFilter.h
+ SUIT_Selector.h
+ SUIT_SmartPtr.h
+ SUIT_Tools.h
+ SUIT_TreeSync.h
+)
+
+# header files / to install
+SET(suit_HEADERS ${_moc_HEADERS} ${_other_HEADERS})
+
+# --- resources ---
+
+# resource files / to be processed by lrelease
+SET(_ts_RESOURCES
+ resources/SUIT_msg_en.ts
+ resources/SUIT_msg_fr.ts
+ resources/SUIT_msg_ja.ts
+ resources/SUIT_images.ts
+)
+
+# resource files / static
+SET(_other_RESOURCES
+ resources/icon_visibility_on.png
+ resources/icon_visibility_off.png
+ resources/view_sync.png
)
-QT4_WRAP_CPP(GUI_HEADERS_MOC ${GUI_HEADERS})
-SET(suit_SOURCES
+# --- sources ---
+
+# sources / moc wrappings
+QT4_WRAP_CPP(_moc_SOURCES ${_moc_HEADERS})
+
+# sources / static
+SET(_other_SOURCES
SUIT_Accel.cxx
SUIT_ActionOperation.cxx
SUIT_Application.cxx
+ SUIT_CameraProperties.cxx
SUIT_DataBrowser.cxx
SUIT_DataObject.cxx
SUIT_DataObjectIterator.cxx
SUIT_Desktop.cxx
SUIT_ExceptionHandler.cxx
SUIT_FileDlg.cxx
- SUIT_LicenseDlg.cxx
SUIT_FileValidator.cxx
+ SUIT_LicenseDlg.cxx
SUIT_MessageBox.cxx
SUIT_Operation.cxx
SUIT_OverrideCursor.cxx
SUIT_SelectionMgr.cxx
SUIT_Selector.cxx
SUIT_Session.cxx
+ SUIT_ShortcutMgr.cxx
SUIT_Study.cxx
SUIT_Tools.cxx
SUIT_TreeModel.cxx
SUIT_ViewManager.cxx
SUIT_ViewModel.cxx
SUIT_ViewWindow.cxx
- SUIT_ShortcutMgr.cxx
- SUIT_CameraProperties.cxx
-)
-SET(GUITS_SOURCES
- resources/SUIT_msg_en.ts
- resources/SUIT_msg_fr.ts
- resources/SUIT_msg_ja.ts
- resources/SUIT_images.ts
)
-ADD_LIBRARY(suit ${suit_SOURCES} ${GUI_HEADERS_MOC})
-TARGET_LINK_LIBRARIES(suit ${COMMON_LIBS})
+# sources / to compile
+SET(suit_SOURCES ${_other_SOURCES} ${_moc_SOURCES})
+
+# --- rules ---
+
+ADD_LIBRARY(suit ${suit_SOURCES})
+TARGET_LINK_LIBRARIES(suit ${_link_LIBRARIES})
INSTALL(TARGETS suit EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
-FILE(GLOB COMMON_HEADERS_H "${CMAKE_CURRENT_SOURCE_DIR}/*.h")
-INSTALL(FILES ${COMMON_HEADERS_H} DESTINATION ${SALOME_INSTALL_HEADERS})
-QT4_INSTALL_TS_RESOURCES("${GUITS_SOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
+INSTALL(FILES ${suit_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
+QT4_INSTALL_TS_RESOURCES("${_ts_RESOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
-FILE(GLOB GUIPNG_DATA "${CMAKE_CURRENT_SOURCE_DIR}/resources/*.png")
-INSTALL(FILES ${GUIPNG_DATA} DESTINATION ${SALOME_GUI_INSTALL_RES_DATA})
+INSTALL(FILES ${_other_RESOURCES} DESTINATION ${SALOME_GUI_INSTALL_RES_DATA})
class SUIT_EXPORT SUIT_MessageBox : public QMessageBox
{
+ Q_OBJECT
public:
// construction/destruction
SUIT_MessageBox( QWidget* = 0 );
INCLUDE(UseQt4Ext)
+# --- options ---
+
+# additional include directories
INCLUDE_DIRECTORIES(
${QT_INCLUDES}
- ${PTHREAD_INCLUDE_DIRS}
${PYTHON_INCLUDE_DIRS}
- ${CMAKE_CURRENT_SOURCE_DIR}
${PROJECT_BINARY_DIR}
- ${CMAKE_CURRENT_SOURCE_DIR}/../Qtx
- ${CMAKE_CURRENT_SOURCE_DIR}/../SUIT
- ${CMAKE_CURRENT_SOURCE_DIR}/../Style
+ ${PROJECT_SOURCE_DIR}/src/Qtx
+ ${PROJECT_SOURCE_DIR}/src/SUIT
+ ${PROJECT_SOURCE_DIR}/src/Style
)
+# additional preprocessor / compiler flags
+ADD_DEFINITIONS(${QT_DEFINITIONS} ${PYTHON_DEFINITIONS})
+IF(SALOME_USE_PYCONSOLE)
+ ADD_DEFINITIONS("-DSUIT_ENABLE_PYTHON")
+ENDIF()
+IF(ENABLE_TESTRECORDER)
+ ADD_DEFINITIONS("-DENABLE_TESTRECORDER ${TESTRECORDER_DEFINITIONS}")
+ENDIF()
+
+# libraries to link to
+SET(_link_LIBRARIES ${PLATFORM_LIBS} ${QT_LIBRARIES} qtx suit SalomeStyle)
+IF(SALOME_USE_PYCONSOLE)
+ LIST(APPEND _link_LIBRARIES ${PYTHON_LIBRARIES})
+ENDIF()
+IF(ENABLE_TESTRECORDER)
+ LIST(APPEND _link_LIBRARIES ${TESTRECORDER_LIBS})
+ENDIF()
+# --- headers ---
-SET(COMMON_LIBS
- qtx
- suit
- SalomeStyle
- ${QT_LIBRARIES}
+# header files / to be processed by moc
+SET(_moc_HEADERS
+ SUITApp_Application.h
)
-SET(GUI_HEADERS SUITApp_Application.h)
-QT4_WRAP_CPP(GUI_HEADERS_MOC ${GUI_HEADERS})
-
-SET(SUITApp_SOURCES
- SUITApp.cxx
- SUITApp_Application.cxx
+# header files / internal
+# no processing currently: TODO: check for MSVS project
+SET(_internal_HEADERS
+ SUITApp_init_python.hxx
)
-SET(COMMON_HEADERS_HXX)
+
+# header files / no moc processing
IF(SALOME_USE_PYCONSOLE)
- SET(COMMON_HEADERS_HXX
- ${COMMON_HEADERS_HXX}
- SUITApp_init_python.hxx
- )
- SET(SUITApp_SOURCES
- ${SUITApp_SOURCES}
- SUITApp_init_python.cxx
- )
- SET(COMMON_LIBS
- ${COMMON_LIBS}
- ${PYTHON_LIBRARIES}
- )
- ADD_DEFINITIONS("-DSUIT_ENABLE_PYTHON")
-ENDIF(SALOME_USE_PYCONSOLE)
+ SET(_other_HEADERS SUITApp_init_python.hxx)
+ENDIF()
-IF(ENABLE_TESTRECORDER)
- ADD_DEFINITIONS("-DENABLE_TESTRECORDER ${TESTRECORDER_DEFINITIONS}")
- SET(COMMON_LIBS
- ${COMMON_LIBS}
- ${TESTRECORDER_LIBS}
- )
-ENDIF(ENABLE_TESTRECORDER)
+# header files / to install
+SET(SUITApp_HEADERS ${_moc_HEADERS} ${_other_HEADERS})
-SET(GUITS_SOURCES
+# --- resources ---
+
+# resource files / to be processed by lrelease
+SET(_ts_RESOURCES
resources/SUITApp_msg_en.ts
resources/SUITApp_msg_fr.ts
resources/SUITApp_msg_ja.ts
)
-ADD_DEFINITIONS(${QT_DEFINITIONS} ${PYTHON_DEFINITIONS})
+# --- sources ---
+
+# sources / moc wrappings
+QT4_WRAP_CPP(_moc_SOURCES ${_moc_HEADERS})
+
+# sources / static
+SET(_other_SOURCES
+ SUITApp_Application.cxx
+)
+IF(SALOME_USE_PYCONSOLE)
+ LIST(APPEND _other_SOURCES SUITApp_init_python.cxx)
+ENDIF()
+
+# sources / to compile
+SET(SUITApp_SOURCES ${_other_SOURCES} ${_moc_SOURCES})
+
+# --- rules ---
-ADD_LIBRARY(SUITApp ${SUITApp_SOURCES} ${GUI_HEADERS_MOC})
-TARGET_LINK_LIBRARIES(SUITApp ${COMMON_LIBS})
+ADD_LIBRARY(SUITApp ${SUITApp_SOURCES})
+TARGET_LINK_LIBRARIES(SUITApp ${_link_LIBRARIES})
INSTALL(TARGETS SUITApp EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
ADD_EXECUTABLE(TestSUITApp SUITApp.cxx)
SET_TARGET_PROPERTIES(TestSUITApp PROPERTIES OUTPUT_NAME "SUITApp")
-TARGET_LINK_LIBRARIES(TestSUITApp SUITApp ${COMMON_LIBS})
+TARGET_LINK_LIBRARIES(TestSUITApp ${_link_LIBRARIES} SUITApp)
INSTALL(TARGETS TestSUITApp EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_BINS})
-FILE(GLOB COMMON_HEADERS_H "${CMAKE_CURRENT_SOURCE_DIR}/*.h")
-SET(COMMON_HEADERS ${COMMON_HEADERS_H} ${COMMON_HEADERS_HXX})
-INSTALL(FILES ${COMMON_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
-QT4_INSTALL_TS_RESOURCES("${GUITS_SOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
+INSTALL(FILES ${SUITApp_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
+QT4_INSTALL_TS_RESOURCES("${_ts_RESOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
+++ /dev/null
-# Copyright (C) 2012-2013 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.
-#
-# 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
-#
-
-INCLUDE(UseQt4Ext)
-
-INCLUDE_DIRECTORIES(
- ${CAS_INCLUDE_DIRS}
- ${QT_INCLUDES}
- ${Boost_INCLUDE_DIRS}
- ${PTHREAD_INCLUDE_DIRS}
- ${QT_INCLUDES}
- ${CMAKE_CURRENT_SOURCE_DIR}/../Qtx
- ${CMAKE_CURRENT_SOURCE_DIR}/../SUIT
- ${CMAKE_CURRENT_SOURCE_DIR}/../OBJECT
-)
-
-SET(SUPERVGraph_SOURCES
- SUPERVGraph.cxx
- SUPERVGraph_ViewFrame.cxx
- SUPERVGraph_ViewManager.cxx
- SUPERVGraph_ViewModel.cxx
-)
-
-SET(GUI_HEADERS
- SUPERVGraph.h
- SUPERVGraph_ViewFrame.h
- SUPERVGraph_ViewManager.h
- SUPERVGraph_ViewModel.h
-)
-QT4_WRAP_CPP(GUI_HEADERS_MOC ${GUI_HEADERS})
-
-SET(dist_salomeres_DATA
- resources/superv_view_pan.png
- resources/superv_view_reset.png
-)
-
-SET(GUITS_SOURCES
- resources/SUPERVGraph_images.ts
- resources/SUPERVGraph_msg_en.ts
- resources/SUPERVGraph_msg_fr.ts
- resources/SUPERVGraph_msg_ja.ts
-)
-
-ADD_DEFINITIONS(${QT_DEFINITIONS} ${CAS_DEFINITIONS} ${PYTHON_DEFINITIONS} ${BOOST_DEFINITIONS})
-
-ADD_LIBRARY(SUPERVGraph ${SUPERVGraph_SOURCES} ${GUI_HEADERS_MOC})
-TARGET_LINK_LIBRARIES(SUPERVGraph ${QT_LIBRARIES} suit SalomeObject)
-INSTALL(TARGETS SUPERVGraph EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
-
-FILE(GLOB COMMON_HEADERS_H "${CMAKE_CURRENT_SOURCE_DIR}/*.h")
-INSTALL(FILES ${COMMON_HEADERS_H} DESTINATION ${SALOME_INSTALL_HEADERS})
-QT4_INSTALL_TS_RESOURCES("${GUITS_SOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
-
-FILE(GLOB GUIPNG_DATA "${CMAKE_CURRENT_SOURCE_DIR}/resources/*.png")
-INSTALL(FILES ${GUIPNG_DATA} DESTINATION ${SALOME_GUI_INSTALL_RES_DATA})
-
-
+++ /dev/null
-// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-//
-// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
-// 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.
-//
-// 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
-//
-
-// SALOME SUPERVGraph : build Supervisor viewer into desktop
-// File : SUPERVGraph.cxx
-// Author : Nicolas REJNERI
-
-#include "SUPERVGraph.h"
-#include "SUPERVGraph_ViewFrame.h"
-
-#include "SUIT_Desktop.h"
-#include "SUIT_ViewWindow.h"
-
-/*!
- Creates view
-*/
-SUIT_ViewWindow* SUPERVGraph::createView(SUIT_Desktop* parent)
-{
- return new SUPERVGraph_ViewFrame( parent );
-}
-
-extern "C"
-{
- /*!
- Creates view
- */
- SUIT_ViewWindow* createView(SUIT_Desktop* parent)
- {
- return SUPERVGraph::createView(parent);
- }
-}
+++ /dev/null
-// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-//
-// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
-// 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.
-//
-// 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
-//
-
-// SALOME SUPERVGraph : build Supervisor viewer into desktop
-// File : SUPERVGraph.h
-// Author : Nicolas REJNERI
-
-#ifndef SUPERVGraph_HeaderFile
-#define SUPERVGraph_HeaderFile
-
-#ifdef WIN32
-#if defined SUPERVGRAPH_EXPORTS || defined SUPERVGraph_EXPORTS
-#define SUPERVGRAPH_EXPORT __declspec(dllexport)
-#else
-#define SUPERVGRAPH_EXPORT __declspec(dllimport)
-#endif
-#else
-#define SUPERVGRAPH_EXPORT
-#endif
-
-#if defined WIN32
-#pragma warning ( disable: 4251 )
-#endif
-
-#include <QObject>
-
-class SUIT_Desktop;
-class SUIT_ViewWindow;
-
-class SUPERVGRAPH_EXPORT SUPERVGraph : public QObject
-{
- Q_OBJECT
-
-public :
-
- static SUIT_ViewWindow* createView ( SUIT_Desktop* parent);
-
-};
-
-#endif
+++ /dev/null
-// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-//
-// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
-// 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.
-//
-// 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
-//
-
-// SALOME SUPERVGraph : build Supervisor viewer into desktop
-// File : SUPERVGraph_ViewFrame.cxx
-// Author : Nicolas REJNERI
-
-#include "SUPERVGraph_ViewFrame.h"
-
-#include <SUIT_ResourceMgr.h>
-#include <SUIT_Session.h>
-
-//QT Include
-#include <QVBoxLayout>
-#include <QToolBar>
-
-/*!
- Constructor
-*/
-SUPERVGraph_View::SUPERVGraph_View( QWidget* theParent ): QWidget( theParent )
-{
- init(theParent);
-}
-
-/*!
- Constructor
-*/
-SUPERVGraph_View::SUPERVGraph_View( SUPERVGraph_View* theParent ): QWidget( theParent )
-{
- init(theParent);
-}
-
-/*!
- Builds popup for SUPERVGraph viewer
-*/
-void SUPERVGraph_View::contextMenuPopup( QMenu* )
-{
- // to be implemented
-}
-
-/*!
- Initialization
-*/
-void SUPERVGraph_View::init( QWidget* theParent )
-{
- if ( theParent->inherits( "QMainWindow" ) ) {
- ( ( QMainWindow* )theParent )->setCentralWidget( this );
- }
- else {
- QBoxLayout* layout = new QVBoxLayout( theParent );
- layout->addWidget( this );
- }
-
-}
-
-/*!
- Constructor
-*/
-SUPERVGraph_ViewFrame::SUPERVGraph_ViewFrame( SUIT_Desktop* theDesktop )
- : SUIT_ViewWindow( theDesktop )
-{
- myView = 0;
-
- //myView = new SUPERVGraph_View(this);
- // Set BackgroundColor
- /*
- int R = QAD_CONFIG->getSetting("SUPERVGraph:BackgroundColorRed").toInt();
- int G = QAD_CONFIG->getSetting("SUPERVGraph:BackgroundColorGreen").toInt();
- int B = QAD_CONFIG->getSetting("SUPERVGraph:BackgroundColorBlue").toInt();
- setBackgroundColor(QColor(R,G,B));*/
-
- myToolBar = new QToolBar(this);
- myToolBar->setFloatable(false);
- //myToolBar->setCloseMode(QDockWindow::Undocked);
- myToolBar->setWindowTitle(tr("LBL_TOOLBAR_LABEL"));
- createActions();
- createToolBar();
-}
-
-/*!
- Creates actions of SUPERVGraph view window
-*/
-void SUPERVGraph_ViewFrame::createActions()
-{
- if (!myActionsMap.isEmpty()) return;
- SUIT_ResourceMgr* aResMgr = SUIT_Session::session()->resourceMgr();
- QtxAction* aAction;
-
- // Panning
- aAction = new QtxAction(tr("MNU_PAN_VIEW"), aResMgr->loadPixmap( "SUPERVGraph", tr( "ICON_SUPERVGraph_PAN" ) ),
- tr( "MNU_PAN_VIEW" ), 0, this);
- aAction->setStatusTip(tr("DSC_PAN_VIEW"));
- connect(aAction, SIGNAL(activated()), this, SLOT(onViewPan()));
- myActionsMap[ PanId ] = aAction;
-
- // Reset
- aAction = new QtxAction(tr("MNU_RESET_VIEW"), aResMgr->loadPixmap( "SUPERVGraph", tr( "ICON_SUPERVGraph_RESET" ) ),
- tr( "MNU_RESET_VIEW" ), 0, this);
- aAction->setStatusTip(tr("DSC_RESET_VIEW"));
- connect(aAction, SIGNAL(activated()), this, SLOT(onViewReset()));
- myActionsMap[ ResetId ] = aAction;
-}
-
-/*!
- Creates toolbar of SUPERVGraph view window
-*/
-void SUPERVGraph_ViewFrame::createToolBar()
-{
- myToolBar->addAction( myActionsMap[PanId] );
- myToolBar->addAction( myActionsMap[ResetId] );
-}
-
-/*!
- Destructor
-*/
-SUPERVGraph_ViewFrame::~SUPERVGraph_ViewFrame() {}
-
-/*!
- Returns widget containing 3D-Viewer
-*/
-SUPERVGraph_View* SUPERVGraph_ViewFrame::getViewWidget()
-{
- return myView;
-}
-
-
-/*!
- Sets new view widget
- \param theView - new view widget
-*/
-void SUPERVGraph_ViewFrame::setViewWidget( SUPERVGraph_View* theView )
-{
- myView = theView;
-}
-
-
-/*!
- Display/hide Trihedron
-*/
-void SUPERVGraph_ViewFrame::onViewTrihedron()
-{
-// MESSAGE ( "SUPERVGraph_ViewFrame::onViewTrihedron" )
-}
-
-/*!
- Provides top projection of the active view
-*/
-void SUPERVGraph_ViewFrame::onViewTop()
-{
-// MESSAGE ( "SUPERVGraph_ViewFrame::onViewTop" )
-}
-
-/*!
- Provides bottom projection of the active view
-*/
-void SUPERVGraph_ViewFrame::onViewBottom()
-{
-// MESSAGE ( "SUPERVGraph_ViewFrame::onViewBottom" )
-}
-
-/*!
- Provides left projection of the active view
-*/
-void SUPERVGraph_ViewFrame::onViewLeft()
-{
-// MESSAGE ( "SUPERVGraph_ViewFrame::onViewLeft" )
-}
-
-/*!
- Provides right projection of the active view
-*/
-void SUPERVGraph_ViewFrame::onViewRight()
-{
-// MESSAGE ( "SUPERVGraph_ViewFrame::onViewRight" )
-}
-
-/*!
- Provides back projection of the active view
-*/
-void SUPERVGraph_ViewFrame::onViewBack()
-{
-// MESSAGE ( "SUPERVGraph_ViewFrame::onViewBack" )
-}
-
-/*!
- Provides front projection of the active view
-*/
-void SUPERVGraph_ViewFrame::onViewFront()
-{
-// MESSAGE ( "SUPERVGraph_ViewFrame::onViewFront" )
-}
-
-/*!
- Reset the active view
-*/
-void SUPERVGraph_ViewFrame::onViewReset()
-{
-// MESSAGE ( "SUPERVGraph_ViewFrame::onViewReset" )
- if (myView)
- myView->ResetView();
-}
-
-/*!
- Rotates the active view
-*/
-void SUPERVGraph_ViewFrame::onViewRotate()
-{
-// MESSAGE ( "SUPERVGraph_ViewFrame::onViewRotate" )
-}
-
-/*!
- Sets a new center of the active view
-*/
-void SUPERVGraph_ViewFrame::onViewGlobalPan()
-{
-// MESSAGE ( "SUPERVGraph_ViewFrame::onViewGlobalPan" )
-}
-
-/*!
- Zooms the active view
-*/
-void SUPERVGraph_ViewFrame::onViewZoom()
-{
-// MESSAGE ( "SUPERVGraph_ViewFrame::onViewZoom" )
-}
-
-/*!
- Moves the active view
-*/
-void SUPERVGraph_ViewFrame::onViewPan()
-{
-// MESSAGE ( "SUPERVGraph_ViewFrame::onViewPan" )
- if (myView != NULL)
- myView->ActivatePanning();
-}
-
-/*!
- Fits all obejcts within a rectangular area of the active view
-*/
-void SUPERVGraph_ViewFrame::onViewFitArea()
-{
-// MESSAGE ( "SUPERVGraph_ViewFrame::onViewFitArea" )
-}
-
-/*!
- Fits all objects in the active view
-*/
-void SUPERVGraph_ViewFrame::onViewFitAll()
-{
-// MESSAGE ( "SUPERVGraph_ViewFrame::onViewFitAll" )
-}
-
-/*!
- Set background of the viewport
-*/
-void SUPERVGraph_ViewFrame::setBackgroundColor( const QColor& color )
-{
- if (myView) {
- QPalette palette;
- palette.setColor(myView->backgroundRole(), color);
- myView->setPalette(palette);
- }
-}
-
-/*!
- Returns background of the viewport
-*/
-QColor SUPERVGraph_ViewFrame::backgroundColor() const
-{
- if (myView)
- return myView->palette().color( myView->backgroundRole() );
- return palette().color( backgroundRole() );
-}
-
-/*!
-*/
-void SUPERVGraph_ViewFrame::onAdjustTrihedron()
-{
-// MESSAGE ( "SUPERVGraph_ViewFrame::onAdjustTrihedron" )
-}
-
-/*!
- Changes name of object
- \param obj - object to be renamed
- \param name - new name
-*/
-void SUPERVGraph_ViewFrame::rename( const Handle(SALOME_InteractiveObject)& IObject,
- QString newName )
-{
-// MESSAGE ( "SUPERVGraph_ViewFrame::rename" )
-}
-
-/*!
- Unhilights all object in viewer
- \param updateviewer - update current viewer
-*/
-void SUPERVGraph_ViewFrame::unHighlightAll()
-{
-// MESSAGE ( "SUPERVGraph_ViewFrame::unHighlightAll" )
-}
-
-/*!
- Hilights/unhilights object in viewer
- \param obj - object to be updated
- \param hilight - if it is true, object will be hilighted, otherwise it will be unhilighted
- \param update - update current viewer
-*/
-void SUPERVGraph_ViewFrame::highlight( const Handle(SALOME_InteractiveObject)& IObject,
- bool highlight, bool immediatly )
-{
-// MESSAGE ( "SUPERVGraph_ViewFrame::highlight" )
-}
-
-/*!
- \return true if object is in viewer or in collector
- \param obj - object to be checked
- \param onlyInViewer - search object only in viewer (so object must be displayed)
-*/
-bool SUPERVGraph_ViewFrame::isInViewer( const Handle(SALOME_InteractiveObject)& IObject )
-{
-// MESSAGE ( "SUPERVGraph_ViewFrame::isInViewer" )
- return false;
-}
-
-/*!
- \return true if object is displayed in viewer
- \param obj - object to be checked
-*/
-bool SUPERVGraph_ViewFrame::isVisible( const Handle(SALOME_InteractiveObject)& IObject )
-{
-// MESSAGE ( "SUPERVGraph_ViewFrame::isVisible" )
- return false;
-}
-
-/*!
- Custom resize event handler
-*/
-void SUPERVGraph_ViewFrame::resizeEvent( QResizeEvent* theEvent )
-{
- QMainWindow::resizeEvent( theEvent );
- if ( myView ) myView->resizeView( theEvent );
-}
+++ /dev/null
-// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-//
-// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
-// 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.
-//
-// 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
-//
-
-// SALOME SUPERVGraph : build Supervisor viewer into desktop
-// File : SUPERVGraph_ViewFrame.h
-// Author : Nicolas REJNERI
-
-#ifndef SUPERVGraph_ViewFrame_H
-#define SUPERVGraph_ViewFrame_H
-
-#include "SUPERVGraph.h"
-
-#include "SALOME_InteractiveObject.hxx"
-#include "SUIT_PopupClient.h"
-#include "SUIT_ViewWindow.h"
-
-#include <QtxAction.h>
-
-#ifdef WIN32
-#pragma warning ( disable:4251 )
-#endif
-
-class SUPERVGRAPH_EXPORT SUPERVGraph_View: public QWidget, public SUIT_PopupClient {
- Q_OBJECT;
- public:
- static QString Type() { return "SUPERVGraphViewer"; }
-
- SUPERVGraph_View(QWidget* theParent);
- SUPERVGraph_View(SUPERVGraph_View* theParent);
-
- virtual void ActivatePanning() = 0;
- virtual void ResetView() = 0;
-
- /* redefine functions from SUIT_PopupClient */
- virtual QString popupClientType() const { return Type(); }
- virtual void contextMenuPopup( QMenu* );
-
- virtual void resizeView( QResizeEvent* theEvent ) {};
-
- protected:
- void init(QWidget* theParent);
-
-};
-
-class SUPERVGRAPH_EXPORT SUPERVGraph_ViewFrame : public SUIT_ViewWindow {
- Q_OBJECT
-
- public:
- SUPERVGraph_ViewFrame(SUIT_Desktop* theDesktop );
- ~SUPERVGraph_ViewFrame();
-
- SUPERVGraph_View* getViewWidget();
- void setViewWidget(SUPERVGraph_View* theView);
-
- void setBackgroundColor( const QColor& );
- QColor backgroundColor() const;
-
- void onAdjustTrihedron( );
-
- /* interactive object management */
- void highlight( const Handle(SALOME_InteractiveObject)& IObject,
- bool highlight, bool immediatly = true );
- void unHighlightAll();
- void rename( const Handle(SALOME_InteractiveObject)& IObject,
- QString newName );
- bool isInViewer( const Handle(SALOME_InteractiveObject)& IObject );
- bool isVisible( const Handle(SALOME_InteractiveObject)& IObject );
-
- /* selection */
- Handle(SALOME_InteractiveObject) FindIObject(const char* Entry) { Handle(SALOME_InteractiveObject) o; return o; };
-
- /* display */
- void Display(const Handle(SALOME_InteractiveObject)& IObject, bool immediatly = true){};
- void DisplayOnly(const Handle(SALOME_InteractiveObject)& IObject){};
- void Erase(const Handle(SALOME_InteractiveObject)& IObject, bool immediatly = true){};
- void DisplayAll(){};
- void EraseAll(){};
- void Repaint() {};
-
- QToolBar* getToolBar() { return myToolBar; }
-
- public slots:
- void onViewPan();
- void onViewZoom();
- void onViewFitAll();
- void onViewFitArea();
- void onViewGlobalPan();
- void onViewRotate();
- void onViewReset();
- void onViewFront();
- void onViewBack();
- void onViewRight();
- void onViewLeft();
- void onViewBottom();
- void onViewTop();
- void onViewTrihedron();
-
- protected:
- void resizeEvent( QResizeEvent* theEvent );
-
- private:
- void createActions();
- void createToolBar();
-
- //! Actions ID
- enum { PanId, ResetId };
- typedef QMap<int, QtxAction*> ActionsMap;
-
- ActionsMap myActionsMap;
- QToolBar* myToolBar;
-
- SUPERVGraph_View* myView;
-};
-
-#ifdef WIN32
-#pragma warning ( default:4251 )
-#endif
-
-#endif
+++ /dev/null
-// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-//
-// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
-// 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.
-//
-// 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
-//
-
-#include "SUPERVGraph_ViewManager.h"
-
-#include "SUIT_ViewWindow.h"
-
-int SUPERVGraph_ViewManager::myMaxId = 0;
-
-/*!
- Constructor
-*/
-SUPERVGraph_ViewManager::SUPERVGraph_ViewManager( SUIT_Study* theStudy,
- SUIT_Desktop* theDesktop,
- SUIT_ViewModel* theViewModel )
- : SUIT_ViewManager( theStudy, theDesktop, theViewModel )
-{
- myId = ++myMaxId;
-}
-
-/*!
- Destructor
-*/
-SUPERVGraph_ViewManager::~SUPERVGraph_ViewManager()
-{
-}
-
-/*!
- Sets view name
- \param theView - view to assign name
-*/
-void SUPERVGraph_ViewManager::setViewName(SUIT_ViewWindow* theView)
-{
- int aPos = myViews.indexOf(theView);
- theView->setWindowTitle( QString( "SUPERVISION scene:%1 - viewer:%2" ).arg( myId ).arg(aPos+1));
-}
-
-/*!
- Fills popup menu with custom actions
- \param popup - popup menu to be filled with
-*/
-void SUPERVGraph_ViewManager::contextMenuPopup( QMenu* thePopup)
-{
- SUIT_ViewManager::contextMenuPopup( thePopup );
- // to be implemented
-}
+++ /dev/null
-// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-//
-// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
-// 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.
-//
-// 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
-//
-
-#ifndef SUPERVGRAPH_VIEWMANAGER_H
-#define SUPERVGRAPH_VIEWMANAGER_H
-
-#include "SUPERVGraph.h"
-
-#include "SUIT_ViewManager.h"
-
-class SUIT_Desktop;
-
-class SUPERVGRAPH_EXPORT SUPERVGraph_ViewManager : public SUIT_ViewManager
-{
- Q_OBJECT
-
-public:
- SUPERVGraph_ViewManager( SUIT_Study* theStudy, SUIT_Desktop* theDesktop, SUIT_ViewModel* theViewModel = 0 );
- ~SUPERVGraph_ViewManager();
-
- virtual void contextMenuPopup( QMenu* thePopup );
-
-protected:
- void setViewName(SUIT_ViewWindow* theView);
-
-private:
- static int myMaxId;
- int myId;
-
-};
-
-#endif
+++ /dev/null
-// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-//
-// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
-// 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.
-//
-// 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
-//
-
-#include "SUPERVGraph_ViewModel.h"
-#include "SUPERVGraph_ViewFrame.h"
-#include "SUIT_Desktop.h"
-#include "SUIT_ViewWindow.h"
-
-/*!
- Constructor
-*/
-SUPERVGraph_Viewer::SUPERVGraph_Viewer()
-:SUIT_ViewModel()
-{
-}
-
-/*!
- Destructor
-*/
-SUPERVGraph_Viewer::~SUPERVGraph_Viewer()
-{
-}
-
-/*!
- Creates new view window
- \param theDesktop - main window of application
-*/
-SUIT_ViewWindow* SUPERVGraph_Viewer::createView(SUIT_Desktop* theDesktop)
-{
- SUPERVGraph_ViewFrame* aRes = new SUPERVGraph_ViewFrame( theDesktop );
- return aRes;
-}
+++ /dev/null
-// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-//
-// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
-// 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.
-//
-// 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
-//
-
-#ifndef SUPERVGRAPH_VIEWMODEL_H
-#define SUPERVGRAPH_VIEWMODEL_H
-
-#include "SUPERVGraph.h"
-
-#include "SUIT_ViewModel.h"
-
-class SUPERVGRAPH_EXPORT SUPERVGraph_Viewer: public SUIT_ViewModel
-{
- Q_OBJECT
-
-public:
- static QString Type() { return "SUPERVGraphViewer"; }
-
- SUPERVGraph_Viewer();
- virtual ~SUPERVGraph_Viewer();
-
- virtual SUIT_ViewWindow* createView(SUIT_Desktop* theDesktop);
- virtual QString getType() const { return Type(); }
-
-};
-
-#endif
+++ /dev/null
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE TS>
-<TS version="2.0" language="en_US">
-<context>
- <name>@default</name>
- <message>
- <source>ICON_SUPERVGraph_PAN</source>
- <translation>superv_view_pan.png</translation>
- </message>
- <message>
- <source>ICON_SUPERVGraph_RESET</source>
- <translation>superv_view_reset.png</translation>
- </message>
-</context>
-</TS>
+++ /dev/null
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE TS>
-<TS version="2.0" language="en_US">
-<context>
- <name>@default</name>
- <message>
- <source>MNU_PAN_VIEW</source>
- <translation>Panning</translation>
- </message>
- <message>
- <source>DSC_PAN_VIEW</source>
- <translation>Panning the view</translation>
- </message>
- <message>
- <source>MNU_RESET_VIEW</source>
- <translation>Reset</translation>
- </message>
- <message>
- <source>DSC_RESET_VIEW</source>
- <translation>Reset View Point</translation>
- </message>
- <message>
- <source>LBL_TOOLBAR_LABEL</source>
- <translation>View Operations</translation>
- </message>
-</context>
-</TS>
+++ /dev/null
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE TS>
-<TS version="2.0" language="fr_FR">
-<context>
- <name>@default</name>
- <message>
- <source>MNU_PAN_VIEW</source>
- <translation>Déplacement</translation>
- </message>
- <message>
- <source>DSC_PAN_VIEW</source>
- <translation>Déplacement de la vue</translation>
- </message>
- <message>
- <source>MNU_RESET_VIEW</source>
- <translation>Restaurer</translation>
- </message>
- <message>
- <source>DSC_RESET_VIEW</source>
- <translation>Restaurer le point de vue</translation>
- </message>
- <message>
- <source>LBL_TOOLBAR_LABEL</source>
- <translation>Opérations de visualisation</translation>
- </message>
-</context>
-</TS>
+++ /dev/null
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE TS>
-<TS>
- <context>
- <name>@default</name>
- <message>
- <source>MNU_PAN_VIEW</source>
- <translation>パン</translation>
- </message>
- <message>
- <source>DSC_PAN_VIEW</source>
- <translation>パン表示]</translation>
- </message>
- <message>
- <source>MNU_RESET_VIEW</source>
- <translation>リセット</translation>
- </message>
- <message>
- <source>DSC_RESET_VIEW</source>
- <translation>リセット ビュー ポイント</translation>
- </message>
- <message>
- <source>LBL_TOOLBAR_LABEL</source>
- <translation>[操作の表示</translation>
- </message>
- </context>
-</TS>
INCLUDE(UseQt4Ext)
INCLUDE(${VTK_USE_FILE})
+# --- options ---
+
+# additional include directories
INCLUDE_DIRECTORIES(
${CAS_INCLUDE_DIRS}
${QT_INCLUDES}
- ${PTHREAD_INCLUDE_DIRS}
${Boost_INCLUDE_DIRS}
${KERNEL_INCLUDE_DIRS}
- ${PROJECT_BINARY_DIR}
- ${CMAKE_CURRENT_SOURCE_DIR}/../Qtx
- ${CMAKE_CURRENT_SOURCE_DIR}/../SUIT
- ${CMAKE_CURRENT_SOURCE_DIR}/../ViewerTools
- ${CMAKE_CURRENT_SOURCE_DIR}/../OBJECT
- ${CMAKE_CURRENT_SOURCE_DIR}/../Prs
- ${CMAKE_CURRENT_SOURCE_DIR}/../VTKViewer
- ${CMAKE_CURRENT_SOURCE_DIR}/../OpenGLUtils
+ ${PROJECT_SOURCE_DIR}/src/Qtx
+ ${PROJECT_SOURCE_DIR}/src/SUIT
+ ${PROJECT_SOURCE_DIR}/src/ViewerTools
+ ${PROJECT_SOURCE_DIR}/src/OBJECT
+ ${PROJECT_SOURCE_DIR}/src/Prs
+ ${PROJECT_SOURCE_DIR}/src/VTKViewer
+ ${PROJECT_SOURCE_DIR}/src/OpenGLUtils
)
+# additional preprocessor / compiler flags
ADD_DEFINITIONS(${QT_DEFINITIONS} ${CAS_DEFINITIONS} ${BOOST_DEFINITIONS})
-SET(COMMON_LIBS
- qtx
- suit
- ViewerTools
- SalomeObject
- SalomePrs
- VTKViewer
- OpenGLUtils
- ${KERNEL_SALOMELocalTrace}
- ${KERNEL_OpUtil}
- ${VTK_LIBRARIES}
+# libraries to link to
+SET(_link_LIBRARIES
+ ${QT_LIBRARIES}
${OPENGL_LIBRARIES}
- ${QT_LIBRARIES}
- ${CAS_KERNEL}
- ${CAS_VIEWER}
+ ${VTK_LIBRARIES}
+ ${CAS_KERNEL} ${CAS_VIEWER}
+ qtx suit ViewerTools SalomeObject SalomePrs VTKViewer OpenGLUtils
)
-SET(GUI_HEADERS SVTK_GenericRenderWindowInteractor.h SVTK_RenderWindowInteractor.h SVTK_NonIsometricDlg.h
- SVTK_UpdateRateDlg.h SVTK_CubeAxesDlg.h SVTK_FontWidget.h SVTK_ViewModelBase.h SVTK_ViewManager.h
- SVTK_ViewWindow.h SVTK_ViewModel.h SVTK_View.h SVTK_SetRotationPointDlg.h SVTK_ViewParameterDlg.h
- SVTK_ComboAction.h SVTK_RecorderDlg.h)
-QT4_WRAP_CPP(GUI_HEADERS ${GUI_HEADERS})
+# --- headers ---
-SET(SVTK_SOURCES
- SVTK_Prs.cxx
- SVTK_Actor.cxx
+# header files / to be processed by moc
+SET(_moc_HEADERS
+ SVTK_ComboAction.h
+ SVTK_FontWidget.h
+ SVTK_GenericRenderWindowInteractor.h
+ SVTK_RecorderDlg.h
+ SVTK_RenderWindowInteractor.h
+ SVTK_SetRotationPointDlg.h
+ SVTK_View.h
+ SVTK_ViewManager.h
+ SVTK_ViewModelBase.h
+ SVTK_ViewModel.h
+ SVTK_ViewParameterDlg.h
+ SVTK_ViewWindow.h
+)
+
+# header files / to be processed by moc / internal
+# TODO: check for MSVS project
+SET(_moc_internal_HEADERS
+ SVTK_CubeAxesDlg.h
+ SVTK_NonIsometricDlg.h
+ SVTK_UpdateRateDlg.h
+)
+
+# header files / no moc processing
+SET(_other_HEADERS
+ SALOME_Actor.h
+ SVTK.h
+ SVTK_Actor.h
+ SVTK_AreaPicker.h
+ SVTK_CubeAxesActor2D.h
+ SVTK_DeviceActor.h
+ SVTK_Event.h
+ SVTK_Functor.h
+ SVTK_ImageWriter.h
+ SVTK_ImageWriterMgr.h
+ SVTK_InteractorStyle.h
+ SVTK_KeyFreeInteractorStyle.h
+ SVTK_Prs.h
+ SVTK_Recorder.h
+ SVTK_Renderer.h
+ SVTK_Selection.h
+ SVTK_SelectionEvent.h
+ SVTK_Selector.h
+ SVTK_SpaceMouse.h
+ SVTK_Utils.h
+)
+
+# header files / no moc processing / internal
+# no processing currently: TODO: check for MSVS project
+SET(_internal_HEADERS
+ SVTK_SelectorDef.h
+ SVTK_Trihedron.h
+ vtkPVAxesActor.h
+ vtkPVAxesWidget.h
+)
+
+# header files / to install
+SET(SVTK_HEADERS ${_moc_HEADERS} ${_other_HEADERS})
+
+# --- resources ---
+
+# resource files / to be processed by lrelease
+SET(_ts_RESOURCES
+ resources/SVTK_msg_en.ts
+ resources/SVTK_msg_fr.ts
+ resources/SVTK_msg_ja.ts
+ resources/SVTK_images.ts
+)
+
+# resource files / static
+SET(_other_RESOURCES
+ resources/vtk_view_graduated_axes.png
+ resources/vtk_view_highlight.png
+ resources/vtk_view_highlight_dyn.png
+ resources/vtk_view_highlight_off.png
+ resources/vtk_view_highlight_std.png
+ resources/vtk_view_parallel.png
+ resources/vtk_view_parameters.png
+ resources/vtk_view_perspective.png
+ resources/vtk_view_recording_pause.png
+ resources/vtk_view_recording_play.png
+ resources/vtk_view_recording_start.png
+ resources/vtk_view_recording_stop.png
+ resources/vtk_view_rotation_point.png
+ resources/vtk_view_scaling.png
+ resources/vtk_view_selection.png
+ resources/vtk_view_style_switch.png
+ resources/vtk_view_update_rate.png
+ resources/vtk_view_zooming_style_switch.png
+)
+
+# --- sources ---
+
+# sources / moc wrappings
+QT4_WRAP_CPP(_moc_SOURCES ${_moc_HEADERS} ${_moc_internal_HEADERS})
+
+# sources / static
+SET(_other_SOURCES
SALOME_Actor.cxx
+ SVTK_Actor.cxx
SVTK_AreaPicker.cxx
- SVTK_DeviceActor.cxx
+ SVTK_ComboAction.cxx
SVTK_CubeAxesActor2D.cxx
- SVTK_NonIsometricDlg.cxx
- SVTK_UpdateRateDlg.cxx
SVTK_CubeAxesDlg.cxx
+ SVTK_DeviceActor.cxx
SVTK_FontWidget.cxx
- SVTK_Trihedron.cxx
- SVTK_View.cxx
- SVTK_ViewManager.cxx
- SVTK_ViewModel.cxx
- SVTK_Renderer.cxx
- SVTK_ViewWindow.cxx
+ SVTK_GenericRenderWindowInteractor.cxx
+ SVTK_ImageWriter.cxx
+ SVTK_ImageWriterMgr.cxx
SVTK_InteractorStyle.cxx
SVTK_KeyFreeInteractorStyle.cxx
+ SVTK_NonIsometricDlg.cxx
+ SVTK_Prs.cxx
+ SVTK_Recorder.cxx
+ SVTK_RecorderDlg.cxx
SVTK_RenderWindowInteractor.cxx
- SVTK_GenericRenderWindowInteractor.cxx
- SVTK_SpaceMouse.cxx
+ SVTK_Renderer.cxx
SVTK_Selector.cxx
SVTK_SetRotationPointDlg.cxx
- SVTK_ViewParameterDlg.cxx
- SVTK_ComboAction.cxx
- SVTK_Recorder.cxx
- SVTK_RecorderDlg.cxx
- SVTK_ImageWriter.cxx
- SVTK_ImageWriterMgr.cxx
+ SVTK_SpaceMouse.cxx
+ SVTK_Trihedron.cxx
+ SVTK_UpdateRateDlg.cxx
SVTK_Utils.cxx
- vtkPVAxesActor.h
+ SVTK_View.cxx
+ SVTK_ViewManager.cxx
+ SVTK_ViewModel.cxx
+ SVTK_ViewParameterDlg.cxx
+ SVTK_ViewWindow.cxx
vtkPVAxesActor.cxx
- vtkPVAxesWidget.h
vtkPVAxesWidget.cxx
)
-SET(GUITS_SOURCES
- resources/SVTK_msg_en.ts
- resources/SVTK_msg_fr.ts
- resources/SVTK_msg_ja.ts
- resources/SVTK_images.ts
-)
+# sources / to compile
+SET(SVTK_SOURCES ${_other_SOURCES} ${_moc_SOURCES})
-ADD_LIBRARY(SVTK ${SVTK_SOURCES} ${GUI_HEADERS})
-TARGET_LINK_LIBRARIES(SVTK ${COMMON_LIBS})
+# --- rules ---
+
+ADD_LIBRARY(SVTK ${SVTK_SOURCES})
+TARGET_LINK_LIBRARIES(SVTK ${_link_LIBRARIES})
INSTALL(TARGETS SVTK EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
-#ADD_EXECUTABLE(TestSVTK SVTK.cxx)
-#SET_TARGET_PROPERTIES(TestSVTK PROPERTIES COMPILE_FLAGS "${COMMON_FLAGS}" OUTPUT_NAME "SVTK")
-#TARGET_LINK_LIBRARIES(TestSVTK SVTK ${COMMON_LIBS})
-#INSTALL(TARGETS TestSVTK DESTINATION ${SALOME_INSTALL_BINS})
-
-SET(COMMON_HEADERS_H
- SVTK.h
- SVTK_Prs.h
- SVTK_Actor.h
- SALOME_Actor.h
- SVTK_AreaPicker.h
- SVTK_DeviceActor.h
- SVTK_FontWidget.h
- SVTK_CubeAxesActor2D.h
- SVTK_Functor.h
- SVTK_View.h
- SVTK_ViewManager.h
- SVTK_ViewModel.h
- SVTK_ViewWindow.h
- SVTK_Renderer.h
- SVTK_InteractorStyle.h
- SVTK_KeyFreeInteractorStyle.h
- SVTK_RenderWindowInteractor.h
- SVTK_GenericRenderWindowInteractor.h
- SVTK_Selector.h
- SVTK_Selection.h
- SVTK_SelectionEvent.h
- SVTK_SpaceMouse.h
- SVTK_Event.h
- SVTK_ViewModelBase.h
- SVTK_SetRotationPointDlg.h
- SVTK_ViewParameterDlg.h
- SVTK_ComboAction.h
- SVTK_Recorder.h
- SVTK_RecorderDlg.h
- SVTK_ImageWriter.h
- SVTK_ImageWriterMgr.h
- SVTK_Utils.h
-)
-INSTALL(FILES ${COMMON_HEADERS_H} DESTINATION ${SALOME_INSTALL_HEADERS})
-QT4_INSTALL_TS_RESOURCES("${GUITS_SOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
+INSTALL(FILES ${SVTK_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
+QT4_INSTALL_TS_RESOURCES("${_ts_RESOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
-FILE(GLOB GUIPNG_DATA "${CMAKE_CURRENT_SOURCE_DIR}/resources/*.png")
-INSTALL(FILES ${GUIPNG_DATA} DESTINATION ${SALOME_GUI_INSTALL_RES_DATA})
+INSTALL(FILES ${_other_RESOURCES} DESTINATION ${SALOME_GUI_INSTALL_RES_DATA})
+++ /dev/null
-// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-//
-// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
-// 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.
-//
-// 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
-//
-
-// SALOME VTKViewer : build VTK viewer into Salome desktop
-// File :
-// Author :
-
-#include "SVTK.h"
-#include "SVTK_Prs.h"
-#include "SVTK_Actor.h"
-#include "SALOME_Actor.h"
-#include "SVTK_AreaPicker.h"
-#include "SVTK_DeviceActor.h"
-#include "SVTK_CubeAxesActor2D.h"
-#include "SVTK_Functor.h"
-#include "SVTK_View.h"
-//#include "SVTK_MainWindow.h"
-#include "SVTK_NonIsometricDlg.h"
-#include "SVTK_CubeAxesDlg.h"
-#include "SVTK_FontWidget.h"
-#include "SVTK_ViewModel.h"
-#include "SVTK_ViewWindow.h"
-#include "SVTK_Renderer.h"
-#include "SVTK_InteractorStyle.h"
-#include "SVTK_RenderWindowInteractor.h"
-#include "SVTK_GenericRenderWindowInteractor.h"
-#include "SVTK_Selector.h"
-#include "SVTK_Selection.h"
-#include "SVTK_SelectionEvent.h"
-#include "SVTK_SpaceMouse.h"
-#include "SVTK_Event.h"
-#include "SVTK_ViewModelBase.h"
-
-int
-main(int argc, char** argv)
-{
- return 0;
-}
#
ADD_SUBDIRECTORY(pluginsdemo)
-
-IF(NOT SALOME_LIGHT_ONLY AND SALOME_BUILD_TESTS)
+IF(SALOME_BUILD_TESTS)
ADD_SUBDIRECTORY(Test)
ENDIF()
INCLUDE(UseQt4Ext)
INCLUDE(${VTK_USE_FILE})
+# --- options ---
+
+# additional include directories
INCLUDE_DIRECTORIES(
${CAS_INCLUDE_DIRS}
${QT_INCLUDES}
${Boost_INCLUDE_DIRS}
${PYTHON_INCLUDE_DIRS}
${OMNIORB_INCLUDE_DIR}
- ${LIBXML2_INCLUDE_DIR}
- ${PTHREAD_INCLUDE_DIRS}
${KERNEL_INCLUDE_DIRS}
- ${CMAKE_CURRENT_SOURCE_DIR}/../LightApp
- ${CMAKE_CURRENT_SOURCE_DIR}/../CAM
- ${CMAKE_CURRENT_SOURCE_DIR}/../Qtx
- ${CMAKE_CURRENT_SOURCE_DIR}/../SUIT
- ${CMAKE_CURRENT_SOURCE_DIR}/../OBJECT
- ${CMAKE_CURRENT_SOURCE_DIR}/../SVTK
- ${CMAKE_CURRENT_SOURCE_DIR}/../STD
- ${CMAKE_CURRENT_SOURCE_DIR}/../VTKViewer
- ${CMAKE_CURRENT_SOURCE_DIR}/../ObjBrowser
- ${CMAKE_CURRENT_SOURCE_DIR}/../PyConsole
- ${CMAKE_CURRENT_SOURCE_DIR}/../TOOLSGUI
- ${CMAKE_CURRENT_SOURCE_DIR}/../PyInterp
- ${CMAKE_CURRENT_SOURCE_DIR}/../Session
${PROJECT_BINARY_DIR}/idl
- ${CMAKE_CURRENT_SOURCE_DIR}/../Event
- ${CMAKE_CURRENT_SOURCE_DIR}/../CASCatch
- ${CMAKE_CURRENT_SOURCE_DIR}/../Prs
+ ${PROJECT_SOURCE_DIR}/src/CAM
+ ${PROJECT_SOURCE_DIR}/src/CASCatch
+ ${PROJECT_SOURCE_DIR}/src/Event
+ ${PROJECT_SOURCE_DIR}/src/LightApp
+ ${PROJECT_SOURCE_DIR}/src/OBJECT
+ ${PROJECT_SOURCE_DIR}/src/ObjBrowser
+ ${PROJECT_SOURCE_DIR}/src/Prs
+ ${PROJECT_SOURCE_DIR}/src/PyConsole
+ ${PROJECT_SOURCE_DIR}/src/PyInterp
+ ${PROJECT_SOURCE_DIR}/src/Qtx
+ ${PROJECT_SOURCE_DIR}/src/STD
+ ${PROJECT_SOURCE_DIR}/src/SUIT
+ ${PROJECT_SOURCE_DIR}/src/SVTK
+ ${PROJECT_SOURCE_DIR}/src/Session
+ ${PROJECT_SOURCE_DIR}/src/TOOLSGUI
+ ${PROJECT_SOURCE_DIR}/src/VTKViewer
)
+# additional preprocessor / compiler flags
+ADD_DEFINITIONS(
+ ${QT_DEFINITIONS}
+ ${OMNIORB_DEFINITIONS}
+ ${QWT_DEFINITIONS}
+ ${CAS_DEFINITIONS}
+ ${BOOST_DEFINITIONS}
+ ${PYTHON_DEFINITIONS}
+)
-SET(COMMON_LIBS
- ${PYTHON_LIBRARIES}
- ${QT_LIBRARIES}
- ${OpUtil}
- ${SALOMELocalTrace}
- ${SalomeDSClient}
- suit
- std
- CAM
- ObjBrowser
- SalomePrs
- SPlot2d
- GLViewer
- OCCViewer
- VTKViewer
- SalomeObject
- SVTK
- SOCC
- PyInterp
- PyConsole
- LogWindow
- LightApp
- ToolsGUI
- SalomeSession
- Event
- CASCatch
- SalomePrs
+# libraries to link to
+SET(_link_LIBRARIES
${CAS_KERNEL}
+ ${QT_LIBRARIES}
+ ${PYTHON_LIBRARIES}
+ ${KERNEL_OpUtil} ${KERNEL_SALOMELocalTrace} ${KERNEL_SalomeDSClient} ${KERNEL_TOOLSDS}
+ CASCatch suit std CAM ObjBrowser SalomePrs PyInterp PyConsole Event
+ GLViewer Plot2d OCCViewer VTKViewer SalomeObject SPlot2d SOCC SVTK
+ LogWindow LightApp SalomePrs ToolsGUI SalomeSession
)
-SET(GUI_HEADERS
+# --- headers ---
+
+# header files / to be processed by moc
+SET(_moc_HEADERS
SalomeApp_Application.h
+ SalomeApp_CheckFileDlg.h
SalomeApp_DataModel.h
- SalomeApp_Module.h
+ SalomeApp_DoubleSpinBox.h
+ SalomeApp_ExitDlg.h
+ SalomeApp_IntSpinBox.h
+ SalomeApp_ListView.h
SalomeApp_LoadStudiesDlg.h
+ SalomeApp_Module.h
+ SalomeApp_NoteBook.h
SalomeApp_Study.h
SalomeApp_StudyPropertiesDlg.h
- SalomeApp_ListView.h
- SalomeApp_CheckFileDlg.h
- SalomeApp_ExitDlg.h
- SalomeApp_NoteBook.h
- SalomeApp_DoubleSpinBox.h
- SalomeApp_IntSpinBox.h
)
-QT4_WRAP_CPP(GUI_HEADERS_MOC ${GUI_HEADERS})
-SET(SalomeApp_SOURCES
- SalomeApp_Module.cxx
+# header files / no moc processing
+SET(_other_HEADERS
+ SalomeApp.h
+ SalomeApp_DataObject.h
+ SalomeApp_Engine_i.h
+ SalomeApp_ExceptionHandler.h
+ SalomeApp_Filter.h
+ SalomeApp_ImportOperation.h
+ SalomeApp_PyInterp.h
+ SalomeApp_Tools.h
+ SalomeApp_TypeFilter.h
+ SalomeApp_VisualState.h
+)
+
+# header files / to install
+SET(SalomeApp_HEADERS ${_moc_HEADERS} ${_other_HEADERS})
+
+# --- resources ---
+
+# resource files / to be processed by lrelease
+SET(_ts_RESOURCES
+ resources/SalomeApp_images.ts
+ resources/SalomeApp_msg_en.ts
+ resources/SalomeApp_msg_fr.ts
+ resources/SalomeApp_msg_ja.ts
+)
+
+# resource files / static
+SET(_other_RESOURCES
+ resources/SalomeApp.ini
+ resources/SalomeApp.xml
+)
+
+# --- sources ---
+
+# sources / moc wrappings
+QT4_WRAP_CPP(_moc_SOURCES ${_moc_HEADERS})
+
+# sources / static
+SET(_other_SOURCES
SalomeApp_Application.cxx
+ SalomeApp_CheckFileDlg.cxx
SalomeApp_DataModel.cxx
SalomeApp_DataObject.cxx
- SalomeApp_LoadStudiesDlg.cxx
- SalomeApp_Study.cxx
+ SalomeApp_DoubleSpinBox.cxx
+ SalomeApp_Engine_i.cxx
SalomeApp_ExceptionHandler.cxx
+ SalomeApp_ExitDlg.cxx
+ SalomeApp_Filter.cxx
+ SalomeApp_ImportOperation.cxx
+ SalomeApp_IntSpinBox.cxx
+ SalomeApp_ListView.cxx
+ SalomeApp_LoadStudiesDlg.cxx
+ SalomeApp_Module.cxx
+ SalomeApp_NoteBook.cxx
SalomeApp_PyInterp.cxx
+ SalomeApp_Study.cxx
+ SalomeApp_StudyPropertiesDlg.cxx
SalomeApp_Tools.cxx
- SalomeApp_ImportOperation.cxx
- SalomeApp_Filter.cxx
SalomeApp_TypeFilter.cxx
- SalomeApp_StudyPropertiesDlg.cxx
- SalomeApp_ListView.cxx
- SalomeApp_CheckFileDlg.cxx
SalomeApp_VisualState.cxx
- SalomeApp_ExitDlg.cxx
- SalomeApp_NoteBook.cxx
- SalomeApp_DoubleSpinBox.cxx
- SalomeApp_IntSpinBox.cxx
- SalomeApp_Engine_i.cxx
)
-SET(GUITS_SOURCES
- resources/SalomeApp_images.ts
- resources/SalomeApp_msg_en.ts
- resources/SalomeApp_msg_fr.ts
- resources/SalomeApp_msg_ja.ts
-)
+# sources / to compile
+SET(SalomeApp_SOURCES ${_other_SOURCES} ${_moc_SOURCES})
-ADD_DEFINITIONS(${QT_DEFINITIONS} ${LIBXML2_DEFINITIONS} ${OMNIORB_DEFINITIONS} ${QWT_DEFINITIONS} ${CAS_DEFINITIONS} ${BOOST_DEFINITIONS} ${PYTHON_DEFINITIONS})
+# --- scripts ---
-ADD_LIBRARY(SalomeApp ${SalomeApp_SOURCES} ${GUI_HEADERS_MOC})
-TARGET_LINK_LIBRARIES(SalomeApp ${COMMON_LIBS})
-INSTALL(TARGETS SalomeApp EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
+# scripts / bin
+SET(_bin_SCRIPTS
+ addvars2notebook.py
+)
-SET(COMMON_HEADERS_H
- SalomeApp.h
- SalomeApp_Application.h
- SalomeApp_DataModel.h
- SalomeApp_DataObject.h
- SalomeApp_LoadStudiesDlg.h
- SalomeApp_Module.h
- SalomeApp_Study.h
- SalomeApp_ExceptionHandler.h
- SalomeApp_PyInterp.h
- SalomeApp_Tools.h
- SalomeApp_ImportOperation.h
- SalomeApp_Filter.h
- SalomeApp_TypeFilter.h
- SalomeApp_StudyPropertiesDlg.h
- SalomeApp_CheckFileDlg.h
- SalomeApp_VisualState.h
- SalomeApp_ExitDlg.h
- SalomeApp_NoteBook.h
- SalomeApp_DoubleSpinBox.h
- SalomeApp_IntSpinBox.h
- SalomeApp_Engine_i.h
+# scripts / python
+SET(_py_SCRIPTS
+ salome_pluginsmanager.py
)
-INSTALL(FILES ${COMMON_HEADERS_H} DESTINATION ${SALOME_INSTALL_HEADERS})
-QT4_INSTALL_TS_RESOURCES("${GUITS_SOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
+# --- rules ---
+
+ADD_LIBRARY(SalomeApp ${SalomeApp_SOURCES})
+TARGET_LINK_LIBRARIES(SalomeApp ${_link_LIBRARIES})
+INSTALL(TARGETS SalomeApp EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
+
+INSTALL(FILES ${SalomeApp_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
+QT4_INSTALL_TS_RESOURCES("${_ts_RESOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
-FILE(GLOB GUIPNG_DATA "${CMAKE_CURRENT_SOURCE_DIR}/resources/*.png")
-SET(INST_DATA ${GUIPNG_DATA} resources/SalomeApp.ini resources/SalomeApp.xml)
-INSTALL(FILES ${INST_DATA} DESTINATION ${SALOME_GUI_INSTALL_RES_DATA})
+INSTALL(FILES ${_other_RESOURCES} DESTINATION ${SALOME_GUI_INSTALL_RES_DATA})
-# python modules
-SALOME_INSTALL_SCRIPTS("salome_pluginsmanager.py" ${SALOME_INSTALL_PYTHON})
-SALOME_INSTALL_SCRIPTS("addvars2notebook.py" ${SALOME_INSTALL_SCRIPT_PYTHON})
+SALOME_INSTALL_SCRIPTS("${_py_SCRIPTS}" ${SALOME_INSTALL_PYTHON})
+SALOME_INSTALL_SCRIPTS("${_bin_SCRIPTS}" ${SALOME_INSTALL_SCRIPT_PYTHON})
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
#
+# --- options ---
+
+# additional include directories
INCLUDE_DIRECTORIES(
${CPPUNIT_INCLUDE_DIRS}
${KERNEL_INCLUDE_DIRS}
)
-SET(COMMON_LIBS ${CPPUNIT_LIBRARIES} ${PLATFORM_LIBS})
-
+# additional preprocessor / compiler flags
ADD_DEFINITIONS(${CPPUNIT_DEFINITIONS})
-ADD_LIBRARY(SalomeAppTest SalomeAppTest.cxx)
-TARGET_LINK_LIBRARIES(SalomeAppTest ${COMMON_LIBS})
-INSTALL(TARGETS SalomeAppTest EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
+# libraries to link to
+SET(_link_LIBRARIES ${CPPUNIT_LIBRARIES} ${PLATFORM_LIBS})
+
+# --- rules ---
ADD_EXECUTABLE(TestSalomeApp TestSalomeApp.cxx)
-TARGET_LINK_LIBRARIES(TestSalomeApp SalomeAppTest ${COMMON_LIBS})
+TARGET_LINK_LIBRARIES(TestSalomeApp ${_link_LIBRARIES})
INSTALL(TARGETS TestSalomeApp DESTINATION ${SALOME_INSTALL_BINS}) # TODO: should it be exported?
-INSTALL(FILES SalomeAppTest.hxx DESTINATION ${SALOME_INSTALL_HEADERS})
SALOME_INSTALL_SCRIPTS("TestSalomeApp.py" ${SALOME_INSTALL_SCRIPT_PYTHON})
+++ /dev/null
-// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-//
-// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
-// 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.
-//
-// 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
-//
-
-#include "SalomeAppTest.hxx"
-
-// ============================================================================
-/*!
- * Set up the environment
- */
-// ============================================================================
-
-void SalomeAppTest::setUp()
-{
-}
-
-// ============================================================================
-/*!
- * - delete
- */
-// ============================================================================
-
-void SalomeAppTest::tearDown()
-{
-}
-
-// ============================================================================
-/*!
- * Check SalomeApp functionality
- */
-// ============================================================================
-void SalomeAppTest::testSalomeApp()
-{
-}
-
-
-
-
+++ /dev/null
-// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-//
-// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
-// 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.
-//
-// 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
-//
-
-#ifndef _SalomeAppTEST_HXX_
-#define _SalomeAppTEST_HXX_
-
-#include <cppunit/extensions/HelperMacros.h>
-
-#ifdef WIN32
-# if defined SALOMEAPPTEST_EXPORTS || defined SalomeAppTest_EXPORTS
-# define SALOMEAPPTEST_EXPORT __declspec( dllexport )
-# else
-# define SALOMEAPPTEST_EXPORT __declspec( dllimport )
-# endif
-#else
-# define SALOMEAPPTEST_EXPORT
-#endif
-
-class SALOMEAPPTEST_EXPORT SalomeAppTest : public CppUnit::TestFixture
-{
- CPPUNIT_TEST_SUITE( SalomeAppTest );
- CPPUNIT_TEST( testSalomeApp );
- CPPUNIT_TEST_SUITE_END();
-
-public:
-
- void setUp();
- void tearDown();
- void testSalomeApp();
-};
-
-#endif
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
//
-// --- include all SalomeApp Test from basics until the present directory
-//
-#include "SalomeAppTest.hxx"
+#include <cppunit/extensions/HelperMacros.h>
+
+/*!
+ \class SalomeAppTest: test suit
+*/
+class SalomeAppTest : public CppUnit::TestFixture
+{
+ CPPUNIT_TEST_SUITE( SalomeAppTest );
+ CPPUNIT_TEST( testSalomeApp );
+ CPPUNIT_TEST_SUITE_END();
+
+public:
+ void setUp();
+ void tearDown();
+ void testSalomeApp();
+};
+
+/*!
+ Set up each test case
+*/
+void SalomeAppTest::setUp()
+{
+}
+/*!
+ Clean-up each test case
+*/
+void SalomeAppTest::tearDown()
+{
+}
+/*!
+ Check SalomeApp functionality (empty for the moment)
+*/
+void SalomeAppTest::testSalomeApp()
+{
+ printf("asdasdasdasdsadasdasdsdasdsad\n");
+}
-// --- Registers the fixture into the 'registry'
+// --- Register the fixture into the 'registry'
CPPUNIT_TEST_SUITE_REGISTRATION( SalomeAppTest );
-// --- generic Main program from Basic/Test
+// --- Generic main() program from Basics/Test (KERNEL module)
#include "BasicMainTest.hxx"
# variable *_ROOT_DIR).
#
-SET(plugins_PYTHON
- salome_plugins.py
- smesh_plugins.py
+# --- scripts ---
+
+# scripts / static
+# TODO: process UIC files via PyQt4 pyuic tool, see UsePyQt4.cmake
+SET(_plugins_SCRIPTS
+ minmax_dialog.py
+ minmax_plugin.py
trihedron.py
tubedialog_ui.py
tubedialog.py
tubebuilder.py
+ salome_plugins.py
+ smesh_plugins.py
xalome.py
- minmax_dialog.py
- minmax_plugin.py
)
-SALOME_INSTALL_SCRIPTS("${plugins_PYTHON}" ${SALOME_GUI_INSTALL_PLUGINS}/demo DEF_PERMS)
+# --- rules ---
+
+SALOME_INSTALL_SCRIPTS("${_plugins_SCRIPTS}" ${SALOME_GUI_INSTALL_PLUGINS}/demo DEF_PERMS)
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
#
+# --- options ---
+
+# additional include directories
INCLUDE_DIRECTORIES(
${QT_INCLUDES}
${LIBXML2_INCLUDE_DIR}
${PYTHON_INCLUDE_DIRS}
- ${HDF5_INCLUDE_DIRS}
- ${Boost_INCLUDE_DIRS}
${CAS_INCLUDE_DIRS}
${OMNIORB_INCLUDE_DIR}
- ${PTHREAD_INCLUDE_DIRS}
${KERNEL_INCLUDE_DIRS}
- ${PROJECT_BINARY_DIR}/idl
${PROJECT_BINARY_DIR}
- ${CMAKE_CURRENT_SOURCE_DIR}/../Qtx
- ${CMAKE_CURRENT_SOURCE_DIR}/../SUIT
- ${CMAKE_CURRENT_SOURCE_DIR}/../Event
- ${CMAKE_CURRENT_SOURCE_DIR}/../Style
- ${CMAKE_CURRENT_SOURCE_DIR}/../CASCatch
+ ${PROJECT_SOURCE_DIR}/src/Qtx
+ ${PROJECT_SOURCE_DIR}/src/SUIT
+ ${PROJECT_SOURCE_DIR}/src/Event
+ ${PROJECT_SOURCE_DIR}/src/Style
+)
+
+# additional preprocessor / compiler flags
+ADD_DEFINITIONS(
+ ${QT_DEFINITIONS}
+ ${LIBXML2_DEFINITIONS}
+ ${PYTHON_DEFINITIONS}
+ ${CAS_DEFINITIONS}
+ ${OMNIORB_DEFINITIONS}
)
+IF(ENABLE_TESTRECORDER)
+ ADD_DEFINITIONS("-DENABLE_TESTRECORDER ${TESTRECORDER_DEFINITIONS}")
+ENDIF()
-SET(COMMON_LIBS
+# libraries to link to
+SET(_link_LIBRARIES
+ ${QT_LIBRARIES}
+ ${CAS_KERNEL}
+ ${OMNIORB_LIBRARIES}
${KERNEL_SalomeNS}
${KERNEL_SalomeLifeCycleCORBA}
${KERNEL_OpUtil}
${KERNEL_SALOMELocalTrace}
${KERNEL_SalomeCatalog}
${KERNEL_SalomeDSClient}
- ${CAS_KERNEL}
${KERNEL_with_loggerTraceCollector}
${KERNEL_SalomeIDLKernel}
${KERNEL_SalomeContainer}
- ${KERNEL_TOOLSDS}
${KERNEL_SalomeLauncher}
${KERNEL_Registry}
${KERNEL_SALOMEBasics}
- ${OMNIORB_LIBRARIES}
- suit
- Event
- SalomeIDLGUI
- SalomeStyle
- ${QT_LIBRARIES}
+ qtx suit Event SalomeStyle SalomeIDLGUI
)
+IF(ENABLE_TESTRECORDER)
+ LIST(APPEND _link_LIBRARIES ${TESTRECORDER_LIBS})
+ENDIF()
-ADD_DEFINITIONS(${QT_DEFINITIONS} ${LIBXML2_DEFINITIONS} ${PYTHON_DEFINITIONS} ${HDF5_DEFINITIONS} ${BOOST_DEFINITIONS} ${CAS_DEFINITIONS} ${OMNIORB_DEFINITIONS})
+# --- headers ---
-IF(ENABLE_TESTRECORDER)
- ADD_DEFINITIONS("-DENABLE_TESTRECORDER ${TESTRECORDER_DEFINITIONS}")
- SET(COMMON_LIBS ${COMMON_LIBS} ${TESTRECORDER_LIBS})
-ENDIF(ENABLE_TESTRECORDER)
+# header files / to install
+SET(SalomeSession_HEADERS
+ SALOME_Session.hxx
+ Session_ServerCheck.hxx
+ Session_ServerLauncher.hxx
+ Session_ServerThread.hxx
+ Session_Session_i.hxx
+)
+
+# --- sources ---
+# sources / to compile
SET(SalomeSession_SOURCES
- Session_Session_i.cxx
- Session_ServerThread.cxx
- Session_ServerLauncher.cxx
Session_ServerCheck.cxx
+ Session_ServerLauncher.cxx
+ Session_ServerThread.cxx
+ Session_Session_i.cxx
)
+
+# --- rules ---
+
ADD_LIBRARY(SalomeSession ${SalomeSession_SOURCES})
-TARGET_LINK_LIBRARIES(SalomeSession ${COMMON_LIBS})
+TARGET_LINK_LIBRARIES(SalomeSession ${_link_LIBRARIES})
INSTALL(TARGETS SalomeSession EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
-SET(SALOME_Session_Server_LIBS
- ${COMMON_LIBS}
- ${SalomeContainer}
- ${SalomeResourcesManager}
- ${TOOLSDS}
- ${SalomeHDFPersist}
- ${SalomeDSImpl}
- ${SalomeGenericObj}
- ${Registry}
- ${SalomeNotification}
- ${SALOMEBasics}
- ${SalomeLauncher}
- qtx
- SalomeIDLGUI
- SalomeSession
- ${HDF5_LIBRARIES}
- ${PYTHON_LIBRARIES}
- ${OMNIORB_LIBRARIES}
-)
ADD_EXECUTABLE(SALOME_Session_Server SALOME_Session_Server.cxx)
-TARGET_LINK_LIBRARIES(SALOME_Session_Server ${SALOME_Session_Server_LIBS})
+TARGET_LINK_LIBRARIES(SALOME_Session_Server ${_link_LIBRARIES} SalomeSession)
INSTALL(TARGETS SALOME_Session_Server EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_BINS})
-SET(COMMON_HEADERS_H
- Session_Session_i.hxx
- SALOME_Session.hxx
- Session_ServerLauncher.hxx
- Session_ServerThread.hxx
- Session_ServerCheck.hxx
-)
-INSTALL(FILES ${COMMON_HEADERS_H} DESTINATION ${SALOME_INSTALL_HEADERS})
+INSTALL(FILES ${SalomeSession_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
#
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
#
+
INCLUDE(UseQt4Ext)
+# --- options ---
+
+# additional include directories
INCLUDE_DIRECTORIES(
${QT_INCLUDES}
- ${KERNEL_INCLUDE_DIRS}
- ${CMAKE_CURRENT_SOURCE_DIR}
- ${CMAKE_CURRENT_SOURCE_DIR}/../Qtx
+ ${PROJECT_SOURCE_DIR}/src/Qtx
)
-SET(COMMON_LIBS ${QT_LIBRARIES} qtx)
+# additional preprocessor / compiler flags
+ADD_DEFINITIONS(${QT_DEFINITIONS})
+
+# libraries to link to
+SET(_link_LIBRARIES ${QT_LIBRARIES} qtx)
-SET(GUI_HEADERS
+# --- headers ---
+
+# header files / to be processed by moc
+SET(_moc_HEADERS
Style_PrefDlg.h
Style_Salome.h
)
-QT4_WRAP_CPP(GUI_HEADERS_MOC ${GUI_HEADERS})
-
-SET(RCCS Style.qrc)
-QT4_ADD_RESOURCES(RCC_SRCS ${RCCS})
-SET(SalomeStyle_SOURCES
- Style.h
+# header files / internal
+# no processing currently: TODO: check for MSVS project
+SET(_internal_HEADERS
Style_Model.h
- Style_PrefDlg.h
- Style_Salome.h
- Style_Tools.h
Style_ResourceMgr.h
+ Style_Tools.h
+)
+
+# header files / no moc processing
+SET(_other_HEADERS
+ Style.h
+)
+
+# header files / to install (internal ones are excluded)
+SET(SalomeStyle_HEADERS ${_moc_HEADERS} ${_other_HEADERS})
+
+# --- resources ---
+
+# resource files / to be processed by rcc
+SET(_rcc_RESOURCES Style.qrc)
+
+# resource files / to be processed by lrelease
+SET(_ts_RESOURCES resources/Style_msg_fr.ts)
+
+# resource files / other (static)
+SET(_other_RESOURCES resources/SalomeStyle.xml)
+
+# --- sources ---
+
+# sources / moc wrappings
+QT4_WRAP_CPP(_moc_SOURCES ${_moc_HEADERS})
+
+# sources / rcc wrappings
+QT4_ADD_RESOURCES(_rcc_SOURCES ${_rcc_RESOURCES})
+
+# sources / static
+SET(_other_SOURCES
Style_Model.cxx
Style_PrefDlg.cxx
Style_ResourceMgr.cxx
Style_Tools.cxx
)
-SET(GUITS_SOURCES
- resources/Style_msg_fr.ts
-)
+# sources / to compile
+SET(SalomeStyle_SOURCES ${_other_SOURCES} ${_moc_SOURCES} ${_rcc_SOURCES})
-ADD_DEFINITIONS(${QT_DEFINITIONS})
+# --- rules ---
-ADD_LIBRARY(SalomeStyle ${SalomeStyle_SOURCES} ${GUI_HEADERS_MOC} ${RCC_SRCS})
-TARGET_LINK_LIBRARIES(SalomeStyle ${COMMON_LIBS})
+ADD_LIBRARY(SalomeStyle ${SalomeStyle_SOURCES})
+TARGET_LINK_LIBRARIES(SalomeStyle ${_link_LIBRARIES})
INSTALL(TARGETS SalomeStyle EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
-SET(COMMON_HEADERS_H
- Style.h
- Style_PrefDlg.h
- Style_Salome.h
-)
-
-INSTALL(FILES ${COMMON_HEADERS_H} DESTINATION ${SALOME_INSTALL_HEADERS})
-QT4_INSTALL_TS_RESOURCES("${GUITS_SOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
+INSTALL(FILES ${SalomeStyle_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
+QT4_INSTALL_TS_RESOURCES("${_ts_RESOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
-INSTALL(FILES resources/SalomeStyle.xml DESTINATION ${SALOME_GUI_INSTALL_RES_DATA})
+INSTALL(FILES "${_other_RESOURCES}" DESTINATION ${SALOME_GUI_INSTALL_RES_DATA})
INCLUDE(UseQt4Ext)
+# --- options ---
INCLUDE_DIRECTORIES(
- ${CAS_INCLUDE_DIRS}
${QT_INCLUDES}
+ ${CAS_INCLUDE_DIRS}
${OMNIORB_INCLUDE_DIR}
${Boost_INCLUDE_DIRS}
- ${PTHREAD_INCLUDE_DIRS}
${KERNEL_INCLUDE_DIRS}
- ${PROJECT_BINARY_DIR}/idl
- ${CMAKE_CURRENT_SOURCE_DIR}/../Qtx
- ${CMAKE_CURRENT_SOURCE_DIR}/../SUIT)
+ ${PROJECT_SOURCE_DIR}/src/Qtx
+ ${PROJECT_SOURCE_DIR}/src/SUIT
+)
+
+# additional preprocessor / compiler flags
+ADD_DEFINITIONS(
+ ${QT_DEFINITIONS}
+ ${CAS_DEFINITIONS}
+ ${BOOST_DEFINITIONS}
+ ${OMNIORB_DEFINITIONS}
+)
-SET(COMMON_LIBS
+# libraries to link to
+SET(_link_LIBRARIES
${QT_LIBRARIES}
- suit
${CAS_KERNEL}
${KERNEL_SalomeIDLKernel}
${KERNEL_SALOMELocalTrace}
${KERNEL_SalomeNS}
${KERNEL_OpUtil}
${OMNIORB_LIBRARIES}
- SalomeIDLGUI
+ qtx suit
)
-SET(GUI_HEADERS ToolsGUI_CatalogGeneratorDlg.h ToolsGUI_RegWidget.h)
-QT4_WRAP_CPP(GUI_HEADERS ${GUI_HEADERS})
-SET(ToolsGUI_SOURCES
- ToolsGUI_CatalogGeneratorDlg.cxx
- ToolsGUI_RegWidget.cxx
- ToolsGUI.cxx
+# --- headers ---
+
+# header files / to be processed by moc
+SET(_moc_HEADERS
+ ToolsGUI_CatalogGeneratorDlg.h
+ ToolsGUI_RegWidget.h
)
-SET(GUITS_SOURCES
+# header files / no moc processing
+SET(_other_HEADERS
+ ToolsGUI.h
+)
+
+# header files / to install
+SET(ToolsGUI_HEADERS ${_moc_HEADERS} ${_other_HEADERS})
+
+# --- resources ---
+
+# resource files / to be processed by lrelease
+SET(_ts_RESOURCES
resources/ToolsGUI_msg_en.ts
resources/ToolsGUI_msg_fr.ts
resources/ToolsGUI_msg_ja.ts
+)
+
+# --- sources ---
+
+# sources / moc wrappings
+QT4_WRAP_CPP(_moc_SOURCES ${_moc_HEADERS})
+
+# sources / static
+SET(_other_SOURCES
+ ToolsGUI.cxx
+ ToolsGUI_CatalogGeneratorDlg.cxx
+ ToolsGUI_RegWidget.cxx
)
-ADD_DEFINITIONS(${QT_DEFINITIONS} ${CAS_DEFINITIONS} ${BOOST_DEFINITIONS} ${OMNIORB_DEFINITIONS})
+# sources / to compile
+SET(ToolsGUI_SOURCES ${_other_SOURCES} ${_moc_SOURCES})
+# --- rules ---
-ADD_LIBRARY(ToolsGUI ${ToolsGUI_SOURCES} ${GUI_HEADERS})
-TARGET_LINK_LIBRARIES(ToolsGUI ${COMMON_LIBS})
+ADD_LIBRARY(ToolsGUI ${ToolsGUI_SOURCES})
+TARGET_LINK_LIBRARIES(ToolsGUI ${_link_LIBRARIES})
INSTALL(TARGETS ToolsGUI EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
-FILE(GLOB COMMON_HEADERS_H "${CMAKE_CURRENT_SOURCE_DIR}/*.h")
-INSTALL(FILES ${COMMON_HEADERS_H} DESTINATION ${SALOME_INSTALL_HEADERS})
-QT4_INSTALL_TS_RESOURCES("${GUITS_SOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
+INSTALL(FILES ${ToolsGUI_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
+QT4_INSTALL_TS_RESOURCES("${_ts_RESOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
#
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
#
-INCLUDE(UseQt4Ext)
ADD_SUBDIRECTORY(Test)
+INCLUDE(UseQt4Ext)
+
+# --- options ---
+
+# additional include directories
INCLUDE_DIRECTORIES(
${CAS_INCLUDE_DIRS}
${QT_INCLUDES}
${OMNIORB_INCLUDE_DIR}
${Boost_INCLUDE_DIRS}
- ${PTHREAD_INCLUDE_DIRS}
${KERNEL_INCLUDE_DIRS}
- ${CMAKE_CURRENT_SOURCE_DIR}/../SalomeApp
- ${CMAKE_CURRENT_SOURCE_DIR}/../LightApp
- ${CMAKE_CURRENT_SOURCE_DIR}/../CAM
- ${CMAKE_CURRENT_SOURCE_DIR}/../STD
- ${CMAKE_CURRENT_SOURCE_DIR}/../ObjBrowser
- ${CMAKE_CURRENT_SOURCE_DIR}/../SUIT
- ${CMAKE_CURRENT_SOURCE_DIR}/../Qtx
- ${CMAKE_CURRENT_SOURCE_DIR}/../GuiHelpers
+ ${PROJECT_SOURCE_DIR}/src/CAM
+ ${PROJECT_SOURCE_DIR}/src/GuiHelpers
+ ${PROJECT_SOURCE_DIR}/src/LightApp
+ ${PROJECT_SOURCE_DIR}/src/ObjBrowser
+ ${PROJECT_SOURCE_DIR}/src/Qtx
+ ${PROJECT_SOURCE_DIR}/src/STD
+ ${PROJECT_SOURCE_DIR}/src/SUIT
+ ${PROJECT_SOURCE_DIR}/src/SalomeApp
)
+# additional preprocessor / compiler flags
+ADD_DEFINITIONS(
+ ${CAS_DEFINITIONS}
+ ${QT_DEFINITIONS}
+ ${BOOST_DEFINITIONS}
+ ${OMNIORB_DEFINITIONS}
+)
-SET(COMMON_LIBS
+# libraries to link to
+SET(_link_LIBRARIES
${OMNIORB_LIBRARIES}
${QT_LIBRARIES}
- ${KERNEL_LDFLAGS}
- ${KERNEL_SalomeLifeCycleCORBA}
- ${KERNEL_SalomeKernelHelpers}
- SalomeApp
- LightApp
- suit
- qtx
- CAM
- std
- ObjBrowser
+ ${KERNEL_SalomeLifeCycleCORBA} ${KERNEL_SalomeKernelHelpers}
+ qtx suit std CAM ObjBrowser LightApp SalomeApp
)
-SET(GUI_HEADERS TreeModel.hxx TreeView.hxx TreeObserver.hxx)
-QT4_WRAP_CPP(GUI_HEADERS_MOC ${GUI_HEADERS})
-SET(SalomeTreeData_SOURCES
- DockWidgets.cxx
- TreeModel.cxx
- TreeItem.cxx
- TreeView.cxx
- TreeObserver.cxx
+# --- headers ---
+
+# header files / to be processed by moc
+SET(_moc_HEADERS
+ TreeModel.hxx
+ TreeObserver.hxx
+ TreeView.hxx
+)
+
+# header files / no moc processing
+SET(_other_HEADERS
+ DataModel.hxx
+ DataObject.hxx
+ DataProcessor.hxx
+ DockWidgets.hxx
+ TreeData.hxx
+ TreeGuiManager.hxx
+ TreeItem.hxx
+)
+
+# header files / to install
+SET(SalomeTreeData_HEADERS ${_moc_HEADERS} ${_other_HEADERS})
+
+# --- sources ---
+
+# sources / moc wrappings
+QT4_WRAP_CPP(_moc_SOURCES ${_moc_HEADERS})
+
+# sources / static
+SET(_other_SOURCES
DataModel.cxx
DataObject.cxx
DataProcessor.cxx
+ DockWidgets.cxx
TreeGuiManager.cxx
+ TreeItem.cxx
+ TreeModel.cxx
+ TreeObserver.cxx
+ TreeView.cxx
)
-ADD_DEFINITIONS(${CAS_DEFINITIONS} ${QT_DEFINITIONS} ${BOOST_DEFINITIONS} ${OMNIORB_DEFINITIONS})
+# sources / to compile
+SET(SalomeTreeData_SOURCES ${_other_SOURCES} ${_moc_SOURCES})
+
+# --- rules ---
-ADD_LIBRARY(SalomeTreeData ${SalomeTreeData_SOURCES} ${GUI_HEADERS_MOC})
-TARGET_LINK_LIBRARIES(SalomeTreeData ${COMMON_LIBS})
+ADD_LIBRARY(SalomeTreeData ${SalomeTreeData_SOURCES})
+TARGET_LINK_LIBRARIES(SalomeTreeData ${_link_LIBRARIES})
INSTALL(TARGETS SalomeTreeData EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
-FILE(GLOB COMMON_HEADERS_HXX "${CMAKE_CURRENT_SOURCE_DIR}/*.hxx")
-INSTALL(FILES ${COMMON_HEADERS_HXX} DESTINATION ${SALOME_INSTALL_HEADERS})
+INSTALL(FILES ${SalomeTreeData_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
#
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
#
+
INCLUDE(UseQt4Ext)
+# --- options ---
+
+# additional include directories
INCLUDE_DIRECTORIES(
${OMNIORB_INCLUDE_DIR}
${QT_INCLUDES}
${PROJECT_SOURCE_DIR}/src/TreeData
)
-SET(COMMON_LIBS
+# additional preprocessor / compiler flags
+ADD_DEFINITIONS(${OMNIORB_DEFINITIONS} ${QT_DEFINITIONS})
+
+# libraries to link to
+SET(_link_LIBRARIES
${CORBA_LIBS}
${QT_LIBRARIES}
- SalomeTreeData
- SalomeGuiHelpers
- ${SalomeLifeCycleCORBA}
- ${SalomeKernelHelpers}
+ SalomeTreeData SalomeGuiHelpers
+ ${KERNEL_SalomeLifeCycleCORBA} ${KERNEL_SalomeKernelHelpers}
)
-SET(GUI_HEADERS mainwindow.hxx)
-QT4_WRAP_CPP(GUI_HEADERS ${GUI_HEADERS})
-SET(GUI_FORMS mainwindow.ui)
-QT4_WRAP_UI(GUI_FORMS_HEADERS ${GUI_FORMS})
+# --- resources ---
-SET(TreeData_guitester_SOURCES
- testhelper.cxx
- guitester.cxx
- mainwindow.cxx
- MyDataModel.cxx
-)
+# resource files / to be processed by uic
+SET(_uic_files mainwindow.ui)
-ADD_DEFINITIONS(${OMNIORB_DEFINITIONS} ${QT_DEFINITIONS})
+# --- headers ---
-ADD_EXECUTABLE(TreeData_guitester ${TreeData_guitester_SOURCES} ${GUI_HEADERS} ${GUI_FORMS_HEADERS})
-TARGET_LINK_LIBRARIES(TreeData_guitester ${COMMON_LIBS})
+# header files / to be processed by moc
+SET(_moc_HEADERS mainwindow.hxx)
-SET(TreeData_tester_SOURCES
- tester.cxx
- MyDataModel.cxx
-)
+# header files / uic wrappings
+QT4_WRAP_UI(_uic_HEADERS ${_uic_files})
+
+# --- sources ---
+
+# sources / moc wrappings
+QT4_WRAP_CPP(_moc_SOURCES ${_moc_HEADERS})
+
+# sources / to compile
+SET(TreeData_guitester_SOURCES MyDataModel.cxx guitester.cxx mainwindow.cxx testhelper.cxx ${_moc_SOURCES} ${_uic_HEADERS})
+SET(TreeData_tester_SOURCES MyDataModel.cxx tester.cxx)
+
+# --- rules ---
+
+ADD_EXECUTABLE(TreeData_guitester ${TreeData_guitester_SOURCES})
+TARGET_LINK_LIBRARIES(TreeData_guitester ${_link_LIBRARIES})
ADD_EXECUTABLE(TreeData_tester ${TreeData_tester_SOURCES})
-TARGET_LINK_LIBRARIES(TreeData_tester ${COMMON_LIBS})
+TARGET_LINK_LIBRARIES(TreeData_tester ${_link_LIBRARIES})
INSTALL(TARGETS TreeData_guitester TreeData_tester DESTINATION ${SALOME_INSTALL_BINS})
#
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
#
+
INCLUDE(UseQt4Ext)
INCLUDE(${VTK_USE_FILE})
+# --- options ---
+
+# additional include directories
INCLUDE_DIRECTORIES(
${CAS_INCLUDE_DIRS}
${QT_INCLUDES}
- ${PTHREAD_INCLUDE_DIRS}
${KERNEL_INCLUDE_DIRS}
- ${CMAKE_CURRENT_SOURCE_DIR}/../Qtx
- ${CMAKE_CURRENT_SOURCE_DIR}/../SUIT
+ ${PROJECT_SOURCE_DIR}/src/Qtx
+ ${PROJECT_SOURCE_DIR}/src/SUIT
)
+# additional preprocessor / compiler flags
ADD_DEFINITIONS(${CAS_DEFINITIONS} ${QT_DEFINITIONS})
-SET(COMMON_LIBS ${QT_LIBRARIES} ${OPENGL_LIBRARIES} ${VTK_LIBRARIES} ${CAS_KERNEL} qtx suit ${KERNEL_SALOMELocalTrace})
+# libraries to link to
+SET(_link_LIBRARIES ${QT_LIBRARIES} ${OPENGL_LIBRARIES} ${VTK_LIBRARIES} ${CAS_KERNEL} qtx suit)
-SET(GUI_HEADERS
+# --- headers ---
+
+# header files / to be processed by moc
+SET(_moc_HEADERS
+ VTKViewer_MarkerDlg.h
+ VTKViewer_MarkerWidget.h
VTKViewer_RenderWindow.h
VTKViewer_RenderWindowInteractor.h
VTKViewer_ViewManager.h
VTKViewer_ViewModel.h
VTKViewer_ViewWindow.h
- VTKViewer_MarkerWidget.h
- VTKViewer_MarkerDlg.h
)
-QT4_WRAP_CPP(GUI_HEADERS_MOC ${GUI_HEADERS})
-SET(RCCS VTKViewer.qrc)
-QT4_ADD_RESOURCES(RCC_SRCS ${RCCS})
+# header files / no moc processing
+SET(_other_HEADERS
+ VTKViewer.h
+ VTKViewer_Actor.h
+ VTKViewer_AppendFilter.h
+ VTKViewer_Algorithm.h
+ VTKViewer_ArcBuilder.h
+ VTKViewer_CellCenters.h
+ VTKViewer_CellLocationsArray.h
+ VTKViewer_ConvexTool.h
+ VTKViewer_DataSetMapper.h
+ VTKViewer_ExtractUnstructuredGrid.h
+ VTKViewer_Filter.h
+ VTKViewer_FramedTextActor.h
+ VTKViewer_Functor.h
+ VTKViewer_GeometryFilter.h
+ VTKViewer_InteractorStyle.h
+ VTKViewer_MarkerDef.h
+ VTKViewer_MarkerUtils.h
+ VTKViewer_OpenGLRenderer.h
+ VTKViewer_PolyDataMapper.h
+ VTKViewer_ShrinkFilter.h
+ VTKViewer_Texture.h
+ VTKViewer_Transform.h
+ VTKViewer_TransformFilter.h
+ VTKViewer_Trihedron.h
+ VTKViewer_Utilities.h
+)
+
+# header files / to install
+SET(VTKViewer_HEADERS ${_moc_HEADERS} ${_other_HEADERS})
-SET(VTKViewer_SOURCES
- VTKViewer_CellLocationsArray.cxx
+# --- resources ---
+
+# resource files / to be processed by rcc
+SET(_rcc_RESOURCES VTKViewer.qrc)
+
+# resource files / to be processed by lrelease
+SET(_ts_RESOURCES
+ resources/VTKViewer_images.ts
+ resources/VTKViewer_msg_en.ts
+ resources/VTKViewer_msg_fr.ts
+ resources/VTKViewer_msg_ja.ts
+)
+
+# resource files / static
+SET(_other_RESOURCES
+ resources/vtk_view_anticlockwise.png
+ resources/vtk_view_clockwise.png
+ resources/vtk_view_back.png
+ resources/vtk_view_bottom.png
+ resources/vtk_view_camera_dump.png
+ resources/vtk_view_fitall.png
+ resources/vtk_view_fitarea.png
+ resources/vtk_view_front.png
+ resources/vtk_view_glpan.png
+ resources/vtk_view_left.png
+ resources/vtk_view_pan.png
+ resources/vtk_view_reset.png
+ resources/vtk_view_right.png
+ resources/vtk_view_rotate.png
+ resources/vtk_view_top.png
+ resources/vtk_view_triedre.png
+ resources/vtk_view_zoom.png
+ resources/marker_1.png
+ resources/marker_2.png
+ resources/marker_3.png
+ resources/marker_4.png
+ resources/marker_5.png
+ resources/marker_6.png
+ resources/marker_7.png
+ resources/marker_8.png
+ resources/marker_9.png
+)
+
+# --- sources ---
+
+# sources / rcc wrappings
+QT4_ADD_RESOURCES(_rcc_SOURCES ${_rcc_RESOURCES})
+
+# sources / moc wrappings
+QT4_WRAP_CPP(_moc_SOURCES ${_moc_HEADERS})
+
+# sources / static
+SET(_other_SOURCES
VTKViewer_Actor.cxx
- VTKViewer_FramedTextActor.cxx
+ VTKViewer_Algorithm.cxx
+ VTKViewer_AppendFilter.cxx
+ VTKViewer_ArcBuilder.cxx
+ VTKViewer_CellCenters.cxx
+ VTKViewer_CellLocationsArray.cxx
+ VTKViewer_ConvexTool.cxx
+ VTKViewer_DataSetMapper.cxx
VTKViewer_ExtractUnstructuredGrid.cxx
VTKViewer_Filter.cxx
+ VTKViewer_FramedTextActor.cxx
VTKViewer_GeometryFilter.cxx
- VTKViewer_AppendFilter.cxx
- VTKViewer_Algorithm.cxx
VTKViewer_InteractorStyle.cxx
+ VTKViewer_MarkerDlg.cxx
+ VTKViewer_MarkerUtils.cxx
+ VTKViewer_MarkerWidget.cxx
+ VTKViewer_OpenGLRenderer.cxx
+ VTKViewer_PolyDataMapper.cxx
VTKViewer_RenderWindow.cxx
VTKViewer_RenderWindowInteractor.cxx
VTKViewer_ShrinkFilter.cxx
+ VTKViewer_Texture.cxx
VTKViewer_Transform.cxx
VTKViewer_TransformFilter.cxx
VTKViewer_Trihedron.cxx
VTKViewer_Utilities.cxx
VTKViewer_ViewManager.cxx
VTKViewer_ViewModel.cxx
- VTKViewer_ConvexTool.cxx
VTKViewer_ViewWindow.cxx
- VTKViewer_ArcBuilder.cxx
- VTKViewer_MarkerUtils.cxx
- VTKViewer_MarkerWidget.cxx
- VTKViewer_MarkerDlg.cxx
- VTKViewer_PolyDataMapper.cxx
- VTKViewer_DataSetMapper.cxx
- VTKViewer_Texture.cxx
- VTKViewer_OpenGLRenderer.cxx
- VTKViewer_CellCenters.cxx
-)
-
-SET(GUITS_SOURCES
- resources/VTKViewer_images.ts
- resources/VTKViewer_msg_en.ts
- resources/VTKViewer_msg_fr.ts
- resources/VTKViewer_msg_ja.ts
)
-ADD_LIBRARY(VTKViewer ${VTKViewer_SOURCES} ${GUI_HEADERS_MOC} ${RCC_SRCS})
-TARGET_LINK_LIBRARIES(VTKViewer ${COMMON_LIBS})
-INSTALL(TARGETS VTKViewer EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
+# sources / to compile
+SET(VTKViewer_SOURCES ${_other_SOURCES} ${_moc_SOURCES} ${_rcc_SOURCES})
-#ADD_EXECUTABLE(TestVTKViewer VTKViewer.cxx)
-#SET_TARGET_PROPERTIES(TestVTKViewer PROPERTIES COMPILE_FLAGS "${COMMON_FLAGS}" OUTPUT_NAME "VTKViewer")
-#TARGET_LINK_LIBRARIES(TestVTKViewer VTKViewer ${COMMON_LIBS})
-#INSTALL(TARGETS TestVTKViewer DESTINATION ${SALOME_INSTALL_BINS})
+# --- rules ---
-SET(COMMON_HEADERS_H
- VTKViewer.h
- VTKViewer_CellLocationsArray.h
- VTKViewer_Actor.h
- VTKViewer_FramedTextActor.h
- VTKViewer_ExtractUnstructuredGrid.h
- VTKViewer_ConvexTool.h
- VTKViewer_Filter.h
- VTKViewer_GeometryFilter.h
- VTKViewer_AppendFilter.h
- VTKViewer_Algorithm.h
- VTKViewer_InteractorStyle.h
- VTKViewer_RenderWindow.h
- VTKViewer_RenderWindowInteractor.h
- VTKViewer_ShrinkFilter.h
- VTKViewer_TransformFilter.h
- VTKViewer_Transform.h
- VTKViewer_Trihedron.h
- VTKViewer_Utilities.h
- VTKViewer_ViewManager.h
- VTKViewer_ViewModel.h
- VTKViewer_ViewWindow.h
- VTKViewer_Functor.h
- VTKViewer_ArcBuilder.h
- VTKViewer_MarkerDef.h
- VTKViewer_MarkerUtils.h
- VTKViewer_MarkerWidget.h
- VTKViewer_MarkerDlg.h
- VTKViewer_PolyDataMapper.h
- VTKViewer_DataSetMapper.h
- VTKViewer_Texture.h
- VTKViewer_OpenGLRenderer.h
- VTKViewer_CellCenters.h
-)
+ADD_LIBRARY(VTKViewer ${VTKViewer_SOURCES})
+TARGET_LINK_LIBRARIES(VTKViewer ${_link_LIBRARIES})
+INSTALL(TARGETS VTKViewer EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
-INSTALL(FILES ${COMMON_HEADERS_H} DESTINATION ${SALOME_INSTALL_HEADERS})
-QT4_INSTALL_TS_RESOURCES("${GUITS_SOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
+INSTALL(FILES ${VTKViewer_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
+QT4_INSTALL_TS_RESOURCES("${_ts_RESOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
-FILE(GLOB GUIPNG_DATA "${CMAKE_CURRENT_SOURCE_DIR}/resources/*.png")
-INSTALL(FILES ${GUIPNG_DATA} DESTINATION ${SALOME_GUI_INSTALL_RES_DATA})
+INSTALL(FILES ${_other_RESOURCES} DESTINATION ${SALOME_GUI_INSTALL_RES_DATA})
+++ /dev/null
-// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
-//
-// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
-// 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.
-//
-// 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
-//
-
-// SALOME VTKViewer : build VTK viewer into Salome desktop
-// File :
-// Author :
-
-#include "VTKViewer_Actor.h"
-#include "VTKViewer_ExtractUnstructuredGrid.h"
-#include "VTKViewer_ConvexTool.h"
-#include "VTKViewer_Filter.h"
-#include "VTKViewer_GeometryFilter.h"
-#include "VTKViewer_AppendFilter.h"
-#include "VTKViewer_Algorithm.h"
-#include "VTKViewer_InteractorStyle.h"
-#include "VTKViewer_RenderWindow.h"
-#include "VTKViewer_RenderWindowInteractor.h"
-#include "VTKViewer_ShrinkFilter.h"
-#include "VTKViewer_TransformFilter.h"
-#include "VTKViewer_Transform.h"
-#include "VTKViewer_Trihedron.h"
-#include "VTKViewer_Utilities.h"
-#include "VTKViewer_ViewManager.h"
-#include "VTKViewer_ViewModel.h"
-#include "VTKViewer_ViewWindow.h"
-#include "VTKViewer_Functor.h"
-
-int
-main(int argc, char** argv)
-{
- return 0;
-}
INCLUDE(UseQt4Ext)
+# --- options ---
+
+# additional include directories
INCLUDE_DIRECTORIES(
${QT_INCLUDES}
- ${CMAKE_CURRENT_SOURCE_DIR}/../Qtx
+ ${PROJECT_SOURCE_DIR}/src/Qtx
)
-SET(GUI_HEADERS ViewerTools_CubeAxesDlgBase.h ViewerTools_DialogBase.h ViewerTools_FontWidgetBase.h)
-QT4_WRAP_CPP(GUI_HEADERS_MOC ${GUI_HEADERS})
-SET(ViewerTools_SOURCES
- ViewerTools_CubeAxesDlgBase.cxx
- ViewerTools_DialogBase.cxx
- ViewerTools_FontWidgetBase.cxx
+
+# additional preprocessor / compiler flags
+ADD_DEFINITIONS(${QT_DEFINITIONS})
+
+# libraries to link to
+SET(_link_LIBRARIES ${QT_LIBRARIES} qtx)
+
+# --- headers ---
+
+# header files / to be processed by moc
+SET(_moc_HEADERS
+ ViewerTools_CubeAxesDlgBase.h
+ ViewerTools_DialogBase.h
+ ViewerTools_FontWidgetBase.h
)
-SET(GUITS_SOURCES
+# header files / no moc processing
+SET(_other_HEADERS ViewerTools.h)
+
+# header files / to install
+SET(ViewerTools_HEADERS ${_moc_HEADERS} ${_other_HEADERS})
+
+# --- resources ---
+
+# resource files / to be processed by lrelease
+SET(_ts_RESOURCES
resources/ViewerTools_msg_en.ts
resources/ViewerTools_msg_fr.ts
resources/ViewerTools_msg_ja.ts
)
-ADD_DEFINITIONS(${QT_DEFINITIONS})
+# --- sources ---
+
+# sources / moc wrappings
+QT4_WRAP_CPP(_moc_SOURCES ${_moc_HEADERS})
+
+# sources / static
+SET(_other_SOURCES
+ ViewerTools_CubeAxesDlgBase.cxx
+ ViewerTools_DialogBase.cxx
+ ViewerTools_FontWidgetBase.cxx
+)
+
+# sources / to compile
+SET(ViewerTools_SOURCES ${_other_SOURCES} ${_moc_SOURCES})
+
+# --- rules ---
-ADD_LIBRARY(ViewerTools ${ViewerTools_SOURCES} ${GUI_HEADERS_MOC})
-TARGET_LINK_LIBRARIES(ViewerTools qtx ${QT_LIBRARIES})
+ADD_LIBRARY(ViewerTools ${ViewerTools_SOURCES})
+TARGET_LINK_LIBRARIES(ViewerTools ${_link_LIBRARIES})
INSTALL(TARGETS ViewerTools EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
-FILE(GLOB COMMON_HEADERS_H "${CMAKE_CURRENT_SOURCE_DIR}/*.h")
-INSTALL(FILES ${COMMON_HEADERS_H} DESTINATION ${SALOME_INSTALL_HEADERS})
-QT4_INSTALL_TS_RESOURCES("${GUITS_SOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
+INSTALL(FILES ${ViewerTools_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})
+QT4_INSTALL_TS_RESOURCES("${_ts_RESOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")