master
prep linden 2011-07-29 17:50:20 -04:00
commit fdcf43e0b3
14 changed files with 600 additions and 101 deletions

View File

@ -148,6 +148,7 @@ public:
static LLModel* loadModelFromDomMesh(domMesh* mesh);
static std::string getElementLabel(daeElement* element);
std::string getName() const;
std::string getMetric() const {return mMetric;}
EModelStatus getStatus() const {return mStatus;}
static std::string getStatusString(U32 status) ;
@ -224,7 +225,7 @@ public:
bool areEqual( double a, double b )
{
const float epsilon = 1e-5f;
return (abs(a - b) < epsilon) && (a < b);
return (abs((int)(a - b)) < epsilon) && (a < b);
}
//Make sure that we return false for any values that are within the tolerance for equivalence
bool operator() ( const LLVector3& a, const LLVector3& b )
@ -250,6 +251,8 @@ public:
std::string mRequestedLabel; // name requested in UI, if any.
std::string mLabel; // name computed from dae.
std::string mMetric; // user-supplied metric data for upload
LLVector3 mNormalizedScale;
LLVector3 mNormalizedTranslation;

View File

@ -213,6 +213,7 @@ set(viewer_SOURCE_FILES
llfloatermodelwizard.cpp
llfloaternamedesc.cpp
llfloaternotificationsconsole.cpp
llfloaterobjectweights.cpp
llfloateropenobject.cpp
llfloaterpay.cpp
llfloaterperms.cpp
@ -775,6 +776,7 @@ set(viewer_HEADER_FILES
llfloatermodelwizard.h
llfloaternamedesc.h
llfloaternotificationsconsole.h
llfloaterobjectweights.h
llfloateropenobject.h
llfloaterpay.h
llfloaterperms.h

View File

@ -3123,6 +3123,7 @@ void LLModelPreview::rebuildUploadData()
std::string requested_name = mFMP->getChild<LLUICtrl>("description_form")->getValue().asString();
std::string metric = mFMP->getChild<LLUICtrl>("model_category_combo")->getValue().asString();
LLSpinCtrl* scale_spinner = mFMP->getChild<LLSpinCtrl>("import_scale");
@ -3184,6 +3185,7 @@ void LLModelPreview::rebuildUploadData()
if (base_model)
{
base_model->mRequestedLabel = requested_name;
base_model->mMetric = metric;
}
S32 idx = 0;
@ -5524,10 +5526,10 @@ void LLFloaterModelPreview::toggleCalculateButton(bool visible)
if (visible)
{
std::string tbd = getString("tbd");
childSetTextArg("weights", "[EQ]", tbd);
childSetTextArg("weights", "[ST]", tbd);
childSetTextArg("weights", "[SIM]", tbd);
childSetTextArg("weights", "[PH]", tbd);
childSetTextArg("weights_right", "[EQ]", tbd);
childSetTextArg("weights_left", "[ST]", tbd);
childSetTextArg("weights_right", "[SIM]", tbd);
childSetTextArg("weights_left", "[PH]", tbd);
childSetTextArg("upload_fee", "[FEE]", tbd);
childSetTextArg("price_breakdown", "[STREAMING]", tbd);
childSetTextArg("price_breakdown", "[PHYSICS]", tbd);
@ -5550,17 +5552,16 @@ void LLFloaterModelPreview::handleModelPhysicsFeeReceived()
const LLSD& result = mModelPhysicsFee;
mUploadModelUrl = result["url"].asString();
childSetTextArg("weights", "[EQ]", llformat("%0.3f", result["resource_cost"].asReal()));
childSetTextArg("weights", "[ST]", llformat("%0.3f", result["model_streaming_cost"].asReal()));
childSetTextArg("weights", "[SIM]", llformat("%0.3f", result["simulation_cost"].asReal()));
childSetTextArg("weights", "[PH]", llformat("%0.3f", result["physics_cost"].asReal()));
childSetTextArg("weights_right", "[EQ]", llformat("%0.3f", result["resource_cost"].asReal()));
childSetTextArg("weights_left", "[ST]", llformat("%0.3f", result["model_streaming_cost"].asReal()));
childSetTextArg("weights_right", "[SIM]", llformat("%0.3f", result["simulation_cost"].asReal()));
childSetTextArg("weights_left", "[PH]", llformat("%0.3f", result["physics_cost"].asReal()));
childSetTextArg("upload_fee", "[FEE]", llformat("%d", result["upload_price"].asInteger()));
childSetTextArg("price_breakdown", "[STREAMING]", llformat("%d", result["upload_price_breakdown"]["mesh_streaming"].asInteger()));
childSetTextArg("price_breakdown", "[PHYSICS]", llformat("%d", result["upload_price_breakdown"]["mesh_physics"].asInteger()));
childSetTextArg("price_breakdown", "[INSTANCES]", llformat("%d", result["upload_price_breakdown"]["mesh_instance"].asInteger()));
childSetTextArg("price_breakdown", "[TEXTURES]", llformat("%d", result["upload_price_breakdown"]["texture"].asInteger()));
childSetTextArg("price_breakdown", "[MODEL]", llformat("%d", result["upload_price_breakdown"]["model"].asInteger()));
childSetVisible("weights", true);
childSetVisible("upload_fee", true);
childSetVisible("price_breakdown", true);
mUploadBtn->setEnabled(mHasUploadPerm && !mUploadModelUrl.empty());

View File

@ -0,0 +1,99 @@
/**
* @file llfloaterobjectweights.cpp
* @brief Object weights advanced view floater
*
* $LicenseInfo:firstyear=2011&license=viewerlgpl$
* Second Life Viewer Source Code
* Copyright (C) 2011, Linden Research, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation;
* version 2.1 of the License only.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*
* Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA
* $/LicenseInfo$
*/
#include "llviewerprecompiledheaders.h"
#include "llfloaterobjectweights.h"
#include "lltextbox.h"
LLFloaterObjectWeights::LLFloaterObjectWeights(const LLSD& key)
: LLFloater(key),
mSelectedObjects(NULL),
mSelectedPrims(NULL),
mSelectedDownloadWeight(NULL),
mSelectedPhysicsWeight(NULL),
mSelectedServerWeight(NULL),
mSelectedDisplayWeight(NULL),
mSelectedOnLand(NULL),
mRezzedOnLand(NULL),
mRemainingCapacity(NULL),
mTotalCapacity(NULL)
{
}
LLFloaterObjectWeights::~LLFloaterObjectWeights()
{
}
// virtual
BOOL LLFloaterObjectWeights::postBuild()
{
mSelectedObjects = getChild<LLTextBox>("objects");
mSelectedPrims = getChild<LLTextBox>("prims");
mSelectedDownloadWeight = getChild<LLTextBox>("download");
mSelectedPhysicsWeight = getChild<LLTextBox>("physics");
mSelectedServerWeight = getChild<LLTextBox>("server");
mSelectedDisplayWeight = getChild<LLTextBox>("display");
mSelectedOnLand = getChild<LLTextBox>("used_download_weight");
mRezzedOnLand = getChild<LLTextBox>("used_download_weight");
mRemainingCapacity = getChild<LLTextBox>("used_download_weight");
mTotalCapacity = getChild<LLTextBox>("used_download_weight");
return TRUE;
}
// virtual
void LLFloaterObjectWeights::onOpen(const LLSD& key)
{
updateIfNothingSelected();
}
void LLFloaterObjectWeights::toggleLoadingIndicators(bool visible)
{
childSetVisible("download_loading_indicator", visible);
childSetVisible("physics_loading_indicator", visible);
childSetVisible("server_loading_indicator", visible);
childSetVisible("display_loading_indicator", visible);
}
void LLFloaterObjectWeights::updateIfNothingSelected()
{
const std::string text = getString("nothing_selected");
mSelectedObjects->setText(text);
mSelectedPrims->setText(text);
mSelectedDownloadWeight->setText(text);
mSelectedPhysicsWeight->setText(text);
mSelectedServerWeight->setText(text);
mSelectedDisplayWeight->setText(text);
mSelectedOnLand->setText(text);
toggleLoadingIndicators(false);
}

View File

@ -0,0 +1,64 @@
/**
* @file llfloaterobjectweights.h
* @brief Object weights advanced view floater
*
* $LicenseInfo:firstyear=2011&license=viewerlgpl$
* Second Life Viewer Source Code
* Copyright (C) 2011, Linden Research, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation;
* version 2.1 of the License only.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*
* Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA
* $/LicenseInfo$
*/
#ifndef LL_LLFLOATEROBJECTWEIGHTS_H
#define LL_LLFLOATEROBJECTWEIGHTS_H
#include "llfloater.h"
class LLTextBox;
class LLFloaterObjectWeights : public LLFloater
{
public:
LOG_CLASS(LLFloaterObjectWeights);
LLFloaterObjectWeights(const LLSD& key);
~LLFloaterObjectWeights();
/*virtual*/ BOOL postBuild();
/*virtual*/ void onOpen(const LLSD& key);
private:
void toggleLoadingIndicators(bool visible);
void updateIfNothingSelected();
LLTextBox *mSelectedObjects;
LLTextBox *mSelectedPrims;
LLTextBox *mSelectedDownloadWeight;
LLTextBox *mSelectedPhysicsWeight;
LLTextBox *mSelectedServerWeight;
LLTextBox *mSelectedDisplayWeight;
LLTextBox *mSelectedOnLand;
LLTextBox *mRezzedOnLand;
LLTextBox *mRemainingCapacity;
LLTextBox *mTotalCapacity;
};
#endif //LL_LLFLOATEROBJECTWEIGHTS_H

View File

@ -172,30 +172,9 @@ bool estate_dispatch_initialized = false;
LLUUID LLFloaterRegionInfo::sRequestInvoice;
void LLFloaterRegionInfo::onConsoleReplyReceived(const std::string& output)
{
llwarns << "here is what they're giving us: " << output << llendl;
if (output.find("FALSE") != std::string::npos)
{
getChild<LLUICtrl>("mesh_rez_enabled_check")->setValue(FALSE);
}
else
{
getChild<LLUICtrl>("mesh_rez_enabled_check")->setValue(TRUE);
}
}
LLFloaterRegionInfo::LLFloaterRegionInfo(const LLSD& seed)
: LLFloater(seed)
{
mConsoleReplySignalConnection = LLFloaterRegionDebugConsole::setConsoleReplyCallback(
boost::bind(
&LLFloaterRegionInfo::onConsoleReplyReceived,
this,
_1));
}
{}
BOOL LLFloaterRegionInfo::postBuild()
{
@ -246,9 +225,7 @@ BOOL LLFloaterRegionInfo::postBuild()
}
LLFloaterRegionInfo::~LLFloaterRegionInfo()
{
mConsoleReplySignalConnection.disconnect();
}
{}
void LLFloaterRegionInfo::onOpen(const LLSD& key)
{
@ -637,9 +614,6 @@ bool LLPanelRegionGeneralInfo::refreshFromRegion(LLViewerRegion* region)
getChildView("im_btn")->setEnabled(allow_modify);
getChildView("manage_telehub_btn")->setEnabled(allow_modify);
const bool enable_mesh = gMeshRepo.meshRezEnabled();
getChildView("mesh_rez_enabled_check")->setVisible(enable_mesh);
getChildView("mesh_rez_enabled_check")->setEnabled(getChildView("mesh_rez_enabled_check")->getEnabled() && enable_mesh);
// Data gets filled in by processRegionInfo
return LLPanelRegionInfo::refreshFromRegion(region);
@ -658,7 +632,6 @@ BOOL LLPanelRegionGeneralInfo::postBuild()
initCtrl("access_combo");
initCtrl("restrict_pushobject");
initCtrl("block_parcel_search_check");
initCtrl("mesh_rez_enabled_check");
childSetAction("kick_btn", boost::bind(&LLPanelRegionGeneralInfo::onClickKick, this));
childSetAction("kick_all_btn", onClickKickAll, this);
@ -874,27 +847,6 @@ BOOL LLPanelRegionGeneralInfo::sendUpdate()
sendEstateOwnerMessage(gMessageSystem, "setregioninfo", invoice, strings);
}
std::string sim_console_url = gAgent.getRegion()->getCapability("SimConsoleAsync");
if (!sim_console_url.empty())
{
std::string update_str = "set mesh_rez_enabled ";
if (getChild<LLUICtrl>("mesh_rez_enabled_check")->getValue().asBoolean())
{
update_str += "true";
}
else
{
update_str += "false";
}
LLHTTPClient::post(
sim_console_url,
LLSD(update_str),
new ConsoleUpdateResponder);
}
// if we changed access levels, tell user about it
LLViewerRegion* region = gAgent.getRegion();
if (region && (getChild<LLUICtrl>("access_combo")->getValue().asInteger() != region->getSimAccess()) )

View File

@ -100,10 +100,6 @@ private:
LLFloaterRegionInfo(const LLSD& seed);
~LLFloaterRegionInfo();
void onConsoleReplyReceived(const std::string& output);
boost::signals2::connection mConsoleReplySignalConnection;;
protected:
void onTabSelected(const LLSD& param);

View File

@ -826,6 +826,9 @@ void LLFloaterTools::onClose(bool app_quitting)
//gMenuBarView->setItemVisible("BuildTools", FALSE);
LLFloaterReg::hideInstance("media_settings");
// hide the advanced object weights floater
LLFloaterReg::hideInstance("object_weights");
}
void click_popup_info(void*)

View File

@ -1321,6 +1321,7 @@ void LLMeshUploadThread::wholeModelToLLSD(LLSD& dest, bool include_textures)
std::map<LLModel*,S32> mesh_index;
std::string model_name;
std::string model_metric;
S32 instance_num = 0;
@ -1342,6 +1343,11 @@ void LLMeshUploadThread::wholeModelToLLSD(LLSD& dest, bool include_textures)
model_name = data.mBaseModel->getName();
}
if (model_metric.empty())
{
model_metric = data.mBaseModel->getMetric();
}
std::stringstream ostr;
LLModel::Decomposition& decomp =
@ -1455,6 +1461,8 @@ void LLMeshUploadThread::wholeModelToLLSD(LLSD& dest, bool include_textures)
if (model_name.empty()) model_name = "mesh model";
result["name"] = model_name;
if (model_metric.empty()) model_metric = "MUT_Other";
result["metric"] = model_metric;
result["asset_resources"] = res;
dump_llsd_to_file(result,make_dump_name("whole_model_",dump_num));
@ -3494,8 +3502,7 @@ void LLMeshRepository::buildPhysicsMesh(LLModel::Decomposition& decomp)
bool LLMeshRepository::meshUploadEnabled()
{
LLViewerRegion *region = gAgent.getRegion();
if(gSavedSettings.getBOOL("MeshEnabled") &&
LLViewerParcelMgr::getInstance()->allowAgentBuild() &&
if(gSavedSettings.getBOOL("MeshEnabled") &&
region)
{
return region->meshUploadEnabled();

View File

@ -79,6 +79,7 @@
#include "llfloatermodelwizard.h"
#include "llfloaternamedesc.h"
#include "llfloaternotificationsconsole.h"
#include "llfloaterobjectweights.h"
#include "llfloateropenobject.h"
#include "llfloaterpay.h"
#include "llfloaterperms.h"
@ -226,6 +227,7 @@ void LLViewerFloaterReg::registerFloaters()
LLFloaterReg::add("notifications_console", "floater_notifications_console.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterNotificationConsole>);
LLFloaterReg::add("notification_well_window", "floater_sys_well.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLNotificationWellWindow>);
LLFloaterReg::add("object_weights", "floater_object_weights.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterObjectWeights>);
LLFloaterReg::add("openobject", "floater_openobject.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterOpenObject>);
LLFloaterReg::add("outgoing_call", "floater_outgoing_call.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLOutgoingCallDialog>);
LLFloaterPayUtil::registerFloater();
@ -286,7 +288,7 @@ void LLViewerFloaterReg::registerFloaters()
LLFloaterReg::add("voice_controls", "floater_voice_controls.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLCallFloater>);
LLFloaterReg::add("voice_effect", "floater_voice_effect.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterVoiceEffect>);
LLFloaterReg::add("web_content", "floater_web_content.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterWebContent>);
LLFloaterReg::add("web_content", "floater_web_content.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterWebContent>);
LLFloaterReg::add("whitelist_entry", "floater_whitelist_entry.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterWhiteListEntry>);
LLFloaterWindowSizeUtil::registerFloater();
LLFloaterReg::add("world_map", "floater_world_map.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterWorldMap>);

View File

@ -32,6 +32,22 @@
</text>
<line_editor bottom_delta="20" follows="top|left|right" height="19" max_length_bytes="64"
name="description_form" prevalidate_callback="ascii" width="290" />
<text bottom_delta="20" left="15" follows="left|top" height="15" name="model_category_label" text_color="White">
What does this model represent?
</text>
<combo_box top_pad="1" follows="left|top" height="23"
name="model_category_combo" width="200">
<combo_box.drop_down_button
label_color="White"/>
<combo_item name="Avatar shape" label="Avatar shape" value="MUT_AvatarShape"/>
<combo_item name="Avatar attachment" label="Avatar attachment" value="MUT_AvatarAttachment"/>
<combo_item name="Building Component" label="Building Component" value="MUT_BuildingComponent"/>
<combo_item name="Moving object (vehicle, animal)" label="Moving object (vehicle, animal)" value="MUT_MovingObject"/>
<combo_item name="Large, non moving etc" label="Large, non moving etc" value="MUT_LargeStationary"/>
<combo_item name="Smaller, non-moving etc" label="Smaller, non-moving etc" value="MUT_SmallStationary"/>
<combo_item name="Not really any of these" label="Not really any of these" value="MUT_Other"/>
</combo_box>
<text bottom_delta="20" left="15" follows="left|top" height="15" name="lod_label">
Preview:
@ -95,32 +111,47 @@
You will not be able to complete the final upload of this model to the Second Life servers. [[VURL] Find out how] to get enabled for mesh model uploads.</text>
<text
height="65"
top_delta="45"
height="26"
top_pad="5"
left_delta="0"
name="weights_text"
name="weights_text_left"
width="80"
word_wrap="true"
>
Download:
Physics:
Server:
Prim equivs:
</text>
<text
height="65"
height="26"
top_delta="0"
left_delta="80"
name="weights"
left_pad="0"
name="weights_left"
width="70"
word_wrap="true"
>
[ST]
[PH]
</text>
<text
height="26"
top_delta="0"
left_pad="0"
name="weights_text_right"
width="80"
word_wrap="true"
>
Server:
Prim equivs:
</text>
<text
height="26"
top_delta="0"
left_pad="0"
name="weights_right"
width="70"
word_wrap="true"
>
[SIM]
[EQ]
</text>
@ -173,6 +204,18 @@ L$ [MODEL]
name="lod_panel"
help_topic="upload_model_lod">
<!-- LOD TABLE-->
<panel
follows="top|left"
name="lod table"
left="0"
top="0"
width="300"
height="163"
visible="true"
border="true"
bevel_style="none" bg_alpha_color="0 0 0 0" bg_opaque_color="0 0 0 0.3">
<text left="10" width="240" bottom="20" height="15" follows="left|top" name="lod_table_header">
Select Level of Detail:
</text>
@ -210,9 +253,22 @@ L$ [MODEL]
</text>
<icon height="16" width="16" left="20" follows="left|top" name="lod_status_message_icon"/>
<text left_pad="5" width="200" height="28" follows="left|top" top_pad="-15" wrap="true" name="lod_status_message_text"/>
<text left_pad="5" width="230" height="28" follows="left|top" top_pad="-15" wrap="true" name="lod_status_message_text"/>
</panel>
<text top_pad="-3" left="10" height="15" follows="left|top">
<!-- LOD MESH-->
<panel
follows="top|left"
name="mesh"
left="0"
top_pad="0"
width="300"
height="237"
visible="true"
border="true"
bevel_style="none" bg_alpha_color="0 0 0 0" bg_opaque_color="0 0 0 0.3">
<text top_pad="5" left="10" height="15" follows="left|top">
Mesh
</text>
@ -236,10 +292,10 @@ L$ [MODEL]
<spinner follows="top|left" name="lod_triangle_limit" increment="10" left_pad="5" height="20" width="100" decimal_digits="0" enabled="true"/>
<spinner left_delta="0" bottom_delta="0" increment="0.01" follows="top|left" name="lod_error_threshold" min_val="0" max_val="100" height="20" width="100" decimal_digits="3" visible="false" enabled="true"/>
<text follows="top|left" name="build_operator_text" left="45" top_pad="10" width="100" height="15">
<text follows="top|left" name="build_operator_text" left="45" top_pad="10" width="100" height="15" text_readonly_color="LabelDisabledColor">
Build Operator:
</text>
<text follows="top|left" name="queue_mode_text" left_pad="5" width="100" height="15">
<text follows="top|left" name="queue_mode_text" left_pad="5" width="100" height="15" text_readonly_color="LabelDisabledColor">
Queue Mode:
</text>
<combo_box follows="top|left" name="build_operator" top_pad="5" left="45" width="100" height="20">
@ -263,11 +319,11 @@ L$ [MODEL]
</combo_item>
</combo_box>
<text top_pad="10" name="border_mode_text" left="45" follows="left|top" width="100" height="15">
<text top_pad="10" name="border_mode_text" left="45" follows="left|top" width="100" height="15" text_readonly_color="LabelDisabledColor">
Border Mode:
</text>
<text left_pad="5" name="share_tolderance_text" follows="left|top" width="100" height="15">
<text left_pad="5" name="share_tolderance_text" follows="left|top" width="100" height="15" text_readonly_color="LabelDisabledColor">
Share Tolerance:
</text>
@ -280,14 +336,28 @@ L$ [MODEL]
</combo_item>
</combo_box>
<spinner follows="left|top" name="share_tolerance" left_pad="5" width="100" decimal_digits="5" initial_value="0.00001" height="20"/>
<text left="10" top_pad="35" follows="top|left" width="240" height="15">
</panel>
<!-- LOD GENERATE NORMALS-->
<panel
follows="top|left"
name="generate normals"
left="0"
top_pad="0"
width="300"
height="46"
visible="true"
border="true"
bevel_style="none" bg_alpha_color="0 0 0 0" bg_opaque_color="0 0 0 0.3">
<text left="10" top_pad="5" follows="top|left" width="240" height="15">
Generate Normals
</text>
<text left="35" top_pad="5" follows="top|left" width="100" height="15" name="crease_label">
Crease Angle:
</text>
<spinner follows="top|left" left_pad="5" min_val="0" max_val="180" value="75" width="60" height="20" name="crease_angle"/>
</panel>
</panel>
<!-- PANEL -->
@ -314,8 +384,8 @@ L$ [MODEL]
<radio_item bottom="23" name="physics_use_lod" label="Use Level of Detail:"/>
</radio_group>
<combo_box left="180" top="10" follows="left|top" height="18"
name="physics_lod_combo" width="110" tool_tip="LOD to use for physics shape">
<combo_box left="150" top="10" follows="left|top" height="18"
name="physics_lod_combo" width="130" tool_tip="LOD to use for physics shape">
<combo_item name="physics_lowest">
Lowest
</combo_item>
@ -448,7 +518,7 @@ L$ [MODEL]
<spinner left="10" height="20" follows="top|left" width="80" top_pad="5" value="1.0" min_val="0.01" max_val="64.0" name="import_scale"/>
<text left_pad="20" height="15" name="import_dimensions" follows="top|left">
<text left_pad="20" height="15" width="140" name="import_dimensions" follows="top|left">
[X] x [Y] x [Z] m
</text>

View File

@ -0,0 +1,310 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<floater
can_close="true"
can_tear_off="false"
height="315"
help_topic="objects_weight_floater"
layout="topleft"
name="object_weights"
save_rect="true"
single_instance="true"
title="ADVANCED"
width="200">
<floater.string
name="nothing_selected"
value="--"/>
<text
follows="left|top"
height="16"
layout="topleft"
left="10"
name="selected_text"
text_color="EmphasisColor"
top="10"
value="SELECTED"
width="180" />
<text
follows="left|top"
halign="right"
height="16"
layout="topleft"
left="10"
name="objects"
top_pad="3"
value="--"
width="40" />
<text
follows="left|top"
height="16"
layout="topleft"
left_pad="10"
name="objects_label"
top_delta="0"
value="Objects"
width="130" />
<text
follows="left|top"
halign="right"
height="16"
layout="topleft"
left="10"
name="prims"
top_pad="3"
value="--"
width="40" />
<text
follows="left|top"
height="16"
layout="topleft"
left_pad="10"
name="prims_label"
top_delta="0"
value="Prims"
width="130" />
<view_border
bevel_style="none"
follows="top|left"
height="0"
layout="topleft"
left="10"
name="selected_text_border"
top_pad="5"
width="180"/>
<text
follows="left|top"
height="16"
layout="topleft"
left="10"
name="weights_of_selected_text"
text_color="EmphasisColor"
top_pad="10"
value="WEIGHTS OF SELECTED"
width="180" />
<text
follows="left|top"
halign="right"
height="16"
layout="topleft"
left="10"
name="download"
top_pad="3"
value="--"
width="40" />
<loading_indicator
follows="left|top"
height="16"
layout="topleft"
left="34"
name="download_loading_indicator"
top_delta="0"
width="16" />
<text
follows="left|top"
height="16"
layout="topleft"
left_pad="10"
name="download_label"
top_delta="0"
value="Download"
width="130" />
<text
follows="left|top"
halign="right"
height="16"
layout="topleft"
left="10"
name="physics"
top_pad="3"
value="--"
width="40" />
<loading_indicator
follows="left|top"
height="16"
layout="topleft"
left="34"
name="physics_loading_indicator"
top_delta="0"
width="16" />
<text
follows="left|top"
height="16"
layout="topleft"
left_pad="10"
name="physics_label"
top_delta="0"
value="Physics"
width="130" />
<text
follows="left|top"
halign="right"
height="16"
layout="topleft"
left="10"
name="server"
top_pad="3"
value="--"
width="40" />
<loading_indicator
follows="left|top"
height="16"
layout="topleft"
left="34"
name="server_loading_indicator"
top_delta="0"
width="16" />
<text
follows="left|top"
height="16"
layout="topleft"
left_pad="10"
name="server_label"
top_delta="0"
value="Server"
width="130" />
<text
follows="left|top"
halign="right"
height="16"
layout="topleft"
left="10"
name="display"
top_pad="3"
value="--"
width="40" />
<loading_indicator
follows="left|top"
height="16"
layout="topleft"
left="34"
name="display_loading_indicator"
top_delta="0"
width="16" />
<text
follows="left|top"
height="16"
layout="topleft"
left_pad="10"
name="display_label"
top_delta="0"
value="Display"
width="130" />
<view_border
bevel_style="none"
follows="top|left"
height="0"
layout="topleft"
left="10"
name="weights_text_border"
top_pad="5"
width="180"/>
<text
follows="left|top"
height="16"
layout="topleft"
left="10"
name="land_impacts_text"
text_color="EmphasisColor"
top_pad="10"
value="LAND IMPACTS"
width="180" />
<text
follows="left|top"
halign="right"
height="16"
layout="topleft"
left="10"
name="selected"
top_pad="3"
value="--"
width="40" />
<text
follows="left|top"
height="16"
layout="topleft"
left_pad="10"
name="selected_label"
top_delta="0"
value="Selected"
width="130" />
<text
follows="left|top"
halign="right"
height="16"
layout="topleft"
left="10"
name="rezzed_on_land"
top_pad="3"
value="--"
width="40" />
<text
follows="left|top"
height="16"
layout="topleft"
left_pad="10"
name="rezzed_on_land_label"
top_delta="0"
value="Rezzed on land"
width="130" />
<text
follows="left|top"
halign="right"
height="16"
layout="topleft"
left="10"
name="remaining_capacity"
top_pad="3"
value="--"
width="40" />
<text
follows="left|top"
height="16"
layout="topleft"
left_pad="10"
name="remaining_capacity"
top_delta="0"
value="Remaining capacity"
width="130" />
<text
follows="left|top"
halign="right"
height="16"
layout="topleft"
left="10"
name="total_capacity"
top_pad="3"
value="--"
width="40" />
<text
follows="left|top"
height="16"
layout="topleft"
left_pad="10"
name="total_capacity"
top_delta="0"
value="Total capacity"
width="130" />
<view_border
bevel_style="none"
follows="top|left"
height="0"
layout="topleft"
left="10"
name="land_impacts_text_border"
top_pad="5"
width="180"/>
<text
follows="left|top"
height="16"
layout="topleft"
left="10"
name="total_capacity"
top_pad="10"
value="[secondlife:///www.secondlife.com What is all this?...]"
width="180" />
</floater>

View File

@ -742,7 +742,7 @@
top_pad="0"
visible="false"
width="280">
Physics weight [PHYS_WEIGHT], Render Cost [DISP_WEIGHT].
Physics weight [PHYS_WEIGHT], Render Cost [DISP_WEIGHT]. [secondlife:///app/openfloater/object_weights More info]
</text>
<!-- <text -->
<!-- text_color="LtGray_50" -->

View File

@ -133,17 +133,7 @@
tool_tip="Let people see this region and its parcels in search results"
top="190"
width="80" />
<check_box
visible="FALSE"
height="20"
label="Allow Mesh Objects"
layout="topleft"
left="10"
name="mesh_rez_enabled_check"
tool_tip="Let people rez mesh objects on this region"
top="210"
width="80" />
<spinner
<spinner
decimal_digits="0"
follows="left|top"
height="20"