Compare commits

...

30 Commits

Author SHA1 Message Date
Liru Færs
7b03103a1f April Fools!
Ha, goteem
2020-04-01 20:52:44 -04:00
Liru Færs
ac3e19c91a Merge branch 'master' of git://github.com/Shyotl/SingularityViewer 2020-04-01 20:47:23 -04:00
Liru Færs
4c7d2224e3 Fix reverted xml change, fix formatting 2020-04-01 20:43:00 -04:00
Shyotl
3ab800d99e Merge branch 'master' of https://github.com/singularity-viewer/SingularityViewer.git 2020-04-01 19:26:41 -05:00
Shyotl
332cef0f84 Disable debug logging unless RelWithDeb 2020-04-01 19:26:23 -05:00
Damian Zhaoying
9de6d7627b A lot of updates and fixes for spanish language translations. 2020-04-01 20:44:41 -03:00
Liru Færs
98b42e88c1 Fix SV-2282: Incorrect terminology for TP Sound preference UI 2020-04-01 06:56:51 -04:00
Liru Færs
e642e9561a The sim is actually the region 2020-04-01 04:42:34 -04:00
Liru Færs
77f500cb64 Merge branch 'master' of git://github.com/Shyotl/SingularityViewer 2020-04-01 01:59:42 -04:00
Liru Færs
d04a8fc677 Merge branch 'master' of https://github.com/RouterGray/SingularityViewer 2020-04-01 01:59:32 -04:00
Liru Færs
6028ae7b61 Fix group notices: Have a background for the header for certain skins. 2020-04-01 01:56:58 -04:00
Shyotl
347c2cbd8b Fall in line with LL octree code. 2020-03-31 19:07:55 -05:00
Router Gray
919ffb314b [UI] Add missing 'AlreadyInGroup' to strings.xml 2020-03-30 15:24:28 -05:00
Router Gray
c033d69d54 [Linux] More follow-through on earlier manifest tuning, make always really mean always. 2020-03-30 03:06:21 -05:00
Router Gray
356d289972 User request: Add last owner profile button to object inspect. 2020-03-29 19:16:52 -05:00
Router Gray
eeabbce377 [Lib] Update abseil. (Alchemy sync) 2020-03-29 16:39:16 -05:00
Router Gray
0b992fdd46 [Lib] Update nlohmann json and switch it to FetchContent instead of prebuilts. (Alchemy sync) 2020-03-29 16:38:53 -05:00
Router Gray
a7e56d2af9 Fix an accident in a ternary. 2020-03-29 16:31:40 -05:00
Router Gray
b10619e4d8 [Linux] Don't strip binaries, even when building release, unless packaging. Makes quick debugging in the dev checkout easier.
This may need more work if we want to support building an 'install' target, bypassing packaging, but I never hear of anyone doing that.  I'll address it if needed.
2020-03-29 15:24:10 -05:00
Router Gray
74518f299c Merge remote-tracking branch 'github-liru/master' 2020-03-29 15:21:22 -05:00
Liru Færs
407b527a55 [XPTools] Fix linux crash bug, make Cancel button close Experiences floater 2020-03-29 00:43:21 -04:00
Liru Færs
b21cc835b2 Clean up old Experience UI port code 2020-03-28 16:38:14 -04:00
Shyotl
4de8c3a38e Merge branch 'master' of https://github.com/singularity-viewer/SingularityViewer.git 2020-03-27 02:56:20 -05:00
Shyotl
72d8b8f78c Potentially harden against region teardown crash. Screw with branching to delve more information from callstacks since dynamic annotations don't seem to work with sentry.io using crashpad lib... sadface. 2020-03-27 02:55:12 -05:00
Liru Færs
45f4f601bf nopaque 2020-03-27 02:35:06 -04:00
Liru Færs
731283aa0b Friendship accepted notifications as tips with linked names 2020-03-27 00:51:45 -04:00
Liru Færs
89ce328ba5 Fix script dialogs showing UI SLURLs when SinguReplaceLinks is false
All interface SLURLs should be force replaced.
Also fixes text boxes not respecting setting at all
2020-03-26 23:31:52 -04:00
Liru Færs
28e5270d87 All agent SLURLs should use the name system names, not just profile ones. 2020-03-25 23:57:05 -04:00
Shyotl
4a237de72a Merge branch 'master' of https://github.com/singularity-viewer/SingularityViewer.git 2020-03-25 22:37:23 -05:00
Shyotl
e91aac1dd9 For science. Let's see if sentry.io accepts these annotations... 2020-03-25 22:35:29 -05:00
88 changed files with 1144 additions and 294 deletions

View File

@@ -1933,38 +1933,6 @@
<key>version</key>
<string>7.11.1.297294</string>
</map>
<key>modernjson</key>
<map>
<key>copyright</key>
<string>Copyright (c) 2013-2018 Niels Lohmann</string>
<key>description</key>
<string>JSON for Modern C++</string>
<key>license</key>
<string>MIT</string>
<key>license_file</key>
<string>LICENSES/modernjson.txt</string>
<key>name</key>
<string>modernjson</string>
<key>platforms</key>
<map>
<key>common</key>
<map>
<key>archive</key>
<map>
<key>hash</key>
<string>6f11eca7e2a6ca61f9217e949a64f026</string>
<key>hash_algorithm</key>
<string>md5</string>
<key>url</key>
<string>https://depot.alchemyviewer.org/pub/common/lib/modernjson-3.2.0-common-201809210551.tar.bz2</string>
</map>
<key>name</key>
<string>common</string>
</map>
</map>
<key>version</key>
<string>3.2.0</string>
</map>
<key>nvapi</key>
<map>
<key>copyright</key>

View File

@@ -50,7 +50,6 @@ set(cmake_SOURCE_FILES
GooglePerfTools.cmake
Hunspell.cmake
JPEG.cmake
Json.cmake
LLAddBuildTest.cmake
LLAppearance.cmake
LLAudio.cmake

View File

@@ -15,10 +15,15 @@ FetchContent_Declare(
GIT_REPOSITORY https://github.com/fmtlib/fmt.git
GIT_TAG 6.1.2
)
FetchContent_Declare(
nlohmann_json
GIT_REPOSITORY https://github.com/nlohmann/json.git
GIT_TAG v3.7.3
)
FetchContent_Declare(
absl
GIT_REPOSITORY https://github.com/abseil/abseil-cpp.git
GIT_TAG 29235139149790f5afc430c11cec8f1eb1677607
GIT_TAG 0033c9ea91a52ade7c6b725aa2ef3cbe15463421
)
# This is a hack because absl has dumb cmake
@@ -44,5 +49,14 @@ if(WINDOWS)
FetchContent_MakeAvailable(fmt)
endif()
# Typically you don't care so much for a third party library's tests to be
# run from your own project's code.
set(JSON_BuildTests OFF CACHE INTERNAL "")
# If you only include this third party in PRIVATE source files, you do not
# need to install it when your main project gets installed.
set(JSON_Install OFF CACHE INTERNAL "")
FetchContent_MakeAvailable(nlohmann_json)
unset(CMAKE_FOLDER)
unset(CMAKE_POSITION_INDEPENDENT_CODE)

View File

@@ -12,7 +12,6 @@ include(Linking)
include(Boost)
include(OpenSSL)
include(LLSharedLibs)
include(Json)
include(Copy3rdPartyLibs)
include(ZLIB)
include(URIPARSER)
@@ -300,6 +299,7 @@ target_link_libraries(
${Boost_SYSTEM_LIBRARY}
${CORESERVICES_LIBRARY}
${URIPARSER_LIBRARY}
nlohmann_json::nlohmann_json
${RT_LIBRARY}
)

View File

@@ -353,8 +353,14 @@ typedef LLError::NoClassInfo _LL_CLASS_TO_LOG;
// NEW Macros for debugging, allow the passing of a string tag
#if SHOW_DEBUG
#define DO_DEBUG_LOG if(true)
#else
#define DO_DEBUG_LOG if(false)
#endif
// Pass comma separated list of tags (currently only supports up to 0, 1, or 2)
#define LL_DEBUGS(...) lllog(LLError::LEVEL_DEBUG, false, false, ##__VA_ARGS__)
#define LL_DEBUGS(...) DO_DEBUG_LOG lllog(LLError::LEVEL_DEBUG, false, false, ##__VA_ARGS__)
#define LL_INFOS(...) lllog(LLError::LEVEL_INFO, false, false, ##__VA_ARGS__)
#define LL_WARNS(...) lllog(LLError::LEVEL_WARN, false, false, ##__VA_ARGS__)
#define LL_ERRS(...) lllog(LLError::LEVEL_ERROR, false, false, ##__VA_ARGS__)
@@ -363,12 +369,12 @@ typedef LLError::NoClassInfo _LL_CLASS_TO_LOG;
// Only print the log message once (good for warnings or infos that would otherwise
// spam the log file over and over, such as tighter loops).
#define LL_DEBUGS_ONCE(...) lllog(LLError::LEVEL_DEBUG, true, false, ##__VA_ARGS__)
#define LL_DEBUGS_ONCE(...) DO_DEBUG_LOG lllog(LLError::LEVEL_DEBUG, true, false, ##__VA_ARGS__)
#define LL_INFOS_ONCE(...) lllog(LLError::LEVEL_INFO, true, false, ##__VA_ARGS__)
#define LL_WARNS_ONCE(...) lllog(LLError::LEVEL_WARN, true, false, ##__VA_ARGS__)
// No function name
#define LL_DEBUGS_NF(...) lllog(LLError::LEVEL_DEBUG, false, true, ##__VA_ARGS__)
#define LL_DEBUGS_NF(...) DO_DEBUG_LOG {lllog(LLError::LEVEL_DEBUG, false, true, ##__VA_ARGS__)
#define LL_INFOS_NF(...) lllog(LLError::LEVEL_INFO, false, true, ##__VA_ARGS__)
#define LL_WARNS_NF(...) lllog(LLError::LEVEL_WARN, false, true, ##__VA_ARGS__)
#define LL_ERRS_NF(...) lllog(LLError::LEVEL_ERROR, false, true, ##__VA_ARGS__)

View File

@@ -182,10 +182,10 @@ public:
bool operator! () const { return ! mListener; }
/// explicit accessor
const LLEventListener& getListener() const { return *mListener; }
const ::LLEventListener& getListener() const { return *mListener; }
/// implicit conversion to LLEventListener
operator LLEventListener() const { return *mListener; }
operator ::LLEventListener() const { return *mListener; }
/// allow calling directly
bool operator()(const LLSD& event) const;
@@ -277,7 +277,7 @@ namespace LLEventDetail
/// Any callable capable of connecting an LLEventListener to an
/// LLStandardSignal to produce an LLBoundListener can be mapped to this
/// signature.
typedef boost::function<LLBoundListener(const LLEventListener&)> ConnectFunc;
typedef boost::function<LLBoundListener(const ::LLEventListener&)> ConnectFunc;
/// overload of visit_and_connect() when we have a string identifier available
template <typename LISTENER>
@@ -547,7 +547,7 @@ private:
virtual void reset();
private:
virtual LLBoundListener listen_impl(const std::string& name, const LLEventListener&,
virtual LLBoundListener listen_impl(const std::string& name, const ::LLEventListener&,
const NameList& after,
const NameList& before);
std::string mName;
@@ -845,7 +845,7 @@ namespace LLEventDetail
* Visitor binds a reference to LLEventListener so we can track() any
* shared_ptrs we find in the argument list.
*/
Visitor(LLEventListener& listener):
Visitor(::LLEventListener& listener):
mListener(listener)
{
}
@@ -988,7 +988,7 @@ namespace LLEventDetail
|*==========================================================================*/
/// Bind a reference to the LLEventListener to call its track() method.
LLEventListener& mListener;
::LLEventListener& mListener;
};
/**
@@ -1005,7 +1005,7 @@ namespace LLEventDetail
const ConnectFunc& connect_func)
{
// Capture the listener
LLEventListener listener(raw_listener);
::LLEventListener listener(raw_listener);
// Define our Visitor, binding the listener so we can call
// listener.track() if we discover any shared_ptr<Foo>.
LLEventDetail::Visitor visitor(listener);

View File

@@ -45,6 +45,7 @@
#endif
extern U32 gOctreeMaxCapacity;
extern float gOctreeMinSize;
extern U32 gOctreeReserveCapacity;
#if LL_DEBUG
#define LL_OCTREE_PARANOIA_CHECK 0
@@ -404,7 +405,7 @@ public:
F32 size = mSize[0];
F32 p_size = size * 2.f;
return (radius <= 0.001f && size <= 0.001f) ||
return (radius <= gOctreeMinSize && size <= gOctreeMinSize) ||
(radius <= p_size && radius > size);
}
@@ -511,7 +512,7 @@ public:
//is it here?
if (isInside(data->getPositionGroup()))
{
if (((getElementCount() < gOctreeMaxCapacity && contains(data->getBinRadius())) ||
if ((((getElementCount() < gOctreeMaxCapacity || getSize()[0] <= gOctreeMinSize) && contains(data->getBinRadius())) ||
(data->getBinRadius() > getSize()[0] && parent && parent->getElementCount() >= gOctreeMaxCapacity)))
{ //it belongs here
/*mElementCount++;
@@ -566,8 +567,9 @@ public:
LLVector4a val;
val.setSub(center, getCenter());
val.setAbs(val);
S32 lt = val.lessThan(LLVector4a::getEpsilon()).getGatheredBits() & 0x7;
LLVector4a min_diff(gOctreeMinSize);
S32 lt = val.lessThan(min_diff).getGatheredBits() & 0x7;
if( lt == 0x7 )
{
@@ -616,6 +618,7 @@ public:
}
#endif
llassert(size[0] >= gOctreeMinSize*0.5f);
//make the new kid
child = new LLOctreeNode<T>(center, size, this);
addChild(child);
@@ -623,10 +626,7 @@ public:
child->insert(data);
}
}
// Singu note: now that we allow wider range in octree, discard them here
// if they fall out of range
#if 0
else
else if (parent)
{
//it's not in here, give it to the root
OCT_ERRS << "Octree insertion failed, starting over from root!" << LL_ENDL;
@@ -639,12 +639,15 @@ public:
parent = node->getOctParent();
}
if(node != this)
{
node->insert(data);
}
node->insert(data);
}
else
{
// It's not in here, and we are root.
// LLOctreeRoot::insert() should have expanded
// root by now, something is wrong
OCT_ERRS << "Octree insertion failed! Root expansion failed." << LL_ENDL;
}
#endif
return false;
}
@@ -1050,10 +1053,15 @@ public:
{
LLOctreeNode<T>::insert(data);
}
else
else if (node->isInside(data->getPositionGroup()))
{
node->insert(data);
}
else
{
// calling node->insert(data) will return us to root
OCT_ERRS << "Failed to insert data at child node" << LL_ENDL;
}
}
else if (this->getChildCount() == 0)
{
@@ -1088,6 +1096,8 @@ public:
this->setSize(size2);
this->updateMinMax();
llassert(size[0] >= gOctreeMinSize);
//copy our children to a new branch
LLOctreeNode<T>* newnode = new LLOctreeNode<T>(center, size, this);

View File

@@ -666,7 +666,7 @@ std::string LLUrlEntryAgent::getLabel(const std::string &url, const LLUrlLabelCa
LLAvatarName av_name;
if (LLAvatarNameCache::get(agent_id, &av_name))
{
std::string label = av_name.getCompleteName();
std::string label = av_name.getNSName();
// handle suffixes like /mute or /offerteleport
label = localize_slapp_label(url, label);

View File

@@ -18,7 +18,6 @@ include(FMODSTUDIO)
include(GeneratePrecompiledHeader)
include(GLOD)
include(Hunspell)
include(Json)
include(LLAddBuildTest)
include(LLAppearance)
include(LLAudio)
@@ -63,7 +62,6 @@ include_directories(
${STATEMACHINE_INCLUDE_DIRS}
${DBUSGLIB_INCLUDE_DIRS}
${ZLIB_INCLUDE_DIRS}
${JSON_INCLUDE_DIR}
${GLOD_INCLUDE_DIR}
${LLAUDIO_INCLUDE_DIRS}
${LLCHARACTER_INCLUDE_DIRS}
@@ -1710,6 +1708,7 @@ target_link_libraries(${VIEWER_BINARY_NAME}
${LLAPPEARANCE_LIBRARIES}
absl::flat_hash_map
absl::node_hash_map
nlohmann_json::nlohmann_json
${FMT_LIBRARY}
)

View File

@@ -1 +1 @@
1.8.7
1.8.9

View File

@@ -12628,6 +12628,18 @@ This should be as low as possible, but too low may break functionality</string>
<integer>128</integer>
</map>
<key>OctreeMinimumNodeSize</key>
<map>
<key>Comment</key>
<string>Minimum size of any octree node</string>
<key>Persist</key>
<integer>1</integer>
<key>Type</key>
<string>F32</string>
<key>Value</key>
<real>0.01</real>
</map>
<key>OctreeReserveNodeCapacity</key>
<map>
<key>Comment</key>

View File

@@ -221,13 +221,40 @@
#include <client/crashpad_client.h>
#include <client/prune_crash_reports.h>
#include <client/settings.h>
#include <client/annotation.h>
#include <fmt/format.h>
#include "llnotificationsutil.h"
#include "llversioninfo.h"
template <size_t SIZE, crashpad::Annotation::Type T = crashpad::Annotation::Type::kString>
struct crashpad_annotation : public crashpad::Annotation {
std::array<char, SIZE> buffer;
crashpad_annotation(const char* name) : crashpad::Annotation(T, name, buffer.data())
{}
void set(const std::string& src) {
LL_INFOS() << name() << ": " << src.c_str() << LL_ENDL;
const size_t min_size = llmin(SIZE, src.size());
memcpy(buffer.data(), src.data(), min_size);
buffer.data()[SIZE - 1] = '\0';
SetSize(min_size);
}
};
#define DEFINE_CRASHPAD_ANNOTATION(name, len) \
static crashpad_annotation<len> g_crashpad_annotation_##name##_buffer(#name);
#define SET_CRASHPAD_ANNOTATION_VALUE(name, value) \
g_crashpad_annotation_##name##_buffer.set(value);
#else
#define SET_CRASHPAD_ANNOTATION_VALUE(name, value)
#define DEFINE_CRASHPAD_ANNOTATION(name, len)
#endif
DEFINE_CRASHPAD_ANNOTATION(fatal_message, 512);
DEFINE_CRASHPAD_ANNOTATION(grid_name, 64);
DEFINE_CRASHPAD_ANNOTATION(cpu_string, 128);
DEFINE_CRASHPAD_ANNOTATION(startup_state, 32);
////// Windows-specific includes to the bottom - nasty defines in these pollute the preprocessor
//
@@ -771,8 +798,18 @@ bool LLAppViewer::init()
initCrashReporting();
#endif
writeDebugInfo();
setupErrorHandling();
{
auto fn = boost::bind<bool>([](const LLSD& stateInfo) -> bool {
SET_CRASHPAD_ANNOTATION_VALUE(startup_state, stateInfo["str"].asString());
return false;
}, _1);
LLStartUp::getStateEventPump().listen<::LLEventListener>("LLAppViewer", fn);
}
//
// Start of the application
//
@@ -2744,6 +2781,10 @@ void LLAppViewer::writeDebugInfo(bool isStatic)
isStatic ? LLSDSerialize::toPrettyXML(gDebugInfo, out_file)
: LLSDSerialize::toPrettyXML(gDebugInfo["Dynamic"], out_file);
#else
SET_CRASHPAD_ANNOTATION_VALUE(fatal_message, gDebugInfo["FatalMessage"].asString());
SET_CRASHPAD_ANNOTATION_VALUE(grid_name, gDebugInfo["GridName"].asString());
SET_CRASHPAD_ANNOTATION_VALUE(cpu_string, gDebugInfo["CPUInfo"]["CPUString"].asString());
#endif
}

View File

@@ -58,6 +58,7 @@ LLFloaterInspect::LLFloaterInspect(const LLSD&)
mDirty(FALSE)
{
mCommitCallbackRegistrar.add("Inspect.OwnerProfile", boost::bind(&LLFloaterInspect::onClickOwnerProfile, this));
mCommitCallbackRegistrar.add("Inspect.LastOwnerProfile", boost::bind(&LLFloaterInspect::onClickLastOwnerProfile, this));
mCommitCallbackRegistrar.add("Inspect.CreatorProfile", boost::bind(&LLFloaterInspect::onClickCreatorProfile, this));
mCommitCallbackRegistrar.add("Inspect.SelectObject", boost::bind(&LLFloaterInspect::onSelectObject, this));
LLUICtrlFactory::getInstance()->buildFloater(this, "floater_inspect.xml");
@@ -166,6 +167,36 @@ void LLFloaterInspect::onClickOwnerProfile()
}
}
void LLFloaterInspect::onClickLastOwnerProfile()
{
if(mObjectList->getAllSelected().size() == 0) return;
LLScrollListItem* first_selected =mObjectList->getFirstSelected();
if (first_selected)
{
LLUUID selected_id = first_selected->getUUID();
struct f : public LLSelectedNodeFunctor
{
LLUUID obj_id;
f(const LLUUID& id) : obj_id(id) {}
virtual bool apply(LLSelectNode* node)
{
return (obj_id == node->getObject()->getID());
}
} func(selected_id);
LLSelectNode* node = mObjectSelection->getFirstNode(&func);
if(node)
{
const LLUUID& last_owner_id = node->mPermissions->getLastOwner();
// [RLVa:KB] - Checked: 2010-08-25 (RLVa-1.2.2a) | Modified: RLVa-1.0.0e
if (gRlvHandler.hasBehaviour(RLV_BHVR_SHOWNAMES) || gRlvHandler.hasBehaviour(RLV_BHVR_SHOWNAMETAGS))
if (last_owner_id == node->mPermissions->getOwner()) return;
// [/RLVa:KB]
LLAvatarActions::showProfile(last_owner_id);
}
}
}
void LLFloaterInspect::onSelectObject()
{
if(LLFloaterInspect::getSelectedUUID() != LLUUID::null)

View File

@@ -60,6 +60,7 @@ public:
virtual void onFocusReceived();
void onClickCreatorProfile();
void onClickOwnerProfile();
void onClickLastOwnerProfile();
void onSelectObject();
LLScrollListCtrl* mObjectList;

View File

@@ -148,7 +148,7 @@ S32 LLFloaterNameDesc::getExpectedUploadCost() const
LLAssetType::EType asset_type = exten == "wav" ? LLAssetType::AT_SOUND
: (exten == "anim" || exten == "bvh") ? LLAssetType::AT_ANIMATION
: exten != "lsl" ? LLAssetType::AT_TEXTURE
: asset_type = LLAssetType::AT_NONE;
: LLAssetType::AT_NONE;
S32 upload_cost = -1;
if (asset_type != LLAssetType::AT_NONE)

View File

@@ -150,8 +150,9 @@ LLGroupNotifyBox::LLGroupNotifyBox(const std::string& subject,
auto links = new LLTextEditor(std::string("group"), LLRect(x, y + 5, RIGHT, bottom), S32_MAX, LLStringUtil::null, nullptr, false, true); // Top adjustment to line up with icon
links->setBorderVisible(FALSE);
links->setReadOnlyFgColor(text_color);
links->setReadOnlyBgColor(LLColor4::transparent);
static const auto header_bg_color = gColors.getColor("GroupNotifyHeaderBGColor");
if (header_bg_color[VALPHA]) links->setReadOnlyFgColor(text_color);
links->setReadOnlyBgColor(header_bg_color);
links->setEnabled(false);
links->setTakesNonScrollClicks(TRUE);
links->setHideScrollbarForShortDocs(TRUE);

View File

@@ -1842,7 +1842,7 @@ void LLIMProcessing::processNewMessage(const LLUUID& from_id,
strings.push_back(from_id.asString());
send_generic_message("requestonlinenotification", strings);
args["NAME"] = name;
args["NAME"] = LLAvatarActions::getSLURL(from_id);
LLSD payload;
payload["from_id"] = from_id;
LLAvatarNameCache::get(from_id, boost::bind(&notification_display_name_callback, _1, _2, "FriendshipAccepted", args, payload));

View File

@@ -224,7 +224,9 @@ LLNotifyBox::LLNotifyBox(LLNotificationPtr notification)
if (!mIsCaution || !mIsTip) // We could do some extra color math here to determine if bg's too close to link color, but let's just cross with the link color instead
mText->setLinkColor(new LLColor4(lerp(text_color, gSavedSettings.getColor4("HTMLLinkColor"), 0.4f)));
mText->setTabStop(FALSE); // can't tab to it (may be a problem for scrolling via keyboard)
mText->appendText(message,false,false,style,!layout_script_dialog); // Now we can set the text, since colors have been set.
mText->appendText(message,false,false,style); // Now we can set the text, since colors have been set.
if (is_textbox || layout_script_dialog)
mText->appendText(notification->getSubstitutions()["SCRIPT_MESSAGE"], false, true, style, false);
addChild(mText);
}

View File

@@ -32,6 +32,7 @@
#include "lllineeditor.h"
#include "llfloaterexperienceprofile.h"
#include "llfloaterexperiences.h"
//#include "llfloaterreg.h"
#include "lluictrlfactory.h"
#include "llscrolllistctrl.h"
@@ -62,13 +63,12 @@ const static std::string columnSpace = " ";
/* Singu Note: We do not have injectors, so we'll have to call this function instead
static LLPanelInjector<LLPanelExperiencePicker> t_panel_status("llpanelexperiencepicker");
*/
void* create_xp_picker(void* data) { return new LLPanelExperiencePicker(false); }
LLPanelExperiencePicker::LLPanelExperiencePicker(bool build)
LLPanelExperiencePicker::LLPanelExperiencePicker()
:LLPanel()
{
//buildFromFile("panel_experience_search.xml");
if (build) LLUICtrlFactory::getInstance()->buildPanel(this, "panel_experience_search.xml"); // Singu Note: Use filename in xml
LLUICtrlFactory::getInstance()->buildPanel(this, "panel_experience_search.xml"); // Singu Note: Use filename in xml
setDefaultFilters();
}
@@ -288,7 +288,7 @@ void LLPanelExperiencePicker::onBtnSelect()
void LLPanelExperiencePicker::onBtnClose()
{
LLFloater* floater = static_cast<LLFloater*>(getParent());
LLFloater* floater = mSelectionCallback ? static_cast<LLFloater*>(getParent()) : LLFloaterExperiences::findInstance();
if (floater)
{
floater->close();

View File

@@ -32,7 +32,6 @@
class LLScrollListCtrl;
class LLLineEditor;
void* create_xp_picker(void* data);
class LLPanelExperiencePicker final : public LLPanel
{
public:
@@ -44,7 +43,7 @@ public:
typedef std::function<bool (const LLSD&)> filter_function;
typedef std::vector<filter_function> filter_list;
LLPanelExperiencePicker(bool build = true);
LLPanelExperiencePicker();
virtual ~LLPanelExperiencePicker();
BOOL postBuild() override;

View File

@@ -70,6 +70,7 @@ static U32 sZombieGroups = 0;
U32 LLSpatialGroup::sNodeCount = 0;
U32 gOctreeMaxCapacity;
float gOctreeMinSize;
U32 gOctreeReserveCapacity;
BOOL LLSpatialGroup::sNoDelete = FALSE;
@@ -1623,10 +1624,10 @@ void renderOctree(LLSpatialGroup* group)
gGL.diffuseColor4fv(col.mV);
LLVector4a fudge;
fudge.splat(0.001f);
const LLVector4a* bounds = group->getObjectBounds();
LLVector4a size = bounds[1];
size.mul(1.01f);
size.add(fudge);
//const LLVector4a* bounds = group->getObjectBounds();
//LLVector4a size = bounds[1];
//size.mul(1.01f);
//size.add(fudge);*/
//{
// LLGLDepthTest depth(GL_TRUE, GL_FALSE);

View File

@@ -139,6 +139,7 @@ public:
static bool startLLProxy(); // Initialize the SOCKS 5 proxy
static LLViewerStats::PhaseMap& getPhases() { return *sPhases; }
static LLEventPump& getStateEventPump() { return *sStateWatcher; }
private:
static LLSLURL sStartSLURL;

View File

@@ -53,6 +53,7 @@
#include "llglheaders.h"
#include "lldrawpoolterrain.h"
#include "lldrawable.h"
#include "hippogridmanager.h"
extern LLPipeline gPipeline;
extern bool gShiftFrame;
@@ -371,6 +372,14 @@ void LLSurface::connectNeighbor(LLSurface* neighborp, U32 direction)
// - Non-power-of-2 regions should work here, but the rest of the viewer code will probably choke on them.
surface_patch_ref patchp, neighbor_patchp;
if (mNeighbors[direction] == neighborp)
{
return;
}
if (mNeighbors[direction])
{
mNeighbors[direction]->disconnectNeighbor(this, gDirOpposite[direction]);
}
mNeighbors[direction] = neighborp;
const S32 max_idx = mPatchesPerEdge - 1;
@@ -480,33 +489,71 @@ void LLSurface::connectNeighbor(LLSurface* neighborp, U32 direction)
}
}
void LLSurface::disconnectNeighbor(LLSurface *surfacep)
void LLSurface::disconnectNeighbor(LLSurface* surfacep, U32 direction)
{
S32 i;
for (i = 0; i < 8; i++)
if (surfacep && surfacep == mNeighbors[direction])
{
if (surfacep == mNeighbors[i])
// Iterate through surface patches, removing any connectivity to removed surface.
// Extra branches for debugging.
if (!gHippoGridManager->getCurrentGrid()->isSecondLife())
{
mNeighbors[i] = NULL;
for (auto& patchp : mPatchList)
{
patchp->disconnectNeighbor(surfacep);
}
}
if (gHippoGridManager->getCurrentGrid()->isSecondLife())
{
for (auto& patchp : mPatchList)
{
patchp->disconnectNeighbor(surfacep);
}
}
}
// Iterate through surface patches, removing any connectivity to removed surface.
for (auto& patchp : mPatchList)
{
patchp->disconnectNeighbor(surfacep);
}
}
void LLSurface::disconnectAllNeighbors()
{
// Pulled out of loop to debug.
if (mNeighbors[EAST])
{
mNeighbors[EAST]->disconnectNeighbor(this, gDirOpposite[EAST]);
}
if (mNeighbors[NORTH])
{
mNeighbors[NORTH]->disconnectNeighbor(this, gDirOpposite[NORTH]);
}
if (mNeighbors[WEST])
{
mNeighbors[WEST]->disconnectNeighbor(this, gDirOpposite[WEST]);
}
if (mNeighbors[SOUTH])
{
mNeighbors[SOUTH]->disconnectNeighbor(this, gDirOpposite[SOUTH]);
}
if (mNeighbors[NORTHEAST])
{
mNeighbors[NORTHEAST]->disconnectNeighbor(this, gDirOpposite[NORTHEAST]);
}
if (mNeighbors[NORTHWEST])
{
mNeighbors[NORTHWEST]->disconnectNeighbor(this, gDirOpposite[NORTHWEST]);
}
if (mNeighbors[SOUTHWEST])
{
mNeighbors[SOUTHWEST]->disconnectNeighbor(this, gDirOpposite[SOUTHWEST]);
}
if (mNeighbors[SOUTHEAST])
{
mNeighbors[SOUTHEAST]->disconnectNeighbor(this, gDirOpposite[SOUTHEAST]);
}
S32 i;
for (i = 0; i < 8; i++)
{
if (mNeighbors[i])
{
mNeighbors[i]->disconnectNeighbor(this);
//mNeighbors[i]->disconnectNeighbor(this);
mNeighbors[i] = NULL;
}
}

View File

@@ -85,7 +85,7 @@ public:
void setOriginGlobal(const LLVector3d &origin_global);
void connectNeighbor(LLSurface *neighborp, U32 direction);
void disconnectNeighbor(LLSurface *neighborp);
void disconnectNeighbor(LLSurface *neighborp, U32 direction);
void disconnectAllNeighbors();
// <FS:CR> Aurora Sim

View File

@@ -454,6 +454,7 @@ static bool handleRepartition(const LLSD&)
if (gPipeline.isInit())
{
gOctreeMaxCapacity = gSavedSettings.getU32("OctreeMaxNodeCapacity");
gOctreeMinSize = gSavedSettings.getF32("OctreeMinimumNodeSize");
gOctreeReserveCapacity = llmin(gSavedSettings.getU32("OctreeReserveNodeCapacity"),U32(512));
gObjectList.repartitionObjects();
}
@@ -692,6 +693,7 @@ void settings_setup_listeners()
gSavedSettings.getControl("OctreeStaticObjectSizeFactor")->getSignal()->connect(boost::bind(&handleRepartition, _2));
gSavedSettings.getControl("OctreeDistanceFactor")->getSignal()->connect(boost::bind(&handleRepartition, _2));
gSavedSettings.getControl("OctreeMaxNodeCapacity")->getSignal()->connect(boost::bind(&handleRepartition, _2));
gSavedSettings.getControl("OctreeMinimumNodeSize")->getSignal()->connect(boost::bind(&handleRepartition, _2));
gSavedSettings.getControl("OctreeReserveNodeCapacity")->getSignal()->connect(boost::bind(&handleRepartition, _2));
gSavedSettings.getControl("OctreeAlphaDistanceFactor")->getSignal()->connect(boost::bind(&handleRepartition, _2));
gSavedSettings.getControl("OctreeAttachmentSizeFactor")->getSignal()->connect(boost::bind(&handleRepartition, _2));

View File

@@ -7020,7 +7020,8 @@ void process_script_dialog(LLMessageSystem* msg, void**)
LLSD args;
args["TITLE"] = object_name;
args["MESSAGE"] = message;
args["MESSAGE"] = LLStringUtil::null;
args["SCRIPT_MESSAGE"] = message;
args["CHANNEL"] = chat_channel;
LLNotificationPtr notification;
char const* name = (is_group && !is_text_box) ? "GROUPNAME" : "NAME";

View File

@@ -1033,7 +1033,7 @@ BOOL LLOcclusionCullingGroup::earlyFail(LLCamera* camera, const LLVector4a* boun
LLVector4a fudge(vel*2.f);
const LLVector4a& c = bounds[0];
static LLVector4a r;
LLVector4a r;
r.setAdd(bounds[1], fudge);
/*if (r.magVecSquared() > 1024.0*1024.0)
@@ -1242,6 +1242,11 @@ void LLOcclusionCullingGroup::doOcclusion(LLCamera* camera, const LLVector4a* sh
//static LLVector4a fudge(SG_OCCLUSION_FUDGE);
static LLCachedControl<F32> vel("SHOcclusionFudge",SG_OCCLUSION_FUDGE);
LLVector4a fudge(SG_OCCLUSION_FUDGE);
if (LLDrawPool::POOL_WATER == mSpatialPartition->mDrawableType)
{
fudge.getF32ptr()[2] = 1.f;
}
static LLVector4a fudged_bounds;
fudged_bounds.setAdd(fudge, bounds[1]);
shader->uniform3fv(LLShaderMgr::BOX_SIZE, 1, fudged_bounds.getF32ptr());

View File

@@ -958,6 +958,7 @@ void LLPipeline::refreshCachedSettings()
LLVOAvatar::sMaxVisible = (U32)gSavedSettings.getS32("RenderAvatarMaxVisible");
//LLPipeline::sDelayVBUpdate = gSavedSettings.getBOOL("RenderDelayVBUpdate");
gOctreeMaxCapacity = gSavedSettings.getU32("OctreeMaxNodeCapacity");
gOctreeMinSize = gSavedSettings.getF32("OctreeMinimumNodeSize");
gOctreeReserveCapacity = llmin(gSavedSettings.getU32("OctreeReserveNodeCapacity"), U32(512));
LLPipeline::sDynamicLOD = gSavedSettings.getBOOL("RenderDynamicLOD");
LLPipeline::sRenderBump = gSavedSettings.getBOOL("RenderObjectBump");

View File

@@ -103,6 +103,7 @@
<NotifyCautionBoxColor value="254, 209, 118, 255" /> <!-- the background color of caution permissions prompts -->
<NotifyCautionWarnColor value="0, 0, 0, 255" /> <!-- the foreground color of the special title text in caution permissions prompts -->
<GroupNotifyBoxColor value="66, 66, 66, 255" />
<GroupNotifyHeaderBGColor value="0, 0, 0, 0" />
<GroupNotifyTextColor value="255, 255, 255, 128" />
<!-- CHAT AND IM HISTORY TEXTBOX COLORS -->

View File

@@ -99,6 +99,7 @@
<NotifyCautionBoxColor value="254, 209, 118, 255"/> <!-- the background color of caution permissions prompts -->
<NotifyCautionWarnColor value="0, 0, 0, 255"/> <!-- the foreground color of the special title text in caution permissions prompts -->
<GroupNotifyBoxColor value="66, 66, 66, 255"/>
<GroupNotifyHeaderBGColor value="0, 0, 0, 0" />
<GroupNotifyTextColor value="200, 200, 200, 255"/>
<!-- CHAT AND IM HISTORY TEXTBOX COLORS -->

View File

@@ -100,6 +100,7 @@
<NotifyCautionBoxColor value="254, 209, 118, 255" /> <!-- the background color of caution permissions prompts -->
<NotifyCautionWarnColor value="0, 0, 0, 255" /> <!-- the foreground color of the special title text in caution permissions prompts -->
<GroupNotifyBoxColor value="189, 0, 0, 240" />
<GroupNotifyHeaderBGColor value="0, 0, 0, 0" />
<GroupNotifyTextColor value="1, 0, 0, 255" />
<!-- CHAT AND IM HISTORY TEXTBOX COLORS -->

View File

@@ -103,6 +103,7 @@
<NotifyCautionBoxColor value="254, 209, 118, 255" /> <!-- the background color of caution permissions prompts -->
<NotifyCautionWarnColor value="0, 0, 0, 255" /> <!-- the foreground color of the special title text in caution permissions prompts -->
<GroupNotifyBoxColor value="70, 170, 255, 255" />
<GroupNotifyHeaderBGColor value="255, 255, 255, 184" />
<GroupNotifyTextColor value="0, 30, 60, 255" />
<!-- CHAT AND IM HISTORY TEXTBOX COLORS -->

View File

@@ -64,7 +64,6 @@
height="530"
left="0"
name="xp_scroll"
opaque="true"
bottom="0"
width="348">
<panel
@@ -76,6 +75,7 @@
width="315"
min_width="315">
<layout_stack
name="Experience_profile"
follows="all"
height="550"
left="0"
@@ -152,7 +152,7 @@
bottom="-50"
value=""
width="305"
max_length="2048"/>
max_length="2048"/>
</layout_panel>
<layout_panel
follows=""
@@ -257,6 +257,7 @@
</text_editor>
</layout_panel>
<layout_panel
name ="owner panel"
follows="left|top|right"
height="18"
left="0"

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<floater can_close="true" can_drag_on_left="false" can_minimize="true" can_resize="true"
min_height="300" min_width="400" name="inspect"
min_height="300" min_width="480" name="inspect"
rect_control="FloaterInspectRect" title="Inspect Objects">
<scroll_list bottom="30" can_resize="false" column_padding="0" draw_heading="true"
follows="top|right|left|bottom" left="10" multi_select="false"
@@ -22,12 +22,19 @@
<button bottom="5" follows="left|bottom" font="SansSerif" halign="center" height="20"
label="See Owner Profile..." label_selected="" left="10"
mouse_opaque="true" name="button owner"
tool_tip="See profile of the highlighted object&apos;s owner" width="150" >
tool_tip="See profile of the highlighted object&apos;s owner" width="152" >
<button.commit_callback
function="Inspect.OwnerProfile" />
</button>
<button bottom="5" follows="left|bottom" font="SansSerif" halign="center" height="20"
label="See Creator Profile..." label_selected="" left="170"
label="See Last Owner Profile..." label_selected="" left_delta="154"
mouse_opaque="true" name="button last owner"
tool_tip="See profile of the highlighted object&apos;s last owner" width="152" >
<button.commit_callback
function="Inspect.LastOwnerProfile" />
</button>
<button bottom="5" follows="left|bottom" font="SansSerif" halign="center" height="20"
label="See Creator Profile..." label_selected="" left_delta="154"
mouse_opaque="true" name="button creator"
tool_tip="See profile of the highlighted object&apos;s original creator"
width="150" >

View File

@@ -7862,7 +7862,7 @@ Offer a teleport?
icon="notify.tga"
name="FriendshipAccepted"
log_to_im="true"
type="notify">
type="notifytip">
<tag>friendship</tag>
[NAME] accepted your friendship offer.
</notification>
@@ -7872,7 +7872,7 @@ Offer a teleport?
name="FriendshipDeclined"
log_to_im="true"
persist="true"
type="notify">
type="notifytip">
<tag>friendship</tag>
[NAME] declined your friendship offer.
</notification>

View File

@@ -14,6 +14,7 @@
name="loading"
value="loading..."/>
<layout_stack
name="experience_panel"
top="0"
left="4"
right="-1"
@@ -21,6 +22,7 @@
orientation="vertical"
follows="all">
<layout_panel
name="event_panel"
bottom="0"
left="1"
right="-1"

View File

@@ -5,6 +5,7 @@
left="0"
width="350"
height="330"
name="panel_experiences_search"
label="Search"
follows="all">
@@ -44,6 +45,7 @@
height="330"
name="search_panel">
<text
name="search_text"
left="0"
follows="top|left|right"
right="-1">
@@ -63,6 +65,7 @@
height="18"
name="find"/>
<text
name="content_text"
bottom_delta="-18"
left="0"
follows="top|left"

View File

@@ -4,7 +4,7 @@
<panel border="true" left="1" bottom="-190" height="180" width="500" label="Main" name="General">
<check_box bottom_delta="-25" control_name="AscentStoreSettingsPerAccount" follows="top" height="16" initial_value="true" label="Where applicable, save Vanity settings per-account." left="10" tool_tip="Saves settings per-account, allowing easier customization for alts." name="use_account_settings_check"/>
<check_box bottom_delta="-20" control_name="AscentDisableTeleportScreens" follows="top" height="16" initial_value="true" label="Hide the Teleport progress screens" tool_tip="If checked, the viewer will hide the teleport progress screen, allowing you to continue to read IMs." name="disable_tp_screen_check"/>
<check_box bottom_delta="-20" control_name="OptionPlayTpSound" follows="top" height="16" initial_value="true" label="Play the Teleport sound when moving between sims" tool_tip="Viewer will play the wooshing TP noise on teleport." name="tp_sound_check"/>
<check_box bottom_delta="-20" control_name="OptionPlayTpSound" follows="top" height="16" initial_value="true" label="Play the Teleport sound when teleporting between regions" tool_tip="Viewer will play the wooshing TP noise on teleport." name="tp_sound_check"/>
<check_box bottom_delta="-20" control_name="AscentDisableLogoutScreens" follows="top" height="16" initial_value="true" label="Hide the Login/Logout progress screens" tool_tip="If checked, the viewer will hide the login/logout progress screen." name="disable_logout_screen_check"/>
<check_box bottom_delta="-20" control_name="SGDisableChatAnimation" follows="top" height="16" initial_value="false" label="Disable chat, whisper and shout animations" tool_tip="Remove chat animations from your own avatar. Effect visible to everyone" name="disable_chat_animation"/>
<check_box bottom_delta="-20" control_name="LiruAddNotReplace" follows="top" height="16" label="Add attachments and wearables instead of replacing them" tool_tip="When double clicking or pressing enter in inventory with wearables or objects selected they will be added to your outfit, instead of replacing the wearable or object currently at their target destination." name="add_not_replace"/>

View File

@@ -3252,7 +3252,7 @@ Where tag = tag string to match. Removes bot's matching the tag.
<string name="has_left">has left</string>
<string name="has_left_flood">is now off the radar for</string>
<!-- [RANGE] -->
<string name="the_sim">the sim</string>
<string name="the_sim">the region</string>
<string name="draw_distance">draw distance</string>
<string name="shout_range">shout range</string>
<string name="chat_range">chat range</string>
@@ -3609,6 +3609,7 @@ If you continue to receive this message, please contact Second Life support for
<string name="Debits">Debits</string>
<string name="Total">Total</string>
<string name="NoGroupDataFound">No group data found for group </string>
<string name="AlreadyInGroup">You are already in this group </string>
<!-- floater IM bonus_info: When a Linden with Admin/god status receives a new IM this displays the estate (Mainland vs. teen grid) of the source avatar.
This is to help Lindens when answering questions. -->

View File

@@ -1,13 +1,11 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<floater name="active_speakers" title="Participantes Activos">
<layout_stack name="active_speakers_stack">
<layout_panel name="panel_voice_effect"/>
<layout_panel name="active_speakers_panel">
<name_list name="speakers_list">
<column label="Nombre" name="speaker_name"/>
<column label="" name="speaking_status"/>
</name_list>
<slider name="speaker_volume"/>
<button name="mute_btn" tool_tip="Ignorar la voz de este residente"/>
</layout_panel>
</layout_stack>

View File

@@ -24,9 +24,7 @@
<text name="InstructSearchResidentName">
Escribe parte del nombre del residente:
</text>
<line_editor name="Edit"/>
<button label="Buscar" label_selected="Buscar" name="Find"/>
<scroll_list name="SearchResults"/>
</panel>
<!-- ========================= -->
<panel name="FriendsPanel" label="Amigos">
@@ -34,7 +32,6 @@
Elige a una persona:
</text>
<button label="Actualizar Lista" label_selected="Actualizar Lista" name="RefreshFriends" left_delta="15" width="100"/>
<scroll_list name="Friends"/>
</panel>
<!-- ========================= -->
<panel name="NearMePanel" label="Cercanos">
@@ -46,14 +43,12 @@
<text name="meters">
Metros
</text>
<scroll_list name="NearMe"/>
</panel>
<!-- ========================= -->
<panel name="KeyPanel" label="Por UUID" >
<text name="InstructSelectResident">
UUID del Avatar o Grupo:
</text>
<line_editor name="EditUUID"/>
</panel>
</tab_container>
<button label="Aceptar" label_selected="Aceptar" name="ok_btn"/>

View File

@@ -0,0 +1,3 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<floater name="experiencepicker" title="Seleccionar Experiencia">
</floater>

View File

@@ -0,0 +1,113 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<floater title="Perfil de la Experiencia">
<floater.string name="empty_slurl">
(ninguno)
</floater.string>
<floater.string name="maturity_icon_general">
map_event.tga
</floater.string>
<floater.string name="maturity_icon_moderate">
map_event_mature.tga
</floater.string>
<floater.string name="maturity_icon_adult">
map_event_adult.tga
</floater.string>
<name_box name="experience_title"/>
<tab_container name="tab_container">
<panel name="panel_experience_info">
<scroll_container name="xp_scroll">
<panel name="scrolling_panel">
<layout_stack name="Experience_profile">
<layout_panel name="top panel">
<text name="grid_wide"/>
<button label="Editar" name="edit_btn"/>
</layout_panel>
<layout_panel name="image_panel">
<texture_picker name="logo"/>
</layout_panel>
<layout_panel name="description panel">
<text_editor name="experience_description"/>
</layout_panel>
<layout_panel name="maturity panel">
<text name="ContentRating" width="75">
Contenido:
</text>
<text name="ContentRatingText"/>
</layout_panel>
<layout_panel name="location panel">
<text name="Location" width="290">
Ubicación:
</text>
<text_editor name="LocationTextText"/>
</layout_panel>
<layout_panel name="marketplace panel">
<text name="marketplace store">
Tienda del Mercado:
</text>
<text_editor name="marketplace"/>
</layout_panel>
<layout_panel name ="owner panel">
<text name="Owner">
Propietario:
</text>
<name_box name="OwnerText"/>
</layout_panel>
<layout_panel name="group_panel">
<text name="Group">
Grupo:
</text>
<name_box name="GroupText"/>
</layout_panel>
<layout_panel name="perm panel">
<button label="Permitir" name="allow_btn"/>
<button label="Olvidar" name="forget_btn"/>
<button label="Bloquear" name="block_btn"/>
<text name="privileged">
Esta experiencia está habilitada para todos los residentes.
</text>
<button label="Denunciar Infracción" name="report_btn" left="84" width="134"/>
</layout_panel>
</layout_stack>
</panel>
</scroll_container>
</panel>
<panel name="edit_panel_experience_info">
<scroll_container name="edit_xp_scroll" >
<panel name="edit_scrolling_panel">
<texture_picker name="edit_logo"/>
<text name="edit_experience_title_label" value="Nombre:"/>
<line_editor name="edit_experience_title"/>
<text name="edit_experience_desc_label" value="Descripción:"/>
<text_editor name="edit_experience_description"/>
<button name="Group_btn" label="Definir Grupo"/>
<name_box name="edit_GroupText"/>
<text name="edit_ContentRating">
Contenido:
</text>
<combo_box label="Moderado" tool_tip="Increasing the maturity rating on an experience will reset permission for all residents which have allowed the experience." name="edit_ContentRatingText">
<combo_item label="Adulto" name="Adult"/>
<combo_item label="Moderado" name="Mature"/>
<combo_item label="General" name="PG"/>
</combo_box>
<text name="edit_Location">
Ubicación:
</text>
<text_editor name="edit_LocationTextText"/>
<button name="location_btn" label="Definir aquí"/>
<button name="clear_btn" label="Limpiar Ubicación"/>
<text name="Marketplace Store text">
Tienda del Mercado:
</text>
<line_editor name="edit_marketplace"/>
<check_box tool_tip="" label="Habilitar Experiencia" name="edit_enable_btn"/>
<check_box label="Ocultar en Búsqueda" name="edit_private_btn"/>
<text name="changes" value="Los cambios de una experiencia pueden tardar varios minutos en mostrarse en todas las regiones."/>
<button label="Volver" name="cancel_btn"/>
<button label="Guardar" name="save_btn"/>
</panel>
</scroll_container>
</panel>
</tab_container>
</floater>

View File

@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<floater name="floater_experiences" title="Experiencias">
</floater>

View File

@@ -24,6 +24,9 @@
<text name="LabelAcquiredDate">
Mie May 24 12:50:46 2006
</text>
<text name="LabelItemExperienceTitle" >
Experiencia:
</text>
<text name="OwnerLabel">
Puedes:
</text>
@@ -80,6 +83,7 @@
Precio: [CURRENCY]
</text>
<line_editor name="Edit Cost"/>
<floater.string name="loading_experience">(cargando)</floater.string>
<string name="unknown">
(desconocido)
</string>

View File

@@ -3,6 +3,7 @@
<button label="Restablecer" label_selected="Restablecer" name="Reset"/>
<check_box label="Ejecutándose" name="running"/>
<check_box label="Mono" name="mono"/>
<check_box label="Usar Experiencia" name="enable_xp" />
<string name="not_allowed">
No tienes permiso para ver este script.
</string>

View File

@@ -4,6 +4,10 @@
<floater.string name="status_selectcount">
Primitivas: [OBJ_COUNT], LI: [LAND_IMPACT]
</floater.string>
<string name="Selected Face:" value="Cara Seleccionada:"/>
<string name="Link number:" value="Enlace Nro.:"/>
<string name="Selected prims:" value="Prim Seleccionado:"/>
<string name="Selected objects:" value="Objetos Seleccionados:"/>
<floater.string
name="status_remaining_capacity">
Capacidad remanente [LAND_CAPACITY].

View File

@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<menu name="Avatar Menu">
<menu_item_call label="Perfil" name="Profile"/>
<menu_item_call label="Permitir" name="Allow"/>
<menu_item_call label="Olvidar" name="Forget"/>
<menu_item_call label="Bloquear" name="Block"/>
<menu_item_call label="Denunciar" name="Report"/>
<menu_item_call label="Copiar SLURL al portapapeles" name="url_copy"/>
<menu_item_call label="Copiar UUID al portapapeles" name="key_copy"/>
<menu_item_call label="Copiar Nombre al portapapeles" name="name_copy"/>
</menu>

View File

@@ -0,0 +1,13 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<menu label="Grupos" name="groups_menu">
<menu_item_call label="Mostrar Perfil" name="show_group"/>
<menu_item_call label="Abrir chat del grupo" name="im_group"/>
<menu_item_call label="LLamar en el grupo" name="call_group"/>
<menu_item_call label="Activar Grupo" name="activate_group"/>
<menu_item_call label="Hisotiral de chat" name="Chat History"/>
<menu_item_call label="Unirse al Grupo" name="join_group"/>
<menu_item_call label="Abandonar el Grupo" name="leave_group"/>
<menu_item_call label="Copiar Nombre" name="copy_name"/>
<menu_item_call label="Copiar SLURL" name="copy_url"/>
<menu_item_call label="Copiar UUID" name="copy_key"/>
</menu>

View File

@@ -21,7 +21,8 @@
<menu_item_call label="Ejecutar Script" name="Task Set Running"/>
<menu_item_call name="Empty Trash" label="Vaciar Papelera"/>
<menu_item_call name="Empty Lost And Found" label="Vaciar Elementos Perdidos"/>
<menu_item_call label="Abrir en Nueva Ventana" name="Open Folder In New Window"/>
<menu_item_call label="Abrir Carpeta en Nueva Ventana" name="Open Folder In New Window"/>
<menu_item_call label="Copiar UUID de la Carpeta" name="Copy Folder UUID"/>
<menu_item_call name="New Folder" label="Carpeta nueva"/>
<menu_item_call name="New Script" label="Script nuevo"/>
<menu_item_call name="New Note" label="Nota nueva"/>

View File

@@ -10,19 +10,15 @@
<menu_item_check label="Objetos" name="Objects"/>
<menu_item_check label="Líneas de Propiedad" name="Property Lines"/>
<menu_item_check label="Terrenos en Venta" name="Parcels for Sale"/>
<menu_item_check label="Anillos de rastreo del Radar" name="Radar Tracking Circles"/>
<menu_item_check label="Anillos rastreo del Radar" name="Radar Tracking Circles"/>
</menu>
<menu name="Chat Distance Rings" label="Anillos de Rangos de Chat">
<menu_item_check label="Mostrar Todos" name="Show All"/>
<menu_item_separator />
<menu name="Chat Distance Rings" label="Anillos Rangos de Chat">
<menu_item_check label="Mostrar Todos" name="Show All"/>
<menu_item_check label="Mostrar rango Sururros" name="Show Whisper Ring"/>
<menu_item_check label="Mostrar rango Chat" name="Show Chat Ring"/>
<menu_item_check label="Mostrar rango Gritos" name="Show Shout Ring"/>
</menu>
<menu_item_separator />
<menu_item_call name="Stop Tracking" label="Detener Seguimiento"/>
<menu_item_call name="Profile" label="Perfil..."/>
<menu_item_call name="Camfollow" label="Cámara..."/>
<menu name="Mark" label="Marcar">
<menu_item_call name="Red" label="Rojo"/>
<menu_item_call name="Green" label="Verde"/>
@@ -31,5 +27,6 @@
<menu_item_call name="Custom" label="Personalizado..."/>
</menu>
<menu_item_call name="Unmark" label="Desmarcar"/>
<menu name="avs_menu" label="Avatares Seleccionados"/>
<menu_item_check label="Texturas del Mapa" name="World Map Textures"/>
</menu>

View File

@@ -0,0 +1,3 @@
<menu name="Avatar Name Editor Menu" filename="menu_avs_list.xml">
<menu name="Text" filename="menu_texteditor.xml"/>
</menu>

View File

@@ -0,0 +1,3 @@
<menu name="Group Name Editor Menu" filename="menu_groups_list.xml">
<menu name="Text" filename="menu_texteditor.xml"/>
</menu>

View File

@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<context_menu label="Objetos" name="Objects">
<menu_item_call label="Enfocar" name="Cam To"/>
<menu_item_call label="Seguir" name="Follow"/>
<menu_item_call label="Mover A" name="Move To"/>
<menu_item_call label="Teleportar A" name="Teleport To"/>
<menu_item_call label="Sentarse" name="Sit On"/>
<menu_item_call label="Pagar" name="Pay"/>
<menu_item_call label="Tocar" name="Touch"/>
<menu_item_call label="Editar" name="Edit"/>
<menu_item_call label="Añadir a la Selección" name="Add to Selection"/>
<menu_item_call label="Desdibujar" name="Derender"/>
<menu_item_call label="Copiar UUID" name="Copy Key"/>
<menu_item_call label="Copiar Nombre" name="Copy Name"/>
<menu_item_call label="Copiar SLURL" name="Copy SLURL"/>
</menu>

View File

@@ -0,0 +1,36 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<menu label="Propietario" name="Object Owner Submenu">
<menu_item_call label="Perfil" name="Profile"/>
<menu name="Acciones" label="Actions"/>
<menu_item_call label="Pagar" name="Pay"/>
<menu_item_call label="Mensaje Instantáneo" name="Instant Message"/>
<menu_item_call label="Conferencia" name="Conference Chat"/>
<menu_item_call label="Llamar" name="Call"/>
<menu_item_call label="Llamar Conferencia" name="Conference Call"/>
<menu_item_call label="Ofrecer Amistad" name="Add Friend"/>
<menu_item_call label="Quitar Amistad" name="Remove Friend"/>
<menu_item_call label="Invitar a un Grupo" name="Invite To Group"/>
<menu_item_call label="Seguir" name="Follow"/>
<menu_item_call label="Movea A" name="Move To"/>
<menu_item_call label="Ofrecer Teleporte" name="Offer Teleport"/>
<menu_item_call label="Teleportar A" name="Teleport To"/>
<menu_item_call label="Solicitar Teleporte" name="Request Teleport"/>
<menu_item_call label="Encontrar en el Mapa" name="Find on Map"/>
<menu_item_call label="Compartir" name="Share"/>
<menu_item_call label="Historial de Chat" name="Chat History"/>
<menu_item_call label="Rastrear/No Rastrear" name="Track/Untrack"/>
<menu name="Copiar" label="Copy"/>
<menu_item_call label="Nombre" name="Copy Name"/>
<menu_item_call label="SLURL" name="Copy SLURL"/>
<menu_item_call label="Enfocar" name="Focus"/>
<menu label="Moderación" name="Moderation" create_jump_keys="">
<menu_item_call label="Silenciar" name="Mute"/>
<menu_item_call label="Quitar Silenciar" name="Unmute"/>
<menu_item_call label="Prohibir en el Grupo" name="Ban From Group"/>
<menu_item_call label="Denunciar Infracción" name="Report Abuse"/>
<menu_item_call label="Congelar" name="Freeze"/>
<menu_item_call label="Expulsar/Prohibir en la parcela" name="Eject/Ban from Parcel"/>
<menu_item_call label="Expulsar del Estado" name="Eject from estate"/>
<menu_item_call label="Expulsar y prohibir en el estado" name="Eject and ban from estate"/>
</menu>
</menu>

View File

@@ -5,7 +5,7 @@
<menu_item_call label="Tocar" name="Object Touch">
<on_click function="Object.Touch" />
<on_enable function="Object.EnableTouch" userdata="Tocar" name="EnableTouch"/>
</menu_item_call>
</menu_item_call>
<menu_item_call label="Sentarse" name="Object Sit">
<on_click function="Object.SitOrStand"/>
<on_enable function="Object.EnableSitOrStand" userdata="Sentarse,Pararse" name="EnableSitOrStand"/>
@@ -20,6 +20,7 @@
<menu_item_call label="Recoger una copia" name="Take Copy"/>
<pie_menu label="Anexar HUD" name="Object Attach HUD" />
<pie_menu label="Anexar" name="Object Attach" />
<pie_menu label="Anexar Mas" name="Object Attach More" />
<menu_item_call label="Regresar..." name="Return..."/>
<pie_menu label="Más" name="Rate Menu">
<pie_menu label="Exportar" name="Export Menu">
@@ -32,6 +33,8 @@
<menu_item_call label="Explotar" name="Explode"/>
<menu_item_call label="Medir" name="Measure"/>
<menu_item_call label="Información" name="Data"/>
<menu_item_call label="Ir a" name="Go To"/>
<menu_item_call label="Seguir" name="Follow"/>
<menu_item_call label="Recargar" name="Reload Textures"/>
</pie_menu>
<menu_item_call label="Silenciar" name="Object Mute"/>

View File

@@ -11,22 +11,34 @@
<menu_item_call label="Añadir Amigo" name="Add Friend"/>
<menu_item_call label="Quitar Amigo" name="Remove Friend"/>
<menu_item_call label="Invitar a Grupo" name="Invite To Group"/>
<menu_item_call label="Seguir" name="Follow"/>
<menu_item_call label="Ir a" name="Move To"/>
<menu_item_call label="Ofrecer Teleporte" name="Offer Teleport"/>
<menu_item_call label="Teleportar a" name="Teleport To"/>
<menu_item_call label="Solicitar Teleporte" name="Request Teleport"/>
<menu_item_call label="Compartir" name="Share"/>
<menu_item_call label="Historial de Chat" name="Chat History"/>
<menu_item_call label="Rastrear/No Rastrear" name="Track/Untrack"/>
<menu_item_call label="Copiar UUID" name="Copy Key"/>
<menu_item_call label="Copiar Nombres" name="Copy Names"/>
<menu_item_call label="Copiar SLURL" name="Copy SLURL"/>
</menu>
<menu label="Enfoque" name="Focusing">
<menu_item_call label="Enfocar" name="Focus"/>
<menu_item_call label="Enfocar Siguiente" name="Focus Next"/>
<menu_item_call label="Enfocar Anterior" name="Focus Previous"/>
<menu_item_separator/>
<menu_item_call label="Marcar/Desmarcar" name="Mark/Unmark"/>
<menu_item_call label="Enfocar Siguiente Marcado" name="Focus Next Marked"/>
<menu_item_call label="Enfocar Anterior Marcado" name="Focus Previous Marked"/>
</menu>
<menu name="Mark" label="Marcas">
<menu_item_call label="Rojo" name="Red"/>
<menu_item_call label="Verde" name="Green"/>
<menu_item_call label="Azul" name="Blue"/>
<menu_item_call label="Amarillo" name="Yellow"/>
<menu_item_call label="Personalizado..." name="Custom"/>
<menu_item_call label="Desmarcar" name="Unmark"/>
</menu>
<menu label="Alertas" name="Alerts">
<menu_item_check label="Mostrar Alertas cuando un avatar" name="Display alerts in chat"/>
<menu_item_check label="entra/abandona el sim" name="sim alerts"/>

View File

@@ -1,6 +1,4 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<context_menu name="Url Popup">
<menu_item_call label="Copiar la SLurl al portapapeles" name="url_copy"/>
<menu_item_call label="Copiar Key al portapapeles" name="key_copy"/>
<menu_item_call label="Seleccionar Todo" name="Select All"/>
</context_menu>

View File

@@ -0,0 +1,38 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<context_menu label="Propietario" name="Object Owner Submenu">
<menu_item_call label="Enviar MI..." name="send_im"/>
<menu name="Acciones" label="Actions">
<menu_item_call label="Perfil" name="Profile"/>
<menu_item_call label="Perfil Web" name="Web Profile"/>
<menu_item_call label="Pagar" name="Pay"/>
<menu_item_call label="Llamar" name="Call"/>
<menu_item_call label="Ofrecer Amistad" name="Add Friend"/>
<menu_item_call label="Quitar Amistad" name="Remove Friend"/>
<menu_item_call label="Invitar a un Grupo" name="Invite To Group"/>
<menu_item_call label="Seguir" name="Follow"/>
<menu_item_call label="Mover A" name="Move To"/>
<menu_item_call label="Ofrecer Teleporte" name="Offer Teleport"/>
<menu_item_call label="Teleportar A" name="Teleport To"/>
<menu_item_call label="Solicitar Teleporte" name="Request Teleport"/>
<menu_item_call label="Encontar en el Mapa" name="Find on Map"/>
<menu_item_call label="Compartir" name="Share"/>
<menu_item_call label="Historial de Chat" name="Chat History"/>
<menu_item_call label="Rastrear/No Rastrear" name="Track/Untrack"/>
<menu_item_call label="Enfocar" name="Focus"/>
</menu>
<menu name="Copiar">
<menu_item_call label="Nombre" name="copy_name"/>
<menu_item_call label="SLURL" name="url_copy"/>
<menu_item_call label="UUID" name="key_copy"/>
</menu>
<menu label="Moderación" name="Moderation" create_jump_keys=""/>
<menu_item_call label="Silenciar" name="Mute"/>
<menu_item_call label="Quitar silencio" name="Unmute"/>
<menu_item_call label="Prohibir en el grupo" name="Ban From Group"/>
<menu_item_call label="Denuncair Infracción" name="Report Abuse"/>
<menu_item_call label="Congelar" name="Freeze"/>
<menu_item_call label="Expulsar/Prohibir en la Parcela" name="Eject/Ban from Parcel"/>
<menu_item_call label="Expulsar del estado" name="Eject from estate"/>
<menu_item_call label="Expulsar y prohibir del estado" name="Eject and ban from estate"/>
</menu>
</context_menu>

View File

@@ -1,12 +1,28 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<context_menu name="Url Popup" label="Objeto">
<menu_item_call label="Perfil del objeto..." name="show_object"/>
<menu_item_call label="Ignorar..." name="block_object"/>
<menu_item_call label="Desbloquear" name="unblock_object"/>
<menu_item_call label="Mostrar en el mapa" name="show_on_map"/>
<menu_item_call label="Teleportarse a la posición del objeto" name="teleport_to_object"/>
<menu_item_call label="Copiar el nombre del objeto al portapapeles" name="url_copy_label"/>
<menu_item_call label="Copiar la SLurl al portapapeles" name="url_copy"/>
<menu_item_call label="Copiar Key al portapapeles" name="key_copy"/>
<menu name="URL Actions" label="Acciones URL">
<menu_item_call label="Perfil del objeto..." name="show_object"/>
<menu_item_call label="Ignorar..." name="block_object"/>
<menu_item_call label="Desbloquear" name="unblock_object"/>
<menu_item_call label="Mostrar en el mapa" name="show_on_map"/>
<menu_item_call label="Teleportarse a la posición del objeto" name="teleport_to_object"/>
</menu>
<menu name="Object" label="Objeto">
<menu_item_call label="Enfocar" name="Cam To"/>
<menu_item_call label="Seguir" name="Follow"/>
<menu_item_call label="Mover A" name="Move To"/>
<menu_item_call label="Teleportar A (ubicación actual)" name="Teleport To (current location)"/>
<menu_item_call label="Sentarse" name="Sit On"/>
<menu_item_call label="Pagar" name="Pay"/>
<menu_item_call label="Tocar" name="Touch"/>
<menu_item_call label="Editar" name="Edit"/>
<menu_item_call label="Añadir a la Selección" name="Add to Selection"/>
<menu_item_call label="Desdibujar" name="Derender"/>
</menu>
<menu name="Copy" label="Copiar">
<menu_item_call label="Nombre" name="url_copy_label"/>
<menu_item_call label="SLURL" name="url_copy"/>
<menu_item_call label="UUID" name="key_copy"/>
</menu>
<menu_item_call label="Seleccionar Todo" name="Select All"/>
</context_menu>

View File

@@ -5,7 +5,7 @@
<menu_item_call label="Subir Sonido ([UPLOADFEE])..." name="Upload Sound"/>
<menu_item_call label="Subir Animación ([UPLOADFEE])..." name="Upload Animation"/>
<menu_item_call label="Subir Modelo..." name="Upload Mesh"/>
<menu_item_call label="Subir Masivo (por archivo)..." name="Bulk Upload"/>
<menu_item_call label="Subir Masivo (Pago por archivo)..." name="Bulk Upload"/>
<menu_item_call label="Importar Objeto XML" name="Import"/>
<menu_item_call label="Importar con Texturas" name="Import2"/>
<menu_item_call label="Cambiar Texturas Locales" name="Change Local Textures"/>
@@ -134,6 +134,7 @@
<menu_item_check label="Ítems Recibidos" name="Received Items"/>
<menu_item_check label="Avatares Predefinidos" name="Avatar Picker"/>
<menu_item_check label="Destinos" name="Destinations"/>
<menu_item_check label="Experiencias..." name="Experiences..."/>
<menu_item_call label="Mi Terreno..." name="My Land..."/>
<menu_item_call label="Acerca del Terreno..." name="About Land..."/>
<menu_item_call label="Comprar Terreno..." name="Buy Land..."/>
@@ -211,7 +212,7 @@
<menu_item_call label="Blog Oficial de Linden Lab..." name="Official Linden Blog..."/>
<menu_item_call label="Estado del Grid..." name="Grid Status..."/>
<menu_item_call label="Portal de Scripting..." name="Scripting Portal..."/>
<menu_item_call label="Denunciar Abuso..." name="Report Abuse..."/>
<menu_item_call label="Denunciar Infracción..." name="Report Abuse..."/>
<menu_item_call label="Choques, Empujones y Golpes..." name="Bumps, Pushes &amp;amp; Hits..."/>
<menu label="Informe de Fallos" name="Bug Reporting" >
<menu_item_call label="Seguimiento de Problemas Público..." name="Public Issue Tracker..."/>
@@ -224,28 +225,27 @@
<menu_item_call label="Informar Fallos de [SHORT_APP_NAME]..." name="Report [SHORT_APP_NAME] Bug..."/>
<menu_item_call label="Solicitar Nueva Característica..." name="Request New Feature..."/>
</menu>
<menu_item_call label="[SHORT_APP_NAME] Group" name="viewer group">
<on_click function="URLAction" userdata="secondlife:///app/group/ce736e80-376b-e057-1722-431d1daa363e/about"/>
<menu_item_call label="Grupo [SHORT_APP_NAME]" name="viewer group">
<on_click function="URLAction" userdata="secondlife:///app/group/d21f3901-f87d-e8df-4323-f25b23a367be/about"/>
<on_visible function="VisibleSecondLife"/>
</menu_item_call>
<menu_item_call label="Acerca de [APP_NAME]..." name="About Second Life..."/>
<menu_item_call label="Acerca de [SHORT_APP_NAME]..." name="About Second Life..."/>
</menu>
<!-- ============================= -->
<menu label="[SHORT_APP_NAME]" name="Singularity">
<menu_item_call label="Cerrar todos los diálogos" name="Close All Dialogs"/>
<menu_item_call label="Falso Estado Ausente" name="Fake Away Status"/>
<menu_item_call label="Forzar Sentarse en el Piso" name="Force Ground Sit"/>
<menu_item_call label="Animation Override..." name="Animation Override ..."/>
<menu_item_call label="Animaciones (AO)..." name="Animation Override ..."/>
<menu_item_check label="Pose Stand" name="Pose Stand"/>
<menu_item_check label="Agilidad" name="Nimble"/>
<menu_item_call label="Resincronizar Animaciones" name="Resync Animations"/>
<menu_item_check label="Monitor de Región" name="Region Tracker"/>
<menu_item_check label="Búsqueda en Área" name="Object Area Search"/>
<menu_item_check label="Explorador de Sonidos" name="Sound Explorer"/>
<menu_item_check label="Lista Negra de Assets" name="Asset Blacklist"/>
<menu_item_check label="Lista Negra" name="Asset Blacklist"/>
<menu_item_check label="Filtro de Media" name="Media Filter"/>
<menu_item_check label="Mostrar Información de Audio" name="Streaming Audio Display"/>
<menu_item_check label="Consola de Depuración de Región" name="Region Debug Console"/>
<menu_item_call label="Redibujar" name="Rebake"/>
</menu>

View File

@@ -89,19 +89,19 @@
Por favor, comprueba que tienes instalado el último Visor.
Detalles del error: la notificación de nombre &apos;[_NAME]&apos; no se ha encontrado en notifications.xml.
<usetemplate name="okbutton" yestext="OK"/>
<usetemplate name="okbutton" yestext="Aceptar"/>
</notification>
<notification name="FloaterNotFound">
Error: no se pudieron encontrar estos controles:
[CONTROLS]
<usetemplate name="okbutton" yestext="OK"/>
<usetemplate name="okbutton" yestext="Aceptar"/>
</notification>
<notification name="TutorialNotFound">
Actualmente, no hay un tutorial disponible.
<usetemplate name="okbutton" yestext="OK"/>
<usetemplate name="okbutton" yestext="Aceptar"/>
</notification>
<notification name="GenericAlert">
@@ -120,7 +120,7 @@ Detalles del error: la notificación de nombre &apos;[_NAME]&apos; no se ha enco
<notification name="GenericAlertOK">
[MESSAGE]
<usetemplate name="okbutton" yestext="OK"/>
<usetemplate name="okbutton" yestext="Aceptar"/>
</notification>
<notification name="BadInstallation">
@@ -208,34 +208,34 @@ canceltext="Reiniciar" yestext="Si"/>
Ha ocurrido el siguiente error al copiar o mover a la carpeta de stock:
&apos;[ERROR_CODE]&apos;
<usetemplate name="okbutton" yestext="OK"/>
<usetemplate name="okbutton" yestext="Aceptar"/>
</notification>
<notification name="MerchantPasteFailed">
Ha ocurrido el siguiente error al copiar o mover a la carpeta de stock:
&apos;[ERROR_CODE]&apos;
<usetemplate name="okbutton" yestext="OK"/>
<usetemplate name="okbutton" yestext="Aceptar"/>
</notification>
<notification name="MerchantTransactionFailed">
Ha ocurrido el siguiente error en la transacción al mercado:
[ERROR_REASON][ERROR_DESCRIPTION]
<usetemplate name="okbutton" yestext="OK"/>
<usetemplate name="okbutton" yestext="Aceptar"/>
</notification>
<notification name="MerchantUnprocessableEntity">
No hemos podido incluir este producto en tus artículos o activar la carpeta de versión. Normalmente esto ocurre porque falta información en el formulario de descripción de los artículos,
aunque también puede deberse a errores en la estructura de carpetas. Puedes editar los artículos o comprobar si la carpeta de artículos tiene algún error.
<usetemplate name="okbutton" yestext="OK"/>
<usetemplate name="okbutton" yestext="Aceptar"/>
</notification>
<notification name="MerchantListingFailed">
Ha ocurrido el siguiente error en la lista de artículos del Mercado:
&apos;[ERROR_CODE]&apos;
<usetemplate name="okbutton" yestext="OK"/>
<usetemplate name="okbutton" yestext="Aceptar"/>
</notification>
<notification name="MerchantFolderActivationFailed">
@@ -248,17 +248,17 @@ aunque también puede deberse a errores en la estructura de carpetas. Puedes edi
<notification name="MerchantForceValidateListing">
Para crear tu lista de artículos, hemos corregido la jerarquía del contenido de la lista.
<usetemplate ignoretext="Recordarme que al crear una lista de artículos se modifica la jerarquía del contenido" name="okignore" yestext="OK"/>
<usetemplate ignoretext="Recordarme que al crear una lista de artículos se modifica la jerarquía del contenido" name="okignore" yestext="Aceptar"/>
</notification>
<notification name="ConfirmMerchantActiveChange">
Esta acción cambiará el contenido activo de esta lista de artículos. ¿Quieres continuar?
<usetemplate ignoretext="Confirmar antes de cambiar una lista de artículos activa en el Mercado" name="okcancelignore" notext="Cancelar" yestext="OK"/>
<usetemplate ignoretext="Confirmar antes de cambiar una lista de artículos activa en el Mercado" name="okcancelignore" notext="Cancelar" yestext="Aceptar"/>
</notification>
<notification name="ConfirmMerchantMoveInventory">
Los artículos arrastrados a la ventana Artículos del mercado se mueven desde sus ubicaciones originales, no se copian. ¿Quieres continuar?
<usetemplate ignoretext="Confirmar antes de mover un artículo desde el inventario al Mercado" name="okcancelignore" notext="Cancelar" yestext="OK"/>
<usetemplate ignoretext="Confirmar antes de mover un artículo desde el inventario al Mercado" name="okcancelignore" notext="Cancelar" yestext="Aceptar"/>
</notification>
<notification name="ConfirmListingCutOrDelete">
@@ -266,7 +266,7 @@ aunque también puede deberse a errores en la estructura de carpetas. Puedes edi
Si deseas conservar los artículos del Mercado, mueve o elimina el contenido de la carpeta de versión que desees modificar.
¿Quieres continuar?
<usetemplate ignoretext="Confirmar antes de mover o eliminar una lista de artículos del Mercado" name="okcancelignore" notext="Cancelar" yestext="OK"/>
<usetemplate ignoretext="Confirmar antes de mover o eliminar una lista de artículos del Mercado" name="okcancelignore" notext="Cancelar" yestext="Aceptar"/>
</notification>
<notification name="ConfirmCopyToMarketplace">
@@ -276,18 +276,18 @@ aunque también puede deberse a errores en la estructura de carpetas. Puedes edi
<notification name="ConfirmMerchantUnlist">
Esta acción retirará esta lista de artículos. ¿Quieres continuar?
<usetemplate ignoretext="Confirmar antes retirar una lista de artículos activa en el Mercado" name="okcancelignore" notext="Cancelar" yestext="OK"/>
<usetemplate ignoretext="Confirmar antes retirar una lista de artículos activa en el Mercado" name="okcancelignore" notext="Cancelar" yestext="Aceptar"/>
</notification>
<notification name="ConfirmMerchantClearVersion">
Esta acción desactivará la carpeta de versión de la lista de artículos actual. ¿Quieres continuar?
<usetemplate ignoretext="Confirmar antes de desactivar la carpeta de versión de una lista de artículos del Mercado" name="okcancelignore" notext="Cancelar" yestext="OK"/>
<usetemplate ignoretext="Confirmar antes de desactivar la carpeta de versión de una lista de artículos del Mercado" name="okcancelignore" notext="Cancelar" yestext="Aceptar"/>
</notification>
<notification name="AlertMerchantListingNotUpdated">
No se ha podido actualizar esta lista de artículos.
[[URL] Haz clic aquí] para editarla en el Mercado.
<usetemplate name="okbutton" yestext="OK"/>
<usetemplate name="okbutton" yestext="Aceptar"/>
</notification>
<notification
@@ -303,22 +303,22 @@ aunque también puede deberse a errores en la estructura de carpetas. Puedes edi
<notification name="AlertMerchantListingActivateRequired">
Esta lista de artículos contiene varias carpetas de versión o ninguna. Tendrás que seleccionar y activar una por tu cuenta más tarde.
<usetemplate ignoretext="Mostrar una alerta de la activación de la carpeta de versión al crear una lista de artículos con varias carpetas de versión" name="okignore" yestext="OK"/>
<usetemplate ignoretext="Mostrar una alerta de la activación de la carpeta de versión al crear una lista de artículos con varias carpetas de versión" name="okignore" yestext="Aceptar"/>
</notification>
<notification name="AlertMerchantStockFolderSplit">
Hemos separado los artículos en stock de diferentes tipos en carpetas distintas, para que tu carpeta esté organizada de tal forma que podamos incluirla en el Mercado.
<usetemplate ignoretext="Mostrar alerta cuando la carpeta de stock se divida antes de incluirla en la lista" name="okignore" yestext="OK"/>
<usetemplate ignoretext="Mostrar alerta cuando la carpeta de stock se divida antes de incluirla en la lista" name="okignore" yestext="Aceptar"/>
</notification>
<notification name="AlertMerchantStockFolderEmpty">
Hemos retirado tu lista de artículos porque el stock está vacío. Para volver a publicar tus artículos, añade más unidades a la carpeta de stock.
<usetemplate ignoretext="Mostrar alerta cuando una lista de artículos se retire porque la carpeta de stock está vacía" name="okignore" yestext="OK"/>
<usetemplate ignoretext="Mostrar alerta cuando una lista de artículos se retire porque la carpeta de stock está vacía" name="okignore" yestext="Aceptar"/>
</notification>
<notification name="AlertMerchantVersionFolderEmpty">
Hemos retirado tu lista de artículos porque la carpeta de versión está vacía. Para volver a publicar tus artículos, añade artículos a la carpeta de versión.
<usetemplate ignoretext="Mostrar una alerta cuando una lista de artículos se retire porque la carpeta de versión está vacía" name="okignore" yestext="OK"/>
<usetemplate ignoretext="Mostrar una alerta cuando una lista de artículos se retire porque la carpeta de versión está vacía" name="okignore" yestext="Aceptar"/>
</notification>
<notification name="CompileQueueSaveText">
@@ -352,7 +352,7 @@ Hubo un problema al subir la foto por la siguiente razón: [REASON]
<notification name="FriendsAndGroupsOnly">
Los que no son amigos no sabrán que has elegido ignorar sus llamadas y mensajes instantáneos.
<usetemplate name="okbutton" yestext="OK"/>
<usetemplate name="okbutton" yestext="Aceptar"/>
</notification>
<notification name="FavoritesOnLogin">
@@ -519,7 +519,56 @@ Los demás residentes podrán visitar la URL que hayas elegido cuando vean tu pe
Unirse a este grupo cuesta [CURRENCY][COST].
No tienes suficientes [CURRENCY] para unirte a este grupo.
</notification>
<notification name="CreateGroupCost">
Crear este grupo te costará L$[COST].
Los grupos necesitan mas de un miembro o serán eliminados.
Por favor, invita a nuevos miembros dentro de las 48 hs.
<usetemplate canceltext="Cancelar" name="okcancelbuttons" notext="Cancelar" yestext="Crear grupo por L$[COST]"/>
</notification>
<notification name="JoinGroupInaccessible">
Este grupo no es accesible para ti.
<usetemplate name="okbutton" yestext="Aceptar"/>
</notification>
<notification name="JoinGroupError">
Ha ocurrido un error procesando tu petición de ingresar al grupo.
<usetemplate name="okbutton" yestext="Aceptar"/>
</notification>
<notification name="JoinGroupErrorReason">
Imposible unirse al grupo: [reason]
<usetemplate name="okbutton" yestext="Aceptar"/>
</notification>
<notification name="JoinGroupTrialUser">
Lo sentimos, los usuarios de prueba no pueden unirse a los grupos.
<usetemplate name="okbutton" yestext="Aceptar"/>
</notification>
<notification name="JoinGroupMaxGroups">
No puedes unirte al grupo &apos;[group_name]&apos;:
Ya perteneces a [group_count] grupos, la cantidad máxima es de [max_groups]
<usetemplate name="okbutton" yestext="Aceptar"/>
</notification>
<notification name="JoinGroupClosedEnrollment">
No puedes unirte al grupo &apos;[group_name]&apos;:
El grupo ya no admite más miembros.
<usetemplate name="okbutton" yestext="Aceptar"/>
</notification>
<notification name="JoinGroupSuccess" >
Ahora formas parte del grupo
<usetemplate name="okbutton" yestext="Aceptar"/>
</notification>
<notification name="JoinGroupInsufficientFunds">
No se pudo transferir los [CURRENCY][membership_fee] necesarios para pagar la membresía.
<usetemplate name="okbutton" yestext="Aceptar"/>
</notification>
<notification name="LandBuyPass">
Por [CURRENCY][COST] puedes entrar a este terreno (&apos;[PARCEL_NAME]&apos;) durante [TIME] horas. ¿Comprar un pase?
<usetemplate name="okcancelbuttons" notext="Cancelar" yestext="Aceptar"/>
@@ -829,7 +878,7 @@ El objeto debe de haber sido borrado o estar fuera de rango.
<notification name="MediaFileDownloadUnsupported" label="">
Has solicitado descargar un archivo, lo cual no está soportado dentro de [SECOND_LIFE].
<usetemplate ignoretext="Advertir sobre descarga de archivos no soportados" name="okignore" yestext="OK"/>
<usetemplate ignoretext="Advertir sobre descarga de archivos no soportados" name="okignore" yestext="Aceptar"/>
</notification>
<notification name="CannotWriteFile">
@@ -1062,7 +1111,7 @@ Podría ser [VALIDS]
<notification name="CorruptedProtectedDataStore">
No podemos completar tu nombre de usuario y contraseña. Esto puede suceder cuando cambia la configuración de la red
<usetemplate name="okbutton" yestext="OK"/>
<usetemplate name="okbutton" yestext="Aceptar"/>
</notification>
<notification name="CorruptResourceFile">
@@ -2289,6 +2338,36 @@ Se cambiarán miles de regiones, y se provocará un colapso en el espacio del se
<usetemplate canceltext="Cancelar" name="yesnocancelbuttons" notext="Todos los estados" yestext="Este estado"/>
</notification>
<notification label="Seleccionar estado" name="EstateAllowedExperienceAdd">
¿Añadir a la lista de permitidos solamente en este estado o en [ALL_ESTATES]?
<usetemplate canceltext="Cancelar" name="yesnocancelbuttons" notext="Todos los estados" yestext="Este estado"/>
</notification>
<notification label="Seleccionar estado" name="EstateAllowedExperienceRemove">
¿Quitar de la lista de permitidos solamente en este estado o en [ALL_ESTATES]?
<usetemplate canceltext="Cancelar" name="yesnocancelbuttons" notext="Todos los estados" yestext="Este estado"/>
</notification>
<notification label="Seleccionar estado" name="EstateBlockedExperienceAdd">
¿Añadir a la lista de bloqueados solamente para este estado o en [ALL_ESTATES]?
<usetemplate canceltext="Cancelar" name="yesnocancelbuttons" notext="Todos los estados" yestext="Este estado"/>
</notification>
<notification label="Seleccionar estadoe" name="EstateBlockedExperienceRemove">
¿Quitar de la lista de bloqueados solamente para este estado o en [ALL_ESTATES]?
<usetemplate canceltext="Cancelar" name="yesnocancelbuttons" notext="Todos los estados" yestext="Este estado"/>
</notification>
<notification label="Seleccionar estado" name="EstateTrustedExperienceAdd">
¿Añadir a la lista de claves solamente para este estado o en [ALL_ESTATES]?
<usetemplate canceltext="Cancelar" name="yesnocancelbuttons" notext="Todos los estados" yestext="Este estado"/>
</notification>
<notification label="Seleccionar estado" name="EstateTrustedExperienceRemove">
¿Quitar de la lista de claves solamente para este estado o en [ALL_ESTATES]?
<usetemplate canceltext="Cancelar" name="yesnocancelbuttons" notext="Todos los estados" yestext="Este estado"/>
</notification>
<notification label="Confirmar la expulsión" name="EstateKickUser">
¿Expulsar a [EVIL_USER] de este Estado?
<usetemplate name="okcancelbuttons" notext="Cancelar" yestext="Aceptar"/>
@@ -2303,6 +2382,11 @@ Se cambiarán miles de regiones, y se provocará un colapso en el espacio del se
¿Estás seguro de que quieres cambiar el contrato del Estado?
<usetemplate name="okcancelbuttons" notext="Cancelar" yestext="Aceptar"/>
</notification>
<notification name="EstateParcelAccessOverride">
Si esta opción no está seleccionada, se anularán las restricciones establecidas por los dueños de parcelas para evitar provocaciones, matener la privacidad o proteger a los residentes menores de material para adultos. Por favor, consulta con los dueños de parcelas según sea necesario.
<usetemplate name="okbutton" yestext="Aceptar"/>
</notification>
<notification name="RegionEntryAccessBlocked">
Tus preferencias de contenido actuales te impiden visitar la región que has seleccionado. Puedes cambiar las preferencias en Editar &gt; Preferencias &gt; General.
@@ -3936,7 +4020,6 @@ Por favor, reinténtalo en unos momentos.
<form name="form">
<button name="Teleport" text="Teleportar"/>
<button name="Cancel" text="Cancelar"/>
<button name="Profile" text="Perfil"/>
</form>
</notification>
@@ -3953,7 +4036,6 @@ Por favor, reinténtalo en unos momentos.
<form name="form">
<button name="Yes" text="Si"/>
<button name="No" text="No"/>
<button name="Profile" text="Perfil"/>
</form>
</notification>
@@ -3967,7 +4049,7 @@ Por favor, reinténtalo en unos momentos.
</notification>
<notification name="OfferFriendship">
[NAME] te está ofreciendo amistad.
[NAME_SLURL] te está ofreciendo amistad.
[MESSAGE]
@@ -3976,7 +4058,6 @@ Por favor, reinténtalo en unos momentos.
<button name="Accept" text="Aceptar"/>
<button name="Decline" text="Rehusar"/>
<button name="Ignore" text="Ignorar"/>
<button name="Profile" text="Perfil"/>
</form>
</notification>
@@ -3985,14 +4066,13 @@ Por favor, reinténtalo en unos momentos.
</notification>
<notification name="OfferFriendshipNoMessage">
[NAME] te está ofreciendo amistad.
[NAME_SLURL] te está ofreciendo amistad.
(Por defecto, podrás ver si están conectados los demás).
<form name="form">
<button name="Accept" text="Aceptar"/>
<button name="Decline" text="Rehusar"/>
<button name="Ignore" text="Ignorar"/>
<button name="Profile" text="Perfil"/>
</form>
</notification>
@@ -4004,6 +4084,14 @@ Por favor, reinténtalo en unos momentos.
[NAME] ha rehusado tu oferta de amistad.
</notification>
<notification name="FriendshipAcceptedByMe">
Aceptado el ofrecimiento de amistad de [NAME_SLURL]. [MESSAGE]
</notification>
<notification name="FriendshipDeclinedByMe">
Rehusado el ofrecimiento de amistad de [NAME_SLURL]. [MESSAGE]
</notification>
<notification name="FriendshipDissolved">
[NAME] ha disuelto la amistad.
</notification>
@@ -4064,13 +4152,94 @@ Del objeto: [OBJECTNAME]; propiedad de: [NAME]?
</form>
</notification>
<notification name="ExperienceAcquireFailed">
No se puede adquirir una experiencia nueva:
[ERROR_MESSAGE]
<usetemplate name="okbutton" yestext="OK"/>
</notification>
<notification name="NotInGroupExperienceProfileMessage">
Se ha motido un cambio en el grupo de la experiencia porque el propietario no es miembro del grupo seleccionado.
</notification>
<notification name="UneditableExperienceProfileMessage">
El campo no modificable '[field]' se ha omitido al actualizar el perfil de la experiencia.
</notification>
<notification name="RestrictedToOwnerExperienceProfileMessage">
Cambios omitidos en el campo '[field]' que solo puede configurar el propietario de la experiencia.
</notification>
<notification name="MaturityRatingExceedsOwnerExperienceProfileMessage">
No puedes definir una calificación de contenido de una experiencia con un nivel superior al del propietario.
</notification>
<notification name="RestrictedTermExperienceProfileMessage">
Las condiciones siguientes han impedido la actualización del nombre o la descripción del perfil de la experiencia: [extra_info]
</notification>
<notification name="TeleportedHomeExperienceRemoved">
Has sido teleportado desde la región [region_name] porque al quitar la experiencia secondlife:///app/experience/[public_id]/profile ya no tienes permiso para entrar en la región.
<form name="form">
<ignore name="ignore" text="Expulsado de la región por quitar una experiencia"/>
</form>
</notification>
<notification name="TrustedExperienceEntry">
La participación en la experiencia clave secondlife:///app/experience/[public_id]/profile te otorga permiso para entrar en la región [region_name]. Si quitas esta experiencia, puede que seas expulsado de la región.
<form name="form">
<ignore name="ignore" text="Admitido en una región por una experiencia"/>
</form>
</notification>
<notification name="TrustedExperiencesAvailable">
No tienes permiso de acceso a este destino. Puedes obtener permiso para entrar en la región si aceptas una de las siguientes experiencias:
[EXPERIENCE_LIST]
Pueden estar disponibles otras experiencias clave.
</notification>
<notification name="ExperienceEvent">
La experiencia secondlife:///app/experience/[public_id]/profile permitió un objeto[EventType].
Propietario:secondlife:///app/agent/[OwnerID]/inspect
Nombre del objeto: [ObjectName]
Nombre de la parcela: [ParcelName]
</notification>
<notification name="ExperienceEventAttachment">
La experiencia secondlife:///app/experience/[public_id]/profile permitió un anexo [EventType]-
Propietario: secondlife:///app/agent/[OwnerID]/inspect
</notification>
<notification name="ScriptQuestionExperience">
&apos;[OBJECTNAME]&apos;, un objeto de propiedad de &apos;[NAME]&apos;, solicita tu participación en la
experiencia[GRID_WIDE]:
[EXPERIENCE]
Una vez concedido el permiso, este mensaje no volverá a aparecer para la experiencia salvo que se revoque en el perfil de la experiencia.
Los scripts asociados a esta experiencia podrán hacer lo siguiente en las regiones donde la experiencia esté activa:
[QUESTIONS]
¿lLo aceptas?
<form name="form">
<button name="BlockExperience" text="Bloquear experiencia"/>
<button name="Mute" text="Bloquear objeto"/>
<button name="Yes" text="Si"/>
<button name="No" text="No"/>
</form>
</notification>
<notification name="ScriptQuestionCaution">
&apos;[OBJECTNAME]&apos;, un objeto propiedad de &apos;[NAME]&apos;, querría:
Atención: El objeto &apos;[OBJECTNAME]&apos;, solicita un acceso pleno a tu cuenta de dólares Linden. Si le
autorizas el acceso, podrá retirar fondos de tu cuenta en cualquier momento o vaciarla por completo, cuando lo desee y sin más advertencias.
[QUESTIONS]
Si no confías en este objeto y su creador, debes denegar la solicitud. Para más información, pulsa el botón Detalles.
[FOOTERTEXT]
No autorices el acceso a tu cuenta si no conoces cuál es la razón exacta.
¿Autorizar esta petición?
<form name="form">
<button name="Grant" text="Autorizar"/>
<button name="Deny" text="Denegar"/>
@@ -4079,9 +4248,10 @@ Si no confías en este objeto y su creador, debes denegar la solicitud. Para má
</notification>
<notification name="ScriptDialog">
&apos;[TITLE]&apos; de [NAME]
[MESSAGE]
&apos;[TITLE]&apos; de [NAME] (ch[CHANNEL])
[MESSAGE]
<form name="form">
<button name="Mute" text="Bloquear"/>
<button name="Ignore" text="Ignorar"/>
</form>
</notification>
@@ -4090,6 +4260,7 @@ Si no confías en este objeto y su creador, debes denegar la solicitud. Para má
&apos;[TITLE]&apos; de [GROUPNAME]
[MESSAGE]
<form name="form">
<button name="Mute" text="Bloquear"/>
<button name="Ignore" text="Ignorar"/>
</form>
</notification>
@@ -4481,7 +4652,7 @@ Avatar '[NAME]' ha abandonado la edición de su Apariencia.
<notification name="NoConnect">
Tenemos problemas de conexión con [PROTOCOL] [HOSTID].
Comprueba la configuración de la red y del servidor de seguridad.
<usetemplate name="okbutton" yestext="OK"/>
<usetemplate name="okbutton" yestext="Aceptar"/>
</notification>
<notification name="NoVoiceConnect">
@@ -4531,62 +4702,62 @@ No se puede aplicar esta textura en forma inmediata ya que es no copiable y/o no
<notification name="SOCKS_NOT_PERMITTED">
El Proxy Socks5 "[HOST]:[PORT]" rechazó la conexión, no permitido por el conjunto de reglas.
<usetemplate name="okbutton" yestext="OK"/>
<usetemplate name="okbutton" yestext="Aceptar"/>
</notification>
<notification name="SOCKS_CONNECT_ERROR">
El Proxy Socks5 "[HOST]:[PORT]" rechazó la conexión, no se puede abrir el canal TCP
<usetemplate name="okbutton" yestext="OK"/>
<usetemplate name="okbutton" yestext="Aceptar"/>
</notification>
<notification name="SOCKS_NOT_ACCEPTABLE">
El Proxy Socks5 "[HOST]:[PORT]" rechazó el sistema de autenticación seleccionado.
<usetemplate name="okbutton" yestext="OK"/>
<usetemplate name="okbutton" yestext="Aceptar"/>
</notification>
<notification name="SOCKS_AUTH_FAIL">
El Proxy Socks5 [HOST]:[PORT]" ha reportado que tus credenciales son inválidas
<usetemplate name="okbutton" yestext="OK"/>
<usetemplate name="okbutton" yestext="Aceptar"/>
</notification>
<notification name="SOCKS_UDP_FWD_NOT_GRANTED">
El Proxy Socks5 "[HOST]:[PORT]" rechazó el requerimiento UDP
<usetemplate name="okbutton" yestext="OK"/>
<usetemplate name="okbutton" yestext="Aceptar"/>
</notification>
<notification name="SOCKS_HOST_CONNECT_FAILED">
No se puede conectar al Servidor proxy SOCKS5 "[HOST]:[PORT]"
<usetemplate name="okbutton" yestext="OK"/>
<usetemplate name="okbutton" yestext="Aceptar"/>
</notification>
<notification name="SOCKS_UNKNOWN_STATUS">
Error de proxy desconocido con el servidor "[HOST]:[PORT]".
<usetemplate name="okbutton" yestext="OK"/>
<usetemplate name="okbutton" yestext="Aceptar"/>
</notification>
<notification name="SOCKS_INVALID_HOST">
Dirección o puerto de proxy SOCKS no válidos "[HOST]:[PORT]".
<usetemplate name="okbutton" yestext="OK"/>
<usetemplate name="okbutton" yestext="Aceptar"/>
</notification>
<notification name="SOCKS_BAD_CREDS">
Nombre de usuario o contraseña de SOCKS 5 no válidos.
<usetemplate name="okbutton" yestext="OK"/>
<usetemplate name="okbutton" yestext="Aceptar"/>
</notification>
<notification name="PROXY_INVALID_HTTP_HOST">
Dirección o puerto de proxy HTTP no válidos "[HOST]:[PORT]".
<usetemplate name="okbutton" yestext="OK"/>
<usetemplate name="okbutton" yestext="Aceptar"/>
</notification>
<notification name="PROXY_INVALID_SOCKS_HOST">
Dirección o puerto de proxy SOCKS no válidos "[HOST]:[PORT]".
<usetemplate name="okbutton" yestext="OK"/>
<usetemplate name="okbutton" yestext="Aceptar"/>
</notification>
<notification name="ChangeProxySettings">
La configuración del puerto se activará cuando reinicies [APP_NAME]
<usetemplate name="okbutton" yestext="OK"/>
<usetemplate name="okbutton" yestext="Aceptar"/>
</notification>
<notification name="AuthRequest">
@@ -4656,7 +4827,7 @@ No se puede aplicar esta textura en forma inmediata ya que es no copiable y/o no
<notification name="ConfirmHideUI" label="">
Esta acción ocultará todos los botones y elementos de menú. Para restaurarlos, pulsa otra vez en [SHORTCUT].
<usetemplate name="okcancelignore" yestext="OK" notext="Cancelar" ignoretext="Confirmar antes de ocultar la IU"/>
<usetemplate name="okcancelignore" yestext="Aceptar" notext="Cancelar" ignoretext="Confirmar antes de ocultar la IU"/>
</notification>
<notification name="PathfindingLinksets_WarnOnPhantom">
@@ -5833,17 +6004,17 @@ porque la parcela está llena.
<notification name="PreferenceChatClearLog">
Esto eliminará los registros de conversaciones anteriores y las copias de seguridad de ese archivo.
<usetemplate ignoretext="Confirmar antes de eliminar el registro de conversaciones anteriores." name="okcancelignore" notext="Cancelar" yestext="OK"/>
<usetemplate ignoretext="Confirmar antes de eliminar el registro de conversaciones anteriores." name="okcancelignore" notext="Cancelar" yestext="Aceptar"/>
</notification>
<notification name="PreferenceChatDeleteTranscripts">
Esta acción eliminará las transcripciones de todas las conversaciones anteriores. La lista de conversaciones pasadas no resultará afectada. Se eliminarán de la carpeta [FOLDER] todos los archivos que tengan el sufijo .txt y txt.backup
<usetemplate ignoretext="Confirmar antes de eliminar transcripciones." name="okcancelignore" notext="Cancelar" yestext="OK"/>
<usetemplate ignoretext="Confirmar antes de eliminar transcripciones." name="okcancelignore" notext="Cancelar" yestext="Aceptar"/>
</notification>
<notification name="PreferenceChatPathChanged">
No se pueden mover los archivos. Ruta anterior restaurada.
<usetemplate ignoretext="No se pueden mover los archivos. Ruta anterior restaurada." name="okignore" yestext="OK"/>
<usetemplate ignoretext="No se pueden mover los archivos. Ruta anterior restaurada." name="okignore" yestext="Aceptar"/>
</notification>
<notification name="DefaultObjectPermissions">
@@ -5903,7 +6074,7 @@ la región [REGION]?
</notification>
<notification name="AntiSpamNewlineFlood">
AntiSpam: Se ha bloqueado newline flood de [SOURCE] ( [AMOUNT] newlines).
AntiSpam: Se ha bloqueado newline flood de secondlife:///app/agent/[SOURCE]/about ( [AMOUNT] newlines).
</notification>
<notification name="BulkTemporaryUpload">
@@ -6097,36 +6268,33 @@ Tu cuerpo, piel, pelo u ojos podrían ser los predeterminados
</notification>
<notification label="Actualización Disponible" name="RecommendedUpdate">
Una nueva versión, [RECOMMENDED_VER], para Singularity[TYPE], está disponible.
Una nueva versión, [RECOMMENDED_VER], para [SHORT_APP_NAME].
Pulsa [Visit Page] para abrir
[URL]
para mayor información y enlaces de descarga para esta nueva versión.
<tag>confirm</tag>
<usetemplate name="okcancelignorecanceldefault" notext="Luego" yestext="Visitar Página" ignoretext="Ignorar notificaciones de actualizaciones recomendadas"/>
</notification>
<notification label="¡Actualización Crítical!" name="UrgentUpdate">
¡Tu versión de Singularity[TYPE] se encuentra críticamente desactualizada!
¡Tu versión de [SHORT_APP_NAME] se encuentra críticamente desactualizada!
Se recomienda ENÉRGICAMENTE descargues e instales una nueva versión de este visor para evitar problemas de compatibilidad con el grid y/o de seguridad.
Pulsa [Visit Page] para abrir
[URL]
para mayor información y enlaces de descarga de nuevas versiones.
<tag>confirm</tag>
<usetemplate name="okcancelignorecanceldefault" notext="Luego" yestext="Visitar Página" ignoretext="Ignorar notificaciones de Actualizaciones Críticas"/>
</notification>
<notification label="¡Actualización Crítica" name="UrgentUpdateModal">
¡Tu versión de Singularity[TYPE] se encuentra críticamente desactualizada!
¡Tu versión de [SHORT_APP_NAME] se encuentra críticamente desactualizada!
Se recomienda ENÉRGICAMENTE descargues e instales una nueva versión de este visor para evitar problemas de compatibilidad con el grid y/o de seguridad.
Pulsa [Visit Page] para abrir
[URL]
para mayor información y enlaces de descarga de nuevas versiones.
<tag>confirm</tag>
<usetemplate name="okcancelignorecanceldefault" notext="Luego" yestext="Visitar Página" ignoretext="Ignorar alertas de actualizaciones críticas"/>
</notification>

View File

@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<panel name="ao_remote">
<panel name="panel_bg_tab"/>
<button label="AO Sits Off" label_selected="AO Sits On" name="ao_sit_btn"/>
<panel name="panel_bg_tab"/>
<button label="Forzar nadar" tool_tip="Las animaciones de vuelvo serán reemplazadas por animaciones de nado" name="ao_swim_btn"/>
<button label="Sentarse Off" label_selected="Sentarse On" name="ao_sit_btn"/>
<panel name="panel_ao_controls"/>
</panel>

View File

@@ -0,0 +1,46 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<panel name="panel_experience_info">
<text name="title" value="Perfil de la Experiencia"/>
<panel name="scrolling_panel">
<layout_stack>
<layout_panel name="image_panel"/>
<layout_panel>
<text name="experience_title"value="Kyle's Superhero RPG"/>
</layout_panel>
<layout_panel name="description panel"/>
<layout_panel name="location panel">
<text name="Location">
Ubicación:
</text>
<text name="LocationTextText">
Algún lugar
</text>
<button label="Teleporte" name="teleport_btn"/>
<button label="Mapa" name="map_btn"/>
</layout_panel>
<layout_panel name="marketplace panel">
<text name="Location">
Tienda del mercado:
</text>
<text name="LocationTextText">
algún lugar
</text>
</layout_panel>
<layout_panel >
<text name="ContentRating">
Calificación:
</text>
<text name="ContentRatingText">
Adulto
</text>
<text name="Owner">
Propietario:
</text>
<text name="OwnerText">
Kyle
</text>
</layout_panel>
</layout_stack>
</panel>
</scroll_container>
</panel>

View File

@@ -0,0 +1,28 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<panel>
<panel.string name="loading">
cargando...
</panel.string>
<panel.string name="panel_allowed">
Experiencias Permitidas:
</panel.string>
<panel.string name="panel_blocked">
Experiencias bloqueadas:
</panel.string>
<panel.string name="panel_trusted">
Experiencias clave:
</panel.string>
<panel.string name="no_results">
(vacio)
</panel.string>
<text name="text_name">
Lista de experiencias
</text>
<name_list name="experience_list">
<columns name="experience_name" label="Nombre"/>
</name_list>
<button name="btn_add" label="Añadir..."/>
<button name="btn_remove" label="Eliminar"/>
<button name="btn_profile" label="Perfil..."/>
</panel>

View File

@@ -0,0 +1,26 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<panel label="Eventos">
<string name="no_events" value="No hay eventos."/>
<string name="loading" value="cargando..."/>
<layout_stack name="experience_panel">
<layout_panel name="event_panel">
<scroll_list name="experience_log_list">
<columns name="time" label="Hora"/>
<columns name="event" label="Evento"/>
<columns name="experience_name" label="Experiencia"/>
<columns name="object_name" label="Objeto"/>
</scroll_list>
<button name="btn_notify" label="Notificar"/>
<button name="btn_profile_xp" label="Perfil"/>
<button name="btn_report_xp" label="Denunciar"/>
</layout_panel>
<layout_panel name="button_panel">
<check_box label="Notificar todos los eventos Días" name="notify_all" width="180"/>
<spinner left_delta="195" name="logsizespinner"/>
<button name="btn_clear" label="Limpiar"/>
<button name="btn_prev" label="" image_overlay="arrow_left.tga"/>
<button name="btn_next" label="" image_overlay="arrow_right.tga"/>
</layout_panel>
</layout_stack>
</panel>

View File

@@ -0,0 +1,38 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<panel name="panel_experiences_search" label="Buscar">
<string name="not_found">
&apos;[TEXT]&apos; no encontrado
</string>
<string name="no_results">
No hay resultados
</string>
<string name="searching">
Buscando...
</string>
<string name="loading">
Cargando...
</string>
<panel name="search_panel">
<text name="search_text">
Ingresa una parte del nombre:
</text>
<button label="Ir" name="find"/>
<text name="content_text">
Calificación de contenido Máxima:
</text>
<combo_box label="Moderado" name="maturity" width="120">
<combo_box.item label="Adulto" name="Adult"/>
<combo_box.item label="Moderado" name="Mature"/>
<combo_box.item label="General" name="PG"/>
</combo_box>
<scroll_list name="search_results">
<columns name="maturity" label=""/>
<columns name="experience_name" label="Nombre"/>
<columns name="owner" label="Propietario"/>
</scroll_list>
<button label="Aceptar" label_selected="Aceptar" name="ok_btn"/>
<button label="Cancelar" name="cancel_btn"/>
<button label="Ver Pefil" name="profile_btn"/>
</panel>
</panel>

View File

@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<panel label="Experiences">
<string name="loading_experiences" value="Cargando experiencias..."/>
<string name="no_experiences" value="No hay experiencias."/>
<string name="acquire" value="Adquirir una Experiencia"/>
</panel>

View File

@@ -6,13 +6,6 @@
<string name="want_apply_text">
¿Deseas aplicar estos cambios?
</string>
<tab_container name="group_tab_container">
<panel name="general_tab" />
<panel name="roles_tab" />
<panel name="notices_tab" />
<panel name="voting_tab" />
<panel name="land_money_tab" />
</tab_container>
<button label="Aplicar" label_selected="Aplicar" name="btn_apply"/>
<button label="Cancelar" label_selected="Cancelar" name="btn_cancel"/>
<button label="OK" label_selected="OK" name="btn_ok"/>

View File

@@ -0,0 +1,4 @@
<panel name="experiences_tab" label="Experiencias">
<string name="help_text">Las experiencias asociadas al grupo se listan aqu<71> en el caso de haber alguna.</string>
<text name="panel_header">Experiencias del grupo</text>
</panel>

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<panel label="Miembros y Roles" name="roles_tab">
<panel label="Miembros" name="roles_tab">
<string name="default_needs_apply_text">
En cambios sin aplicar en esta pestaña.
</string>

View File

@@ -72,51 +72,58 @@
<check_box label="Usar botones horizontales para la ventana de contactos (Requiere Reiniciar)" tool_tip="Habilitado, los botones en los paneles de Amigos y Grupos se colocarán en la parte inferior del panel, ordendados horizontalmente, en vez de verticales a la derecha." name="horiz_butt"/>
<text name="namesystems_text_box">Formato de nombres en las listas de:</text>
<text name="chat_tabs_namesystem_text_box">Pestañas de Chat:</text>
<combo_box name="chat_tabs_namesystem_combobox" width="230">
<combo_item name="Old Names">Nombres Antiguos</combo_item>
<combo_item name="Display Names (with Username)">Nombre a Mostrar (c/Nombre de Usuario)</combo_item>
<combo_item name="Display Names only">Solamente Nombre a Mostrar</combo_item>
<combo_item name="Old Names (with Display Names)">Nombres Antiguos (c/Nombre a Mostrar)</combo_item>
</combo_box>
<combo_box name="chat_tabs_namesystem_combobox" width="250">
<combo_item name="Old Names">Nombres Antiguos</combo_item>
<combo_item name="Display Names (with Username)">Nombre a Mostrar (c/Nombre de Usuario)</combo_item>
<combo_item name="Display Names only">Solamente Nombre a Mostrar</combo_item>
<combo_item name="Old Names (with Display Names)">Nombres Antiguos (c/Nombre a Mostrar)</combo_item>
</combo_box>
<text name="friends_namesystem_text_box">Amigos:</text>
<combo_box name="friends_namesystem_combobox" width="230">
<combo_item name="Old Names">Nombres Antiguos</combo_item>
<combo_item name="Display Names (with Username)">Nombre a Mostrar (c/Nombre de Usuario)</combo_item>
<combo_item name="Display Names only">Solamente Nombre a Mostrar</combo_item>
<combo_item name="Old Names (with Display Names)">Nombres Antiguos (c/Nombre a Mostrar)</combo_item>
</combo_box>
<combo_box name="friends_namesystem_combobox" width="250">
<combo_item name="Old Names">Nombres Antiguos</combo_item>
<combo_item name="Display Names (with Username)">Nombre a Mostrar (c/Nombre de Usuario)</combo_item>
<combo_item name="Display Names only">Solamente Nombre a Mostrar</combo_item>
<combo_item name="Old Names (with Display Names)">Nombres Antiguos (c/Nombre a Mostrar)</combo_item>
</combo_box>
<text name="group_members_namesystem_text_box">Miembros de Grupos:</text>
<combo_box name="group_members_namesystem_combobox" width="230">
<combo_item name="Old Names">Nombres Antiguos</combo_item>
<combo_item name="Display Names (with Username)">Nombre a Mostrar (c/Nombre de Usuario)</combo_item>
<combo_item name="Display Names only">Solamente Nombre a Mostrar</combo_item>
<combo_item name="Old Names (with Display Names)">Nombres Antiguos (c/Nombre a Mostrar)</combo_item>
</combo_box>
<combo_box name="group_members_namesystem_combobox" width="250">
<combo_item name="Old Names">Nombres Antiguos</combo_item>
<combo_item name="Display Names (with Username)">Nombre a Mostrar (c/Nombre de Usuario)</combo_item>
<combo_item name="Display Names only">Solamente Nombre a Mostrar</combo_item>
<combo_item name="Old Names (with Display Names)">Nombres Antiguos (c/Nombre a Mostrar)</combo_item>
</combo_box>
<text name="land_management_namesystem_text_box">Administradores de Tierras:</text>
<combo_box name="land_management_namesystem_combobox" width="230">
<combo_item name="Old Names">Nombres Antiguos</combo_item>
<combo_item name="Display Names (with Username)">Nombre a Mostrar (c/Nombre de Usuario)</combo_item>
<combo_item name="Display Names only">Solamente Nombre a Mostrar</combo_item>
<combo_item name="Old Names (with Display Names)">Nombres Antiguos (c/Nombre a Mostrar)</combo_item>
</combo_box>
<combo_box name="land_management_namesystem_combobox" width="250">
<combo_item name="Old Names">Nombres Antiguos</combo_item>
<combo_item name="Display Names (with Username)">Nombre a Mostrar (c/Nombre de Usuario)</combo_item>
<combo_item name="Display Names only">Solamente Nombre a Mostrar</combo_item>
<combo_item name="Old Names (with Display Names)">Nombres Antiguos (c/Nombre a Mostrar)</combo_item>
</combo_box>
<text name="profile_namesystem_text_box">Perfiles:</text>
<combo_box name="profile_namesystem_combobox" width="250">
<combo_item name="Old Names">Nombres Antiguos</combo_item>
<combo_item name="Display Names (with Username)">Nombre a Mostrar (c/Nombre de Usuario)</combo_item>
<combo_item name="Display Names only">Solamente Nombre a Mostrar</combo_item>
<combo_item name="Old Names (with Display Names)">Nombres Antiguos (c/Nombre a Mostrar)</combo_item>
</combo_box>
<text name="radar_namesystem_text_box">Radar:</text>
<combo_box name="radar_namesystem_combobox" width="230">
<combo_item name="Old Names">Nombres Antiguos</combo_item>
<combo_item name="Display Names (with Username)">Nombre a Mostrar (c/Nombre de Usuario)</combo_item>
<combo_item name="Display Names only">Solamente Nombre a Mostrar</combo_item>
<combo_item name="Old Names (with Display Names)">Nombres Antiguos (c/Nombre a Mostrar)</combo_item>
</combo_box>
<combo_box name="radar_namesystem_combobox" width="250">
<combo_item name="Old Names">Nombres Antiguos</combo_item>
<combo_item name="Display Names (with Username)">Nombre a Mostrar (c/Nombre de Usuario)</combo_item>
<combo_item name="Display Names only">Solamente Nombre a Mostrar</combo_item>
<combo_item name="Old Names (with Display Names)">Nombres Antiguos (c/Nombre a Mostrar)</combo_item>
</combo_box>
<text name="speaker_namesystem_text_box">Participantes:</text>
<combo_box name="speaker_namesystem_combobox" width="230">
<combo_item name="Old Names">Nombres Antiguos</combo_item>
<combo_item name="Display Names (with Username)">Nombre a Mostrar (c/Nombre de Usuario)</combo_item>
<combo_item name="Display Names only">Solamente Nombre a Mostrar</combo_item>
<combo_item name="Old Names (with Display Names)">Nombres Antiguos (c/Nombre a Mostrar)</combo_item>
</combo_box>
<combo_box name="speaker_namesystem_combobox" width="250">
<combo_item name="Old Names">Nombres Antiguos</combo_item>
<combo_item name="Display Names (with Username)">Nombre a Mostrar (c/Nombre de Usuario)</combo_item>
<combo_item name="Display Names only">Solamente Nombre a Mostrar</combo_item>
<combo_item name="Old Names (with Display Names)">Nombres Antiguos (c/Nombre a Mostrar)</combo_item>
</combo_box>
<check_box label="Colocar los Botones en la misma línea del nombre en los IMs (Sólo afecta en Nuevos MIs)" name="im_concise_butt"/>
<check_box label="Botones en chat de grupo en la línea del nombre del grupo (Afecta nuevos chats de grupo)" name="group_concise_butt"/>
<check_box label="Botones en la misma línea de título de conferencia (Afecta nuevas conferencias de Chat)" name="conf_concise_butt"/>
<check_box label="Botón Historial abre editor externo" name="legacy_log_launch"/>
<check_box label="Botón Historial abre editor externo" name="legacy_log_launch"/>
<check_box label="Deshabilitar apertura atajo de Comunicación fuera de la lista de amigos" name="only_comm"/>
<check_box label="Desplazamiento automático al final de chats cuando recuperan el foco" name="scroll_to_end_on_focus"/>
<check_box label="Mensajes de acción en Itálica (/me)" name="italicize_actions"/>

View File

@@ -20,7 +20,7 @@
Siempre
</combo_item>
</combo_box>
<combo_box name="namesystem_combobox">
<combo_box name="namesystem_combobox" width="166">
<combo_item name="Old Names">
Nombres Antiguos
</combo_item>
@@ -55,7 +55,7 @@
<text name="maturity_desired_prompt">
Quiero acceder a contenido
</text>
<combo_box name="maturity_desired_combobox">
<combo_box name="maturity_desired_combobox" width="145">
<combo_item name="Desired_Adult">
PG, Moderado y Adulto
</combo_item>

View File

@@ -4,6 +4,7 @@
<check_box label="Sólo mis amigos y mis grupos pueden ver cuando estoy en línea" name="online_visibility" left="138"/>
<text name="text_box2">Opciones de MI:</text>
<string name="log_in_to_change">Iniciar sesión para cambiar</string>
<string name="email_unverified_tooltip">Por favor verifica tu cuenta de email para habilitar el envío de IM a tu email. Puedes hacer esto en la página web del grid.</string>
<check_box label="Enviar MI al Email ([EMAIL])" name="send_im_to_email" left="138"/>
<check_box label="Incluir MI en la consola de Chat" name="include_im_in_chat_console" left="138"/>
<check_box label="Mostrar horario en los IMI" name="show_timestamps_check" left="138"/>

View File

@@ -0,0 +1,51 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<panel label="Experiencias" name="Experiences">
<panel.string name="trusted_estate_text">
Cualquier experiencia puede ser clave.
Las experiencias clave tienen permiso
de ejecución en este estado.
Además, si el estado no admite el
acceso público, los residentes que
participen en una experiencia clave
pueden entrar en el estado y
permanecer en él mientras se
encuentren en dicha experiencia.
</panel.string>
<panel.string name="allowed_estate_text">
Solo se permiten las experiencias
activas en el terreno.
Las experiencias permitidas
tienen permiso de ejecución
en este estado.
</panel.string>
<panel.string name="blocked_estate_text">
Solo pueden bloquearse las
experiencias activas en el Grid.
Las experiencias bloqueadas no
pueden ejecutarse en
este estado.
</panel.string>
<panel.string name="estate_caption">
Los cambios de configuración en esta pestaña afectarán a todas las regiones del estado.
</panel.string>
<panel.string name="allowed_parcel_text">
Solo se permiten las experiencias
activas en el terreno.
Las experiencias permitidas tienen
permiso de ejecución en esta parcela
si no las ha bloqueado el estado.
</panel.string>
<panel.string name="blocked_parcel_text">
Puede bloquearse cualquier
experiencia de los residentes.
Puede que las experiencias
bloqueadas no se ejecuten
en esta parcela.
</panel.string>
</panel>

View File

@@ -0,0 +1,35 @@
<panel name="script_experience" title="Experiencia">
<!-- <floater.string name="EXPERIENCE">EXPERIENCE!!!!</floater.string>
<floater.string name="Script:">Script:</floater.string>
<floater.string name="Associated with:">Associated with:</floater.string>
<floater.string name="You can contribute:">You can contribute:</floater.string>
<floater.string name="Associate with:">Associate with:</floater.string>
<floater.string name="Yes">Yes</floater.string>
<floater.string name="No">No</floater.string>
<floater.string name="(none)"></floater.string>
<floater.string name="Choose Experience...">Choose Experience...</floater.string>
<floater.string name="You are not a contributor to any experiences.">You are not a contributor to any experiences.</floater.string>
-->
<button name="Expand Experience" label="Experiencia"/>
<check_box label="Usar Experiencia"name="enable_xp"/>
<layout_stack name="xp_details">
<layout_panel>
<text >Script:</text>
<text>Asociado con:</text>
<text>Puedes contribuir:</text>
<text>Asociado con:</text>
</layout_panel>
<layout_panel>
<text>EasySit Animator 1.2.4</text>
<text>Kyle's Superhero RPG</text>
<text>Si</text>
<combo_boxlabel="Seleccionar Experiencia..." name="Experiences..."/>
</layout_panel>
</layout_stack>
<text name="No Experiences">
No contribuyes en ninguna experiencia.
</text>
</panel>

View File

@@ -5,17 +5,13 @@
</string>
<string name="IMs">[COUNT] MIs</string>
<string name="IM">1 MI</string>
<panel bottom="0" filename="panel_bg_toolbar.xml" height="28" left="0" width="1024"/>
<layout_stack name="toolbar_stack">
<layout_panel name="panel1"/>
<layout_panel name="panel2" >
<button label="" name="chat_btn" tool_tip="Mostrar Barra de Chat. (Intro)"/>
</layout_panel>
<layout_panel name="panel3"/>
<layout_panel name="panel4">
<flyout_button label="Comunicación" name="communicate_btn" tool_tip="Comunícate con tus amigos o grupos.(Ctrl-T)" />
<flyout_button label="Comunicación" name="communicate_btn" tool_tip="Comunícate con tus amigos y grupos.(Ctrl-T)" />
</layout_panel>
<layout_panel name="panel5"/>
<layout_panel name="panelim">
<button label="Comunicación" name="communicate_im_btn" tool_tip="Comunícate con tus amigos o grupos.(Ctrl-T)"/>
</layout_panel>
@@ -38,7 +34,7 @@
<button label="Ignorados" name="mute_list_btn"/>
</layout_panel>
<layout_panel name="panelassetblacklist">
<button label="Lista Negra Asset" name="assetblack_list_btn"/>
<button label="Lista Negra" name="assetblack_list_btn"/>
</layout_panel>
<layout_panel name="panelvoiceeffect">
<button label="Efectos de Voz" name="voice_effects_btn"/>
@@ -65,13 +61,13 @@
<button label="Vista Subjetiva" name="mouselook_btn"/>
</layout_panel>
<layout_panel name="panel7">
<button label="Volar" label_selected="Stop Flying" name="fly_btn" tool_tip="Despegar(F o Inicio). Usa E/C o AvPág/RePág para ascender o descender"/>
<button label="Volar" label_selected="No volar" name="fly_btn" tool_tip="Despegar(F o Inicio). Usa E/C o AvPág/RePág para ascender o descender"/>
</layout_panel>
<layout_panel name="panelsit">
<button label="Sentarse" label_selected="Pararse" name="sit_btn"/>
</layout_panel>
<layout_panel name="panelrun">
<button label="Correr" label_selected="Dejar de Correr" name="run_btn" tool_tip="Activar modo Correr (Ctrl-R)"/>
<button label="Correr" label_selected="No Correr" name="run_btn" tool_tip="Activar modo Correr (Ctrl-R)"/>
</layout_panel>
<layout_panel name="panelvelocity">
<button label="Velocidad" name="run_btn"/>
@@ -91,6 +87,9 @@
<layout_panel name="panelappearance">
<button label="Apariencia" name="appearance_btn"/>
</layout_panel>
<layout_panel name="panelexperiences">
<button label="Experiencias" name="experiences_btn"/>
</layout_panel>
<layout_panel name="panel9">
<button label="Buscar" name="directory_btn" tool_tip="Buscar lugares, eventos, personas, y más.(Ctrl-F)"/>
</layout_panel>
@@ -178,6 +177,9 @@
<layout_panel name="panelteleporthistory">
<button label="Historial de TP" name="teleport_history_btn"/>
</layout_panel>
<layout_panel name="paneldestinations" >
<button label="Destinos" name="destinations_btn"/>
</layout_panel>
<layout_panel name="panel11">
<button label="Mapa" name="map_btn" tool_tip="Mapa del Mundo. (Ctrl-M)"/>
</layout_panel>
@@ -217,7 +219,7 @@
<button label="Temporizadores" name="fast_timers_btn"/>
</layout_panel>
<layout_panel name="panelframeconsole">
<button label="Consola Cuadros" name="frame_console_btn"/>
<button label="Consola Frames" name="frame_console_btn"/>
</layout_panel>
<layout_panel name="panelhttpconsole">
<button label="Consola HTTP" name="http_console_btn"/>
@@ -231,9 +233,6 @@
<layout_panel name="paneltexturesizeconsole">
<button label="Consola Tam. Texturas" name="texture_size_console_btn"/>
</layout_panel>
<layout_panel name="panel13">
<button label="Inventario" name="inventory_btn" tool_tip="Tus items. (Ctrl-I)"/>
</layout_panel>
<layout_panel name="panelavatar" >
<button label="Avatares Predeterminados" iname="avatar_btn"/>
</layout_panel>
@@ -246,6 +245,9 @@
<layout_panel name="panelfavs">
<button label="Favoritos" name="favs_btn"/>
</layout_panel>
<layout_panel name="panel13">
<button label="Inventario" name="inventory_btn" tool_tip="Tus items. (Ctrl-I)"/>
</layout_panel>
<layout_panel name="panelreceiveditems">
<button label="Ítems Recibidos" name="received_items_btn"/>
</layout_panel>
@@ -279,7 +281,7 @@
<button label="Prueba Fuentes" name="font_test_btn"/>
</layout_panel>
<layout_panel name="panelreportabuse">
<button label="Denunciar Abuso" name="abuse_btn"/>
<button label="Denunciar Infracción" name="abuse_btn"/>
</layout_panel>
<!-- Singu TODO: Re-implement f1 help.
<layout_panel name="panelhelp">

View File

@@ -5,7 +5,7 @@
name="Membership">
<action
description="Invitar Personas al Grupo"
longdescription="Invitar personas al grupo usando el botón &apos;Invitar a un nuevo miembro&apos; en Miembros y Roles &gt; subpestaña Miembros."
longdescription="Invitar personas al grupo usando el botón &apos;Invitar&apos; en Miembros y Roles &gt; subpestaña Miembros."
name="member invite"/>
<action
description="Expulsar a miembros del grupo"
@@ -34,19 +34,19 @@
name="role properties"/>
<action
description="Designar miembros para el rol de Asignador"
longdescription="Designar miembros para un rol en la sección Roles asignados de la pestaña Miembros y Roles &gt; subpestaña Miembros. Un miembro con este poder sólo puede asignar a otros el rol que él posee."
longdescription="Designar miembros para un rol en la lista de Roles asignados de la pestaña Miembros y Roles &gt; subpestaña Miembros. Un miembro con este poder sólo puede asignar a otros el rol que él posee."
name="role assign member limited"/>
<action
description="Designar miembros para cualquier Rol"
longdescription="Designar miembros para cualquier rol en la sección Roles asignados de la pestaña Miembros y Roles &gt; subpestaña Miembros. *AVISO* Todos los miembros con esta capacidad podrán asignarse a sí mismos (y a otros miembros) roles con mayores poderes de los que actualmente tienen. Potencialmente, podrían elevarse hasta poderes cercanos a los del propietario. Asegúrate de lo que estás haciendo antes de otorgar esta capacidad."
longdescription="Designar miembros para cualquier rol en la lista de Roles asignados de la pestaña Miembros y Roles &gt; subpestaña Miembros. *AVISO* Todos los miembros con esta capacidad podrán asignarse a sí mismos (y a otros miembros) roles con mayores poderes de los que actualmente tienen. Potencialmente, podrían elevarse hasta poderes cercanos a los del propietario. Asegúrate de lo que estás haciendo antes de otorgar esta capacidad."
name="role assign member"/>
<action
description="Quitar miembros de los roles"
longdescription="Quitar miembros de roles en la sección Capacidades asignadas de Miembros y Roles &gt; subpestaña Roles. No se pueden quitar a los Propietarios."
longdescription="Quitar miembros de roles en la lista de Roles asignados de Miembros y Roles &gt; subpestaña Roles. No se pueden quitar a los Propietarios."
name="role remove member"/>
<action
description="Añadir o quitar capacidades a los roles"
longdescription="Añadir o quitar capacidades a los roles en la sección Capacidades asignadas de Miembros y Roles &gt; subpestaña Roles. *AVISO* Todos los miembros con esta capacidad podrán asignarse a sí mismos -y a otros miembros- roles con mayores poderes de los que actualmente tienen. Potencialmente, podrían elevarse hasta poderes cercanos a los del propietario. Asegúrate de lo que estás haciendo antes de otorgar esta capacidad."
longdescription="Añadir o quitar capacidades a los roles en la lista de Roles asignados de Miembros y Roles &gt; subpestaña Roles. *AVISO* Todos los miembros con esta capacidad podrán asignarse a sí mismos -y a otros miembros- roles con mayores poderes de los que actualmente tienen. Potencialmente, podrían elevarse hasta poderes cercanos a los del propietario. Asegúrate de lo que estás haciendo antes de otorgar esta capacidad."
name="role change actions"/>
</action_set>
<action_set
@@ -54,7 +54,7 @@
name="Group Identity">
<action
description="Cambiar la carta, emblema y &apos;Mostrar en la búsqueda&apos;"
longdescription="Cambiar la carta, emblema y &apos;Mostrar en la búsqueda&apos;, y qué miembros serán visibles en la información del grupo de la pestaña General."
longdescription="Cambiar la carta, emblema y &apos;Mostrar en la búsqueda&apos;, Esto se hace en la sección General."
name="group change identity"/>
</action_set>
<action_set
@@ -81,11 +81,11 @@
description="Estas capacidades incluyen poder cambiar el nombre de la parcela y su configuración pública, también si se muestra en la Búsqueda y las opciones del punto de llegada y el de teleporte."
name="Parcel Identity">
<action
description="Activar/Desactivar &apos;Mostrar en Búsqueda&apos; y el definir la Categoría" longdescription="Activar/Desactivar el &apos;Mostrar en Búsqueda&apos; y en que Categoría se mostrará en Acerca del terreno &gt; pestaña Opciones."
description="Activar/Desactivar &apos;Mostrar en Búsqueda&apos; y en definir la Categoría" longdescription="Activar/Desactivar el &apos;Mostrar en Búsqueda&apos; y en que Categoría se mostrará en Acerca del terreno &gt; pestaña Opciones."
name="land find places"/>
<action
description="Cambiar el nombre de la parcela, la descripción, y la configuración de &apos;Mostrar en Búsqueda&apos;"
longdescription="Cambiar el nombre y descripción de la parcela, y la configuración de &apos;Mostrar en Búsqueda&apos;. Se hace en Acerca del terreno &gt; pestaña Opciones."
description="Cambiar el nombre de la parcela, la descripción, y la configuración de &apos;Calificación de Contenido&apos;"
longdescription="Cambiar el nombre y descripción de la parcela, y la configuración de &apos;Calificación de Contenido&apos;. Se hace en Acerca del terreno &gt; pestaña Opciones."
name="land change identity"/>
<action
description="Definir los puntos de llegada y teleporte"
@@ -104,7 +104,7 @@
name="land edit"/>
<action
description="Activar/desactivar varios ítems de Acerca del terreno &gt; Opciones"
longdescription="Activar/desactivar en un terreno del grupo los ítems de Acerca del terreno &gt; pestaña Opciones: &apos;Seguro (sin daño)&apos;, &apos;Volar&apos;, y permitir a otros residentes: &apos;Crear objetos&apos;, &apos;Editar el terreno&apos;, &apos;Crear hitos&apos;, y &apos;Ejecutar scripts&apos;."
longdescription="Activar/desactivar &apos;Seguro (sin daño)&apos;, &apos;Volar&apos;, y permitir a otros residentes: &apos;Editar el terreno&apos;, &apos;Construir&apos; &apos;Crear hitos&apos;, y &apos;Ejecutar scripts&apos; en terrenos propiedad del grupo en Acerca del terreno &gt; pestaña Opciones."
name="land options"/>
</action_set>
<action_set
@@ -152,7 +152,7 @@
name="land manage passes"/>
<action
description="Expulsar y congelar residentes en las parcelas"
longdescription="Los miembros con el rol con esta capacidad pueden actuar frente a un residente indeseado en una parcela del grupo pulsando con el botón derecho sobre él, Más &gt; y seleccionando &apos;Expulsar...&apos; o &apos;Congelar...&apos;."
longdescription="Los miembros en el rol con esta capacidad pueden actuar frente a un residente indeseado en una parcela del grupo pulsando con el botón derecho sobre él, Más &gt; y seleccionando &apos;Expulsar...&apos; o &apos;Congelar...&apos;."
name="land admin"/>
</action_set>
<action_set
@@ -172,23 +172,23 @@
name="land return non group"/>
<action
description="Modificar el paisaje usando plantas Linden"
longdescription="La capacidad de modificar el paisaje permite poner y mover árboles Linden, plantas y arbustos. Estos ítems están en la &apos;s Biblioteca de tu Inventario &gt; carpeta Objetos, o pueden crearse con el botón Construir."
longdescription="La capacidad de modificar el paisaje permite poner y mover árboles Linden, plantas y arbustos. Estos ítems están en la &apos;s Biblioteca de tu Inventario &gt; carpeta Objetos, o pueden crearse desde el menú Construir."
name="land gardening"/>
</action_set>
<action_set
description="Estas capacidades incluyen poderes para transferir, modificar y vender objetos pertenecientes al grupo. Estos cambios se hacen en la pestaña General de la herramienta de edición. Para ver sus configuraciones, pulsa en un objeto con el botón derecho y elige Editar."
description="Estas capacidades incluyen poderes para transferir, modificar y vender objetos pertenecientes al grupo. Estos cambios se hacen en la pestaña General de la herramienta de construcción . Para ver sus configuraciones, pulsa en un objeto con el botón derecho y elige Editar."
name="Object Management">
<action
description="Transferir objetos al grupo"
longdescription="Transferir objetos al grupo en Editar &gt; pestaña General."
longdescription="Transferir objetos al grupo en Herramientas de construcción &gt; pestaña General."
name="object deed"/>
<action
description="Manipular (mover, copiar, y modificar) objetos del grupo"
longdescription="Manipular (mover, copiar, y modificar) objetos pertenecientes al grupo en Editar &gt; pestaña General."
longdescription="Manipular (mover, copiar, y modificar) objetos pertenecientes al grupo en Herramientas de contrucción &gt; pestaña General."
name="object manipulate"/>
<action
description="Poner a la venta objetos propiedad del grupo"
longdescription="Poner a la venta objetos pertenecientes al grupo en Editar &gt; pestaña General."
longdescription="Poner a la venta objetos pertenecientes al grupo en Herramientas de construcción &gt; pestaña General."
name="object set sale"/>
</action_set>
<action_set
@@ -226,8 +226,7 @@
<action_set
description="Estas capacidades incluyen poderes para permitir o no el aceso a las sesiones de chat del grupo y al chat de voz del mismo."
name="Chat">
<action
description="Unirse al Chat de Grupo"
<action description="Unirse al Chat de Grupo"
longdescription="Los miembros del rol con esta capacidad pueden abrir sesiones de chat del grupo, tanto de texto como de voz."
name="join group chat"/>
<action description="Unirse al Chat de Voz"
@@ -237,4 +236,13 @@
longdescription="Los miembros del rol con esta capacidad pueden controlar el acceso y las participaciones en los chats de texto y de voz del grupo."
name="moderate group chat"/>
</action_set>
<action_set description="Esta capacidad incluye el poder para modificar experiencias propiedad de este grupo."
name="experience_tools_experience">
<action description="Administrar Experiencias"
longdescription="Los miembros en el rol con esta capacidad pueden editar los metadatos de una experiencia."
name="experience admin"/>
<action description="Contribuir en Experiencias"
longdescription="Los miembros en el rol con esta capacidad pueden contribuir con scripts para una experiencia."
name="experience contributor"/>
</action_set>
</role_actions>

View File

@@ -19,18 +19,18 @@ Asegurate que has ingresado el URI de inicio de sesión correcto. Un ejemplo de
<string name="GridInfoParseError">Error de análisis XML: [XML_ERROR]</string>
<!-- Default Args - these arguments will be replaced in all strings -->
<string name="SECOND_LIFE">Second Life</string>
<string name="SECOND_LIFE_GRID">Grid Second Life</string>
<string name="SUPPORT_SITE">Portal de Soporte de Second Life</string>
<string name="CURRENCY">L$</string>
<string name="GRID_OWNER">Linden Lab</string>
<!-- starting up -->
<string name="StartupDetectingHardware">Detectando hardware...</string>
<string name="StartupLoading">Cargando [APP_NAME]...</string>
<string name="StartupClearingCache">Limpiando caché...</string>
<string name="StartupInitializingTextureCache">Inicializando Caché de Texturas...</string>
<string name="StartupInitializingTextureCache0">Borrando el caché de texturas...</string>
<string name="StartupInitializingTextureCache1">Reagrupando el volcado de pixel...</string>
<string name="StartupInitializingTextureCache2">Preparando el fundido de texturas...</string>
<string name="StartupInitializingTextureCache3">Booping snoot, texturally...</string>
<string name="StartupInitializingTextureCache4">Waking lumbering giant...</string>
<string name="StartupInitializingVFS">Inicializando VFS...</string>
<string name="StartupRequireDriverUpdate">¡Ha fallado la inicialización gráfica. Por favor, actualiza los controladores gráficos!</string>
@@ -4658,12 +4658,12 @@ Intenta entrecomillando el camino al editor.
<string name="ExperienceNameUntitled">(experiencia sin título)</string>
<string name="Land-Scope">Activa en el terreno</string>
<string name="Grid-Scope">Activa en el Grid</string>
<string name="Allowed_Experiences_Tab">PERMITIDO</string>
<string name="Blocked_Experiences_Tab">BLOQUEADO</string>
<string name="Contrib_Experiences_Tab">COLABORADOR</string>
<string name="Admin_Experiences_Tab">ADMIN.</string>
<string name="Recent_Experiences_Tab">RECIENTE</string>
<string name="Owned_Experiences_Tab">PROPIEDAD</string>
<string name="Allowed_Experiences_Tab">Permitido</string>
<string name="Blocked_Experiences_Tab">Bloqueado</string>
<string name="Contrib_Experiences_Tab">Colaborador</string>
<string name="Admin_Experiences_Tab">Administrador</string>
<string name="Recent_Experiences_Tab">Reciente</string>
<string name="Owned_Experiences_Tab">Propietario</string>
<string name="ExperiencesCounter">([EXPERIENCES], máx. [MAXEXPERIENCES])</string>
<string name="ExperiencePermission1">hacerte con tus controles</string>
<string name="ExperiencePermission3">activar animaciones en tu avatar</string>

View File

@@ -3386,11 +3386,11 @@ L'objet [OBJECTFROMNAME] appartenant à un utilisateur inconnu vous a donné un(
</notification>
<notification name="FriendshipAccepted">
[NAME_SLURL] a accepté votre amitié. [MESSAGE]
[NAME] a accepté votre amitié.
</notification>
<notification name="FriendshipDeclined">
[NAME_SLURL] a refusé votre amitié. [MESSAGE]
[NAME] a refusé votre amitié.
</notification>
<notification name="OfferCallingCard">

View File

@@ -99,6 +99,7 @@
<NotifyCautionBoxColor value="0, 0, 0, 255" /> <!-- the background color of caution permissions prompts -->
<NotifyCautionWarnColor value="169, 216, 175, 255" /> <!-- the foreground color of the special title text in caution permissions prompts -->
<GroupNotifyBoxColor value="0, 0, 0, 255" />
<GroupNotifyHeaderBGColor value="0, 0, 0, 0" />
<GroupNotifyTextColor value="169, 216, 175, 255" />
<!-- CHAT AND IM HISTORY TEXTBOX COLORS -->

View File

@@ -103,6 +103,7 @@
<NotifyCautionBoxColor value="254, 209, 118, 255" /> <!-- the background color of caution permissions prompts -->
<NotifyCautionWarnColor value="0, 0, 0, 255" /> <!-- the foreground color of the special title text in caution permissions prompts -->
<GroupNotifyBoxColor value="66, 66, 66, 255" />
<GroupNotifyHeaderBGColor value="0, 0, 0, 0" />
<GroupNotifyTextColor value="255, 255, 255, 128" />
<!-- CHAT AND IM HISTORY TEXTBOX COLORS -->

View File

@@ -99,6 +99,7 @@
<NotifyCautionBoxColor value="254, 209, 118, 255" /> <!-- the background color of caution permissions prompts -->
<NotifyCautionWarnColor value="0, 0, 0, 255" /> <!-- the foreground color of the special title text in caution permissions prompts -->
<GroupNotifyBoxColor value="189, 0, 0, 240" />
<GroupNotifyHeaderBGColor value="0, 0, 0, 0" />
<GroupNotifyTextColor value="1, 0, 0, 255" />
<!-- CHAT AND IM HISTORY TEXTBOX COLORS -->

View File

@@ -99,6 +99,7 @@
<NotifyCautionBoxColor value="254, 209, 118, 255" /> <!-- the background color of caution permissions prompts -->
<NotifyCautionWarnColor value="0, 0, 0, 255" /> <!-- the foreground color of the special title text in caution permissions prompts -->
<GroupNotifyBoxColor value="189, 0, 0, 240" />
<GroupNotifyHeaderBGColor value="0, 0, 0, 0" />
<GroupNotifyTextColor value="1, 0, 0, 255" />
<!-- CHAT AND IM HISTORY TEXTBOX COLORS -->

View File

@@ -103,6 +103,7 @@
<NotifyCautionBoxColor value="210, 210, 210, 255" /> <!-- the background color of caution permissions prompts -->
<NotifyCautionWarnColor value="210, 210, 210, 255" /> <!-- the foreground color of the special title text in caution permissions prompts -->
<GroupNotifyBoxColor value="255, 255, 255, 255" />
<GroupNotifyHeaderBGColor value="0, 0, 0, 0" />
<GroupNotifyTextColor value="0, 0, 0, 255" />
<!-- CHAT AND IM HISTORY TEXTBOX COLORS -->

View File

@@ -99,6 +99,7 @@
<NotifyCautionBoxColor value="210, 210, 210, 255" /> <!-- the background color of caution permissions prompts -->
<NotifyCautionWarnColor value="210, 210, 210, 255" /> <!-- the foreground color of the special title text in caution permissions prompts -->
<GroupNotifyBoxColor value="255, 255, 255, 255" />
<GroupNotifyHeaderBGColor value="0, 0, 0, 0" />
<GroupNotifyTextColor value="0, 0, 0, 255" />
<!-- CHAT AND IM HISTORY TEXTBOX COLORS -->

View File

@@ -103,6 +103,7 @@
<NotifyCautionBoxColor value="254, 209, 118, 255" /> <!-- the background color of caution permissions prompts -->
<NotifyCautionWarnColor value="0, 0, 0, 255" /> <!-- the foreground color of the special title text in caution permissions prompts -->
<GroupNotifyBoxColor value="70, 70, 70, 255" />
<GroupNotifyHeaderBGColor value="0, 0, 0, 0" />
<GroupNotifyTextColor value="0, 30, 60, 255" />
<!-- CHAT AND IM HISTORY TEXTBOX COLORS -->

View File

@@ -1147,13 +1147,13 @@ class LinuxManifest(ViewerManifest):
def is_packaging_viewer(self):
super(LinuxManifest, self).is_packaging_viewer()
return True # We always want a packaged viewer even without archive.
return 'package' in self.args['actions']
def do(self, *actions):
super(LinuxManifest, self).do(*actions)
if not 'package' in self.actions:
self.package_finish() # Always finish the package.
else:
self.package_finish() # Always finish the package.
if 'package' in self.actions:
# package_finish() was called by super.do() so just create the TAR.
self.create_archive()
return self.file_list