Sync with upstream, improve RLVa and make use of the callback registrar
This commit is contained in:
@@ -36,6 +36,9 @@
|
||||
#include "llviewercontrol.h"
|
||||
#include "llviewerregion.h" // getCapability()
|
||||
#include "llworld.h"
|
||||
// [RLVa:KB] - Checked: 2010-06-04 (RLVa-1.2.2a)
|
||||
#include "rlvhandler.h"
|
||||
// [/RLVa:KB]
|
||||
|
||||
// Linden libraries
|
||||
#include "llavatarnamecache.h" // IDEVO
|
||||
@@ -48,9 +51,6 @@
|
||||
#include "lluictrlfactory.h"
|
||||
#include "message.h"
|
||||
|
||||
// [RLVa:KB]
|
||||
#include "rlvhandler.h"
|
||||
// [/RLVa:KB]
|
||||
|
||||
//put it back as a member once the legacy path is out?
|
||||
static std::map<LLUUID, LLAvatarName> sAvatarNameMap;
|
||||
@@ -82,12 +82,13 @@ LLFloaterAvatarPicker* LLFloaterAvatarPicker::show(select_callback_t callback,
|
||||
}
|
||||
|
||||
// Default constructor
|
||||
LLFloaterAvatarPicker::LLFloaterAvatarPicker() :
|
||||
LLFloater(),
|
||||
LLFloaterAvatarPicker::LLFloaterAvatarPicker()
|
||||
: LLFloater(),
|
||||
mNumResultsReturned(0),
|
||||
mNearMeListComplete(FALSE),
|
||||
mCloseOnSelect(FALSE)
|
||||
{
|
||||
mCommitCallbackRegistrar.add("Refresh.FriendList", boost::bind(&LLFloaterAvatarPicker::populateFriend, this));
|
||||
LLUICtrlFactory::getInstance()->buildFloater(this, "floater_avatar_picker.xml", NULL);
|
||||
}
|
||||
|
||||
@@ -112,7 +113,6 @@ BOOL LLFloaterAvatarPicker::postBuild()
|
||||
|
||||
LLScrollListCtrl* friends = getChild<LLScrollListCtrl>("Friends");
|
||||
friends->setDoubleClickCallback(boost::bind(&LLFloaterAvatarPicker::onBtnSelect, this));
|
||||
childSetAction("RefreshFriends", boost::bind(&LLFloaterAvatarPicker::populateFriend, this));
|
||||
getChild<LLUICtrl>("Friends")->setCommitCallback(boost::bind(&LLFloaterAvatarPicker::onList, this));
|
||||
|
||||
childSetAction("ok_btn", boost::bind(&LLFloaterAvatarPicker::onBtnSelect, this));
|
||||
@@ -131,7 +131,7 @@ BOOL LLFloaterAvatarPicker::postBuild()
|
||||
getChild<LLScrollListCtrl>("SearchResults")->setCommentText(getString("no_results"));
|
||||
|
||||
getChild<LLTabContainer>("ResidentChooserTabs")->setCommitCallback(
|
||||
boost::bind(&LLFloaterAvatarPicker::onTabChanged,this));
|
||||
boost::bind(&LLFloaterAvatarPicker::onTabChanged, this));
|
||||
|
||||
setAllowMultiple(FALSE);
|
||||
|
||||
@@ -200,7 +200,6 @@ static void getSelectedAvatarData(const LLUICtrl* from, uuid_vec_t& avatar_ids,
|
||||
addAvatarUUID(from->getValue().asUUID(), avatar_ids, avatar_names);
|
||||
}
|
||||
|
||||
|
||||
void LLFloaterAvatarPicker::onBtnSelect()
|
||||
{
|
||||
|
||||
@@ -272,6 +271,22 @@ void LLFloaterAvatarPicker::onRangeAdjust()
|
||||
void LLFloaterAvatarPicker::onList()
|
||||
{
|
||||
getChildView("ok_btn")->setEnabled(isSelectBtnEnabled());
|
||||
|
||||
// [RLVa:KB] - Checked: 2010-06-05 (RLVa-1.2.2a) | Modified: RLVa-1.2.0d
|
||||
if (rlv_handler_t::isEnabled())
|
||||
{
|
||||
LLTabContainer* pTabs = getChild<LLTabContainer>("ResidentChooserTabs");
|
||||
LLPanel* pNearMePanel = getChild<LLPanel>("NearMePanel");
|
||||
RLV_ASSERT( (pTabs) && (pNearMePanel) );
|
||||
if ( (pTabs) && (pNearMePanel) )
|
||||
{
|
||||
bool fRlvEnable = !gRlvHandler.hasBehaviour(RLV_BHVR_SHOWNAMES);
|
||||
pTabs->enableTabButton(pTabs->getIndexForPanel(pNearMePanel), fRlvEnable);
|
||||
if ( (!fRlvEnable) && (pTabs->getCurrentPanel() == pNearMePanel) )
|
||||
pTabs->selectTabByName("SearchPanel");
|
||||
}
|
||||
}
|
||||
// [/RLVa:KB]
|
||||
}
|
||||
|
||||
void LLFloaterAvatarPicker::populateNearMe()
|
||||
@@ -365,31 +380,7 @@ void LLFloaterAvatarPicker::draw()
|
||||
}
|
||||
|
||||
LLFloater::draw();
|
||||
|
||||
// [RLVa:KB] - Version: 1.23.4 | Checked: 2009-07-08 (RLVa-1.0.0e) | Added: RLVa-1.0.0e
|
||||
// TODO-RLVa: this code needs revisiting
|
||||
if (rlv_handler_t::isEnabled())
|
||||
{
|
||||
LLPanel* pNearMePanel = getChild<LLPanel>("NearMePanel");
|
||||
if ( (pNearMePanel) && (childGetVisibleTab("ResidentChooserTabs") == pNearMePanel) )
|
||||
{
|
||||
if (gRlvHandler.hasBehaviour(RLV_BHVR_SHOWNAMES))
|
||||
{
|
||||
if (mNearMeListComplete)
|
||||
{
|
||||
getChild<LLScrollListCtrl>("NearMe")->deleteAllItems();
|
||||
childSetEnabled("Select", false);
|
||||
}
|
||||
mNearMeListComplete = FALSE;
|
||||
pNearMePanel->setCtrlsEnabled(FALSE);
|
||||
return;
|
||||
}
|
||||
pNearMePanel->setCtrlsEnabled(TRUE);
|
||||
}
|
||||
}
|
||||
// [/RLVa:KB]
|
||||
|
||||
if (!mNearMeListComplete && getChild<LLTabContainer>("ResidentChooserTabs")->getCurrentPanel() == getChild<LLPanel>("NearMePanel"))
|
||||
if (!mNearMeListComplete && getChild<LLTabContainer>("ResidentChooserTabs")->getCurrentPanel() == getChild<LLPanel>("NearMePanel"))
|
||||
{
|
||||
populateNearMe();
|
||||
}
|
||||
@@ -426,7 +417,7 @@ public:
|
||||
LLUUID mQueryID;
|
||||
|
||||
LLAvatarPickerResponder(const LLUUID& id) : mQueryID(id) { }
|
||||
|
||||
|
||||
/*virtual*/ void completed(U32 status, const std::string& reason, const LLSD& content)
|
||||
{
|
||||
//std::ostringstream ss;
|
||||
@@ -444,8 +435,7 @@ public:
|
||||
}
|
||||
else
|
||||
{
|
||||
llinfos << "avatar picker failed " << status
|
||||
<< " reason " << reason << llendl;
|
||||
llwarns << "avatar picker failed " << status << " reason " << reason << llendl;
|
||||
|
||||
}
|
||||
}
|
||||
@@ -606,7 +596,7 @@ void LLFloaterAvatarPicker::processAvatarPickerReply(LLMessageSystem* msg, void*
|
||||
|
||||
if(!instanceExists())
|
||||
return;
|
||||
LLFloaterAvatarPicker *floater = getInstance();
|
||||
LLFloaterAvatarPicker* floater = getInstance();
|
||||
|
||||
// floater is closed or these are not results from our last request
|
||||
if (NULL == floater || query_id != floater->mQueryID)
|
||||
@@ -761,6 +751,7 @@ bool LLFloaterAvatarPicker::isSelectBtnEnabled()
|
||||
std::string active_panel_name;
|
||||
LLUICtrl* list = NULL;
|
||||
LLPanel* active_panel = getChild<LLTabContainer>("ResidentChooserTabs")->getCurrentPanel();
|
||||
|
||||
if(active_panel)
|
||||
{
|
||||
active_panel_name = active_panel->getName();
|
||||
@@ -784,8 +775,8 @@ bool LLFloaterAvatarPicker::isSelectBtnEnabled()
|
||||
|
||||
if(list)
|
||||
{
|
||||
uuid_vec_t avatar_ids;
|
||||
std::vector<LLAvatarName> avatar_names;
|
||||
uuid_vec_t avatar_ids;
|
||||
std::vector<LLAvatarName> avatar_names;
|
||||
getSelectedAvatarData(list, avatar_ids, avatar_names);
|
||||
return mOkButtonValidateSignal(avatar_ids);
|
||||
}
|
||||
|
||||
@@ -35,9 +35,9 @@
|
||||
#include "llviewerprecompiledheaders.h"
|
||||
#include "llfloaterbulkpermission.h"
|
||||
#include "llfloaterperms.h" // for utilities
|
||||
#include "llinventorydefines.h"
|
||||
#include "llagent.h"
|
||||
#include "llchat.h"
|
||||
#include "llinventorydefines.h"
|
||||
#include "llviewerwindow.h"
|
||||
#include "llviewerobject.h"
|
||||
#include "llviewerobjectlist.h"
|
||||
@@ -49,7 +49,6 @@
|
||||
#include "llresmgr.h"
|
||||
#include "llbutton.h"
|
||||
#include "lldir.h"
|
||||
#include "llfloaterchat.h"
|
||||
#include "llviewerstats.h"
|
||||
#include "lluictrlfactory.h"
|
||||
#include "llselectmgr.h"
|
||||
@@ -59,17 +58,19 @@
|
||||
#include "roles_constants.h" // for GP_OBJECT_MANIPULATE
|
||||
|
||||
|
||||
LLFloaterBulkPermission::LLFloaterBulkPermission(const LLSD& seed) : mDone(FALSE)
|
||||
LLFloaterBulkPermission::LLFloaterBulkPermission(const LLSD& seed)
|
||||
: LLFloater(),
|
||||
mDone(FALSE)
|
||||
{
|
||||
mID.generate();
|
||||
mCommitCallbackRegistrar.add("BulkPermission.Help", boost::bind(LLFloaterBulkPermission::onHelpBtn));
|
||||
mCommitCallbackRegistrar.add("BulkPermission.Apply", boost::bind(&LLFloaterBulkPermission::onApplyBtn, this));
|
||||
mCommitCallbackRegistrar.add("BulkPermission.Close", boost::bind(&LLFloaterBulkPermission::onCloseBtn, this));
|
||||
mCommitCallbackRegistrar.add("BulkPermission.CheckAll", boost::bind(&LLFloaterBulkPermission::onCheckAll, this));
|
||||
mCommitCallbackRegistrar.add("BulkPermission.UncheckAll", boost::bind(&LLFloaterBulkPermission::onUncheckAll, this));
|
||||
mCommitCallbackRegistrar.add("BulkPermission.CommitCopy", boost::bind(&LLFloaterBulkPermission::onCommitCopy, this));
|
||||
LLUICtrlFactory::getInstance()->buildFloater(this,"floater_bulk_perms.xml");
|
||||
childSetEnabled("next_owner_transfer", gSavedSettings.getBOOL("BulkChangeNextOwnerCopy"));
|
||||
childSetAction("help", onHelpBtn, this);
|
||||
childSetAction("apply", onApplyBtn, this);
|
||||
childSetAction("close", onCloseBtn, this);
|
||||
childSetAction("check_all", onCheckAll, this);
|
||||
childSetAction("check_none", onUncheckAll, this);
|
||||
childSetCommitCallback("next_owner_copy", &onCommitCopy, this);
|
||||
}
|
||||
|
||||
void LLFloaterBulkPermission::doApply()
|
||||
@@ -113,7 +114,7 @@ void LLFloaterBulkPermission::doApply()
|
||||
// worked on.
|
||||
// NOT static, virtual!
|
||||
void LLFloaterBulkPermission::inventoryChanged(LLViewerObject* viewer_object,
|
||||
LLInventoryObject::object_list_t* inv,
|
||||
LLInventoryObject::object_list_t* inv,
|
||||
S32,
|
||||
void* q_id)
|
||||
{
|
||||
@@ -147,34 +148,31 @@ void LLFloaterBulkPermission::inventoryChanged(LLViewerObject* viewer_object,
|
||||
}
|
||||
}
|
||||
|
||||
void LLFloaterBulkPermission::onApplyBtn(void* user_data)
|
||||
void LLFloaterBulkPermission::onApplyBtn()
|
||||
{
|
||||
LLFloaterBulkPermission* self = static_cast<LLFloaterBulkPermission*>(user_data);
|
||||
self->doApply();
|
||||
doApply();
|
||||
}
|
||||
|
||||
void LLFloaterBulkPermission::onHelpBtn(void* user_data)
|
||||
void LLFloaterBulkPermission::onHelpBtn()
|
||||
{
|
||||
LLNotificationsUtil::add("HelpBulkPermission");
|
||||
}
|
||||
|
||||
void LLFloaterBulkPermission::onCloseBtn(void* user_data)
|
||||
void LLFloaterBulkPermission::onCloseBtn()
|
||||
{
|
||||
LLFloaterBulkPermission* self = static_cast<LLFloaterBulkPermission*>(user_data);
|
||||
self->onClose(false);
|
||||
onClose(false);
|
||||
}
|
||||
|
||||
//static
|
||||
void LLFloaterBulkPermission::onCommitCopy(LLUICtrl* ctrl, void* data)
|
||||
void LLFloaterBulkPermission::onCommitCopy()
|
||||
{
|
||||
LLFloaterBulkPermission* self = static_cast<LLFloaterBulkPermission*>(data);
|
||||
// Implements fair use
|
||||
BOOL copyable = gSavedSettings.getBOOL("BulkChangeNextOwnerCopy");
|
||||
if(!copyable)
|
||||
{
|
||||
gSavedSettings.setBOOL("BulkChangeNextOwnerTransfer", TRUE);
|
||||
}
|
||||
LLCheckBoxCtrl* xfer = self->getChild<LLCheckBoxCtrl>("next_owner_transfer");
|
||||
LLCheckBoxCtrl* xfer = getChild<LLCheckBoxCtrl>("next_owner_transfer");
|
||||
xfer->setEnabled(copyable);
|
||||
}
|
||||
|
||||
@@ -256,7 +254,7 @@ void LLFloaterBulkPermission::doCheckUncheckAll(BOOL check)
|
||||
}
|
||||
|
||||
|
||||
void LLFloaterBulkPermission::handleInventory(LLViewerObject* viewer_obj, LLInventoryObject::object_list_t* inv)
|
||||
void LLFloaterBulkPermission::handleInventory(LLViewerObject* viewer_obj, LLInventoryObject::object_list_t* inv)
|
||||
{
|
||||
LLScrollListCtrl* list = getChild<LLScrollListCtrl>("queue output");
|
||||
|
||||
|
||||
@@ -44,8 +44,6 @@
|
||||
#include "llfloater.h"
|
||||
#include "llscrolllistctrl.h"
|
||||
|
||||
#include "llviewerinventory.h"
|
||||
|
||||
class LLFloaterBulkPermission : public LLFloater, public LLVOInventoryListener, public LLFloaterSingleton<LLFloaterBulkPermission>
|
||||
{
|
||||
public:
|
||||
@@ -62,7 +60,7 @@ private:
|
||||
// This is the callback method for the viewer object currently
|
||||
// being worked on.
|
||||
/*virtual*/ void inventoryChanged(LLViewerObject* obj,
|
||||
LLInventoryObject::object_list_t* inv,
|
||||
LLInventoryObject::object_list_t* inv,
|
||||
S32 serial_num,
|
||||
void* queue);
|
||||
|
||||
@@ -76,12 +74,12 @@ private:
|
||||
U8 key,
|
||||
bool is_new);
|
||||
|
||||
static void onHelpBtn(void* user_data);
|
||||
static void onCloseBtn(void* user_data);
|
||||
static void onApplyBtn(void* user_data);
|
||||
static void onCommitCopy(LLUICtrl* ctrl, void* data);
|
||||
static void onCheckAll( void* user_data) { ((LLFloaterBulkPermission*)user_data)->doCheckUncheckAll(TRUE); }
|
||||
static void onUncheckAll(void* user_data) { ((LLFloaterBulkPermission*)user_data)->doCheckUncheckAll(FALSE); }
|
||||
static void onHelpBtn();
|
||||
void onCloseBtn();
|
||||
void onApplyBtn();
|
||||
void onCommitCopy();
|
||||
void onCheckAll() { doCheckUncheckAll(TRUE); }
|
||||
void onUncheckAll() { doCheckUncheckAll(FALSE); }
|
||||
|
||||
// returns true if this is done
|
||||
BOOL isDone() const { return (mCurrentObjectID.isNull() || (mObjectIDs.count() == 0)); }
|
||||
|
||||
@@ -39,7 +39,6 @@
|
||||
#include "llscrolllistitem.h"
|
||||
#include "llpanel.h"
|
||||
#include "llcombobox.h"
|
||||
#include "llviewertexteditor.h"
|
||||
|
||||
const S32 NOTIFICATION_PANEL_HEADER_HEIGHT = 20;
|
||||
const S32 HEADER_PADDING = 38;
|
||||
@@ -60,7 +59,7 @@ private:
|
||||
};
|
||||
|
||||
LLNotificationChannelPanel::LLNotificationChannelPanel(const std::string& channel_name)
|
||||
: LLLayoutPanel(NOTIFICATION_PANEL_HEADER_HEIGHT,true,true)
|
||||
: LLLayoutPanel(NOTIFICATION_PANEL_HEADER_HEIGHT,true,true)
|
||||
{
|
||||
setName(channel_name);
|
||||
mChannelPtr = LLNotifications::instance().getChannel(channel_name);
|
||||
@@ -113,10 +112,15 @@ void LLNotificationChannelPanel::onClickNotification(void* user_data)
|
||||
{
|
||||
LLNotificationChannelPanel* self = (LLNotificationChannelPanel*)user_data;
|
||||
if (!self) return;
|
||||
void* data = self->getChild<LLScrollListCtrl>("notifications_list")->getFirstSelected()->getUserdata();
|
||||
if (data)
|
||||
LLScrollListItem* firstselected = self->getChild<LLScrollListCtrl>("notifications_list")->getFirstSelected();
|
||||
llassert(firstselected);
|
||||
if (firstselected)
|
||||
{
|
||||
gFloaterView->getParentFloater(self)->addDependentFloater(new LLFloaterNotification((LLNotification*)data), TRUE);
|
||||
void* data = firstselected->getUserdata();
|
||||
if (data)
|
||||
{
|
||||
gFloaterView->getParentFloater(self)->addDependentFloater(new LLFloaterNotification((LLNotification*)data), TRUE);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -161,7 +165,9 @@ bool LLNotificationChannelPanel::update(const LLSD& payload, bool passed_filter)
|
||||
// LLFloaterNotificationConsole
|
||||
//
|
||||
LLFloaterNotificationConsole::LLFloaterNotificationConsole(const LLSD& key)
|
||||
: LLFloater()
|
||||
{
|
||||
mCommitCallbackRegistrar.add("ClickAdd", boost::bind(&LLFloaterNotificationConsole::onClickAdd, this));
|
||||
LLUICtrlFactory::instance().buildFloater(this, "floater_notifications_console.xml");
|
||||
}
|
||||
|
||||
@@ -186,7 +192,7 @@ BOOL LLFloaterNotificationConsole::postBuild()
|
||||
addChannel("Notifications");
|
||||
addChannel("NotificationTips");
|
||||
|
||||
getChild<LLButton>("add_notification")->setClickedCallback(onClickAdd, this);
|
||||
// getChild<LLButton>("add_notification")->setClickedCallback(onClickAdd, this);
|
||||
|
||||
LLComboBox* notifications = getChild<LLComboBox>("notification_types");
|
||||
LLNotificationTemplates::TemplateNames names = LLNotificationTemplates::instance().getTemplateNames();
|
||||
@@ -233,21 +239,21 @@ void LLFloaterNotificationConsole::updateResizeLimits()
|
||||
setResizeLimits(getMinWidth(), LLFLOATER_HEADER_SIZE + HEADER_PADDING + ((NOTIFICATION_PANEL_HEADER_HEIGHT + 3) * stack.getNumPanels()));
|
||||
}
|
||||
|
||||
void LLFloaterNotificationConsole::onClickAdd(void* user_data)
|
||||
void LLFloaterNotificationConsole::onClickAdd()
|
||||
{
|
||||
LLFloaterNotificationConsole* floater = (LLFloaterNotificationConsole*)user_data;
|
||||
|
||||
std::string message_name = floater->getChild<LLComboBox>("notification_types")->getValue().asString();
|
||||
std::string message_name = getChild<LLComboBox>("notification_types")->getValue().asString();
|
||||
if (!message_name.empty())
|
||||
{
|
||||
LLNotifications::instance().add(message_name, LLSD());
|
||||
LLNotifications::instance().add(message_name, LLSD(), LLSD());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//=============== LLFloaterNotification ================
|
||||
|
||||
LLFloaterNotification::LLFloaterNotification(LLNotification* note) : mNote(note)
|
||||
LLFloaterNotification::LLFloaterNotification(LLNotification* note)
|
||||
: LLFloater(),
|
||||
mNote(note)
|
||||
{
|
||||
LLUICtrlFactory::instance().buildFloater(this, "floater_notification.xml");
|
||||
}
|
||||
@@ -255,7 +261,7 @@ LLFloaterNotification::LLFloaterNotification(LLNotification* note) : mNote(note)
|
||||
BOOL LLFloaterNotification::postBuild()
|
||||
{
|
||||
setTitle(mNote->getName());
|
||||
getChild<LLViewerTextEditor>("payload")->setText(mNote->getMessage());
|
||||
getChild<LLUICtrl>("payload")->setValue(mNote->getMessage());
|
||||
|
||||
LLComboBox* responses_combo = getChild<LLComboBox>("response");
|
||||
LLCtrlListInterface* response_list = responses_combo->getListInterface();
|
||||
|
||||
@@ -35,7 +35,9 @@
|
||||
|
||||
#include "llfloater.h"
|
||||
#include "lllayoutstack.h"
|
||||
#include "llnotifications.h"
|
||||
//#include "llnotificationsutil.h"
|
||||
|
||||
class LLNotification;
|
||||
|
||||
class LLFloaterNotificationConsole :
|
||||
public LLFloater,
|
||||
@@ -55,7 +57,7 @@ public:
|
||||
void updateResizeLimits();
|
||||
|
||||
private:
|
||||
static void onClickAdd(void* user_data);
|
||||
void onClickAdd();
|
||||
};
|
||||
|
||||
|
||||
|
||||
@@ -114,26 +114,26 @@ BOOL LLFloaterPathfindingLinksets::postBuild()
|
||||
{
|
||||
mBeaconColor = LLUI::sColorsGroup->getColor("PathfindingLinksetBeaconColor");
|
||||
|
||||
mFilterByName = getChild<LLLineEditor>("filter_by_name");
|
||||
mFilterByName = findChild<LLLineEditor>("filter_by_name");
|
||||
llassert(mFilterByName != NULL);
|
||||
mFilterByName->setCommitCallback(boost::bind(&LLFloaterPathfindingLinksets::onApplyAllFilters, this));
|
||||
mFilterByName->setSelectAllonFocusReceived(true);
|
||||
mFilterByName->setCommitOnFocusLost(true);
|
||||
|
||||
mFilterByDescription = getChild<LLLineEditor>("filter_by_description");
|
||||
mFilterByDescription = findChild<LLLineEditor>("filter_by_description");
|
||||
llassert(mFilterByDescription != NULL);
|
||||
mFilterByDescription->setCommitCallback(boost::bind(&LLFloaterPathfindingLinksets::onApplyAllFilters, this));
|
||||
mFilterByDescription->setSelectAllonFocusReceived(true);
|
||||
mFilterByDescription->setCommitOnFocusLost(true);
|
||||
|
||||
mFilterByLinksetUse = getChild<LLComboBox>("filter_by_linkset_use");
|
||||
mFilterByLinksetUse = findChild<LLComboBox>("filter_by_linkset_use");
|
||||
llassert(mFilterByLinksetUse != NULL);
|
||||
mFilterByLinksetUse->setCommitCallback(boost::bind(&LLFloaterPathfindingLinksets::onApplyAllFilters, this));
|
||||
|
||||
childSetAction("apply_filters", boost::bind(&LLFloaterPathfindingLinksets::onApplyAllFilters, this));
|
||||
childSetAction("clear_filters", boost::bind(&LLFloaterPathfindingLinksets::onClearFiltersClicked, this));
|
||||
|
||||
mEditLinksetUse = getChild<LLComboBox>("edit_linkset_use");
|
||||
mEditLinksetUse = findChild<LLComboBox>("edit_linkset_use");
|
||||
llassert(mEditLinksetUse != NULL);
|
||||
mEditLinksetUse->clearRows();
|
||||
|
||||
@@ -160,54 +160,54 @@ BOOL LLFloaterPathfindingLinksets::postBuild()
|
||||
|
||||
mEditLinksetUse->selectFirstItem();
|
||||
|
||||
mLabelWalkabilityCoefficients = getChild<LLTextBox>("walkability_coefficients_label");
|
||||
mLabelWalkabilityCoefficients = findChild<LLTextBox>("walkability_coefficients_label");
|
||||
llassert(mLabelWalkabilityCoefficients != NULL);
|
||||
|
||||
mLabelEditA = getChild<LLTextBox>("edit_a_label");
|
||||
mLabelEditA = findChild<LLTextBox>("edit_a_label");
|
||||
llassert(mLabelEditA != NULL);
|
||||
|
||||
mLabelSuggestedUseA = getChild<LLTextBox>("suggested_use_a_label");
|
||||
mLabelSuggestedUseA = findChild<LLTextBox>("suggested_use_a_label");
|
||||
llassert(mLabelSuggestedUseA != NULL);
|
||||
|
||||
mEditA = getChild<LLLineEditor>("edit_a_value");
|
||||
mEditA = findChild<LLLineEditor>("edit_a_value");
|
||||
llassert(mEditA != NULL);
|
||||
mEditA->setPrevalidate(LLLineEditor::prevalidateNonNegativeS32);
|
||||
mEditA->setCommitCallback(boost::bind(&LLFloaterPathfindingLinksets::onWalkabilityCoefficientEntered, this, _1, mPreviousValueA));
|
||||
|
||||
mLabelEditB = getChild<LLTextBox>("edit_b_label");
|
||||
mLabelEditB = findChild<LLTextBox>("edit_b_label");
|
||||
llassert(mLabelEditB != NULL);
|
||||
|
||||
mLabelSuggestedUseB = getChild<LLTextBox>("suggested_use_b_label");
|
||||
mLabelSuggestedUseB = findChild<LLTextBox>("suggested_use_b_label");
|
||||
llassert(mLabelSuggestedUseB != NULL);
|
||||
|
||||
mEditB = getChild<LLLineEditor>("edit_b_value");
|
||||
mEditB = findChild<LLLineEditor>("edit_b_value");
|
||||
llassert(mEditB != NULL);
|
||||
mEditB->setPrevalidate(LLLineEditor::prevalidateNonNegativeS32);
|
||||
mEditB->setCommitCallback(boost::bind(&LLFloaterPathfindingLinksets::onWalkabilityCoefficientEntered, this, _1, mPreviousValueB));
|
||||
|
||||
mLabelEditC = getChild<LLTextBox>("edit_c_label");
|
||||
mLabelEditC = findChild<LLTextBox>("edit_c_label");
|
||||
llassert(mLabelEditC != NULL);
|
||||
|
||||
mLabelSuggestedUseC = getChild<LLTextBox>("suggested_use_c_label");
|
||||
mLabelSuggestedUseC = findChild<LLTextBox>("suggested_use_c_label");
|
||||
llassert(mLabelSuggestedUseC != NULL);
|
||||
|
||||
mEditC = getChild<LLLineEditor>("edit_c_value");
|
||||
mEditC = findChild<LLLineEditor>("edit_c_value");
|
||||
llassert(mEditC != NULL);
|
||||
mEditC->setPrevalidate(LLLineEditor::prevalidateNonNegativeS32);
|
||||
mEditC->setCommitCallback(boost::bind(&LLFloaterPathfindingLinksets::onWalkabilityCoefficientEntered, this, _1, mPreviousValueC));
|
||||
|
||||
mLabelEditD = getChild<LLTextBox>("edit_d_label");
|
||||
mLabelEditD = findChild<LLTextBox>("edit_d_label");
|
||||
llassert(mLabelEditD != NULL);
|
||||
|
||||
mLabelSuggestedUseD = getChild<LLTextBox>("suggested_use_d_label");
|
||||
mLabelSuggestedUseD = findChild<LLTextBox>("suggested_use_d_label");
|
||||
llassert(mLabelSuggestedUseD != NULL);
|
||||
|
||||
mEditD = getChild<LLLineEditor>("edit_d_value");
|
||||
mEditD = findChild<LLLineEditor>("edit_d_value");
|
||||
llassert(mEditD != NULL);
|
||||
mEditD->setPrevalidate(LLLineEditor::prevalidateNonNegativeS32);
|
||||
mEditD->setCommitCallback(boost::bind(&LLFloaterPathfindingLinksets::onWalkabilityCoefficientEntered, this, _1, mPreviousValueD));
|
||||
|
||||
mApplyEditsButton = getChild<LLButton>("apply_edit_values");
|
||||
mApplyEditsButton = findChild<LLButton>("apply_edit_values");
|
||||
llassert(mApplyEditsButton != NULL);
|
||||
mApplyEditsButton->setCommitCallback(boost::bind(&LLFloaterPathfindingLinksets::onApplyChangesClicked, this));
|
||||
|
||||
|
||||
@@ -206,46 +206,46 @@ BOOL LLFloaterPathfindingObjects::postBuild()
|
||||
mErrorTextColor = LLUI::sColorsGroup->getColor("PathfindingErrorColor");
|
||||
mWarningTextColor = LLUI::sColorsGroup->getColor("PathfindingWarningColor");
|
||||
|
||||
mObjectsScrollList = getChild<LLScrollListCtrl>("objects_scroll_list");
|
||||
mObjectsScrollList = findChild<LLScrollListCtrl>("objects_scroll_list");
|
||||
llassert(mObjectsScrollList != NULL);
|
||||
mObjectsScrollList->setCommitCallback(boost::bind(&LLFloaterPathfindingObjects::onScrollListSelectionChanged, this));
|
||||
mObjectsScrollList->sortByColumnIndex(static_cast<U32>(getNameColumnIndex()), TRUE);
|
||||
|
||||
mMessagingStatus = getChild<LLTextBox>("messaging_status");
|
||||
mMessagingStatus = findChild<LLTextBox>("messaging_status");
|
||||
llassert(mMessagingStatus != NULL);
|
||||
|
||||
mRefreshListButton = getChild<LLButton>("refresh_objects_list");
|
||||
mRefreshListButton = findChild<LLButton>("refresh_objects_list");
|
||||
llassert(mRefreshListButton != NULL);
|
||||
mRefreshListButton->setCommitCallback(boost::bind(&LLFloaterPathfindingObjects::onRefreshObjectsClicked, this));
|
||||
|
||||
mSelectAllButton = getChild<LLButton>("select_all_objects");
|
||||
mSelectAllButton = findChild<LLButton>("select_all_objects");
|
||||
llassert(mSelectAllButton != NULL);
|
||||
mSelectAllButton->setCommitCallback(boost::bind(&LLFloaterPathfindingObjects::onSelectAllObjectsClicked, this));
|
||||
|
||||
mSelectNoneButton = getChild<LLButton>("select_none_objects");
|
||||
mSelectNoneButton = findChild<LLButton>("select_none_objects");
|
||||
llassert(mSelectNoneButton != NULL);
|
||||
mSelectNoneButton->setCommitCallback(boost::bind(&LLFloaterPathfindingObjects::onSelectNoneObjectsClicked, this));
|
||||
|
||||
mShowBeaconCheckBox = getChild<LLCheckBoxCtrl>("show_beacon");
|
||||
mShowBeaconCheckBox = findChild<LLCheckBoxCtrl>("show_beacon");
|
||||
llassert(mShowBeaconCheckBox != NULL);
|
||||
|
||||
mTakeButton = getChild<LLButton>("take_objects");
|
||||
mTakeButton = findChild<LLButton>("take_objects");
|
||||
llassert(mTakeButton != NULL);
|
||||
mTakeButton->setCommitCallback(boost::bind(&LLFloaterPathfindingObjects::onTakeClicked, this));
|
||||
|
||||
mTakeCopyButton = getChild<LLButton>("take_copy_objects");
|
||||
mTakeCopyButton = findChild<LLButton>("take_copy_objects");
|
||||
llassert(mTakeCopyButton != NULL);
|
||||
mTakeCopyButton->setCommitCallback(boost::bind(&LLFloaterPathfindingObjects::onTakeCopyClicked, this));
|
||||
|
||||
mReturnButton = getChild<LLButton>("return_objects");
|
||||
mReturnButton = findChild<LLButton>("return_objects");
|
||||
llassert(mReturnButton != NULL);
|
||||
mReturnButton->setCommitCallback(boost::bind(&LLFloaterPathfindingObjects::onReturnClicked, this));
|
||||
|
||||
mDeleteButton = getChild<LLButton>("delete_objects");
|
||||
mDeleteButton = findChild<LLButton>("delete_objects");
|
||||
llassert(mDeleteButton != NULL);
|
||||
mDeleteButton->setCommitCallback(boost::bind(&LLFloaterPathfindingObjects::onDeleteClicked, this));
|
||||
|
||||
mTeleportButton = getChild<LLButton>("teleport_me_to_object");
|
||||
mTeleportButton = findChild<LLButton>("teleport_me_to_object");
|
||||
llassert(mTeleportButton != NULL);
|
||||
mTeleportButton->setCommitCallback(boost::bind(&LLFloaterPathfindingObjects::onTeleportClicked, this));
|
||||
|
||||
|
||||
@@ -37,7 +37,6 @@
|
||||
#include "llcolorswatch.h"
|
||||
//#include "llfirstuse.h"
|
||||
#include "llfloater.h"
|
||||
#include "llfiltereditor.h"
|
||||
#include "llscrolllistctrl.h"
|
||||
#include "llscrolllistitem.h"
|
||||
#include "llspinctrl.h"
|
||||
@@ -46,7 +45,7 @@
|
||||
#include "llviewercontrol.h"
|
||||
#include "llwindow.h"
|
||||
|
||||
// [RLVa:KB]
|
||||
// [RLVa:KB] - Checked: 2010-03-18 (RLVa-1.2.0a)
|
||||
#include "rlvhandler.h"
|
||||
#include "rlvextensions.h"
|
||||
// [/RLVa:KB]
|
||||
@@ -57,6 +56,12 @@ LLFloaterSettingsDebug::LLFloaterSettingsDebug()
|
||||
, mOldControlVariable(NULL)
|
||||
, mOldSearchTerm(std::string("---"))
|
||||
{
|
||||
mCommitCallbackRegistrar.add("SettingSelect", boost::bind(&LLFloaterSettingsDebug::onSettingSelect, this));
|
||||
mCommitCallbackRegistrar.add("CommitSettings", boost::bind(&LLFloaterSettingsDebug::onCommitSettings, this));
|
||||
mCommitCallbackRegistrar.add("ClickDefault", boost::bind(&LLFloaterSettingsDebug::onClickDefault, this));
|
||||
mCommitCallbackRegistrar.add("UpdateFilter", boost::bind(&LLFloaterSettingsDebug::onUpdateFilter, this, _2));
|
||||
mCommitCallbackRegistrar.add("ClickCopy", boost::bind(&LLFloaterSettingsDebug::onCopyToClipboard, this));
|
||||
|
||||
LLUICtrlFactory::getInstance()->buildFloater(this, "floater_settings_debug.xml");
|
||||
}
|
||||
|
||||
@@ -97,19 +102,9 @@ BOOL LLFloaterSettingsDebug::postBuild()
|
||||
}
|
||||
}
|
||||
mSettingsScrollList->sortByColumnIndex(0, true);
|
||||
mSettingsScrollList->setCommitCallback(boost::bind(&LLFloaterSettingsDebug::onSettingSelect, this));
|
||||
|
||||
llinfos << mSettingsScrollList->getItemCount() << " total debug settings displayed." << llendl;
|
||||
|
||||
getChild<LLUICtrl>("val_spinner_1")->setCommitCallback(boost::bind(&LLFloaterSettingsDebug::onCommitSettings, this));
|
||||
getChild<LLUICtrl>("val_spinner_2")->setCommitCallback(boost::bind(&LLFloaterSettingsDebug::onCommitSettings, this));
|
||||
getChild<LLUICtrl>("val_spinner_3")->setCommitCallback(boost::bind(&LLFloaterSettingsDebug::onCommitSettings, this));
|
||||
getChild<LLUICtrl>("val_spinner_4")->setCommitCallback(boost::bind(&LLFloaterSettingsDebug::onCommitSettings, this));
|
||||
getChild<LLUICtrl>("val_text")->setCommitCallback(boost::bind(&LLFloaterSettingsDebug::onCommitSettings, this));
|
||||
getChild<LLUICtrl>("boolean_combo")->setCommitCallback(boost::bind(&LLFloaterSettingsDebug::onCommitSettings, this));
|
||||
getChild<LLUICtrl>("copy_btn")->setCommitCallback(boost::bind(&LLFloaterSettingsDebug::onCopyToClipboard, this));
|
||||
getChild<LLUICtrl>("default_btn")->setCommitCallback(boost::bind(&LLFloaterSettingsDebug::onClickDefault, this));
|
||||
getChild<LLFilterEditor>("search_settings_input")->setCommitCallback(boost::bind(&LLFloaterSettingsDebug::onUpdateFilter, this, _2));
|
||||
mComment = getChild<LLTextEditor>("comment_text");
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
@@ -72,10 +72,16 @@
|
||||
|
||||
<button bottom_delta="-27" enabled="true" follows="left|top" font="SansSerif"
|
||||
halign="center" height="20" label="Check All" label_selected="All" left="8"
|
||||
mouse_opaque="true" name="check_all" scale_image="true" width="100" />
|
||||
mouse_opaque="true" name="check_all" scale_image="true" width="100" >
|
||||
<button.commit_callback
|
||||
function="BulkPermission.CheckAll" />
|
||||
</button>
|
||||
<button bottom_delta="-24" enabled="true" follows="left|top" font="SansSerif"
|
||||
halign="center" height="20" label="Uncheck All" label_selected="None" left="8"
|
||||
mouse_opaque="true" name="check_none" scale_image="true" width="100" />
|
||||
mouse_opaque="true" name="check_none" scale_image="true" width="100" >
|
||||
<button.commit_callback
|
||||
function="BulkPermission.UncheckAll"/>
|
||||
</button>
|
||||
|
||||
<text type="string" length="1" bg_visible="false" border_drop_shadow_visible="false" border_visible="false"
|
||||
bottom="-40" drop_shadow_visible="true" enabled="true" follows="left|top"
|
||||
@@ -103,7 +109,10 @@
|
||||
<check_box bottom_delta="0" follows="left|top" width="88" height="16"
|
||||
left_delta="78" radio_style="false" font="SansSerifSmall"
|
||||
initial_value="false" label="Copy" mouse_opaque="true"
|
||||
name="next_owner_copy" control_name="BulkChangeNextOwnerCopy" />
|
||||
name="next_owner_copy" control_name="BulkChangeNextOwnerCopy" >
|
||||
<check_box.commit_callback
|
||||
function="BulkPermission.CommitCopy"/>
|
||||
</check_box>
|
||||
<check_box bottom_delta="0" follows="left|top" width="106" height="16"
|
||||
left_delta="88" radio_style="false" font="SansSerifSmall"
|
||||
initial_value="true" label="Resell/Give away" mouse_opaque="true" enabled="false"
|
||||
@@ -117,14 +126,23 @@
|
||||
|
||||
<button bottom="10" left="10" width="90" height="20" follows="left|top"
|
||||
label="Help" name="help" enabled="true"
|
||||
mouse_opaque="true" font="SansSerif" scale_image="true" halign="center" />
|
||||
mouse_opaque="true" font="SansSerif" scale_image="true" halign="center" >
|
||||
<button.commit_callback
|
||||
function="BulkPermission.Help"/>
|
||||
</button>
|
||||
|
||||
<button bottom="10" left="265" width="100" height="20" follows="left|top"
|
||||
label="Apply" name="apply" enabled="true"
|
||||
mouse_opaque="true" font="SansSerif" scale_image="true" halign="center" />
|
||||
mouse_opaque="true" font="SansSerif" scale_image="true" halign="center" >
|
||||
<button.commit_callback
|
||||
function="BulkPermission.Apply"/>
|
||||
</button>
|
||||
<button bottom_delta="0" left_delta="105" width="100" height="20" follows="left|top"
|
||||
label="Close" name="close" enabled="true"
|
||||
mouse_opaque="true" font="SansSerif" scale_image="true" halign="center" />
|
||||
mouse_opaque="true" font="SansSerif" scale_image="true" halign="center" >
|
||||
<button.commit_callback
|
||||
function="BulkPermission.Close"/>
|
||||
</button>
|
||||
|
||||
<string name="nothing_to_modify_text">Selection contains no editable contents.</string>
|
||||
<string name="status_text">Setting permissions on [NAME]</string>
|
||||
|
||||
@@ -3,7 +3,9 @@
|
||||
can_resize="true" enabled="true" height="500" left="176" title="Notifications Console" min_height="50"
|
||||
min_width="100" mouse_opaque="true" name="notifications_console" width="500">
|
||||
<combo_box name="notification_types" left="2" bottom="-40" height="18" width="440" follows="left|right|top" label="Select notification type"/>
|
||||
<button name="add_notification" left="445" bottom="-40" height="18" width="50" follows="right|top" label="Add"/>
|
||||
<layout_stack name="notification_channels" left="5" right="-5" top="-42" bottom="5" follows="left|right|top|bottom" orientation="vertical">
|
||||
</layout_stack>
|
||||
<button name="add_notification" left="445" bottom="-40" height="18" width="50" follows="right|top" label="Add">
|
||||
<button.commit_callback
|
||||
function="ClickAdd" />
|
||||
</button>
|
||||
<layout_stack name="notification_channels" left="5" right="-5" top="-42" bottom="5" follows="left|right|top|bottom" orientation="vertical"/>
|
||||
</floater>
|
||||
|
||||
@@ -2,8 +2,12 @@
|
||||
<floater can_close="true" can_drag_on_left="false" can_minimize="false"
|
||||
can_resize="true" height="220" name="settings_debug" min_height="220" min_width="285"
|
||||
title="Debug Settings" width="300" rect_control="FloaterDebugSettingsRect">
|
||||
<filter_editor bottom="-40" follows="top|left|right" height="20" label="Search" left="10" right="-10" max_chars="255" name="search_settings_input" tool_tip="Type the search term you are interested in here. Results will be displayed for partial fulltext matches within the setting's name or comment."/>
|
||||
<scroll_list height="20" bottom_delta="-24" follows="all" left="10" right="-10" name="settings_scroll_list" />
|
||||
<filter_editor bottom="-40" follows="top|left|right" height="20" label="Search" left="10" right="-10" max_chars="255" name="search_settings_input" tool_tip="Type the search term you are interested in here. Results will be displayed for partial fulltext matches within the setting's name or comment.">
|
||||
<filter_editor.commit_callback function="UpdateFilter"/>
|
||||
</filter_editor>
|
||||
<scroll_list height="20" bottom_delta="-24" follows="all" left="10" right="-10" name="settings_scroll_list">
|
||||
<scroll_list.commit_callback function="SettingSelect"/>
|
||||
</scroll_list>
|
||||
<text_editor follows="left|right" bottom_delta="-64" enabled="false" height="60" width="320" left="10" right="-10" hide_scrollbar="true"
|
||||
name="comment_text" word_wrap="true" />
|
||||
<radio_group bottom_delta="-48" draw_border="false" follows="bottom|left|right" height="36"
|
||||
@@ -14,20 +18,37 @@
|
||||
<radio_item bottom="-36" height="15" name="FALSE" value="">
|
||||
False
|
||||
</radio_item>
|
||||
<radio_group.commit_callback function="CommitSettings"/>
|
||||
</radio_group>
|
||||
<line_editor follows="bottom|left|right" bottom="52" left="15" right="-15" height="20" name="val_text" visible="false" width="300" />
|
||||
<line_editor follows="bottom|left|right" bottom="52" left="15" right="-15" height="20" name="val_text" visible="false" width="300">
|
||||
<line_editor.commit_callback function="CommitSettings"/>
|
||||
</line_editor>
|
||||
<color_swatch bottom="30" can_apply_immediately="true" height="55" label="Color"
|
||||
name="val_color_swatch" visible="false" width="37" />
|
||||
name="val_color_swatch" visible="false" width="37">
|
||||
<color_swatch.commit_callback function="CommitSettings"/>
|
||||
</color_swatch>
|
||||
<spinner bottom_delta="31" height="24" label="x" label_width="40" max_val="10000000"
|
||||
name="val_spinner_1" visible="false" width="120" />
|
||||
name="val_spinner_1" visible="false" width="120">
|
||||
<spinner.commit_callback function="CommitSettings"/>
|
||||
</spinner>
|
||||
<spinner bottom_delta="0" height="24" label="x" label_width="40" left_delta="135"
|
||||
max_val="10000000" name="val_spinner_2" visible="false" width="120" />
|
||||
max_val="10000000" name="val_spinner_2" visible="false" width="120">
|
||||
<spinner.commit_callback function="CommitSettings"/>
|
||||
</spinner>
|
||||
<spinner bottom_delta="-23" height="24" label="x" label_width="40" left="15"
|
||||
max_val="10000000" name="val_spinner_3" visible="false" width="120" />
|
||||
max_val="10000000" name="val_spinner_3" visible="false" width="120">
|
||||
<spinner.commit_callback function="CommitSettings"/>
|
||||
</spinner>
|
||||
<spinner bottom_delta="0" height="24" label="x" label_width="40" left_delta="135"
|
||||
max_val="10000000" name="val_spinner_4" visible="false" width="120" />
|
||||
max_val="10000000" name="val_spinner_4" visible="false" width="120">
|
||||
<spinner.commit_callback function="CommitSettings"/>
|
||||
</spinner>
|
||||
<button bottom="10" height="20" label="Copy Name" left="10" name="copy_btn" tool_tip="Copy the name of this setting."
|
||||
width="130" />
|
||||
width="130">
|
||||
<button.commit_callback function="ClickCopy"/>
|
||||
</button>
|
||||
<button follows="right" bottom_delta="0" height="20" label="Reset to default" right="-10" name="default_btn"
|
||||
width="130" />
|
||||
width="130">
|
||||
<button.commit_callback function="ClickDefault"/>
|
||||
</button>
|
||||
</floater>
|
||||
|
||||
Reference in New Issue
Block a user