コード例 #1
0
//static 
void LLAvatarActions::share(const LLUUID& id)
{
	LLSD key;
	LLSideTray::getInstance()->showPanel("sidepanel_inventory", key);


	LLUUID session_id = gIMMgr->computeSessionID(IM_NOTHING_SPECIAL,id);

	if (!gIMMgr->hasSession(session_id))
	{
		startIM(id);
	}

	if (gIMMgr->hasSession(session_id))
	{
		// we should always get here, but check to verify anyways
		LLIMModel::getInstance()->addMessage(session_id, SYSTEM_FROM, LLUUID::null, LLTrans::getString("share_alert"), false);
	}
}
コード例 #2
0
//VOXOX - JRT - 2009.07.26 
void CUserProfile::doDefaultAction( const std::string& contactId )
{
	Config & config = ConfigManager::getInstance().getCurrentConfig();

	if (config.getGeneralClickStartChat()) 
	{
		startIM( contactId );
	}
	else
	{
		Contact* contact = getCContactList().getContactById( contactId );

		if ( contact )
		{
			// Start free call by default
			if (contact->hasFreeCall() || contact->hasVoiceMail()) 
			{
				std::string phoneNumber = contact->getFirstFreePhoneNumber();
				if (phoneNumber.empty()) 
				{
					phoneNumber = contact->getFirstVoiceMailNumber();
				}

				if (phoneNumber.empty()) 
				{
					LOG_WARN("Could find neither a free phone number, nor a voice mail number");
				}
				else
				{
					makeCall(phoneNumber);
				}
				//End VoxOx
			} 
			else if (config.getGeneralClickCallCellPhone() && contact->hasCall()) 
			{
				makeCall( contactId );
			}
		}
	}
}