From a7a7715c76e838d5d725261be4fe68653bcfd5e8 Mon Sep 17 00:00:00 2001 From: sfb Date: Thu, 28 Apr 2011 16:47:23 -0500 Subject: [PATCH] Changed: Added background color dialog to zone painter. --- code/CMakeModules/CheckDepends.cmake | 19 +- code/README | 10 +- .../3d/object_viewer_qt/src/CMakeLists.txt | 7 +- .../3d/object_viewer_qt/src/ic_nel_pill.ico | Bin 0 -> 4286 bytes .../object_viewer_qt/src/object_viewer_qt.rc | 54 +++ .../src/plugins/core/core.qrc | 14 +- .../src/plugins/core/core_constants.h | 58 +-- .../plugins/core/icons/ic_nel_add_item.png | Bin 0 -> 3270 bytes .../src/plugins/core/icons/ic_nel_crash.png | Bin 0 -> 6630 bytes .../plugins/core/icons/ic_nel_delete_item.png | Bin 0 -> 1496 bytes .../plugins/core/icons/ic_nel_down_item.png | Bin 0 -> 3812 bytes .../core/icons/ic_nel_generic_settings.png | Bin 0 -> 5633 bytes .../src/plugins/core/icons/ic_nel_open.png | Bin 0 -> 4310 bytes .../core/icons/ic_nel_path_settings.png | Bin 0 -> 4557 bytes .../src/plugins/core/icons/ic_nel_pill.png | Bin 0 -> 9291 bytes .../plugins/core/icons/ic_nel_reset_all.png | Bin 0 -> 5938 bytes .../src/plugins/core/icons/ic_nel_up_item.png | Bin 0 -> 3304 bytes .../src/plugins/core/images/go-down.png | Bin 2404 -> 0 bytes .../src/plugins/core/images/go-up.png | Bin 2426 -> 0 bytes .../src/plugins/core/images/list-add.png | Bin 2658 -> 0 bytes .../src/plugins/core/images/list-remove.png | Bin 1592 -> 0 bytes .../src/plugins/core/main_window.cpp | 4 +- .../core/search_paths_settings_page.cpp | 1 + .../core/search_paths_settings_page.ui | 43 +- .../src/plugins/example/plugin1.h | 10 +- .../src/plugins/object_viewer/CMakeLists.txt | 7 +- .../object_viewer/animation_set_form.ui | 14 +- .../src/plugins/object_viewer/attrib_form.ui | 289 +++++------ .../plugins/object_viewer/attrib_widget.cpp | 52 +- .../src/plugins/object_viewer/attrib_widget.h | 1 + .../plugins/object_viewer/camera_control.cpp | 12 +- .../object_viewer/icons/ic_nel_add_item.png | Bin 0 -> 3270 bytes .../object_viewer/icons/ic_nel_anim.png | Bin 0 -> 5409 bytes .../object_viewer/icons/ic_nel_animset.png | Bin 0 -> 6191 bytes .../icons/ic_nel_append_item.png | Bin 0 -> 3805 bytes .../object_viewer/icons/ic_nel_bgcolor.png | Bin 0 -> 6739 bytes .../icons/ic_nel_camera_3dedit.png | Bin 0 -> 3632 bytes .../object_viewer/icons/ic_nel_camera_add.png | Bin 0 -> 3812 bytes .../object_viewer/icons/ic_nel_camera_del.png | Bin 0 -> 3704 bytes .../object_viewer/icons/ic_nel_camera_fps.png | Bin 0 -> 5041 bytes .../object_viewer/icons/ic_nel_daynight.png | Bin 0 -> 5068 bytes .../icons/ic_nel_delete_item.png | Bin 0 -> 1496 bytes .../object_viewer/icons/ic_nel_down_item.png | Bin 0 -> 3812 bytes .../object_viewer/icons/ic_nel_framedelay.png | Bin 0 -> 6417 bytes .../icons/ic_nel_insert_item.png | Bin 0 -> 4586 bytes .../object_viewer/icons/ic_nel_mixer.png | Bin 0 -> 7012 bytes .../object_viewer/icons/ic_nel_mrm_mesh.png | Bin 0 -> 10297 bytes .../object_viewer/icons/ic_nel_new.png | Bin 0 -> 4035 bytes .../object_viewer/icons/ic_nel_open.png | Bin 0 -> 4310 bytes .../icons/ic_nel_particle_system.png | Bin 0 -> 6275 bytes .../icons/ic_nel_particle_system_close.png | Bin 0 -> 5266 bytes .../object_viewer/icons/ic_nel_particles.png | Bin 0 -> 5888 bytes .../object_viewer/icons/ic_nel_reset_all.png | Bin 0 -> 5938 bytes .../icons/ic_nel_reset_camera.png | Bin 0 -> 6109 bytes .../object_viewer/icons/ic_nel_save.png | Bin 0 -> 6462 bytes .../object_viewer/icons/ic_nel_save_as.png | Bin 0 -> 7748 bytes .../object_viewer/icons/ic_nel_skelscale.png | Bin 0 -> 4595 bytes .../object_viewer/icons/ic_nel_sound.png | Bin 0 -> 5858 bytes .../object_viewer/icons/ic_nel_up_item.png | Bin 0 -> 3304 bytes .../object_viewer/icons/ic_nel_veget.png | Bin 0 -> 5318 bytes .../object_viewer/icons/ic_nel_vegetset.png | Bin 0 -> 5686 bytes .../object_viewer/icons/ic_nel_water.png | Bin 0 -> 4187 bytes .../object_viewer/icons/ic_nel_wind.png | Bin 0 -> 7968 bytes .../icons/ic_nel_workspace_item.png | Bin 0 -> 7417 bytes .../ic_nel_collision_zone_item_24.png | Bin 0 -> 884 bytes .../ic_nel_emitter_item_24.png | Bin 0 -> 1075 bytes .../ic_nel_force_item_24.png | Bin 0 -> 1119 bytes .../ic_nel_instance_item_24.png | Bin 0 -> 1190 bytes .../ic_nel_light_item_24.png | Bin 0 -> 1212 bytes .../ic_nel_located_item_24.png | Bin 0 -> 1174 bytes .../ic_nel_particle_item_24.png | Bin 0 -> 1209 bytes .../ic_nel_particle_system_24.png | Bin 0 -> 1135 bytes .../ic_nel_particle_system_close_24.png | Bin 0 -> 1147 bytes .../ic_nel_sound_item_24.png | Bin 0 -> 1112 bytes .../ic_nel_workspace_item_24.png | Bin 0 -> 1758 bytes .../plugins/object_viewer/images/Emitter.bmp | Bin 246 -> 0 bytes .../plugins/object_viewer/images/Force.bmp | Bin 246 -> 0 bytes .../src/plugins/object_viewer/images/anim.png | Bin 8182 -> 0 bytes .../plugins/object_viewer/images/animset.png | Bin 9060 -> 0 bytes .../images/bad_particle_system_item.png | Bin 6133 -> 0 bytes .../plugins/object_viewer/images/cam_add.png | Bin 5732 -> 0 bytes .../plugins/object_viewer/images/cam_del.png | Bin 5960 -> 0 bytes .../plugins/object_viewer/images/clear.png | Bin 3911 -> 0 bytes .../images/collision_zone_item.png | Bin 5749 -> 0 bytes .../plugins/object_viewer/images/go-down.png | Bin 2404 -> 0 bytes .../plugins/object_viewer/images/go-up.png | Bin 2426 -> 0 bytes .../object_viewer/images/ico_bgcolor.png | Bin 5327 -> 0 bytes .../object_viewer/images/ico_framedelay.png | Bin 6481 -> 0 bytes .../object_viewer/images/ico_light_group.png | Bin 5398 -> 0 bytes .../object_viewer/images/ico_skelscale.png | Bin 4789 -> 0 bytes .../images/insert-horizontal.png | Bin 2108 -> 0 bytes .../plugins/object_viewer/images/insert.png | Bin 1475 -> 0 bytes .../object_viewer/images/instance_item.png | Bin 6437 -> 0 bytes .../object_viewer/images/light_item.png | Bin 3822 -> 0 bytes .../plugins/object_viewer/images/list-add.png | Bin 2658 -> 0 bytes .../object_viewer/images/list-remove.png | Bin 1592 -> 0 bytes .../object_viewer/images/located_item.png | Bin 3779 -> 0 bytes .../src/plugins/object_viewer/images/new.png | Bin 2461 -> 0 bytes .../object_viewer/images/open-file.png | Bin 1088 -> 0 bytes .../object_viewer/images/particle_item.png | Bin 4790 -> 0 bytes .../images/particle_system_item.png | Bin 4582 -> 0 bytes .../object_viewer/images/preferences.png | Bin 10286 -> 0 bytes .../plugins/object_viewer/images/save-as.png | Bin 3792 -> 0 bytes .../src/plugins/object_viewer/images/save.png | Bin 2122 -> 0 bytes .../object_viewer/images/sound_item.png | Bin 5143 -> 0 bytes .../src/plugins/object_viewer/images/time.png | Bin 2312 -> 0 bytes .../plugins/object_viewer/images/veget.png | Bin 6479 -> 0 bytes .../object_viewer/images/workspace_item.png | Bin 4405 -> 0 bytes .../object_viewer/located_bindable_form.ui | 54 +++ .../src/plugins/object_viewer/main_window.cpp | 24 +- .../plugins/object_viewer/morph_mesh_form.ui | 12 +- .../plugins/object_viewer/object_viewer.qrc | 121 ++--- .../object_viewer/object_viewer_constants.h | 37 ++ .../plugins/object_viewer/particle_editor.cpp | 28 +- .../plugins/object_viewer/particle_editor.h | 9 + .../object_viewer/particle_sound_form.ui | 6 + .../object_viewer/particle_tree_model.cpp | 23 +- .../particle_workspace_dialog.cpp | 15 +- .../object_viewer/particle_workspace_page.cpp | 17 +- .../object_viewer/particle_workspace_page.h | 1 + .../plugins/object_viewer/ps_mover_form.ui | 25 +- .../object_viewer/scheme_bank_dialog.cpp | 61 +++ .../object_viewer/scheme_bank_dialog.h | 60 +++ .../plugins/object_viewer/scheme_bank_form.ui | 151 ++++++ .../plugins/object_viewer/scheme_manager.cpp | 117 +++++ .../plugins/object_viewer/scheme_manager.h | 61 +++ .../object_viewer/value_gradient_dialog.cpp | 302 +++++------- .../object_viewer/value_gradient_dialog.h | 240 ++++----- .../object_viewer/value_gradient_form.ui | 183 +++++++ .../object_viewer/vegetable_apperance_form.ui | 6 +- .../object_viewer/vegetable_dialog_form.ui | 457 ++++++++++-------- .../object_viewer/vegetable_settings_page.ui | 8 +- .../plugins/object_viewer/workspace_form.ui | 84 ++-- .../zone_painter/zone_painter_main_window.cpp | 134 ++--- .../zone_painter/zone_painter_plugin.h | 42 +- code/ryzom/client/src/client_sheets/stdpch.h | 1 + code/ryzom/client/src/stdpch.h | 1 + code/ryzom/tools/sheets_packer/stdpch.h | 1 + 138 files changed, 1898 insertions(+), 978 deletions(-) create mode 100644 code/nel/tools/3d/object_viewer_qt/src/ic_nel_pill.ico create mode 100644 code/nel/tools/3d/object_viewer_qt/src/object_viewer_qt.rc create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/core/icons/ic_nel_add_item.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/core/icons/ic_nel_crash.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/core/icons/ic_nel_delete_item.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/core/icons/ic_nel_down_item.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/core/icons/ic_nel_generic_settings.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/core/icons/ic_nel_open.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/core/icons/ic_nel_path_settings.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/core/icons/ic_nel_pill.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/core/icons/ic_nel_reset_all.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/core/icons/ic_nel_up_item.png delete mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/core/images/go-down.png delete mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/core/images/go-up.png delete mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/core/images/list-add.png delete mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/core/images/list-remove.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_add_item.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_anim.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_animset.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_append_item.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_bgcolor.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_camera_3dedit.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_camera_add.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_camera_del.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_camera_fps.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_daynight.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_delete_item.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_down_item.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_framedelay.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_insert_item.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_mixer.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_mrm_mesh.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_new.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_open.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_particle_system.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_particle_system_close.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_particles.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_reset_all.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_reset_camera.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_save.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_save_as.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_skelscale.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_sound.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_up_item.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_veget.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_vegetset.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_water.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_wind.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_workspace_item.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/particles_system_24/ic_nel_collision_zone_item_24.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/particles_system_24/ic_nel_emitter_item_24.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/particles_system_24/ic_nel_force_item_24.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/particles_system_24/ic_nel_instance_item_24.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/particles_system_24/ic_nel_light_item_24.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/particles_system_24/ic_nel_located_item_24.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/particles_system_24/ic_nel_particle_item_24.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/particles_system_24/ic_nel_particle_system_24.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/particles_system_24/ic_nel_particle_system_close_24.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/particles_system_24/ic_nel_sound_item_24.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/particles_system_24/ic_nel_workspace_item_24.png delete mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/Emitter.bmp delete mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/Force.bmp delete mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/anim.png delete mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/animset.png delete mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/bad_particle_system_item.png delete mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/cam_add.png delete mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/cam_del.png delete mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/clear.png delete mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/collision_zone_item.png delete mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/go-down.png delete mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/go-up.png delete mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/ico_bgcolor.png delete mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/ico_framedelay.png delete mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/ico_light_group.png delete mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/ico_skelscale.png delete mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/insert-horizontal.png delete mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/insert.png delete mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/instance_item.png delete mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/light_item.png delete mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/list-add.png delete mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/list-remove.png delete mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/located_item.png delete mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/new.png delete mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/open-file.png delete mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/particle_item.png delete mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/particle_system_item.png delete mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/preferences.png delete mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/save-as.png delete mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/save.png delete mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/sound_item.png delete mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/time.png delete mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/veget.png delete mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/workspace_item.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/scheme_bank_dialog.cpp create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/scheme_bank_dialog.h create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/scheme_bank_form.ui create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/scheme_manager.cpp create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/scheme_manager.h create mode 100644 code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/value_gradient_form.ui diff --git a/code/CMakeModules/CheckDepends.cmake b/code/CMakeModules/CheckDepends.cmake index 893582581..d2fbe06e1 100644 --- a/code/CMakeModules/CheckDepends.cmake +++ b/code/CMakeModules/CheckDepends.cmake @@ -27,12 +27,17 @@ MACRO(CHECK_UNDEFINED_SYMBOL MYLIBRARY SYMBOL SYMBOL_FOUND) ENDIF(NOT NM_SYMBOL MATCHES ${SYMBOL}) ENDIF(CMAKE_NM) ELSEIF(UNIX) + SET(CMAKE_OBJDUMP objdump) IF(CMAKE_OBJDUMP) # Use objdump to check if a library is using an external symbol + #MESSAGE(STATUS "exec ${CMAKE_OBJDUMP} -T ${${MYLIBRARY}} | grep ${SYMBOL}") EXEC_PROGRAM(${CMAKE_OBJDUMP} ARGS "-T ${${MYLIBRARY}} | grep ${SYMBOL}" OUTPUT_VARIABLE OBJDUMP_SYMBOL) - IF(OBJDUMP_SYMBOL MATCHES "UND") + IF(NOT OBJDUMP_SYMBOL MATCHES "UND") + #MESSAGE(STATUS "${${MYLIBRARY}} does not use symbol ${SYMBOL}") SET(${SYMBOL_FOUND} FALSE) - ENDIF(OBJDUMP_SYMBOL MATCHES "UND") + ELSE(NOT OBJDUMP_SYMBOL MATCHES "UND") + #MESSAGE(STATUS "${${MYLIBRARY}} uses symbol ${SYMBOL}") + ENDIF(NOT OBJDUMP_SYMBOL MATCHES "UND") ENDIF(CMAKE_OBJDUMP) ENDIF(WIN32) ENDMACRO(CHECK_UNDEFINED_SYMBOL) @@ -64,14 +69,19 @@ MACRO(CHECK_LINKED_LIBRARY MYLIBRARY OTHERLIBRARY LIBRARY_FOUND) ENDIF(OTOOL_LIBRARY MATCHES "${LIBNAME}") ENDIF(CMAKE_OTOOL) ELSEIF(UNIX) + SET(CMAKE_OBJDUMP objdump) IF(CMAKE_OBJDUMP) GET_FILENAME_COMPONENT(LIBNAME "${${OTHERLIBRARY}}" NAME) # TODO: under Solaris use dump -Lv # Use objdump to check if a library is linked to another library + #MESSAGE(STATUS "exec ${CMAKE_OBJDUMP} -p ${${MYLIBRARY}} | grep ${LIBNAME}") EXEC_PROGRAM(${CMAKE_OBJDUMP} ARGS "-p ${${MYLIBRARY}} | grep ${LIBNAME}" OUTPUT_VARIABLE OBJDUMP_LIBRARY) - IF(NOT OBJDUMP_LIBRARY MATCHES "NEEDED") + IF(OBJDUMP_LIBRARY MATCHES "NEEDED") + #MESSAGE(STATUS "${${MYLIBRARY}} references to ${LIBNAME}.") SET(${LIBRARY_FOUND} TRUE) - ENDIF(NOT OBJDUMP_LIBRARY MATCHES "NEEDED") + ELSE(OBJDUMP_LIBRARY MATCHES "NEEDED") + #MESSAGE(STATUS "${${MYLIBRARY}} does not reference to ${LIBNAME}!") + ENDIF(OBJDUMP_LIBRARY MATCHES "NEEDED") ENDIF(CMAKE_OBJDUMP) ENDIF(WIN32) ENDMACRO(CHECK_LINKED_LIBRARY) @@ -125,3 +135,4 @@ MACRO(LINK_DEPENDS LIBRARIES MYLIBRARY OTHERLIBRARY SYMBOL) SET(${OTHERLIBRARY}_LINKED TRUE) ENDIF(MUST_LINK) ENDMACRO(LINK_DEPENDS) + diff --git a/code/README b/code/README index e880666e5..3c19258ee 100644 --- a/code/README +++ b/code/README @@ -1,10 +1,10 @@ Introduction ------------ -NeL is a software platform for creating and running massively multi-user +Ryzom Core is a software platform for creating and running massively multi-user entertainment in a 3D environment over the Internet. -The NeL library is further divided into specific modules: network, ai, 3d +The Ryzom Core library is further divided into specific modules: network, ai, 3d and misc. If you want to use any of these, you also need to use the misc part of the library, but ai, 3d and network are totally independant from each other so you can use only the parts you really need in your project. @@ -12,14 +12,14 @@ each other so you can use only the parts you really need in your project. If you want know more about the library content and functionalities, you should take a look on the documents present in the doc directory. -NeL is currently developped and tested under GNU/Linux and Windows +Ryzom Core is currently developped and tested under GNU/Linux and Windows environments. License ------- -NeL is a Free Software project under the GNU Affero General Public License, +Ryzom Core is a Free Software project under the GNU Affero General Public License, which means all its code is available for everyone to download, examine, use, modify, and distribute, subject to the usual restrictions attached to any GPL software. If you are not familiar with the AGPL, see the COPYING @@ -29,4 +29,4 @@ file for for more details on license terms and other legal issues. Installation ------------ -Please check the dev.ryzom.com for more information \ No newline at end of file +Please check the dev.ryzom.com for more information diff --git a/code/nel/tools/3d/object_viewer_qt/src/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/CMakeLists.txt index 344417e3f..3cbe745af 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/CMakeLists.txt +++ b/code/nel/tools/3d/object_viewer_qt/src/CMakeLists.txt @@ -19,6 +19,10 @@ SET(OBJECT_VIEWER_TS translations/object_viewer_qt_en.ts SET(QT_USE_QTGUI TRUE) SET(QT_USE_QTOPENGL TRUE) + +IF(WIN32) + SET(OBJECT_VIEWER_RC object_viewer_qt.rc) +ENDIF(WIN32) QT4_ADD_TRANSLATION(OBJECT_VIEWER_QM ${OBJECT_VIEWER_TS}) QT4_ADD_RESOURCES( OBJECT_VIEWER_RC_SRCS ${OBJECT_VIEWER_RCS}) @@ -30,7 +34,8 @@ SOURCE_GROUP(QtGeneratedMocQrcSrc FILES ${OBJECT_VIEWER_MOC_SRCS} ${OBJECT_VIEWE ADD_EXECUTABLE(object_viewer_qt WIN32 MACOSX_BUNDLE ${OBJECT_VIEWER_SRC} ${OBJECT_VIEWER_MOC_SRCS} - ${OBJECT_VIEWER_RC_SRCS}) + ${OBJECT_VIEWER_RC_SRCS} + ${OBJECT_VIEWER_RC}) TARGET_LINK_LIBRARIES(object_viewer_qt nelmisc diff --git a/code/nel/tools/3d/object_viewer_qt/src/ic_nel_pill.ico b/code/nel/tools/3d/object_viewer_qt/src/ic_nel_pill.ico new file mode 100644 index 0000000000000000000000000000000000000000..2f2fc9eb391f6e4d930af052087ff244d4b1564b GIT binary patch literal 4286 zcmchZc}!GS6vpr4jld`(SOpXqP!acCQPb4=PycC*CdAlU(O4M33OWKJ>j)wd5iC(L z8X_?<#E2GRW5JddWfLLBMiG$B4OdVE1q9hn&$;cLObOZt1>fYGA@d&d{mysJyZ13B z;mg^XF=u?8vtrDKF*Xy0U$NCFJd5v)MdP_ob8M0r+x!`0TQrPmCo;Cx^waoat&;bb zrl!G#W@cfXmX`5-q5lI5K-CMNz}R#u0>!66fzoPObQ zbo?2R17ta{R+9Yeho8a20(~>pYCSkQX26sw+2HJ)#U&UtnoBT#d@`t1x)R1VnhhVr zRyz|DU9q)w5=@<%jk?S=5CgG{8M6-=0wRaU-*Yy4*V);n!nA3>8f47SpJVdm^Vo-- z&5Uir`TReJcBL%uYH)Bk3ob6d8AKeypFWNKMNib~y)bH2fOhEaUSG+wu0^9c53a7i z!}RGn|ME9xAb(>K1NBO!3OX|se@W7=k!Al5C#MTAW5yrcUoZ#`(F>}7AQl^&R4_Hw zT^X!Ddaspb-*%1WEXVBx|7m@_BOz(6?&2Fl_?d5GR< zG(W-Eu`!*JEfg$&x3-3IzvOlVC`BTTu%?f^5sRacyR&Dotw{dFlP7|hqZMA*1j*3vGpn?wd-^` zhmeqv`uO;GC@U+2?Cfk!^2DC;^LsZyd3V{y~~xGdllBK@yGc)!x@$>D}wp+|IUK)5G;a+K5cDJ;<~H< zQ z&FwnQ*3CwJ8=L0eYkh;9#>sm9p^CS zDK5T_47+gcJ%TfN9T`e-E{UTU_keWt4y#b9JQaCUHaKg0QGGXW-h@Yw9>K$h58=Us z2b_ag1P`$Ym6VjimMsCe*Tlz}GjT)73RRjxqO9O1qp`pPb`i_`{`m@nIBqk=pi4!Ms6A}(j9gHtstJP}NICHJHZ{LQNmKJDkZid&d zUvo7zH38|>t5=+h*hr0yjhv7Ak(87Ksi~=H(b3W7gY~BC@m{w{PEPLa=;#2_yLa!P zy}cdU+S<5UTU+7n+qdxM%^NPkNIm(d?o;00-ip@Kf%tHJn{@Hw#csf(udmOb-rip5 z>FMF>?(T-Jt}b~0{yi6EaOlt>sy)ri%WKHq#Is|^4%3vBlt%Jaa!?Kj4<00C;J!30 z&(XNYW!}1V>p$(OZrTqp_bh*ZfAv6l4&^)it<_OcQ9YHFl^N z_R&M}`Pl#9{6-=}Z%$4QP`|}NJ+3tHd;4Ra#^>-pkkH>9^Q}Z5 yzSn1DWbheJNJuEdXMnGbuOF$ukwb+uxhf(eA^_K + +#define IDR_MAINFRAME 128 + +///////////////////////////////////////////////////////////////////////////// +// +// Version +// + +VS_VERSION_INFO VERSIONINFO + FILEVERSION 1,0,0,1 + PRODUCTVERSION 1,0,0,1 + FILEFLAGSMASK 0x3fL +#ifdef _DEBUG + FILEFLAGS 0x1L +#else + FILEFLAGS 0x0L +#endif + FILEOS 0x4L + FILETYPE 0x1L + FILESUBTYPE 0x0L +BEGIN + BLOCK "StringFileInfo" + BEGIN + BLOCK "040904b0" + BEGIN + VALUE "Comments", "\0" + VALUE "CompanyName", "Ryzom Core\0" + VALUE "FileDescription", "\0" + VALUE "FileVersion", "1, 0, 0, 1\0" + VALUE "InternalName", "Object_Viewer_Qt\0" + VALUE "LegalCopyright", "Copyright (C) 2011\0" + VALUE "LegalTrademarks", "\0" + VALUE "OriginalFilename", "\0" + VALUE "PrivateBuild", "\0" + VALUE "ProductName", "Object Viewer Qt\0" + VALUE "ProductVersion", "1, 0, 0, 1\0" + VALUE "SpecialBuild", "\0" + END + END + BLOCK "VarFileInfo" + BEGIN + VALUE "Translation", 0x409, 1200 + END +END + +///////////////////////////////////////////////////////////////////////////// +// +// Icon +// + +// Icon with lowest ID value placed first to ensure application icon +// remains consistent on all systems. +IDR_MAINFRAME ICON DISCARDABLE "ic_nel_pill.ico" diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/core/core.qrc b/code/nel/tools/3d/object_viewer_qt/src/plugins/core/core.qrc index c9cae1893..85b4702b0 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/plugins/core/core.qrc +++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/core/core.qrc @@ -1,9 +1,15 @@ - images/list-add.png - images/list-remove.png - images/go-up.png - images/go-down.png + icons/ic_nel_add_item.png + icons/ic_nel_crash.png + icons/ic_nel_delete_item.png + icons/ic_nel_down_item.png + icons/ic_nel_generic_settings.png + icons/ic_nel_open.png + icons/ic_nel_path_settings.png + icons/ic_nel_pill.png + icons/ic_nel_reset_all.png + icons/ic_nel_up_item.png images/nel.png images/preferences.png diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/core/core_constants.h b/code/nel/tools/3d/object_viewer_qt/src/plugins/core/core_constants.h index 07567246f..18dc11c87 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/plugins/core/core_constants.h +++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/core/core_constants.h @@ -23,53 +23,57 @@ namespace Core namespace Constants { -const char * const OVQT_VERSION_LONG = "0.0.1"; -const char * const OVQT_VENDOR = "Dzmitry Kamiahin"; -const char * const OVQT_YEAR = "2010, 2011"; +const char * const OVQT_VERSION_LONG = "0.0.1"; +const char * const OVQT_VENDOR = "Dzmitry Kamiahin"; +const char * const OVQT_YEAR = "2010, 2011"; const char * const OVQT_CORE_PLUGIN = "Core"; //mainwindow -const char * const MAIN_WINDOW = "ObjectViewerQt.MainWindow"; +const char * const MAIN_WINDOW = "ObjectViewerQt.MainWindow"; //menubar -const char * const MENU_BAR = "ObjectViewerQt.MenuBar"; +const char * const MENU_BAR = "ObjectViewerQt.MenuBar"; //menus -const char * const M_FILE = "ObjectViewerQt.Menu.File"; -const char * const M_EDIT = "ObjectViewerQt.Menu.Edit"; -const char * const M_VIEW = "ObjectViewerQt.Menu.View"; -const char * const M_SCENE = "ObjectViewerQt.Menu.Scene"; -const char * const M_TOOLS = "ObjectViewerQt.Menu.Tools"; -const char * const M_WINDOW = "ObjectViewerQt.Menu.Window"; -const char * const M_HELP = "ObjectViewerQt.Menu.Help"; +const char * const M_FILE = "ObjectViewerQt.Menu.File"; +const char * const M_EDIT = "ObjectViewerQt.Menu.Edit"; +const char * const M_VIEW = "ObjectViewerQt.Menu.View"; +const char * const M_SCENE = "ObjectViewerQt.Menu.Scene"; +const char * const M_TOOLS = "ObjectViewerQt.Menu.Tools"; +const char * const M_WINDOW = "ObjectViewerQt.Menu.Window"; +const char * const M_HELP = "ObjectViewerQt.Menu.Help"; -const char * const M_SHEET = "ObjectViewerQt.Menu.Sheet"; +const char * const M_SHEET = "ObjectViewerQt.Menu.Sheet"; //actions -const char * const NEW = "ObjectViewerQt.New"; -const char * const OPEN = "ObjectViewerQt.Open"; -const char * const EXIT = "ObjectViewerQt.Exit"; +const char * const NEW = "ObjectViewerQt.New"; +const char * const OPEN = "ObjectViewerQt.Open"; +const char * const EXIT = "ObjectViewerQt.Exit"; -const char * const SETTINGS = "ObjectViewerQt.Settings"; -const char * const TOGGLE_FULLSCREEN = "ObjectViewerQt.ToggleFullScreen"; +const char * const SETTINGS = "ObjectViewerQt.Settings"; +const char * const TOGGLE_FULLSCREEN = "ObjectViewerQt.ToggleFullScreen"; -const char * const CLOSE = "ObjectViewerQt.Close"; -const char * const CLOSEALL = "ObjectViewerQt.CloseAll"; -const char * const CLOSEOTHERS = "ObjectViewerQt.CloseOthers"; -const char * const ABOUT = "ObjectViewerQt.About"; -const char * const ABOUT_PLUGINS = "ObjectViewerQt.AboutPlugins"; -const char * const ABOUT_QT = "ObjectViewerQt.AboutQt"; +const char * const CLOSE = "ObjectViewerQt.Close"; +const char * const CLOSEALL = "ObjectViewerQt.CloseAll"; +const char * const CLOSEOTHERS = "ObjectViewerQt.CloseOthers"; +const char * const ABOUT = "ObjectViewerQt.About"; +const char * const ABOUT_PLUGINS = "ObjectViewerQt.AboutPlugins"; +const char * const ABOUT_QT = "ObjectViewerQt.AboutQt"; //settings const char * const DATA_PATH_SECTION = "DataPath"; const char * const SEARCH_PATHS = "SearchPaths"; const char * const RECURSIVE_SEARCH_PATHS = "RecursiveSearchPathes"; const char * const LEVELDESIGN_PATH = "LevelDesignPath"; -const char * const ASSETS_PATH = "LevelDesignPath"; +const char * const ASSETS_PATH = "LevelDesignPath"; //resources -const char * const ICON_NEL = ":/core/images/nel.png"; -const char * const ICON_SETTINGS = ":/core/images/preferences.png"; +const char * const ICON_NEL = ":/core/images/nel.png"; +const char * const ICON_SETTINGS = ":/core/images/preferences.png"; +const char * const ICON_PILL = ":/core/icons/ic_nel_pill.png"; +const char * const ICON_OPEN = ":/core/icons/ic_nel_open.png"; +const char * const ICON_CRASH = ":/core/icons/ic_nel_crash.png"; + } // namespace Constants } // namespace Core diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/core/icons/ic_nel_add_item.png b/code/nel/tools/3d/object_viewer_qt/src/plugins/core/icons/ic_nel_add_item.png new file mode 100644 index 0000000000000000000000000000000000000000..bde338f7851d2675b29272c7dcf9471196a8f6cc GIT binary patch literal 3270 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 Eg5p97)c^nh literal 0 HcmV?d00001 diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/core/icons/ic_nel_crash.png b/code/nel/tools/3d/object_viewer_qt/src/plugins/core/icons/ic_nel_crash.png new file mode 100644 index 0000000000000000000000000000000000000000..5e1f6380bad86acca278838ce7a1c6499eb2660f GIT binary patch literal 6630 zcmVN2bPDNB8 zb~7$DE;i7Ety%y88DmLAK~#8N?OO+UjpyHf-g8cd6+433RH;#Itx^OZ zEkzMssJ&P1T9FX3g&>GXh>>B7Q7a*fNFsZk`@4VdIY(3d_urD}_w~BIT-Wb<$2sSD zpZosp=Y68o|NlKX2Hd|>rh<;XY@{+Q{YDuJI?n&f@3&4;l?(ddZ4*_Q%@b7FH6xXM zLC5+>f4_aQs<>mSTDoo0qfOj(cJII~&d)JEk&Vhn{buO~jnx-m-gok{RJRm!1d3VUWNoZO@#!bjo4cFi2& zYskBDz>xQAfFbX8u)!P?YCzm6BN9#z#5(5q_Hi8y_3;gY=joSB5 zeDa0yfW33ofQ!4d%zg6}sC9zTuzQXXzOyv!nxWt~S7HA`$|4O1e&%rj@69*h*!m)f z@OMGX#YV_VeF?~G4Rda5oZnkkC*fv*cK@W8dbTj;_(aB_32OxO@#WnrXU`mky>ktS zI$a&+?B)R40_JAOO=*Jru}zQ=)fo3~H9<;T6PUA}=jW{{?I;~6T_~?o+EZMSo6(%s zV8nhB8Xuzh@0#*|FeA{fwZP?S@RdC(Tg=yQo&jlbjjW&q*q;fB5po`gE6-n{bhVNp z*X@yXs{wpxXgJ}n%t>dpAx}huk2~nQs$rMJ1Ai?#Hb|>is9+u*Y}E*5+{6NeAnlmT z9hkBlw@g${Jg>#n)s8`KQp64wb9}7=Kf|FF4oJNtW-n$d@-SGrw)pjLnwRS#lm(O( zhzV_p(;JF00Di^m9#%{EJqecsD`Pj^Eb^dscg!aOTF7Wad7Uz!;*R)}uOf7{hO2(h@Ol|# zI7MQCScuIEECfaza>h<(m`l4<%9Y*P$6F^np}@$B%!Oc61C}T-x9flv+{|WH;Q2K!=QiMC$~GXPO`AsLJMU533vu^sPaS;7Dy1KzLxr4al(($EwZ#Lg z1<^$=1y_Rmwzc1%=Sp}WPw#cJQ-Uo2)Gw8jA`u?^{?tsc_04ZJPd z3wQx46SooYN1q1zA~LX+4*bN*-{i7ybv{GfVmf80l?Vxpzjuc#K~I71h!Y+f?wmGc zvshYB7cJbfnHv8hgnrIgfP`yx@&UJjZTrwYOX{+iy_l~|T=IH1>$%km%fM_GFuF=PZR)JFXL zMIl)OYxbHa)~FmIAnjhghcy2%_}?P7g#?+bkRaOcMnGM0FRBTWZ#PER_OkFA&q|T0 z^WyHxI7TZAbvGgT))zW>z!UN3d(k>HTs!m}Nf^U>5;MA6$(3h|tF%GfWo8FfoHEBl zbk}nmRi4ijHD~RpLLh;ez%k5I-HYF3bB`~@cYmHHfHWy)VlUN5^jaG;OAp0ZLOd`;!%WIM0W{F-kU&rUj(du3hTzw z0z4EpPgJ!Fg#Z>n%YxaPUkfeCht;OkvPw-JZ6f#hnYjVZ?X84~JrzE$qtLggLRY0Q z^Cf$Pk0^(bA?0xF%Q9Hdt{6I#m>;?r5PL;P5JGDqJGC~Bu#FZA2w7#oWglnO7~k@< zPbs|#bTsZpbi{=n&bS@+0Ig3DfGFurFseA%=p zdOB$sUC)S5s~B|f&k1;g!fUjImOKt_Y9S#qq_}n53OtslNbKo{i0$Qm7aKxXn{bOJ zpPMeRKmxJ2QGM)P<^a!eB<2^jt-u6q`biaI8jP068h23$5Wp@JnVd{aj=avUh>%Ie z@qS5#VK12wFzY>JA6rUUhNvAAF|AKM3~5mu9cc+K5V&aG)ltLpRwiufWQQ4zj5--Z zUs4G3DMD=usq&n1lrofVxPIi>2Lyz<+aWdjZQhsq;A2V;q{X*J=DijO-&z`Lzh~vT z(r|sn$O10Svk+<|3lR*2NV{9w3R-}Rh<0Rx6>vYKEEaY!p*J-5y&IgV0RkIRk&zR7d1WazI!Mmdo-u#`Hs{x->qE+zsKfS5p-c631!)N62 z8RoLc$*6);Ud40*Bum`8EGf{9GLrHQWfZO*tb;3lRdMZb1AXc3=o&+==lBA4jI7i~ za8;MRzCvD>XhHznfS0upk>QNfQ;Xt*VhV2(n54ZgpR>pGcj_Tw-)y8GUV^m4i*aY~ zEX?cw0={Zm9BoL#a1!O!-hg#&G+ zz(rgs_NI&E4dSzZ@77aE@GAd zJkUzODBL~Y)@mKUHC2)+&TQ6l(k|JxeXLkO^Y6e$D3?dvIxQJMEWjpohg@1hMp*>R zD2g}ezaP^71HUpM)XffoLrfT0S;Mf_PFOpvBa-~*>jb0(E=2sEnIxe(K5tSCE$kHD zDXY-Gyg~z-KU+C8;8^u}Y*$=i{veV=f8NekJS)C9Qg1lIoK6CArT!R3OBhCX=zy@b zc7Gs1GR5v$>9q}v) z?CHctiDRu~VYG%W;pwU{{#k|Y%p7CrCRYwR0x2XQl>{*ENOgGQNP|BRaPP8Zsm+}G z0YWzv*9q`qT0FAakmvWaTD|r=Rp!5vK<(SJ`8gB7fFtIA>7bnjv<|!^&5o1ErDT=H z-lY!cMGNR$O2fW^CioB3uz!HU;`WU61jUt0^dLF?SqYBp;EWA!-I1_=j!rwZ=O&>~#``RV4w<7#G@b(w(TiZX}_h!mG3rx8{ug5d@!1xnGP$Pjj5#TIzQM zob+_yeF>0^4|#17%Gkw@7TzRb%T$e)V2X7AR?Yl*h$``?BzTWkUHD!uPr$PdK+IV( zpGWgE6SNMV=ee9jwiDvcI>GG|Cp=Td8N(O|x4ps1cT{M@ASU2@ms0qJRo;>p4H*5r zBSyA&rX_U4U1o>7`{(Lp#P6Mn6<@T$J2mZfi}}7L{l2ZjhR#$#54vD4S{UO?Hxe|o zKGzL4*mK#;0l^*yeVI-&gZR71DQ_;SntL*Z)<ds2QGqMiXE*W1>tDJ6 z37B$XwFSILQX~VQfX)%$lN3Y}a`>Puo~M^Vd_--$_gZPxwbSrXMTIWZxCF81skQm^ z<>hRD#jlq(GhxJYMKG$P3pS4Ffq2#iLc(2=5aT;tj|tt&8_|eBzkiwpbfMPRRIQ>V zbYrmW!ZF|En4i}osl(_ZKPs%F9Qwt8!>kRYSd$}CSW4eF;pApbcVS7NXEvzwd};I7 z;1>;64(rFNrpH&SSTP-u`_TkXZ6imH1fESoH2a6Yz^<%r z5PeF5M_MewXGqj10itmsA(Oc{gRwyuo~M<7Ii?DB|KN;P^ndZ?-i+!(fPi1Xf@eNc zTxUjfu2P^gQ{HD*65PM;h-kV%ED4BZP`ti*JSM+U4=)zcP*W;H%I3aY>grE(evdT) zWfrT)zO;yibOpq44g`&4l96n{&BGSc=dxII&@%OSZ;+TO9Qb}eMhHm0N$_b*gXuy9 z3DC8kkAQUgTpF*FOCsl5HEift6fd*NlWy-bYDx!BpZ2XhGf+nRCE=`?*C0qOR< zrle6)sfmO#NC|hr>K-ON6G+qZ2783Qw1%f?`qivyaUQ|XrA()f_pfS?(XUj(Ql`Tj z+a~HRAtYQ}{~gA(uZ9K;d{QO8Pclc=!M zTE;cOg1sp5nXSBhI9U7{f=*`Hd!J=610K?>79g4z@EO))D(i)0l5nRCQcpT#T^~E0 z1aSw^x_}pLe(OT;1Tx1eQ%SqKq3i9ViR;< ztbq>|lTQ=i1g*P(SOCvcc}${(#Fs|Kh4R??sUzCb-z6}L?>8in84Qjy=mN8u?}dcf zB;Ygl1Fu(d#OO|yG5doixUg=Fo)vD9gi|YrxES#jv=lk(x<5j8CQh>3wSwl z8H`<_%3}ni9viZ5#c8$#?n&=NG1U(d}ykT02^?EPZI*zHQwhjK}aZt z+-nuEf2y*vqdQl|q+WFq_RCN` zD@0Nb&l`yMY8H8rVd~o(uxc6?XJYs)A%K#3-O@3#fs-Qc(IfxEjIprz;n+G2m-ew2 zNFi_`Ac-!(GF12XRBB$dF50(QK#CB+?Fa_z&Sg-~pn-M@ zmS~{Eq7O@Gaf|7U5fd2cJ3E;$yp1#5I#t3Lk?AGRRW=F#QPu zy$h&+rAWZ&P`1Q7^}Roqnpz$p8=-bFJ4mCkgU!fMKJe~2f)&%ZffoWqq(Het65?n< zBmq%na3`!P2KIGE?aD5wYBcBs$h(8dbcv~ShiMFu(@8)(F0H*)g>`~!c{Wky@ICtt z_mNeRdYtbBV@R@qkF!cFeV@wGU*ofaB>`U+m;eqk>NwW}Wl+hj@|v7`^)8?GQr^ec ztCci0U#6TpvSujcNb`{$ZzbXZ0TQ8kFJ4Gs+=!+%M3zR(@fvvlO}az1il}KcVsv>; zj|Y<|5+p~lkC2GphVC({xhDbTl7MWo$!OYGRw}nhb{cDzYfI_}#J!Fka5BF4=C#a}^h02F(iA4%z1th?g z%ga}pTi;?&{a?4N^ShNu)Lu3o`tHxHTLdoz=pg}f(71LP^lV)O!9P17-ros%kwP5Dh#`rw7R{$!w(c^W%T{-zx*51c z4d5JPlXVqJEABF{z_z}0fe2tOb*2>kyMxG%GA>8&JU{{h*+}JziHi26O0!mKh$n~` zW``)ogc~K1d&LDwr)%LHH%HC;(HYZ6*kRjz6Yhj?#pgOTEx@g&Zu9r-8wv-x2;xt< z=%cpF2JF8($4C0!>LHK5`-=Iu9CwtQk(d$T`yU99oE=LNZqW)N1*8+qH)su!BqWM} zBPme~aM1)#|JKD8=y)_ov)uKP-Ke_e*YLfi<0FCkC%();)Plh=PqM`QOZl{KEmsjI zS`~mcu>uva1c;b?*ESNY$H)LnKtAK8_U@kXe-OM7>^+VzRF|uDvR_Ajx~GptxXL@Ymk|1R=*(t3wBv6)x}ntzNfTK<+JWyF0D$>pne@>HisW zZmVpDw%ofJ$n7)76@#I|?IZHf7M9JLNBMHp|7X?bpO}AvpFv;!JdD+uMC&}!B3&St zK7N$|C5UZj{+2i)|6dR&yFFxSo13DzDNEn?C!a}CV-vZS%9N>=yKepke=JZc(_gb> z;um)C{o-K@8B#vWjuY-X$l~WG!#8Rx`4(yd-{y`W_-{$VjMLuAm#aGQEWjR+p%cI& zhh+8t7r-=;7H3V?- z9aylK*`i)&NzG;c$NSqgUD{kXsRmiO@#DM?-zdb>=i zu*@RTd8@_pvUxpuxyoG1>Bsxw?uX}jKHujL_-0@|T~w8{l>h*Ms+%k3&``sHb<81=-~(e+|N^9C&_KHVw5X^3IM3J{S1(sAHJ}8!egC%W4+FY#L`JIX8~B! zIZ7C+< z6bcMhk7Jz$z zt<~^Npzeyeat^;b(tkMW#bRkwb5S`|-P(cZ{!1geIKC7Tzpi^Q9XhN7r*| zh)Tmw?h}4)r(e%EPx*~jbiDn>W9k_F^gyx#1J1b!&uZuD!J$Duh_I|$-B|3)pjcABT`DZr@@$gnJ?g*7niqC zPg~-q=_uM61|+bWZC}wlE4;C-L;LVrU6J(R@D0Z4=p`kt`4==LnW(d8wXiBZND)3NugXyk}j`B>QSp`rx>7I47#1U z_C?Zqn_!w_iq*Q=7#33$KOO+R;CW!bcdn#k;~tqqg>*o8s|#;{%M1@^2B=`1X*QOW z`~~EL<8YMd;Wk~hP%ln9+T{3weTCGPC>#3IdbbgtfSL(^;<-$(&+()%CWY(ZY}rUs zYZ^=Sws7E+dDpj6e_>>!qz;jFg;SMzWx6GvaM=_CJv#h+^qF(IggsR{8BYMQlBT|c zLR(J;=NJUkn>YRLcdDtY?zXt@zIEUuTe=1hEndEU6|7%)i#=`5cs5S}P9Mh=PcJfo z{ZbSwueq|yZyG~GMGk&1;XI&33fgfyu~6eIQgk!Fkv4<^W8F=|9U5oXINb+#fCen_ z{sB?u3Xfi@SxqMAC%ZI%1BJIf0uMiCx!yXz62rndMv z$=6toP8$LinV$s7C|ZjMS5+@W1rn4NxN=o7bmp|tGx-1vXy7V6(LK7Owl1b<1|o_O z>bY9rcsZ;+(mT(U8Vqy|@K*SC7Xeg!@WG?ntw{ZC`G3Vh1-90Bf1vJ=9f)jI$P4Q6YBQ@Z8;^^H#>9pe+1$q6DXU$-5VbBeJ(3kUiuh943T}3C$!G=4Zw&rX zIZx;etQ%$b10W;H`0fD|-g&n~Eq? zJZ zC}pc4u@0qD`7mQX=zMD+8o3Hi#&31p7{mxJ*6-KkigeYIgt}@Xn1a05YyE6U8VHU~ z8PL=CTn*0W$(#-|89Sz`9P!(hY?pOfm^ZQVXfjUeBhD+B#yUg0vkok?_%`$Xq0`=> g{}tB1bjDO$2a)_&SEAML{IoE@&Dj&vfF`E?18{b*hyVZp literal 0 HcmV?d00001 diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/core/icons/ic_nel_down_item.png b/code/nel/tools/3d/object_viewer_qt/src/plugins/core/icons/ic_nel_down_item.png new file mode 100644 index 0000000000000000000000000000000000000000..fc86c4f6db072ec99ee76b81b8ea21d607226dd7 GIT binary patch literal 3812 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 rVX-&N2bPDNB8 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 t_zc8nAU*@}8Hmq7dN2bPDNB8 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 UsoZjLV*mgE07*qoM6N<$g2^9G?f?J) literal 0 HcmV?d00001 diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/core/icons/ic_nel_up_item.png b/code/nel/tools/3d/object_viewer_qt/src/plugins/core/icons/ic_nel_up_item.png new file mode 100644 index 0000000000000000000000000000000000000000..ee471023e095a1ae11a0f614eb953b727b0b169d GIT binary patch literal 3304 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 Wx`D8V2rwZ40000d4o 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 diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/core/images/list-add.png b/code/nel/tools/3d/object_viewer_qt/src/plugins/core/images/list-add.png deleted file mode 100644 index af5b56e3c4fbd6d91eb3fa6e337ddb89c5843854..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2658 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":/images/open-file.png")); + m_openAction->setIcon(QIcon(Constants::ICON_OPEN)); m_openAction->setShortcut(QKeySequence::Open); m_openAction->setStatusTip(tr("Open an existing file")); menuManager()->registerAction(m_openAction, Constants::OPEN); diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/core/search_paths_settings_page.cpp b/code/nel/tools/3d/object_viewer_qt/src/plugins/core/search_paths_settings_page.cpp index 7f85a17df..c52624717 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/plugins/core/search_paths_settings_page.cpp +++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/core/search_paths_settings_page.cpp @@ -74,6 +74,7 @@ QWidget *CSearchPathsSettingsPage::createPage(QWidget *parent) connect(m_ui.removeToolButton, SIGNAL(clicked()), this, SLOT(delPath())); connect(m_ui.upToolButton, SIGNAL(clicked()), this, SLOT(upPath())); connect(m_ui.downToolButton, SIGNAL(clicked()), this, SLOT(downPath())); + connect(m_ui.resetToolButton, SIGNAL(clicked()), m_ui.pathsListWidget, SLOT(clear())); return m_page; } diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/core/search_paths_settings_page.ui b/code/nel/tools/3d/object_viewer_qt/src/plugins/core/search_paths_settings_page.ui index e250cfdda..79a6b2141 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/plugins/core/search_paths_settings_page.ui +++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/core/search_paths_settings_page.ui @@ -53,12 +53,15 @@ 0 + + Add + - :/core/images/list-add.png:/core/images/list-add.png + :/core/icons/ic_nel_add_item.png:/core/icons/ic_nel_add_item.png @@ -79,12 +82,15 @@ 0 + + Delete + - :/core/images/list-remove.png:/core/images/list-remove.png + :/core/icons/ic_nel_delete_item.png:/core/icons/ic_nel_delete_item.png @@ -105,12 +111,15 @@ 0 + + Up + - :/core/images/go-up.png:/core/images/go-up.png + :/core/icons/ic_nel_up_item.png:/core/icons/ic_nel_up_item.png @@ -131,12 +140,38 @@ 0 + + Down + - :/core/images/go-down.png:/core/images/go-down.png + :/core/icons/ic_nel_down_item.png:/core/icons/ic_nel_down_item.png + + + + 20 + 20 + + + + true + + + + + + + Reset + + + + + + + :/core/icons/ic_nel_reset_all.png:/core/icons/ic_nel_reset_all.png diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/example/plugin1.h b/code/nel/tools/3d/object_viewer_qt/src/plugins/example/plugin1.h index f09ec8fa2..d3be3bc38 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/plugins/example/plugin1.h +++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/example/plugin1.h @@ -62,7 +62,11 @@ class CExampleContext: public Core::IContext { Q_OBJECT public: - CExampleContext(QObject *parent = 0): IContext(parent) {} + CExampleContext(QObject *parent = 0): IContext(parent) + { + m_simpleViewer = new CSimpleViewer(); + } + virtual ~CExampleContext() {} virtual QString id() const @@ -79,8 +83,10 @@ public: } virtual QWidget *widget() { - return new CSimpleViewer(); + return m_simpleViewer; } + + CSimpleViewer *m_simpleViewer; }; } // namespace Plugin diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/CMakeLists.txt index 9ea5ef8a5..7f084fbb1 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/CMakeLists.txt +++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/CMakeLists.txt @@ -70,7 +70,8 @@ SET(OBJECT_VIEWER_PLUGIN_HDR object_viewer_plugin.h camera_control.h graphics_settings_page.h sound_settings_page.h - vegetable_settings_page.h) + vegetable_settings_page.h + scheme_bank_dialog.h) SET(OBJECT_VIEWER_PLUGIN_UIS animation_form.ui animation_set_form.ui @@ -120,7 +121,9 @@ SET(OBJECT_VIEWER_PLUGIN_UIS animation_form.ui tune_timer_form.ui graphics_settings_page.ui sound_settings_page.ui - vegetable_settings_page.ui) + vegetable_settings_page.ui + scheme_bank_form.ui + value_gradient_form.ui) SET(OBJECT_VIEWER_PLUGIN_RCS object_viewer.qrc) diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/animation_set_form.ui b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/animation_set_form.ui index eef9f0950..178a27e37 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/animation_set_form.ui +++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/animation_set_form.ui @@ -24,7 +24,7 @@ - :/images/animset.png:/images/animset.png + :/icons/ic_nel_animset.png:/icons/ic_nel_animset.png Animation set manager @@ -309,7 +309,7 @@ - :/images/clear.png:/images/clear.png + :/icons/ic_nel_reset_all.png:/icons/ic_nel_reset_all.png @@ -355,7 +355,7 @@ - :/images/list-add.png:/images/list-add.png + :/icons/ic_nel_add_item.png:/icons/ic_nel_add_item.png @@ -381,7 +381,7 @@ - :/images/list-remove.png:/images/list-remove.png + :/icons/ic_nel_delete_item.png:/icons/ic_nel_delete_item.png @@ -404,7 +404,7 @@ - :/images/go-up.png:/images/go-up.png + :/icons/ic_nel_up_item.png:/icons/ic_nel_up_item.png @@ -427,7 +427,7 @@ - :/images/go-down.png:/images/go-down.png + :/icons/ic_nel_down_item.png:/icons/ic_nel_down_item.png @@ -471,7 +471,7 @@ - :/images/time.png:/images/time.png + :/icons/ic_nel_framedelay.png:/icons/ic_nel_framedelay.png diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/attrib_form.ui b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/attrib_form.ui index c3efabdbd..404444fc0 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/attrib_form.ui +++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/attrib_form.ui @@ -6,8 +6,8 @@ 0 0 - 231 - 213 + 208 + 217 @@ -37,82 +37,83 @@ - - - - - - - - - - - - - - - - - - - Qt::Horizontal - + + + + + 1 + + + 0 + + + + + Qt::Horizontal + + + + 5 + 5 + + + + + + + + + 30 + 16777215 + + + + E + + + + + + + false + + + + 30 + 16777215 + + + + U + + + + + + + true + + + + 0 + 0 + + + + + 30 + 16777215 + + + + B + + + + - - - - Input mutliplier: - - - - - - - Qt::Horizontal - - - - 108 - 20 - - - - - - - - false - - - Clamp - - - - - - - false - - - - - - - Qt::Vertical - - - QSizePolicy::Preferred - - - - 20 - 1 - - - - - + true @@ -127,19 +128,6 @@ - - - - - 30 - 16777215 - - - - E - - - @@ -211,57 +199,84 @@ - - - - false - - - - 30 - 16777215 - - - - U - - - - - - - false - - - - 30 - 16777215 - - - - P - - - - - - - false - - - - 30 - 16777215 - - - - G - - - + + + + + + + + + + + + + + + + + + + Qt::Horizontal + + + + + + + Input mutliplier: + + + + + + + Qt::Horizontal + + + + 108 + 20 + + + + + + + + false + + + Clamp + + + + + + + false + + + + + + + Qt::Vertical + + + QSizePolicy::Preferred + + + + 20 + 1 + + + + diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/attrib_widget.cpp b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/attrib_widget.cpp index 648921f4f..648e0e1a5 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/attrib_widget.cpp +++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/attrib_widget.cpp @@ -39,6 +39,7 @@ #include "value_from_emitter_dialog.h" #include "spinner_dialog.h" #include "follow_path_dialog.h" +#include "scheme_bank_dialog.h" namespace NLQT { @@ -59,6 +60,7 @@ CAttribWidget::CAttribWidget(QWidget *parent) _ui.constRangeIntWidget->hide(); _ui.constRGBAWidget->hide(); _ui.schemeWidget->hide(); + _ui.schemeEditWidget->hide(); _ui.inMultiplierWidget->setRange(0.1f, 10.1f); _ui.inMultiplierWidget->enableLowerBound(0, true);; @@ -82,6 +84,7 @@ void CAttribWidget::init() connect(_ui.schemeComboBox, SIGNAL(currentIndexChanged(int)), this, SLOT(changeCurrentScheme(int))); connect(_ui.srcComboBox, SIGNAL(currentIndexChanged(int)), this, SLOT(setCurrentSrc(int))); connect(_ui.userParamPushButton, SIGNAL(clicked()), this, SLOT(setUserIndex())); + connect(_ui.bankButton, SIGNAL(clicked()), this, SLOT(openSchemeBankDialog())); connect(_ui.comboBox, SIGNAL(currentIndexChanged(int)), this, SLOT(changeUseScheme(int))); } @@ -181,6 +184,16 @@ void CAttribWidget::changeUseScheme(int index) } } +void CAttribWidget::openSchemeBankDialog() +{ + CSchemeBankDialog *dialog = new CSchemeBankDialog(this); + dialog->setModal(true); + dialog->show(); + dialog->exec(); + delete dialog; + //updateUi(); +} + void CAttribWidget::inputValueUpdate(void) { if (useScheme() && getSchemeInput().InputType == NL3D::CPSInputType::attrUserParam) @@ -206,7 +219,7 @@ void CAttribWidget::schemeValueUpdate() _ui.constRGBAWidget->hide(); _ui.schemeWidget->show(); - + _ui.schemeEditWidget->show(); sint k = getCurrentScheme(); if (k == -1) // unknow scheme ... @@ -312,11 +325,11 @@ QDialog *CAttribFloatWidget::editScheme(void) if (dynamic_cast(scheme)) { CFloatGradientWrapper *wrapper = new CFloatGradientWrapper; - wrapper->MinRange = _MinRange; - wrapper->MaxRange = _MaxRange; - wrapper->Scheme = &(((NL3D::CPSFloatGradient *) (_SchemeWrapper->getScheme()) )->_F); + wrapper->m_minRange = _MinRange; + wrapper->m_maxRange = _MaxRange; + wrapper->m_scheme = &(((NL3D::CPSFloatGradient *) (_SchemeWrapper->getScheme()) )->_F); CGradientDialog *gd = new CGradientDialog(_Node, wrapper, true, true, 2, this); - wrapper->DefaultValue = 0.f; + wrapper->m_defaultValue = 0.f; return gd; } if (dynamic_cast(scheme)) @@ -423,6 +436,7 @@ sint CAttribFloatWidget::getCurrentScheme(void) const void CAttribFloatWidget::cstValueUpdate() { _ui.schemeWidget->hide(); + _ui.schemeEditWidget->hide(); _ui.inMultiplierWidget->setEnabled(false); _ui.clampCheckBox->setEnabled(false); _ui.inputLabel->setEnabled(false); @@ -473,11 +487,11 @@ QDialog *CAttribUIntWidget::editScheme(void) if (dynamic_cast(scheme)) { CUIntGradientWrapper *wrapper = new CUIntGradientWrapper; - wrapper->MinRange = _MinRange; - wrapper->MaxRange = _MaxRange; - wrapper->Scheme = &(((NL3D::CPSUIntGradient *) (_SchemeWrapper->getScheme()) )->_F); + wrapper->m_minRange = _MinRange; + wrapper->m_maxRange = _MaxRange; + wrapper->m_scheme = &(((NL3D::CPSUIntGradient *) (_SchemeWrapper->getScheme()) )->_F); CGradientDialog *gd = new CGradientDialog(_Node, wrapper, true, true, 2, this); - wrapper->DefaultValue = 0; + wrapper->m_defaultValue = 0; return gd; } @@ -560,6 +574,7 @@ sint CAttribUIntWidget::getCurrentScheme(void) const void CAttribUIntWidget::cstValueUpdate() { _ui.schemeWidget->hide(); + _ui.schemeEditWidget->hide(); _ui.inMultiplierWidget->setEnabled(false); _ui.clampCheckBox->setEnabled(false); _ui.inputLabel->setEnabled(false); @@ -610,11 +625,11 @@ QDialog *CAttribIntWidget::editScheme(void) if (dynamic_cast(scheme)) { CIntGradientWrapper *wrapper = new CIntGradientWrapper; - wrapper->MinRange = _MinRange; - wrapper->MaxRange = _MaxRange; - wrapper->Scheme = &(((NL3D::CPSIntGradient *) (_SchemeWrapper->getScheme()) )->_F); + wrapper->m_minRange = _MinRange; + wrapper->m_maxRange = _MaxRange; + wrapper->m_scheme = &(((NL3D::CPSIntGradient *) (_SchemeWrapper->getScheme()) )->_F); CGradientDialog *gd = new CGradientDialog(_Node, wrapper, true, true, 2, this); - wrapper->DefaultValue = 0; + wrapper->m_defaultValue = 0; return gd; } if (dynamic_cast(scheme)) @@ -695,6 +710,7 @@ sint CAttribIntWidget::getCurrentScheme(void) const void CAttribIntWidget::cstValueUpdate() { _ui.schemeWidget->hide(); + _ui.schemeEditWidget->hide(); _ui.inMultiplierWidget->setEnabled(false); _ui.clampCheckBox->setEnabled(false); _ui.inputLabel->setEnabled(false); @@ -737,9 +753,9 @@ QDialog *CAttribRGBAWidget::editScheme(void) if (dynamic_cast(scheme)) { CColorGradientWrapper *wrapper = new CColorGradientWrapper; - wrapper->Scheme = &(((NL3D::CPSColorGradient *) (_SchemeWrapper->getScheme()) )->_F); + wrapper->m_scheme = &(((NL3D::CPSColorGradient *) (_SchemeWrapper->getScheme()) )->_F); CGradientDialog *gd = new CGradientDialog(_Node, wrapper, true, true, 2, this); - wrapper->DefaultValue = NLMISC::CRGBA::White; + wrapper->m_defaultValue = NLMISC::CRGBA::White; return gd; } if (dynamic_cast(scheme)) @@ -827,6 +843,7 @@ sint CAttribRGBAWidget::getCurrentScheme(void) const void CAttribRGBAWidget::cstValueUpdate() { _ui.schemeWidget->hide(); + _ui.schemeEditWidget->hide(); _ui.inMultiplierWidget->setEnabled(false); _ui.clampCheckBox->setEnabled(false); _ui.inputLabel->setEnabled(false); @@ -861,9 +878,9 @@ QDialog *CAttribPlaneBasisWidget::editScheme(void) if (dynamic_cast(scheme)) { CPlaneBasisGradientWrapper *wrapper = new CPlaneBasisGradientWrapper; - wrapper->Scheme = &(((NL3D::CPSPlaneBasisGradient *) (_SchemeWrapper->getScheme()) )->_F); + wrapper->m_scheme = &(((NL3D::CPSPlaneBasisGradient *) (_SchemeWrapper->getScheme()) )->_F); CGradientDialog *gd = new CGradientDialog(_Node, wrapper, true, true, 2, this); - wrapper->DefaultValue = NL3D::CPlaneBasis(NLMISC::CVector::K); + wrapper->m_defaultValue = NL3D::CPlaneBasis(NLMISC::CVector::K); return gd; } if (dynamic_cast(scheme)) @@ -964,6 +981,7 @@ sint CAttribPlaneBasisWidget::getCurrentScheme(void) const void CAttribPlaneBasisWidget::cstValueUpdate() { _ui.schemeWidget->hide(); + _ui.schemeEditWidget->hide(); _ui.inMultiplierWidget->setEnabled(false); _ui.clampCheckBox->setEnabled(false); _ui.inputLabel->setEnabled(false); diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/attrib_widget.h b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/attrib_widget.h index 3a14516a1..7bd929d72 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/attrib_widget.h +++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/attrib_widget.h @@ -109,6 +109,7 @@ private Q_SLOTS: virtual void setCurrentSrc(int index); virtual void setUserIndex(); virtual void changeUseScheme(int index); + virtual void openSchemeBankDialog(); protected: diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/camera_control.cpp b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/camera_control.cpp index 916158cc6..4443833d0 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/camera_control.cpp +++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/camera_control.cpp @@ -33,6 +33,7 @@ // Project includes #include "modules.h" +#include "object_viewer_constants.h" static int camId = 0; @@ -106,11 +107,13 @@ CCameraControl::CCameraControl(QWidget *parent) { _camToolBar = new QToolBar(tr("CameraControl"), parent); - _fpsAction = _camToolBar->addAction(tr("Fly")); + _fpsAction = _camToolBar->addAction(tr("Camera frs")); + _fpsAction->setIcon(QIcon(Constants::ICON_CAMERA_FPS)); _fpsAction->setStatusTip(tr("Set firstPerson camera mode")); _fpsAction->setCheckable(true); - _edit3dAction = _camToolBar->addAction(tr("Edit")); + _edit3dAction = _camToolBar->addAction(tr("Camera 3dEdit")); + _edit3dAction->setIcon(QIcon(Constants::ICON_CAMERA_3DEDIT)); _edit3dAction->setStatusTip(tr("Set edit3d camera mode")); _edit3dAction->setCheckable(true); @@ -160,12 +163,12 @@ CCameraControl::CCameraControl(QWidget *parent) _camToolBar->addSeparator(); _addCamAction = _camToolBar->addAction(tr("Create camera")); - _addCamAction->setIcon(QIcon(":/images/cam_add.png")); + _addCamAction->setIcon(QIcon(Constants::ICON_CAMERA_ADD)); _addCamAction->setStatusTip(tr("Create new camera")); connect(_addCamAction, SIGNAL(triggered()), this, SLOT(addCamera())); _delCamAction = _camToolBar->addAction(tr("Delete camera")); - _delCamAction->setIcon(QIcon(":/images/cam_del.png")); + _delCamAction->setIcon(QIcon(Constants::ICON_CAMERA_DEL)); _delCamAction->setStatusTip(tr("Delete current camera")); connect(_delCamAction, SIGNAL(triggered()), this, SLOT(delCamera())); @@ -176,6 +179,7 @@ CCameraControl::CCameraControl(QWidget *parent) _camToolBar->addSeparator(); _resetCamAction = _camToolBar->addAction(tr("Reset camera")); + _resetCamAction->setIcon(QIcon(Constants::ICON_RESET_CAMERA)); _resetCamAction->setStatusTip(tr("Reset current camera")); //_resetCamAction->setShortcut(tr("Ctrl+R")); connect(_resetCamAction, SIGNAL(triggered()), this, SLOT(resetCamera())); diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_add_item.png b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_add_item.png new file mode 100644 index 0000000000000000000000000000000000000000..bde338f7851d2675b29272c7dcf9471196a8f6cc GIT binary patch literal 3270 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 Eg5p97)c^nh literal 0 HcmV?d00001 diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_anim.png b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_anim.png new file mode 100644 index 0000000000000000000000000000000000000000..501cada5df274b99421d967bd3d6b279b6258445 GIT binary patch literal 5409 zcmV++72fKJP)N2bPDNB8 zb~7$DE;i7Ety%y86rM>$K~#8N?OSp_q~c8WKk5Au%oyj zs3EQ(#sxGQji4BDi5rSr)a)^8x|7&`nQs!8n8`Ao#H6!K_jJ0aCz;OL6QgqGoM&EH zRU%aZ?BtIrzw^D~)qU^X-|y`AT>lhSU<`Nn}SqVbO6F&A1nAOcYvR2Ke&L`VDB+3*VTA|RdclJ^yYjG z9<7hSzN-fiKj=Yxe?Q`TBuv7)yYYhqjksyt2&7<$wH|;ALv69p2F49)680bnNu%Eo z0-ew%Ip8nCDAg3O9Xy$XnuByv?FevRljinqYaHPFN9G}Zd>Bz8;U^;A**lv6Tao4g z>%0LgT>uw^*khprHV*3H8iJeX|0i$*6h_*jGB4`7EZV0F`20WnQ!xVUmnS;@^`SHc zetLQZ;wMKCKRkF#ej?&>cMZ-B5U|1D3Rfh!6A3ohI9iVRa%djZd|f~-#Q9zWS3vIx zNoX7DMkGX|DnIr$aF+!P>YhWns6NQ%cvqnY-|4AG{FDgz!=YQ?S=bdQ4qShABjPLT z5MNq@$Lf-a3*>u@#CkPZxO&Q@RRoO zt(}OMw&In|RXA&;0_O$U_Kj1)q`?vnPLN<5I}*WLj-}7-6$y|eWy4}rCiska z^+t%BwQSG?I71c_K&FnRFZ37@z(nL9+=LF=Aat8kf_8Z^FM>1uyVswvu+Y|;oLHO} zCg9RYz$FoY9pgN4cSShfKh_3o3H$_485U{d`eI_D2d{kw;sp6}iUD@v-lFLnS^$5q z{LNvU^2~13SSDB5{nZ9 z>@msT1;c^^F)uIg@|ZDWY=$%$Cm1gy0yGJuMX;s>NPpi))-kFg2i2wNsG6AkCb(L8 z4(YjfyErf~&_SoueH0oRig9sqxM|ZSymaApeEZGI_|}y-u($Uh#>U2CP*4!2r>B2L z--CuU5hs{r#ROzU-W9w=OvTw=96P@Z?Zzjd<7DkSg16jzNY6IC*w@!rNJ~rWPEAck zwt!QoPT`d+SMbd@-xQCM?Ao;pi6|sX!OYCePa+~B2A{9hFcpXZkK$C(1tek6k{F&Z zClcaTH=;5(3hhc#FOUnVhm8cSR=b$Yx-UOJAJ3mZkC!iB7Uj~VOQKx7co8pLxFAYt zX{ks8TS87w&S&A_;r@e~h#E>EdL;Tz&BUUU+x1dN-$gmmed{QFr@!+kT{@(WMMd%$ zR2C(iArgk39TF20%SuX0t`PzF+;h+2xpU|6l~-O7<>i-O*2_yTy@V_~cI*(rQw$I- zVcfWJA4Nw;|9neO!(@o^A^*rkhWWcGF#{hhjN4LYU-A_YQ(VAq?nn33IN z14D~LWWp(xm6hL-@8hv!$MEdgvv}sr86!D;`ZTh<@WKnCuzQfjhy<{NgoI#WVd2%t z$jF~(32G>Ya4#HDosYWx8}y>x_b^H#osZenj0zeHE&>Xn?*9v8UFU=25DO&IUO;Va z?dM5JNw|Icc6|Q%=S2%(k-k6s?6WAzGtWGu|K8Zxs3(9)2n!3t2@@tI#K#|h9B0g!A(BAEULor;U$8hr8WZ3%X9~u4 zufmvZEA;UNPqM9l#~>afQpI=JbLsf9yoA7tP_%xlaYezIr>dCptc+!nhEfodmlz^ zeGnt5BjjUvXA3$PCX&As_+Ymm!B5>n4bk9BZo^4X`U)IBe*AY7{J5GE0W&BD#Iknn zS~0TM)YOQeBsp^A2(lbLd{{iPu=Owj4Eo@~gW_*<=gt++<>lq#6m9fg@`bxEmuVmX zB0SJ*b_s@WUM5P&hDE4KqDb#;i$bLL=isFr+-g&Q%ya2Vh0d!P85yGgk{cKSY;SKz zt^)bDMT-`RfFwC|=nxu8Z*MPFS67Q*S=OyvCz7yj+cxpC&ax+1ZJd z4Um4<|HgnAFatFdHggsRJA3wQJpttR$Z>&dguu~$nC>XUDlY-IP4@e0#wh4NGq{0+ zRlL);))e6E5(6mMDG0dN55j1tl>}aHDK3k~1qJx2)6;aHagd6SkH=B7m9&K=uD?XFp~re6Z6s>8i|_lg>2 zVX%hZ_wCy!o@;7qG9rKqA@T1t7a49W@WT&w)nIF)J$8=w{CZ9x>D2V220@YL^{+CW z$91b`S?Hqd3xx*z^%V$Lja_RaJ>5Pkq1#{{H@QBEXU2z;{WG3YQ8=Amn=MOHVtcyNdkul$Gb8{*z4-nR zh}oFu@_l=nBQA+nU{Ra?lc%YQ}1&^*3BX)=uK0w&=8`|sBSmozScX5cK`JjKM2 zzvtv2k$0aoM_O313bePIq!pljss?Imd_XzW`47wW3nPW(Ra)hthceZ#*CzR#j*X6L zrF5s)3=t5-zRU!0b0h(m080ey+__Usk*%$*;@G01A|%s~8OCFVS=&!p(RjI#hYLkwKC~e=2}@fwXK` zC-Y0(j7<6oS{xPo1XJ*=aY-0FcYIs6Y(ZX1qYS`p^-hcD9DWb#fkc=_b>`sRkTj{F zVD?we>GZK6)}Q7j5;z#L#c)AH1f&fJ zECrUiw>l%llPj3}#6u1g!M8-iz$?MjWZBP9qOwkY%J`P?<^u?6+KVRs1%u_z(9q{8 zu!)wymca|1Oag;uzc&;nfQh0M$}wcjfVfg&o%a_$UjJv%OavcU8X6kJT7cT?^JYP%L5FI!4HM8{ zc5D(fxiqP-Q+f*?aBMOJ+D})a^Gt`gO)a2-9@OuP2{wHK_9tEoXlrXTGW``RR*2Og z|3;t=kfk`&cxQ?eU-9|!@^U?RCZM>um={yHfLdi1R2p=tTIe-b0xUK=HW^lUE_S^^ zmN4+H^kj$;CIC9t+Wp>?fQ961cPvB_7&~fUUgxThQyAxaN%N09@`zXo(r?$vEt;vu z*Zfv=yWXU+k!Av`4)Ot2 zRkl}+$0fmXVp?N(lG2qeReDeHD=l8ml7gO;+PJ}?f`%KNr4$&A-slhkzu{8L-Q<)wPcZ7wpDVI0xJnxhyeYz zGMcD@I=918(BnX781)w~UM!|UivFhv%pLzLgk0b?t`cX?oGDrW=YRgr0dmr$Nhi$$ zx@s*woDf_AgxvtW}As0svJn(=>00&OC815kH-m}dD;sILdQZ^_MvSE$c z@!7D?t<{MMh&4limI<(_ur{%PRH!Ec#PvAR+{0Y#u(mjo8){xEcR40dY`8&ga!1gi zbJj%AmmCCnF92(QFLt%VM|xnuzuU_M~xK#%iMhdv@8dO!lWyC4^k zm05jgJWdNW6a>XGl1w{_QrUmAiF3Ed<}a1FQr>4UWd7F(#^%8x=Oqp|$!#L^=hLB8C=iYtjnh$( zET$k>Y4d@p1>~EuOcB14fZSjbI0Z6zsm|vnh%*CO$sJqNY5W$h^?B8p!Lx7%V2j|4 zGHu$lmx&CclxveCJLAx(`a2n@oqir#ST^zz4<_Jt>zoLVcGHwMl+zSvjOIHIj%b=4 zZx8{uT`~tYJ1(?iQbrn(5@A&$P#RR2bdEak=+Df^*B7uhxzORFM-ynCneSHpe%NAN8ZLFE9zdj8@ZKhhIs#;-E2;IfW$eabz z+9O0lAD6+bNv`j?1ElS890-jT7HGVZfL~+tr*tOaB`^H)~pGyIclT>&GU8jZLkrPhM;NJBtb6fdtHkEMN=!KBqv==bS3Z1;kfn z24qFC%P;}lGMf^>R=|Og8z{B}as^S7vJ9&pWsTxfa)H|~MYXg>kwLpWwFWJ2GRS2U zt^Y{Hk#Q-V4sDuQ>aQW$U@L3}Bw80+eMF^?QM|FMQ+`1UBG3OU0(dZ)t3a_}7S;Fv z!yqXRTqB@H-4|I4yTBK09c1ESTPz6$KP)RN6VG!I#YGlnlJCWdXi4*FkZCk29TjHj z@MjohvRW0~&+1h=Oc<3n@{>D2#oyWD%S&yZmlas=`Pl?W7Z7MKitr1mu_<9vOm9TM z3iuT`5pN2bPDNB8 zb~7$DE;i7Ety%y87pzG{K~#8N?OO*_Rad$`7cPjPbWtpTfOJr4A|OS&(h)?!f*NB- z(I{fWUSe;FHCVCN7>zY?#)*kZX2vORN-{5TGAonG(qs~oyhP!D-*@0J7bJ#@zO`o7 zdaU)Wv+p_koc;gbU-rNEIVj5i|Fw;QEm;n3TQVId?ikW_>$V)HZ7UNjrdCCnc(mvy+46}x|)aTlj*-^5ypqrd750|$#6v$hfhRXTMSXq~5Bipi_WOKUXwK>60M?yzM(RnIL zJ0C@{_E(fnKo4I<@eELufIvkF@l%vYS4D~Mp(v?9CXnlMHHolcVDUg@6 zyB)GQyR*EQY%Ob2?5mTYL|X@h@D-UIO=PG;J1KE&FQb4lz;nR!PC!>n8R2R#Bix;2 zq(>Ji?bTJr_HveKJ?*93)lR0l*~w&JoQJ&>dUTX5&kmB|@9=e~o9zp2l4);o&*bZs zv9(9X`O8-yREvE1n#eza2bV;?cva-?VfpOJVp)}BBXdF&*__$s;S?Vwx=n-OroM`@ zIL%y<8GSuvMxT023viRMZjKVy-b{L%DALnJCoVvggRKm9b(WqwMFIibD^X^8DRps_ zNq(*}4fmGy_LTAvAlmJVxA#=QfsFXuHO$52)WqJ`&QA-IKb@Z|^8Iy@Z=m?YH$)!2 zDYYQr@{%-J7^#=aP!pLOu9rnoma-(q?ywQVH0c_wQ(jEcD{^OMQB%w)k}IPINf;FD z3PpV_E#yquSh-R$S+YG`1tBB7ftsusxr4rUUI2I`@T`@gE^?z{NQqH$RTsMiU7r*4 z=ul}dsr?ShKe_=Du8GJmfSdC1^<}a&Mz30aOOC7D**;pz19Y-H-tj?^tzu!+U=5u^ zOqH#PX3Yqo66L_OA}Q(NB+gJY!^1_cR8Cc~C?!t3a4ynZFK>^}sqfnimHsYrab(IE zqhzWsax1+)H%>0ki-*GR0JlWyepY`3zW?l$Tv(VS)ua98?(rE?`^&AeIL2O<$JtA9 zCneOV!5TV;>UDb(EKL7peN7Q4e`jiuOb_ssE>N~4I1tKDQ?WKbLwey{jFpAFKczq= zstKkS$xP2KvOU^sqERyKE$W&1=KOfMj7%@`F7RHX@+t|nAmgixA|LJ-`OS8bJ1@(N zsog+;gA_U_*+vbf5nyIo6K`c!Pe3!}@01nEl5ijC3}s9E1>DGZe3)NhtqVUWU3zK>U6C#=KgUcz#r}*_T`ricuNfdsYOV9eL>`d zeIoz0TfV!sPAWo>0|wYho=w{b2s1N19cN`;AG-~1Ps{(hY?!LpmgESPfa2c%h<}6t zFsg5WO29yy4lOFr`=)z3!+Tuk7)1a(pPUf50VK%Hb@@{F1H*tM+^)C&x0gl!aSBsm zjmV$(%4?O0GR0ewg;BPW(#Zrfn(=?(dXq~7+Ux6;hwIYnDjMASP^MkVh9zi$IQj$9m#4<+U)vx#!)xNO3#eR-*~v4YShRv(A=B$-d$4vah74 z>>1`F+lM&IrVM*oo!DNgqI9x0%|YfzS>=uNRZz{g{V&2q`CSC3LCyM_D;s#k*ePB1) zoZD62T%9dXbk9Ggai>i9_V}#5}n@ zsR3xeGd@?|o{*#Bor!2;&VO@cn!H{ZFBgDY6SL**Nw^N&nvgBG#sOo2G1)S_YbVJt zSE`McuUD^LR&jB0zYYuxl*GhDId`H){&MGreDd4t^4B|8@_55iIIUK^e)*G4AEwGjl`>d^qhljLe~qFf!`fRTxEWkiBp)s7`NUj!7^ zqo9kuWOXn*ZIpZ-9v=FB{rc?zBsVu#&YnFhmoHzIOP4OGc>VR)Ra9113W$=Vq@+*a zEe=KvV$j(Ji4)1=FQKUGFAj^X$Iw{0Ff>L5+ZPKPeiz^zQ5Yky6%LRK!_d}%bLzDr zKpw8=4UilsTgkPvyw+;jJUu;iefspNiiwG-OHWUi)2C0%`Sa&hy!z^^D$bodr()f@ zb%OpvqR_Xh)q^zah=gVuqfwz~;7opm zoXyAY-1_^@WZ`!f+CWw(8+yR)R?Ft??OgOao*!ZJ*2zlao0O(Aqp^0U7l;l^Kd- zsAM==GY9;kRZ>Bb04V=}7TvjXr<^=_QpJfACsZ6ie!K~G@7~==Ku}PS6c-o2+^T_^ zb#li>2nhHDnN*Hvgvjx9V6XwybA53R$gIb)^gaNN8EgZC@tYXbNA1TWf2TWkltCuS z$Jo2mKT$Tsy_)nQA|hnLf(3Hy*s(?&J$h7#BS(%j!T$aG8wsEn3?4lAQAS3_0Aoo2 z0TwZOXICSWcAo-~zfIu}NjvP7iHz6S*R>qLP5Ex*p+zr7jP?H)Yhmr&9 z0Ywj`_%}roejDImqMr~vr?ne@C;7=B2P;YKpudlb(e6iOf&xBJ{Of>#0D0-9msCZm zTyq>ecu)=;IM4|G_Ve>omDdmz6-5%38bbhfRCUp&%7mGyLWFB1P2GJ1TYlVuU{|AmMv3BdG5LAZX+aGy*uQsDBBXv zb<)3`sRWzpqz}S@;9g)5_x_L{utO}^Emna|J{4RG5ZoFgwBLs35?rmt+e*O@E&TQG z-~VWGaZk!pe)Hf&fU0VIM-5^S>%2_R7$Hf#`1jnk%0Q|}u!YScGKu2{1FoBqLV zD;f7xoTM(6)P+(Y@Fie&!4ZJqtaB6V4EaGM@Kj2fEQkPL9HLAPMxZr!)zd9 zN0(j*aJDf0x1#_S(sSOY3u^@M7>30S5}109R^(!cGlQl$k5rtB@`wc5NC59GD=SkK z_waBRzs`;_J<_#qUW7yH(-43uEI88A2Q?r(9{CO`AlDZ@QXexk7XsR5y&*Puaz zYMH!-4jn2(h73^?nWnf_;*tzaX-#n|uK{a@CexrcBjiW>$%ZUXndsSGcIJEB9_^x- z|CCHET@TjlhL7lJ{$P}=UUHpul54M%yiTTdksWordUUdGyJsQmPiL~q&(BvA8(o_5 z+?)W$vqr#<9XlEoXPZ+ar#-_uKy7z(mKB5DfTA#mKDg}?VD6( zIDKj1Ko4M>Il<84n&RwFaM8phnvjt2oA~(ndu)4R>#8igv)o=bNdCCF5bqA1W%p3e zi^d3>VW|Y}$oK#H*mM5!?de%k_xgfHT&ox$bHhxfGS&UQpNpflG0#=|=2*-&1?HBg9`rCqjR&u_qzx*DryiZN;FG1#}(#zegkp!*_ z43($ChG24p<+&6-r3vBT+TADKLH}3G-7>+$LRKYomKoSFULI%r=2$nSRj;c{IxDez zi@j>GGcAHGxY~>JrS5W-`~VUTVS{#Sb|=|5*iJU(bd$LwQ&t#F0B@)W)~{ca>>w4v zrm{854g30*lIx(Ccz-w5rRn}-#*9%3Xl`{Xu7P<3E5Ih(&ZxV6qb+qe%L6QBS*$H$ z*6z2HdMT~02PXR}mG~$_jz1ruTAs?w8%yQ8*D9q3JJK&XYObzXo{F<9*1#<@gu!Dk9#D7c z@@^2 z{U>XJ$&-8O10h;pKk&18GvPA{9!MIpz`+VF?1I#3D z>FI;M%MY@V^@Hu}Gk%JdtRG|}8`JG%Wsb_oOHzvTV^N#GjaP4n5vfQAm{fezkhst>uCkSAokcDdcfr^2c#fc!qb$e^{G6;bp&RO zWluXU@5gwBT%B_NVb!WtQd){v;E-d2iU}!03#W-_t+{KF-Q*(@IM@w z;QD}yQhCk&HRXAPAc95J##TN237s(O=uuSNLP8bpLRD2&sVh;gFu5@^XU-f|9)kHP zH8qt9_#@0fLtR{4+Vo1kMR7oY9|U=%4aOta_nP$$m1moE01BZaPfGyCjbr7>rSysw zE7aX-j!h3+y?V9kiH0&UL`ei{kUA7&6P|Yb#``fyCd*q6KyXm53HTaJi~CKRHmP30 zBUh7%%b!230I>8iR+UVun)R837A{<3aVZ-{+IzFNcfnJiwsSlyZ<@pN;# zzai)y1UFylB_s(Udk-?&J`)14nfWUULTgY-GS65fn20pXbN`P7VBe1dd=CQfDR0~U zplkt^0gMcib??8p1FWy!ZT#<+_|beOP4NH7ig4^iu2gF zZ(lW0qGs9B*74Q*FqjFF*-5_H;UHR}!vw@I(Ab_aV}`1@2Cf%)9UgO_Edq4!-d%@H zmESS%EMLA{b$61$=hEvqF5g&jHsU)7y1WMFpP4gfs#7BjcMs>={EdQw&CxXM3)V93 z>E2q_FDfch2h;|qwOJgI0QO_T^7r?rcYJ|o zLv|bM1t1^@d~r65hX45wLdcTA@4ADsaa-6fbWhmrO+e5TFx3yZJGzAhb%ET&bMq`V%Hh zP?MXX;=E3GCo%K@5-bQu+%+tAC;+X4^0e`D za|~KQf%zUm3jun=nl)=w5@`hz#O%#786FX7m@_7GEP8DxF(9wa)Sqw8o@o~FE3@bH}=;~UEE)P#q? z))?R(t3xWydkK00L04w-;wv-FQhWwxiTm)7$FeleWsv}Fs?$i|(GavS6EJ5380IiS zGYeyUOA<(!wqRmDAPLZ`7IN%InEd#60eHZ9WKMPOucca_@x>_)Rp7S}G9SXKZ(@)G z&QTB!Y)AkJAxH#|jA<&yq6%wKvSCTuC@6LDo-H97SOVE zaS(ff$QmU zyKv`Av?iIS&@BHfT*p+xXSExnLLz>~j3u4%baMLdr2Xjh2!(<$r(U7U(9NhUS7mfTjRdmF z49k$vK+mD2HJ4|b36=MgBv_1v)lViPDCU8@@)>i1_G~J}Lz` zQzF;vbYq?)iLlzIuwJWQi^G~;2$K^S?=x8JK7@W31Xtkv6Td=-JYFE~edL(iAYeDb zbuy3uB4QAtKF9~gy+Ou+rg&&57_9~oUoplwztZ(t0D;|iffbk;uHgD3R%47o<_Wqm zu06!D21MZh8;tuynCRdEmVg!IXzktTuSfq@y>@HuGu3_|qC2esh2BAUe1+p)3dn05 z5K6{?s1qRRLs;w%EU}H`q0h4y#wf|3ac4|B{DAtY{vqNSi`3@F{V&u}mZ|m~Thagk N002ovPDHLkV1jkO)1UwV literal 0 HcmV?d00001 diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_append_item.png b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_append_item.png new file mode 100644 index 0000000000000000000000000000000000000000..365a85a100a73dd28c4c28b48f90446c7e979b19 GIT binary patch literal 3805 zcmV<34kGc1P)N2bPDNB8 zb~7$DE;i7Ety%y84q8b>K~#8N?OJ(IRo5B6Z-WO4XaI={2u}oLa{>2-T@V!+A!@Aoa|eCIqg?WaG_G|;(oXLEdfyp`dfkdP3<^$12BqZ^|y zw`DVO_!-CsxSqwOL?%CHavREwA2E>2evICXo{UsRS4IjWkrB`6#OTQAzzAhvek;QQ zK(4sBIFn~=4EE*;!WlpB)2Gj=jEsy=)6>(xVNgy^4&~+LQGR|t<>uxJ3>q}3p{<~x zfQAeiLPLiR6~Hsv1`i%AfbRf2F*Z&tO<@vN< zzkb)!($eaal9HCQyoIckV1pE0cjG~9$;rvjGtsXhI8Q{qd-tZ))Ku!yr3>*pN=!^7 z?kB(#dIb5MEHPGNU{Yc}ASES5%-^+ZSL)uqJ27eM*|R70?c0}FAq|FLng7a4nakt* zd8~-o*jPIcybo5D6T!O0#l8j&7&ntmeBI$%W37xm9%Ef z8d|@8J#E^wiMDRtO53+@r&nHih4$>(L;Lpaqy78$)4_uW>G0vhboA&^I(Fj&XAir~ifv<92{AD-Cf4xk?Cfmeju8Cv<;!&A#tpi8^CsQ8b;~8( zy_4S<>C@QwM%v~0AAb0uP;OaS8L=0@GcIG@Fr)-_nVwAk9>*BH_uhLCMc9bY-s}UT zRa8_Exb*1JW40j$bnDh_FJcMqtP1zA);CJ@QF{qO1#1Q`*uP^hu(?$NVxP737uFVC zxNxCS>w`>F3Nb>&NFSq$YpfsE4lJVBJy-#eZWX|LX)G^x_XZ3YK!~HJh#HM;qePAN zGb$JQ9XN16>`vHjIe&?Fs{nrA1$+CzfdlEkfbg7`S@%s?#&-z?CakM2I$q_uqe?fK{tji4>W=dZ{7u=;UxXY`uE*x`w=e z>C&Z60;+=P1;K4V$ z&X6u6bw(PE{r$DqUZb5mcZ$?|*|KFcckW!8IddjeR#wvR;lqXX`7HA-Z-ea&D*zpN zEl6iCxQErVyu4ftx?sTqk@G_-nC#`3Uv2=}kc*=agqSmD4$YoDn`X_LCC&_3h^9`R zN>ipxp-Gb_QB_ry$j~NCm>|;C(W6Jxh!G=1ykfsb=7z19PoUzUg98sIXyPD*JssN` zyEL(!4M5!$SOK4MdT;ee0qD#Jirv@^)JYn9<_YL=z=$k*B`}Xa@ppEQ6~J09#_Fk` z6cg}%DgY0Go54!``}Y@?lXnF2+%NA1)Vl$B#+T=R)YUr!cmc)%upZ&=0kYtfhnU8E z@Ccmv;0=(4*RBSyP?f;P`1^bs?CY@t*wq$dLMQ+em6n!@qc4uRh&`OPaEw)f_|yaa z^q1fBp5>#jzNR-u(IVMc6@J89Hp3dXE&)v17*& z{^(0s7~0>lV}~Fn$*6)#BCZ6MLZj3JiND!@fI9{NeNaLnC~+SFZ()!6 zh7FlySPAS>YvInw2lnpWD=Y?rsuf%jl0riGrUaHkO5stLZ7AVoY8{s;Xp`;oSuN2= z?T2S9z~I3*SsM*0fETl9{@@N`4BLy|Qj(miaY;f?Mip3+QU%0&RcQIFmN0-Pz%7vq z+)&{-%m)1fdx87oFf_yq$V*soMvffmWJOmb8?%TzB6tTvQb_rXnm~@J<3@fV)Oq>9GRBoAd(id=ZNu_H#9+^knr`lEhSNfly;a`DQl@DBq_BG7pH(E=cJK@>!D8TT2p9OFc2{ zI+6gM)jHa7(=6LjqAuIyvn-2>io{hudv!f~K+`{-@YYw4H2~=;h=Z(ZZ8hff#9fio z6V(%wLR7asXNPp zq~2<(B^x8C5>koCXAo3@c6}S_TefVW)vH&FvjiXP?(-$@R72#^iQ~l1cj;FU2FRpv z0BVZ3J{DcMr?iwLBkPiYo}{dU3?TdAdGqGY0`i@{T)1$dNX?O^b2_~)Iy&0@O^{wY z94pbRgio+?;y{FJ^08ybilpMDmtGRT0wL{$mhr0$@`a5XH;Od5F`@KCq@`pDLik>m zc*dA=T-@zpF6`@=7pGBp=;FnTMT$Os`gCz}MfhUTLmtEAx8lcK!`4?jvL`&nIl(-3 zq0jh0@jWs_3@(8b8G9>~1O>_CtIWS40Dijzun0-uy(_4Fm=@^H0V%ti#?oCahWUGAwMS7TdnucF%99 znY1j8f=1Y=`|MCE+~T0TH4)^SX`=X&Flyb$yv*>J&8lOTHY|9wMUW32W2egF-DvWe zG=ZAaspO~%Am2PQbtrB5vDRCAGJCLB6`G@sZBwR^maWl{4be{IYtE!n%8XWIV&z1Z z`+cRQYfYcKy(+9X2G7-MA}W2zHpE2bhm(cXB_^HfPCZ@>6W-B&oDXT4TAVjTc%oxk z25Zkp)dWzB;Z~|X`5*TOd7#hy_QE^blv;Uxu#`MeVZAYV&@-0J?Z*33zzCoJvi_t~ z-Dtp)9~5BCH&Jx8&m|56WB-=s4PhT@%nV+@aMF<4|{)J{rc&_E=$uk2t1&_AXnzDJ6EX|>1Xuc06o7X?i;=O*D=}2U? z^^RkT|91&91F83dP|8@*j{J&v2gv0ZA8!{6Ai_Y!grmt6!y#fHs*!~i1%!_ArMRhq z)T!2w+K%)6p2Oo~ULRt-&f|e6$kEzGRR`WN7qBJs8B9XL!fk#rlQE;gb zWv>pWl0C6BW`81;9ZI5!^(k)2LkUoTLb=Kl_c)Xx!mMn#|;(00B;RRJVsBRPuO+#Z{;ZDA*W5KI~a-$7yePoyWsW5ID+o zz10{Csw^r z6Y{K${E978`r4ommNr;b`$*QsWI03 zQIl+6#MIhvN7uCYII=3>YWPI|3qjAA)@wOh$dlk@e9nB$WXjjlTNIo3L{!;-+o9U` z+c37AnJoxK1UzHm?X9y|>E)^~T|cHSfI>=5_uEgjmNQX*PKvC2GHm+yIOEbi=AN0F znUxU}G|E!xsImXvUSuK@dqmnVLmJ4-RsU!E;>gCUe1~ekKXSsh@x5>bo$EqH0(v zdz5Vam{+Ufbo z&FG7`w1|SN2bPDNB8 zb~7$DE;i7Ety%y88PG{YK~#8N?OO+QRM(jv33Ul|AwWn-s863!mp}+1AyL%Zs3M_` z1QNYSqBj8=M3+VwuxX}a3>e!nHg344oRdAt?xvhL**M9@NgO9$jM4o2{f`-ChM^7d z=B&^0ob#Rg%Dwmf-*^A}-}2swMBn|sQ{a&bL`6k803OlN(PI?~MMzv+oFp+ZF*!ay zer9ZJtR^NVra`S%cc@gV)xc(@Qn?!#MBc-|bHFL!9B>J^V!&mjFBq;}l*{E8WHQ-F zi9~W(EEey_vvvX-al8^~JJPvG3z23bO#-AqC=dwv1Kxl;;1UrLVLxfoBpa)n6=d?~ z&6_v0apT6bTeoh#(c9bm!yP+z{A~O7?Z4i%Y11E8uU`GvWy_X*wP?{I>ged8wzf8E zX=$Ox#zp~6O-ycZEdCb^XChB+S}V{!GZ-snZ=726Y8LqD_2riR~M~Wvxe5M zUr(r?wrtrlg3X&Z3)f%^ZP>7Z)~#DdYuBz7@^^Q43uR%?U8G+EpX2y5;18(xx679= z|77XXrN4xoKke-7{1Kl01K9IXU0vM=8ja??+}zxE=FFKBZy``tR+bh&DkvzR;^Jbe zs;UwQvGJ%-csLsdacJANZMPxL*MML&8wdl0d`uKVQeIvjrKF?~T1^0#=ll>>sDtZb zf?Rghs#V0ovS=)3QBe`W!w8;6lP6E6w6ruqxc&S0)8OEsP`CmA=^xA8$(VK6+ zNw2)}3SGW@na-R!L+8(*7p}km{`ybGv0mo zT{?UAtU%!S@#7=cjrWZymt`2wSyXffLe~?(Lca6PJ3{>spQcTlCWs1`7ch0|RN+}D z{}qVdLDw1)p6f9J-HfDCDWB(A2#}GHp=I|qt=Ra0`_s(KOgee;Bz^F~2UJs2Lx=-{ zFuQi`qQb&L!B{rv^y$;IaN$D1fSo&c()YjreG4#g)9W{H-Xz3?5%Mg+lqpl_z4zXu zg9i@^gpI-&?P42PymRNy2?UK^XPUA|mo8nR)YMeIUuq%1^y$;JwY9Y)s zO_?0bkG06wQ36i;8t4hQ^pFo&zw4SN@&6RA8Itrnw0x0yRZ>#jOnpa z9QKs^>*eQjSKPaI?}*^0HX+yvfX0+pPBupLd>2$TgZbT`zfxsS_pu?q2>O|6(Sx`eSQ5Mw7#B)F&+(gNaM)Lt$;`? z^nV8T^#cbE2*Vvme(tZ_Jy;~Ji^X6!~ijKClOHALnP?@39<%jvP56ICz_O9pf-sUS2K?@rG{EZ6QEXQj(U3H`Bro>(9pP;o;%* zuf*f*d00?>z{s(|LI6ZbEl*eseeV_?wiV=70E=+k1~lTh7N`je3#$SufeM^!kd`7X zL0SY90{K85kORyCW*bsI&o$iRJOwDn`HPSiBP~H%inI)AxuJf3P8H6pk=6qBKr_zg z!={D6A{;LRRs!8PUkeT!fGt2T&yFofv0Fc*^-E%y{@EvkHp}S~@yUELq+4a!bde-i$dplb+T-kpBg6 z%%VKTPc4s;X#L+q0FS4Az&Ba0sG`cfXVaE*M^ByB_wL?Hohw(}T zpXOO0{}FJ;qAV6ZT3*aRfM14&hB`h?<=CR~?x->`(JEU({yK2Y z;_;ZfYkAHL0e<)maIvb2%-meN(wf@EE7xuK>(S@W(D8E@sAI({p`}m1@S;GR1(;P> zOxybR(ChEsqSlU1TC#H0U(^W+R&`gzxJwY=dlm*_f}rJTA_TZ)mG%E*=9vYBqYEpl zUIamXZmC8fI|pRh-LJg%I#o9|3&dv@7T?XzFVt7eYoHr%ze@|3EThV~wWN-VPqxMc z2yhAlyak@-o`bPb%dbWKH9nO0G+vfh2H!C`-{M9@7$v9jhmS?VYs6LctZNj+57l8X<6CNq-W2f z6A){D=b}6D$tk3Yi!ZXq2Jk!x{J=s0kT(i&&YB9JCU07Hwi_b*t9yr@q2nO)8eICd zx8I>x-+YT+e&Z%xzwrib@86?Oo00Xk76NrHU%8H-lbkl~MC$YmdJa2Pxdnw^Db(0^ zkSi>=xF2B@i0=pf4c>0<0VV=iP7IUP3>=_PrZ)^_B0@ zl~-P+D=)ta7k`;vxb_nD?b%CpP0e)V_=!*V4h%-dB_-dQl0KdG9ymxUUe`+`e~yTZ zv^EItfdD^yln3a(LB3{HC8Va=t?XH=>j#0JjhpE5OV>g4I$gT@5?#D@&o{g?ifFLQBV%;AVeJwaR*s5U=#QT9y z09!NTOgv!s|Ahb<8QHd*x9{lNjaF~#SR{~SoDqm#r036Hpy$t>r;}&T(aAIC=)~!> zbR0wCF<{ZM6(o;|C#foyr0Q6TmMJJwj3GNBvc+0kLA($6-J=AsTq|4ql>74M78Q-! zxodat&fUB9MH&q~i)erH%vk{^PJ`sB)AZcQQwBUwM~|O`+uy_CV<&0o+2fR*S40tV zHHAx+6e?EGq$uf~knqSTYfS_39T@KagcxA%0Vczs5OBV!Uw&bUBi#7#=55<44FODx ze*Nr;6M_iOo;Y=n?6DI94j(&C&tU4y&>cNSgGY|hfy2+yZrx$3Zfd8%C?$=HP>^4k zoPw1pU%HNq7-y}W5MUc#yM1oq0lXOE7a`~hmK%oFKE;qfIb*h0*ZR$umap#S@tRiQ zUEMQBp9P*1NDd(#I>LCCbcc`9!9&l`4orKy)@`J=MaxK2+ej(d1vF8fLLL)ju}hAR}a1mFkA&8~>wZZZm~O ziYXTpm^FAwxpesoYHnLdm9_PhTT+fOK9}OAOs8;pJdK$UO`d*{vY5q|@Dqm?{dtX}p+Aji>Gs$jDBzcSvC*KL-A4K@`@xI z_b9UQR+Dqc404y3)40_66fkQAg_mz3aosMGweBZn+aM|12T9hhBk_D4MYjSi2gyHU z2{}*9A#uyW;W3#@_laz!&QD@DruYm=RLFOD_`1X|$xAqM8rVXl2a@B9Y{=K@khSE&QT1FfeeG83$a{ z@@p=5K%KP$I0vQ#hR^BvIHpN^H>zqA+1M*cWFrya2G@-&T}SHHeU#WaL+92Kq6Zi z41)k7DY>EFsu$=;y--Igq)LEWJgRjFEveIop=CosFr*Q!3X+WAh5?!=0LP6wnuvSC zdHucX<25_U#yLqKZ-k9~47o)VJtq>0?H(h*X7&Jd0avqp{C1e%tOSRKTfRDeSdH!x zqsAv|PWj3TNmAlD6goXUU0YC8Lf%0U zm5-}rImVEUgPJB3ZlG|%mC@RO zk$4bVIZ%L(0zfrctg5Fib`^b}Aa1zKDDin+0!RQEXk4 zD6qVbCP9Q?2*AWAaElvKCOysw5cRJ`qzA_0m@x*&ZmCPry;LUT5okq<{{;EKC$brt zc*4iSJ>~=cW@YeRP+L?{LrwuvWlvO@i+CDZf7nM}LX(#qA|GXifvgPCS@!S1d%#bD zkzi%#Go2>X?4cmIyODSRL}21ZqW%Ke0rH!B(0~E*sX>&_T1z6kSOa+`E|C8ej*$#`V^f{3eR%Aupq^w6!aze}4%03ajxG%{2%ms14o5|;HAsd$z18F09<>w$j*&6bk z7wZ6>;RCFRW@R}BlvdS2fM~NFmQns;_JH}A=^$|h`QO{R#ZheAe)3UOqIG0nU^4RX z*07O;Lx{Io1n2Nl3aCARmLD{@_q|qU;!K#~#i%|=?ghPM<2vO&@`~GN{d{Z58w5CN z_|VFHOPxmnO-%zi1Vk5@RqPWTC-N1Cm|b&_r8$mGBbSNU6obBR>k8MjlkI%GL1GL& zQY^RSdZ(~b8asFYJ$GmF025|-Ru2H^^94J|#$($3c!(qJG{2MxVNsY);Vm2~31!s4Ujh{M9DF-VXBeJ0d%&^zj044j&jU+l&?* zcA8Xjdrb9yy`RC=J<;j{Kz?+w7K@$?kmsPsZZD*WFN!r!_M8XjijEfFGzegBFMlIc zQP)iNrd>?m@Sx&x1B zA4V@UCBpXz<&U3~zpe-9p|yJ(c(%zLCqPep9u;3o)xx4P0tPIMk8PDE7n zCx%bwlxBH(El^qCN_OKVW&#AIH@)B#n1*O>*hF-YIVx(med-)AodO_$$PtD)$lnwy zbCi`KHvGsrAoWX;t8Brejo}ZPl|xL-F0erFrRj$V=<~&WWb2y^vTCxAtRlxaJmVhu z3ut{qaD5!j2j3qT9O)Y#ExpS@5F*5y<>J*~WkVa;j*}FR+;EUPhUP5&UFe*}cSKHd z1Tm2)th7g+*uM9!2m#PdsUbToS8ZHlUIOtrU~kCuh7B_o@4;}I^0CM@$~<^l*d@mb zPI;LL+ImdWyTrHOwed(7$UDmF$T_KlM5E$ZfSVxi{&ckeQA#m+MtN>oweaOC1V}Wi zkG~PBY(#$^E2}czu=7imtD1IE@**91s>-|g`qU-5O)@NaM9wP2i*yB%P=KXeSEK#)dFmsQ^;XbG3FI~uKF=V`lnyl zr(Uz6zo5#1P;AY5vh{&mx+5~X0nSPqlUPrxg}N7{4ZDBi;FnIL+>$A{ zWP{#bs_}br;}scb@jF7R+X^lJCy-Y^dHMTu;@zLCBFI}=P&Z}X+7IGOIuL7OF%eTx zltjh?B$$;DOC;J!@mRfiDL1-A<^;#K?*6f-xI|dYh@1fD7;I4`kc}6PvAH2~1Ds$e z7CH=DuPJcdcpBxNg591}@{O-2ans%_E|Rk8BDaJv1j`_ids3h%bWWgyqI{BDRI%D4 zEI-3NG_Tk#vZ&S3FMUvCr@k%1Is*6`=KM2E4Qx67bDNaq$DJbU`#mOTHu;XtS{&q~ zu2y?R7G+@tTIC#&+3Dy%ZL5t(;z^N<`dyKm`nR6)!rS55t>mlB)4NAy-kF%Hx#JXq zX)px9+weFu0V1NM+EM->F?5l?oo@DX{!Ko-Ci$1H%O z0W5+WzA>uULeX<~lGB82@>W+$MOYqjap}9*)TGpjcY}i86=J!(ef?k@KoDTuy{6S@mnE;cb z67ET0@g^Mqq~19^x`$x~LY z_f%Hh^@^E$$18r`SKcYj!~SXQ6fk2k1>~%xfWkEtRJM`As(UE{!bR3XytYXY1~c;P1|WoOD|=%ZKH^E4Mj;6EP%>P07-1J)>n=%zh}2o z=JG+xTycofmJVU1H$=&chbTpWj*>bDfI&TrqQW-UxYSm%8J$4R!E-=*--rOJwgaS? zzn>J?*i;~&yk$Sha9`ST4-yAw&wIB&_YB-K&4+80X z~kNynY8M>bDCb#5V4L2)&fnx{abUDug#nhDL4YI(kPZQ4Gs^KsS;+!m7%Z&$XOP9kfdroNvqb86z6iJifYDMQdBWeS7pzzw4&!r zsiynSl8PR^q+*R;T;4MrrRn}UN`thl`)+t?_i$KA_b}2s5oO)NJ+Y?ijzrV-6+^07 z{gtY6)!(Pqt{RTd%>9Bt27>^Yf0+FE#Yk>$9w~&EkZ}|ykE03Vc=C^mBfp4vAdY;) z8L{LS9s{Up3?ocMexWKF1Nen1$#;^Hd;sqdAlQJ3NP|@5J<$jydEuHT&OMNNAoUCe zP{xbP8S3D=7^q8+x`w@whv6BlCJ&_U6V)_2NKLMRh+7k45O`zB5pWAeJc>}0KkV}j ziy`kYq~U6PutZG?rAm*tU_Z5ZF921v{8u&JGR9x%g#Q5XCTV_t{s{OF5e&X}Klt-{ z2LIW?2;OGrPw=@ue&@h{#K69T@UJi4ndQw%{#zV>qRU^Yq7j5o_4z+X{68W7_MczZ z@t>%S;Pd;S$N6o!Lh)DNzk&Z!D3redpPv9f0^SBL1BX#x7t$Q$H*bA*1YGn6f=z)) z8T>E6L_8x1<8mO<2|xgj$0Hqw)E^iF_~G0aBKRQn2E1_16R9gEH1@b|XTT_=3|j`c paQamH22Vc$`>y173Vf>+_+MXHIN2bPDNB8 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 a`TqyVG5pv_)7-iM0000N2bPDNB8 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 literal 0 HcmV?d00001 diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_down_item.png b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_down_item.png new file mode 100644 index 0000000000000000000000000000000000000000..fc86c4f6db072ec99ee76b81b8ea21d607226dd7 GIT binary patch literal 3812 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 literal 0 HcmV?d00001 diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_insert_item.png b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_insert_item.png new file mode 100644 index 0000000000000000000000000000000000000000..f75ea064f0333fef39773557c0b1d1ab7b5d380a GIT binary patch literal 4586 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 U44-rMzW@LL07*qoM6N<$g5D93O#lD@ literal 0 HcmV?d00001 diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_mixer.png b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_mixer.png new file mode 100644 index 0000000000000000000000000000000000000000..b95913f528f1fd7977294f9ecd9dd18ca5514965 GIT binary patch literal 7012 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�nX+vF&e7!?=N*r7d6aFSC( z{R&Hz*HhCY!J)`2P+Uz)i;U3Pxesc@9;lUg z&}(lrW&6_SUT9K!pjzzO+@l?36bV*ElVVK_nUotxp3I9UTl5KJPfjA)uZknvlrdzT zB8tpcM38}5VMHPgB3;X!wIK~Vf44Hx1Qojwnv~*g76F2!CcU&0$>Et)fTGK>L5a@R z`YMrNyGD|M3{DJ6^Hn|e3QV0eUR0GKKMN^oQQ+{RQP@}aW^`OY50Ug7dsBa@`?tkh z2b85bp;_gP@r9w7SR9H;C83ts?7N@b1krIpYBHe9s zTbC=@BUkW{!i`3zBn5?~y1CZABr(LcpTcWOb6&u;p}GE8IXWGCXDhIOuCfdJ=44y0 znUcY#$wC^W-Kh{R8#Lj)PM$SUgxz1{e5p9q9y6*Fv0xAv3n`d#K@%5q8&jw_Y&>2O zLtQKo{RM8Q7I>jH!}lX?xT7Z3%Z-&BB(yO}O8+E`&7zrK(e*f=Wc#FGURa*2;OFE> zE{sa!c`JdG*cgA4I{SZlNikG_IP@zu^vD8JIFUgG1*#ty@|@IYXmjO|D}^fNdr>@b zYcK?FY1Ri~PE#^=&rwtIog^7BLUbq3+;5yDK%K;uA^(~-f_U9=&gaGud5y&B`&y|x zZA6XdR}|p6v=uB7OO>;^~@< zJm^Fwb0%9ZNDSe)6=_R;;Koq_)cW%=VNn(j5T>xJby-q$3J{NqqTDVIU?+vys+7WY zQYqI$J~<@@njG2HBu-R-h;5fxZwz^@pTdWFWEghM(PGbRrG@mbVZ%fL`U_o9FLV7k zH=6wWA8gPFDXtMad|#1HPim)1r~vt00vumv#IdCYJiFA0XO~bB7MXBpwgC;9J}70o zqgLuQ^sEC4VYWFrh7B<{|0~Icx8RAIvJwu{te1|vH&2_~%o5?(0H3Hl(N?T57F0Hh>GAepWdqC^KM;t7HZBV8TL8ZzMnnYXB6$x4@z`Ta|E&+DWl=rw^ zHHM46bY*B#xPM-nYL{?NmhWB37|%+nlRBNxrvsQ=8g3zNu{=Zm77j1S!AKf~brA#; z3c_(|no7J^x{q?o~2TaN85VpNMlZ~2M?=vdb%T+* zy@B>qOV{m|st7D>O2QL^Iao3@#e&83dcnX%ix)8C=?*67jnH|HdnlxPH&VrSs-%g; zZJjbg+$$K%c7Yi@y*Dt==ru#y3g$kKx;W$J-P^X3Wu95D>GDQBp%X*3UY{EiSdV7A zOm|v#P1zn7n4n0f1*$S!d!Ul}Vb zjO!P&Sr}K~zvPiv-`Z%6*kyZFhCRj@LvUn~&NBC{IJ`hh=f9T52aN>>=5@|{2F!Ku zJiUABYF)c~mrQWm*(UA6j#dd6SfA}^>AbJXV5X%zT^Z~fAE^M9e4B-}5*I2!@NML+ z#F^4c{BGnK5xOTc%(XSDTO)f<0i@VL1+jn1);o8<8+k^E?X3*)&aw+FQd9{T0X#rgD*Yq%0IKlh!D^o# z9?)Bed$m3zKzEn#Zuw5vm)&x88MQctg}e;g+vM2RBBPMrf(-o_0W|I~CXh$_8^QcU zGM-U-tf_Mf^tOI?%l|U(JLkW3&Rfen&3CH^U2~ivP6=hh)B_j+hESy+%kLE6-sZgu`)HQ8hbB-=619i1JjHHizFX$J!jkOln!#Lm zCObPR*&USZ_BI8!wPjP%Oi9t2P01^;xkX8#!c#43JT+Z`O1j-0r1gS<{fGr9NFw8h zYC8qEll2c+B7SGoXGmMIcMcrRak~i8p=bVR=_5@qvQt z%bYBO&rN)^0vOq3{MZ72wDgO>$}uT4-;bq7Xp!^`F%YASJ{Xqki=jGS4AJ>uaE>pU za{N)76OI8nQK-_!p+cL85^XAqv}q{Pa8ayDMvCL>BqOTpvu9<2a*Y!a?#6J<%7op!V- zxM^Z(#MoMydx42QV?YH`<|PwlE`^pulyZ)jlAju<A?r%m~TAK3LKnW{* t;m+rMk2Es=(fA(<{Gq@f3jCKU@PBnz8iieL{a641002ovPDHLkV1hk;-3$N# literal 0 HcmV?d00001 diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_particle_system_close.png b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_particle_system_close.png new file mode 100644 index 0000000000000000000000000000000000000000..aa9173e65d38498e045ebb82fbaa859d43c5f431 GIT binary patch literal 5266 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 Y1E3;7|AZ@M_y7O^07*qoM6N<$fN2bPDNB8 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 UsoZjLV*mgE07*qoM6N<$g2^9G?f?J) literal 0 HcmV?d00001 diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_reset_camera.png b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_reset_camera.png new file mode 100644 index 0000000000000000000000000000000000000000..337a1b22b056cb95a3bca5bdf47962f100755d1b GIT binary patch literal 6109 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 literal 0 HcmV?d00001 diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_save.png b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_save.png new file mode 100644 index 0000000000000000000000000000000000000000..7f7d35e9a1c961f5bbf28c13ac9e76a8d16ab9b0 GIT binary patch literal 6462 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 swqT;Q7XPr|Wi>P)N2bPDNB8 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 Y2UE02xJ{rJH~;_u07*qoM6N<$f)FV%O#lD@ literal 0 HcmV?d00001 diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_vegetset.png b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_vegetset.png new file mode 100644 index 0000000000000000000000000000000000000000..f15616ad9f7627678837805006cdd150164628db GIT binary patch literal 5686 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 literal 0 HcmV?d00001 diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_water.png b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/ic_nel_water.png new file mode 100644 index 0000000000000000000000000000000000000000..0578e03728f8ed54395c737f25be622aaf0c5ead GIT binary patch literal 4187 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 literal 0 HcmV?d00001 diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/particles_system_24/ic_nel_collision_zone_item_24.png b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/particles_system_24/ic_nel_collision_zone_item_24.png new file mode 100644 index 0000000000000000000000000000000000000000..f82ee48ee6493f1cd84febd1292014fd93ed9d3d GIT binary patch literal 884 zcmV-)1B?8LP)N2bPDNB8 zb~7$DE;i7Ety%y80`W;iK~zXfV_+Z=sJUfZD7)oykf@C~zTr zs#yXu$T+4wA7r?=UJN(bVEK6JMz)S$Sscg$sv8Uo22HQRSg-}O0_v{W5FgMAs5+$4 z)&hB}#CVVoxD_MBY2pb9<5;i-G>c?mok*w!{sJ`d0iQ-#0#$-2wY<~I$R};Tl5Na> zd5e(!@+Q9fl?a*Dw?J-hIKYG&Sl6Q{`k+)Ba!eM95^ zC#RRx?#3G&$Z-*wocG_*BXJdq;dap# z3L18y?@Mdj{!f^I8nK|D!55jxa#eLr|Bc+DU;AWtNTXO_8&Tq;Vij~-!_w!zfqlRu zW9P6}rf!k%P2HnDn7BoKGI5XoV&We2&D1^ihp9*0PczTBU*=x%KP`L`ep>k?{IKy& z_+jUl@ZH)c=Brb5aTeYjoY#d?v|vyDQ^ zrkRA4PBjfKon{hLHr*tkbgHp$@f1Vv{7L%W1(UP`%V)EoTL1vw{N#45cyQ?e0000< KMNUMnLSTYEgt7ww literal 0 HcmV?d00001 diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/particles_system_24/ic_nel_emitter_item_24.png b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/particles_system_24/ic_nel_emitter_item_24.png new file mode 100644 index 0000000000000000000000000000000000000000..074b8a3a3a47999764f23b8108da6d5b9e9bba8e GIT binary patch literal 1075 zcmV-31kC%1P)N2bPDNB8 zb~7$DE;i7Ety%y81F%U%K~zXftyOzSQ&AXqMkGNGjG%`WJvNu_rJL^M)OmgG?Otxo z=5($tT3Ria&0@_+&8VDOMnmldhW=%cmf8xUCj^0i7yV^_L{uQzLp|+V-MB6v8+75Y zv+w&o&bjwH--(Nh;bE$rYOemUCI(9M&@96d0lh%~g)1{p=UE!H(K89i)DmlM7%geQlbMkB%vqGe$^8dR&QU)k3*|u&0C9YG zfCUb4mo-S^VIP2yS?>CXRr~nF)lek+$7mAk2rq_kqAK4& zqzP5;9c7zO-^C4J0W4X~N1nz}3mlxgWC1kac}fb6_?+sdgh&&rvE@Ogt^ENAlpOBj z!UFiF`Z~|Z1c|1qP2dE4Hk))+)<%eoN6BE{3Cmerskadn&K=l4ua?H8ujJ+({QG)r+@N4XuZLI!i;0rNFVKY|=! z01F)8f(B@TCTPb|ODvlf+5uhd+DX>=5@D4awf=9vcktT)<`9FND=@73JWpSV?j;paNFA7P!(QNI5LN;KX;5UXmvy^DxvNGu!hZ_wNy zocArmxKMJVp|N)bPI9#LtrG7&b`Huh|7edpN!K<>Hg~?m4h3WogIrbT@cO7Li3n63 zY>UUm@e|E7p7cqMbc9<4#BdXt&9hoy_K-M=8j`zxD1K2x;%ST&2U3zyW6`?(OGafSF!qV7e+Zpziw#QQ}@c4MV2CD8C;vFLg@r8 tNA|VY-o*W{;S`>aqhA03002ovPDHLkV1i0s_>ceq literal 0 HcmV?d00001 diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/particles_system_24/ic_nel_force_item_24.png b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/particles_system_24/ic_nel_force_item_24.png new file mode 100644 index 0000000000000000000000000000000000000000..b41d3d7be16a0bd6115170fd78ca6d960e41acae GIT binary patch literal 1119 zcmV-l1fctgP)N2bPDNB8 zb~7$DE;i7Ety%y81KdeOK~zXfrIme16nPlOo%flY*;(D$U1!(bjs&qSTPrk4m!_N{EBFAPDTAF6ae}i}T>F|03=< zJD;9knCWI5jtgIAcXsCaJTKqh?-v(0!_Rh2^8`GeRXY|h-dH3_U$>{HOEU~H{o_~4 z%IFHay}X#?Uah7m*ynUYP?BJiDBh~`cpS5alv}N9)^prHk;FvkU$h9GXJ^CX%uJ}) zb*Pl2%g5br!7!wI?OHCFkkHqenhL`?Iq+hV9wDSuRY$9BHosv&)bAI94#!~Eym>H` zkpZ{U)2D#Wd%X}8#i4z=&Krh=Os4SnPUqPDrAwhm6d~&K!O*g0@NoHZxVvNtl<+*1 z%kpZ&fY$l*wSX)?X-P_gh}8-^EEc$%mIgl~=nkp|@A)NZpg$6!3_~Ki{v}%Tk1U!7 zbQ9d1I~Q&zC%;#h%LU&s%wJWi`h{TtdGX+a1&%UBIkA=J-wt3k*HG8TwSnWtzOz^= zW(6QGmne!aEJ<&!;#wf;N2~Us>SP(VD9Wu_1N?$eRbw(i)MlHaHk?Zd$Bi6LPIelG z)Vke_-((s%Vm3om)1a3K2iy}M51j~D&oHBVT&@*{0eKX~=ElX{YsPKjqN2b>Y|90# zhNug*on@g^5NZtrFhe$3UW^%U<2U zvLmHDKZ3S^ zf&zV_f{4cxzlvp_Y{Q4UabTpklQWC`-ieu>MbK#s7OPWuuS^vG+dpSc>I5L1n3%AV zVV&dH%P2 zS$p@qwW=2HwOT(~aVAT5u%}14(c0>X1_IuW l%*=&-4GpfFy}gDG^>^x<++bl37m5G?002ovPDHLkV1kqw48Z^Z literal 0 HcmV?d00001 diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/particles_system_24/ic_nel_instance_item_24.png b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/particles_system_24/ic_nel_instance_item_24.png new file mode 100644 index 0000000000000000000000000000000000000000..fc0a8ddb18651abc0642929674f255b4f7e4d2ef GIT binary patch literal 1190 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 literal 0 HcmV?d00001 diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/particles_system_24/ic_nel_particle_item_24.png b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/icons/particles_system_24/ic_nel_particle_item_24.png new file mode 100644 index 0000000000000000000000000000000000000000..7357faf33803f5013738674799e0a1b189b4bec8 GIT binary patch literal 1209 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 A2><{9 literal 0 HcmV?d00001 diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/Emitter.bmp b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/Emitter.bmp deleted file mode 100644 index c7859691829a66eb01388aa29c762ef1e83128cb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 246 zcmZuqxeFX|B`_y6>ETpkZF1Z-NaTymwfTgGTRr@De!Pb% Iw7LHC0Q(IwRO-n~apo7T?EIo0T5AnT@Ob8~ioi8e|2A~X3@dgH*6f`&K~MGUVz(SUD}RhVHiym$9oDH} G{NM&~_iht(u0018! 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 diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/animset.png b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/animset.png deleted file mode 100644 index e16e70346648ea6314b3a4375792ee7f8edc427d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9060 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 WIxsMiXQbEw0000N2bPDNB8 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 Hu0mjf+90?k diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/cam_add.png b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/cam_add.png deleted file mode 100644 index dbc579d43616f667179ce23faebc8b2ef53b134c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5732 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 RH&_t{^t6qURa%aZ{s(A!6!`!E diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/cam_del.png b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/cam_del.png deleted file mode 100644 index 1f6bee21f7a08713cf98594c32ca212aba846846..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5960 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 V;&nfp2<-p>002ovPDHLkV1jvnSoZ(` diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/collision_zone_item.png b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/collision_zone_item.png deleted file mode 100644 index 4f7f4df8a6423b0acff074eb4fb247464b53b655..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5749 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 n#mMH@{`6?mo;Utq*zkV=?7`5 diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/go-down.png b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/go-down.png deleted file mode 100644 index 780714b8fa8db3e15b9a258bccb3589e57ca5d80..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2404 zcmV-q37htbP)#Yb#qihEXpDal z{6iBL^y9Yow)cF${?2>P=}DU+ zaJy1W_S`=AcTR6l`#iso_q->?hxmVnlrkVE7J5A+Vj*A)5YJ9@kM8Up$Zq@fzH|C` z#s-iVBjX>Md)2Hzy!q}X``$G*zk2vn&D$AcH`c&`6a9Mk`xDdmZ)g&)v=1VkwdaVR zPk0PN*YMzmCR`lO+V|bnR6+(^6aaw&@$Fx}<_pfmP$r8{u5Ca)is$6|>Ui;uUL1L| zPa^{!2shM#@0hSDj*VwvnN>iHYc|q1IELQ-VNmwvjW^($N}cOiuq?ZfDT3$N@acMm z8*RXIOcfnFFi@BX&$Wr>(ire#129dyz$94kouxA1#s=(bY#~XnxfSr2sshsY0S36P z3$xG`@;vySyEFzE*BH|T$cL)H^+3ufGHAkJOJx9>UJPGySn&*8-*U<{@I>(vRe*7( z871(+VP0PaVmnMg7^O>70dfFgl);y>;AIrN7{Vz3;3^$7|Ak}RIOwj?lu6wA^P(g zNHDAa?YFzm8ivufyhex6`23Y;09PGEs1D!AiKMoP=&< zESO6Yr_8WOPbfa0Vn6sih~cs4QzUwxjEx{h(nvt(41e1DB1%e<&j4S%qJb!5`$|_m z^xKOUM!%UfIEqV3XJuUo4g^`2ATof+B!>hCkdF+ZiCLp7)k}#FUXl|fkrAQj`9#-O zMgR$22y9$;JDz%a4>D8cp@~uP1Zlkba#8e=PX~9XH;aM3p(EE8D^ST zm%DIe;F=#Pi<&pxN#R&cT|=_AX{8b@^gw*X*hFk3FhFtcN+e}8xD-7S?^CutC7Lsd z#+nMWG*-e88qyP4w0FIWlkMk_n;67&W+W)o7pzPFdg;1uWM==-_M+yE+ed~6pD3@a zMzXv*KYWsifSjlSEKiw_;gU;aY^I4M1&v~HlB2TBKvh{1MTQm_QTLGZeJSiccm`wX zNjQ!T$F{+w1#4Y*h>XH)RO^HhJ8iJqRp*q??J*SK~a%G(U_@%PE|3CgkmB= z$8?_1HR!53JX}_pYMq?vU?iQz<*^JVGShHf2d<+yBiyzvz_T#c|8HconKJ;}WDT5{ zF35l~(X_E1knPLr>g(!S?j%vVGGK&E=m~I5fTE5M>5X7Tv?K?}t_PyHT>C*c%H zJVgs0naZTPFw}oxS^}T222OV2e?Y@k;7;~uwese(x#_7dS5%bI=CLX-nCk!+023;5 zt}Amq9CTd|hF+1*wRqSAlbq-0gwMHSQv#-Q!k$9#Uis!Q$SP0-k z*XtNb4ZRPr&r|kQ-!ITW3~#dEArnWbm9{36nqIwpr5a>a1zis*LgvkgF#DQ_wj3<1 zK-4zsO?`iKpc6fvXWU@PB=OxKd~gP06T>tQ>G6@_2OC>%MR8dT35^9O^jTGiOhl~{ ziU)D_7RxqMICXeG9Ls*(8an+45Ej8eG!IRueb-$#n(A+DUArDaD?%d5dKe>9YJl@C z6t)jy_2KHoH3!EJJcsni$WbtC^QKbXq8e}~FG^9`aM+rj`if46p8g8tI{dZZLeu8R^237_djWa**6ugOFP-mPwQAF6QOuJ73&cycWp+dH899X) zcJ9FV#lAzDQSq2>j^m~<;O9ocjq+E_iSaGtlc}=SyFLT%$T0gJT-SrmB@XP{iE~E| zr5G2R-OQy)084EkhO{$Tu9tL=_4PiYH`cP{4R^pN;mUyY(fQtSy!yMJ`EP`WE%T_@jc|y=_jR~eG-J5(SQOksyyQ6vJVdr z^wzg*ybq4xIQZO8G1PIUohtMwnRIcpLo2RXqa`b+HtqPi{OFgyA+_Sl3{O_JVG+Qw z2=JyacQP&U{py-3=?`6$654nD+<4cbBnyj#(q%1gc~bTa_w?*>9PK%}U*JQ`gZ~2F Wx`D8V2rwZ40000d4o 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 diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/ico_bgcolor.png b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/ico_bgcolor.png deleted file mode 100644 index 49eac810a28d7e4464d67b961f5036d3b4c23757..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5327 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 hXWE%|ru`de{|5

UxftonZg~002ovPDHLkV1j9vdBXqz diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/ico_framedelay.png b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/ico_framedelay.png deleted file mode 100644 index c72969a20c316d312180e7118e2cd8a51621c3ff..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6481 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� 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 diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/ico_light_group.png b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/ico_light_group.png deleted file mode 100644 index 49ad8830a421ce5d27cf31a2217ba30738642028..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5398 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 AP5=M^ diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/ico_skelscale.png b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/ico_skelscale.png deleted file mode 100644 index 7154a8a05e09f3d7e797798d55834f7cd54a69ac..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4789 zcmV;m5=!lfP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGh)&Kwv)&Y=jd7JeSaefwW^{L9 za%BKeVQFr3E>1;MAa*k@H7+*LgRNQs01_ohL_t(|UhP{4RGU|pp2T!)y6L7@(Txp4 z2qBOJ0`)FYR4AefY!DqIzz!HN7S(_o23&%>(;UayIEj;NCYee0Y$lm(+RRSQw9QT? zImvFaDZcyuAESYoH3)kd_MGLMcYgT)`|i8B*9&cWIkCiEdV`?v_<>;y&l+T9t=eBgGP}>iDFPoi#;_hD7dI#qfw}O1s)|5A+^;28MSSnn7axx+55F&v9qwnQU{N0sfEDs z35ZJSdUit5jABgGs(8%ArKKjjjmDEp7>{vq&U@?qfpUqk=9?}1BZ7BJDf^or(Z)+$U% z&2UtB+)=Q!Sy0~Dqv8h(s~QN6nT3eBy)Ukn&xXj7ECft_pNvtcxteMboj ze#_`N1WuGJIP~7TCIBkV%z+&_6FI{pkWtyxw3<*DuT_ia_|-BK~$m2q`dKi_kq^hiaW!U=1w4$*WF%C zFj0{%DKhZ{xck-qA|&eIx0n;Ou&%m=^((43c&G78{=ADN`+PM%8~Qy-sj83ERDeY? z2`q>t2;>VOvOozgj4WJvtoa~tlC_oJttMD@QH#PSxb8=qS8yBj?^p!jO^c61At#)h$bYK<8ebWz4C>v zj;-M0UiZb)evuKWTUO(tXo0Cqm8XyWzB%np(AIrVt09eC`|=KmG_5!$#ObOaW&K2cntcZgYhq z?AD!g-rfS9epOIVS*y&iZ&d33RN)3-9ldwujgIJ#C_dOFv zdvgVf*jaPd*}WN}6NFH{x8yZ*`)@dXT4~e1Z5i3ioS_F(1i5AP>pIVe#n+s6@o0vG z_?=)hO5oh3hCLgulsN---FU%2kcVde?$(Dr!$lexn>i9_4xdHZkeJ$8SI=fhOo)Su z@?d!Oit?MYmkpaM3LJjtokz-#kFg}j#%A-zM!yP@6fFb5H8ls?j00vJgcbn^B3DWy?EwY>G`=swev^YO3s|hYnmI#7`Qg=^FIj|NT{E6^=^Tbv;>e# z?LjQCg4wBDxN@oDxzXFNtSia#z#!nUx>Ti0$gljIKRyYR)-G_Nv+f%NVWwb%oTE2S z3ehFiKyK{@HcFI8=jK3W90Fn0p5r6GeCr;C{39FYT)kU?Lf;Kn&xk==5&(H}CwP2L z2J;td`yN;sa~TxZw7Mm!tDmQJ9>g;}!D2N!`)j~YoR0ul2!hOM4pauDwRZ!(;{c?p z%kSAH{UY>d-Mrf&mEsTG9lPKkuE?OQGzf}I0%87~5+1+YP++bO>!w%LH%7-Q%6`Wk zn}j5NE4b3RAUt*gWT#I97iEAJqrm$CfSE&9&mfSIxmetd5Uo?wfi*e_vH9BXl+E2? zO9c!d=r6c=8-SYOjh4S9oET%`Ae0vSg1#XMF3hXHId`=!Y28Y#wPT^SJU+Rw@^eh# z;Cu}}%aQ5|TzM?{xjmP^Z051x$Bn_cXEiuwX5)RZ<|~w$zWd9Rz#BONaoqe%OJxd* z)?ah;J^ zpF9S>JULjA(s9AJp~DTOV?Vg%^6pVIG_M3C(=*^q`-yKrfl)g085jT_EP<&Xwt5)7 zhhTS!4y0wZk&6NbMb%y3?%fCMoNYJ&SW^~khZ`5faP_nh6bd&OALqmQ3l(oqz4*+U z0AQQoH@n0YG`^OY% z)oo7+CXa&`TL2N7GF++D7Q-^7EbrQ~ZCVDRli*%{ahXeJX2CIoiPL*=#P@(Z;fd3<&+T_}&O zuFv_C7ze=@2cfkw4jT4G!D~;;;hATe+gAfYTV5K-_1y7gjc+6zO=R8SMw9M6Xlc$& zzmrnmW|}oCQX1H!e4i^)Iw(i_b-Xx#QhVSa0UIn{s{WX|?=kS<%a$X)tLb~vJbs71>izK=Z3pEghf+P?ri{~NP}m9d;_a)rLf0<-nb7Mx(u0% zij7RxM9DQNf5if$Qe+NKo|AwIImM1vBE0mZ0>)3)j*h(f3+wvnA7)yFZg#T0(bd z5*$opeJ9aMs3s8D+M29Lc0or7Q!bKL>PaY4dvqm4iG|vZ?12%mB~wkS#UhCWTTol- z0J#%WkjRzaSjq#{5iK}nI!-7@aNL*9d!K+zBs@z91YyCq2mq&uq>5j~1~MSeJpks3 z0;rc3-mdHG3&41kmR9C+cRPbH#0K~~>_F^g4MKZ6kXTuR+T9y^!;<0X&Rn>f#K+s^ zWC5H{6~R1NjJL~(pT^xE6c!dBv$6tXG!@EeqR)7h`^-CMB*=?uqKb6)j{vc4uFnV| zOwrK&mL+m@cH__9h#hER|p85J)to;5xT>ZLA1>gWS-u4WX|rO4~&Bn z4}U0k^MOiNZ>U18+{FuuT|A*0J+W5m83fJ2J7FM_439;oLU#lS4B z_y8*)v@h2$q=)Gp*v<3`Fy!nAHgE#N4Z`p!gFG(YP(<9-u{SHZqd|~5BXe>w0l@PP zfh7ufCvRdTu;9*3o|kcA6SN+!optH^o7tjxxNJlL5hML zTNE>3aYLLy*7?ALJOlLH08=02Vyco5E%KrC^4md=)LzI?utw=s?^()>B|l| z-WdWQ=M~c*Nb-l!xu|N7E6>gITUl(vbyacY!>o&oh!p|^YfSH0LH5=mi zMJFGE{140`K7ndes8mNiFr)i1Xdmiy*jZfjM_;i52f&jqfu^B>-T$kDZWiVvZ@l=Z zdU)_^?%*)kQWl~@UycL{rl;O+eq!eT#uc~qf;o2k39Hg`CogbDCcxn*g^@5-DHNPO z^}Bsnj>oT;|EBIYbp51@c7FCH_V75KC0Z#b7>SKmE7dg+Yirc`V#LL~`{D{>AF-^m#q zLfKy~%Kf24=iF(qM9wHj}GJYKANg}uN##EmM9a<9h<;ud8nLbPoaS$G7EBp0iyV-*-fuF zCZJ(_cn47=za!`$Kuehl0g{4c0OX(jul@`JlzqRQBh{+Kdtdke2LQ5MqyV(6e?43JGa2B+5 zaF;4WQfSqljD@>H*mW7p6!JYhoGC02>AN@gRd@#?t9fW32}vLJ#Z-M^_ikqwH3!??7R%!9bUy5stJ+plB7!G9;ZFZsEigc?1o8AKprd*qRu`~AW<_Aj-rm#z z?4U4D*`_hTEsM7-<>g9e<0Xk)K~* zHN8ZU<|#eWIbe-Ih|*Mn_{1p)k}X`S^2!#W9VCC_uf41lJ$Eu=$R6GPcISz49}t3y zrr6fzpC$V-w@kn0q(_=urSzqVezZlVU{9vuK@tXl2U7rHxzd|!m1o20oXN~ihfEe& zr&7R^y-@1*%n(7mXl2KDKLP3LGFAXX@r4WGx41Jnq|qQ+p#1%YE4J1F!*V1BtQ@{5 zuq#^1aa`pMbN?G`aXfiPcT^Zh`72+h4D3=rUVp8^jX!_GGMJU$5sb?1L1&CK~ABzYOM$%5Q!KgMjzCe zfFbf=qHjb^j4wtLjWPN}0vH3ak???*#6%J=^+_>QE}<9+Q0Qq(T1sf`=|1OlpM9H| zwLTwaX7AZOH#9N0Pv&>B_x`@M)~qw@KWlw!X4Zm=ii(Pgii(Pgii(Pgii(Pgii(Pg zii(Pgii(Pgii(PN5h;w@ZrDWXbcYD{0k;5~jes%2$gfB#?Q;J=FJleJzy}e*d&MiL zSDZ5RRq-C2SG+2k=atL&yo@iEaYdfb^R(n^Q8yjnc~u?{th{~X^$q|*Ay6*PuYo&8 zBvj2>po${7q?&1)|CGxxQU=h>S5;I5&C9414FoZH{VIT>Ak?25rOiabH~iJSF(4{HG}RYl3i7i!q061p=6hQQ}S80Y*rTx z{gLZZx;_Ij^7fa7%Ix)g9j2G+^0`f(K6~mc$7avmF2YxV?~Vur90b_A=Nj($+?^|_ zyWx5A@DYy9o`GBo7!~L=Ky#tR@sn>ZJ2<=8QnGWeY!^L-<@qD#vL17J|0$!T@1arl z_43mBm#&mQIR3H>V6M4Xn5UPW*)21T0|HM1yH+~QV(1tVqzJr)UkbibPLuMGTRt?4 zdMWwkmKM@18(O8I;)|iF#OfLQTeBA4^GrGI@1(sURV4$U(8yiGUa1(yO^b1Dcxx?yRlrH zm6hoL&nSF7FmmM0i-~5JuEfFX8bp?W(V;iOU`j6c3EDP%8Kwk>b`PXVe zy68#68SAn@tE<^sx@}{x8r~ZhGD+Yu)3IHJZH| zcrV#A>AZ;iS4wSIffAS8)=pYK_~q=OtDl&Co-G*zSvE=+h08YT-~S%cQ$s_KeOxZox8SNcc&$o-*wNH z7mhwQyJlS*vInWE{qi3^|LiBOzU!tvTlUh^E>Heeoo}Iev(X$=iEVpIBf`fz1EHVS5lR^?0lFT}&tK4AT3qPnvpCeD*GU z9X6~$K2ec$mFRU=><&{5Tel|=H+<5MMZF}<`mNFNI1R~5I+*a@Vn(og%h9zJ#Wz6YOu@FRaa z_0(?r9TQmvgTbm`#NZOG`#?#3Lf`iW_cO8Y;!>WjDk_YU=RT-!WKJ$S0#2?4-y3D zQyQ`vPy#WH07IaLKrNv+Y|_cbbg=zEH|_jnKACf4ccZAPX6C0ePv1CwqGkv0Q9lBoHN;oa3$d#EWCsgG9v3 z_hs+=;ykxsbvsTR&Nwh+iwDMFMKC778li8x7(ZMzz(QlHK3EoVUNKmjy?Oq0^3S|* z<^^t^{t)lGzCp(>>>oRU0Mu)Z6uLur*5}2{y2VK|nnSiEM~95LrtnT%gT7#yEPu!)7LFB-2c}_ppgcwgrwpDLqN( z1u0P@Was2GUH>+rnq%WBkmqOWb^lYZJ~cIACWwgg1w}0_Tnf{hr`UgRH|^RyH3_H% zmaXY_UY$Kl$G5PdAqcXM4TY(i!Gw-xbcRUnCF^;3JOzSZ;b`Ewztw5&B_$l}RgxlD zOCE?Fp|#Y4fG7yC9v1tHbbKqH-VFhU&{zUzh^&o6wXZoZ4|y?%*m z6yRPR2$5}o%R~yS$=2#o)Vc22Z!h*%s-s{-z7K-o&XUx5`e{m>I#Tb4n;#f%OcUBVbBk@PF&GiHHw2Re_>e^2!J5v76G#NQ-Tkuf%DL6D%#Y z*b`mP`PMn&M*orz^&zaTxuO9ZbX^SKTfe(5I&!xCl{c1_zIMLX-d782(ah9Lve0WD mYx;{1n}}buzR^$DtLNX>#i!kK94I&d0000Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L04at504at6BJAIc00007bV*G`2iXD^ z5HC2;Z=dG?00l!yL_t(|+TEJnYaCS=#-B4^*>tl_S8CLRq&2ohVr!w6B1I7OFYs2- zh?LsiwbwCKDTs(rB4Vu+X~2ut3o$pn5^oY(BsQigCe_w9@vBLiZL(i8yEA9!_%fIn zdwMudrX$gJc{qm&%l@ACdC%+)1poD7it84MVSSY#@qc2#ChZ|@A+dD?KSLTL1%KPDvZ4j;EKY4R0avRX6HagKyM}?T7kdzq}3m=dX@KxF38a{rUS>uTrOf# z%{tVjg->omGNLcN0U1a#K&4(uQ0>(w?z;i0;~L<5fv<*^I-a@##?&LDH;5pg_UM#Oej+jVhsk=pedvvr6Iv5 z86iEq)MeB_QrfKmn|PC$SX3liWr%Mik%Fdhmqfr8gjrOlUXepAnKD{WKu!Z-nIT%cG-) z(VNlVE|ZT?R0<=>lZc>KH1E#ha$ywjkN3kgfCD{8@O0aAXm5EGsxmYQNWe@5sfU-q z!!V50Xf(h%$I0(bU^9CJuXP_q@75!D%-)GFejJ3)d29o^&g)ALAAtu!0N?jfuh(&Q z;xk;H8^ivt=SeSMe0~%|SI?s62hrQ~BcwMHqx)L;sOw}PQms~pTdrZzT}06@0#p^R zib~nTx0l9d0L+ni>@$$ClxZl~F2};8tBS5TZ_hs|00GMSI_EU}k1!2*7QUkPIXlpBS}# zV570QxpWh!ubjpwqo)wo8!!V#GGK870YSUG@~4410!pRl?Y7zGtc~WJh1S-b*xm8e zq-QSmp4dNh$wC^X?tWyTZ=?_V+V|nm-ops#8bSd^3k!kHhdbdlDq!^LXzRd>dtU-G z0mCGdmI1?HtTo*51Q{300D|emq*UqCW*M+Wp7ZAY#mTAH!S%!gHqYC0g z(*riP=eL8U2-DJa}&N{+G zld#ZiHvuqEEotcysg^CJGY}fdDwb0tSmSJiB)vn!9Xd9S3|q#Q4PP(`XKC0dA zZBu(5Z0Qm6JIHg0#~)fk5#i*WmIP2002ovPDHLkV1j@0sssQ4 diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/instance_item.png b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/instance_item.png deleted file mode 100644 index 4c9d0417ea1369d1722a0e8b2c1e6cb38e185181..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6437 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 diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/light_item.png b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/light_item.png deleted file mode 100644 index 22d67cc40ac45717f9582f0224d0d5312a99d435..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3822 zcmV;w$fIfnCB+fcM5}_- z*Gzptt)jF}8FgCJN=qwR9ij3Zi9ym>Ky8u&@^UIjWyl0u27ywn0xE=zf-wjN5^i#H z?>*=I9{aKS$M2k*W4yV!Hz#2_T{C-rzq5b)?BDvXwf5R;uk{mE<^MCq2V>H)k@fei zUb*s3t?_a3K1c`xcmxHsdxbJ2>NR4?5exNWpZe&k7ajH|=N@QYayfEeL#&pEqw%n4`DdBFjmf9{(@a8{Bu;dRU3&hlk1XYS%- zksgjoK>egsJloy(#KwnMw{|V#qd9`dh{ySW5^?cGpM8Ackso^1Z26ouz%{G>qTIas z$wUY&TmDww_5QbGqWOCn-9NWX(bwPK|4dlBdNq&yUii}4ysM9Pn`xJgDekN5)hk!9apNyAM#1Mul;}ULdDzVK zO)~{3U-8XDAnoiO7{$GJ^?nKes)VFNrPr{4#O{Ax(9>(%)r#9w7Qdy5Bs}{OUr$|ZCZf;e#1YEgL2qm^N~1V>iuj_Q2pB6TMK<-!XC{7uCLi{D}aIzocUgg z(xRlSUw`X9Be7`*{Cv~n#$b7N>jQ=imE255(ZCi;VgLPq_CNnL-PG_eGplVt2l0{f+ z0WcCk!enfTXrCS{?fh!{8Q;F?T5h@N7CwF6 zCt1AYkl&V(b|usknC_n6ImH-3y!J4-yTzKe9cxKCHVhKF@$PYQ=%v1VA zEL{iJH6!V*N6(Pi0R~(c#zZlMz^SL7z^SL7Q2jf=?YG{~BM;n5=9EYZ?)~u=PFp-Y zDcQ;r`qr}op)%t%D#^7@YD!|$J_XpYUm869^mmSd;zAAQTqWIp35T8&C_xL*Dx`8U zk0c!;uGNsZ3F0b2XaF37<$dp4#)+?8PCYKECxQ38?UfJ|f(Lb=fwD}=vSIS9Nl^@8 zUCcG#xSh<_QDQ^{Ol!?_7^cWUi~8+nSZFlH-8hPZ z4`3Bspv-DqeBm|h8rec>#!(DMA9XDCXpCAkMm-)UHEkp~)CX`5QHN;Y);k^|riEY- z0*5bJR8{)W4 z6y;2eXO!(781ckXnYwDkoVf-G4nlw+-K$5PM?GX^gD+jOibzVlHjsE&FIaKkfeW_J z{<|CEKmrKrGp@hs9t4l50|KZbJtq=8Nm|3HV5CE8#<}>iHQ+o~eD!J)X<_=dEmf&N z(VfbJdZlCQv|W?T*0_A-SBYgD7v`W*qL-|CV8+L#84vvYXa4@8NHUa|#~*vRa-b+0 z6!1OHASjU$va(KQn`E|$%XYEu-|i)0oSw7DeS;#@@oFe+Olb|dtJ84}I(7&XEKz84 z-A&&mh(~rqqov~s86Lubjs}sE9LW~B*dl1b@Xd#;6gXb5&*~!zJe~Q;SaZ=-= zRS(o=18!CT0ls+IJyB$Ypf$7{=l+L&i3^a~n2xK_u?;$|iT7=cI79+N(FDzS6nudX zf)PhdPBY#~Vv1_wU{UpyE}~;oic;yc3$9&r11_W_X_JetT)&8F(>-_q0sit6XKyv) z0mI#Q-hvN-L~>H;keW8Bj1z2zXut(C*)%ALbco47J*7{`Yy+o(!Ul@MQI2mK3rB1U zq#FgHN?~hcWu3ytI2$NzigzW!Ih=ENo8xRrR@S)s8#fYR5pn$4S!X^M$M3m!f57b* zK!6KYeBwywJzndWat9lJu!+(O*2fqvDN9#HW-2T^?Dy!D!^EaTB5e!>Hbj$JEK8-6 z3%QLbt)VDABReM`idnc|o}Tc!a~AI}xcvqQr#~}y{vz##XAl0@dJH8I8KMP>qg^)X z*d}lK!`B0z(#6;i(=La*hk^(n0ucpUN7}d`l-}?!Yu6Hjk`;#YSKN~h0&W0+@YxIR zm}^4a~EG%-ak`gJ=*C3YQSk#yRDiYp$iVig%XW zMYPL=+rE7(rBj@P;JapNBk}_BQfL(kt&WgcW#g0Ea1N{!I^}?@^*9`)y0rR|_v)r6 zwi0}XbrE8OIdg{DwQHQ9f}nVf@LqADT2&!b2`C{TRNfY#-e}P26sUUQxP}H_$p9%J1Qo~wkwgfFRD~qk=TUD) zG>{!^-@c0-ZBXyA1?1LL84VSJ_SbUvNZW`22JH$$q#7GARAz5DP=(onH2B>1lJT}6 zVpx2La^_iog&2d^WO7U*1qO!=DMmaBSWPhM32G1xlVaGl?N@C1)sNWpuJP3~iY4Ew7I+@r_(;7A;ga8pGMoUyZg-_`CA*@CeA%);cX=5l!BqND(k|;;B z=lI!A?&D{hcGBtyrHk0`o$r5Z5dL65Cv(cluhAe?AT1&o18E$n$3oD`v8Yz}z06;4 zE%tKNzr_r@3j#?j9Cbvj*R1=Wfs`rMj$c{V}v*ohU>!7M<&(C<|VE zJVVJs0)bdEY-xGw$p@JjALU0I+o&p?Vn*evg9s2IGJy~bZ#`)NuUhs&s@zRQf+C_A zu^23Yn1r0%*Fhl=lS+wDN258seCa#6@%l9c1RoTU!8iMX01Dbo04qOuc$E8pdKL8; zYKe0AqG4XUY#GCiCUmPr2E_r9Le|OH_53zQMz`|oXLj)G?Sc(bRRRKdBbWoQRSXu3 zMnS=dm}FN2;}~qWB<)3?7dT1n`K3 z!n30ws+ev$O+-2sXp1t`5pfuC6uv?5quhPREo|9l@F5I( z5*Qrdaj*T@@H^hJp>x-LTZT6NVuUBRtS63?TB_7*F+)j>ISb~oWXW+PLv^AkCN)B< zJ<5*Jo$MOj&e*O|c8qzR-tMukTjd25!zm{%9C)8NARps>_vU{+dfoM_H`nV%#@a&Z zdzl8^T}G_RFnv|2sumG~;(gT@8JOD$s3UxD!$Y(BqG@k*z`iyFIOpTb>}ZR4Y`mmp z>jbTM41I@Jqi(WxZ*VwYt;hL8fhC7Wdezz$bK&IHf#T_a0tE2>vC}{P=VyJVaLUec zA@{Y(^=HImP(skEzM@Jkf#Z&h_{66_IsW@gKQixtGQ&Xt*rTsp@UHCP$G6uz8Dush zHi0+1=4g(3&PTsQM?&t^*p4PcMX`rwIftfNupB5W`a0zn}) zfo4thJKsBa;NS%S*rWHo`^1oyk@!#@gBLHB5=>Hq)$ diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/list-add.png b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/list-add.png deleted file mode 100644 index af5b56e3c4fbd6d91eb3fa6e337ddb89c5843854..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2658 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 diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/new.png b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/new.png deleted file mode 100644 index 61db97ae49ca9bd542c685c973df94e0e0daa460..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2461 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 b|7ZIz1mu#5-Pb$aXy!D< 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 Q?*IS*07*qoM6N<$g5mj7QUCw| diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/particle_system_item.png b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/particle_system_item.png deleted file mode 100644 index 2a863a04327a99ea0eb12542d5b9eeb10911012f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4582 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 diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/save.png b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/save.png deleted file mode 100644 index cc380a03aee7f4add3e6b6b78338ff6e031c9688..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2122 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 FV1f@^&B6cx diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/time.png b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/time.png deleted file mode 100644 index 09ef0c6c62dfd96cbda75e4dd48d33e3fe5aade1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2312 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 diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/workspace_item.png b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/images/workspace_item.png deleted file mode 100644 index 9143b7b6bc46ba040a978077204417e29cbfde7a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4405 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 v+;Yp#rCHMd< + + 6 + + + 3 + @@ -174,6 +180,12 @@ + + 6 + + + 3 + @@ -256,6 +268,12 @@ + + 6 + + + 3 + @@ -351,6 +369,12 @@ + + 6 + + + 3 + @@ -411,6 +435,12 @@ + + 6 + + + 3 + @@ -467,6 +497,12 @@ + + 6 + + + 3 + @@ -533,6 +569,12 @@ + + 6 + + + 3 + @@ -579,6 +621,12 @@ + + 6 + + + 3 + @@ -670,6 +718,12 @@ + + 6 + + + 3 + diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/main_window.cpp b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/main_window.cpp index efb6d2a9e..fa077cfed 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/main_window.cpp +++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/main_window.cpp @@ -249,14 +249,14 @@ void CMainWindow::updateStatusBar() void CMainWindow::createActions() { _openAction = new QAction(tr("&Open..."), this); - _openAction->setIcon(QIcon(":/images/open-file.png")); + _openAction->setIcon(QIcon(Core::Constants::ICON_OPEN)); _openAction->setShortcut(QKeySequence::Open); _openAction->setStatusTip(tr("Open an existing file")); connect(_openAction, SIGNAL(triggered()), this, SLOT(open())); _setBackColorAction = _GraphicsViewport->createSetBackgroundColor(this); _setBackColorAction->setText(tr("Set &background color")); - _setBackColorAction->setIcon(QIcon(":/images/ico_bgcolor.png")); + _setBackColorAction->setIcon(QIcon(Constants::ICON_BGCOLOR)); _setBackColorAction->setStatusTip(tr("Set background color")); _resetSceneAction = new QAction(tr("&Reset scene"), this); @@ -308,40 +308,40 @@ void CMainWindow::createMenus() toolsMenu->insertMenu(settingsAction, ovMenu); ovMenu->insertAction(settingsAction ,_AnimationDialog->toggleViewAction()); - _AnimationDialog->toggleViewAction()->setIcon(QIcon(":/images/anim.png")); + _AnimationDialog->toggleViewAction()->setIcon(QIcon(Constants::ICON_ANIM)); ovMenu->insertAction(settingsAction ,_AnimationSetDialog->toggleViewAction()); - _AnimationSetDialog->toggleViewAction()->setIcon(QIcon(":/images/animset.png")); + _AnimationSetDialog->toggleViewAction()->setIcon(QIcon(Constants::ICON_ANIMSET)); ovMenu->insertAction(settingsAction ,_SlotManagerDialog->toggleViewAction()); - _SlotManagerDialog->toggleViewAction()->setIcon(QIcon(":/images/mixer.png")); + _SlotManagerDialog->toggleViewAction()->setIcon(QIcon(Constants::ICON_MIXER)); ovMenu->insertAction(settingsAction ,_ParticleControlDialog->toggleViewAction()); _ParticleControlDialog->toggleViewAction()->setIcon(QIcon(":/images/pqrticles.png")); ovMenu->insertAction(settingsAction ,_DayNightDialog->toggleViewAction()); - _DayNightDialog->toggleViewAction()->setIcon(QIcon(":/images/dqynight.png")); + _DayNightDialog->toggleViewAction()->setIcon(QIcon(Constants::ICON_DAYNIGHT)); ovMenu->insertAction(settingsAction ,_WaterPoolDialog->toggleViewAction()); - _WaterPoolDialog->toggleViewAction()->setIcon(QIcon(":/images/water.png")); + _WaterPoolDialog->toggleViewAction()->setIcon(QIcon(Constants::ICON_WATER)); _WaterPoolDialog->toggleViewAction()->setEnabled(false); ovMenu->insertAction(settingsAction ,_VegetableDialog->toggleViewAction()); - _VegetableDialog->toggleViewAction()->setIcon(QIcon(":/images/veget.png")); + _VegetableDialog->toggleViewAction()->setIcon(QIcon(Constants::ICON_VEGET)); ovMenu->insertAction(settingsAction ,_GlobalWindDialog->toggleViewAction()); - _GlobalWindDialog->toggleViewAction()->setIcon(QIcon(":/images/wind.png")); + _GlobalWindDialog->toggleViewAction()->setIcon(QIcon(Constants::ICON_WIND)); ovMenu->insertAction(settingsAction ,_SkeletonScaleDialog->toggleViewAction()); - _SkeletonScaleDialog->toggleViewAction()->setIcon(QIcon(":/images/ico_skelscale.png")); + _SkeletonScaleDialog->toggleViewAction()->setIcon(QIcon(Constants::ICON_SKELSCALE)); ovMenu->insertAction(settingsAction ,_TuneTimerDialog->toggleViewAction()); - _TuneTimerDialog->toggleViewAction()->setIcon(QIcon(":/images/ico_framedelay.png")); + _TuneTimerDialog->toggleViewAction()->setIcon(QIcon(Constants::ICON_FRAMEDELAY)); ovMenu->insertAction(settingsAction ,_SunColorDialog->toggleViewAction()); ovMenu->insertAction(settingsAction ,_TuneMRMDialog->toggleViewAction()); - _TuneMRMDialog->toggleViewAction()->setIcon(QIcon(":/images/ico_mrm_mesh.png")); + _TuneMRMDialog->toggleViewAction()->setIcon(QIcon(Constants::ICON_MRM_MESH)); connect(_ParticleControlDialog->toggleViewAction(), SIGNAL(triggered(bool)), _ParticleWorkspaceDialog, SLOT(setVisible(bool))); diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/morph_mesh_form.ui b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/morph_mesh_form.ui index 9f2bd474a..bab672d73 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/morph_mesh_form.ui +++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/morph_mesh_form.ui @@ -54,7 +54,7 @@ - :/images/list-add.png:/images/list-add.png + :/icons/ic_nel_add_item.png:/icons/ic_nel_add_item.png @@ -74,6 +74,10 @@ Insert + + + :/icons/ic_nel_insert_item.png:/icons/ic_nel_insert_item.png + @@ -83,7 +87,7 @@ - :/images/list-remove.png:/images/list-remove.png + :/icons/ic_nel_delete_item.png:/icons/ic_nel_delete_item.png @@ -94,7 +98,7 @@ - :/images/go-up.png:/images/go-up.png + :/icons/ic_nel_up_item.png:/icons/ic_nel_up_item.png @@ -105,7 +109,7 @@ - :/images/go-down.png:/images/go-down.png + :/icons/ic_nel_down_item.png:/icons/ic_nel_down_item.png diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/object_viewer.qrc b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/object_viewer.qrc index 3f09bdc1b..ac9647047 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/object_viewer.qrc +++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/object_viewer.qrc @@ -1,57 +1,68 @@ - - images/nel.png - images/open-file.png - images/go-down.png - images/go-up.png - images/list-add.png - images/list-remove.png - images/play.png - images/pause.png - images/stop.png - images/seek-backward.png - images/seek-forward.png - images/skip-backward.png - images/skip-forward.png - images/preferences.png - images/time.png - images/anim.png - images/animset.png - images/dqynight.png - images/mixer.png - images/pqrticles.png - images/sound.png - images/veget.png - images/water.png - images/wind.png - images/ico_bgcolor.png - images/ico_framedelay.png - images/ico_skelscale.png - images/ico_mrm_mesh.png - images/ico_light_group.png - images/clear.png - images/insert.png - images/new.png - images/refresh.png - images/save-as.png - images/save.png - images/insert-horizontal.png - images/polymode.png - images/rmfill.png - images/rmline.png - images/rmpoints.png - images/cam_del.png - images/cam_add.png - images/Emitter.bmp - images/Force.bmp - images/bad_particle_system_item.png - images/particle_system_item.png - images/instance_item.png - images/light_item.png - images/located_item.png - images/particle_item.png - images/sound_item.png - images/workspace_item.png - images/collision_zone_item.png - + + icons/ic_nel_camera_add.png + icons/ic_nel_camera_del.png + icons/ic_nel_add_item.png + icons/ic_nel_anim.png + icons/ic_nel_animset.png + icons/ic_nel_append_item.png + icons/ic_nel_bgcolor.png + icons/ic_nel_camera_3dedit.png + icons/ic_nel_camera_fps.png + icons/ic_nel_daynight.png + icons/ic_nel_delete_item.png + icons/ic_nel_down_item.png + icons/ic_nel_framedelay.png + icons/ic_nel_insert_item.png + icons/ic_nel_mixer.png + icons/ic_nel_mrm_mesh.png + icons/ic_nel_new.png + icons/ic_nel_open.png + icons/ic_nel_particle_system.png + icons/ic_nel_particle_system_close.png + icons/ic_nel_particles.png + icons/ic_nel_reset_all.png + icons/ic_nel_reset_camera.png + icons/ic_nel_save.png + icons/ic_nel_save_as.png + icons/ic_nel_skelscale.png + icons/ic_nel_sound.png + icons/ic_nel_up_item.png + icons/ic_nel_veget.png + icons/ic_nel_vegetset.png + icons/ic_nel_water.png + icons/ic_nel_wind.png + icons/ic_nel_workspace_item.png + images/nel.png + icons/particles_system_24/ic_nel_collision_zone_item_24.png + icons/particles_system_24/ic_nel_emitter_item_24.png + icons/particles_system_24/ic_nel_force_item_24.png + icons/particles_system_24/ic_nel_instance_item_24.png + icons/particles_system_24/ic_nel_light_item_24.png + icons/particles_system_24/ic_nel_located_item_24.png + icons/particles_system_24/ic_nel_particle_item_24.png + icons/particles_system_24/ic_nel_particle_system_24.png + icons/particles_system_24/ic_nel_particle_system_close_24.png + icons/particles_system_24/ic_nel_sound_item_24.png + icons/particles_system_24/ic_nel_workspace_item_24.png + images/play.png + images/pause.png + images/stop.png + images/seek-backward.png + images/seek-forward.png + images/skip-backward.png + images/skip-forward.png + images/dqynight.png + images/mixer.png + images/pqrticles.png + images/sound.png + images/water.png + images/wind.png + images/ico_mrm_mesh.png + images/refresh.png + images/polymode.png + images/rmfill.png + images/rmline.png + images/rmpoints.png + diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/object_viewer_constants.h b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/object_viewer_constants.h index ba3af1b59..30a9b4c45 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/object_viewer_constants.h +++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/object_viewer_constants.h @@ -56,6 +56,43 @@ const char * const VEGET_TEXTURE = "VegetTexture"; const char * const VEGET_LANDSCAPE_ZONES = "VegetLandscapeZones"; const char * const COARSE_MESH_TEXTURE = "CoarseMeshTexture"; +const char * const ICON_ADD_ITEM = ":/icons/ic_nel_add_item.png"; +const char * const ICON_INSERT_ITEM = ":/icons/ic_nel_insert_item.png"; +const char * const ICON_DELETE_ITEM = ":/icons/ic_nel_delete_item.png"; +const char * const ICON_DOWN_ITEM = ":/icons/ic_nel_down_item.png"; +const char * const ICON_UP_ITEM = ":/icons/ic_nel_up_item.png"; +const char * const ICON_CAMERA_ADD = ":/icons/ic_nel_camera_add.png"; +const char * const ICON_CAMERA_DEL = ":/icons/ic_nel_camera_del.png"; +const char * const ICON_CAMERA_3DEDIT = ":/icons/ic_nel_camera_3dedit.png"; +const char * const ICON_CAMERA_FPS = ":/icons/ic_nel_camera_fps.png"; +const char * const ICON_RESET_CAMERA = ":/icons/ic_nel_reset_camera.png"; +const char * const ICON_ANIM = ":/icons/ic_nel_anim.png"; +const char * const ICON_ANIMSET = ":/icons/ic_nel_animset.png"; +const char * const ICON_BGCOLOR = ":/icons/ic_nel_bgcolor.png"; +const char * const ICON_DAYNIGHT = ":/icons/ic_nel_daynight.png"; +const char * const ICON_FRAMEDELAY = ":/icons/ic_nel_framedelay.png"; +const char * const ICON_MIXER = ":/icons/ic_nel_mixer.png"; +const char * const ICON_MRM_MESH = ":/icons/ic_nel_mrm_mesh.png"; +const char * const ICON_PARTICLES = ":/icons/ic_nel_particles.png"; +const char * const ICON_SKELSCALE = ":/icons/ic_nel_skelscale.png"; +const char * const ICON_VEGET = ":/icons/ic_nel_veget.png"; +const char * const ICON_VEGETSET = ":/icons/ic_nel_vegetset.png"; +const char * const ICON_WATER = ":/icons/ic_nel_water.png"; +const char * const ICON_WIND = ":/icons/ic_nel_wind.png"; + +const char * const ICON_COLLISION_ZONE_ITEM_SMALL = ":/icons/particles_system_24/ic_nel_collision_zone_item_24.png"; +const char * const ICON_EMITTER_ITEM_SMALL = ":/icons/particles_system_24/ic_nel_emitter_item_24.png"; +const char * const ICON_FORCE_ITEM_SMALL = ":/icons/particles_system_24/ic_nel_force_item_24.png"; +const char * const ICON_INSTANCE_ITEM_SMALL = ":/icons/particles_system_24/ic_nel_instance_item_24.png"; +const char * const ICON_LIGHT_ITEM_SMALL = ":/icons/particles_system_24/ic_nel_light_item_24.png"; +const char * const ICON_LOCATED_ITEM_SMALL = ":/icons/particles_system_24/ic_nel_located_item_24.png"; +const char * const ICON_PARTICLE_ITEM_SMALL = ":/icons/particles_system_24/ic_nel_particle_item_24.png"; +const char * const ICON_PARTICLE_SYSTEM_SMALL = ":/icons/particles_system_24/ic_nel_particle_system_24.png"; +const char * const ICON_PARTICLE_SYSTEM_CLOSE_SMALL = ":/icons/particles_system_24/ic_nel_particle_system_close_24.png"; +const char * const ICON_PARTICLES_SMALL = ":/icons/particles_system_24/ic_nel_particles_24.png"; +const char * const ICON_SOUND_ITEM_SMALL = ":/icons/particles_system_24/ic_nel_sound_item_24.png"; +const char * const ICON_WORKSPACE_ITEM_SMALL = ":/icons/particles_system_24/ic_nel_workspace_item_24.png"; + } // namespace Constants } // namespace NLQT diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/particle_editor.cpp b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/particle_editor.cpp index 0ce56cc2a..d03cdab3d 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/particle_editor.cpp +++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/particle_editor.cpp @@ -28,13 +28,14 @@ #include // Project includes +#include "scheme_manager.h" #include "modules.h" namespace NLQT { CParticleEditor::CParticleEditor(void) - : _ActiveNode(NULL), + : _ActiveNode(0), _State(State::Stopped), _Speed(1.0f), _AutoRepeat(false), @@ -42,11 +43,12 @@ CParticleEditor::CParticleEditor(void) _DisplayHelpers(false), _AutoUpdateBBox(false), _EmptyBBox(true), - _PW(NULL), - _Driver(NULL), - _Scene(NULL), - _FontManager(NULL), - _FontGen(NULL) + _PW(0), + _Driver(0), + _Scene(0), + _FontManager(0), + _FontGen(0), + _SchemeManager(0) { } @@ -63,6 +65,8 @@ void CParticleEditor::init() _FontManager = textContext->getTextContext().getFontManager(); _FontGen = textContext->getTextContext().getFontGenerator(); NL3D::CParticleSystem::setSerializeIdentifierFlag(true); + + _SchemeManager = new CSchemeManager(); } void CParticleEditor::release() @@ -89,9 +93,9 @@ void CParticleEditor::setActiveNode(CWorkspaceNode *node) NL3D::CParticleSystemModel *CParticleEditor::getModelFromPS(NL3D::CParticleSystem *ps) const { - if (!ps) return NULL; + if (!ps) return 0; CWorkspaceNode *node = _PW->getNodeFromPS(ps); - if (!node) return NULL; + if (!node) return 0; return node->getPSModel(); } @@ -113,7 +117,7 @@ void CParticleEditor::loadWorkspace(const std::string &fullPath) } // try to load each ps - CWorkspaceNode *firstLoadedNode = NULL; + CWorkspaceNode *firstLoadedNode = 0; TPWNodeItr itr = newPW->getNodeList().begin(); while(itr != newPW->getNodeList().end()) { @@ -181,9 +185,9 @@ void CParticleEditor::saveWorkspaceContent() void CParticleEditor::closeWorkspace() { - setActiveNode(NULL); + setActiveNode(0); delete _PW; - _PW = NULL; + _PW = 0; } void CParticleEditor::start() @@ -353,7 +357,7 @@ void CParticleEditor::stop() void CParticleEditor::update() { if (!_ActiveNode) return; - if (_PW == NULL) return; + if (_PW == 0) return; NL3D::CParticleSystem *currPS = _ActiveNode->getPSPointer(); diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/particle_editor.h b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/particle_editor.h index 205998245..da191705f 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/particle_editor.h +++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/particle_editor.h @@ -47,6 +47,8 @@ class CFontGenerator; namespace NLQT { +class CSchemeManager; + /** @class CParticleEditor @brief The main class of the particles editor. @@ -212,6 +214,11 @@ public: { return _FontGen; } + + CSchemeManager *getSchemeManager () const + { + return _SchemeManager; + } private: // Check if a node is inserted in the running list (it may be paused) @@ -257,6 +264,8 @@ private: // Font generator NL3D::CFontGenerator *_FontGen; + CSchemeManager *_SchemeManager; + }; /* class CParticleEditor */ } /* namespace NLQT */ diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/particle_sound_form.ui b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/particle_sound_form.ui index 108b64375..bcdad9ef0 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/particle_sound_form.ui +++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/particle_sound_form.ui @@ -14,6 +14,12 @@ Form + + 3 + + + 6 + diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/particle_tree_model.cpp b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/particle_tree_model.cpp index 7d909d776..155e6ad4c 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/particle_tree_model.cpp +++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/particle_tree_model.cpp @@ -26,6 +26,7 @@ #include "nel/3d/particle_system.h" // Project includes +#include "object_viewer_constants.h" #include "modules.h" namespace NLQT @@ -337,27 +338,27 @@ QIcon CParticleTreeModel::getIcon(const QModelIndex &index) const case ItemType::Root: break; case ItemType::Workspace: - return QIcon(":/images/workspace_item.png"); + return QIcon(Constants::ICON_WORKSPACE_ITEM_SMALL); case ItemType::ParticleSystem: - return QIcon(":/images/particle_system_item.png"); + return QIcon(Constants::ICON_PARTICLE_SYSTEM_SMALL); case ItemType::Particle: - return QIcon(":/images/particle_item.png"); + return QIcon(Constants::ICON_PARTICLE_ITEM_SMALL); case ItemType::Emitter: - return QIcon(":/images/Emitter.bmp"); + return QIcon(Constants::ICON_EMITTER_ITEM_SMALL); case ItemType::Force: - return QIcon(":/images/Force.bmp"); + return QIcon(Constants::ICON_FORCE_ITEM_SMALL); case ItemType::Light: - return QIcon(":/images/light_item.png"); + return QIcon(Constants::ICON_LIGHT_ITEM_SMALL); case ItemType::Sound: - return QIcon(":/images/sound_item.png"); + return QIcon(Constants::ICON_SOUND_ITEM_SMALL); case ItemType::Located: - return QIcon(":/images/located_item.png"); + return QIcon(Constants::ICON_LOCATED_ITEM_SMALL); case ItemType::CollisionZone: - return QIcon(":/images/collision_zone_item.png"); + return QIcon(Constants::ICON_COLLISION_ZONE_ITEM_SMALL); case ItemType::LocatedInstance: - return QIcon(":/images/instance_item.png"); + return QIcon(Constants::ICON_INSTANCE_ITEM_SMALL); case ItemType::ParticleSystemNotLoaded: - return QIcon(":/images/bad_particle_system_item.png"); + return QIcon(Constants::ICON_PARTICLE_SYSTEM_CLOSE_SMALL); } return QIcon(); } diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/particle_workspace_dialog.cpp b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/particle_workspace_dialog.cpp index e420af8ff..50698198b 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/particle_workspace_dialog.cpp +++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/particle_workspace_dialog.cpp @@ -41,6 +41,7 @@ // Project includes #include "dup_ps.h" #include "modules.h" +#include "object_viewer_constants.h" namespace NLQT { @@ -148,19 +149,19 @@ CParticleWorkspaceDialog::CParticleWorkspaceDialog(QWidget *parent) _mergeAction = new QAction(tr("Merge"), this); _newLocatedAction = new QAction(tr("New located"), this); - _newLocatedAction->setIcon(QIcon(":/images/located_item.png")); + _newLocatedAction->setIcon(QIcon(Constants::ICON_LOCATED_ITEM_SMALL)); _pasteLocatedAction = new QAction(tr("Paste located"), this); for(int i = 0; LocatedBindable[i]; ++i) _bindNewLocatedBindable[i] = new QAction(tr(LocatedBindable[i]), this); - _bindNewLocatedBindable[Action::Sound]->setIcon(QIcon(":/images/sound_item.png")); - _bindNewLocatedBindable[Action::Light]->setIcon(QIcon(":/images/light_item.png")); + _bindNewLocatedBindable[Action::Sound]->setIcon(QIcon(Constants::ICON_SOUND_ITEM_SMALL)); + _bindNewLocatedBindable[Action::Light]->setIcon(QIcon(Constants::ICON_LIGHT_ITEM_SMALL)); _forceZBiasAction = new QAction(tr("Force ZBias"), this); _instanciateAction = new QAction(tr("Instanciate"), this); - _instanciateAction->setIcon(QIcon(":/images/instance_item.png")); + _instanciateAction->setIcon(QIcon(Constants::ICON_INSTANCE_ITEM_SMALL)); _copyLocatedAction = new QAction(tr("Copy located"), this); _copyBindableAction = new QAction(tr("Copy bindable"), this); _pasteBindableAction = new QAction(tr("Paste bindable"), this); @@ -732,23 +733,25 @@ void CParticleWorkspaceDialog::updateTreeView() void CParticleWorkspaceDialog::buildMenu(QMenu *menu) { QMenu *bindParticleMenu = new QMenu(tr("Bind particle..."), menu); - bindParticleMenu->setIcon(QIcon(":/images/particle_system_item.png")); + bindParticleMenu->setIcon(QIcon(Constants::ICON_PARTICLE_SYSTEM_SMALL)); menu->addAction(bindParticleMenu->menuAction()); for(int i = Action::ParticlePoint; i <= Action::ParticleRibbonLookAt; ++i) bindParticleMenu->addAction(_bindNewLocatedBindable[i]); QMenu *bindForceMenu = new QMenu(tr("Bind force..."), menu); + bindForceMenu->setIcon(QIcon(Constants::ICON_FORCE_ITEM_SMALL)); menu->addAction(bindForceMenu->menuAction()); for(int i = Action::ForceGravity; i <= Action::ForceMagnetic; ++i) bindForceMenu->addAction(_bindNewLocatedBindable[i]); QMenu *bindZoneMenu = new QMenu(tr("Bind zone..."), menu); - bindZoneMenu->setIcon(QIcon(":/images/collision_zone_item.png")); + bindZoneMenu->setIcon(QIcon(Constants::ICON_COLLISION_ZONE_ITEM_SMALL)); menu->addAction(bindZoneMenu->menuAction()); for(int i = Action::ZonePlane; i <= Action::ZoneCylinder; ++i) bindZoneMenu->addAction(_bindNewLocatedBindable[i]); QMenu *bindEmitterMenu = new QMenu(tr("Bind emitter..."), menu); + bindEmitterMenu->setIcon(QIcon(Constants::ICON_EMITTER_ITEM_SMALL)); menu->addAction(bindEmitterMenu->menuAction()); for(int i = Action::EmitterDirectional; i <= Action::EmitterRadial; ++i) bindEmitterMenu->addAction(_bindNewLocatedBindable[i]); diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/particle_workspace_page.cpp b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/particle_workspace_page.cpp index ec4fde7d3..3f2dd1657 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/particle_workspace_page.cpp +++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/particle_workspace_page.cpp @@ -47,6 +47,7 @@ CWorkspacePage::CWorkspacePage(CParticleTreeModel *treeModel, QWidget *parent) connect(_ui.insertToolButton, SIGNAL(clicked()), this, SLOT(insertPS())); connect(_ui.createToolButton, SIGNAL(clicked()), this, SLOT(createPS())); connect(_ui.resetToolButton, SIGNAL(clicked()), this, SLOT(removeAllPS())); + connect(_ui.unloadToolButton, SIGNAL(clicked()), this, SLOT(unloadWP())); } CWorkspacePage::~CWorkspacePage() @@ -84,6 +85,7 @@ void CWorkspacePage::loadWP() { Modules::psEdit().loadWorkspace(fileName.toStdString()); _treeModel->setupModelFromWorkSpace(); + _ui.unloadToolButton->setEnabled(true); _ui.saveToolButton->setEnabled(true); _ui.saveAsToolButton->setEnabled(true); _ui.insertToolButton->setEnabled(true); @@ -124,7 +126,7 @@ void CWorkspacePage::insertPS() { // TODO: create method particle editor insertNewPS and multiple add CWorkspaceNode *node = Modules::psEdit().getParticleWorkspace()->addNode(NLMISC::CFile::getFilename(fileName.toStdString())); - if (node != NULL) + if (node != 0) { try { @@ -195,4 +197,17 @@ void CWorkspacePage::removeAllPS() _treeModel->setupModelFromWorkSpace(); } +void CWorkspacePage::unloadWP() +{ + //checkModifiedWorkSpace(); + Modules::psEdit().closeWorkspace(); + _treeModel->setupModelFromWorkSpace(); + _ui.unloadToolButton->setEnabled(false); + _ui.saveToolButton->setEnabled(false); + _ui.saveAsToolButton->setEnabled(false); + _ui.insertToolButton->setEnabled(false); + _ui.resetToolButton->setEnabled(false); + _ui.createToolButton->setEnabled(false); +} + } /* namespace NLQT */ \ No newline at end of file diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/particle_workspace_page.h b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/particle_workspace_page.h index b29945b9a..843bbbb41 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/particle_workspace_page.h +++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/particle_workspace_page.h @@ -55,6 +55,7 @@ private Q_SLOTS: void insertPS(); void createPS(); void removeAllPS(); + void unloadWP(); private: diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/ps_mover_form.ui b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/ps_mover_form.ui index ba461eb5c..243cd565d 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/ps_mover_form.ui +++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/ps_mover_form.ui @@ -6,22 +6,37 @@ 0 0 - 332 - 575 + 322 + 392 Form + + 6 + + + 3 + Position: + + 6 + + + 6 + + + 3 + @@ -49,6 +64,9 @@ + + 3 + @@ -76,6 +94,9 @@ + + 3 + diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/scheme_bank_dialog.cpp b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/scheme_bank_dialog.cpp new file mode 100644 index 000000000..66deb2a17 --- /dev/null +++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/scheme_bank_dialog.cpp @@ -0,0 +1,61 @@ +// NeL - MMORPG Framework +// Copyright (C) 2010 Winch Gate Property Limited +// +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU Affero General Public License as +// published by the Free Software Foundation, either version 3 of the +// License, or (at your option) any later version. +// +// This program 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 Affero General Public License for more details. +// +// You should have received a copy of the GNU Affero General Public License +// along with this program. If not, see . + +// Project includes +#include "stdpch.h" +#include "scheme_bank_dialog.h" +#include "modules.h" + +namespace NLQT +{ + +CSchemeBankDialog::CSchemeBankDialog(CAttribWidget *attribWidget, QWidget *parent) + : QDialog(parent) +{ + _ui.setupUi(this); + _attribWidget = attribWidget; +} + +CSchemeBankDialog::~CSchemeBankDialog() +{ +} + +void CSchemeBankDialog::createScheme() +{ +} + +void CSchemeBankDialog::setCurrentScheme() +{ + //SchemeManager.insertScheme(cn.getName(), getCurrentSchemePtr()->clone()); +} + +void CSchemeBankDialog::removeScheme() +{ +} + +void CSchemeBankDialog::saveBank() +{ +} + +void CSchemeBankDialog::loadBank() +{ +} + +void CSchemeBankDialog::buildList() +{ +} + +} /* namespace NLQT */ \ No newline at end of file diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/scheme_bank_dialog.h b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/scheme_bank_dialog.h new file mode 100644 index 000000000..a02406468 --- /dev/null +++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/scheme_bank_dialog.h @@ -0,0 +1,60 @@ +// NeL - MMORPG Framework +// Copyright (C) 2010 Winch Gate Property Limited +// +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU Affero General Public License as +// published by the Free Software Foundation, either version 3 of the +// License, or (at your option) any later version. +// +// This program 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 Affero General Public License for more details. +// +// You should have received a copy of the GNU Affero General Public License +// along with this program. If not, see . + +#ifndef SCHEME_BANK_DIALOG_H +#define SCHEME_BANK_DIALOG_H + +#include "ui_scheme_bank_form.h" + +// STL includes + +// Qt includes + +// NeL includes +#include "nel/3d/particle_system.h" + +// Project includes +#include "ps_wrapper.h" + +namespace NLQT +{ +class CAttribWidget; + +class CSchemeBankDialog: public QDialog +{ + Q_OBJECT + +public: + CSchemeBankDialog(CAttribWidget *attribWidget, QWidget *parent = 0); + ~CSchemeBankDialog(); + +private Q_SLOTS: + void createScheme(); + void setCurrentScheme(); + void removeScheme(); + void saveBank(); + void loadBank(); + +private: + void buildList(); + + CAttribWidget *_attribWidget; + Ui::CSchemeBankDialog _ui; +}; /* class CSchemeBankDialog */ + +} /* namespace NLQT */ + +#endif // SCHEME_BANK_DIALOG_H diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/scheme_bank_form.ui b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/scheme_bank_form.ui new file mode 100644 index 000000000..e7dd281f8 --- /dev/null +++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/scheme_bank_form.ui @@ -0,0 +1,151 @@ + + + CSchemeBankDialog + + + + 0 + 0 + 369 + 357 + + + + Sceme bank + + + + + + + + + Create + + + + + + + Rename + + + + + + + Remove + + + + + + + Qt::Vertical + + + + 72 + 125 + + + + + + + + Load bank + + + + + + + Save bank + + + + + + + + + + 0 + 0 + + + + Note: default.scb loaded at startup + + + true + + + + + + + true + + + + 0 + 0 + + + + Qt::Horizontal + + + QDialogButtonBox::Ok + + + + + + + + + Set current + + + + + + + + + buttonBox + accepted() + CSchemeBankDialog + accept() + + + 163 + 338 + + + 157 + 274 + + + + + buttonBox + rejected() + CSchemeBankDialog + reject() + + + 189 + 338 + + + 286 + 274 + + + + + diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/scheme_manager.cpp b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/scheme_manager.cpp new file mode 100644 index 000000000..62e847a73 --- /dev/null +++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/scheme_manager.cpp @@ -0,0 +1,117 @@ +// NeL - MMORPG Framework +// Copyright (C) 2010 Winch Gate Property Limited +// +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU Affero General Public License as +// published by the Free Software Foundation, either version 3 of the +// License, or (at your option) any later version. +// +// This program 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 Affero General Public License for more details. +// +// You should have received a copy of the GNU Affero General Public License +// along with this program. If not, see . + +#include "stdpch.h" +#include "scheme_manager.h" +#include "nel/3d/ps_attrib_maker.h" + +namespace NLQT +{ + +CSchemeManager::~CSchemeManager() +{ + for(TSchemeMap::iterator it = _SchemeMap.begin(); it != _SchemeMap.end(); ++it) + { + delete it->second.second; + } +} + + +void CSchemeManager::insertScheme(const std::string &name, NL3D::CPSAttribMakerBase *scheme) +{ + nlassert(scheme); + TSchemeInfo si(std::string(name), scheme); + _SchemeMap.insert(TSchemeMap::value_type(std::string(scheme->getType()), si)); +} + +void CSchemeManager::getSchemes(const std::string &type, std::vector &dest) +{ + TSchemeMap::const_iterator lbd = _SchemeMap.lower_bound(type), ubd = _SchemeMap.upper_bound(type); + dest.clear(); + for (TSchemeMap::const_iterator it = lbd; it != ubd; ++it) + { + dest.push_back(it->second); + } +} + +void CSchemeManager::serial(NLMISC::IStream &f) throw(NLMISC::EStream) +{ + + f.serialCheck((uint32) '_GNM'); + f.serialCheck((uint32) 'MHCS'); + f.serialVersion(1); + if (!f.isReading()) + { + sint32 size = (sint32)_SchemeMap.size(); + f.serial(size); + for (TSchemeMap::iterator smIt = _SchemeMap.begin(); smIt != _SchemeMap.end(); ++smIt) + { + f.serial(smIt->second.first); // name + f.serialPolyPtr(smIt->second.second); // scheme + } + } + else + { + _SchemeMap.clear(); + + std::string name; + NL3D::CPSAttribMakerBase *scheme = NULL; + sint32 size; + f.serial(size); + for (sint32 k = 0; k < size; ++k) + { + f.serial(name); + f.serialPolyPtr(scheme); + insertScheme(name, scheme); + } + } +} + +void CSchemeManager::swap(CSchemeManager &other) +{ + this->_SchemeMap.swap(other._SchemeMap); +} + +void CSchemeManager::remove(NL3D::CPSAttribMakerBase *am) +{ + TSchemeMap::iterator smIt; + for (smIt = _SchemeMap.begin(); smIt != _SchemeMap.end(); ++smIt) + { + if (smIt->second.second == am) break; + } + if (smIt != _SchemeMap.end()) + { + delete smIt->second.second; // delete the scheme + // delet from the collection + _SchemeMap.erase(smIt); + } +} + +// rename a scheme, given a pointer on it +void CSchemeManager::rename(NL3D::CPSAttribMakerBase *am, const std::string &newName) +{ + TSchemeMap::iterator smIt; + for (smIt = _SchemeMap.begin(); smIt != _SchemeMap.end(); ++smIt) + { + if (smIt->second.second == am) break; + } + if (smIt != _SchemeMap.end()) + { + smIt->second.first = newName; + } +} + +} \ No newline at end of file diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/scheme_manager.h b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/scheme_manager.h new file mode 100644 index 000000000..01a2abb35 --- /dev/null +++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/scheme_manager.h @@ -0,0 +1,61 @@ +// NeL - MMORPG Framework +// Copyright (C) 2010 Winch Gate Property Limited +// +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU Affero General Public License as +// published by the Free Software Foundation, either version 3 of the +// License, or (at your option) any later version. +// +// This program 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 Affero General Public License for more details. +// +// You should have received a copy of the GNU Affero General Public License +// along with this program. If not, see . + +#ifndef SCHEME_MANAGER_H +#define SCHEME_MANAGER_H + +#include + +#include +#include +#include + +namespace NL3D +{ + class CPSAttribMakerBase; +} + +namespace NLQT +{ + +class CSchemeManager +{ +public: + /// dtor + ~CSchemeManager(); + + typedef std::pair TSchemeInfo; + // insert a new scheme in the collection. The scheme is then owned by this object + void insertScheme(const std::string &name, NL3D::CPSAttribMakerBase *scheme); + // get all the schemes with the given type + void getSchemes(const std::string &type, std::vector &dest); + // serial this collection + void serial(NLMISC::IStream &f) throw(NLMISC::EStream); + // swap this collection with another one + void swap(CSchemeManager &other); + // remove a scheme from the bank, given a pointer on it + void remove(NL3D::CPSAttribMakerBase *am); + // rename a scheme, given a pointer on it + void rename(NL3D::CPSAttribMakerBase *am, const std::string &newName); +protected: + typedef std::pair TSchemeInfo; + typedef std::multimap TSchemeMap; + TSchemeMap _SchemeMap; +}; + +} /* namespace NLQT */ + +#endif \ No newline at end of file diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/value_gradient_dialog.cpp b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/value_gradient_dialog.cpp index c8165ceed..adf91c598 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/value_gradient_dialog.cpp +++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/value_gradient_dialog.cpp @@ -1,23 +1,23 @@ -/* - Object Viewer Qt - Copyright (C) 2010 Dzmitry Kamiahin - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - This program 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 General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . - -*/ +// Object Viewer Qt - MMORPG Framework +// Copyright (C) 2010 Winch Gate Property Limited +// Copyright (C) 2011 Dzmitry Kamiahin +// +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU Affero General Public License as +// published by the Free Software Foundation, either version 3 of the +// License, or (at your option) any later version. +// +// This program 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 Affero General Public License for more details. +// +// You should have received a copy of the GNU Affero General Public License +// along with this program. If not, see . +// Projects include #include "stdpch.h" +#include "particle_texture_widget.h" #include "value_gradient_dialog.h" // Qt include @@ -25,11 +25,8 @@ // NeL includes #include -#include "nel/3d/texture_file.h" -#include "nel/misc/path.h" - -// Projects include -#include "particle_texture_widget.h" +#include +#include namespace NLQT { @@ -41,246 +38,178 @@ CGradientDialog::CGradientDialog(CWorkspaceNode *ownerNode, uint minSize, QWidget *parent) : QDialog(parent), - _MinSize(minSize), - _CanTuneNbStages(canTuneNbStages), - _ClientInterface(clientInterface), - _DestroyClientInterface(destroyClientInterface), - _Node(ownerNode) + m_minSize(minSize), + m_canTuneNbStages(canTuneNbStages), + m_clientInterface(clientInterface), + m_destroyClientInterface(destroyClientInterface), + m_node(ownerNode) { - nlassert(_ClientInterface); + nlassert(m_clientInterface); - resize(490, 210); - _gridLayout = new QGridLayout(this); - _listWidget = new QListWidget(this); - QSizePolicy sizePolicy(QSizePolicy::Preferred, QSizePolicy::Preferred); - sizePolicy.setHorizontalStretch(0); - sizePolicy.setVerticalStretch(0); - sizePolicy.setHeightForWidth(_listWidget->sizePolicy().hasHeightForWidth()); - _listWidget->setSizePolicy(sizePolicy); - //_listWidget->setIconSize(QSize(16, 16)); - _listWidget->setMaximumSize(QSize(185, 16777215)); - _gridLayout->addWidget(_listWidget, 0, 0, 9, 1); + m_ui.setupUi(this); + setWindowTitle(m_clientInterface->getTitleDialog()); + QWidget *widget = m_clientInterface->createDialog(this); + m_ui.gridLayout->addWidget(widget, 4, 0, 1, 2); - _horizontalLayout = new QHBoxLayout(); - _addPushButton = new QPushButton(this); - QSizePolicy sizePolicy1(QSizePolicy::Fixed, QSizePolicy::Fixed); - sizePolicy1.setHorizontalStretch(0); - sizePolicy1.setVerticalStretch(0); - sizePolicy1.setHeightForWidth(_addPushButton->sizePolicy().hasHeightForWidth()); - _addPushButton->setSizePolicy(sizePolicy1); - _addPushButton->setMaximumSize(QSize(36, 36)); - QIcon icon; - icon.addFile(QString::fromUtf8(":/images/list-add.png"), QSize(), QIcon::Normal, QIcon::Off); - _addPushButton->setIcon(icon); - _addPushButton->setIconSize(QSize(24, 24)); - _horizontalLayout->addWidget(_addPushButton); - - _removePushButton = new QPushButton(this); - sizePolicy1.setHeightForWidth(_removePushButton->sizePolicy().hasHeightForWidth()); - _removePushButton->setSizePolicy(sizePolicy1); - _removePushButton->setMinimumSize(QSize(0, 0)); - _removePushButton->setMaximumSize(QSize(36, 36)); - QIcon icon1; - icon1.addFile(QString::fromUtf8(":/images/list-remove.png"), QSize(), QIcon::Normal, QIcon::Off); - _removePushButton->setIcon(icon1); - _removePushButton->setIconSize(QSize(24, 24)); - _horizontalLayout->addWidget(_removePushButton); - - _upPushButton = new QPushButton(this); - sizePolicy1.setHeightForWidth(_upPushButton->sizePolicy().hasHeightForWidth()); - _upPushButton->setSizePolicy(sizePolicy1); - _upPushButton->setMaximumSize(QSize(36, 36)); - QIcon icon2; - icon2.addFile(QString::fromUtf8(":/images/go-up.png"), QSize(), QIcon::Normal, QIcon::Off); - _upPushButton->setIcon(icon2); - _upPushButton->setIconSize(QSize(24, 24)); - _horizontalLayout->addWidget(_upPushButton); - - _downPushButton = new QPushButton(this); - sizePolicy1.setHeightForWidth(_downPushButton->sizePolicy().hasHeightForWidth()); - _downPushButton->setSizePolicy(sizePolicy1); - _downPushButton->setMaximumSize(QSize(36, 36)); - QIcon icon3; - icon3.addFile(QString::fromUtf8(":/images/go-down.png"), QSize(), QIcon::Normal, QIcon::Off); - _downPushButton->setIcon(icon3); - _downPushButton->setIconSize(QSize(24, 24)); - _horizontalLayout->addWidget(_downPushButton); - - _horizontalSpacer = new QSpacerItem(208, 20, QSizePolicy::Expanding, QSizePolicy::Minimum); - _horizontalLayout->addItem(_horizontalSpacer); - _gridLayout->addLayout(_horizontalLayout, 0, 1, 1, 2); - - _label = new QLabel(this); - _gridLayout->addWidget(_label, 1, 1, 1, 1); - - _nbStepWidget = new NLQT::CEditRangeUIntWidget(this); - _gridLayout->addWidget(_nbStepWidget, 2, 1, 1, 2); - - _verticalSpacer = new QSpacerItem(20, 85, QSizePolicy::Minimum, QSizePolicy::Expanding); - _gridLayout->addItem(_verticalSpacer, 3, 2, 1, 1); - - editWidget = _ClientInterface->createDialog(this); - _gridLayout->addWidget(editWidget, 4, 1, 1, 2); - - setWindowTitle(_ClientInterface->getTitleDialog()); - _label->setText(tr("Num samples:")); - - if (canTuneNbStages) + if (m_canTuneNbStages) { - _NbStepWrapper.OwnerNode = _Node; - _NbStepWrapper.I = _ClientInterface; - _nbStepWidget->setRange(1, 255); - _nbStepWidget->enableLowerBound(0, true); - _nbStepWidget->setWrapper(&_NbStepWrapper); - _nbStepWidget->updateUi(); + m_ui.nbStepWidget->setRange(1, 255); + m_ui.nbStepWidget->enableLowerBound(0, true); + m_ui.nbStepWidget->setValue(m_clientInterface->getNbSteps()); + connect(m_ui.nbStepWidget, SIGNAL(valueChanged(uint32)), this, SLOT(setNbSteps(uint32))); } else { - _nbStepWidget->hide(); - _label->hide(); + m_ui.nbStepWidget->hide(); + m_ui.label->hide(); } - connect(_addPushButton, SIGNAL(clicked()), this, SLOT(addValue())); - connect(_removePushButton, SIGNAL(clicked()), this, SLOT(removeValue())); - connect(_upPushButton, SIGNAL(clicked()), this, SLOT(valueUp())); - connect(_downPushButton, SIGNAL(clicked()), this, SLOT(valueDown())); - connect(_listWidget, SIGNAL(currentRowChanged(int)), this, SLOT(changeCurrentRow(int))); + connect(m_ui.addButton, SIGNAL(clicked()), this, SLOT(addValue())); + connect(m_ui.insButton, SIGNAL(clicked()), this, SLOT(insertValue())); + connect(m_ui.delButton, SIGNAL(clicked()), this, SLOT(removeValue())); + connect(m_ui.upButton, SIGNAL(clicked()), this, SLOT(valueUp())); + connect(m_ui.downButton, SIGNAL(clicked()), this, SLOT(valueDown())); + connect(m_ui.listWidget, SIGNAL(currentRowChanged(int)), this, SLOT(changeCurrentRow(int))); connect(clientInterface, SIGNAL(itemChanged()), this, SLOT(updateItem())); - _Size = _ClientInterface->getSchemeSize(); - for (uint k = 0; k < _Size; ++k) + m_size = m_clientInterface->getSchemeSize(); + for (uint k = 0; k < m_size; ++k) { QListWidgetItem *item = new QListWidgetItem(); - _ClientInterface->displayValue(k, item); - _listWidget->addItem(item); + m_clientInterface->displayValue(k, item); + m_ui.listWidget->addItem(item); } - _removePushButton->setEnabled(_Size > _MinSize ? true : false); - _listWidget->setCurrentRow(0); + m_ui.delButton->setEnabled(m_size > m_minSize ? true : false); + m_ui.listWidget->setCurrentRow(0); } CGradientDialog::~CGradientDialog() { - if (_DestroyClientInterface) delete _ClientInterface; + if (m_destroyClientInterface) delete m_clientInterface; } void CGradientDialog::addValue() { - nlassert(_ClientInterface); - if (!_ClientInterface->modifyGradient(IValueGradientClient::Add, 0)) return; - ++_Size; + nlassert(m_clientInterface); + if (!m_clientInterface->modifyGradient(IValueGradientClient::Add, 0)) return; + ++m_size; QListWidgetItem *item = new QListWidgetItem(); - _ClientInterface->displayValue(_Size - 1, item); - _listWidget->addItem(item); + m_clientInterface->displayValue(m_size - 1, item); + m_ui.listWidget->addItem(item); - _removePushButton->setEnabled(true); + m_ui.delButton->setEnabled(true); - _listWidget->setCurrentRow(_Size - 1); + m_ui.listWidget->setCurrentRow(m_size - 1); } void CGradientDialog::insertValue() { - nlassert(_ClientInterface); - int oldIndex = _listWidget->currentRow(); - if (!_ClientInterface->modifyGradient(IValueGradientClient::Insert, oldIndex)) return; - ++_Size; + nlassert(m_clientInterface); + int oldIndex = m_ui.listWidget->currentRow(); + if (!m_clientInterface->modifyGradient(IValueGradientClient::Insert, oldIndex)) return; + ++m_size; QListWidgetItem *item = new QListWidgetItem(); - _ClientInterface->displayValue(_Size - 1, item); - _listWidget->insertItem(oldIndex, item); - _listWidget->setCurrentRow(oldIndex); + m_clientInterface->displayValue(m_size - 1, item); + m_ui.listWidget->insertItem(oldIndex, item); + m_ui.listWidget->setCurrentRow(oldIndex); + m_ui.delButton->setEnabled(true); } void CGradientDialog::removeValue() { - nlassert(_ClientInterface); - - int oldIndex = _listWidget->currentRow(); + nlassert(m_clientInterface); + int oldIndex = m_ui.listWidget->currentRow(); if (oldIndex == -1) return; if (uint(oldIndex) == 0) - _listWidget->setCurrentRow(oldIndex + 1); + m_ui.listWidget->setCurrentRow(oldIndex + 1); else - _listWidget->setCurrentRow(oldIndex - 1); + m_ui.listWidget->setCurrentRow(oldIndex - 1); - if (!_ClientInterface->modifyGradient(IValueGradientClient::Delete, oldIndex)) + if (!m_clientInterface->modifyGradient(IValueGradientClient::Delete, oldIndex)) { - _listWidget->setCurrentRow(oldIndex); + m_ui.listWidget->setCurrentRow(oldIndex); return; } - --_Size; + --m_size; + if (m_size <= m_minSize) + m_ui.delButton->setEnabled(false); - if (_Size <= _MinSize) - _removePushButton->setEnabled(false); - - QListWidgetItem *removeItem = _listWidget->takeItem(oldIndex); + QListWidgetItem *removeItem = m_ui.listWidget->takeItem(oldIndex); if (!removeItem) delete removeItem; } void CGradientDialog::valueDown() { - nlassert(_ClientInterface); - int currentRow = _listWidget->currentRow(); - if (!((currentRow == _listWidget->count()-1) || (currentRow == -1))) + nlassert(m_clientInterface); + int currentRow = m_ui.listWidget->currentRow(); + if (!((currentRow == m_ui.listWidget->count()-1) || (currentRow == -1))) { - if (!_ClientInterface->modifyGradient(IValueGradientClient::Down, currentRow)) return; - QListWidgetItem *item = _listWidget->takeItem(currentRow); - _listWidget->insertItem(++currentRow, item); - _listWidget->setCurrentRow(currentRow); + if (!m_clientInterface->modifyGradient(IValueGradientClient::Down, currentRow)) return; + QListWidgetItem *item = m_ui.listWidget->takeItem(currentRow); + m_ui.listWidget->insertItem(++currentRow, item); + m_ui.listWidget->setCurrentRow(currentRow); } - _listWidget->setCurrentRow(currentRow); + m_ui.listWidget->setCurrentRow(currentRow); } void CGradientDialog::valueUp() { - nlassert(_ClientInterface); - int currentRow = _listWidget->currentRow(); + nlassert(m_clientInterface); + int currentRow = m_ui.listWidget->currentRow(); if (!((currentRow == 0) || (currentRow == -1))) { - if (!_ClientInterface->modifyGradient(IValueGradientClient::Up, currentRow)) return; - QListWidgetItem *item = _listWidget->takeItem(currentRow); - _listWidget->insertItem(--currentRow, item); - _listWidget->setCurrentRow(currentRow); + if (!m_clientInterface->modifyGradient(IValueGradientClient::Up, currentRow)) return; + QListWidgetItem *item = m_ui.listWidget->takeItem(currentRow); + m_ui.listWidget->insertItem(--currentRow, item); + m_ui.listWidget->setCurrentRow(currentRow); } - _listWidget->setCurrentRow(currentRow); + m_ui.listWidget->setCurrentRow(currentRow); } void CGradientDialog::changeCurrentRow(int currentRow) { - _ClientInterface->setCurrentIndex(currentRow); + m_clientInterface->setCurrentIndex(currentRow); } void CGradientDialog::updateItem() { - _ClientInterface->displayValue(_listWidget->currentRow(), _listWidget->currentItem()); + m_clientInterface->displayValue(m_ui.listWidget->currentRow(), m_ui.listWidget->currentItem()); +} + +void CGradientDialog::setNbSteps(uint32 nbSteps) +{ + m_clientInterface->setNbSteps(nbSteps); } QWidget *CTextureGradientInterface::createDialog(QWidget *parent) { - editWidget = new CParticleTextureWidget(); + m_editWidget = new CParticleTextureWidget(); - _TextureWrapper.P = TP; - _TextureWrapper.Index = 0; - _TextureWrapper.OwnerNode = Node; - editWidget->setWrapper(&_TextureWrapper); - connect(editWidget, SIGNAL(textureChanged(QString)), this, SIGNAL(itemChanged())); - return editWidget; + m_textureWrapper.P = m_tp; + m_textureWrapper.Index = 0; + m_textureWrapper.OwnerNode = m_node; + m_editWidget->setWrapper(&m_textureWrapper); + connect(m_editWidget, SIGNAL(textureChanged(QString)), this, SIGNAL(itemChanged())); + return m_editWidget; } bool CTextureGradientInterface::modifyGradient(TAction action, uint index) { - nlassert(TP); - nlassert(TP->getTextureGroup()); + nlassert(m_tp); + nlassert(m_tp->getTextureGroup()); - NLMISC::CSmartPtr tex = TP->getTextureGroup()->getTexture(index); + NLMISC::CSmartPtr tex = m_tp->getTextureGroup()->getTexture(index); std::string texName = (static_cast(tex.getPtr()))->getFileName().c_str(); if (texName.empty()) return false; std::vector< NLMISC::CSmartPtr > textureList; - textureList.resize(TP->getTextureGroup()->getNbTextures()); - TP->getTextureGroup()->getTextures(&textureList[0]); + textureList.resize(m_tp->getTextureGroup()->getNbTextures()); + m_tp->getTextureGroup()->getTextures(&textureList[0]); switch(action) { @@ -307,14 +236,14 @@ bool CTextureGradientInterface::modifyGradient(TAction action, uint index) return false; } - TP->getTextureGroup()->setTextures(&textureList[0], (uint)textureList.size()); + m_tp->getTextureGroup()->setTextures(&textureList[0], (uint)textureList.size()); return true; } void CTextureGradientInterface::displayValue(uint index, QListWidgetItem *item) { QPixmap pixmap; - NLMISC::CSmartPtr tex = TP->getTextureGroup()->getTexture(index); + NLMISC::CSmartPtr tex = m_tp->getTextureGroup()->getTexture(index); if (dynamic_cast(tex.getPtr())) { @@ -332,14 +261,14 @@ void CTextureGradientInterface::displayValue(uint index, QListWidgetItem *item) void CTextureGradientInterface::setCurrentIndex(uint index) { - _TextureWrapper.Index = index; - editWidget->updateUi(); + m_textureWrapper.Index = index; + m_editWidget->updateUi(); } uint32 CTextureGradientInterface::getSchemeSize(void) const { - nlassert(TP->getTextureGroup()); - return TP->getTextureGroup()->getNbTextures(); + nlassert(m_tp->getTextureGroup()); + return m_tp->getTextureGroup()->getNbTextures(); } uint32 CTextureGradientInterface::getNbSteps(void) const { @@ -389,7 +318,6 @@ void CTextureGradientInterface::CTextureWrapper::set(NL3D::ITexture *t) textureList[Index] = t; - P->getTextureGroup()->setTextures(&textureList[0], (uint)textureList.size()); } diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/value_gradient_dialog.h b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/value_gradient_dialog.h index bb28ac634..48da2f600 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/value_gradient_dialog.h +++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/value_gradient_dialog.h @@ -1,26 +1,30 @@ -/* - Object Viewer Qt - Copyright (C) 2010 Dzmitry Kamiahin - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - This program 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 General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . - -*/ +// Object Viewer Qt - MMORPG Framework +// Copyright (C) 2010 Winch Gate Property Limited +// Copyright (C) 2011 Dzmitry Kamiahin +// +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU Affero General Public License as +// published by the Free Software Foundation, either version 3 of the +// License, or (at your option) any later version. +// +// This program 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 Affero General Public License for more details. +// +// You should have received a copy of the GNU Affero General Public License +// along with this program. If not, see . #ifndef VALUE_GRADIENT_DIALOG_H #define VALUE_GRADIENT_DIALOG_H -#include +// Project includes +#include "ui_value_gradient_form.h" +#include "basic_edit_widget.h" +#include "color_edit_widget.h" +#include "edit_range_widget.h" +#include "ps_wrapper.h" +#include "particle_node.h" // Qt includes #include @@ -37,13 +41,6 @@ // NeL includes #include -// Project includes -#include "basic_edit_widget.h" -#include "color_edit_widget.h" -#include "edit_range_widget.h" -#include "ps_wrapper.h" -#include "particle_node.h" - namespace NL3D { class CPSTexturedParticle; @@ -111,58 +108,31 @@ private Q_SLOTS: void valueUp(); void changeCurrentRow(int currentRow); void updateItem(); + void setNbSteps(uint32 nbSteps); protected: // the minimum number of element in the gradient - uint _MinSize; + uint m_minSize; // false to disable the dialog that control the number of stages between each value - bool _CanTuneNbStages; + bool m_canTuneNbStages; - IValueGradientClient *_ClientInterface; + IValueGradientClient *m_clientInterface; - bool _DestroyClientInterface; + bool m_destroyClientInterface; // the current size of the gradient - uint _Size; + uint m_size; - CWorkspaceNode *_Node; - - // a wrapper to tune the number of step - struct CNbStepWrapper :public IPSWrapperUInt - { - // the interface that was passed to the dialog this struct is part of - IValueGradientClient *I; - uint32 get(void) const - { - return I->getNbSteps(); - } - void set(const uint32 &nbSteps) - { - I->setNbSteps(nbSteps); - } - - } _NbStepWrapper; - - QGridLayout *_gridLayout; - QListWidget *_listWidget; - QHBoxLayout *_horizontalLayout; - QPushButton *_addPushButton; - QPushButton *_removePushButton; - QPushButton *_upPushButton; - QPushButton *_downPushButton; - QSpacerItem *_horizontalSpacer; - QLabel *_label; - NLQT::CEditRangeUIntWidget *_nbStepWidget; - QSpacerItem *_verticalSpacer; - QWidget *editWidget; + CWorkspaceNode *m_node; + Ui::CGradientDialog m_ui; }; /* class CGradientDialog */ /** @class CValueGradientClientT @brief This template generate an interface that is used with the gradient edition dialog -This the type to be edited (color, floet, etc..) +This the type to be edited (color, float, etc..) */ template class CValueGradientClientT : public IValueGradientClient, public IPSWrapper @@ -172,22 +142,22 @@ public: virtual ~CValueGradientClientT() {} /// the gradient being edited, must be filled by the instancier - NL3D::CPSValueGradientFunc *Scheme; + NL3D::CPSValueGradientFunc *m_scheme; /// the gradient dialog, must be filled by the instancier - T DefaultValue; + T m_defaultValue; /// inherited from IPSWrapper virtual T get(void) const { - return Scheme->getValue(_CurrentEditedIndex); + return m_scheme->getValue(m_currentEditedIndex); } virtual void set(const T &v) { - T *tab = new T[Scheme->getNumValues()]; - Scheme->getValues(tab); - tab[_CurrentEditedIndex] = v; - Scheme->setValues(tab, Scheme->getNumValues(), Scheme->getNumStages()); + T *tab = new T[m_scheme->getNumValues()]; + m_scheme->getValues(tab); + tab[m_currentEditedIndex] = v; + m_scheme->setValues(tab, m_scheme->getNumValues(), m_scheme->getNumStages()); delete[] tab; } @@ -209,33 +179,33 @@ public: virtual bool modifyGradient(TAction action, uint index) { - T *tab = new T[Scheme->getNumValues() + 1]; // +1 is for the add / insert case - Scheme->getValues(tab); + T *tab = new T[m_scheme->getNumValues() + 1]; // +1 is for the add / insert case + m_scheme->getValues(tab); switch(action) { case IValueGradientClient::Add: - tab[Scheme->getNumValues()] = DefaultValue; - Scheme->setValues(tab, Scheme->getNumValues() + 1, Scheme->getNumStages()); + tab[m_scheme->getNumValues()] = m_defaultValue; + m_scheme->setValues(tab, m_scheme->getNumValues() + 1, m_scheme->getNumStages()); break; case IValueGradientClient::Insert: - ::memmove(tab + (index + 1), tab + index, sizeof(T) * (Scheme->getNumValues() - index)); - tab[index] = DefaultValue; - Scheme->setValues(tab, Scheme->getNumValues() + 1, Scheme->getNumStages()); + ::memmove(tab + (index + 1), tab + index, sizeof(T) * (m_scheme->getNumValues() - index)); + tab[index] = m_defaultValue; + m_scheme->setValues(tab, m_scheme->getNumValues() + 1, m_scheme->getNumStages()); break; case IValueGradientClient::Delete: - ::memmove(tab + index, tab + index + 1, sizeof(T) * (Scheme->getNumValues() - index - 1)); - Scheme->setValues(tab, Scheme->getNumValues() - 1, Scheme->getNumStages()); + ::memmove(tab + index, tab + index + 1, sizeof(T) * (m_scheme->getNumValues() - index - 1)); + m_scheme->setValues(tab, m_scheme->getNumValues() - 1, m_scheme->getNumStages()); break; case IValueGradientClient::Up: nlassert(index > 0); std::swap(tab[index], tab[index - 1]); - Scheme->setValues(tab, Scheme->getNumValues(), Scheme->getNumStages()); + m_scheme->setValues(tab, m_scheme->getNumValues(), m_scheme->getNumStages()); break; case IValueGradientClient::Down: - nlassert(index < Scheme->getNumValues() - 1); + nlassert(index < m_scheme->getNumValues() - 1); std::swap(tab[index], tab[index + 1]); - Scheme->setValues(tab, Scheme->getNumValues(), Scheme->getNumStages()); + m_scheme->setValues(tab, m_scheme->getNumValues(), m_scheme->getNumStages()); break; } @@ -244,24 +214,24 @@ public: } virtual uint32 getSchemeSize(void) const { - return Scheme->getNumValues(); + return m_scheme->getNumValues(); } /// Get the number of interpolation step uint32 getNbSteps(void) const { - return Scheme->getNumStages(); + return m_scheme->getNumStages(); } /// Set the number of interpolation steps void setNbSteps(uint32 value) { - Scheme->setNumStages(value); + m_scheme->setNumStages(value); } protected: // index of the value OF the current dialog that exist - uint32 _CurrentEditedIndex; + uint32 m_currentEditedIndex; }; /* class CValueGradientClientT */ /// FLOAT GRADIENT EDITION INTERFACE @@ -274,11 +244,11 @@ public: virtual QWidget *newDialog(IPSWrapperFloat *wrapper, QWidget *parent) { - editWidget = new CEditRangeFloatWidget(parent); - editWidget->setRange(MinRange, MaxRange); - editWidget->setWrapper(wrapper); - connect(editWidget, SIGNAL(valueChanged(float)), this, SIGNAL(itemChanged())); - return editWidget; + m_editWidget = new CEditRangeFloatWidget(parent); + m_editWidget->setRange(m_minRange, m_maxRange); + m_editWidget->setWrapper(wrapper); + connect(m_editWidget ,SIGNAL(valueChanged(float)), this, SIGNAL(itemChanged())); + return m_editWidget; } virtual QString getTitleDialog() const @@ -288,17 +258,17 @@ public: virtual void setCurrentIndex(uint index) { - _CurrentEditedIndex = index; - editWidget->updateUi(); + m_currentEditedIndex = index; + m_editWidget->updateUi(); } virtual void displayValue(uint index, QListWidgetItem *item) { - item->setText(QString("%1").arg(Scheme->getValue(index),0,'f',2)); + item->setText(QString("%1").arg(m_scheme->getValue(index), 0, 'f', 2)); } - CEditRangeFloatWidget *editWidget; - float MinRange, MaxRange; + CEditRangeFloatWidget *m_editWidget; + float m_minRange, m_maxRange; }; /* CFloatGradientWrapper */ /// UINT GRADIENT EDITION INTERFACE @@ -311,11 +281,11 @@ public: virtual QWidget *newDialog(IPSWrapperUInt *wrapper, QWidget *parent) { - editWidget = new CEditRangeUIntWidget(parent); - editWidget->setRange(MinRange, MaxRange); - editWidget->setWrapper(wrapper); - connect(editWidget, SIGNAL(valueChanged(uint32)), this, SIGNAL(itemChanged())); - return editWidget; + m_editWidget = new CEditRangeUIntWidget(parent); + m_editWidget->setRange(m_minRange, m_maxRange); + m_editWidget->setWrapper(wrapper); + connect(m_editWidget, SIGNAL(valueChanged(uint32)), this, SIGNAL(itemChanged())); + return m_editWidget; } virtual QString getTitleDialog() const @@ -325,17 +295,17 @@ public: virtual void setCurrentIndex(uint index) { - _CurrentEditedIndex = index; - editWidget->updateUi(); + m_currentEditedIndex = index; + m_editWidget->updateUi(); } virtual void displayValue(uint index, QListWidgetItem *item) { - item->setText(QString("%1").arg(Scheme->getValue(index))); + item->setText(QString("%1").arg(m_scheme->getValue(index))); } - CEditRangeUIntWidget *editWidget; - uint32 MinRange, MaxRange; + CEditRangeUIntWidget *m_editWidget; + uint32 m_minRange, m_maxRange; }; /* CUIntGradientWrapper */ /// INT GRADIENT EDITION INTERFACE @@ -348,11 +318,11 @@ public: virtual QWidget *newDialog(IPSWrapper *wrapper, QWidget *parent) { - editWidget = new CEditRangeIntWidget(parent); - editWidget->setRange(MinRange, MaxRange); - editWidget->setWrapper(wrapper); - connect(editWidget, SIGNAL(valueChanged(sint32)), this, SIGNAL(itemChanged())); - return editWidget; + m_editWidget = new CEditRangeIntWidget(parent); + m_editWidget->setRange(m_minRange, m_maxRange); + m_editWidget->setWrapper(wrapper); + connect(m_editWidget, SIGNAL(valueChanged(sint32)), this, SIGNAL(itemChanged())); + return m_editWidget; } virtual QString getTitleDialog() const @@ -362,17 +332,17 @@ public: virtual void setCurrentIndex(uint index) { - _CurrentEditedIndex = index; - editWidget->updateUi(); + m_currentEditedIndex = index; + m_editWidget->updateUi(); } virtual void displayValue(uint index, QListWidgetItem *item) { - item->setText(QString("%1").arg(Scheme->getValue(index))); + item->setText(QString("%1").arg(m_scheme->getValue(index))); } - CEditRangeIntWidget *editWidget; - sint32 MinRange, MaxRange; + CEditRangeIntWidget *m_editWidget; + sint32 m_minRange, m_maxRange; }; /* CIntGradientWrapper */ /// COLOR GRADIENT EDITION INTERFACE @@ -385,10 +355,10 @@ public: virtual QWidget *newDialog(IPSWrapper *wrapper, QWidget *parent) { - editWidget = new CColorEditWidget(parent); - editWidget->setWrapper(wrapper); - connect(editWidget, SIGNAL(colorChanged(NLMISC::CRGBA)), this, SIGNAL(itemChanged())); - return editWidget; + m_editWidget = new CColorEditWidget(parent); + m_editWidget->setWrapper(wrapper); + connect(m_editWidget, SIGNAL(colorChanged(NLMISC::CRGBA)), this, SIGNAL(itemChanged())); + return m_editWidget; } virtual QString getTitleDialog() const @@ -398,24 +368,24 @@ public: virtual void setCurrentIndex(uint index) { - _CurrentEditedIndex = index; - editWidget->updateUi(); + m_currentEditedIndex = index; + m_editWidget->updateUi(); } virtual void displayValue(uint index, QListWidgetItem *item) { - NLMISC::CRGBA color = Scheme->getValue(index); + NLMISC::CRGBA color = m_scheme->getValue(index); item->setText(QString("RGBA(%1,%2,%3,%4)").arg(color.R).arg(color.G).arg(color.B).arg(color.A)); QPixmap pixmap(QSize(16, 16)); QPainter painter(&pixmap); painter.setRenderHint(QPainter::Antialiasing, true); painter.setBrush(QBrush(QColor(color.R, color.G, color.B))); painter.setPen(QPen(Qt::black, 1, Qt::SolidLine)); - painter.drawRect(0, 0, pixmap.width() , pixmap.height()); + painter.drawRect(0, 0, pixmap.width(), pixmap.height()); item->setIcon(QIcon(pixmap)); } - CColorEditWidget *editWidget; + CColorEditWidget *m_editWidget; }; /* CColorGradientWrapper */ /// PLANE BASIS GRADIENT EDITION INTERFACE @@ -428,9 +398,9 @@ public: virtual QWidget *newDialog(IPSWrapper *wrapper, QWidget *parent) { - editWidget = new CBasicEditWidget(parent); - editWidget->setWrapper(wrapper); - return editWidget; + m_editWidget = new CBasicEditWidget(parent); + m_editWidget->setWrapper(wrapper); + return m_editWidget; } virtual QString getTitleDialog() const { @@ -438,8 +408,8 @@ public: } virtual void setCurrentIndex(uint index) { - _CurrentEditedIndex = index; - editWidget->updateUi(); + m_currentEditedIndex = index; + m_editWidget->updateUi(); } virtual void displayValue(uint index, QListWidgetItem *item) @@ -447,7 +417,7 @@ public: item->setText(QString("Plane %1").arg(index)); } - CBasicEditWidget *editWidget; + CBasicEditWidget *m_editWidget; }; /* class CPlaneBasisGradientWrapper */ /** @@ -460,12 +430,12 @@ class CTextureGradientInterface : public IValueGradientClient public: CTextureGradientInterface(QObject *parent = 0): IValueGradientClient(parent) {} - CTextureGradientInterface(NL3D::CPSTexturedParticle *tp, CWorkspaceNode *ownerNode): Node(ownerNode), TP(tp) {} + CTextureGradientInterface(NL3D::CPSTexturedParticle *tp, CWorkspaceNode *ownerNode): m_node(ownerNode), m_tp(tp) {} ~CTextureGradientInterface() {} - CWorkspaceNode *Node; - NL3D::CPSTexturedParticle *TP; + CWorkspaceNode *m_node; + NL3D::CPSTexturedParticle *m_tp; // all method inherited from IValueGradientClient virtual QWidget *createDialog(QWidget *parent); @@ -489,9 +459,9 @@ public: uint32 Index; NL3D::ITexture *get(void); void set(NL3D::ITexture *t); - } _TextureWrapper; + } m_textureWrapper; - CParticleTextureWidget *editWidget; + CParticleTextureWidget *m_editWidget; }; } /* namespace NLQT */ diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/value_gradient_form.ui b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/value_gradient_form.ui new file mode 100644 index 000000000..0bfb52b25 --- /dev/null +++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/value_gradient_form.ui @@ -0,0 +1,183 @@ + + + CGradientDialog + + + + 0 + 0 + 558 + 222 + + + + Dialog + + + + + + Qt::Horizontal + + + + + + + + + + + + + + :/icons/ic_nel_add_item.png:/icons/ic_nel_add_item.png + + + + 24 + 24 + + + + true + + + + + + + + + + + :/icons/ic_nel_insert_item.png:/icons/ic_nel_insert_item.png + + + + 24 + 24 + + + + true + + + + + + + + + + + :/icons/ic_nel_delete_item.png:/icons/ic_nel_delete_item.png + + + + 24 + 24 + + + + true + + + + + + + + + + + :/icons/ic_nel_up_item.png:/icons/ic_nel_up_item.png + + + + 24 + 24 + + + + true + + + + + + + + + + + :/icons/ic_nel_down_item.png:/icons/ic_nel_down_item.png + + + + 24 + 24 + + + + true + + + + + + + Qt::Horizontal + + + + 128 + 20 + + + + + + + + + + Num samples: + + + + + + + + + + Qt::Vertical + + + + 20 + 13 + + + + + + + + + + + + + NLQT::CEditRangeUIntWidget + QWidget +

edit_range_widget.h
+ 1 + +
+ + + + + diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/vegetable_apperance_form.ui b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/vegetable_apperance_form.ui index d379d629f..eb73d52b3 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/vegetable_apperance_form.ui +++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/vegetable_apperance_form.ui @@ -130,7 +130,7 @@ - :/images/list-remove.png:/images/list-remove.png + :/icons/ic_nel_delete_item.png:/icons/ic_nel_delete_item.png
@@ -148,7 +148,7 @@ - :/images/insert-horizontal.png:/images/insert-horizontal.png + :/icons/ic_nel_insert_item.png:/icons/ic_nel_insert_item.png @@ -159,7 +159,7 @@ - :/images/list-add.png:/images/list-add.png + :/icons/ic_nel_add_item.png:/icons/ic_nel_add_item.png diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/vegetable_dialog_form.ui b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/vegetable_dialog_form.ui index fb023c416..a503cb09f 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/vegetable_dialog_form.ui +++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/vegetable_dialog_form.ui @@ -6,13 +6,13 @@ 0 0 - 504 - 473 + 437 + 512 - :/images/veget.png:/images/veget.png + :/icons/ic_nel_veget.png:/icons/ic_nel_veget.png Vegetable editor @@ -35,229 +35,264 @@ 0 0 - 490 - 437 + 423 + 476 - - 6 - - - 6 - - + 6 - 5 + 3 - - - QLayout::SetFixedSize + + + Qt::Horizontal - - - - Vegetables: + + + + 3 - - - - - - - 0 - 0 - - - - - 170 - 16777215 - - - - - - - - List edition - - - - 6 - - - 5 - - - - - Add vegetable + + + + Vegetables: + + + + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + + + + + List edition + + + + 6 - - + + 3 - - - :/images/list-add.png:/images/list-add.png + + + + + 0 + 0 + + + + Add vegetable + + + + + + + :/icons/ic_nel_add_item.png:/icons/ic_nel_add_item.png + + + + + + + + 0 + 0 + + + + Remove vegetable + + + + + + + :/icons/ic_nel_delete_item.png:/icons/ic_nel_delete_item.png + + + + + + + + 0 + 0 + + + + Insert vegetable + + + + + + + :/icons/ic_nel_insert_item.png:/icons/ic_nel_insert_item.png + + + + + + + + 0 + 0 + + + + Clear all vegetables + + + + + + + :/icons/ic_nel_reset_all.png:/icons/ic_nel_reset_all.png + + + + + + + false + + + Copy Vegetable + + + + + + + Load .vegetdesc + + + + + + + Save .vegetdesc + + + + + + + + + + List Save/Load + + + + 6 - - - - - - Insert vegetable + + 5 - - - - - - :/images/insert-horizontal.png:/images/insert-horizontal.png - - - - - - - Remove vegetable - - - - - - - :/images/list-remove.png:/images/list-remove.png - - - - - - - Clear all vegetables - - - - - - - :/images/clear.png:/images/clear.png - - - - - - - false - - - Copy Vegetable - - - - - - - Load .vegetdesc - - - - - - - Save .vegetdesc - - - - - - - - - - List Save/Load - - - - 6 - - - 5 - - - - - Load .vegetset - - - - - - - Append .vegetset - - - - - - - Save .vegetset - - - - - - - - - - true - - - Display Vegetables - - - true - - - - - - - - - QTabWidget::East - - - 0 - - - - Landscape - + + + + Load .vegetset + + + + :/icons/ic_nel_vegetset.png:/icons/ic_nel_vegetset.png + + + + + + + Append .vegetset + + + + :/icons/ic_nel_append_item.png:/icons/ic_nel_append_item.png + + + + + + + Save .vegetset + + + + :/icons/ic_nel_save.png:/icons/ic_nel_save.png + + + + + + + + + + true + + + Display Vegetables + + + true + + + + - - - General/Density - - - - - Appearance - - - - - Scale - - - - - Rotation - + + + QTabWidget::East + + + 0 + + + + Landscape + + + + + General/Density + + + + + Appearance + + + + + Scale + + + + + Rotation + + diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/vegetable_settings_page.ui b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/vegetable_settings_page.ui index e36b8bb37..0d4a41cf2 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/vegetable_settings_page.ui +++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/vegetable_settings_page.ui @@ -156,11 +156,11 @@ - ... + - :/images/list-add.png:/images/list-add.png + :/icons/ic_nel_add_item.png:/icons/ic_nel_add_item.png @@ -173,11 +173,11 @@ - ... + - :/images/list-remove.png:/images/list-remove.png + :/icons/ic_nel_delete_item.png:/icons/ic_nel_delete_item.png diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/workspace_form.ui b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/workspace_form.ui index 0670eaf9d..28705f097 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/workspace_form.ui +++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/object_viewer/workspace_form.ui @@ -6,7 +6,7 @@ 0 0 - 282 + 337 232 @@ -73,7 +73,7 @@ - :/images/new.png:/images/new.png + :/icons/ic_nel_new.png:/icons/ic_nel_new.png @@ -114,7 +114,7 @@ - :/images/open-file.png:/images/open-file.png + :/icons/ic_nel_particle_system.png:/icons/ic_nel_particle_system.png @@ -130,7 +130,7 @@ - + false @@ -158,7 +158,7 @@ - :/images/save.png:/images/save.png + :/icons/ic_nel_save.png:/icons/ic_nel_save.png @@ -177,7 +177,7 @@ - + false @@ -205,7 +205,7 @@ - :/images/save-as.png:/images/save-as.png + :/icons/ic_nel_save_as.png:/icons/ic_nel_save_as.png @@ -221,18 +221,49 @@ - - - - Qt::Horizontal + + + + false - + + + 0 + 0 + + + - 0 + 55 0 - + + + 16777215 + 16777215 + + + + Unload + + + + :/icons/ic_nel_particle_system_close.png:/icons/ic_nel_particle_system_close.png + + + + 32 + 32 + + + + Qt::ToolButtonTextUnderIcon + + + true + + @@ -267,11 +298,11 @@ - Insert New + Insert - :/images/pqrticles.png:/images/pqrticles.png + :/icons/ic_nel_open.png:/icons/ic_nel_open.png @@ -311,11 +342,11 @@ - Create New + Create - :/images/insert.png:/images/insert.png + :/icons/ic_nel_particles.png:/icons/ic_nel_particles.png @@ -331,7 +362,7 @@ - + false @@ -359,7 +390,7 @@ - :/images/clear.png:/images/clear.png + :/icons/ic_nel_reset_all.png:/icons/ic_nel_reset_all.png @@ -375,19 +406,6 @@ - - - - Qt::Horizontal - - - - 0 - 0 - - - - diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/zone_painter/zone_painter_main_window.cpp b/code/nel/tools/3d/object_viewer_qt/src/plugins/zone_painter/zone_painter_main_window.cpp index 068896799..413527fae 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/plugins/zone_painter/zone_painter_main_window.cpp +++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/zone_painter/zone_painter_main_window.cpp @@ -27,37 +27,37 @@ ZonePainterMainWindow::ZonePainterMainWindow(QWidget *parent) : m_painterDockWidget->setVisible(true); // Insert tool modes - _toolModeMenu = new QMenu(tr("Tool Mode"), ui->painterToolBar); - _toolModeMenu->setIcon(QIcon(":/painterTools/images/draw-brush.png")); - ui->painterToolBar->addAction(_toolModeMenu->menuAction()); - //connect(_renderModeMenu->menuAction(), SIGNAL(triggered()), this, SLOT(setRenderMode())); - - QSignalMapper *modeMapper = new QSignalMapper(this); - - _toolPaintModeAction = _toolModeMenu->addAction(tr("Paint Mode")); - _toolPaintModeAction->setIcon(QIcon(":/painterTools/images/draw-brush.png")); - _toolPaintModeAction->setStatusTip(tr("Set paint mode")); - connect(_toolPaintModeAction, SIGNAL(triggered()), modeMapper, SLOT(map())); - modeMapper->setMapping(_toolPaintModeAction, 0); - - _toolFillModeAction = _toolModeMenu->addAction(tr("Fill Mode")); - _toolFillModeAction->setStatusTip(tr("Set fill mode")); - _toolFillModeAction->setIcon(QIcon(":/painterTools/images/color-fill.png")); - connect(_toolFillModeAction, SIGNAL(triggered()), modeMapper, SLOT(map())); - modeMapper->setMapping(_toolFillModeAction, 1); - - _toolSelectModeAction = _toolModeMenu->addAction(tr("Select mode")); - _toolSelectModeAction->setIcon(QIcon(":/painterTools/images/go-jump-4.png")); - _toolSelectModeAction->setStatusTip(tr("Set select mode")); - connect(_toolSelectModeAction, SIGNAL(triggered()), modeMapper, SLOT(map())); - modeMapper->setMapping(_toolSelectModeAction, 2); - - _toolPickModeAction = _toolModeMenu->addAction(tr("Pick mode")); - _toolPickModeAction->setIcon(QIcon(":/painterTools/images/color-picker-black.png")); - _toolPickModeAction->setStatusTip(tr("Set color picking mode")); - connect(_toolPickModeAction, SIGNAL(triggered()), modeMapper, SLOT(map())); - modeMapper->setMapping(_toolPickModeAction, 2); - + _toolModeMenu = new QMenu(tr("Tool Mode"), ui->painterToolBar); + _toolModeMenu->setIcon(QIcon(":/painterTools/images/draw-brush.png")); + ui->painterToolBar->addAction(_toolModeMenu->menuAction()); + //connect(_renderModeMenu->menuAction(), SIGNAL(triggered()), this, SLOT(setRenderMode())); + + QSignalMapper *modeMapper = new QSignalMapper(this); + + _toolPaintModeAction = _toolModeMenu->addAction(tr("Paint Mode")); + _toolPaintModeAction->setIcon(QIcon(":/painterTools/images/draw-brush.png")); + _toolPaintModeAction->setStatusTip(tr("Set paint mode")); + connect(_toolPaintModeAction, SIGNAL(triggered()), modeMapper, SLOT(map())); + modeMapper->setMapping(_toolPaintModeAction, 0); + + _toolFillModeAction = _toolModeMenu->addAction(tr("Fill Mode")); + _toolFillModeAction->setStatusTip(tr("Set fill mode")); + _toolFillModeAction->setIcon(QIcon(":/painterTools/images/color-fill.png")); + connect(_toolFillModeAction, SIGNAL(triggered()), modeMapper, SLOT(map())); + modeMapper->setMapping(_toolFillModeAction, 1); + + _toolSelectModeAction = _toolModeMenu->addAction(tr("Select mode")); + _toolSelectModeAction->setIcon(QIcon(":/painterTools/images/go-jump-4.png")); + _toolSelectModeAction->setStatusTip(tr("Set select mode")); + connect(_toolSelectModeAction, SIGNAL(triggered()), modeMapper, SLOT(map())); + modeMapper->setMapping(_toolSelectModeAction, 2); + + _toolPickModeAction = _toolModeMenu->addAction(tr("Pick mode")); + _toolPickModeAction->setIcon(QIcon(":/painterTools/images/color-picker-black.png")); + _toolPickModeAction->setStatusTip(tr("Set color picking mode")); + connect(_toolPickModeAction, SIGNAL(triggered()), modeMapper, SLOT(map())); + modeMapper->setMapping(_toolPickModeAction, 2); + connect(modeMapper, SIGNAL(mapped(int)), this, SLOT(setToolMode(int))); m_statusBarTimer = new QTimer(this); @@ -67,8 +67,8 @@ ZonePainterMainWindow::ZonePainterMainWindow(QWidget *parent) : // Set Background Color Toolbar - - connect(ui->actionBackground_Dlg, SIGNAL(triggered()), this, SLOT(setBackgroundColor())); + + connect(ui->actionBackground_Dlg, SIGNAL(triggered()), this, SLOT(setBackgroundColor())); Core::ICore::instance()->mainWindow()->statusBar()->addPermanentWidget(m_statusInfo); @@ -95,43 +95,43 @@ void ZonePainterMainWindow::updateStatusBar() m_statusInfo->setText(QString("Tool Mode: Paint Mode")); } -void ZonePainterMainWindow::setToolMode(int value) -{ - switch (value) - { - case 0: - //Modules::objView().getDriver()->setPolygonMode (NL3D::UDriver::Point); - break; - case 1: - //Modules::objView().getDriver()->setPolygonMode (NL3D::UDriver::Line); - break; - case 2: - //Modules::objView().getDriver()->setPolygonMode (NL3D::UDriver::Filled); - break; - } -} - -void ZonePainterMainWindow::setToolMode() -{ - //switch (Modules::objView().getDriver()->getPolygonMode()) - //{ - //case NL3D::UDriver::Filled: - // Modules::objView().getDriver()->setPolygonMode (NL3D::UDriver::Line); - // break; - //case NL3D::UDriver::Line: - // Modules::objView().getDriver()->setPolygonMode (NL3D::UDriver::Point); - // break; - //case NL3D::UDriver::Point: - // Modules::objView().getDriver()->setPolygonMode (NL3D::UDriver::Filled); - // break; - //} +void ZonePainterMainWindow::setToolMode(int value) +{ + switch (value) + { + case 0: + //Modules::objView().getDriver()->setPolygonMode (NL3D::UDriver::Point); + break; + case 1: + //Modules::objView().getDriver()->setPolygonMode (NL3D::UDriver::Line); + break; + case 2: + //Modules::objView().getDriver()->setPolygonMode (NL3D::UDriver::Filled); + break; + } +} + +void ZonePainterMainWindow::setToolMode() +{ + //switch (Modules::objView().getDriver()->getPolygonMode()) + //{ + //case NL3D::UDriver::Filled: + // Modules::objView().getDriver()->setPolygonMode (NL3D::UDriver::Line); + // break; + //case NL3D::UDriver::Line: + // Modules::objView().getDriver()->setPolygonMode (NL3D::UDriver::Point); + // break; + //case NL3D::UDriver::Point: + // Modules::objView().getDriver()->setPolygonMode (NL3D::UDriver::Filled); + // break; + //} } void ZonePainterMainWindow::setBackgroundColor() { - QColor color = QColorDialog::getColor(QColor(m_nelWidget->backgroundColor().R, - m_nelWidget->backgroundColor().G, - m_nelWidget->backgroundColor().B)); - if (color.isValid()) + QColor color = QColorDialog::getColor(QColor(m_nelWidget->backgroundColor().R, + m_nelWidget->backgroundColor().G, + m_nelWidget->backgroundColor().B)); + if (color.isValid()) m_nelWidget->setBackgroundColor(NLMISC::CRGBA(color.red(), color.green(), color.blue())); } diff --git a/code/nel/tools/3d/object_viewer_qt/src/plugins/zone_painter/zone_painter_plugin.h b/code/nel/tools/3d/object_viewer_qt/src/plugins/zone_painter/zone_painter_plugin.h index 7cb6b9c43..aeae39ba6 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/plugins/zone_painter/zone_painter_plugin.h +++ b/code/nel/tools/3d/object_viewer_qt/src/plugins/zone_painter/zone_painter_plugin.h @@ -79,25 +79,29 @@ class CZonePainterContext: public Core::IContext { Q_OBJECT public: - CZonePainterContext(QObject *parent = 0): IContext(parent) {} - virtual ~CZonePainterContext() {} - - virtual QString id() const - { - return QLatin1String("ZonePainterContext"); - } - virtual QString trName() const - { - return tr("Zone Painter"); - } - virtual QIcon icon() const - { - return QIcon(); - } - virtual QWidget *widget() - { - return new ZonePainterMainWindow(); - } + CZonePainterContext(QObject *parent = 0): IContext(parent) + { + m_zonePainterMainWindow = new ZonePainterMainWindow(); + } + virtual ~CZonePainterContext() {} + + virtual QString id() const + { + return QLatin1String("ZonePainterContext"); + } + virtual QString trName() const + { + return tr("Zone Painter"); + } + virtual QIcon icon() const + { + return QIcon(); + } + virtual QWidget *widget() + { + return m_zonePainterMainWindow; + } + ZonePainterMainWindow *m_zonePainterMainWindow; }; } // namespace Plugin diff --git a/code/ryzom/client/src/client_sheets/stdpch.h b/code/ryzom/client/src/client_sheets/stdpch.h index 1b3d2e146..53a1531be 100644 --- a/code/ryzom/client/src/client_sheets/stdpch.h +++ b/code/ryzom/client/src/client_sheets/stdpch.h @@ -16,6 +16,7 @@ #include +#include #include #include #include diff --git a/code/ryzom/client/src/stdpch.h b/code/ryzom/client/src/stdpch.h index 45957ec35..fdb16ef93 100644 --- a/code/ryzom/client/src/stdpch.h +++ b/code/ryzom/client/src/stdpch.h @@ -16,6 +16,7 @@ #include +#include #include #include #include diff --git a/code/ryzom/tools/sheets_packer/stdpch.h b/code/ryzom/tools/sheets_packer/stdpch.h index d0135ae17..afa7d2137 100644 --- a/code/ryzom/tools/sheets_packer/stdpch.h +++ b/code/ryzom/tools/sheets_packer/stdpch.h @@ -1,5 +1,6 @@ #include +#include #include #include #include