Salome HOME
automatic tests for GUI in HYDRO environment
[modules/hydro.git] / src / HYDROGUI / CMakeLists.txt
1 #include(../../CMake/Common.cmake)
2 include(../../CMake/UseQT4EXT.cmake)
3
4 set(PROJECT_HEADERS 
5     HYDROGUI.h
6     HYDROGUI_AbstractDisplayer.h
7     HYDROGUI_AISTrihedron.h
8     HYDROGUI_CalculationDlg.h
9     HYDROGUI_CalculationOp.h
10     HYDROGUI_ChannelDlg.h
11     HYDROGUI_ChannelOp.h
12     HYDROGUI_ColorWidget.h
13     HYDROGUI_CopyPasteOp.h
14     HYDROGUI_CopyPastePositionOp.h
15     HYDROGUI_DataBrowser.h
16     HYDROGUI_DataModel.h
17     HYDROGUI_DataObject.h
18     HYDROGUI_DeleteDlg.h
19     HYDROGUI_DeleteOp.h
20     HYDROGUI_DigueDlg.h
21     HYDROGUI_DigueOp.h
22     HYDROGUI_Displayer.h
23     HYDROGUI_ExportImageOp.h
24     HYDROGUI_GVSelector.h
25     HYDROGUI_ImmersibleZoneDlg.h
26     HYDROGUI_ImmersibleZoneOp.h
27     HYDROGUI_ImportBathymetryDlg.h
28     HYDROGUI_ImportBathymetryOp.h
29     HYDROGUI_ImportImageDlg.h
30     HYDROGUI_ImportImageOp.h
31     HYDROGUI_InputPanel.h
32     HYDROGUI_Module.h
33     HYDROGUI_NameValidator.h
34     HYDROGUI_ObjSelector.h
35     HYDROGUI_ObserveImageOp.h
36     HYDROGUI_OCCDisplayer.h
37     HYDROGUI_OCCSelector.h
38     HYDROGUI_Operation.h
39     HYDROGUI_Operations.h
40     HYDROGUI_Poly3DDlg.h
41     HYDROGUI_Poly3DOp.h
42     HYDROGUI_PolylineDlg.h
43     HYDROGUI_PolylineOp.h
44     HYDROGUI_ProfileDlg.h
45     HYDROGUI_ProfileOp.h
46     HYDROGUI_Prs.h
47     HYDROGUI_PrsDriver.h
48     HYDROGUI_PrsImage.h
49     HYDROGUI_PrsImageDriver.h
50     HYDROGUI_PrsImageFrame.h
51     HYDROGUI_PrsPolyline.h
52     HYDROGUI_PrsPolylineDriver.h
53     HYDROGUI_PrsZone.h
54     HYDROGUI_PrsZoneDriver.h
55     HYDROGUI_Region.h
56     HYDROGUI_RemoveImageRefsOp.h
57     HYDROGUI_Shape.h
58     HYDROGUI_ShowHideOp.h
59     HYDROGUI_StreamDlg.h
60     HYDROGUI_StreamOp.h
61     HYDROGUI_Tool.h
62     HYDROGUI_TwoImagesDlg.h
63     HYDROGUI_TwoImagesOp.h
64     HYDROGUI_UpdateFlags.h
65     HYDROGUI_UpdateObjectOp.h
66     HYDROGUI_VisualStateOp.h
67     HYDROGUI_VTKPrs.h
68     HYDROGUI_VTKPrsBathymetry.h
69     HYDROGUI_VTKPrsBathymetryDriver.h
70     HYDROGUI_VTKPrsDisplayer.h
71     HYDROGUI_VTKPrsDriver.h
72     HYDROGUI_VTKPrsShape.h
73     HYDROGUI_VTKPrsShapeDriver.h
74     HYDROGUI_Wizard.h
75     HYDROGUI_Zone.h
76     HYDROGUI_ImportGeomObjectOp.h
77     HYDROGUI_ImportObstacleFromFileOp.h
78     HYDROGUI_ExportCalculationOp.h
79     HYDROGUI_GeomObjectDlg.h
80     HYDROGUI_SetColorOp.h
81     HYDROGUI_ColorDlg.h
82     HYDROGUI_ImportProfilesOp.h
83     HYDROGUI_GeoreferencementDlg.h
84     HYDROGUI_GeoreferencementOp.h
85     HYDROGUI_Actor.h
86     HYDROGUI_BathymetryBoundsOp.h
87     HYDROGUI_TranslateObstacleDlg.h
88     HYDROGUI_TranslateObstacleOp.h
89     HYDROGUI_ZLevelsModel.h
90     HYDROGUI_ZLevelsDlg.h
91 )
92
93 QT4_WRAP_CPP(PROJECT_HEADERS_MOC ${PROJECT_HEADERS})
94
95 set(PROJECT_SOURCES 
96     HYDROGUI_AbstractDisplayer.cxx
97     HYDROGUI_AISTrihedron.cxx
98     HYDROGUI_CalculationDlg.cxx
99     HYDROGUI_CalculationOp.cxx
100     HYDROGUI_ChannelDlg.cxx
101     HYDROGUI_ChannelOp.cxx
102     HYDROGUI_ColorWidget.cxx
103     HYDROGUI_CopyPasteOp.cxx
104     HYDROGUI_CopyPastePositionOp.cxx
105     HYDROGUI_DataBrowser.cxx
106     HYDROGUI_DataModel.cxx
107     HYDROGUI_DataObject.cxx
108     HYDROGUI_DeleteDlg.cxx
109     HYDROGUI_DeleteOp.cxx
110     HYDROGUI_DigueDlg.cxx
111     HYDROGUI_DigueOp.cxx
112     HYDROGUI_Displayer.cxx
113     HYDROGUI_ExportImageOp.cxx
114     HYDROGUI_GVSelector.cxx
115     HYDROGUI_ImmersibleZoneDlg.cxx
116     HYDROGUI_ImmersibleZoneOp.cxx
117     HYDROGUI_ImportBathymetryDlg.cxx
118     HYDROGUI_ImportBathymetryOp.cxx
119     HYDROGUI_ImportImageDlg.cxx
120     HYDROGUI_ImportImageOp.cxx
121     HYDROGUI_InputPanel.cxx
122     HYDROGUI_Module.cxx
123     HYDROGUI_NameValidator.cxx
124     HYDROGUI_ObjSelector.cxx
125     HYDROGUI_ObserveImageOp.cxx
126     HYDROGUI_OCCDisplayer.cxx
127     HYDROGUI_OCCSelector.cxx
128     HYDROGUI_Operation.cxx
129     HYDROGUI_Operations.cxx
130     HYDROGUI_Poly3DDlg.cxx
131     HYDROGUI_Poly3DOp.cxx
132     HYDROGUI_PolylineDlg.cxx
133     HYDROGUI_PolylineOp.cxx
134     HYDROGUI_ProfileDlg.cxx
135     HYDROGUI_ProfileOp.cxx
136     HYDROGUI_Prs.cxx
137     HYDROGUI_PrsDriver.cxx
138     HYDROGUI_PrsImage.cxx
139     HYDROGUI_PrsImageDriver.cxx
140     HYDROGUI_PrsImageFrame.cxx
141     HYDROGUI_PrsPolyline.cxx
142     HYDROGUI_PrsPolylineDriver.cxx
143     HYDROGUI_PrsZone.cxx
144     HYDROGUI_PrsZoneDriver.cxx
145     HYDROGUI_Region.cxx
146     HYDROGUI_RemoveImageRefsOp.cxx
147     HYDROGUI_Shape.cxx
148     HYDROGUI_ShowHideOp.cxx
149     HYDROGUI_StreamDlg.cxx
150     HYDROGUI_StreamOp.cxx
151     HYDROGUI_Tool.cxx
152     HYDROGUI_TwoImagesDlg.cxx
153     HYDROGUI_TwoImagesOp.cxx
154     HYDROGUI_UpdateObjectOp.cxx
155     HYDROGUI_VisualStateOp.cxx
156     HYDROGUI_VTKPrs.cxx
157     HYDROGUI_VTKPrsBathymetry.cxx
158     HYDROGUI_VTKPrsBathymetryDriver.cxx
159     HYDROGUI_VTKPrsDisplayer.cxx
160     HYDROGUI_VTKPrsDriver.cxx
161     HYDROGUI_VTKPrsShape.cxx
162     HYDROGUI_VTKPrsShapeDriver.cxx
163     HYDROGUI_Wizard.cxx
164     HYDROGUI_Zone.cxx
165     HYDROGUI_ImportGeomObjectOp.cxx
166     HYDROGUI_ImportObstacleFromFileOp.cxx
167     HYDROGUI_ExportCalculationOp.cxx
168     HYDROGUI_GeomObjectDlg.cxx
169     HYDROGUI_SetColorOp.cxx
170     HYDROGUI_ColorDlg.cxx
171     HYDROGUI_ImportProfilesOp.cxx
172     HYDROGUI_GeoreferencementDlg.cxx
173     HYDROGUI_GeoreferencementOp.cxx
174     HYDROGUI_Actor.cxx
175     HYDROGUI_BathymetryBoundsOp.cxx
176     HYDROGUI_TranslateObstacleDlg.cxx
177     HYDROGUI_TranslateObstacleOp.cxx
178     HYDROGUI_ZLevelsModel.cxx
179     HYDROGUI_ZLevelsDlg.cxx
180 )
181
182 add_definitions(
183   -DHYDROGUI_EXPORTS
184   ${CAS_DEFINITIONS}
185   ${OMNIORB_DEFINITIONS}
186   ${QT_DEFINITIONS}
187 #  $(GUI_CXXFLAGS)
188   ${GUI_DEFINITIONS}
189 #  $(GEOM_CXXFLAGS)
190   ${GEOM_DEFINITIONS}
191 )
192
193 include_directories(
194   ${CAS_INCLUDE_DIRS}
195   ${QT_INCLUDES}
196 #  ${GUI_ROOT_DIR}/include/salome
197   ${GUI_INCLUDE_DIRS}
198 #  ${GEOM_ROOT_DIR}/include/salome
199   ${GEOM_INCLUDE_DIRS}
200   ${CMAKE_CURRENT_SOURCE_DIR}
201   ${CMAKE_CURRENT_SOURCE_DIR}/../HYDROData
202   ${CMAKE_CURRENT_SOURCE_DIR}/../HYDROCurveCreator
203   ${VTK_INCLUDE_DIRS}
204 )
205
206
207 add_library(HYDROGUI SHARED ${PROJECT_SOURCES} ${PROJECT_HEADERS} ${PROJECT_HEADERS_MOC})
208 target_link_libraries(HYDROGUI HYDROData HYDROCurveCreator
209     ${CAS_TKV3d} ${CAS_TKTopAlgo} ${CAS_TKBrep} ${CAS_TKBO}
210     ${GUI_LightApp} ${GUI_CAM} ${GUI_suit} ${GUI_qtx} ${GUI_ObjBrowser} ${GUI_GraphicsView} ${GUI_std} 
211     ${GUI_Event} ${GUI_OCCViewer} ${GEOM_GEOM} ${GEOM_GEOMBase}
212     ${VTK_LIBRARIES} ${SVTK} ${SalomeObject} ${SalomePrs}
213     )
214
215 INSTALL(TARGETS HYDROGUI EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
216
217 set(PROJECT_LIBRARIES HYDROGUI)
218
219 set(GUITS_SOURCES
220   resources/HYDROGUI_images.ts
221   resources/HYDROGUI_msg_en.ts
222   resources/HYDROGUI_msg_fr.ts
223 )
224
225 #include(../../CMake/CommonInstall.cmake)
226
227 # resources
228 QT4_INSTALL_TS_RESOURCES("${GUITS_SOURCES}" "${SALOME_HYDRO_INSTALL_RES_DATA}")
229
230 FILE(GLOB GUIPNG_DATA "${CMAKE_CURRENT_SOURCE_DIR}/resources/*.png")
231 FILE(GLOB GUIXML_DATA "${CMAKE_CURRENT_SOURCE_DIR}/resources/*.xml")
232 SET(GUI_DATA ${GUIPNG_DATA} ${GUIXML_DATA})
233 INSTALL(FILES ${GUI_DATA} DESTINATION ${SALOME_HYDRO_INSTALL_RES_DATA})
234
235 # tests
236 if(SALOME_BUILD_TESTS)
237
238   set(TEST_HEADERS 
239     test_HYDROGUI_ZLevelsModel.h
240   )
241
242   set(TEST_SOURCES 
243     test_HYDROGUI_Main.cxx
244     test_HYDROGUI_ZLevelsModel.cxx    
245   )
246   
247   set(TEST_EXE test_HYDROGUI)
248   include(../../CMake/CPPUnitTests.cmake)
249   target_link_libraries(test_HYDROGUI ${CPPUNIT_LIBRARIES} HYDROData HYDROGUI)
250
251   INSTALL(TARGETS test_HYDROGUI EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_BINS})
252
253 endif(SALOME_BUILD_TESTS)
254