parent
b909b05745
commit
e293a99d94
|
|
@ -105,6 +105,8 @@ FSFloaterPoser::FSFloaterPoser(const LLSD& key) : LLFloater(key)
|
|||
mCommitCallbackRegistrar.add("Poser.RecaptureSelectedBones", [this](LLUICtrl*, const LLSD&) { onClickRecaptureSelectedBones(); });
|
||||
mCommitCallbackRegistrar.add("Poser.TogglePosingSelectedBones", [this](LLUICtrl*, const LLSD&) { onClickToggleSelectedBoneEnabled(); });
|
||||
mCommitCallbackRegistrar.add("Poser.PoseJointsReset", [this](LLUICtrl*, const LLSD&) { onPoseJointsReset(); });
|
||||
|
||||
mCommitCallbackRegistrar.add("Poser.CommitSpinner", [this](LLUICtrl* spinnerControl, const LLSD&) { onCommitSpinner(spinnerControl); });
|
||||
}
|
||||
|
||||
bool FSFloaterPoser::postBuild()
|
||||
|
|
@ -216,6 +218,20 @@ bool FSFloaterPoser::postBuild()
|
|||
mResetBaseRotCbx = getChild<LLCheckBoxCtrl>("reset_base_rotation_on_edit_checkbox");
|
||||
mResetBaseRotCbx->setCommitCallback([this](LLUICtrl*, const LLSD&) { onClickSetBaseRotZero(); });
|
||||
|
||||
mTrackpadSensitivitySpnr = getChild<LLUICtrl>("trackpad_sensitivity_spinner");
|
||||
mYawSpnr = getChild<LLUICtrl>("limb_yaw_spinner");
|
||||
mPitchSpnr = getChild<LLUICtrl>("limb_pitch_spinner");
|
||||
mRollSpnr = getChild<LLUICtrl>("limb_roll_spinner");
|
||||
mUpDownSpnr = getChild<LLUICtrl>("av_position_updown_spinner");
|
||||
mLeftRightSpnr = getChild<LLUICtrl>("av_position_leftright_spinner");
|
||||
mInOutSpnr = getChild<LLUICtrl>("av_position_inout_spinner");
|
||||
mAdvPosXSpnr = getChild<LLUICtrl>("adv_posx_spinner");
|
||||
mAdvPosYSpnr = getChild<LLUICtrl>("adv_posy_spinner");
|
||||
mAdvPosZSpnr = getChild<LLUICtrl>("adv_posz_spinner");
|
||||
mScaleXSpnr = getChild<LLUICtrl>("adv_scalex_spinner");
|
||||
mScaleYSpnr = getChild<LLUICtrl>("adv_scaley_spinner");
|
||||
mScaleZSpnr = getChild<LLUICtrl>("adv_scalez_spinner");
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
@ -566,6 +582,84 @@ void FSFloaterPoser::onClickBrowsePoseCache()
|
|||
gViewerWindow->getWindow()->openFile(pathname);
|
||||
}
|
||||
|
||||
void FSFloaterPoser::onCommitSpinner(LLUICtrl* spinner)
|
||||
{
|
||||
if (!spinner)
|
||||
return;
|
||||
|
||||
F32 value = (F32)spinner->getValue().asReal();
|
||||
|
||||
if (spinner == mTrackpadSensitivitySpnr)
|
||||
{
|
||||
mTrackpadSensitivitySlider->setValue(value);
|
||||
onAdjustTrackpadSensitivity();
|
||||
return;
|
||||
}
|
||||
|
||||
if (spinner == mInOutSpnr || spinner == mAdvPosXSpnr)
|
||||
{
|
||||
mPosXSlider->setValue(value);
|
||||
onAvatarPositionSet();
|
||||
return;
|
||||
}
|
||||
|
||||
if (spinner == mLeftRightSpnr || spinner == mAdvPosYSpnr)
|
||||
{
|
||||
mPosYSlider->setValue(value);
|
||||
onAvatarPositionSet();
|
||||
return;
|
||||
}
|
||||
|
||||
if (spinner == mUpDownSpnr || spinner == mAdvPosZSpnr)
|
||||
{
|
||||
mPosZSlider->setValue(value);
|
||||
onAvatarPositionSet();
|
||||
return;
|
||||
}
|
||||
|
||||
if (spinner == mScaleXSpnr)
|
||||
{
|
||||
mAdvScaleXSlider->setValue(value);
|
||||
onAdvancedScaleSet();
|
||||
return;
|
||||
}
|
||||
|
||||
if (spinner == mScaleYSpnr)
|
||||
{
|
||||
mAdvScaleYSlider->setValue(value);
|
||||
onAdvancedScaleSet();
|
||||
return;
|
||||
}
|
||||
|
||||
if (spinner == mScaleZSpnr)
|
||||
{
|
||||
mAdvScaleZSlider->setValue(value);
|
||||
onAdvancedScaleSet();
|
||||
return;
|
||||
}
|
||||
|
||||
if (spinner == mYawSpnr)
|
||||
{
|
||||
mLimbYawSlider->setValue(value);
|
||||
onYawPitchRollSliderChanged();
|
||||
return;
|
||||
}
|
||||
|
||||
if (spinner == mPitchSpnr)
|
||||
{
|
||||
mLimbPitchSlider->setValue(value);
|
||||
onYawPitchRollSliderChanged();
|
||||
return;
|
||||
}
|
||||
|
||||
if (spinner == mRollSpnr)
|
||||
{
|
||||
mLimbRollSlider->setValue(value);
|
||||
onYawPitchRollSliderChanged();
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
void FSFloaterPoser::onPoseJointsReset()
|
||||
{
|
||||
if (notDoubleClicked())
|
||||
|
|
@ -1569,6 +1663,13 @@ void FSFloaterPoser::onAdvancedPositionSet()
|
|||
F32 posY = mAdvPosYSlider->getValueF32();
|
||||
F32 posZ = mAdvPosZSlider->getValueF32();
|
||||
|
||||
mAdvPosXSpnr->setValue(posX);
|
||||
mInOutSpnr->setValue(posX);
|
||||
mAdvPosYSpnr->setValue(posY);
|
||||
mLeftRightSpnr->setValue(posY);
|
||||
mAdvPosZSpnr->setValue(posZ);
|
||||
mUpDownSpnr->setValue(posZ);
|
||||
|
||||
setSelectedJointsPosition(posX, posY, posZ);
|
||||
refreshAvatarPositionSliders();
|
||||
}
|
||||
|
|
@ -1579,6 +1680,10 @@ void FSFloaterPoser::onAdvancedScaleSet()
|
|||
F32 scY = mAdvScaleYSlider->getValueF32();
|
||||
F32 scZ = mAdvScaleZSlider->getValueF32();
|
||||
|
||||
mScaleXSpnr->setValue(scX);
|
||||
mScaleYSpnr->setValue(scY);
|
||||
mScaleZSpnr->setValue(scZ);
|
||||
|
||||
setSelectedJointsScale(scX, scY, scZ);
|
||||
}
|
||||
|
||||
|
|
@ -1588,6 +1693,13 @@ void FSFloaterPoser::onAvatarPositionSet()
|
|||
F32 posY = mPosYSlider->getValueF32();
|
||||
F32 posZ = mPosZSlider->getValueF32();
|
||||
|
||||
mAdvPosXSpnr->setValue(posX);
|
||||
mInOutSpnr->setValue(posX);
|
||||
mAdvPosYSpnr->setValue(posY);
|
||||
mLeftRightSpnr->setValue(posY);
|
||||
mAdvPosZSpnr->setValue(posZ);
|
||||
mUpDownSpnr->setValue(posZ);
|
||||
|
||||
setSelectedJointsPosition(posX, posY, posZ);
|
||||
refreshAdvancedPositionSliders();
|
||||
}
|
||||
|
|
@ -1628,6 +1740,10 @@ void FSFloaterPoser::onLimbTrackballChanged()
|
|||
mLimbYawSlider->setValue(trackPadPos.mV[VX] *= RAD_TO_DEG);
|
||||
mLimbPitchSlider->setValue(trackPadPos.mV[VY] *= RAD_TO_DEG);
|
||||
mLimbRollSlider->setValue(trackPadPos.mV[VZ] *= RAD_TO_DEG);
|
||||
|
||||
mYawSpnr->setValue(mLimbYawSlider->getValueF32());
|
||||
mPitchSpnr->setValue(mLimbPitchSlider->getValueF32());
|
||||
mRollSpnr->setValue(mLimbRollSlider->getValueF32());
|
||||
}
|
||||
|
||||
F32 FSFloaterPoser::unWrapScale(F32 scale)
|
||||
|
|
@ -1669,6 +1785,10 @@ void FSFloaterPoser::onYawPitchRollSliderChanged()
|
|||
absoluteRotation.mV[VZ] /= NormalTrackpadRangeInRads;
|
||||
|
||||
mAvatarTrackball->setValue(absoluteRotation.getValue());
|
||||
|
||||
mYawSpnr->setValue(mLimbYawSlider->getValueF32());
|
||||
mPitchSpnr->setValue(mLimbPitchSlider->getValueF32());
|
||||
mRollSpnr->setValue(mLimbRollSlider->getValueF32());
|
||||
}
|
||||
|
||||
void FSFloaterPoser::onAdjustTrackpadSensitivity()
|
||||
|
|
|
|||
|
|
@ -253,6 +253,7 @@ class FSFloaterPoser : public LLFloater
|
|||
void onClickLoadRightHandPose();
|
||||
void onClickLoadHandPose(bool isRightHand);
|
||||
void onClickSetBaseRotZero();
|
||||
void onCommitSpinner(LLUICtrl* spinner);
|
||||
|
||||
// UI Refreshments
|
||||
void refreshRotationSliders();
|
||||
|
|
@ -496,6 +497,20 @@ class FSFloaterPoser : public LLFloater
|
|||
|
||||
LLCheckBoxCtrl* mResetBaseRotCbx{ nullptr };
|
||||
LLCheckBoxCtrl* mAlsoSaveBvhCbx{ nullptr };
|
||||
|
||||
LLUICtrl* mTrackpadSensitivitySpnr{ nullptr };
|
||||
LLUICtrl* mYawSpnr{ nullptr };
|
||||
LLUICtrl* mPitchSpnr{ nullptr };
|
||||
LLUICtrl* mRollSpnr{ nullptr };
|
||||
LLUICtrl* mUpDownSpnr{ nullptr };
|
||||
LLUICtrl* mLeftRightSpnr{ nullptr };
|
||||
LLUICtrl* mInOutSpnr{ nullptr };
|
||||
LLUICtrl* mAdvPosXSpnr{ nullptr };
|
||||
LLUICtrl* mAdvPosYSpnr{ nullptr };
|
||||
LLUICtrl* mAdvPosZSpnr{ nullptr };
|
||||
LLUICtrl* mScaleXSpnr{ nullptr };
|
||||
LLUICtrl* mScaleYSpnr{ nullptr };
|
||||
LLUICtrl* mScaleZSpnr{ nullptr };
|
||||
};
|
||||
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -351,6 +351,7 @@ width="403">
|
|||
</text>
|
||||
<slider
|
||||
decimal_digits="2"
|
||||
show_text="false"
|
||||
follows="left|top"
|
||||
height="16"
|
||||
increment="0.01"
|
||||
|
|
@ -361,18 +362,32 @@ width="403">
|
|||
max_val="1.5"
|
||||
name="av_position_updown"
|
||||
top_pad="5"
|
||||
width="172"
|
||||
width="122"
|
||||
tool_tip="Move the selected avatar up or down"
|
||||
can_edit_text="true">
|
||||
<slider.commit_callback
|
||||
function="Poser.PositionSet"/>
|
||||
</slider>
|
||||
<spinner
|
||||
height="16"
|
||||
decimal_digits="2"
|
||||
follows="left|top"
|
||||
increment="0.01"
|
||||
top_pad="-19"
|
||||
left_pad="0"
|
||||
name="av_position_updown_spinner"
|
||||
min_val="-1.5"
|
||||
max_val="1.5"
|
||||
width="47">
|
||||
<spinner.commit_callback
|
||||
function="Poser.CommitSpinner" />
|
||||
</spinner>
|
||||
<text
|
||||
follows="left|top"
|
||||
name="av_position_leftright_label"
|
||||
height="10"
|
||||
layout="topleft"
|
||||
left_delta="-5"
|
||||
left="0"
|
||||
top_pad="5"
|
||||
width="172">
|
||||
Left/Right:
|
||||
|
|
@ -380,6 +395,7 @@ width="403">
|
|||
<slider
|
||||
decimal_digits="2"
|
||||
follows="left|top"
|
||||
show_text="false"
|
||||
height="16"
|
||||
increment="0.01"
|
||||
initial_value="0"
|
||||
|
|
@ -389,18 +405,32 @@ width="403">
|
|||
max_val="1.5"
|
||||
name="av_position_leftright"
|
||||
top_pad="5"
|
||||
width="172"
|
||||
width="122"
|
||||
tool_tip="Move the selected avatar left or right"
|
||||
can_edit_text="true">
|
||||
<slider.commit_callback
|
||||
function="Poser.PositionSet"/>
|
||||
</slider>
|
||||
<spinner
|
||||
height="16"
|
||||
decimal_digits="2"
|
||||
follows="left|top"
|
||||
increment="0.01"
|
||||
top_pad="-19"
|
||||
left_pad="0"
|
||||
name="av_position_leftright_spinner"
|
||||
min_val="-1.5"
|
||||
max_val="1.5"
|
||||
width="47">
|
||||
<spinner.commit_callback
|
||||
function="Poser.CommitSpinner" />
|
||||
</spinner>
|
||||
<text
|
||||
follows="left|top"
|
||||
name="av_position_inout_label"
|
||||
height="10"
|
||||
layout="topleft"
|
||||
left_delta="-5"
|
||||
left="0"
|
||||
top_pad="5"
|
||||
width="172">
|
||||
In/Out:
|
||||
|
|
@ -408,6 +438,7 @@ width="403">
|
|||
<slider
|
||||
decimal_digits="2"
|
||||
follows="left|top"
|
||||
show_text="false"
|
||||
height="16"
|
||||
increment="0.01"
|
||||
initial_value="0"
|
||||
|
|
@ -417,13 +448,27 @@ width="403">
|
|||
max_val="1.5"
|
||||
name="av_position_inout"
|
||||
top_pad="5"
|
||||
width="172"
|
||||
width="122"
|
||||
tool_tip="Move the selected avatar in or out"
|
||||
can_edit_text="true">
|
||||
<slider.commit_callback
|
||||
function="Poser.PositionSet"/>
|
||||
</slider>
|
||||
<!-- so this panel behaves like the others in the code behind, it has an invisible list... -->
|
||||
<spinner
|
||||
height="16"
|
||||
decimal_digits="2"
|
||||
follows="left|top"
|
||||
increment="0.01"
|
||||
top_pad="-19"
|
||||
left_pad="0"
|
||||
name="av_position_inout_spinner"
|
||||
min_val="-1.5"
|
||||
max_val="1.5"
|
||||
width="47">
|
||||
<spinner.commit_callback
|
||||
function="Poser.CommitSpinner" />
|
||||
</spinner>
|
||||
<!-- to make this panel behaves like the others in code-behind, it has an invisible list -->
|
||||
<scroll_list
|
||||
visible="false"
|
||||
column_padding="2"
|
||||
|
|
@ -805,13 +850,28 @@ width="403">
|
|||
left_delta="0"
|
||||
max_val="2"
|
||||
min_val="0.01"
|
||||
show_text="false"
|
||||
name="trackpad_sensitivity_slider"
|
||||
tool_tip="Adjusts the sensitivity of the trackball"
|
||||
top_pad="3"
|
||||
width="170" >
|
||||
width="120" >
|
||||
<slider.commit_callback
|
||||
function="Poser.AdjustTrackPadSensitivity"/>
|
||||
</slider>
|
||||
<spinner
|
||||
height="16"
|
||||
decimal_digits="2"
|
||||
follows="left|top"
|
||||
increment="0.01"
|
||||
top_pad="-19"
|
||||
left_pad="0"
|
||||
name="trackpad_sensitivity_spinner"
|
||||
min_val="-1.5"
|
||||
max_val="1.5"
|
||||
width="47">
|
||||
<spinner.commit_callback
|
||||
function="Poser.CommitSpinner" />
|
||||
</spinner>
|
||||
<check_box
|
||||
control_name="FSPoserStopPosingWhenClosed"
|
||||
name="stop_posing_on_close_checkbox"
|
||||
|
|
@ -820,7 +880,7 @@ width="403">
|
|||
follows="left|top"
|
||||
left="5"
|
||||
tool_tip="Not stopping your pose can be helpful if you do a lot of work, and don't want to accidentally lose it."
|
||||
top_pad="5"
|
||||
top_pad="10"
|
||||
width="134" />
|
||||
<check_box
|
||||
control_name="FSPoserResetBaseRotationOnEdit"
|
||||
|
|
@ -992,7 +1052,7 @@ width="403">
|
|||
name="limb_pitch_label"
|
||||
height="10"
|
||||
layout="topleft"
|
||||
left_delta="0"
|
||||
left="0"
|
||||
top_pad="2"
|
||||
width="200">
|
||||
Up/Down:
|
||||
|
|
@ -1008,16 +1068,30 @@ width="403">
|
|||
min_val="-180"
|
||||
max_val="180"
|
||||
name="limb_pitch"
|
||||
show_text="false"
|
||||
top_pad="2"
|
||||
width="150"
|
||||
can_edit_text="true"/>
|
||||
width="98"/>
|
||||
<spinner
|
||||
height="16"
|
||||
decimal_digits="2"
|
||||
follows="left|top"
|
||||
increment="0.1"
|
||||
top_pad="-19"
|
||||
left_pad="0"
|
||||
name="limb_pitch_spinner"
|
||||
min_val="-180"
|
||||
max_val="180"
|
||||
width="57">
|
||||
<spinner.commit_callback
|
||||
function="Poser.CommitSpinner" />
|
||||
</spinner>
|
||||
<text
|
||||
follows="left|top"
|
||||
name="limb_yaw_label"
|
||||
height="10"
|
||||
layout="topleft"
|
||||
left_delta="-5"
|
||||
top_pad="0"
|
||||
left="0"
|
||||
top_pad="2"
|
||||
width="200">
|
||||
Left/Right:
|
||||
</text>
|
||||
|
|
@ -1032,16 +1106,31 @@ width="403">
|
|||
min_val="-180"
|
||||
max_val="180"
|
||||
name="limb_yaw"
|
||||
show_text="false"
|
||||
top_pad="0"
|
||||
width="150"
|
||||
width="98"
|
||||
can_edit_text="true"/>
|
||||
<spinner
|
||||
height="16"
|
||||
decimal_digits="2"
|
||||
follows="left|top"
|
||||
increment="0.1"
|
||||
top_pad="-19"
|
||||
left_pad="0"
|
||||
name="limb_yaw_spinner"
|
||||
min_val="-180"
|
||||
max_val="180"
|
||||
width="57">
|
||||
<spinner.commit_callback
|
||||
function="Poser.CommitSpinner" />
|
||||
</spinner>
|
||||
<text
|
||||
follows="left|top"
|
||||
name="limb_roll_label"
|
||||
height="10"
|
||||
layout="topleft"
|
||||
left_delta="-5"
|
||||
top_pad="-1"
|
||||
left="0"
|
||||
top_pad="2"
|
||||
width="200">
|
||||
Roll:
|
||||
</text>
|
||||
|
|
@ -1052,13 +1141,28 @@ width="403">
|
|||
increment="0.1"
|
||||
initial_value="0"
|
||||
layout="topleft"
|
||||
show_text="false"
|
||||
left_delta="5"
|
||||
min_val="-180"
|
||||
max_val="180"
|
||||
name="limb_roll"
|
||||
top_pad="-1"
|
||||
width="150"
|
||||
width="98"
|
||||
can_edit_text="true"/>
|
||||
<spinner
|
||||
height="16"
|
||||
decimal_digits="2"
|
||||
follows="left|top"
|
||||
increment="0.1"
|
||||
top_pad="-18"
|
||||
left_pad="0"
|
||||
name="limb_roll_spinner"
|
||||
min_val="-180"
|
||||
max_val="180"
|
||||
width="57">
|
||||
<spinner.commit_callback
|
||||
function="Poser.CommitSpinner" />
|
||||
</spinner>
|
||||
</panel>
|
||||
<panel
|
||||
follows="top|left|bottom"
|
||||
|
|
@ -1300,13 +1404,13 @@ width="403">
|
|||
<layout_panel
|
||||
follows="top|left|right"
|
||||
layout="topleft"
|
||||
height="97"
|
||||
height="99"
|
||||
auto_resize="false"
|
||||
name="advanced_controls_layout"
|
||||
width="600">
|
||||
<panel
|
||||
follows="top|left|right"
|
||||
height="97"
|
||||
height="99"
|
||||
left="0"
|
||||
layout="all"
|
||||
enabled="false"
|
||||
|
|
@ -1318,7 +1422,7 @@ width="403">
|
|||
<tab_container
|
||||
follows="all"
|
||||
halign="center"
|
||||
height="97"
|
||||
height="99"
|
||||
layout="topleft"
|
||||
name="modifier_tabs"
|
||||
tab_height="20"
|
||||
|
|
@ -1329,7 +1433,7 @@ width="403">
|
|||
<panel
|
||||
follows="all"
|
||||
background_visible="false"
|
||||
height="97"
|
||||
height="99"
|
||||
layout="topleft"
|
||||
left="0"
|
||||
title="Body Part Position"
|
||||
|
|
@ -1337,75 +1441,114 @@ width="403">
|
|||
top="0"
|
||||
width="555">
|
||||
<slider
|
||||
decimal_digits="3"
|
||||
can_edit_text="true"
|
||||
follows="left|top"
|
||||
height="14"
|
||||
increment="0.001"
|
||||
initial_value="0"
|
||||
label="Position X:"
|
||||
label_width="70"
|
||||
label_width="60"
|
||||
follows="left|top"
|
||||
height="14"
|
||||
increment="0.001"
|
||||
initial_value="0"
|
||||
layout="topleft"
|
||||
left="10"
|
||||
max_val="0.5"
|
||||
min_val="-0.5"
|
||||
show_text="false"
|
||||
left="3"
|
||||
max_val="1.5"
|
||||
min_val="-1.5"
|
||||
name="Advanced_Position_X"
|
||||
top_pad="6"
|
||||
width="380" >
|
||||
top_pad="2"
|
||||
width="342" >
|
||||
<slider.commit_callback
|
||||
function="Poser.Advanced.PositionSet"/>
|
||||
</slider>
|
||||
<slider
|
||||
decimal_digits="3"
|
||||
can_edit_text="true"
|
||||
<spinner
|
||||
height="0"
|
||||
decimal_digits="2"
|
||||
follows="left|top"
|
||||
height="14"
|
||||
increment="0.001"
|
||||
initial_value="0"
|
||||
increment="0.01"
|
||||
top_pad="-19"
|
||||
left_pad="2"
|
||||
name="adv_posx_spinner"
|
||||
min_val="-1.5"
|
||||
max_val="1.5"
|
||||
width="47">
|
||||
<spinner.commit_callback
|
||||
function="Poser.CommitSpinner" />
|
||||
</spinner>
|
||||
<slider
|
||||
label="Position Y:"
|
||||
label_width="70"
|
||||
layout="topleft"
|
||||
left_delta="0"
|
||||
max_val="0.5"
|
||||
min_val="-0.5"
|
||||
name="Advanced_Position_Y"
|
||||
top_pad="1"
|
||||
width="380" >
|
||||
<slider.commit_callback
|
||||
function="Poser.Advanced.PositionSet"/>
|
||||
</slider>
|
||||
<slider
|
||||
decimal_digits="3"
|
||||
can_edit_text="true"
|
||||
label_width="60"
|
||||
follows="left|top"
|
||||
height="14"
|
||||
top_pad="24"
|
||||
increment="0.001"
|
||||
initial_value="0"
|
||||
label="Position Z:"
|
||||
label_width="70"
|
||||
show_text="false"
|
||||
layout="topleft"
|
||||
left_delta="0"
|
||||
max_val="0.5"
|
||||
min_val="-0.5"
|
||||
name="Advanced_Position_Z"
|
||||
top_pad="1"
|
||||
width="380" >
|
||||
max_val="1.5"
|
||||
min_val="-1.5"
|
||||
name="Advanced_Position_Y"
|
||||
left="3"
|
||||
width="342" >
|
||||
<slider.commit_callback
|
||||
function="Poser.Advanced.PositionSet"/>
|
||||
</slider>
|
||||
<spinner
|
||||
height="0"
|
||||
decimal_digits="2"
|
||||
follows="left|top"
|
||||
increment="0.01"
|
||||
top_pad="-17"
|
||||
left_pad="2"
|
||||
name="adv_posy_spinner"
|
||||
min_val="-1.5"
|
||||
max_val="1.5"
|
||||
width="47">
|
||||
<spinner.commit_callback
|
||||
function="Poser.CommitSpinner" />
|
||||
</spinner>
|
||||
<slider
|
||||
label="Position Z:"
|
||||
label_width="60"
|
||||
show_text="false"
|
||||
follows="left|top"
|
||||
height="14"
|
||||
top_pad="22"
|
||||
increment="0.001"
|
||||
initial_value="0"
|
||||
layout="topleft"
|
||||
max_val="1.5"
|
||||
min_val="-1.5"
|
||||
name="Advanced_Position_Z"
|
||||
left="3"
|
||||
width="342" >
|
||||
<slider.commit_callback
|
||||
function="Poser.Advanced.PositionSet"/>
|
||||
</slider>
|
||||
<spinner
|
||||
height="12"
|
||||
decimal_digits="2"
|
||||
follows="left|top"
|
||||
increment="0.01"
|
||||
top_pad="-15"
|
||||
left_pad="2"
|
||||
name="adv_posz_spinner"
|
||||
min_val="-1.5"
|
||||
max_val="1.5"
|
||||
width="47">
|
||||
<spinner.commit_callback
|
||||
function="Poser.CommitSpinner" />
|
||||
</spinner>
|
||||
<button
|
||||
height="21"
|
||||
follows="left|top"
|
||||
layout="topleft"
|
||||
label="Undo Position Change"
|
||||
label="Undo Position"
|
||||
image_overlay="Script_Undo"
|
||||
image_overlay_alignment="left"
|
||||
image_unselected="Toolbar_Middle_Off"
|
||||
name="undo_position_change"
|
||||
tool_tip="Undo the last position change"
|
||||
width="150"
|
||||
top_pad="2"
|
||||
left_delta="0">
|
||||
width="109"
|
||||
left="3"
|
||||
top_pad="5">
|
||||
<button.commit_callback
|
||||
function="Poser.UndoLastPosition"/>
|
||||
</button>
|
||||
|
|
@ -1419,7 +1562,7 @@ width="403">
|
|||
image_unselected="Toolbar_Middle_Off"
|
||||
name="redo_position_change"
|
||||
tool_tip="Redo the last position change"
|
||||
width="110"
|
||||
width="108"
|
||||
top_delta="0"
|
||||
left_pad="4">
|
||||
<button.commit_callback
|
||||
|
|
@ -1435,7 +1578,7 @@ width="403">
|
|||
image_unselected="Toolbar_Middle_Off"
|
||||
name="reset_positions"
|
||||
tool_tip="Double click to reset position back to original"
|
||||
width="110"
|
||||
width="109"
|
||||
top_delta="0"
|
||||
left_pad="4">
|
||||
<button.commit_callback
|
||||
|
|
@ -1445,7 +1588,7 @@ width="403">
|
|||
<panel
|
||||
follows="all"
|
||||
background_visible="false"
|
||||
height="97"
|
||||
height="99"
|
||||
layout="topleft"
|
||||
left="0"
|
||||
title="Body Part Scale"
|
||||
|
|
@ -1455,73 +1598,118 @@ width="403">
|
|||
<slider
|
||||
decimal_digits="3"
|
||||
can_edit_text="true"
|
||||
show_text="false"
|
||||
follows="left|top"
|
||||
height="14"
|
||||
increment="0.001"
|
||||
initial_value="0"
|
||||
label="Scale X:"
|
||||
label_width="70"
|
||||
label_width="43"
|
||||
layout="topleft"
|
||||
left="10"
|
||||
left="3"
|
||||
max_val="2"
|
||||
min_val="-2"
|
||||
name="Advanced_Scale_X"
|
||||
top_pad="6"
|
||||
width="380" >
|
||||
top_pad="2"
|
||||
width="342" >
|
||||
<slider.commit_callback
|
||||
function="Poser.Advanced.ScaleSet"/>
|
||||
</slider>
|
||||
<spinner
|
||||
height="0"
|
||||
decimal_digits="2"
|
||||
follows="left|top"
|
||||
increment="0.01"
|
||||
top_pad="-19"
|
||||
left_pad="2"
|
||||
name="adv_scalex_spinner"
|
||||
min_val="-1.5"
|
||||
max_val="1.5"
|
||||
width="47">
|
||||
<spinner.commit_callback
|
||||
function="Poser.CommitSpinner" />
|
||||
</spinner>
|
||||
<slider
|
||||
decimal_digits="3"
|
||||
can_edit_text="true"
|
||||
show_text="false"
|
||||
follows="left|top"
|
||||
height="14"
|
||||
top_pad="24"
|
||||
increment="0.001"
|
||||
initial_value="0"
|
||||
label="Scale Y:"
|
||||
label_width="70"
|
||||
label_width="43"
|
||||
layout="topleft"
|
||||
left_delta="0"
|
||||
left="3"
|
||||
max_val="2"
|
||||
min_val="-2"
|
||||
name="Advanced_Scale_Y"
|
||||
top_pad="1"
|
||||
width="380" >
|
||||
width="342" >
|
||||
<slider.commit_callback
|
||||
function="Poser.Advanced.ScaleSet"/>
|
||||
</slider>
|
||||
<spinner
|
||||
height="0"
|
||||
decimal_digits="2"
|
||||
follows="left|top"
|
||||
increment="0.01"
|
||||
top_pad="-17"
|
||||
left_pad="2"
|
||||
name="adv_scaley_spinner"
|
||||
min_val="-1.5"
|
||||
max_val="1.5"
|
||||
width="47">
|
||||
<spinner.commit_callback
|
||||
function="Poser.CommitSpinner" />
|
||||
</spinner>
|
||||
<slider
|
||||
decimal_digits="3"
|
||||
can_edit_text="true"
|
||||
show_text="false"
|
||||
follows="left|top"
|
||||
height="14"
|
||||
top_pad="22"
|
||||
increment="0.001"
|
||||
initial_value="0"
|
||||
label="Scale Z:"
|
||||
label_width="70"
|
||||
label_width="43"
|
||||
layout="topleft"
|
||||
left_delta="0"
|
||||
left="3"
|
||||
max_val="2"
|
||||
min_val="-2"
|
||||
name="Advanced_Scale_Z"
|
||||
top_pad="1"
|
||||
width="380" >
|
||||
width="342" >
|
||||
<slider.commit_callback
|
||||
function="Poser.Advanced.ScaleSet"/>
|
||||
</slider>
|
||||
<spinner
|
||||
height="12"
|
||||
decimal_digits="2"
|
||||
follows="left|top"
|
||||
increment="0.01"
|
||||
top_pad="-15"
|
||||
left_pad="2"
|
||||
name="adv_scalez_spinner"
|
||||
min_val="-1.5"
|
||||
max_val="1.5"
|
||||
width="47">
|
||||
<spinner.commit_callback
|
||||
function="Poser.CommitSpinner" />
|
||||
</spinner>
|
||||
<button
|
||||
height="21"
|
||||
follows="left|top"
|
||||
layout="topleft"
|
||||
label="Undo Scale Change"
|
||||
label="Undo Scale"
|
||||
image_overlay="Script_Undo"
|
||||
image_overlay_alignment="left"
|
||||
image_unselected="Toolbar_Middle_Off"
|
||||
name="undo_scale_change"
|
||||
tool_tip="Undo the last scale change"
|
||||
width="150"
|
||||
top_pad="2"
|
||||
left_delta="0">
|
||||
width="109"
|
||||
left="3"
|
||||
top_pad="5">
|
||||
<button.commit_callback
|
||||
function="Poser.UndoLastScale"/>
|
||||
</button>
|
||||
|
|
@ -1535,7 +1723,7 @@ width="403">
|
|||
image_unselected="Toolbar_Middle_Off"
|
||||
name="redo_scale_change"
|
||||
tool_tip="Redo the last scale change"
|
||||
width="110"
|
||||
width="108"
|
||||
top_delta="0"
|
||||
left_pad="4">
|
||||
<button.commit_callback
|
||||
|
|
@ -1551,7 +1739,7 @@ width="403">
|
|||
image_unselected="Toolbar_Middle_Off"
|
||||
name="reset_scales"
|
||||
tool_tip="Double click to reset scale back to original"
|
||||
width="110"
|
||||
width="109"
|
||||
top_delta="0"
|
||||
left_pad="4">
|
||||
<button.commit_callback
|
||||
|
|
|
|||
Loading…
Reference in New Issue