mirror of
https://github.com/FirestormViewer/phoenix-firestorm.git
synced 2026-08-14 00:48:30 +00:00
FIRE-36707 Configurable color for offline contacts in contact sets lists
Signed-off-by: PanteraPolnocy <panterapolnocy@gmail.com>
This commit is contained in:
@@ -487,6 +487,33 @@
|
||||
<key>Value</key>
|
||||
<integer>0</integer>
|
||||
</map>
|
||||
<key>FSContactSetsListColorizeOffline</key>
|
||||
<map>
|
||||
<key>Comment</key>
|
||||
<string>Whether to use a custom color for offline contacts in Contact Sets lists. A custom contact set color takes precedence when set.</string>
|
||||
<key>Persist</key>
|
||||
<integer>1</integer>
|
||||
<key>Type</key>
|
||||
<string>Boolean</string>
|
||||
<key>Value</key>
|
||||
<integer>0</integer>
|
||||
</map>
|
||||
<key>FSContactSetsListOfflineColor</key>
|
||||
<map>
|
||||
<key>Comment</key>
|
||||
<string>Custom color for offline contacts in Contact Sets lists when FSContactSetsListColorizeOffline is enabled.</string>
|
||||
<key>Persist</key>
|
||||
<integer>1</integer>
|
||||
<key>Type</key>
|
||||
<string>Color4</string>
|
||||
<key>Value</key>
|
||||
<array>
|
||||
<real>0.5</real>
|
||||
<real>0.5</real>
|
||||
<real>0.5</real>
|
||||
<real>1.0</real>
|
||||
</array>
|
||||
</map>
|
||||
<key>FSMuteAllGroups</key>
|
||||
<map>
|
||||
<key>Comment</key>
|
||||
|
||||
@@ -66,6 +66,9 @@ bool FSFloaterContactSetConfiguration::postBuild()
|
||||
mGlobalSwatch = getChild<LLColorSwatchCtrl>("global_swatch");
|
||||
mGlobalSwatch->setCommitCallback(boost::bind(&FSFloaterContactSetConfiguration::onCommitDefaultColor, this));
|
||||
|
||||
mOfflineSwatch = getChild<LLColorSwatchCtrl>("offline_swatch");
|
||||
mOfflineSwatch->setCommitCallback(boost::bind(&FSFloaterContactSetConfiguration::onCommitOfflineColor, this));
|
||||
|
||||
mNotificationCheckBox = getChild<LLCheckBoxCtrl>("show_set_notifications");
|
||||
mNotificationCheckBox->setCommitCallback(boost::bind(&FSFloaterContactSetConfiguration::onCommitSetNotifications, this));
|
||||
|
||||
@@ -103,6 +106,7 @@ void FSFloaterContactSetConfiguration::onOpen(const LLSD& target_set)
|
||||
|
||||
mSetSwatch->set(LGGContactSets::getInstance()->getSetColor(mContactSet), true);
|
||||
mGlobalSwatch->set(LGGContactSets::getInstance()->getDefaultColor(), true);
|
||||
mOfflineSwatch->set(gSavedSettings.getColor4("FSContactSetsListOfflineColor"), true);
|
||||
mNotificationCheckBox->set(LGGContactSets::getInstance()->getNotifyForSet(mContactSet));
|
||||
mSortByOnlineStatusCheckBox->set(LGGContactSets::getInstance()->getSortByOnlineStatusForSet(mContactSet));
|
||||
|
||||
@@ -140,6 +144,11 @@ void FSFloaterContactSetConfiguration::onCommitDefaultColor()
|
||||
LGGContactSets::getInstance()->setDefaultColor(mGlobalSwatch->get());
|
||||
}
|
||||
|
||||
void FSFloaterContactSetConfiguration::onCommitOfflineColor()
|
||||
{
|
||||
gSavedSettings.setColor4("FSContactSetsListOfflineColor", mOfflineSwatch->get());
|
||||
}
|
||||
|
||||
void FSFloaterContactSetConfiguration::onCommitSetAutoresponseBusy()
|
||||
{
|
||||
LGGContactSets::getInstance()->setAutoresponseForSet(mContactSet, ContactSetAutoresponseMode::BUSY, mAutoresponseBusyEnabledCheckBox->getValue().asBoolean(), mAutoresponseBusyEditor->getText());
|
||||
|
||||
@@ -53,6 +53,7 @@ private:
|
||||
void onCommitSetNotifications();
|
||||
void onCommitSetSortByOnlineStatus();
|
||||
void onCommitDefaultColor();
|
||||
void onCommitOfflineColor();
|
||||
void onCommitSetAutoresponseBusy();
|
||||
void onCommitSetAutoresponseMode();
|
||||
void onCommitSetAutoresponseNonFriends();
|
||||
@@ -74,6 +75,7 @@ private:
|
||||
LLTextEditor* mAutoresponseNonFriendsEditor;
|
||||
LLColorSwatchCtrl* mSetSwatch;
|
||||
LLColorSwatchCtrl* mGlobalSwatch;
|
||||
LLColorSwatchCtrl* mOfflineSwatch;
|
||||
LLLineEditor* mSetName;
|
||||
LLButton* mRenameButton;
|
||||
|
||||
|
||||
@@ -218,6 +218,11 @@ LLAvatarList::LLAvatarList(const Params& p)
|
||||
// <FS:PP> FIRE-32748 Colorize Friends List with Contact Sets
|
||||
gSavedSettings.getControl("FSContactSetsColorizeFriends")->getSignal()->connect(boost::bind(&LLAvatarList::refreshNames, this));
|
||||
|
||||
// <FS:PP> FIRE-36707 Configurable color for offline contacts in contact sets lists
|
||||
gSavedSettings.getControl("FSContactSetsListColorizeOffline")->getSignal()->connect(boost::bind(&LLAvatarList::refreshNames, this));
|
||||
gSavedSettings.getControl("FSContactSetsListOfflineColor")->getSignal()->connect(boost::bind(&LLAvatarList::refreshNames, this));
|
||||
// </FS:PP>
|
||||
|
||||
// <FS:Ansariel> Update voice volume slider on RLVa shownames restriction update
|
||||
mRlvBehaviorCallbackConnection = gRlvHandler.setBehaviourCallback(boost::bind(&LLAvatarList::updateRlvRestrictions, this, _1, _2));
|
||||
}
|
||||
|
||||
@@ -53,6 +53,7 @@
|
||||
#include "lfsimfeaturehandler.h" // <FS:CR> Opensim
|
||||
#include "llavatarlist.h"
|
||||
#include "lggcontactsets.h" // <FS:PP> FIRE-32748 Colorize Friends List with Contact Sets
|
||||
#include "llviewercontrol.h" // <FS:PP> FIRE-36707 Configurable color for offline contacts in contact sets lists
|
||||
|
||||
bool LLAvatarListItem::sStaticInitialized = false;
|
||||
S32 LLAvatarListItem::sLeftPadding = 0;
|
||||
@@ -609,7 +610,14 @@ void LLAvatarListItem::setNameInternal(const std::string& name, const std::strin
|
||||
{
|
||||
avatar_name_style.font = params.group_moderator_style().font();
|
||||
}
|
||||
if (params.online_style.isProvided() && params.online_style().color.isProvided())
|
||||
|
||||
static LLCachedControl<bool> fsContactSetsListColorizeOffline(gSavedSettings, "FSContactSetsListColorizeOffline", false);
|
||||
if (fsContactSetsListColorizeOffline && mOnlineStatus != E_ONLINE)
|
||||
{
|
||||
static LLCachedControl<LLColor4> fsContactSetsListOfflineColor(gSavedSettings, "FSContactSetsListOfflineColor");
|
||||
avatar_name_style.color = fsContactSetsListOfflineColor();
|
||||
}
|
||||
else if (params.online_style.isProvided() && params.online_style().color.isProvided())
|
||||
{
|
||||
avatar_name_style.color = params.online_style().color();
|
||||
}
|
||||
|
||||
@@ -101,8 +101,27 @@ Global Settings:
|
||||
name="global_swatch"
|
||||
tool_tip="Click to open Color Picker"
|
||||
width="100" />
|
||||
<color_swatch
|
||||
can_apply_immediately="true"
|
||||
follows="left|top"
|
||||
height="55"
|
||||
label=""
|
||||
top_delta="0"
|
||||
left_delta="120"
|
||||
name="offline_swatch"
|
||||
tool_tip="Color used for offline contacts in Contact Sets lists that do not belong to any Contact Set. A custom Contact Set color takes precedence."
|
||||
width="100" />
|
||||
<check_box
|
||||
follows="left|top"
|
||||
top_pad="-16"
|
||||
height="12"
|
||||
initial_value="false"
|
||||
label="Custom offline contact color"
|
||||
name="FSContactSetsListColorizeOffline"
|
||||
width="120"
|
||||
control_name="FSContactSetsListColorizeOffline"/>
|
||||
<text
|
||||
top_pad="-2"
|
||||
top_pad="2"
|
||||
follows="left|top"
|
||||
height="16"
|
||||
left="15"
|
||||
|
||||
@@ -18,6 +18,8 @@
|
||||
Ustawienia globalne:
|
||||
</text>
|
||||
<color_swatch label="Domyślny kolor" name="global_swatch" tool_tip="Kliknij, aby otworzyć paletę kolorow" />
|
||||
<color_swatch name="offline_swatch" tool_tip="Kolor używany dla kontaktów offline na listach zestawów kontaktów, które nie należą do żadnego zestawu. Kolor niestandardowego zestawu kontaktów ma pierwszeństwo." />
|
||||
<check_box label="Własny kolor kontaktów offline" name="FSContactSetsListColorizeOffline" />
|
||||
<text name="label_online">
|
||||
Powiadomienia online:
|
||||
</text>
|
||||
|
||||
Reference in New Issue
Block a user