diff options
Diffstat (limited to 'indra')
| -rw-r--r-- | indra/newview/llpanelavatar.cpp | 20 | ||||
| -rw-r--r-- | indra/newview/llpanelavatar.h | 1 | ||||
| -rw-r--r-- | indra/newview/skins/default/xui/en/panel_profile.xml | 8 | 
3 files changed, 21 insertions, 8 deletions
| diff --git a/indra/newview/llpanelavatar.cpp b/indra/newview/llpanelavatar.cpp index 94b2340c93..8a917a082c 100644 --- a/indra/newview/llpanelavatar.cpp +++ b/indra/newview/llpanelavatar.cpp @@ -625,8 +625,13 @@ void LLPanelAvatarProfile::processGroupProperties(const LLAvatarGroups* avatar_g  	getChild<LLUICtrl>("sl_groups")->setValue(groups);  } -void LLPanelAvatarProfile::got_full_name_callback( const LLUUID& id, const std::string& full_name, bool is_group )
 -{
 +static void got_full_name_callback( LLHandle<LLPanel> profile_panel_handle, const std::string& full_name ) +{ +	if (profile_panel_handle.isDead() ) return; + +	LLPanelAvatarProfile* profile_panel = dynamic_cast<LLPanelAvatarProfile*>(profile_panel_handle.get());
 +	if ( ! profile_panel ) return;
 +  	LLStringUtil::format_map_t args;
  	std::string name; @@ -641,9 +646,9 @@ void LLPanelAvatarProfile::got_full_name_callback( const LLUUID& id, const std::  	args["[NAME]"] = name;
 -	std::string linden_name = getString("name_text_args", args);
 -	getChild<LLUICtrl>("name_descr_text")->setValue(linden_name);
 -}
 +	std::string linden_name = profile_panel->getString("name_text_args", args);
 +	profile_panel->getChild<LLUICtrl>("name_descr_text")->setValue(linden_name); +}  void LLPanelAvatarProfile::onNameCache(const LLUUID& agent_id, const LLAvatarName& av_name)  { @@ -667,16 +672,17 @@ void LLPanelAvatarProfile::fillCommonData(const LLAvatarData* avatar_data)  	}  	// ask (asynchronously) for the avatar name +	LLHandle<LLPanel> profile_panel_handle = getHandle();
  	std::string full_name;
  	if (gCacheName->getFullName(avatar_data->agent_id, full_name))
  	{
  		// name in cache, call callback directly
 -		got_full_name_callback( avatar_data->agent_id, full_name, false );
 +		got_full_name_callback( profile_panel_handle, full_name );
  	}
  	else
  	{
  		// not in cache, lookup name 
 -		gCacheName->get(avatar_data->agent_id, false, boost::bind( &LLPanelAvatarProfile::got_full_name_callback, this, _1, _2, _3 ));
 +		gCacheName->get(avatar_data->agent_id, false, boost::bind( got_full_name_callback, profile_panel_handle, _2 ));
  	}
  	// get display name
 diff --git a/indra/newview/llpanelavatar.h b/indra/newview/llpanelavatar.h index 070fe4579a..b8cb62db43 100644 --- a/indra/newview/llpanelavatar.h +++ b/indra/newview/llpanelavatar.h @@ -209,7 +209,6 @@ protected:  	void onShareButtonClick();
  private:
 -	void got_full_name_callback( const LLUUID& id, const std::string& full_name, bool is_group );
  	void onNameCache(const LLUUID& agent_id, const LLAvatarName& av_name);
  	typedef std::map< std::string,LLUUID>	group_map_t;
 diff --git a/indra/newview/skins/default/xui/en/panel_profile.xml b/indra/newview/skins/default/xui/en/panel_profile.xml index 61e3bb354f..d36220385d 100644 --- a/indra/newview/skins/default/xui/en/panel_profile.xml +++ b/indra/newview/skins/default/xui/en/panel_profile.xml @@ -34,6 +34,14 @@  	 name="RegisterDateFormat">  	 [REG_DATE] ([AGE])  	</string> +  <string +  name="name_text_args"> +    [NAME] +  </string> +  <string +    name="display_name_text_args"> +    [DISPLAY_NAME] +  </string>      <layout_stack       name="layout"       orientation="vertical" | 
