diff options
Diffstat (limited to 'linden/indra')
-rw-r--r-- | linden/indra/newview/app_settings/grass.xml | 14 | ||||
-rw-r--r-- | linden/indra/newview/app_settings/settings.xml | 32 | ||||
-rw-r--r-- | linden/indra/newview/app_settings/trees.xml | 32 | ||||
-rw-r--r-- | linden/indra/newview/llfloatertools.cpp | 74 | ||||
-rw-r--r-- | linden/indra/newview/llfloatertools.h | 4 | ||||
-rw-r--r-- | linden/indra/newview/lltoolplacer.cpp | 18 | ||||
-rw-r--r-- | linden/indra/newview/llvograss.cpp | 11 | ||||
-rw-r--r-- | linden/indra/newview/llvograss.h | 3 | ||||
-rw-r--r-- | linden/indra/newview/llvotree.cpp | 14 | ||||
-rw-r--r-- | linden/indra/newview/llvotree.h | 3 | ||||
-rw-r--r-- | linden/indra/newview/skins/default/xui/en-us/floater_tools.xml | 3 |
11 files changed, 172 insertions, 36 deletions
diff --git a/linden/indra/newview/app_settings/grass.xml b/linden/indra/newview/app_settings/grass.xml index 4fc3b79..bdfa603 100644 --- a/linden/indra/newview/app_settings/grass.xml +++ b/linden/indra/newview/app_settings/grass.xml | |||
@@ -1,47 +1,47 @@ | |||
1 | <?xml version="1.0" encoding="utf-8" standalone="yes"?> | 1 | <?xml version="1.0" encoding="utf-8" standalone="yes"?> |
2 | <grass_defs> | 2 | <grass_defs> |
3 | |||
3 | <grass | 4 | <grass |
4 | name="Grass 0" | 5 | name="Grass - Medium" |
5 | species_id="0" | 6 | species_id="0" |
6 | texture_id="6c4727b8-ac79-ba44-3b81-f9aa887b47eb" | 7 | texture_id="6c4727b8-ac79-ba44-3b81-f9aa887b47eb" |
7 | blade_size_x="1.35" | 8 | blade_size_x="1.35" |
8 | blade_size_y="1.35" | 9 | blade_size_y="1.35" |
9 | /> | 10 | /> |
10 | <grass | 11 | <grass |
11 | name="Grass 1" | 12 | name="Grass - Short 2" |
12 | species_id="1" | 13 | species_id="1" |
13 | texture_id="79504bf5-c3ec-0763-6563-d843de66d0a1" | 14 | texture_id="79504bf5-c3ec-0763-6563-d843de66d0a1" |
14 | blade_size_x="1.0" | 15 | blade_size_x="1.0" |
15 | blade_size_y="0.66" | 16 | blade_size_y="0.66" |
16 | /> | 17 | /> |
17 | <grass | 18 | <grass |
18 | name="Grass 2" | 19 | name="Grass - Tall Green" |
19 | species_id="2" | 20 | species_id="2" |
20 | texture_id="6c4727b8-ac79-ba44-3b81-f9aa887b47eb" | 21 | texture_id="6c4727b8-ac79-ba44-3b81-f9aa887b47eb" |
21 | blade_size_x="1.8" | 22 | blade_size_x="1.8" |
22 | blade_size_y="1.8" | 23 | blade_size_y="1.8" |
23 | /> | 24 | /> |
24 | <grass | 25 | <grass |
25 | name="Grass 3" | 26 | name="Grass - Short 1" |
26 | species_id="3" | 27 | species_id="3" |
27 | texture_id="99bd60a2-3250-efc9-2e39-2fbcadefbecc" | 28 | texture_id="99bd60a2-3250-efc9-2e39-2fbcadefbecc" |
28 | blade_size_x="1.0" | 29 | blade_size_x="1.0" |
29 | blade_size_y="1.0" | 30 | blade_size_y="1.0" |
30 | /> | 31 | /> |
31 | <grass | 32 | <grass |
32 | name="Grass 4" | 33 | name="Grass - Tall Brown" |
33 | species_id="4" | 34 | species_id="4" |
34 | texture_id="7a2b3a4a-53c2-53ac-5716-aac7d743c020" | 35 | texture_id="7a2b3a4a-53c2-53ac-5716-aac7d743c020" |
35 | blade_size_x="2.25" | 36 | blade_size_x="2.25" |
36 | blade_size_y="2.25" | 37 | blade_size_y="2.25" |
37 | /> | 38 | /> |
38 | <grass | 39 | <grass |
39 | name="undergrowth_1" | 40 | name="Leafy Ground Cover" |
40 | species_id="5" | 41 | species_id="5" |
41 | texture_id="8f458549-173b-23ff-d4ff-bfaa5ea2371b" | 42 | texture_id="8f458549-173b-23ff-d4ff-bfaa5ea2371b" |
42 | blade_size_x="2.0" | 43 | blade_size_x="2.0" |
43 | blade_size_y="2.0" | 44 | blade_size_y="2.0" |
44 | /> | 45 | /> |
45 | 46 | ||
46 | |||
47 | </grass_defs> \ No newline at end of file | 47 | </grass_defs> \ No newline at end of file |
diff --git a/linden/indra/newview/app_settings/settings.xml b/linden/indra/newview/app_settings/settings.xml index cce09e2..4947c45 100644 --- a/linden/indra/newview/app_settings/settings.xml +++ b/linden/indra/newview/app_settings/settings.xml | |||
@@ -4236,16 +4236,38 @@ | |||
4236 | <string>default</string> | 4236 | <string>default</string> |
4237 | </map> | 4237 | </map> |
4238 | <key>LanguageIsPublic</key> | 4238 | <key>LanguageIsPublic</key> |
4239 | <map> | 4239 | <map> |
4240 | <key>Comment</key> | 4240 | <key>Comment</key> |
4241 | <string>Let other residents see our language information</string> | 4241 | <string>Let other residents see our language information</string> |
4242 | <key>Persist</key> | 4242 | <key>Persist</key> |
4243 | <integer>1</integer> | 4243 | <integer>1</integer> |
4244 | <key>Type</key> | 4244 | <key>Type</key> |
4245 | <string>Boolean</string> | 4245 | <string>Boolean</string> |
4246 | <key>Value</key> | 4246 | <key>Value</key> |
4247 | <integer>1</integer> | 4247 | <integer>1</integer> |
4248 | </map> | 4248 | </map> |
4249 | <key>LastGrass</key> | ||
4250 | <map> | ||
4251 | <key>Comment</key> | ||
4252 | <string>The last grass selected in the create dialog</string> | ||
4253 | <key>Persist</key> | ||
4254 | <integer>1</integer> | ||
4255 | <key>Type</key> | ||
4256 | <string>String</string> | ||
4257 | <key>Value</key> | ||
4258 | <integer>Random</integer> | ||
4259 | </map> | ||
4260 | <key>LastTree</key> | ||
4261 | <map> | ||
4262 | <key>Comment</key> | ||
4263 | <string>The last tree selected in the create dialog</string> | ||
4264 | <key>Persist</key> | ||
4265 | <integer>1</integer> | ||
4266 | <key>Type</key> | ||
4267 | <string>String</string> | ||
4268 | <key>Value</key> | ||
4269 | <integer>Random</integer> | ||
4270 | </map> | ||
4249 | <key>LastFeatureVersion</key> | 4271 | <key>LastFeatureVersion</key> |
4250 | <map> | 4272 | <map> |
4251 | <key>Comment</key> | 4273 | <key>Comment</key> |
diff --git a/linden/indra/newview/app_settings/trees.xml b/linden/indra/newview/app_settings/trees.xml index 213ee85..36ffa62 100644 --- a/linden/indra/newview/app_settings/trees.xml +++ b/linden/indra/newview/app_settings/trees.xml | |||
@@ -1,24 +1,24 @@ | |||
1 | <?xml version="1.0" encoding="utf-8" standalone="yes"?> | 1 | <?xml version="1.0" encoding="utf-8" standalone="yes"?> |
2 | <tree_defs> | 2 | <tree_defs> |
3 | <tree name="Pine 1" species_id="0" texture_id="0187babf-6c0d-5891-ebed-4ecab1426683" droop="60.0" twist="5.0" branches="5.0" depth="1" scale_step="0.7" trunk_depth="6" branch_length="8.0" trunk_length="11.5" leaf_scale="22.0" billboard_scale="39.5" billboard_ratio="1.1" trunk_aspect="0.1" branch_aspect="0.05" leaf_rotate="20.0" noise_mag="0.5" noise_scale="2.5" taper="0.8" repeat_z="3" /> | 3 | <tree name="Pine Tree - Ponderosa" species_id="0" texture_id="0187babf-6c0d-5891-ebed-4ecab1426683" droop="60.0" twist="5.0" branches="5.0" depth="1" scale_step="0.7" trunk_depth="6" branch_length="8.0" trunk_length="11.5" leaf_scale="22.0" billboard_scale="39.5" billboard_ratio="1.1" trunk_aspect="0.1" branch_aspect="0.05" leaf_rotate="20.0" noise_mag="0.5" noise_scale="2.5" taper="0.8" repeat_z="3" /> |
4 | <tree name="Oak" species_id="1" texture_id="8a515889-eac9-fb55-8eba-d2dc09eb32c8" droop="35.0" twist="3.0" branches="4.0" depth="3" scale_step="0.7" trunk_depth="0" branch_length="3.0" trunk_length="3.8" leaf_scale="7.0" billboard_scale="10.25" billboard_ratio="1.0" trunk_aspect="0.15" branch_aspect="0.07" leaf_rotate="0.0" noise_mag="1.2" noise_scale="4.0" taper="0.3" repeat_z="4" /> | 4 | <tree name="Oak" species_id="1" texture_id="8a515889-eac9-fb55-8eba-d2dc09eb32c8" droop="35.0" twist="3.0" branches="4.0" depth="3" scale_step="0.7" trunk_depth="0" branch_length="3.0" trunk_length="3.8" leaf_scale="7.0" billboard_scale="10.25" billboard_ratio="1.0" trunk_aspect="0.15" branch_aspect="0.07" leaf_rotate="0.0" noise_mag="1.2" noise_scale="4.0" taper="0.3" repeat_z="4" /> |
5 | <tree name="Tropical Bush 1" species_id="2" texture_id="5bc11cd6-2f40-071e-a8da-0903394204f9" droop="10.0" twist="0.0" branches="6.0" depth="1" scale_step="0.5" trunk_depth="1" branch_length="0.5" trunk_length="0.15" leaf_scale="7.5" billboard_scale="5.0" billboard_ratio="1.25" trunk_aspect="1.0" branch_aspect="0.08" leaf_rotate="0.0" noise_mag="1.0" noise_scale="1.0" taper="0.2" repeat_z="1" /> | 5 | <tree name="Tropical Plant 1" species_id="2" texture_id="5bc11cd6-2f40-071e-a8da-0903394204f9" droop="10.0" twist="0.0" branches="6.0" depth="1" scale_step="0.5" trunk_depth="1" branch_length="0.5" trunk_length="0.15" leaf_scale="7.5" billboard_scale="5.0" billboard_ratio="1.25" trunk_aspect="1.0" branch_aspect="0.08" leaf_rotate="0.0" noise_mag="1.0" noise_scale="1.0" taper="0.2" repeat_z="1" /> |
6 | <tree name="Palm 1" species_id="3" texture_id="ca4e8c27-473c-eb1c-2f5d-50ee3f07d85c" droop="0.0" twist="0.0" branches="3.0" depth="1" scale_step="0.5" trunk_depth="0" branch_length="0.7" trunk_length="9.0" leaf_scale="10.0" billboard_scale="13.25" billboard_ratio="1.0" trunk_aspect="0.035" branch_aspect="0.03" leaf_rotate="0.0" noise_mag="0.2" noise_scale="6.0" taper="0.7" repeat_z="10" /> | 6 | <tree name="Palm Tree 1" species_id="3" texture_id="ca4e8c27-473c-eb1c-2f5d-50ee3f07d85c" droop="0.0" twist="0.0" branches="3.0" depth="1" scale_step="0.5" trunk_depth="0" branch_length="0.7" trunk_length="9.0" leaf_scale="10.0" billboard_scale="13.25" billboard_ratio="1.0" trunk_aspect="0.035" branch_aspect="0.03" leaf_rotate="0.0" noise_mag="0.2" noise_scale="6.0" taper="0.7" repeat_z="10" /> |
7 | <tree name="Dogwood" species_id="4" texture_id="64367bd1-697e-b3e6-0b65-3f862a577366" droop="30.0" twist="0.0" branches="3.0" depth="2" scale_step="0.7" trunk_depth="1" branch_length="2.75" trunk_length="4.0" leaf_scale="5.5" billboard_scale="10.0" billboard_ratio="1.0" trunk_aspect="0.06" branch_aspect="0.05" leaf_rotate="0.0" noise_mag="1.5" noise_scale="2.0" taper="0.8" repeat_z="3" /> | 7 | <tree name="Dogwood Tree" species_id="4" texture_id="64367bd1-697e-b3e6-0b65-3f862a577366" droop="30.0" twist="0.0" branches="3.0" depth="2" scale_step="0.7" trunk_depth="1" branch_length="2.75" trunk_length="4.0" leaf_scale="5.5" billboard_scale="10.0" billboard_ratio="1.0" trunk_aspect="0.06" branch_aspect="0.05" leaf_rotate="0.0" noise_mag="1.5" noise_scale="2.0" taper="0.8" repeat_z="3" /> |
8 | <tree name="Tropical Bush 2" species_id="5" texture_id="cdd9a9fc-6d0b-f90d-8416-c72b6019bca8" droop="10.0" twist="0.0" branches="3.0" depth="1" scale_step="0.5" trunk_depth="1" branch_length="0.5" trunk_length="0.15" leaf_scale="6.0" billboard_scale="4.5" billboard_ratio="0.9" trunk_aspect="1.0" branch_aspect="0.08" leaf_rotate="0.0" noise_mag="1.0" noise_scale="1.0" taper="0.2" repeat_z="1" /> | 8 | <tree name="Tropical Plant 2" species_id="5" texture_id="cdd9a9fc-6d0b-f90d-8416-c72b6019bca8" droop="10.0" twist="0.0" branches="3.0" depth="1" scale_step="0.5" trunk_depth="1" branch_length="0.5" trunk_length="0.15" leaf_scale="6.0" billboard_scale="4.5" billboard_ratio="0.9" trunk_aspect="1.0" branch_aspect="0.08" leaf_rotate="0.0" noise_mag="1.0" noise_scale="1.0" taper="0.2" repeat_z="1" /> |
9 | <tree name="Palm 2" species_id="6" texture_id="2d784476-d0db-9979-0cff-9408745a7cf3" droop="0.0" twist="0.0" branches="3.0" depth="1" scale_step="0.5" trunk_depth="0" branch_length="0.7" trunk_length="10.0" leaf_scale="7.5" billboard_scale="13.5" billboard_ratio="1.0" trunk_aspect="0.035" branch_aspect="0.03" leaf_rotate="0.0" noise_mag="0.2" noise_scale="6.0" taper="0.6" repeat_z="12" /> | 9 | <tree name="Palm Tree 2" species_id="6" texture_id="2d784476-d0db-9979-0cff-9408745a7cf3" droop="0.0" twist="0.0" branches="3.0" depth="1" scale_step="0.5" trunk_depth="0" branch_length="0.7" trunk_length="10.0" leaf_scale="7.5" billboard_scale="13.5" billboard_ratio="1.0" trunk_aspect="0.035" branch_aspect="0.03" leaf_rotate="0.0" noise_mag="0.2" noise_scale="6.0" taper="0.6" repeat_z="12" /> |
10 | <tree name="Cypress 1" species_id="7" texture_id="fb2ae204-3fd1-df33-594f-c9f882830e66" droop="30.0" twist="0.0" branches="3.0" depth="4" scale_step="0.5" trunk_depth="0" branch_length="10.0" trunk_length="10.0" leaf_scale="70.0" billboard_scale="22.5" billboard_ratio="1.0" trunk_aspect="0.05" branch_aspect="0.03" leaf_rotate="0.0" noise_mag="1.2" noise_scale="1.0" taper="0.5" repeat_z="6" /> | 10 | <tree name="Cypress Tree 1" species_id="7" texture_id="fb2ae204-3fd1-df33-594f-c9f882830e66" droop="30.0" twist="0.0" branches="3.0" depth="4" scale_step="0.5" trunk_depth="0" branch_length="10.0" trunk_length="10.0" leaf_scale="70.0" billboard_scale="22.5" billboard_ratio="1.0" trunk_aspect="0.05" branch_aspect="0.03" leaf_rotate="0.0" noise_mag="1.2" noise_scale="1.0" taper="0.5" repeat_z="6" /> |
11 | <tree name="Cypress 2" species_id="8" texture_id="30047cec-269d-408e-0c30-b2603b887268" droop="30.0" twist="0.0" branches="3.0" depth="4" scale_step="0.6" trunk_depth="3.0" branch_length="7.5" trunk_length="10.0" leaf_scale="35.0" billboard_scale="25.0" billboard_ratio="0.8" trunk_aspect="0.05" branch_aspect="0.04" leaf_rotate="0.0" noise_mag="1.2" noise_scale="1.0" taper="0.5" repeat_z="5" /> | 11 | <tree name="Cypress Tree 2" species_id="8" texture_id="30047cec-269d-408e-0c30-b2603b887268" droop="30.0" twist="0.0" branches="3.0" depth="4" scale_step="0.6" trunk_depth="3.0" branch_length="7.5" trunk_length="10.0" leaf_scale="35.0" billboard_scale="25.0" billboard_ratio="0.8" trunk_aspect="0.05" branch_aspect="0.04" leaf_rotate="0.0" noise_mag="1.2" noise_scale="1.0" taper="0.5" repeat_z="5" /> |
12 | <tree name="Pine 2" species_id="9" texture_id="d691a01c-13b7-578d-57c0-5caef0b4e7e1" droop="50.0" twist="7.5" branches="4.0" depth="2" scale_step="0.7" trunk_depth="6.0" branch_length="6.0" trunk_length="10.0" leaf_scale="15.5" billboard_scale="33.0" billboard_ratio="1.35" trunk_aspect="0.1" branch_aspect="0.08" leaf_rotate="5.0" noise_mag="0.5" noise_scale="2.5" taper="0.7" repeat_z="3" /> | 12 | <tree name="Pine Tree - Evergreen" species_id="9" texture_id="d691a01c-13b7-578d-57c0-5caef0b4e7e1" droop="50.0" twist="7.5" branches="4.0" depth="2" scale_step="0.7" trunk_depth="6.0" branch_length="6.0" trunk_length="10.0" leaf_scale="15.5" billboard_scale="33.0" billboard_ratio="1.35" trunk_aspect="0.1" branch_aspect="0.08" leaf_rotate="5.0" noise_mag="0.5" noise_scale="2.5" taper="0.7" repeat_z="3" /> |
13 | <tree name="Plumeria" species_id="10" texture_id="6de37e4e-7029-61f5-54b8-f5e63f983f58" droop="8.0" twist="7.0" branches="3.0" depth="2" scale_step="0.6" trunk_depth="0" branch_length="3.0" trunk_length="0.1" leaf_scale="20" billboard_scale="10.0" billboard_ratio="1.35" trunk_aspect="0.10" branch_aspect="0.075" leaf_rotate="0.0" noise_mag="0" noise_scale="0" taper="0.85" repeat_z="2" /> | 13 | <tree name="Plumeria" species_id="10" texture_id="6de37e4e-7029-61f5-54b8-f5e63f983f58" droop="8.0" twist="7.0" branches="3.0" depth="2" scale_step="0.6" trunk_depth="0" branch_length="3.0" trunk_length="0.1" leaf_scale="20" billboard_scale="10.0" billboard_ratio="1.35" trunk_aspect="0.10" branch_aspect="0.075" leaf_rotate="0.0" noise_mag="0" noise_scale="0" taper="0.85" repeat_z="2" /> |
14 | <tree name="Winter Pine 1" species_id="11" texture_id="10d2a01a-0818-84b9-4b96-c2eb63256519" droop="90.0" twist="2.5" branches="6.0" depth="1" scale_step="0.66" trunk_depth="8" branch_length="0.0" trunk_length="4" leaf_scale="6.75" billboard_scale="12.5" billboard_ratio="0.6" trunk_aspect="0.1" branch_aspect="0.05" leaf_rotate="0.0" noise_mag="0.0" noise_scale="2.5" taper="0.85" repeat_z="2" /> | 14 | <tree name="Winter Pine Tree 1" species_id="11" texture_id="10d2a01a-0818-84b9-4b96-c2eb63256519" droop="90.0" twist="2.5" branches="6.0" depth="1" scale_step="0.66" trunk_depth="8" branch_length="0.0" trunk_length="4" leaf_scale="6.75" billboard_scale="12.5" billboard_ratio="0.6" trunk_aspect="0.1" branch_aspect="0.05" leaf_rotate="0.0" noise_mag="0.0" noise_scale="2.5" taper="0.85" repeat_z="2" /> |
15 | <tree name="Winter Aspen" species_id="12" texture_id="7c0cf89b-44b1-1ce2-dd74-07102a98ac2a" droop="85.0" twist="3.0" branches="5" depth="1" scale_step="0.6" trunk_depth="8" branch_length="3.0" trunk_length="4.5" leaf_scale="8" billboard_scale="12" billboard_ratio=".675" trunk_aspect="0.06" branch_aspect="0.05" leaf_rotate="0.0" noise_mag="0.75" noise_scale="2.5" taper="0.8" repeat_z="2" /> | 15 | <tree name="Winter Aspen Tree" species_id="12" texture_id="7c0cf89b-44b1-1ce2-dd74-07102a98ac2a" droop="85.0" twist="3.0" branches="5" depth="1" scale_step="0.6" trunk_depth="8" branch_length="3.0" trunk_length="4.5" leaf_scale="8" billboard_scale="12" billboard_ratio=".675" trunk_aspect="0.06" branch_aspect="0.05" leaf_rotate="0.0" noise_mag="0.75" noise_scale="2.5" taper="0.8" repeat_z="2" /> |
16 | <tree name="Winter Pine 2" species_id="13" texture_id="67931331-0c02-4876-1255-28770896c6a2" droop="140.0" twist="5.0" branches="6.0" depth="1" scale_step="0.6" trunk_depth="7" branch_length="0.0" trunk_length="3" leaf_scale="5.0" billboard_scale="7.5" billboard_ratio="0.5" trunk_aspect="0.1" branch_aspect="0.05" leaf_rotate="0.0" noise_mag="0.750" noise_scale="2.5" taper="0.5" repeat_z="2" /> | 16 | <tree name="Winter Pine Tree 2" species_id="13" texture_id="67931331-0c02-4876-1255-28770896c6a2" droop="140.0" twist="5.0" branches="6.0" depth="1" scale_step="0.6" trunk_depth="7" branch_length="0.0" trunk_length="3" leaf_scale="5.0" billboard_scale="7.5" billboard_ratio="0.5" trunk_aspect="0.1" branch_aspect="0.05" leaf_rotate="0.0" noise_mag="0.750" noise_scale="2.5" taper="0.5" repeat_z="2" /> |
17 | <tree name="Eucalyptus" species_id="14" texture_id="a6162133-724b-54df-a12f-51cd070ad6f3" droop="20.0" twist="5.0" branches="3.6" depth="4" scale_step="0.6" trunk_depth="0" branch_length="12.0" trunk_length="8.0" leaf_scale="33.0" billboard_scale="24" billboard_ratio="1.3" trunk_aspect="0.15" branch_aspect="0.08" leaf_rotate="0.0" noise_mag="0" noise_scale="0" taper="0.675" repeat_z="3" /> | 17 | <tree name="Eucalyptus Tree" species_id="14" texture_id="a6162133-724b-54df-a12f-51cd070ad6f3" droop="20.0" twist="5.0" branches="3.6" depth="4" scale_step="0.6" trunk_depth="0" branch_length="12.0" trunk_length="8.0" leaf_scale="33.0" billboard_scale="24" billboard_ratio="1.3" trunk_aspect="0.15" branch_aspect="0.08" leaf_rotate="0.0" noise_mag="0" noise_scale="0" taper="0.675" repeat_z="3" /> |
18 | <tree name="Fern" species_id="15" texture_id="8872f2b8-31db-42d8-580a-b3e4a91262de" droop="12.0" twist="0.0" branches="7.0" depth="1" scale_step="0.5" trunk_depth="0.1" branch_length="0.01" trunk_length="0.0" leaf_scale="4" billboard_scale="3.5" billboard_ratio="0.85" trunk_aspect="1.0" branch_aspect="0.08" leaf_rotate="0.0" noise_mag="1.0" noise_scale="1.0" taper="0.2" repeat_z="1" /> | 18 | <tree name="Fern" species_id="15" texture_id="8872f2b8-31db-42d8-580a-b3e4a91262de" droop="12.0" twist="0.0" branches="7.0" depth="1" scale_step="0.5" trunk_depth="0.1" branch_length="0.01" trunk_length="0.0" leaf_scale="4" billboard_scale="3.5" billboard_ratio="0.85" trunk_aspect="1.0" branch_aspect="0.08" leaf_rotate="0.0" noise_mag="1.0" noise_scale="1.0" taper="0.2" repeat_z="1" /> |
19 | <tree name="Eelgrass" species_id="16" texture_id="96b4de31-f4fa-337d-ec78-451e3609769e" droop="0.0" twist="0.0" branches="5.0" depth="1" scale_step="0.5" trunk_depth="1" branch_length="0.5" trunk_length="0.15" leaf_scale="5.0" billboard_scale="3.0" billboard_ratio="1.0" trunk_aspect="1.0" branch_aspect="0.08" leaf_rotate="0.0" noise_mag="1.0" noise_scale="1.0" taper="0.2" repeat_z="1" /> | 19 | <tree name="Eelgrass" species_id="16" texture_id="96b4de31-f4fa-337d-ec78-451e3609769e" droop="0.0" twist="0.0" branches="5.0" depth="1" scale_step="0.5" trunk_depth="1" branch_length="0.5" trunk_length="0.15" leaf_scale="5.0" billboard_scale="3.0" billboard_ratio="1.0" trunk_aspect="1.0" branch_aspect="0.08" leaf_rotate="0.0" noise_mag="1.0" noise_scale="1.0" taper="0.2" repeat_z="1" /> |
20 | <tree name="Sea Sword" species_id="17" texture_id="5894e2e7-ab8d-edfa-e61c-18cf16854ba3" droop="0.0" twist="0.0" branches="6.0" depth="1" scale_step="0.7" trunk_depth="1" branch_length="0.0" trunk_length="0.0" leaf_scale="2.0" billboard_scale="2.0" billboard_ratio="1.0" trunk_aspect="1.0" branch_aspect="1.0" leaf_rotate="0.0" noise_mag="0.5" noise_scale="0.0" taper="0.0" repeat_z="1" /> | 20 | <tree name="Sea Sword" species_id="17" texture_id="5894e2e7-ab8d-edfa-e61c-18cf16854ba3" droop="0.0" twist="0.0" branches="6.0" depth="1" scale_step="0.7" trunk_depth="1" branch_length="0.0" trunk_length="0.0" leaf_scale="2.0" billboard_scale="2.0" billboard_ratio="1.0" trunk_aspect="1.0" branch_aspect="1.0" leaf_rotate="0.0" noise_mag="0.5" noise_scale="0.0" taper="0.0" repeat_z="1" /> |
21 | <tree name="Kelp 1" species_id="18" texture_id="2caf1179-7861-6ff3-4b7d-46e17780bdfa" droop="-15.0" twist="0.0" branches="1.0" depth="1" scale_step="1.0" trunk_depth="3" branch_length="2.5" trunk_length="0.75" leaf_scale="1.85" billboard_scale="4.9" billboard_ratio="1.0" trunk_aspect="0.04" branch_aspect="0.05" leaf_rotate="0.0" noise_mag="1.0" noise_scale="2.0" taper="0.8" repeat_z="2" /> | 21 | <tree name="Kelp (brown)" species_id="18" texture_id="2caf1179-7861-6ff3-4b7d-46e17780bdfa" droop="-15.0" twist="0.0" branches="1.0" depth="1" scale_step="1.0" trunk_depth="3" branch_length="2.5" trunk_length="0.75" leaf_scale="1.85" billboard_scale="4.9" billboard_ratio="1.0" trunk_aspect="0.04" branch_aspect="0.05" leaf_rotate="0.0" noise_mag="1.0" noise_scale="2.0" taper="0.8" repeat_z="2" /> |
22 | <tree name="Beach Grass 1" species_id="19" texture_id="18fb888b-e8f1-dce7-7da7-321d651ea6b0" droop="0.0" twist="0.0" branches="4.0" depth="1" scale_step="0.7" trunk_depth="1" branch_length="0.0" trunk_length="0.0" leaf_scale="4.0" billboard_scale="2.5" billboard_ratio="1.2" trunk_aspect="1.0" branch_aspect="1.0" leaf_rotate="0.0" noise_mag="0.5" noise_scale="0.0" taper="0.0" repeat_z="1" /> | 22 | <tree name="Beach Grass" species_id="19" texture_id="18fb888b-e8f1-dce7-7da7-321d651ea6b0" droop="0.0" twist="0.0" branches="4.0" depth="1" scale_step="0.7" trunk_depth="1" branch_length="0.0" trunk_length="0.0" leaf_scale="4.0" billboard_scale="2.5" billboard_ratio="1.2" trunk_aspect="1.0" branch_aspect="1.0" leaf_rotate="0.0" noise_mag="0.5" noise_scale="0.0" taper="0.0" repeat_z="1" /> |
23 | <tree name="Kelp 2" species_id="20" texture_id="2a4880b6-b7a3-690a-2049-bfbe38eafb9f" droop="-15.0" twist="0.0" branches="1.0" depth="1" scale_step="1.0" trunk_depth="3" branch_length="2.5" trunk_length="1.35" leaf_scale="2.0" billboard_scale="4.9" billboard_ratio="1.0" trunk_aspect="0.025" branch_aspect="0.05" leaf_rotate="0.0" noise_mag="1.0" noise_scale="2.0" taper="0.8" repeat_z="2" /> | 23 | <tree name="Kelp (green)" species_id="20" texture_id="2a4880b6-b7a3-690a-2049-bfbe38eafb9f" droop="-15.0" twist="0.0" branches="1.0" depth="1" scale_step="1.0" trunk_depth="3" branch_length="2.5" trunk_length="1.35" leaf_scale="2.0" billboard_scale="4.9" billboard_ratio="1.0" trunk_aspect="0.025" branch_aspect="0.05" leaf_rotate="0.0" noise_mag="1.0" noise_scale="2.0" taper="0.8" repeat_z="2" /> |
24 | </tree_defs> | 24 | </tree_defs> |
diff --git a/linden/indra/newview/llfloatertools.cpp b/linden/indra/newview/llfloatertools.cpp index e723ba1..2fc4c71 100644 --- a/linden/indra/newview/llfloatertools.cpp +++ b/linden/indra/newview/llfloatertools.cpp | |||
@@ -77,6 +77,8 @@ | |||
77 | #include "llviewerwindow.h" | 77 | #include "llviewerwindow.h" |
78 | #include "llviewercontrol.h" | 78 | #include "llviewercontrol.h" |
79 | #include "llviewerjoystick.h" | 79 | #include "llviewerjoystick.h" |
80 | #include "llvograss.h" | ||
81 | #include "llvotree.h" | ||
80 | #include "lluictrlfactory.h" | 82 | #include "lluictrlfactory.h" |
81 | 83 | ||
82 | // Globals | 84 | // Globals |
@@ -276,10 +278,14 @@ BOOL LLFloaterTools::postBuild() | |||
276 | { | 278 | { |
277 | found->setClickedCallback(setObjectType,toolData[t]); | 279 | found->setClickedCallback(setObjectType,toolData[t]); |
278 | mButtons.push_back( found ); | 280 | mButtons.push_back( found ); |
279 | }else{ | 281 | } |
282 | else | ||
283 | { | ||
280 | llwarns << "Tool button not found! DOA Pending." << llendl; | 284 | llwarns << "Tool button not found! DOA Pending." << llendl; |
281 | } | 285 | } |
282 | } | 286 | } |
287 | mComboTreesGrass = getChild<LLComboBox>("trees_grass"); | ||
288 | childSetCommitCallback("trees_grass", onSelectTreesGrass, (void*)0); | ||
283 | mCheckCopySelection = getChild<LLCheckBoxCtrl>("checkbox copy selection"); | 289 | mCheckCopySelection = getChild<LLCheckBoxCtrl>("checkbox copy selection"); |
284 | childSetValue("checkbox copy selection",(BOOL)gSavedSettings.getBOOL("CreateToolCopySelection")); | 290 | childSetValue("checkbox copy selection",(BOOL)gSavedSettings.getBOOL("CreateToolCopySelection")); |
285 | mCheckSticky = getChild<LLCheckBoxCtrl>("checkbox sticky"); | 291 | mCheckSticky = getChild<LLCheckBoxCtrl>("checkbox sticky"); |
@@ -381,6 +387,7 @@ LLFloaterTools::LLFloaterTools() | |||
381 | mBtnDuplicate(NULL), | 387 | mBtnDuplicate(NULL), |
382 | mBtnDuplicateInPlace(NULL), | 388 | mBtnDuplicateInPlace(NULL), |
383 | 389 | ||
390 | mComboTreesGrass(NULL), | ||
384 | mCheckSticky(NULL), | 391 | mCheckSticky(NULL), |
385 | mCheckCopySelection(NULL), | 392 | mCheckCopySelection(NULL), |
386 | mCheckCopyCenters(NULL), | 393 | mCheckCopyCenters(NULL), |
@@ -659,6 +666,8 @@ void LLFloaterTools::updatePopup(LLCoordGL center, MASK mask) | |||
659 | 666 | ||
660 | mBtnCreate ->setToggleState( tool == LLToolCompCreate::getInstance() ); | 667 | mBtnCreate ->setToggleState( tool == LLToolCompCreate::getInstance() ); |
661 | 668 | ||
669 | updateTreeGrassCombo(create_visible); | ||
670 | |||
662 | if (mCheckCopySelection | 671 | if (mCheckCopySelection |
663 | && mCheckCopySelection->get()) | 672 | && mCheckCopySelection->get()) |
664 | { | 673 | { |
@@ -1004,6 +1013,7 @@ void LLFloaterTools::setObjectType( void* data ) | |||
1004 | LLPCode pcode = *(LLPCode*) data; | 1013 | LLPCode pcode = *(LLPCode*) data; |
1005 | LLToolPlacer::setObjectType( pcode ); | 1014 | LLToolPlacer::setObjectType( pcode ); |
1006 | gSavedSettings.setBOOL("CreateToolCopySelection", FALSE); | 1015 | gSavedSettings.setBOOL("CreateToolCopySelection", FALSE); |
1016 | gFloaterTools->updateTreeGrassCombo(true); | ||
1007 | gFocusMgr.setMouseCapture(NULL); | 1017 | gFocusMgr.setMouseCapture(NULL); |
1008 | } | 1018 | } |
1009 | 1019 | ||
@@ -1026,3 +1036,65 @@ void LLFloaterTools::onFocusReceived() | |||
1026 | LLToolMgr::getInstance()->setCurrentToolset(gBasicToolset); | 1036 | LLToolMgr::getInstance()->setCurrentToolset(gBasicToolset); |
1027 | LLFloater::onFocusReceived(); | 1037 | LLFloater::onFocusReceived(); |
1028 | } | 1038 | } |
1039 | |||
1040 | void LLFloaterTools::updateTreeGrassCombo(bool visible) | ||
1041 | { | ||
1042 | if (visible) | ||
1043 | { | ||
1044 | LLPCode pcode = LLToolPlacer::getObjectType(); | ||
1045 | std::map<std::string, S32>::iterator it, end; | ||
1046 | std::string selected; | ||
1047 | if (pcode == LLToolPlacerPanel::sTree) | ||
1048 | { | ||
1049 | selected = gSavedSettings.getString("LastTree"); | ||
1050 | it = LLVOTree::sSpeciesNames.begin(); | ||
1051 | end = LLVOTree::sSpeciesNames.end(); | ||
1052 | } | ||
1053 | else if (pcode == LLToolPlacerPanel::sGrass) | ||
1054 | { | ||
1055 | selected = gSavedSettings.getString("LastGrass"); | ||
1056 | it = LLVOGrass::sSpeciesNames.begin(); | ||
1057 | end = LLVOGrass::sSpeciesNames.end(); | ||
1058 | } | ||
1059 | else | ||
1060 | { | ||
1061 | mComboTreesGrass->removeall(); | ||
1062 | mComboTreesGrass->setLabel(LLStringExplicit("")); // LLComboBox::removeall() does not clear the label | ||
1063 | mComboTreesGrass->setEnabled(false); | ||
1064 | return; | ||
1065 | } | ||
1066 | |||
1067 | mComboTreesGrass->removeall(); | ||
1068 | mComboTreesGrass->add("Random"); | ||
1069 | |||
1070 | int select = 0, i = 0; | ||
1071 | |||
1072 | while (it != end) | ||
1073 | { | ||
1074 | const std::string &species = it->first; | ||
1075 | mComboTreesGrass->add(species); ++i; | ||
1076 | if (species == selected) select = i; | ||
1077 | ++it; | ||
1078 | } | ||
1079 | // if saved species not found, default to "Random" | ||
1080 | mComboTreesGrass->selectNthItem(select); | ||
1081 | mComboTreesGrass->setEnabled(true); | ||
1082 | } | ||
1083 | |||
1084 | mComboTreesGrass->setVisible(visible); | ||
1085 | } | ||
1086 | |||
1087 | // static | ||
1088 | void LLFloaterTools::onSelectTreesGrass(LLUICtrl*, void*) | ||
1089 | { | ||
1090 | const std::string &selected = gFloaterTools->mComboTreesGrass->getValue(); | ||
1091 | LLPCode pcode = LLToolPlacer::getObjectType(); | ||
1092 | if (pcode == LLToolPlacerPanel::sTree) | ||
1093 | { | ||
1094 | gSavedSettings.setString("LastTree", selected); | ||
1095 | } | ||
1096 | else if (pcode == LLToolPlacerPanel::sGrass) | ||
1097 | { | ||
1098 | gSavedSettings.setString("LastGrass", selected); | ||
1099 | } | ||
1100 | } | ||
diff --git a/linden/indra/newview/llfloatertools.h b/linden/indra/newview/llfloatertools.h index 9d555d1..360b1df 100644 --- a/linden/indra/newview/llfloatertools.h +++ b/linden/indra/newview/llfloatertools.h | |||
@@ -153,6 +153,7 @@ public: | |||
153 | LLButton *mBtnDuplicateInPlace; | 153 | LLButton *mBtnDuplicateInPlace; |
154 | 154 | ||
155 | // Create buttons | 155 | // Create buttons |
156 | LLComboBox *mComboTreesGrass; | ||
156 | LLCheckBoxCtrl *mCheckSticky; | 157 | LLCheckBoxCtrl *mCheckSticky; |
157 | LLCheckBoxCtrl *mCheckCopySelection; | 158 | LLCheckBoxCtrl *mCheckCopySelection; |
158 | LLCheckBoxCtrl *mCheckCopyCenters; | 159 | LLCheckBoxCtrl *mCheckCopyCenters; |
@@ -194,6 +195,9 @@ private: | |||
194 | S32 mLargeHeight; | 195 | S32 mLargeHeight; |
195 | 196 | ||
196 | std::map<std::string, std::string> mStatusText; | 197 | std::map<std::string, std::string> mStatusText; |
198 | |||
199 | void updateTreeGrassCombo(bool visible); | ||
200 | static void onSelectTreesGrass(LLUICtrl*, void*); | ||
197 | }; | 201 | }; |
198 | 202 | ||
199 | extern LLFloaterTools *gFloaterTools; | 203 | extern LLFloaterTools *gFloaterTools; |
diff --git a/linden/indra/newview/lltoolplacer.cpp b/linden/indra/newview/lltoolplacer.cpp index dda21dd..297556e 100644 --- a/linden/indra/newview/lltoolplacer.cpp +++ b/linden/indra/newview/lltoolplacer.cpp | |||
@@ -156,6 +156,20 @@ BOOL LLToolPlacer::raycastForNewObjPos( S32 x, S32 y, LLViewerObject** hit_obj, | |||
156 | } | 156 | } |
157 | 157 | ||
158 | 158 | ||
159 | static S32 getTreeGrassSpecies(std::map<std::string, S32> &table, const char *control, S32 max) | ||
160 | { | ||
161 | const std::string &species = gSavedSettings.getString(control); | ||
162 | std::map<std::string, S32>::iterator it; | ||
163 | it = table.find(species); | ||
164 | if (it != table.end()) { | ||
165 | return it->second; | ||
166 | } else { | ||
167 | // if saved species not found, default to "Random" | ||
168 | return (rand() % max); | ||
169 | } | ||
170 | } | ||
171 | |||
172 | |||
159 | BOOL LLToolPlacer::addObject( LLPCode pcode, S32 x, S32 y, U8 use_physics ) | 173 | BOOL LLToolPlacer::addObject( LLPCode pcode, S32 x, S32 y, U8 use_physics ) |
160 | { | 174 | { |
161 | LLVector3 ray_start_region; | 175 | LLVector3 ray_start_region; |
@@ -200,13 +214,13 @@ BOOL LLToolPlacer::addObject( LLPCode pcode, S32 x, S32 y, U8 use_physics ) | |||
200 | case LL_PCODE_LEGACY_GRASS: | 214 | case LL_PCODE_LEGACY_GRASS: |
201 | // Randomize size of grass patch | 215 | // Randomize size of grass patch |
202 | scale.setVec(10.f + ll_frand(20.f), 10.f + ll_frand(20.f), 1.f + ll_frand(2.f)); | 216 | scale.setVec(10.f + ll_frand(20.f), 10.f + ll_frand(20.f), 1.f + ll_frand(2.f)); |
203 | state = rand() % LLVOGrass::sMaxGrassSpecies; | 217 | state = getTreeGrassSpecies(LLVOGrass::sSpeciesNames, "LastGrass", LLVOGrass::sMaxGrassSpecies); |
204 | break; | 218 | break; |
205 | 219 | ||
206 | 220 | ||
207 | case LL_PCODE_LEGACY_TREE: | 221 | case LL_PCODE_LEGACY_TREE: |
208 | case LL_PCODE_TREE_NEW: | 222 | case LL_PCODE_TREE_NEW: |
209 | state = rand() % LLVOTree::sMaxTreeSpecies; | 223 | state = getTreeGrassSpecies(LLVOTree::sSpeciesNames, "LastTree", LLVOTree::sMaxTreeSpecies); |
210 | break; | 224 | break; |
211 | 225 | ||
212 | case LL_PCODE_SPHERE: | 226 | case LL_PCODE_SPHERE: |
diff --git a/linden/indra/newview/llvograss.cpp b/linden/indra/newview/llvograss.cpp index 4e7816c..79addbb 100644 --- a/linden/indra/newview/llvograss.cpp +++ b/linden/indra/newview/llvograss.cpp | |||
@@ -71,6 +71,8 @@ F32 w_mod[GRASS_MAX_BLADES]; // Factor to modulate wind movement by to rand | |||
71 | LLVOGrass::SpeciesMap LLVOGrass::sSpeciesTable; | 71 | LLVOGrass::SpeciesMap LLVOGrass::sSpeciesTable; |
72 | S32 LLVOGrass::sMaxGrassSpecies = 0; | 72 | S32 LLVOGrass::sMaxGrassSpecies = 0; |
73 | 73 | ||
74 | LLVOGrass::SpeciesNames LLVOGrass::sSpeciesNames; | ||
75 | |||
74 | 76 | ||
75 | LLVOGrass::LLVOGrass(const LLUUID &id, const LLPCode pcode, LLViewerRegion *regionp) | 77 | LLVOGrass::LLVOGrass(const LLUUID &id, const LLPCode pcode, LLViewerRegion *regionp) |
76 | : LLAlphaObject(id, pcode, regionp) | 78 | : LLAlphaObject(id, pcode, regionp) |
@@ -201,11 +203,16 @@ void LLVOGrass::initClass() | |||
201 | 203 | ||
202 | if (species >= sMaxGrassSpecies) sMaxGrassSpecies = species + 1; | 204 | if (species >= sMaxGrassSpecies) sMaxGrassSpecies = species + 1; |
203 | 205 | ||
206 | std::string name; | ||
207 | static LLStdStringHandle name_string = LLXmlTree::addAttributeString("name"); | ||
208 | success &= grass_def->getFastAttributeString(name_string, name); | ||
209 | sSpeciesNames[name] = species; | ||
210 | |||
204 | if (!success) | 211 | if (!success) |
205 | { | 212 | { |
206 | std::string name; | 213 | /*std::string name; |
207 | static LLStdStringHandle name_string = LLXmlTree::addAttributeString("name"); | 214 | static LLStdStringHandle name_string = LLXmlTree::addAttributeString("name"); |
208 | grass_def->getFastAttributeString(name_string, name); | 215 | grass_def->getFastAttributeString(name_string, name);*/ |
209 | llwarns << "Incomplete definition of grass " << name << llendl; | 216 | llwarns << "Incomplete definition of grass " << name << llendl; |
210 | } | 217 | } |
211 | } | 218 | } |
diff --git a/linden/indra/newview/llvograss.h b/linden/indra/newview/llvograss.h index 95197a5..de700bd 100644 --- a/linden/indra/newview/llvograss.h +++ b/linden/indra/newview/llvograss.h | |||
@@ -116,6 +116,9 @@ public: | |||
116 | F32 mBladeWindAngle; | 116 | F32 mBladeWindAngle; |
117 | F32 mBWAOverlap; | 117 | F32 mBWAOverlap; |
118 | 118 | ||
119 | typedef std::map<std::string, S32> SpeciesNames; | ||
120 | static SpeciesNames sSpeciesNames; | ||
121 | |||
119 | protected: | 122 | protected: |
120 | ~LLVOGrass(); | 123 | ~LLVOGrass(); |
121 | 124 | ||
diff --git a/linden/indra/newview/llvotree.cpp b/linden/indra/newview/llvotree.cpp index 23c92ea..e1c3542 100644 --- a/linden/indra/newview/llvotree.cpp +++ b/linden/indra/newview/llvotree.cpp | |||
@@ -77,6 +77,9 @@ F32 LLVOTree::sTreeFactor = 1.f; | |||
77 | LLVOTree::SpeciesMap LLVOTree::sSpeciesTable; | 77 | LLVOTree::SpeciesMap LLVOTree::sSpeciesTable; |
78 | S32 LLVOTree::sMaxTreeSpecies = 0; | 78 | S32 LLVOTree::sMaxTreeSpecies = 0; |
79 | 79 | ||
80 | LLVOTree::SpeciesNames LLVOTree::sSpeciesNames; | ||
81 | |||
82 | |||
80 | // Tree variables and functions | 83 | // Tree variables and functions |
81 | 84 | ||
82 | LLVOTree::LLVOTree(const LLUUID &id, const LLPCode pcode, LLViewerRegion *regionp): | 85 | LLVOTree::LLVOTree(const LLUUID &id, const LLPCode pcode, LLViewerRegion *regionp): |
@@ -230,11 +233,16 @@ void LLVOTree::initClass() | |||
230 | 233 | ||
231 | if (species >= sMaxTreeSpecies) sMaxTreeSpecies = species + 1; | 234 | if (species >= sMaxTreeSpecies) sMaxTreeSpecies = species + 1; |
232 | 235 | ||
236 | std::string name; | ||
237 | static LLStdStringHandle name_string = LLXmlTree::addAttributeString("name"); | ||
238 | success &= tree_def->getFastAttributeString(name_string, name); | ||
239 | sSpeciesNames[name] = species; | ||
240 | |||
233 | if (!success) | 241 | if (!success) |
234 | { | 242 | { |
235 | std::string name; | 243 | //std::string name; |
236 | static LLStdStringHandle name_string = LLXmlTree::addAttributeString("name"); | 244 | //static LLStdStringHandle name_string = LLXmlTree::addAttributeString("name"); |
237 | tree_def->getFastAttributeString(name_string, name); | 245 | //tree_def->getFastAttributeString(name_string, name); |
238 | llwarns << "Incomplete definition of tree " << name << llendl; | 246 | llwarns << "Incomplete definition of tree " << name << llendl; |
239 | } | 247 | } |
240 | } | 248 | } |
diff --git a/linden/indra/newview/llvotree.h b/linden/indra/newview/llvotree.h index f34371e..055cfa3 100644 --- a/linden/indra/newview/llvotree.h +++ b/linden/indra/newview/llvotree.h | |||
@@ -120,6 +120,9 @@ public: | |||
120 | 120 | ||
121 | static F32 sTreeFactor; // Tree level of detail factor | 121 | static F32 sTreeFactor; // Tree level of detail factor |
122 | 122 | ||
123 | typedef std::map<std::string, S32> SpeciesNames; | ||
124 | static SpeciesNames sSpeciesNames; | ||
125 | |||
123 | friend class LLDrawPoolTree; | 126 | friend class LLDrawPoolTree; |
124 | protected: | 127 | protected: |
125 | LLVector3 mTrunkBend; // Accumulated wind (used for blowing trees) | 128 | LLVector3 mTrunkBend; // Accumulated wind (used for blowing trees) |
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 eb9b1c6..6fc5374 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 | |||
@@ -227,6 +227,9 @@ | |||
227 | image_unselected="object_grass.tga" label="" label_selected="" | 227 | image_unselected="object_grass.tga" label="" label_selected="" |
228 | left_delta="23" mouse_opaque="true" name="ToolGrass" scale_image="TRUE" | 228 | left_delta="23" mouse_opaque="true" name="ToolGrass" scale_image="TRUE" |
229 | tool_tip="Grass" width="24" /> | 229 | tool_tip="Grass" width="24" /> |
230 | <combo_box max_chars="20" enabled="false" allow_text_entry="false" name="trees_grass" | ||
231 | height="18" width="135" right="-5" bottom="-122" | ||
232 | follows="left|top" mouse_opaque="true" /> | ||
230 | <check_box bottom="-117" control_name="CreateToolKeepSelected" follows="left|top" | 233 | <check_box bottom="-117" control_name="CreateToolKeepSelected" follows="left|top" |
231 | font="SansSerifSmall" height="16" initial_value="false" | 234 | font="SansSerifSmall" height="16" initial_value="false" |
232 | label="Keep Tool Selected" left="4" mouse_opaque="true" | 235 | label="Keep Tool Selected" left="4" mouse_opaque="true" |