diff options
author | Jacek Antonelli | 2008-09-22 14:53:50 -0500 |
---|---|---|
committer | Jacek Antonelli | 2008-09-22 14:53:50 -0500 |
commit | 5dc552157834cc1284841956d18f640275747feb (patch) | |
tree | 976f145ed42ed0b2c4d6fa19c3d313be77be771c /linden/indra/newview | |
parent | Merge branch 'build-tools' into next-merge (diff) | |
parent | VWR-8430: Usability improvements to the land tools floater. (diff) | |
download | meta-impy-5dc552157834cc1284841956d18f640275747feb.zip meta-impy-5dc552157834cc1284841956d18f640275747feb.tar.gz meta-impy-5dc552157834cc1284841956d18f640275747feb.tar.bz2 meta-impy-5dc552157834cc1284841956d18f640275747feb.tar.xz |
Merge branch 'land-tools' into next-merge
Diffstat (limited to 'linden/indra/newview')
-rw-r--r-- | linden/indra/newview/app_settings/settings.xml | 13 | ||||
-rw-r--r-- | linden/indra/newview/llfloatertools.cpp | 61 | ||||
-rw-r--r-- | linden/indra/newview/llfloatertools.h | 5 | ||||
-rw-r--r-- | linden/indra/newview/llpanelland.cpp | 26 | ||||
-rw-r--r-- | linden/indra/newview/llpanelland.h | 3 | ||||
-rw-r--r-- | linden/indra/newview/lltoolbrush.cpp | 16 | ||||
-rw-r--r-- | linden/indra/newview/skins/default/xui/en-us/alerts.xml | 13 | ||||
-rw-r--r-- | linden/indra/newview/skins/default/xui/en-us/floater_tools.xml | 140 |
8 files changed, 191 insertions, 86 deletions
diff --git a/linden/indra/newview/app_settings/settings.xml b/linden/indra/newview/app_settings/settings.xml index e31c149..cdf9fb4 100644 --- a/linden/indra/newview/app_settings/settings.xml +++ b/linden/indra/newview/app_settings/settings.xml | |||
@@ -4164,6 +4164,17 @@ | |||
4164 | <key>Value</key> | 4164 | <key>Value</key> |
4165 | <integer>0</integer> | 4165 | <integer>0</integer> |
4166 | </map> | 4166 | </map> |
4167 | <key>LandBrushForce</key> | ||
4168 | <map> | ||
4169 | <key>Comment</key> | ||
4170 | <string>Multiplier for land modification brush force.</string> | ||
4171 | <key>Persist</key> | ||
4172 | <integer>1</integer> | ||
4173 | <key>Type</key> | ||
4174 | <string>F32</string> | ||
4175 | <key>Value</key> | ||
4176 | <real>1.0</real> | ||
4177 | </map> | ||
4167 | <key>Language</key> | 4178 | <key>Language</key> |
4168 | <map> | 4179 | <map> |
4169 | <key>Comment</key> | 4180 | <key>Comment</key> |
@@ -5558,7 +5569,7 @@ | |||
5558 | <key>Value</key> | 5569 | <key>Value</key> |
5559 | <integer>0</integer> | 5570 | <integer>0</integer> |
5560 | </map> | 5571 | </map> |
5561 | <key>RadioLandBrushSize</key> | 5572 | <key>LandBrushSize</key> |
5562 | <map> | 5573 | <map> |
5563 | <key>Comment</key> | 5574 | <key>Comment</key> |
5564 | <string>Size of land modification brush (0 = small, 1 = medium, 2 = large)</string> | 5575 | <string>Size of land modification brush (0 = small, 1 = medium, 2 = large)</string> |
diff --git a/linden/indra/newview/llfloatertools.cpp b/linden/indra/newview/llfloatertools.cpp index 97150e3..9ce5d35 100644 --- a/linden/indra/newview/llfloatertools.cpp +++ b/linden/indra/newview/llfloatertools.cpp | |||
@@ -54,6 +54,7 @@ | |||
54 | #include "llpanelvolume.h" | 54 | #include "llpanelvolume.h" |
55 | #include "llpanelpermissions.h" | 55 | #include "llpanelpermissions.h" |
56 | #include "llselectmgr.h" | 56 | #include "llselectmgr.h" |
57 | #include "llslider.h" | ||
57 | #include "llstatusbar.h" | 58 | #include "llstatusbar.h" |
58 | #include "lltabcontainer.h" | 59 | #include "lltabcontainer.h" |
59 | #include "lltextbox.h" | 60 | #include "lltextbox.h" |
@@ -105,8 +106,8 @@ void click_popup_rotate_left(void*); | |||
105 | void click_popup_rotate_reset(void*); | 106 | void click_popup_rotate_reset(void*); |
106 | void click_popup_rotate_right(void*); | 107 | void click_popup_rotate_right(void*); |
107 | void click_popup_dozer_mode(LLUICtrl *, void *user); | 108 | void click_popup_dozer_mode(LLUICtrl *, void *user); |
108 | void click_popup_dozer_size(LLUICtrl *, void *user); | 109 | void commit_slider_dozer_size(LLUICtrl *, void*); |
109 | void click_dozer_size(LLUICtrl *, void*); | 110 | void commit_slider_dozer_force(LLUICtrl *, void*); |
110 | void click_apply_to_selection(void*); | 111 | void click_apply_to_selection(void*); |
111 | void commit_radio_zoom(LLUICtrl *, void*); | 112 | void commit_radio_zoom(LLUICtrl *, void*); |
112 | void commit_radio_orbit(LLUICtrl *, void*); | 113 | void commit_radio_orbit(LLUICtrl *, void*); |
@@ -301,13 +302,18 @@ BOOL LLFloaterTools::postBuild() | |||
301 | childSetCommitCallback("radio noise",click_popup_dozer_mode, (void*)4); | 302 | childSetCommitCallback("radio noise",click_popup_dozer_mode, (void*)4); |
302 | mRadioDozerRevert = getChild<LLCheckBoxCtrl>("radio revert"); | 303 | mRadioDozerRevert = getChild<LLCheckBoxCtrl>("radio revert"); |
303 | childSetCommitCallback("radio revert",click_popup_dozer_mode, (void*)5); | 304 | childSetCommitCallback("radio revert",click_popup_dozer_mode, (void*)5); |
304 | mComboDozerSize = getChild<LLComboBox>("combobox brush size"); | ||
305 | childSetCommitCallback("combobox brush size",click_dozer_size, (void*)0); | ||
306 | if(mComboDozerSize) mComboDozerSize->setCurrentByIndex(0); | ||
307 | mBtnApplyToSelection = getChild<LLButton>("button apply to selection"); | 305 | mBtnApplyToSelection = getChild<LLButton>("button apply to selection"); |
308 | childSetAction("button apply to selection",click_apply_to_selection, (void*)0); | 306 | childSetAction("button apply to selection",click_apply_to_selection, (void*)0); |
309 | mCheckShowOwners = getChild<LLCheckBoxCtrl>("checkbox show owners"); | 307 | |
310 | childSetValue("checkbox show owners",gSavedSettings.getBOOL("ShowParcelOwners")); | 308 | mSliderDozerSize = getChild<LLSlider>("slider brush size"); |
309 | childSetCommitCallback("slider brush size", commit_slider_dozer_size, (void*)0); | ||
310 | childSetValue( "slider brush size", gSavedSettings.getS32("LandBrushSize")); | ||
311 | |||
312 | mSliderDozerForce = getChild<LLSlider>("slider force"); | ||
313 | childSetCommitCallback("slider force",commit_slider_dozer_force, (void*)0); | ||
314 | // the setting stores the actual force multiplier, but the slider is logarithmic, so we convert here | ||
315 | childSetValue( "slider force", log10(gSavedSettings.getF32("LandBrushForce"))); | ||
316 | |||
311 | childSetAction("button more", click_show_more, this); | 317 | childSetAction("button more", click_show_more, this); |
312 | childSetAction("button less", click_show_more, this); | 318 | childSetAction("button less", click_show_more, this); |
313 | mTab = getChild<LLTabContainer>("Object Info Tabs"); | 319 | mTab = getChild<LLTabContainer>("Object Info Tabs"); |
@@ -383,10 +389,9 @@ LLFloaterTools::LLFloaterTools() | |||
383 | mRadioDozerSmooth(NULL), | 389 | mRadioDozerSmooth(NULL), |
384 | mRadioDozerNoise(NULL), | 390 | mRadioDozerNoise(NULL), |
385 | mRadioDozerRevert(NULL), | 391 | mRadioDozerRevert(NULL), |
386 | mComboDozerSize(NULL), | 392 | mSliderDozerSize(NULL), |
393 | mSliderDozerForce(NULL), | ||
387 | mBtnApplyToSelection(NULL), | 394 | mBtnApplyToSelection(NULL), |
388 | mCheckShowOwners(NULL), | ||
389 | |||
390 | 395 | ||
391 | mTab(NULL), | 396 | mTab(NULL), |
392 | mPanelPermissions(NULL), | 397 | mPanelPermissions(NULL), |
@@ -694,7 +699,6 @@ void LLFloaterTools::updatePopup(LLCoordGL center, MASK mask) | |||
694 | if (mRadioSelectLand) mRadioSelectLand->setVisible( land_visible ); | 699 | if (mRadioSelectLand) mRadioSelectLand->setVisible( land_visible ); |
695 | 700 | ||
696 | S32 dozer_mode = gSavedSettings.getS32("RadioLandBrushAction"); | 701 | S32 dozer_mode = gSavedSettings.getS32("RadioLandBrushAction"); |
697 | S32 dozer_size = gSavedSettings.getS32("RadioLandBrushSize"); | ||
698 | 702 | ||
699 | if (mRadioDozerFlatten) | 703 | if (mRadioDozerFlatten) |
700 | { | 704 | { |
@@ -726,20 +730,21 @@ void LLFloaterTools::updatePopup(LLCoordGL center, MASK mask) | |||
726 | mRadioDozerRevert ->set( tool == LLToolBrushLand::getInstance() && dozer_mode == 5); | 730 | mRadioDozerRevert ->set( tool == LLToolBrushLand::getInstance() && dozer_mode == 5); |
727 | mRadioDozerRevert ->setVisible( land_visible ); | 731 | mRadioDozerRevert ->setVisible( land_visible ); |
728 | } | 732 | } |
729 | if (mComboDozerSize) | ||
730 | { | ||
731 | mComboDozerSize ->setCurrentByIndex(dozer_size); | ||
732 | mComboDozerSize ->setVisible( land_visible ); | ||
733 | mComboDozerSize ->setEnabled( tool == LLToolBrushLand::getInstance() ); | ||
734 | } | ||
735 | if (mBtnApplyToSelection) | 733 | if (mBtnApplyToSelection) |
736 | { | 734 | { |
737 | mBtnApplyToSelection->setVisible( land_visible ); | 735 | mBtnApplyToSelection->setVisible( land_visible ); |
738 | mBtnApplyToSelection->setEnabled( land_visible && !LLViewerParcelMgr::getInstance()->selectionEmpty() && tool != LLToolSelectLand::getInstance()); | 736 | mBtnApplyToSelection->setEnabled( land_visible && !LLViewerParcelMgr::getInstance()->selectionEmpty() && tool != LLToolSelectLand::getInstance()); |
739 | } | 737 | } |
740 | if (mCheckShowOwners) | 738 | if (mSliderDozerSize) |
741 | { | 739 | { |
742 | mCheckShowOwners ->setVisible( land_visible ); | 740 | mSliderDozerSize ->setVisible( land_visible ); |
741 | childSetVisible("Brush:", land_visible); | ||
742 | childSetVisible("Brush Size:", land_visible); | ||
743 | } | ||
744 | if (mSliderDozerForce) | ||
745 | { | ||
746 | mSliderDozerForce ->setVisible( land_visible ); | ||
747 | childSetVisible("Force:", land_visible); | ||
743 | } | 748 | } |
744 | 749 | ||
745 | // | 750 | // |
@@ -920,25 +925,27 @@ void click_popup_rotate_right(void*) | |||
920 | 925 | ||
921 | void click_popup_dozer_mode(LLUICtrl *, void *user) | 926 | void click_popup_dozer_mode(LLUICtrl *, void *user) |
922 | { | 927 | { |
923 | S32 show_owners = gSavedSettings.getBOOL("ShowParcelOwners"); | ||
924 | S32 mode = (S32)(intptr_t) user; | 928 | S32 mode = (S32)(intptr_t) user; |
925 | gFloaterTools->setEditTool( LLToolBrushLand::getInstance() ); | 929 | gFloaterTools->setEditTool( LLToolBrushLand::getInstance() ); |
926 | gSavedSettings.setS32("RadioLandBrushAction", mode); | 930 | gSavedSettings.setS32("RadioLandBrushAction", mode); |
927 | gSavedSettings.setBOOL("ShowParcelOwners", show_owners); | ||
928 | } | 931 | } |
929 | 932 | ||
930 | void click_popup_dozer_size(LLUICtrl *, void *user) | 933 | void commit_slider_dozer_size(LLUICtrl *ctrl, void*) |
931 | { | 934 | { |
932 | S32 size = (S32)(intptr_t) user; | 935 | S32 size = (S32)ctrl->getValue().asInteger(); |
933 | gSavedSettings.setS32("RadioLandBrushSize", size); | 936 | gSavedSettings.setS32("LandBrushSize", size); |
934 | } | 937 | } |
935 | 938 | ||
936 | void click_dozer_size(LLUICtrl *ctrl, void *user) | 939 | void commit_slider_dozer_force(LLUICtrl *ctrl, void*) |
937 | { | 940 | { |
938 | S32 size = ((LLComboBox*) ctrl)->getCurrentIndex(); | 941 | // the slider is logarithmic, so we exponentiate to get the actual force multiplier |
939 | gSavedSettings.setS32("RadioLandBrushSize", size); | 942 | F32 dozer_force = pow(10.f, (F32)ctrl->getValue().asReal()); |
943 | gSavedSettings.setF32("LandBrushForce", dozer_force); | ||
940 | } | 944 | } |
941 | 945 | ||
946 | |||
947 | |||
948 | |||
942 | void click_apply_to_selection(void* user) | 949 | void click_apply_to_selection(void* user) |
943 | { | 950 | { |
944 | LLToolBrushLand::getInstance()->modifyLandInSelectionGlobal(); | 951 | LLToolBrushLand::getInstance()->modifyLandInSelectionGlobal(); |
diff --git a/linden/indra/newview/llfloatertools.h b/linden/indra/newview/llfloatertools.h index b0a804b..3d8a144 100644 --- a/linden/indra/newview/llfloatertools.h +++ b/linden/indra/newview/llfloatertools.h | |||
@@ -48,6 +48,7 @@ class LLPanelContents; | |||
48 | class LLPanelFace; | 48 | class LLPanelFace; |
49 | class LLPanelLandInfo; | 49 | class LLPanelLandInfo; |
50 | class LLComboBox; | 50 | class LLComboBox; |
51 | class LLSlider; | ||
51 | class LLParcelSelection; | 52 | class LLParcelSelection; |
52 | class LLObjectSelection; | 53 | class LLObjectSelection; |
53 | 54 | ||
@@ -167,10 +168,10 @@ public: | |||
167 | LLCheckBoxCtrl *mRadioDozerSmooth; | 168 | LLCheckBoxCtrl *mRadioDozerSmooth; |
168 | LLCheckBoxCtrl *mRadioDozerNoise; | 169 | LLCheckBoxCtrl *mRadioDozerNoise; |
169 | LLCheckBoxCtrl *mRadioDozerRevert; | 170 | LLCheckBoxCtrl *mRadioDozerRevert; |
171 | LLSlider *mSliderDozerSize; | ||
172 | LLSlider *mSliderDozerForce; | ||
170 | 173 | ||
171 | LLComboBox *mComboDozerSize; | ||
172 | LLButton *mBtnApplyToSelection; | 174 | LLButton *mBtnApplyToSelection; |
173 | LLCheckBoxCtrl *mCheckShowOwners; | ||
174 | 175 | ||
175 | std::vector<LLButton*> mButtons;//[ 15 ]; | 176 | std::vector<LLButton*> mButtons;//[ 15 ]; |
176 | 177 | ||
diff --git a/linden/indra/newview/llpanelland.cpp b/linden/indra/newview/llpanelland.cpp index be05703..1a7892d 100644 --- a/linden/indra/newview/llpanelland.cpp +++ b/linden/indra/newview/llpanelland.cpp | |||
@@ -37,10 +37,13 @@ | |||
37 | 37 | ||
38 | #include "llagent.h" | 38 | #include "llagent.h" |
39 | #include "llbutton.h" | 39 | #include "llbutton.h" |
40 | #include "llcheckboxctrl.h" | ||
40 | #include "llfloaterland.h" | 41 | #include "llfloaterland.h" |
41 | #include "lltextbox.h" | 42 | #include "lltextbox.h" |
43 | #include "llviewercontrol.h" | ||
42 | #include "llviewerparcelmgr.h" | 44 | #include "llviewerparcelmgr.h" |
43 | #include "llviewerregion.h" | 45 | #include "llviewerregion.h" |
46 | #include "llviewerwindow.h" | ||
44 | #include "roles_constants.h" | 47 | #include "roles_constants.h" |
45 | 48 | ||
46 | #include "lluictrlfactory.h" | 49 | #include "lluictrlfactory.h" |
@@ -65,6 +68,10 @@ BOOL LLPanelLandInfo::postBuild() | |||
65 | childSetAction("button subdivide land",onClickDivide,this); | 68 | childSetAction("button subdivide land",onClickDivide,this); |
66 | childSetAction("button join land",onClickJoin,this); | 69 | childSetAction("button join land",onClickJoin,this); |
67 | childSetAction("button about land",onClickAbout,this); | 70 | childSetAction("button about land",onClickAbout,this); |
71 | childSetAction("button show owners help", onShowOwnersHelp, this); | ||
72 | |||
73 | mCheckShowOwners = getChild<LLCheckBoxCtrl>("checkbox show owners"); | ||
74 | childSetValue("checkbox show owners", gSavedSettings.getBOOL("ShowParcelOwners")); | ||
68 | 75 | ||
69 | return TRUE; | 76 | return TRUE; |
70 | } | 77 | } |
@@ -72,7 +79,8 @@ BOOL LLPanelLandInfo::postBuild() | |||
72 | // Methods | 79 | // Methods |
73 | // | 80 | // |
74 | LLPanelLandInfo::LLPanelLandInfo(const std::string& name) | 81 | LLPanelLandInfo::LLPanelLandInfo(const std::string& name) |
75 | : LLPanel(name) | 82 | : LLPanel(name), |
83 | mCheckShowOwners(NULL) | ||
76 | { | 84 | { |
77 | if (!sInstance) | 85 | if (!sInstance) |
78 | { | 86 | { |
@@ -255,3 +263,19 @@ void LLPanelLandInfo::onClickAbout(void*) | |||
255 | 263 | ||
256 | LLFloaterLand::showInstance(); | 264 | LLFloaterLand::showInstance(); |
257 | } | 265 | } |
266 | |||
267 | void LLPanelLandInfo::onShowOwnersHelp(void* user_data) | ||
268 | { | ||
269 | LLPanelLandInfo* self = static_cast<LLPanelLandInfo*>(user_data); | ||
270 | |||
271 | const char* xml_alert = "ShowOwnersHelp"; | ||
272 | LLAlertDialog* dialogp = gViewerWindow->alertXml(xml_alert); | ||
273 | if (dialogp) | ||
274 | { | ||
275 | LLFloater* root_floater = gFloaterView->getParentFloater(self); | ||
276 | if (root_floater) | ||
277 | { | ||
278 | root_floater->addDependentFloater(dialogp); | ||
279 | } | ||
280 | } | ||
281 | } | ||
diff --git a/linden/indra/newview/llpanelland.h b/linden/indra/newview/llpanelland.h index c83bf2c..c44cb9d 100644 --- a/linden/indra/newview/llpanelland.h +++ b/linden/indra/newview/llpanelland.h | |||
@@ -50,6 +50,8 @@ public: | |||
50 | 50 | ||
51 | void refresh(); | 51 | void refresh(); |
52 | static void refreshAll(); | 52 | static void refreshAll(); |
53 | |||
54 | LLCheckBoxCtrl *mCheckShowOwners; | ||
53 | 55 | ||
54 | protected: | 56 | protected: |
55 | static void onClickClaim(void*); | 57 | static void onClickClaim(void*); |
@@ -57,6 +59,7 @@ protected: | |||
57 | static void onClickDivide(void*); | 59 | static void onClickDivide(void*); |
58 | static void onClickJoin(void*); | 60 | static void onClickJoin(void*); |
59 | static void onClickAbout(void*); | 61 | static void onClickAbout(void*); |
62 | static void onShowOwnersHelp(void*); | ||
60 | 63 | ||
61 | protected: | 64 | protected: |
62 | //LLTextBox* mTextPriceLabel; | 65 | //LLTextBox* mTextPriceLabel; |
diff --git a/linden/indra/newview/lltoolbrush.cpp b/linden/indra/newview/lltoolbrush.cpp index 89cb0b6..0291eab 100644 --- a/linden/indra/newview/lltoolbrush.cpp +++ b/linden/indra/newview/lltoolbrush.cpp | |||
@@ -96,7 +96,7 @@ LLToolBrushLand::LLToolBrushLand() | |||
96 | mGotHover(FALSE), | 96 | mGotHover(FALSE), |
97 | mBrushSelected(FALSE) | 97 | mBrushSelected(FALSE) |
98 | { | 98 | { |
99 | mBrushIndex = gSavedSettings.getS32("RadioLandBrushSize"); | 99 | mBrushIndex = gSavedSettings.getS32("LandBrushSize"); |
100 | } | 100 | } |
101 | 101 | ||
102 | void LLToolBrushLand::modifyLandAtPointGlobal(const LLVector3d &pos_global, | 102 | void LLToolBrushLand::modifyLandAtPointGlobal(const LLVector3d &pos_global, |
@@ -154,7 +154,7 @@ void LLToolBrushLand::modifyLandAtPointGlobal(const LLVector3d &pos_global, | |||
154 | regionp->forceUpdate(); | 154 | regionp->forceUpdate(); |
155 | 155 | ||
156 | // tell the simulator what we've done | 156 | // tell the simulator what we've done |
157 | F32 seconds = 1.0f / gFPSClamped; | 157 | F32 seconds = (1.0f / gFPSClamped) * gSavedSettings.getF32("LandBrushForce"); |
158 | F32 x_pos = (F32)pos_region.mV[VX]; | 158 | F32 x_pos = (F32)pos_region.mV[VX]; |
159 | F32 y_pos = (F32)pos_region.mV[VY]; | 159 | F32 y_pos = (F32)pos_region.mV[VY]; |
160 | U8 brush_size = (U8)mBrushIndex; | 160 | U8 brush_size = (U8)mBrushIndex; |
@@ -242,7 +242,7 @@ void LLToolBrushLand::modifyLandInSelectionGlobal() | |||
242 | 242 | ||
243 | min_region.clamp(0.f, regionp->getWidth()); | 243 | min_region.clamp(0.f, regionp->getWidth()); |
244 | max_region.clamp(0.f, regionp->getWidth()); | 244 | max_region.clamp(0.f, regionp->getWidth()); |
245 | F32 seconds = 1.0f; | 245 | F32 seconds = gSavedSettings.getF32("LandBrushForce"); |
246 | 246 | ||
247 | LLSurface &land = regionp->getLand(); | 247 | LLSurface &land = regionp->getLand(); |
248 | char action = E_LAND_LEVEL; | 248 | char action = E_LAND_LEVEL; |
@@ -251,21 +251,23 @@ void LLToolBrushLand::modifyLandInSelectionGlobal() | |||
251 | case 0: | 251 | case 0: |
252 | // // average toward mStartingZ | 252 | // // average toward mStartingZ |
253 | action = E_LAND_LEVEL; | 253 | action = E_LAND_LEVEL; |
254 | seconds = 1.f; | 254 | seconds *= 0.25f; |
255 | break; | 255 | break; |
256 | case 1: | 256 | case 1: |
257 | action = E_LAND_RAISE; | 257 | action = E_LAND_RAISE; |
258 | seconds *= 0.25f; | ||
258 | break; | 259 | break; |
259 | case 2: | 260 | case 2: |
260 | action = E_LAND_LOWER; | 261 | action = E_LAND_LOWER; |
262 | seconds *= 0.25f; | ||
261 | break; | 263 | break; |
262 | case 3: | 264 | case 3: |
263 | action = E_LAND_SMOOTH; | 265 | action = E_LAND_SMOOTH; |
264 | seconds = 10.f; | 266 | seconds *= 5.0f; |
265 | break; | 267 | break; |
266 | case 4: | 268 | case 4: |
267 | action = E_LAND_NOISE; | 269 | action = E_LAND_NOISE; |
268 | seconds = 0.5f; | 270 | seconds *= 0.5f; |
269 | break; | 271 | break; |
270 | case 5: | 272 | case 5: |
271 | action = E_LAND_REVERT; | 273 | action = E_LAND_REVERT; |
@@ -445,7 +447,7 @@ void LLToolBrushLand::render() | |||
445 | spot.mdV[VX] = floor( spot.mdV[VX] + 0.5 ); | 447 | spot.mdV[VX] = floor( spot.mdV[VX] + 0.5 ); |
446 | spot.mdV[VY] = floor( spot.mdV[VY] + 0.5 ); | 448 | spot.mdV[VY] = floor( spot.mdV[VY] + 0.5 ); |
447 | 449 | ||
448 | mBrushIndex = gSavedSettings.getS32("RadioLandBrushSize"); | 450 | mBrushIndex = gSavedSettings.getS32("LandBrushSize"); |
449 | region_list_t regions; | 451 | region_list_t regions; |
450 | determineAffectedRegions(regions, spot); | 452 | determineAffectedRegions(regions, spot); |
451 | 453 | ||
diff --git a/linden/indra/newview/skins/default/xui/en-us/alerts.xml b/linden/indra/newview/skins/default/xui/en-us/alerts.xml index c7ec62f..4bf5ff1 100644 --- a/linden/indra/newview/skins/default/xui/en-us/alerts.xml +++ b/linden/indra/newview/skins/default/xui/en-us/alerts.xml | |||
@@ -1996,6 +1996,19 @@ Join land? | |||
1996 | Cancel | 1996 | Cancel |
1997 | </option> | 1997 | </option> |
1998 | </alert> | 1998 | </alert> |
1999 | <alert name="ShowOwnersHelp"> | ||
2000 | <message name="message"> | ||
2001 | If this box is checked, land parcels will be | ||
2002 | overlaid with a color indicating their status. | ||
2003 | |||
2004 | Red: Land owned by others. | ||
2005 | Green: Your land. | ||
2006 | Aqua: Land owned by a group that you are a member of. | ||
2007 | Yellow: For sale. | ||
2008 | Purple: Land in the auction system. | ||
2009 | Grey: Rare public land. | ||
2010 | </message> | ||
2011 | </alert> | ||
1999 | <alert modal="true" name="ConfirmNotecardSave"> | 2012 | <alert modal="true" name="ConfirmNotecardSave"> |
2000 | <message name="message"> | 2013 | <message name="message"> |
2001 | This notecard needs to be saved before the item can be copied or viewed. Save notecard? | 2014 | This notecard needs to be saved before the item can be copied or viewed. Save notecard? |
diff --git a/linden/indra/newview/skins/default/xui/en-us/floater_tools.xml b/linden/indra/newview/skins/default/xui/en-us/floater_tools.xml index c98c2ac..b5e36f6 100644 --- a/linden/indra/newview/skins/default/xui/en-us/floater_tools.xml +++ b/linden/indra/newview/skins/default/xui/en-us/floater_tools.xml | |||
@@ -245,46 +245,65 @@ | |||
245 | 245 | ||
246 | <!-- Land panel --> | 246 | <!-- Land panel --> |
247 | 247 | ||
248 | <check_box bottom="-70" follows="left|top" font="SansSerifSmall" height="16" | 248 | <check_box bottom="-69" follows="left|top" font="SansSerifSmall" height="16" |
249 | initial_value="false" label="Select Land" left="4" mouse_opaque="true" | 249 | initial_value="false" label="Select Land" left="4" mouse_opaque="true" |
250 | name="radio select land" radio_style="true" width="114" /> | 250 | name="radio select land" radio_style="true" width="114" /> |
251 | <check_box bottom_delta="-14" follows="left|top" font="SansSerifSmall" height="16" | 251 | <check_box bottom_delta="-15" follows="left|top" font="SansSerifSmall" height="16" |
252 | initial_value="false" label="Flatten Land" left="4" mouse_opaque="true" | 252 | initial_value="false" label="Flatten" left="4" mouse_opaque="true" |
253 | name="radio flatten" radio_style="true" width="114" /> | 253 | name="radio flatten" radio_style="true" width="114" /> |
254 | <check_box bottom_delta="-14" follows="left|top" font="SansSerifSmall" height="16" | 254 | <check_box bottom_delta="-15" follows="left|top" font="SansSerifSmall" height="16" |
255 | initial_value="false" label="Raise Land" left="4" mouse_opaque="true" | 255 | initial_value="false" label="Raise" left="4" mouse_opaque="true" |
256 | name="radio raise" radio_style="true" width="114" /> | 256 | name="radio raise" radio_style="true" width="114" /> |
257 | <check_box bottom_delta="-14" follows="left|top" font="SansSerifSmall" height="16" | 257 | <check_box bottom_delta="-15" follows="left|top" font="SansSerifSmall" height="16" |
258 | initial_value="false" label="Lower Land" left="4" mouse_opaque="true" | 258 | initial_value="false" label="Lower" left="4" mouse_opaque="true" |
259 | name="radio lower" radio_style="true" width="114" /> | 259 | name="radio lower" radio_style="true" width="114" /> |
260 | <check_box bottom_delta="-14" follows="left|top" font="SansSerifSmall" height="16" | 260 | <check_box bottom_delta="-15" follows="left|top" font="SansSerifSmall" height="16" |
261 | initial_value="false" label="Smooth Land" left="4" mouse_opaque="true" | 261 | initial_value="false" label="Smooth" left="4" mouse_opaque="true" |
262 | name="radio smooth" radio_style="true" width="114" /> | 262 | name="radio smooth" radio_style="true" width="114" /> |
263 | <check_box bottom_delta="-14" follows="left|top" font="SansSerifSmall" height="16" | 263 | <check_box bottom_delta="-15" follows="left|top" font="SansSerifSmall" height="16" |
264 | initial_value="false" label="Roughen Land" left="4" mouse_opaque="true" | 264 | initial_value="false" label="Roughen" left="4" mouse_opaque="true" |
265 | name="radio noise" radio_style="true" width="114" /> | 265 | name="radio noise" radio_style="true" width="114" /> |
266 | <check_box bottom_delta="-14" follows="left|top" font="SansSerifSmall" height="16" | 266 | <check_box bottom_delta="-15" follows="left|top" font="SansSerifSmall" height="16" |
267 | initial_value="false" label="Revert Land" left="4" mouse_opaque="true" | 267 | initial_value="false" label="Revert" left="4" mouse_opaque="true" |
268 | name="radio revert" radio_style="true" width="114" /> | 268 | name="radio revert" radio_style="true" width="114" /> |
269 | <combo_box allow_text_entry="false" bottom="-85" follows="left|top" height="18" left="118" | 269 | |
270 | max_chars="20" mouse_opaque="true" name="combobox brush size" width="134"> | 270 | |
271 | <combo_item name="Small" value="Small"> | 271 | <button bottom="-74" follows="left|top" font="SansSerifSmall" halign="center" |
272 | Small | 272 | height="20" label="Apply to selection" label_selected="Apply to selection" |
273 | </combo_item> | ||
274 | <combo_item name="Medium" value="Medium"> | ||
275 | Medium | ||
276 | </combo_item> | ||
277 | <combo_item name="Large" value="Large"> | ||
278 | Large | ||
279 | </combo_item> | ||
280 | </combo_box> | ||
281 | <button bottom_delta="-20" follows="left|top" font="SansSerifSmall" halign="center" | ||
282 | height="16" label="Apply to selection" label_selected="Apply to selection" | ||
283 | left="118" mouse_opaque="true" name="button apply to selection" | 273 | left="118" mouse_opaque="true" name="button apply to selection" |
284 | scale_image="TRUE" tool_tip="Modify Selected Land" width="134" /> | 274 | scale_image="TRUE" tool_tip="Modify Selected Land" width="134" /> |
285 | <check_box bottom_delta="-20" control_name="ShowParcelOwners" follows="left|top" | 275 | |
286 | font="SansSerifSmall" height="16" initial_value="false" label="Show Owners" | 276 | |
287 | left="118" mouse_opaque="true" name="checkbox show owners" width="134" /> | 277 | |
278 | <text type="string" length="1" bg_visible="false" border_drop_shadow_visible="false" | ||
279 | border_visible="false" bottom_delta="-16" drop_shadow_visible="true" enabled="true" | ||
280 | follows="left|top" font="SansSerifSmall" h_pad="0" halign="left" height="12" left="118" | ||
281 | hidden="false" mouse_opaque="true" name="Brush:" v_pad="0" width="100"> | ||
282 | Brush: | ||
283 | </text> | ||
284 | |||
285 | <text type="string" length="1" bg_visible="false" border_drop_shadow_visible="false" | ||
286 | border_visible="false" bottom_delta="-18" drop_shadow_visible="true" enabled="true" | ||
287 | follows="left|top" font="SansSerifSmall" h_pad="0" halign="left" height="12" left="132" | ||
288 | hidden="false" mouse_opaque="true" name="Brush Size:" v_pad="0" width="100"> | ||
289 | Size | ||
290 | </text> | ||
291 | <volume_slider bottom_delta="-4" follows="left|top" height="16" hidden="false" | ||
292 | increment="1.0" initial_val="0.0" left="178" max_val="2.0" min_val="0.0" | ||
293 | mouse_opaque="true" name="slider brush size" width="80" /> | ||
294 | |||
295 | |||
296 | <text type="string" length="1" bg_visible="false" border_drop_shadow_visible="false" | ||
297 | border_visible="false" bottom_delta="-18" drop_shadow_visible="true" enabled="true" | ||
298 | follows="left|top" font="SansSerifSmall" h_pad="0" halign="left" height="12" left="132" | ||
299 | hidden="false" mouse_opaque="true" name="Strength:" v_pad="0" width="100"> | ||
300 | Strength | ||
301 | </text> | ||
302 | <volume_slider bottom_delta="-4" follows="left|top" height="16" hidden="false" | ||
303 | increment="0.1" initial_val="0.00" left="178" max_val="2.0" min_val="-1.0" | ||
304 | mouse_opaque="true" name="slider force" width="80" /> | ||
305 | |||
306 | |||
288 | <button bottom="-163" follows="left|top" font="SansSerifSmall" halign="center" | 307 | <button bottom="-163" follows="left|top" font="SansSerifSmall" halign="center" |
289 | height="20" label="More >>" left="186" mouse_opaque="true" | 308 | height="20" label="More >>" left="186" mouse_opaque="true" |
290 | name="button more" scale_image="TRUE" tool_tip="Advanced Options" | 309 | name="button more" scale_image="TRUE" tool_tip="Advanced Options" |
@@ -1176,34 +1195,59 @@ | |||
1176 | <panel bottom="-550" follows="left|top" height="384" left="0" mouse_opaque="true" | 1195 | <panel bottom="-550" follows="left|top" height="384" left="0" mouse_opaque="true" |
1177 | name="land info panel" width="272"> | 1196 | name="land info panel" width="272"> |
1178 | <text bg_visible="false" border_drop_shadow_visible="false" border_visible="false" | 1197 | <text bg_visible="false" border_drop_shadow_visible="false" border_visible="false" |
1179 | bottom="-18" drop_shadow_visible="true" follows="left|top" | 1198 | bottom="-40" drop_shadow_visible="true" follows="left|top" |
1180 | font="SansSerifSmall" h_pad="0" halign="left" height="16" left="4" | 1199 | font="SansSerifSmall" h_pad="0" halign="left" height="16" left="40" |
1200 | mouse_opaque="true" name="label_parcel_modify" v_pad="0" width="150"> | ||
1201 | Modify Parcel | ||
1202 | </text> | ||
1203 | <button bottom_delta="-24" follows="left|top" font="SansSerif" halign="center" | ||
1204 | height="20" label="Subdivide..." label_selected="Subdivide..." left="48" | ||
1205 | mouse_opaque="true" name="button subdivide land" scale_image="TRUE" | ||
1206 | width="112" /> | ||
1207 | <button bottom_delta="-24" follows="left|top" font="SansSerif" halign="center" | ||
1208 | height="20" label="Join..." label_selected="Join..." left="48" | ||
1209 | mouse_opaque="true" name="button join land" scale_image="TRUE" width="112" /> | ||
1210 | <text bg_visible="false" border_drop_shadow_visible="false" border_visible="false" | ||
1211 | bottom_delta="-56" drop_shadow_visible="true" follows="left|top" | ||
1212 | font="SansSerifSmall" h_pad="0" halign="left" height="16" left="40" | ||
1213 | mouse_opaque="true" name="label_parcel_info" v_pad="0" width="150"> | ||
1214 | Parcel Information | ||
1215 | </text> | ||
1216 | <text bg_visible="false" border_drop_shadow_visible="false" border_visible="false" | ||
1217 | bottom_delta="-24" drop_shadow_visible="true" follows="left|top" | ||
1218 | font="SansSerifSmall" h_pad="0" halign="left" height="16" left="48" | ||
1181 | mouse_opaque="true" name="label_area_price" v_pad="0" width="150"> | 1219 | mouse_opaque="true" name="label_area_price" v_pad="0" width="150"> |
1182 | Price: L$[PRICE] for [AREA] sq. m. | 1220 | Price: L$[PRICE] for [AREA] sq. m. |
1183 | </text> | 1221 | </text> |
1184 | <text bg_visible="false" border_drop_shadow_visible="false" border_visible="false" | 1222 | <text bg_visible="false" border_drop_shadow_visible="false" border_visible="false" |
1185 | bottom_delta="0" drop_shadow_visible="true" follows="left|top" | 1223 | bottom_delta="0" drop_shadow_visible="true" follows="left|top" |
1186 | font="SansSerifSmall" h_pad="0" halign="left" height="16" left="4" | 1224 | font="SansSerifSmall" h_pad="0" halign="left" height="16" left="48" |
1187 | mouse_opaque="true" name="label_area" v_pad="0" width="128"> | 1225 | mouse_opaque="true" name="label_area" v_pad="0" width="150"> |
1188 | Area: [AREA] sq. m. | 1226 | Area: [AREA] sq. m. |
1189 | </text> | 1227 | </text> |
1190 | <button bottom_delta="-38" follows="left|top" font="SansSerif" halign="center" | ||
1191 | height="20" label="Buy Land..." label_selected="Buy Land..." left="76" | ||
1192 | mouse_opaque="true" name="button buy land" scale_image="TRUE" width="102" /> | ||
1193 | <button bottom_delta="-24" follows="left|top" font="SansSerif" halign="center" | 1228 | <button bottom_delta="-24" follows="left|top" font="SansSerif" halign="center" |
1194 | height="20" label="Abandon Land..." label_selected="Abandon Land..." | 1229 | height="20" label="About Land..." label_selected="About Land..." left="48" |
1195 | left="76" mouse_opaque="true" name="button abandon land" scale_image="TRUE" | 1230 | mouse_opaque="true" name="button about land" scale_image="TRUE" width="112" /> |
1196 | width="102" /> | 1231 | <check_box bottom_delta="-24" control_name="ShowParcelOwners" follows="left|top" |
1232 | tool_tip="Colour parcels according to their status" font="SansSerifSmall" | ||
1233 | height="16" initial_value="false" label="Show Status" left="48" | ||
1234 | mouse_opaque="true" name="checkbox show owners" width="100" /> | ||
1235 | <button bottom_delta="0" follows="left|top" font="SansSerif" halign="center" | ||
1236 | height="18" label="?" label_selected="?" left_delta="94" | ||
1237 | mouse_opaque="true" name="button show owners help" width="18" /> | ||
1238 | <text bg_visible="false" border_drop_shadow_visible="false" border_visible="false" | ||
1239 | bottom_delta="-56" drop_shadow_visible="true" follows="left|top" | ||
1240 | font="SansSerifSmall" h_pad="0" halign="left" height="16" left="40" | ||
1241 | mouse_opaque="true" name="label_parcel_trans" v_pad="0" width="150"> | ||
1242 | Land Transactions | ||
1243 | </text> | ||
1197 | <button bottom_delta="-24" follows="left|top" font="SansSerif" halign="center" | 1244 | <button bottom_delta="-24" follows="left|top" font="SansSerif" halign="center" |
1198 | height="20" label="Subdivide..." label_selected="Subdivide..." left="76" | 1245 | height="20" label="Buy Land..." label_selected="Buy Land..." left="48" |
1199 | mouse_opaque="true" name="button subdivide land" scale_image="TRUE" | 1246 | mouse_opaque="true" name="button buy land" scale_image="TRUE" width="112" /> |
1200 | width="102" /> | ||
1201 | <button bottom_delta="-24" follows="left|top" font="SansSerif" halign="center" | 1247 | <button bottom_delta="-24" follows="left|top" font="SansSerif" halign="center" |
1202 | height="20" label="Join..." label_selected="Join..." left="76" | 1248 | height="20" label="Abandon Land..." label_selected="Abandon Land..." |
1203 | mouse_opaque="true" name="button join land" scale_image="TRUE" width="102" /> | 1249 | left="48" mouse_opaque="true" name="button abandon land" scale_image="TRUE" |
1204 | <button bottom_delta="-40" follows="left|top" font="SansSerif" halign="center" | 1250 | width="112" /> |
1205 | height="20" label="About Land..." label_selected="About Land..." left="76" | ||
1206 | mouse_opaque="true" name="button about land" scale_image="TRUE" width="102" /> | ||
1207 | </panel> | 1251 | </panel> |
1208 | <string name="status_rotate"> | 1252 | <string name="status_rotate"> |
1209 | Drag colored bands to rotate object | 1253 | Drag colored bands to rotate object |