Add an option to disable reset buttons in camera floaters

master
PanteraPolnocy 2025-10-08 14:50:11 +02:00
parent 56cb655fbe
commit 1e254bb4c7
4 changed files with 34 additions and 0 deletions

View File

@ -23397,6 +23397,17 @@ Change of this parameter will affect the layout of buttons in notification toast
<key>Value</key> <key>Value</key>
<integer>0</integer> <integer>0</integer>
</map> </map>
<key>DisableCameraJoystickCenterReset</key>
<map>
<key>Comment</key>
<string>Disable center reset on camera joysticks (bullseye) in camera controls.</string>
<key>Persist</key>
<integer>1</integer>
<key>Type</key>
<string>Boolean</string>
<key>Value</key>
<integer>0</integer>
</map>
<key>FSNetMapScripted</key> <key>FSNetMapScripted</key>
<map> <map>
<key>Comment</key> <key>Comment</key>

View File

@ -38,6 +38,7 @@
#include "llagent.h" #include "llagent.h"
#include "llagentcamera.h" #include "llagentcamera.h"
#include "llviewercamera.h" #include "llviewercamera.h"
#include "llviewercontrol.h" // <FS:PP> gSavedSettings
#include "llviewertexture.h" #include "llviewertexture.h"
#include "llviewertexturelist.h" #include "llviewertexturelist.h"
#include "llviewerwindow.h" #include "llviewerwindow.h"
@ -568,6 +569,12 @@ void LLJoystickCameraRotate::onHeldDown()
void LLJoystickCameraRotate::resetJoystickCamera() void LLJoystickCameraRotate::resetJoystickCamera()
{ {
// <FS:PP> If user opted to disable center reset buttons, do not reset
if (gSavedSettings.getBOOL("DisableCameraJoystickCenterReset"))
{
return;
}
// </FS:PP>
gAgentCamera.resetCameraOrbit(); gAgentCamera.resetCameraOrbit();
} }
@ -735,6 +742,12 @@ void LLJoystickCameraTrack::onHeldDown()
void LLJoystickCameraTrack::resetJoystickCamera() void LLJoystickCameraTrack::resetJoystickCamera()
{ {
// <FS:PP> If user opted to disable center reset buttons, do not reset
if (gSavedSettings.getBOOL("DisableCameraJoystickCenterReset"))
{
return;
}
// </FS:PP>
gAgentCamera.resetCameraPan(); gAgentCamera.resetCameraPan();
} }

View File

@ -989,6 +989,15 @@
width="270" width="270"
control_name="FSUseSmallCameraFloater" control_name="FSUseSmallCameraFloater"
tool_tip="If enabled, the smaller, legacy camera window without camera preset controls will be used."/> tool_tip="If enabled, the smaller, legacy camera window without camera preset controls will be used."/>
<check_box
top_pad="0"
follows="left|top"
height="16"
label="Disable camera controls reset buttons"
name="DisableCameraJoystickCenterReset"
width="270"
control_name="DisableCameraJoystickCenterReset"
tool_tip="Prevents the center bullseye of the orbit and move camera controls from resetting the camera."/>
<text <text
type="string" type="string"

View File

@ -143,6 +143,7 @@
<check_box label="'Znajomi' oraz 'Grupy' w menu 'Komunikacja' otwierają okna w stylu [SHORT_VIEWER_GENERATION]" name="FSUseV2Friends" tool_tip="Gdy włączysz tą opcję, to Znajomi / Grupy będą się otwierać poprzez okno Ludzie - w przeciwnym wypadku będzie się to odbywać w oknie Kontaktów." /> <check_box label="'Znajomi' oraz 'Grupy' w menu 'Komunikacja' otwierają okna w stylu [SHORT_VIEWER_GENERATION]" name="FSUseV2Friends" tool_tip="Gdy włączysz tą opcję, to Znajomi / Grupy będą się otwierać poprzez okno Ludzie - w przeciwnym wypadku będzie się to odbywać w oknie Kontaktów." />
<check_box label="Stary sposób wyświetlania właściwości obiektu" name="FSUseLegacyObjectProperties" tool_tip="Gdy włączysz tą opcję, to stare okno właściwości obiektu będzie używane zamiast nowego."/> <check_box label="Stary sposób wyświetlania właściwości obiektu" name="FSUseLegacyObjectProperties" tool_tip="Gdy włączysz tą opcję, to stare okno właściwości obiektu będzie używane zamiast nowego."/>
<check_box label="Użyj małego okna kamery" name="FSUseSmallCameraFloater" tool_tip="Jeśli ta opcja jest włączona, to zostanie użyte mniejsze, starsze okno kamery bez elementów sterujących wstępnymi ustawieniami." /> <check_box label="Użyj małego okna kamery" name="FSUseSmallCameraFloater" tool_tip="Jeśli ta opcja jest włączona, to zostanie użyte mniejsze, starsze okno kamery bez elementów sterujących wstępnymi ustawieniami." />
<check_box label="Wyłącz przyciski resetowania kamery" name="DisableCameraJoystickCenterReset" tool_tip="Zapobiega resetowaniu kamery po kliknięciu w środkowy celownik (bullseye) w kontrolkach obrotu i ruchu kamery." />
<text name="standalone_textbox"> <text name="standalone_textbox">
Używaj osobnych okien dla: Używaj osobnych okien dla:
</text> </text>