diff options
author | Paul Guslisty <pguslisty@productengine.com> | 2010-06-30 19:38:33 +0300 |
---|---|---|
committer | Paul Guslisty <pguslisty@productengine.com> | 2010-06-30 19:38:33 +0300 |
commit | 7b5e359f55e64c06f9a019999b72b9d027526c73 (patch) | |
tree | 1bd185732346fc81eb6dc04227cf050a94f8654c | |
parent | 323c5abef6dda7805daff455b3f467c5b762017e (diff) |
EXT-8011 FIXED Location input should be disabled after disconnect
- Implemented LLDestroyClass::destroyClass() in LLPanelTopInfoBar and in LLNavigationBar to disable navigation and paneltopinfobar afer disconnection forced
Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/659/
--HG--
branch : product-engine
-rw-r--r-- | indra/newview/llnavigationbar.h | 11 | ||||
-rw-r--r-- | indra/newview/llpaneltopinfobar.h | 15 |
2 files changed, 24 insertions, 2 deletions
diff --git a/indra/newview/llnavigationbar.h b/indra/newview/llnavigationbar.h index b512f2a79c..03f17af09b 100644 --- a/indra/newview/llnavigationbar.h +++ b/indra/newview/llnavigationbar.h @@ -87,9 +87,10 @@ protected: * Web browser-like navigation bar. */ class LLNavigationBar - : public LLPanel, public LLSingleton<LLNavigationBar> + : public LLPanel, public LLSingleton<LLNavigationBar>, private LLDestroyClass<LLNavigationBar> { LOG_CLASS(LLNavigationBar); + friend class LLDestroyClass<LLNavigationBar>; public: LLNavigationBar(); @@ -136,6 +137,14 @@ private: void fillSearchComboBox(); + static void destroyClass() + { + if (LLNavigationBar::instanceExists()) + { + LLNavigationBar::getInstance()->setEnabled(FALSE); + } + } + LLMenuGL* mTeleportHistoryMenu; LLPullButton* mBtnBack; LLPullButton* mBtnForward; diff --git a/indra/newview/llpaneltopinfobar.h b/indra/newview/llpaneltopinfobar.h index e417a06a64..6e6fbc08ab 100644 --- a/indra/newview/llpaneltopinfobar.h +++ b/indra/newview/llpaneltopinfobar.h @@ -40,10 +40,12 @@ class LLTextBox; class LLIconCtrl; class LLParcelChangeObserver; -class LLPanelTopInfoBar : public LLPanel, public LLSingleton<LLPanelTopInfoBar> +class LLPanelTopInfoBar : public LLPanel, public LLSingleton<LLPanelTopInfoBar>, private LLDestroyClass<LLPanelTopInfoBar> { LOG_CLASS(LLPanelTopInfoBar); + friend class LLDestroyClass<LLPanelTopInfoBar>; + public: LLPanelTopInfoBar(); ~LLPanelTopInfoBar(); @@ -145,6 +147,17 @@ private: */ void setParcelInfoText(const std::string& new_text); + /** + * Implementation of LLDestroyClass<LLSideTray> + */ + static void destroyClass() + { + if (LLPanelTopInfoBar::instanceExists()) + { + LLPanelTopInfoBar::getInstance()->setEnabled(FALSE); + } + } + LLButton* mInfoBtn; LLTextBox* mParcelInfoText; LLTextBox* mDamageText; |