diff options
| author | Loren Shih <seraph@lindenlab.com> | 2010-06-16 14:29:10 -0400 | 
|---|---|---|
| committer | Loren Shih <seraph@lindenlab.com> | 2010-06-16 14:29:10 -0400 | 
| commit | 5635f10c41a72c62cbf44ae9415aadb83447ca22 (patch) | |
| tree | a94b877a8dd8028dc9a618ca7966f23426992755 /indra/llui | |
| parent | 823ae2ea98c7fd24053d7bc97fbc178b654190b4 (diff) | |
| parent | abb0ccb762f54127b38bd9a9be4a852e7e489d48 (diff) | |
automated merge
Diffstat (limited to 'indra/llui')
| -rw-r--r-- | indra/llui/llaccordionctrl.cpp | 18 | ||||
| -rw-r--r-- | indra/llui/llaccordionctrl.h | 7 | ||||
| -rw-r--r-- | indra/llui/llaccordionctrltab.cpp | 2 | ||||
| -rw-r--r-- | indra/llui/llaccordionctrltab.h | 2 | 
4 files changed, 27 insertions, 2 deletions
| diff --git a/indra/llui/llaccordionctrl.cpp b/indra/llui/llaccordionctrl.cpp index fc93793ed8..3a1e9f19fa 100644 --- a/indra/llui/llaccordionctrl.cpp +++ b/indra/llui/llaccordionctrl.cpp @@ -826,6 +826,24 @@ void	LLAccordionCtrl::setFilterSubString(const std::string& filter_string)  	mNoVisibleTabsHelpText->setValue(text);  } +const LLAccordionCtrlTab* LLAccordionCtrl::getExpandedTab() const +{ +	typedef std::vector<LLAccordionCtrlTab*>::const_iterator tabs_const_iterator; + +	const LLAccordionCtrlTab* result = 0; + +	for (tabs_const_iterator i = mAccordionTabs.begin(); i != mAccordionTabs.end(); ++i) +	{ +		if ((*i)->isExpanded()) +		{ +			result = *i; +			break; +		} +	} + +	return result; +} +  S32 LLAccordionCtrl::calcExpandedTabHeight(S32 tab_index /* = 0 */, S32 available_height /* = 0 */)  {  	if(tab_index < 0) diff --git a/indra/llui/llaccordionctrl.h b/indra/llui/llaccordionctrl.h index fc6f2d896c..677b598a32 100644 --- a/indra/llui/llaccordionctrl.h +++ b/indra/llui/llaccordionctrl.h @@ -129,6 +129,13 @@ public:  	 */  	void	setFilterSubString(const std::string& filter_string); +	/** +	 * This method returns the first expanded accordion tab. +	 * It is expected to be called for accordion which doesn't allow multiple +	 * tabs to be expanded. Use with care. +	 */ +	const LLAccordionCtrlTab* getExpandedTab() const; +  private:  	void	initNoTabsWidget(const LLTextBox::Params& tb_params);  	void	updateNoTabsHelpTextVisibility(); diff --git a/indra/llui/llaccordionctrltab.cpp b/indra/llui/llaccordionctrltab.cpp index be231fd8cf..54bb328a18 100644 --- a/indra/llui/llaccordionctrltab.cpp +++ b/indra/llui/llaccordionctrltab.cpp @@ -974,7 +974,7 @@ BOOL LLAccordionCtrlTab::handleScrollWheel		( S32 x, S32 y, S32 clicks )  	{  		return TRUE;  	} -	if( mScrollbar->getVisible() && mScrollbar->handleScrollWheel( 0, 0, clicks ) ) +	if( mScrollbar && mScrollbar->getVisible() && mScrollbar->handleScrollWheel( 0, 0, clicks ) )  	{  		return TRUE;  	} diff --git a/indra/llui/llaccordionctrltab.h b/indra/llui/llaccordionctrltab.h index 19d4ec0a1c..7bf7eeef8f 100644 --- a/indra/llui/llaccordionctrltab.h +++ b/indra/llui/llaccordionctrltab.h @@ -171,7 +171,7 @@ public:  	virtual bool addChild(LLView* child, S32 tab_group); -	bool isExpanded() { return mDisplayChildren; } +	bool isExpanded() const { return mDisplayChildren; }  	S32 getHeaderHeight(); | 
