Sync with upstream, improve RLVa and make use of the callback registrar

This commit is contained in:
Lirusaito
2013-07-12 18:43:59 -04:00
parent c77f0de9cf
commit 4da47de90c
11 changed files with 175 additions and 144 deletions

View File

@@ -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);
}

View File

@@ -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");

View File

@@ -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)); }

View File

@@ -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();

View File

@@ -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();
};

View File

@@ -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));

View File

@@ -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));

View File

@@ -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;
}

View File

@@ -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>

View File

@@ -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>

View File

@@ -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>