diff options
Diffstat (limited to 'indra/llui')
| -rwxr-xr-x | indra/llui/llfloater.cpp | 47 | ||||
| -rwxr-xr-x | indra/llui/llfloater.h | 5 | ||||
| -rwxr-xr-x | indra/llui/llpanel.cpp | 23 | ||||
| -rwxr-xr-x | indra/llui/llpanel.h | 11 | 
4 files changed, 12 insertions, 74 deletions
| diff --git a/indra/llui/llfloater.cpp b/indra/llui/llfloater.cpp index f8b01e106b..0807b497a7 100755 --- a/indra/llui/llfloater.cpp +++ b/indra/llui/llfloater.cpp @@ -704,29 +704,11 @@ void LLFloater::openFloater(const LLSD& key)  	dirtyRect();  } -void LLFloater::verifyClose( bool app_quitting ) -{ -	LLPanel::handleCloseConfirmation( app_quitting ); -} -  void LLFloater::closeFloater(bool app_quitting)  {  	llinfos << "Closing floater " << getName() << llendl; -	 -	if (!app_quitting) -	{ -		if ( mVerifyUponClose && !mForceCloseAfterVerify ) -		{			 -			onClose( app_quitting ); -			if ( mForceCloseAfterVerify )  -			{ -				return; -			}			 -		} -	}	 -  	if (app_quitting) -	{		 +	{  		LLFloater::sQuitting = true;  	} @@ -799,7 +781,7 @@ void LLFloater::closeFloater(bool app_quitting)  		dirtyRect();  		// Close callbacks -		onClose(app_quitting);	 +		onClose(app_quitting);  		mCloseSignal(this, LLSD(app_quitting));  		// Hide or Destroy @@ -1639,7 +1621,7 @@ void LLFloater::bringToFront( S32 x, S32 y )  // virtual -void LLFloater::setVisibleAndFrontmost(BOOL take_focus, const LLSD& key) +void LLFloater::setVisibleAndFrontmost(BOOL take_focus,const LLSD& key)  {  	LLMultiFloater* hostp = getHost();  	if (hostp) @@ -1806,19 +1788,11 @@ void LLFloater::initRectControl()  void LLFloater::closeFrontmostFloater()  {  	LLFloater* floater_to_close = gFloaterView->getFrontmostClosableFloater(); -	if( floater_to_close ) +	if(floater_to_close)  	{ -		if ( floater_to_close->mVerifyUponClose ) -		{			 -			floater_to_close->verifyClose(); -			//Closing of the window handle in the subclass - so bug out here. -			return; -		} -		else -		{ -			floater_to_close->closeFloater(); -		} +		floater_to_close->closeFloater();  	} +  	// if nothing took focus after closing focused floater  	// give it to next floater (to allow closing multiple windows via keyboard in rapid succession)  	if (gFocusMgr.getKeyboardFocus() == NULL) @@ -2657,14 +2631,7 @@ void LLFloaterView::closeAllChildren(bool app_quitting)  		if (floaterp->canClose() && !floaterp->isDead() &&  			(app_quitting || floaterp->getVisible()))  		{ -			if ( floaterp->mVerifyUponClose ) -			{			 -				floaterp->verifyClose(app_quitting); -			} -			else -			{ -				floaterp->closeFloater(app_quitting); -			} +			floaterp->closeFloater(app_quitting);  		}  	}  } diff --git a/indra/llui/llfloater.h b/indra/llui/llfloater.h index 8eb40ddd0b..1d0d3cb050 100755 --- a/indra/llui/llfloater.h +++ b/indra/llui/llfloater.h @@ -225,7 +225,6 @@ public:  	// If allowed, close the floater cleanly, releasing focus.  	virtual void	closeFloater(bool app_quitting = false); -	virtual void	verifyClose( bool app_quitting = false );  	// Close the floater or its host. Use when hidding or toggling a floater instance.  	virtual void	closeHostedFloater(); @@ -304,9 +303,9 @@ public:  	/*virtual*/ void setVisible(BOOL visible); // do not override  	/*virtual*/ void handleVisibilityChange ( BOOL new_visibility ); // do not override -				void handleCloseConfirmation( ); +	  	void			setFrontmost(BOOL take_focus = TRUE); -    virtual void	setVisibleAndFrontmost(BOOL take_focus=TRUE, const LLSD& key = LLSD());     +     virtual void	setVisibleAndFrontmost(BOOL take_focus=TRUE, const LLSD& key = LLSD());  	// Defaults to false.  	virtual BOOL	canSaveAs() const { return FALSE; } diff --git a/indra/llui/llpanel.cpp b/indra/llui/llpanel.cpp index b0bdbcb7d1..67472ad166 100755 --- a/indra/llui/llpanel.cpp +++ b/indra/llui/llpanel.cpp @@ -114,10 +114,7 @@ LLPanel::LLPanel(const LLPanel::Params& p)  	mCommitCallbackRegistrar(false),  	mEnableCallbackRegistrar(false),  	mXMLFilename(p.filename), -	mVisibleSignal(NULL), -	mCloseConfirmationSignal(NULL), -	mVerifyUponClose(false), -	mForceCloseAfterVerify(false) +	mVisibleSignal(NULL)  	// *NOTE: Be sure to also change LLPanel::initFromParams().  We have too  	// many classes derived from LLPanel to retrofit them all to pass in params.  { @@ -130,7 +127,6 @@ LLPanel::LLPanel(const LLPanel::Params& p)  LLPanel::~LLPanel()  {  	delete mVisibleSignal; -	delete mCloseConfirmationSignal;  }  // virtual @@ -353,14 +349,6 @@ void LLPanel::handleVisibilityChange ( BOOL new_visibility )  		(*mVisibleSignal)(this, LLSD(new_visibility) ); // Pass BOOL as LLSD  } - -void LLPanel::handleCloseConfirmation( bool app_quitting) -{	 -	if (mCloseConfirmationSignal) -	{ -		(*mCloseConfirmationSignal)(this, LLSD( app_quitting ) );  -	} -}  void LLPanel::setFocus(BOOL b)  {  	if( b && !hasFocus()) @@ -971,17 +959,10 @@ boost::signals2::connection LLPanel::setVisibleCallback( const commit_signal_t::  	{  		mVisibleSignal = new commit_signal_t();  	} +  	return mVisibleSignal->connect(cb);  } -boost::signals2::connection LLPanel::setCloseConfirmationCallback( const commit_signal_t::slot_type& cb ) -{ -	if (!mCloseConfirmationSignal) -	{ -		mCloseConfirmationSignal = new commit_signal_t(); -	}	 -	return mCloseConfirmationSignal->connect(cb); -}  static LLFastTimer::DeclareTimer FTM_BUILD_PANELS("Build Panels");  //----------------------------------------------------------------------------- diff --git a/indra/llui/llpanel.h b/indra/llui/llpanel.h index 02f8c0aba7..e63b41f97c 100755 --- a/indra/llui/llpanel.h +++ b/indra/llui/llpanel.h @@ -116,8 +116,6 @@ public:  	/*virtual*/ void	draw();	  	/*virtual*/ BOOL	handleKeyHere( KEY key, MASK mask );  	/*virtual*/ void 	handleVisibilityChange ( BOOL new_visibility ); -				void	handleCloseConfirmation( bool app_quitting ); -  	// From LLFocusableElement  	/*virtual*/ void	setFocus( BOOL b ); @@ -253,8 +251,6 @@ public:  	std::string getXMLFilename() { return mXMLFilename; };  	boost::signals2::connection setVisibleCallback( const commit_signal_t::slot_type& cb ); -	boost::signals2::connection setCloseConfirmationCallback( const commit_signal_t::slot_type& cb ); -  protected:  	// Override to set not found list @@ -264,7 +260,6 @@ protected:  	EnableCallbackRegistry::ScopedRegistrar mEnableCallbackRegistrar;  	commit_signal_t* mVisibleSignal;		// Called when visibility changes, passes new visibility as LLSD() -	commit_signal_t* mCloseConfirmationSignal;   	std::string		mHelpTopic;         // the name of this panel's help topic to display in the Help Viewer  	typedef std::deque<const LLCallbackMap::map_t*> factory_stack_t; @@ -272,11 +267,7 @@ protected:  	// for setting the xml filename when building panel in context dependent cases  	std::string		mXMLFilename; -	//Specific close-down logic in subclass -	BOOL			mVerifyUponClose; -public:	 -	BOOL			mForceCloseAfterVerify; - +	  private:  	BOOL			mBgVisible;				// any background at all?  	BOOL			mBgOpaque;				// use opaque color or image | 
