SH-1719 FIXED Viewer side cleanup of presentation of accounting data in build tools
- Moved grid mode combo box to the grid options floater - Updated UI of the build floater according to the spec - Fixed "conflict" between LLFloaterOpenHandler and LLFloaterHandler command handlersmaster
parent
226bf6db06
commit
9afc77ba0a
|
|
@ -9398,6 +9398,17 @@
|
|||
<key>Value</key>
|
||||
<integer>0</integer>
|
||||
</map>
|
||||
<key>ShowAdvancedBuilderOptions</key>
|
||||
<map>
|
||||
<key>Comment</key>
|
||||
<string>Shows physics and display weight</string>
|
||||
<key>Persist</key>
|
||||
<integer>1</integer>
|
||||
<key>Type</key>
|
||||
<string>Boolean</string>
|
||||
<key>Value</key>
|
||||
<integer>0</integer>
|
||||
</map>
|
||||
<key>ShowAdvancedGraphicsSettings</key>
|
||||
<map>
|
||||
<key>Comment</key>
|
||||
|
|
|
|||
|
|
@ -34,15 +34,81 @@
|
|||
#include "llfloaterbuildoptions.h"
|
||||
#include "lluictrlfactory.h"
|
||||
|
||||
#include "llcombobox.h"
|
||||
#include "llselectmgr.h"
|
||||
|
||||
//
|
||||
// Methods
|
||||
//
|
||||
|
||||
void commit_grid_mode(LLUICtrl *);
|
||||
|
||||
LLFloaterBuildOptions::LLFloaterBuildOptions(const LLSD& key)
|
||||
: LLFloater(key)
|
||||
: LLFloater(key),
|
||||
mComboGridMode(NULL)
|
||||
{
|
||||
mCommitCallbackRegistrar.add("GridOptions.gridMode", boost::bind(&commit_grid_mode,_1));
|
||||
}
|
||||
|
||||
LLFloaterBuildOptions::~LLFloaterBuildOptions()
|
||||
{}
|
||||
|
||||
BOOL LLFloaterBuildOptions::postBuild()
|
||||
{
|
||||
mComboGridMode = getChild<LLComboBox>("combobox grid mode");
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
void LLFloaterBuildOptions::setGridMode(EGridMode mode)
|
||||
{
|
||||
mComboGridMode->setCurrentByIndex((S32)mode);
|
||||
}
|
||||
|
||||
void LLFloaterBuildOptions::updateGridMode()
|
||||
{
|
||||
if (mComboGridMode)
|
||||
{
|
||||
S32 index = mComboGridMode->getCurrentIndex();
|
||||
mComboGridMode->removeall();
|
||||
|
||||
switch (mObjectSelection->getSelectType())
|
||||
{
|
||||
case SELECT_TYPE_HUD:
|
||||
mComboGridMode->add(getString("grid_screen_text"));
|
||||
mComboGridMode->add(getString("grid_local_text"));
|
||||
break;
|
||||
case SELECT_TYPE_WORLD:
|
||||
mComboGridMode->add(getString("grid_world_text"));
|
||||
mComboGridMode->add(getString("grid_local_text"));
|
||||
mComboGridMode->add(getString("grid_reference_text"));
|
||||
break;
|
||||
case SELECT_TYPE_ATTACHMENT:
|
||||
mComboGridMode->add(getString("grid_attachment_text"));
|
||||
mComboGridMode->add(getString("grid_local_text"));
|
||||
mComboGridMode->add(getString("grid_reference_text"));
|
||||
break;
|
||||
}
|
||||
|
||||
mComboGridMode->setCurrentByIndex(index);
|
||||
}
|
||||
}
|
||||
|
||||
// virtual
|
||||
void LLFloaterBuildOptions::onOpen(const LLSD& key)
|
||||
{
|
||||
mObjectSelection = LLSelectMgr::getInstance()->getEditSelection();
|
||||
}
|
||||
|
||||
// virtual
|
||||
void LLFloaterBuildOptions::onClose(bool app_quitting)
|
||||
{
|
||||
mObjectSelection = NULL;
|
||||
}
|
||||
|
||||
void commit_grid_mode(LLUICtrl *ctrl)
|
||||
{
|
||||
LLComboBox* combo = (LLComboBox*)ctrl;
|
||||
|
||||
LLSelectMgr::getInstance()->setGridMode((EGridMode)combo->getCurrentIndex());
|
||||
}
|
||||
|
|
|
|||
|
|
@ -33,15 +33,34 @@
|
|||
#define LL_LLFLOATERBUILDOPTIONS_H
|
||||
|
||||
#include "llfloater.h"
|
||||
#include "llselectmgr.h"
|
||||
|
||||
class LLComboBox;
|
||||
class LLObjectSelection;
|
||||
|
||||
typedef LLSafeHandle<LLObjectSelection> LLObjectSelectionHandle;
|
||||
|
||||
class LLFloaterBuildOptions
|
||||
: public LLFloater
|
||||
{
|
||||
friend class LLFloaterReg;
|
||||
public:
|
||||
|
||||
virtual BOOL postBuild();
|
||||
|
||||
/*virtual*/ void onOpen(const LLSD& key);
|
||||
/*virtual*/ void onClose(bool app_quitting);
|
||||
|
||||
void setGridMode(EGridMode mode);
|
||||
void updateGridMode();
|
||||
|
||||
private:
|
||||
|
||||
friend class LLFloaterReg;
|
||||
|
||||
LLFloaterBuildOptions(const LLSD& key);
|
||||
~LLFloaterBuildOptions();
|
||||
};
|
||||
|
||||
LLComboBox* mComboGridMode;
|
||||
LLObjectSelectionHandle mObjectSelection;
|
||||
};
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -36,7 +36,6 @@
|
|||
#include "llagentcamera.h"
|
||||
#include "llbutton.h"
|
||||
#include "llcheckboxctrl.h"
|
||||
#include "llcombobox.h"
|
||||
#include "lldraghandle.h"
|
||||
#include "llerror.h"
|
||||
#include "llfloaterbuildoptions.h"
|
||||
|
|
@ -101,6 +100,7 @@ const std::string PANEL_NAMES[LLFloaterTools::PANEL_COUNT] =
|
|||
std::string("Content"), // PANEL_CONTENTS,
|
||||
};
|
||||
|
||||
|
||||
// Local prototypes
|
||||
void commit_select_component(void *data);
|
||||
void click_show_more(void*);
|
||||
|
|
@ -116,7 +116,6 @@ void commit_radio_group_focus(LLUICtrl* ctrl);
|
|||
void commit_radio_group_move(LLUICtrl* ctrl);
|
||||
void commit_radio_group_edit(LLUICtrl* ctrl);
|
||||
void commit_radio_group_land(LLUICtrl* ctrl);
|
||||
void commit_grid_mode(LLUICtrl *);
|
||||
void commit_slider_zoom(LLUICtrl *ctrl);
|
||||
|
||||
|
||||
|
|
@ -234,7 +233,6 @@ BOOL LLFloaterTools::postBuild()
|
|||
getChild<LLUICtrl>("checkbox uniform")->setValue((BOOL)gSavedSettings.getBOOL("ScaleUniform"));
|
||||
mCheckStretchTexture = getChild<LLCheckBoxCtrl>("checkbox stretch textures");
|
||||
getChild<LLUICtrl>("checkbox stretch textures")->setValue((BOOL)gSavedSettings.getBOOL("ScaleStretchTextures"));
|
||||
mComboGridMode = getChild<LLComboBox>("combobox grid mode");
|
||||
mCheckStretchUniformLabel = getChild<LLTextBox>("checkbox uniform label");
|
||||
|
||||
//
|
||||
|
|
@ -269,6 +267,8 @@ BOOL LLFloaterTools::postBuild()
|
|||
// the setting stores the actual force multiplier, but the slider is logarithmic, so we convert here
|
||||
getChild<LLUICtrl>("slider force")->setValue(log10(gSavedSettings.getF32("LandBrushForce")));
|
||||
|
||||
mCostTextBorder = getChild<LLViewBorder>("cost_text_border");
|
||||
|
||||
mTab = getChild<LLTabContainer>("Object Info Tabs");
|
||||
if(mTab)
|
||||
{
|
||||
|
|
@ -311,7 +311,6 @@ LLFloaterTools::LLFloaterTools(const LLSD& key)
|
|||
mCheckSnapToGrid(NULL),
|
||||
mBtnGridOptions(NULL),
|
||||
mTitleMedia(NULL),
|
||||
mComboGridMode(NULL),
|
||||
mCheckStretchUniform(NULL),
|
||||
mCheckStretchTexture(NULL),
|
||||
mCheckStretchUniformLabel(NULL),
|
||||
|
|
@ -344,6 +343,7 @@ LLFloaterTools::LLFloaterTools(const LLSD& key)
|
|||
mPanelFace(NULL),
|
||||
mPanelLandInfo(NULL),
|
||||
|
||||
mCostTextBorder(NULL),
|
||||
mTabLand(NULL),
|
||||
mDirty(TRUE),
|
||||
mNeedMediaTitle(TRUE)
|
||||
|
|
@ -367,7 +367,6 @@ LLFloaterTools::LLFloaterTools(const LLSD& key)
|
|||
mCommitCallbackRegistrar.add("BuildTool.selectComponent", boost::bind(&commit_select_component, this));
|
||||
mCommitCallbackRegistrar.add("BuildTool.gridOptions", boost::bind(&LLFloaterTools::onClickGridOptions,this));
|
||||
mCommitCallbackRegistrar.add("BuildTool.applyToSelection", boost::bind(&click_apply_to_selection, this));
|
||||
mCommitCallbackRegistrar.add("BuildTool.gridMode", boost::bind(&commit_grid_mode,_1));
|
||||
mCommitCallbackRegistrar.add("BuildTool.commitRadioLand", boost::bind(&commit_radio_group_land,_1));
|
||||
mCommitCallbackRegistrar.add("BuildTool.LandBrushForce", boost::bind(&commit_slider_dozer_force,_1));
|
||||
mCommitCallbackRegistrar.add("BuildTool.AddMedia", boost::bind(&LLFloaterTools::onClickBtnAddMedia,this));
|
||||
|
|
@ -429,10 +428,10 @@ void LLFloaterTools::refresh()
|
|||
{
|
||||
std::string obj_count_string;
|
||||
LLResMgr::getInstance()->getIntegerString(obj_count_string, LLSelectMgr::getInstance()->getSelection()->getRootObjectCount());
|
||||
getChild<LLUICtrl>("obj_count")->setTextArg("[COUNT]", obj_count_string);
|
||||
getChild<LLUICtrl>("selection_count")->setTextArg("[OBJ_COUNT]", obj_count_string);
|
||||
std::string prim_count_string;
|
||||
LLResMgr::getInstance()->getIntegerString(prim_count_string, LLSelectMgr::getInstance()->getSelection()->getObjectCount());
|
||||
getChild<LLUICtrl>("prim_count")->setTextArg("[COUNT]", prim_count_string);
|
||||
getChild<LLUICtrl>("selection_count")->setTextArg("[PRIM_COUNT]", prim_count_string);
|
||||
|
||||
// calculate selection rendering cost
|
||||
if (sShowObjectCost)
|
||||
|
|
@ -451,55 +450,46 @@ void LLFloaterTools::refresh()
|
|||
else
|
||||
#endif
|
||||
{
|
||||
// Get the number of objects selected
|
||||
std::string root_object_count_string;
|
||||
std::string object_count_string;
|
||||
F32 link_phys_cost = LLSelectMgr::getInstance()->getSelection()->getSelectedLinksetPhysicsCost();
|
||||
F32 link_cost = LLSelectMgr::getInstance()->getSelection()->getSelectedLinksetCost();
|
||||
S32 prim_count = LLSelectMgr::getInstance()->getSelection()->getObjectCount();
|
||||
S32 link_count = LLSelectMgr::getInstance()->getSelection()->getRootObjectCount();
|
||||
|
||||
LLResMgr::getInstance()->getIntegerString(
|
||||
root_object_count_string,
|
||||
LLSelectMgr::getInstance()->getSelection()->getRootObjectCount());
|
||||
LLResMgr::getInstance()->getIntegerString(
|
||||
object_count_string,
|
||||
LLSelectMgr::getInstance()->getSelection()->getObjectCount());
|
||||
LLStringUtil::format_map_t args;
|
||||
args["OBJ_COUNT"] = llformat("%.1d", link_count);
|
||||
args["PRIM_COUNT"] = llformat("%.1d", prim_count);
|
||||
|
||||
F32 obj_cost =
|
||||
LLSelectMgr::getInstance()->getSelection()->getSelectedObjectCost();
|
||||
F32 link_cost =
|
||||
LLSelectMgr::getInstance()->getSelection()->getSelectedLinksetCost();
|
||||
F32 obj_physics_cost =
|
||||
LLSelectMgr::getInstance()->getSelection()->getSelectedPhysicsCost();
|
||||
F32 link_physics_cost =
|
||||
LLSelectMgr::getInstance()->getSelection()->getSelectedLinksetPhysicsCost();
|
||||
std::ostringstream selection_info;
|
||||
selection_info << getString("status_selectcount", args);
|
||||
|
||||
// Update the text for the counts
|
||||
childSetTextArg(
|
||||
"linked_set_count",
|
||||
"[COUNT]",
|
||||
root_object_count_string);
|
||||
childSetTextArg("object_count", "[COUNT]", object_count_string);
|
||||
bool show_prim_equiv = (link_cost != prim_count) && link_cost;
|
||||
bool show_adv_weight = gSavedSettings.getBOOL("ShowAdvancedBuilderOptions");
|
||||
bool show_mesh_cost = gMeshRepo.meshRezEnabled();
|
||||
|
||||
// Update the text for the resource costs
|
||||
childSetTextArg("linked_set_cost","[COST]",llformat("%.1f", link_cost));
|
||||
childSetTextArg("object_cost", "[COST]", llformat("%.1f", obj_cost));
|
||||
childSetTextArg("linked_set_cost","[PHYSICS]",llformat("%.1f", link_physics_cost));
|
||||
childSetTextArg("object_cost", "[PHYSICS]", llformat("%.1f", obj_physics_cost));
|
||||
|
||||
// Display rendering cost if needed
|
||||
if (sShowObjectCost)
|
||||
if (show_prim_equiv && show_mesh_cost)
|
||||
{
|
||||
std::string prim_cost_string;
|
||||
LLResMgr::getInstance()->getIntegerString(prim_cost_string, calcRenderCost());
|
||||
getChild<LLUICtrl>("RenderingCost")->setTextArg("[COUNT]", prim_cost_string);
|
||||
selection_info << ": ";
|
||||
args["SEL_WEIGHT"] = llformat("%.1f", link_cost);
|
||||
selection_info << getString("status_selectprimequiv", args);
|
||||
}
|
||||
|
||||
if (show_adv_weight)
|
||||
{
|
||||
show_prim_equiv ? (selection_info << ",") : (selection_info << ".");
|
||||
|
||||
// disable the object and prim counts if nothing selected
|
||||
bool have_selection = ! LLSelectMgr::getInstance()->getSelection()->isEmpty();
|
||||
childSetEnabled("linked_set_count", have_selection);
|
||||
childSetEnabled("object_count", have_selection);
|
||||
childSetEnabled("linked_set_cost", have_selection);
|
||||
childSetEnabled("object_cost", have_selection);
|
||||
getChildView("RenderingCost")->setEnabled(have_selection && sShowObjectCost);
|
||||
childSetTextArg("selection_weight", "[PHYS_WEIGHT]", llformat("%.1f", link_phys_cost));
|
||||
childSetTextArg("selection_weight", "[DISP_WEIGHT]", llformat("%.1d", calcRenderCost()));
|
||||
}
|
||||
else
|
||||
{
|
||||
selection_info<<".";
|
||||
}
|
||||
getChild<LLTextBox>("selection_count")->setText(selection_info.str());
|
||||
|
||||
bool have_selection = !LLSelectMgr::getInstance()->getSelection()->isEmpty();
|
||||
childSetVisible("selection_count", have_selection);
|
||||
childSetVisible("selection_weight", have_selection && show_adv_weight);
|
||||
childSetVisible("selection_empty", !have_selection);
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -664,33 +654,6 @@ void LLFloaterTools::updatePopup(LLCoordGL center, MASK mask)
|
|||
mRadioGroupEdit->setValue("radio select face");
|
||||
}
|
||||
|
||||
if (mComboGridMode)
|
||||
{
|
||||
mComboGridMode->setVisible( edit_visible );
|
||||
S32 index = mComboGridMode->getCurrentIndex();
|
||||
mComboGridMode->removeall();
|
||||
|
||||
switch (mObjectSelection->getSelectType())
|
||||
{
|
||||
case SELECT_TYPE_HUD:
|
||||
mComboGridMode->add(getString("grid_screen_text"));
|
||||
mComboGridMode->add(getString("grid_local_text"));
|
||||
//mComboGridMode->add(getString("grid_reference_text"));
|
||||
break;
|
||||
case SELECT_TYPE_WORLD:
|
||||
mComboGridMode->add(getString("grid_world_text"));
|
||||
mComboGridMode->add(getString("grid_local_text"));
|
||||
mComboGridMode->add(getString("grid_reference_text"));
|
||||
break;
|
||||
case SELECT_TYPE_ATTACHMENT:
|
||||
mComboGridMode->add(getString("grid_attachment_text"));
|
||||
mComboGridMode->add(getString("grid_local_text"));
|
||||
mComboGridMode->add(getString("grid_reference_text"));
|
||||
break;
|
||||
}
|
||||
|
||||
mComboGridMode->setCurrentByIndex(index);
|
||||
}
|
||||
// Snap to grid disabled for grab tool - very confusing
|
||||
if (mCheckSnapToGrid) mCheckSnapToGrid->setVisible( edit_visible /* || tool == LLToolGrab::getInstance() */ );
|
||||
if (mBtnGridOptions) mBtnGridOptions->setVisible( edit_visible /* || tool == LLToolGrab::getInstance() */ );
|
||||
|
|
@ -739,6 +702,8 @@ void LLFloaterTools::updatePopup(LLCoordGL center, MASK mask)
|
|||
// Land buttons
|
||||
BOOL land_visible = (tool == LLToolBrushLand::getInstance() || tool == LLToolSelectLand::getInstance() );
|
||||
|
||||
mCostTextBorder->setVisible(!land_visible);
|
||||
|
||||
if (mBtnLand) mBtnLand ->setToggleState( land_visible );
|
||||
|
||||
mRadioGroupLand->setVisible( land_visible );
|
||||
|
|
@ -791,15 +756,11 @@ void LLFloaterTools::updatePopup(LLCoordGL center, MASK mask)
|
|||
getChildView("Strength:")->setVisible( land_visible);
|
||||
}
|
||||
|
||||
bool show_mesh_cost = gMeshRepo.meshRezEnabled();
|
||||
bool have_selection = !LLSelectMgr::getInstance()->getSelection()->isEmpty();
|
||||
|
||||
getChildView("obj_count")->setVisible( !land_visible && !show_mesh_cost);
|
||||
getChildView("prim_count")->setVisible( !land_visible && !show_mesh_cost);
|
||||
getChildView("linked_set_count")->setVisible( !land_visible && show_mesh_cost);
|
||||
getChildView("linked_set_cost")->setVisible( !land_visible && show_mesh_cost);
|
||||
getChildView("object_count")->setVisible( !land_visible && show_mesh_cost);
|
||||
getChildView("object_cost")->setVisible( !land_visible && show_mesh_cost);
|
||||
getChildView("RenderingCost")->setVisible( !land_visible && sShowObjectCost);
|
||||
getChildView("selection_count")->setVisible(!land_visible && have_selection);
|
||||
getChildView("selection_weight")->setVisible(!land_visible && have_selection && gSavedSettings.getBOOL("ShowAdvancedBuilderOptions"));
|
||||
getChildView("selection_empty")->setVisible(!land_visible && !have_selection);
|
||||
|
||||
mTab->setVisible(!land_visible);
|
||||
mPanelLandInfo->setVisible(land_visible);
|
||||
|
|
@ -1032,13 +993,6 @@ void commit_select_component(void *data)
|
|||
}
|
||||
}
|
||||
|
||||
void commit_grid_mode(LLUICtrl *ctrl)
|
||||
{
|
||||
LLComboBox* combo = (LLComboBox*)ctrl;
|
||||
|
||||
LLSelectMgr::getInstance()->setGridMode((EGridMode)combo->getCurrentIndex());
|
||||
}
|
||||
|
||||
// static
|
||||
void LLFloaterTools::setObjectType( LLPCode pcode )
|
||||
{
|
||||
|
|
|
|||
|
|
@ -32,7 +32,6 @@
|
|||
#include "llparcelselection.h"
|
||||
|
||||
class LLButton;
|
||||
class LLComboBox;
|
||||
class LLCheckBoxCtrl;
|
||||
class LLPanelPermissions;
|
||||
class LLPanelObject;
|
||||
|
|
@ -140,7 +139,6 @@ public:
|
|||
|
||||
LLCheckBoxCtrl* mCheckSnapToGrid;
|
||||
LLButton* mBtnGridOptions;
|
||||
LLComboBox* mComboGridMode;
|
||||
LLCheckBoxCtrl* mCheckStretchUniform;
|
||||
LLCheckBoxCtrl* mCheckStretchTexture;
|
||||
|
||||
|
|
@ -179,6 +177,8 @@ public:
|
|||
LLPanelFace *mPanelFace;
|
||||
LLPanelLandInfo *mPanelLandInfo;
|
||||
|
||||
LLViewBorder* mCostTextBorder;
|
||||
|
||||
LLTabContainer* mTabLand;
|
||||
|
||||
LLParcelSelectionHandle mParcelSelection;
|
||||
|
|
|
|||
|
|
@ -129,12 +129,12 @@
|
|||
|
||||
// *NOTE: Please add files in alphabetical order to keep merges easy.
|
||||
|
||||
// handle secondlife:///app/floater/{NAME} URLs
|
||||
// handle secondlife:///app/openfloater/{NAME} URLs
|
||||
class LLFloaterOpenHandler : public LLCommandHandler
|
||||
{
|
||||
public:
|
||||
// requires trusted browser to trigger
|
||||
LLFloaterOpenHandler() : LLCommandHandler("floater", UNTRUSTED_THROTTLE) { }
|
||||
LLFloaterOpenHandler() : LLCommandHandler("openfloater", UNTRUSTED_THROTTLE) { }
|
||||
|
||||
bool handle(const LLSD& params, const LLSD& query_map,
|
||||
LLMediaCtrl* web)
|
||||
|
|
|
|||
|
|
@ -60,6 +60,7 @@
|
|||
#include "llfloatersnapshot.h"
|
||||
#include "llfloatertools.h"
|
||||
#include "llfloaterworldmap.h"
|
||||
#include "llfloaterbuildoptions.h"
|
||||
#include "llavataractions.h"
|
||||
#include "lllandmarkactions.h"
|
||||
#include "llgroupmgr.h"
|
||||
|
|
@ -7159,9 +7160,11 @@ class LLToolsUseSelectionForGrid : public view_listener_t
|
|||
} func;
|
||||
LLSelectMgr::getInstance()->getSelection()->applyToRootObjects(&func);
|
||||
LLSelectMgr::getInstance()->setGridMode(GRID_MODE_REF_OBJECT);
|
||||
if (gFloaterTools)
|
||||
|
||||
LLFloaterBuildOptions* build_options_floater = LLFloaterReg::getTypedInstance<LLFloaterBuildOptions>("build_options");
|
||||
if (build_options_floater && build_options_floater->getVisible())
|
||||
{
|
||||
gFloaterTools->mComboGridMode->setCurrentByIndex((S32)GRID_MODE_REF_OBJECT);
|
||||
build_options_floater->setGridMode(GRID_MODE_REF_OBJECT);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3142,6 +3142,12 @@ void LLViewerWindow::updateLayout()
|
|||
//gMenuBarView->setItemVisible("BuildTools", gFloaterTools->getVisible());
|
||||
}
|
||||
|
||||
LLFloaterBuildOptions* build_options_floater = LLFloaterReg::getTypedInstance<LLFloaterBuildOptions>("build_options");
|
||||
if (build_options_floater && build_options_floater->getVisible())
|
||||
{
|
||||
build_options_floater->updateGridMode();
|
||||
}
|
||||
|
||||
// Always update console
|
||||
if(gConsole)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -2,27 +2,84 @@
|
|||
<floater
|
||||
legacy_header_height="18"
|
||||
follows="right"
|
||||
height="170"
|
||||
height="198"
|
||||
layout="topleft"
|
||||
name="build options floater"
|
||||
help_topic="build_options_floater"
|
||||
save_rect="true"
|
||||
title="GRID OPTIONS"
|
||||
width="264">
|
||||
<floater.string
|
||||
name="grid_screen_text">
|
||||
Screen
|
||||
</floater.string>
|
||||
<floater.string
|
||||
name="grid_local_text">
|
||||
Local
|
||||
</floater.string>
|
||||
<floater.string
|
||||
name="grid_world_text">
|
||||
World
|
||||
</floater.string>
|
||||
<floater.string
|
||||
name="grid_reference_text">
|
||||
Reference
|
||||
</floater.string>
|
||||
<floater.string
|
||||
name="grid_attachment_text">
|
||||
Attachment
|
||||
</floater.string>
|
||||
<text
|
||||
type="string"
|
||||
length="1"
|
||||
follows="left|top"
|
||||
height="16"
|
||||
layout="topleft"
|
||||
left="10"
|
||||
tool_tip="Grid opacity"
|
||||
name="grid_opacity_label"
|
||||
top_pad="30"
|
||||
width="123">
|
||||
Mode
|
||||
</text>
|
||||
<combo_box
|
||||
height="23"
|
||||
layout="topleft"
|
||||
left_pad="9"
|
||||
follows="left|top"
|
||||
name="combobox grid mode"
|
||||
tool_tip="Choose the type of grid ruler for positioning the object"
|
||||
top_delta="-3"
|
||||
width="108">
|
||||
<combo_box.item
|
||||
label="World grid"
|
||||
name="World"
|
||||
value="World" />
|
||||
<combo_box.item
|
||||
label="Local grid"
|
||||
name="Local"
|
||||
value="Local" />
|
||||
<combo_box.item
|
||||
label="Reference grid"
|
||||
name="Reference"
|
||||
value="Reference" />
|
||||
<combo_box.commit_callback
|
||||
function="GridOptions.gridMode"/>
|
||||
</combo_box>
|
||||
<spinner
|
||||
control_name="GridResolution"
|
||||
follows="left|top"
|
||||
height="23"
|
||||
initial_value="1"
|
||||
label="Grid Units (meters)"
|
||||
label_width="160"
|
||||
label="Units (meters)"
|
||||
label_width="130"
|
||||
layout="topleft"
|
||||
left="10"
|
||||
max_val="5"
|
||||
min_val="0.01"
|
||||
name="GridResolution"
|
||||
top="25"
|
||||
width="230" />
|
||||
top_pad="4"
|
||||
width="200" />
|
||||
<spinner
|
||||
control_name="GridDrawSize"
|
||||
decimal_digits="1"
|
||||
|
|
@ -30,15 +87,15 @@
|
|||
height="23"
|
||||
increment="0.5"
|
||||
initial_value="5"
|
||||
label="Grid Extents (meters)"
|
||||
label_width="160"
|
||||
label="Extents (meters)"
|
||||
label_width="130"
|
||||
layout="topleft"
|
||||
left_delta="0"
|
||||
max_val="50"
|
||||
min_val="1"
|
||||
name="GridDrawSize"
|
||||
top_pad="0"
|
||||
width="230" />
|
||||
width="200" />
|
||||
<check_box
|
||||
control_name="GridSubUnit"
|
||||
height="16"
|
||||
|
|
|
|||
|
|
@ -281,7 +281,7 @@
|
|||
height="40"
|
||||
left="10"
|
||||
word_wrap="true">
|
||||
Advanced users familiar with 3d content creation tools may prefer to use the [secondlife:///app/floater/upload_model Advanced Mesh Import Window] .
|
||||
Advanced users familiar with 3d content creation tools may prefer to use the [secondlife:///app/openfloater/upload_model Advanced Mesh Import Window] .
|
||||
</text>
|
||||
</panel>
|
||||
</panel>
|
||||
|
|
|
|||
|
|
@ -47,24 +47,12 @@
|
|||
Click and drag to select land
|
||||
</floater.string>
|
||||
<floater.string
|
||||
name="grid_screen_text">
|
||||
Screen
|
||||
name="status_selectcount">
|
||||
[OBJ_COUNT] objects ( [PRIM_COUNT] prims ) selected
|
||||
</floater.string>
|
||||
<floater.string
|
||||
name="grid_local_text">
|
||||
Local
|
||||
</floater.string>
|
||||
<floater.string
|
||||
name="grid_world_text">
|
||||
World
|
||||
</floater.string>
|
||||
<floater.string
|
||||
name="grid_reference_text">
|
||||
Reference
|
||||
</floater.string>
|
||||
<floater.string
|
||||
name="grid_attachment_text">
|
||||
Attachment
|
||||
name="status_selectprimequiv">
|
||||
PE weight [SEL_WEIGHT]
|
||||
</floater.string>
|
||||
<button
|
||||
follows="left|top"
|
||||
|
|
@ -221,7 +209,7 @@
|
|||
<radio_group
|
||||
follows="left|top"
|
||||
left="5"
|
||||
top="59"
|
||||
top="55"
|
||||
height="70"
|
||||
layout="topleft"
|
||||
name="edit_radio_group">
|
||||
|
|
@ -255,18 +243,18 @@
|
|||
label="Edit linked"
|
||||
layout="topleft"
|
||||
name="checkbox edit linked parts"
|
||||
top_pad="-10">
|
||||
top_pad="-18">
|
||||
<check_box.commit_callback
|
||||
function="BuildTool.selectComponent"/>
|
||||
</check_box>
|
||||
|
||||
<button
|
||||
follows="left|top"
|
||||
height="23"
|
||||
height="20"
|
||||
label="Link"
|
||||
top_pad="2"
|
||||
top="108"
|
||||
layout="topleft"
|
||||
left="5"
|
||||
left="143"
|
||||
name="link_btn"
|
||||
width="50">
|
||||
<button.commit_callback
|
||||
|
|
@ -274,7 +262,7 @@
|
|||
</button>
|
||||
<button
|
||||
follows="left|top"
|
||||
height="23"
|
||||
height="20"
|
||||
label="Unlink"
|
||||
layout="topleft"
|
||||
left_pad="2"
|
||||
|
|
@ -302,7 +290,7 @@
|
|||
layout="topleft"
|
||||
left="143"
|
||||
name="checkbox uniform"
|
||||
top="50"
|
||||
top="48"
|
||||
width="20" />
|
||||
<text
|
||||
height="19"
|
||||
|
|
@ -324,53 +312,29 @@
|
|||
layout="topleft"
|
||||
left="143"
|
||||
name="checkbox stretch textures"
|
||||
top_pad="-6"
|
||||
top_pad="-4"
|
||||
follows="left|top"
|
||||
width="134" />
|
||||
<check_box
|
||||
control_name="SnapEnabled"
|
||||
height="18"
|
||||
initial_value="true"
|
||||
label="Snap to grid"
|
||||
label="Snap"
|
||||
layout="topleft"
|
||||
top_pad="0"
|
||||
name="checkbox snap to grid"
|
||||
width="134" />
|
||||
<combo_box
|
||||
height="23"
|
||||
layout="topleft"
|
||||
follows="left|top"
|
||||
name="combobox grid mode"
|
||||
tool_tip="Choose the type of grid ruler for positioning the object"
|
||||
top_pad="0"
|
||||
width="108">
|
||||
<combo_box.item
|
||||
label="World grid"
|
||||
name="World"
|
||||
value="World" />
|
||||
<combo_box.item
|
||||
label="Local grid"
|
||||
name="Local"
|
||||
value="Local" />
|
||||
<combo_box.item
|
||||
label="Reference grid"
|
||||
name="Reference"
|
||||
value="Reference" />
|
||||
<combo_box.commit_callback
|
||||
function="BuildTool.gridMode"/>
|
||||
</combo_box>
|
||||
<button
|
||||
left_pad="0"
|
||||
image_selected="ForwardArrow_Press"
|
||||
image_unselected="ForwardArrow_Off"
|
||||
label="Options..."
|
||||
layout="topleft"
|
||||
follows="top|left"
|
||||
name="Options..."
|
||||
tool_tip="See more grid options"
|
||||
top_pad="-22"
|
||||
right="-10"
|
||||
width="18"
|
||||
height="23" >
|
||||
top="83"
|
||||
right="-35"
|
||||
width="65"
|
||||
height="21" >
|
||||
<button.commit_callback
|
||||
function="BuildTool.gridOptions"/>
|
||||
</button>
|
||||
|
|
@ -385,7 +349,7 @@
|
|||
left="10"
|
||||
name="ToolCube"
|
||||
tool_tip="Cube"
|
||||
top="51"
|
||||
top="58"
|
||||
width="20" />
|
||||
<button
|
||||
follows="left|top"
|
||||
|
|
@ -447,10 +411,10 @@
|
|||
image_selected="Object_Hemi_Cylinder_Selected"
|
||||
image_unselected="Object_Hemi_Cylinder"
|
||||
layout="topleft"
|
||||
left_delta="29"
|
||||
left="10"
|
||||
name="ToolHemiCylinder"
|
||||
tool_tip="Hemicylinder"
|
||||
top_delta="0"
|
||||
top="84"
|
||||
width="20" />
|
||||
<button
|
||||
follows="left|top"
|
||||
|
|
@ -515,7 +479,7 @@
|
|||
left="10"
|
||||
name="ToolTorus"
|
||||
tool_tip="Torus"
|
||||
top="77"
|
||||
top="109"
|
||||
width="20" />
|
||||
<button
|
||||
follows="left|top"
|
||||
|
|
@ -575,9 +539,9 @@
|
|||
height="19"
|
||||
label="Keep Tool selected"
|
||||
layout="topleft"
|
||||
left="4"
|
||||
left="155"
|
||||
name="checkbox sticky"
|
||||
top="101"
|
||||
top="55"
|
||||
width="128" />
|
||||
<check_box
|
||||
control_name="CreateToolCopySelection"
|
||||
|
|
@ -596,7 +560,7 @@
|
|||
layout="topleft"
|
||||
left_delta="18"
|
||||
name="checkbox copy centers"
|
||||
top="132"
|
||||
top="85"
|
||||
width="134" />
|
||||
<check_box
|
||||
control_name="CreateToolCopyRotates"
|
||||
|
|
@ -749,89 +713,49 @@
|
|||
<button.commit_callback
|
||||
function="BuildTool.applyToSelection"/>
|
||||
</button>
|
||||
<text
|
||||
text_color="LtGray_50"
|
||||
type="string"
|
||||
length="1"
|
||||
height="16"
|
||||
follows="left|top"
|
||||
font="SansSerifSmall"
|
||||
layout="topleft"
|
||||
left="10"
|
||||
name="selection_empty"
|
||||
top_pad="0"
|
||||
width="100">
|
||||
Nothing selected.
|
||||
</text>
|
||||
<text
|
||||
text_color="LtGray_50"
|
||||
type="string"
|
||||
length="1"
|
||||
height="10"
|
||||
height="16"
|
||||
follows="left|top"
|
||||
halign="right"
|
||||
font="SansSerifSmall"
|
||||
layout="topleft"
|
||||
right="-10"
|
||||
name="obj_count"
|
||||
top_pad="5"
|
||||
width="143">
|
||||
Objects: [COUNT]
|
||||
left="10"
|
||||
name="selection_count"
|
||||
top_delta="0"
|
||||
visible="false"
|
||||
width="280">
|
||||
</text>
|
||||
<text
|
||||
text_color="LtGray_50"
|
||||
type="string"
|
||||
length="1"
|
||||
height="10"
|
||||
follows="left|top"
|
||||
halign="right"
|
||||
layout="topleft"
|
||||
right="-10"
|
||||
name="prim_count"
|
||||
width="143">
|
||||
Prims: [COUNT]
|
||||
text_color="LtGray_50"
|
||||
type="string"
|
||||
length="1"
|
||||
height="16"
|
||||
follows="left|top"
|
||||
font="SansSerifSmall"
|
||||
layout="topleft"
|
||||
left="10"
|
||||
name="selection_weight"
|
||||
top_pad="0"
|
||||
visible="false"
|
||||
width="280">
|
||||
Physics weight [PHYS_WEIGHT], Display weight [DISP_WEIGHT].
|
||||
</text>
|
||||
<text
|
||||
text_color="LtGray_50"
|
||||
type="string"
|
||||
length="1"
|
||||
height="10"
|
||||
follows="left|top"
|
||||
halign="right"
|
||||
layout="topleft"
|
||||
right="-120"
|
||||
name="linked_set_count"
|
||||
top="144"
|
||||
width="80">
|
||||
Linked Sets: [COUNT]
|
||||
</text>
|
||||
<text
|
||||
text_color="LtGray_50"
|
||||
type="string"
|
||||
length="1"
|
||||
height="10"
|
||||
follows="left|top"
|
||||
halign="right"
|
||||
layout="topleft"
|
||||
top_delta="0"
|
||||
right="-8"
|
||||
name="linked_set_cost"
|
||||
tool_tip="Cost of currently selected linked sets as [prims],[physics complexity]"
|
||||
width="80">
|
||||
Cost: [COST] / [PHYSICS]
|
||||
</text>
|
||||
<text
|
||||
text_color="LtGray_50"
|
||||
type="string"
|
||||
length="1"
|
||||
follows="left|top"
|
||||
halign="right"
|
||||
layout="topleft"
|
||||
top_pad="5"
|
||||
right="-120"
|
||||
name="object_count"
|
||||
width="80">
|
||||
Objects: [COUNT]
|
||||
</text>
|
||||
<text
|
||||
text_color="LtGray_50"
|
||||
type="string"
|
||||
length="1"
|
||||
follows="left|top"
|
||||
halign="right"
|
||||
layout="topleft"
|
||||
top_delta="0"
|
||||
right="-8"
|
||||
name="object_cost"
|
||||
tool_tip="Cost of currently selected objects as [prims] / [physics complexity]"
|
||||
width="80">
|
||||
Cost: [COST] / [PHYSICS]
|
||||
</text>
|
||||
<!-- <text -->
|
||||
<!-- text_color="LtGray_50" -->
|
||||
<!-- type="string" -->
|
||||
|
|
@ -858,6 +782,15 @@
|
|||
<!-- width="143"> -->
|
||||
<!-- Prims: [COUNT] -->
|
||||
<!-- </text> -->
|
||||
<view_border
|
||||
bevel_style="none"
|
||||
follows="top|left"
|
||||
height="0"
|
||||
layout="topleft"
|
||||
left="6"
|
||||
name="cost_text_border"
|
||||
top="135"
|
||||
width="282"/>
|
||||
<tab_container
|
||||
follows="left|top"
|
||||
height="410"
|
||||
|
|
|
|||
Loading…
Reference in New Issue