本文整理汇总了C++中LLViewerObject::flagTemporaryOnRez方法的典型用法代码示例。如果您正苦于以下问题:C++ LLViewerObject::flagTemporaryOnRez方法的具体用法?C++ LLViewerObject::flagTemporaryOnRez怎么用?C++ LLViewerObject::flagTemporaryOnRez使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类LLViewerObject
的用法示例。
在下文中一共展示了LLViewerObject::flagTemporaryOnRez方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: results
void FSAreaSearch::results()
{
if (!getVisible()) return;
if (mRequested > 0 && mLastUpdateTimer.getElapsedTimeF32() < min_refresh_interval) return;
const LLUUID selected = mResultList->getCurrentID();
const S32 scrollpos = mResultList->getScrollPos();
mResultList->deleteAllItems();
S32 i;
S32 total = gObjectList.getNumObjects();
LLViewerRegion* our_region = gAgent.getRegion();
for (i = 0; i < total; i++)
{
LLViewerObject *objectp = gObjectList.getObject(i);
if (objectp)
{
if (objectp->getRegion() == our_region && !objectp->isAvatar() && objectp->isRoot() &&
!objectp->flagTemporary() && !objectp->flagTemporaryOnRez())
{
LLUUID object_id = objectp->getID();
if (mObjectDetails.count(object_id) == 0)
{
requestIfNeeded(objectp);
}
else
{
AObjectDetails* details = &mObjectDetails[object_id];
std::string object_name = details->name;
std::string object_desc = details->desc;
std::string object_owner;
std::string object_group;
gCacheName->getFullName(details->owner_id, object_owner);
gCacheName->getGroupName(details->group_id, object_group);
if (object_name != request_string)
{
if ((mSearchedName == "" || boost::ifind_first(object_name, mSearchedName)) &&
(mSearchedDesc == "" || boost::ifind_first(object_desc, mSearchedDesc)) &&
(mSearchedOwner == "" || boost::ifind_first(object_owner, mSearchedOwner)) &&
(mSearchedGroup == "" || boost::ifind_first(object_group, mSearchedGroup)))
{
LLSD element;
element["id"] = object_id;
element["columns"][LIST_OBJECT_NAME]["column"] = "Name";
element["columns"][LIST_OBJECT_NAME]["type"] = "text";
element["columns"][LIST_OBJECT_NAME]["value"] = details->name;
element["columns"][LIST_OBJECT_DESC]["column"] = "Description";
element["columns"][LIST_OBJECT_DESC]["type"] = "text";
element["columns"][LIST_OBJECT_DESC]["value"] = details->desc;
element["columns"][LIST_OBJECT_OWNER]["column"] = "Owner";
element["columns"][LIST_OBJECT_OWNER]["type"] = "text";
element["columns"][LIST_OBJECT_OWNER]["value"] = object_owner;
element["columns"][LIST_OBJECT_GROUP]["column"] = "Group";
element["columns"][LIST_OBJECT_GROUP]["type"] = "text";
element["columns"][LIST_OBJECT_GROUP]["value"] = object_group;
mResultList->addElement(element, ADD_BOTTOM);
}
}
}
}
}
}
mResultList->updateSort();
mResultList->selectByID(selected);
mResultList->setScrollPos(scrollpos);
mCounterText->setText(llformat("%d listed/%d pending/%d total", mResultList->getItemCount(), mRequested, mObjectDetails.size()));
mLastUpdateTimer.reset();
}
示例2: results
void JCFloaterAreaSearch::results()
{
if (!getVisible()) return;
if (mPendingObjects.size() > 0 && mLastUpdateTimer.getElapsedTimeF32() < min_refresh_interval) return;
//llinfos << "results()" << llendl;
uuid_vec_t selected = mResultList->getSelectedIDs();
S32 scrollpos = mResultList->getScrollPos();
mResultList->deleteAllItems();
S32 i;
S32 total = gObjectList.getNumObjects();
LLViewerRegion* our_region = gAgent.getRegion();
for (i = 0; i < total; i++)
{
LLViewerObject *objectp = gObjectList.getObject(i);
if (objectp)
{
if (objectp->getRegion() == our_region && !objectp->isAvatar() && objectp->isRoot() &&
!objectp->flagTemporary() && !objectp->flagTemporaryOnRez())
{
LLUUID object_id = objectp->getID();
if(!requestIfNeeded(object_id))
{
std::map<LLUUID,ObjectData>::iterator it = mCachedObjects.find(object_id);
if(it != mCachedObjects.end())
{
//llinfos << "all entries are \"\" or we have data" << llendl;
std::string object_name = it->second.name;
std::string object_desc = it->second.desc;
std::string object_owner;
std::string object_group;
gCacheName->getFullName(it->second.owner_id, object_owner);
gCacheName->getGroupName(it->second.group_id, object_group);
//llinfos << "both names are loaded or aren't needed" << llendl;
std::string onU = object_owner;
std::string cnU = object_group;
LLStringUtil::toLower(object_name);
LLStringUtil::toLower(object_desc);
LLStringUtil::toLower(object_owner);
LLStringUtil::toLower(object_group);
if ((mFilterStrings[LIST_OBJECT_NAME].empty() || object_name.find(mFilterStrings[LIST_OBJECT_NAME]) != -1) &&
(mFilterStrings[LIST_OBJECT_DESC].empty() || object_desc.find(mFilterStrings[LIST_OBJECT_DESC]) != -1) &&
(mFilterStrings[LIST_OBJECT_OWNER].empty() || object_owner.find(mFilterStrings[LIST_OBJECT_OWNER]) != -1) &&
(mFilterStrings[LIST_OBJECT_GROUP].empty() || object_group.find(mFilterStrings[LIST_OBJECT_GROUP]) != -1))
{
//llinfos << "pass" << llendl;
LLSD element;
element["id"] = object_id;
element["columns"][LIST_OBJECT_NAME]["column"] = "Name";
element["columns"][LIST_OBJECT_NAME]["type"] = "text";
element["columns"][LIST_OBJECT_NAME]["value"] = it->second.name;
element["columns"][LIST_OBJECT_DESC]["column"] = "Description";
element["columns"][LIST_OBJECT_DESC]["type"] = "text";
element["columns"][LIST_OBJECT_DESC]["value"] = it->second.desc;
element["columns"][LIST_OBJECT_OWNER]["column"] = "Owner";
element["columns"][LIST_OBJECT_OWNER]["type"] = "text";
element["columns"][LIST_OBJECT_OWNER]["value"] = onU;
element["columns"][LIST_OBJECT_GROUP]["column"] = "Group";
element["columns"][LIST_OBJECT_GROUP]["type"] = "text";
element["columns"][LIST_OBJECT_GROUP]["value"] = cnU; //ai->second;
mResultList->addElement(element, ADD_BOTTOM);
}
}
}
}
}
}
mResultList->updateSort();
mResultList->selectMultiple(selected);
mResultList->setScrollPos(scrollpos);
mCounterText->setText(llformat("%d listed/%d pending/%d total", mResultList->getItemCount(), mPendingObjects.size(), mPendingObjects.size()+mCachedObjects.size()));
mLastUpdateTimer.reset();
}
示例3: results
// static
void JCFloaterAreaSearch::results()
{
if (!sInstance) return;
if (!(sInstance->getVisible())) return;
if (sRequested > 0 && sInstance->mLastUpdateTimer.getElapsedTimeF32() < min_refresh_interval) return;
//llinfos << "results()" << llendl;
uuid_vec_t selected = sInstance->mResultList->getSelectedIDs();
S32 scrollpos = sInstance->mResultList->getScrollPos();
sInstance->mResultList->deleteAllItems();
S32 i;
S32 total = gObjectList.getNumObjects();
LLViewerRegion* our_region = gAgent.getRegion();
for (i = 0; i < total; i++)
{
LLViewerObject *objectp = gObjectList.getObject(i);
if (objectp)
{
if (objectp->getRegion() == our_region && !objectp->isAvatar() && objectp->isRoot() &&
!objectp->flagTemporary() && !objectp->flagTemporaryOnRez())
{
LLUUID object_id = objectp->getID();
if (sObjectDetails.count(object_id) == 0)
{
//llinfos << "not all entries are \"\"" << llendl;
requestIfNeeded(objectp);
}
else
{
//llinfos << "all entries are \"\" or we have data" << llendl;
AObjectDetails* details = &sObjectDetails[object_id];
std::string object_name = details->name;
std::string object_desc = details->desc;
std::string object_owner;
std::string object_group;
gCacheName->getFullName(details->owner_id, object_owner);
gCacheName->getGroupName(details->group_id, object_group);
if (object_name != request_string)
{
//llinfos << "both names are loaded or aren't needed" << llendl;
std::string onU = object_owner;
std::string cnU = object_group;
LLStringUtil::toLower(object_name);
LLStringUtil::toLower(object_desc);
LLStringUtil::toLower(object_owner);
LLStringUtil::toLower(object_group);
if ((sSearchedName == "" || object_name.find(sSearchedName) != -1) &&
(sSearchedDesc == "" || object_desc.find(sSearchedDesc) != -1) &&
(sSearchedOwner == "" || object_owner.find(sSearchedOwner) != -1) &&
(sSearchedGroup == "" || object_group.find(sSearchedGroup) != -1))
{
//llinfos << "pass" << llendl;
LLSD element;
element["id"] = object_id;
element["columns"][LIST_OBJECT_NAME]["column"] = "Name";
element["columns"][LIST_OBJECT_NAME]["type"] = "text";
element["columns"][LIST_OBJECT_NAME]["value"] = details->name; //item->getName();//ai->second//"avatar_icon";
element["columns"][LIST_OBJECT_DESC]["column"] = "Description";
element["columns"][LIST_OBJECT_DESC]["type"] = "text";
element["columns"][LIST_OBJECT_DESC]["value"] = details->desc; //ai->second;
element["columns"][LIST_OBJECT_OWNER]["column"] = "Owner";
element["columns"][LIST_OBJECT_OWNER]["type"] = "text";
element["columns"][LIST_OBJECT_OWNER]["value"] = onU; //ai->first;
element["columns"][LIST_OBJECT_GROUP]["column"] = "Group";
element["columns"][LIST_OBJECT_GROUP]["type"] = "text";
element["columns"][LIST_OBJECT_GROUP]["value"] = cnU; //ai->second;
sInstance->mResultList->addElement(element, ADD_BOTTOM);
}
}
}
}
}
}
sInstance->mResultList->updateSort();
sInstance->mResultList->selectMultiple(selected);
sInstance->mResultList->setScrollPos(scrollpos);
sInstance->mCounterText->setText(llformat("%d listed/%d pending/%d total", sInstance->mResultList->getItemCount(), sRequested, sObjectDetails.size()));
sInstance->mLastUpdateTimer.reset();
}
示例4: results
void JCFloaterAreaSearch::results()
{
if(!sInstance)return;
if(!(sInstance->getVisible()))return;
//mark("results()");
LLDynamicArray<LLUUID> selected = sInstance->mResultList->getSelectedIDs();
S32 scrollpos = sInstance->mResultList->getScrollPos();
sInstance->mResultList->deleteAllItems();
S32 i;
S32 total = gObjectList.getNumObjects();
LLViewerRegion* our_region = gAgent.getRegion();
for (i = 0; i < total; i++)
{
LLViewerObject *objectp = gObjectList.getObject(i);
if (objectp)
{
if(objectp->getRegion() == our_region)
{
LLUUID object_id = objectp->getID();
if(objectp->isRoot() && !objectp->flagTemporary() && !objectp->flagTemporaryOnRez())
{
//mark("isRoot()");
bool emptyfields = (searched_name == "" && searched_desc == "" && searched_owner == "" && searched_group == "");
if(!emptyfields && mObjectDetails.count( object_id ) == 0)
{
//mark("not all entries are \"\"");
requestifneed(objectp);
//obj_counts[objectp->getPCode()]++;
}else
{
//mark("all entries are \"\" or we have data");
AObjectDetails* details = &mObjectDetails[object_id];
std::string object_name = details->name;
std::string object_desc = details->desc;
std::string object_owner;
std::string object_group;
gCacheName->getFullName(details->owner_id,object_owner);
gCacheName->getGroupName(details->group_id,object_group);
if(
emptyfields || object_name != request_string
)
{
//mark("both names are loaded or aren't needed");
std::string onU = object_owner;
std::string cnU = object_group;
LLStringUtil::toLower(object_name);
LLStringUtil::toLower(object_desc);
LLStringUtil::toLower(object_owner);
LLStringUtil::toLower(object_group);
if(
(searched_name == "" || object_name.find(searched_name) != -1) &&
(searched_desc == "" || object_desc.find(searched_desc) != -1) &&
(searched_owner == "" || object_owner.find(searched_owner) != -1) &&
(searched_group == "" || object_group.find(searched_group) != -1) &&
(!payable_object || (bool)objectp->flagTakesMoney() == payable_object)
)
{
requestifneed(objectp);
//mark("pass");
LLSD element;
element["id"] = object_id;
element["columns"][LIST_OBJECT_NAME]["column"] = "Name";
element["columns"][LIST_OBJECT_NAME]["type"] = "text";
element["columns"][LIST_OBJECT_NAME]["color"] = gColors.getColor("DefaultListText").getValue();
element["columns"][LIST_OBJECT_NAME]["value"] = details->name;//item->getName();//ai->second//"avatar_icon";
element["columns"][LIST_OBJECT_DESC]["column"] = "Description";
element["columns"][LIST_OBJECT_DESC]["type"] = "text";
element["columns"][LIST_OBJECT_DESC]["value"] = details->desc;//ai->second;
element["columns"][LIST_OBJECT_DESC]["color"] = gColors.getColor("DefaultListText").getValue();
element["columns"][LIST_OBJECT_OWNER]["column"] = "Owner";
element["columns"][LIST_OBJECT_OWNER]["type"] = "text";
element["columns"][LIST_OBJECT_OWNER]["value"] = onU;//aifirst;
element["columns"][LIST_OBJECT_OWNER]["color"] = gColors.getColor("DefaultListText").getValue();
element["columns"][LIST_OBJECT_GROUP]["column"] = "Group";
element["columns"][LIST_OBJECT_GROUP]["type"] = "text";
element["columns"][LIST_OBJECT_GROUP]["value"] = cnU;//ai->second;
element["columns"][LIST_OBJECT_GROUP]["color"] = gColors.getColor("DefaultListText").getValue();
sInstance->mResultList->addElement(element, ADD_BOTTOM);
}
}
}
}
}
}
}
sInstance->mResultList->sortItems();
sInstance->mResultList->selectMultiple(selected);
sInstance->mResultList->setScrollPos(scrollpos);
}
示例5: draw
void JCFloaterAreaSearch::draw()
{
if (sTracking)
{
F32 dist = 3.0f;
if (LLTracker::isTracking(NULL) == LLTracker::TRACKING_LOCATION)
{
dist = fabsf((F32)(LLTracker::getTrackedPositionGlobal() -
sTrackingLocation).magVec());
}
if (dist > 2.0f)
{
// Tracker stopped or tracking another location
sTracking = false;
sIsDirty = true;
sTrackingInfoLine.clear();
}
}
if (sIsDirty && getVisible() && mResultList &&
!(sRequested > 0 &&
mLastUpdateTimer.getElapsedTimeF32() < min_refresh_interval))
{
LLDynamicArray<LLUUID> selected = mResultList->getSelectedIDs();
S32 scrollpos = mResultList->getScrollPos();
mResultList->deleteAllItems();
S32 i;
S32 total = gObjectList.getNumObjects();
LLViewerRegion* our_region = gAgent.getRegion();
for (i = 0; i < total; i++)
{
LLViewerObject *objectp = gObjectList.getObject(i);
if (objectp)
{
if (objectp->getRegion() == our_region &&
!objectp->isAvatar() && objectp->isRoot() &&
!objectp->flagTemporary() && !objectp->flagTemporaryOnRez())
{
LLUUID object_id = objectp->getID();
if (sObjectDetails.count(object_id) == 0)
{
requestIfNeeded(objectp);
}
else
{
AObjectDetails* details = &sObjectDetails[object_id];
std::string object_name = details->name;
std::string object_desc = details->desc;
std::string object_owner;
std::string object_group;
gCacheName->getFullName(details->owner_id, object_owner);
gCacheName->getGroupName(details->group_id, object_group);
if (object_name != REQUEST_STRING)
{
std::string onU = object_owner;
std::string cnU = object_group;
LLStringUtil::toLower(object_name);
LLStringUtil::toLower(object_desc);
LLStringUtil::toLower(object_owner);
LLStringUtil::toLower(object_group);
if ((sSearchedName.empty() || object_name.find(sSearchedName) != -1) &&
(sSearchedDesc.empty() || object_desc.find(sSearchedDesc) != -1) &&
(sSearchedOwner.empty() || object_owner.find(sSearchedOwner) != -1) &&
(sSearchedGroup.empty() || object_group.find(sSearchedGroup) != -1))
{
LLSD element;
element["id"] = object_id;
element["columns"][LIST_OBJECT_NAME]["column"] = "Name";
element["columns"][LIST_OBJECT_NAME]["type"] = "text";
element["columns"][LIST_OBJECT_NAME]["value"] = details->name; //item->getName();//ai->second//"avatar_icon";
element["columns"][LIST_OBJECT_DESC]["column"] = "Description";
element["columns"][LIST_OBJECT_DESC]["type"] = "text";
element["columns"][LIST_OBJECT_DESC]["value"] = details->desc; //ai->second;
element["columns"][LIST_OBJECT_OWNER]["column"] = "Owner";
element["columns"][LIST_OBJECT_OWNER]["type"] = "text";
element["columns"][LIST_OBJECT_OWNER]["value"] = onU; //ai->first;
element["columns"][LIST_OBJECT_GROUP]["column"] = "Group";
element["columns"][LIST_OBJECT_GROUP]["type"] = "text";
element["columns"][LIST_OBJECT_GROUP]["value"] = cnU; //ai->second;
if (sTracking && object_id == sTrackingObjectID)
{
element["columns"][LIST_OBJECT_NAME]["font-style"] = "BOLD";
element["columns"][LIST_OBJECT_DESC]["font-style"] = "BOLD";
element["columns"][LIST_OBJECT_OWNER]["font-style"] = "BOLD";
element["columns"][LIST_OBJECT_GROUP]["font-style"] = "BOLD";
}
mResultList->addElement(element, ADD_BOTTOM);
}
}
}
}
}
}
mResultList->sortItems();
mResultList->selectMultiple(selected);
mResultList->setScrollPos(scrollpos);
if (!sTracking)
{
//.........这里部分代码省略.........
示例6: results
// static
void JCFloaterAreaSearch::results()
{
//sanity checks
if (!sInstance) return;
if (!(sInstance->getVisible())) return;
if (sRequested > 0 && sInstance->mLastUpdateTimer.getElapsedTimeF32() < min_refresh_interval) return;
//save our position and clear the list
LLDynamicArray<LLUUID> selected = sInstance->mResultList->getSelectedIDs();
S32 scrollpos = sInstance->mResultList->getScrollPos();
sInstance->mResultList->deleteAllItems();
//check through all of the objects in the region
S32 i;
S32 total = gObjectList.getNumObjects();
LLViewerRegion* our_region = gAgent.getRegion();
for (i = 0; i < total; i++)
{
LLViewerObject *objectp = gObjectList.getObject(i);
//check if this is a valid and non-temporary root prim
if (objectp &&
objectp->getRegion() == our_region && !objectp->isAvatar() && objectp->isRoot() &&
!objectp->flagTemporary() && !objectp->flagTemporaryOnRez() && !objectp->isAttachment())
{
LLUUID object_id = objectp->getID();
//request information about this prim if necessary
if (sObjectDetails.count(object_id) == 0)
{
requestIfNeeded(objectp);
}
else
{
AObjectDetails* details = &sObjectDetails[object_id];
std::string object_owner;
std::string object_group;
bool haveOwner = gCacheName->getFullName(details->owner_id, object_owner);
bool haveGroup = gCacheName->getGroupName(details->group_id, object_group);
//check that this object is ready
if (details->ready)
{
bool found = true;
//check that all of the fields are either a match or not required
if (found && sSearchingName) found = (details->name.find(sSearchedName) != -1);
if (found && sSearchingDesc) found = (details->desc.find(sSearchedDesc) != -1);
if (found && sSearchingOwner) found = (haveOwner && object_owner.find(sSearchedOwner) != -1);
if (found && sSearchingGroup) found = (haveGroup && object_group.find(sSearchedGroup) != -1);
if(found)
{
LLSD element;
element["id"] = object_id;
element["columns"][LIST_OBJECT_NAME]["column"] = "Name";
element["columns"][LIST_OBJECT_NAME]["value"] = details->name;
element["columns"][LIST_OBJECT_DESC]["column"] = "Description";
element["columns"][LIST_OBJECT_DESC]["value"] = details->desc;
element["columns"][LIST_OBJECT_OWNER]["column"] = "Owner";
element["columns"][LIST_OBJECT_OWNER]["value"] = object_owner;
element["columns"][LIST_OBJECT_GROUP]["column"] = "Group";
element["columns"][LIST_OBJECT_GROUP]["value"] = object_group;
sInstance->mResultList->addElement(element, ADD_BOTTOM);
}
}
}
}
}
sInstance->mResultList->sortItems();
sInstance->mResultList->selectMultiple(selected);
sInstance->mResultList->setScrollPos(scrollpos);
sInstance->mCounterText->setText(llformat("%d listed/%d pending/%d total", sInstance->mResultList->getItemCount(), sRequested, sObjectDetails.size()));
sInstance->mLastUpdateTimer.reset();
}