handleLocalChatBar visibility whenever ShowLocalChatFloaterBar changes value

This commit is contained in:
Lirusaito
2013-02-25 17:39:53 -05:00
parent 9d6d8da54d
commit c3e63e7ab7
3 changed files with 14 additions and 4 deletions

View File

@@ -762,7 +762,7 @@ Found in Advanced->Rendering->Info Displays</string>
<key>ShowLocalChatFloaterBar</key>
<map>
<key>Comment</key>
<string>Whether or not local chat should have an input bar when undocked, requires docking and undocking if already undocked.</string>
<string>Whether or not local chat should have an input bar when undocked.</string>
<key>Persist</key>
<integer>1</integer>
<key>Type</key>

View File

@@ -44,6 +44,15 @@
#include "llimview.h"
#include "llimpanel.h"
#include "llstring.h"
namespace
{
void handleLocalChatBar(LLFloaterChat* floater_chat, bool show_bar)
{
floater_chat->childSetVisible("chat_layout_panel", show_bar || !gSavedSettings.getBOOL("ChatHistoryTornOff"));
}
}
//
// LLFloaterMyFriends
//
@@ -119,9 +128,9 @@ LLFloaterChatterBox::LLFloaterChatterBox(const LLSD& seed) :
addFloater(LLFloaterMyFriends::getInstance(0), TRUE);
}
LLFloaterChat* floater_chat = LLFloaterChat::getInstance();
if (gSavedSettings.getBOOL("ChatHistoryTornOff"))
{
LLFloaterChat* floater_chat = LLFloaterChat::getInstance();
// add then remove to set up relationship for re-attach
addFloater(floater_chat, FALSE);
removeFloater(floater_chat);
@@ -130,8 +139,9 @@ LLFloaterChatterBox::LLFloaterChatterBox(const LLSD& seed) :
}
else
{
addFloater(LLFloaterChat::getInstance(LLSD()), FALSE);
addFloater(floater_chat, FALSE);
}
gSavedSettings.getControl("ShowLocalChatFloaterBar")->getSignal()->connect(boost::bind(handleLocalChatBar, floater_chat, _2));
mTabContainer->lockTabs();
}

View File

@@ -70,7 +70,7 @@
<check_box bottom_delta="-25" left="10" follows="top" initial_value="false" control_name="WoLfVerticalIMTabs"
label="Use Vertical IMs (Requires a restart)" name="use_vertical_ims_check"/>
<check_box bottom_delta="-20" follows="top" control_name="OtherChatsTornOff" label="Open new IMs in separate floaters" name="chats_torn_off"/>
<check_box bottom_delta="-20" follows="left|top" control_name="ShowLocalChatFloaterBar" label="Show chat bar in torn-off local chat floater (Takes effect upon next tear-off)" name="show_local_chat_floater_bar"/>
<check_box bottom_delta="-20" follows="left|top" control_name="ShowLocalChatFloaterBar" label="Show chat bar in torn-off local chat floater" name="show_local_chat_floater_bar"/>
<check_box bottom_delta="-20" control_name="ContactsUseHorizontalButtons" follows="top" height="16" label="Use horizontal buttons for contacts floater (Needs restart)" tool_tip="When enabled, the buttons on the Friends and Groups panels will be at the bottom, horizontally arranged, instead of vertically arranged on the right." name="horiz_butt"/>
<check_box bottom_delta="-20" control_name="UseConciseIMButtons" follows="top" height="16" label="Buttons on the same line as name for IMs (Affects new IMs)" name="im_concise_butt"/>
<check_box bottom_delta="-20" control_name="UseConciseGroupChatButtons" follows="top" height="16" label="Buttons on group chat name line (Affects new group chats)" name="group_concise_butt"/>