From f6f9e63091d82f10fb76778d993ae7d2087a1452 Mon Sep 17 00:00:00 2001 From: Tofu Linden Date: Mon, 23 Nov 2009 16:10:37 +0000 Subject: incomplete but almost-working volume pulldown, except it's not a pulldown. --- indra/newview/llstatusbar.cpp | 3 +++ 1 file changed, 3 insertions(+) (limited to 'indra/newview/llstatusbar.cpp') diff --git a/indra/newview/llstatusbar.cpp b/indra/newview/llstatusbar.cpp index b649a0c38e..bc9edec0ba 100644 --- a/indra/newview/llstatusbar.cpp +++ b/indra/newview/llstatusbar.cpp @@ -509,6 +509,9 @@ static void onClickVolume(void* data) // toggle the master mute setting BOOL mute_audio = gSavedSettings.getBOOL("MuteAudio"); gSavedSettings.setBOOL("MuteAudio", !mute_audio); + + // toggle the master volume pull-down + LLFloaterReg::showInstance("volume_pulldown"); //tmp } // sets the static variables necessary for the date -- cgit v1.2.3 From 655f33a9f818d75dd0f8d6040dfffd0520344222 Mon Sep 17 00:00:00 2001 From: Tofu Linden Date: Mon, 23 Nov 2009 17:52:37 +0000 Subject: panelized volume pulldown, that doesn't work at all. --- indra/newview/llstatusbar.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'indra/newview/llstatusbar.cpp') diff --git a/indra/newview/llstatusbar.cpp b/indra/newview/llstatusbar.cpp index bc9edec0ba..2bd8d5fa55 100644 --- a/indra/newview/llstatusbar.cpp +++ b/indra/newview/llstatusbar.cpp @@ -42,6 +42,7 @@ #include "llfloaterbuycurrency.h" #include "llfloaterchat.h" #include "llfloaterlagmeter.h" +#include "llfloatervolumepulldown.h" #include "llfloaterregioninfo.h" #include "llfloaterscriptdebug.h" #include "llhudicon.h" @@ -201,7 +202,6 @@ LLStatusBar::LLStatusBar(const LLRect& rect) addChild(mSGPacketLoss); childSetActionTextbox("stat_btn", onClickStatGraph); - } LLStatusBar::~LLStatusBar() @@ -511,7 +511,9 @@ static void onClickVolume(void* data) gSavedSettings.setBOOL("MuteAudio", !mute_audio); // toggle the master volume pull-down - LLFloaterReg::showInstance("volume_pulldown"); //tmp + //LLFloaterReg::showInstance("volume_pulldown"); //tmp + //LLPanelVolumePulldown *foo= + new LLPanelVolumePulldown(); } // sets the static variables necessary for the date -- cgit v1.2.3 From f2b3aca83a27386e2fb066afcfe566e89a34fa32 Mon Sep 17 00:00:00 2001 From: Tofu Linden Date: Tue, 24 Nov 2009 13:51:26 +0000 Subject: hmm, more panel-ization, but it's not displaying. --- indra/newview/llstatusbar.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'indra/newview/llstatusbar.cpp') diff --git a/indra/newview/llstatusbar.cpp b/indra/newview/llstatusbar.cpp index 2bd8d5fa55..8289930d97 100644 --- a/indra/newview/llstatusbar.cpp +++ b/indra/newview/llstatusbar.cpp @@ -512,8 +512,9 @@ static void onClickVolume(void* data) // toggle the master volume pull-down //LLFloaterReg::showInstance("volume_pulldown"); //tmp - //LLPanelVolumePulldown *foo= - new LLPanelVolumePulldown(); + LLPanelVolumePulldown *foo= + new LLPanelVolumePulldown(); + foo->setVisible(TRUE); } // sets the static variables necessary for the date -- cgit v1.2.3 From 7c340079ef679fa4b459cbe2ec0404b3a9a911df Mon Sep 17 00:00:00 2001 From: Tofu Linden Date: Wed, 25 Nov 2009 10:22:39 +0000 Subject: more attempts to panelize the volume pulldown, but why won't it show? --- indra/newview/llstatusbar.cpp | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) (limited to 'indra/newview/llstatusbar.cpp') diff --git a/indra/newview/llstatusbar.cpp b/indra/newview/llstatusbar.cpp index 8289930d97..6178ca6da0 100644 --- a/indra/newview/llstatusbar.cpp +++ b/indra/newview/llstatusbar.cpp @@ -124,6 +124,7 @@ LLStatusBar::LLStatusBar(const LLRect& rect) mSGPacketLoss(NULL), mBtnBuyCurrency(NULL), mBtnVolume(NULL), + mPanelVolume(NULL), mBalance(0), mHealth(100), mSquareMetersCredit(0), @@ -159,6 +160,8 @@ LLStatusBar::LLStatusBar(const LLRect& rect) mBtnVolume = getChild( "volume_btn" ); mBtnVolume->setClickedCallback( onClickVolume, this ); + mPanelVolume = getChild( "volume_pulldown" ); + gSavedSettings.getControl("MuteAudio")->getSignal()->connect(boost::bind(&LLStatusBar::onVolumeChanged, this, _2)); childSetAction("scriptout", onClickScriptDebug, this); @@ -511,10 +514,17 @@ static void onClickVolume(void* data) gSavedSettings.setBOOL("MuteAudio", !mute_audio); // toggle the master volume pull-down + //LLFloaterReg::showInstance("volume_pulldown"); //tmp - LLPanelVolumePulldown *foo= - new LLPanelVolumePulldown(); - foo->setVisible(TRUE); + //LLPanelVolumePulldown *foo= + //new LLPanelVolumePulldown(); + //LLPanel* container = getRootView();//->getChild("nav_bar_container"); + //container->addChild(foo); + LLStatusBar *sb = (LLStatusBar*)(data); + llassert_always(sb); + sb->mPanelVolume->setRect(LLRect(1,1,100,100)); + sb->mPanelVolume->setVisible(TRUE); + sb->mPanelVolume->setEnabled(TRUE); } // sets the static variables necessary for the date -- cgit v1.2.3 From e71fdf32da50e3f5cb481c040add27a8a4f3777e Mon Sep 17 00:00:00 2001 From: Tofu Linden Date: Wed, 25 Nov 2009 17:09:36 +0000 Subject: more fiddling with panel visibility --- indra/newview/llstatusbar.cpp | 2 ++ 1 file changed, 2 insertions(+) (limited to 'indra/newview/llstatusbar.cpp') diff --git a/indra/newview/llstatusbar.cpp b/indra/newview/llstatusbar.cpp index 6178ca6da0..2c18c41a5e 100644 --- a/indra/newview/llstatusbar.cpp +++ b/indra/newview/llstatusbar.cpp @@ -523,6 +523,8 @@ static void onClickVolume(void* data) LLStatusBar *sb = (LLStatusBar*)(data); llassert_always(sb); sb->mPanelVolume->setRect(LLRect(1,1,100,100)); + sb->mPanelVolume->setShape(LLRect(1,1,100,100)); + sb->mPanelVolume->setBackgroundColor(LLColor3(1.0, 0.0, 0.0)); sb->mPanelVolume->setVisible(TRUE); sb->mPanelVolume->setEnabled(TRUE); } -- cgit v1.2.3 From 9b0236990ba2df3c7c890d2d351724b455eddbb0 Mon Sep 17 00:00:00 2001 From: Tofu Linden Date: Thu, 26 Nov 2009 09:41:18 +0000 Subject: sketch what I think it wrong here. --- indra/newview/llstatusbar.cpp | 2 ++ 1 file changed, 2 insertions(+) (limited to 'indra/newview/llstatusbar.cpp') diff --git a/indra/newview/llstatusbar.cpp b/indra/newview/llstatusbar.cpp index 2c18c41a5e..f668a72c4e 100644 --- a/indra/newview/llstatusbar.cpp +++ b/indra/newview/llstatusbar.cpp @@ -527,6 +527,8 @@ static void onClickVolume(void* data) sb->mPanelVolume->setBackgroundColor(LLColor3(1.0, 0.0, 0.0)); sb->mPanelVolume->setVisible(TRUE); sb->mPanelVolume->setEnabled(TRUE); + gFocusMgr.setTopCtrl(sb->mPanelVolume); + // also set focus explicitly to mpanelvolume } // sets the static variables necessary for the date -- cgit v1.2.3 From 5fc387c9183b62b3fa1567432ac8897a89a205f6 Mon Sep 17 00:00:00 2001 From: Tofu Linden Date: Thu, 26 Nov 2009 17:07:35 +0000 Subject: More trying to get my panel to show. I must still be missing something obvious. --- indra/newview/llstatusbar.cpp | 1 + 1 file changed, 1 insertion(+) (limited to 'indra/newview/llstatusbar.cpp') diff --git a/indra/newview/llstatusbar.cpp b/indra/newview/llstatusbar.cpp index 6074bb2be9..15c76a13c6 100644 --- a/indra/newview/llstatusbar.cpp +++ b/indra/newview/llstatusbar.cpp @@ -529,6 +529,7 @@ static void onClickVolume(void* data) sb->mPanelVolume->setBackgroundColor(LLColor3(1.0, 0.0, 0.0)); sb->mPanelVolume->setVisible(TRUE); sb->mPanelVolume->setEnabled(TRUE); + sb->addChild(sb->mPanelVolume); gFocusMgr.setTopCtrl(sb->mPanelVolume); // also set focus explicitly to mpanelvolume } -- cgit v1.2.3 From e90e8e8f775ac728d0ac4e191f5a28304a98d253 Mon Sep 17 00:00:00 2001 From: Tofu Linden Date: Fri, 27 Nov 2009 11:55:37 +0000 Subject: more stabbing that doesn't work. --- indra/newview/llstatusbar.cpp | 1 + 1 file changed, 1 insertion(+) (limited to 'indra/newview/llstatusbar.cpp') diff --git a/indra/newview/llstatusbar.cpp b/indra/newview/llstatusbar.cpp index 15c76a13c6..c1d8c26dce 100644 --- a/indra/newview/llstatusbar.cpp +++ b/indra/newview/llstatusbar.cpp @@ -530,6 +530,7 @@ static void onClickVolume(void* data) sb->mPanelVolume->setVisible(TRUE); sb->mPanelVolume->setEnabled(TRUE); sb->addChild(sb->mPanelVolume); + sb->mPanelVolume->getParent()->sendChildToFront(sb->mPanelVolume); gFocusMgr.setTopCtrl(sb->mPanelVolume); // also set focus explicitly to mpanelvolume } -- cgit v1.2.3 From cf485a384ba8cd5249ae11949fe3464252f5ba06 Mon Sep 17 00:00:00 2001 From: Tofu Linden Date: Fri, 27 Nov 2009 12:58:45 +0000 Subject: more fiddling and tracing. --- indra/newview/llstatusbar.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'indra/newview/llstatusbar.cpp') diff --git a/indra/newview/llstatusbar.cpp b/indra/newview/llstatusbar.cpp index c1d8c26dce..ed125e0a59 100644 --- a/indra/newview/llstatusbar.cpp +++ b/indra/newview/llstatusbar.cpp @@ -162,7 +162,7 @@ LLStatusBar::LLStatusBar(const LLRect& rect) mBtnVolume = getChild( "volume_btn" ); mBtnVolume->setClickedCallback( onClickVolume, this ); - mPanelVolume = getChild( "volume_pulldown" ); + mPanelVolume = getChild( "volume_pulldown" ); gSavedSettings.getControl("MuteAudio")->getSignal()->connect(boost::bind(&LLStatusBar::onVolumeChanged, this, _2)); -- cgit v1.2.3 From 6d515c1c6def9f0074de0d624ce13ada3b4d4b59 Mon Sep 17 00:00:00 2001 From: Tofu Linden Date: Fri, 27 Nov 2009 14:56:13 +0000 Subject: back to the floater version of the volume drop-down - I was having no luck with having the panel version display properly. --- indra/newview/llstatusbar.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'indra/newview/llstatusbar.cpp') diff --git a/indra/newview/llstatusbar.cpp b/indra/newview/llstatusbar.cpp index ed125e0a59..89c007280e 100644 --- a/indra/newview/llstatusbar.cpp +++ b/indra/newview/llstatusbar.cpp @@ -247,7 +247,6 @@ BOOL LLStatusBar::handleRightMouseDown(S32 x, S32 y, MASK mask) BOOL LLStatusBar::postBuild() { - gMenuBarView->setRightMouseDownCallback(boost::bind(&show_navbar_context_menu, _1, _2, _3)); return TRUE; @@ -517,7 +516,10 @@ static void onClickVolume(void* data) // toggle the master volume pull-down - //LLFloaterReg::showInstance("volume_pulldown"); //tmp + //LLFloater* vp = + LLFloaterReg::showInstance("volume_pulldown"); //tmp + +#if 0 //LLPanelVolumePulldown *foo= //new LLPanelVolumePulldown(); //LLPanel* container = getRootView();//->getChild("nav_bar_container"); @@ -530,9 +532,13 @@ static void onClickVolume(void* data) sb->mPanelVolume->setVisible(TRUE); sb->mPanelVolume->setEnabled(TRUE); sb->addChild(sb->mPanelVolume); + gFloaterView->addChild(sb->mPanelVolume); sb->mPanelVolume->getParent()->sendChildToFront(sb->mPanelVolume); gFocusMgr.setTopCtrl(sb->mPanelVolume); // also set focus explicitly to mpanelvolume + + //sb->mPanelVolume->setFrontmost() +#endif } // sets the static variables necessary for the date -- cgit v1.2.3 From c5719c445ab49f8725ea21bd5bb51d4a0c106212 Mon Sep 17 00:00:00 2001 From: Tofu Linden Date: Fri, 27 Nov 2009 17:34:50 +0000 Subject: whee, back to a floater for now. i'm going to stop worrying about the position for a while and work on the functionality. --- indra/newview/llstatusbar.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'indra/newview/llstatusbar.cpp') diff --git a/indra/newview/llstatusbar.cpp b/indra/newview/llstatusbar.cpp index 89c007280e..d57564a9f0 100644 --- a/indra/newview/llstatusbar.cpp +++ b/indra/newview/llstatusbar.cpp @@ -516,10 +516,10 @@ static void onClickVolume(void* data) // toggle the master volume pull-down +#if 1 //LLFloater* vp = LLFloaterReg::showInstance("volume_pulldown"); //tmp - -#if 0 +#else //LLPanelVolumePulldown *foo= //new LLPanelVolumePulldown(); //LLPanel* container = getRootView();//->getChild("nav_bar_container"); -- cgit v1.2.3 From 903de794d2ce610be775cf44453643f8419447ef Mon Sep 17 00:00:00 2001 From: Tofu Linden Date: Mon, 30 Nov 2009 15:22:16 +0000 Subject: pretty good volume bar appear-on-hover --- indra/newview/llstatusbar.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'indra/newview/llstatusbar.cpp') diff --git a/indra/newview/llstatusbar.cpp b/indra/newview/llstatusbar.cpp index d57564a9f0..04b96a3a01 100644 --- a/indra/newview/llstatusbar.cpp +++ b/indra/newview/llstatusbar.cpp @@ -161,6 +161,7 @@ LLStatusBar::LLStatusBar(const LLRect& rect) mBtnVolume = getChild( "volume_btn" ); mBtnVolume->setClickedCallback( onClickVolume, this ); + mBtnVolume->setMouseEnterCallback(boost::bind(&LLStatusBar::onMouseEnterVolume, this)); mPanelVolume = getChild( "volume_pulldown" ); @@ -508,6 +509,17 @@ static void onClickScriptDebug(void*) LLFloaterScriptDebug::show(LLUUID::null); } +//static +void LLStatusBar::onMouseEnterVolume(LLUICtrl* ctrl) +{ +#if 1 + //LLFloater* vp = + LLFloaterReg::showInstance("volume_pulldown"); //tmp +#else + #error do this for panel +#endif +} + static void onClickVolume(void* data) { // toggle the master mute setting -- cgit v1.2.3 From ec42c50fe814e36cafc8e21da8badf272b383782 Mon Sep 17 00:00:00 2001 From: Tofu Linden Date: Mon, 30 Nov 2009 15:24:23 +0000 Subject: tidy-up. clicking mute button doesn't need to bring up the volume slider any more. --- indra/newview/llstatusbar.cpp | 23 ++++++++--------------- 1 file changed, 8 insertions(+), 15 deletions(-) (limited to 'indra/newview/llstatusbar.cpp') diff --git a/indra/newview/llstatusbar.cpp b/indra/newview/llstatusbar.cpp index 04b96a3a01..d16a7c728b 100644 --- a/indra/newview/llstatusbar.cpp +++ b/indra/newview/llstatusbar.cpp @@ -512,21 +512,7 @@ static void onClickScriptDebug(void*) //static void LLStatusBar::onMouseEnterVolume(LLUICtrl* ctrl) { -#if 1 - //LLFloater* vp = - LLFloaterReg::showInstance("volume_pulldown"); //tmp -#else - #error do this for panel -#endif -} - -static void onClickVolume(void* data) -{ - // toggle the master mute setting - BOOL mute_audio = gSavedSettings.getBOOL("MuteAudio"); - gSavedSettings.setBOOL("MuteAudio", !mute_audio); - - // toggle the master volume pull-down + // show the master volume pull-down #if 1 //LLFloater* vp = @@ -553,6 +539,13 @@ static void onClickVolume(void* data) #endif } +static void onClickVolume(void* data) +{ + // toggle the master mute setting + BOOL mute_audio = gSavedSettings.getBOOL("MuteAudio"); + gSavedSettings.setBOOL("MuteAudio", !mute_audio); +} + // sets the static variables necessary for the date void LLStatusBar::setupDate() { -- cgit v1.2.3 From c2fbdab7f122123239715ea652d2bc126b5d1705 Mon Sep 17 00:00:00 2001 From: Tofu Linden Date: Mon, 30 Nov 2009 17:30:45 +0000 Subject: lots more clean-up. --- indra/newview/llstatusbar.cpp | 28 +--------------------------- 1 file changed, 1 insertion(+), 27 deletions(-) (limited to 'indra/newview/llstatusbar.cpp') diff --git a/indra/newview/llstatusbar.cpp b/indra/newview/llstatusbar.cpp index d16a7c728b..4915720036 100644 --- a/indra/newview/llstatusbar.cpp +++ b/indra/newview/llstatusbar.cpp @@ -126,7 +126,6 @@ LLStatusBar::LLStatusBar(const LLRect& rect) mSGPacketLoss(NULL), mBtnBuyCurrency(NULL), mBtnVolume(NULL), - mPanelVolume(NULL), mBalance(0), mHealth(100), mSquareMetersCredit(0), @@ -163,8 +162,6 @@ LLStatusBar::LLStatusBar(const LLRect& rect) mBtnVolume->setClickedCallback( onClickVolume, this ); mBtnVolume->setMouseEnterCallback(boost::bind(&LLStatusBar::onMouseEnterVolume, this)); - mPanelVolume = getChild( "volume_pulldown" ); - gSavedSettings.getControl("MuteAudio")->getSignal()->connect(boost::bind(&LLStatusBar::onVolumeChanged, this, _2)); childSetAction("scriptout", onClickScriptDebug, this); @@ -513,30 +510,7 @@ static void onClickScriptDebug(void*) void LLStatusBar::onMouseEnterVolume(LLUICtrl* ctrl) { // show the master volume pull-down - -#if 1 - //LLFloater* vp = - LLFloaterReg::showInstance("volume_pulldown"); //tmp -#else - //LLPanelVolumePulldown *foo= - //new LLPanelVolumePulldown(); - //LLPanel* container = getRootView();//->getChild("nav_bar_container"); - //container->addChild(foo); - LLStatusBar *sb = (LLStatusBar*)(data); - llassert_always(sb); - sb->mPanelVolume->setRect(LLRect(1,1,100,100)); - sb->mPanelVolume->setShape(LLRect(1,1,100,100)); - sb->mPanelVolume->setBackgroundColor(LLColor3(1.0, 0.0, 0.0)); - sb->mPanelVolume->setVisible(TRUE); - sb->mPanelVolume->setEnabled(TRUE); - sb->addChild(sb->mPanelVolume); - gFloaterView->addChild(sb->mPanelVolume); - sb->mPanelVolume->getParent()->sendChildToFront(sb->mPanelVolume); - gFocusMgr.setTopCtrl(sb->mPanelVolume); - // also set focus explicitly to mpanelvolume - - //sb->mPanelVolume->setFrontmost() -#endif + LLFloaterReg::showInstance("volume_pulldown"); } static void onClickVolume(void* data) -- cgit v1.2.3