diff options
Diffstat (limited to 'indra/newview/llgrouplist.cpp')
| -rw-r--r-- | indra/newview/llgrouplist.cpp | 69 | 
1 files changed, 33 insertions, 36 deletions
| diff --git a/indra/newview/llgrouplist.cpp b/indra/newview/llgrouplist.cpp index f21b6e1085..c3e6e1c2dc 100644 --- a/indra/newview/llgrouplist.cpp +++ b/indra/newview/llgrouplist.cpp @@ -2,31 +2,25 @@   * @file llgrouplist.cpp   * @brief List of the groups the agent belongs to.   * - * $LicenseInfo:firstyear=2009&license=viewergpl$ - *  - * Copyright (c) 2009, Linden Research, Inc. - *  + * $LicenseInfo:firstyear=2009&license=viewerlgpl$   * Second Life Viewer Source Code - * The source code in this file ("Source Code") is provided by Linden Lab - * to you under the terms of the GNU General Public License, version 2.0 - * ("GPL"), unless you have obtained a separate licensing agreement - * ("Other License"), formally executed by you and Linden Lab.  Terms of - * the GPL can be found in doc/GPL-license.txt in this distribution, or - * online at http://secondlifegrid.net/programs/open_source/licensing/gplv2 + * Copyright (C) 2010, Linden Research, Inc.   *  - * There are special exceptions to the terms and conditions of the GPL as - * it is applied to this Source Code. View the full text of the exception - * in the file doc/FLOSS-exception.txt in this software distribution, or - * online at - * http://secondlifegrid.net/programs/open_source/licensing/flossexception + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; + * version 2.1 of the License only.   *  - * By copying, modifying or distributing this software, you acknowledge - * that you have read and understood your obligations described above, - * and agree to abide by those obligations. + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU + * Lesser General Public License for more details.   *  - * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO - * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, - * COMPLETENESS OR PERFORMANCE. + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA + *  + * Linden Research, Inc., 945 Battery Street, San Francisco, CA  94111  USA   * $/LicenseInfo$   */ @@ -39,13 +33,13 @@  #include "lliconctrl.h"  #include "llmenugl.h"  #include "lltextbox.h" +#include "lltextutil.h"  #include "lltrans.h"  // newview  #include "llagent.h"  #include "llgroupactions.h"  #include "llfloaterreg.h" -#include "lltextutil.h"  #include "llviewercontrol.h"	// for gSavedSettings  #include "llviewermenu.h"		// for gMenuHolder  #include "llvoiceclient.h" @@ -131,9 +125,15 @@ BOOL LLGroupList::handleRightMouseDown(S32 x, S32 y, MASK mask)  void LLGroupList::setNameFilter(const std::string& filter)  { -	if (mNameFilter != filter) +	std::string filter_upper = filter; +	LLStringUtil::toUpper(filter_upper); +	if (mNameFilter != filter_upper)  	{ -		mNameFilter = filter; +		mNameFilter = filter_upper; + +		// set no items message depend on filter state +		updateNoItemsMessage(filter); +  		setDirty();  	}  } @@ -151,9 +151,6 @@ void LLGroupList::refresh()  	LLUUID				id;  	bool				have_filter		= !mNameFilter.empty(); -	// set no items message depend on filter state & total count of groups -	updateNoItemsMessage(have_filter); -  	clear();  	for(S32 i = 0; i < count; ++i) @@ -209,8 +206,8 @@ void LLGroupList::addNewItem(const LLUUID& id, const std::string& name, const LL  	item->setName(name, mNameFilter);  	item->setGroupIconID(icon_id); -	item->childSetVisible("info_btn", false); -	item->childSetVisible("profile_btn", false); +	item->getChildView("info_btn")->setVisible( false); +	item->getChildView("profile_btn")->setVisible( false);  	item->setGroupIconVisible(mShowIcons);  	addItem(item, id, pos); @@ -270,7 +267,7 @@ bool LLGroupList::onContextMenuItemEnable(const LLSD& userdata)  		return gAgent.getGroupID() != selected_group_id;  	if (userdata.asString() == "call") -		return real_group_selected && LLVoiceClient::voiceEnabled()&&gVoiceClient->voiceWorking(); +	  return real_group_selected && LLVoiceClient::getInstance()->voiceEnabled() && LLVoiceClient::getInstance()->isVoiceWorking();  	return real_group_selected;  } @@ -286,7 +283,7 @@ mGroupNameBox(NULL),  mInfoBtn(NULL),  mGroupID(LLUUID::null)  { -	LLUICtrlFactory::getInstance()->buildPanel(this, "panel_group_list_item.xml"); +	buildFromFile( "panel_group_list_item.xml");  	// Remember group icon width including its padding from the name text box,  	// so that we can hide and show the icon again later. @@ -320,16 +317,16 @@ void LLGroupListItem::setValue( const LLSD& value )  {  	if (!value.isMap()) return;  	if (!value.has("selected")) return; -	childSetVisible("selected_icon", value["selected"]); +	getChildView("selected_icon")->setVisible( value["selected"]);  }  void LLGroupListItem::onMouseEnter(S32 x, S32 y, MASK mask)  { -	childSetVisible("hovered_icon", true); +	getChildView("hovered_icon")->setVisible( true);  	if (mGroupID.notNull()) // don't show the info button for the "none" group  	{  		mInfoBtn->setVisible(true); -		childSetVisible("profile_btn", true); +		getChildView("profile_btn")->setVisible( true);  	}  	LLPanel::onMouseEnter(x, y, mask); @@ -337,9 +334,9 @@ void LLGroupListItem::onMouseEnter(S32 x, S32 y, MASK mask)  void LLGroupListItem::onMouseLeave(S32 x, S32 y, MASK mask)  { -	childSetVisible("hovered_icon", false); +	getChildView("hovered_icon")->setVisible( false);  	mInfoBtn->setVisible(false); -	childSetVisible("profile_btn", false); +	getChildView("profile_btn")->setVisible( false);  	LLPanel::onMouseLeave(x, y, mask);  } | 
