Skip to content
Snippets Groups Projects
Commit 8d94e2af authored by maxim_productengine's avatar maxim_productengine
Browse files

SL-12186 Update camera controls if preset was selected from the pulldown menu

parent f4d4fb2a
No related branches found
No related tags found
No related merge requests found
...@@ -524,7 +524,11 @@ void LLFloaterCamera::onClickCameraItem(const LLSD& param) ...@@ -524,7 +524,11 @@ void LLFloaterCamera::onClickCameraItem(const LLSD& param)
{ {
LLFloaterCamera* camera_floater = LLFloaterCamera::findInstance(); LLFloaterCamera* camera_floater = LLFloaterCamera::findInstance();
if (camera_floater) if (camera_floater)
camera_floater->switchMode(CAMERA_CTRL_MODE_FREE_CAMERA); {
camera_floater->switchMode(CAMERA_CTRL_MODE_FREE_CAMERA);
camera_floater->updateItemsSelection();
camera_floater->fromFreeToPresets();
}
} }
else else
{ {
...@@ -533,13 +537,6 @@ void LLFloaterCamera::onClickCameraItem(const LLSD& param) ...@@ -533,13 +537,6 @@ void LLFloaterCamera::onClickCameraItem(const LLSD& param)
camera_floater->switchMode(CAMERA_CTRL_MODE_PAN); camera_floater->switchMode(CAMERA_CTRL_MODE_PAN);
switchToPreset(name); switchToPreset(name);
} }
LLFloaterCamera* camera_floater = LLFloaterCamera::findInstance();
if (camera_floater)
{
camera_floater->updateItemsSelection();
camera_floater->fromFreeToPresets();
}
} }
/*static*/ /*static*/
...@@ -547,20 +544,33 @@ void LLFloaterCamera::switchToPreset(const std::string& name) ...@@ -547,20 +544,33 @@ void LLFloaterCamera::switchToPreset(const std::string& name)
{ {
sFreeCamera = false; sFreeCamera = false;
clear_camera_tool(); clear_camera_tool();
if ("rear_view" == name) if (PRESETS_REAR_VIEW == name)
{ {
gAgentCamera.switchCameraPreset(CAMERA_PRESET_REAR_VIEW); gAgentCamera.switchCameraPreset(CAMERA_PRESET_REAR_VIEW);
LLPresetsManager::getInstance()->loadPreset(PRESETS_CAMERA, PRESETS_REAR_VIEW);
} }
else if ("group_view" == name) else if (PRESETS_SIDE_VIEW == name)
{ {
gAgentCamera.switchCameraPreset(CAMERA_PRESET_GROUP_VIEW); gAgentCamera.switchCameraPreset(CAMERA_PRESET_GROUP_VIEW);
LLPresetsManager::getInstance()->loadPreset(PRESETS_CAMERA, PRESETS_SIDE_VIEW);
} }
else if ("front_view" == name) else if (PRESETS_FRONT_VIEW == name)
{ {
gAgentCamera.switchCameraPreset(CAMERA_PRESET_FRONT_VIEW); gAgentCamera.switchCameraPreset(CAMERA_PRESET_FRONT_VIEW);
LLPresetsManager::getInstance()->loadPreset(PRESETS_CAMERA, PRESETS_FRONT_VIEW); }
else
{
gAgentCamera.switchCameraPreset(CAMERA_PRESET_CUSTOM);
}
if (gSavedSettings.getString("PresetCameraActive") != name)
{
LLPresetsManager::getInstance()->loadPreset(PRESETS_CAMERA, name);
}
LLFloaterCamera* camera_floater = LLFloaterCamera::findInstance();
if (camera_floater)
{
camera_floater->updateItemsSelection();
camera_floater->fromFreeToPresets();
} }
} }
...@@ -609,11 +619,8 @@ void LLFloaterCamera::onSavePreset() ...@@ -609,11 +619,8 @@ void LLFloaterCamera::onSavePreset()
void LLFloaterCamera::onCustomPresetSelected() void LLFloaterCamera::onCustomPresetSelected()
{ {
std::string selected_preset = mPresetCombo->getSelectedItemLabel(); std::string selected_preset = mPresetCombo->getSelectedItemLabel();
if (gSavedSettings.getString("PresetCameraActive") != selected_preset && getString("inactive_combo_text") != selected_preset) if (getString("inactive_combo_text") != selected_preset)
{ {
gAgentCamera.switchCameraPreset(CAMERA_PRESET_CUSTOM); switchToPreset(selected_preset);
updateItemsSelection();
fromFreeToPresets();
LLPresetsManager::getInstance()->loadPreset(PRESETS_CAMERA, selected_preset);
} }
} }
...@@ -33,6 +33,7 @@ ...@@ -33,6 +33,7 @@
#include "llbutton.h" #include "llbutton.h"
#include "lltabcontainer.h" #include "lltabcontainer.h"
#include "llfloatercamera.h"
#include "llfloaterreg.h" #include "llfloaterreg.h"
#include "llfloaterpreference.h" #include "llfloaterpreference.h"
#include "llpresetsmanager.h" #include "llpresetsmanager.h"
...@@ -185,7 +186,7 @@ void LLPanelPresetsCameraPulldown::onRowClick(const LLSD& user_data) ...@@ -185,7 +186,7 @@ void LLPanelPresetsCameraPulldown::onRowClick(const LLSD& user_data)
std::string name = item->getColumn(1)->getValue().asString(); std::string name = item->getColumn(1)->getValue().asString();
LL_DEBUGS() << "selected '" << name << "'" << LL_ENDL; LL_DEBUGS() << "selected '" << name << "'" << LL_ENDL;
LLPresetsManager::getInstance()->loadPreset(PRESETS_CAMERA, name); LLFloaterCamera::switchToPreset(name);
setVisible(FALSE); setVisible(FALSE);
} }
......
...@@ -151,7 +151,7 @@ ...@@ -151,7 +151,7 @@
width="30"> width="30">
<panel_camera_item.mousedown_callback <panel_camera_item.mousedown_callback
function="CameraPresets.ChangeView" function="CameraPresets.ChangeView"
parameter="front_view" /> parameter="Front View" />
<panel_camera_item.picture <panel_camera_item.picture
image_name="Cam_Preset_Front_Off" /> image_name="Cam_Preset_Front_Off" />
<panel_camera_item.selected_picture <panel_camera_item.selected_picture
...@@ -164,7 +164,7 @@ ...@@ -164,7 +164,7 @@
left_pad="4"> left_pad="4">
<panel_camera_item.mousedown_callback <panel_camera_item.mousedown_callback
function="CameraPresets.ChangeView" function="CameraPresets.ChangeView"
parameter="group_view" /> parameter="Side View" />
<panel_camera_item.picture <panel_camera_item.picture
image_name="Cam_Preset_Side_Off" /> image_name="Cam_Preset_Side_Off" />
<panel_camera_item.selected_picture <panel_camera_item.selected_picture
...@@ -178,7 +178,7 @@ ...@@ -178,7 +178,7 @@
<panel_camera_item.mousedown_callback <panel_camera_item.mousedown_callback
function="CameraPresets.ChangeView" function="CameraPresets.ChangeView"
tool_tip="Rear View" tool_tip="Rear View"
parameter="rear_view" /> parameter="Rear View" />
<panel_camera_item.picture <panel_camera_item.picture
image_name="Cam_Preset_Back_Off" /> image_name="Cam_Preset_Back_Off" />
<panel_camera_item.selected_picture <panel_camera_item.selected_picture
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment