Merge branch 'release/2025.04' of https://github.com/secondlife/viewer
# Conflicts: # indra/newview/app_settings/settings.xml # indra/newview/llvieweraudio.cpp # indra/newview/skins/default/xui/en/panel_preferences_chat.xmlmaster
commit
0f50e81c4d
|
|
@ -98,7 +98,14 @@ void LLChatMentionHelper::showHelper(LLUICtrl* host_ctrl, S32 local_x, S32 local
|
|||
LLRect rect = av_picker_floater->getRect();
|
||||
rect.setLeftTopAndSize(floater_x, floater_y + rect.getHeight(), rect.getWidth(), rect.getHeight());
|
||||
av_picker_floater->setRect(rect);
|
||||
av_picker_floater->openFloater(LLSD().with("av_name", av_name));
|
||||
if (av_picker_floater->isShown())
|
||||
{
|
||||
av_picker_floater->onOpen(LLSD().with("av_name", av_name));
|
||||
}
|
||||
else
|
||||
{
|
||||
av_picker_floater->openFloater(LLSD().with("av_name", av_name));
|
||||
}
|
||||
}
|
||||
|
||||
void LLChatMentionHelper::hideHelper(const LLUICtrl* ctrl)
|
||||
|
|
|
|||
|
|
@ -133,10 +133,13 @@ LLUUID find_ui_sound(const char * namep, bool force_sound)
|
|||
else if (ui_inst->mAudioCallback != NULL)
|
||||
{
|
||||
// <FS:PP> Silencer for FIRE-7556: Configurable User Interface sounds
|
||||
if (name != "UISndTrackerBeacon" && name != "UISndNewIncomingIMSession" && name != "UISndNewIncomingGroupIMSession" && name != "UISndNewIncomingConfIMSession") // There is no need to process these here, checks are already elsewhere
|
||||
if (name != "UISndTrackerBeacon" && name != "UISndNewIncomingIMSession" && name != "UISndNewIncomingGroupIMSession" &&
|
||||
name != "UISndNewIncomingConfIMSession" &&
|
||||
name != "UISndChatMention") // There is no need to process these here, checks are already elsewhere
|
||||
{
|
||||
if (!force_sound && ( (name != "UISndSnapshot" && !ui_inst->mSettingGroups[group_name]->getBOOL("PlayMode" + name)) || (name == "UISndSnapshot" && ui_inst->mSettingGroups["config"]->getBOOL("PlayModeUISndSnapshot")) ) )
|
||||
return LLUUID(NULL);
|
||||
if (!force_sound && ((name != "UISndSnapshot" && !ui_inst->mSettingGroups[group_name]->getBOOL("PlayMode" + name)) ||
|
||||
(name == "UISndSnapshot" && ui_inst->mSettingGroups["config"]->getBOOL("PlayModeUISndSnapshot"))))
|
||||
return LLUUID::null;
|
||||
}
|
||||
// </FS:PP>
|
||||
|
||||
|
|
|
|||
|
|
@ -9673,6 +9673,17 @@ Change of this parameter will affect the layout of buttons in notification toast
|
|||
<key>Value</key>
|
||||
<integer>0</integer>
|
||||
</map>
|
||||
<key>PlaySoundChatMention</key>
|
||||
<map>
|
||||
<key>Comment</key>
|
||||
<string>Plays a sound when got mentioned in a chat</string>
|
||||
<key>Persist</key>
|
||||
<integer>1</integer>
|
||||
<key>Type</key>
|
||||
<string>Boolean</string>
|
||||
<key>Value</key>
|
||||
<integer>0</integer>
|
||||
</map>
|
||||
<key>PluginAttachDebuggerToPlugins</key>
|
||||
<map>
|
||||
<key>Comment</key>
|
||||
|
|
@ -16229,6 +16240,28 @@ Change of this parameter will affect the layout of buttons in notification toast
|
|||
<key>Value</key>
|
||||
<string>2ca849ba-2885-4bc3-90ef-d4987a5b983a</string>
|
||||
</map>
|
||||
<key>UISndChatMention</key>
|
||||
<map>
|
||||
<key>Comment</key>
|
||||
<string>Sound file for chat mention(uuid for sound asset)</string>
|
||||
<key>Persist</key>
|
||||
<integer>1</integer>
|
||||
<key>Type</key>
|
||||
<string>String</string>
|
||||
<key>Value</key>
|
||||
<string>03e77cb5-592c-5b33-d271-2e46497c3fb3</string>
|
||||
</map>
|
||||
<key>UISndChatPing</key>
|
||||
<map>
|
||||
<key>Comment</key>
|
||||
<string>Sound file for chat ping(uuid for sound asset)</string>
|
||||
<key>Persist</key>
|
||||
<integer>1</integer>
|
||||
<key>Type</key>
|
||||
<string>String</string>
|
||||
<key>Value</key>
|
||||
<string>7dd36df6-2624-5438-f988-fdf8588a0ad9</string>
|
||||
</map>
|
||||
<key>UISndClick</key>
|
||||
<map>
|
||||
<key>Comment</key>
|
||||
|
|
|
|||
|
|
@ -238,6 +238,8 @@ void notify_of_message(const LLSD& msg, bool is_dnd_msg)
|
|||
bool store_dnd_message = false; // flag storage of a dnd message
|
||||
bool is_session_focused = session_floater->isTornOff() && session_floater->hasFocus();
|
||||
bool contains_mention = LLUrlRegistry::getInstance()->containsAgentMention(msg["message"].asString());
|
||||
static LLCachedControl<bool> play_snd_mention_pref(gSavedSettings, "PlaySoundChatMention", false);
|
||||
bool play_snd_mention = contains_mention && play_snd_mention_pref && (msg["source_type"].asInteger() != CHAT_SOURCE_OBJECT);
|
||||
if (!LLFloater::isVisible(im_box) || im_box->isMinimized())
|
||||
{
|
||||
conversations_floater_status = CLOSED;
|
||||
|
|
@ -271,7 +273,7 @@ void notify_of_message(const LLSD& msg, bool is_dnd_msg)
|
|||
else
|
||||
{
|
||||
user_preferences = gSavedSettings.getString("NotificationNearbyChatOptions");
|
||||
if (!gAgent.isDoNotDisturb() && (gSavedSettings.getBOOL("PlaySoundNearbyChatIM")))
|
||||
if (!gAgent.isDoNotDisturb() && (gSavedSettings.getBOOL("PlaySoundNearbyChatIM")) && !play_snd_mention)
|
||||
{
|
||||
make_ui_sound("UISndNewIncomingIMSession");
|
||||
}
|
||||
|
|
@ -282,7 +284,7 @@ void notify_of_message(const LLSD& msg, bool is_dnd_msg)
|
|||
if (LLAvatarTracker::instance().isBuddy(participant_id))
|
||||
{
|
||||
user_preferences = gSavedSettings.getString("NotificationFriendIMOptions");
|
||||
if (!gAgent.isDoNotDisturb() && (gSavedSettings.getBOOL("PlaySoundFriendIM")))
|
||||
if (!gAgent.isDoNotDisturb() && (gSavedSettings.getBOOL("PlaySoundFriendIM")) && !play_snd_mention)
|
||||
{
|
||||
make_ui_sound("UISndNewIncomingIMSession");
|
||||
}
|
||||
|
|
@ -290,7 +292,7 @@ void notify_of_message(const LLSD& msg, bool is_dnd_msg)
|
|||
else
|
||||
{
|
||||
user_preferences = gSavedSettings.getString("NotificationNonFriendIMOptions");
|
||||
if (!gAgent.isDoNotDisturb() && (gSavedSettings.getBOOL("PlaySoundNonFriendIM")))
|
||||
if (!gAgent.isDoNotDisturb() && (gSavedSettings.getBOOL("PlaySoundNonFriendIM")) && !play_snd_mention)
|
||||
{
|
||||
make_ui_sound("UISndNewIncomingIMSession");
|
||||
}
|
||||
|
|
@ -299,7 +301,7 @@ void notify_of_message(const LLSD& msg, bool is_dnd_msg)
|
|||
else if (session->isAdHocSessionType())
|
||||
{
|
||||
user_preferences = gSavedSettings.getString("NotificationConferenceIMOptions");
|
||||
if (!gAgent.isDoNotDisturb() && (gSavedSettings.getBOOL("PlaySoundConferenceIM")))
|
||||
if (!gAgent.isDoNotDisturb() && (gSavedSettings.getBOOL("PlaySoundConferenceIM")) && !play_snd_mention)
|
||||
{
|
||||
make_ui_sound("UISndNewIncomingIMSession");
|
||||
}
|
||||
|
|
@ -307,11 +309,18 @@ void notify_of_message(const LLSD& msg, bool is_dnd_msg)
|
|||
else if(session->isGroupSessionType())
|
||||
{
|
||||
user_preferences = gSavedSettings.getString("NotificationGroupChatOptions");
|
||||
if (!gAgent.isDoNotDisturb() && (gSavedSettings.getBOOL("PlaySoundGroupChatIM")))
|
||||
if (!gAgent.isDoNotDisturb() && (gSavedSettings.getBOOL("PlaySoundGroupChatIM")) && !play_snd_mention)
|
||||
{
|
||||
make_ui_sound("UISndNewIncomingIMSession");
|
||||
}
|
||||
}
|
||||
if (play_snd_mention)
|
||||
{
|
||||
if (!gAgent.isDoNotDisturb())
|
||||
{
|
||||
make_ui_sound("UISndChatMention");
|
||||
}
|
||||
}
|
||||
|
||||
// actions:
|
||||
|
||||
|
|
@ -469,6 +478,13 @@ void notify_of_message(const LLSD& msg, bool is_dnd_msg)
|
|||
{
|
||||
im_container->addFlashingSession(session_id);
|
||||
}
|
||||
|
||||
static LLCachedControl<bool> play_snd_mention_pref(gSavedSettings, "PlaySoundChatMention", false);
|
||||
if (play_snd_mention_pref && (msg["source_type"].asInteger() != CHAT_SOURCE_OBJECT) && LLUrlRegistry::getInstance()->containsAgentMention(msg["message"].asString()))
|
||||
{
|
||||
make_ui_sound("UISndChatMention");
|
||||
}
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
@ -3493,6 +3509,8 @@ void LLIMMgr::addMessage(
|
|||
static LLCachedControl<U32> PlayModeUISndNewIncomingIMSession(gSavedSettings, "PlayModeUISndNewIncomingIMSession");
|
||||
static LLCachedControl<U32> PlayModeUISndNewIncomingGroupIMSession(gSavedSettings, "PlayModeUISndNewIncomingGroupIMSession");
|
||||
static LLCachedControl<U32> PlayModeUISndNewIncomingConfIMSession(gSavedSettings, "PlayModeUISndNewIncomingConfIMSession");
|
||||
static LLCachedControl<bool> play_snd_mention_pref(gSavedSettings, "PlaySoundChatMention", false);
|
||||
bool play_snd_mention = play_snd_mention_pref && LLUrlRegistry::getInstance()->containsAgentMention(msg);
|
||||
bool do_not_disturb = gAgent.isDoNotDisturb();
|
||||
bool is_group_chat = false;
|
||||
if (dialog != IM_NOTHING_SPECIAL)
|
||||
|
|
@ -3640,15 +3658,15 @@ void LLIMMgr::addMessage(
|
|||
}
|
||||
// </FS:PP>
|
||||
|
||||
if(!do_not_disturb && PlayModeUISndNewIncomingIMSession != 0 && dialog == IM_NOTHING_SPECIAL)
|
||||
if(!do_not_disturb && PlayModeUISndNewIncomingIMSession != 0 && dialog == IM_NOTHING_SPECIAL && !play_snd_mention)
|
||||
{
|
||||
make_ui_sound("UISndNewIncomingIMSession");
|
||||
}
|
||||
else if(!do_not_disturb && PlayModeUISndNewIncomingGroupIMSession != 0 && dialog != IM_NOTHING_SPECIAL && is_group_chat)
|
||||
else if(!do_not_disturb && PlayModeUISndNewIncomingGroupIMSession != 0 && dialog != IM_NOTHING_SPECIAL && is_group_chat && !play_snd_mention)
|
||||
{
|
||||
make_ui_sound("UISndNewIncomingGroupIMSession");
|
||||
}
|
||||
else if(!do_not_disturb && PlayModeUISndNewIncomingConfIMSession != 0 && dialog != IM_NOTHING_SPECIAL && !is_group_chat)
|
||||
else if(!do_not_disturb && PlayModeUISndNewIncomingConfIMSession != 0 && dialog != IM_NOTHING_SPECIAL && !is_group_chat && !play_snd_mention)
|
||||
{
|
||||
make_ui_sound("UISndNewIncomingConfIMSession");
|
||||
}
|
||||
|
|
@ -3667,15 +3685,15 @@ void LLIMMgr::addMessage(
|
|||
return;
|
||||
}
|
||||
// </FS:Zi>
|
||||
else if(!do_not_disturb && PlayModeUISndNewIncomingIMSession == 2 && dialog == IM_NOTHING_SPECIAL)
|
||||
else if(!do_not_disturb && PlayModeUISndNewIncomingIMSession == 2 && dialog == IM_NOTHING_SPECIAL && !play_snd_mention)
|
||||
{
|
||||
make_ui_sound("UISndNewIncomingIMSession");
|
||||
}
|
||||
else if(!do_not_disturb && PlayModeUISndNewIncomingGroupIMSession == 2 && dialog != IM_NOTHING_SPECIAL && is_group_chat)
|
||||
else if(!do_not_disturb && PlayModeUISndNewIncomingGroupIMSession == 2 && dialog != IM_NOTHING_SPECIAL && is_group_chat && !play_snd_mention)
|
||||
{
|
||||
make_ui_sound("UISndNewIncomingGroupIMSession");
|
||||
}
|
||||
else if(!do_not_disturb && PlayModeUISndNewIncomingConfIMSession == 2 && dialog != IM_NOTHING_SPECIAL && !is_group_chat)
|
||||
else if(!do_not_disturb && PlayModeUISndNewIncomingConfIMSession == 2 && dialog != IM_NOTHING_SPECIAL && !is_group_chat && !play_snd_mention)
|
||||
{
|
||||
make_ui_sound("UISndNewIncomingConfIMSession");
|
||||
// </FS:PP>
|
||||
|
|
@ -3687,7 +3705,7 @@ void LLIMMgr::addMessage(
|
|||
//LLIMFloater* im_floater = LLIMFloater::findInstance(session_id);
|
||||
FSFloaterIM* im_floater = FSFloaterIM::findInstance(session_id);
|
||||
// </FS:Ansariel> [FS communication UI]
|
||||
if (im_floater && !im_floater->hasFocus())
|
||||
if (im_floater && !im_floater->hasFocus() && !play_snd_mention)
|
||||
{
|
||||
make_ui_sound("UISndNewIncomingIMSession");
|
||||
}
|
||||
|
|
@ -3698,7 +3716,7 @@ void LLIMMgr::addMessage(
|
|||
//LLIMFloater* im_floater = LLIMFloater::findInstance(session_id);
|
||||
FSFloaterIM* im_floater = FSFloaterIM::findInstance(session_id);
|
||||
// </FS:Ansariel> [FS communication UI]
|
||||
if (im_floater && !im_floater->hasFocus())
|
||||
if (im_floater && !im_floater->hasFocus() && !play_snd_mention)
|
||||
{
|
||||
make_ui_sound("UISndNewIncomingGroupIMSession");
|
||||
}
|
||||
|
|
@ -3709,13 +3727,18 @@ void LLIMMgr::addMessage(
|
|||
//LLIMFloater* im_floater = LLIMFloater::findInstance(session_id);
|
||||
FSFloaterIM* im_floater = FSFloaterIM::findInstance(session_id);
|
||||
// </FS:Ansariel> [FS communication UI]
|
||||
if (im_floater && !im_floater->hasFocus())
|
||||
if (im_floater && !im_floater->hasFocus() && !play_snd_mention)
|
||||
{
|
||||
make_ui_sound("UISndNewIncomingConfIMSession");
|
||||
}
|
||||
}
|
||||
// </FS:WoLf>
|
||||
|
||||
if (play_snd_mention)
|
||||
{
|
||||
make_ui_sound("UISndChatMention");
|
||||
}
|
||||
|
||||
if (!LLMuteList::getInstance()->isMuted(other_participant_id, LLMute::flagTextChat) && !skip_message)
|
||||
{
|
||||
// <FS:Ansariel> Added is_announcement parameter
|
||||
|
|
|
|||
|
|
@ -2942,6 +2942,7 @@ bool LLFolderBridge::dragCategoryIntoFolder(LLInventoryCategory* inv_cat,
|
|||
//
|
||||
|
||||
bool is_movable = true;
|
||||
bool create_outfit = false;
|
||||
|
||||
if (is_movable && (marketplacelistings_id == cat_id))
|
||||
{
|
||||
|
|
@ -2986,7 +2987,12 @@ bool LLFolderBridge::dragCategoryIntoFolder(LLInventoryCategory* inv_cat,
|
|||
tooltip_msg = LLTrans::getString("TooltipOutfitNotInInventory");
|
||||
is_movable = false;
|
||||
}
|
||||
else if (can_move_to_my_outfits(model, inv_cat, max_items_to_wear))
|
||||
else if (can_move_to_my_outfits_as_outfit(model, inv_cat, max_items_to_wear))
|
||||
{
|
||||
is_movable = true;
|
||||
create_outfit = true;
|
||||
}
|
||||
else if (can_move_to_my_outfits_as_subfolder(model, inv_cat))
|
||||
{
|
||||
is_movable = true;
|
||||
}
|
||||
|
|
@ -3020,7 +3026,12 @@ bool LLFolderBridge::dragCategoryIntoFolder(LLInventoryCategory* inv_cat,
|
|||
is_movable = false;
|
||||
tooltip_msg = LLTrans::getString("TooltipCantCreateOutfit");
|
||||
}
|
||||
else if (can_move_to_my_outfits(model, inv_cat, max_items_to_wear))
|
||||
else if (can_move_to_my_outfits_as_outfit(model, inv_cat, max_items_to_wear))
|
||||
{
|
||||
is_movable = true;
|
||||
create_outfit = true;
|
||||
}
|
||||
else if (can_move_to_my_outfits_as_subfolder(model, inv_cat))
|
||||
{
|
||||
is_movable = true;
|
||||
}
|
||||
|
|
@ -3232,7 +3243,7 @@ bool LLFolderBridge::dragCategoryIntoFolder(LLInventoryCategory* inv_cat,
|
|||
if (mUUID == my_outifts_id)
|
||||
{
|
||||
EMyOutfitsSubfolderType inv_res = myoutfit_object_subfolder_type(model, cat_id, my_outifts_id);
|
||||
if (inv_res == MY_OUTFITS_SUBFOLDER || inv_res == MY_OUTFITS_OUTFIT)
|
||||
if (inv_res == MY_OUTFITS_SUBFOLDER || inv_res == MY_OUTFITS_OUTFIT || !create_outfit)
|
||||
{
|
||||
LLInvFVBridge::changeCategoryParent(
|
||||
model,
|
||||
|
|
@ -3256,7 +3267,7 @@ bool LLFolderBridge::dragCategoryIntoFolder(LLInventoryCategory* inv_cat,
|
|||
{
|
||||
case MY_OUTFITS_NO:
|
||||
// Moning from outside outfits into outfits
|
||||
if (dest_res == MY_OUTFITS_SUBFOLDER)
|
||||
if (dest_res == MY_OUTFITS_SUBFOLDER && create_outfit)
|
||||
{
|
||||
// turn it into outfit
|
||||
dropToMyOutfitsSubfolder(inv_cat, mUUID, LLFolderType::FT_OUTFIT, cb);
|
||||
|
|
@ -4478,7 +4489,6 @@ void LLFolderBridge::perform_pasteFromClipboard()
|
|||
LLInventoryObject *obj = model->getObject(item_id);
|
||||
if (obj)
|
||||
{
|
||||
|
||||
if (move_is_into_lost_and_found)
|
||||
{
|
||||
if (LLAssetType::AT_CATEGORY == obj->getType())
|
||||
|
|
@ -4501,9 +4511,9 @@ void LLFolderBridge::perform_pasteFromClipboard()
|
|||
}
|
||||
else if (/*move_is_into_my_outfits &&*/ LLAssetType::AT_CATEGORY == obj->getType()) // <FS:Ansariel> Unable to copy&paste into outfits anymore
|
||||
{
|
||||
LLInventoryCategory* cat = model->getCategory(item_id);
|
||||
LLViewerInventoryCategory* cat = model->getCategory(item_id);
|
||||
U32 max_items_to_wear = gSavedSettings.getU32("WearFolderLimit");
|
||||
if (cat && can_move_to_my_outfits(model, cat, max_items_to_wear))
|
||||
if (cat && can_move_to_my_outfits_as_outfit(model, cat, max_items_to_wear))
|
||||
{
|
||||
if (mUUID == my_outifts_id)
|
||||
{
|
||||
|
|
@ -4523,6 +4533,18 @@ void LLFolderBridge::perform_pasteFromClipboard()
|
|||
}
|
||||
}
|
||||
}
|
||||
else if (cat && can_move_to_my_outfits_as_subfolder(model, cat))
|
||||
{
|
||||
if (LLClipboard::instance().isCutMode())
|
||||
{
|
||||
changeCategoryParent(model, cat, parent_id, false);
|
||||
if (cb) cb->fire(item_id);
|
||||
}
|
||||
else
|
||||
{
|
||||
copy_inventory_category(model, cat, parent_id);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
LLNotificationsUtil::add("MyOutfitsPasteFailed");
|
||||
|
|
@ -4571,7 +4593,7 @@ void LLFolderBridge::perform_pasteFromClipboard()
|
|||
// move_inventory_item() is not enough, as we have to update inventory locally too
|
||||
if (LLAssetType::AT_CATEGORY == obj->getType())
|
||||
{
|
||||
LLViewerInventoryCategory* vicat = (LLViewerInventoryCategory *) model->getCategory(item_id);
|
||||
LLViewerInventoryCategory* vicat = model->getCategory(item_id);
|
||||
llassert(vicat);
|
||||
if (vicat)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -2457,7 +2457,7 @@ bool can_move_to_landmarks(LLInventoryItem* inv_item)
|
|||
}
|
||||
|
||||
// Returns true if folder's content can be moved to Current Outfit or any outfit folder.
|
||||
bool can_move_to_my_outfits(LLInventoryModel* model, LLInventoryCategory* inv_cat, U32 wear_limit)
|
||||
bool can_move_to_my_outfits_as_outfit(LLInventoryModel* model, LLInventoryCategory* inv_cat, U32 wear_limit)
|
||||
{
|
||||
LLInventoryModel::cat_array_t *cats;
|
||||
LLInventoryModel::item_array_t *items;
|
||||
|
|
@ -2496,6 +2496,45 @@ bool can_move_to_my_outfits(LLInventoryModel* model, LLInventoryCategory* inv_ca
|
|||
return true;
|
||||
}
|
||||
|
||||
bool can_move_to_my_outfits_as_subfolder(LLInventoryModel* model, LLInventoryCategory* inv_cat, S32 depth)
|
||||
{
|
||||
LLInventoryModel::cat_array_t* cats;
|
||||
LLInventoryModel::item_array_t* items;
|
||||
model->getDirectDescendentsOf(inv_cat->getUUID(), cats, items);
|
||||
|
||||
if (items->size() > 0)
|
||||
{
|
||||
// subfolders don't allow items
|
||||
return false;
|
||||
}
|
||||
|
||||
constexpr size_t MAX_CONTENT = 255;
|
||||
if (cats->size() > MAX_CONTENT)
|
||||
{
|
||||
// don't allow massive folders
|
||||
return false;
|
||||
}
|
||||
|
||||
for (LLPointer<LLViewerInventoryCategory>& cat : *cats)
|
||||
{
|
||||
// outfits are valid to move, check non-outfit folders
|
||||
if (cat->getPreferredType() != LLFolderType::FT_OUTFIT)
|
||||
{
|
||||
if (depth == 3)
|
||||
{
|
||||
// don't allow massive folders
|
||||
return false;
|
||||
}
|
||||
if (!can_move_to_my_outfits_as_subfolder(model, cat, depth + 1))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
std::string get_localized_folder_name(LLUUID cat_uuid)
|
||||
{
|
||||
std::string localized_root_name;
|
||||
|
|
|
|||
|
|
@ -119,7 +119,8 @@ std::string get_category_path(LLUUID cat_id);
|
|||
|
||||
bool can_move_to_outfit(LLInventoryItem* inv_item, bool move_is_into_current_outfit);
|
||||
bool can_move_to_landmarks(LLInventoryItem* inv_item);
|
||||
bool can_move_to_my_outfits(LLInventoryModel* model, LLInventoryCategory* inv_cat, U32 wear_limit);
|
||||
bool can_move_to_my_outfits_as_outfit(LLInventoryModel* model, LLInventoryCategory* inv_cat, U32 wear_limit);
|
||||
bool can_move_to_my_outfits_as_subfolder(LLInventoryModel* model, LLInventoryCategory* inv_cat, S32 depth = 0);
|
||||
std::string get_localized_folder_name(LLUUID cat_uuid);
|
||||
void new_folder_window(const LLUUID& folder_id);
|
||||
void ungroup_folder_items(const LLUUID& folder_id);
|
||||
|
|
|
|||
|
|
@ -3720,6 +3720,7 @@ bool dragCategoryIntoFolder(LLUUID dest_id, LLInventoryCategory* inv_cat,
|
|||
//
|
||||
|
||||
bool is_movable = true;
|
||||
bool create_outfit = false;
|
||||
|
||||
if (is_movable && (marketplacelistings_id == cat_id))
|
||||
{
|
||||
|
|
@ -3765,7 +3766,12 @@ bool dragCategoryIntoFolder(LLUUID dest_id, LLInventoryCategory* inv_cat,
|
|||
tooltip_msg = LLTrans::getString("TooltipOutfitNotInInventory");
|
||||
is_movable = false;
|
||||
}
|
||||
else if (can_move_to_my_outfits(model, inv_cat, max_items_to_wear))
|
||||
else if (can_move_to_my_outfits_as_outfit(model, inv_cat, max_items_to_wear))
|
||||
{
|
||||
is_movable = true;
|
||||
create_outfit = true;
|
||||
}
|
||||
else if (can_move_to_my_outfits_as_subfolder(model, inv_cat))
|
||||
{
|
||||
is_movable = true;
|
||||
}
|
||||
|
|
@ -3799,7 +3805,12 @@ bool dragCategoryIntoFolder(LLUUID dest_id, LLInventoryCategory* inv_cat,
|
|||
is_movable = false;
|
||||
tooltip_msg = LLTrans::getString("TooltipCantCreateOutfit");
|
||||
}
|
||||
else if (can_move_to_my_outfits(model, inv_cat, max_items_to_wear))
|
||||
else if (can_move_to_my_outfits_as_outfit(model, inv_cat, max_items_to_wear))
|
||||
{
|
||||
is_movable = true;
|
||||
create_outfit = true;
|
||||
}
|
||||
else if (can_move_to_my_outfits_as_subfolder(model, inv_cat))
|
||||
{
|
||||
is_movable = true;
|
||||
}
|
||||
|
|
@ -3934,7 +3945,7 @@ bool dragCategoryIntoFolder(LLUUID dest_id, LLInventoryCategory* inv_cat,
|
|||
if (dest_id == my_outifts_id)
|
||||
{
|
||||
EMyOutfitsSubfolderType inv_res = myoutfit_object_subfolder_type(model, cat_id, my_outifts_id);
|
||||
if (inv_res == MY_OUTFITS_SUBFOLDER || inv_res == MY_OUTFITS_OUTFIT)
|
||||
if (inv_res == MY_OUTFITS_SUBFOLDER || inv_res == MY_OUTFITS_OUTFIT || !create_outfit)
|
||||
{
|
||||
gInventory.changeCategoryParent(
|
||||
(LLViewerInventoryCategory*)inv_cat,
|
||||
|
|
@ -3956,7 +3967,7 @@ bool dragCategoryIntoFolder(LLUUID dest_id, LLInventoryCategory* inv_cat,
|
|||
{
|
||||
case MY_OUTFITS_NO:
|
||||
// Moning from outside outfits into outfits
|
||||
if (dest_res == MY_OUTFITS_SUBFOLDER)
|
||||
if (dest_res == MY_OUTFITS_SUBFOLDER && create_outfit)
|
||||
{
|
||||
// turn it into outfit
|
||||
dropToMyOutfitsSubfolder(inv_cat, dest_id, LLFolderType::FT_OUTFIT);
|
||||
|
|
|
|||
|
|
@ -432,6 +432,7 @@ void init_audio()
|
|||
gAudiop->preloadSound(LLUUID(gSavedSettings.getString("UISndWindowClose")));
|
||||
gAudiop->preloadSound(LLUUID(gSavedSettings.getString("UISndWindowOpen")));
|
||||
gAudiop->preloadSound(LLUUID(gSavedSettings.getString("UISndRestart")));
|
||||
gAudiop->preloadSound(LLUUID(gSavedSettings.getString("UISndChatMention")));
|
||||
gAudiop->preloadSound(LLUUID(gSavedSettings.getString("UISndRestartOpenSim"))); // <FS:Ansariel> Preload OpenSim restart sound
|
||||
gAudiop->preloadSound(LLUUID(gSavedSettings.getString("UISndScriptFloaterOpen"))); // <FS:PP> Separate sound for opening script dialogs
|
||||
// <FS:Zi> Pie menu
|
||||
|
|
|
|||
|
|
@ -254,6 +254,13 @@ Der jeweilige Standardwert wird im Hovertip des UUID-Feldes angezeigt.
|
|||
<button label="S" name="Def_UISndStartIM" tool_tip="Auf Standardwert zurücksetzen."/>
|
||||
<check_box label="Abspielen" name="PlayModeUISndStartIM"/>
|
||||
|
||||
<text tool_tip="UUID des Klangs bei einer Erwähnung im Chat." name="textChatMention">
|
||||
Chat-Erwähnung:
|
||||
</text>
|
||||
<button label="V" name="Prev_UISndChatMention" tool_tip="Vorschau zu diesem Klang."/>
|
||||
<button label="S" name="Def_UISndChatMention" tool_tip="Auf Standardwert zurücksetzen."/>
|
||||
<check_box label="Abspielen" name="PlayModeUISndChatMention"/>
|
||||
|
||||
<text tool_tip="UUID des Klangs beim Erzeugen eines neuen Objektes." name="textFSObjectCreate">
|
||||
Objekterstellung:
|
||||
</text>
|
||||
|
|
@ -288,15 +295,7 @@ Der jeweilige Standardwert wird im Hovertip des UUID-Feldes angezeigt.
|
|||
<button label="V" name="Prev_UISndSnapshot" tool_tip="Vorschau zu diesem Klang."/>
|
||||
<button label="S" name="Def_UISndSnapshot" tool_tip="Auf Standardwert zurücksetzen."/>
|
||||
<check_box label="Stummschalten" name="QuietSnapshotsToDiskCheckBox"/>
|
||||
|
||||
<text tool_tip="UUID des Klangs beim Teleportieren. Diese Einstellung ist gekoppelt an die Option Bewegen/Anzeigen > Bewegung > 'Soundeffekte beim Teleportieren abspielen'." name="textFSTeleportOut">
|
||||
Teleportieren:
|
||||
</text>
|
||||
<button label="V" name="Prev_UISndTeleportOut" tool_tip="Vorschau zu diesem Klang."/>
|
||||
<button label="S" name="Def_UISndTeleportOut" tool_tip="Auf Standardwert zurücksetzen."/>
|
||||
<check_box label="Abspielen" name="PlayModeUISndTeleportOut"/>
|
||||
|
||||
</panel>
|
||||
</panel>
|
||||
|
||||
<!-- UI Sounds 2 -->
|
||||
<panel label="UI-Klänge 2" name="UI Sounds tab 2">
|
||||
|
|
@ -305,6 +304,13 @@ Der jeweilige Standardwert wird im Hovertip des UUID-Feldes angezeigt.
|
|||
Der jeweilige Standardwert wird im Hovertip des UUID-Feldes angezeigt.
|
||||
</text>
|
||||
|
||||
<text tool_tip="UUID des Klangs beim Teleportieren. Diese Einstellung ist gekoppelt an die Option Bewegen/Anzeigen > Bewegung > 'Soundeffekte beim Teleportieren abspielen'." name="textFSTeleportOut">
|
||||
Teleportieren:
|
||||
</text>
|
||||
<button label="V" name="Prev_UISndTeleportOut" tool_tip="Vorschau zu diesem Klang."/>
|
||||
<button label="S" name="Def_UISndTeleportOut" tool_tip="Auf Standardwert zurücksetzen."/>
|
||||
<check_box label="Abspielen" name="PlayModeUISndTeleportOut"/>
|
||||
|
||||
<text tool_tip="UUID des Klangs beim Öffnen des Pie-Menüs." name="textFSPieMenuAppear">
|
||||
Öffnen Pie-Menü:
|
||||
</text>
|
||||
|
|
@ -423,13 +429,6 @@ Der jeweilige Standardwert wird im Hovertip des UUID-Feldes angezeigt.
|
|||
<button label="V" name="Prev_UISndFriendshipOffer" tool_tip="Vorschau zu diesem Klang."/>
|
||||
<button label="S" name="Def_UISndFriendshipOffer" tool_tip="Auf Standardwert zurücksetzen."/>
|
||||
<check_box label="Abspielen" name="PlayModeUISndFriendshipOffer"/>
|
||||
|
||||
<text tool_tip="UUID des Klangs für Teleport-Angebote." name="textFSTeleportOffer">
|
||||
Teleport-Angebote:
|
||||
</text>
|
||||
<button label="V" name="Prev_UISndTeleportOffer" tool_tip="Vorschau zu diesem Klang."/>
|
||||
<button label="S" name="Def_UISndTeleportOffer" tool_tip="Auf Standardwert zurücksetzen."/>
|
||||
<check_box label="Abspielen" name="PlayModeUISndTeleportOffer"/>
|
||||
</panel>
|
||||
|
||||
<!-- UI Sounds 3 -->
|
||||
|
|
@ -439,6 +438,13 @@ Der jeweilige Standardwert wird im Hovertip des UUID-Feldes angezeigt.
|
|||
Der jeweilige Standardwert wird im Hovertip des UUID-Feldes angezeigt.
|
||||
</text>
|
||||
|
||||
<text tool_tip="UUID des Klangs für Teleport-Angebote." name="textFSTeleportOffer">
|
||||
Teleport-Angebote:
|
||||
</text>
|
||||
<button label="V" name="Prev_UISndTeleportOffer" tool_tip="Vorschau zu diesem Klang."/>
|
||||
<button label="S" name="Def_UISndTeleportOffer" tool_tip="Auf Standardwert zurücksetzen."/>
|
||||
<check_box label="Abspielen" name="PlayModeUISndTeleportOffer"/>
|
||||
|
||||
<text tool_tip="UUID des Klangs für Inventarangebote" name="textFSInventoryOffer">
|
||||
Inventarangebote:
|
||||
</text>
|
||||
|
|
|
|||
|
|
@ -1426,7 +1426,7 @@ Hover your mouse cursor over UUID field to show its default value.
|
|||
left="5"
|
||||
height="14"
|
||||
width="150"
|
||||
tool_tip="Sound UUID played, when female avatar takes damage."
|
||||
tool_tip="Sound UUID played when female avatar takes damage."
|
||||
name="textFSHealthReductionF">
|
||||
Female avatar hurt:
|
||||
</text>
|
||||
|
|
@ -1482,7 +1482,7 @@ Hover your mouse cursor over UUID field to show its default value.
|
|||
left="5"
|
||||
height="14"
|
||||
width="150"
|
||||
tool_tip="Sound UUID played, when male avatar takes damage."
|
||||
tool_tip="Sound UUID played when male avatar takes damage."
|
||||
name="textFSHealthReductionM">
|
||||
Male avatar hurt:
|
||||
</text>
|
||||
|
|
@ -1866,7 +1866,7 @@ Hover your mouse cursor over UUID field to show its default value.
|
|||
left="5"
|
||||
height="14"
|
||||
width="150"
|
||||
tool_tip="Sound UUID played, when starting new IM session."
|
||||
tool_tip="Sound UUID played when starting new IM session."
|
||||
name="textFSStartIM">
|
||||
Starting IM session:
|
||||
</text>
|
||||
|
|
@ -1915,6 +1915,62 @@ Hover your mouse cursor over UUID field to show its default value.
|
|||
left_pad="1"
|
||||
width="120" />
|
||||
|
||||
<text
|
||||
layout="topleft"
|
||||
follows="left|top"
|
||||
top_pad="7"
|
||||
left="5"
|
||||
height="14"
|
||||
width="150"
|
||||
tool_tip="Sound UUID played when being mentioned in chat."
|
||||
name="textChatMention">
|
||||
Chat mentions:
|
||||
</text>
|
||||
<line_editor
|
||||
follows="left|top"
|
||||
left_pad="5"
|
||||
height="20"
|
||||
max_length_chars="256"
|
||||
name="UISndChatMention"
|
||||
control_name="UISndChatMention"
|
||||
width="218"/>
|
||||
<button
|
||||
follows="left|top"
|
||||
name="Prev_UISndChatMention"
|
||||
height="20"
|
||||
label="P"
|
||||
layout="topleft"
|
||||
top_delta="-1"
|
||||
left_pad="1"
|
||||
width="17"
|
||||
sound_flags="0"
|
||||
tool_tip="Preview this sound.">
|
||||
<button.commit_callback
|
||||
function="PreviewUISound"
|
||||
parameter="UISndChatMention"/>
|
||||
</button>
|
||||
<button
|
||||
follows="left|top"
|
||||
name="Def_UISndChatMention"
|
||||
height="20"
|
||||
label="D"
|
||||
layout="topleft"
|
||||
left_pad="1"
|
||||
width="17"
|
||||
tool_tip="Reset to the default UUID.">
|
||||
<button.commit_callback
|
||||
function="ResetControl"
|
||||
parameter="UISndChatMention"/>
|
||||
</button>
|
||||
<check_box
|
||||
control_name="PlaySoundChatMention"
|
||||
height="20"
|
||||
label="Play this sound"
|
||||
layout="topleft"
|
||||
name="PlayModeUISndChatMention"
|
||||
left_pad="1"
|
||||
width="120" />
|
||||
|
||||
<text
|
||||
layout="topleft"
|
||||
follows="left|top"
|
||||
|
|
@ -2194,11 +2250,34 @@ Hover your mouse cursor over UUID field to show its default value.
|
|||
name="QuietSnapshotsToDiskCheckBox"
|
||||
left_pad="1"
|
||||
width="120" />
|
||||
</panel>
|
||||
|
||||
<!-- UI Sounds 2 -->
|
||||
<panel
|
||||
top_pad="5"
|
||||
bottom="-1"
|
||||
left="1"
|
||||
right="-1"
|
||||
follows="all"
|
||||
label="UI Sounds 2"
|
||||
name="UI Sounds tab 2">
|
||||
|
||||
<text
|
||||
layout="topleft"
|
||||
follows="left|top"
|
||||
top_pad="10"
|
||||
left="5"
|
||||
height="14"
|
||||
width="520"
|
||||
name="textFSExplanation_tab2">
|
||||
Here you can change (by providing sound UUIDs), enable or disable default interface sounds.
|
||||
Hover your mouse cursor over UUID field to show its default value.
|
||||
</text>
|
||||
|
||||
<text
|
||||
layout="topleft"
|
||||
follows="left|top"
|
||||
top_pad="7"
|
||||
top_pad="25"
|
||||
left="5"
|
||||
height="14"
|
||||
width="150"
|
||||
|
|
@ -2251,38 +2330,14 @@ Hover your mouse cursor over UUID field to show its default value.
|
|||
left_pad="1"
|
||||
width="120" />
|
||||
|
||||
</panel>
|
||||
|
||||
<!-- UI Sounds 2 -->
|
||||
<panel
|
||||
top_pad="5"
|
||||
bottom="-1"
|
||||
left="1"
|
||||
right="-1"
|
||||
follows="all"
|
||||
label="UI Sounds 2"
|
||||
name="UI Sounds tab 2">
|
||||
|
||||
<text
|
||||
layout="topleft"
|
||||
follows="left|top"
|
||||
top_pad="10"
|
||||
left="5"
|
||||
height="14"
|
||||
width="520"
|
||||
name="textFSExplanation_tab2">
|
||||
Here you can change (by providing sound UUIDs), enable or disable default interface sounds.
|
||||
Hover your mouse cursor over UUID field to show its default value.
|
||||
</text>
|
||||
|
||||
<text
|
||||
layout="topleft"
|
||||
follows="left|top"
|
||||
top_pad="25"
|
||||
top_pad="7"
|
||||
left="5"
|
||||
height="14"
|
||||
width="150"
|
||||
tool_tip="Sound UUID played, when Pie Menu appears."
|
||||
tool_tip="Sound UUID played when Pie Menu appears."
|
||||
name="textFSPieMenuAppear">
|
||||
Pie Menu appear:
|
||||
</text>
|
||||
|
|
@ -2338,7 +2393,7 @@ Hover your mouse cursor over UUID field to show its default value.
|
|||
left="5"
|
||||
height="14"
|
||||
width="150"
|
||||
tool_tip="Sound UUID played, when Pie Menu disappears."
|
||||
tool_tip="Sound UUID played when Pie Menu disappears."
|
||||
name="textFSPieMenuHide">
|
||||
Pie Menu disappear:
|
||||
</text>
|
||||
|
|
@ -2394,7 +2449,7 @@ Hover your mouse cursor over UUID field to show its default value.
|
|||
left="5"
|
||||
height="14"
|
||||
width="150"
|
||||
tool_tip="Sound UUID played, when selecting pie menu item 1."
|
||||
tool_tip="Sound UUID played when selecting pie menu item 1."
|
||||
name="textFSPieMenuSliceHighlight0">
|
||||
Pie Menu option 1:
|
||||
</text>
|
||||
|
|
@ -2450,7 +2505,7 @@ Hover your mouse cursor over UUID field to show its default value.
|
|||
left="5"
|
||||
height="14"
|
||||
width="150"
|
||||
tool_tip="Sound UUID played, when selecting pie menu item 2."
|
||||
tool_tip="Sound UUID played when selecting pie menu item 2."
|
||||
name="textFSPieMenuSliceHighlight1">
|
||||
Pie Menu option 2:
|
||||
</text>
|
||||
|
|
@ -2506,7 +2561,7 @@ Hover your mouse cursor over UUID field to show its default value.
|
|||
left="5"
|
||||
height="14"
|
||||
width="150"
|
||||
tool_tip="Sound UUID played, when selecting pie menu item 3."
|
||||
tool_tip="Sound UUID played when selecting pie menu item 3."
|
||||
name="textFSPieMenuSliceHighlight2">
|
||||
Pie Menu option 3:
|
||||
</text>
|
||||
|
|
@ -2562,7 +2617,7 @@ Hover your mouse cursor over UUID field to show its default value.
|
|||
left="5"
|
||||
height="14"
|
||||
width="150"
|
||||
tool_tip="Sound UUID played, when selecting pie menu item 4."
|
||||
tool_tip="Sound UUID played when selecting pie menu item 4."
|
||||
name="textFSPieMenuSliceHighlight3">
|
||||
Pie Menu option 4:
|
||||
</text>
|
||||
|
|
@ -2618,7 +2673,7 @@ Hover your mouse cursor over UUID field to show its default value.
|
|||
left="5"
|
||||
height="14"
|
||||
width="150"
|
||||
tool_tip="Sound UUID played, when selecting pie menu item 5."
|
||||
tool_tip="Sound UUID played when selecting pie menu item 5."
|
||||
name="textFSPieMenuSliceHighlight4">
|
||||
Pie Menu option 5:
|
||||
</text>
|
||||
|
|
@ -2674,7 +2729,7 @@ Hover your mouse cursor over UUID field to show its default value.
|
|||
left="5"
|
||||
height="14"
|
||||
width="150"
|
||||
tool_tip="Sound UUID played, when selecting pie menu item 6."
|
||||
tool_tip="Sound UUID played when selecting pie menu item 6."
|
||||
name="textFSPieMenuSliceHighlight5">
|
||||
Pie Menu option 6:
|
||||
</text>
|
||||
|
|
@ -2730,7 +2785,7 @@ Hover your mouse cursor over UUID field to show its default value.
|
|||
left="5"
|
||||
height="14"
|
||||
width="150"
|
||||
tool_tip="Sound UUID played, when selecting pie menu item 7."
|
||||
tool_tip="Sound UUID played when selecting pie menu item 7."
|
||||
name="textFSPieMenuSliceHighlight6">
|
||||
Pie Menu option 7:
|
||||
</text>
|
||||
|
|
@ -2786,7 +2841,7 @@ Hover your mouse cursor over UUID field to show its default value.
|
|||
left="5"
|
||||
height="14"
|
||||
width="150"
|
||||
tool_tip="Sound UUID played, when selecting pie menu item 8."
|
||||
tool_tip="Sound UUID played when selecting pie menu item 8."
|
||||
name="textFSPieMenuSliceHighlight7">
|
||||
Pie Menu option 8:
|
||||
</text>
|
||||
|
|
@ -2842,7 +2897,7 @@ Hover your mouse cursor over UUID field to show its default value.
|
|||
left="5"
|
||||
height="14"
|
||||
width="150"
|
||||
tool_tip="Sound UUID played, when starting to type a chat message. This setting is shared with Chat > General > 'Hear typing sound when people type in nearby chat'."
|
||||
tool_tip="Sound UUID played when starting to type a chat message. This setting is shared with Chat > General > 'Hear typing sound when people type in nearby chat'."
|
||||
name="textFSTyping">
|
||||
Typing a message:
|
||||
</text>
|
||||
|
|
@ -2898,7 +2953,7 @@ Hover your mouse cursor over UUID field to show its default value.
|
|||
left="5"
|
||||
height="14"
|
||||
width="150"
|
||||
tool_tip="Sound UUID played, when closing a window."
|
||||
tool_tip="Sound UUID played when closing a window."
|
||||
name="textFSWindowClose">
|
||||
Closing a window:
|
||||
</text>
|
||||
|
|
@ -2954,7 +3009,7 @@ Hover your mouse cursor over UUID field to show its default value.
|
|||
left="5"
|
||||
height="14"
|
||||
width="150"
|
||||
tool_tip="Sound UUID played, when opening a window."
|
||||
tool_tip="Sound UUID played when opening a window."
|
||||
name="textFSWindowOpen">
|
||||
Opening a window:
|
||||
</text>
|
||||
|
|
@ -3010,7 +3065,7 @@ Hover your mouse cursor over UUID field to show its default value.
|
|||
left="5"
|
||||
height="14"
|
||||
width="150"
|
||||
tool_tip="Sound UUID played, when script opens a dialog window."
|
||||
tool_tip="Sound UUID played when script opens a dialog window."
|
||||
name="textFSScriptFloaterOpen">
|
||||
Script dialog:
|
||||
</text>
|
||||
|
|
@ -3066,7 +3121,7 @@ Hover your mouse cursor over UUID field to show its default value.
|
|||
left="5"
|
||||
height="14"
|
||||
width="150"
|
||||
tool_tip="Sound UUID played, when your friend comes online."
|
||||
tool_tip="Sound UUID played when your friend comes online."
|
||||
name="textFSFriendOnline">
|
||||
Friend comes online:
|
||||
</text>
|
||||
|
|
@ -3122,7 +3177,7 @@ Hover your mouse cursor over UUID field to show its default value.
|
|||
left="5"
|
||||
height="14"
|
||||
width="150"
|
||||
tool_tip="Sound UUID played, when your friend goes offline."
|
||||
tool_tip="Sound UUID played when your friend goes offline."
|
||||
name="textFSFriendOffline">
|
||||
Friend goes offline:
|
||||
</text>
|
||||
|
|
@ -3226,11 +3281,34 @@ Hover your mouse cursor over UUID field to show its default value.
|
|||
name="PlayModeUISndFriendshipOffer"
|
||||
left_pad="1"
|
||||
width="120" />
|
||||
</panel>
|
||||
|
||||
<!-- UI Sounds 3 -->
|
||||
<panel
|
||||
top_pad="5"
|
||||
bottom="-1"
|
||||
left="1"
|
||||
right="-1"
|
||||
follows="all"
|
||||
label="UI Sounds 3"
|
||||
name="UI Sounds tab 3">
|
||||
|
||||
<text
|
||||
layout="topleft"
|
||||
follows="left|top"
|
||||
top_pad="7"
|
||||
top_pad="10"
|
||||
left="5"
|
||||
height="14"
|
||||
width="520"
|
||||
name="textFSExplanation_tab3">
|
||||
Here you can change (by providing sound UUIDs), enable or disable default interface sounds.
|
||||
Hover your mouse cursor over UUID field to show its default value.
|
||||
</text>
|
||||
|
||||
<text
|
||||
layout="topleft"
|
||||
follows="left|top"
|
||||
top_pad="25"
|
||||
left="5"
|
||||
height="14"
|
||||
width="150"
|
||||
|
|
@ -3283,34 +3361,10 @@ Hover your mouse cursor over UUID field to show its default value.
|
|||
left_pad="1"
|
||||
width="120" />
|
||||
|
||||
</panel>
|
||||
|
||||
<!-- UI Sounds 3 -->
|
||||
<panel
|
||||
top_pad="5"
|
||||
bottom="-1"
|
||||
left="1"
|
||||
right="-1"
|
||||
follows="all"
|
||||
label="UI Sounds 3"
|
||||
name="UI Sounds tab 3">
|
||||
|
||||
<text
|
||||
layout="topleft"
|
||||
follows="left|top"
|
||||
top_pad="10"
|
||||
left="5"
|
||||
height="14"
|
||||
width="520"
|
||||
name="textFSExplanation_tab3">
|
||||
Here you can change (by providing sound UUIDs), enable or disable default interface sounds.
|
||||
Hover your mouse cursor over UUID field to show its default value.
|
||||
</text>
|
||||
|
||||
<text
|
||||
layout="topleft"
|
||||
follows="left|top"
|
||||
top_pad="25"
|
||||
top_pad="7"
|
||||
left="5"
|
||||
height="14"
|
||||
width="150"
|
||||
|
|
@ -3762,7 +3816,7 @@ Hover your mouse cursor over UUID field to show its default value.
|
|||
left="5"
|
||||
height="14"
|
||||
width="150"
|
||||
tool_tip="Sound UUID played, when the tracker beacon is active. It is more frequent when the avatar is closer to the destination."
|
||||
tool_tip="Sound UUID played when the tracker beacon is active. It is more frequent when the avatar is closer to the destination."
|
||||
name="textFSTrackerBeacon">
|
||||
Tracker beacon:
|
||||
</text>
|
||||
|
|
@ -3818,7 +3872,7 @@ Hover your mouse cursor over UUID field to show its default value.
|
|||
left="5"
|
||||
height="14"
|
||||
width="150"
|
||||
tool_tip="Sound UUID played, when the microphone is toggled on or off."
|
||||
tool_tip="Sound UUID played when the microphone is toggled on or off."
|
||||
name="textFSMicToggle">
|
||||
Microphone toggle:
|
||||
</text>
|
||||
|
|
@ -3874,7 +3928,7 @@ Hover your mouse cursor over UUID field to show its default value.
|
|||
left="5"
|
||||
height="14"
|
||||
width="150"
|
||||
tool_tip="Sound UUID played, when the region restart alert appears."
|
||||
tool_tip="Sound UUID played when the region restart alert appears."
|
||||
name="textFSRestart">
|
||||
Region restart:
|
||||
</text>
|
||||
|
|
@ -3931,7 +3985,7 @@ Hover your mouse cursor over UUID field to show its default value.
|
|||
left="5"
|
||||
height="14"
|
||||
width="150"
|
||||
tool_tip="Sound UUID played, when the region restart alert appears (OpenSim)."
|
||||
tool_tip="Sound UUID played when the region restart alert appears (OpenSim)."
|
||||
name="textFSRestartOpenSim">
|
||||
Region restart (OpenSim):
|
||||
</text>
|
||||
|
|
|
|||
Loading…
Reference in New Issue