本文整理汇总了C++中LLScrollListItem::getColumn方法的典型用法代码示例。如果您正苦于以下问题:C++ LLScrollListItem::getColumn方法的具体用法?C++ LLScrollListItem::getColumn怎么用?C++ LLScrollListItem::getColumn使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类LLScrollListItem
的用法示例。
在下文中一共展示了LLScrollListItem::getColumn方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: refresh
// public
void LLNameListCtrl::refresh(const LLUUID& id, const std::string& first,
const std::string& last, BOOL is_group)
{
//llinfos << "LLNameListCtrl::refresh " << id << " '" << first << " "
// << last << "'" << llendl;
std::string fullname;
if (!is_group)
{
fullname = first + " " + last;
}
else
{
fullname = first;
}
// TODO: scan items for that ID, fix if necessary
item_list::iterator iter;
for (iter = getItemList().begin(); iter != getItemList().end(); iter++)
{
LLScrollListItem* item = *iter;
if (item->getUUID() == id)
{
LLScrollListCell* cell = (LLScrollListCell*)item->getColumn(0);
cell = (LLScrollListCell*)item->getColumn(mNameColumnIndex);
((LLScrollListText*)cell)->setText( fullname );
}
}
dirtyColumns();
}
示例2: refresh
// Update controls based on current settings
void LLPrefsAscentVan::refresh()
{
//General --------------------------------------------------------------------------------
//Tags\Colors ----------------------------------------------------------------------------
//Colors ---------------------------------------------------------------------------------
LLComboBox* combo = getChild<LLComboBox>("tag_spoofing_combobox");
if(LLVOAvatar::sClientResolutionList.has("isComplete"))
{
//combo->setColor(LLColor4::black);
combo->clear();
for(LLSD::map_iterator itr = LLVOAvatar::sClientResolutionList.beginMap(); itr != LLVOAvatar::sClientResolutionList.endMap(); itr++)
{
LLSD value = (*itr).second;
if(value.has("name"))
{
std::string name = value.get("name");
std::string uuid = (*itr).first;
LLColor4 color = LLColor4(value.get("color"));
if(value["multiple"].asReal() != 0)
{
color *= 1.0/(value["multiple"].asReal()+1.0f);
}
LLScrollListItem* item = combo->add(name,uuid);
//bad practice
item->getColumn(0)->setColor(color);
}
}
//add Viewer 2.0
LLScrollListItem* item = combo->add("Viewer 2.0",IMG_DEFAULT_AVATAR);
//bad practice
item->getColumn(0)->setColor(LLColor4::black);
}
combo->setCurrentByIndex(mSelectedClient);
childSetEnabled("friends_color_textbox", mUseStatusColors);
childSetEnabled("friend_color_swatch", mUseStatusColors);
childSetEnabled("estate_owner_color_swatch", mUseStatusColors);
childSetEnabled("linden_color_swatch", mUseStatusColors);
childSetEnabled("muted_color_swatch", mUseStatusColors);
childSetEnabled("custom_tag_label_text", mCustomTagOn);
childSetEnabled("custom_tag_label_box", mCustomTagOn);
childSetValue("custom_tag_label_box", gSavedSettings.getString("AscentCustomTagLabel"));
childSetEnabled("custom_tag_color_text", mCustomTagOn);
childSetEnabled("custom_tag_color_swatch", mCustomTagOn);
//Body Dynamics --------------------------------------------------------------------------
childSetEnabled("EmeraldBoobMass", mBreastPhysicsToggle);
childSetEnabled("EmeraldBoobHardness", mBreastPhysicsToggle);
childSetEnabled("EmeraldBoobVelMax", mBreastPhysicsToggle);
childSetEnabled("EmeraldBoobFriction", mBreastPhysicsToggle);
childSetEnabled("EmeraldBoobVelMin", mBreastPhysicsToggle);
}
示例3: updateFriendItem
// propagate actual relationship to UI.
// Does not resort the UI list because it can be called frequently. JC
BOOL LLPanelFriends::updateFriendItem(const LLUUID& agent_id, const LLRelationship* info)
{
if (!info) return FALSE;
LLScrollListItem* itemp = mFriendsList->getItem(agent_id);
if (!itemp) return FALSE;
bool isOnlineSIP = LLVoiceClient::getInstance()->isOnlineSIP(itemp->getUUID());
bool isOnline = info->isOnline();
std::string fullname;
bool have_name = LLAvatarNameCache::getPNSName(agent_id, fullname, friend_name_system());
if (!have_name) gCacheName->getFullName(agent_id, fullname);
// Name of the status icon to use
std::string statusIcon;
if(isOnline)
{
mNumOnline++;
statusIcon = "icon_avatar_online.tga";
}
else if(isOnlineSIP)
{
mNumOnline++;
statusIcon = ONLINE_SIP_ICON_NAME;
}
else
{
mNumOnline--;
}
itemp->getColumn(LIST_ONLINE_STATUS)->setValue(statusIcon);
itemp->getColumn(LIST_FRIEND_NAME)->setValue(fullname);
// render name of online friends in bold text
((LLScrollListText*)itemp->getColumn(LIST_FRIEND_NAME))->setFontStyle((isOnline || isOnlineSIP) ? LLFontGL::BOLD : LLFontGL::NORMAL);
itemp->getColumn(LIST_VISIBLE_ONLINE)->setValue(info->isRightGrantedTo(LLRelationship::GRANT_ONLINE_STATUS));
itemp->getColumn(LIST_VISIBLE_MAP)->setValue(info->isRightGrantedTo(LLRelationship::GRANT_MAP_LOCATION));
itemp->getColumn(LIST_EDIT_MINE)->setValue(info->isRightGrantedTo(LLRelationship::GRANT_MODIFY_OBJECTS));
//Notes in the original code imply this may not always work. Good to know. -HgB
itemp->getColumn(LIST_VISIBLE_ONLINE_THEIRS)->setValue(info->isRightGrantedFrom(LLRelationship::GRANT_ONLINE_STATUS));
itemp->getColumn(LIST_VISIBLE_MAP_THEIRS)->setValue(info->isRightGrantedFrom(LLRelationship::GRANT_MAP_LOCATION));
itemp->getColumn(LIST_EDIT_THEIRS)->setValue(info->isRightGrantedFrom(LLRelationship::GRANT_MODIFY_OBJECTS));
S32 change_generation = have_name ? info->getChangeSerialNum() : -1;
itemp->getColumn(LIST_FRIEND_UPDATE_GEN)->setValue(change_generation);
// enable this item, in case it was disabled after user input
itemp->setEnabled(TRUE);
mFriendsList->setNeedsSort();
// Do not resort, this function can be called frequently.
return have_name;
}
示例4: RevokeSelected
void JCFloaterAnimList::RevokeSelected(void *userdata )
{
JCFloaterAnimList *self = (JCFloaterAnimList*)userdata;
LLDynamicArray<LLUUID> ids;
std::vector< LLScrollListItem * > items = self->mAnimList->getAllSelected();
for( std::vector< LLScrollListItem * >::iterator itr = items.begin(); itr != items.end(); itr++ )
{
LLScrollListItem *item = *itr;
const LLUUID &id = item->getColumn(LIST_OBJECT_UUID)->getValue().asUUID();
if( ids.find(id) == LLDynamicArray<LLUUID>::FAIL )
{
ids.put(id);
}
}
if( !ids.empty() )
{
for(LLDynamicArray<LLUUID>::iterator itr = ids.begin(); itr != ids.end(); ++itr)
{
LLUUID id = *itr;
LLMessageSystem* msg = gMessageSystem;
msg->newMessageFast(_PREHASH_RevokePermissions);
msg->nextBlockFast(_PREHASH_AgentData);
msg->addUUIDFast(_PREHASH_AgentID, gAgent.getID());
msg->addUUIDFast(_PREHASH_SessionID, gAgent.getSessionID());
msg->nextBlockFast(_PREHASH_Data);
msg->addUUIDFast(_PREHASH_ObjectID, id);
msg->addU32Fast(_PREHASH_ObjectPermissions, U32_MAX);
gAgent.sendReliableMessage();
}
}
}
示例5: onList
void LLFloaterHUD::onList(LLUICtrl* ctrl, void* userdata)
{
LLFloaterHUD* self = (LLFloaterHUD*)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);
}
}
示例6: getXML
// virtual
LLXMLNodePtr LLComboBox::getXML(bool save_children) const
{
LLXMLNodePtr node = LLUICtrl::getXML();
node->setName(LL_COMBO_BOX_TAG);
// Attributes
node->createChild("allow_text_entry", TRUE)->setBoolValue(mAllowTextEntry);
node->createChild("max_chars", TRUE)->setIntValue(mMaxChars);
// Contents
std::vector<LLScrollListItem*> data_list = mList->getAllData();
std::vector<LLScrollListItem*>::iterator data_itor;
for (data_itor = data_list.begin(); data_itor != data_list.end(); ++data_itor)
{
LLScrollListItem* item = *data_itor;
LLScrollListCell* cell = item->getColumn(0);
if (cell)
{
LLXMLNodePtr item_node = node->createChild("combo_item", FALSE);
LLSD value = item->getValue();
item_node->createChild("value", TRUE)->setStringValue(value.asString());
item_node->createChild("enabled", TRUE)->setBoolValue(item->getEnabled());
item_node->setStringValue(cell->getValue().asString());
}
}
return node;
}
示例7: onStart
void LLFloaterNewIM::onStart(void* userdata)
{
LLFloaterNewIM* self = (LLFloaterNewIM*) userdata;
LLScrollListItem* item = self->mSelectionList->getFirstSelected();
if(item)
{
const LLScrollListCell* cell = item->getColumn(0);
std::string name(cell->getValue());
// *NOTE: Do a live detrmination of what type of session it
// should be. If we restrict the new im panel to online users,
// then we can remove some of this code.
EInstantMessage type;
EInstantMessage* t = (EInstantMessage*)item->getUserdata();
if(t) type = (*t);
else type = LLIMMgr::defaultIMTypeForAgent(item->getUUID());
gIMMgr->addSession(name, type, item->getUUID());
make_ui_sound("UISndStartIM");
}
else
{
make_ui_sound("UISndInvalidOp");
}
}
示例8: onNameCache
// callback from the name cache with an owner name to add to the list
void LLPanelScriptLimitsRegionMemory::onNameCache(
const LLUUID& id,
const std::string& first_name,
const std::string& last_name)
{
std::string name = first_name + " " + last_name;
LLScrollListCtrl *list = getChild<LLScrollListCtrl>("scripts_list");
if(!list)
{
return;
}
std::vector<LLSD>::iterator id_itor;
for (id_itor = mObjectListItems.begin(); id_itor != mObjectListItems.end(); ++id_itor)
{
LLSD element = *id_itor;
if(element["owner_id"].asUUID() == id)
{
LLScrollListItem* item = list->getItem(element["id"].asUUID());
if(item)
{
item->getColumn(3)->setValue(LLSD(name));
element["columns"][3]["value"] = name;
}
}
}
}
示例9: onActivate
// static
void HBFloaterGroupTitles::onActivate(void* userdata)
{
HBFloaterGroupTitles* self = (HBFloaterGroupTitles*) userdata;
LLScrollListItem *item = self->mTitlesList->getFirstSelected();
if (!item) return;
// Set the group if needed.
LLUUID old_group_id = gAgent.getGroupID();
LLUUID group_id = item->getColumn(LIST_GROUP_ID)->getValue().asUUID();
if (group_id != old_group_id)
{
LLMessageSystem* msg = gMessageSystem;
msg->newMessageFast(_PREHASH_ActivateGroup);
msg->nextBlockFast(_PREHASH_AgentData);
msg->addUUIDFast(_PREHASH_AgentID, gAgent.getID());
msg->addUUIDFast(_PREHASH_SessionID, gAgent.getSessionID());
msg->addUUIDFast(_PREHASH_GroupID, group_id);
gAgent.sendReliableMessage();
}
// Set the title
LLGroupMgr::getInstance()->sendGroupTitleUpdate(group_id, item->getUUID());
// Force a refresh via the observer
if (group_id == LLUUID::null)
{
group_id = old_group_id;
}
LLGroupMgr::getInstance()->sendGroupTitlesRequest(group_id);
}
示例10: updateSelectionInfo
void LLFloaterTopObjects::updateSelectionInfo()
{
LLScrollListCtrl* list = getChild<LLScrollListCtrl>("objects_list");
if (!list) return;
LLUUID object_id = list->getCurrentID();
if (object_id.isNull()) return;
std::string object_id_string = object_id.asString();
getChild<LLUICtrl>("id_editor")->setValue(LLSD(object_id_string));
LLScrollListItem* sli = list->getFirstSelected();
llassert(sli);
if (sli)
{
getChild<LLUICtrl>("object_name_editor")->setValue(sli->getColumn(1)->getValue().asString());
getChild<LLUICtrl>("owner_name_editor")->setValue(sli->getColumn(2)->getValue().asString());
}
}
示例11: getSelectedAvatarData
static void getSelectedAvatarData(const LLScrollListCtrl* from, std::vector<std::string>& avatar_names, std::vector<LLUUID>& avatar_ids)
{
std::vector<LLScrollListItem*> items = from->getAllSelected();
for (std::vector<LLScrollListItem*>::iterator iter = items.begin(); iter != items.end(); ++iter)
{
LLScrollListItem* item = *iter;
if (item->getUUID().notNull())
{
avatar_names.push_back(item->getColumn(0)->getValue().asString());
avatar_ids.push_back(item->getUUID());
}
}
}
示例12: updateFriendItem
// propagate actual relationship to UI.
// Does not resort the UI list because it can be called frequently. JC
BOOL LLPanelFriends::updateFriendItem(const LLUUID& agent_id, const LLRelationship* info)
{
if (!info) return FALSE;
LLScrollListItem* itemp = mFriendsList->getItem(agent_id);
if (!itemp) return FALSE;
bool isOnlineSIP = LLVoiceClient::getInstance()->isOnlineSIP(itemp->getUUID());
bool isOnline = info->isOnline();
std::string fullname;
BOOL have_name = gCacheName->getFullName(agent_id, fullname);
if (have_name)
{
if (LLAvatarNameCache::useDisplayNames() && !gSavedSettings.getBOOL("LegacyNamesForFriends"))
{
LLAvatarName avatar_name;
if (LLAvatarNameCache::get(agent_id, &avatar_name))
{
if (LLAvatarNameCache::useDisplayNames() == 2)
{
fullname = avatar_name.mDisplayName;
}
else
{
fullname = avatar_name.getNames();
}
}
}
}
// Name of the status icon to use
std::string statusIcon;
if(isOnline)
{
statusIcon = "icon_avatar_online.tga";
}
else if(isOnlineSIP)
{
statusIcon = ONLINE_SIP_ICON_NAME;
}
itemp->getColumn(LIST_ONLINE_STATUS)->setValue(statusIcon);
itemp->getColumn(LIST_FRIEND_NAME)->setValue(fullname);
// render name of online friends in bold text
((LLScrollListText*)itemp->getColumn(LIST_FRIEND_NAME))->setFontStyle((isOnline || isOnlineSIP) ? LLFontGL::BOLD : LLFontGL::NORMAL);
itemp->getColumn(LIST_VISIBLE_ONLINE)->setValue(info->isRightGrantedTo(LLRelationship::GRANT_ONLINE_STATUS));
itemp->getColumn(LIST_VISIBLE_MAP)->setValue(info->isRightGrantedTo(LLRelationship::GRANT_MAP_LOCATION));
itemp->getColumn(LIST_EDIT_MINE)->setValue(info->isRightGrantedTo(LLRelationship::GRANT_MODIFY_OBJECTS));
S32 change_generation = have_name ? info->getChangeSerialNum() : -1;
itemp->getColumn(LIST_FRIEND_UPDATE_GEN)->setValue(change_generation);
// enable this item, in case it was disabled after user input
itemp->setEnabled(TRUE);
// Do not resort, this function can be called frequently.
return have_name;
}
示例13: getHighlightedItemInx
void LLNameListCtrl::mouseOverHighlightNthItem( S32 target_index )
{
S32 cur_index = getHighlightedItemInx();
if (cur_index != target_index)
{
if(0 <= cur_index && cur_index < (S32)getItemList().size())
{
LLScrollListItem* item = getItemList()[cur_index];
LLScrollListText* cell = dynamic_cast<LLScrollListText*>(item->getColumn(mNameColumnIndex));
if(cell)
cell->setTextWidth(cell->getTextWidth() + info_icon_size);
}
if(target_index != -1)
{
LLScrollListItem* item = getItemList()[target_index];
LLScrollListText* cell = dynamic_cast<LLScrollListText*>(item->getColumn(mNameColumnIndex));
if(cell)
cell->setTextWidth(cell->getTextWidth() - info_icon_size);
}
}
LLScrollListCtrl::mouseOverHighlightNthItem(target_index);
}
示例14: onGroupList
void LLPanelGroups::onGroupList()
{
enableButtons();
LLScrollListCtrl *group_list = getChild<LLScrollListCtrl>("group list");
if(!group_list)
return;
LLScrollListItem *item = group_list->getFirstSelected();
if(!item)
return;
const LLUUID group_id = item->getValue().asUUID();
if(group_id.isNull())
return;
LLGroupData group_data;
if(!gAgent.getGroupData(group_id,group_data))
return;
bool list_in_profile = item->getColumn(1)->getValue().asBoolean();
bool receive_chat = item->getColumn(2)->getValue().asBoolean();
bool recieve_notify = item->getColumn(3)->getValue().asBoolean();
bool update_floaters = false;
if(gIMMgr->getIgnoreGroup(group_id) == receive_chat)
{
gIMMgr->updateIgnoreGroup(group_id, !receive_chat);
update_floaters = true;
}
if( (bool)group_data.mListInProfile != list_in_profile ||
(bool)group_data.mAcceptNotices != recieve_notify )
{
gAgent.setUserGroupFlags(group_id, recieve_notify, list_in_profile);
}
else if(update_floaters) //gAgent.setUserGroupFlags already calls update_group_floaters
update_group_floaters(group_id);
}
示例15: OpenProfile
void JCFloaterAnimList::OpenProfile(void *userdata )
{
JCFloaterAnimList *self = (JCFloaterAnimList*)userdata;
std::vector< LLScrollListItem * > items = self->mAnimList->getAllSelected();
if(!items.empty())
{
//LLVOAvatar* avatarp = gAgent.getAvatarObject();
for(std::vector< LLScrollListItem * >::iterator itr = items.begin(); itr != items.end(); ++itr)
{
LLScrollListItem *item = *itr;
const LLUUID &object_id = item->getColumn(LIST_OBJECT_UUID)->getValue().asUUID();
LLFloaterAvatarInfo::showFromDirectory(self->mObjectOwners[object_id].owner_id);
}
}
}