diff options
| -rw-r--r-- | indra/llui/lluictrlfactory.cpp | 15 | ||||
| -rw-r--r-- | indra/llui/lluictrlfactory.h | 4 | ||||
| -rw-r--r-- | indra/llxuixml/llregistry.h | 4 | ||||
| -rw-r--r-- | indra/newview/llfolderviewmodel.h | 2 | 
4 files changed, 15 insertions, 10 deletions
diff --git a/indra/llui/lluictrlfactory.cpp b/indra/llui/lluictrlfactory.cpp index 25e7a31e90..f64f33bc5e 100644 --- a/indra/llui/lluictrlfactory.cpp +++ b/indra/llui/lluictrlfactory.cpp @@ -278,13 +278,13 @@ const LLInitParam::BaseBlock& get_empty_param_block()  // adds a widget and its param block to various registries  //static  -void LLUICtrlFactory::registerWidget(const std::type_info* widget_type, const std::type_info* param_block_type, const std::string& tag) +void LLUICtrlFactory::registerWidget(const std::type_info* widget_type, const std::type_info* param_block_type, const std::string& name)  {  	// associate parameter block type with template .xml file -	std::string* existing_tag = LLWidgetNameRegistry::instance().getValue(param_block_type); -	if (existing_tag != NULL) +	std::string* existing_name = LLWidgetNameRegistry::instance().getValue(param_block_type); +	if (existing_name != NULL)  	{ -		if(*existing_tag != tag) +		if(*existing_name != name)  		{  			std::cerr << "Duplicate entry for T::Params, try creating empty param block in derived classes that inherit T::Params" << std::endl;  			// forcing crash here @@ -293,18 +293,19 @@ void LLUICtrlFactory::registerWidget(const std::type_info* widget_type, const st  		}  		else  		{ -			// widget already registered +			// widget already registered this name  			return;  		}  	} -	LLWidgetNameRegistry::instance().defaultRegistrar().add(param_block_type, tag); + +	LLWidgetNameRegistry::instance().defaultRegistrar().add(param_block_type, name);  	//FIXME: comment this in when working on schema generation  	//LLWidgetTypeRegistry::instance().defaultRegistrar().add(tag, widget_type);  	//LLDefaultParamBlockRegistry::instance().defaultRegistrar().add(widget_type, &get_empty_param_block<T>);  }  //static  -const std::string* LLUICtrlFactory::getWidgetTag(const std::type_info* widget_type) +const std::string* LLUICtrlFactory::getWidgetName(const std::type_info* widget_type)  {  	return LLWidgetNameRegistry::instance().getValue(widget_type);  } diff --git a/indra/llui/lluictrlfactory.h b/indra/llui/lluictrlfactory.h index d612ad5005..b441cb0c9d 100644 --- a/indra/llui/lluictrlfactory.h +++ b/indra/llui/lluictrlfactory.h @@ -105,7 +105,7 @@ private:  		ParamDefaults()  		{  			// look up template file for this param block... -			const std::string* param_block_tag = getWidgetTag(&typeid(PARAM_BLOCK)); +			const std::string* param_block_tag = getWidgetName(&typeid(PARAM_BLOCK));  			if (param_block_tag)  			{	// ...and if it exists, back fill values using the most specific template first  				PARAM_BLOCK params; @@ -303,7 +303,7 @@ private:  	} -	static const std::string* getWidgetTag(const std::type_info* widget_type); +	static const std::string* getWidgetName(const std::type_info* widget_type);  	// this exists to get around dependency on llview  	static void setCtrlParent(LLView* view, LLView* parent, S32 tab_group); diff --git a/indra/llxuixml/llregistry.h b/indra/llxuixml/llregistry.h index 36ce6a97b7..3e8d9267cc 100644 --- a/indra/llxuixml/llregistry.h +++ b/indra/llxuixml/llregistry.h @@ -302,6 +302,10 @@ public:  		virtual ~StaticRegistrar() {}  		StaticRegistrar(ref_const_key_t key, ref_const_value_t value)  		{ +			if (singleton_t::instance().exists(key)) +			{ +				llerrs << "Duplicate registry entry under key \"" << key << "\"" << llendl; +			}  			singleton_t::instance().mStaticScope->add(key, value);  		}  	}; diff --git a/indra/newview/llfolderviewmodel.h b/indra/newview/llfolderviewmodel.h index c3dcfed97c..74c8bb92ef 100644 --- a/indra/newview/llfolderviewmodel.h +++ b/indra/newview/llfolderviewmodel.h @@ -218,7 +218,7 @@ public:  	virtual S32 getSortVersion() = 0;  	virtual void setSortVersion(S32 version) = 0;  protected: -	friend LLFolderViewItem; +	friend class LLFolderViewItem;  	void setFolderViewItem(LLFolderViewItem* folder_view_item) { mFolderViewItem = folder_view_item;}  	LLFolderViewItem*	mFolderViewItem;  | 
