本文整理汇总了C++中LLFloaterAvatarPicker类的典型用法代码示例。如果您正苦于以下问题:C++ LLFloaterAvatarPicker类的具体用法?C++ LLFloaterAvatarPicker怎么用?C++ LLFloaterAvatarPicker使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了LLFloaterAvatarPicker类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: onList
void LLFloaterAvatarPicker::onList(LLUICtrl* ctrl, void* userdata)
{
LLFloaterAvatarPicker* self = (LLFloaterAvatarPicker*)userdata;
if (!self)
{
return;
}
self->mAvatarIDs.clear();
self->mAvatarNames.clear();
if (!self->mListNames)
{
return;
}
std::vector<LLScrollListItem*> items =
self->mListNames->getAllSelected();
for (
std::vector<LLScrollListItem*>::iterator iter = items.begin();
iter != items.end();
++iter)
{
LLScrollListItem* item = *iter;
self->mAvatarNames.push_back(item->getColumn(0)->getValue().asString());
self->mAvatarIDs.push_back(item->getUUID());
self->childSetEnabled("Select", TRUE);
}
}
示例2: getInstance
LLFloaterAvatarPicker* LLFloaterAvatarPicker::show(select_callback_t callback,
BOOL allow_multiple,
BOOL closeOnSelect)
{
// *TODO: Use a key to allow this not to be an effective singleton
LLFloaterAvatarPicker* floater = getInstance();
floater->open();
floater->mSelectionCallback = callback;
floater->setAllowMultiple(allow_multiple);
floater->mNearMeListComplete = FALSE;
floater->mCloseOnSelect = closeOnSelect;
if (!closeOnSelect)
{
// Use Select/Close
std::string select_string = floater->getString("Select");
std::string close_string = floater->getString("Close");
floater->getChild<LLButton>("ok_btn")->setLabel(select_string);
floater->getChild<LLButton>("cancel_btn")->setLabel(close_string);
}
return floater;
}
示例3: show
LLFloaterAvatarPicker* LLFloaterAvatarPicker::show(select_callback_t callback,
BOOL allow_multiple,
BOOL closeOnSelect)
{
// *TODO: Use a key to allow this not to be an effective singleton
LLFloaterAvatarPicker* floater =
LLFloaterReg::showTypedInstance<LLFloaterAvatarPicker>("avatar_picker");
if (!floater)
{
llwarns << "Cannot instantiate avatar picker" << llendl;
return NULL;
}
floater->mSelectionCallback = callback;
floater->setAllowMultiple(allow_multiple);
floater->mNearMeListComplete = FALSE;
floater->mCloseOnSelect = closeOnSelect;
if (!closeOnSelect)
{
// Use Select/Close
std::string select_string = floater->getString("Select");
std::string close_string = floater->getString("Close");
floater->getChild<LLButton>("ok_btn")->setLabel(select_string);
floater->getChild<LLButton>("cancel_btn")->setLabel(close_string);
}
return floater;
}
示例4: onList
void LLFloaterAvatarPicker::onList(LLUICtrl* ctrl, void* userdata)
{
LLFloaterAvatarPicker* self = (LLFloaterAvatarPicker*)userdata;
if (self)
{
self->childSetEnabled("Select", self->visibleItemsSelected());
}
}
示例5: editKeystroke
//static
void LLFloaterAvatarPicker::editKeystroke(LLLineEditor* caller, void* user_data)
{
LLFloaterAvatarPicker* self = (LLFloaterAvatarPicker*)user_data;
if(caller->getName() == "Edit")
self->getChildView("Find")->setEnabled(caller->getText().size() >= 3);
else
self->childSetEnabled("Select", caller->getValue().asUUID().notNull());
}
示例6: onCallingCardSelectionChange
// static callback for inventory picker (select from calling cards)
void LLFloaterAvatarPicker::onCallingCardSelectionChange(const std::deque<LLFolderViewItem*> &items, BOOL user_action, void* data)
{
LLFloaterAvatarPicker* self = (LLFloaterAvatarPicker*)data;
if (self)
{
self->doCallingCardSelectionChange( items, user_action, data );
}
}
示例7: shareWithAvatars
//static
void LLAvatarActions::shareWithAvatars()
{
using namespace action_give_inventory;
LLFloaterAvatarPicker* picker =
LLFloaterAvatarPicker::show(boost::bind(give_inventory, _1, _2), TRUE, FALSE);
picker->setOkBtnEnableCb(boost::bind(is_give_inventory_acceptable));
picker->openFriendsTab();
LLNotificationsUtil::add("ShareNotification");
}
示例8: onTabChanged
void LLFloaterAvatarPicker::onTabChanged(void* userdata, bool from_click)
{
LLFloaterAvatarPicker* self = (LLFloaterAvatarPicker*)userdata;
if (!self)
{
return;
}
self->childSetEnabled("Select", self->visibleItemsSelected());
}
示例9: onBtnRefresh
void LLFloaterAvatarPicker::onBtnRefresh(void* userdata)
{
LLFloaterAvatarPicker* self = (LLFloaterAvatarPicker*)userdata;
if (!self)
{
return;
}
self->getChild<LLScrollListCtrl>("NearMe")->deleteAllItems();
self->getChild<LLScrollListCtrl>("NearMe")->addCommentText(self->getString("searching"));
self->mNearMeListComplete = FALSE;
}
示例10: editKeystroke
//static
void LLFloaterAvatarPicker::editKeystroke(LLLineEditor* caller, void* user_data)
{
LLFloaterAvatarPicker* self = (LLFloaterAvatarPicker*)user_data;
if (caller->getText().size() >= 3)
{
self->childSetEnabled("Find",TRUE);
}
else
{
self->childSetEnabled("Find",FALSE);
}
}
示例11: editKeystroke
//static
void LLFloaterAvatarPicker::editKeystroke(LLLineEditor* caller, void* user_data)
{
LLFloaterAvatarPicker* self = (LLFloaterAvatarPicker*)user_data;
LLPanel* active_panel = self->childGetVisibleTab("ResidentChooserTabs");
if(active_panel == self->getChild<LLPanel>("SearchPanel"))
self->childSetEnabled("Find", caller->getText().size() >= 3);
else if(active_panel == self->getChild<LLPanel>("KeyPanel"))
{
LLUUID specified = self->getChild<LLLineEditor>("EditUUID")->getValue().asUUID();
self->childSetEnabled("Select", specified.notNull());
}
}
示例12: LLFloaterAvatarPicker
LLFloaterAvatarPicker* LLFloaterAvatarPicker::show(select_callback_t callback,
BOOL allow_multiple,
BOOL closeOnSelect)
{
// TODO: This class should not be a singleton as it's used in multiple places
// and therefore can't be used simultaneously. -MG
LLFloaterAvatarPicker* floater = sInstance ? sInstance : new LLFloaterAvatarPicker();
floater->open(); /* Flawfinder: ignore */
if(!sInstance)
{
sInstance = floater;
floater->center();
}
floater->mSelectionCallback = callback;
floater->setAllowMultiple(allow_multiple);
floater->mNearMeListComplete = FALSE;
floater->mCloseOnSelect = closeOnSelect;
return floater;
}
示例13: shareWithAvatars
//static
void LLAvatarActions::shareWithAvatars(LLView * panel)
{
using namespace action_give_inventory;
LLFloater* root_floater = gFloaterView->getParentFloater(panel);
LLFloaterAvatarPicker* picker =
LLFloaterAvatarPicker::show(boost::bind(give_inventory, _1, _2), TRUE, FALSE, FALSE, root_floater->getName());
if (!picker)
{
return;
}
picker->setOkBtnEnableCb(boost::bind(is_give_inventory_acceptable));
picker->openFriendsTab();
if (root_floater)
{
root_floater->addDependentFloater(picker);
}
LLNotificationsUtil::add("ShareNotification");
}
示例14: onBtnAdd
void LLFloaterAvatarPicker::onBtnAdd(void* userdata)
{
LLFloaterAvatarPicker* self = (LLFloaterAvatarPicker*)userdata;
if(self->mCallback)
{
self->mCallback(self->mAvatarNames, self->mAvatarIDs, self->mCallbackUserdata);
}
if (self->mInventoryPanel)
{
self->mInventoryPanel->setSelection(LLUUID::null, FALSE);
}
if (self->mListNames)
{
self->mListNames->deselectAllItems(TRUE);
}
if(self->mCloseOnSelect)
{
self->mCloseOnSelect = FALSE;
self->close();
}
}
示例15:
/*virtual*/ void completed(U32 status, const std::string& reason, const LLSD& content)
{
//std::ostringstream ss;
//LLSDSerialize::toPrettyXML(content, ss);
//llinfos << ss.str() << llendl;
// in case of invalid characters, the avatar picker returns a 400
// just set it to process so it displays 'not found'
if (isGoodStatus(status) || status == 400)
{
LLFloaterAvatarPicker* floater =
LLFloaterReg::findTypedInstance<LLFloaterAvatarPicker>("avatar_picker");
if (floater)
{
floater->processResponse(mQueryID, content);
}
}
else
{
llwarns << "avatar picker failed [status:" << status << "]: " << content << llendl;
}
}