summaryrefslogtreecommitdiff
path: root/indra/llui
diff options
context:
space:
mode:
authorprep@lindenlab.com <prep@lindenlab.com>2013-05-28 11:51:11 -0500
committerprep@lindenlab.com <prep@lindenlab.com>2013-05-28 11:51:11 -0500
commitc498f53d9ab02a41886b55762883d116801fd39b (patch)
tree027fd1825c5837e51fa8c460d0735a6a19c2b9da /indra/llui
parent34d2cd03765b6b9b582035a933f4ec11fb262ff4 (diff)
Sh-4035: Updated implementation according to new specs. Fixed a couple of outstanding bugs.
Diffstat (limited to 'indra/llui')
-rwxr-xr-xindra/llui/llfloater.cpp12
-rwxr-xr-xindra/llui/llpanel.cpp3
-rwxr-xr-xindra/llui/llpanel.h5
3 files changed, 17 insertions, 3 deletions
diff --git a/indra/llui/llfloater.cpp b/indra/llui/llfloater.cpp
index 28dfda8faf..ae4961559e 100755
--- a/indra/llui/llfloater.cpp
+++ b/indra/llui/llfloater.cpp
@@ -713,6 +713,18 @@ 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;
diff --git a/indra/llui/llpanel.cpp b/indra/llui/llpanel.cpp
index 01165a5718..7b7920f866 100755
--- a/indra/llui/llpanel.cpp
+++ b/indra/llui/llpanel.cpp
@@ -116,7 +116,8 @@ LLPanel::LLPanel(const LLPanel::Params& p)
mXMLFilename(p.filename),
mVisibleSignal(NULL),
mCloseConfirmationSignal(NULL),
- mVerifyUponClose(false)
+ mVerifyUponClose(false),
+ mForceCloseAfterVerify(false)
// *NOTE: Be sure to also change LLPanel::initFromParams(). We have too
// many classes derived from LLPanel to retrofit them all to pass in params.
{
diff --git a/indra/llui/llpanel.h b/indra/llui/llpanel.h
index 1b0beaa5c8..d48fab6dd9 100755
--- a/indra/llui/llpanel.h
+++ b/indra/llui/llpanel.h
@@ -255,8 +255,6 @@ public:
boost::signals2::connection setVisibleCallback( const commit_signal_t::slot_type& cb );
boost::signals2::connection setCloseConfirmationCallback( const commit_signal_t::slot_type& cb );
-public:
- const BOOL confirmClose() const { return mVerifyUponClose; }
protected:
// Override to set not found list
@@ -276,6 +274,9 @@ protected:
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