PATH-292: Adding an additional show beacons checkbox for the linksets floater.
parent
b1089ae355
commit
a73ec672d1
|
|
@ -40,6 +40,7 @@
|
|||
#include "llscrolllistitem.h"
|
||||
#include "llscrolllistctrl.h"
|
||||
#include "llcombobox.h"
|
||||
#include "llcheckboxctrl.h"
|
||||
#include "llbutton.h"
|
||||
#include "llresmgr.h"
|
||||
#include "llviewerregion.h"
|
||||
|
|
@ -146,6 +147,9 @@ BOOL LLFloaterPathfindingLinksets::postBuild()
|
|||
llassert(mSelectNoneButton != NULL);
|
||||
mSelectNoneButton->setCommitCallback(boost::bind(&LLFloaterPathfindingLinksets::onSelectNoneLinksetsClicked, this));
|
||||
|
||||
mShowBeaconCheckBox = findChild<LLCheckBoxCtrl>("show_beacon");
|
||||
llassert(mShowBeaconCheckBox != NULL);
|
||||
|
||||
mTakeButton = findChild<LLButton>("take_linksets");
|
||||
llassert(mTakeButton != NULL);
|
||||
mTakeButton->setCommitCallback(boost::bind(&LLFloaterPathfindingLinksets::onTakeClicked, this));
|
||||
|
|
@ -244,6 +248,37 @@ void LLFloaterPathfindingLinksets::onClose(bool app_quitting)
|
|||
}
|
||||
}
|
||||
|
||||
void LLFloaterPathfindingLinksets::draw()
|
||||
{
|
||||
if (mShowBeaconCheckBox->get())
|
||||
{
|
||||
std::vector<LLScrollListItem*> selectedItems = mLinksetsScrollList->getAllSelected();
|
||||
if (!selectedItems.empty())
|
||||
{
|
||||
int numSelectedItems = selectedItems.size();
|
||||
|
||||
std::vector<LLViewerObject *> viewerObjects;
|
||||
viewerObjects.reserve(numSelectedItems);
|
||||
|
||||
for (std::vector<LLScrollListItem*>::const_iterator selectedItemIter = selectedItems.begin();
|
||||
selectedItemIter != selectedItems.end(); ++selectedItemIter)
|
||||
{
|
||||
const LLScrollListItem *selectedItem = *selectedItemIter;
|
||||
|
||||
const std::string &objectName = selectedItem->getColumn(0)->getValue().asString();
|
||||
|
||||
LLViewerObject *viewerObject = gObjectList.findObject(selectedItem->getUUID());
|
||||
if (viewerObject != NULL)
|
||||
{
|
||||
gObjectList.addDebugBeacon(viewerObject->getPositionAgent(), objectName, LLColor4(0.f, 0.f, 1.f, 0.8f), LLColor4(1.f, 1.f, 1.f, 1.f), 6);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
LLFloater::draw();
|
||||
}
|
||||
|
||||
void LLFloaterPathfindingLinksets::openLinksetsEditor()
|
||||
{
|
||||
LLFloaterReg::toggleInstanceOrBringToFront("pathfinding_linksets");
|
||||
|
|
|
|||
|
|
@ -40,6 +40,7 @@ class LLTextBase;
|
|||
class LLScrollListCtrl;
|
||||
class LLLineEditor;
|
||||
class LLComboBox;
|
||||
class LLCheckBoxCtrl;
|
||||
class LLButton;
|
||||
|
||||
class LLFloaterPathfindingLinksets
|
||||
|
|
@ -69,6 +70,7 @@ public:
|
|||
virtual BOOL postBuild();
|
||||
virtual void onOpen(const LLSD& pKey);
|
||||
virtual void onClose(bool app_quitting);
|
||||
virtual void draw();
|
||||
|
||||
static void openLinksetsEditor();
|
||||
|
||||
|
|
@ -87,6 +89,7 @@ private:
|
|||
LLButton *mRefreshListButton;
|
||||
LLButton *mSelectAllButton;
|
||||
LLButton *mSelectNoneButton;
|
||||
LLCheckBoxCtrl *mShowBeaconCheckBox;
|
||||
LLButton *mTakeButton;
|
||||
LLButton *mTakeCopyButton;
|
||||
LLButton *mReturnButton;
|
||||
|
|
|
|||
|
|
@ -276,16 +276,25 @@
|
|||
follows="left|bottom|right"
|
||||
layout="topleft"
|
||||
top_pad="8"
|
||||
width="912">
|
||||
width="580">
|
||||
Actions on selected linksets (If a linkset is removed from the world, its attributes will be lost):
|
||||
</text>
|
||||
<check_box
|
||||
height="19"
|
||||
follows="left|bottom"
|
||||
label="Show beacon"
|
||||
layout="topleft"
|
||||
name="show_beacon"
|
||||
left_pad="0"
|
||||
top_pad="-16"
|
||||
width="90" />
|
||||
<button
|
||||
follows="left|bottom"
|
||||
height="21"
|
||||
label="Take"
|
||||
layout="topleft"
|
||||
name="take_linksets"
|
||||
top_pad="12"
|
||||
top_pad="9"
|
||||
left="18"
|
||||
width="95"/>
|
||||
<button
|
||||
|
|
|
|||
Loading…
Reference in New Issue