// virtual
void LLFloaterIMPanel::changed(U32 mask)
{
	if (mask & (REMOVE|ADD|POWERS|ONLINE)) // Fix remove/add and map friend choices
	{
		U8 did(0);
		LLComboBox& flyout = *getChild<LLComboBox>("instant_message_flyout");
		if (mask & POWERS)
		{
			// Powers changed, unfortunately, we never know which.
			add_map_option(flyout, getString("find on map"), mOtherParticipantUUID, did);
		}
		if (mask & ONLINE)
		{
			if (~did & 0x01)
				add_map_option(flyout, getString("find on map"), mOtherParticipantUUID, did);
			/* Singu TODO: Chat UI - Online icons?
			if (LLAvatarTracker::instance().isBuddyOnline(mOtherParticipantUUID))
				// Show online icon here?
			else
				// Show offline icon here?
			*/
		}
		if (mask & (REMOVE|ADD) || did & 0x02) // Only rebuild if necessary
			rebuildDynamics(&flyout);
	}
}
Exemple #2
0
// virtual
void LLFloaterIMPanel::changed(U32 mask)
{
	if (mask & (REMOVE|ADD)) // Fix remove/add friend choices
		rebuildDynamics(getChild<LLComboBox>("instant_message_flyout"));
	/* Singu TODO: Chat UI - Online icons?
	if (mask & ONLINE)
		// Show online icon here
	else
		// Show offline icon here
	*/
}
// virtual
void LLFloaterIMPanel::onChangeDetailed(const LLMute& mute)
{
	if (mute.mID == mOtherParticipantUUID)
		rebuildDynamics(getChild<LLComboBox>("instant_message_flyout"));
}