summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--indra/newview/llfloaterdebugmaterials.cpp148
-rw-r--r--indra/newview/llfloaterdebugmaterials.h10
-rw-r--r--indra/newview/llviewerfloaterreg.cpp2
-rw-r--r--indra/newview/skins/default/xui/en/floater_debug_materials.xml401
-rw-r--r--indra/newview/skins/default/xui/en/menu_viewer.xml2
5 files changed, 374 insertions, 189 deletions
diff --git a/indra/newview/llfloaterdebugmaterials.cpp b/indra/newview/llfloaterdebugmaterials.cpp
index 85a0fc7a2f..f91522eb22 100644
--- a/indra/newview/llfloaterdebugmaterials.cpp
+++ b/indra/newview/llfloaterdebugmaterials.cpp
@@ -121,13 +121,13 @@ BOOL LLFloaterDebugMaterials::postBuild()
llassert(mGetButton != NULL);
mGetButton->setCommitCallback(boost::bind(&LLFloaterDebugMaterials::onGetClicked, this));
- mGetNormalMapScrollList = findChild<LLScrollListCtrl>("normal_map_attrs_scroll_list");
+ mGetNormalMapScrollList = findChild<LLScrollListCtrl>("get_normal_map_scroll_list");
llassert(mGetNormalMapScrollList != NULL);
- mGetSpecularMapScrollList = findChild<LLScrollListCtrl>("specular_map_attrs_scroll_list");
+ mGetSpecularMapScrollList = findChild<LLScrollListCtrl>("get_specular_map_scroll_list");
llassert(mGetSpecularMapScrollList != NULL);
- mGetOtherDataScrollList = findChild<LLScrollListCtrl>("other_data_scroll_list");
+ mGetOtherDataScrollList = findChild<LLScrollListCtrl>("get_other_data_scroll_list");
llassert(mGetOtherDataScrollList != NULL);
mNormalMap = findChild<LLTextureCtrl>("normal_map");
@@ -220,9 +220,12 @@ BOOL LLFloaterDebugMaterials::postBuild()
mPutScrollList = findChild<LLScrollListCtrl>("put_scroll_list");
llassert(mPutScrollList != NULL);
- mQueryVisibleObjectsButton = findChild<LLButton>("query_visible_object_button");
- llassert(mQueryVisibleObjectsButton != NULL);
- mQueryVisibleObjectsButton->setCommitCallback(boost::bind(&LLFloaterDebugMaterials::onQueryVisibleObjectsClicked, this));
+ mQueryViewableObjectsButton = findChild<LLButton>("query_viewable_objects_button");
+ llassert(mQueryViewableObjectsButton != NULL);
+ mQueryViewableObjectsButton->setCommitCallback(boost::bind(&LLFloaterDebugMaterials::onQueryVisibleObjectsClicked, this));
+
+ mViewableObjectsScrollList = findChild<LLScrollListCtrl>("viewable_objects_scroll_list");
+ llassert(mViewableObjectsScrollList != NULL);
mGoodPostButton = findChild<LLButton>("good_post_button");
llassert(mGoodPostButton != NULL);
@@ -232,8 +235,14 @@ BOOL LLFloaterDebugMaterials::postBuild()
llassert(mBadPostButton != NULL);
mBadPostButton->setCommitCallback(boost::bind(&LLFloaterDebugMaterials::onBadPostClicked, this));
- mPostScrollList = findChild<LLScrollListCtrl>("post_scroll_list");
- llassert(mPostScrollList != NULL);
+ mPostNormalMapScrollList = findChild<LLScrollListCtrl>("post_normal_map_scroll_list");
+ llassert(mPostNormalMapScrollList != NULL);
+
+ mPostSpecularMapScrollList = findChild<LLScrollListCtrl>("post_specular_map_scroll_list");
+ llassert(mPostSpecularMapScrollList != NULL);
+
+ mPostOtherDataScrollList = findChild<LLScrollListCtrl>("post_other_data_scroll_list");
+ llassert(mPostOtherDataScrollList != NULL);
mDefaultSpecularColor = LLUIColorTable::instance().getColor("White");
@@ -268,6 +277,7 @@ void LLFloaterDebugMaterials::onOpen(const LLSD& pKey)
resetObjectEditInputs();
clearGetResults();
clearPutResults();
+ clearViewableObjectsResults();
clearPostResults();
}
@@ -276,6 +286,7 @@ void LLFloaterDebugMaterials::onClose(bool pIsAppQuitting)
resetObjectEditInputs();
clearGetResults();
clearPutResults();
+ clearViewableObjectsResults();
clearPostResults();
if (mSelectionUpdateConnection.connected())
@@ -323,10 +334,13 @@ LLFloaterDebugMaterials::LLFloaterDebugMaterials(const LLSD& pParams)
mPutSetButton(NULL),
mPutClearButton(NULL),
mPutScrollList(NULL),
- mQueryVisibleObjectsButton(NULL),
+ mQueryViewableObjectsButton(NULL),
+ mViewableObjectsScrollList(NULL),
mGoodPostButton(NULL),
mBadPostButton(NULL),
- mPostScrollList(NULL),
+ mPostNormalMapScrollList(NULL),
+ mPostSpecularMapScrollList(NULL),
+ mPostOtherDataScrollList(NULL),
mState(kNoRegion),
mWarningColor(),
mErrorColor(),
@@ -375,38 +389,7 @@ void LLFloaterDebugMaterials::onPutClearClicked()
void LLFloaterDebugMaterials::onQueryVisibleObjectsClicked()
{
- S32 numViewerObjects = gObjectList.getNumObjects();
- for (S32 viewerObjectIndex = 0; viewerObjectIndex < numViewerObjects; ++viewerObjectIndex)
- {
- const LLViewerObject *viewerObject = gObjectList.getObject(viewerObjectIndex);
- if ((viewerObject != NULL) && !viewerObject->isDead())
- {
- U8 objectNumTEs = viewerObject->getNumTEs();
-
- if (objectNumTEs > 0U)
- {
- const LLUUID& objectId = viewerObject->getID();
- U32 objectLocalId = viewerObject->getLocalID();
- S32 objectNumFaces = viewerObject->getNumFaces();
- const LLViewerRegion* objectRegion = viewerObject->getRegion();
- for (U8 curTEIndex = 0U; curTEIndex < objectNumTEs; ++curTEIndex)
- {
- const LLTextureEntry* objectTE = viewerObject->getTE(curTEIndex);
- llassert(objectTE != NULL);
- const LLMaterialID& objectMaterialID = objectTE->getMaterialID();
- if (!objectMaterialID.isNull())
- {
- llinfos << "STINSON DEBUG: #" << (viewerObjectIndex + 1) << ": " << objectId.asString()
- << " (" << ((objectRegion != NULL) ? objectRegion->getRegionID().asString() : "<null>")
- << ") [" << objectLocalId << "] {" << static_cast<unsigned int>(curTEIndex)
- << "} : numFaces(" << objectNumFaces << ") material("
- << convertToPrintableMaterialID(objectMaterialID) << ")" << llendl;
- }
- }
- }
-
- }
- }
+ queryViewableObjects();
}
void LLFloaterDebugMaterials::onGoodPostClicked()
@@ -424,6 +407,7 @@ void LLFloaterDebugMaterials::onRegionCross()
checkRegionMaterialStatus();
clearGetResults();
clearPutResults();
+ clearViewableObjectsResults();
clearPostResults();
}
@@ -755,6 +739,71 @@ void LLFloaterDebugMaterials::requestPostMaterials(const LLUUID& regionId, bool
}
}
+void LLFloaterDebugMaterials::queryViewableObjects()
+{
+ clearViewableObjectsResults();
+
+ LLScrollListCell::Params cellParams;
+ LLScrollListItem::Params rowParams;
+
+ S32 numViewerObjects = gObjectList.getNumObjects();
+ for (S32 viewerObjectIndex = 0; viewerObjectIndex < numViewerObjects; ++viewerObjectIndex)
+ {
+ const LLViewerObject *viewerObject = gObjectList.getObject(viewerObjectIndex);
+ if ((viewerObject != NULL) && !viewerObject->isDead())
+ {
+ U8 objectNumTEs = viewerObject->getNumTEs();
+
+ if (objectNumTEs > 0U)
+ {
+ const LLUUID& objectId = viewerObject->getID();
+ U32 objectLocalId = viewerObject->getLocalID();
+ const LLViewerRegion* objectRegion = viewerObject->getRegion();
+
+ for (U8 curTEIndex = 0U; curTEIndex < objectNumTEs; ++curTEIndex)
+ {
+ const LLTextureEntry* objectTE = viewerObject->getTE(curTEIndex);
+ llassert(objectTE != NULL);
+ const LLMaterialID& objectMaterialID = objectTE->getMaterialID();
+ if (!objectMaterialID.isNull())
+ {
+ cellParams.font = LLFontGL::getFontMonospace();
+
+ cellParams.column = "object_id";
+ cellParams.value = objectId.asString();
+ rowParams.columns.add(cellParams);
+
+ cellParams.font = LLFontGL::getFontSansSerif();
+
+ cellParams.column = "region";
+ cellParams.value = ((objectRegion == NULL) ? "<null>" : objectRegion->getName());
+ rowParams.columns.add(cellParams);
+
+ cellParams.column = "local_id";
+ cellParams.value = llformat("%d", objectLocalId);
+ rowParams.columns.add(cellParams);
+
+ cellParams.column = "face_index";
+ cellParams.value = llformat("%u", static_cast<unsigned int>(curTEIndex));
+ rowParams.columns.add(cellParams);
+ cellParams.font = LLFontGL::getFontMonospace();
+
+ std::string materialIDString = convertToPrintableMaterialID(objectMaterialID);
+ cellParams.column = "material_id";
+ cellParams.value = materialIDString;
+ rowParams.columns.add(cellParams);
+
+ rowParams.value = objectId;
+
+ mViewableObjectsScrollList->addRow(rowParams);
+ }
+ }
+ }
+
+ }
+ }
+}
+
void LLFloaterDebugMaterials::parseGetResponse(const LLSD& pContent)
{
printResponse("GET", pContent);
@@ -920,7 +969,7 @@ void LLFloaterDebugMaterials::parseGetResponse(const LLSD& pContent)
specularMapRowParams.columns.add(cellParams);
otherDataRowParams.columns.add(cellParams);
- cellParams.column = "normal_map_list";
+ cellParams.column = "normal_map_list_map";
cellParams.value = normalMapID.asString();
normalMapRowParams.columns.add(cellParams);
@@ -995,7 +1044,7 @@ void LLFloaterDebugMaterials::parseGetResponse(const LLSD& pContent)
cellParams.font = LLFontGL::getFontMonospace();
- cellParams.column = "specular_map_list";
+ cellParams.column = "specular_map_list_map";
cellParams.value = specularMapID.asString();
specularMapRowParams.columns.add(cellParams);
@@ -1149,6 +1198,7 @@ void LLFloaterDebugMaterials::parsePutResponse(const LLSD& pContent)
void LLFloaterDebugMaterials::parsePostResponse(const LLSD& pContent)
{
printResponse("POST", pContent);
+#if 0
clearPostResults();
LLScrollListCell::Params cellParams;
@@ -1239,6 +1289,7 @@ void LLFloaterDebugMaterials::parsePostResponse(const LLSD& pContent)
mPostScrollList->addRow(rowParams);
}
+#endif
}
void LLFloaterDebugMaterials::printResponse(const std::string& pRequestType, const LLSD& pContent) const
@@ -1296,7 +1347,14 @@ void LLFloaterDebugMaterials::clearPutResults()
void LLFloaterDebugMaterials::clearPostResults()
{
- mPostScrollList->deleteAllItems();
+ mPostNormalMapScrollList->deleteAllItems();
+ mPostSpecularMapScrollList->deleteAllItems();
+ mPostOtherDataScrollList->deleteAllItems();
+}
+
+void LLFloaterDebugMaterials::clearViewableObjectsResults()
+{
+ mViewableObjectsScrollList->deleteAllItems();
}
void LLFloaterDebugMaterials::updateStatusMessage()
diff --git a/indra/newview/llfloaterdebugmaterials.h b/indra/newview/llfloaterdebugmaterials.h
index 8419535ac0..204392d5e3 100644
--- a/indra/newview/llfloaterdebugmaterials.h
+++ b/indra/newview/llfloaterdebugmaterials.h
@@ -100,6 +100,8 @@ private:
void requestPostMaterials(bool pUseGoodData);
void requestPostMaterials(const LLUUID& regionId, bool pUseGoodData);
+ void queryViewableObjects();
+
void parseGetResponse(const LLSD& pContent);
void parsePutResponse(const LLSD& pContent);
void parsePostResponse(const LLSD& pContent);
@@ -112,6 +114,7 @@ private:
void clearGetResults();
void clearPutResults();
void clearPostResults();
+ void clearViewableObjectsResults();
void updateStatusMessage();
void updateControls();
@@ -161,10 +164,13 @@ private:
LLButton* mPutSetButton;
LLButton* mPutClearButton;
LLScrollListCtrl* mPutScrollList;
- LLButton* mQueryVisibleObjectsButton;
+ LLButton* mQueryViewableObjectsButton;
+ LLScrollListCtrl* mViewableObjectsScrollList;
LLButton* mGoodPostButton;
LLButton* mBadPostButton;
- LLScrollListCtrl* mPostScrollList;
+ LLScrollListCtrl* mPostNormalMapScrollList;
+ LLScrollListCtrl* mPostSpecularMapScrollList;
+ LLScrollListCtrl* mPostOtherDataScrollList;
LLColor4 mDefaultSpecularColor;
diff --git a/indra/newview/llviewerfloaterreg.cpp b/indra/newview/llviewerfloaterreg.cpp
index 136e8fa0c4..b630b5bbe6 100644
--- a/indra/newview/llviewerfloaterreg.cpp
+++ b/indra/newview/llviewerfloaterreg.cpp
@@ -256,7 +256,7 @@ void LLViewerFloaterReg::registerFloaters()
LLFloaterReg::add("pathfinding_characters", "floater_pathfinding_characters.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterPathfindingCharacters>);
LLFloaterReg::add("pathfinding_linksets", "floater_pathfinding_linksets.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterPathfindingLinksets>);
LLFloaterReg::add("pathfinding_console", "floater_pathfinding_console.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterPathfindingConsole>);
- LLFloaterReg::add("debug_materials", "floater_debug_materials.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterDebugMaterials>);
+ LLFloaterReg::add("floater_debug_materials", "floater_debug_materials.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterDebugMaterials>);
LLFloaterReg::add("people", "floater_people.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterSidePanelContainer>);
LLFloaterReg::add("places", "floater_places.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterSidePanelContainer>);
LLFloaterReg::add("preferences", "floater_preferences.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterPreference>);
diff --git a/indra/newview/skins/default/xui/en/floater_debug_materials.xml b/indra/newview/skins/default/xui/en/floater_debug_materials.xml
index 17ca0e3450..85743e4501 100644
--- a/indra/newview/skins/default/xui/en/floater_debug_materials.xml
+++ b/indra/newview/skins/default/xui/en/floater_debug_materials.xml
@@ -3,12 +3,12 @@
positioning="cascading"
can_tear_off="false"
can_resize="true"
- height="680"
- width="1244"
- min_height="600"
- min_width="1100"
+ height="725"
+ width="1030"
+ min_height="750"
+ min_width="1030"
layout="topleft"
- name="debug_materials"
+ name="floater_debug_materials"
reuse_instance="true"
save_rect="false"
single_instance="true"
@@ -57,41 +57,31 @@
width="214">
</text>
</panel>
- <view_border
- bevel_style="none"
- follows="left|right|top"
- height="0"
- layout="topleft"
- name="horiz_separator"
- top_pad="0"
- left="12"
- width="1220"/>
<tab_container
follows="left|top|right"
layout="topleft"
tab_position="top"
- name="view_test_tab_container"
left="10"
top_pad="10"
- height="500"
- width="1220">
+ height="620"
+ width="1010">
<panel
border="true"
bevel_style="none"
follows="left|top|right"
layout="topleft"
- label="Region"
- height="167"
+ label="Current region"
+ height="620"
top_pad="10"
- width="1220">
+ width="1010">
<panel
border="false"
bevel_style="none"
follows="left|top|right"
layout="topleft"
- height="167"
+ height="458"
top_pad="10"
- width="1220">
+ width="1010">
<button
follows="left|top"
height="22"
@@ -108,37 +98,33 @@
layout="topleft"
top_pad="10"
tab_stop="false"
- multi_select="true"
- name="normal_map_attrs_scroll_list"
- width="1010">
+ multi_select="false"
+ name="get_other_data_scroll_list"
+ width="765">
<scroll_list.columns
label="Material ID"
name="id"
- width="225" />
- <scroll_list.columns
- label="Normal Map"
- name="normal_map_list"
- width="225" />
+ dynamic_width="true" />
<scroll_list.columns
- label="Offset X"
- name="normal_map_list_offset_x"
- width="112" />
+ label="Specular Color"
+ name="specular_color"
+ width="120" />
<scroll_list.columns
- label="Offset Y"
- name="normal_map_list_offset_y"
+ label="Specular Exponent"
+ name="specular_exponent"
width="112" />
<scroll_list.columns
- label="Repeat X"
- name="normal_map_list_repeat_x"
- width="112" />
+ label="Env Intensity"
+ name="env_intensity"
+ width="80" />
<scroll_list.columns
- label="Repeat Y"
- name="normal_map_list_repeat_y"
- width="112" />
+ label="Alpha Mask Cutoff"
+ name="alpha_mask_cutoff"
+ width="110" />
<scroll_list.columns
- label="Rotation"
- name="normal_map_list_rotation"
- width="112" />
+ label="Diffuse Alpha Mode"
+ name="diffuse_alpha_mode"
+ width="118" />
</scroll_list>
<scroll_list
column_padding="0"
@@ -148,16 +134,16 @@
layout="topleft"
top_pad="10"
tab_stop="false"
- multi_select="true"
- name="specular_map_attrs_scroll_list"
+ multi_select="false"
+ name="get_specular_map_scroll_list"
width="1010">
<scroll_list.columns
label="Material ID"
name="id"
- width="225" />
+ dynamic_width="true" />
<scroll_list.columns
label="Specular Map"
- name="specular_map_list"
+ name="specular_map_list_map"
width="225" />
<scroll_list.columns
label="Offset X"
@@ -188,33 +174,37 @@
layout="topleft"
top_pad="10"
tab_stop="false"
- multi_select="true"
- name="other_data_scroll_list"
- width="765">
+ multi_select="false"
+ name="get_normal_map_scroll_list"
+ width="1010">
<scroll_list.columns
label="Material ID"
name="id"
+ dynamic_width="true" />
+ <scroll_list.columns
+ label="Normal Map"
+ name="normal_map_list_map"
width="225" />
<scroll_list.columns
- label="Specular Color"
- name="specular_color"
- width="120" />
+ label="Offset X"
+ name="normal_map_list_offset_x"
+ width="112" />
<scroll_list.columns
- label="Specular Exponent"
- name="specular_exponent"
+ label="Offset Y"
+ name="normal_map_list_offset_y"
width="112" />
<scroll_list.columns
- label="Env Intensity"
- name="env_intensity"
- width="80" />
+ label="Repeat X"
+ name="normal_map_list_repeat_x"
+ width="112" />
<scroll_list.columns
- label="Alpha Mask Cutoff"
- name="alpha_mask_cutoff"
- width="110" />
+ label="Repeat Y"
+ name="normal_map_list_repeat_y"
+ width="112" />
<scroll_list.columns
- label="Diffuse Alpha Mode"
- name="diffuse_alpha_mode"
- width="118" />
+ label="Rotation"
+ name="normal_map_list_rotation"
+ width="112" />
</scroll_list>
</panel>
</panel>
@@ -224,9 +214,9 @@
follows="left|top|right"
layout="topleft"
label="Object editing"
- height="167"
+ height="620"
top_pad="10"
- width="1220">
+ width="1010">
<panel
border="false"
bevel_style="none"
@@ -234,7 +224,7 @@
layout="topleft"
left="2"
top_pad="10"
- height="410"
+ height="420"
width="810">
<panel
border="false"
@@ -745,11 +735,10 @@
left_pad="20"
width="214"/>
</panel>
-
</panel>
<view_border
bevel_style="none"
- follows="left|right|top"
+ follows="left|top"
height="0"
layout="topleft"
name="horiz_separator"
@@ -812,87 +801,219 @@
follows="left|top|right"
layout="topleft"
label="Viewable objects"
- height="167"
+ height="620"
top_pad="10"
- width="1220">
+ width="1010">
<panel
border="false"
bevel_style="none"
follows="left|top|right"
layout="topleft"
- left="12"
- top_pad="10"
- height="132"
- width="1220">
- <button
- follows="left|top"
- height="22"
- label="Query Visible Objects"
- layout="topleft"
- name="query_visible_object_button"
- top_pad="0"
- width="214"/>
- <button
- follows="left|top"
- height="22"
- label="Post Good Material ID"
+ height="620"
+ top_pad="0"
+ width="1010">
+ <panel
+ border="false"
+ bevel_style="none"
+ follows="left|top|right"
layout="topleft"
- name="good_post_button"
- top_pad="0"
- width="214"/>
- <button
- follows="left|top"
- height="22"
- label="Post Bad Material ID"
+ left="0"
+ top_pad="10"
+ height="132"
+ width="835">
+ <button
+ follows="left|top"
+ height="22"
+ label="Query Viewable Objects"
+ layout="topleft"
+ name="query_viewable_objects_button"
+ top_pad="0"
+ width="214"/>
+ <scroll_list
+ column_padding="0"
+ draw_heading="true"
+ follows="left|top|right"
+ height="100"
+ layout="topleft"
+ top_pad="10"
+ left="0"
+ tab_stop="false"
+ multi_select="true"
+ name="viewable_objects_scroll_list"
+ width="835">
+ <scroll_list.columns
+ label="Object ID"
+ name="object_id"
+ width="225" />
+ <scroll_list.columns
+ label="Region"
+ name="region"
+ width="225" />
+ <scroll_list.columns
+ label="Local ID"
+ name="local_id"
+ width="70" />
+ <scroll_list.columns
+ label="Face"
+ name="face_index"
+ width="70" />
+ <scroll_list.columns
+ label="Material ID"
+ name="material_id"
+ dynamic_width="true" />
+ </scroll_list>
+ </panel>
+ <view_border
+ bevel_style="none"
+ follows="left|right|top"
+ height="0"
layout="topleft"
- name="bad_post_button"
- left_pad="20"
- width="214"/>
- <scroll_list
- column_padding="0"
- draw_heading="true"
+ name="horiz_separator"
+ top_pad="10"
+ left="0"
+ width="1010"/>
+ <panel
+ border="false"
+ bevel_style="none"
follows="left|top|right"
- height="100"
layout="topleft"
+ height="458"
top_pad="10"
- left="0"
- tab_stop="false"
- multi_select="true"
- name="post_scroll_list"
- width="1220">
- <scroll_list.columns
- label="Material ID"
- name="id"
- dynamic_width="true" />
- <scroll_list.columns
- label="Normal Map"
- name="normal_map"
- width="225" />
- <scroll_list.columns
- label="Specular Map"
- name="specular_map"
- width="225" />
- <scroll_list.columns
- label="Specular Color"
- name="specular_color"
- width="120" />
- <scroll_list.columns
- label="Specular Exponent"
- name="specular_exponent"
- width="112" />
- <scroll_list.columns
- label="Env Intensity"
- name="env_intensity"
- width="80" />
- <scroll_list.columns
- label="Alpha Mask Cutoff"
- name="alpha_mask_cutoff"
- width="110" />
- <scroll_list.columns
- label="Diffuse Alpha Mode"
- name="diffuse_alpha_mode"
- width="118" />
- </scroll_list>
+ width="1010">
+ <button
+ follows="left|top"
+ height="22"
+ label="Post Good Material ID"
+ layout="topleft"
+ name="good_post_button"
+ top_pad="0"
+ width="214"/>
+ <button
+ follows="left|top"
+ height="22"
+ label="Post Bad Material ID"
+ layout="topleft"
+ name="bad_post_button"
+ left_pad="20"
+ width="214"/>
+ <scroll_list
+ column_padding="0"
+ draw_heading="true"
+ follows="left|top|right"
+ height="135"
+ layout="topleft"
+ top_pad="10"
+ left="0"
+ tab_stop="false"
+ multi_select="false"
+ name="post_other_data_scroll_list"
+ width="765">
+ <scroll_list.columns
+ label="Material ID"
+ name="id"
+ dynamic_width="true" />
+ <scroll_list.columns
+ label="Specular Color"
+ name="specular_color"
+ width="120" />
+ <scroll_list.columns
+ label="Specular Exponent"
+ name="specular_exponent"
+ width="112" />
+ <scroll_list.columns
+ label="Env Intensity"
+ name="env_intensity"
+ width="80" />
+ <scroll_list.columns
+ label="Alpha Mask Cutoff"
+ name="alpha_mask_cutoff"
+ width="110" />
+ <scroll_list.columns
+ label="Diffuse Alpha Mode"
+ name="diffuse_alpha_mode"
+ width="118" />
+ </scroll_list>
+ <scroll_list
+ column_padding="0"
+ draw_heading="true"
+ follows="left|top|right"
+ height="135"
+ layout="topleft"
+ top_pad="10"
+ tab_stop="false"
+ multi_select="false"
+ name="post_specular_map_scroll_list"
+ width="1010">
+ <scroll_list.columns
+ label="Material ID"
+ name="id"
+ dynamic_width="true" />
+ <scroll_list.columns
+ label="Specular Map"
+ name="specular_map_list_map"
+ width="225" />
+ <scroll_list.columns
+ label="Offset X"
+ name="specular_map_list_offset_x"
+ width="112" />
+ <scroll_list.columns
+ label="Offset Y"
+ name="specular_map_list_offset_y"
+ width="112" />
+ <scroll_list.columns
+ label="Repeat X"
+ name="specular_map_list_repeat_x"
+ width="112" />
+ <scroll_list.columns
+ label="Repeat Y"
+ name="specular_map_list_repeat_y"
+ width="112" />
+ <scroll_list.columns
+ label="Rotation"
+ name="specular_map_list_rotation"
+ width="112" />
+ </scroll_list>
+ <scroll_list
+ column_padding="0"
+ draw_heading="true"
+ follows="left|top|right"
+ height="135"
+ layout="topleft"
+ top_pad="10"
+ tab_stop="false"
+ multi_select="false"
+ name="post_normal_map_scroll_list"
+ width="1010">
+ <scroll_list.columns
+ label="Material ID"
+ name="id"
+ dynamic_width="true" />
+ <scroll_list.columns
+ label="Normal Map"
+ name="normal_map_list_map"
+ width="225" />
+ <scroll_list.columns
+ label="Offset X"
+ name="normal_map_list_offset_x"
+ width="112" />
+ <scroll_list.columns
+ label="Offset Y"
+ name="normal_map_list_offset_y"
+ width="112" />
+ <scroll_list.columns
+ label="Repeat X"
+ name="normal_map_list_repeat_x"
+ width="112" />
+ <scroll_list.columns
+ label="Repeat Y"
+ name="normal_map_list_repeat_y"
+ width="112" />
+ <scroll_list.columns
+ label="Rotation"
+ name="normal_map_list_rotation"
+ width="112" />
+ </scroll_list>
+ </panel>
</panel>
</panel>
</tab_container>
diff --git a/indra/newview/skins/default/xui/en/menu_viewer.xml b/indra/newview/skins/default/xui/en/menu_viewer.xml
index 8b47f3a25d..2ac7c0dd46 100644
--- a/indra/newview/skins/default/xui/en/menu_viewer.xml
+++ b/indra/newview/skins/default/xui/en/menu_viewer.xml
@@ -2619,7 +2619,7 @@
name="DebugMaterialsMenu">
<menu_item_call.on_click
function="Floater.ToggleOrBringToFront"
- parameter="debug_materials" />
+ parameter="floater_debug_materials" />
</menu_item_call>
<menu_item_separator />