summaryrefslogtreecommitdiff
path: root/indra/newview
diff options
context:
space:
mode:
authorAndreyL ProductEngine <alihatskiy@productengine.com>2018-07-18 14:13:29 +0300
committerAndreyL ProductEngine <alihatskiy@productengine.com>2018-07-18 14:13:29 +0300
commit1abea33b7012b6b00502620dab92cc39eacb1d50 (patch)
tree66092c3526913e9662256f7cc924730bbc9ee822 /indra/newview
parent939174416453a46a4a415f37ae642e5508c05787 (diff)
MAINT-8334 EEP UI control: Virtual Trackball
Diffstat (limited to 'indra/newview')
-rw-r--r--indra/newview/llpaneleditsky.cpp11
-rw-r--r--indra/newview/skins/default/textures/textures.xml10
-rw-r--r--indra/newview/skins/default/textures/widgets/track_control_moon_back.pngbin0 -> 859 bytes
-rw-r--r--indra/newview/skins/default/textures/widgets/track_control_moon_front.pngbin0 -> 1100 bytes
-rw-r--r--indra/newview/skins/default/textures/widgets/track_control_rotate_bottom.pngbin0 -> 874 bytes
-rw-r--r--indra/newview/skins/default/textures/widgets/track_control_rotate_left_side.pngbin0 -> 870 bytes
-rw-r--r--indra/newview/skins/default/textures/widgets/track_control_rotate_right_side.pngbin0 -> 879 bytes
-rw-r--r--indra/newview/skins/default/textures/widgets/track_control_rotate_top.pngbin0 -> 883 bytes
-rw-r--r--indra/newview/skins/default/textures/widgets/track_control_sphere.pngbin0 -> 6863 bytes
-rw-r--r--indra/newview/skins/default/textures/widgets/track_control_sun_back.pngbin0 -> 856 bytes
-rw-r--r--indra/newview/skins/default/textures/widgets/track_control_sun_front.pngbin0 -> 1053 bytes
-rw-r--r--indra/newview/skins/default/xui/en/floater_edit_ext_day_cycle.xml8
-rw-r--r--indra/newview/skins/default/xui/en/panel_settings_sky_sunmoon.xml52
-rw-r--r--indra/newview/skins/default/xui/en/widgets/sun_moon_trackball.xml68
14 files changed, 110 insertions, 39 deletions
diff --git a/indra/newview/llpaneleditsky.cpp b/indra/newview/llpaneleditsky.cpp
index 41d351b481..87c0a21c42 100644
--- a/indra/newview/llpaneleditsky.cpp
+++ b/indra/newview/llpaneleditsky.cpp
@@ -31,7 +31,8 @@
#include "llslider.h"
#include "lltexturectrl.h"
#include "llcolorswatch.h"
-#include "lljoystickbutton.h"
+#include "llvirtualtrackball.h"
+
namespace
{
@@ -369,9 +370,9 @@ void LLPanelSettingsSkySunMoonTab::refresh()
getChild<LLUICtrl>(FIELD_SKY_GLOW_SIZE)->setValue(2.0 - (glow.mV[0] / SLIDER_SCALE_GLOW_R));
getChild<LLUICtrl>(FIELD_SKY_GLOW_FOCUS)->setValue(glow.mV[2] / SLIDER_SCALE_GLOW_B);
getChild<LLUICtrl>(FIELD_SKY_STAR_BRIGHTNESS)->setValue(mSkySettings->getStarBrightness());
- getChild<LLJoystickQuaternion>(FIELD_SKY_SUN_ROTATION)->setRotation(mSkySettings->getSunRotation());
+ getChild<LLVirtualTrackball>(FIELD_SKY_SUN_ROTATION)->setRotation(mSkySettings->getSunRotation());
getChild<LLTextureCtrl>(FIELD_SKY_SUN_IMAGE)->setValue(mSkySettings->getSunTextureId());
- getChild<LLJoystickQuaternion>(FIELD_SKY_MOON_ROTATION)->setRotation(mSkySettings->getMoonRotation());
+ getChild<LLVirtualTrackball>(FIELD_SKY_MOON_ROTATION)->setRotation(mSkySettings->getMoonRotation());
getChild<LLTextureCtrl>(FIELD_SKY_MOON_IMAGE)->setValue(mSkySettings->getMoonTextureId());
}
@@ -402,7 +403,7 @@ void LLPanelSettingsSkySunMoonTab::onStarBrightnessChanged()
void LLPanelSettingsSkySunMoonTab::onSunRotationChanged()
{
- mSkySettings->setSunRotation(getChild<LLJoystickQuaternion>(FIELD_SKY_SUN_ROTATION)->getRotation());
+ mSkySettings->setSunRotation(getChild<LLVirtualTrackball>(FIELD_SKY_SUN_ROTATION)->getRotation());
mSkySettings->update();
}
@@ -414,7 +415,7 @@ void LLPanelSettingsSkySunMoonTab::onSunImageChanged()
void LLPanelSettingsSkySunMoonTab::onMoonRotationChanged()
{
- mSkySettings->setMoonRotation(getChild<LLJoystickQuaternion>(FIELD_SKY_MOON_ROTATION)->getRotation());
+ mSkySettings->setMoonRotation(getChild<LLVirtualTrackball>(FIELD_SKY_MOON_ROTATION)->getRotation());
mSkySettings->update();
}
diff --git a/indra/newview/skins/default/textures/textures.xml b/indra/newview/skins/default/textures/textures.xml
index a16b1a68ad..a177dbadd5 100644
--- a/indra/newview/skins/default/textures/textures.xml
+++ b/indra/newview/skins/default/textures/textures.xml
@@ -689,6 +689,16 @@ with the same filename but different name
<texture name="Vertical Drag Handle" file_name="widgets/vertical_drag_handle.png" scale.left="2" scale.right="7" scale.bottom="8" scale.top="120" scale_type="scale_outer"/>
+ <texture name="VirtualTrackball_Moon_Back" file_name="widgets/track_control_moon_back.png" />
+ <texture name="VirtualTrackball_Moon_Front" file_name="widgets/track_control_moon_front.png" />
+ <texture name="VirtualTrackball_Rotate_Bottom" file_name="widgets/track_control_rotate_bottom.png" />
+ <texture name="VirtualTrackball_Rotate_Left" file_name="widgets/track_control_rotate_left_side.png" />
+ <texture name="VirtualTrackball_Rotate_Right" file_name="widgets/track_control_rotate_right_side.png" />
+ <texture name="VirtualTrackball_Rotate_Top" file_name="widgets/track_control_rotate_top.png" />
+ <texture name="VirtualTrackball_Sphere" file_name="widgets/track_control_sphere.png" />
+ <texture name="VirtualTrackball_Sun_Back" file_name="widgets/track_control_sun_back.png" />
+ <texture name="VirtualTrackball_Sun_Front" file_name="widgets/track_control_sun_front.png" />
+
<texture name="Volume_Background" file_name="windows/Volume_Background.png" preload="false"
scale.left="6" scale.top="33" scale.right="63" scale.bottom="10" />
diff --git a/indra/newview/skins/default/textures/widgets/track_control_moon_back.png b/indra/newview/skins/default/textures/widgets/track_control_moon_back.png
new file mode 100644
index 0000000000..73d24e53f6
--- /dev/null
+++ b/indra/newview/skins/default/textures/widgets/track_control_moon_back.png
Binary files differ
diff --git a/indra/newview/skins/default/textures/widgets/track_control_moon_front.png b/indra/newview/skins/default/textures/widgets/track_control_moon_front.png
new file mode 100644
index 0000000000..64def00772
--- /dev/null
+++ b/indra/newview/skins/default/textures/widgets/track_control_moon_front.png
Binary files differ
diff --git a/indra/newview/skins/default/textures/widgets/track_control_rotate_bottom.png b/indra/newview/skins/default/textures/widgets/track_control_rotate_bottom.png
new file mode 100644
index 0000000000..232c812aae
--- /dev/null
+++ b/indra/newview/skins/default/textures/widgets/track_control_rotate_bottom.png
Binary files differ
diff --git a/indra/newview/skins/default/textures/widgets/track_control_rotate_left_side.png b/indra/newview/skins/default/textures/widgets/track_control_rotate_left_side.png
new file mode 100644
index 0000000000..bcc78fc5e4
--- /dev/null
+++ b/indra/newview/skins/default/textures/widgets/track_control_rotate_left_side.png
Binary files differ
diff --git a/indra/newview/skins/default/textures/widgets/track_control_rotate_right_side.png b/indra/newview/skins/default/textures/widgets/track_control_rotate_right_side.png
new file mode 100644
index 0000000000..d0827abf28
--- /dev/null
+++ b/indra/newview/skins/default/textures/widgets/track_control_rotate_right_side.png
Binary files differ
diff --git a/indra/newview/skins/default/textures/widgets/track_control_rotate_top.png b/indra/newview/skins/default/textures/widgets/track_control_rotate_top.png
new file mode 100644
index 0000000000..13a5e9c2e8
--- /dev/null
+++ b/indra/newview/skins/default/textures/widgets/track_control_rotate_top.png
Binary files differ
diff --git a/indra/newview/skins/default/textures/widgets/track_control_sphere.png b/indra/newview/skins/default/textures/widgets/track_control_sphere.png
new file mode 100644
index 0000000000..a13b7725ea
--- /dev/null
+++ b/indra/newview/skins/default/textures/widgets/track_control_sphere.png
Binary files differ
diff --git a/indra/newview/skins/default/textures/widgets/track_control_sun_back.png b/indra/newview/skins/default/textures/widgets/track_control_sun_back.png
new file mode 100644
index 0000000000..23c89068f8
--- /dev/null
+++ b/indra/newview/skins/default/textures/widgets/track_control_sun_back.png
Binary files differ
diff --git a/indra/newview/skins/default/textures/widgets/track_control_sun_front.png b/indra/newview/skins/default/textures/widgets/track_control_sun_front.png
new file mode 100644
index 0000000000..6dfdc04423
--- /dev/null
+++ b/indra/newview/skins/default/textures/widgets/track_control_sun_front.png
Binary files differ
diff --git a/indra/newview/skins/default/xui/en/floater_edit_ext_day_cycle.xml b/indra/newview/skins/default/xui/en/floater_edit_ext_day_cycle.xml
index fb53eb969b..aac2084543 100644
--- a/indra/newview/skins/default/xui/en/floater_edit_ext_day_cycle.xml
+++ b/indra/newview/skins/default/xui/en/floater_edit_ext_day_cycle.xml
@@ -6,7 +6,7 @@
save_rect="true"
title="Edit Day Cycle"
width="705"
- height="602"
+ height="650"
min_width="450"
min_height="85"
can_resize="true">
@@ -22,7 +22,7 @@
<layout_stack name="outer_stack"
width="705"
- height="602"
+ height="650"
follows="all"
animate="false"
top="0"
@@ -450,14 +450,14 @@
<layout_panel name="frame_settings_water"
auto_resize="true"
user_resize="true"
- height="420"
+ height="500"
width="700"
min_height="0"
visible="true">
<tab_container
follows="all"
halign="left"
- height="420"
+ height="430"
layout="topleft"
left="0"
name="water_tabs"
diff --git a/indra/newview/skins/default/xui/en/panel_settings_sky_sunmoon.xml b/indra/newview/skins/default/xui/en/panel_settings_sky_sunmoon.xml
index 1323ad6a17..a951e39697 100644
--- a/indra/newview/skins/default/xui/en/panel_settings_sky_sunmoon.xml
+++ b/indra/newview/skins/default/xui/en/panel_settings_sky_sunmoon.xml
@@ -21,7 +21,7 @@
auto_resize="true"
user_resize="true"
visible="true"
- height="75">
+ height="350">
<text
follows="left|top"
height="10"
@@ -117,7 +117,7 @@
auto_resize="true"
user_resize="true"
visible="true"
- height="75">
+ height="350">
<layout_stack
left="5"
top="5"
@@ -131,7 +131,7 @@
auto_resize="true"
user_resize="true"
visible="true"
- height="75">
+ height="220">
<text
follows="left|top"
height="10"
@@ -151,23 +151,19 @@
width="100">
Position:
</text>
- <joystick_quat
- follows="left|top"
- height="78"
- layout="topleft"
- left_delta="0"
- top_delta="20"
- name="sun_rotation"
- quadrant="left"
- sound_flags="3"
- visible="true"
- tool_tip="Move sun in sky"
- width="78" /> <!-- Should be 126x126 -->
+ <sun_moon_trackball
+ name="sun_rotation"
+ follows="left|top"
+ left_delta="0"
+ top_delta="20"
+ height="150"
+ width="150"
+ thumb_mode="sun" />
<text
follows="left|top"
height="10"
layout="topleft"
- left_delta="100"
+ left_delta="160"
top_delta="-20"
width="200">
Image:
@@ -186,7 +182,7 @@
auto_resize="true"
user_resize="true"
visible="true"
- height="75">
+ height="220">
<text
follows="left|top"
height="10"
@@ -206,23 +202,19 @@
width="100">
Position:
</text>
- <joystick_quat
- follows="left|top"
- height="78"
- layout="topleft"
- left_delta="0"
- top_delta="20"
- name="moon_rotation"
- quadrant="left"
- sound_flags="3"
- visible="true"
- tool_tip="Move sun in sky"
- width="78" /> <!-- Should be 126x126 -->
+ <sun_moon_trackball
+ name="moon_rotation"
+ follows="left|top"
+ left_delta="0"
+ top_delta="20"
+ height="150"
+ width="150"
+ thumb_mode="moon" />
<text
follows="left|top"
height="10"
layout="topleft"
- left_delta="100"
+ left_delta="160"
top_delta="-20"
width="200">
Image:
diff --git a/indra/newview/skins/default/xui/en/widgets/sun_moon_trackball.xml b/indra/newview/skins/default/xui/en/widgets/sun_moon_trackball.xml
new file mode 100644
index 0000000000..68681b8228
--- /dev/null
+++ b/indra/newview/skins/default/xui/en/widgets/sun_moon_trackball.xml
@@ -0,0 +1,68 @@
+<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
+<sun_moon_trackball
+ name="virtualtrackball"
+ width="150"
+ height="150"
+ user_resize="false"
+ increment_angle_mouse="0.5f"
+ increment_angle_btn="3.0f"
+ image_sphere="VirtualTrackball_Sphere"
+ image_moon_back="VirtualTrackball_Moon_Back"
+ image_moon_front="VirtualTrackball_Moon_Front"
+ image_sun_back="VirtualTrackball_Sun_Back"
+ image_sun_front="VirtualTrackball_Sun_Front">
+
+ <sun_moon_trackball.border
+ visible="true"/>
+
+ <sun_moon_trackball.labelN
+ font="SansSerif"
+ name="labelN"
+ valign="bottom"
+ halign="left"
+ label="N"/>
+ <sun_moon_trackball.labelS
+ font="SansSerif"
+ name="labelS"
+ valign="top"
+ halign="left"
+ label="S"/>
+ <sun_moon_trackball.labelW
+ font="SansSerif"
+ name="labelW"
+ valign="top"
+ halign="right"
+ label="W"/>
+ <sun_moon_trackball.labelE
+ font="SansSerif"
+ name="labelE"
+ valign="top"
+ halign="left"
+ label="E"/>
+
+ <sun_moon_trackball.button_rotate_top
+ name="btn_rotate_top"
+ image_unselected="VirtualTrackball_Rotate_Top"
+ image_selected="VirtualTrackball_Rotate_Top"
+ image_disabled="VirtualTrackball_Rotate_Top" />
+
+ <sun_moon_trackball.button_rotate_bottom
+ name="btn_rotate_bottom"
+ image_unselected="VirtualTrackball_Rotate_Bottom"
+ image_selected="VirtualTrackball_Rotate_Bottom"
+ image_disabled="VirtualTrackball_Rotate_Bottom" />
+
+ <sun_moon_trackball.button_rotate_left
+ name="btn_rotate_left"
+ image_unselected="VirtualTrackball_Rotate_Left"
+ image_selected="VirtualTrackball_Rotate_Left"
+ image_disabled="VirtualTrackball_Rotate_Left" />
+
+ <sun_moon_trackball.button_rotate_right
+ name="btn_rotate_right"
+ image_unselected="VirtualTrackball_Rotate_Right"
+ image_selected="VirtualTrackball_Rotate_Right"
+ image_disabled="VirtualTrackball_Rotate_Right" />
+
+</sun_moon_trackball>
+