Eliminado el soporte de discord.
Corrección de nombres y typos. Eliminación de código innecesario. Depuración archivos de idiomas.
@@ -335,58 +335,6 @@
|
||||
</map>
|
||||
</map>
|
||||
</map>
|
||||
<key>discord-rpc</key>
|
||||
<map>
|
||||
<key>copyright</key>
|
||||
<string>Copyright 2019 Discord, Inc.</string>
|
||||
<key>description</key>
|
||||
<string>C++ library to interface with Discord's API</string>
|
||||
<key>license</key>
|
||||
<string>MIT</string>
|
||||
<key>license_file</key>
|
||||
<string>LICENSES/discord-rpc.txt</string>
|
||||
<key>name</key>
|
||||
<string>discord-rpc</string>
|
||||
<key>platforms</key>
|
||||
<map>
|
||||
<key>windows64</key>
|
||||
<map>
|
||||
<key>archive</key>
|
||||
<map>
|
||||
<key>hash</key>
|
||||
<string>f63f07d4c87fbbb698b9039583f08b76</string>
|
||||
<key>url</key>
|
||||
<uri>https://3p.firestormviewer.org/discord_rpc-3.4.0-windows64-192581529.tar.bz2</uri>
|
||||
</map>
|
||||
<key>name</key>
|
||||
<string>windows64</string>
|
||||
</map>
|
||||
<key>linux64</key>
|
||||
<map>
|
||||
<key>archive</key>
|
||||
<map>
|
||||
<key>hash</key>
|
||||
<string>cefa1cdb50a85e36114ca89df66c0b5a</string>
|
||||
<key>url</key>
|
||||
<uri>https://3p.firestormviewer.org/discord_rpc-3.4.0-linux64-192540843.tar.bz2</uri>
|
||||
</map>
|
||||
<key>name</key>
|
||||
<string>linux64</string>
|
||||
</map>
|
||||
<key>darwin64</key>
|
||||
<map>
|
||||
<key>archive</key>
|
||||
<map>
|
||||
<key>hash</key>
|
||||
<string>3bc297a0fa47094bb52d361f80186387</string>
|
||||
<key>url</key>
|
||||
<uri>https://3p.firestormviewer.org/discord_rpc-3.4.0-darwin64-192522358.tar.bz2</uri>
|
||||
</map>
|
||||
<key>name</key>
|
||||
<string>darwin64</string>
|
||||
</map>
|
||||
</map>
|
||||
</map>
|
||||
<key>apr_suite</key>
|
||||
<map>
|
||||
<key>platforms</key>
|
||||
@@ -3276,7 +3224,7 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string>
|
||||
<string>-DCMAKE_BUILD_TYPE:STRING=Release</string>
|
||||
<string>-DADDRESS_SIZE:STRING=$AUTOBUILD_ADDRSIZE</string>
|
||||
<string>-DROOT_PROJECT_NAME:STRING=SecondLife</string>
|
||||
<string>-DINSTALL_PROPRIETARY=FALSE</string>
|
||||
<string>-DINSTALL_PROPRIETARY=TRUE</string>
|
||||
<string>-DCMAKE_JOB_POOLS:STRING=compile=4;link=2</string>
|
||||
</array>
|
||||
</map>
|
||||
@@ -3308,7 +3256,7 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string>
|
||||
<key>name</key>
|
||||
<string>ReleaseOS</string>
|
||||
</map>
|
||||
<key>ReleaseFS</key>
|
||||
<key>ReleasePM</key>
|
||||
<map>
|
||||
<key>build</key>
|
||||
<map>
|
||||
@@ -3335,9 +3283,9 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string>
|
||||
</array>
|
||||
</map>
|
||||
<key>name</key>
|
||||
<string>ReleaseFS</string>
|
||||
<string>ReleasePM</string>
|
||||
</map>
|
||||
<key>ReleaseFS_AVX</key>
|
||||
<key>ReleasePM_AVX</key>
|
||||
<map>
|
||||
<key>build</key>
|
||||
<map>
|
||||
@@ -3366,9 +3314,9 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string>
|
||||
</array>
|
||||
</map>
|
||||
<key>name</key>
|
||||
<string>ReleaseFS_AVX</string>
|
||||
<string>ReleasePM_AVX</string>
|
||||
</map>
|
||||
<key>ReleaseFS_AVX2</key>
|
||||
<key>ReleasePM_AVX2</key>
|
||||
<map>
|
||||
<key>build</key>
|
||||
<map>
|
||||
@@ -3397,9 +3345,9 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string>
|
||||
</array>
|
||||
</map>
|
||||
<key>name</key>
|
||||
<string>ReleaseFS_AVX2</string>
|
||||
<string>ReleasePM_AVX2</string>
|
||||
</map>
|
||||
<key>ReleaseFS_open</key>
|
||||
<key>ReleasePM_open</key>
|
||||
<map>
|
||||
<key>build</key>
|
||||
<map>
|
||||
@@ -3426,7 +3374,7 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string>
|
||||
</array>
|
||||
</map>
|
||||
<key>name</key>
|
||||
<string>ReleaseFS_open</string>
|
||||
<string>ReleasePM_open</string>
|
||||
</map>
|
||||
<key>RelWithDebInfoFS</key>
|
||||
<map>
|
||||
@@ -3672,7 +3620,7 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string>
|
||||
<key>name</key>
|
||||
<string>RelWithDebInfoFS_open</string>
|
||||
</map>
|
||||
<key>ReleaseFS</key>
|
||||
<key>ReleasePM</key>
|
||||
<map>
|
||||
<key>build</key>
|
||||
<map>
|
||||
@@ -3695,9 +3643,9 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string>
|
||||
<key>default</key>
|
||||
<string>True</string>
|
||||
<key>name</key>
|
||||
<string>ReleaseFS</string>
|
||||
<string>ReleasePM</string>
|
||||
</map>
|
||||
<key>ReleaseFS_open</key>
|
||||
<key>ReleasePM_open</key>
|
||||
<map>
|
||||
<key>build</key>
|
||||
<map>
|
||||
@@ -3714,7 +3662,7 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string>
|
||||
</array>
|
||||
</map>
|
||||
<key>name</key>
|
||||
<string>ReleaseFS_open</string>
|
||||
<string>ReleasePM_open</string>
|
||||
</map>
|
||||
</map>
|
||||
<key>build_directory</key>
|
||||
@@ -3828,7 +3776,7 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string>
|
||||
<key>name</key>
|
||||
<string>RelWithDebInfoFS_open</string>
|
||||
</map>
|
||||
<key>ReleaseFS</key>
|
||||
<key>ReleasePM</key>
|
||||
<map>
|
||||
<key>build</key>
|
||||
<map>
|
||||
@@ -3850,9 +3798,9 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string>
|
||||
<key>default</key>
|
||||
<string>True</string>
|
||||
<key>name</key>
|
||||
<string>ReleaseFS</string>
|
||||
<string>ReleasePM</string>
|
||||
</map>
|
||||
<key>ReleaseFS_open</key>
|
||||
<key>ReleasePM_open</key>
|
||||
<map>
|
||||
<key>build</key>
|
||||
<map>
|
||||
@@ -3872,7 +3820,7 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string>
|
||||
</array>
|
||||
</map>
|
||||
<key>name</key>
|
||||
<string>ReleaseFS_open</string>
|
||||
<string>ReleasePM_open</string>
|
||||
</map>
|
||||
</map>
|
||||
<key>build_directory</key>
|
||||
@@ -4087,7 +4035,7 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string>
|
||||
<key>name</key>
|
||||
<string>RelWithDebInfoFS_open</string>
|
||||
</map>
|
||||
<key>ReleaseFS</key>
|
||||
<key>ReleasePM</key>
|
||||
<map>
|
||||
<key>build</key>
|
||||
<map>
|
||||
@@ -4112,9 +4060,9 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string>
|
||||
<key>default</key>
|
||||
<string>True</string>
|
||||
<key>name</key>
|
||||
<string>ReleaseFS</string>
|
||||
<string>ReleasePM</string>
|
||||
</map>
|
||||
<key>ReleaseFS_AVX</key>
|
||||
<key>ReleasePM_AVX</key>
|
||||
<map>
|
||||
<key>build</key>
|
||||
<map>
|
||||
@@ -4137,9 +4085,9 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string>
|
||||
</array>
|
||||
</map>
|
||||
<key>name</key>
|
||||
<string>ReleaseFS_AVX</string>
|
||||
<string>ReleasePM_AVX</string>
|
||||
</map>
|
||||
<key>ReleaseFS_AVX2</key>
|
||||
<key>ReleasePM_AVX2</key>
|
||||
<map>
|
||||
<key>build</key>
|
||||
<map>
|
||||
@@ -4162,9 +4110,9 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string>
|
||||
</array>
|
||||
</map>
|
||||
<key>name</key>
|
||||
<string>ReleaseFS_AVX2</string>
|
||||
<string>ReleasePM_AVX2</string>
|
||||
</map>
|
||||
<key>ReleaseFS_open</key>
|
||||
<key>ReleasePM_open</key>
|
||||
<map>
|
||||
<key>build</key>
|
||||
<map>
|
||||
@@ -4183,7 +4131,7 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string>
|
||||
</array>
|
||||
</map>
|
||||
<key>name</key>
|
||||
<string>ReleaseFS_open</string>
|
||||
<string>ReleasePM_open</string>
|
||||
</map>
|
||||
</map>
|
||||
<key>build_directory</key>
|
||||
|
||||
@@ -50,7 +50,6 @@ include(LLPrimitive)
|
||||
include(Growl)
|
||||
include(ColladaDom)
|
||||
include(jemalloc)
|
||||
include(Discord)
|
||||
|
||||
# <FS:ND> if using ndPhysicsstub this variable will be unset, we don't need to build any stub code viewer side in that case
|
||||
if( LLPHYSICSEXTENSIONS_SRC_DIR )
|
||||
@@ -1709,7 +1708,7 @@ if (USE_BUGSPLAT)
|
||||
)
|
||||
endif (USE_BUGSPLAT)
|
||||
|
||||
# <FS:Ansariel> Flickr / Discord keys and fsversionvalues headers are generated in here
|
||||
# <FS:Ansariel> Flickr key and pmversionvalues headers are generated in here
|
||||
include_directories( ${CMAKE_CURRENT_BINARY_DIR} )
|
||||
|
||||
# <exodus>
|
||||
@@ -1722,24 +1721,13 @@ configure_file(
|
||||
list(APPEND viewer_HEADER_FILES ${CMAKE_CURRENT_BINARY_DIR}/exoflickrkeys.h)
|
||||
# </exodus>
|
||||
|
||||
#<FS:LO> Discord rich presence
|
||||
configure_file(
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/fsdiscordkey.h.in
|
||||
${CMAKE_CURRENT_BINARY_DIR}/fsdiscordkey.h
|
||||
@ONLY
|
||||
)
|
||||
list(APPEND viewer_HEADER_FILES ${CMAKE_CURRENT_BINARY_DIR}/fsdiscordkey.h)
|
||||
LIST(APPEND viewer_HEADER_FILES fsfloaterdiscord.h fsdiscordconnect.h)
|
||||
LIST(APPEND viewer_SOURCE_FILES fsfloaterdiscord.cpp fsdiscordconnect.cpp)
|
||||
#</FS:LO>
|
||||
|
||||
# <FS:TS> Generate the version information header file.
|
||||
configure_file(
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/fsversionvalues.h.in
|
||||
${CMAKE_CURRENT_BINARY_DIR}/fsversionvalues.h
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/pmversionvalues.h.in
|
||||
${CMAKE_CURRENT_BINARY_DIR}/pmversionvalues.h
|
||||
@ONLY
|
||||
)
|
||||
list(APPEND viewer_HEADER_FILES ${CMAKE_CURRENT_BINARY_DIR}/fsversionvalues.h)
|
||||
list(APPEND viewer_HEADER_FILES ${CMAKE_CURRENT_BINARY_DIR}/pmversionvalues.h)
|
||||
# </FS:TS>
|
||||
|
||||
source_group("CMake Rules" FILES ViewerInstall.cmake)
|
||||
@@ -1755,7 +1743,7 @@ set_source_files_properties(
|
||||
# <FS:TS> The next line causes a full rebuild of the entire newview
|
||||
# directory every time the Mercurial revision number changes.
|
||||
# Instead of doing that, we use the configure tool to build
|
||||
# fsversionstrings.h with the right numbers in it.
|
||||
# pmversionstrings.h with the right numbers in it.
|
||||
# COMPILE_DEFINITIONS "${VIEWER_CHANNEL_VERSION_DEFINES}" # see BuildVersion.cmake
|
||||
)
|
||||
|
||||
@@ -1831,7 +1819,7 @@ if (LINUX)
|
||||
# <FS:TS> The next line causes a full rebuild of the entire newview
|
||||
# directory every time the Mercurial revision number changes.
|
||||
# Instead of doing that, we use the configure tool to build
|
||||
# fsversionstrings.h with the right numbers in it.
|
||||
# pmversionstrings.h with the right numbers in it.
|
||||
# COMPILE_DEFINITIONS "${VIEWER_CHANNEL_VERSION_DEFINES}"
|
||||
)
|
||||
# [FS] Growl support
|
||||
@@ -2509,7 +2497,6 @@ target_link_libraries(${VIEWER_BINARY_NAME}
|
||||
ll::tracy
|
||||
ll::openxr
|
||||
fs::glod # <FS:Beq/> restore GLOD dependencies
|
||||
fs::discord # <FS:Ansariel> Discord support
|
||||
)
|
||||
|
||||
if( TARGET ll::intel_memops )
|
||||
|
||||
@@ -626,16 +626,6 @@
|
||||
execute_function="Tools.StopAllAnimations"
|
||||
execute_parameters="stop"
|
||||
/>
|
||||
<command name="discord"
|
||||
available_in_toybox="true"
|
||||
icon="Command_Discord_Icon"
|
||||
label_ref="Command_Discord_Label"
|
||||
tooltip_ref="Command_Discord_Tooltip"
|
||||
execute_function="Floater.Toggle"
|
||||
execute_parameters="fs_discord"
|
||||
is_running_function="Floater.IsOpen"
|
||||
is_running_parameters="fs_discord"
|
||||
/>
|
||||
<command name="myenvironments"
|
||||
available_in_toybox="true"
|
||||
is_flashing_allowed="true"
|
||||
|
||||
@@ -1247,50 +1247,6 @@
|
||||
<key>Value</key>
|
||||
<integer>1</integer>
|
||||
</map>
|
||||
<key>FSEnableDiscordIntegration</key>
|
||||
<map>
|
||||
<key>Comment</key>
|
||||
<string>If enabled, will allow Firestorm to connect to discord if open and share location data with. Default (false)</string>
|
||||
<key>Persist</key>
|
||||
<integer>1</integer>
|
||||
<key>Type</key>
|
||||
<string>Boolean</string>
|
||||
<key>Value</key>
|
||||
<integer>0</integer>
|
||||
</map>
|
||||
<key>FSMaxSharedMaturity</key>
|
||||
<map>
|
||||
<key>Comment</key>
|
||||
<string>Max maturity rating to share with Discord</string>
|
||||
<key>Persist</key>
|
||||
<integer>1</integer>
|
||||
<key>Type</key>
|
||||
<string>U32</string>
|
||||
<key>Value</key>
|
||||
<integer>13</integer>
|
||||
</map>
|
||||
<key>FSBlacklistedRegionNames</key>
|
||||
<map>
|
||||
<key>Comment</key>
|
||||
<string>List of region names to never share with Discord</string>
|
||||
<key>Persist</key>
|
||||
<integer>1</integer>
|
||||
<key>Type</key>
|
||||
<string>LLSD</string>
|
||||
<key>Value</key>
|
||||
<array></array>
|
||||
</map>
|
||||
<key>FSShareNameToDiscord</key>
|
||||
<map>
|
||||
<key>Comment</key>
|
||||
<string>If enabled, will allow Firestorm to share avatar user and display name with discord. Default (false)</string>
|
||||
<key>Persist</key>
|
||||
<integer>1</integer>
|
||||
<key>Type</key>
|
||||
<string>Boolean</string>
|
||||
<key>Value</key>
|
||||
<integer>0</integer>
|
||||
</map>
|
||||
<key>FSPrimfeedOAuthToken</key>
|
||||
<map>
|
||||
<key>Comment</key>
|
||||
|
||||
@@ -1,345 +0,0 @@
|
||||
/**
|
||||
* @file fsdiscordconnect.cpp
|
||||
* @brief Connection to Discord
|
||||
* @author liny@pinkfox.xyz
|
||||
*
|
||||
* $LicenseInfo:firstyear=2013&license=viewerlgpl$
|
||||
* Phoenix Firestorm Viewer Source Code
|
||||
* Copyright (C) 2019 Liny Odell @ Second Life
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation;
|
||||
* version 2.1 of the License only.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
*
|
||||
* The Phoenix Firestorm Project, Inc., 1831 Oakwood Drive, Fairmont, Minnesota 56031-3225 USA
|
||||
* http://www.firestormviewer.org
|
||||
*/
|
||||
|
||||
#include "llviewerprecompiledheaders.h"
|
||||
|
||||
#include "fsdiscordconnect.h"
|
||||
|
||||
#include "llagent.h"
|
||||
#include "llcallingcard.h" // for LLAvatarTracker
|
||||
#include "llcommandhandler.h"
|
||||
#include "llnotificationsutil.h"
|
||||
#include "lltrans.h"
|
||||
#include "llevents.h"
|
||||
#include "llviewerregion.h"
|
||||
#include "llavatarnamecache.h"
|
||||
#include "llregioninfomodel.h"
|
||||
|
||||
#include "rlvactions.h"
|
||||
#include "rlvhandler.h"
|
||||
|
||||
#include "llfloaterreg.h"
|
||||
|
||||
#include <discord-rpc/discord_rpc.h>
|
||||
#include <boost/algorithm/string/case_conv.hpp>
|
||||
|
||||
#include "fsdiscordkey.h"
|
||||
|
||||
#include "llviewernetwork.h"
|
||||
|
||||
std::unique_ptr<LLEventPump> FSDiscordConnect::sStateWatcher = std::make_unique<LLEventStream>("DiscordConnectState");
|
||||
std::unique_ptr<LLEventPump> FSDiscordConnect::sInfoWatcher = std::make_unique<LLEventStream>("DiscordConnectInfo");
|
||||
|
||||
|
||||
// Returns false when the file exists and has not our UUID
|
||||
// Or, put simply, returns true if someone else is using it
|
||||
bool FSDiscordConnect::checkMarkerFile() const
|
||||
{
|
||||
if (!LLFile::isfile(mMarkerFilename))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
LLUUID fileID;
|
||||
llifstream file(mMarkerFilename);
|
||||
file >> fileID;
|
||||
if ((fileID == gAgentID) || fileID.isNull())
|
||||
{
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
void FSDiscordConnect::setMarkerFile()
|
||||
{
|
||||
if (!checkMarkerFile())
|
||||
{
|
||||
return; // dont over-write another instances file
|
||||
}
|
||||
llofstream file(mMarkerFilename.c_str());
|
||||
file << gAgentID << std::endl;
|
||||
file.close();
|
||||
}
|
||||
|
||||
void FSDiscordConnect::clearMarkerFile()
|
||||
{
|
||||
if (!checkMarkerFile())
|
||||
{
|
||||
return; // dont remove another instances file
|
||||
}
|
||||
LLFile::remove(mMarkerFilename);
|
||||
}
|
||||
|
||||
static void handleDiscordReady(const DiscordUser *request)
|
||||
{
|
||||
LLSD info;
|
||||
info["name"] = request->username;
|
||||
FSDiscordConnect::getInstance()->storeInfo(info);
|
||||
FSDiscordConnect::getInstance()->setConnectionState(FSDiscordConnect::DISCORD_CONNECTED);
|
||||
}
|
||||
|
||||
static void handleDiscordError(int errorCode, const char* message)
|
||||
{
|
||||
LL_WARNS("DiscordConnect") << "Discord error, errorCode: \"" << errorCode << "\", message: \"" << message << "\"" << LL_ENDL;
|
||||
}
|
||||
|
||||
static void handleDiscordDisconnected(int errorCode, const char* message)
|
||||
{
|
||||
LL_INFOS("DiscordConnect") << "Discord disconnected, errorCode: \"" << errorCode << "\", message: \"" << message << "\"" << LL_ENDL;
|
||||
FSDiscordConnect::getInstance()->setConnectionState(FSDiscordConnect::DISCORD_NOT_CONNECTED);
|
||||
}
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
void FSDiscordConnect::discordConnectCoro()
|
||||
{
|
||||
DiscordEventHandlers handlers;
|
||||
memset(&handlers, 0, sizeof(handlers));
|
||||
handlers.ready = handleDiscordReady;
|
||||
handlers.errored = handleDiscordError;
|
||||
handlers.disconnected = handleDiscordDisconnected;
|
||||
//TODO: Get this working and sending TPs
|
||||
/*handlers.joinGame = handleDiscordJoinGame;
|
||||
handlers.spectateGame = handleDiscordSpectateGame;
|
||||
handlers.joinRequest = handleDiscordJoinRequest;*/
|
||||
|
||||
Discord_Initialize(DISCORD_API_KEY, &handlers, 1, "");
|
||||
}
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
void FSDiscordConnect::discordDisconnectCoro()
|
||||
{
|
||||
Discord_Shutdown();
|
||||
setConnectionState(FSDiscordConnect::DISCORD_NOT_CONNECTED);
|
||||
}
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
void FSDiscordConnect::discordConnectedCoro(bool autoConnect)
|
||||
{
|
||||
if (autoConnect)
|
||||
{
|
||||
setConnectionState(FSDiscordConnect::DISCORD_CONNECTION_IN_PROGRESS);
|
||||
if (!checkMarkerFile())
|
||||
{
|
||||
connectToDiscord();
|
||||
}
|
||||
else
|
||||
{
|
||||
setConnectionState(FSDiscordConnect::DISCORD_CONNECTION_FAILED);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
static bool isRegionVisible(LLViewerRegion* region)
|
||||
{
|
||||
U8 rating = region->getSimAccess();
|
||||
bool visible = true;
|
||||
if (rating > gSavedPerAccountSettings.getU32("FSMaxSharedMaturity"))
|
||||
{
|
||||
visible = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
std::string name = region->getName();
|
||||
LLSD list = gSavedPerAccountSettings.getLLSD("FSBlacklistedRegionNames");
|
||||
for (LLSD::array_const_iterator iter = list.beginArray();
|
||||
iter != list.endArray();
|
||||
iter++)
|
||||
{
|
||||
if (boost::algorithm::to_lower_copy((*iter).asString()) == boost::algorithm::to_lower_copy(name))
|
||||
{
|
||||
visible = false;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
return visible;
|
||||
}
|
||||
|
||||
void FSDiscordConnect::updateRichPresence() const
|
||||
{
|
||||
LLViewerRegion* region = gAgent.getRegion();
|
||||
if (!isConnected() || !region)
|
||||
{
|
||||
return;
|
||||
}
|
||||
std::string region_name;
|
||||
if (RlvActions::canShowLocation() && isRegionVisible(region))
|
||||
{
|
||||
region_name = gAgent.getRegion()->getName();
|
||||
region_name += " ";
|
||||
LLVector3 pos = gAgent.getPositionAgent();
|
||||
|
||||
region_name += llformat("(%.0f, %.0f, %.0f)", pos.mV[VX], pos.mV[VY], pos.mV[VZ]);
|
||||
}
|
||||
else
|
||||
{
|
||||
region_name = "Hidden Region";
|
||||
}
|
||||
|
||||
DiscordRichPresence discordPresence;
|
||||
memset(&discordPresence, 0, sizeof(discordPresence));
|
||||
discordPresence.state = region_name.c_str();
|
||||
|
||||
std::string name;
|
||||
if (RlvActions::canShowName(RlvActions::SNC_DEFAULT, gAgentID) && gSavedPerAccountSettings.getBOOL("FSShareNameToDiscord"))
|
||||
{
|
||||
LLAvatarName av_name;
|
||||
if (LLAvatarNameCache::get(gAgentID, &av_name))
|
||||
{
|
||||
name = av_name.getCompleteName(true, true);
|
||||
}
|
||||
else
|
||||
{
|
||||
name = gAgentUsername;
|
||||
}
|
||||
discordPresence.details = name.c_str();
|
||||
}
|
||||
|
||||
discordPresence.startTimestamp = mConnectTime;
|
||||
|
||||
#ifdef OPENSIM
|
||||
if (LLGridManager::getInstance()->isInSecondLife())
|
||||
{
|
||||
discordPresence.largeImageKey = "secondlife_512";
|
||||
}
|
||||
else
|
||||
{
|
||||
discordPresence.largeImageKey = "opensimulator_512";
|
||||
}
|
||||
#else
|
||||
discordPresence.largeImageKey = "secondlife_512";
|
||||
#endif
|
||||
|
||||
auto gridLabel = LLGridManager::getInstance()->getGridLabel();
|
||||
discordPresence.largeImageText = gridLabel.c_str();
|
||||
discordPresence.smallImageKey = "firestorm_512";
|
||||
std::string appName = std::string("via " + APP_NAME);
|
||||
discordPresence.smallImageText = appName.c_str();
|
||||
|
||||
std::string regionId = gAgent.getRegion()->getRegionID().asString();
|
||||
discordPresence.partyId = regionId.c_str();
|
||||
discordPresence.partySize = static_cast<int>(gAgent.getRegion()->mMapAvatars.size());
|
||||
discordPresence.partyMax = LLRegionInfoModel::instance().mAgentLimit;
|
||||
Discord_UpdatePresence(&discordPresence);
|
||||
}
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
FSDiscordConnect::FSDiscordConnect()
|
||||
: mConnectionState(DISCORD_NOT_CONNECTED),
|
||||
mConnected(false),
|
||||
mInfo(),
|
||||
mRefreshInfo(false),
|
||||
mConnectTime(0)
|
||||
{
|
||||
mMarkerFilename = gDirUtilp->getExpandedFilename(LL_PATH_USER_SETTINGS, "discord_in_use_marker");
|
||||
LLEventPumps::instance().obtain("mainloop").listen("FSDiscordConnect", std::bind(&FSDiscordConnect::Tick, this, std::placeholders::_1));
|
||||
}
|
||||
|
||||
FSDiscordConnect::~FSDiscordConnect()
|
||||
{
|
||||
disconnectFromDiscord();
|
||||
}
|
||||
|
||||
void FSDiscordConnect::connectToDiscord()
|
||||
{
|
||||
LLCoros::instance().launch("FSDiscordConnect::discordConnectCoro",
|
||||
std::bind(&FSDiscordConnect::discordConnectCoro, this));
|
||||
}
|
||||
|
||||
void FSDiscordConnect::disconnectFromDiscord()
|
||||
{
|
||||
setConnectionState(FSDiscordConnect::DISCORD_DISCONNECTING);
|
||||
|
||||
LLCoros::instance().launch("FSDiscordConnect::discordDisconnectCoro",
|
||||
std::bind(&FSDiscordConnect::discordDisconnectCoro, this));
|
||||
}
|
||||
|
||||
void FSDiscordConnect::checkConnectionToDiscord(bool auto_connect)
|
||||
{
|
||||
LLCoros::instance().launch("FSDiscordConnect::discordConnectedCoro",
|
||||
std::bind(&FSDiscordConnect::discordConnectedCoro, this, auto_connect));
|
||||
}
|
||||
|
||||
bool FSDiscordConnect::Tick(const LLSD&)
|
||||
{
|
||||
Discord_RunCallbacks();
|
||||
updateRichPresence();
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
void FSDiscordConnect::storeInfo(const LLSD& info)
|
||||
{
|
||||
mInfo = info;
|
||||
mRefreshInfo = false;
|
||||
|
||||
sInfoWatcher->post(info);
|
||||
}
|
||||
|
||||
const LLSD& FSDiscordConnect::getInfo() const
|
||||
{
|
||||
return mInfo;
|
||||
}
|
||||
|
||||
void FSDiscordConnect::clearInfo()
|
||||
{
|
||||
mInfo = LLSD();
|
||||
}
|
||||
|
||||
void FSDiscordConnect::setConnectionState(FSDiscordConnect::EConnectionState connection_state)
|
||||
{
|
||||
if(connection_state == DISCORD_CONNECTED)
|
||||
{
|
||||
setMarkerFile();
|
||||
setConnected(true);
|
||||
mConnectTime = time_corrected();
|
||||
}
|
||||
else if(connection_state == DISCORD_NOT_CONNECTED)
|
||||
{
|
||||
clearMarkerFile();
|
||||
setConnected(false);
|
||||
}
|
||||
|
||||
if (mConnectionState != connection_state)
|
||||
{
|
||||
// set the connection state before notifying watchers
|
||||
mConnectionState = connection_state;
|
||||
|
||||
LLSD state_info;
|
||||
state_info["enum"] = connection_state;
|
||||
sStateWatcher->post(state_info);
|
||||
}
|
||||
}
|
||||
|
||||
void FSDiscordConnect::setConnected(bool connected)
|
||||
{
|
||||
mConnected = connected;
|
||||
}
|
||||
@@ -1,92 +0,0 @@
|
||||
/**
|
||||
* @file fsdiscordconnect.h
|
||||
* @brief Connection to Discord
|
||||
* @author liny@pinkfox.xyz
|
||||
*
|
||||
* $LicenseInfo:firstyear=2013&license=viewerlgpl$
|
||||
* Phoenix Firestorm Viewer Source Code
|
||||
* Copyright (C) 2019 Liny Odell @ Second Life
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation;
|
||||
* version 2.1 of the License only.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
*
|
||||
* The Phoenix Firestorm Project, Inc., 1831 Oakwood Drive, Fairmont, Minnesota 56031-3225 USA
|
||||
* http://www.firestormviewer.org
|
||||
*/
|
||||
|
||||
#ifndef FS_FSDISCORDCONNECT_H
|
||||
#define FS_FSDISCORDCONNECT_H
|
||||
|
||||
#include "llsingleton.h"
|
||||
#include "llcoros.h"
|
||||
#include "lleventcoro.h"
|
||||
|
||||
class LLEventPump;
|
||||
|
||||
class FSDiscordConnect : public LLSingleton<FSDiscordConnect>
|
||||
{
|
||||
LLSINGLETON(FSDiscordConnect);
|
||||
LOG_CLASS(FSDiscordConnect);
|
||||
public:
|
||||
enum EConnectionState
|
||||
{
|
||||
DISCORD_NOT_CONNECTED = 0,
|
||||
DISCORD_CONNECTION_IN_PROGRESS = 1,
|
||||
DISCORD_CONNECTED = 2,
|
||||
DISCORD_CONNECTION_FAILED = 3,
|
||||
DISCORD_DISCONNECTING = 4
|
||||
};
|
||||
|
||||
~FSDiscordConnect();
|
||||
|
||||
void connectToDiscord(); // Initiate the complete Discord connection. Please use checkConnectionToDiscord() in normal use.
|
||||
void disconnectFromDiscord(); // Disconnect from the Discord service.
|
||||
void checkConnectionToDiscord(bool auto_connect = false); // Check if connected to the Discord service. If not, call connectToDiscord().
|
||||
|
||||
void storeInfo(const LLSD& info);
|
||||
const LLSD& getInfo() const;
|
||||
void clearInfo();
|
||||
|
||||
void setConnectionState(EConnectionState connection_state);
|
||||
void setConnected(bool connected);
|
||||
bool isConnected() const { return mConnected; }
|
||||
EConnectionState getConnectionState() { return mConnectionState; }
|
||||
|
||||
void updateRichPresence() const;
|
||||
|
||||
bool Tick(const LLSD&);
|
||||
|
||||
private:
|
||||
|
||||
EConnectionState mConnectionState;
|
||||
bool mConnected;
|
||||
LLSD mInfo;
|
||||
bool mRefreshInfo;
|
||||
|
||||
static std::unique_ptr<LLEventPump> sStateWatcher;
|
||||
static std::unique_ptr<LLEventPump> sInfoWatcher;
|
||||
|
||||
void discordConnectCoro();
|
||||
void discordDisconnectCoro();
|
||||
void discordConnectedCoro(bool autoConnect);
|
||||
|
||||
bool checkMarkerFile() const;
|
||||
void setMarkerFile();
|
||||
void clearMarkerFile();
|
||||
|
||||
std::string mMarkerFilename;
|
||||
time_t mConnectTime;
|
||||
};
|
||||
|
||||
#endif // FS_FSDISCORDCONNECT_H
|
||||
@@ -1,4 +0,0 @@
|
||||
// THIS FILE IS AUTOGENERATED BY THE BUILD PROCESS
|
||||
// You can either set the keys in Variables.cmake or at the autobuild command
|
||||
|
||||
#define DISCORD_API_KEY "@DDISCORD_API_KEY@"
|
||||
@@ -1,302 +0,0 @@
|
||||
/**
|
||||
* @file fsfloaterdiscord.cpp
|
||||
* @brief Implementation of fsfloaterdiscord.cpp
|
||||
* @author liny@pinkfox.xyz
|
||||
*
|
||||
* $LicenseInfo:firstyear=2013&license=viewerlgpl$
|
||||
* Phoenix Firestorm Viewer Source Code
|
||||
* Copyright (C) 2019 Liny Odell @ Second Life
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation;
|
||||
* version 2.1 of the License only.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
*
|
||||
* The Phoenix Firestorm Project, Inc., 1831 Oakwood Drive, Fairmont, Minnesota 56031-3225 USA
|
||||
* http://www.firestormviewer.org
|
||||
*/
|
||||
|
||||
#include "llviewerprecompiledheaders.h"
|
||||
|
||||
#include "fsfloaterdiscord.h"
|
||||
|
||||
#include "fsdiscordconnect.h"
|
||||
#include "llagent.h"
|
||||
#include "llagentui.h"
|
||||
#include "llcheckboxctrl.h"
|
||||
#include "llcombobox.h"
|
||||
#include "llfloaterreg.h"
|
||||
#include "lltabcontainer.h"
|
||||
#include "lltrans.h"
|
||||
#include "llviewercontrol.h"
|
||||
#include "llviewerregion.h"
|
||||
|
||||
#include "boost/algorithm/string/case_conv.hpp"
|
||||
|
||||
////////////////////////
|
||||
//FSFloaterDiscord///////
|
||||
////////////////////////
|
||||
|
||||
void FSFloaterDiscord::onVisibilityChange(bool visible)
|
||||
{
|
||||
if (visible)
|
||||
{
|
||||
LLEventPumps::instance().obtain("DiscordConnectState").stopListening("FSDiscordAccountPanel");
|
||||
LLEventPumps::instance().obtain("DiscordConnectState").listen("FSDiscordAccountPanel", boost::bind(&FSFloaterDiscord::onDiscordConnectStateChange, this, _1));
|
||||
|
||||
LLEventPumps::instance().obtain("DiscordConnectInfo").stopListening("FSDiscordAccountPanel");
|
||||
LLEventPumps::instance().obtain("DiscordConnectInfo").listen("FSDiscordAccountPanel", boost::bind(&FSFloaterDiscord::onDiscordConnectInfoChange, this));
|
||||
|
||||
LLSD info = FSDiscordConnect::instance().getInfo();
|
||||
|
||||
if (info.has("name"))
|
||||
{
|
||||
mAccountNameLabel->setText(info["name"].asString());
|
||||
}
|
||||
|
||||
//Connected
|
||||
if (FSDiscordConnect::instance().isConnected())
|
||||
{
|
||||
showConnectedLayout();
|
||||
}
|
||||
//Check if connected (show disconnected layout in meantime)
|
||||
else
|
||||
{
|
||||
showDisconnectedLayout();
|
||||
}
|
||||
if ((FSDiscordConnect::instance().getConnectionState() == FSDiscordConnect::DISCORD_NOT_CONNECTED) ||
|
||||
(FSDiscordConnect::instance().getConnectionState() == FSDiscordConnect::DISCORD_CONNECTION_FAILED))
|
||||
{
|
||||
FSDiscordConnect::instance().checkConnectionToDiscord();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
LLEventPumps::instance().obtain("DiscordConnectState").stopListening("FSDiscordAccountPanel");
|
||||
LLEventPumps::instance().obtain("DiscordConnectInfo").stopListening("FSDiscordAccountPanel");
|
||||
}
|
||||
}
|
||||
|
||||
bool FSFloaterDiscord::onDiscordConnectStateChange(const LLSD& data)
|
||||
{
|
||||
if (FSDiscordConnect::instance().isConnected())
|
||||
{
|
||||
mAccountCaptionLabel->setText(getString("discord_connected"));
|
||||
showConnectedLayout();
|
||||
}
|
||||
else
|
||||
{
|
||||
mAccountCaptionLabel->setText(getString("discord_disconnected"));
|
||||
showDisconnectedLayout();
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
bool FSFloaterDiscord::onDiscordConnectInfoChange()
|
||||
{
|
||||
LLSD info = FSDiscordConnect::instance().getInfo();
|
||||
|
||||
if (info.has("name"))
|
||||
{
|
||||
mAccountNameLabel->setText(info["name"].asString());
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
void FSFloaterDiscord::showConnectButton()
|
||||
{
|
||||
if (!mConnectButton->getVisible())
|
||||
{
|
||||
mConnectButton->setVisible(true);
|
||||
mDisconnectButton->setVisible(false);
|
||||
}
|
||||
}
|
||||
|
||||
void FSFloaterDiscord::hideConnectButton()
|
||||
{
|
||||
if (mConnectButton->getVisible())
|
||||
{
|
||||
mConnectButton->setVisible(false);
|
||||
mDisconnectButton->setVisible(true);
|
||||
}
|
||||
}
|
||||
|
||||
void FSFloaterDiscord::showDisconnectedLayout()
|
||||
{
|
||||
mAccountCaptionLabel->setText(getString("discord_disconnected"));
|
||||
mAccountNameLabel->setText(std::string());
|
||||
showConnectButton();
|
||||
}
|
||||
|
||||
void FSFloaterDiscord::showConnectedLayout()
|
||||
{
|
||||
mAccountCaptionLabel->setText(getString("discord_connected"));
|
||||
hideConnectButton();
|
||||
}
|
||||
|
||||
void FSFloaterDiscord::onConnect()
|
||||
{
|
||||
FSDiscordConnect::instance().checkConnectionToDiscord(true);
|
||||
}
|
||||
|
||||
void FSFloaterDiscord::onDisconnect()
|
||||
{
|
||||
FSDiscordConnect::instance().disconnectFromDiscord();
|
||||
}
|
||||
|
||||
FSFloaterDiscord::FSFloaterDiscord(const LLSD& key) : LLFloater(key),
|
||||
mStatusText(nullptr)
|
||||
{
|
||||
mCommitCallbackRegistrar.add("FSDiscord.Connect", boost::bind(&FSFloaterDiscord::onConnect, this));
|
||||
mCommitCallbackRegistrar.add("FSDiscord.Disconnect", boost::bind(&FSFloaterDiscord::onDisconnect, this));
|
||||
mCommitCallbackRegistrar.add("FSDiscord.Add", boost::bind(&FSFloaterDiscord::onAdd, this));
|
||||
mCommitCallbackRegistrar.add("FSDiscord.Rem", boost::bind(&FSFloaterDiscord::onRemove, this));
|
||||
|
||||
setVisibleCallback(boost::bind(&FSFloaterDiscord::onVisibilityChange, this, _2));
|
||||
}
|
||||
|
||||
void FSFloaterDiscord::onAdd()
|
||||
{
|
||||
std::string name = mBlacklistEntry->getText();
|
||||
LLStringUtil::trim(name);
|
||||
if (name.empty())
|
||||
{
|
||||
return;
|
||||
}
|
||||
std::string name_lower = boost::algorithm::to_lower_copy(name);
|
||||
std::vector<LLScrollListItem*> items = mBlacklistedNames->getAllData();
|
||||
std::vector<LLScrollListItem*>::iterator itor;
|
||||
for (itor = items.begin(); itor != items.end(); ++itor)
|
||||
{
|
||||
std::string tmp = (*itor)->getValue().asString();
|
||||
boost::algorithm::to_lower(tmp);
|
||||
if (tmp == name_lower)
|
||||
{
|
||||
return;
|
||||
}
|
||||
}
|
||||
mBlacklistedNames->addSimpleElement(name);
|
||||
LLSD save;
|
||||
for (itor = items.begin(); itor != items.end(); ++itor)
|
||||
{
|
||||
save.append((*itor)->getValue());
|
||||
}
|
||||
save.append(name);
|
||||
gSavedPerAccountSettings.setLLSD("FSBlacklistedRegionNames", save);
|
||||
}
|
||||
|
||||
void FSFloaterDiscord::onRemove()
|
||||
{
|
||||
std::vector<LLScrollListItem*> items = mBlacklistedNames->getAllData();
|
||||
std::vector<LLScrollListItem*>::iterator itor;
|
||||
LLSD save = LLSD::emptyArray();
|
||||
for (itor = items.begin(); itor != items.end(); ++itor)
|
||||
{
|
||||
if ((*itor)->getSelected())
|
||||
{
|
||||
continue;
|
||||
}
|
||||
save.append((*itor)->getValue());
|
||||
}
|
||||
mBlacklistedNames->deleteAllItems();
|
||||
for (LLSD::array_const_iterator iter = save.beginArray();
|
||||
iter != save.endArray();
|
||||
iter++)
|
||||
{
|
||||
mBlacklistedNames->addSimpleElement(iter->asString());
|
||||
}
|
||||
gSavedPerAccountSettings.setLLSD("FSBlacklistedRegionNames", save);
|
||||
}
|
||||
|
||||
void FSFloaterDiscord::onClose(bool app_quitting)
|
||||
{
|
||||
if (app_quitting)
|
||||
{
|
||||
std::vector<LLScrollListItem*> items = mBlacklistedNames->getAllData();
|
||||
std::vector<LLScrollListItem*>::iterator itor;
|
||||
LLSD save = LLSD::emptyArray();
|
||||
for (itor = items.begin(); itor != items.end(); ++itor)
|
||||
{
|
||||
if ((*itor)->getSelected())
|
||||
{
|
||||
continue;
|
||||
}
|
||||
save.append((*itor)->getValue());
|
||||
}
|
||||
gSavedPerAccountSettings.setLLSD("FSBlacklistedRegionNames", save);
|
||||
}
|
||||
LLFloater::onClose(app_quitting);
|
||||
}
|
||||
|
||||
bool FSFloaterDiscord::postBuild()
|
||||
{
|
||||
mAccountCaptionLabel = getChild<LLTextBox>("account_caption_label");
|
||||
mAccountNameLabel = getChild<LLTextBox>("account_name_label");
|
||||
mDisconnectButton = getChild<LLButton>("disconnect_btn");
|
||||
mConnectButton = getChild<LLButton>("connect_btn");
|
||||
mBlacklistedNames = getChild<LLScrollListCtrl>("blacklisted_names");
|
||||
mBlacklistEntry = getChild<LLLineEditor>("blacklist_entry");
|
||||
|
||||
LLSD list = gSavedPerAccountSettings.getLLSD("FSBlacklistedRegionNames");
|
||||
for (LLSD::array_const_iterator iter = list.beginArray();
|
||||
iter != list.endArray();
|
||||
iter++)
|
||||
{
|
||||
mBlacklistedNames->addSimpleElement(iter->asString());
|
||||
}
|
||||
|
||||
// Connection status widgets
|
||||
mStatusText = getChild<LLTextBox>("connection_status_text");
|
||||
|
||||
return LLFloater::postBuild();
|
||||
}
|
||||
|
||||
void FSFloaterDiscord::draw()
|
||||
{
|
||||
if (mStatusText)
|
||||
{
|
||||
mStatusText->setVisible(false);
|
||||
FSDiscordConnect::EConnectionState connection_state = FSDiscordConnect::instance().getConnectionState();
|
||||
std::string status_text;
|
||||
|
||||
switch (connection_state)
|
||||
{
|
||||
case FSDiscordConnect::DISCORD_NOT_CONNECTED:
|
||||
// No status displayed when first opening the panel and no connection done
|
||||
break;
|
||||
case FSDiscordConnect::DISCORD_CONNECTION_IN_PROGRESS:
|
||||
// Connection loading indicator
|
||||
mStatusText->setVisible(true);
|
||||
status_text = getString("SocialDiscordConnecting");
|
||||
mStatusText->setValue(status_text);
|
||||
break;
|
||||
case FSDiscordConnect::DISCORD_CONNECTED:
|
||||
// When successfully connected, no message is displayed
|
||||
break;
|
||||
case FSDiscordConnect::DISCORD_CONNECTION_FAILED:
|
||||
// Error connecting to the service
|
||||
mStatusText->setVisible(true);
|
||||
status_text = getString("SocialDiscordErrorConnecting");
|
||||
mStatusText->setValue(status_text);
|
||||
break;
|
||||
case FSDiscordConnect::DISCORD_DISCONNECTING:
|
||||
// Disconnecting loading indicator
|
||||
mStatusText->setVisible(true);
|
||||
status_text = getString("SocialDiscordDisconnecting");
|
||||
mStatusText->setValue(status_text);
|
||||
break;
|
||||
}
|
||||
}
|
||||
LLFloater::draw();
|
||||
}
|
||||
@@ -1,69 +0,0 @@
|
||||
/**
|
||||
* @file llfloatertwitter.h
|
||||
* @brief Header file for fsfloaterdiscord
|
||||
* @author liny@pinkfox.xyz
|
||||
*
|
||||
* $LicenseInfo:firstyear=2013&license=viewerlgpl$
|
||||
* Phoenix Firestorm Viewer Source Code
|
||||
* Copyright (C) 2019 Liny Odell @ Second Life
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation;
|
||||
* version 2.1 of the License only.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
*
|
||||
* The Phoenix Firestorm Project, Inc., 1831 Oakwood Drive, Fairmont, Minnesota 56031-3225 USA
|
||||
* http://www.firestormviewer.org
|
||||
*/
|
||||
#ifndef FS_FSFLOATERDISCORD_H
|
||||
#define FS_FSFLOATERDISCORD_H
|
||||
|
||||
#include "llfloater.h"
|
||||
|
||||
class LLCheckBoxCtrl;
|
||||
class LLComboBox;
|
||||
class LLScrollListCtrl;
|
||||
class LLLineEditor;
|
||||
class LLTextBox;
|
||||
|
||||
class FSFloaterDiscord : public LLFloater
|
||||
{
|
||||
public:
|
||||
FSFloaterDiscord(const LLSD& key);
|
||||
bool postBuild();
|
||||
void draw();
|
||||
void onClose(bool app_quitting);
|
||||
|
||||
private:
|
||||
void onVisibilityChange(bool visible);
|
||||
bool onDiscordConnectStateChange(const LLSD& data);
|
||||
bool onDiscordConnectInfoChange();
|
||||
void onConnect();
|
||||
void onDisconnect();
|
||||
void onAdd();
|
||||
void onRemove();
|
||||
|
||||
void showConnectButton();
|
||||
void hideConnectButton();
|
||||
void showDisconnectedLayout();
|
||||
void showConnectedLayout();
|
||||
|
||||
LLTextBox* mAccountCaptionLabel;
|
||||
LLTextBox* mAccountNameLabel;
|
||||
LLButton* mConnectButton;
|
||||
LLButton* mDisconnectButton;
|
||||
LLScrollListCtrl* mBlacklistedNames;
|
||||
LLLineEditor* mBlacklistEntry;
|
||||
LLTextBox* mStatusText;
|
||||
};
|
||||
|
||||
#endif // FS_FSFLOATERDISCORD_H
|
||||
@@ -1,50 +0,0 @@
|
||||
/**
|
||||
* @file fsversionvalues.h.in
|
||||
* @brief Routines to access the viewer version and build information
|
||||
* @author Tonya Souther
|
||||
*
|
||||
* $LicenseInfo:firstyear=2013&license=fsviewerlgpl$
|
||||
* Phoenix Firestorm Viewer Source Code
|
||||
* Copyright (C) 2013, The Phoenix Firestorm Project, Inc.
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation;
|
||||
* version 2.1 of the License only.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
*
|
||||
* The Phoenix Firestorm Project, Inc., 1831 Oakwood Drive, Fairmont, Minnesota 56031-3225 USA
|
||||
* http://www.phoenixviewer.com
|
||||
* $/LicenseInfo$
|
||||
*/
|
||||
|
||||
#ifndef FS_FSVERSIONVALUES_H
|
||||
#define FS_FSVERSIONVALUES_H
|
||||
|
||||
// <FS:TS> Define the version and channel substitution macros here instead
|
||||
// of via cmake compile-time defines in order to not force a rebuild
|
||||
// of the entire newview directory with every Mercurial pull
|
||||
// NOTE: This file should not be included anywhere in the main viewer code
|
||||
// but llversioninfo.cpp. If you need the current viewer version in
|
||||
// a different format than is already provided there, then add a
|
||||
// function to that file and reference it, rather than building your
|
||||
// own function elsewhere.
|
||||
#define LL_VIEWER_CHANNEL "@VIEWER_CHANNEL@"
|
||||
#define LL_VIEWER_VERSION_MAJOR @VIEWER_VERSION_MAJOR@
|
||||
#define LL_VIEWER_VERSION_MINOR @VIEWER_VERSION_MINOR@
|
||||
#define LL_VIEWER_VERSION_PATCH @VIEWER_VERSION_PATCH@
|
||||
#define LL_VIEWER_VERSION_BUILD @VIEWER_VERSION_REVISION@
|
||||
const std::string LL_VIEWER_VERSION_GITHASH {@VIEWER_VERSION_GITHASH@};
|
||||
#define LLBUILD_CONFIG "@CMAKE_BUILD_TYPE@"
|
||||
|
||||
// </FS:TS>
|
||||
|
||||
#endif
|
||||
|
After Width: | Height: | Size: 79 KiB |
|
After Width: | Height: | Size: 5.7 KiB |
|
After Width: | Height: | Size: 256 KiB |
|
After Width: | Height: | Size: 294 KiB |
|
After Width: | Height: | Size: 9.5 KiB |
|
After Width: | Height: | Size: 16 KiB |
|
After Width: | Height: | Size: 827 KiB |
|
After Width: | Height: | Size: 50 KiB |
@@ -72,7 +72,7 @@ extern "C"
|
||||
#endif
|
||||
|
||||
#include "boost/json.hpp"
|
||||
#include "fsversionvalues.h"
|
||||
#include "pmversionvalues.h"
|
||||
|
||||
#define VIEWERAPI_SERVICE "com.secondlife.ViewerAppAPIService"
|
||||
#define VIEWERAPI_PATH "/com/secondlife/ViewerAppAPI"
|
||||
|
||||
@@ -1391,63 +1391,6 @@ void LLPanelProfileSecondLife::fillAccountStatus(const LLAvatarData* avatar_data
|
||||
args["[ACCTTYPE]"] = LLAvatarPropertiesProcessor::accountType(avatar_data);
|
||||
args["[PAYMENTINFO]"] = LLAvatarPropertiesProcessor::paymentInfo(avatar_data);
|
||||
|
||||
// <FS:Ansariel> FSData support
|
||||
args["[FIRESTORM]"] = "";
|
||||
args["[FSSUPP]"] = "";
|
||||
args["[FSDEV]"] = "";
|
||||
args["[FSQA]"] = "";
|
||||
args["[FSGW]"] = "";
|
||||
S32 flags = FSData::getInstance()->getAgentFlags(avatar_data->avatar_id);
|
||||
if (flags != -1)
|
||||
{
|
||||
bool separator = false;
|
||||
std::string text;
|
||||
if (flags & (FSData::DEVELOPER | FSData::SUPPORT | FSData::QA | FSData::GATEWAY))
|
||||
{
|
||||
args["[FIRESTORM]"] = LLTrans::getString("APP_NAME");
|
||||
}
|
||||
|
||||
if (flags & FSData::DEVELOPER)
|
||||
{
|
||||
text = getString("FSDev");
|
||||
args["[FSDEV]"] = text;
|
||||
separator = true;
|
||||
}
|
||||
|
||||
if (flags & FSData::SUPPORT)
|
||||
{
|
||||
text = getString("FSSupp");
|
||||
if (separator)
|
||||
{
|
||||
text = " /" + text;
|
||||
}
|
||||
args["[FSSUPP]"] = text;
|
||||
separator = true;
|
||||
}
|
||||
|
||||
if (flags & FSData::QA)
|
||||
{
|
||||
text = getString("FSQualityAssurance");
|
||||
if (separator)
|
||||
{
|
||||
text = " /" + text;
|
||||
}
|
||||
args["[FSQA]"] = text;
|
||||
separator = true;
|
||||
}
|
||||
|
||||
if (flags & FSData::GATEWAY)
|
||||
{
|
||||
text = getString("FSGW");
|
||||
if (separator)
|
||||
{
|
||||
text = " /" + text;
|
||||
}
|
||||
args["[FSGW]"] = text;
|
||||
}
|
||||
}
|
||||
// </FS:Ansariel>
|
||||
|
||||
std::string caption_text = getString("CaptionTextAcctInfo", args);
|
||||
getChild<LLUICtrl>("account_info")->setValue(caption_text);
|
||||
|
||||
|
||||
@@ -34,7 +34,7 @@
|
||||
|
||||
// <FS:TS> Use configured file instead of compile time definitions to avoid
|
||||
// rebuilding the world with every Mercurial pull
|
||||
#include "fsversionvalues.h"
|
||||
#include "pmversionvalues.h"
|
||||
|
||||
#if ! defined(LL_VIEWER_CHANNEL) \
|
||||
|| ! defined(LL_VIEWER_VERSION_MAJOR) \
|
||||
|
||||
@@ -199,7 +199,6 @@
|
||||
#include "fsfloateravatarrendersettings.h"
|
||||
#include "fsfloatercontacts.h"
|
||||
#include "fsfloatercontactsetconfiguration.h"
|
||||
#include "fsfloaterdiscord.h"
|
||||
#include "fsfloaterexport.h"
|
||||
#include "fsfloaterblocklist.h"
|
||||
#include "fsfloatergroup.h"
|
||||
@@ -637,7 +636,6 @@ void LLViewerFloaterReg::registerFloaters()
|
||||
LLFloaterReg::add("fs_blocklist", "floater_fs_blocklist.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<FSFloaterBlocklist>);
|
||||
LLFloaterReg::add("fs_add_contact", "floater_fs_contact_add.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<FSFloaterAddToContactSet>);
|
||||
LLFloaterReg::add("fs_contact_set_config", "floater_fs_contact_set_configuration.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<FSFloaterContactSetConfiguration>);
|
||||
LLFloaterReg::add("fs_discord", "floater_fs_discord.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<FSFloaterDiscord>);
|
||||
LLFloaterReg::add("fs_group", "floater_fs_group.xml",&LLFloaterReg::build<FSFloaterGroup>);
|
||||
LLFloaterReg::add("fs_group_titles", "floater_fs_group_titles.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<FSFloaterGroupTitles>);
|
||||
LLFloaterReg::add("fs_export", "floater_fs_export.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<FSFloaterObjectExport>);
|
||||
|
||||
@@ -134,8 +134,6 @@
|
||||
#include "llsidepanelappearance.h"
|
||||
#include "fsavatarrenderpersistence.h"
|
||||
|
||||
#include "fsdiscordconnect.h" // <FS:LO> tapping a place that happens on landing in world to start up discord
|
||||
|
||||
extern F32 SPEED_ADJUST_MAX;
|
||||
extern F32 SPEED_ADJUST_MAX_SEC;
|
||||
extern F32 ANIM_SPEED_MAX;
|
||||
@@ -3656,8 +3654,6 @@ void LLVOAvatar::idleUpdateLoadingEffect()
|
||||
// <FS:Zi> Animation Overrider
|
||||
AOEngine::instance().onLoginComplete();
|
||||
|
||||
// <FS:LO> tapping a place that happens on landing in world to start up discord
|
||||
FSDiscordConnect::instance().checkConnectionToDiscord(gSavedPerAccountSettings.getBOOL("FSEnableDiscordIntegration"));
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@@ -128,7 +128,7 @@ class PMViewerManifest:
|
||||
|
||||
self.pm_save_symbols("linux")
|
||||
|
||||
def fs_linux_tar_excludes(self):
|
||||
def pm_linux_tar_excludes(self):
|
||||
installer_name_components = ['Puma',self.app_name(),self.args.get('arch'),'.'.join(self.args['version'])]
|
||||
installer_name = "_".join(installer_name_components)
|
||||
return "--exclude=%s/bin/.debug" % installer_name
|
||||
@@ -139,8 +139,8 @@ class PMViewerManifest:
|
||||
pdbName = "puma-bin.pdb"
|
||||
try:
|
||||
subprocess.check_call( [ "pdbcopy.exe" ,
|
||||
self.args['configuration'] + "\\firestorm-bin.pdb",
|
||||
self.args['configuration'] + "\\firestorm-bin-public.pdb",
|
||||
self.args['configuration'] + "\\puma-bin.pdb",
|
||||
self.args['configuration'] + "\\puma-bin-public.pdb",
|
||||
"-p"
|
||||
], stderr=subprocess.PIPE,stdout=subprocess.PIPE )
|
||||
pdbName = "puma-bin-public.pdb"
|
||||
|
||||
@@ -26,8 +26,8 @@
|
||||
* $/LicenseInfo$
|
||||
*/
|
||||
|
||||
#ifndef PM_FSVERSIONVALUES_H
|
||||
#define PM_FSVERSIONVALUES_H
|
||||
#ifndef PM_VERSIONVALUES_H
|
||||
#define PM_VERSIONVALUES_H
|
||||
|
||||
// <FS:TS> Define the version and channel substitution macros here instead
|
||||
// of via cmake compile-time defines in order to not force a rebuild
|
||||
|
||||
@@ -1136,8 +1136,6 @@ with the same filename but different name
|
||||
|
||||
<texture name="Icon_DialogStack" file_name="icons/Icon_DialogStack.png" preload="false" />
|
||||
|
||||
<texture name="Command_Discord_Icon" file_name="toolbar_icons/discord.png" preload="true" />
|
||||
|
||||
<!-- Higher Resolution 200px Loading Progress Indicator -->
|
||||
<texture name="ProgressLarge_1" file_name="icons/ProgressLarge_1.png" preload="true" />
|
||||
<texture name="ProgressLarge_2" file_name="icons/ProgressLarge_2.png" preload="true" />
|
||||
|
||||
@@ -1,30 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
|
||||
<floater name="floater_discord" title="Discord">
|
||||
<string name="discord_connected">Siz Discord-a qoşulmusunuz:</string>
|
||||
<string name="discord_disconnected">Discord-a qoşulmayıb.</string>
|
||||
<string name="SocialDiscordConnecting">Discord-a qoşulur...</string>
|
||||
<string name="SocialDiscordErrorConnecting">Discord-a qoşulma problemi</string>
|
||||
<string name="SocialDiscordDisconnecting">Discord ilə əlaqə kəsilir...</string>
|
||||
<text name="account_caption_label">
|
||||
Discord-a qoşulmayıb.
|
||||
</text>
|
||||
<check_box label="Giriş zamanı avtomatik qoşulun" name="startup_check"/>
|
||||
<check_box label="İstifadəçi adını bildirin" name="name_check"/>
|
||||
<button label="Qoş..." name="connect_btn"/>
|
||||
<button label="Deaktiv et" name="disconnect_btn"/>
|
||||
<text name="rating_label">
|
||||
Aşağıdakı məzmun reytinqi ilə regionların adlarını Discord-a bildirin:
|
||||
</text>
|
||||
<combo_box name="maturity_desired_combobox">
|
||||
<combo_box.item label="Ümumi, Ortam, Yetkin" name="Desired_Adult"/>
|
||||
<combo_box.item label="Ümumi və Ortam" name="Desired_Mature"/>
|
||||
<combo_box.item label="Ümumi" name="Desired_PG"/>
|
||||
<combo_box.item label="Paylaşmayın" name="Desired_None"/>
|
||||
</combo_box>
|
||||
<text name="dont_names_label">
|
||||
Discord-da region adları aşağıda göstərilibsə, onları paylaşmayın:
|
||||
</text>
|
||||
<text name="connection_status_text">
|
||||
Yüklənir...
|
||||
</text>
|
||||
</floater>
|
||||
@@ -5,10 +5,6 @@
|
||||
<string name="status_unknown">Naməlum</string>
|
||||
<string name="no_partner_text" value="Heç kim"/>
|
||||
<string name="no_group_text" value="Heç kim"/>
|
||||
<string name="FSDev" value=" Tərtibatçı"/>
|
||||
<string name="FSSupp" value=" Dəstək"/>
|
||||
<string name="FSQualityAssurance" value=" Sazladırıcı"/>
|
||||
<string name="FSGW" value=" Gateway"/>
|
||||
<text name="name_label" value="Adı:"/>
|
||||
<panel name="name_holder">
|
||||
<text_editor name="complete_name" value="(yüklənir...)"/>
|
||||
|
||||
@@ -1,40 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
|
||||
<floater name="floater_discord" title="Discord">
|
||||
<string name="discord_connected">
|
||||
Verbunden mit Discord als:
|
||||
</string>
|
||||
<string name="discord_disconnected">
|
||||
Nicht mit Discord verbunden.
|
||||
</string>
|
||||
<string name="SocialDiscordConnecting">
|
||||
Verbinde mit Discord...
|
||||
</string>
|
||||
<string name="SocialDiscordErrorConnecting">
|
||||
Problem beim Verbinden mit Discord
|
||||
</string>
|
||||
<string name="SocialDiscordDisconnecting">
|
||||
Discord-Verbindung wird getrennt...
|
||||
</string>
|
||||
<text name="account_caption_label">
|
||||
Nicht mit Discord verbunden.
|
||||
</text>
|
||||
<check_box label="Automatisch beim Login verbinden" name="startup_check"/>
|
||||
<check_box label="Name mit Discord teilen" name="name_check"/>
|
||||
<button label="Verbinden..." name="connect_btn"/>
|
||||
<button label="Trennen" name="disconnect_btn"/>
|
||||
<text name="rating_label">
|
||||
Name von Regionen mit folgender Einstufung mit Discord teilen:
|
||||
</text>
|
||||
<combo_box name="maturity_desired_combobox">
|
||||
<combo_box.item label="Generell, Moderate, Adult" name="Desired_Adult"/>
|
||||
<combo_box.item label="Generell und Moderate" name="Desired_Mature"/>
|
||||
<combo_box.item label="Generell" name="Desired_PG"/>
|
||||
<combo_box.item label="Nicht teilen" name="Desired_None"/>
|
||||
</combo_box>
|
||||
<text name="dont_names_label">
|
||||
Name von Regionen nicht mit Discord teilen, die unten aufgeführt sind:
|
||||
</text>
|
||||
<text name="connection_status_text">
|
||||
Wird geladen...
|
||||
</text>
|
||||
</floater>
|
||||
@@ -105,7 +105,6 @@
|
||||
<menu_item_call label="Twitter..." name="Twitter"/>
|
||||
<menu_item_call label="Flickr..." name="Flickr"/>
|
||||
<menu_item_call label="Primfeed..." name="Primfeed"/>
|
||||
<menu_item_call label="Discord..." name="Discord"/>
|
||||
<menu_item_check label="Gesten..." name="Gestures"/>
|
||||
<menu_item_check label="Unterhaltungsprotokoll..." name="Conversation Log..."/>
|
||||
<menu_item_check label="Stimmen in der Nähe" name="Nearby Voice"/>
|
||||
|
||||
@@ -38,10 +38,6 @@
|
||||
<string name="display_name_text_args">
|
||||
[DISPLAY_NAME]
|
||||
</string>
|
||||
<string name="FSDev" value="-Entwickler"/>
|
||||
<string name="FSSupp" value="-Support"/>
|
||||
<string name="FSQualityAssurance" value="-Fehlersuche"/>
|
||||
<string name="FSGW" value="-Gateway"/>
|
||||
<string name="texture_picker_label" value="Profil-Foto"/>
|
||||
<text name="name_label" value="Name:"/>
|
||||
<panel name="name_holder">
|
||||
|
||||
@@ -6092,9 +6092,6 @@ Setzen Sie den Editorpfad in Anführungszeichen
|
||||
<string name="Command_Stop_Animations_Label">
|
||||
Avatar-Animationen stoppen
|
||||
</string>
|
||||
<string name="Command_Discord_Label">
|
||||
Discord
|
||||
</string>
|
||||
<string name="Command_Poser_Label">
|
||||
Poser
|
||||
</string>
|
||||
@@ -6296,9 +6293,6 @@ Setzen Sie den Editorpfad in Anführungszeichen
|
||||
<string name="Command_Beacons_Tooltip">
|
||||
Ortungssignale anzeigen
|
||||
</string>
|
||||
<string name="Command_Discord_Tooltip">
|
||||
Discord
|
||||
</string>
|
||||
<string name="Command_Poser_Tooltip">
|
||||
Eigenen Avatar und Animeshe posieren
|
||||
</string>
|
||||
|
||||
@@ -1,201 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
|
||||
<floater
|
||||
positioning="cascading"
|
||||
can_close="true"
|
||||
can_resize="false"
|
||||
help_topic="floater_discord"
|
||||
layout="topleft"
|
||||
name="floater_discord"
|
||||
save_rect="true"
|
||||
single_instance="true"
|
||||
reuse_instance="true"
|
||||
title="Discord"
|
||||
height="485"
|
||||
width="272">
|
||||
<string name="discord_connected">You are connected to Discord as:</string>
|
||||
<string name="discord_disconnected">Not connected to Discord.</string>
|
||||
<string name="SocialDiscordConnecting">Connecting to Discord...</string>
|
||||
<string name="SocialDiscordErrorConnecting">Problem connecting to Discord</string>
|
||||
<string name="SocialDiscordDisconnecting">Disconnecting from Discord...</string>
|
||||
<text
|
||||
layout="topleft"
|
||||
length="1"
|
||||
follows="top|left"
|
||||
font="SansSerif"
|
||||
height="16"
|
||||
left="10"
|
||||
name="account_caption_label"
|
||||
top="5"
|
||||
type="string">
|
||||
Not connected to Discord.
|
||||
</text>
|
||||
<text
|
||||
layout="topleft"
|
||||
top_pad="2"
|
||||
length="1"
|
||||
follows="top|left"
|
||||
font="SansSerif"
|
||||
height="16"
|
||||
left="10"
|
||||
name="account_name_label"
|
||||
parse_urls="true"
|
||||
type="string"/>
|
||||
<check_box
|
||||
control_name="FSEnableDiscordIntegration"
|
||||
layout="topleft"
|
||||
follows="left|top|right"
|
||||
top_pad="9"
|
||||
left="10"
|
||||
right="-10"
|
||||
visible="true"
|
||||
height="23"
|
||||
label="Automatically connect on login"
|
||||
name="startup_check"
|
||||
width="210"/>
|
||||
<check_box
|
||||
control_name="FSShareNameToDiscord"
|
||||
layout="topleft"
|
||||
follows="left|top|right"
|
||||
left="10"
|
||||
right="-10"
|
||||
visible="true"
|
||||
height="23"
|
||||
label="Share username"
|
||||
name="name_check"
|
||||
width="210"/>
|
||||
<button
|
||||
layout="topleft"
|
||||
follows="left|top|right"
|
||||
top_pad="9"
|
||||
left="10"
|
||||
right="-10"
|
||||
visible="true"
|
||||
height="23"
|
||||
label="Connect..."
|
||||
name="connect_btn"
|
||||
width="210">
|
||||
<commit_callback function="FSDiscord.Connect"/>
|
||||
</button>
|
||||
|
||||
<button
|
||||
layout="topleft"
|
||||
follows="left|top|right"
|
||||
top_delta="0"
|
||||
left="10"
|
||||
right="-10"
|
||||
height="23"
|
||||
label="Disconnect"
|
||||
name="disconnect_btn"
|
||||
width="210"
|
||||
visible="false">
|
||||
<commit_callback function="FSDiscord.Disconnect"/>
|
||||
</button>
|
||||
<text
|
||||
layout="topleft"
|
||||
length="1"
|
||||
follows="top|left"
|
||||
font="SansSerif"
|
||||
height="26"
|
||||
word_wrap="true"
|
||||
left="10"
|
||||
right="-10"
|
||||
name="rating_label"
|
||||
top_pad="5"
|
||||
type="string">
|
||||
Share name of regions with following content rating to Discord:
|
||||
</text>
|
||||
<combo_box
|
||||
control_name="FSMaxSharedMaturity"
|
||||
follows="left|top"
|
||||
height="23"
|
||||
layout="topleft"
|
||||
name="maturity_desired_combobox"
|
||||
width="200">
|
||||
<combo_box.item
|
||||
label="General, Moderate, Adult"
|
||||
name="Desired_Adult"
|
||||
value="42" />
|
||||
<combo_box.item
|
||||
label="General and Moderate"
|
||||
name="Desired_Mature"
|
||||
value="21" />
|
||||
<combo_box.item
|
||||
label="General"
|
||||
name="Desired_PG"
|
||||
value="13" />
|
||||
<combo_box.item
|
||||
label="Don't share"
|
||||
name="Desired_None"
|
||||
value="0" />
|
||||
</combo_box>
|
||||
<text
|
||||
layout="topleft"
|
||||
length="1"
|
||||
follows="top|left"
|
||||
font="SansSerif"
|
||||
height="26"
|
||||
word_wrap="true"
|
||||
left="10"
|
||||
right="-10"
|
||||
name="dont_names_label"
|
||||
top_pad="5"
|
||||
type="string">
|
||||
Don't share region names to Discord if they are listed below:
|
||||
</text>
|
||||
<scroll_list
|
||||
follows="top|left|right"
|
||||
height="215"
|
||||
layout="topleft"
|
||||
left="10"
|
||||
multi_select="true"
|
||||
name="blacklisted_names"
|
||||
sort_column="0"
|
||||
sort_ascending="true"
|
||||
width="250" />
|
||||
<line_editor
|
||||
follows="left|top"
|
||||
bottom_delta="24"
|
||||
height="20"
|
||||
max_length_chars="256"
|
||||
name="blacklist_entry"
|
||||
width="202">
|
||||
<commit_callback function="FSDiscord.Add"/>
|
||||
</line_editor>
|
||||
<button
|
||||
follows="left|top"
|
||||
height="20"
|
||||
image_overlay="AddItem_Off"
|
||||
layout="topleft"
|
||||
left_pad="4"
|
||||
name="blacklist_entry_add"
|
||||
scale_image="true"
|
||||
width="20">
|
||||
<commit_callback function="FSDiscord.Add"/>
|
||||
</button>
|
||||
<button
|
||||
follows="left|top"
|
||||
height="20"
|
||||
image_overlay="MinusItem_Off"
|
||||
layout="topleft"
|
||||
left_pad="4"
|
||||
name="blacklist_entry_rem"
|
||||
scale_image="true"
|
||||
width="20">
|
||||
<commit_callback function="FSDiscord.Rem"/>
|
||||
</button>
|
||||
<text
|
||||
name="connection_status_text"
|
||||
type="string"
|
||||
follows="left|bottom|right"
|
||||
bottom_delta="20"
|
||||
left="-262"
|
||||
width="223"
|
||||
height="20"
|
||||
wrap="true"
|
||||
halign="left"
|
||||
valign="center"
|
||||
text_color="EmphasisColor"
|
||||
font="SansSerif">
|
||||
Loading...
|
||||
</text>
|
||||
</floater>
|
||||
@@ -842,13 +842,6 @@
|
||||
<menu_item_call.on_click
|
||||
function="Floater.Toggle"
|
||||
parameter="primfeed"/>
|
||||
</menu_item_call>
|
||||
<menu_item_call
|
||||
label="Discord..."
|
||||
name="Discord">
|
||||
<menu_item_call.on_click
|
||||
function="Floater.Toggle"
|
||||
parameter="fs_discord"/>
|
||||
</menu_item_call>
|
||||
<menu_item_separator/>
|
||||
<menu_item_check
|
||||
|
||||
@@ -90,22 +90,6 @@
|
||||
>
|
||||
[DISPLAY_NAME]
|
||||
</string>
|
||||
<string
|
||||
name="FSDev"
|
||||
value=" Developer"
|
||||
/>
|
||||
<string
|
||||
name="FSSupp"
|
||||
value=" Support"
|
||||
/>
|
||||
<string
|
||||
name="FSQualityAssurance"
|
||||
value=" Bug Hunter"
|
||||
/>
|
||||
<string
|
||||
name="FSGW"
|
||||
value=" Gateway"
|
||||
/>
|
||||
<string
|
||||
name="texture_picker_label"
|
||||
value="Profile Picture"
|
||||
|
||||
@@ -2847,9 +2847,6 @@ name="Command_360_Capture_Tooltip">Capture a 360° equirectangular image</string
|
||||
<string name="Command_Stop_Animations_Label">Stop Animations</string>
|
||||
<string name="Command_Stop_Animations_Tooltip">Stop Animating my Avatar</string>
|
||||
|
||||
<string name="Command_Discord_Label">Discord</string>
|
||||
<string name="Command_Discord_Tooltip">Discord</string>
|
||||
|
||||
<!-- Mesh UI terms -->
|
||||
<string name="Retain%">Retain%</string>
|
||||
<string name="Detail">Detail</string>
|
||||
|
||||
@@ -21,10 +21,6 @@
|
||||
<string name="display_name_text_args">
|
||||
[DISPLAY_NAME]
|
||||
</string>
|
||||
<string name="FSDev" value="Desarrollador"/>
|
||||
<string name="FSSupp" value="Soporte"/>
|
||||
<string name="FSQualityAssurance" value="Buscador de fallos"/>
|
||||
<string name="FSGW" value="Portal"/>
|
||||
<text name="name_label" value="Nombre:"/>
|
||||
<button label="Nombre:" name="set_name" tool_tip="Configurar nombre mostrado"/>
|
||||
<panel name="name_holder">
|
||||
|
||||
@@ -1,40 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
|
||||
<floater name="floater_discord" title="Discord">
|
||||
<string name="discord_connected">
|
||||
Connecté(e) à Discord en tant que :
|
||||
</string>
|
||||
<string name="discord_disconnected">
|
||||
Non connecté(e) Discord.
|
||||
</string>
|
||||
<string name="SocialDiscordConnecting">
|
||||
En cours de connexion à Discord...
|
||||
</string>
|
||||
<string name="SocialDiscordErrorConnecting">
|
||||
Problème de connexion à Discord
|
||||
</string>
|
||||
<string name="SocialDiscordDisconnecting">
|
||||
En cours de déconnexion de Discord...
|
||||
</string>
|
||||
<text name="account_caption_label">
|
||||
Non connecté à Discord.
|
||||
</text>
|
||||
<check_box label="Connexion automatique lors du login" name="startup_check"/>
|
||||
<check_box label="Partager le nom d'utilisateur" name="name_check"/>
|
||||
<button label="Se connecter..." name="connect_btn"/>
|
||||
<button label="Se déconnecter" name="disconnect_btn"/>
|
||||
<text name="rating_label">
|
||||
Partager avec Discord le nom des régions ayant la classification suivante :
|
||||
</text>
|
||||
<combo_box name="maturity_desired_combobox">
|
||||
<combo_box.item label="Général, Modéré, Adulte" name="Desired_Adult"/>
|
||||
<combo_box.item label="Général et modéré" name="Desired_Mature"/>
|
||||
<combo_box.item label="Général" name="Desired_PG"/>
|
||||
<combo_box.item label="Ne pas partager" name="Desired_None"/>
|
||||
</combo_box>
|
||||
<text name="dont_names_label">
|
||||
Ne pas partager avec Discord le noms des régions qui sont dans la liste ci-dessous :
|
||||
</text>
|
||||
<text name="connection_status_text">
|
||||
En cours de chargement...
|
||||
</text>
|
||||
</floater>
|
||||
@@ -94,7 +94,6 @@
|
||||
<menu_item_check label="Gestes..." name="Gestures"/>
|
||||
<menu_item_call label="Flickr..." name="Flickr"/>
|
||||
<menu_item_call label="Primfeed..." name="Primfeed"/>
|
||||
<menu_item_call label="Discord..." name="Discord"/>
|
||||
<menu label="Effets de voix" name="VoiceMorphing">
|
||||
<menu_item_check label="Aucun effet de voix" name="NoVoiceMorphing"/>
|
||||
<menu_item_check label="Aperçu..." name="Preview"/>
|
||||
|
||||
@@ -24,10 +24,6 @@
|
||||
</string>
|
||||
<string name="no_partner_text" value="Aucun"/>
|
||||
<string name="no_group_text" value="Aucun"/>
|
||||
<string name="FSDev" value="Développeur"/>
|
||||
<string name="FSSupp" value="Assistance"/>
|
||||
<string name="FSQualityAssurance" value="Suivi des anomalies"/>
|
||||
<string name="FSGW" value="Portail"/>
|
||||
<string name="texture_picker_label" value="Photo du profil" />
|
||||
<text name="name_label" value="Nom :"/>
|
||||
<panel name="name_holder">
|
||||
|
||||
@@ -6190,12 +6190,6 @@ Essayez avec le chemin d'accès à l'éditeur entre guillemets doubles
|
||||
<string name="Command_Stop_Animations_Tooltip">
|
||||
Arrêter l'animation
|
||||
</string>
|
||||
<string name="Command_Discord_Label">
|
||||
Discord
|
||||
</string>
|
||||
<string name="Command_Discord_Tooltip">
|
||||
Discord
|
||||
</string>
|
||||
<string name="Retain%">
|
||||
Garder%
|
||||
</string>
|
||||
|
||||
@@ -6,7 +6,6 @@
|
||||
<string name="CaptionTextAcctInfo">
|
||||
[ACCTTYPE]
|
||||
[PAYMENTINFO]
|
||||
[FSDEV][FSSUPP][FSQA][FSGW][FIRESTORM]
|
||||
</string>
|
||||
<string name="BadgeBeta" value="Beta Tester originale" />
|
||||
<string name="BadgeBetaLifetime" value="Membro a vita Beta" />
|
||||
@@ -17,10 +16,6 @@
|
||||
<string name="BadgeTeam" value="Membro [APP_NAME] Team" />
|
||||
<string name="no_partner_text" value="Nessuno" />
|
||||
<string name="no_group_text" value="Nessuno" />
|
||||
<string name="FSDev" value="Sviluppatore "/>
|
||||
<string name="FSSupp" value="Supporto "/>
|
||||
<string name="FSQualityAssurance" value="Bug Hunter "/>
|
||||
<string name="FSGW" value="Gateway "/>
|
||||
<string name="texture_picker_label" value="Immagine del profilo" />
|
||||
<text name="name_label" value="Nome:" />
|
||||
<panel name="name_holder">
|
||||
|
||||
@@ -1,40 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
|
||||
<floater name="floater_discord" title="Discord">
|
||||
<string name="discord_connected">
|
||||
次のアカウント名でDiscordに接続:
|
||||
</string>
|
||||
<string name="discord_disconnected">
|
||||
Discordに接続していません。
|
||||
</string>
|
||||
<string name="SocialDiscordConnecting">
|
||||
Discordに接続しています…。
|
||||
</string>
|
||||
<string name="SocialDiscordErrorConnecting">
|
||||
Discord接続時に問題が発生しました。
|
||||
</string>
|
||||
<string name="SocialDiscordDisconnecting">
|
||||
Discordから切断しています…。
|
||||
</string>
|
||||
<text name="account_caption_label">
|
||||
Discordに接続していません。
|
||||
</text>
|
||||
<check_box label="ログイン時に自動接続する" name="startup_check" />
|
||||
<check_box label="ユーザ名を共有する" name="name_check" />
|
||||
<button label="接続…" name="connect_btn" />
|
||||
<button label="切断" name="disconnect_btn" />
|
||||
<text name="rating_label">
|
||||
以下のコンテンツレーティングのリージョン名をDiscordで共有する:
|
||||
</text>
|
||||
<combo_box name="maturity_desired_combobox">
|
||||
<combo_box.item label="General, Moderate, Adult" name="Desired_Adult" />
|
||||
<combo_box.item label="General, Moderate" name="Desired_Mature" />
|
||||
<combo_box.item label="General" name="Desired_PG" />
|
||||
<combo_box.item label="共有しない" name="Desired_None" />
|
||||
</combo_box>
|
||||
<text name="dont_names_label">
|
||||
以下のリストにあるリージョン名はDiscordに共有しない:
|
||||
</text>
|
||||
<text name="connection_status_text">
|
||||
読み込んでいます…
|
||||
</text>
|
||||
</floater>
|
||||
@@ -99,7 +99,6 @@
|
||||
<menu_item_check label="ジェスチャー" name="Gestures"/>
|
||||
<menu_item_call label="Flickr…" name="Flickr"/>
|
||||
<menu_item_call label="Primfeed…" name="Primfeed"/>
|
||||
<menu_item_call label="Discord…" name="Discord"/>
|
||||
<menu_item_check label="会話ログ…" name="Conversation Log..."/>
|
||||
<menu_item_check label="近くのボイス" name="Nearby Voice"/>
|
||||
<menu_item_call label="ブロックリスト" name="Block List"/>
|
||||
|
||||
@@ -22,10 +22,6 @@
|
||||
<string name="my_account_link_url" value="https://secondlife.com/my/account/?lang=ja-JP"/>
|
||||
<string name="no_partner_text" value="なし"/>
|
||||
<string name="no_group_text" value="なし"/>
|
||||
<string name="FSDev" value="開発者"/>
|
||||
<string name="FSSupp" value="サポート"/>
|
||||
<string name="FSQualityAssurance" value="バグハンター"/>
|
||||
<string name="FSGW" value="ゲートウェイ"/>
|
||||
<string name="texture_picker_label" value="プロフィール画像"/>
|
||||
<text name="name_label" value="名前:"/>
|
||||
<panel name="name_holder">
|
||||
|
||||
@@ -1,30 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
|
||||
<floater name="floater_discord">
|
||||
<string name="discord_connected">Połączony/a z Discord jako:</string>
|
||||
<string name="discord_disconnected">Brak połączenia z Discord.</string>
|
||||
<string name="SocialDiscordConnecting">Łączenie z Discord...</string>
|
||||
<string name="SocialDiscordErrorConnecting">Problem z połączeniem z Discord</string>
|
||||
<string name="SocialDiscordDisconnecting">Odłączanie się od Discorda...</string>
|
||||
<text name="account_caption_label">
|
||||
Brak połączenia z Discord.
|
||||
</text>
|
||||
<check_box label="Połącz automatycznie przy logowaniu" name="startup_check" />
|
||||
<check_box label="Udostępniaj nazwę użytkownika" name="name_check" />
|
||||
<button label="Połącz..." name="connect_btn" />
|
||||
<button label="Odłącz" name="disconnect_btn" />
|
||||
<text name="rating_label">
|
||||
Podawaj Discordowi nazwy regionów, jeśli ich klasyfikacja to:
|
||||
</text>
|
||||
<combo_box name="maturity_desired_combobox">
|
||||
<combo_box.item label="General (dla wszystkich), Moderate (umiarkowane), Adult (dla dorosłych)" name="Desired_Adult" />
|
||||
<combo_box.item label="General (dla wszystkich), Moderate (umiarkowane)" name="Desired_Mature" />
|
||||
<combo_box.item label="General (dla wszystkich)" name="Desired_PG" />
|
||||
<combo_box.item label="Nie udostępniaj" name="Desired_None" />
|
||||
</combo_box>
|
||||
<text name="dont_names_label">
|
||||
Nie podawaj Discordowi nazw regionów, jeśli są widoczne poniżej:
|
||||
</text>
|
||||
<text name="connection_status_text">
|
||||
Wczytywanie...
|
||||
</text>
|
||||
</floater>
|
||||
@@ -12,9 +12,6 @@
|
||||
<string name="BadgeTeam" value="Zespół [APP_NAME]a" />
|
||||
<string name="no_partner_text" value="Brak" />
|
||||
<string name="no_group_text" value="Brak" />
|
||||
<string name="FSDev" value=" Programista" />
|
||||
<string name="FSSupp" value=" Wsparcie" />
|
||||
<string name="FSQualityAssurance" value=" Łowca błędów" />
|
||||
<string name="texture_picker_label" value="Zdjęcie profilowe" />
|
||||
<text name="name_label" value="Imię:" />
|
||||
<panel name="name_holder">
|
||||
|
||||
@@ -21,10 +21,6 @@
|
||||
<string name="display_name_text_args">
|
||||
[DISPLAY_NAME]
|
||||
</string>
|
||||
<string name="FSDev" value="Desenvolvedor"/>
|
||||
<string name="FSSupp" value="Suporte"/>
|
||||
<string name="FSQualityAssurance" value="Caçador de Bug"/>
|
||||
<string name="FSGW" value="Gateway"/>
|
||||
<text name="name_label" value="Nome:"/>
|
||||
<button label="Nome:" name="set_name" tool_tip="Definir nome de tela"/>
|
||||
<panel name="name_holder">
|
||||
|
||||
@@ -1,30 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
|
||||
<floater name="floater_discord" title="Discord">
|
||||
<string name="discord_connected">Вы подключены к Discord как:</string>
|
||||
<string name="discord_disconnected">Не подключен к Discord.</string>
|
||||
<string name="SocialDiscordConnecting">Подключение к Discord...</string>
|
||||
<string name="SocialDiscordErrorConnecting">Проблема с подключением к Discord</string>
|
||||
<string name="SocialDiscordDisconnecting">Отключение от Discord...</string>
|
||||
<text name="account_caption_label">
|
||||
Не подключен к Discord.
|
||||
</text>
|
||||
<check_box label="Автоматически подключаться при входе" name="startup_check"/>
|
||||
<check_box label="Сообщить имя пользователя" name="name_check"/>
|
||||
<button label="Подключить..." name="connect_btn"/>
|
||||
<button label="Отключить" name="disconnect_btn"/>
|
||||
<text name="rating_label">
|
||||
Сообщить в Discord названия регионов со следующим рейтингом контента:
|
||||
</text>
|
||||
<combo_box name="maturity_desired_combobox">
|
||||
<combo_box.item label="Общий, Умеренный, Взрослый" name="Desired_Adult"/>
|
||||
<combo_box.item label="Общий и Умеренный" name="Desired_Mature"/>
|
||||
<combo_box.item label="Общий" name="Desired_PG"/>
|
||||
<combo_box.item label="Не сообщать" name="Desired_None"/>
|
||||
</combo_box>
|
||||
<text name="dont_names_label">
|
||||
Не сообщать в Discord названия регионов, если они указаны ниже:
|
||||
</text>
|
||||
<text name="connection_status_text">
|
||||
Загрузка...
|
||||
</text>
|
||||
</floater>
|
||||
@@ -12,10 +12,6 @@
|
||||
<string name="BadgeTeam" value="Член [APP_NAME]" />
|
||||
<string name="no_partner_text" value="Никто"/>
|
||||
<string name="no_group_text" value="Никто"/>
|
||||
<string name="FSDev" value=" Разработчик"/>
|
||||
<string name="FSSupp" value=" Поддержка"/>
|
||||
<string name="FSQualityAssurance" value=" Отладчик"/>
|
||||
<string name="FSGW" value=" Шлюз"/>
|
||||
<text name="name_label" value="Имя:"/>
|
||||
<panel name="name_holder">
|
||||
<text_editor name="complete_name" value="(загрузка...)"/>
|
||||
|
||||
@@ -21,10 +21,6 @@
|
||||
<string name="display_name_text_args">
|
||||
[DISPLAY_NAME]
|
||||
</string>
|
||||
<string name="FSDev" value="Geliştirici"/>
|
||||
<string name="FSSupp" value="Destek"/>
|
||||
<string name="FSQualityAssurance" value="Böcek bilimci"/>
|
||||
<string name="FSGW" value="Ağ geçidi"/>
|
||||
<text name="name_label" value="Ad:"/>
|
||||
<button label="Ad:" name="set_name" tool_tip="Görünen Adı Ayarla"/>
|
||||
<panel name="name_holder">
|
||||
|
||||
@@ -1,40 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
|
||||
<floater name="floater_discord" title="Discord">
|
||||
<string name="discord_connected">
|
||||
已連線到 Discord:
|
||||
</string>
|
||||
<string name="discord_disconnected">
|
||||
未連線到 Discord。
|
||||
</string>
|
||||
<string name="SocialDiscordConnecting">
|
||||
正在連線到 Discord...
|
||||
</string>
|
||||
<string name="SocialDiscordErrorConnecting">
|
||||
連線到 Discord 時出現問題
|
||||
</string>
|
||||
<string name="SocialDiscordDisconnecting">
|
||||
正在斷開 Discord 連線...
|
||||
</string>
|
||||
<text name="account_caption_label">
|
||||
未連線到 Discord。
|
||||
</text>
|
||||
<check_box label="登入時自動連線" name="startup_check" />
|
||||
<check_box label="與 Discord 共享使用者名稱" name="name_check" />
|
||||
<button label="連線中..." name="connect_btn" />
|
||||
<button label="斷開連線" name="disconnect_btn" />
|
||||
<text name="rating_label">
|
||||
將以下等級的區域名稱與 Discord 共享:
|
||||
</text>
|
||||
<combo_box name="maturity_desired_combobox">
|
||||
<combo_box.item label="普級、適度成人、完全成人" name="Desired_Adult" />
|
||||
<combo_box.item label="普級和適度成人" name="Desired_Mature" />
|
||||
<combo_box.item label="普級" name="Desired_PG" />
|
||||
<combo_box.item label="不共享" name="Desired_None" />
|
||||
</combo_box>
|
||||
<text name="dont_names_label">
|
||||
將以下列出的區域名稱不與 Discord 共享:
|
||||
</text>
|
||||
<text name="connection_status_text">
|
||||
正在載入...
|
||||
</text>
|
||||
</floater>
|
||||
@@ -96,7 +96,6 @@
|
||||
<menu_item_check label="快捷手勢" name="Gestures" />
|
||||
<menu_item_call label="Flickr..." name="Flickr" />
|
||||
<menu_item_call label="Primfeed..." name="Primfeed"/>
|
||||
<menu_item_call label="Discord..." name="Discord" />
|
||||
<menu_item_check label="聊天記錄" name="Conversation Log..." />
|
||||
<menu_item_check label="附近的語音" name="Nearby Voice" />
|
||||
<menu_item_call label="封鎖列表" name="Block List" />
|
||||
@@ -709,4 +708,4 @@
|
||||
</menu>
|
||||
</menu>
|
||||
</menu>
|
||||
</menu_bar>
|
||||
</menu_bar>
|
||||
|
||||
@@ -18,10 +18,6 @@
|
||||
<string name="BadgeTeam" value="[APP_NAME] 會員" />
|
||||
<string name="no_partner_text" value="無" />
|
||||
<string name="no_group_text" value="無" />
|
||||
<string name="FSDev" value="開發者" />
|
||||
<string name="FSSupp" value="支援" />
|
||||
<string name="FSQualityAssurance" value="除錯人員" />
|
||||
<string name="FSGW" value="閘道器" />
|
||||
<string name="texture_picker_label" value="個人檔案相片" />
|
||||
<text name="name_label" value="名稱:" />
|
||||
<button label="名稱:" name="set_name" tool_tip="設定顯示名稱" />
|
||||
@@ -77,4 +73,4 @@
|
||||
<check_box name="hide_sl_age" label="顯示完整生日" tool_tip="讓人們看到您的SL年齡" />
|
||||
<button name="save_description_changes" label="儲存" />
|
||||
<button name="discard_description_changes" label="放棄" />
|
||||
</panel>
|
||||
</panel>
|
||||
|
||||
@@ -6510,12 +6510,6 @@ support@secondlife.com.
|
||||
<string name="Command_Stop_Animations_Tooltip">
|
||||
停止我的化身上的動畫
|
||||
</string>
|
||||
<string name="Command_Discord_Label">
|
||||
Discord
|
||||
</string>
|
||||
<string name="Command_Discord_Tooltip">
|
||||
Discord
|
||||
</string>
|
||||
<!-- Mesh UI terms -->
|
||||
<string name="Retain%">
|
||||
保留%
|
||||
@@ -7535,4 +7529,4 @@ SecondLife.com網站的「支援」部分
|
||||
<string name="Unlimited">
|
||||
無限
|
||||
</string>
|
||||
</strings>
|
||||
</strings>
|
||||
|
||||
@@ -1136,8 +1136,6 @@ with the same filename but different name
|
||||
|
||||
<texture name="Icon_DialogStack" file_name="icons/Icon_DialogStack.png" preload="false" />
|
||||
|
||||
<texture name="Command_Discord_Icon" file_name="toolbar_icons/discord.png" preload="true" />
|
||||
|
||||
<!-- Higher Resolution 200px Loading Progress Indicator -->
|
||||
<texture name="ProgressLarge_1" file_name="icons/ProgressLarge_1.png" preload="true" />
|
||||
<texture name="ProgressLarge_2" file_name="icons/ProgressLarge_2.png" preload="true" />
|
||||
|
||||
@@ -1,30 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
|
||||
<floater name="floater_discord" title="Discord">
|
||||
<string name="discord_connected">Siz Discord-a qoşulmusunuz:</string>
|
||||
<string name="discord_disconnected">Discord-a qoşulmayıb.</string>
|
||||
<string name="SocialDiscordConnecting">Discord-a qoşulur...</string>
|
||||
<string name="SocialDiscordErrorConnecting">Discord-a qoşulma problemi</string>
|
||||
<string name="SocialDiscordDisconnecting">Discord ilə əlaqə kəsilir...</string>
|
||||
<text name="account_caption_label">
|
||||
Discord-a qoşulmayıb.
|
||||
</text>
|
||||
<check_box label="Giriş zamanı avtomatik qoşulun" name="startup_check"/>
|
||||
<check_box label="İstifadəçi adını bildirin" name="name_check"/>
|
||||
<button label="Qoş..." name="connect_btn"/>
|
||||
<button label="Deaktiv et" name="disconnect_btn"/>
|
||||
<text name="rating_label">
|
||||
Aşağıdakı məzmun reytinqi ilə regionların adlarını Discord-a bildirin:
|
||||
</text>
|
||||
<combo_box name="maturity_desired_combobox">
|
||||
<combo_box.item label="Ümumi, Ortam, Yetkin" name="Desired_Adult"/>
|
||||
<combo_box.item label="Ümumi və Ortam" name="Desired_Mature"/>
|
||||
<combo_box.item label="Ümumi" name="Desired_PG"/>
|
||||
<combo_box.item label="Paylaşmayın" name="Desired_None"/>
|
||||
</combo_box>
|
||||
<text name="dont_names_label">
|
||||
Discord-da region adları aşağıda göstərilibsə, onları paylaşmayın:
|
||||
</text>
|
||||
<text name="connection_status_text">
|
||||
Yüklənir...
|
||||
</text>
|
||||
</floater>
|
||||
@@ -5,10 +5,6 @@
|
||||
<string name="status_unknown">Naməlum</string>
|
||||
<string name="no_partner_text" value="Heç kim"/>
|
||||
<string name="no_group_text" value="Heç kim"/>
|
||||
<string name="FSDev" value=" Tərtibatçı"/>
|
||||
<string name="FSSupp" value=" Dəstək"/>
|
||||
<string name="FSQualityAssurance" value=" Sazladırıcı"/>
|
||||
<string name="FSGW" value=" Gateway"/>
|
||||
<text name="name_label" value="Adı:"/>
|
||||
<panel name="name_holder">
|
||||
<text_editor name="complete_name" value="(yüklənir...)"/>
|
||||
|
||||
@@ -1,40 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
|
||||
<floater name="floater_discord" title="Discord">
|
||||
<string name="discord_connected">
|
||||
Verbunden mit Discord als:
|
||||
</string>
|
||||
<string name="discord_disconnected">
|
||||
Nicht mit Discord verbunden.
|
||||
</string>
|
||||
<string name="SocialDiscordConnecting">
|
||||
Verbinde mit Discord...
|
||||
</string>
|
||||
<string name="SocialDiscordErrorConnecting">
|
||||
Problem beim Verbinden mit Discord
|
||||
</string>
|
||||
<string name="SocialDiscordDisconnecting">
|
||||
Discord-Verbindung wird getrennt...
|
||||
</string>
|
||||
<text name="account_caption_label">
|
||||
Nicht mit Discord verbunden.
|
||||
</text>
|
||||
<check_box label="Automatisch beim Login verbinden" name="startup_check"/>
|
||||
<check_box label="Name mit Discord teilen" name="name_check"/>
|
||||
<button label="Verbinden..." name="connect_btn"/>
|
||||
<button label="Trennen" name="disconnect_btn"/>
|
||||
<text name="rating_label">
|
||||
Name von Regionen mit folgender Einstufung mit Discord teilen:
|
||||
</text>
|
||||
<combo_box name="maturity_desired_combobox">
|
||||
<combo_box.item label="Generell, Moderate, Adult" name="Desired_Adult"/>
|
||||
<combo_box.item label="Generell und Moderate" name="Desired_Mature"/>
|
||||
<combo_box.item label="Generell" name="Desired_PG"/>
|
||||
<combo_box.item label="Nicht teilen" name="Desired_None"/>
|
||||
</combo_box>
|
||||
<text name="dont_names_label">
|
||||
Name von Regionen nicht mit Discord teilen, die unten aufgeführt sind:
|
||||
</text>
|
||||
<text name="connection_status_text">
|
||||
Wird geladen...
|
||||
</text>
|
||||
</floater>
|
||||
@@ -104,7 +104,6 @@
|
||||
<menu_item_check label="Gesten" name="Gestures"/>
|
||||
<menu_item_call label="Twitter..." name="Twitter"/>
|
||||
<menu_item_call label="Flickr..." name="Flickr"/>
|
||||
<menu_item_call label="Discord..." name="Discord"/>
|
||||
<menu_item_check label="Gesten..." name="Gestures"/>
|
||||
<menu_item_check label="Unterhaltungsprotokoll..." name="Conversation Log..."/>
|
||||
<menu_item_check label="Stimmen in der Nähe" name="Nearby Voice"/>
|
||||
|
||||
@@ -38,10 +38,6 @@
|
||||
<string name="display_name_text_args">
|
||||
[DISPLAY_NAME]
|
||||
</string>
|
||||
<string name="FSDev" value="-Entwickler"/>
|
||||
<string name="FSSupp" value="-Support"/>
|
||||
<string name="FSQualityAssurance" value="-Fehlersuche"/>
|
||||
<string name="FSGW" value="-Gateway"/>
|
||||
<string name="texture_picker_label" value="Profil-Foto"/>
|
||||
<text name="name_label" value="Name:"/>
|
||||
<panel name="name_holder">
|
||||
|
||||
@@ -6116,9 +6116,6 @@ Setzen Sie den Editorpfad in Anführungszeichen
|
||||
<string name="Command_Stop_Animations_Label">
|
||||
Avatar-Animationen stoppen
|
||||
</string>
|
||||
<string name="Command_Discord_Label">
|
||||
Discord
|
||||
</string>
|
||||
<string name="Command_Poser_Label">
|
||||
Poser
|
||||
</string>
|
||||
@@ -6317,9 +6314,6 @@ Setzen Sie den Editorpfad in Anführungszeichen
|
||||
<string name="Command_Beacons_Tooltip">
|
||||
Ortungssignale anzeigen
|
||||
</string>
|
||||
<string name="Command_Discord_Tooltip">
|
||||
Discord
|
||||
</string>
|
||||
<string name="Command_Poser_Tooltip">
|
||||
Eigenen Avatar und Animeshe posieren
|
||||
</string>
|
||||
|
||||
@@ -1,201 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
|
||||
<floater
|
||||
positioning="cascading"
|
||||
can_close="true"
|
||||
can_resize="false"
|
||||
help_topic="floater_discord"
|
||||
layout="topleft"
|
||||
name="floater_discord"
|
||||
save_rect="true"
|
||||
single_instance="true"
|
||||
reuse_instance="true"
|
||||
title="Discord"
|
||||
height="485"
|
||||
width="272">
|
||||
<string name="discord_connected">You are connected to Discord as:</string>
|
||||
<string name="discord_disconnected">Not connected to Discord.</string>
|
||||
<string name="SocialDiscordConnecting">Connecting to Discord...</string>
|
||||
<string name="SocialDiscordErrorConnecting">Problem connecting to Discord</string>
|
||||
<string name="SocialDiscordDisconnecting">Disconnecting from Discord...</string>
|
||||
<text
|
||||
layout="topleft"
|
||||
length="1"
|
||||
follows="top|left"
|
||||
font="SansSerif"
|
||||
height="16"
|
||||
left="10"
|
||||
name="account_caption_label"
|
||||
top="5"
|
||||
type="string">
|
||||
Not connected to Discord.
|
||||
</text>
|
||||
<text
|
||||
layout="topleft"
|
||||
top_pad="2"
|
||||
length="1"
|
||||
follows="top|left"
|
||||
font="SansSerif"
|
||||
height="16"
|
||||
left="10"
|
||||
name="account_name_label"
|
||||
parse_urls="true"
|
||||
type="string"/>
|
||||
<check_box
|
||||
control_name="FSEnableDiscordIntegration"
|
||||
layout="topleft"
|
||||
follows="left|top|right"
|
||||
top_pad="9"
|
||||
left="10"
|
||||
right="-10"
|
||||
visible="true"
|
||||
height="23"
|
||||
label="Automatically connect on login"
|
||||
name="startup_check"
|
||||
width="210"/>
|
||||
<check_box
|
||||
control_name="FSShareNameToDiscord"
|
||||
layout="topleft"
|
||||
follows="left|top|right"
|
||||
left="10"
|
||||
right="-10"
|
||||
visible="true"
|
||||
height="23"
|
||||
label="Share username"
|
||||
name="name_check"
|
||||
width="210"/>
|
||||
<button
|
||||
layout="topleft"
|
||||
follows="left|top|right"
|
||||
top_pad="9"
|
||||
left="10"
|
||||
right="-10"
|
||||
visible="true"
|
||||
height="23"
|
||||
label="Connect..."
|
||||
name="connect_btn"
|
||||
width="210">
|
||||
<commit_callback function="FSDiscord.Connect"/>
|
||||
</button>
|
||||
|
||||
<button
|
||||
layout="topleft"
|
||||
follows="left|top|right"
|
||||
top_delta="0"
|
||||
left="10"
|
||||
right="-10"
|
||||
height="23"
|
||||
label="Disconnect"
|
||||
name="disconnect_btn"
|
||||
width="210"
|
||||
visible="false">
|
||||
<commit_callback function="FSDiscord.Disconnect"/>
|
||||
</button>
|
||||
<text
|
||||
layout="topleft"
|
||||
length="1"
|
||||
follows="top|left"
|
||||
font="SansSerif"
|
||||
height="26"
|
||||
word_wrap="true"
|
||||
left="10"
|
||||
right="-10"
|
||||
name="rating_label"
|
||||
top_pad="5"
|
||||
type="string">
|
||||
Share name of regions with following content rating to Discord:
|
||||
</text>
|
||||
<combo_box
|
||||
control_name="FSMaxSharedMaturity"
|
||||
follows="left|top"
|
||||
height="23"
|
||||
layout="topleft"
|
||||
name="maturity_desired_combobox"
|
||||
width="200">
|
||||
<combo_box.item
|
||||
label="General, Moderate, Adult"
|
||||
name="Desired_Adult"
|
||||
value="42" />
|
||||
<combo_box.item
|
||||
label="General and Moderate"
|
||||
name="Desired_Mature"
|
||||
value="21" />
|
||||
<combo_box.item
|
||||
label="General"
|
||||
name="Desired_PG"
|
||||
value="13" />
|
||||
<combo_box.item
|
||||
label="Don't share"
|
||||
name="Desired_None"
|
||||
value="0" />
|
||||
</combo_box>
|
||||
<text
|
||||
layout="topleft"
|
||||
length="1"
|
||||
follows="top|left"
|
||||
font="SansSerif"
|
||||
height="26"
|
||||
word_wrap="true"
|
||||
left="10"
|
||||
right="-10"
|
||||
name="dont_names_label"
|
||||
top_pad="5"
|
||||
type="string">
|
||||
Don't share region names to Discord if they are listed below:
|
||||
</text>
|
||||
<scroll_list
|
||||
follows="top|left|right"
|
||||
height="215"
|
||||
layout="topleft"
|
||||
left="10"
|
||||
multi_select="true"
|
||||
name="blacklisted_names"
|
||||
sort_column="0"
|
||||
sort_ascending="true"
|
||||
width="250" />
|
||||
<line_editor
|
||||
follows="left|top"
|
||||
bottom_delta="24"
|
||||
height="20"
|
||||
max_length_chars="256"
|
||||
name="blacklist_entry"
|
||||
width="202">
|
||||
<commit_callback function="FSDiscord.Add"/>
|
||||
</line_editor>
|
||||
<button
|
||||
follows="left|top"
|
||||
height="20"
|
||||
image_overlay="AddItem_Off"
|
||||
layout="topleft"
|
||||
left_pad="4"
|
||||
name="blacklist_entry_add"
|
||||
scale_image="true"
|
||||
width="20">
|
||||
<commit_callback function="FSDiscord.Add"/>
|
||||
</button>
|
||||
<button
|
||||
follows="left|top"
|
||||
height="20"
|
||||
image_overlay="MinusItem_Off"
|
||||
layout="topleft"
|
||||
left_pad="4"
|
||||
name="blacklist_entry_rem"
|
||||
scale_image="true"
|
||||
width="20">
|
||||
<commit_callback function="FSDiscord.Rem"/>
|
||||
</button>
|
||||
<text
|
||||
name="connection_status_text"
|
||||
type="string"
|
||||
follows="left|bottom|right"
|
||||
bottom_delta="20"
|
||||
left="-262"
|
||||
width="223"
|
||||
height="20"
|
||||
wrap="true"
|
||||
halign="left"
|
||||
valign="center"
|
||||
text_color="EmphasisColor"
|
||||
font="SansSerif">
|
||||
Loading...
|
||||
</text>
|
||||
</floater>
|
||||
@@ -852,13 +852,6 @@
|
||||
<menu_item_call.on_click
|
||||
function="Floater.Toggle"
|
||||
parameter="flickr"/>
|
||||
</menu_item_call>
|
||||
<menu_item_call
|
||||
label="Discord..."
|
||||
name="Discord">
|
||||
<menu_item_call.on_click
|
||||
function="Floater.Toggle"
|
||||
parameter="pm_discord"/>
|
||||
</menu_item_call>
|
||||
<menu_item_separator/>
|
||||
<menu_item_check
|
||||
|
||||
@@ -96,22 +96,6 @@
|
||||
>
|
||||
[DISPLAY_NAME]
|
||||
</string>
|
||||
<string
|
||||
name="FSDev"
|
||||
value=" Developer"
|
||||
/>
|
||||
<string
|
||||
name="FSSupp"
|
||||
value=" Support"
|
||||
/>
|
||||
<string
|
||||
name="FSQualityAssurance"
|
||||
value=" Bug Hunter"
|
||||
/>
|
||||
<string
|
||||
name="FSGW"
|
||||
value=" Gateway"
|
||||
/>
|
||||
<string
|
||||
name="texture_picker_label"
|
||||
value="Profile Picture"
|
||||
|
||||
@@ -2842,9 +2842,6 @@ name="Command_360_Capture_Tooltip">Capture a 360° equirectangular image</string
|
||||
<string name="Command_Stop_Animations_Label">Stop Animations</string>
|
||||
<string name="Command_Stop_Animations_Tooltip">Stop Animating my Avatar</string>
|
||||
|
||||
<string name="Command_Discord_Label">Discord</string>
|
||||
<string name="Command_Discord_Tooltip">Discord</string>
|
||||
|
||||
<!-- Mesh UI terms -->
|
||||
<string name="Retain%">Retain%</string>
|
||||
<string name="Detail">Detail</string>
|
||||
|
||||
@@ -21,10 +21,6 @@
|
||||
<string name="display_name_text_args">
|
||||
[DISPLAY_NAME]
|
||||
</string>
|
||||
<string name="FSDev" value="Desarrollador"/>
|
||||
<string name="FSSupp" value="Soporte"/>
|
||||
<string name="FSQualityAssurance" value="Buscador de fallos"/>
|
||||
<string name="FSGW" value="Portal"/>
|
||||
<text name="name_label" value="Nombre:"/>
|
||||
<button label="Nombre:" name="set_name" tool_tip="Configurar nombre mostrado"/>
|
||||
<panel name="name_holder">
|
||||
|
||||
@@ -1,40 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
|
||||
<floater name="floater_discord" title="Discord">
|
||||
<string name="discord_connected">
|
||||
Connecté(e) à Discord en tant que :
|
||||
</string>
|
||||
<string name="discord_disconnected">
|
||||
Non connecté(e) Discord.
|
||||
</string>
|
||||
<string name="SocialDiscordConnecting">
|
||||
En cours de connexion à Discord...
|
||||
</string>
|
||||
<string name="SocialDiscordErrorConnecting">
|
||||
Problème de connexion à Discord
|
||||
</string>
|
||||
<string name="SocialDiscordDisconnecting">
|
||||
En cours de déconnexion de Discord...
|
||||
</string>
|
||||
<text name="account_caption_label">
|
||||
Non connecté à Discord.
|
||||
</text>
|
||||
<check_box label="Connexion automatique lors du login" name="startup_check"/>
|
||||
<check_box label="Partager le nom d'utilisateur" name="name_check"/>
|
||||
<button label="Se connecter..." name="connect_btn"/>
|
||||
<button label="Se déconnecter" name="disconnect_btn"/>
|
||||
<text name="rating_label">
|
||||
Partager avec Discord le nom des régions ayant la classification suivante :
|
||||
</text>
|
||||
<combo_box name="maturity_desired_combobox">
|
||||
<combo_box.item label="Général, Modéré, Adulte" name="Desired_Adult"/>
|
||||
<combo_box.item label="Général et modéré" name="Desired_Mature"/>
|
||||
<combo_box.item label="Général" name="Desired_PG"/>
|
||||
<combo_box.item label="Ne pas partager" name="Desired_None"/>
|
||||
</combo_box>
|
||||
<text name="dont_names_label">
|
||||
Ne pas partager avec Discord le noms des régions qui sont dans la liste ci-dessous :
|
||||
</text>
|
||||
<text name="connection_status_text">
|
||||
En cours de chargement...
|
||||
</text>
|
||||
</floater>
|
||||
@@ -93,7 +93,6 @@
|
||||
<menu_item_check label="Conversations..." name="Conversations"/>
|
||||
<menu_item_check label="Gestes..." name="Gestures"/>
|
||||
<menu_item_call label="Flickr..." name="Flickr"/>
|
||||
<menu_item_call label="Discord..." name="Discord"/>
|
||||
<menu label="Effets de voix" name="VoiceMorphing">
|
||||
<menu_item_check label="Aucun effet de voix" name="NoVoiceMorphing"/>
|
||||
<menu_item_check label="Aperçu..." name="Preview"/>
|
||||
|
||||
@@ -24,10 +24,6 @@
|
||||
</string>
|
||||
<string name="no_partner_text" value="Aucun"/>
|
||||
<string name="no_group_text" value="Aucun"/>
|
||||
<string name="FSDev" value="Développeur"/>
|
||||
<string name="FSSupp" value="Assistance"/>
|
||||
<string name="FSQualityAssurance" value="Suivi des anomalies"/>
|
||||
<string name="FSGW" value="Portail"/>
|
||||
<string name="texture_picker_label" value="Photo du profil" />
|
||||
<text name="name_label" value="Nom :"/>
|
||||
<panel name="name_holder">
|
||||
|
||||
@@ -6190,12 +6190,6 @@ Essayez avec le chemin d'accès à l'éditeur entre guillemets doubles
|
||||
<string name="Command_Stop_Animations_Tooltip">
|
||||
Arrêter l'animation
|
||||
</string>
|
||||
<string name="Command_Discord_Label">
|
||||
Discord
|
||||
</string>
|
||||
<string name="Command_Discord_Tooltip">
|
||||
Discord
|
||||
</string>
|
||||
<string name="Retain%">
|
||||
Garder%
|
||||
</string>
|
||||
|
||||
@@ -6,7 +6,6 @@
|
||||
<string name="CaptionTextAcctInfo">
|
||||
[ACCTTYPE]
|
||||
[PAYMENTINFO]
|
||||
[FSDEV][FSSUPP][FSQA][FSGW][FIRESTORM]
|
||||
</string>
|
||||
<string name="BadgeBeta" value="Beta Tester originale" />
|
||||
<string name="BadgeBetaLifetime" value="Membro a vita Beta" />
|
||||
@@ -17,10 +16,6 @@
|
||||
<string name="BadgeTeam" value="Membro [APP_NAME] Team" />
|
||||
<string name="no_partner_text" value="Nessuno" />
|
||||
<string name="no_group_text" value="Nessuno" />
|
||||
<string name="FSDev" value="Sviluppatore "/>
|
||||
<string name="FSSupp" value="Supporto "/>
|
||||
<string name="FSQualityAssurance" value="Bug Hunter "/>
|
||||
<string name="FSGW" value="Gateway "/>
|
||||
<string name="texture_picker_label" value="Immagine del profilo" />
|
||||
<text name="name_label" value="Nome:" />
|
||||
<panel name="name_holder">
|
||||
|
||||
@@ -1,40 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
|
||||
<floater name="floater_discord" title="Discord">
|
||||
<string name="discord_connected">
|
||||
次のアカウント名でDiscordに接続:
|
||||
</string>
|
||||
<string name="discord_disconnected">
|
||||
Discordに接続していません。
|
||||
</string>
|
||||
<string name="SocialDiscordConnecting">
|
||||
Discordに接続しています…。
|
||||
</string>
|
||||
<string name="SocialDiscordErrorConnecting">
|
||||
Discord接続時に問題が発生しました。
|
||||
</string>
|
||||
<string name="SocialDiscordDisconnecting">
|
||||
Discordから切断しています…。
|
||||
</string>
|
||||
<text name="account_caption_label">
|
||||
Discordに接続していません。
|
||||
</text>
|
||||
<check_box label="ログイン時に自動接続する" name="startup_check" />
|
||||
<check_box label="ユーザ名を共有する" name="name_check" />
|
||||
<button label="接続…" name="connect_btn" />
|
||||
<button label="切断" name="disconnect_btn" />
|
||||
<text name="rating_label">
|
||||
以下のコンテンツレーティングのリージョン名をDiscordで共有する:
|
||||
</text>
|
||||
<combo_box name="maturity_desired_combobox">
|
||||
<combo_box.item label="General, Moderate, Adult" name="Desired_Adult" />
|
||||
<combo_box.item label="General, Moderate" name="Desired_Mature" />
|
||||
<combo_box.item label="General" name="Desired_PG" />
|
||||
<combo_box.item label="共有しない" name="Desired_None" />
|
||||
</combo_box>
|
||||
<text name="dont_names_label">
|
||||
以下のリストにあるリージョン名はDiscordに共有しない:
|
||||
</text>
|
||||
<text name="connection_status_text">
|
||||
読み込んでいます…
|
||||
</text>
|
||||
</floater>
|
||||
@@ -98,7 +98,6 @@
|
||||
<menu_item_check label="会話" name="Conversations"/>
|
||||
<menu_item_check label="ジェスチャー" name="Gestures"/>
|
||||
<menu_item_call label="Flickr…" name="Flickr"/>
|
||||
<menu_item_call label="Discord…" name="Discord"/>
|
||||
<menu_item_check label="会話ログ…" name="Conversation Log..."/>
|
||||
<menu_item_check label="近くのボイス" name="Nearby Voice"/>
|
||||
<menu_item_call label="ブロックリスト" name="Block List"/>
|
||||
|
||||
@@ -22,10 +22,6 @@
|
||||
<string name="my_account_link_url" value="https://secondlife.com/my/account/?lang=ja-JP"/>
|
||||
<string name="no_partner_text" value="なし"/>
|
||||
<string name="no_group_text" value="なし"/>
|
||||
<string name="FSDev" value="開発者"/>
|
||||
<string name="FSSupp" value="サポート"/>
|
||||
<string name="FSQualityAssurance" value="バグハンター"/>
|
||||
<string name="FSGW" value="ゲートウェイ"/>
|
||||
<string name="texture_picker_label" value="プロフィール画像"/>
|
||||
<text name="name_label" value="名前:"/>
|
||||
<panel name="name_holder">
|
||||
|
||||
@@ -1,30 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
|
||||
<floater name="floater_discord">
|
||||
<string name="discord_connected">Połączony/a z Discord jako:</string>
|
||||
<string name="discord_disconnected">Brak połączenia z Discord.</string>
|
||||
<string name="SocialDiscordConnecting">Łączenie z Discord...</string>
|
||||
<string name="SocialDiscordErrorConnecting">Problem z połączeniem z Discord</string>
|
||||
<string name="SocialDiscordDisconnecting">Odłączanie się od Discorda...</string>
|
||||
<text name="account_caption_label">
|
||||
Brak połączenia z Discord.
|
||||
</text>
|
||||
<check_box label="Połącz automatycznie przy logowaniu" name="startup_check" />
|
||||
<check_box label="Udostępniaj nazwę użytkownika" name="name_check" />
|
||||
<button label="Połącz..." name="connect_btn" />
|
||||
<button label="Odłącz" name="disconnect_btn" />
|
||||
<text name="rating_label">
|
||||
Podawaj Discordowi nazwy regionów, jeśli ich klasyfikacja to:
|
||||
</text>
|
||||
<combo_box name="maturity_desired_combobox">
|
||||
<combo_box.item label="General (dla wszystkich), Moderate (umiarkowane), Adult (dla dorosłych)" name="Desired_Adult" />
|
||||
<combo_box.item label="General (dla wszystkich), Moderate (umiarkowane)" name="Desired_Mature" />
|
||||
<combo_box.item label="General (dla wszystkich)" name="Desired_PG" />
|
||||
<combo_box.item label="Nie udostępniaj" name="Desired_None" />
|
||||
</combo_box>
|
||||
<text name="dont_names_label">
|
||||
Nie podawaj Discordowi nazw regionów, jeśli są widoczne poniżej:
|
||||
</text>
|
||||
<text name="connection_status_text">
|
||||
Wczytywanie...
|
||||
</text>
|
||||
</floater>
|
||||
@@ -12,9 +12,6 @@
|
||||
<string name="BadgeTeam" value="Zespół [APP_NAME]a" />
|
||||
<string name="no_partner_text" value="Brak" />
|
||||
<string name="no_group_text" value="Brak" />
|
||||
<string name="FSDev" value=" Programista" />
|
||||
<string name="FSSupp" value=" Wsparcie" />
|
||||
<string name="FSQualityAssurance" value=" Łowca błędów" />
|
||||
<string name="texture_picker_label" value="Zdjęcie profilowe" />
|
||||
<text name="name_label" value="Imię:" />
|
||||
<panel name="name_holder">
|
||||
|
||||
@@ -21,10 +21,6 @@
|
||||
<string name="display_name_text_args">
|
||||
[DISPLAY_NAME]
|
||||
</string>
|
||||
<string name="FSDev" value="Desenvolvedor"/>
|
||||
<string name="FSSupp" value="Suporte"/>
|
||||
<string name="FSQualityAssurance" value="Caçador de Bug"/>
|
||||
<string name="FSGW" value="Gateway"/>
|
||||
<text name="name_label" value="Nome:"/>
|
||||
<button label="Nome:" name="set_name" tool_tip="Definir nome de tela"/>
|
||||
<panel name="name_holder">
|
||||
|
||||
@@ -1,30 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
|
||||
<floater name="floater_discord" title="Discord">
|
||||
<string name="discord_connected">Вы подключены к Discord как:</string>
|
||||
<string name="discord_disconnected">Не подключен к Discord.</string>
|
||||
<string name="SocialDiscordConnecting">Подключение к Discord...</string>
|
||||
<string name="SocialDiscordErrorConnecting">Проблема с подключением к Discord</string>
|
||||
<string name="SocialDiscordDisconnecting">Отключение от Discord...</string>
|
||||
<text name="account_caption_label">
|
||||
Не подключен к Discord.
|
||||
</text>
|
||||
<check_box label="Автоматически подключаться при входе" name="startup_check"/>
|
||||
<check_box label="Сообщить имя пользователя" name="name_check"/>
|
||||
<button label="Подключить..." name="connect_btn"/>
|
||||
<button label="Отключить" name="disconnect_btn"/>
|
||||
<text name="rating_label">
|
||||
Сообщить в Discord названия регионов со следующим рейтингом контента:
|
||||
</text>
|
||||
<combo_box name="maturity_desired_combobox">
|
||||
<combo_box.item label="Общий, Умеренный, Взрослый" name="Desired_Adult"/>
|
||||
<combo_box.item label="Общий и Умеренный" name="Desired_Mature"/>
|
||||
<combo_box.item label="Общий" name="Desired_PG"/>
|
||||
<combo_box.item label="Не сообщать" name="Desired_None"/>
|
||||
</combo_box>
|
||||
<text name="dont_names_label">
|
||||
Не сообщать в Discord названия регионов, если они указаны ниже:
|
||||
</text>
|
||||
<text name="connection_status_text">
|
||||
Загрузка...
|
||||
</text>
|
||||
</floater>
|
||||
@@ -12,10 +12,6 @@
|
||||
<string name="BadgeTeam" value="Член [APP_NAME]" />
|
||||
<string name="no_partner_text" value="Никто"/>
|
||||
<string name="no_group_text" value="Никто"/>
|
||||
<string name="FSDev" value=" Разработчик"/>
|
||||
<string name="FSSupp" value=" Поддержка"/>
|
||||
<string name="FSQualityAssurance" value=" Отладчик"/>
|
||||
<string name="FSGW" value=" Шлюз"/>
|
||||
<text name="name_label" value="Имя:"/>
|
||||
<panel name="name_holder">
|
||||
<text_editor name="complete_name" value="(загрузка...)"/>
|
||||
|
||||
@@ -21,10 +21,6 @@
|
||||
<string name="display_name_text_args">
|
||||
[DISPLAY_NAME]
|
||||
</string>
|
||||
<string name="FSDev" value="Geliştirici"/>
|
||||
<string name="FSSupp" value="Destek"/>
|
||||
<string name="FSQualityAssurance" value="Böcek bilimci"/>
|
||||
<string name="FSGW" value="Ağ geçidi"/>
|
||||
<text name="name_label" value="Ad:"/>
|
||||
<button label="Ad:" name="set_name" tool_tip="Görünen Adı Ayarla"/>
|
||||
<panel name="name_holder">
|
||||
|
||||
@@ -1,40 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
|
||||
<floater name="floater_discord" title="Discord">
|
||||
<string name="discord_connected">
|
||||
已連線到 Discord:
|
||||
</string>
|
||||
<string name="discord_disconnected">
|
||||
未連線到 Discord。
|
||||
</string>
|
||||
<string name="SocialDiscordConnecting">
|
||||
正在連線到 Discord...
|
||||
</string>
|
||||
<string name="SocialDiscordErrorConnecting">
|
||||
連線到 Discord 時出現問題
|
||||
</string>
|
||||
<string name="SocialDiscordDisconnecting">
|
||||
正在斷開 Discord 連線...
|
||||
</string>
|
||||
<text name="account_caption_label">
|
||||
未連線到 Discord。
|
||||
</text>
|
||||
<check_box label="登入時自動連線" name="startup_check" />
|
||||
<check_box label="與 Discord 共享使用者名稱" name="name_check" />
|
||||
<button label="連線中..." name="connect_btn" />
|
||||
<button label="斷開連線" name="disconnect_btn" />
|
||||
<text name="rating_label">
|
||||
將以下等級的區域名稱與 Discord 共享:
|
||||
</text>
|
||||
<combo_box name="maturity_desired_combobox">
|
||||
<combo_box.item label="普級、適度成人、完全成人" name="Desired_Adult" />
|
||||
<combo_box.item label="普級和適度成人" name="Desired_Mature" />
|
||||
<combo_box.item label="普級" name="Desired_PG" />
|
||||
<combo_box.item label="不共享" name="Desired_None" />
|
||||
</combo_box>
|
||||
<text name="dont_names_label">
|
||||
將以下列出的區域名稱不與 Discord 共享:
|
||||
</text>
|
||||
<text name="connection_status_text">
|
||||
正在載入...
|
||||
</text>
|
||||
</floater>
|
||||
@@ -95,7 +95,6 @@
|
||||
<menu_item_check label="聊天" name="Conversations" />
|
||||
<menu_item_check label="快捷手勢" name="Gestures" />
|
||||
<menu_item_call label="Flickr..." name="Flickr" />
|
||||
<menu_item_call label="Discord..." name="Discord" />
|
||||
<menu_item_check label="聊天記錄" name="Conversation Log..." />
|
||||
<menu_item_check label="附近的語音" name="Nearby Voice" />
|
||||
<menu_item_call label="封鎖列表" name="Block List" />
|
||||
@@ -706,4 +705,4 @@
|
||||
</menu>
|
||||
</menu>
|
||||
</menu>
|
||||
</menu_bar>
|
||||
</menu_bar>
|
||||
|
||||
@@ -18,10 +18,6 @@
|
||||
<string name="BadgeTeam" value="[APP_NAME] 會員" />
|
||||
<string name="no_partner_text" value="無" />
|
||||
<string name="no_group_text" value="無" />
|
||||
<string name="FSDev" value="開發者" />
|
||||
<string name="FSSupp" value="支援" />
|
||||
<string name="FSQualityAssurance" value="除錯人員" />
|
||||
<string name="FSGW" value="閘道器" />
|
||||
<string name="texture_picker_label" value="個人檔案相片" />
|
||||
<text name="name_label" value="名稱:" />
|
||||
<button label="名稱:" name="set_name" tool_tip="設定顯示名稱" />
|
||||
@@ -77,4 +73,4 @@
|
||||
<check_box name="hide_sl_age" label="顯示完整生日" tool_tip="讓人們看到您的SL年齡" />
|
||||
<button name="save_description_changes" label="儲存" />
|
||||
<button name="discard_description_changes" label="放棄" />
|
||||
</panel>
|
||||
</panel>
|
||||
|
||||
@@ -6493,12 +6493,6 @@ support@secondlife.com.
|
||||
<string name="Command_Stop_Animations_Tooltip">
|
||||
停止我的化身上的動畫
|
||||
</string>
|
||||
<string name="Command_Discord_Label">
|
||||
Discord
|
||||
</string>
|
||||
<string name="Command_Discord_Tooltip">
|
||||
Discord
|
||||
</string>
|
||||
<!-- Mesh UI terms -->
|
||||
<string name="Retain%">
|
||||
保留%
|
||||
@@ -7518,4 +7512,4 @@ SecondLife.com網站的「支援」部分
|
||||
<string name="Unlimited">
|
||||
無限
|
||||
</string>
|
||||
</strings>
|
||||
</strings>
|
||||
|
||||
@@ -16,22 +16,10 @@
|
||||
<string
|
||||
name="CaptionTextAcctInfo">
|
||||
[ACCTTYPE]
|
||||
[PAYMENTINFO] [FIRESTORM][FSDEV][FSSUPP][FSQA][FSGW]
|
||||
[PAYMENTINFO]
|
||||
</string>
|
||||
<!-- The previous line was [PAYMENTINFO] [AGEVERIFICATION], but they're not
|
||||
sending the latter any more. ...TS -->
|
||||
<string
|
||||
name="FSDev"
|
||||
value=" Developer" />
|
||||
<string
|
||||
name="FSSupp"
|
||||
value=" Support" />
|
||||
<string
|
||||
name="FSQualityAssurance"
|
||||
value=" Bug Hunter" />
|
||||
<string
|
||||
name="FSGW"
|
||||
value=" Gateway" />
|
||||
<string
|
||||
name="RegisterDateFormat">
|
||||
[REG_DATE] ([AGE])
|
||||
|
||||
@@ -11,22 +11,10 @@
|
||||
<string
|
||||
name="CaptionTextAcctInfo">
|
||||
[ACCTTYPE]
|
||||
[PAYMENTINFO] [FIRESTORM][FSDEV][FSSUPP][FSQA][FSGW]
|
||||
[PAYMENTINFO]
|
||||
</string>
|
||||
<!-- The previous line was [PAYMENTINFO] [AGEVERIFICATION], but they're not
|
||||
sending the latter any more. ...TS -->
|
||||
<string
|
||||
name="FSDev"
|
||||
value=" Developer" />
|
||||
<string
|
||||
name="FSSupp"
|
||||
value=" Support" />
|
||||
<string
|
||||
name="FSQualityAssurance"
|
||||
value=" Bug Hunter" />
|
||||
<string
|
||||
name="FSGW"
|
||||
value=" Gateway" />
|
||||
<string
|
||||
name="payment_update_link_url">
|
||||
http://www.secondlife.com/account/billing.php?lang=en
|
||||
|
||||
@@ -16,22 +16,10 @@
|
||||
<string
|
||||
name="CaptionTextAcctInfo">
|
||||
[ACCTTYPE]
|
||||
[PAYMENTINFO] [FIRESTORM][FSDEV][FSSUPP][FSQA][FSGW]
|
||||
[PAYMENTINFO]
|
||||
</string>
|
||||
<!-- The previous line was [PAYMENTINFO] [AGEVERIFICATION], but they're not
|
||||
sending the latter any more. ...TS -->
|
||||
<string
|
||||
name="FSDev"
|
||||
value=" Developer" />
|
||||
<string
|
||||
name="FSSupp"
|
||||
value=" Support" />
|
||||
<string
|
||||
name="FSQualityAssurance"
|
||||
value=" Bug Hunter" />
|
||||
<string
|
||||
name="FSGW"
|
||||
value=" Gateway" />
|
||||
<string
|
||||
name="RegisterDateFormat">
|
||||
[REG_DATE] ([AGE])
|
||||
|
||||