Removed LLUICtrl::setDoubleClickCallback and LLPanel::childSetDoubleClickCallback as they aren't used/needed and complicate things. Added LLPanel::childSetAction overload that accepts boost::singal2::signal (for boost::bind). Now using boost::function for various callbacks in LLScrollListCtrl (for boost::bind).
This commit is contained in:
@@ -127,8 +127,7 @@ BOOL HBFloaterGroupTitles::postBuild()
|
||||
{
|
||||
return FALSE;
|
||||
}
|
||||
mTitlesList->setCallbackUserData(this);
|
||||
mTitlesList->setDoubleClickCallback(onActivate);
|
||||
mTitlesList->setDoubleClickCallback(boost::bind(&HBFloaterGroupTitles::onActivate,this));
|
||||
childSetAction("activate", onActivate, this);
|
||||
update_titles_list(this);
|
||||
return TRUE;
|
||||
|
||||
@@ -88,8 +88,7 @@ void JCFloaterAreaSearch::close(bool app)
|
||||
BOOL JCFloaterAreaSearch::postBuild()
|
||||
{
|
||||
mResultList = getChild<LLScrollListCtrl>("result_list");
|
||||
mResultList->setCallbackUserData(this);
|
||||
mResultList->setDoubleClickCallback(onDoubleClick);
|
||||
mResultList->setDoubleClickCallback(onDoubleClick,this);
|
||||
mResultList->sortByColumn("Name", TRUE);
|
||||
|
||||
mCounterText = getChild<LLTextBox>("counter");
|
||||
|
||||
@@ -333,10 +333,10 @@ BOOL LLPanelActiveSpeakers::postBuild()
|
||||
|
||||
mSpeakerList = getChild<LLScrollListCtrl>("speakers_list");
|
||||
mSpeakerList->sortByColumn(sort_column, sort_ascending);
|
||||
mSpeakerList->setDoubleClickCallback(onDoubleClickSpeaker);
|
||||
mSpeakerList->setDoubleClickCallback(boost::bind(&onDoubleClickSpeaker,this));
|
||||
mSpeakerList->setCommitOnSelectionChange(TRUE);
|
||||
mSpeakerList->setCommitCallback(onSelectSpeaker);
|
||||
mSpeakerList->setSortChangedCallback(onSortChanged);
|
||||
mSpeakerList->setSortChangedCallback(boost::bind(&LLPanelActiveSpeakers::onSortChanged,this));
|
||||
mSpeakerList->setCallbackUserData(this);
|
||||
|
||||
mMuteTextCtrl = getChild<LLUICtrl>("mute_text_btn");
|
||||
|
||||
@@ -354,7 +354,7 @@ BOOL LLFloaterAvatarList::postBuild()
|
||||
mAvatarList->setCommitOnSelectionChange(TRUE);
|
||||
mAvatarList->setCallbackUserData(this);
|
||||
mAvatarList->setCommitCallback(onSelectName);
|
||||
mAvatarList->setDoubleClickCallback(onClickFocus);
|
||||
mAvatarList->setDoubleClickCallback(boost::bind(&LLFloaterAvatarList::onClickFocus,this));
|
||||
refreshAvatarList();
|
||||
|
||||
gIdleCallbacks.addFunction(LLFloaterAvatarList::callbackIdle);
|
||||
|
||||
@@ -108,23 +108,25 @@ BOOL LLFloaterAvatarPicker::postBuild()
|
||||
childSetKeystrokeCallback("Edit", editKeystroke, this);
|
||||
childSetKeystrokeCallback("EditUUID", editKeystroke, this);
|
||||
|
||||
childSetAction("Find", onBtnFind, this);
|
||||
childDisable("Find");
|
||||
childSetAction("Refresh", onBtnRefresh, this);
|
||||
childSetCommitCallback("near_me_range", onRangeAdjust, this);
|
||||
childSetAction("Find", boost::bind(&LLFloaterAvatarPicker::onBtnFind, this));
|
||||
getChildView("Find")->setEnabled(FALSE);
|
||||
childSetAction("Refresh", boost::bind(&LLFloaterAvatarPicker::onBtnRefresh, this));
|
||||
getChild<LLUICtrl>("near_me_range")->setCommitCallback(boost::bind(&LLFloaterAvatarPicker::onRangeAdjust, _1, this));
|
||||
|
||||
childSetDoubleClickCallback("SearchResults", onBtnSelect);
|
||||
childSetDoubleClickCallback("NearMe", onBtnSelect);
|
||||
childSetCommitCallback("SearchResults", onList, this);
|
||||
childSetCommitCallback("NearMe", onList, this);
|
||||
childDisable("SearchResults");
|
||||
LLScrollListCtrl* searchresults = getChild<LLScrollListCtrl>("SearchResults");
|
||||
searchresults->setDoubleClickCallback( boost::bind(&LLFloaterAvatarPicker::onBtnSelect, this));
|
||||
searchresults->setCommitCallback(boost::bind(&LLFloaterAvatarPicker::onList, _1, this));
|
||||
getChildView("SearchResults")->setEnabled(FALSE);
|
||||
|
||||
childSetAction("Select", onBtnSelect, this);
|
||||
childDisable("Select");
|
||||
LLScrollListCtrl* nearme = getChild<LLScrollListCtrl>("NearMe");
|
||||
nearme->setDoubleClickCallback(boost::bind(&LLFloaterAvatarPicker::onBtnSelect, this));
|
||||
nearme->setCommitCallback(boost::bind(&LLFloaterAvatarPicker::onList, _1, this));
|
||||
|
||||
childSetAction("Cancel", onBtnClose, this);
|
||||
childSetAction("Select", boost::bind(&LLFloaterAvatarPicker::onBtnSelect, this));
|
||||
getChildView("Select")->setEnabled(FALSE);
|
||||
childSetAction("Cancel", boost::bind(&LLFloaterAvatarPicker::onBtnClose, this));
|
||||
|
||||
childSetFocus("Edit");
|
||||
getChild<LLUICtrl>("Edit")->setFocus(TRUE);
|
||||
|
||||
LLPanel* search_panel = getChild<LLPanel>("SearchPanel");
|
||||
if (search_panel)
|
||||
@@ -162,10 +164,9 @@ LLFloaterAvatarPicker::~LLFloaterAvatarPicker()
|
||||
sInstance = NULL;
|
||||
}
|
||||
|
||||
void LLFloaterAvatarPicker::onBtnFind(void* userdata)
|
||||
void LLFloaterAvatarPicker::onBtnFind()
|
||||
{
|
||||
LLFloaterAvatarPicker* self = (LLFloaterAvatarPicker*)userdata;
|
||||
if(self) self->find();
|
||||
find();
|
||||
}
|
||||
|
||||
static void getSelectedAvatarData(const LLScrollListCtrl* from, std::vector<std::string>& avatar_names, std::vector<LLUUID>& avatar_ids)
|
||||
|
||||
@@ -56,7 +56,7 @@ private:
|
||||
|
||||
static void editKeystroke(class LLLineEditor* caller, void* user_data);
|
||||
|
||||
static void onBtnFind(void* userdata);
|
||||
void onBtnFind();
|
||||
static void onBtnSelect(void* userdata);
|
||||
static void onBtnRefresh(void* userdata);
|
||||
static void onRangeAdjust(LLUICtrl* source, void* data);
|
||||
|
||||
@@ -75,15 +75,16 @@ void LLFloaterExploreSounds::close(bool app_quitting)
|
||||
|
||||
BOOL LLFloaterExploreSounds::postBuild(void)
|
||||
{
|
||||
childSetDoubleClickCallback("sound_list", handle_play_locally, this);
|
||||
LLScrollListCtrl* soundlist = getChild<LLScrollListCtrl>("sound_list");
|
||||
soundlist->setDoubleClickCallback(boost::bind(&LLFloaterExploreSounds::handle_play_locally,this));
|
||||
soundlist->sortByColumn("playing", TRUE);
|
||||
|
||||
childSetAction("play_locally_btn", handle_play_locally, this);
|
||||
childSetAction("look_at_btn", handle_look_at, this);
|
||||
childSetAction("stop_btn", handle_stop, this);
|
||||
childSetAction("bl_btn", blacklistSound, this);
|
||||
|
||||
LLScrollListCtrl* list = getChild<LLScrollListCtrl>("sound_list");
|
||||
list->sortByColumn("playing", TRUE);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
@@ -369,7 +369,7 @@ BOOL LLPanelFriends::postBuild()
|
||||
mFriendsList->setCommitOnSelectionChange(TRUE);
|
||||
childSetCommitCallback("friend_list", onSelectName, this);
|
||||
childSetCommitCallback("buddy_group_combobox", onChangeContactGroup, this);
|
||||
childSetDoubleClickCallback("friend_list", onClickIM);
|
||||
mFriendsList->setDoubleClickCallback(onClickIM, this);
|
||||
|
||||
// <dogmode>
|
||||
// Contact search and group system.
|
||||
|
||||
@@ -114,8 +114,9 @@ BOOL LLFloaterGesture::postBuild()
|
||||
|
||||
setTitle(label);
|
||||
|
||||
childSetCommitCallback("gesture_list", onCommitList, this);
|
||||
childSetDoubleClickCallback("gesture_list", onClickPlay);
|
||||
LLScrollListCtrl* gesture_list = getChild<LLScrollListCtrl>("avatar_list");
|
||||
gesture_list->setCommitCallback(boost::bind(&LLFloaterGesture::onCommitList,this));
|
||||
gesture_list->setDoubleClickCallback(boost::bind(&LLFloaterGesture::onClickPlay,this));
|
||||
|
||||
childSetAction("inventory_btn", onClickInventory, this);
|
||||
|
||||
|
||||
@@ -136,8 +136,7 @@ BOOL LLFloaterGroupPicker::postBuild()
|
||||
|
||||
setDefaultBtn("OK");
|
||||
|
||||
childSetDoubleClickCallback("group list", onBtnOK);
|
||||
childSetUserData("group list", this);
|
||||
group_list->setDoubleClickCallback(boost::bind(&LLFloaterGroupPicker::onBtnOK,this));
|
||||
|
||||
childEnable("OK");
|
||||
|
||||
@@ -222,7 +221,8 @@ BOOL LLPanelGroups::postBuild()
|
||||
const std::string none_text = getString("none");
|
||||
LLScrollListCtrl *group_list = getChild<LLScrollListCtrl>("group list");
|
||||
init_group_list(group_list, gAgent.getGroupID(), none_text);
|
||||
group_list->setSortChangedCallback(onGroupSortChanged); //Force 'none' to always be first entry.
|
||||
group_list->setSortChangedCallback(boost::bind(&onGroupSortChanged,this)); //Force 'none' to always be first entry.
|
||||
group_list->setDoubleClickCallback(boost::bind(&LLPanelGroups::onBtnIM,this));
|
||||
|
||||
childSetAction("Activate", onBtnActivate, this);
|
||||
|
||||
@@ -242,9 +242,6 @@ BOOL LLPanelGroups::postBuild()
|
||||
|
||||
setDefaultBtn("IM");
|
||||
|
||||
childSetDoubleClickCallback("group list", onBtnIM);
|
||||
childSetUserData("group list", this);
|
||||
|
||||
reset();
|
||||
|
||||
return TRUE;
|
||||
|
||||
@@ -1126,7 +1126,7 @@ BOOL LLPanelLandObjects::postBuild()
|
||||
mOwnerList = getChild<LLNameListCtrl>("owner list");
|
||||
mOwnerList->sortByColumnIndex(3, FALSE);
|
||||
childSetCommitCallback("owner list", onCommitList, this);
|
||||
mOwnerList->setDoubleClickCallback(onDoubleClickOwner);
|
||||
mOwnerList->setDoubleClickCallback(boost::bind(&LLPanelLandObjects::onDoubleClickOwner, this));
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
@@ -100,11 +100,12 @@ BOOL LLFloaterLandHoldings::postBuild()
|
||||
childSetAction("Teleport", onClickTeleport, this);
|
||||
childSetAction("Show on Map", onClickMap, this);
|
||||
|
||||
// Grant list
|
||||
childSetDoubleClickCallback("grant list", onGrantList);
|
||||
childSetUserData("grant list", this);
|
||||
LLScrollListCtrl *grant_list = getChild<LLScrollListCtrl>("grant list");
|
||||
|
||||
LLCtrlListInterface *list = childGetListInterface("grant list");
|
||||
// Grant list
|
||||
grant_list->setDoubleClickCallback(boost::bind(&LLFloaterLandHoldings::onGrantList,this));
|
||||
|
||||
LLCtrlListInterface *list = grant_list->getListInterface();
|
||||
if (!list) return TRUE;
|
||||
|
||||
S32 count = gAgent.mGroups.count();
|
||||
|
||||
@@ -60,8 +60,7 @@ BOOL LLFloaterNewIM::postBuild()
|
||||
mSelectionList = getChild<LLNameListCtrl>("user_list");
|
||||
if (mSelectionList)
|
||||
{
|
||||
mSelectionList->setDoubleClickCallback(&LLFloaterNewIM::onStart);
|
||||
mSelectionList->setCallbackUserData(this);
|
||||
mSelectionList->setDoubleClickCallback(boost::bind(&LLFloaterNewIM::onStart,this));
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@@ -77,12 +77,10 @@ BOOL LLNotificationChannelPanel::postBuild()
|
||||
mChannelRejectsPtr->connectChanged(boost::bind(&LLNotificationChannelPanel::update, this, _1, false));
|
||||
|
||||
LLScrollListCtrl* scroll = getChild<LLScrollListCtrl>("notifications_list");
|
||||
scroll->setDoubleClickCallback(onClickNotification);
|
||||
scroll->setCallbackUserData(this);
|
||||
scroll->setDoubleClickCallback(boost::bind(&LLNotificationChannelPanel::onClickNotification,this));
|
||||
|
||||
scroll = getChild<LLScrollListCtrl>("notification_rejects_list");
|
||||
scroll->setDoubleClickCallback(onClickNotificationReject);
|
||||
scroll->setCallbackUserData(this);
|
||||
scroll->setDoubleClickCallback(boost::bind(&LLNotificationChannelPanel::onClickNotificationReject,this));
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
@@ -96,8 +96,8 @@ BOOL LLFloaterTeleportHistory::postBuild()
|
||||
}
|
||||
|
||||
// setup callbacks for the scroll list
|
||||
mPlacesList->setDoubleClickCallback(onTeleport);
|
||||
childSetCommitCallback("places_list", onPlacesSelected, this);
|
||||
mPlacesList->setDoubleClickCallback(boost::bind(&LLFloaterTeleportHistory::onTeleport,this));
|
||||
mPlacesList->setCommitCallback(boost::bind(&LLFloaterTeleportHistory::onPlacesSelected,_1,this));
|
||||
childSetAction("teleport", onTeleport, this);
|
||||
childSetAction("show_on_map", onShowOnMap, this);
|
||||
childSetAction("copy_slurl", onCopySLURL, this);
|
||||
|
||||
@@ -92,12 +92,13 @@ LLFloaterTopObjects::~LLFloaterTopObjects()
|
||||
// virtual
|
||||
BOOL LLFloaterTopObjects::postBuild()
|
||||
{
|
||||
childSetCommitCallback("objects_list", onCommitObjectsList, this);
|
||||
childSetDoubleClickCallback("objects_list", onDoubleClickObjectsList);
|
||||
childSetFocus("objects_list");
|
||||
|
||||
LLScrollListCtrl *objects_list = getChild<LLScrollListCtrl>("objects_list");
|
||||
if (objects_list)
|
||||
{
|
||||
objects_list->setCommitCallback(boost::bind(&LLFloaterTopObjects::onCommitObjectsList,_1,this));
|
||||
objects_list->setDoubleClickCallback(boost::bind(&LLFloaterTopObjects::onDoubleClickObjectsList,this));
|
||||
objects_list->setFocus(true);
|
||||
objects_list->setCommitOnSelectionChange(TRUE);
|
||||
}
|
||||
|
||||
|
||||
@@ -220,13 +220,9 @@ BOOL LLFloaterWorldMap::postBuild()
|
||||
location_editor->setKeystrokeCallback( onSearchTextEntry );
|
||||
|
||||
LLScrollListCtrl* search_results = getChild<LLScrollListCtrl>("search_results");
|
||||
search_results->setDoubleClickCallback(&LLFloaterWorldMap::onClickTeleportBtn_static);
|
||||
search_results->setCallbackUserData(this);
|
||||
search_results->setDoubleClickCallback(boost::bind(&LLFloaterWorldMap::onClickTeleportBtn,this));
|
||||
mListSearchResults = dynamic_cast<LLCtrlListInterface *>(search_results);
|
||||
|
||||
|
||||
|
||||
|
||||
LLComboBox *landmark_combo = getChild<LLComboBox>( "landmark combo");
|
||||
|
||||
landmark_combo->selectFirstItem();
|
||||
|
||||
@@ -127,7 +127,6 @@ protected:
|
||||
|
||||
void onClearBtn();
|
||||
void onClickTeleportBtn();
|
||||
static void onClickTeleportBtn_static(void* data) {((LLFloaterWorldMap*)data)->onClickTeleportBtn();};
|
||||
void onShowTargetBtn();
|
||||
void onShowAgentBtn();
|
||||
void onCopySLURL();
|
||||
|
||||
@@ -582,11 +582,10 @@ BOOL LLPanelAvatarSecondLife::postBuild(void)
|
||||
childSetAction("Offer Teleport...", LLPanelAvatar::onClickOfferTeleport,
|
||||
getPanelAvatar() );
|
||||
|
||||
childSetDoubleClickCallback("groups", onDoubleClickGroup, this );
|
||||
getChild<LLScrollListCtrl>("groups")->setDoubleClickCallback(boost::bind(&LLPanelAvatarSecondLife::onDoubleClickGroup,this));
|
||||
|
||||
childSetAction("bigimg", onClickImage, this);
|
||||
|
||||
|
||||
getChild<LLTextureCtrl>("img")->setFallbackImageName("default_profile_picture.j2c");
|
||||
|
||||
return TRUE;
|
||||
|
||||
@@ -156,8 +156,7 @@ BOOL LLPanelGroupGeneral::postBuild()
|
||||
mListVisibleMembers = getChild<LLNameListCtrl>("visible_members", recurse);
|
||||
if (mListVisibleMembers)
|
||||
{
|
||||
mListVisibleMembers->setDoubleClickCallback(&LLPanelGroupGeneral::openProfile);
|
||||
mListVisibleMembers->setCallbackUserData(this);
|
||||
mListVisibleMembers->setDoubleClickCallback(boost::bind(&LLPanelGroupGeneral::openProfile,this));
|
||||
}
|
||||
|
||||
// Options
|
||||
|
||||
@@ -890,11 +890,10 @@ BOOL LLPanelGroupMembersSubTab::postBuildSubTab(LLView* root)
|
||||
if (!mMembersList || !mAssignedRolesList || !mAllowedActionsList) return FALSE;
|
||||
|
||||
// We want to be notified whenever a member is selected.
|
||||
mMembersList->setCallbackUserData(this);
|
||||
mMembersList->setCommitOnSelectionChange(TRUE);
|
||||
mMembersList->setCommitCallback(onMemberSelect);
|
||||
mMembersList->setCommitCallback(boost::bind(&LLPanelGroupMembersSubTab::onMemberSelect,_1,this));
|
||||
// Show the member's profile on double click.
|
||||
mMembersList->setDoubleClickCallback(onMemberDoubleClick);
|
||||
mMembersList->setDoubleClickCallback(boost::bind(&LLPanelGroupMembersSubTab::onMemberDoubleClick,this));
|
||||
|
||||
LLButton* button = parent->getChild<LLButton>("member_invite", recurse);
|
||||
if ( button )
|
||||
|
||||
@@ -1579,11 +1579,9 @@ BOOL LLPanelGroupVoting::postBuild()
|
||||
//associate callbacks
|
||||
if ( success )
|
||||
{
|
||||
mImpl->mProposals->setDoubleClickCallback(impl::onDoubleClickProposal);
|
||||
mImpl->mProposals->setCallbackUserData(mImpl);
|
||||
mImpl->mProposals->setDoubleClickCallback(boost::bind(&LLPanelGroupVoting::impl::onDoubleClickProposal,mImpl));
|
||||
|
||||
mImpl->mVotesHistory->setDoubleClickCallback(impl::onDoubleClickHistoryItem);
|
||||
mImpl->mVotesHistory->setCallbackUserData(mImpl);
|
||||
mImpl->mVotesHistory->setDoubleClickCallback(boost::bind(&LLPanelGroupVoting::impl::onDoubleClickHistoryItem,mImpl));
|
||||
|
||||
mImpl->mBtnAbstain->setClickedCallback(boost::bind(&impl::onClickAbstain,mImpl));
|
||||
|
||||
|
||||
@@ -434,8 +434,8 @@ BOOL LLPreviewGesture::postBuild()
|
||||
|
||||
list = getChild<LLScrollListCtrl>("library_list");
|
||||
list->setCommitCallback(onCommitLibrary);
|
||||
list->setDoubleClickCallback(onClickAdd);
|
||||
list->setCallbackUserData(this);
|
||||
list->setDoubleClickCallback(boost::bind(&LLPreviewGesture::onClickAdd,this));
|
||||
mLibraryList = list;
|
||||
|
||||
btn = getChild<LLButton>( "add_btn");
|
||||
@@ -527,12 +527,10 @@ BOOL LLPreviewGesture::postBuild()
|
||||
|
||||
btn = getChild<LLButton>( "save_btn");
|
||||
btn->setClickedCallback(boost::bind(&LLPreviewGesture::onClickSave,this));
|
||||
btn->setCallbackUserData(this);
|
||||
mSaveBtn = btn;
|
||||
|
||||
btn = getChild<LLButton>( "preview_btn");
|
||||
btn->setClickedCallback(boost::bind(&LLPreviewGesture::onClickPreview,this));
|
||||
btn->setCallbackUserData(this);
|
||||
mPreviewBtn = btn;
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user