hg/feature/sound
dnk-88 14 years ago
commit 06abd7c8e8

@ -5,7 +5,7 @@ FILE(GLOB OBJECT_VIEWER_SRC configuration.h entity.h object_viewer.h particle_ed
particle_node.h ps_initial_pos.h dup_ps.h vegetable_editor.h vegetable_node.h
extension_system/iplugin_spec.h extension_system/plugin_spec.h
extension_system/*.cpp *.cpp)
SET(OBJECT_VIEWER_HDR main_window.h graphics_viewport.h animation_dialog.h
animation_set_dialog.h settings_dialog.h setup_fog_dialog.h
slot_manager_dialog.h particle_control_dialog.h particle_workspace_dialog.h
@ -40,6 +40,8 @@ SET(OBJECT_VIEWER_UIS animation_form.ui animation_set_form.ui settings_form.ui
SET(OBJECT_VIEWER_RCS object_viewer_qt.qrc)
SET(LANGUAGES en fr de ru)
SET(QT_USE_QTGUI TRUE)
SET(QT_USE_QTOPENGL TRUE)
@ -47,11 +49,27 @@ QT4_ADD_RESOURCES( OBJECT_VIEWER_RC_SRCS ${OBJECT_VIEWER_RCS} )
QT4_WRAP_CPP( OBJECT_VIEWER_MOC_SRCS ${OBJECT_VIEWER_HDR} )
QT4_WRAP_UI( OBJECT_VIEWER_UI_HDRS ${OBJECT_VIEWER_UIS} )
FOREACH(LANGUAGE ${LANGUAGES})
SET (TS ${CMAKE_CURRENT_SOURCE_DIR}/translations/object_viewer_qt_${LANGUAGE}.ts)
SET (QM ${CMAKE_CURRENT_SOURCE_DIR}/translations/object_viewer_qt_${LANGUAGE}.qm)
SET (TRANSLATIONS ${TRANSLATIONS} ${TS})
SET (TRANSLATIONS_BINARY ${TRANSLATIONS_BINARY} ${QM})
ADD_CUSTOM_COMMAND (OUTPUT ${QM} COMMAND ${QT_LRELEASE_EXECUTABLE} ${TS} MAIN_DEPENDENCY ${TS})
ENDFOREACH()
ADD_CUSTOM_TARGET (translations COMMAND ${QT_LUPDATE_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR} -recursive -ts ${TRANSLATIONS})
ADD_CUSTOM_COMMAND (TARGET translations COMMAND ${QT_LRELEASE_EXECUTABLE} ${TRANSLATIONS})
SOURCE_GROUP(QtResources FILES ${OBJECT_VIEWER_UIS} ${OBJECT_VIEWER_RCS})
SOURCE_GROUP(QtGeneratedUiHdr FILES ${OBJECT_VIEWER_UI_HDRS})
SOURCE_GROUP(QtGeneratedMocSrc FILES ${OBJECT_VIEWER_MOC_SRCS})
ADD_EXECUTABLE(object_viewer_qt WIN32 MACOSX_BUNDLE ${OBJECT_VIEWER_SRC} ${OBJECT_VIEWER_MOC_SRCS} ${OBJECT_VIEWER_RC_SRCS} ${OBJECT_VIEWER_UI_HDRS})
ADD_EXECUTABLE(object_viewer_qt WIN32 MACOSX_BUNDLE
${OBJECT_VIEWER_SRC}
${OBJECT_VIEWER_MOC_SRCS}
${OBJECT_VIEWER_RC_SRCS}
${OBJECT_VIEWER_UI_HDRS}
${TRANSLATIONS})
TARGET_LINK_LIBRARIES(object_viewer_qt
nelmisc

@ -46,6 +46,8 @@ CAnimationDialog::CAnimationDialog(QWidget *parent)
connect(_ui.horizontalSlider, SIGNAL(sliderMoved(int)), this, SLOT(changeFrame(int)));
connect(_ui.startSpinBox, SIGNAL(valueChanged(int)), this, SLOT(changeStartAnim(int)));
connect(_ui.endSpinBox, SIGNAL(valueChanged(int)), this, SLOT(changeEndAnim(int)));
connect(_ui.playlistToolButton, SIGNAL(toggled(bool)), this, SLOT(setModePlayList()));
connect(_ui.mixerToolButton, SIGNAL(toggled(bool)), this, SLOT(setModeMixer()));
// init QTimeLine
_timeLine = new QTimeLine(_ui.endSpinBox->value() * _frameRate, this);
@ -92,6 +94,11 @@ void CAnimationDialog::setCurrentShape(const QString &name)
_ui.inPlaceCheckBox->setChecked(entity.getInPlace());
_ui.incPosCheckBox->setChecked(entity.getIncPos());
if (_ui.playlistToolButton->isChecked())
entity.setMode(CEntity::Mode::PlayList);
else
entity.setMode(CEntity::Mode::Mixer);
}
void CAnimationDialog::start()
@ -112,7 +119,8 @@ void CAnimationDialog::play()
if (_timeLine->state() == QTimeLine::Running)
_timeLine->setPaused(true);
else if (_timeLine->currentFrame() == _timeLine->endFrame()) _timeLine->start();
else if (_timeLine->currentFrame() == _timeLine->endFrame())
_timeLine->start();
else
_timeLine->resume();
}
@ -184,8 +192,30 @@ void CAnimationDialog::setIncPos(bool state)
void CAnimationDialog::finish()
{
if (_ui.loopCheckBox->checkState() == Qt::Checked) play();
else _ui.playPushButton->setChecked(false);
if (_ui.loopCheckBox->isChecked())
play();
else
_ui.playPushButton->setChecked(false);
}
void CAnimationDialog::setModePlayList()
{
std::string curObj = Modules::objView().getCurrentObject();
if (curObj.empty())
return;
CEntity &entity = Modules::objView().getEntity(curObj);
entity.setMode(CEntity::Mode::PlayList);
}
void CAnimationDialog::setModeMixer()
{
std::string curObj = Modules::objView().getCurrentObject();
if (curObj.empty())
return;
CEntity &entity = Modules::objView().getEntity(curObj);
entity.setMode(CEntity::Mode::Mixer);
}
} /* namespace NLQT */
} /* namespace NLQT */

@ -77,6 +77,8 @@ private Q_SLOTS:
void setInPlace(bool state);
void setIncPos(bool state);
void finish();
void setModePlayList();
void setModeMixer();
private:

@ -1,398 +1,521 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>CAnimationDialog</class>
<widget class="QDockWidget" name="CAnimationDialog">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>489</width>
<height>92</height>
</rect>
</property>
<property name="sizePolicy">
<sizepolicy hsizetype="Fixed" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>489</width>
<height>92</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>524287</width>
<height>524287</height>
</size>
</property>
<property name="floating">
<bool>false</bool>
</property>
<property name="features">
<set>QDockWidget::AllDockWidgetFeatures</set>
</property>
<property name="allowedAreas">
<set>Qt::AllDockWidgetAreas</set>
</property>
<property name="windowTitle">
<string>Animation </string>
</property>
<widget class="QWidget" name="dockWidgetContents">
<layout class="QGridLayout" name="gridLayout">
<property name="margin">
<number>9</number>
</property>
<property name="spacing">
<number>1</number>
</property>
<item row="0" column="0" colspan="7">
<layout class="QHBoxLayout" name="horizontalLayout_3">
<item>
<widget class="QSlider" name="horizontalSlider">
<property name="maximum">
<number>99</number>
</property>
<property name="pageStep">
<number>10</number>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="invertedAppearance">
<bool>false</bool>
</property>
<property name="invertedControls">
<bool>false</bool>
</property>
<property name="tickPosition">
<enum>QSlider::TicksBelow</enum>
</property>
<property name="tickInterval">
<number>10</number>
</property>
</widget>
</item>
<item>
<widget class="QSpinBox" name="currentSpinBox">
<property name="readOnly">
<bool>true</bool>
</property>
<property name="buttonSymbols">
<enum>QAbstractSpinBox::NoButtons</enum>
</property>
<property name="maximum">
<number>999999</number>
</property>
</widget>
</item>
</layout>
</item>
<item row="1" column="0">
<layout class="QHBoxLayout" name="horizontalLayout_2">
<property name="spacing">
<number>0</number>
</property>
<property name="sizeConstraint">
<enum>QLayout::SetMaximumSize</enum>
</property>
<property name="leftMargin">
<number>0</number>
</property>
<item>
<widget class="QSpinBox" name="startSpinBox">
<property name="buttonSymbols">
<enum>QAbstractSpinBox::UpDownArrows</enum>
</property>
<property name="keyboardTracking">
<bool>false</bool>
</property>
<property name="maximum">
<number>999999</number>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="loopCheckBox">
<property name="text">
<string>Loop</string>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="inPlaceCheckBox">
<property name="enabled">
<bool>true</bool>
</property>
<property name="text">
<string>In place</string>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="incPosCheckBox">
<property name="enabled">
<bool>true</bool>
</property>
<property name="text">
<string>Increment pos</string>
</property>
</widget>
</item>
<item>
<widget class="QSpinBox" name="endSpinBox">
<property name="keyboardTracking">
<bool>false</bool>
</property>
<property name="maximum">
<number>999999</number>
</property>
<property name="value">
<number>100</number>
</property>
</widget>
</item>
</layout>
</item>
<item row="1" column="1">
<widget class="QToolButton" name="startPushButton">
<property name="minimumSize">
<size>
<width>25</width>
<height>25</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>25</width>
<height>25</height>
</size>
</property>
<property name="text">
<string/>
</property>
<property name="icon">
<iconset resource="object_viewer_qt.qrc">
<normaloff>:/images/skip-backward.png</normaloff>:/images/skip-backward.png</iconset>
</property>
<property name="iconSize">
<size>
<width>28</width>
<height>28</height>
</size>
</property>
<property name="autoRaise">
<bool>true</bool>
</property>
</widget>
</item>
<item row="1" column="2">
<widget class="QToolButton" name="backwardPushButton">
<property name="minimumSize">
<size>
<width>25</width>
<height>25</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>25</width>
<height>25</height>
</size>
</property>
<property name="text">
<string/>
</property>
<property name="icon">
<iconset resource="object_viewer_qt.qrc">
<normaloff>:/images/seek-backward.png</normaloff>:/images/seek-backward.png</iconset>
</property>
<property name="iconSize">
<size>
<width>28</width>
<height>28</height>
</size>
</property>
<property name="autoRaise">
<bool>true</bool>
</property>
</widget>
</item>
<item row="1" column="3">
<widget class="QToolButton" name="playPushButton">
<property name="minimumSize">
<size>
<width>25</width>
<height>25</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>25</width>
<height>25</height>
</size>
</property>
<property name="text">
<string/>
</property>
<property name="icon">
<iconset resource="object_viewer_qt.qrc">
<normaloff>:/images/play.png</normaloff>
<normalon>:/images/pause.png</normalon>:/images/play.png</iconset>
</property>
<property name="iconSize">
<size>
<width>28</width>
<height>28</height>
</size>
</property>
<property name="checkable">
<bool>true</bool>
</property>
<property name="autoRaise">
<bool>true</bool>
</property>
</widget>
</item>
<item row="1" column="4">
<widget class="QToolButton" name="stopPushButton">
<property name="minimumSize">
<size>
<width>25</width>
<height>25</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>25</width>
<height>25</height>
</size>
</property>
<property name="text">
<string/>
</property>
<property name="icon">
<iconset resource="object_viewer_qt.qrc">
<normaloff>:/images/stop.png</normaloff>:/images/stop.png</iconset>
</property>
<property name="iconSize">
<size>
<width>28</width>
<height>28</height>
</size>
</property>
<property name="checkable">
<bool>false</bool>
</property>
<property name="autoRaise">
<bool>true</bool>
</property>
</widget>
</item>
<item row="1" column="5">
<widget class="QToolButton" name="forwardPushButton">
<property name="minimumSize">
<size>
<width>25</width>
<height>25</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>25</width>
<height>25</height>
</size>
</property>
<property name="text">
<string/>
</property>
<property name="icon">
<iconset resource="object_viewer_qt.qrc">
<normaloff>:/images/seek-forward.png</normaloff>:/images/seek-forward.png</iconset>
</property>
<property name="iconSize">
<size>
<width>28</width>
<height>28</height>
</size>
</property>
<property name="autoRaise">
<bool>true</bool>
</property>
</widget>
</item>
<item row="1" column="6">
<widget class="QToolButton" name="endPushButton">
<property name="minimumSize">
<size>
<width>25</width>
<height>25</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>25</width>
<height>25</height>
</size>
</property>
<property name="text">
<string/>
</property>
<property name="icon">
<iconset resource="object_viewer_qt.qrc">
<normaloff>:/images/skip-forward.png</normaloff>:/images/skip-forward.png</iconset>
</property>
<property name="iconSize">
<size>
<width>28</width>
<height>28</height>
</size>
</property>
<property name="autoRaise">
<bool>true</bool>
</property>
</widget>
</item>
</layout>
</widget>
</widget>
<resources>
<include location="object_viewer_qt.qrc"/>
</resources>
<connections>
<connection>
<sender>currentSpinBox</sender>
<signal>valueChanged(int)</signal>
<receiver>horizontalSlider</receiver>
<slot>setValue(int)</slot>
<hints>
<hint type="sourcelabel">
<x>151</x>
<y>55</y>
</hint>
<hint type="destinationlabel">
<x>163</x>
<y>77</y>
</hint>
</hints>
</connection>
<connection>
<sender>horizontalSlider</sender>
<signal>valueChanged(int)</signal>
<receiver>currentSpinBox</receiver>
<slot>setValue(int)</slot>
<hints>
<hint type="sourcelabel">
<x>224</x>
<y>85</y>
</hint>
<hint type="destinationlabel">
<x>141</x>
<y>55</y>
</hint>
</hints>
</connection>
</connections>
</ui>
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>CAnimationDialog</class>
<widget class="QDockWidget" name="CAnimationDialog">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>609</width>
<height>102</height>
</rect>
</property>
<property name="sizePolicy">
<sizepolicy hsizetype="Fixed" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>609</width>
<height>102</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>524287</width>
<height>524287</height>
</size>
</property>
<property name="floating">
<bool>false</bool>
</property>
<property name="features">
<set>QDockWidget::AllDockWidgetFeatures</set>
</property>
<property name="allowedAreas">
<set>Qt::AllDockWidgetAreas</set>
</property>
<property name="windowTitle">
<string>Animation control</string>
</property>
<widget class="QWidget" name="dockWidgetContents">
<layout class="QGridLayout" name="gridLayout">
<property name="margin">
<number>3</number>
</property>
<property name="spacing">
<number>1</number>
</property>
<item row="0" column="0" colspan="11">
<layout class="QHBoxLayout" name="horizontalLayout_3">
<property name="spacing">
<number>1</number>
</property>
<item>
<widget class="QSlider" name="horizontalSlider">
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>16777215</height>
</size>
</property>
<property name="maximum">
<number>99</number>
</property>
<property name="pageStep">
<number>10</number>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="invertedAppearance">
<bool>false</bool>
</property>
<property name="invertedControls">
<bool>false</bool>
</property>
<property name="tickPosition">
<enum>QSlider::TicksBelow</enum>
</property>
<property name="tickInterval">
<number>10</number>
</property>
</widget>
</item>
<item>
<widget class="QSpinBox" name="currentSpinBox">
<property name="readOnly">
<bool>true</bool>
</property>
<property name="buttonSymbols">
<enum>QAbstractSpinBox::NoButtons</enum>
</property>
<property name="maximum">
<number>999999</number>
</property>
</widget>
</item>
</layout>
</item>
<item row="1" column="0">
<layout class="QHBoxLayout" name="horizontalLayout_2">
<property name="spacing">
<number>0</number>
</property>
<property name="sizeConstraint">
<enum>QLayout::SetMaximumSize</enum>
</property>
<property name="leftMargin">
<number>0</number>
</property>
<item>
<widget class="QSpinBox" name="startSpinBox">
<property name="buttonSymbols">
<enum>QAbstractSpinBox::UpDownArrows</enum>
</property>
<property name="keyboardTracking">
<bool>false</bool>
</property>
<property name="maximum">
<number>999999</number>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="loopCheckBox">
<property name="text">
<string>Loop</string>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="inPlaceCheckBox">
<property name="enabled">
<bool>true</bool>
</property>
<property name="text">
<string>In place</string>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="incPosCheckBox">
<property name="enabled">
<bool>true</bool>
</property>
<property name="text">
<string>Increment pos</string>
</property>
</widget>
</item>
<item>
<widget class="QSpinBox" name="endSpinBox">
<property name="keyboardTracking">
<bool>false</bool>
</property>
<property name="maximum">
<number>999999</number>
</property>
<property name="value">
<number>100</number>
</property>
</widget>
</item>
</layout>
</item>
<item row="1" column="2">
<widget class="QToolButton" name="playlistToolButton">
<property name="minimumSize">
<size>
<width>28</width>
<height>28</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>28</width>
<height>28</height>
</size>
</property>
<property name="toolTip">
<string>Use the PlayList</string>
</property>
<property name="text">
<string/>
</property>
<property name="icon">
<iconset resource="object_viewer_qt.qrc">
<normaloff>:/images/animset.png</normaloff>:/images/animset.png</iconset>
</property>
<property name="iconSize">
<size>
<width>25</width>
<height>25</height>
</size>
</property>
<property name="checkable">
<bool>true</bool>
</property>
<property name="checked">
<bool>true</bool>
</property>
<property name="autoExclusive">
<bool>true</bool>
</property>
<property name="autoRaise">
<bool>true</bool>
</property>
</widget>
</item>
<item row="1" column="3">
<widget class="QToolButton" name="mixerToolButton">
<property name="minimumSize">
<size>
<width>28</width>
<height>28</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>28</width>
<height>28</height>
</size>
</property>
<property name="toolTip">
<string>Use the Mixer</string>
</property>
<property name="text">
<string/>
</property>
<property name="icon">
<iconset resource="object_viewer_qt.qrc">
<normaloff>:/images/mixer.png</normaloff>:/images/mixer.png</iconset>
</property>
<property name="iconSize">
<size>
<width>25</width>
<height>25</height>
</size>
</property>
<property name="checkable">
<bool>true</bool>
</property>
<property name="autoExclusive">
<bool>true</bool>
</property>
<property name="autoRaise">
<bool>true</bool>
</property>
</widget>
</item>
<item row="1" column="5">
<widget class="QToolButton" name="startPushButton">
<property name="minimumSize">
<size>
<width>28</width>
<height>28</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>28</width>
<height>28</height>
</size>
</property>
<property name="text">
<string/>
</property>
<property name="icon">
<iconset resource="object_viewer_qt.qrc">
<normaloff>:/images/skip-backward.png</normaloff>:/images/skip-backward.png</iconset>
</property>
<property name="iconSize">
<size>
<width>25</width>
<height>25</height>
</size>
</property>
<property name="autoRaise">
<bool>true</bool>
</property>
</widget>
</item>
<item row="1" column="6">
<widget class="QToolButton" name="backwardPushButton">
<property name="minimumSize">
<size>
<width>28</width>
<height>28</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>28</width>
<height>28</height>
</size>
</property>
<property name="text">
<string/>
</property>
<property name="icon">
<iconset resource="object_viewer_qt.qrc">
<normaloff>:/images/seek-backward.png</normaloff>:/images/seek-backward.png</iconset>
</property>
<property name="iconSize">
<size>
<width>25</width>
<height>25</height>
</size>
</property>
<property name="shortcut">
<string/>
</property>
<property name="autoRaise">
<bool>true</bool>
</property>
</widget>
</item>
<item row="1" column="7">
<widget class="QToolButton" name="playPushButton">
<property name="minimumSize">
<size>
<width>28</width>
<height>28</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>28</width>
<height>28</height>
</size>
</property>
<property name="toolTip">
<string>Play/Pause</string>
</property>
<property name="text">
<string/>
</property>
<property name="icon">
<iconset resource="object_viewer_qt.qrc">
<normaloff>:/images/play.png</normaloff>
<normalon>:/images/pause.png</normalon>:/images/play.png</iconset>
</property>
<property name="iconSize">
<size>
<width>25</width>
<height>25</height>
</size>
</property>
<property name="checkable">
<bool>true</bool>
</property>
<property name="autoRaise">
<bool>true</bool>
</property>
</widget>
</item>
<item row="1" column="8">
<widget class="QToolButton" name="stopPushButton">
<property name="minimumSize">
<size>
<width>28</width>
<height>28</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>28</width>
<height>28</height>
</size>
</property>
<property name="toolTip">
<string>Stop</string>
</property>
<property name="text">
<string/>
</property>
<property name="icon">
<iconset resource="object_viewer_qt.qrc">
<normaloff>:/images/stop.png</normaloff>:/images/stop.png</iconset>
</property>
<property name="iconSize">
<size>
<width>25</width>
<height>25</height>
</size>
</property>
<property name="checkable">
<bool>false</bool>
</property>
<property name="autoRaise">
<bool>true</bool>
</property>
</widget>
</item>
<item row="1" column="9">
<widget class="QToolButton" name="forwardPushButton">
<property name="minimumSize">
<size>
<width>28</width>
<height>28</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>28</width>
<height>28</height>
</size>
</property>
<property name="text">
<string/>
</property>
<property name="icon">
<iconset resource="object_viewer_qt.qrc">
<normaloff>:/images/seek-forward.png</normaloff>:/images/seek-forward.png</iconset>
</property>
<property name="iconSize">
<size>
<width>25</width>
<height>25</height>
</size>
</property>
<property name="autoRaise">
<bool>true</bool>
</property>
</widget>
</item>
<item row="1" column="10">
<widget class="QToolButton" name="endPushButton">
<property name="minimumSize">
<size>
<width>28</width>
<height>28</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>28</width>
<height>28</height>
</size>
</property>
<property name="text">
<string/>
</property>
<property name="icon">
<iconset resource="object_viewer_qt.qrc">
<normaloff>:/images/skip-forward.png</normaloff>:/images/skip-forward.png</iconset>
</property>
<property name="iconSize">
<size>
<width>25</width>
<height>25</height>
</size>
</property>
<property name="autoRaise">
<bool>true</bool>
</property>
</widget>
</item>
<item row="1" column="4">
<widget class="Line" name="line">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="Line" name="line_2">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
</widget>
</item>
</layout>
</widget>
</widget>
<resources>
<include location="object_viewer_qt.qrc"/>
</resources>
<connections>
<connection>
<sender>currentSpinBox</sender>
<signal>valueChanged(int)</signal>
<receiver>horizontalSlider</receiver>
<slot>setValue(int)</slot>
<hints>
<hint type="sourcelabel">
<x>151</x>
<y>55</y>
</hint>
<hint type="destinationlabel">
<x>163</x>
<y>77</y>
</hint>
</hints>
</connection>
<connection>
<sender>horizontalSlider</sender>
<signal>valueChanged(int)</signal>
<receiver>currentSpinBox</receiver>
<slot>setValue(int)</slot>
<hints>
<hint type="sourcelabel">
<x>224</x>
<y>85</y>
</hint>
<hint type="destinationlabel">
<x>141</x>
<y>55</y>
</hint>
</hints>
</connection>
</connections>
</ui>

@ -43,10 +43,7 @@ CAnimationSetDialog::CAnimationSetDialog(QWidget *parent)
connect(ui.downToolButton, SIGNAL(clicked()), this, SLOT(downAnim()));
connect(ui.addAnimPushButton, SIGNAL(clicked()), this, SLOT(loadAnim()));
connect(ui.addSwtPushButton, SIGNAL(clicked()), this, SLOT(loadSwt()));
connect(ui.resetPushButton, SIGNAL(clicked()), this, SLOT(resetAnim()));
connect(ui.listRadioButton, SIGNAL(clicked(bool)), this, SLOT(setModeAnim()));
connect(ui.mixerRadioButton, SIGNAL(clicked(bool)), this, SLOT(setModeAnim()));
connect(ui.resetToolButton, SIGNAL(clicked()), this, SLOT(resetAnim()));
connect(ui.objectsComboBox, SIGNAL(currentIndexChanged(QString)), this, SLOT(setCurrentShape(QString)));
}
@ -68,19 +65,6 @@ void CAnimationSetDialog::setCurrentShape(const QString &name)
}
void CAnimationSetDialog::setModeAnim()
{
std::string curObj = Modules::objView().getCurrentObject();
if (curObj.empty())
return;
CEntity &entity = Modules::objView().getEntity(curObj);
if (ui.mixerRadioButton->isChecked())
entity.setMode(CEntity::Mode::Mixer);
else
entity.setMode(CEntity::Mode::PlayList);
}
void CAnimationSetDialog::updateListObject()
{
ui.objectsComboBox->clear();
@ -95,15 +79,15 @@ void CAnimationSetDialog::updateListObject()
{
ui.addAnimPushButton->setEnabled(false);
ui.addSwtPushButton->setEnabled(false);
ui.resetPushButton->setEnabled(false);
ui.setLengthPushButton->setEnabled(false);
ui.resetToolButton->setEnabled(false);
ui.setLengthToolButton->setEnabled(false);
}
else
{
ui.addAnimPushButton->setEnabled(true);
ui.addSwtPushButton->setEnabled(true);
ui.resetPushButton->setEnabled(true);
ui.setLengthPushButton->setEnabled(true);
ui.resetToolButton->setEnabled(true);
ui.setLengthToolButton->setEnabled(true);
}
}
@ -291,4 +275,4 @@ void CAnimationSetDialog::downAnim()
entity.swapAnimToPlayList(i, i + 1);
}
} /* namespace NLQT */
} /* namespace NLQT */

@ -66,7 +66,6 @@ public Q_SLOTS:
void setCurrentShape(const QString &name);
private Q_SLOTS:
void setModeAnim();
void loadAnim();
void loadSwt();
void resetAnim();

@ -1,477 +1,496 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>CAnimationSetDialog</class>
<widget class="QDockWidget" name="CAnimationSetDialog">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>300</width>
<height>576</height>
</rect>
</property>
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Minimum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>300</width>
<height>390</height>
</size>
</property>
<property name="windowIcon">
<iconset resource="object_viewer_qt.qrc">
<normaloff>:/images/animset.png</normaloff>:/images/animset.png</iconset>
</property>
<property name="windowTitle">
<string>Animation set manager</string>
</property>
<widget class="QWidget" name="dockWidgetContents">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>100</width>
<height>0</height>
</size>
</property>
<layout class="QGridLayout" name="gridLayout">
<property name="spacing">
<number>5</number>
</property>
<item row="0" column="0">
<layout class="QHBoxLayout" name="horizontalLayout_2">
<item>
<spacer name="horizontalSpacer">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Expanding</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QLabel" name="label">
<property name="text">
<string>Edited object:</string>
</property>
</widget>
</item>
</layout>
</item>
<item row="0" column="1">
<widget class="QComboBox" name="objectsComboBox">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>50</width>
<height>0</height>
</size>
</property>
</widget>
</item>
<item row="1" column="0" colspan="2">
<widget class="QSplitter" name="splitter_2">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<widget class="QSplitter" name="splitter">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<widget class="QWidget" name="layoutWidget">
<layout class="QVBoxLayout" name="verticalLayout_3">
<item>
<widget class="QLabel" name="label_3">
<property name="text">
<string>Animations:</string>
</property>
</widget>
</item>
<item>
<widget class="QTreeWidget" name="animTreeWidget">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>50</width>
<height>0</height>
</size>
</property>
<property name="dragEnabled">
<bool>false</bool>
</property>
<property name="dragDropMode">
<enum>QAbstractItemView::NoDragDrop</enum>
</property>
<property name="selectionMode">
<enum>QAbstractItemView::ExtendedSelection</enum>
</property>
<property name="columnCount">
<number>1</number>
</property>
<attribute name="headerVisible">
<bool>false</bool>
</attribute>
<column>
<property name="text">
<string notr="true">1</string>
</property>
</column>
</widget>
</item>
</layout>
</widget>
<widget class="QWidget" name="layoutWidget">
<layout class="QVBoxLayout" name="verticalLayout_2">
<item>
<widget class="QLabel" name="label_4">
<property name="text">
<string>Skeleton weight template:</string>
</property>
</widget>
</item>
<item>
<widget class="QTreeWidget" name="skeletonTreeWidget">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>50</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>5646546</height>
</size>
</property>
<attribute name="headerVisible">
<bool>false</bool>
</attribute>
<column>
<property name="text">
<string notr="true">1</string>
</property>
</column>
</widget>
</item>
</layout>
</widget>
</widget>
<widget class="QWidget" name="layoutWidget">
<layout class="QGridLayout" name="gridLayout_3">
<item row="0" column="0" colspan="4">
<widget class="QLabel" name="label_2">
<property name="text">
<string>Animations playlist:</string>
</property>
</widget>
</item>
<item row="1" column="0" colspan="5">
<widget class="QListWidget" name="animPlaylistWidget">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>50</width>
<height>0</height>
</size>
</property>
<property name="dragEnabled">
<bool>false</bool>
</property>
<property name="dragDropMode">
<enum>QAbstractItemView::NoDragDrop</enum>
</property>
<property name="defaultDropAction">
<enum>Qt::IgnoreAction</enum>
</property>
<property name="selectionMode">
<enum>QAbstractItemView::ContiguousSelection</enum>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QToolButton" name="addToolButton">
<property name="enabled">
<bool>false</bool>
</property>
<property name="text">
<string>...</string>
</property>
<property name="icon">
<iconset resource="object_viewer_qt.qrc">
<normaloff>:/images/list-add.png</normaloff>:/images/list-add.png</iconset>
</property>
<property name="iconSize">
<size>
<width>20</width>
<height>20</height>
</size>
</property>
</widget>
</item>
<item row="2" column="1">
<widget class="QToolButton" name="removeToolButton">
<property name="enabled">
<bool>false</bool>
</property>
<property name="text">
<string>...</string>
</property>
<property name="icon">
<iconset resource="object_viewer_qt.qrc">
<normaloff>:/images/list-remove.png</normaloff>:/images/list-remove.png</iconset>
</property>
<property name="iconSize">
<size>
<width>20</width>
<height>20</height>
</size>
</property>
</widget>
</item>
<item row="2" column="2">
<widget class="QToolButton" name="upToolButton">
<property name="enabled">
<bool>false</bool>
</property>
<property name="text">
<string>...</string>
</property>
<property name="icon">
<iconset resource="object_viewer_qt.qrc">
<normaloff>:/images/go-up.png</normaloff>:/images/go-up.png</iconset>
</property>
<property name="iconSize">
<size>
<width>20</width>
<height>20</height>
</size>
</property>
</widget>
</item>
<item row="2" column="3">
<widget class="QToolButton" name="downToolButton">
<property name="enabled">
<bool>false</bool>
</property>
<property name="text">
<string>...</string>
</property>
<property name="icon">
<iconset resource="object_viewer_qt.qrc">
<normaloff>:/images/go-down.png</normaloff>:/images/go-down.png</iconset>
</property>
<property name="iconSize">
<size>
<width>20</width>
<height>20</height>
</size>
</property>
</widget>
</item>
<item row="2" column="4">
<spacer name="horizontalSpacer_2">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
</widget>
</item>
<item row="2" column="0">
<layout class="QGridLayout" name="gridLayout_2">
<item row="0" column="0">
<widget class="QPushButton" name="addAnimPushButton">
<property name="enabled">
<bool>false</bool>
</property>
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>16777215</height>
</size>
</property>
<property name="text">
<string>Add anim</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QPushButton" name="addSwtPushButton">
<property name="enabled">
<bool>false</bool>
</property>
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>16777215</height>
</size>
</property>
<property name="text">
<string>Add swt</string>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QPushButton" name="resetPushButton">
<property name="enabled">
<bool>false</bool>
</property>
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>16777215</height>
</size>
</property>
<property name="text">
<string>Reset</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QPushButton" name="setLengthPushButton">
<property name="enabled">
<bool>false</bool>
</property>
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>16777215</height>
</size>
</property>
<property name="text">
<string>Set anim length</string>
</property>
</widget>
</item>
</layout>
</item>
<item row="2" column="1">
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<widget class="QRadioButton" name="listRadioButton">
<property name="text">
<string>Use the list</string>
</property>
<property name="checked">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<widget class="QRadioButton" name="mixerRadioButton">
<property name="enabled">
<bool>true</bool>
</property>
<property name="text">
<string>Use the mixer</string>
</property>
</widget>
</item>
</layout>
</item>
</layout>
</widget>
</widget>
<resources>
<include location="object_viewer_qt.qrc"/>
</resources>
<connections/>
</ui>
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>CAnimationSetDialog</class>
<widget class="QDockWidget" name="CAnimationSetDialog">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>330</width>
<height>618</height>
</rect>
</property>
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Minimum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>300</width>
<height>390</height>
</size>
</property>
<property name="windowIcon">
<iconset resource="object_viewer_qt.qrc">
<normaloff>:/images/animset.png</normaloff>:/images/animset.png</iconset>
</property>
<property name="windowTitle">
<string>Animation set manager</string>
</property>
<widget class="QWidget" name="dockWidgetContents">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>100</width>
<height>0</height>
</size>
</property>
<layout class="QGridLayout" name="gridLayout">
<item row="0" column="0">
<layout class="QHBoxLayout" name="horizontalLayout_2">
<item>
<spacer name="horizontalSpacer">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Expanding</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QLabel" name="label">
<property name="text">
<string>Edited object:</string>
</property>
</widget>
</item>
</layout>
</item>
<item row="0" column="1">
<widget class="QComboBox" name="objectsComboBox">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>50</width>
<height>0</height>
</size>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QSplitter" name="splitter">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<widget class="QWidget" name="layoutWidget">
<layout class="QVBoxLayout" name="verticalLayout_3">
<item>
<widget class="QLabel" name="label_3">
<property name="text">
<string>Animations:</string>
</property>
</widget>
</item>
<item>
<widget class="QTreeWidget" name="animTreeWidget">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="dragEnabled">
<bool>false</bool>
</property>
<property name="dragDropMode">
<enum>QAbstractItemView::NoDragDrop</enum>
</property>
<property name="selectionMode">
<enum>QAbstractItemView::ExtendedSelection</enum>
</property>
<property name="columnCount">
<number>1</number>
</property>
<attribute name="headerVisible">
<bool>false</bool>
</attribute>
<column>
<property name="text">
<string notr="true">1</string>
</property>
</column>
</widget>
</item>
<item>
<widget class="QPushButton" name="addAnimPushButton">
<property name="enabled">
<bool>false</bool>
</property>
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>16777215</height>
</size>
</property>
<property name="text">
<string>Add anim</string>
</property>
</widget>
</item>
</layout>
</widget>
<widget class="QWidget" name="layoutWidget">
<layout class="QVBoxLayout" name="verticalLayout_2">
<item>
<widget class="QLabel" name="label_4">
<property name="text">
<string>Skeleton weight template:</string>
</property>
</widget>
</item>
<item>
<widget class="QTreeWidget" name="skeletonTreeWidget">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>16777215</height>
</size>
</property>
<attribute name="headerVisible">
<bool>false</bool>
</attribute>
<column>
<property name="text">
<string notr="true">1</string>
</property>
</column>
</widget>
</item>
<item>
<widget class="QPushButton" name="addSwtPushButton">
<property name="enabled">
<bool>false</bool>
</property>
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>16777215</height>
</size>
</property>
<property name="text">
<string>Add swt</string>
</property>
</widget>
</item>
</layout>
</widget>
</widget>
</item>
<item row="1" column="1">
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<widget class="QLabel" name="label_2">
<property name="text">
<string>Animations playlist:</string>
</property>
</widget>
</item>
<item>
<widget class="QListWidget" name="animPlaylistWidget">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="dragEnabled">
<bool>false</bool>
</property>
<property name="dragDropMode">
<enum>QAbstractItemView::NoDragDrop</enum>
</property>
<property name="defaultDropAction">
<enum>Qt::IgnoreAction</enum>
</property>
<property name="selectionMode">
<enum>QAbstractItemView::ContiguousSelection</enum>
</property>
</widget>
</item>
</layout>
</item>
<item row="2" column="0" colspan="2">
<layout class="QHBoxLayout" name="horizontalLayout">
<item>
<widget class="QToolButton" name="resetToolButton">
<property name="enabled">
<bool>false</bool>
</property>
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>16777215</height>
</size>
</property>
<property name="toolTip">
<string>Unload all anim and swt files</string>
</property>
<property name="text">
<string/>
</property>
<property name="icon">
<iconset resource="object_viewer_qt.qrc">
<normaloff>:/images/clear.png</normaloff>:/images/clear.png</iconset>
</property>
<property name="iconSize">
<size>
<width>24</width>
<height>24</height>
</size>
</property>
<property name="autoRaise">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<spacer name="horizontalSpacer_2">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="Line" name="line">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
</widget>
</item>
<item>
<widget class="QToolButton" name="addToolButton">
<property name="enabled">
<bool>false</bool>
</property>
<property name="toolTip">
<string>Add anim in PlayList</string>
</property>
<property name="text">
<string/>
</property>
<property name="icon">
<iconset resource="object_viewer_qt.qrc">
<normaloff>:/images/list-add.png</normaloff>:/images/list-add.png</iconset>
</property>
<property name="iconSize">
<size>
<width>24</width>
<height>24</height>
</size>
</property>
<property name="autoRaise">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<widget class="QToolButton" name="removeToolButton">
<property name="enabled">
<bool>false</bool>
</property>
<property name="toolTip">
<string>Delete anim from PlayList</string>
</property>
<property name="text">
<string/>
</property>
<property name="icon">
<iconset resource="object_viewer_qt.qrc">
<normaloff>:/images/list-remove.png</normaloff>:/images/list-remove.png</iconset>
</property>
<property name="iconSize">
<size>
<width>24</width>
<height>24</height>
</size>
</property>
<property name="autoRaise">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<widget class="QToolButton" name="upToolButton">
<property name="enabled">
<bool>false</bool>
</property>
<property name="text">
<string/>
</property>
<property name="icon">
<iconset resource="object_viewer_qt.qrc">
<normaloff>:/images/go-up.png</normaloff>:/images/go-up.png</iconset>
</property>
<property name="iconSize">
<size>
<width>24</width>
<height>24</height>
</size>
</property>
<property name="autoRaise">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<widget class="QToolButton" name="downToolButton">
<property name="enabled">
<bool>false</bool>
</property>
<property name="text">
<string/>
</property>
<property name="icon">
<iconset resource="object_viewer_qt.qrc">
<normaloff>:/images/go-down.png</normaloff>:/images/go-down.png</iconset>
</property>
<property name="iconSize">
<size>
<width>24</width>
<height>24</height>
</size>
</property>
<property name="autoRaise">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<widget class="QToolButton" name="setLengthToolButton">
<property name="enabled">
<bool>false</bool>
</property>
<property name="sizePolicy">
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>16777215</height>
</size>
</property>
<property name="toolTip">
<string>Set duration of time in Animation control</string>
</property>
<property name="text">
<string/>
</property>
<property name="icon">
<iconset resource="object_viewer_qt.qrc">
<normaloff>:/images/time.png</normaloff>:/images/time.png</iconset>
</property>
<property name="iconSize">
<size>
<width>24</width>
<height>24</height>
</size>
</property>
<property name="autoRaise">
<bool>true</bool>
</property>
</widget>
</item>
</layout>
</item>
</layout>
</widget>
</widget>
<resources>
<include location="object_viewer_qt.qrc"/>
</resources>
<connections/>
</ui>

@ -1,299 +1,299 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>CEmitterPage</class>
<widget class="QWidget" name="CEmitterPage">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>349</width>
<height>393</height>
</rect>
</property>
<property name="windowTitle">
<string>Form</string>
</property>
<layout class="QGridLayout" name="gridLayout_3">
<property name="margin">
<number>6</number>
</property>
<item row="0" column="0">
<widget class="QTabWidget" name="tabWidget">
<property name="enabled">
<bool>true</bool>
</property>
<property name="tabPosition">
<enum>QTabWidget::East</enum>
</property>
<property name="currentIndex">
<number>0</number>
</property>
<property name="movable">
<bool>true</bool>
</property>
<widget class="QWidget" name="tabWidgetPage1">
<attribute name="title">
<string>General</string>
</attribute>
<layout class="QGridLayout" name="gridLayout_4">
<property name="spacing">
<number>5</number>
</property>
<item row="0" column="0" colspan="3">
<layout class="QGridLayout" name="gridLayout">
<item row="0" column="0">
<widget class="QLabel" name="label">
<property name="text">
<string>Emitted type:</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QComboBox" name="emittedTypeComboBox"/>
</item>
<item row="1" column="0">
<widget class="QLabel" name="label_2">
<property name="text">
<string>Type of emission:</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QComboBox" name="typeEmissionComboBox">
<item>
<property name="text">
<string>Regular</string>
</property>
</item>
<item>
<property name="text">
<string>On death</string>
</property>
</item>
<item>
<property name="text">
<string>Once</string>
</property>
</item>
<item>
<property name="text">
<string>On bounce</string>
</property>
</item>
<item>
<property name="text">
<string>External only</string>
</property>
</item>
</widget>
</item>
</layout>
</item>
<item row="1" column="0">
<widget class="QLabel" name="label_6">
<property name="text">
<string>Direction:</string>
</property>
</widget>
</item>
<item row="1" column="1" colspan="2">
<widget class="QComboBox" name="directionComboBox">
<item>
<property name="text">
<string>Default</string>
</property>
</item>
<item>
<property name="text">
<string>Direction is aligned on the emitter direction</string>
</property>
</item>
<item>
<property name="text">
<string>Direction is in world</string>
</property>
</item>
<item>
<property name="text">
<string>Direction is local to the system</string>
</property>
</item>
<item>
<property name="text">
<string>User</string>
</property>
</item>
</widget>
</item>
<item row="2" column="0" colspan="2">
<widget class="QCheckBox" name="forceConsistentCheckBox">
<property name="text">
<string>Force consistent emission</string>
</property>
</widget>
</item>
<item row="3" column="0" colspan="2">
<widget class="QCheckBox" name="bypassAutoLODCheckBox">
<property name="text">
<string>Bypass Auto-LOD</string>
</property>
</widget>
</item>
<item row="4" column="0" colspan="2">
<widget class="QLabel" name="label_7">
<property name="text">
<string>Speed inheritance factor:</string>
</property>
</widget>
</item>
<item row="5" column="0" colspan="3">
<widget class="NLQT::CEditRangeFloatWidget" name="speedInherFactorWidget" native="true"/>
</item>
<item row="6" column="0" colspan="2">
<widget class="QLabel" name="delayedEmissionLabel">
<property name="text">
<string>Delayed emission:</string>
</property>
</widget>
</item>
<item row="7" column="0" colspan="3">
<widget class="NLQT::CEditRangeFloatWidget" name="delayedEmissionWidget" native="true"/>
</item>
<item row="8" column="0" colspan="2">
<widget class="QLabel" name="maxEmissinCountLabel">
<property name="text">
<string>Max Emission Count:</string>
</property>
</widget>
</item>
<item row="9" column="0" colspan="3">
<widget class="NLQT::CEditRangeUIntWidget" name="maxEmissionCountWidget" native="true"/>
</item>
<item row="10" column="0" colspan="3">
<widget class="NLQT::CDirectionWidget" name="directionWidget" native="true"/>
</item>
<item row="11" column="0">
<widget class="QLabel" name="radiusLabel">
<property name="text">
<string>Radius:</string>
</property>
</widget>
</item>
<item row="12" column="0" rowspan="2" colspan="3">
<widget class="NLQT::CEditRangeFloatWidget" name="radiusWidget" native="true"/>
</item>
<item row="14" column="0">
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>17</width>
<height>143</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
<widget class="QWidget" name="tabWidgetPage2">
<attribute name="title">
<string>Emission period</string>
</attribute>
<layout class="QGridLayout" name="gridLayout_2">
<item row="1" column="0">
<spacer name="verticalSpacer_2">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>291</height>
</size>
</property>
</spacer>
</item>
<item row="0" column="0">
<widget class="NLQT::CAttribFloatWidget" name="periodWidget">
<property name="title">
<string>Emmision period</string>
</property>
</widget>
</item>
</layout>
</widget>
<widget class="QWidget" name="tabWidgetPage3">
<attribute name="title">
<string>Emmision quantity/Speed</string>
</attribute>
<layout class="QGridLayout" name="gridLayout_5">
<item row="0" column="0">
<widget class="NLQT::CAttribUIntWidget" name="genNbWidget">
<property name="title">
<string>Emmision quantity</string>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="NLQT::CAttribFloatWidget" name="strenghtModulateWidget">
<property name="title">
<string>Strenght modulation</string>
</property>
</widget>
</item>
<item row="2" column="0">
<spacer name="verticalSpacer_3">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>275</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
</widget>
</item>
</layout>
</widget>
<customwidgets>
<customwidget>
<class>NLQT::CEditRangeUIntWidget</class>
<extends>QWidget</extends>
<header>edit_range_widget.h</header>
<container>1</container>
</customwidget>
<customwidget>
<class>NLQT::CEditRangeFloatWidget</class>
<extends>QWidget</extends>
<header>edit_range_widget.h</header>
<container>1</container>
</customwidget>
<customwidget>
<class>NLQT::CDirectionWidget</class>
<extends>QWidget</extends>
<header>direction_widget.h</header>
<container>1</container>
</customwidget>
<customwidget>
<class>NLQT::CAttribFloatWidget</class>
<extends>QGroupBox</extends>
<header>attrib_widget.h</header>
<container>1</container>
</customwidget>
<customwidget>
<class>NLQT::CAttribUIntWidget</class>
<extends>QGroupBox</extends>
<header>attrib_widget.h</header>
<container>1</container>
</customwidget>
</customwidgets>
<resources/>
<connections/>
</ui>
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>CEmitterPage</class>
<widget class="QWidget" name="CEmitterPage">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>352</width>
<height>393</height>
</rect>
</property>
<property name="windowTitle">
<string>Form</string>
</property>
<layout class="QGridLayout" name="gridLayout_3">
<property name="margin">
<number>6</number>
</property>
<item row="0" column="0">
<widget class="QTabWidget" name="tabWidget">
<property name="enabled">
<bool>true</bool>
</property>
<property name="tabPosition">
<enum>QTabWidget::East</enum>
</property>
<property name="currentIndex">
<number>1</number>
</property>
<property name="movable">
<bool>true</bool>
</property>
<widget class="QWidget" name="tabWidgetPage1">
<attribute name="title">
<string>General</string>
</attribute>
<layout class="QGridLayout" name="gridLayout_4">
<property name="spacing">
<number>5</number>
</property>
<item row="0" column="0" colspan="3">
<layout class="QGridLayout" name="gridLayout">
<item row="0" column="0">
<widget class="QLabel" name="label">
<property name="text">
<string>Emitted type:</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QComboBox" name="emittedTypeComboBox"/>
</item>
<item row="1" column="0">
<widget class="QLabel" name="label_2">
<property name="text">
<string>Type of emission:</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QComboBox" name="typeEmissionComboBox">
<item>
<property name="text">
<string>Regular</string>
</property>
</item>
<item>
<property name="text">
<string>On death</string>
</property>
</item>
<item>
<property name="text">
<string>Once</string>
</property>
</item>
<item>
<property name="text">
<string>On bounce</string>
</property>
</item>
<item>
<property name="text">
<string>External only</string>
</property>
</item>
</widget>
</item>
</layout>
</item>
<item row="1" column="0">
<widget class="QLabel" name="label_6">
<property name="text">
<string>Direction:</string>
</property>
</widget>
</item>
<item row="1" column="1" colspan="2">
<widget class="QComboBox" name="directionComboBox">
<item>
<property name="text">
<string>Default</string>
</property>
</item>
<item>
<property name="text">
<string>Direction is aligned on the emitter direction</string>
</property>
</item>
<item>
<property name="text">
<string>Direction is in world</string>
</property>
</item>
<item>
<property name="text">
<string>Direction is local to the system</string>
</property>
</item>
<item>
<property name="text">
<string>User</string>
</property>
</item>
</widget>
</item>
<item row="2" column="0" colspan="2">
<widget class="QCheckBox" name="forceConsistentCheckBox">
<property name="text">
<string>Force consistent emission</string>
</property>
</widget>
</item>
<item row="3" column="0" colspan="2">
<widget class="QCheckBox" name="bypassAutoLODCheckBox">
<property name="text">
<string>Bypass Auto-LOD</string>
</property>
</widget>
</item>
<item row="4" column="0" colspan="2">
<widget class="QLabel" name="label_7">
<property name="text">
<string>Speed inheritance factor:</string>
</property>
</widget>
</item>
<item row="5" column="0" colspan="3">
<widget class="NLQT::CEditRangeFloatWidget" name="speedInherFactorWidget" native="true"/>
</item>
<item row="6" column="0" colspan="2">
<widget class="QLabel" name="delayedEmissionLabel">
<property name="text">
<string>Delayed emission:</string>
</property>
</widget>
</item>
<item row="7" column="0" colspan="3">
<widget class="NLQT::CEditRangeFloatWidget" name="delayedEmissionWidget" native="true"/>
</item>
<item row="8" column="0" colspan="2">
<widget class="QLabel" name="maxEmissinCountLabel">
<property name="text">
<string>Max Emission Count:</string>
</property>
</widget>
</item>
<item row="9" column="0" colspan="3">
<widget class="NLQT::CEditRangeUIntWidget" name="maxEmissionCountWidget" native="true"/>
</item>
<item row="10" column="0" colspan="3">
<widget class="NLQT::CDirectionWidget" name="directionWidget" native="true"/>
</item>
<item row="11" column="0">
<widget class="QLabel" name="radiusLabel">
<property name="text">
<string>Radius:</string>
</property>
</widget>
</item>
<item row="12" column="0" rowspan="2" colspan="3">
<widget class="NLQT::CEditRangeFloatWidget" name="radiusWidget" native="true"/>
</item>
<item row="14" column="0">
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>17</width>
<height>143</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
<widget class="QWidget" name="tabWidgetPage2">
<attribute name="title">
<string>Emission period</string>
</attribute>
<layout class="QGridLayout" name="gridLayout_2">
<item row="1" column="0">
<spacer name="verticalSpacer_2">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>291</height>
</size>
</property>
</spacer>
</item>
<item row="0" column="0">
<widget class="NLQT::CAttribFloatWidget" name="periodWidget">
<property name="title">
<string>Emission period</string>
</property>
</widget>
</item>
</layout>
</widget>
<widget class="QWidget" name="tabWidgetPage3">
<attribute name="title">
<string>Emission quantity/Speed</string>
</attribute>
<layout class="QGridLayout" name="gridLayout_5">
<item row="0" column="0">
<widget class="NLQT::CAttribUIntWidget" name="genNbWidget">
<property name="title">
<string>Emission quantity</string>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="NLQT::CAttribFloatWidget" name="strenghtModulateWidget">
<property name="title">
<string>Strenght modulation</string>
</property>
</widget>
</item>
<item row="2" column="0">
<spacer name="verticalSpacer_3">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>275</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
</widget>
</item>
</layout>
</widget>
<customwidgets>
<customwidget>
<class>NLQT::CEditRangeUIntWidget</class>
<extends>QWidget</extends>
<header>edit_range_widget.h</header>
<container>1</container>
</customwidget>
<customwidget>
<class>NLQT::CEditRangeFloatWidget</class>
<extends>QWidget</extends>
<header>edit_range_widget.h</header>
<container>1</container>
</customwidget>
<customwidget>
<class>NLQT::CAttribFloatWidget</class>
<extends>QGroupBox</extends>
<header>attrib_widget.h</header>
<container>1</container>
</customwidget>
<customwidget>
<class>NLQT::CDirectionWidget</class>
<extends>QWidget</extends>
<header>direction_widget.h</header>
<container>1</container>
</customwidget>
<customwidget>
<class>NLQT::CAttribUIntWidget</class>
<extends>QGroupBox</extends>
<header>attrib_widget.h</header>
<container>1</container>
</customwidget>
</customwidgets>
<resources/>
<connections/>
</ui>

@ -135,7 +135,7 @@ CLocatedBindablePage::CLocatedBindablePage(QWidget *parent)
connect(_ui.autoLodCheckBox, SIGNAL(toggled(bool)), this, SLOT(setAutoLOD(bool)));
connect(_ui.globalColorLightingCheckBox, SIGNAL(toggled(bool)), this, SLOT(setGlobalColorLight(bool)));
connect(_ui.independantSizeCheckBox, SIGNAL(toggled(bool)), this, SLOT(setIndependantSize(bool)));
connect(_ui.independentSizeCheckBox, SIGNAL(toggled(bool)), this, SLOT(setIndependantSize(bool)));
connect(_ui.alignCheckBox, SIGNAL(toggled(bool)), this, SLOT(setAlignOnMotion(bool)));
connect(_ui.ztestCheckBox, SIGNAL(toggled(bool)), this, SLOT(setZTest(bool)));
connect(_ui.zalignCheckBox, SIGNAL(toggled(bool)), this, SLOT(setZAlign(bool)));
@ -283,18 +283,18 @@ void CLocatedBindablePage::setEditedItem(CWorkspaceNode *ownerNode, NL3D::CPSLoc
_ui.zalignCheckBox->setChecked(fla->getAlignOnZAxis());
// 'look at' independant sizes
_ui.independantSizeCheckBox->setChecked(fla->hasIndependantSizes());
_ui.independentSizeCheckBox->setChecked(fla->hasIndependantSizes());
_ui.independantSizeCheckBox->show();
_ui.independantGroupBox->show();
_ui.independentSizeCheckBox->show();
_ui.independentGroupBox->show();
// Add Look at page in tabWidget
_ui.tabWidget->addTab(_ui.lookAtPage, tr("Look At param"));
}
else
{
_ui.independantSizeCheckBox->hide();
_ui.independantGroupBox->hide();
_ui.independentSizeCheckBox->hide();
_ui.independentGroupBox->hide();
}
// Shock wave page setup
@ -495,7 +495,7 @@ void CLocatedBindablePage::setIndependantSize(bool state)
la->setIndependantSizes(state);
updateModifiedFlag();
}
_ui.independantGroupBox->setEnabled(state);
_ui.independentGroupBox->setEnabled(state);
updateSizeControl();
}
@ -683,4 +683,4 @@ void CLocatedBindablePage::touchPSState()
}
}
} /* namespace NLQT */
} /* namespace NLQT */

@ -21,6 +21,9 @@
// Qt includes
#include <QtCore/QDir>
#include <QtCore/QTranslator>
#include <QtCore/QLibraryInfo>
#include <QtCore/QLocale>
#include <QtCore/QSettings>
#include <QtGui/QMessageBox>
#include <QtGui/QApplication>
@ -102,23 +105,30 @@ sint main(int argc, char **argv)
#endif
nlinfo("Welcome to NeL Object Viewer Qt!");
NLMISC::CPath::remapExtension("tga", "png", true);
}
QApplication app(argc, argv);
QSplashScreen *splash = new QSplashScreen();
splash->setPixmap(QPixmap(":/images/nel_ide_load.png"));
splash->show();
QSettings *settings = new QSettings(QSettings::IniFormat, QSettings::UserScope,
QLatin1String("Ryzom Core"), QLatin1String("ObjectViewerQt"));
QTranslator translator;
QTranslator qtTranslator;
QString locale = settings->value("Language", QLocale::system().name()).toString();
QString qtTrPath = QLibraryInfo::location(QLibraryInfo::TranslationsPath);
translator.load("object_viewer_qt_" + locale, ":/translations");
qtTranslator.load("qt_" + locale, qtTrPath);
app.installTranslator(&translator);
app.installTranslator(&qtTranslator);
#if defined(NL_OS_MAC)
QDir::setCurrent(qApp->applicationDirPath() + QString("/../Resources"));
CLibrary::addLibPath((qApp->applicationDirPath() + QString("/../PlugIns/nel")).toStdString());
#endif
Modules::init();
QSettings *settings = new QSettings(QSettings::IniFormat, QSettings::UserScope,
QLatin1String("Ryzom Core"), QLatin1String("ObjectViewerQt"));
Modules::plugMan().setSettings(settings);

@ -504,7 +504,7 @@ void CMainWindow::createDialogs()
connect(_ParticleControlDialog, SIGNAL(changeState()), _ParticleWorkspaceDialog, SLOT(setNewState()));
connect(_ParticleWorkspaceDialog, SIGNAL(changeActiveNode()), _ParticleControlDialog, SLOT(updateActiveNode()));
connect(_AnimationSetDialog->ui.setLengthPushButton, SIGNAL(clicked()), _AnimationDialog, SLOT(changeAnimLength()));
connect(_AnimationSetDialog->ui.setLengthToolButton, SIGNAL(clicked()), _AnimationDialog, SLOT(changeAnimLength()));
connect(_AnimationSetDialog, SIGNAL(changeCurrentShape(QString)), _SkeletonTreeModel, SLOT(rebuildModel()));
connect(_AnimationSetDialog, SIGNAL(changeCurrentShape(QString)), _SkeletonScaleDialog, SLOT(setCurrentShape(QString)));
connect(_AnimationSetDialog, SIGNAL(changeCurrentShape(QString)), _AnimationDialog, SLOT(setCurrentShape(QString)));

@ -1,61 +1,62 @@
<RCC>
<qresource>
<file>images/nel.png</file>
<file>images/open-file.png</file>
<file>images/go-down.png</file>
<file>images/go-up.png</file>
<file>images/list-add.png</file>
<file>images/list-remove.png</file>
<file>images/play.png</file>
<file>images/pause.png</file>
<file>images/stop.png</file>
<file>images/seek-backward.png</file>
<file>images/seek-forward.png</file>
<file>images/skip-backward.png</file>
<file>images/skip-forward.png</file>
<file>images/preferences.png</file>
<file>images/time.png</file>
<file>images/anim.png</file>
<file>images/animset.png</file>
<file>images/dqynight.png</file>
<file>images/mixer.png</file>
<file>images/pqrticles.png</file>
<file>images/sound.png</file>
<file>images/veget.png</file>
<file>images/water.png</file>
<file>images/wind.png</file>
<file>images/ico_bgcolor.png</file>
<file>images/ico_framedelay.png</file>
<file>images/ico_skelscale.png</file>
<file>images/ico_mrm_mesh.png</file>
<file>images/ico_light_group.png</file>
<file>images/clear.png</file>
<file>images/insert.png</file>
<file>images/new.png</file>
<file>images/refresh.png</file>
<file>images/save-as.png</file>
<file>images/save.png</file>
<file>images/insert-horizontal.png</file>
<file>images/polymode.png</file>
<file>images/rmfill.png</file>
<file>images/rmline.png</file>
<file>images/rmpoints.png</file>
<file>images/cam_del.png</file>
<file>images/cam_add.png</file>
<file>images/Emitter.bmp</file>
<file>images/Force.bmp</file>
<file>images/nel_ide_load.png</file>
<file>images/bad_particle_system_item.png</file>
<file>images/particle_system_item.png</file>
<file>images/instance_item.png</file>
<file>images/light_item.png</file>
<file>images/located_item.png</file>
<file>images/particle_item.png</file>
<file>images/sound_item.png</file>
<file>images/workspace_item.png</file>
<file>images/collision_zone_item.png</file>
</qresource>
<qresource prefix="/">
<file>images/nel.png</file>
<file>images/open-file.png</file>
<file>images/go-down.png</file>
<file>images/go-up.png</file>
<file>images/list-add.png</file>
<file>images/list-remove.png</file>
<file>images/play.png</file>
<file>images/pause.png</file>
<file>images/stop.png</file>
<file>images/seek-backward.png</file>
<file>images/seek-forward.png</file>
<file>images/skip-backward.png</file>
<file>images/skip-forward.png</file>
<file>images/preferences.png</file>
<file>images/time.png</file>
<file>images/anim.png</file>
<file>images/animset.png</file>
<file>images/dqynight.png</file>
<file>images/mixer.png</file>
<file>images/pqrticles.png</file>
<file>images/sound.png</file>
<file>images/veget.png</file>
<file>images/water.png</file>
<file>images/wind.png</file>
<file>images/ico_bgcolor.png</file>
<file>images/ico_framedelay.png</file>
<file>images/ico_skelscale.png</file>
<file>images/ico_mrm_mesh.png</file>
<file>images/ico_light_group.png</file>
<file>images/clear.png</file>
<file>images/insert.png</file>
<file>images/new.png</file>
<file>images/refresh.png</file>
<file>images/save-as.png</file>
<file>images/save.png</file>
<file>images/insert-horizontal.png</file>
<file>images/polymode.png</file>
<file>images/rmfill.png</file>
<file>images/rmline.png</file>
<file>images/rmpoints.png</file>
<file>images/cam_del.png</file>
<file>images/cam_add.png</file>
<file>images/Emitter.bmp</file>
<file>images/Force.bmp</file>
<file>images/nel_ide_load.png</file>
<file>images/bad_particle_system_item.png</file>
<file>images/particle_system_item.png</file>
<file>images/instance_item.png</file>
<file>images/light_item.png</file>
<file>images/located_item.png</file>
<file>images/particle_item.png</file>
<file>images/sound_item.png</file>
<file>images/workspace_item.png</file>
<file>images/collision_zone_item.png</file>
<file>translations/object_viewer_qt_en.qm</file>
<file>translations/object_viewer_qt_fr.qm</file>
<file>translations/object_viewer_qt_de.qm</file>
<file>translations/object_viewer_qt_ru.qm</file>
</qresource>
</RCC>

@ -6,178 +6,152 @@
<rect>
<x>0</x>
<y>0</y>
<width>243</width>
<height>451</height>
<width>212</width>
<height>335</height>
</rect>
</property>
<property name="windowTitle">
<string>Form</string>
</property>
<layout class="QGridLayout" name="gridLayout">
<property name="margin">
<property name="leftMargin">
<number>6</number>
</property>
<property name="topMargin">
<number>6</number>
</property>
<property name="bottomMargin">
<number>6</number>
</property>
<property name="spacing">
<number>3</number>
</property>
<item row="0" column="0">
<widget class="QTabWidget" name="tabWidget">
<property name="tabPosition">
<enum>QTabWidget::East</enum>
</property>
<property name="currentIndex">
<number>0</number>
</property>
<widget class="QWidget" name="tabWidgetPage1">
<attribute name="title">
<string>Target</string>
</attribute>
<layout class="QGridLayout" name="gridLayout_2">
<property name="spacing">
<number>3</number>
</property>
<item row="0" column="0">
<widget class="QLabel" name="label_2">
<property name="text">
<string>Targets:</string>
</property>
</widget>
</item>
<item row="0" column="2">
<widget class="QLabel" name="label_3">
<property name="text">
<string>Avaible targets:</string>
</property>
</widget>
</item>
<item row="1" column="0" rowspan="4">
<widget class="QListWidget" name="targetsListWidget"/>
</item>
<item row="1" column="1">
<spacer name="verticalSpacer_3">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>57</height>
</size>
</property>
</spacer>
</item>
<item row="1" column="2" rowspan="4">
<widget class="QListWidget" name="avaibleTargetsListWidget"/>
</item>
<item row="2" column="1">
<widget class="QPushButton" name="toTargetsPushButton">
<property name="maximumSize">
<size>
<width>30</width>
<height>16777215</height>
</size>
</property>
<property name="text">
<string>&lt;</string>
</property>
</widget>
</item>
<item row="3" column="1">
<widget class="QPushButton" name="toAvaibleTargetsPushButton">
<property name="maximumSize">
<size>
<width>30</width>
<height>16777215</height>
</size>
</property>
<property name="text">
<string>&gt;</string>
</property>
</widget>
</item>
<item row="4" column="1">
<spacer name="verticalSpacer_2">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>56</height>
</size>
</property>
</spacer>
</item>
<item row="5" column="0" colspan="3">
<widget class="NLQT::CDirectionWidget" name="directionWidget" native="true"/>
</item>
<item row="6" column="0" colspan="3">
<widget class="QLabel" name="parametricFactorLabel">
<property name="text">
<string>Parametric factor:</string>
</property>
</widget>
</item>
<item row="7" column="0" colspan="3">
<widget class="NLQT::CEditRangeFloatWidget" name="parametricFactorWidget" native="true"/>
</item>
<item row="8" column="0" colspan="2">
<widget class="QLabel" name="radialViscosityLabel">
<property name="text">
<string>Radial viscosity:</string>
</property>
</widget>
</item>
<item row="9" column="0" colspan="3">
<widget class="NLQT::CEditRangeFloatWidget" name="radialViscosityWidget" native="true"/>
</item>
<item row="10" column="0" colspan="2">
<widget class="QLabel" name="tangentialViscosityLabel">
<property name="text">
<string>Tangential viscosity:</string>
</property>
</widget>
</item>
<item row="11" column="0" colspan="3">
<widget class="NLQT::CEditRangeFloatWidget" name="tangentialViscosityWidget" native="true"/>
</item>
<item row="12" column="2">
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>36</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
<widget class="QWidget" name="tabWidgetPage2">
<attribute name="title">
<string>Force intensity</string>
</attribute>
<layout class="QGridLayout" name="gridLayout_3">
<item row="0" column="0">
<widget class="NLQT::CAttribFloatWidget" name="forceIntensityWidget"/>
</item>
<item row="1" column="0">
<spacer name="verticalSpacer_4">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>349</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
<widget class="QLabel" name="label_2">
<property name="text">
<string>Targets:</string>
</property>
</widget>
</item>
<item row="0" column="2">
<widget class="QLabel" name="label_3">
<property name="text">
<string>Avaible targets:</string>
</property>
</widget>
</item>
<item row="1" column="0" rowspan="4">
<widget class="QListWidget" name="targetsListWidget">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
</widget>
</item>
<item row="1" column="1">
<spacer name="verticalSpacer_3">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>57</height>
</size>
</property>
</spacer>
</item>
<item row="1" column="2" rowspan="4">
<widget class="QListWidget" name="avaibleTargetsListWidget">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
</widget>
</item>
<item row="2" column="1">
<widget class="QPushButton" name="toTargetsPushButton">
<property name="maximumSize">
<size>
<width>30</width>
<height>16777215</height>
</size>
</property>
<property name="text">
<string>&lt;</string>
</property>
</widget>
</item>
<item row="3" column="1">
<widget class="QPushButton" name="toAvaibleTargetsPushButton">
<property name="maximumSize">
<size>
<width>30</width>
<height>16777215</height>
</size>
</property>
<property name="text">
<string>&gt;</string>
</property>
</widget>
</item>
<item row="4" column="1">
<spacer name="verticalSpacer_2">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>56</height>
</size>
</property>
</spacer>
</item>
<item row="5" column="0" colspan="3">
<widget class="NLQT::CAttribFloatWidget" name="forceIntensityWidget">
<property name="title">
<string>Force intensity</string>
</property>
</widget>
</item>
<item row="6" column="0" colspan="3">
<widget class="QLabel" name="parametricFactorLabel">
<property name="text">
<string>Parametric factor:</string>
</property>
</widget>
</item>
<item row="7" column="0" colspan="3">
<widget class="NLQT::CEditRangeFloatWidget" name="parametricFactorWidget" native="true"/>
</item>
<item row="8" column="0">
<widget class="QLabel" name="radialViscosityLabel">
<property name="text">
<string>Radial viscosity:</string>
</property>
</widget>
</item>
<item row="9" column="0" colspan="3">
<widget class="NLQT::CEditRangeFloatWidget" name="radialViscosityWidget" native="true"/>
</item>
<item row="10" column="0" colspan="2">
<widget class="QLabel" name="tangentialViscosityLabel">
<property name="text">
<string>Tangential viscosity:</string>
</property>
</widget>
</item>
<item row="11" column="0" colspan="3">
<widget class="NLQT::CEditRangeFloatWidget" name="tangentialViscosityWidget" native="true"/>
</item>
<item row="12" column="0" colspan="3">
<widget class="NLQT::CDirectionWidget" name="directionWidget" native="true"/>
</item>
</layout>
</widget>
<customwidgets>

@ -30,6 +30,12 @@
<string>Light color</string>
</attribute>
<layout class="QGridLayout" name="gridLayout_2">
<property name="margin">
<number>6</number>
</property>
<property name="spacing">
<number>3</number>
</property>
<item row="0" column="0">
<widget class="NLQT::CAttribRGBAWidget" name="lightColorWidget"/>
</item>
@ -50,37 +56,31 @@
</widget>
<widget class="QWidget" name="tabWidgetPage2">
<attribute name="title">
<string>Attenuation start</string>
<string>Attenuation start/end</string>
</attribute>
<layout class="QGridLayout" name="gridLayout_3">
<property name="margin">
<number>6</number>
</property>
<property name="spacing">
<number>3</number>
</property>
<item row="0" column="0">
<widget class="NLQT::CAttribFloatWidget" name="attenStartWidget"/>
<widget class="NLQT::CAttribFloatWidget" name="attenStartWidget">
<property name="title">
<string>Attenuation start</string>
</property>
</widget>
</item>
<item row="1" column="0">
<spacer name="verticalSpacer_2">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>228</height>
</size>
<widget class="NLQT::CAttribFloatWidget" name="attenEndWidget">
<property name="title">
<string>Attenuation end</string>
</property>
</spacer>
</widget>
</item>
</layout>
</widget>
<widget class="QWidget" name="tabWidgetPage3">
<attribute name="title">
<string>Attenuation end</string>
</attribute>
<layout class="QGridLayout" name="gridLayout_4">
<item row="0" column="0">
<widget class="NLQT::CAttribFloatWidget" name="attenEndWidget"/>
</item>
<item row="1" column="0">
<spacer name="verticalSpacer_3">
<item row="2" column="0">
<spacer name="verticalSpacer_2">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>

@ -6,28 +6,53 @@
<rect>
<x>0</x>
<y>0</y>
<width>212</width>
<height>101</height>
<width>252</width>
<height>103</height>
</rect>
</property>
<property name="windowTitle">
<string>Form</string>
</property>
<layout class="QGridLayout" name="gridLayout_2">
<layout class="QGridLayout" name="gridLayout_3">
<property name="margin">
<number>0</number>
</property>
<property name="spacing">
<number>5</number>
<number>3</number>
</property>
<item row="0" column="0">
<widget class="QCheckBox" name="texAnimCheckBox">
<property name="text">
<string>Enable texture anim</string>
<widget class="QGroupBox" name="texAnimGroupBox">
<property name="title">
<string/>
</property>
<layout class="QGridLayout" name="gridLayout_2">
<property name="margin">
<number>6</number>
</property>
<item row="0" column="0">
<widget class="QCheckBox" name="texAnimCheckBox">
<property name="text">
<string>Enable texture anim</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QPushButton" name="textureGroupedPushButton">
<property name="enabled">
<bool>false</bool>
</property>
<property name="text">
<string>Texture grouped</string>
</property>
<property name="autoDefault">
<bool>true</bool>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item row="1" column="0" colspan="2">
<item row="1" column="0">
<widget class="QGroupBox" name="multitexturingGroupBox">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Fixed">
@ -39,6 +64,9 @@
<string/>
</property>
<layout class="QGridLayout" name="gridLayout">
<property name="margin">
<number>6</number>
</property>
<property name="spacing">
<number>5</number>
</property>
@ -62,25 +90,12 @@
</layout>
</widget>
</item>
<item row="2" column="0" colspan="2">
<item row="2" column="0">
<widget class="NLQT::CAttribIntWidget" name="texIndexWidget" native="true"/>
</item>
<item row="3" column="0" colspan="2">
<item row="3" column="0">
<widget class="NLQT::CParticleTextureWidget" name="texWidget" native="true"/>
</item>
<item row="0" column="1">
<widget class="QPushButton" name="textureGroupedPushButton">
<property name="enabled">
<bool>false</bool>
</property>
<property name="text">
<string>Texture grouped</string>
</property>
<property name="autoDefault">
<bool>true</bool>
</property>
</widget>
</item>
</layout>
</widget>
<customwidgets>

@ -6,65 +6,91 @@
<rect>
<x>0</x>
<y>0</y>
<width>172</width>
<height>161</height>
<width>178</width>
<height>154</height>
</rect>
</property>
<property name="windowTitle">
<string>Form</string>
</property>
<layout class="QGridLayout" name="gridLayout">
<layout class="QGridLayout" name="gridLayout_2">
<property name="margin">
<number>0</number>
</property>
<property name="spacing">
<number>5</number>
<number>3</number>
</property>
<item row="0" column="0">
<widget class="QScrollArea" name="scrollArea">
<property name="minimumSize">
<size>
<width>105</width>
<height>105</height>
</size>
<layout class="QVBoxLayout" name="verticalLayout">
<property name="spacing">
<number>3</number>
</property>
<property name="maximumSize">
<size>
<width>100</width>
<height>100</height>
</size>
</property>
<property name="widgetResizable">
<bool>true</bool>
</property>
<widget class="QWidget" name="scrollAreaWidgetContents">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>103</width>
<height>103</height>
</rect>
</property>
<layout class="QGridLayout" name="gridLayout_2">
<item row="0" column="0">
<widget class="QLabel" name="imageLabel">
<property name="maximumSize">
<size>
<width>85</width>
<height>85</height>
</size>
</property>
<property name="text">
<string/>
</property>
</widget>
</item>
</layout>
</widget>
</widget>
<item>
<widget class="QGroupBox" name="groupBox_2">
<property name="minimumSize">
<size>
<width>100</width>
<height>100</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>100</width>
<height>100</height>
</size>
</property>
<property name="title">
<string/>
</property>
<layout class="QGridLayout" name="gridLayout">
<property name="margin">
<number>3</number>
</property>
<item row="0" column="0">
<widget class="QLabel" name="imageLabel">
<property name="maximumSize">
<size>
<width>16777215</width>
<height>16777215</height>
</size>
</property>
<property name="text">
<string/>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QPushButton" name="chooseTexPushButton">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string>Choose texture</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="removePushButton">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string>Remove</string>
</property>
</widget>
</item>
</layout>
</item>
<item row="0" column="1" rowspan="3">
<item row="0" column="1">
<widget class="QGroupBox" name="groupBox">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Preferred">
@ -81,6 +107,9 @@
<property name="text">
<string>Name:</string>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
<item row="1" column="0">
@ -88,12 +117,18 @@
<property name="text">
<string>Size:</string>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QLabel" name="memoryLabel">
<widget class="QLabel" name="depthLabel">
<property name="text">
<string>Memory:</string>
<string>Depth:</string>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
@ -102,10 +137,13 @@
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Preferred</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>81</height>
<height>50</height>
</size>
</property>
</spacer>
@ -113,32 +151,6 @@
</layout>
</widget>
</item>
<item row="1" column="0">
<widget class="QPushButton" name="chooseTexPushButton">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string>Choose texture</string>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QPushButton" name="removePushButton">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string>Remove</string>
</property>
</widget>
</item>
</layout>
</widget>
<resources/>

@ -109,6 +109,9 @@ void CParticleTextureWidget::removeTexture()
void CParticleTextureWidget::updateTexture()
{
_ui.nameLabel->setText(tr("Name:"));
_ui.sizeLabel->setText(tr("Size:"));
_ui.depthLabel->setText(tr("Depth:"));
if (!_Texture)
{
_ui.imageLabel->setPixmap(QPixmap());
@ -119,7 +122,12 @@ void CParticleTextureWidget::updateTexture()
std::string texName = (static_cast<NL3D::CTextureFile *>(_Wrapper->get()))->getFileName().c_str();
_ui.nameLabel->setText(tr("Name: %1").arg(texName.c_str()));
if (!NLMISC::CFile::getFilename(texName).empty())
_ui.imageLabel->setPixmap(QPixmap(NLMISC::CPath::lookup(texName).c_str()));
{
QPixmap pixmap(NLMISC::CPath::lookup(texName).c_str());
_ui.sizeLabel->setText(tr("Size: %1x%2").arg(pixmap.width()).arg(pixmap.height()));
_ui.depthLabel->setText(tr("Depth: %1").arg(pixmap.depth()));
_ui.imageLabel->setPixmap(pixmap);
}
else
_ui.imageLabel->setPixmap(QPixmap());
}

@ -6,8 +6,8 @@
<rect>
<x>0</x>
<y>0</y>
<width>210</width>
<height>302</height>
<width>198</width>
<height>310</height>
</rect>
</property>
<property name="windowTitle">
@ -15,10 +15,10 @@
</property>
<layout class="QGridLayout" name="gridLayout">
<property name="margin">
<number>9</number>
<number>6</number>
</property>
<property name="spacing">
<number>6</number>
<number>3</number>
</property>
<item row="0" column="0">
<widget class="QLabel" name="label_2">
@ -129,19 +129,6 @@
<item row="7" column="0" colspan="3">
<widget class="NLQT::CEditRangeFloatWidget" name="bounceFactorWidget" native="true"/>
</item>
<item row="8" column="1">
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>1</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
<customwidgets>

Loading…
Cancel
Save