Linux multi-monitor fullscreen support
[ryzomcore.git] / studio / src / plugins / object_viewer / CMakeLists.txt
blobbaa4c1840277859db4cf3c675284556f72aced32
1 INCLUDE_DIRECTORIES(    ${CMAKE_CURRENT_BINARY_DIR}
2                         ${CMAKE_CURRENT_SOURCE_DIR}
3                         ${QT_INCLUDES}
4                         ${CMAKE_CURRENT_SOURCE_DIR}/scene/
5                         ${CMAKE_CURRENT_SOURCE_DIR}/particle_system/
6                         ${CMAKE_CURRENT_SOURCE_DIR}/vegetable/
7                         ${CMAKE_CURRENT_SOURCE_DIR}/widgets/
10 FILE(GLOB SRC *.cpp *.h)
12 FILE(GLOB OVQT_SCENE_SRC      scene/*.cpp scene/*.h)
13 FILE(GLOB OVQT_PS_SRC         particle_system/*.h particle_system/*.cpp)
14 FILE(GLOB OVQT_VEGETABLE_SRC  vegetable/*.h vegetable/*.cpp)
15 FILE(GLOB OVQT_WIDGETS_SRC    widgets/*.h widgets/*.cpp)
17 SET(OVQT_EXT_SYS_SRC    ${CMAKE_CURRENT_SOURCE_DIR}/../../extension_system/iplugin.h
18                         ${CMAKE_CURRENT_SOURCE_DIR}/../../extension_system/iplugin_manager.h
19                         ${CMAKE_CURRENT_SOURCE_DIR}/../../extension_system/iplugin_spec.h)
21 SET(OBJECT_VIEWER_PLUGIN_QT_HDR object_viewer_plugin.h
22                                 main_window.h
23                                 graphics_viewport.h
24                                 graphics_settings_page.h
25                                 sound_settings_page.h
26                                 vegetable_settings_page.h
28                                 scene/animation_dialog.h
29                                 scene/animation_set_dialog.h
30                                 scene/setup_fog_dialog.h
31                                 scene/slot_manager_dialog.h
32                                 scene/water_pool_dialog.h
33                                 scene/skeleton_scale_dialog.h 
34                                 scene/skeleton_tree_model.h 
35                                 scene/global_wind_dialog.h
36                                 scene/day_night_dialog.h
37                                 scene/sun_color_dialog.h
38                                 scene/tune_mrm_dialog.h
39                                 scene/tune_timer_dialog.h
40                                 scene/camera_control.h
42                                 particle_system/particle_control_dialog.h
43                                 particle_system/particle_workspace_dialog.h
44                                 particle_system/particle_tree_model.h
45                                 particle_system/particle_system_page.h
46                                 particle_system/particle_workspace_page.h
47                                 particle_system/emitter_page.h
48                                 particle_system/attrib_widget.h
49                                 particle_system/located_bindable_page.h
50                                 particle_system/located_page.h
51                                 particle_system/particle_force_page.h 
52                                 particle_system/particle_light_page.h 
53                                 particle_system/particle_zone_page.h 
54                                 particle_system/particle_sound_page.h
55                                 particle_system/basic_edit_widget.h 
56                                 particle_system/direction_widget.h 
57                                 particle_system/scheme_bank_dialog.h
58                                 particle_system/particle_property_dialog.h
59                                 particle_system/ps_mover_page.h
60                                 particle_system/value_blender_dialog.h 
61                                 particle_system/value_gradient_dialog.h
62                                 particle_system/value_from_emitter_dialog.h 
63                                 particle_system/curve_dialog.h
64                                 particle_system/bin_op_dialog.h
65                                 particle_system/mesh_widget.h
66                                 particle_system/morph_mesh_dialog.h
67                                 particle_system/constraint_mesh_widget.h
68                                 particle_system/tail_particle_widget.h
69                                 particle_system/auto_lod_dialog.h
70                                 particle_system/particle_texture_widget.h
71                                 particle_system/particle_texture_anim_widget.h
72                                 particle_system/multi_tex_dialog.h
73                                 particle_system/spinner_dialog.h
74                                 particle_system/follow_path_dialog.h
75                                 particle_system/particle_link_skeleton_dialog.h
77                                 vegetable/vegetable_dialog.h
78                                 vegetable/vegetable_noise_value_widget.h
79                                 vegetable/vegetable_density_page.h
80                                 vegetable/vegetable_landscape_page.h
81                                 vegetable/vegetable_scale_page.h
82                                 vegetable/vegetable_appearance_page.h
83                                 vegetable/vegetable_rotate_page.h
85                                 widgets/edit_range_widget.h
86                                 widgets/color_edit_widget.h
87                                 widgets/hoverpoints.h
90 SET(OBJECT_VIEWER_PLUGIN_UIS    scene/animation_form.ui
91                                 scene/animation_set_form.ui
92                                 scene/setup_fog_form.ui
93                                 scene/slot_form.ui
94                                 scene/skeleton_scale_form.ui
95                                 scene/water_pool_form.ui
96                                 scene/global_wind_form.ui
97                                 scene/sun_color_form.ui
98                                 scene/day_night_form.ui
99                                 scene/tune_mrm_form.ui
100                                 scene/tune_timer_form.ui
101                                 
102                                 particle_system/particle_control_form.ui
103                                 particle_system/particle_workspace_form.ui
104                                 particle_system/particle_system_form.ui
105                                 particle_system/workspace_form.ui
106                                 particle_system/attrib_form.ui
107                                 particle_system/emitter_form.ui
108                                 particle_system/located_bindable_form.ui
109                                 particle_system/located_form.ui
110                                 particle_system/particle_force_form.ui
111                                 particle_system/particle_light_form.ui
112                                 particle_system/particle_zone_form.ui
113                                 particle_system/particle_sound_form.ui
114                                 particle_system/basic_edit_form.ui
115                                 particle_system/direction_form.ui
116                                 particle_system/ps_mover_form.ui
117                                 particle_system/curve_form.ui
118                                 particle_system/mesh_form.ui
119                                 particle_system/morph_mesh_form.ui
120                                 particle_system/constraint_mesh_form.ui
121                                 particle_system/tail_form.ui
122                                 particle_system/auto_lod_form.ui
123                                 particle_system/particle_texture_form.ui
124                                 particle_system/particle_texture_anim_form.ui
125                                 particle_system/multi_tex_form.ui                               
126                                 particle_system/particle_link_skeleton_form.ui
127                                 particle_system/scheme_bank_form.ui
128                                 particle_system/value_gradient_form.ui
130                                 vegetable/vegetable_dialog_form.ui
131                                 vegetable/vegetable_noise_value_form.ui
132                                 vegetable/vegetable_density_form.ui
133                                 vegetable/vegetable_apperance_form.ui
134                                 vegetable/vegetable_landscape_form.ui
135                                 vegetable/vegetable_rotate_form.ui
136                                 vegetable/vegetable_scale_form.ui
138                                 widgets/color_edit_form.ui
139                                 widgets/edit_range_float_form.ui
140                                 widgets/edit_range_uint_form.ui
142                                 graphics_settings_page.ui
143                                 sound_settings_page.ui
144                                 vegetable_settings_page.ui
147 SET(OBJECT_VIEWER_PLUGIN_RCS object_viewer.qrc)
149 SET(QT_USE_QTGUI TRUE)
150 SET(QT_USE_QTOPENGL TRUE)
152 QT4_ADD_RESOURCES(OBJECT_VIEWER_PLUGIN_RC_SRCS ${OBJECT_VIEWER_PLUGIN_RCS})
153 QT4_WRAP_CPP(OBJECT_VIEWER_PLUGIN_MOC_SRC ${OBJECT_VIEWER_PLUGIN_QT_HDR})
154 QT4_WRAP_UI(OBJECT_VIEWER_PLUGIN_UI_HDRS ${OBJECT_VIEWER_PLUGIN_UIS})
156 SOURCE_GROUP(QtResources FILES ${OBJECT_VIEWER_PLUGIN_UIS})
157 SOURCE_GROUP(QtGeneratedUiHdr FILES ${OBJECT_VIEWER_PLUGIN_UI_HDRS})
158 SOURCE_GROUP(QtGeneratedMocSrc FILES ${OBJECT_VIEWER_PLUGIN_MOC_SRC})
160 SOURCE_GROUP("ovqt Extension System" FILES ${OVQT_EXT_SYS_SRC})
161 SOURCE_GROUP("ovqt Plugin Src" FILES ${SRC})
162 SOURCE_GROUP("ovqt Plugin Scene Src" FILES ${OVQT_SCENE_SRC})
163 SOURCE_GROUP("ovqt Plugin PS Src" FILES ${OVQT_PS_SRC})
164 SOURCE_GROUP("ovqt Plugin Vegetable Src" FILES ${OVQT_VEGETABLE_SRC})
165 SOURCE_GROUP("ovqt Plugin Widgets Src" FILES ${OVQT_WIDGETS_SRC})
167 ADD_LIBRARY(studio_plugin_object_viewer MODULE ${SRC} 
168                                              ${OVQT_SCENE_SRC}
169                                              ${OVQT_PS_SRC}
170                                              ${OVQT_VEGETABLE_SRC}
171                                              ${OVQT_WIDGETS_SRC}
172                                              ${OBJECT_VIEWER_PLUGIN_MOC_SRC}
173                                              ${OVQT_EXT_SYS_SRC}
174                                              ${OBJECT_VIEWER_PLUGIN_UI_HDRS}
175                                              ${OBJECT_VIEWER_PLUGIN_RC_SRCS})
177 TARGET_LINK_LIBRARIES(studio_plugin_object_viewer 
178                         studio_plugin_core 
179                         nelmisc 
180                         nel3d
181                         nelsound
182                         nelligo
183                         nelgeorges
184                         ${QT_LIBRARIES}
185                         ${QT_QTOPENGL_LIBRARY})
187 NL_DEFAULT_PROPS(studio_plugin_object_viewer "Tools: Studio Plugin: Object Viewer")
189 NL_ADD_RUNTIME_FLAGS(studio_plugin_object_viewer)
190 NL_ADD_LIB_SUFFIX(studio_plugin_object_viewer)
192 ADD_DEFINITIONS(-DQT_NO_KEYWORDS -DQT_PLUGIN -DQT_SHARED ${QT_DEFINITIONS})
194 IF(WITH_PCH)
195   ADD_NATIVE_PRECOMPILED_HEADER(studio_plugin_object_viewer ${CMAKE_CURRENT_SOURCE_DIR}/stdpch.h ${CMAKE_CURRENT_SOURCE_DIR}/stdpch.cpp)
196 ENDIF()
200 IF(WIN32)
201   IF(WITH_INSTALL_LIBRARIES)
202     INSTALL(TARGETS studio_plugin_object_viewer LIBRARY DESTINATION ${OVQT_PLUGIN_DIR} ARCHIVE DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
203   ELSE()
204     INSTALL(TARGETS studio_plugin_object_viewer LIBRARY DESTINATION ${OVQT_PLUGIN_DIR} RUNTIME DESTINATION ${OVQT_PLUGIN_DIR} COMPONENT tools3d)
205   ENDIF()
206 ELSE()
207   IF(WITH_INSTALL_LIBRARIES)
208     INSTALL(TARGETS studio_plugin_object_viewer LIBRARY DESTINATION ${OVQT_PLUGIN_DIR} ARCHIVE DESTINATION ${NL_LIB_PREFIX} RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT tools3d)
209   ELSE()
210     INSTALL(TARGETS studio_plugin_object_viewer LIBRARY DESTINATION ${OVQT_PLUGIN_DIR} RUNTIME DESTINATION ${NL_BIN_PREFIX} COMPONENT tools3d)
211   ENDIF()
212 ENDIF()
214 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/studio_plugin_object_viewer.xml DESTINATION ${OVQT_PLUGIN_SPECS_DIR} COMPONENT tools3d)