diff options
692 files changed, 15610 insertions, 6714 deletions
diff --git a/indra/llaudio/llaudioengine.cpp b/indra/llaudio/llaudioengine.cpp index a28c94d00d..ed06c85e1a 100644 --- a/indra/llaudio/llaudioengine.cpp +++ b/indra/llaudio/llaudioengine.cpp @@ -202,12 +202,12 @@ void LLAudioEngine::updateInternetStream() } // virtual -int LLAudioEngine::isInternetStreamPlaying() +LLAudioEngine::LLAudioPlayState LLAudioEngine::isInternetStreamPlaying() { if (mStreamingAudioImpl) - return mStreamingAudioImpl->isPlaying(); + return (LLAudioEngine::LLAudioPlayState) mStreamingAudioImpl->isPlaying(); - return 0; // Stopped + return LLAudioEngine::AUDIO_STOPPED; // Stopped } diff --git a/indra/llaudio/llaudioengine.h b/indra/llaudio/llaudioengine.h index 457fd93abe..d287104204 100644 --- a/indra/llaudio/llaudioengine.h +++ b/indra/llaudio/llaudioengine.h @@ -91,6 +91,15 @@ public: AUDIO_TYPE_COUNT = 4 // last }; + enum LLAudioPlayState + { + // isInternetStreamPlaying() returns an *int*, with + // 0 = stopped, 1 = playing, 2 = paused. + AUDIO_STOPPED = 0, + AUDIO_PLAYING = 1, + AUDIO_PAUSED = 2 + }; + LLAudioEngine(); virtual ~LLAudioEngine(); @@ -156,7 +165,7 @@ public: void stopInternetStream(); void pauseInternetStream(int pause); void updateInternetStream(); // expected to be called often - int isInternetStreamPlaying(); + LLAudioPlayState isInternetStreamPlaying(); // use a value from 0.0 to 1.0, inclusive void setInternetStreamGain(F32 vol); std::string getInternetStreamURL(); diff --git a/indra/llcharacter/llcharacter.cpp b/indra/llcharacter/llcharacter.cpp index 528a7bb4a5..40a9752268 100644 --- a/indra/llcharacter/llcharacter.cpp +++ b/indra/llcharacter/llcharacter.cpp @@ -181,16 +181,18 @@ void LLCharacter::requestStopMotion( LLMotion* motion) // updateMotions() //----------------------------------------------------------------------------- static LLFastTimer::DeclareTimer FTM_UPDATE_ANIMATION("Update Animation"); +static LLFastTimer::DeclareTimer FTM_UPDATE_HIDDEN_ANIMATION("Update Hidden Anim"); void LLCharacter::updateMotions(e_update_t update_type) { - LLFastTimer t(FTM_UPDATE_ANIMATION); if (update_type == HIDDEN_UPDATE) { + LLFastTimer t(FTM_UPDATE_HIDDEN_ANIMATION); mMotionController.updateMotionsMinimal(); } else { + LLFastTimer t(FTM_UPDATE_ANIMATION); // unpause if the number of outstanding pause requests has dropped to the initial one if (mMotionController.isPaused() && mPauseRequest->getNumRefs() == 1) { diff --git a/indra/llcharacter/lleditingmotion.cpp b/indra/llcharacter/lleditingmotion.cpp index 381d19e614..57554bdc35 100644 --- a/indra/llcharacter/lleditingmotion.cpp +++ b/indra/llcharacter/lleditingmotion.cpp @@ -221,7 +221,7 @@ BOOL LLEditingMotion::onUpdate(F32 time, U8* joint_mask) if (!target.isFinite()) { llerrs << "Non finite target in editing motion with target distance of " << target_dist << - " and focus point " << focus_pt << " and pointAtPt: " << *pointAtPt << llendl; + " and focus point " << focus_pt << llendl; } mTarget.setPosition( target + mParentJoint.getPosition()); diff --git a/indra/llcommon/llsdserialize_xml.cpp b/indra/llcommon/llsdserialize_xml.cpp index 7e1c2e35e0..fca173df47 100644 --- a/indra/llcommon/llsdserialize_xml.cpp +++ b/indra/llcommon/llsdserialize_xml.cpp @@ -139,12 +139,8 @@ S32 LLSDXMLFormatter::format_impl(const LLSD& data, std::ostream& ostr, U32 opti case LLSD::TypeBoolean: ostr << pre << "<boolean>"; if(mBoolAlpha || -#if( LL_WINDOWS || __GNUC__ > 2) (ostr.flags() & std::ios::boolalpha) -#else - (ostr.flags() & 0x0100) -#endif - ) + ) { ostr << (data.asBoolean() ? "true" : "false"); } @@ -511,12 +507,7 @@ void LLSDXMLParser::Impl::reset() mSkipping = false; -#if( LL_WINDOWS || __GNUC__ > 2) mCurrentKey.clear(); -#else - mCurrentKey = std::string(); -#endif - XML_ParserReset(mParser, "utf-8"); XML_SetUserData(mParser, this); @@ -644,11 +635,7 @@ void LLSDXMLParser::Impl::startElementHandler(const XML_Char* name, const XML_Ch LLSD& newElement = map[mCurrentKey]; mStack.push_back(&newElement); -#if( LL_WINDOWS || __GNUC__ > 2) mCurrentKey.clear(); -#else - mCurrentKey = std::string(); -#endif } else if (mStack.back()->isArray()) { diff --git a/indra/llimage/llimageworker.cpp b/indra/llimage/llimageworker.cpp index 86d41515e7..20a72d0a28 100644 --- a/indra/llimage/llimageworker.cpp +++ b/indra/llimage/llimageworker.cpp @@ -54,9 +54,14 @@ S32 LLImageDecodeThread::update(U32 max_time_ms) { creation_info& info = *iter; ImageRequest* req = new ImageRequest(info.handle, info.image, - info.priority, info.discard, info.needs_aux, - info.responder); - addRequest(req); + info.priority, info.discard, info.needs_aux, + info.responder); + + bool res = addRequest(req); + if (!res) + { + llerrs << "request added after LLLFSThread::cleanupClass()" << llendl; + } } mCreationList.clear(); S32 res = LLQueuedThread::update(max_time_ms); diff --git a/indra/llmath/llvolume.cpp b/indra/llmath/llvolume.cpp index 7e1517fba7..7c98536e72 100644 --- a/indra/llmath/llvolume.cpp +++ b/indra/llmath/llvolume.cpp @@ -4338,6 +4338,7 @@ BOOL LLVolume::cleanupTriangleData( const S32 num_input_vertices, // Generate the vertex mapping and the list of vertices without // duplicates. This will crash if there are no vertices. + llassert(num_input_vertices > 0); // check for no vertices! S32 *vertex_mapping = new S32[num_input_vertices]; LLVector3 *new_vertices = new LLVector3[num_input_vertices]; LLVertexIndexPair *prev_pairp = NULL; diff --git a/indra/llmessage/tests/llareslistener_test.cpp b/indra/llmessage/tests/llareslistener_test.cpp index ac4886ccf4..6ee74c8e7a 100644 --- a/indra/llmessage/tests/llareslistener_test.cpp +++ b/indra/llmessage/tests/llareslistener_test.cpp @@ -4,7 +4,7 @@ * @date 2009-02-26 * @brief Tests of llareslistener.h. * - * $LicenseInfo:firstyear=2009&license=internal$ + * $LicenseInfo:firstyear=2009&license=viewergpl$ * Copyright (c) 2009, Linden Research, Inc. * $/LicenseInfo$ */ diff --git a/indra/llplugin/llpluginmessagepipe.cpp b/indra/llplugin/llpluginmessagepipe.cpp index cc193fca42..1d7ddc5592 100644 --- a/indra/llplugin/llpluginmessagepipe.cpp +++ b/indra/llplugin/llpluginmessagepipe.cpp @@ -304,7 +304,14 @@ void LLPluginMessagePipe::processInput(void) while((delim = mInput.find(MESSAGE_DELIMITER, start)) != std::string::npos) { // Let the owner process this message - mOwner->receiveMessageRaw(mInput.substr(start, delim - start)); + if (mOwner) + { + mOwner->receiveMessageRaw(mInput.substr(start, delim - start)); + } + else + { + LL_WARNS("Plugin") << "!mOwner" << LL_ENDL; + } start = delim + 1; } diff --git a/indra/llplugin/llpluginprocesschild.cpp b/indra/llplugin/llpluginprocesschild.cpp index 0f3254d78d..52b5a319ec 100644 --- a/indra/llplugin/llpluginprocesschild.cpp +++ b/indra/llplugin/llpluginprocesschild.cpp @@ -278,14 +278,21 @@ bool LLPluginProcessChild::isDone(void) void LLPluginProcessChild::sendMessageToPlugin(const LLPluginMessage &message) { - std::string buffer = message.generate(); - - LL_DEBUGS("Plugin") << "Sending to plugin: " << buffer << LL_ENDL; - LLTimer elapsed; - - mInstance->sendMessage(buffer); - - mCPUElapsed += elapsed.getElapsedTimeF64(); + if (mInstance) + { + std::string buffer = message.generate(); + + LL_DEBUGS("Plugin") << "Sending to plugin: " << buffer << LL_ENDL; + LLTimer elapsed; + + mInstance->sendMessage(buffer); + + mCPUElapsed += elapsed.getElapsedTimeF64(); + } + else + { + LL_WARNS("Plugin") << "mInstance == NULL" << LL_ENDL; + } } void LLPluginProcessChild::sendMessageToParent(const LLPluginMessage &message) diff --git a/indra/llrender/llrender.cpp b/indra/llrender/llrender.cpp index 55c5b4531b..57e7dbe77d 100644 --- a/indra/llrender/llrender.cpp +++ b/indra/llrender/llrender.cpp @@ -93,7 +93,9 @@ static GLenum sGLBlendFactor[] = GL_DST_ALPHA, GL_SRC_ALPHA, GL_ONE_MINUS_DST_ALPHA, - GL_ONE_MINUS_SRC_ALPHA + GL_ONE_MINUS_SRC_ALPHA, + + GL_ZERO // 'BF_UNDEF' }; LLTexUnit::LLTexUnit(S32 index) @@ -763,8 +765,9 @@ LLRender::LLRender() mCurrAlphaFunc = CF_DEFAULT; mCurrAlphaFuncVal = 0.01f; - mCurrBlendSFactor = BF_ONE; - mCurrBlendDFactor = BF_ZERO; + + mCurrBlendSFactor = BF_UNDEF; + mCurrBlendDFactor = BF_UNDEF; } LLRender::~LLRender() @@ -970,6 +973,8 @@ void LLRender::setAlphaRejectSettings(eCompareFunc func, F32 value) void LLRender::blendFunc(eBlendFactor sfactor, eBlendFactor dfactor) { + llassert(sfactor < BF_UNDEF); + llassert(dfactor < BF_UNDEF); if (mCurrBlendSFactor != sfactor || mCurrBlendDFactor != dfactor) { mCurrBlendSFactor = sfactor; diff --git a/indra/llrender/llrender.h b/indra/llrender/llrender.h index a70ccf4d80..df24c985bd 100644 --- a/indra/llrender/llrender.h +++ b/indra/llrender/llrender.h @@ -270,7 +270,9 @@ public: BF_DEST_ALPHA, BF_SOURCE_ALPHA, BF_ONE_MINUS_DEST_ALPHA, - BF_ONE_MINUS_SOURCE_ALPHA + BF_ONE_MINUS_SOURCE_ALPHA, + + BF_UNDEF } eBlendFactor; LLRender(); @@ -360,11 +362,11 @@ private: std::vector<LLTexUnit*> mTexUnits; LLTexUnit* mDummyTexUnit; - U32 mCurrBlendSFactor; - U32 mCurrBlendDFactor; - F32 mMaxAnisotropy; + eBlendFactor mCurrBlendSFactor; + eBlendFactor mCurrBlendDFactor; + std::list<LLVector3> mUIOffset; std::list<LLVector3> mUIScale; diff --git a/indra/llui/llconsole.cpp b/indra/llui/llconsole.cpp index 0237c80efa..a4f69e7ac1 100644 --- a/indra/llui/llconsole.cpp +++ b/indra/llui/llconsole.cpp @@ -244,23 +244,6 @@ void LLConsole::draw() } } -void LLConsole::addLine(const std::string& utf8line) -{ - LLWString wline = utf8str_to_wstring(utf8line); - addLine(wline, 0.f, LLColor4(1.f, 1.f, 1.f, 1.f)); -} - -void LLConsole::addLine(const LLWString& wline) -{ - addLine(wline, 0.f, LLColor4(1.f, 1.f, 1.f, 1.f)); -} - -void LLConsole::addLine(const std::string& utf8line, F32 size, const LLColor4 &color) -{ - LLWString wline = utf8str_to_wstring(utf8line); - addLine(wline, size, color); -} - //Generate highlight color segments for this paragraph. Pass in default color of paragraph. void LLConsole::Paragraph::makeParagraphColorSegments (const LLColor4 &color) { @@ -383,21 +366,45 @@ void LLConsole::Paragraph::updateLines(F32 screen_width, const LLFontGL* font, b //Pass in the string and the default color for this block of text. LLConsole::Paragraph::Paragraph (LLWString str, const LLColor4 &color, F32 add_time, const LLFontGL* font, F32 screen_width) - : mParagraphText(str), mAddTime(add_time), mMaxWidth(-1) +: mParagraphText(str), mAddTime(add_time), mMaxWidth(-1) { makeParagraphColorSegments(color); updateLines( screen_width, font ); } -void LLConsole::addLine(const LLWString& wline, F32 size, const LLColor4 &color) +// called once per frame regardless of console visibility +// static +void LLConsole::updateClass() { - Paragraph paragraph(wline, color, mTimer.getElapsedTimeF32(), mFont, (F32)getRect().getWidth() ); - - mParagraphs.push_back ( paragraph ); + LLInstanceTrackerScopedGuard guard; + + for (instance_iter it = guard.beginInstances(); it != guard.endInstances(); ++it) + { + it->update(); + } +} + +void LLConsole::update() +{ + { + LLMutexLock lock(&mMutex); + + while (!mLines.empty()) + { + mParagraphs.push_back( + Paragraph( mLines.front(), + LLColor4::white, + mTimer.getElapsedTimeF32(), + mFont, + (F32)getRect().getWidth())); + mLines.pop_front(); + } + } // remove old paragraphs which can't possibly be visible any more. ::draw() will do something similar but more conservative - we do this here because ::draw() isn't guaranteed to ever be called! (i.e. the console isn't visible) - while ((S32)mParagraphs.size() > llmax((S32)0, (S32)(mMaxLines))) - { - mParagraphs.pop_front(); - } + while ((S32)mParagraphs.size() > llmax((S32)0, (S32)(mMaxLines))) + { + mParagraphs.pop_front(); + } } + diff --git a/indra/llui/llconsole.h b/indra/llui/llconsole.h index 4719950f28..f38e2bc9c2 100644 --- a/indra/llui/llconsole.h +++ b/indra/llui/llconsole.h @@ -40,7 +40,7 @@ class LLSD; -class LLConsole : public LLFixedBuffer, public LLUICtrl +class LLConsole : public LLFixedBuffer, public LLUICtrl, public LLInstanceTracker<LLConsole> { public: typedef enum e_font_size @@ -68,6 +68,9 @@ protected: friend class LLUICtrlFactory; public: + // call once per frame to pull data out of LLFixedBuffer + static void updateClass(); + //A paragraph color segment defines the color of text in a line //of text that was received for console display. It has no //notion of line wraps, screen position, or the text it contains. @@ -139,14 +142,12 @@ public: // -1 = monospace, 0 means small, font size = 1 means big void setFontSize(S32 size_index); - void addLine(const std::string& utf8line, F32 size, const LLColor4 &color); - void addLine(const LLWString& wline, F32 size, const LLColor4 &color); // Overrides /*virtual*/ void draw(); - /*virtual*/ void addLine(const std::string& utf8line); - /*virtual*/ void addLine(const LLWString& line); private: + void update(); + F32 mLinePersistTime; // Age at which to stop drawing. F32 mFadeTime; // Age at which to start fading const LLFontGL* mFont; diff --git a/indra/llui/lldockablefloater.cpp b/indra/llui/lldockablefloater.cpp index 57baf28dab..0492ab0f25 100644 --- a/indra/llui/lldockablefloater.cpp +++ b/indra/llui/lldockablefloater.cpp @@ -95,7 +95,7 @@ void LLDockableFloater::toggleInstance(const LLSD& sdname) LLDockableFloater* instance = dynamic_cast<LLDockableFloater*> (LLFloaterReg::findInstance(name)); // if floater closed or docked - if (instance == NULL || instance != NULL && instance->isDocked()) + if (instance == NULL || (instance && instance->isDocked())) { LLFloaterReg::toggleInstance(name, key); // restore button toggle state @@ -223,10 +223,10 @@ void LLDockableFloater::draw() LLFloater::draw(); } -void LLDockableFloater::setDockControl(LLDockControl* dockControl) +void LLDockableFloater::setDockControl(LLDockControl* dockControl, bool docked /* = true */) { mDockControl.reset(dockControl); - setDocked(mDockControl.get() != NULL && mDockControl.get()->isDockVisible()); + setDocked(docked && mDockControl.get() != NULL && mDockControl.get()->isDockVisible()); } const LLUIImagePtr& LLDockableFloater::getDockTongue() diff --git a/indra/llui/lldockablefloater.h b/indra/llui/lldockablefloater.h index 2b1ce99ae2..4d747390af 100644 --- a/indra/llui/lldockablefloater.h +++ b/indra/llui/lldockablefloater.h @@ -127,7 +127,7 @@ private: void resetInstance(); protected: - void setDockControl(LLDockControl* dockControl); + void setDockControl(LLDockControl* dockControl, bool docked = true); const LLUIImagePtr& getDockTongue(); private: diff --git a/indra/llui/lldockcontrol.cpp b/indra/llui/lldockcontrol.cpp index d836a5f4cd..d738b10130 100644 --- a/indra/llui/lldockcontrol.cpp +++ b/indra/llui/lldockcontrol.cpp @@ -162,7 +162,9 @@ bool LLDockControl::isDockVisible() { case LEFT: // to keep compiler happy break; + case BOTTOM: case TOP: + { // check is dock inside parent rect LLRect dockParentRect = mDockWidget->getParent()->calcScreenRect(); @@ -173,6 +175,9 @@ bool LLDockControl::isDockVisible() } break; } + default: + break; + } } } @@ -255,6 +260,42 @@ void LLDockControl::moveDockable() mDockTongueY = dockRect.mTop; break; + case BOTTOM: + x = dockRect.getCenterX() - dockableRect.getWidth() / 2; + y = dockRect.mBottom; + // unique docking used with dock tongue, so add tongue height o the Y coordinate + if (use_tongue) + { + y -= mDockTongue->getHeight(); + } + + // check is dockable inside root view rect + if (x < rootRect.mLeft) + { + x = rootRect.mLeft; + } + if (x + dockableRect.getWidth() > rootRect.mRight) + { + x = rootRect.mRight - dockableRect.getWidth(); + } + + // calculate dock tongue position + dockParentRect = mDockWidget->getParent()->calcScreenRect(); + if (dockRect.getCenterX() < dockParentRect.mLeft) + { + mDockTongueX = dockParentRect.mLeft - mDockTongue->getWidth() / 2; + } + else if (dockRect.getCenterX() > dockParentRect.mRight) + { + mDockTongueX = dockParentRect.mRight - mDockTongue->getWidth() / 2;; + } + else + { + mDockTongueX = dockRect.getCenterX() - mDockTongue->getWidth() / 2; + } + mDockTongueY = dockRect.mBottom - mDockTongue->getHeight(); + + break; } // move dockable diff --git a/indra/llui/lldockcontrol.h b/indra/llui/lldockcontrol.h index 550955c4c5..a5caf68001 100644 --- a/indra/llui/lldockcontrol.h +++ b/indra/llui/lldockcontrol.h @@ -47,8 +47,9 @@ class LLDockControl public: enum DocAt { - TOP - ,LEFT + TOP, + LEFT, + BOTTOM }; public: diff --git a/indra/llui/llmultisliderctrl.cpp b/indra/llui/llmultisliderctrl.cpp index cb81c39103..cc26c00a3e 100644 --- a/indra/llui/llmultisliderctrl.cpp +++ b/indra/llui/llmultisliderctrl.cpp @@ -330,9 +330,14 @@ void LLMultiSliderCtrl::updateText() // static void LLMultiSliderCtrl::onEditorCommit( LLUICtrl* ctrl, const LLSD& userdata) { - LLMultiSliderCtrl* self = dynamic_cast<LLMultiSliderCtrl*>(ctrl->getParent()); + llassert(ctrl); if (!ctrl) return; + + LLMultiSliderCtrl* self = dynamic_cast<LLMultiSliderCtrl*>(ctrl->getParent()); + llassert(self); + if (!self) // cast failed - wrong type! :O + return; BOOL success = FALSE; F32 val = self->mCurValue; diff --git a/indra/llui/llpanel.cpp b/indra/llui/llpanel.cpp index 7b406e090a..d963cf4c98 100644 --- a/indra/llui/llpanel.cpp +++ b/indra/llui/llpanel.cpp @@ -397,6 +397,12 @@ LLView* LLPanel::fromXML(LLXMLNodePtr node, LLView* parent, LLXMLNodePtr output_ if (!panelp) { panelp = LLUICtrlFactory::getInstance()->createFactoryPanel(name); + llassert(panelp); + + if (!panelp) + { + return NULL; // :( + } } } @@ -414,7 +420,7 @@ LLView* LLPanel::fromXML(LLXMLNodePtr node, LLView* parent, LLXMLNodePtr output_ panelp->mCommitCallbackRegistrar.popScope(); panelp->mEnableCallbackRegistrar.popScope(); - if (panelp && !panelp->getFactoryMap().empty()) + if (!panelp->getFactoryMap().empty()) { LLUICtrlFactory::instance().popFactoryFunctions(); } diff --git a/indra/llui/llscrolllistctrl.cpp b/indra/llui/llscrolllistctrl.cpp index 478e270c98..ac4811210b 100644 --- a/indra/llui/llscrolllistctrl.cpp +++ b/indra/llui/llscrolllistctrl.cpp @@ -1388,6 +1388,8 @@ void LLScrollListCtrl::drawItems() LLGLSUIDefault gls_ui; + F32 alpha = getDrawContext().mAlpha; + { LLLocalClipRect clip(mItemListRect); @@ -1463,7 +1465,7 @@ void LLScrollListCtrl::drawItems() bg_color = mBgReadOnlyColor.get(); } - item->draw(item_rect, fg_color, bg_color, highlight_color, mColumnPadding); + item->draw(item_rect, fg_color % alpha, bg_color% alpha, highlight_color % alpha, mColumnPadding); cur_y -= mLineHeight; } diff --git a/indra/llui/llsearcheditor.cpp b/indra/llui/llsearcheditor.cpp index 6fa99df82e..491eeeab54 100644 --- a/indra/llui/llsearcheditor.cpp +++ b/indra/llui/llsearcheditor.cpp @@ -60,6 +60,7 @@ LLSearchEditor::LLSearchEditor(const LLSearchEditor::Params& p) line_editor_params.keystroke_callback(boost::bind(&LLSearchEditor::handleKeystroke, this)); mSearchEditor = LLUICtrlFactory::create<LLLineEditor>(line_editor_params); + mSearchEditor->setPassDelete(TRUE); addChild(mSearchEditor); if (p.search_button_visible) @@ -79,10 +80,12 @@ LLSearchEditor::LLSearchEditor(const LLSearchEditor::Params& p) if (p.clear_button_visible) { // Set up clear button. - S32 clr_btn_width = getRect().getHeight(); // button is square, and as tall as search editor - LLRect clear_btn_rect(getRect().getWidth() - clr_btn_width, getRect().getHeight(), getRect().getWidth(), 0); LLButton::Params clr_btn_params(p.clear_button); clr_btn_params.name(std::string("clear button")); + S32 clr_btn_top = clr_btn_params.rect.bottom + clr_btn_params.rect.height; + S32 clr_btn_right = getRect().getWidth() - clr_btn_params.pad_right; + S32 clr_btn_left = clr_btn_right - clr_btn_params.rect.width; + LLRect clear_btn_rect(clr_btn_left, clr_btn_top, clr_btn_right, p.clear_button.rect.bottom); clr_btn_params.rect(clear_btn_rect) ; clr_btn_params.follows.flags(FOLLOWS_RIGHT|FOLLOWS_TOP); clr_btn_params.tab_stop(false); diff --git a/indra/llui/lltabcontainer.cpp b/indra/llui/lltabcontainer.cpp index 3877326959..ffaf84cb9b 100644 --- a/indra/llui/lltabcontainer.cpp +++ b/indra/llui/lltabcontainer.cpp @@ -119,6 +119,7 @@ protected: LLCustomButtonIconCtrl(const Params& p): LLButton(p), mIcon(NULL), + mIconAlignment(LLFontGL::HCENTER), mIconCtrlPad(p.icon_ctrl_pad) {} @@ -890,6 +891,10 @@ void LLTabContainer::update_images(LLTabTuple* tuple, TabParams params, LLTabCon void LLTabContainer::addTabPanel(const TabPanelParams& panel) { LLPanel* child = panel.panel(); + + llassert(child); + if (!child) return; + const std::string& label = panel.label.isProvided() ? panel.label() : panel.panel()->getLabel(); @@ -1630,14 +1635,9 @@ void LLTabContainer::setTabImage(LLPanel* child, LLIconCtrl* icon) void LLTabContainer::reshapeTuple(LLTabTuple* tuple) { static LLUICachedControl<S32> tab_padding ("UITabPadding", 0); - static LLUICachedControl<S32> image_top_padding ("UIButtonImageTopPadding", 2); - static LLUICachedControl<S32> image_bottom_padding ("UIButtonImageBottomPadding", 2); if (!mIsVertical) { - tuple->mButton->setImageOverlayTopPad(image_top_padding); - tuple->mButton->setImageOverlayBottomPad(image_bottom_padding); - // remove current width from total tab strip width mTotalTabWidth -= tuple->mButton->getRect().getWidth(); diff --git a/indra/llui/lltexteditor.cpp b/indra/llui/lltexteditor.cpp index ad9f066539..7d230f7d42 100644 --- a/indra/llui/lltexteditor.cpp +++ b/indra/llui/lltexteditor.cpp @@ -737,7 +737,7 @@ BOOL LLTextEditor::handleRightMouseDown(S32 x, S32 y, MASK mask) } if (!LLTextBase::handleRightMouseDown(x, y, mask)) { - if(getChowContextMenu()) + if(getShowContextMenu()) { showContextMenu(x, y); } @@ -2524,9 +2524,9 @@ void LLTextEditor::loadKeywords(const std::string& filename, void LLTextEditor::updateSegments() { - LLFastTimer ft(FTM_SYNTAX_HIGHLIGHTING); - if (mKeywords.isLoaded()) + if (mReflowIndex < S32_MAX && mKeywords.isLoaded()) { + LLFastTimer ft(FTM_SYNTAX_HIGHLIGHTING); // HACK: No non-ascii keywords for now segment_vec_t segment_list; mKeywords.findSegments(&segment_list, getWText(), mDefaultColor.get(), *this); diff --git a/indra/llui/lltexteditor.h b/indra/llui/lltexteditor.h index 00c6a8b68a..71d937b2c4 100644 --- a/indra/llui/lltexteditor.h +++ b/indra/llui/lltexteditor.h @@ -204,7 +204,7 @@ public: void getSelectedSegments(segment_vec_t& segments) const; void setShowContextMenu(bool show) { mShowContextMenu = show; } - bool getChowContextMenu() const { return mShowContextMenu; } + bool getShowContextMenu() const { return mShowContextMenu; } protected: void showContextMenu(S32 x, S32 y); diff --git a/indra/llui/lltooltip.cpp b/indra/llui/lltooltip.cpp index 173fde8e76..ed7fd02e14 100644 --- a/indra/llui/lltooltip.cpp +++ b/indra/llui/lltooltip.cpp @@ -129,12 +129,6 @@ BOOL LLToolTipView::handleScrollWheel( S32 x, S32 y, S32 clicks ) return FALSE; } -void LLToolTipView::onMouseLeave(S32 x, S32 y, MASK mask) -{ - LLToolTipMgr::instance().blockToolTips(); -} - - void LLToolTipView::drawStickyRect() { gl_rect_2d(LLToolTipMgr::instance().getMouseNearRect(), LLColor4::white, false); diff --git a/indra/llui/lltooltip.h b/indra/llui/lltooltip.h index c0811c56c3..24e32b9b24 100644 --- a/indra/llui/lltooltip.h +++ b/indra/llui/lltooltip.h @@ -56,8 +56,6 @@ public: /*virtual*/ BOOL handleRightMouseDown(S32 x, S32 y, MASK mask); /*virtual*/ BOOL handleScrollWheel( S32 x, S32 y, S32 clicks ); - /*virtual*/ void onMouseLeave(S32 x, S32 y, MASK mask); - void drawStickyRect(); /*virtual*/ void draw(); diff --git a/indra/llui/llui.cpp b/indra/llui/llui.cpp index 22d3af3e6b..bf5d53ac29 100644 --- a/indra/llui/llui.cpp +++ b/indra/llui/llui.cpp @@ -710,19 +710,19 @@ void gl_draw_scaled_rotated_image(S32 x, S32 y, S32 width, S32 height, F32 degre v = LLVector3(offset_x, offset_y, 0.f) * quat; gGL.texCoord2f(uv_rect.mRight, uv_rect.mTop); - gGL.vertex2f(v.mV[0], v.mV[1] ); + gGL.vertex2f((GLint)v.mV[0], (GLint)v.mV[1] ); v = LLVector3(-offset_x, offset_y, 0.f) * quat; gGL.texCoord2f(uv_rect.mLeft, uv_rect.mTop); - gGL.vertex2f(v.mV[0], v.mV[1] ); + gGL.vertex2f((GLint)v.mV[0], (GLint)v.mV[1] ); v = LLVector3(-offset_x, -offset_y, 0.f) * quat; gGL.texCoord2f(uv_rect.mLeft, uv_rect.mBottom); - gGL.vertex2f(v.mV[0], v.mV[1] ); + gGL.vertex2f((GLint)v.mV[0], (GLint)v.mV[1] ); v = LLVector3(offset_x, -offset_y, 0.f) * quat; gGL.texCoord2f(uv_rect.mRight, uv_rect.mBottom); - gGL.vertex2f(v.mV[0], v.mV[1] ); + gGL.vertex2f((GLint)v.mV[0], (GLint)v.mV[1] ); } gGL.end(); gGL.popUIMatrix(); @@ -1928,7 +1928,9 @@ namespace LLInitParam blue("blue"), alpha("alpha"), control("") - {} + { + setBlockFromValue(); + } void TypedParam<LLUIColor>::setValueFromBlock() const { @@ -1973,6 +1975,7 @@ namespace LLInitParam size("size"), style("style") { + setBlockFromValue(); addSynonym(name, ""); } @@ -2013,7 +2016,9 @@ namespace LLInitParam bottom("bottom"), width("width"), height("height") - {} + { + setBlockFromValue(); + } void TypedParam<LLRect>::setValueFromBlock() const { @@ -2098,6 +2103,7 @@ namespace LLInitParam x("x"), y("y") { + setBlockFromValue(); } void TypedParam<LLCoordGL>::setValueFromBlock() const diff --git a/indra/llui/llui.h b/indra/llui/llui.h index 5840e76f5c..af8d4ea03b 100644 --- a/indra/llui/llui.h +++ b/indra/llui/llui.h @@ -426,8 +426,8 @@ namespace LLInitParam { typedef BlockValue<const LLFontGL*> super_t; public: - Mandatory<std::string> name; - Optional<std::string> size, + Optional<std::string> name, + size, style; TypedParam(BlockDescriptor& descriptor, const char* name, const LLFontGL* const value, ParamDescriptor::validation_func_t func, S32 min_count, S32 max_count); diff --git a/indra/llui/lluicolortable.cpp b/indra/llui/lluicolortable.cpp index 9be33483d0..1b64ef3abe 100644 --- a/indra/llui/lluicolortable.cpp +++ b/indra/llui/lluicolortable.cpp @@ -56,7 +56,7 @@ LLUIColorTable::Params::Params() { } -void LLUIColorTable::insertFromParams(const Params& p) +void LLUIColorTable::insertFromParams(const Params& p, string_color_map_t& table) { // this map will contain all color references after the following loop typedef std::map<std::string, std::string> string_string_map_t; @@ -69,14 +69,7 @@ void LLUIColorTable::insertFromParams(const Params& p) ColorEntryParams color_entry = *it; if(color_entry.color.value.isChosen()) { - if(mUserSetColors.find(color_entry.name)!=mUserSetColors.end()) - { - setColor(color_entry.name, color_entry.color.value); - } - else - { - setColor(color_entry.name, color_entry.color.value, mLoadedColors); - } + setColor(color_entry.name, color_entry.color.value, table); } else { @@ -220,16 +213,16 @@ bool LLUIColorTable::loadFromSettings() bool result = false; std::string default_filename = gDirUtilp->getExpandedFilename(LL_PATH_DEFAULT_SKIN, "colors.xml"); - result |= loadFromFilename(default_filename); + result |= loadFromFilename(default_filename, mLoadedColors); std::string current_filename = gDirUtilp->getExpandedFilename(LL_PATH_TOP_SKIN, "colors.xml"); if(current_filename != default_filename) { - result |= loadFromFilename(current_filename); + result |= loadFromFilename(current_filename, mLoadedColors); } std::string user_filename = gDirUtilp->getExpandedFilename(LL_PATH_USER_SETTINGS, "colors.xml"); - loadFromFilename(user_filename); + loadFromFilename(user_filename, mUserSetColors); return result; } @@ -299,7 +292,7 @@ void LLUIColorTable::setColor(const std::string& name, const LLColor4& color, st } } -bool LLUIColorTable::loadFromFilename(const std::string& filename) +bool LLUIColorTable::loadFromFilename(const std::string& filename, string_color_map_t& table) { LLXMLNodePtr root; @@ -320,7 +313,7 @@ bool LLUIColorTable::loadFromFilename(const std::string& filename) if(params.validateBlock()) { - insertFromParams(params); + insertFromParams(params, table); } else { @@ -330,3 +323,11 @@ bool LLUIColorTable::loadFromFilename(const std::string& filename) return true; } + +void LLUIColorTable::insertFromParams(const Params& p) +{ + insertFromParams(p, mUserSetColors); +} + +// EOF + diff --git a/indra/llui/lluicolortable.h b/indra/llui/lluicolortable.h index c87695f456..d401e5e724 100644 --- a/indra/llui/lluicolortable.h +++ b/indra/llui/lluicolortable.h @@ -45,6 +45,10 @@ class LLUIColor; class LLUIColorTable : public LLSingleton<LLUIColorTable> { LOG_CLASS(LLUIColorTable); + + // consider using sorted vector, can be much faster + typedef std::map<std::string, LLUIColor> string_color_map_t; + public: struct ColorParams : LLInitParam::Choice<ColorParams> { @@ -91,10 +95,9 @@ public: void saveUserSettings() const; private: - bool loadFromFilename(const std::string& filename); + bool loadFromFilename(const std::string& filename, string_color_map_t& table); - // consider using sorted vector, can be much faster - typedef std::map<std::string, LLUIColor> string_color_map_t; + void insertFromParams(const Params& p, string_color_map_t& table); void clearTable(string_color_map_t& table); void setColor(const std::string& name, const LLColor4& color, string_color_map_t& table); diff --git a/indra/llui/lluiimage.h b/indra/llui/lluiimage.h index bdfc44262d..4ea0738026 100644 --- a/indra/llui/lluiimage.h +++ b/indra/llui/lluiimage.h @@ -109,6 +109,7 @@ namespace LLInitParam TypedParam(BlockDescriptor& descriptor, const char* name, super_t::value_assignment_t value, ParamDescriptor::validation_func_t func, S32 min_count, S32 max_count) : super_t(descriptor, name, value, func, min_count, max_count) { + setBlockFromValue(); } void setValueFromBlock() const; diff --git a/indra/llui/llurlentry.cpp b/indra/llui/llurlentry.cpp index 92b7816bdd..3c73ae9b0c 100644 --- a/indra/llui/llurlentry.cpp +++ b/indra/llui/llurlentry.cpp @@ -287,7 +287,7 @@ std::string LLUrlEntrySLURL::getLabel(const std::string &url, const LLUrlLabelCa std::string LLUrlEntrySLURL::getLocation(const std::string &url) const { // return the part of the Url after slurl.com/secondlife/ - const std::string search_string = "secondlife"; + const std::string search_string = "/secondlife"; size_t pos = url.find(search_string); if (pos == std::string::npos) { diff --git a/indra/llwindow/lldragdropwin32.cpp b/indra/llwindow/lldragdropwin32.cpp index 9b80fe0a84..b85960be10 100644 --- a/indra/llwindow/lldragdropwin32.cpp +++ b/indra/llwindow/lldragdropwin32.cpp @@ -50,7 +50,8 @@ class LLDragDropWin32Target: LLDragDropWin32Target( HWND hWnd ) : mRefCount( 1 ), mAppWindowHandle( hWnd ), - mAllowDrop( false) + mAllowDrop(false), + mIsSlurl(false) { }; diff --git a/indra/llwindow/llwindowsdl.cpp b/indra/llwindow/llwindowsdl.cpp index f9c3694459..7cd06c9c37 100644 --- a/indra/llwindow/llwindowsdl.cpp +++ b/indra/llwindow/llwindowsdl.cpp @@ -251,6 +251,10 @@ LLWindowSDL::LLWindowSDL(LLWindowCallbacks* callbacks, #if LL_X11 mFlashing = FALSE; #endif // LL_X11 + + mKeyScanCode = 0; + mKeyVirtualKey = 0; + mKeyModifiers = KMOD_NONE; } static SDL_Surface *Load_BMP_Resource(const char *basename) @@ -1651,24 +1655,32 @@ void LLWindowSDL::gatherInput() } case SDL_KEYDOWN: - gKeyboard->handleKeyDown(event.key.keysym.sym, event.key.keysym.mod); - // part of the fix for SL-13243 - if (SDLCheckGrabbyKeys(event.key.keysym.sym, TRUE) != 0) - SDLReallyCaptureInput(TRUE); - - if (event.key.keysym.unicode) - { - handleUnicodeUTF16(event.key.keysym.unicode, - gKeyboard->currentMask(FALSE)); - } + mKeyScanCode = event.key.keysym.scancode; + mKeyVirtualKey = event.key.keysym.unicode; + mKeyModifiers = event.key.keysym.mod; + + gKeyboard->handleKeyDown(event.key.keysym.sym, event.key.keysym.mod); + // part of the fix for SL-13243 + if (SDLCheckGrabbyKeys(event.key.keysym.sym, TRUE) != 0) + SDLReallyCaptureInput(TRUE); + + if (event.key.keysym.unicode) + { + handleUnicodeUTF16(event.key.keysym.unicode, + gKeyboard->currentMask(FALSE)); + } break; case SDL_KEYUP: - if (SDLCheckGrabbyKeys(event.key.keysym.sym, FALSE) == 0) - SDLReallyCaptureInput(FALSE); // part of the fix for SL-13243 + mKeyScanCode = event.key.keysym.scancode; + mKeyVirtualKey = event.key.keysym.unicode; + mKeyModifiers = event.key.keysym.mod; - gKeyboard->handleKeyUp(event.key.keysym.sym, event.key.keysym.mod); - break; + if (SDLCheckGrabbyKeys(event.key.keysym.sym, FALSE) == 0) + SDLReallyCaptureInput(FALSE); // part of the fix for SL-13243 + + gKeyboard->handleKeyUp(event.key.keysym.sym, event.key.keysym.mod); + break; case SDL_MOUSEBUTTONDOWN: { @@ -2224,6 +2236,39 @@ static void color_changed_callback(GtkWidget *widget, gtk_color_selection_get_current_color(colorsel, colorp); } + +/* + Make the raw keyboard data available - used to poke through to LLQtWebKit so + that Qt/Webkit has access to the virtual keycodes etc. that it needs +*/ +LLSD LLWindowSDL::getNativeKeyData() +{ + LLSD result = LLSD::emptyMap(); + + U32 modifiers = 0; // pretend-native modifiers... oh what a tangled web we weave! + + // we go through so many levels of device abstraction that I can't really guess + // what a plugin under GDK under Qt under SL under SDL under X11 considers + // a 'native' modifier mask. this has been sort of reverse-engineered... they *appear* + // to match GDK consts, but that may be co-incidence. + modifiers |= (mKeyModifiers & KMOD_LSHIFT) ? 0x0001 : 0; + modifiers |= (mKeyModifiers & KMOD_RSHIFT) ? 0x0001 : 0;// munge these into the same shift + modifiers |= (mKeyModifiers & KMOD_CAPS) ? 0x0002 : 0; + modifiers |= (mKeyModifiers & KMOD_LCTRL) ? 0x0004 : 0; + modifiers |= (mKeyModifiers & KMOD_RCTRL) ? 0x0004 : 0;// munge these into the same ctrl + modifiers |= (mKeyModifiers & KMOD_LALT) ? 0x0008 : 0;// untested + modifiers |= (mKeyModifiers & KMOD_RALT) ? 0x0008 : 0;// untested + // *todo: test ALTs - I don't have a case for testing these. Do you? + // *todo: NUM? - I don't care enough right now (and it's not a GDK modifier). + + result["scan_code"] = (S32)mKeyScanCode; + result["virtual_key"] = (S32)mKeyVirtualKey; + result["modifiers"] = (S32)modifiers; + + return result; +} + + BOOL LLWindowSDL::dialogColorPicker( F32 *r, F32 *g, F32 *b) { BOOL rtn = FALSE; diff --git a/indra/llwindow/llwindowsdl.h b/indra/llwindow/llwindowsdl.h index 0ba1c861da..e6bdd46a77 100644 --- a/indra/llwindow/llwindowsdl.h +++ b/indra/llwindow/llwindowsdl.h @@ -102,7 +102,7 @@ public: /*virtual*/ void gatherInput(); /*virtual*/ void swapBuffers(); - /*virtual*/ void delayInputProcessing() { }; + /*virtual*/ void delayInputProcessing() { }; // handy coordinate space conversion routines /*virtual*/ BOOL convertCoords(LLCoordScreen from, LLCoordWindow *to); @@ -155,12 +155,13 @@ protected: BOOL ignore_pixel_depth, U32 fsaa_samples); ~LLWindowSDL(); + /*virtual*/ BOOL isValid(); + /*virtual*/ LLSD getNativeKeyData(); + void initCursors(); void quitCursors(); - BOOL isValid(); void moveWindow(const LLCoordScreen& position,const LLCoordScreen& size); - // Changes display resolution. Returns true if successful BOOL setDisplayResolution(S32 width, S32 height, S32 bits, S32 refresh); @@ -204,12 +205,16 @@ protected: friend class LLWindowManager; -#if LL_X11 private: +#if LL_X11 void x11_set_urgent(BOOL urgent); BOOL mFlashing; LLTimer mFlashTimer; #endif //LL_X11 + + U32 mKeyScanCode; + U32 mKeyVirtualKey; + SDLMod mKeyModifiers; }; diff --git a/indra/llxuixml/llinitparam.cpp b/indra/llxuixml/llinitparam.cpp index fb0a04dc58..2ead5a4a57 100644 --- a/indra/llxuixml/llinitparam.cpp +++ b/indra/llxuixml/llinitparam.cpp @@ -137,7 +137,7 @@ namespace LLInitParam } - bool BaseBlock::validateBlock(bool silent) const + bool BaseBlock::validateBlock(bool emit_errors) const { const BlockDescriptor& block_data = getBlockDescriptor(); for (BlockDescriptor::param_validation_list_t::const_iterator it = block_data.mValidationList.begin(); it != block_data.mValidationList.end(); ++it) @@ -145,7 +145,7 @@ namespace LLInitParam const Param* param = getParamFromHandle(it->first); if (!it->second(param)) { - if (!silent) + if (emit_errors) { llwarns << "Invalid param \"" << getParamName(block_data, param) << "\"" << llendl; } @@ -458,7 +458,7 @@ namespace LLInitParam // take all provided params from other and apply to self // NOTE: this requires that "other" is of the same derived type as this - bool BaseBlock::overwriteFromImpl(BlockDescriptor& block_data, const BaseBlock& other) + bool BaseBlock::merge(BlockDescriptor& block_data, const BaseBlock& other, bool overwrite) { bool param_changed = false; BlockDescriptor::all_params_list_t::const_iterator end_it = block_data.mAllParams.end(); @@ -471,27 +471,7 @@ namespace LLInitParam if (merge_func) { Param* paramp = getParamFromHandle(it->mParamHandle); - param_changed |= merge_func(*paramp, *other_paramp, true); - } - } - return param_changed; - } - - // take all provided params that are not already provided, and apply to self - bool BaseBlock::fillFromImpl(BlockDescriptor& block_data, const BaseBlock& other) - { - bool param_changed = false; - BlockDescriptor::all_params_list_t::const_iterator end_it = block_data.mAllParams.end(); - for (BlockDescriptor::all_params_list_t::const_iterator it = block_data.mAllParams.begin(); - it != end_it; - ++it) - { - const Param* other_paramp = other.getParamFromHandle(it->mParamHandle); - ParamDescriptor::merge_func_t merge_func = it->mMergeFunc; - if (merge_func) - { - Param* paramp = getParamFromHandle(it->mParamHandle); - param_changed |= merge_func(*paramp, *other_paramp, false); + param_changed |= merge_func(*paramp, *other_paramp, overwrite); } } return param_changed; diff --git a/indra/llxuixml/llinitparam.h b/indra/llxuixml/llinitparam.h index d264cea3b2..c9c1d4af90 100644 --- a/indra/llxuixml/llinitparam.h +++ b/indra/llxuixml/llinitparam.h @@ -407,7 +407,7 @@ namespace LLInitParam class BaseBlock { public: - // "Multiple" constraint types + // "Multiple" constraint types, put here in root class to avoid ambiguity during use struct AnyAmount { static U32 minCount() { return 0; } @@ -452,7 +452,7 @@ namespace LLInitParam bool submitValue(const Parser::name_stack_t& name_stack, Parser& p, bool silent=false); param_handle_t getHandleFromParam(const Param* param) const; - bool validateBlock(bool silent = false) const; + bool validateBlock(bool emit_errors = true) const; Param* getParamFromHandle(const param_handle_t param_handle) { @@ -500,10 +500,7 @@ namespace LLInitParam // take all provided params from other and apply to self - bool overwriteFromImpl(BlockDescriptor& block_data, const BaseBlock& other); - - // take all provided params that are not already provided, and apply to self - bool fillFromImpl(BlockDescriptor& block_data, const BaseBlock& other); + bool merge(BlockDescriptor& block_data, const BaseBlock& other, bool overwrite); // can be updated in getters mutable S32 mChangeVersion; @@ -805,7 +802,7 @@ namespace LLInitParam if (Param::getProvided() && mData.mValidatedVersion < T::getLastChangeVersion()) { // a sub-block is "provided" when it has been filled in enough to be valid - mData.mValidated = T::validateBlock(true); + mData.mValidated = T::validateBlock(false); mData.mValidatedVersion = T::getLastChangeVersion(); } return Param::getProvided() && mData.mValidated; @@ -1236,7 +1233,7 @@ namespace LLInitParam it != mValues.end(); ++it) { - if(it->validateBlock(true)) count++; + if(it->validateBlock(false)) count++; } return count; } @@ -1286,7 +1283,7 @@ namespace LLInitParam bool overwriteFrom(const self_t& other) { mCurChoice = other.mCurChoice; - return BaseBlock::overwriteFromImpl(blockDescriptor(), other); + return BaseBlock::merge(blockDescriptor(), other, true); } // take all provided params that are not already provided, and apply to self @@ -1413,13 +1410,13 @@ namespace LLInitParam // take all provided params from other and apply to self bool overwriteFrom(const self_t& other) { - return BaseBlock::overwriteFromImpl(blockDescriptor(), other); + return BaseBlock::merge(blockDescriptor(), other, true); } // take all provided params that are not already provided, and apply to self bool fillFrom(const self_t& other) { - return BaseBlock::fillFromImpl(blockDescriptor(), other); + return BaseBlock::merge(blockDescriptor(), other, false); } protected: Block() @@ -1710,7 +1707,7 @@ namespace LLInitParam // if cached value is stale, regenerate from params if (Param::getProvided() && mData.mLastParamVersion < BaseBlock::getLastChangeVersion()) { - if (block_t::validateBlock(true)) + if (block_t::validateBlock(false)) { static_cast<const DERIVED*>(this)->setValueFromBlock(); // clear stale keyword associated with old value @@ -1769,7 +1766,7 @@ namespace LLInitParam if (Param::getProvided() && (mData.mLastParamVersion < BaseBlock::getLastChangeVersion())) { // go ahead and issue warnings at this point if any param is invalid - if(block_t::validateBlock(false)) + if(block_t::validateBlock(true)) { static_cast<const DERIVED*>(this)->setValueFromBlock(); mData.clearKey(); @@ -1797,25 +1794,23 @@ namespace LLInitParam private: static bool mergeWith(Param& dst, const Param& src, bool overwrite) { - const self_t& src_param = static_cast<const self_t&>(src); + const self_t& src_typed_param = static_cast<const self_t&>(src); self_t& dst_typed_param = static_cast<self_t&>(dst); - if (src_param.isProvided() + if (src_typed_param.isProvided() && (overwrite || !dst_typed_param.isProvided())) { // assign individual parameters - if (overwrite) - { - dst_typed_param.BaseBlock::overwriteFromImpl(block_t::blockDescriptor(), src_param); - } - else - { - dst_typed_param.BaseBlock::fillFromImpl(block_t::blockDescriptor(), src_param); - } + dst_typed_param.BaseBlock::merge(block_t::blockDescriptor(), src_typed_param, overwrite); + // then copy actual value - dst_typed_param.mData.mValue = src_param.get(); + dst_typed_param.mData.mValue = src_typed_param.get(); dst_typed_param.mData.clearKey(); dst_typed_param.setProvided(true); + + // Propagate value back to block params since the value was updated during this merge. + // This will result in mData.mValue and the block params being in sync. + static_cast<DERIVED&>(dst_typed_param).setBlockFromValue(); return true; } return false; diff --git a/indra/llxuixml/llxuiparser.cpp b/indra/llxuixml/llxuiparser.cpp index 17399865e5..dbc20a5a1e 100644 --- a/indra/llxuixml/llxuiparser.cpp +++ b/indra/llxuixml/llxuiparser.cpp @@ -324,33 +324,33 @@ void LLXUIXSDWriter::writeXSD(const std::string& type_name, const std::string& p // add includes for all possible children const std::type_info* type = *LLWidgetTypeRegistry::instance().getValue(type_name); const widget_registry_t* widget_registryp = LLChildRegistryRegistry::instance().getValue(type); - - // add include declarations for all valid children - for (widget_registry_t::Registrar::registry_map_t::const_iterator it = widget_registryp->currentRegistrar().beginItems(); - it != widget_registryp->currentRegistrar().endItems(); - ++it) - { - std::string widget_name = it->first; - if (widget_name == type_name) - { - continue; - } - LLXMLNodePtr nodep = new LLXMLNode("xs:include", false); - nodep->createChild("schemaLocation", true)->setStringValue(widget_name + ".xsd"); - - // add to front of schema - mSchemaNode->addChild(nodep, mSchemaNode); - } // add choices for valid children if (widget_registryp) { + // add include declarations for all valid children + for (widget_registry_t::Registrar::registry_map_t::const_iterator it = widget_registryp->currentRegistrar().beginItems(); + it != widget_registryp->currentRegistrar().endItems(); + ++it) + { + std::string widget_name = it->first; + if (widget_name == type_name) + { + continue; + } + LLXMLNodePtr nodep = new LLXMLNode("xs:include", false); + nodep->createChild("schemaLocation", true)->setStringValue(widget_name + ".xsd"); + + // add to front of schema + mSchemaNode->addChild(nodep, mSchemaNode); + } + for (widget_registry_t::Registrar::registry_map_t::const_iterator it = widget_registryp->currentRegistrar().beginItems(); it != widget_registryp->currentRegistrar().endItems(); ++it) { std::string widget_name = it->first; - //<xs:element name="widget_name" type="widget_name"> + //<xs:element name="widget_name" type="widget_name"> LLXMLNodePtr widget_node = mElementNode->createChild("xs:element", false); widget_node->createChild("name", true)->setStringValue(widget_name); widget_node->createChild("type", true)->setStringValue(widget_name); diff --git a/indra/lscript/lscript_compile/lscript_tree.cpp b/indra/lscript/lscript_compile/lscript_tree.cpp index 3b8bbbe805..3d19de193a 100644 --- a/indra/lscript/lscript_compile/lscript_tree.cpp +++ b/indra/lscript/lscript_compile/lscript_tree.cpp @@ -9805,6 +9805,9 @@ void LLScriptEventHandler::recurse(LLFILE *fp, S32 tabs, S32 tabsize, LSCRIPTCom break; case LSCP_EMIT_BYTE_CODE: { + llassert(mEventp); + if (!mEventp) return; + // order for event handler // set jump table value S32 jumpoffset; @@ -9818,13 +9821,11 @@ void LLScriptEventHandler::recurse(LLFILE *fp, S32 tabs, S32 tabsize, LSCRIPTCom chunk->addBytes(4); // null terminated event name and null terminated parameters - if (mEventp) - { - LLScriptByteCodeChunk *event = new LLScriptByteCodeChunk(FALSE); - mEventp->recurse(fp, tabs, tabsize, pass, ptype, prunearg, scope, type, basetype, count, event, heap, stacksize, entry, entrycount, NULL); - chunk->addBytes(event->mCodeChunk, event->mCurrentOffset); - delete event; - } + LLScriptByteCodeChunk *event = new LLScriptByteCodeChunk(FALSE); + mEventp->recurse(fp, tabs, tabsize, pass, ptype, prunearg, scope, type, basetype, count, event, heap, stacksize, entry, entrycount, NULL); + chunk->addBytes(event->mCodeChunk, event->mCurrentOffset); + delete event; + chunk->addBytes(1); // now we're at the first opcode @@ -10626,6 +10627,8 @@ LLScriptScript::LLScriptScript(LLScritpGlobalStorage *globals, } temp = temp->mNextp; } + + mClassName[0] = '\0'; } void LLScriptScript::setBytecodeDest(const char* dst_filename) diff --git a/indra/lscript/lscript_compile/lscript_tree.h b/indra/lscript/lscript_compile/lscript_tree.h index a667e1eb5b..7de9606dfc 100644 --- a/indra/lscript/lscript_compile/lscript_tree.h +++ b/indra/lscript/lscript_compile/lscript_tree.h @@ -1876,7 +1876,7 @@ class LLScriptStateChange : public LLScriptStatement { public: LLScriptStateChange(S32 line, S32 col, LLScriptIdentifier *identifier) - : LLScriptStatement(line, col, LSSMT_STATE_CHANGE), mIdentifier(identifier) + : LLScriptStatement(line, col, LSSMT_STATE_CHANGE), mIdentifier(identifier), mReturnType(LST_NULL) { } @@ -2210,7 +2210,7 @@ class LLScriptState : public LLScriptFilePosition { public: LLScriptState(S32 line, S32 col, LSCRIPTStateType type, LLScriptIdentifier *identifier, LLScriptEventHandler *event) - : LLScriptFilePosition(line, col), mType(type), mIdentifier(identifier), mEvent(event), mNextp(NULL) + : LLScriptFilePosition(line, col), mType(type), mIdentifier(identifier), mEvent(event), mNextp(NULL), mStateScope(NULL) { } diff --git a/indra/media_plugins/webkit/media_plugin_webkit.cpp b/indra/media_plugins/webkit/media_plugin_webkit.cpp index 22e285cdb8..688d3bcd3d 100644 --- a/indra/media_plugins/webkit/media_plugin_webkit.cpp +++ b/indra/media_plugins/webkit/media_plugin_webkit.cpp @@ -488,6 +488,10 @@ private: native_scan_code = (uint32_t)(native_key_data["scan_code"].asInteger()); native_virtual_key = (uint32_t)(native_key_data["virtual_key"].asInteger()); // TODO: I don't think we need to do anything with native modifiers here -- please verify +#elif LL_LINUX + native_scan_code = (uint32_t)(native_key_data["scan_code"].asInteger()); + native_virtual_key = (uint32_t)(native_key_data["virtual_key"].asInteger()); + native_modifiers = (uint32_t)(native_key_data["modifiers"].asInteger()); #else // Add other platforms here as needed #endif diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt index 407036f76e..7c8bc6abb4 100644 --- a/indra/newview/CMakeLists.txt +++ b/indra/newview/CMakeLists.txt @@ -165,6 +165,7 @@ set(viewer_SOURCE_FILES llfloatercustomize.cpp llfloaterdaycycle.cpp llfloaterenvsettings.cpp + llfloaterevent.cpp llfloaterfonttest.cpp llfloatergesture.cpp llfloatergodtools.cpp @@ -188,7 +189,6 @@ set(viewer_SOURCE_FILES llfloatermemleak.cpp llfloatermodelpreview.cpp llfloaternamedesc.cpp - llfloaternearbymedia.cpp llfloaternotificationsconsole.cpp llfloateropenobject.cpp llfloaterparcel.cpp @@ -308,7 +308,6 @@ set(viewer_SOURCE_FILES llpanelclassified.cpp llpanelcontents.cpp llpaneleditwearable.cpp - llpanelevent.cpp llpanelface.cpp llpanelgroup.cpp llpanelgroupgeneral.cpp @@ -331,6 +330,7 @@ set(viewer_SOURCE_FILES llpanelmediasettingspermissions.cpp llpanelmediasettingssecurity.cpp llpanelme.cpp + llpanelnearbymedia.cpp llpanelobject.cpp llpanelobjectinventory.cpp llpaneloutfitsinventory.cpp @@ -669,6 +669,7 @@ set(viewer_HEADER_FILES llfloatercustomize.h llfloaterdaycycle.h llfloaterenvsettings.h + llfloaterevent.h llfloaterfonttest.h llfloatergesture.h llfloatergodtools.h @@ -692,7 +693,6 @@ set(viewer_HEADER_FILES llfloatermemleak.h llfloatermodelpreview.h llfloaternamedesc.h - llfloaternearbymedia.h llfloaternotificationsconsole.h llfloateropenobject.h llfloaterparcel.h @@ -807,7 +807,6 @@ set(viewer_HEADER_FILES llpanelclassified.h llpanelcontents.h llpaneleditwearable.h - llpanelevent.h llpanelface.h llpanelgroup.h llpanelgroupgeneral.h @@ -830,6 +829,7 @@ set(viewer_HEADER_FILES llpanelmediasettingspermissions.h llpanelmediasettingssecurity.h llpanelme.h + llpanelnearbymedia.h llpanelobject.h llpanelobjectinventory.h llpaneloutfitsinventory.h diff --git a/indra/newview/app_settings/ignorable_dialogs.xml b/indra/newview/app_settings/ignorable_dialogs.xml index e825f13e82..d0e1f62a84 100644 --- a/indra/newview/app_settings/ignorable_dialogs.xml +++ b/indra/newview/app_settings/ignorable_dialogs.xml @@ -177,17 +177,6 @@ <key>Value</key> <integer>1</integer> </map> - <key>FirstStreamingMedia</key> - <map> - <key>Comment</key> - <string>Enables FirstStreamingMedia warning dialog</string> - <key>Persist</key> - <integer>1</integer> - <key>Type</key> - <string>Boolean</string> - <key>Value</key> - <integer>1</integer> - </map> <key>FirstTeleport</key> <map> <key>Comment</key> diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index 8b3a7b5e51..7987c96ecc 100644 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -3607,7 +3607,7 @@ <key>Type</key> <string>String</string> <key>Value</key> - <string>http://lecs.viewer-sidebar.secondlife.com.s3.amazonaws.com/sidebar.html?p=[AUTH_TOKEN]&lang=[LANGUAGE]&channel=[CHANNEL]&version=[VERSION]&major=[VERSION_MAJOR]&minor=[VERSION_MINOR]</string> + <string>https://viewer-sidebar.secondlife.com/sidebar.html?p=[AUTH_TOKEN]&lang=[LANGUAGE]&channel=[CHANNEL]&version=[VERSION]&major=[VERSION_MAJOR]&minor=[VERSION_MINOR]&firstlogin=[FIRST_LOGIN]</string> </map> <key>SearchURL</key> <map> @@ -4578,6 +4578,50 @@ <key>Value</key> <integer>0</integer> </map> + <key>MediaShowOnOthers</key> + <map> + <key>Comment</key> + <string>Whether or not to show media on other avatars</string> + <key>Persist</key> + <integer>1</integer> + <key>Type</key> + <string>Boolean</string> + <key>Value</key> + <integer>1</integer> + </map> + <key>MediaShowOutsideParcel</key> + <map> + <key>Comment</key> + <string>Whether or not to show media from outside the current parcel</string> + <key>Persist</key> + <integer>1</integer> + <key>Type</key> + <string>Boolean</string> + <key>Value</key> + <integer>0</integer> + </map> + <key>MediaShowWithinParcel</key> + <map> + <key>Comment</key> + <string>Whether or not to show media within the current parcel</string> + <key>Persist</key> + <integer>1</integer> + <key>Type</key> + <string>Boolean</string> + <key>Value</key> + <integer>1</integer> + </map> + <key>MediaTentativeAutoPlay</key> + <map> + <key>Comment</key> + <string>This is a tentative flag that may be temporarily set off by the user, until she teleports</string> + <key>Persist</key> + <integer>0</integer> + <key>Type</key> + <string>Boolean</string> + <key>Value</key> + <integer>1</integer> + </map> <key>MemoryLogFrequency</key> <map> <key>Comment</key> @@ -5055,7 +5099,9 @@ <map> <key>Comment</key> <string>Default width of buttons in the toast. - Note if required width will be less then this one, a button will be reshaped to default size , otherwise to required</string> + Notes: + If required width will be less then this one, a button will be reshaped to default size , otherwise to required + Change of this parameter will affect the layout of buttons in notification toast.</string> <key>Persist</key> <integer>1</integer> <key>Type</key> @@ -8490,6 +8536,17 @@ <key>Value</key> <integer>0</integer> </map> + <key>ShowVoiceVisualizersInCalls</key> + <map> + <key>Comment</key> + <string>Enables in-world voice visualizers, voice gestures and lip-sync while in group or P2P calls.</string> + <key>Persist</key> + <integer>1</integer> + <key>Type</key> + <string>Boolean</string> + <key>Value</key> + <integer>0</integer> + </map> <key>ShowVolumeSettingsPopup</key> <map> <key>Comment</key> @@ -9983,28 +10040,6 @@ <key>Value</key> <integer>15</integer> </map> - <key>UIButtonImageTopPadding</key> - <map> - <key>Comment</key> - <string>Button Overlay Image Top Padding</string> - <key>Persist</key> - <integer>1</integer> - <key>Type</key> - <string>S32</string> - <key>Value</key> - <integer>2</integer> - </map> - <key>UIButtonImageBottomPadding</key> - <map> - <key>Comment</key> - <string>Button Overlay Image Bottom Padding</string> - <key>Persist</key> - <integer>1</integer> - <key>Type</key> - <string>S32</string> - <key>Value</key> - <integer>2</integer> - </map> <key>UploadBakedTexOld</key> <map> <key>Comment</key> diff --git a/indra/newview/llagent.cpp b/indra/newview/llagent.cpp index 9f2186f7f7..afd9d7b3f9 100644 --- a/indra/newview/llagent.cpp +++ b/indra/newview/llagent.cpp @@ -956,6 +956,7 @@ void LLAgent::sendMessage() if (!mRegionp) { llerrs << "No region for agent yet!" << llendl; + return; } gMessageSystem->sendMessage(mRegionp->getHost()); } @@ -4485,7 +4486,9 @@ void LLAgent::setCameraPosAndFocusGlobal(const LLVector3d& camera_pos, const LLV { const F64 ANIM_METERS_PER_SECOND = 10.0; const F64 MIN_ANIM_SECONDS = 0.5; + const F64 MAX_ANIM_SECONDS = 10.0; F64 anim_duration = llmax( MIN_ANIM_SECONDS, sqrt(focus_delta_squared) / ANIM_METERS_PER_SECOND ); + anim_duration = llmin( anim_duration, MAX_ANIM_SECONDS ); setAnimationDuration( (F32)anim_duration ); } @@ -5027,9 +5030,9 @@ void LLAgent::buildFullnameAndTitle(std::string& name) const } } -BOOL LLAgent::isInGroup(const LLUUID& group_id) const +BOOL LLAgent::isInGroup(const LLUUID& group_id, BOOL ignore_god_mode /* FALSE */) const { - if (isGodlike()) + if (!ignore_god_mode && isGodlike()) return true; S32 count = mGroups.count(); diff --git a/indra/newview/llagent.h b/indra/newview/llagent.h index beede7fbe3..1573fd7131 100644 --- a/indra/newview/llagent.h +++ b/indra/newview/llagent.h @@ -982,7 +982,7 @@ private: //-------------------------------------------------------------------- public: // Checks against all groups in the entire agent group list. - BOOL isInGroup(const LLUUID& group_id) const; + BOOL isInGroup(const LLUUID& group_id, BOOL ingnore_God_mod = FALSE) const; protected: // Only used for building titles. BOOL isGroupMember() const { return !mGroupID.isNull(); } diff --git a/indra/newview/llagentui.cpp b/indra/newview/llagentui.cpp index 7404fe5bc4..72ab9235cf 100644 --- a/indra/newview/llagentui.cpp +++ b/indra/newview/llagentui.cpp @@ -150,11 +150,17 @@ BOOL LLAgentUI::buildLocationString(std::string& str, ELocationFormat fmt,const sim_access_string.c_str()); break; case LOCATION_FORMAT_NO_MATURITY: - case LOCATION_FORMAT_FULL: buffer = llformat("%s (%d, %d, %d)", region_name.c_str(), pos_x, pos_y, pos_z); break; + case LOCATION_FORMAT_FULL: + buffer = llformat("%s (%d, %d, %d)%s%s", + region_name.c_str(), + pos_x, pos_y, pos_z, + sim_access_string.empty() ? "" : " - ", + sim_access_string.c_str()); + break; } } else diff --git a/indra/newview/llagentwearables.cpp b/indra/newview/llagentwearables.cpp index d560331392..68ee9cd612 100644 --- a/indra/newview/llagentwearables.cpp +++ b/indra/newview/llagentwearables.cpp @@ -299,6 +299,10 @@ void LLAgentWearables::addWearableToAgentInventoryCallback::fire(const LLUUID& i { gAgentWearables.makeNewOutfitDone(mType, mIndex); } + if (mTodo & CALL_WEARITEM) + { + LLAppearanceManager::instance().addCOFItemLink(inv_item, true); + } } void LLAgentWearables::addWearabletoAgentInventoryDone(const S32 type, @@ -310,21 +314,24 @@ void LLAgentWearables::addWearabletoAgentInventoryDone(const S32 type, return; LLUUID old_item_id = getWearableItemID((EWearableType)type,index); + if (wearable) { wearable->setItemID(item_id); - } - if (old_item_id.notNull()) - { - gInventory.addChangedMask(LLInventoryObserver::LABEL, old_item_id); - setWearable((EWearableType)type,index,wearable); - } - else - { - pushWearable((EWearableType)type,wearable); + if (old_item_id.notNull()) + { + gInventory.addChangedMask(LLInventoryObserver::LABEL, old_item_id); + setWearable((EWearableType)type,index,wearable); + } + else + { + pushWearable((EWearableType)type,wearable); + } } + gInventory.addChangedMask(LLInventoryObserver::LABEL, item_id); + LLViewerInventoryItem* item = gInventory.getItem(item_id); if (item && wearable) { @@ -507,7 +514,7 @@ void LLAgentWearables::saveWearableAs(const EWearableType type, type, index, new_wearable, - addWearableToAgentInventoryCallback::CALL_UPDATE); + addWearableToAgentInventoryCallback::CALL_WEARITEM); LLUUID category_id; if (save_in_lost_and_found) { @@ -1287,25 +1294,29 @@ void LLAgentWearables::makeNewOutfit(const std::string& new_folder_name, j, new_wearable, todo); - if (isWearableCopyable((EWearableType)type, j)) - { - copy_inventory_item( - gAgent.getID(), - item->getPermissions().getOwner(), - item->getUUID(), - folder_id, - new_name, - cb); - } - else + llassert(item); + if (item) { - move_inventory_item( - gAgent.getID(), - gAgent.getSessionID(), - item->getUUID(), - folder_id, - new_name, - cb); + if (isWearableCopyable((EWearableType)type, j)) + { + copy_inventory_item( + gAgent.getID(), + item->getPermissions().getOwner(), + item->getUUID(), + folder_id, + new_name, + cb); + } + else + { + move_inventory_item( + gAgent.getID(), + gAgent.getSessionID(), + item->getUUID(), + folder_id, + new_name, + cb); + } } } } @@ -1594,32 +1605,35 @@ void LLAgentWearables::setWearableOutfit(const LLInventoryItem::item_array_t& it LLWearable* new_wearable = wearables[i]; LLPointer<LLInventoryItem> new_item = items[i]; - const EWearableType type = new_wearable->getType(); - wearables_to_remove[type] = FALSE; - - // MULTI_WEARABLE: using 0th - LLWearable* old_wearable = getWearable(type, 0); - if (old_wearable) + llassert(new_wearable); + if (new_wearable) { - const LLUUID& old_item_id = getWearableItemID(type, 0); - if ((old_wearable->getAssetID() == new_wearable->getAssetID()) && - (old_item_id == new_item->getUUID())) - { - lldebugs << "No change to wearable asset and item: " << LLWearableDictionary::getInstance()->getWearableEntry(type) << llendl; - continue; - } + const EWearableType type = new_wearable->getType(); + wearables_to_remove[type] = FALSE; - // Assumes existing wearables are not dirty. - if (old_wearable->isDirty()) + // MULTI_WEARABLE: using 0th + LLWearable* old_wearable = getWearable(type, 0); + if (old_wearable) { - llassert(0); - continue; + const LLUUID& old_item_id = getWearableItemID(type, 0); + if ((old_wearable->getAssetID() == new_wearable->getAssetID()) && + (old_item_id == new_item->getUUID())) + { + lldebugs << "No change to wearable asset and item: " << LLWearableDictionary::getInstance()->getWearableEntry(type) << llendl; + continue; + } + + // Assumes existing wearables are not dirty. + if (old_wearable->isDirty()) + { + llassert(0); + continue; + } } - } - if (new_wearable) new_wearable->setItemID(new_item->getUUID()); - setWearable(type,0,new_wearable); + setWearable(type,0,new_wearable); + } } std::vector<LLWearable*> wearables_being_removed; @@ -2138,6 +2152,8 @@ void LLAgentWearables::updateServer() void LLAgentWearables::populateMyOutfitsFolder(void) { + llinfos << "starting outfit populate" << llendl; + LLLibraryOutfitsFetch* outfits = new LLLibraryOutfitsFetch(); // Get the complete information on the items in the inventory and diff --git a/indra/newview/llagentwearables.h b/indra/newview/llagentwearables.h index b4f58674af..858540a5f5 100644 --- a/indra/newview/llagentwearables.h +++ b/indra/newview/llagentwearables.h @@ -244,7 +244,8 @@ private: CALL_UPDATE = 1, CALL_RECOVERDONE = 2, CALL_CREATESTANDARDDONE = 4, - CALL_MAKENEWOUTFITDONE = 8 + CALL_MAKENEWOUTFITDONE = 8, + CALL_WEARITEM = 16 }; // MULTI-WEARABLE: index is an EWearableType - more confusing usage. diff --git a/indra/newview/llappearancemgr.cpp b/indra/newview/llappearancemgr.cpp index 0cceba6cb0..eb4a47664b 100644 --- a/indra/newview/llappearancemgr.cpp +++ b/indra/newview/llappearancemgr.cpp @@ -113,6 +113,8 @@ public: protected: ~LLWearInventoryCategoryCallback() { + llinfos << "done all inventory callbacks" << llendl; + // Is the destructor called by ordinary dereference, or because the app's shutting down? // If the inventory callback manager goes away, we're shutting down, no longer want the callback. if( LLInventoryCallbackManager::is_instantiated() ) @@ -150,12 +152,15 @@ protected: void LLOutfitObserver::done() { + llinfos << "done 2nd stage fetch" << llendl; gInventory.removeObserver(this); doOnIdle(boost::bind(&LLOutfitObserver::doWearCategory,this)); } void LLOutfitObserver::doWearCategory() { + llinfos << "starting" << llendl; + // We now have an outfit ready to be copied to agent inventory. Do // it, and wear that outfit normally. if(mCopyItems) @@ -244,6 +249,8 @@ void LLOutfitFetch::done() // What we do here is get the complete information on the items in // the library, and set up an observer that will wait for that to // happen. + llinfos << "done first stage fetch" << llendl; + LLInventoryModel::cat_array_t cat_array; LLInventoryModel::item_array_t item_array; gInventory.collectDescendents(mCompleteFolders.front(), @@ -304,6 +311,8 @@ public: virtual ~LLUpdateAppearanceOnDestroy() { + llinfos << "done update appearance on destroy" << llendl; + if (!LLApp::isExiting()) { LLAppearanceManager::instance().updateAppearanceFromCOF(); @@ -312,6 +321,7 @@ public: /* virtual */ void fire(const LLUUID& inv_item) { + llinfos << "callback fired" << llendl; mFireCount++; } private: @@ -666,6 +676,11 @@ void LLAppearanceManager::filterWearableItems( if (!item->isWearableType()) continue; EWearableType type = item->getWearableType(); + if(type < 0 || type >= WT_COUNT) + { + LL_WARNS("Appearance") << "Invalid wearable type. Inventory type does not match wearable flag bitfield." << LL_ENDL; + continue; + } items_by_type[type].push_back(item); } @@ -703,6 +718,8 @@ void LLAppearanceManager::linkAll(const LLUUID& category, void LLAppearanceManager::updateCOF(const LLUUID& category, bool append) { + llinfos << "starting" << llendl; + const LLUUID cof = getCOF(); // Deactivate currently active gestures in the COF, if replacing outfit @@ -760,6 +777,7 @@ void LLAppearanceManager::updateCOF(const LLUUID& category, bool append) gInventory.notifyObservers(); // Create links to new COF contents. + llinfos << "creating LLUpdateAppearanceOnDestroy" << llendl; LLPointer<LLInventoryCallback> link_waiter = new LLUpdateAppearanceOnDestroy; linkAll(cof, body_items, link_waiter); @@ -772,6 +790,7 @@ void LLAppearanceManager::updateCOF(const LLUUID& category, bool append) { createBaseOutfitLink(category, link_waiter); } + llinfos << "waiting for LLUpdateAppearanceOnDestroy" << llendl; } void LLAppearanceManager::updatePanelOutfitName(const std::string& name) @@ -843,6 +862,8 @@ void LLAppearanceManager::updateAppearanceFromCOF() { // update dirty flag to see if the state of the COF matches // the saved outfit stored as a folder link + llinfos << "starting" << llendl; + updateIsDirty(); dumpCat(getCOF(),"COF, start"); @@ -973,8 +994,9 @@ void LLAppearanceManager::wearInventoryCategory(LLInventoryCategory* category, b { if(!category) return; - lldebugs << "wearInventoryCategory( " << category->getName() + llinfos << "wearInventoryCategory( " << category->getName() << " )" << llendl; + // What we do here is get the complete information on the items in // the inventory, and set up an observer that will wait for that to // happen. @@ -1003,7 +1025,8 @@ void LLAppearanceManager::wearInventoryCategoryOnAvatar( LLInventoryCategory* ca // this up front to avoid having to deal with the case of multiple // wearables being dirty. if(!category) return; - lldebugs << "wearInventoryCategoryOnAvatar( " << category->getName() + + llinfos << "wearInventoryCategoryOnAvatar( " << category->getName() << " )" << llendl; if( gFloaterCustomize ) @@ -1280,6 +1303,23 @@ void LLAppearanceManager::updateIsDirty() } } +void LLAppearanceManager::onFirstFullyVisible() +{ + // If this is the very first time the user has logged into viewer2+ (from a legacy viewer, or new account) + // then auto-populate outfits from the library into the My Outfits folder. + + llinfos << "avatar fully visible" << llendl; + + static bool check_populate_my_outfits = true; + if (check_populate_my_outfits && + (LLInventoryModel::getIsFirstTimeInViewer2() + || gSavedSettings.getBOOL("MyOutfitsAutofill"))) + { + gAgentWearables.populateMyOutfitsFolder(); + } + check_populate_my_outfits = false; +} + //#define DUMP_CAT_VERBOSE void LLAppearanceManager::dumpCat(const LLUUID& cat_id, const std::string& msg) diff --git a/indra/newview/llappearancemgr.h b/indra/newview/llappearancemgr.h index 5fdff45735..28b51ee0f6 100644 --- a/indra/newview/llappearancemgr.h +++ b/indra/newview/llappearancemgr.h @@ -113,6 +113,9 @@ public: // should only be necessary to do on initial login. void updateIsDirty(); + // Called when self avatar is first fully visible. + void onFirstFullyVisible(); + protected: LLAppearanceManager(); ~LLAppearanceManager(); diff --git a/indra/newview/llappviewer.cpp b/indra/newview/llappviewer.cpp index 5b5aad4ea3..fd047abad6 100644 --- a/indra/newview/llappviewer.cpp +++ b/indra/newview/llappviewer.cpp @@ -1953,7 +1953,6 @@ bool LLAppViewer::initConfiguration() // LLFirstUse::addConfigVariable("FirstSandbox"); // LLFirstUse::addConfigVariable("FirstFlexible"); // LLFirstUse::addConfigVariable("FirstDebugMenus"); -// LLFirstUse::addConfigVariable("FirstStreamingMedia"); // LLFirstUse::addConfigVariable("FirstSculptedPrim"); // LLFirstUse::addConfigVariable("FirstVoice"); // LLFirstUse::addConfigVariable("FirstMedia"); @@ -3026,7 +3025,7 @@ bool LLAppViewer::initCache() // Purge cache if it belongs to an old version else { - static const S32 cache_version = 5; + static const S32 cache_version = 6; if (gSavedSettings.getS32("LocalCacheVersion") != cache_version) { mPurgeCache = true; diff --git a/indra/newview/llavataractions.cpp b/indra/newview/llavataractions.cpp index bd987eac77..1d75374930 100644 --- a/indra/newview/llavataractions.cpp +++ b/indra/newview/llavataractions.cpp @@ -181,7 +181,12 @@ void LLAvatarActions::startIM(const LLUUID& id) return; std::string name; - gCacheName->getFullName(id, name); + if (!gCacheName->getFullName(id, name)) + { + gCacheName->get(id, FALSE, boost::bind(&LLAvatarActions::startIM, id)); + return; + } + LLUUID session_id = gIMMgr->addSession(name, IM_NOTHING_SPECIAL, id); if (session_id != LLUUID::null) { diff --git a/indra/newview/llavatarlistitem.cpp b/indra/newview/llavatarlistitem.cpp index 846b2843dd..5011b191f4 100644 --- a/indra/newview/llavatarlistitem.cpp +++ b/indra/newview/llavatarlistitem.cpp @@ -526,21 +526,30 @@ void LLAvatarListItem::updateChildren() LLView* LLAvatarListItem::getItemChildView(EAvatarListItemChildIndex child_view_index) { LLView* child_view = mAvatarName; - if (child_view_index < 0 || ALIC_COUNT <= child_view_index) - { - LL_WARNS("AvatarItemReshape") << "Child view index is out of range: " << child_view_index << LL_ENDL; - return child_view; - } + switch (child_view_index) { - case ALIC_ICON: child_view = mAvatarIcon; break; - case ALIC_NAME: child_view = mAvatarName; break; - case ALIC_INTERACTION_TIME: child_view = mLastInteractionTime; break; - case ALIC_SPEAKER_INDICATOR: child_view = mSpeakingIndicator; break; - case ALIC_INFO_BUTTON: child_view = mInfoBtn; break; - case ALIC_PROFILE_BUTTON: child_view = mProfileBtn; break; + case ALIC_ICON: + child_view = mAvatarIcon; + break; + case ALIC_NAME: + child_view = mAvatarName; + break; + case ALIC_INTERACTION_TIME: + child_view = mLastInteractionTime; + break; + case ALIC_SPEAKER_INDICATOR: + child_view = mSpeakingIndicator; + break; + case ALIC_INFO_BUTTON: + child_view = mInfoBtn; + break; + case ALIC_PROFILE_BUTTON: + child_view = mProfileBtn; + break; default: LL_WARNS("AvatarItemReshape") << "Unexpected child view index is passed: " << child_view_index << LL_ENDL; + // leave child_view untouched } return child_view; diff --git a/indra/newview/llbottomtray.cpp b/indra/newview/llbottomtray.cpp index 93b708f299..c9082da9a9 100644 --- a/indra/newview/llbottomtray.cpp +++ b/indra/newview/llbottomtray.cpp @@ -60,6 +60,27 @@ namespace const std::string& PANEL_MOVEMENT_NAME = "movement_panel"; const std::string& PANEL_CAMERA_NAME = "cam_panel"; const std::string& PANEL_GESTURE_NAME = "gesture_panel"; + + S32 get_panel_min_width(LLLayoutStack* stack, LLPanel* panel) + { + S32 minimal_width = 0; + llassert(stack); + if ( stack && panel && panel->getVisible() ) + { + stack->getPanelMinSize(panel->getName(), &minimal_width, NULL); + } + return minimal_width; + } + + S32 get_curr_width(LLUICtrl* ctrl) + { + S32 cur_width = 0; + if ( ctrl && ctrl->getVisible() ) + { + cur_width = ctrl->getRect().getWidth(); + } + return cur_width; + } } class LLBottomTrayLite @@ -401,6 +422,18 @@ void LLBottomTray::showSnapshotButton(BOOL visible) setTrayButtonVisibleIfPossible(RS_BUTTON_SNAPSHOT, visible); } +void LLBottomTray::toggleMovementControls() +{ + if (mMovementButton) + mMovementButton->onCommit(); +} + +void LLBottomTray::toggleCameraControls() +{ + if (mCamButton) + mCamButton->onCommit(); +} + BOOL LLBottomTray::postBuild() { @@ -1094,58 +1127,131 @@ void LLBottomTray::setTrayButtonVisible(EResizeState shown_object_type, bool vis if (mDummiesMap.count(shown_object_type)) { - mDummiesMap[shown_object_type]->setVisible(visible); + // Hide/show layout panel for dummy icon. + mDummiesMap[shown_object_type]->getParent()->setVisible(visible); } } void LLBottomTray::setTrayButtonVisibleIfPossible(EResizeState shown_object_type, bool visible, bool raise_notification) { - bool can_be_set = true; - - if (visible) + if (!setVisibleAndFitWidths(shown_object_type, visible) && visible && raise_notification) { - LLPanel* panel = mStateProcessedObjectMap[shown_object_type]; - if (NULL == panel) - { - lldebugs << "There is no object to process for state: " << shown_object_type << llendl; - return; - } + LLNotificationsUtil::add("BottomTrayButtonCanNotBeShown", + LLSD(), + LLSD(), + LLNotificationFunctorRegistry::instance().DONOTHING); + } +} - const S32 dummy_width = mDummiesMap.count(shown_object_type) ? mDummiesMap[shown_object_type]->getRect().getWidth() : 0; +bool LLBottomTray::setVisibleAndFitWidths(EResizeState object_type, bool visible) +{ + LLPanel* cur_panel = mStateProcessedObjectMap[object_type]; + if (NULL == cur_panel) + { + lldebugs << "There is no object to process for state: " << object_type << llendl; + return false; + } - const S32 chatbar_panel_width = mNearbyChatBar->getRect().getWidth(); - const S32 chatbar_panel_min_width = mNearbyChatBar->getMinWidth(); + const S32 dummy_width = mDummiesMap.count(object_type) + ? mDummiesMap[object_type]->getParent()->getRect().getWidth() + : 0; - const S32 chiclet_panel_width = mChicletPanel->getParent()->getRect().getWidth(); - const S32 chiclet_panel_min_width = mChicletPanel->getMinWidth(); + bool is_set = true; - const S32 available_width = (chatbar_panel_width - chatbar_panel_min_width) - + (chiclet_panel_width - chiclet_panel_min_width); + if (visible) + { + // Assume that only chiclet panel can be auto-resized and + // don't take into account width of dummy widgets + const S32 available_width = + mChicletPanel->getParent()->getRect().getWidth() - + mChicletPanel->getMinWidth() - + dummy_width; + + S32 preferred_width = mObjectDefaultWidthMap[object_type]; + S32 current_width = cur_panel->getRect().getWidth(); + S32 result_width = 0; + bool decrease_width = false; + + // Mark this button to be shown + mResizeState |= object_type; + + if (preferred_width > 0 && available_width >= preferred_width) + { + result_width = preferred_width; + } + else if (available_width >= current_width) + { + result_width = current_width; + } + else + { + // Calculate the possible shrunk width as difference between current and minimal widths + const S32 chatbar_shrunk_width = + mNearbyChatBar->getRect().getWidth() - mNearbyChatBar->getMinWidth(); + + const S32 sum_of_min_widths = + get_panel_min_width(mToolbarStack, mStateProcessedObjectMap[RS_BUTTON_CAMERA]) + + get_panel_min_width(mToolbarStack, mStateProcessedObjectMap[RS_BUTTON_MOVEMENT]) + + get_panel_min_width(mToolbarStack, mStateProcessedObjectMap[RS_BUTTON_GESTURES]) + + get_panel_min_width(mToolbarStack, mSpeakPanel); + + const S32 sum_of_curr_widths = + get_curr_width(mStateProcessedObjectMap[RS_BUTTON_CAMERA]) + + get_curr_width(mStateProcessedObjectMap[RS_BUTTON_MOVEMENT]) + + get_curr_width(mStateProcessedObjectMap[RS_BUTTON_GESTURES]) + + get_curr_width(mSpeakPanel); + + const S32 possible_shrunk_width = + chatbar_shrunk_width + (sum_of_curr_widths - sum_of_min_widths); + + // Minimal width of current panel + S32 minimal_width = 0; + mToolbarStack->getPanelMinSize(cur_panel->getName(), &minimal_width, NULL); + + if ( (available_width + possible_shrunk_width) >= minimal_width) + { + // There is enough space for minimal width, but set the result_width + // to current_width so buttons widths decreasing will be done in predefined order + result_width = current_width; + decrease_width = true; + } + else + { + // Nothing can be done, give up... + return false; + } + } - const S32 required_width = panel->getRect().getWidth() + dummy_width; - can_be_set = available_width >= required_width; - } + if (result_width != current_width) + { + cur_panel->reshape(result_width, cur_panel->getRect().getHeight()); + current_width = result_width; + } - if (can_be_set) - { - setTrayButtonVisible(shown_object_type, visible); + is_set = processShowButton(object_type, ¤t_width); - // if we hide the button mark it NOT to show while future bottom tray extending - if (!visible) + // Shrink buttons if needed + if (is_set && decrease_width) { - mResizeState &= ~shown_object_type; + processWidthDecreased( -result_width - dummy_width ); } } else { - // mark this button to show it while future bottom tray extending - mResizeState |= shown_object_type; - if ( raise_notification ) - LLNotificationsUtil::add("BottomTrayButtonCanNotBeShown", - LLSD(), - LLSD(), - LLNotificationFunctorRegistry::instance().DONOTHING); + const S32 delta_width = get_curr_width(cur_panel); + + setTrayButtonVisible(object_type, false); + + // Mark button NOT to show while future bottom tray extending + mResizeState &= ~object_type; + + // Extend other buttons if need + if (delta_width) + { + processWidthIncreased(delta_width + dummy_width); + } } + return is_set; } //EOF diff --git a/indra/newview/llbottomtray.h b/indra/newview/llbottomtray.h index ee0eb13218..18c14e5e19 100644 --- a/indra/newview/llbottomtray.h +++ b/indra/newview/llbottomtray.h @@ -94,6 +94,9 @@ public: void showCameraButton(BOOL visible); void showSnapshotButton(BOOL visible); + void toggleMovementControls(); + void toggleCameraControls(); + void onMouselookModeIn(); void onMouselookModeOut(); @@ -173,6 +176,14 @@ private: */ void setTrayButtonVisibleIfPossible(EResizeState shown_object_type, bool visible, bool raise_notification = true); + /** + * Sets passed visibility to required button and fit widths of shown + * buttons(notice that method can shrink widths to + * allocate needed room in bottom tray). + * Returns true if visibility of required button was set. + */ + bool setVisibleAndFitWidths(EResizeState object_type, bool visible); + MASK mResizeState; typedef std::map<EResizeState, LLPanel*> state_object_map_t; diff --git a/indra/newview/llcallfloater.cpp b/indra/newview/llcallfloater.cpp index 97a5c3b8e2..76e058a1c3 100644 --- a/indra/newview/llcallfloater.cpp +++ b/indra/newview/llcallfloater.cpp @@ -303,8 +303,10 @@ void LLCallFloater::updateSession() refreshParticipantList(); updateAgentModeratorState(); - //show floater for voice calls - if (!is_local_chat) + //show floater for voice calls & only in CONNECTED to voice channel state + if (!is_local_chat && + voice_channel && + LLVoiceChannel::STATE_CONNECTED == voice_channel->getState()) { LLIMFloater* im_floater = LLIMFloater::findInstance(session_id); bool show_me = !(im_floater && im_floater->getVisible()); @@ -333,6 +335,7 @@ void LLCallFloater::refreshParticipantList() { mParticipants = new LLParticipantList(mSpeakerManager, mAvatarList, true, mVoiceType != VC_GROUP_CHAT && mVoiceType != VC_AD_HOC_CHAT); mParticipants->setValidateSpeakerCallback(boost::bind(&LLCallFloater::validateSpeaker, this, _1)); + mParticipants->setSortOrder(LLParticipantList::E_SORT_BY_RECENT_SPEAKERS); if (LLLocalSpeakerMgr::getInstance() == mSpeakerManager) { diff --git a/indra/newview/llcallingcard.cpp b/indra/newview/llcallingcard.cpp index d988770f90..79a2631c31 100644 --- a/indra/newview/llcallingcard.cpp +++ b/indra/newview/llcallingcard.cpp @@ -56,12 +56,14 @@ #include "llnotifications.h" #include "llnotificationsutil.h" #include "llresmgr.h" +#include "llslurl.h" #include "llimview.h" #include "llviewercontrol.h" #include "llviewernetwork.h" #include "llviewerobjectlist.h" #include "llviewerwindow.h" #include "llvoavatar.h" +#include "llavataractions.h" ///---------------------------------------------------------------------------- /// Local function declarations, constants, enums, and typedefs @@ -680,9 +682,11 @@ void LLAvatarTracker::processNotify(LLMessageSystem* msg, bool online) } BOOL notify = FALSE; LLSD args; + LLSD payload; for(S32 i = 0; i < count; ++i) { msg->getUUIDFast(_PREHASH_AgentBlock, _PREHASH_AgentID, agent_id, i); + payload["FROM_ID"] = agent_id; info = getBuddyInfo(agent_id); if(info) { @@ -715,7 +719,21 @@ void LLAvatarTracker::processNotify(LLMessageSystem* msg, bool online) if(notify) { // Popup a notify box with online status of this agent - LLNotificationPtr notification = LLNotificationsUtil::add(online ? "FriendOnline" : "FriendOffline", args); + LLNotificationPtr notification; + + if (online) + { + notification = + LLNotificationsUtil::add("FriendOnline", + args, + payload.with("respond_on_mousedown", TRUE), + boost::bind(&LLAvatarActions::startIM, agent_id)); + } + else + { + notification = + LLNotificationsUtil::add("FriendOffline", args, payload); + } // If there's an open IM session with this agent, send a notification there too. LLUUID session_id = LLIMMgr::computeSessionID(IM_NOTHING_SPECIAL, agent_id); diff --git a/indra/newview/llchathistory.cpp b/indra/newview/llchathistory.cpp index 929457046c..81cc52528c 100644 --- a/indra/newview/llchathistory.cpp +++ b/indra/newview/llchathistory.cpp @@ -66,6 +66,11 @@ static LLDefaultChildRegistry::Register<LLChatHistory> r("chat_history"); const static std::string NEW_LINE(rawstr_to_utf8("\n")); +const static U32 LENGTH_OF_TIME_STR = std::string("12:00").length(); + +const static std::string SLURL_APP_AGENT = "secondlife:///app/agent/"; +const static std::string SLURL_ABOUT = "/about"; + // support for secondlife:///app/objectim/{UUID}/ SLapps class LLObjectIMHandler : public LLCommandHandler { @@ -116,7 +121,7 @@ public: //*TODO remake it using mouse enter/leave and static LLHandle<LLIconCtrl> to add/remove as a child BOOL handleToolTip(S32 x, S32 y, MASK mask) { - LLViewerTextEditor* name = getChild<LLViewerTextEditor>("user_name"); + LLTextBase* name = getChild<LLTextBase>("user_name"); if (name && name->parentPointInView(x, y) && mAvatarID.notNull() && SYSTEM_FROM != mFrom) { @@ -257,7 +262,9 @@ public: mSessionID = chat.mSessionID; mSourceType = chat.mSourceType; gCacheName->get(mAvatarID, FALSE, boost::bind(&LLChatHistoryHeader::nameUpdatedCallback, this, _1, _2, _3, _4)); - if(chat.mFromID.isNull()) + + //*TODO overly defensive thing, source type should be maintained out there + if(chat.mFromID.isNull() || chat.mFromName == SYSTEM_FROM) { mSourceType = CHAT_SOURCE_SYSTEM; } @@ -267,17 +274,13 @@ public: userName->setReadOnlyColor(style_params.readonly_color()); userName->setColor(style_params.color()); - if(!chat.mFromName.empty()) - { - userName->setValue(chat.mFromName); - mFrom = chat.mFromName; - } - else + userName->setValue(chat.mFromName); + if (chat.mFromName.empty() || CHAT_SOURCE_SYSTEM == mSourceType) { - std::string SL = LLTrans::getString("SECOND_LIFE"); - userName->setValue(SL); + userName->setValue(LLTrans::getString("SECOND_LIFE")); } + mMinUserNameWidth = style_params.font()->getWidth(userName->getWText().c_str()) + PADDING; setTimeField(chat); @@ -287,15 +290,17 @@ public: if(mSourceType != CHAT_SOURCE_AGENT) icon->setDrawTooltip(false); - if(!chat.mFromID.isNull()) - { - icon->setValue(chat.mFromID); - } - else if (userName->getValue().asString()==LLTrans::getString("SECOND_LIFE")) + switch (mSourceType) { - icon->setValue(LLSD("SL_Logo")); + case CHAT_SOURCE_AGENT: + icon->setValue(chat.mFromID); + break; + case CHAT_SOURCE_OBJECT: + icon->setValue(LLSD("OBJECT_Icon")); + break; + case CHAT_SOURCE_SYSTEM: + icon->setValue(LLSD("SL_Logo")); } - } /*virtual*/ void draw() @@ -539,6 +544,7 @@ void LLChatHistory::clear() void LLChatHistory::appendMessage(const LLChat& chat, const LLSD &args, const LLStyle::Params& input_append_params) { bool use_plain_text_chat_history = args["use_plain_text_chat_history"].asBoolean(); + if (!mEditor->scrolledToEnd() && chat.mFromID != gAgent.getID() && !chat.mFromName.empty()) { mUnreadChatSources.insert(chat.mFromName); @@ -604,6 +610,14 @@ void LLChatHistory::appendMessage(const LLChat& chat, const LLSD &args, const LL style_params.font.style = "ITALIC"; } + //*HACK we graying out chat history by graying out messages that contains full date in a time string + bool message_from_log = chat.mTimeStr.length() > LENGTH_OF_TIME_STR; + if (message_from_log) + { + style_params.color(LLColor4::grey); + style_params.readonly_color(LLColor4::grey); + } + if (use_plain_text_chat_history) { mEditor->appendText("[" + chat.mTimeStr + "] ", mEditor->getText().size() != 0, style_params); @@ -639,10 +653,10 @@ void LLChatHistory::appendMessage(const LLChat& chat, const LLSD &args, const LL mEditor->appendText("<nolink>" + chat.mFromName + "</nolink>" + delimiter, false, link_params); } - else if ( chat.mFromName != SYSTEM_FROM && chat.mFromID.notNull() ) + else if ( chat.mFromName != SYSTEM_FROM && chat.mFromID.notNull() && !message_from_log) { LLStyle::Params link_params(style_params); - link_params.fillFrom(LLStyleMap::instance().lookupAgent(chat.mFromID)); + link_params.overwriteFrom(LLStyleMap::instance().lookupAgent(chat.mFromID)); // Convert the name to a hotlink and add to message. mEditor->appendText(chat.mFromName + delimiter, false, link_params); } @@ -768,6 +782,20 @@ void LLChatHistory::appendMessage(const LLChat& chat, const LLSD &args, const LL else { std::string message = irc_me ? chat.mText.substr(3) : chat.mText; + + + //MESSAGE TEXT PROCESSING + //*HACK getting rid of redundant sender names in system notifications sent using sender name (see EXT-5010) + if (use_plain_text_chat_history && gAgentID != chat.mFromID && chat.mFromID.notNull()) + { + std::string slurl_about = SLURL_APP_AGENT + chat.mFromID.asString() + SLURL_ABOUT; + if (message.length() > slurl_about.length() && + message.compare(0, slurl_about.length(), slurl_about) == 0) + { + message = message.substr(slurl_about.length(), message.length()-1); + } + } + mEditor->appendText(message, FALSE, style_params); } mEditor->blockUndo(); diff --git a/indra/newview/llchatitemscontainerctrl.cpp b/indra/newview/llchatitemscontainerctrl.cpp index f772aea4bd..e164aa8fc4 100644 --- a/indra/newview/llchatitemscontainerctrl.cpp +++ b/indra/newview/llchatitemscontainerctrl.cpp @@ -321,7 +321,10 @@ void LLNearbyChatToastPanel::draw() if(icon) { icon->setDrawTooltip(mSourceType == CHAT_SOURCE_AGENT); - icon->setValue(mFromID); + if(mSourceType == CHAT_SOURCE_AGENT) + icon->setValue(mFromID); + else + icon->setValue(LLSD("OBJECT_Icon")); } mIsDirty = false; } diff --git a/indra/newview/llchiclet.h b/indra/newview/llchiclet.h index b006ae3420..ba17c5970e 100644 --- a/indra/newview/llchiclet.h +++ b/indra/newview/llchiclet.h @@ -1228,12 +1228,15 @@ T* LLChicletPanel::findChiclet(const LLUUID& im_session_id) { LLChiclet* chiclet = *it; + llassert(chiclet); + if (!chiclet) continue; if(chiclet->getSessionId() == im_session_id) { T* result = dynamic_cast<T*>(chiclet); - if(!result && chiclet) + if(!result) { llwarns << "Found chiclet but of wrong type " << llendl; + continue; } return result; } diff --git a/indra/newview/lldrawable.cpp b/indra/newview/lldrawable.cpp index 634cff14a3..390e950d75 100644 --- a/indra/newview/lldrawable.cpp +++ b/indra/newview/lldrawable.cpp @@ -1056,9 +1056,13 @@ LLSpatialBridge::LLSpatialBridge(LLDrawable* root, BOOL render_by_group, U32 dat llassert(mDrawable); llassert(mDrawable->getRegion()); - llassert(mDrawable->getRegion()->getSpatialPartition(mPartitionType)); + LLSpatialPartition *part = mDrawable->getRegion()->getSpatialPartition(mPartitionType); + llassert(part); - mDrawable->getRegion()->getSpatialPartition(mPartitionType)->put(this); + if (part) + { + part->put(this); + } } LLSpatialBridge::~LLSpatialBridge() @@ -1374,10 +1378,14 @@ BOOL LLSpatialBridge::updateMove() { llassert(mDrawable); llassert(mDrawable->getRegion()); - llassert(mDrawable->getRegion()->getSpatialPartition(mPartitionType)); + LLSpatialPartition* part = mDrawable->getRegion()->getSpatialPartition(mPartitionType); + llassert(part); mOctree->balance(); - mDrawable->getRegion()->getSpatialPartition(mPartitionType)->move(this, getSpatialGroup(), TRUE); + if (part) + { + part->move(this, getSpatialGroup(), TRUE); + } return TRUE; } diff --git a/indra/newview/lldrawpoolalpha.cpp b/indra/newview/lldrawpoolalpha.cpp index 0e02bc4b01..875c9ac6a9 100644 --- a/indra/newview/lldrawpoolalpha.cpp +++ b/indra/newview/lldrawpoolalpha.cpp @@ -180,6 +180,7 @@ void LLDrawPoolAlpha::render(S32 pass) if (LLPipeline::sFastAlpha && !deferred_render) { + LLGLDisable blend_disable(GL_BLEND); gGL.setAlphaRejectSettings(LLRender::CF_GREATER, 0.33f); if (mVertexShaderLevel > 0) { diff --git a/indra/newview/lldriverparam.cpp b/indra/newview/lldriverparam.cpp index 8ebfa471f3..830e975e8a 100644 --- a/indra/newview/lldriverparam.cpp +++ b/indra/newview/lldriverparam.cpp @@ -432,6 +432,12 @@ const LLVector3* LLDriverParam::getNextDistortion(U32 *index, LLPolyMesh **poly_ } } + llassert(driven); + if (!driven) + { + return NULL; // shouldn't happen, but... + } + // We're already in the middle of a param's distortions, so get the next one. const LLVector3* v = driven->mParam->getNextDistortion( index, poly_mesh ); if( (!v) && (iter != mDriven.end()) ) diff --git a/indra/newview/llface.cpp b/indra/newview/llface.cpp index 4822c303bf..c40edb6511 100644 --- a/indra/newview/llface.cpp +++ b/indra/newview/llface.cpp @@ -182,6 +182,7 @@ void LLFace::init(LLDrawable* drawablep, LLViewerObject* objp) mAtlasInfop = NULL ; mUsingAtlas = FALSE ; + mHasMedia = FALSE ; } static LLFastTimer::DeclareTimer FTM_DESTROY_FACE("Destroy Face"); @@ -322,7 +323,8 @@ void LLFace::switchTexture(LLViewerTexture* new_texture) if(!new_texture) { - llerrs << "Can not switch to a null texture." << llendl ; + llerrs << "Can not switch to a null texture." << llendl; + return; } new_texture->addTextureStats(mTexture->getMaxVirtualSize()) ; @@ -1061,17 +1063,20 @@ BOOL LLFace::getGeometryVolume(const LLVolume& volume, if (rebuild_color) { - GLfloat alpha[4] = - { - 0.00f, - 0.25f, - 0.5f, - 0.75f - }; - - if (getPoolType() != LLDrawPool::POOL_ALPHA && (LLPipeline::sRenderDeferred || (LLPipeline::sRenderBump && tep->getShiny()))) + if (tep) { - color.mV[3] = U8 (alpha[tep->getShiny()] * 255); + GLfloat alpha[4] = + { + 0.00f, + 0.25f, + 0.5f, + 0.75f + }; + + if (getPoolType() != LLDrawPool::POOL_ALPHA && (LLPipeline::sRenderDeferred || (LLPipeline::sRenderBump && tep->getShiny()))) + { + color.mV[3] = U8 (alpha[tep->getShiny()] * 255); + } } } @@ -1354,17 +1359,33 @@ BOOL LLFace::getGeometryVolume(const LLVolume& volume, return TRUE; } +//check if the face has a media +BOOL LLFace::hasMedia() const +{ + if(mHasMedia) + { + return TRUE ; + } + if(mTexture.notNull()) + { + return mTexture->hasParcelMedia() ; //if has a parcel media + } + + return FALSE ; //no media. +} + const F32 LEAST_IMPORTANCE = 0.05f ; const F32 LEAST_IMPORTANCE_FOR_LARGE_IMAGE = 0.3f ; F32 LLFace::getTextureVirtualSize() { F32 radius; - F32 cos_angle_to_view_dir; - mPixelArea = calcPixelArea(cos_angle_to_view_dir, radius); + F32 cos_angle_to_view_dir; + BOOL in_frustum = calcPixelArea(cos_angle_to_view_dir, radius); - if (mPixelArea <= 0) + if (mPixelArea < 0.0001f || !in_frustum) { + setVirtualSize(0.f) ; return 0.f; } @@ -1401,23 +1422,48 @@ F32 LLFace::getTextureVirtualSize() } } + setVirtualSize(face_area) ; + return face_area; } -F32 LLFace::calcPixelArea(F32& cos_angle_to_view_dir, F32& radius) +BOOL LLFace::calcPixelArea(F32& cos_angle_to_view_dir, F32& radius) { //get area of circle around face LLVector3 center = getPositionAgent(); - LLVector3 size = (mExtents[1] - mExtents[0]) * 0.5f; - + LLVector3 size = (mExtents[1] - mExtents[0]) * 0.5f; LLViewerCamera* camera = LLViewerCamera::getInstance(); + + F32 size_squared = size.lengthSquared() ; LLVector3 lookAt = center - camera->getOrigin(); - F32 dist = lookAt.normVec() ; + F32 dist = lookAt.normVec() ; //get area of circle around node - F32 app_angle = atanf(size.length()/dist); + F32 app_angle = atanf(fsqrtf(size_squared) / dist); radius = app_angle*LLDrawable::sCurPixelAngle; - F32 face_area = radius*radius * 3.14159f; + mPixelArea = radius*radius * 3.14159f; + cos_angle_to_view_dir = lookAt * camera->getXAxis() ; + + //if has media, check if the face is out of the view frustum. + if(hasMedia()) + { + if(!camera->AABBInFrustum(center, size)) + { + mImportanceToCamera = 0.f ; + return false ; + } + if(cos_angle_to_view_dir > camera->getCosHalfFov()) //the center is within the view frustum + { + cos_angle_to_view_dir = 1.0f ; + } + else + { + if(dist * dist * (lookAt - camera->getXAxis()).lengthSquared() < size_squared) + { + cos_angle_to_view_dir = 1.0f ; + } + } + } if(dist < mBoundingSphereRadius) //camera is very close { @@ -1425,12 +1471,11 @@ F32 LLFace::calcPixelArea(F32& cos_angle_to_view_dir, F32& radius) mImportanceToCamera = 1.0f ; } else - { - cos_angle_to_view_dir = lookAt * camera->getXAxis() ; + { mImportanceToCamera = LLFace::calcImportanceToCamera(cos_angle_to_view_dir, dist) ; } - return face_area ; + return true ; } //the projection of the face partially overlaps with the screen diff --git a/indra/newview/llface.h b/indra/newview/llface.h index e12b64a2f2..67dd97e6f7 100644 --- a/indra/newview/llface.h +++ b/indra/newview/llface.h @@ -194,6 +194,9 @@ public: F32 getTextureVirtualSize() ; F32 getImportanceToCamera()const {return mImportanceToCamera ;} + void setHasMedia(bool has_media) { mHasMedia = has_media ;} + BOOL hasMedia() const ; + //for atlas LLTextureAtlasSlot* getAtlasInfo() ; void setAtlasInUse(BOOL flag); @@ -208,7 +211,7 @@ public: private: F32 adjustPartialOverlapPixelArea(F32 cos_angle_to_view_dir, F32 radius ); - F32 calcPixelArea(F32& cos_angle_to_view_dir, F32& radius) ; + BOOL calcPixelArea(F32& cos_angle_to_view_dir, F32& radius) ; public: static F32 calcImportanceToCamera(F32 to_view_dir, F32 dist); @@ -262,7 +265,7 @@ private: //based on the distance from the face to the view point and the angle from the face center to the view direction. F32 mImportanceToCamera ; F32 mBoundingSphereRadius ; - + bool mHasMedia ; //atlas LLPointer<LLTextureAtlasSlot> mAtlasInfop ; diff --git a/indra/newview/llfavoritesbar.cpp b/indra/newview/llfavoritesbar.cpp index 1e8a739d78..bf7c735488 100644 --- a/indra/newview/llfavoritesbar.cpp +++ b/indra/newview/llfavoritesbar.cpp @@ -1264,8 +1264,11 @@ LLInventoryModel::item_array_t::iterator LLFavoritesBarCtrl::findItemByUUID(LLIn void LLFavoritesBarCtrl::insertBeforeItem(LLInventoryModel::item_array_t& items, const LLUUID& beforeItemId, LLViewerInventoryItem* insertedItem) { LLViewerInventoryItem* beforeItem = gInventory.getItem(beforeItemId); - - items.insert(findItemByUUID(items, beforeItem->getUUID()), insertedItem); + llassert(beforeItem); + if (beforeItem) + { + items.insert(findItemByUUID(items, beforeItem->getUUID()), insertedItem); + } } // EOF diff --git a/indra/newview/llfeaturemanager.cpp b/indra/newview/llfeaturemanager.cpp index fb724f30e0..fbb90c69f3 100644 --- a/indra/newview/llfeaturemanager.cpp +++ b/indra/newview/llfeaturemanager.cpp @@ -287,6 +287,7 @@ BOOL LLFeatureManager::loadFeatureTables() if (!flp) { LL_ERRS("RenderInit") << "Specified parameter before <list> keyword!" << LL_ENDL; + return FALSE; } S32 available; F32 recommended; diff --git a/indra/newview/llfloaterevent.cpp b/indra/newview/llfloaterevent.cpp new file mode 100644 index 0000000000..64efa10ef9 --- /dev/null +++ b/indra/newview/llfloaterevent.cpp @@ -0,0 +1,324 @@ +/** + * @file llfloaterevent.cpp + * @brief Display for events in the finder + * + * $LicenseInfo:firstyear=2004&license=viewergpl$ + * + * Copyright (c) 2004-2009, Linden Research, Inc. + * + * Second Life Viewer Source Code + * The source code in this file ("Source Code") is provided by Linden Lab + * to you under the terms of the GNU General Public License, version 2.0 + * ("GPL"), unless you have obtained a separate licensing agreement + * ("Other License"), formally executed by you and Linden Lab. Terms of + * the GPL can be found in doc/GPL-license.txt in this distribution, or + * online at http://secondlifegrid.net/programs/open_source/licensing/gplv2 + * + * There are special exceptions to the terms and conditions of the GPL as + * it is applied to this Source Code. View the full text of the exception + * in the file doc/FLOSS-exception.txt in this software distribution, or + * online at + * http://secondlifegrid.net/programs/open_source/licensing/flossexception + * + * By copying, modifying or distributing this software, you acknowledge + * that you have read and understood your obligations described above, + * and agree to abide by those obligations. + * + * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO + * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, + * COMPLETENESS OR PERFORMANCE. + * $/LicenseInfo$ + */ + +#include "llviewerprecompiledheaders.h" + +#include "llfloaterevent.h" + +#include "message.h" +#include "llnotificationsutil.h" +#include "llui.h" + +#include "llagent.h" +#include "llviewerwindow.h" +#include "llbutton.h" +#include "llcachename.h" +#include "llcommandhandler.h" // secondlife:///app/chat/ support +#include "lleventflags.h" +#include "lleventnotifier.h" +#include "llexpandabletextbox.h" +#include "llfloater.h" +#include "llfloaterreg.h" +#include "llfloaterworldmap.h" +#include "llinventorymodel.h" +#include "llsecondlifeurls.h" +#include "llslurl.h" +#include "lltextbox.h" +#include "lltexteditor.h" +#include "lluiconstants.h" +#include "llviewercontrol.h" +#include "llweb.h" +#include "llworldmap.h" +#include "lluictrlfactory.h" +#include "lltrans.h" + + +class LLEventHandler : public LLCommandHandler +{ +public: + // requires trusted browser to trigger + LLEventHandler() : LLCommandHandler("event", UNTRUSTED_THROTTLE) { } + bool handle(const LLSD& params, const LLSD& query_map, + LLMediaCtrl* web) + { + if (params.size() < 1) + { + return false; + } + + LLFloaterEvent* floater = LLFloaterReg::getTypedInstance<LLFloaterEvent>("event"); + if (floater) + { + floater->setEventID(params[0].asInteger()); + LLFloaterReg::showTypedInstance<LLFloaterEvent>("event"); + return true; + } + + return false; + } +}; +LLEventHandler gEventHandler; + +LLFloaterEvent::LLFloaterEvent(const LLSD& key) + : LLFloater(key), + + mEventID(0) +{ +} + + +LLFloaterEvent::~LLFloaterEvent() +{ +} + + +BOOL LLFloaterEvent::postBuild() +{ + mTBName = getChild<LLTextBox>("event_name"); + + mTBCategory = getChild<LLTextBox>("event_category"); + + mTBDate = getChild<LLTextBox>("event_date"); + + mTBDuration = getChild<LLTextBox>("event_duration"); + + mTBDesc = getChild<LLExpandableTextBox>("event_desc"); + mTBDesc->setEnabled(FALSE); + + mTBRunBy = getChild<LLTextBox>("event_runby"); + mTBLocation = getChild<LLTextBox>("event_location"); + mTBCover = getChild<LLTextBox>("event_cover"); + + mTeleportBtn = getChild<LLButton>( "teleport_btn"); + mTeleportBtn->setClickedCallback(onClickTeleport, this); + + mMapBtn = getChild<LLButton>( "map_btn"); + mMapBtn->setClickedCallback(onClickMap, this); + + mNotifyBtn = getChild<LLButton>( "notify_btn"); + mNotifyBtn->setClickedCallback(onClickNotify, this); + + mCreateEventBtn = getChild<LLButton>( "create_event_btn"); + mCreateEventBtn->setClickedCallback(onClickCreateEvent, this); + + mGodDeleteEventBtn = getChild<LLButton>( "god_delete_event_btn"); + mGodDeleteEventBtn->setClickedCallback(boost::bind(&LLFloaterEvent::onClickDeleteEvent, this)); + + return TRUE; +} + +void LLFloaterEvent::setEventID(const U32 event_id) +{ + mEventID = event_id; + // Should reset all of the panel state here + resetInfo(); + + if (event_id != 0) + { + sendEventInfoRequest(); + } +} + +void LLFloaterEvent::onClickDeleteEvent() +{ + LLMessageSystem* msg = gMessageSystem; + + msg->newMessageFast(_PREHASH_EventGodDelete); + msg->nextBlockFast(_PREHASH_AgentData); + msg->addUUIDFast(_PREHASH_AgentID, gAgent.getID()); + msg->addUUIDFast(_PREHASH_SessionID, gAgent.getSessionID()); + + msg->nextBlockFast(_PREHASH_EventData); + msg->addU32Fast(_PREHASH_EventID, mEventID); + + gAgent.sendReliableMessage(); +} + +void LLFloaterEvent::sendEventInfoRequest() +{ + LLMessageSystem *msg = gMessageSystem; + + msg->newMessageFast(_PREHASH_EventInfoRequest); + msg->nextBlockFast(_PREHASH_AgentData); + msg->addUUIDFast(_PREHASH_AgentID, gAgent.getID() ); + msg->addUUIDFast(_PREHASH_SessionID, gAgent.getSessionID() ); + msg->nextBlockFast(_PREHASH_EventData); + msg->addU32Fast(_PREHASH_EventID, mEventID); + gAgent.sendReliableMessage(); +} + +//static +void LLFloaterEvent::processEventInfoReply(LLMessageSystem *msg, void **) +{ + // extract the agent id + LLUUID agent_id; + msg->getUUIDFast(_PREHASH_AgentData, _PREHASH_AgentID, agent_id ); + + LLFloaterEvent* floater = LLFloaterReg::getTypedInstance<LLFloaterEvent>("event"); + + if(floater) + { + floater->mEventInfo.unpack(msg); + floater->mTBName->setText(floater->mEventInfo.mName); + floater->mTBCategory->setText(floater->mEventInfo.mCategoryStr); + floater->mTBDate->setText(floater->mEventInfo.mTimeStr); + floater->mTBDesc->setText(floater->mEventInfo.mDesc); + floater->mTBRunBy->setText(LLSLURL::buildCommand("agent", floater->mEventInfo.mRunByID, "inspect")); + + floater->mTBDuration->setText(llformat("%d:%.2d", floater->mEventInfo.mDuration / 60, floater->mEventInfo.mDuration % 60)); + + if (!floater->mEventInfo.mHasCover) + { + floater->mTBCover->setText(floater->getString("none")); + } + else + { + floater->mTBCover->setText(llformat("%d", floater->mEventInfo.mCover)); + } + + F32 global_x = (F32)floater->mEventInfo.mPosGlobal.mdV[VX]; + F32 global_y = (F32)floater->mEventInfo.mPosGlobal.mdV[VY]; + + S32 region_x = llround(global_x) % REGION_WIDTH_UNITS; + S32 region_y = llround(global_y) % REGION_WIDTH_UNITS; + S32 region_z = llround((F32)floater->mEventInfo.mPosGlobal.mdV[VZ]); + + std::string desc = floater->mEventInfo.mSimName + llformat(" (%d, %d, %d)", region_x, region_y, region_z); + floater->mTBLocation->setText(desc); + + if (floater->mEventInfo.mEventFlags & EVENT_FLAG_MATURE) + { + floater->childSetVisible("event_mature_yes", TRUE); + floater->childSetVisible("event_mature_no", FALSE); + } + else + { + floater->childSetVisible("event_mature_yes", FALSE); + floater->childSetVisible("event_mature_no", TRUE); + } + + if (floater->mEventInfo.mUnixTime < time_corrected()) + { + floater->mNotifyBtn->setEnabled(FALSE); + } + else + { + floater->mNotifyBtn->setEnabled(TRUE); + } + + if (gEventNotifier.hasNotification(floater->mEventInfo.mID)) + { + floater->mNotifyBtn->setLabel(floater->getString("dont_notify")); + } + else + { + floater->mNotifyBtn->setLabel(floater->getString("notify")); + } + + floater->mMapBtn->setEnabled(TRUE); + floater->mTeleportBtn->setEnabled(TRUE); + } +} + + +void LLFloaterEvent::draw() +{ + mGodDeleteEventBtn->setVisible(gAgent.isGodlike()); + + LLPanel::draw(); +} + +void LLFloaterEvent::resetInfo() +{ + mTBName->setText(LLStringUtil::null); + mTBCategory->setText(LLStringUtil::null); + mTBDate->setText(LLStringUtil::null); + mTBDesc->setText(LLStringUtil::null); + mTBDuration->setText(LLStringUtil::null); + mTBCover->setText(LLStringUtil::null); + mTBLocation->setText(LLStringUtil::null); + mTBRunBy->setText(LLStringUtil::null); + mNotifyBtn->setEnabled(FALSE); + mMapBtn->setEnabled(FALSE); + mTeleportBtn->setEnabled(FALSE); +} + +// static +void LLFloaterEvent::onClickTeleport(void* data) +{ + LLFloaterEvent* self = (LLFloaterEvent*)data; + LLFloaterWorldMap* worldmap_instance = LLFloaterWorldMap::getInstance(); + if (!self->mEventInfo.mPosGlobal.isExactlyZero()&&worldmap_instance) + { + gAgent.teleportViaLocation(self->mEventInfo.mPosGlobal); + worldmap_instance->trackLocation(self->mEventInfo.mPosGlobal); + } +} + + +// static +void LLFloaterEvent::onClickMap(void* data) +{ + LLFloaterEvent* self = (LLFloaterEvent*)data; + LLFloaterWorldMap* worldmap_instance = LLFloaterWorldMap::getInstance(); + + if (!self->mEventInfo.mPosGlobal.isExactlyZero()&&worldmap_instance) + { + worldmap_instance->trackLocation(self->mEventInfo.mPosGlobal); + LLFloaterReg::showInstance("world_map", "center"); + } +} + + +// static +void LLFloaterEvent::onClickCreateEvent(void* data) +{ + LLNotificationsUtil::add("PromptGoToEventsPage");//, LLSD(), LLSD(), callbackCreateEventWebPage); +} + + +// static +void LLFloaterEvent::onClickNotify(void *data) +{ + LLFloaterEvent* self = (LLFloaterEvent*)data; + + if (!gEventNotifier.hasNotification(self->mEventID)) + { + gEventNotifier.add(self->mEventInfo); + self->mNotifyBtn->setLabel(self->getString("dont_notify")); + } + else + { + gEventNotifier.remove(self->mEventInfo.mID); + self->mNotifyBtn->setLabel(self->getString("notify")); + } +} diff --git a/indra/newview/llfloaterevent.h b/indra/newview/llfloaterevent.h new file mode 100644 index 0000000000..54aaaf6a0f --- /dev/null +++ b/indra/newview/llfloaterevent.h @@ -0,0 +1,96 @@ +/** + * @file llfloaterevent.h + * @brief Display for events in the finder + * + * $LicenseInfo:firstyear=2004&license=viewergpl$ + * + * Copyright (c) 2004-2009, Linden Research, Inc. + * + * Second Life Viewer Source Code + * The source code in this file ("Source Code") is provided by Linden Lab + * to you under the terms of the GNU General Public License, version 2.0 + * ("GPL"), unless you have obtained a separate licensing agreement + * ("Other License"), formally executed by you and Linden Lab. Terms of + * the GPL can be found in doc/GPL-license.txt in this distribution, or + * online at http://secondlifegrid.net/programs/open_source/licensing/gplv2 + * + * There are special exceptions to the terms and conditions of the GPL as + * it is applied to this Source Code. View the full text of the exception + * in the file doc/FLOSS-exception.txt in this software distribution, or + * online at + * http://secondlifegrid.net/programs/open_source/licensing/flossexception + * + * By copying, modifying or distributing this software, you acknowledge + * that you have read and understood your obligations described above, + * and agree to abide by those obligations. + * + * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO + * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, + * COMPLETENESS OR PERFORMANCE. + * $/LicenseInfo$ + */ + +#ifndef LL_LLFLOATEREVENT_H +#define LL_LLFLOATEREVENT_H + +#include "llfloater.h" +#include "lleventinfo.h" +#include "lluuid.h" +#include "v3dmath.h" + +class LLTextBox; +class LLTextEditor; +class LLButton; +class LLExpandableTextBox; +class LLMessageSystem; + +class LLFloaterEvent : public LLFloater +{ +public: + LLFloaterEvent(const LLSD& key); + /*virtual*/ ~LLFloaterEvent(); + + /*virtual*/ BOOL postBuild(); + /*virtual*/ void draw(); + + void setEventID(const U32 event_id); + void sendEventInfoRequest(); + + static void processEventInfoReply(LLMessageSystem *msg, void **); + + U32 getEventID() { return mEventID; } + +protected: + void resetInfo(); + + static void onClickTeleport(void*); + static void onClickMap(void*); + //static void onClickLandmark(void*); + static void onClickCreateEvent(void*); + static void onClickNotify(void*); + void onClickDeleteEvent(); + +// static bool callbackCreateEventWebPage(const LLSD& notification, const LLSD& response); + +protected: + U32 mEventID; + LLEventInfo mEventInfo; + + LLTextBox* mTBName; + LLTextBox* mTBCategory; + LLTextBox* mTBDate; + LLTextBox* mTBDuration; + LLExpandableTextBox* mTBDesc; + + LLTextBox* mTBRunBy; + LLTextBox* mTBLocation; + LLTextBox* mTBCover; + + LLButton* mTeleportBtn; + LLButton* mMapBtn; + LLButton* mCreateEventBtn; + LLButton* mGodDeleteEventBtn; + LLButton* mNotifyBtn; +}; + +#endif // LL_LLFLOATEREVENT_H diff --git a/indra/newview/llfloatergesture.cpp b/indra/newview/llfloatergesture.cpp index b684e1f985..9c1ac2631d 100644 --- a/indra/newview/llfloatergesture.cpp +++ b/indra/newview/llfloatergesture.cpp @@ -203,12 +203,12 @@ BOOL LLFloaterGesture::postBuild() gInventory.addObserver(this); fetchDescendents(folders); - buildGestureList(); - - mGestureList->setFocus(TRUE); - if (mGestureList) { + buildGestureList(); + + mGestureList->setFocus(TRUE); + const BOOL ascending = TRUE; mGestureList->sortByColumn(std::string("name"), ascending); mGestureList->selectFirstItem(); @@ -223,10 +223,10 @@ BOOL LLFloaterGesture::postBuild() void LLFloaterGesture::refreshAll() { - buildGestureList(); - if (!mGestureList) return; + buildGestureList(); + if (mSelectedID.isNull()) { mGestureList->selectFirstItem(); @@ -427,8 +427,13 @@ void LLFloaterGesture::onClickPlay() BOOL inform_server = TRUE; BOOL deactivate_similar = FALSE; LLGestureManager::instance().setGestureLoadedCallback(item_id, boost::bind(&LLFloaterGesture::playGesture, this, item_id)); - LLGestureManager::instance().activateGestureWithAsset(item_id, gInventory.getItem(item_id)->getAssetUUID(), inform_server, deactivate_similar); - LL_DEBUGS("Gesture")<< "Activating gesture with inventory ID: " << item_id <<LL_ENDL; + LLViewerInventoryItem *item = gInventory.getItem(item_id); + llassert(item); + if (item) + { + LLGestureManager::instance().activateGestureWithAsset(item_id, item->getAssetUUID(), inform_server, deactivate_similar); + LL_DEBUGS("Gesture")<< "Activating gesture with inventory ID: " << item_id <<LL_ENDL; + } } else { @@ -510,15 +515,16 @@ void LLFloaterGesture::onCopyPasteAction(const LLSD& command) if(ids.empty() || !gInventory.isCategoryComplete(mGestureFolderID)) return; LLInventoryCategory* gesture_dir = gInventory.getCategory(mGestureFolderID); + llassert(gesture_dir); LLPointer<GestureCopiedCallback> cb = new GestureCopiedCallback(this); for(LLDynamicArray<LLUUID>::iterator it = ids.begin(); it != ids.end(); it++) { LLInventoryItem* item = gInventory.getItem(*it); - LLStringUtil::format_map_t string_args; - string_args["[COPY_NAME]"] = item->getName(); - if(item && item->getInventoryType() == LLInventoryType::IT_GESTURE) + if(gesture_dir && item && item->getInventoryType() == LLInventoryType::IT_GESTURE) { + LLStringUtil::format_map_t string_args; + string_args["[COPY_NAME]"] = item->getName(); LL_DEBUGS("Gesture")<< "Copying gesture " << item->getName() << " "<< item->getUUID() << " into " << gesture_dir->getName() << " "<< gesture_dir->getUUID() << LL_ENDL; copy_inventory_item(gAgent.getID(), item->getPermissions().getOwner(), item->getUUID(), diff --git a/indra/newview/llfloatergodtools.cpp b/indra/newview/llfloatergodtools.cpp index 5294f09e64..eb56f387cd 100644 --- a/indra/newview/llfloatergodtools.cpp +++ b/indra/newview/llfloatergodtools.cpp @@ -213,6 +213,9 @@ void LLFloaterGodTools::showPanel(const std::string& panel_name) // static void LLFloaterGodTools::processRegionInfo(LLMessageSystem* msg) { + llassert(msg); + if (!msg) return; + LLHost host = msg->getSender(); if (host != gAgent.getRegionHost()) { @@ -270,8 +273,7 @@ void LLFloaterGodTools::processRegionInfo(LLMessageSystem* msg) if ( gAgent.isGodlike() && LLFloaterReg::instanceVisible("god_tools") && god_tools->mPanelRegionTools - && god_tools->mPanelObjectTools - && msg ) + && god_tools->mPanelObjectTools) { LLPanelRegionTools* rtool = god_tools->mPanelRegionTools; god_tools->mCurrentHost = host; diff --git a/indra/newview/llfloaterinventory.cpp b/indra/newview/llfloaterinventory.cpp index e62e2c99a7..844f0ac509 100644 --- a/indra/newview/llfloaterinventory.cpp +++ b/indra/newview/llfloaterinventory.cpp @@ -41,6 +41,7 @@ #include "llpanelmaininventory.h" #include "llresmgr.h" #include "llviewerfoldertype.h" +#include "lltransientfloatermgr.h" ///---------------------------------------------------------------------------- /// LLFloaterInventory @@ -49,10 +50,12 @@ LLFloaterInventory::LLFloaterInventory(const LLSD& key) : LLFloater(key) { + LLTransientFloaterMgr::getInstance()->addControlView(this); } LLFloaterInventory::~LLFloaterInventory() { + LLTransientFloaterMgr::getInstance()->removeControlView(this); } BOOL LLFloaterInventory::postBuild() diff --git a/indra/newview/llfloatermediasettings.cpp b/indra/newview/llfloatermediasettings.cpp index 7388f7ea3f..62ec17f89a 100644 --- a/indra/newview/llfloatermediasettings.cpp +++ b/indra/newview/llfloatermediasettings.cpp @@ -207,7 +207,7 @@ void LLFloaterMediaSettings::commitFields() if (hasFocus()) { LLUICtrl* cur_focus = dynamic_cast<LLUICtrl*>(gFocusMgr.getKeyboardFocus()); - if (cur_focus->acceptsTextInput()) + if (cur_focus && cur_focus->acceptsTextInput()) { cur_focus->onCommit(); }; diff --git a/indra/newview/llfloaternotificationsconsole.cpp b/indra/newview/llfloaternotificationsconsole.cpp index 90db8988b2..94b5ebba00 100644 --- a/indra/newview/llfloaternotificationsconsole.cpp +++ b/indra/newview/llfloaternotificationsconsole.cpp @@ -112,10 +112,15 @@ void LLNotificationChannelPanel::onClickNotification(void* user_data) { LLNotificationChannelPanel* self = (LLNotificationChannelPanel*)user_data; if (!self) return; - void* data = self->getChild<LLScrollListCtrl>("notifications_list")->getFirstSelected()->getUserdata(); - if (data) + LLScrollListItem* firstselected = self->getChild<LLScrollListCtrl>("notifications_list")->getFirstSelected(); + llassert(firstselected); + if (firstselected) { - gFloaterView->getParentFloater(self)->addDependentFloater(new LLFloaterNotification((LLNotification*)data), TRUE); + void* data = firstselected->getUserdata(); + if (data) + { + gFloaterView->getParentFloater(self)->addDependentFloater(new LLFloaterNotification((LLNotification*)data), TRUE); + } } } @@ -124,10 +129,15 @@ void LLNotificationChannelPanel::onClickNotificationReject(void* user_data) { LLNotificationChannelPanel* self = (LLNotificationChannelPanel*)user_data; if (!self) return; - void* data = self->getChild<LLScrollListCtrl>("notification_rejects_list")->getFirstSelected()->getUserdata(); - if (data) + LLScrollListItem* firstselected = self->getChild<LLScrollListCtrl>("notification_rejects_list")->getFirstSelected(); + llassert(firstselected); + if (firstselected) { - gFloaterView->getParentFloater(self)->addDependentFloater(new LLFloaterNotification((LLNotification*)data), TRUE); + void* data = firstselected->getUserdata(); + if (data) + { + gFloaterView->getParentFloater(self)->addDependentFloater(new LLFloaterNotification((LLNotification*)data), TRUE); + } } } diff --git a/indra/newview/llfloaterpreference.cpp b/indra/newview/llfloaterpreference.cpp index 9d9fbacee3..f20ef76bed 100644 --- a/indra/newview/llfloaterpreference.cpp +++ b/indra/newview/llfloaterpreference.cpp @@ -110,8 +110,6 @@ const F32 MAX_USER_FAR_CLIP = 512.f; const F32 MIN_USER_FAR_CLIP = 64.f; -const S32 ASPECT_RATIO_STR_LEN = 100; - class LLVoiceSetKeyDialog : public LLModalDialog { public: @@ -283,7 +281,6 @@ void fractionFromDecimal(F32 decimal_val, S32& numerator, S32& denominator) } // static std::string LLFloaterPreference::sSkin = ""; -F32 LLFloaterPreference::sAspectRatio = 0.0; ////////////////////////////////////////////// // LLFloaterPreference @@ -324,11 +321,9 @@ LLFloaterPreference::LLFloaterPreference(const LLSD& key) mCommitCallbackRegistrar.add("Pref.VertexShaderEnable", boost::bind(&LLFloaterPreference::onVertexShaderEnable, this)); mCommitCallbackRegistrar.add("Pref.WindowedMod", boost::bind(&LLFloaterPreference::onCommitWindowedMode, this)); mCommitCallbackRegistrar.add("Pref.UpdateSliderText", boost::bind(&LLFloaterPreference::onUpdateSliderText,this, _1,_2)); - mCommitCallbackRegistrar.add("Pref.AutoDetectAspect", boost::bind(&LLFloaterPreference::onCommitAutoDetectAspect, this)); mCommitCallbackRegistrar.add("Pref.ParcelMediaAutoPlayEnable", boost::bind(&LLFloaterPreference::onCommitParcelMediaAutoPlayEnable, this)); mCommitCallbackRegistrar.add("Pref.MediaEnabled", boost::bind(&LLFloaterPreference::onCommitMediaEnabled, this)); mCommitCallbackRegistrar.add("Pref.MusicEnabled", boost::bind(&LLFloaterPreference::onCommitMusicEnabled, this)); - mCommitCallbackRegistrar.add("Pref.onSelectAspectRatio", boost::bind(&LLFloaterPreference::onKeystrokeAspectRatio, this)); mCommitCallbackRegistrar.add("Pref.QualityPerformance", boost::bind(&LLFloaterPreference::onChangeQuality, this, _2)); mCommitCallbackRegistrar.add("Pref.applyUIColor", boost::bind(&LLFloaterPreference::applyUIColor, this ,_1, _2)); mCommitCallbackRegistrar.add("Pref.getUIColor", boost::bind(&LLFloaterPreference::getUIColor, this ,_1, _2)); @@ -359,12 +354,7 @@ BOOL LLFloaterPreference::postBuild() LLFloaterPreference::~LLFloaterPreference() { // clean up user data - LLComboBox* ctrl_aspect_ratio = getChild<LLComboBox>( "aspect_ratio"); LLComboBox* ctrl_window_size = getChild<LLComboBox>("windowsize combo"); - for (S32 i = 0; i < ctrl_aspect_ratio->getItemCount(); i++) - { - ctrl_aspect_ratio->setCurrentByIndex(i); - } for (S32 i = 0; i < ctrl_window_size->getItemCount(); i++) { ctrl_window_size->setCurrentByIndex(i); @@ -514,8 +504,6 @@ void LLFloaterPreference::cancel() LLFloaterReg::hideInstance("pref_voicedevicesettings"); - gSavedSettings.setF32("FullScreenAspectRatio", sAspectRatio); - } void LLFloaterPreference::onOpen(const LLSD& key) @@ -602,7 +590,7 @@ void LLFloaterPreference::onBtnOK() if (hasFocus()) { LLUICtrl* cur_focus = dynamic_cast<LLUICtrl*>(gFocusMgr.getKeyboardFocus()); - if (cur_focus->acceptsTextInput()) + if (cur_focus && cur_focus->acceptsTextInput()) { cur_focus->onCommit(); } @@ -635,7 +623,7 @@ void LLFloaterPreference::onBtnApply( ) if (hasFocus()) { LLUICtrl* cur_focus = dynamic_cast<LLUICtrl*>(gFocusMgr.getKeyboardFocus()); - if (cur_focus->acceptsTextInput()) + if (cur_focus && cur_focus->acceptsTextInput()) { cur_focus->onCommit(); } @@ -652,7 +640,7 @@ void LLFloaterPreference::onBtnCancel() if (hasFocus()) { LLUICtrl* cur_focus = dynamic_cast<LLUICtrl*>(gFocusMgr.getKeyboardFocus()); - if (cur_focus->acceptsTextInput()) + if (cur_focus && cur_focus->acceptsTextInput()) { cur_focus->onCommit(); } @@ -678,7 +666,8 @@ void LLFloaterPreference::refreshEnabledGraphics() LLFloaterPreference* instance = LLFloaterReg::findTypedInstance<LLFloaterPreference>("preferences"); if(instance) { - instance->refreshEnabledState(); + instance->refresh(); + //instance->refreshEnabledState(); } LLFloaterHardwareSettings* hardware_settings = LLFloaterReg::getTypedInstance<LLFloaterHardwareSettings>("prefs_hardware_settings"); if (hardware_settings) @@ -968,37 +957,6 @@ void LLFloaterPreference::disableUnavailableSettings() } } -void LLFloaterPreference::onCommitAutoDetectAspect() -{ - BOOL auto_detect = getChild<LLCheckBoxCtrl>("aspect_auto_detect")->get(); - F32 ratio; - - if (auto_detect) - { - S32 numerator = 0; - S32 denominator = 0; - - // clear any aspect ratio override - gViewerWindow->mWindow->setNativeAspectRatio(0.f); - fractionFromDecimal(gViewerWindow->mWindow->getNativeAspectRatio(), numerator, denominator); - - std::string aspect; - if (numerator != 0) - { - aspect = llformat("%d:%d", numerator, denominator); - } - else - { - aspect = llformat("%.3f", gViewerWindow->mWindow->getNativeAspectRatio()); - } - - getChild<LLComboBox>( "aspect_ratio")->setLabel(aspect); - - ratio = gViewerWindow->mWindow->getNativeAspectRatio(); - gSavedSettings.setF32("FullScreenAspectRatio", ratio); - } -} - void LLFloaterPreference::onCommitParcelMediaAutoPlayEnable() { BOOL autoplay = getChild<LLCheckBoxCtrl>("autoplay_enabled")->get(); @@ -1266,56 +1224,9 @@ void LLFloaterPreference::updateSliderText(LLSliderCtrl* ctrl, LLTextBox* text_b } } -void LLFloaterPreference::onKeystrokeAspectRatio() -{ - getChild<LLCheckBoxCtrl>("aspect_auto_detect")->set(FALSE); -} - void LLFloaterPreference::applyResolution() { - LLComboBox* ctrl_aspect_ratio = getChild<LLComboBox>( "aspect_ratio"); gGL.flush(); - char aspect_ratio_text[ASPECT_RATIO_STR_LEN]; /*Flawfinder: ignore*/ - if (ctrl_aspect_ratio->getCurrentIndex() == -1) - { - // *Can't pass const char* from c_str() into strtok - strncpy(aspect_ratio_text, ctrl_aspect_ratio->getSimple().c_str(), sizeof(aspect_ratio_text) -1); /*Flawfinder: ignore*/ - aspect_ratio_text[sizeof(aspect_ratio_text) -1] = '\0'; - char *element = strtok(aspect_ratio_text, ":/\\"); - if (!element) - { - sAspectRatio = 0.f; // will be clamped later - } - else - { - LLLocale locale(LLLocale::USER_LOCALE); - sAspectRatio = (F32)atof(element); - } - - // look for denominator - element = strtok(NULL, ":/\\"); - if (element) - { - LLLocale locale(LLLocale::USER_LOCALE); - - F32 denominator = (F32)atof(element); - if (denominator != 0.f) - { - sAspectRatio /= denominator; - } - } - } - else - { - sAspectRatio = (F32)ctrl_aspect_ratio->getValue().asReal(); - } - - // presumably, user entered a non-numeric value if aspect_ratio == 0.f - if (sAspectRatio != 0.f) - { - sAspectRatio = llclamp(sAspectRatio, 0.2f, 5.f); - gSavedSettings.setF32("FullScreenAspectRatio", sAspectRatio); - } // Screen resolution S32 num_resolutions; @@ -1393,48 +1304,6 @@ BOOL LLPanelPreference::postBuild() childSetText("email_address",getString("log_in_to_change") ); // childSetText("busy_response", getString("log_in_to_change")); } - - - if(hasChild("aspect_ratio")) - { - // We used to set up fullscreen resolution and window size - // controls here, see LLFloaterWindowSize::initWindowSizeControls() - - if (gSavedSettings.getBOOL("FullScreenAutoDetectAspectRatio")) - { - LLFloaterPreference::sAspectRatio = gViewerWindow->getDisplayAspectRatio(); - } - else - { - LLFloaterPreference::sAspectRatio = gSavedSettings.getF32("FullScreenAspectRatio"); - } - - getChild<LLComboBox>("aspect_ratio")->setTextEntryCallback(boost::bind(&LLPanelPreference::setControlFalse, this, LLSD("FullScreenAutoDetectAspectRatio") )); - - - S32 numerator = 0; - S32 denominator = 0; - fractionFromDecimal(LLFloaterPreference::sAspectRatio, numerator, denominator); - - LLUIString aspect_ratio_text = getString("aspect_ratio_text"); - if (numerator != 0) - { - aspect_ratio_text.setArg("[NUM]", llformat("%d", numerator)); - aspect_ratio_text.setArg("[DEN]", llformat("%d", denominator)); - } - else - { - aspect_ratio_text = llformat("%.3f", LLFloaterPreference::sAspectRatio); - } - - LLComboBox* ctrl_aspect_ratio = getChild<LLComboBox>( "aspect_ratio"); - //mCtrlAspectRatio->setCommitCallback(onSelectAspectRatio, this); - // add default aspect ratios - ctrl_aspect_ratio->add(aspect_ratio_text, &LLFloaterPreference::sAspectRatio, ADD_TOP); - ctrl_aspect_ratio->setCurrentByIndex(0); - - refresh(); - } //////////////////////PanelPrivacy /////////////////// if (hasChild("media_enabled")) diff --git a/indra/newview/llfloaterpreference.h b/indra/newview/llfloaterpreference.h index 0827c7c2b2..93b39d72bc 100644 --- a/indra/newview/llfloaterpreference.h +++ b/indra/newview/llfloaterpreference.h @@ -128,10 +128,8 @@ public: void updateSliderText(LLSliderCtrl* ctrl, LLTextBox* text_box); void onUpdateSliderText(LLUICtrl* ctrl, const LLSD& name); - void onKeystrokeAspectRatio(); // void fractionFromDecimal(F32 decimal_val, S32& numerator, S32& denominator); - void onCommitAutoDetectAspect(); void onCommitParcelMediaAutoPlayEnable(); void onCommitMediaEnabled(); void onCommitMusicEnabled(); @@ -142,7 +140,6 @@ public: void buildPopupLists(); static void refreshSkin(void* data); static void cleanupBadSetting(); - static F32 sAspectRatio; private: static std::string sSkin; bool mGotPersonalInfo; diff --git a/indra/newview/llfloaterproperties.cpp b/indra/newview/llfloaterproperties.cpp index bde86a4034..5c0593ad29 100644 --- a/indra/newview/llfloaterproperties.cpp +++ b/indra/newview/llfloaterproperties.cpp @@ -880,7 +880,11 @@ void LLFloaterProperties::dirtyAll() iter != inst_list.end(); ++iter) { LLFloaterProperties* floater = dynamic_cast<LLFloaterProperties*>(*iter); - floater->dirty(); + llassert(floater); // else cast failed - wrong type D: + if (floater) + { + floater->dirty(); + } } } diff --git a/indra/newview/llfloaterscriptlimits.cpp b/indra/newview/llfloaterscriptlimits.cpp index 4194416a01..fdf128945e 100644 --- a/indra/newview/llfloaterscriptlimits.cpp +++ b/indra/newview/llfloaterscriptlimits.cpp @@ -744,13 +744,13 @@ void LLPanelScriptLimitsRegionMemory::setRegionSummary(LLSD content) { mParcelMemoryUsed = content["summary"]["used"][0]["amount"].asInteger() / SIZE_OF_ONE_KB; mParcelMemoryMax = content["summary"]["available"][0]["amount"].asInteger() / SIZE_OF_ONE_KB; - mGotParcelMemoryUsed = TRUE; + mGotParcelMemoryUsed = true; } else if(content["summary"]["used"][1]["type"].asString() == std::string("memory")) { mParcelMemoryUsed = content["summary"]["used"][1]["amount"].asInteger() / SIZE_OF_ONE_KB; mParcelMemoryMax = content["summary"]["available"][1]["amount"].asInteger() / SIZE_OF_ONE_KB; - mGotParcelMemoryUsed = TRUE; + mGotParcelMemoryUsed = true; } else { @@ -762,13 +762,13 @@ void LLPanelScriptLimitsRegionMemory::setRegionSummary(LLSD content) { mParcelURLsUsed = content["summary"]["used"][0]["amount"].asInteger(); mParcelURLsMax = content["summary"]["available"][0]["amount"].asInteger(); - mGotParcelURLsUsed = TRUE; + mGotParcelURLsUsed = true; } else if(content["summary"]["used"][1]["type"].asString() == std::string("urls")) { mParcelURLsUsed = content["summary"]["used"][1]["amount"].asInteger(); mParcelURLsMax = content["summary"]["available"][1]["amount"].asInteger(); - mGotParcelURLsUsed = TRUE; + mGotParcelURLsUsed = true; } else { @@ -902,10 +902,10 @@ void LLPanelScriptLimitsRegionMemory::clearList() list->operateOnAll(LLCtrlListInterface::OP_DELETE); } - mGotParcelMemoryUsed = FALSE; - mGotParcelMemoryMax = FALSE; - mGotParcelURLsUsed = FALSE; - mGotParcelURLsMax = FALSE; + mGotParcelMemoryUsed = false; + mGotParcelMemoryMax = false; + mGotParcelURLsUsed = false; + mGotParcelURLsMax = false; LLStringUtil::format_map_t args_parcel_memory; std::string msg_empty_string(""); @@ -1208,13 +1208,13 @@ void LLPanelScriptLimitsAttachment::setAttachmentSummary(LLSD content) { mAttachmentMemoryUsed = content["summary"]["used"][0]["amount"].asInteger() / SIZE_OF_ONE_KB; mAttachmentMemoryMax = content["summary"]["available"][0]["amount"].asInteger() / SIZE_OF_ONE_KB; - mGotAttachmentMemoryUsed = TRUE; + mGotAttachmentMemoryUsed = true; } else if(content["summary"]["used"][1]["type"].asString() == std::string("memory")) { mAttachmentMemoryUsed = content["summary"]["used"][1]["amount"].asInteger() / SIZE_OF_ONE_KB; mAttachmentMemoryMax = content["summary"]["available"][1]["amount"].asInteger() / SIZE_OF_ONE_KB; - mGotAttachmentMemoryUsed = TRUE; + mGotAttachmentMemoryUsed = true; } else { @@ -1226,13 +1226,13 @@ void LLPanelScriptLimitsAttachment::setAttachmentSummary(LLSD content) { mAttachmentURLsUsed = content["summary"]["used"][0]["amount"].asInteger(); mAttachmentURLsMax = content["summary"]["available"][0]["amount"].asInteger(); - mGotAttachmentURLsUsed = TRUE; + mGotAttachmentURLsUsed = true; } else if(content["summary"]["used"][1]["type"].asString() == std::string("urls")) { mAttachmentURLsUsed = content["summary"]["used"][1]["amount"].asInteger(); mAttachmentURLsMax = content["summary"]["available"][1]["amount"].asInteger(); - mGotAttachmentURLsUsed = TRUE; + mGotAttachmentURLsUsed = true; } else { diff --git a/indra/newview/llfloaterscriptlimits.h b/indra/newview/llfloaterscriptlimits.h index 4c1ecc1019..0cba4d72f2 100644 --- a/indra/newview/llfloaterscriptlimits.h +++ b/indra/newview/llfloaterscriptlimits.h @@ -148,8 +148,8 @@ public: : LLPanelScriptLimitsInfo(), LLRemoteParcelInfoObserver(), mParcelId(LLUUID()), - mGotParcelMemoryUsed(FALSE), - mGotParcelMemoryMax(FALSE), + mGotParcelMemoryUsed(false), + mGotParcelMemoryMax(false), mParcelMemoryMax(0), mParcelMemoryUsed(0) {}; @@ -180,16 +180,16 @@ private: LLSD mContent; LLUUID mParcelId; - BOOL mGotParcelMemoryUsed; - BOOL mGotParcelMemoryUsedDetails; - BOOL mGotParcelMemoryMax; + bool mGotParcelMemoryUsed; + bool mGotParcelMemoryUsedDetails; + bool mGotParcelMemoryMax; S32 mParcelMemoryMax; S32 mParcelMemoryUsed; S32 mParcelMemoryUsedDetails; - BOOL mGotParcelURLsUsed; - BOOL mGotParcelURLsUsedDetails; - BOOL mGotParcelURLsMax; + bool mGotParcelURLsUsed; + bool mGotParcelURLsUsedDetails; + bool mGotParcelURLsMax; S32 mParcelURLsMax; S32 mParcelURLsUsed; S32 mParcelURLsUsedDetails; @@ -217,7 +217,21 @@ class LLPanelScriptLimitsAttachment : public LLPanelScriptLimitsInfo public: LLPanelScriptLimitsAttachment() - : LLPanelScriptLimitsInfo() {}; + : LLPanelScriptLimitsInfo(), + mGotAttachmentMemoryUsed(false), + mGotAttachmentMemoryUsedDetails(false), + mGotAttachmentMemoryMax(false), + mAttachmentMemoryMax(0), + mAttachmentMemoryUsed(0), + mAttachmentMemoryUsedDetails(0), + mGotAttachmentURLsUsed(false), + mGotAttachmentURLsUsedDetails(false), + mGotAttachmentURLsMax(false), + mAttachmentURLsMax(0), + mAttachmentURLsUsed(0), + mAttachmentURLsUsedDetails(0) + {}; + ~LLPanelScriptLimitsAttachment() { }; @@ -233,16 +247,16 @@ public: private: - BOOL mGotAttachmentMemoryUsed; - BOOL mGotAttachmentMemoryUsedDetails; - BOOL mGotAttachmentMemoryMax; + bool mGotAttachmentMemoryUsed; + bool mGotAttachmentMemoryUsedDetails; + bool mGotAttachmentMemoryMax; S32 mAttachmentMemoryMax; S32 mAttachmentMemoryUsed; S32 mAttachmentMemoryUsedDetails; - BOOL mGotAttachmentURLsUsed; - BOOL mGotAttachmentURLsUsedDetails; - BOOL mGotAttachmentURLsMax; + bool mGotAttachmentURLsUsed; + bool mGotAttachmentURLsUsedDetails; + bool mGotAttachmentURLsMax; S32 mAttachmentURLsMax; S32 mAttachmentURLsUsed; S32 mAttachmentURLsUsedDetails; diff --git a/indra/newview/llfloatertools.cpp b/indra/newview/llfloatertools.cpp index a33ab6f346..b968cc370c 100644 --- a/indra/newview/llfloatertools.cpp +++ b/indra/newview/llfloatertools.cpp @@ -666,8 +666,8 @@ void LLFloaterTools::updatePopup(LLCoordGL center, MASK mask) if (mCheckCopyCenters) mCheckCopyCenters ->setVisible( create_visible ); if (mCheckCopyRotates) mCheckCopyRotates ->setVisible( create_visible ); - if (mCheckCopyCenters) mCheckCopyCenters->setEnabled( mCheckCopySelection->get() ); - if (mCheckCopyRotates) mCheckCopyRotates->setEnabled( mCheckCopySelection->get() ); + if (mCheckCopyCenters && mCheckCopySelection) mCheckCopyCenters->setEnabled( mCheckCopySelection->get() ); + if (mCheckCopyRotates && mCheckCopySelection) mCheckCopyRotates->setEnabled( mCheckCopySelection->get() ); // Land buttons BOOL land_visible = (tool == LLToolBrushLand::getInstance() || tool == LLToolSelectLand::getInstance() ); @@ -1523,7 +1523,9 @@ void LLFloaterTools::updateMediaSettings() mMediaSettings[ base_key + std::string( LLPanelContents::TENTATIVE_SUFFIX ) ] = ! identical; // Auto play - value_bool = default_media_data.getAutoPlay(); + //value_bool = default_media_data.getAutoPlay(); + // set default to auto play TRUE -- angela EXT-5172 + value_bool = true; struct functor_getter_auto_play : public LLSelectedTEGetFunctor< bool > { functor_getter_auto_play(const LLMediaEntry& entry) : mMediaEntry(entry) {} @@ -1534,7 +1536,8 @@ void LLFloaterTools::updateMediaSettings() if ( object->getTE(face) ) if ( object->getTE(face)->getMediaData() ) return object->getTE(face)->getMediaData()->getAutoPlay(); - return mMediaEntry.getAutoPlay(); + //return mMediaEntry.getAutoPlay(); set default to auto play TRUE -- angela EXT-5172 + return true; }; const LLMediaEntry &mMediaEntry; diff --git a/indra/newview/llfloatertopobjects.cpp b/indra/newview/llfloatertopobjects.cpp index c930e99bad..8ab050beaa 100644 --- a/indra/newview/llfloatertopobjects.cpp +++ b/indra/newview/llfloatertopobjects.cpp @@ -283,8 +283,13 @@ void LLFloaterTopObjects::updateSelectionInfo() std::string object_id_string = object_id.asString(); childSetValue("id_editor", LLSD(object_id_string)); - childSetValue("object_name_editor", list->getFirstSelected()->getColumn(1)->getValue().asString()); - childSetValue("owner_name_editor", list->getFirstSelected()->getColumn(2)->getValue().asString()); + LLScrollListItem* sli = list->getFirstSelected(); + llassert(sli); + if (sli) + { + childSetValue("object_name_editor", sli->getColumn(1)->getValue().asString()); + childSetValue("owner_name_editor", sli->getColumn(2)->getValue().asString()); + } } // static diff --git a/indra/newview/llfloateruipreview.cpp b/indra/newview/llfloateruipreview.cpp index 3e804bef9d..f61c86db14 100644 --- a/indra/newview/llfloateruipreview.cpp +++ b/indra/newview/llfloateruipreview.cpp @@ -362,8 +362,7 @@ BOOL LLFadeEventTimer::tick() if(NULL == mParent) // no more need to tick, so suicide { - delete this; - return FALSE; + return TRUE; } // Set up colors diff --git a/indra/newview/llfloaterwater.cpp b/indra/newview/llfloaterwater.cpp index 66a1f6701f..1bbee2625c 100644 --- a/indra/newview/llfloaterwater.cpp +++ b/indra/newview/llfloaterwater.cpp @@ -574,12 +574,10 @@ bool LLFloaterWater::deleteAlertCallback(const LLSD& notification, const LLSD& r LLComboBox* combo_box = getChild<LLComboBox>("WaterPresetsCombo"); LLFloaterDayCycle* day_cycle = LLFloaterReg::findTypedInstance<LLFloaterDayCycle>("env_day_cycle"); LLComboBox* key_combo = NULL; - LLMultiSliderCtrl* mult_sldr = NULL; if (day_cycle) { key_combo = day_cycle->getChild<LLComboBox>("WaterKeyPresets"); - mult_sldr = day_cycle->getChild<LLMultiSliderCtrl>("WaterDayCycleKeys"); } std::string name = combo_box->getSelectedValue().asString(); diff --git a/indra/newview/llfloaterwindlight.cpp b/indra/newview/llfloaterwindlight.cpp index ea6fda7303..c1b15c578c 100644 --- a/indra/newview/llfloaterwindlight.cpp +++ b/indra/newview/llfloaterwindlight.cpp @@ -749,12 +749,10 @@ bool LLFloaterWindLight::deleteAlertCallback(const LLSD& notification, const LLS LLComboBox* combo_box = getChild<LLComboBox>("WLPresetsCombo"); LLFloaterDayCycle* day_cycle = LLFloaterReg::findTypedInstance<LLFloaterDayCycle>("env_day_cycle"); LLComboBox* key_combo = NULL; - LLMultiSliderCtrl* mult_sldr = NULL; if (day_cycle) { key_combo = day_cycle->getChild<LLComboBox>("WLKeyPresets"); - mult_sldr = day_cycle->getChild<LLMultiSliderCtrl>("WLDayCycleKeys"); } std::string name(combo_box->getSelectedValue().asString()); diff --git a/indra/newview/llfloaterworldmap.cpp b/indra/newview/llfloaterworldmap.cpp index f4d4ea3553..b6de409611 100644 --- a/indra/newview/llfloaterworldmap.cpp +++ b/indra/newview/llfloaterworldmap.cpp @@ -788,8 +788,11 @@ void LLFloaterWorldMap::friendsChanged() if(avatar_id.notNull()) { LLCtrlSelectionInterface *iface = childGetSelectionInterface("friend combo"); - if(!iface || !iface->setCurrentByID(avatar_id) || - !t.getBuddyInfo(avatar_id)->isRightGrantedFrom(LLRelationship::GRANT_MAP_LOCATION) || gAgent.isGodlike()) + const LLRelationship* buddy_info = t.getBuddyInfo(avatar_id); + if(!iface || + !iface->setCurrentByID(avatar_id) || + (buddy_info && !buddy_info->isRightGrantedFrom(LLRelationship::GRANT_MAP_LOCATION)) || + gAgent.isGodlike()) { LLTracker::stopTracking(NULL); } diff --git a/indra/newview/llfolderview.cpp b/indra/newview/llfolderview.cpp index 57c7ba8e27..68faaeaa0b 100644 --- a/indra/newview/llfolderview.cpp +++ b/indra/newview/llfolderview.cpp @@ -195,7 +195,8 @@ LLFolderView::LLFolderView(const Params& p) mCallbackRegistrar(NULL), mParentPanel(p.parent_panel), mUseEllipses(false), - mDraggingOverItem(NULL) + mDraggingOverItem(NULL), + mStatusTextBox(NULL) { LLRect rect = p.rect; LLRect new_rect(rect.mLeft, rect.mBottom + getRect().getHeight(), rect.mLeft + getRect().getWidth(), rect.mBottom); @@ -221,7 +222,7 @@ LLFolderView::LLFolderView(const Params& p) // Escape is handled by reverting the rename, not commiting it (default behavior) LLLineEditor::Params params; params.name("ren"); - params.rect(getRect()); + params.rect(rect); params.font(getLabelFontForStyle(LLFontGL::NORMAL)); params.max_length_bytes(DB_INV_ITEM_NAME_STR_LEN); params.commit_callback.function(boost::bind(&LLFolderView::commitRename, this, _2)); @@ -231,6 +232,24 @@ LLFolderView::LLFolderView(const Params& p) mRenamer = LLUICtrlFactory::create<LLLineEditor> (params); addChild(mRenamer); + // Textbox + LLTextBox::Params text_p; + LLFontGL* font = getLabelFontForStyle(mLabelStyle); + LLRect new_r = LLRect(rect.mLeft + ICON_PAD, + rect.mTop - TEXT_PAD, + rect.mRight, + rect.mTop - TEXT_PAD - llfloor(font->getLineHeight())); + text_p.rect(new_r); + text_p.name(std::string(p.name)); + text_p.font(font); + text_p.visible(false); + text_p.allow_html(true); + mStatusTextBox = LLUICtrlFactory::create<LLTextBox> (text_p); + mStatusTextBox->setFollowsLeft(); + mStatusTextBox->setFollowsTop(); + //addChild(mStatusTextBox); + + // make the popup menu available LLMenuGL* menu = LLUICtrlFactory::getInstance()->createFromFile<LLMenuGL>("menu_inventory.xml", gMenuHolder, LLViewerMenuHolderGL::child_registry_t::instance()); if (!menu) @@ -253,6 +272,7 @@ LLFolderView::~LLFolderView( void ) mScrollContainer = NULL; mRenameItem = NULL; mRenamer = NULL; + mStatusTextBox = NULL; if( gEditMenuHandler == this ) { @@ -874,7 +894,7 @@ void LLFolderView::draw() LLFontGL::LEFT, LLFontGL::BOTTOM, LLFontGL::NORMAL, LLFontGL::NO_SHADOW, S32_MAX, S32_MAX, NULL, FALSE ); } - LLFontGL* font = getLabelFontForStyle(mLabelStyle); + //LLFontGL* font = getLabelFontForStyle(mLabelStyle); // if cursor has moved off of me during drag and drop // close all auto opened folders @@ -911,19 +931,23 @@ void LLFolderView::draw() || mFilter->getShowFolderState() == LLInventoryFilter::SHOW_ALL_FOLDERS) { mStatusText.clear(); + mStatusTextBox->setVisible( FALSE ); } else { if (gInventory.backgroundFetchActive() || mCompletedFilterGeneration < mFilter->getMinRequiredGeneration()) { mStatusText = LLTrans::getString("Searching"); - font->renderUTF8(mStatusText, 0, 2, 1, sSearchStatusColor, LLFontGL::LEFT, LLFontGL::TOP, LLFontGL::NORMAL, LLFontGL::NO_SHADOW, S32_MAX, S32_MAX, NULL, FALSE ); + //font->renderUTF8(mStatusText, 0, 2, 1, sSearchStatusColor, LLFontGL::LEFT, LLFontGL::TOP, LLFontGL::NORMAL, LLFontGL::NO_SHADOW, S32_MAX, S32_MAX, NULL, FALSE ); } else { mStatusText = LLTrans::getString(getFilter()->getEmptyLookupMessage()); - font->renderUTF8(mStatusText, 0, 2, 1, sSearchStatusColor, LLFontGL::LEFT, LLFontGL::TOP, LLFontGL::NORMAL, LLFontGL::NO_SHADOW, S32_MAX, S32_MAX, NULL, FALSE ); + //font->renderUTF8(mStatusText, 0, 2, 1, sSearchStatusColor, LLFontGL::LEFT, LLFontGL::TOP, LLFontGL::NORMAL, LLFontGL::NO_SHADOW, S32_MAX, S32_MAX, NULL, FALSE ); } + mStatusTextBox->setValue(mStatusText); + mStatusTextBox->setVisible( TRUE ); + } LLFolderViewFolder::draw(); @@ -1607,7 +1631,11 @@ BOOL LLFolderView::handleKeyHere( KEY key, MASK mask ) LLFolderViewItem* parent_folder = last_selected->getParentFolder(); if (!last_selected->isOpen() && parent_folder && parent_folder->getParentFolder()) { - setSelection(parent_folder, FALSE, TRUE); + // Don't change selectin to hidden folder. See EXT-5328. + if (!parent_folder->getHidden()) + { + setSelection(parent_folder, FALSE, TRUE); + } } else { diff --git a/indra/newview/llfolderview.h b/indra/newview/llfolderview.h index 56ebdfcf79..faf6a9cf23 100644 --- a/indra/newview/llfolderview.h +++ b/indra/newview/llfolderview.h @@ -62,6 +62,7 @@ class LLLineEditor; class LLMenuGL; class LLScrollContainer; class LLUICtrl; +class LLTextBox; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Class LLFolderViewFunctor @@ -327,7 +328,7 @@ protected: LLUUID mSelectThisID; // if non null, select this item - LLPanel* mParentPanel; + LLPanel* mParentPanel; /** * Is used to determine if we need to cut text In LLFolderViewItem to avoid horizontal scroll. @@ -344,6 +345,8 @@ protected: public: static F32 sAutoOpenTime; + LLTextBox* mStatusTextBox; + }; bool sort_item_name(LLFolderViewItem* a, LLFolderViewItem* b); diff --git a/indra/newview/llfolderviewitem.cpp b/indra/newview/llfolderviewitem.cpp index f154de39c9..76607e4874 100644 --- a/indra/newview/llfolderviewitem.cpp +++ b/indra/newview/llfolderviewitem.cpp @@ -1339,10 +1339,6 @@ void LLFolderViewFolder::filter( LLInventoryFilter& filter) if (folder->getFiltered() || folder->hasFilteredDescendants(filter.getMinRequiredGeneration())) { mMostFilteredDescendantGeneration = filter_generation; - if (getRoot()->needsAutoSelect() && autoopen_folders) - { - folder->setOpenArrangeRecursively(TRUE); - } } // just skip it, it has already been filtered continue; @@ -1859,10 +1855,9 @@ EInventorySortGroup LLFolderViewFolder::getSortGroup() const return SG_TRASH_FOLDER; } - // Folders that can't be moved are 'system' folders. if( mListener ) { - if( !(mListener->isItemMovable()) ) + if(LLFolderType::lookupIsProtectedType(mListener->getPreferredType())) { return SG_SYSTEM_FOLDER; } @@ -2548,8 +2543,12 @@ bool LLInventorySort::operator()(const LLFolderViewItem* const& a, const LLFolde { // *TODO: mantipov: probably it is better to add an appropriate method to LLFolderViewItem // or to LLInvFVBridge - S32 a_sort = (static_cast<const LLItemBridge*>(a->getListener()))->getItem()->getSortField(); - S32 b_sort = (static_cast<const LLItemBridge*>(b->getListener()))->getItem()->getSortField(); + LLViewerInventoryItem* aitem = (static_cast<const LLItemBridge*>(a->getListener()))->getItem(); + LLViewerInventoryItem* bitem = (static_cast<const LLItemBridge*>(b->getListener()))->getItem(); + if (!aitem || !bitem) + return false; + S32 a_sort = aitem->getSortField(); + S32 b_sort = bitem->getSortField(); return a_sort < b_sort; } } diff --git a/indra/newview/llgroupmgr.cpp b/indra/newview/llgroupmgr.cpp index 4c1019a882..6dbd3a81e8 100644 --- a/indra/newview/llgroupmgr.cpp +++ b/indra/newview/llgroupmgr.cpp @@ -677,9 +677,12 @@ void LLGroupMgrGroupData::sendRoleChanges() break; } case RC_UPDATE_ALL: + // fall through case RC_UPDATE_POWERS: need_power_recalc = true; + // fall through case RC_UPDATE_DATA: + // fall through default: { LLGroupRoleData* group_role_data = (*role_it).second; @@ -762,7 +765,7 @@ void LLGroupMgr::addObserver(LLGroupMgrObserver* observer) mObservers.insert(std::pair<LLUUID, LLGroupMgrObserver*>(observer->getID(), observer)); } -void LLGroupMgr::addObserver(const LLUUID& group_id, LLParticularGroupMgrObserver* observer) +void LLGroupMgr::addObserver(const LLUUID& group_id, LLParticularGroupObserver* observer) { if(group_id.notNull() && observer) { @@ -792,7 +795,7 @@ void LLGroupMgr::removeObserver(LLGroupMgrObserver* observer) } } -void LLGroupMgr::removeObserver(const LLUUID& group_id, LLParticularGroupMgrObserver* observer) +void LLGroupMgr::removeObserver(const LLUUID& group_id, LLParticularGroupObserver* observer) { if(group_id.isNull() || !observer) { @@ -1364,7 +1367,7 @@ void LLGroupMgr::notifyObservers(LLGroupChange gc) gi->second->mChanged = FALSE; - // notify LLParticularGroupMgrObserver + // notify LLParticularGroupObserver observer_map_t::iterator obs_it = mParticularObservers.find(group_id); if(obs_it == mParticularObservers.end()) return; @@ -1718,15 +1721,14 @@ void LLGroupMgr::sendGroupMemberEjects(const LLUUID& group_id, { LLUUID& ejected_member_id = (*it); - llwarns << "LLGroupMgr::sendGroupMemberEjects -- ejecting member" << ejected_member_id << llendl; - // Can't use 'eject' to leave a group. - if ((*it) == gAgent.getID()) continue; + if (ejected_member_id == gAgent.getID()) continue; // Make sure they are in the group, and we need the member data - LLGroupMgrGroupData::member_list_t::iterator mit = group_datap->mMembers.find(*it); + LLGroupMgrGroupData::member_list_t::iterator mit = group_datap->mMembers.find(ejected_member_id); if (mit != group_datap->mMembers.end()) { + LLGroupMemberData* member_data = (*mit).second; // Add them to the message if (start_message) { @@ -1749,21 +1751,18 @@ void LLGroupMgr::sendGroupMemberEjects(const LLUUID& group_id, } // Clean up groupmgr - for (LLGroupMemberData::role_list_t::iterator rit = (*mit).second->roleBegin(); - rit != (*mit).second->roleEnd(); ++rit) + for (LLGroupMemberData::role_list_t::iterator rit = member_data->roleBegin(); + rit != member_data->roleEnd(); ++rit) { if ((*rit).first.notNull() && (*rit).second!=0) { (*rit).second->removeMember(ejected_member_id); - - llwarns << "LLGroupMgr::sendGroupMemberEjects - removing member from role " << llendl; } } - group_datap->mMembers.erase(*it); + group_datap->mMembers.erase(ejected_member_id); - llwarns << "LLGroupMgr::sendGroupMemberEjects - deleting memnber data " << llendl; - delete (*mit).second; + delete member_data; } } @@ -1771,8 +1770,6 @@ void LLGroupMgr::sendGroupMemberEjects(const LLUUID& group_id, { gAgent.sendReliableMessage(); } - - llwarns << "LLGroupMgr::sendGroupMemberEjects - done " << llendl; } void LLGroupMgr::sendGroupRoleChanges(const LLUUID& group_id) diff --git a/indra/newview/llgroupmgr.h b/indra/newview/llgroupmgr.h index 588b4a9034..2c86de8b97 100644 --- a/indra/newview/llgroupmgr.h +++ b/indra/newview/llgroupmgr.h @@ -53,10 +53,10 @@ protected: LLUUID mID; }; -class LLParticularGroupMgrObserver +class LLParticularGroupObserver { public: - virtual ~LLParticularGroupMgrObserver(){} + virtual ~LLParticularGroupObserver(){} virtual void changed(const LLUUID& group_id, LLGroupChange gc) = 0; }; @@ -313,9 +313,9 @@ public: ~LLGroupMgr(); void addObserver(LLGroupMgrObserver* observer); - void addObserver(const LLUUID& group_id, LLParticularGroupMgrObserver* observer); + void addObserver(const LLUUID& group_id, LLParticularGroupObserver* observer); void removeObserver(LLGroupMgrObserver* observer); - void removeObserver(const LLUUID& group_id, LLParticularGroupMgrObserver* observer); + void removeObserver(const LLUUID& group_id, LLParticularGroupObserver* observer); LLGroupMgrGroupData* getGroupData(const LLUUID& id); void sendGroupPropertiesRequest(const LLUUID& group_id); @@ -374,7 +374,7 @@ private: typedef std::map<LLUUID, LLGroupMgrGroupData*> group_map_t; group_map_t mGroups; - typedef std::set<LLParticularGroupMgrObserver*> observer_set_t; + typedef std::set<LLParticularGroupObserver*> observer_set_t; typedef std::map<LLUUID,observer_set_t> observer_map_t; observer_map_t mParticularObservers; }; diff --git a/indra/newview/llimfloater.cpp b/indra/newview/llimfloater.cpp index 53cdfcc9b2..847695577a 100644 --- a/indra/newview/llimfloater.cpp +++ b/indra/newview/llimfloater.cpp @@ -271,6 +271,7 @@ BOOL LLIMFloater::postBuild() mInputEditor->setCommitOnFocusLost( FALSE ); mInputEditor->setRevertOnEsc( FALSE ); mInputEditor->setReplaceNewlinesWithSpaces( FALSE ); + mInputEditor->setPassDelete( TRUE ); std::string session_name(LLIMModel::instance().getName(mSessionID)); @@ -488,11 +489,19 @@ void LLIMFloater::setVisible(BOOL visible) channel->redrawToasts(); } - if (visible && mChatHistory && mInputEditor) + BOOL is_minimized = visible && isChatMultiTab() + ? LLIMFloaterContainer::getInstance()->isMinimized() + : !visible; + + if (!is_minimized && mChatHistory && mInputEditor) { //only if floater was construced and initialized from xml updateMessages(); - mInputEditor->setFocus(TRUE); + //prevent steal focus when IM opened in multitab mode + if (!isChatMultiTab()) + { + mInputEditor->setFocus(TRUE); + } } if(!visible) @@ -513,6 +522,13 @@ BOOL LLIMFloater::getVisible() // Treat inactive floater as invisible. bool is_active = im_container->getActiveFloater() == this; + + //torn off floater is always inactive + if (!is_active && getHost() != im_container) + { + return LLTransientDockableFloater::getVisible(); + } + // getVisible() returns TRUE when Tabbed IM window is minimized. return is_active && !im_container->isMinimized() && im_container->getVisible(); } diff --git a/indra/newview/llimfloatercontainer.cpp b/indra/newview/llimfloatercontainer.cpp index ba034609e9..2f248f3596 100644 --- a/indra/newview/llimfloatercontainer.cpp +++ b/indra/newview/llimfloatercontainer.cpp @@ -93,7 +93,7 @@ void LLIMFloaterContainer::addFloater(LLFloater* floaterp, LLIconCtrl* icon = 0; - if(gAgent.isInGroup(session_id)) + if(gAgent.isInGroup(session_id, TRUE)) { LLGroupIconCtrl::Params icon_params = LLUICtrlFactory::instance().getDefaultParams<LLGroupIconCtrl>(); icon_params.group_id = session_id; @@ -110,8 +110,8 @@ void LLIMFloaterContainer::addFloater(LLFloater* floaterp, icon_params.avatar_id = avatar_id; icon = LLUICtrlFactory::instance().createWidget<LLAvatarIconCtrl>(icon_params); - mSessions[avatar_id] = floaterp; - floaterp->mCloseSignal.connect(boost::bind(&LLIMFloaterContainer::onCloseFloater, this, avatar_id)); + mSessions[session_id] = floaterp; + floaterp->mCloseSignal.connect(boost::bind(&LLIMFloaterContainer::onCloseFloater, this, session_id)); } mTabContainer->setTabImage(floaterp, icon); } @@ -121,39 +121,9 @@ void LLIMFloaterContainer::onCloseFloater(LLUUID& id) mSessions.erase(id); } -void LLIMFloaterContainer::processProperties(void* data, enum EAvatarProcessorType type) -{ - if (APT_PROPERTIES == type) - { - LLAvatarData* avatar_data = static_cast<LLAvatarData*>(data); - if (avatar_data) - { - LLUUID avatar_id = avatar_data->avatar_id; - LLUUID* cached_avatarId = LLAvatarIconIDCache::getInstance()->get(avatar_id); - if(cached_avatarId && cached_avatarId->notNull() && avatar_data->image_id != *cached_avatarId) - { - LLAvatarIconIDCache::getInstance()->add(avatar_id,avatar_data->image_id); - mTabContainer->setTabImage(get_ptr_in_map(mSessions, avatar_id), avatar_data->image_id); - } - } - } -} - -void LLIMFloaterContainer::changed(const LLUUID& group_id, LLGroupChange gc) -{ - if (GC_PROPERTIES == gc) - { - LLGroupMgrGroupData* group_data = LLGroupMgr::getInstance()->getGroupData(group_id); - if (group_data && group_data->mInsigniaID.notNull()) - { - mTabContainer->setTabImage(get_ptr_in_map(mSessions, group_id), group_data->mInsigniaID); - } - } -} - void LLIMFloaterContainer::onNewMessageReceived(const LLSD& data) { - LLUUID session_id = data["from_id"].asUUID(); + LLUUID session_id = data["session_id"].asUUID(); LLFloater* floaterp = get_ptr_in_map(mSessions, session_id); LLFloater* current_floater = LLMultiFloater::getActiveFloater(); @@ -175,4 +145,18 @@ LLIMFloaterContainer* LLIMFloaterContainer::getInstance() return LLFloaterReg::getTypedInstance<LLIMFloaterContainer>("im_container"); } +void LLIMFloaterContainer::setMinimized(BOOL b) +{ + if (isMinimized() == b) return; + + LLMultiFloater::setMinimized(b); + + if (isMinimized()) return; + + if (getActiveFloater()) + { + getActiveFloater()->setVisible(TRUE); + } +} + // EOF diff --git a/indra/newview/llimfloatercontainer.h b/indra/newview/llimfloatercontainer.h index b07ef2d71d..f6cdc25ebd 100644 --- a/indra/newview/llimfloatercontainer.h +++ b/indra/newview/llimfloatercontainer.h @@ -43,7 +43,7 @@ class LLTabContainer; -class LLIMFloaterContainer : public LLMultiFloater, public LLAvatarPropertiesObserver, public LLParticularGroupMgrObserver +class LLIMFloaterContainer : public LLMultiFloater { public: LLIMFloaterContainer(const LLSD& seed); @@ -57,15 +57,14 @@ public: BOOL select_added_floater, LLTabContainer::eInsertionPoint insertion_point = LLTabContainer::END); - void processProperties(void* data, EAvatarProcessorType type); - void changed(const LLUUID& group_id, LLGroupChange gc); - static LLFloater* getCurrentVoiceFloater(); static LLIMFloaterContainer* findInstance(); static LLIMFloaterContainer* getInstance(); + virtual void setMinimized(BOOL b); + private: typedef std::map<LLUUID,LLFloater*> avatarID_panel_map_t; avatarID_panel_map_t mSessions; diff --git a/indra/newview/llimview.cpp b/indra/newview/llimview.cpp index b6032f4dfa..77e3012d26 100644 --- a/indra/newview/llimview.cpp +++ b/indra/newview/llimview.cpp @@ -77,6 +77,9 @@ const static std::string IM_FROM_ID("from_id"); const static std::string NO_SESSION("(IM Session Doesn't Exist)"); const static std::string ADHOC_NAME_SUFFIX(" Conference"); +const static std::string NEARBY_P2P_BY_OTHER("nearby_P2P_by_other"); +const static std::string NEARBY_P2P_BY_AGENT("nearby_P2P_by_agent"); + std::string LLCallDialogManager::sPreviousSessionlName = ""; LLIMModel::LLIMSession::SType LLCallDialogManager::sPreviousSessionType = LLIMModel::LLIMSession::P2P_SESSION; std::string LLCallDialogManager::sCurrentSessionlName = ""; @@ -253,12 +256,12 @@ void LLIMModel::LLIMSession::onVoiceChannelStateChanged(const LLVoiceChannel::ES { case LLVoiceChannel::STATE_CALL_STARTED : message = other_avatar_name + " " + started_call; - LLIMModel::getInstance()->addMessageSilently(mSessionID, SYSTEM_FROM, LLUUID::null, message); + LLIMModel::getInstance()->addMessage(mSessionID, SYSTEM_FROM, LLUUID::null, message); break; case LLVoiceChannel::STATE_CONNECTED : message = you + " " + joined_call; - LLIMModel::getInstance()->addMessageSilently(mSessionID, SYSTEM_FROM, LLUUID::null, message); + LLIMModel::getInstance()->addMessage(mSessionID, SYSTEM_FROM, LLUUID::null, message); default: break; } @@ -269,11 +272,11 @@ void LLIMModel::LLIMSession::onVoiceChannelStateChanged(const LLVoiceChannel::ES { case LLVoiceChannel::STATE_CALL_STARTED : message = you + " " + started_call; - LLIMModel::getInstance()->addMessageSilently(mSessionID, SYSTEM_FROM, LLUUID::null, message); + LLIMModel::getInstance()->addMessage(mSessionID, SYSTEM_FROM, LLUUID::null, message); break; case LLVoiceChannel::STATE_CONNECTED : message = other_avatar_name + " " + joined_call; - LLIMModel::getInstance()->addMessageSilently(mSessionID, SYSTEM_FROM, LLUUID::null, message); + LLIMModel::getInstance()->addMessage(mSessionID, SYSTEM_FROM, LLUUID::null, message); default: break; } @@ -288,7 +291,7 @@ void LLIMModel::LLIMSession::onVoiceChannelStateChanged(const LLVoiceChannel::ES { case LLVoiceChannel::STATE_CONNECTED : message = you + " " + joined_call; - LLIMModel::getInstance()->addMessageSilently(mSessionID, SYSTEM_FROM, LLUUID::null, message); + LLIMModel::getInstance()->addMessage(mSessionID, SYSTEM_FROM, LLUUID::null, message); default: break; } @@ -299,7 +302,7 @@ void LLIMModel::LLIMSession::onVoiceChannelStateChanged(const LLVoiceChannel::ES { case LLVoiceChannel::STATE_CALL_STARTED : message = you + " " + started_call; - LLIMModel::getInstance()->addMessageSilently(mSessionID, SYSTEM_FROM, LLUUID::null, message); + LLIMModel::getInstance()->addMessage(mSessionID, SYSTEM_FROM, LLUUID::null, message); break; default: break; @@ -1372,7 +1375,7 @@ void LLCallDialogManager::onVoiceChannelChanged(const LLUUID &session_id) } sSession = session; - sSession->mVoiceChannel->setStateChangedCallback(boost::bind(LLCallDialogManager::onVoiceChannelStateChanged, _1, _2, _3)); + sSession->mVoiceChannel->setStateChangedCallback(boost::bind(LLCallDialogManager::onVoiceChannelStateChanged, _1, _2, _3, _4)); if(sCurrentSessionlName != session->mName) { sPreviousSessionlName = sCurrentSessionlName; @@ -1403,7 +1406,7 @@ void LLCallDialogManager::onVoiceChannelChanged(const LLUUID &session_id) } -void LLCallDialogManager::onVoiceChannelStateChanged(const LLVoiceChannel::EState& old_state, const LLVoiceChannel::EState& new_state, const LLVoiceChannel::EDirection& direction) +void LLCallDialogManager::onVoiceChannelStateChanged(const LLVoiceChannel::EState& old_state, const LLVoiceChannel::EState& new_state, const LLVoiceChannel::EDirection& direction, bool ended_by_agent) { LLSD mCallDialogPayload; LLOutgoingCallDialog* ocd = NULL; @@ -1423,6 +1426,7 @@ void LLCallDialogManager::onVoiceChannelStateChanged(const LLVoiceChannel::EStat mCallDialogPayload["state"] = new_state; mCallDialogPayload["disconnected_channel_name"] = sSession->mName; mCallDialogPayload["session_type"] = sSession->mSessionType; + mCallDialogPayload["ended_by_agent"] = ended_by_agent; switch(new_state) { @@ -1517,6 +1521,15 @@ void LLCallDialog::draw() } } +// virtual +void LLCallDialog::onOpen(const LLSD& key) +{ + LLDockableFloater::onOpen(key); + + // it should be over the all floaters. EXT-5116 + gFloaterView->bringToFront(this); +} + void LLCallDialog::setIcon(const LLSD& session_id, const LLSD& participant_id) { // *NOTE: 12/28/2009: check avaline calls: LLVoiceClient::isParticipantAvatar returns false for them @@ -1609,14 +1622,16 @@ void LLOutgoingCallDialog::show(const LLSD& key) channel_name = LLTextUtil::formatPhoneNumber(channel_name); } childSetTextArg("nearby", "[VOICE_CHANNEL_NAME]", channel_name); - childSetTextArg("nearby_P2P", "[VOICE_CHANNEL_NAME]", mPayload["disconnected_channel_name"].asString()); + childSetTextArg("nearby_P2P_by_other", "[VOICE_CHANNEL_NAME]", mPayload["disconnected_channel_name"].asString()); // skipping "You will now be reconnected to nearby" in notification when call is ended by disabling voice, // so no reconnection to nearby chat happens (EXT-4397) bool voice_works = LLVoiceClient::voiceEnabled() && gVoiceClient->voiceWorking(); std::string reconnect_nearby = voice_works ? LLTrans::getString("reconnect_nearby") : std::string(); childSetTextArg("nearby", "[RECONNECT_NEARBY]", reconnect_nearby); - childSetTextArg("nearby_P2P", "[RECONNECT_NEARBY]", reconnect_nearby); + + const std::string& nearby_str = mPayload["ended_by_agent"] ? NEARBY_P2P_BY_AGENT : NEARBY_P2P_BY_OTHER; + childSetTextArg(nearby_str, "[RECONNECT_NEARBY]", reconnect_nearby); } std::string callee_name = mPayload["session_name"].asString(); @@ -1650,6 +1665,7 @@ void LLOutgoingCallDialog::show(const LLSD& key) { case LLVoiceChannel::STATE_CALL_STARTED : getChild<LLTextBox>("calling")->setVisible(true); + getChild<LLButton>("Cancel")->setVisible(true); if(show_oldchannel) { getChild<LLTextBox>("leaving")->setVisible(true); @@ -1671,7 +1687,8 @@ void LLOutgoingCallDialog::show(const LLSD& key) case LLVoiceChannel::STATE_HUNG_UP : if (mPayload["session_type"].asInteger() == LLIMModel::LLIMSession::P2P_SESSION) { - getChild<LLTextBox>("nearby_P2P")->setVisible(true); + const std::string& nearby_str = mPayload["ended_by_agent"] ? NEARBY_P2P_BY_AGENT : NEARBY_P2P_BY_OTHER; + getChild<LLTextBox>(nearby_str)->setVisible(true); } else { @@ -1690,7 +1707,8 @@ void LLOutgoingCallDialog::hideAllText() getChild<LLTextBox>("calling")->setVisible(false); getChild<LLTextBox>("leaving")->setVisible(false); getChild<LLTextBox>("connecting")->setVisible(false); - getChild<LLTextBox>("nearby_P2P")->setVisible(false); + getChild<LLTextBox>("nearby_P2P_by_other")->setVisible(false); + getChild<LLTextBox>("nearby_P2P_by_agent")->setVisible(false); getChild<LLTextBox>("nearby")->setVisible(false); getChild<LLTextBox>("noanswer")->setVisible(false); } diff --git a/indra/newview/llimview.h b/indra/newview/llimview.h index 1c7aaa3f1b..ad6cede727 100644 --- a/indra/newview/llimview.h +++ b/indra/newview/llimview.h @@ -452,7 +452,7 @@ public: static void initClass(); static void onVoiceChannelChanged(const LLUUID &session_id); - static void onVoiceChannelStateChanged(const LLVoiceChannel::EState& old_state, const LLVoiceChannel::EState& new_state, const LLVoiceChannel::EDirection& direction); + static void onVoiceChannelStateChanged(const LLVoiceChannel::EState& old_state, const LLVoiceChannel::EState& new_state, const LLVoiceChannel::EDirection& direction, bool ended_by_agent); protected: static std::string sPreviousSessionlName; @@ -472,6 +472,7 @@ public: // check timer state /*virtual*/ void draw(); + /*virtual*/ void onOpen(const LLSD& key); protected: // lifetime timer for a notification diff --git a/indra/newview/llinspectavatar.cpp b/indra/newview/llinspectavatar.cpp index b2cdc0738f..83b99f1b27 100644 --- a/indra/newview/llinspectavatar.cpp +++ b/indra/newview/llinspectavatar.cpp @@ -120,6 +120,7 @@ private: void onClickTeleport(); void onClickInviteToGroup(); void onClickPay(); + void onClickShare(); void onToggleMute(); void onClickReport(); void onClickFreeze(); @@ -213,6 +214,7 @@ LLInspectAvatar::LLInspectAvatar(const LLSD& sd) mCommitCallbackRegistrar.add("InspectAvatar.Teleport", boost::bind(&LLInspectAvatar::onClickTeleport, this)); mCommitCallbackRegistrar.add("InspectAvatar.InviteToGroup", boost::bind(&LLInspectAvatar::onClickInviteToGroup, this)); mCommitCallbackRegistrar.add("InspectAvatar.Pay", boost::bind(&LLInspectAvatar::onClickPay, this)); + mCommitCallbackRegistrar.add("InspectAvatar.Share", boost::bind(&LLInspectAvatar::onClickShare, this)); mCommitCallbackRegistrar.add("InspectAvatar.ToggleMute", boost::bind(&LLInspectAvatar::onToggleMute, this)); mCommitCallbackRegistrar.add("InspectAvatar.Freeze", boost::bind(&LLInspectAvatar::onClickFreeze, this)); @@ -678,6 +680,12 @@ void LLInspectAvatar::onClickPay() closeFloater(); } +void LLInspectAvatar::onClickShare() +{ + LLAvatarActions::share(mAvatarID); + closeFloater(); +} + void LLInspectAvatar::onToggleMute() { LLMute mute(mAvatarID, mAvatarName, LLMute::AGENT); diff --git a/indra/newview/llinventorybridge.cpp b/indra/newview/llinventorybridge.cpp index ad62d6e4e3..75dc227c53 100644 --- a/indra/newview/llinventorybridge.cpp +++ b/indra/newview/llinventorybridge.cpp @@ -295,12 +295,27 @@ void LLInvFVBridge::removeBatchNoCheck(LLDynamicArray<LLFolderViewEventListener* LLMessageSystem* msg = gMessageSystem; const LLUUID trash_id = model->findCategoryUUIDForType(LLFolderType::FT_TRASH); LLViewerInventoryItem* item = NULL; - LLViewerInventoryCategory* cat = NULL; std::vector<LLUUID> move_ids; LLInventoryModel::update_map_t update; bool start_new_message = true; S32 count = batch.count(); S32 i; + + // first, hide any 'preview' floaters that correspond to the items + // being deleted. + for(i = 0; i < count; ++i) + { + bridge = (LLInvFVBridge*)(batch.get(i)); + if(!bridge || !bridge->isItemRemovable()) continue; + item = (LLViewerInventoryItem*)model->getItem(bridge->getUUID()); + if(item) + { + LLPreview::hide(item->getUUID()); + } + } + + // do the inventory move to trash + for(i = 0; i < count; ++i) { bridge = (LLInvFVBridge*)(batch.get(i)); @@ -310,7 +325,6 @@ void LLInvFVBridge::removeBatchNoCheck(LLDynamicArray<LLFolderViewEventListener* { if(item->getParentUUID() == trash_id) continue; move_ids.push_back(item->getUUID()); - LLPreview::hide(item->getUUID()); --update[item->getParentUUID()]; ++update[trash_id]; if(start_new_message) @@ -342,11 +356,12 @@ void LLInvFVBridge::removeBatchNoCheck(LLDynamicArray<LLFolderViewEventListener* gInventory.accountForUpdate(update); update.clear(); } + for(i = 0; i < count; ++i) { bridge = (LLInvFVBridge*)(batch.get(i)); if(!bridge || !bridge->isItemRemovable()) continue; - cat = (LLViewerInventoryCategory*)model->getCategory(bridge->getUUID()); + LLViewerInventoryCategory* cat = (LLViewerInventoryCategory*)model->getCategory(bridge->getUUID()); if(cat) { if(cat->getParentUUID() == trash_id) continue; @@ -1123,6 +1138,9 @@ void LLItemBridge::restoreItem() void LLItemBridge::restoreToWorld() { + //Similar functionality to the drag and drop rez logic + bool remove_from_inventory = false; + LLViewerInventoryItem* itemp = (LLViewerInventoryItem*)getItem(); if (itemp) { @@ -1135,23 +1153,20 @@ void LLItemBridge::restoreToWorld() msg->nextBlockFast(_PREHASH_InventoryData); itemp->packMessage(msg); msg->sendReliable(gAgent.getRegion()->getHost()); - } - - //Similar functionality to the drag and drop rez logic - BOOL remove_from_inventory = FALSE; - //remove local inventory copy, sim will deal with permissions and removing the item - //from the actual inventory if its a no-copy etc - if(!itemp->getPermissions().allowCopyBy(gAgent.getID())) - { - remove_from_inventory = TRUE; - } - - // Check if it's in the trash. (again similar to the normal rez logic) - const LLUUID trash_id = gInventory.findCategoryUUIDForType(LLFolderType::FT_TRASH); - if(gInventory.isObjectDescendentOf(itemp->getUUID(), trash_id)) - { - remove_from_inventory = TRUE; + //remove local inventory copy, sim will deal with permissions and removing the item + //from the actual inventory if its a no-copy etc + if(!itemp->getPermissions().allowCopyBy(gAgent.getID())) + { + remove_from_inventory = true; + } + + // Check if it's in the trash. (again similar to the normal rez logic) + const LLUUID trash_id = gInventory.findCategoryUUIDForType(LLFolderType::FT_TRASH); + if(gInventory.isObjectDescendentOf(itemp->getUUID(), trash_id)) + { + remove_from_inventory = true; + } } if(remove_from_inventory) @@ -1537,7 +1552,7 @@ BOOL LLFolderBridge::isUpToDate() const BOOL LLFolderBridge::isItemCopyable() const { - return TRUE; + return FALSE; } BOOL LLFolderBridge::copyToClipboard() const @@ -2242,7 +2257,10 @@ void LLFolderBridge::determineFolderType() { LLInventoryModel* model = getInventoryModel(); LLViewerInventoryCategory* category = model->getCategory(mUUID); - category->determineFolderType(); + if (category) + { + category->determineFolderType(); + } } } @@ -2442,7 +2460,12 @@ void LLFolderBridge::pasteFromClipboard() { // move_inventory_item() is not enough, //we have to update inventory locally too - changeItemParent(model, dynamic_cast<LLViewerInventoryItem*>(item), parent_id, FALSE); + LLViewerInventoryItem* viitem = dynamic_cast<LLViewerInventoryItem*>(item); + llassert(viitem); + if (viitem) + { + changeItemParent(model, viitem, parent_id, FALSE); + } } else { @@ -2514,11 +2537,13 @@ void LLFolderBridge::folderOptionsMenu() if(!model) return; const LLInventoryCategory* category = model->getCategory(mUUID); + if(!category) return; + LLFolderType::EType type = category->getPreferredType(); - const bool is_system_folder = category && LLFolderType::lookupIsProtectedType(type); + const bool is_system_folder = LLFolderType::lookupIsProtectedType(type); // BAP change once we're no longer treating regular categories as ensembles. - const bool is_ensemble = category && (type == LLFolderType::FT_NONE || - LLFolderType::lookupIsEnsembleType(type)); + const bool is_ensemble = (type == LLFolderType::FT_NONE || + LLFolderType::lookupIsEnsembleType(type)); // calling card related functionality for folders. @@ -3641,9 +3666,13 @@ void LLCallingCardBridge::buildContextMenu(LLMenuGL& menu, U32 flags) LLInventoryItem* item = getItem(); BOOL good_card = (item - && (LLUUID::null != item->getCreatorUUID()) - && (item->getCreatorUUID() != gAgent.getID())); - BOOL user_online = (LLAvatarTracker::instance().isBuddyOnline(item->getCreatorUUID())); + && (LLUUID::null != item->getCreatorUUID()) + && (item->getCreatorUUID() != gAgent.getID())); + BOOL user_online = FALSE; + if (item) + { + user_online = (LLAvatarTracker::instance().isBuddyOnline(item->getCreatorUUID())); + } items.push_back(std::string("Send Instant Message Separator")); items.push_back(std::string("Send Instant Message")); items.push_back(std::string("Offer Teleport...")); @@ -3831,7 +3860,12 @@ void LLGestureBridge::performAction(LLFolderView* folder, LLInventoryModel* mode BOOL inform_server = TRUE; BOOL deactivate_similar = FALSE; LLGestureManager::instance().setGestureLoadedCallback(mUUID, boost::bind(&LLGestureBridge::playGesture, mUUID)); - LLGestureManager::instance().activateGestureWithAsset(mUUID, gInventory.getItem(mUUID)->getAssetUUID(), inform_server, deactivate_similar); + LLViewerInventoryItem* item = gInventory.getItem(mUUID); + llassert(item); + if (item) + { + LLGestureManager::instance().activateGestureWithAsset(mUUID, item->getAssetUUID(), inform_server, deactivate_similar); + } } else { @@ -4074,12 +4108,13 @@ void LLObjectBridge::performAction(LLFolderView* folder, LLInventoryModel* model gMessageSystem->addUUIDFast(_PREHASH_AgentID, gAgent.getID()); gMessageSystem->addUUIDFast(_PREHASH_ItemID, item->getLinkedUUID()); gMessageSystem->sendReliable( gAgent.getRegion()->getHost()); - } - // this object might have been selected, so let the selection manager know it's gone now - LLViewerObject *found_obj = gObjectList.findObject(item->getLinkedUUID()); - if (found_obj) - { - LLSelectMgr::getInstance()->remove(found_obj); + + // this object might have been selected, so let the selection manager know it's gone now + LLViewerObject *found_obj = gObjectList.findObject(item->getLinkedUUID()); + if (found_obj) + { + LLSelectMgr::getInstance()->remove(found_obj); + } } } else LLItemBridge::performAction(folder, model, action); @@ -5156,12 +5191,18 @@ void LLInvFVBridgeAction::doAction(LLAssetType::EType asset_type, //static void LLInvFVBridgeAction::doAction(const LLUUID& uuid, LLInventoryModel* model) { - LLAssetType::EType asset_type = model->getItem(uuid)->getType(); - LLInvFVBridgeAction* action = createAction(asset_type,uuid,model); - if(action) + llassert(model); + LLViewerInventoryItem* item = model->getItem(uuid); + llassert(item); + if (item) { - action->doIt(); - delete action; + LLAssetType::EType asset_type = item->getType(); + LLInvFVBridgeAction* action = createAction(asset_type,uuid,model); + if(action) + { + action->doIt(); + delete action; + } } } diff --git a/indra/newview/llinventoryfunctions.cpp b/indra/newview/llinventoryfunctions.cpp index 90c611cb76..0c080cc6cb 100644 --- a/indra/newview/llinventoryfunctions.cpp +++ b/indra/newview/llinventoryfunctions.cpp @@ -195,6 +195,62 @@ void LLOpenFoldersWithSelection::doFolder(LLFolderViewFolder* folder) } } +static void assign_clothing_bodypart_icon(EInventoryIcon &idx, U32 attachment_point) +{ + const EWearableType wearable_type = EWearableType(LLInventoryItem::II_FLAGS_WEARABLES_MASK & attachment_point); + switch(wearable_type) + { + case WT_SHAPE: + idx = BODYPART_SHAPE_ICON_NAME; + break; + case WT_SKIN: + idx = BODYPART_SKIN_ICON_NAME; + break; + case WT_HAIR: + idx = BODYPART_HAIR_ICON_NAME; + break; + case WT_EYES: + idx = BODYPART_EYES_ICON_NAME; + break; + case WT_SHIRT: + idx = CLOTHING_SHIRT_ICON_NAME; + break; + case WT_PANTS: + idx = CLOTHING_PANTS_ICON_NAME; + break; + case WT_SHOES: + idx = CLOTHING_SHOES_ICON_NAME; + break; + case WT_SOCKS: + idx = CLOTHING_SOCKS_ICON_NAME; + break; + case WT_JACKET: + idx = CLOTHING_JACKET_ICON_NAME; + break; + case WT_GLOVES: + idx = CLOTHING_GLOVES_ICON_NAME; + break; + case WT_UNDERSHIRT: + idx = CLOTHING_UNDERSHIRT_ICON_NAME; + break; + case WT_UNDERPANTS: + idx = CLOTHING_UNDERPANTS_ICON_NAME; + break; + case WT_SKIRT: + idx = CLOTHING_SKIRT_ICON_NAME; + break; + case WT_ALPHA: + idx = CLOTHING_ALPHA_ICON_NAME; + break; + case WT_TATTOO: + idx = CLOTHING_TATTOO_ICON_NAME; + break; + default: + break; + } +} + + const std::string& get_item_icon_name(LLAssetType::EType asset_type, LLInventoryType::EType inventory_type, U32 attachment_point, @@ -249,62 +305,11 @@ const std::string& get_item_icon_name(LLAssetType::EType asset_type, break; case LLAssetType::AT_CLOTHING: idx = CLOTHING_ICON_NAME; - case LLAssetType::AT_BODYPART : - if(LLAssetType::AT_BODYPART == asset_type) - { - idx = BODYPART_ICON_NAME; - } - switch(LLInventoryItem::II_FLAGS_WEARABLES_MASK & attachment_point) - { - case WT_SHAPE: - idx = BODYPART_SHAPE_ICON_NAME; - break; - case WT_SKIN: - idx = BODYPART_SKIN_ICON_NAME; - break; - case WT_HAIR: - idx = BODYPART_HAIR_ICON_NAME; - break; - case WT_EYES: - idx = BODYPART_EYES_ICON_NAME; - break; - case WT_SHIRT: - idx = CLOTHING_SHIRT_ICON_NAME; - break; - case WT_PANTS: - idx = CLOTHING_PANTS_ICON_NAME; - break; - case WT_SHOES: - idx = CLOTHING_SHOES_ICON_NAME; - break; - case WT_SOCKS: - idx = CLOTHING_SOCKS_ICON_NAME; - break; - case WT_JACKET: - idx = CLOTHING_JACKET_ICON_NAME; - break; - case WT_GLOVES: - idx = CLOTHING_GLOVES_ICON_NAME; - break; - case WT_UNDERSHIRT: - idx = CLOTHING_UNDERSHIRT_ICON_NAME; - break; - case WT_UNDERPANTS: - idx = CLOTHING_UNDERPANTS_ICON_NAME; - break; - case WT_SKIRT: - idx = CLOTHING_SKIRT_ICON_NAME; - break; - case WT_ALPHA: - idx = CLOTHING_ALPHA_ICON_NAME; - break; - case WT_TATTOO: - idx = CLOTHING_TATTOO_ICON_NAME; - break; - default: - // no-op, go with choice above - break; - } + assign_clothing_bodypart_icon(idx, attachment_point); + break; + case LLAssetType::AT_BODYPART: + idx = BODYPART_ICON_NAME; + assign_clothing_bodypart_icon(idx, attachment_point); break; case LLAssetType::AT_NOTECARD: idx = NOTECARD_ICON_NAME; diff --git a/indra/newview/llinventorymodel.cpp b/indra/newview/llinventorymodel.cpp index 7ec976604a..326f2a5577 100644 --- a/indra/newview/llinventorymodel.cpp +++ b/indra/newview/llinventorymodel.cpp @@ -1937,23 +1937,26 @@ void LLInventoryModel::addItem(LLViewerInventoryItem* item) { //llinfos << "LLInventoryModel::addItem()" << llendl; - // This can happen if assettype enums from llassettype.h ever change. - // For example, there is a known backwards compatibility issue in some viewer prototypes prior to when - // the AT_LINK enum changed from 23 to 24. - if ((item->getType() == LLAssetType::AT_NONE) - || LLAssetType::lookup(item->getType()) == LLAssetType::badLookup()) - { - llwarns << "Got bad asset type for item [ name: " << item->getName() << " type: " << item->getType() << " inv-type: " << item->getInventoryType() << " ], ignoring." << llendl; - return; - } + llassert(item); if(item) { + // This can happen if assettype enums from llassettype.h ever change. + // For example, there is a known backwards compatibility issue in some viewer prototypes prior to when + // the AT_LINK enum changed from 23 to 24. + if ((item->getType() == LLAssetType::AT_NONE) + || LLAssetType::lookup(item->getType()) == LLAssetType::badLookup()) + { + llwarns << "Got bad asset type for item [ name: " << item->getName() << " type: " << item->getType() << " inv-type: " << item->getInventoryType() << " ], ignoring." << llendl; + return; + } + // This condition means that we tried to add a link without the baseobj being in memory. // The item will show up as a broken link. if (item->getIsBrokenLink()) { llinfos << "Adding broken link [ name: " << item->getName() << " itemID: " << item->getUUID() << " assetID: " << item->getAssetUUID() << " ) parent: " << item->getParentUUID() << llendl; } + mItemMap[item->getUUID()] = item; } } diff --git a/indra/newview/llinventorypanel.cpp b/indra/newview/llinventorypanel.cpp index 467255d1a7..048ed10886 100644 --- a/indra/newview/llinventorypanel.cpp +++ b/indra/newview/llinventorypanel.cpp @@ -143,6 +143,7 @@ BOOL LLInventoryPanel::postBuild() addChild(mScroller); mScroller->addChild(mFolders); mFolders->setScrollContainer(mScroller); + mFolders->addChild(mFolders->mStatusTextBox); } // Set up the callbacks from the inventory we're viewing, and then build everything. @@ -289,8 +290,12 @@ void LLInventoryPanel::modelChanged(U32 mask) if(bridge) { // Clear the display name first, so it gets properly re-built during refresh() bridge->clearDisplayName(); + + view_item->refresh(); + + // Set the new tooltip with the new display name. + view_item->setToolTip(bridge->getDisplayName()); } - view_item->refresh(); } } diff --git a/indra/newview/lllocaltextureobject.cpp b/indra/newview/lllocaltextureobject.cpp index 69eb5fce2f..116d9bc446 100644 --- a/indra/newview/lllocaltextureobject.cpp +++ b/indra/newview/lllocaltextureobject.cpp @@ -70,6 +70,7 @@ LLLocalTextureObject::LLLocalTextureObject(const LLLocalTextureObject& lto) : if (!original_layer) { llerrs << "could not clone Local Texture Object: unable to extract texlayer!" << llendl; + continue; } LLTexLayer* new_layer = new LLTexLayer(*original_layer); diff --git a/indra/newview/lllocationinputctrl.cpp b/indra/newview/lllocationinputctrl.cpp index ff713d74ad..c66d067779 100644 --- a/indra/newview/lllocationinputctrl.cpp +++ b/indra/newview/lllocationinputctrl.cpp @@ -489,7 +489,10 @@ void LLLocationInputCtrl::onTextEntry(LLLineEditor* line_editor) */ void LLLocationInputCtrl::setText(const LLStringExplicit& text) { - mTextEntry->setText(text); + if (mTextEntry) + { + mTextEntry->setText(text); + } mHasAutocompletedText = FALSE; } @@ -498,7 +501,9 @@ void LLLocationInputCtrl::setFocus(BOOL b) LLComboBox::setFocus(b); if (mTextEntry && b && !mList->getVisible()) + { mTextEntry->setFocus(TRUE); + } } void LLLocationInputCtrl::handleLoginComplete() @@ -688,8 +693,8 @@ void LLLocationInputCtrl::refreshLocation() { // Is one of our children focused? if (LLUICtrl::hasFocus() || mButton->hasFocus() || mList->hasFocus() || - (mTextEntry && mTextEntry->hasFocus()) || (mAddLandmarkBtn->hasFocus())) - + (mTextEntry && mTextEntry->hasFocus()) || + (mAddLandmarkBtn->hasFocus())) { llwarns << "Location input should not be refreshed when having focus" << llendl; return; @@ -828,10 +833,13 @@ void LLLocationInputCtrl::refreshParcelIcons() mDamageText->setVisible(false); } - S32 left_pad, right_pad; - mTextEntry->getTextPadding(&left_pad, &right_pad); - right_pad = mTextEntry->getRect().mRight - x; - mTextEntry->setTextPadding(left_pad, right_pad); + if (mTextEntry) + { + S32 left_pad, right_pad; + mTextEntry->getTextPadding(&left_pad, &right_pad); + right_pad = mTextEntry->getRect().mRight - x; + mTextEntry->setTextPadding(left_pad, right_pad); + } } void LLLocationInputCtrl::refreshHealth() diff --git a/indra/newview/llnamelistctrl.cpp b/indra/newview/llnamelistctrl.cpp index 40e8b64362..114fef8712 100644 --- a/indra/newview/llnamelistctrl.cpp +++ b/indra/newview/llnamelistctrl.cpp @@ -339,8 +339,7 @@ void LLNameListCtrl::refresh(const LLUUID& id, const std::string& first, LLScrollListItem* item = *iter; if (item->getUUID() == id) { - LLScrollListCell* cell = (LLScrollListCell*)item->getColumn(0); - cell = item->getColumn(mNameColumnIndex); + LLScrollListCell* cell = item->getColumn(mNameColumnIndex); if (cell) { cell->setValue(fullname); diff --git a/indra/newview/llnotificationalerthandler.cpp b/indra/newview/llnotificationalerthandler.cpp index 52de8355e9..60e41b64ac 100644 --- a/indra/newview/llnotificationalerthandler.cpp +++ b/indra/newview/llnotificationalerthandler.cpp @@ -36,6 +36,7 @@ #include "llnotificationhandler.h" #include "llnotifications.h" +#include "llprogressview.h" #include "lltoastnotifypanel.h" #include "llviewercontrol.h" #include "llviewerwindow.h" @@ -116,6 +117,11 @@ bool LLAlertHandler::processNotification(const LLSD& notify) p.is_modal = mIsModal; p.on_delete_toast = boost::bind(&LLAlertHandler::onDeleteToast, this, _1); + // Show alert in middle of progress view (during teleport) (EXT-1093) + LLProgressView* progress = gViewerWindow->getProgressView(); + LLRect rc = progress && progress->getVisible() ? progress->getRect() : gViewerWindow->getWorldViewRectScaled(); + mChannel->updatePositionAndSize(rc, rc); + LLScreenChannel* channel = dynamic_cast<LLScreenChannel*>(mChannel); if(channel) channel->addToast(p); diff --git a/indra/newview/llnotificationtiphandler.cpp b/indra/newview/llnotificationtiphandler.cpp index 83a2215ac6..c55c8d6221 100644 --- a/indra/newview/llnotificationtiphandler.cpp +++ b/indra/newview/llnotificationtiphandler.cpp @@ -43,6 +43,37 @@ using namespace LLNotificationsUI; +class LLOnalineStatusToast : public LLToastPanel +{ +public: + + struct Params + { + LLNotificationPtr notification; + LLUUID avatar_id; + std::string message; + + Params() {} + }; + + LLOnalineStatusToast(Params& p) : LLToastPanel(p.notification) + { + LLUICtrlFactory::getInstance()->buildPanel(this, "panel_online_status.xml"); + + childSetValue("avatar_icon", p.avatar_id); + childSetValue("message", p.message); + + if (p.notification->getPayload().has("respond_on_mousedown") + && p.notification->getPayload()["respond_on_mousedown"] ) + { + setMouseDownCallback(boost::bind(&LLNotification::respond, p.notification, + p.notification->getResponseTemplate())); + } + + // set line max count to 2 in case of a very long name + snapToMessageHeight(getChild<LLTextBox>("message"), 2); + } +}; //-------------------------------------------------------------------------- LLTipHandler::LLTipHandler(e_notification_type type, const LLSD& id) @@ -114,7 +145,19 @@ bool LLTipHandler::processNotification(const LLSD& notify) LLHandlerUtil::spawnIMSession(name, from_id); } - LLToastNotifyPanel* notify_box = new LLToastNotifyPanel(notification); + LLToastPanel* notify_box = NULL; + if("FriendOffline" == notification->getName() || "FriendOnline" == notification->getName()) + { + LLOnalineStatusToast::Params p; + p.notification = notification; + p.message = notification->getMessage(); + p.avatar_id = notification->getPayload()["FROM_ID"]; + notify_box = new LLOnalineStatusToast(p); + } + else + { + notify_box = new LLToastNotifyPanel(notification); + } LLToast::Params p; p.notif_id = notification->getID(); diff --git a/indra/newview/llpanelavatar.cpp b/indra/newview/llpanelavatar.cpp index d7c558d188..86f101e012 100644 --- a/indra/newview/llpanelavatar.cpp +++ b/indra/newview/llpanelavatar.cpp @@ -455,18 +455,20 @@ void LLPanelProfileTab::onMapButtonClick() void LLPanelProfileTab::updateButtons() { - bool is_avatar_online = LLAvatarTracker::instance().isBuddyOnline(getAvatarId()); + bool is_buddy_online = LLAvatarTracker::instance().isBuddyOnline(getAvatarId()); if(LLAvatarActions::isFriend(getAvatarId())) { - childSetEnabled("teleport", is_avatar_online); + childSetEnabled("teleport", is_buddy_online); } else { childSetEnabled("teleport", true); } - bool enable_map_btn = is_avatar_online && gAgent.isGodlike() || is_agent_mappable(getAvatarId()); + bool enable_map_btn = (is_buddy_online && + is_agent_mappable(getAvatarId())) + || gAgent.isGodlike(); childSetEnabled("show_on_map_btn", enable_map_btn); } @@ -507,8 +509,8 @@ BOOL LLPanelAvatarProfile::postBuild() LLUICtrl::EnableCallbackRegistry::ScopedRegistrar enable; enable.add("Profile.EnableGod", boost::bind(&enable_god)); - enable.add("Profile.CheckItem", boost::bind(&LLPanelAvatarProfile::checkOverflowMenuItem, this, _2)); - enable.add("Profile.EnableItem", boost::bind(&LLPanelAvatarProfile::enableOverflowMenuItem, this, _2)); + enable.add("Profile.EnableBlock", boost::bind(&LLPanelAvatarProfile::enableBlock, this)); + enable.add("Profile.EnableUnblock", boost::bind(&LLPanelAvatarProfile::enableUnblock, this)); mProfileMenu = LLUICtrlFactory::getInstance()->createFromFile<LLToggleableMenu>("menu_profile_overflow.xml", gMenuHolder, LLViewerMenuHolderGL::child_registry_t::instance()); @@ -685,26 +687,6 @@ void LLPanelAvatarProfile::fillAccountStatus(const LLAvatarData* avatar_data) childSetValue("acc_status_text", caption_text); } -bool LLPanelAvatarProfile::checkOverflowMenuItem(const LLSD& param) -{ - std::string item = param.asString(); - - if (item == "is_blocked") - return LLAvatarActions::isBlocked(getAvatarId()); - - return false; -} - -bool LLPanelAvatarProfile::enableOverflowMenuItem(const LLSD& param) -{ - std::string item = param.asString(); - - if (item == "can_block") - return LLAvatarActions::canBlock(getAvatarId()); - - return false; -} - void LLPanelAvatarProfile::pay() { LLAvatarActions::pay(getAvatarId()); @@ -720,6 +702,16 @@ void LLPanelAvatarProfile::toggleBlock() LLAvatarActions::toggleBlock(getAvatarId()); } +bool LLPanelAvatarProfile::enableBlock() +{ + return LLAvatarActions::canBlock(getAvatarId()) && !LLAvatarActions::isBlocked(getAvatarId()); +} + +bool LLPanelAvatarProfile::enableUnblock() +{ + return LLAvatarActions::isBlocked(getAvatarId()); +} + void LLPanelAvatarProfile::kick() { LLAvatarActions::kick(getAvatarId()); diff --git a/indra/newview/llpanelavatar.h b/indra/newview/llpanelavatar.h index 52b4255e34..babbe534b4 100644 --- a/indra/newview/llpanelavatar.h +++ b/indra/newview/llpanelavatar.h @@ -202,8 +202,8 @@ protected: void unfreeze(); void csr(); - bool checkOverflowMenuItem(const LLSD& param); - bool enableOverflowMenuItem(const LLSD& param); + bool enableBlock(); + bool enableUnblock(); bool enableGod(); diff --git a/indra/newview/llpanelface.cpp b/indra/newview/llpanelface.cpp index 8c5208678e..b50c6442e1 100644 --- a/indra/newview/llpanelface.cpp +++ b/indra/newview/llpanelface.cpp @@ -265,10 +265,13 @@ void LLPanelFace::sendAlpha() void LLPanelFace::sendGlow() { - LLSpinCtrl* mCtrlGlow = getChild<LLSpinCtrl>("glow"); - F32 glow = mCtrlGlow->get(); - - LLSelectMgr::getInstance()->selectionSetGlow( glow ); + LLSpinCtrl* mCtrlGlow = getChild<LLSpinCtrl>("glow"); + llassert(mCtrlGlow); + if (mCtrlGlow) + { + F32 glow = mCtrlGlow->get(); + LLSelectMgr::getInstance()->selectionSetGlow( glow ); + } } struct LLPanelFaceSetTEFunctor : public LLSelectedTEFunctor @@ -286,6 +289,9 @@ struct LLPanelFaceSetTEFunctor : public LLSelectedTEFunctor LLCheckBoxCtrl* checkFlipScaleS = mPanel->getChild<LLCheckBoxCtrl>("checkbox flip s"); LLCheckBoxCtrl* checkFlipScaleT = mPanel->getChild<LLCheckBoxCtrl>("checkbox flip t"); LLComboBox* comboTexGen = mPanel->getChild<LLComboBox>("combobox texgen"); + llassert(comboTexGen); + llassert(object); + if (ctrlTexScaleS) { valid = !ctrlTexScaleS->getTentative() || !checkFlipScaleS->getTentative(); @@ -296,7 +302,8 @@ struct LLPanelFaceSetTEFunctor : public LLSelectedTEFunctor { value = -value; } - if (comboTexGen->getCurrentIndex() == 1) + if (comboTexGen && + comboTexGen->getCurrentIndex() == 1) { value *= 0.5f; } @@ -314,7 +321,8 @@ struct LLPanelFaceSetTEFunctor : public LLSelectedTEFunctor { value = -value; } - if (comboTexGen->getCurrentIndex() == 1) + if (comboTexGen && + comboTexGen->getCurrentIndex() == 1) { value *= 0.5f; } diff --git a/indra/newview/llpanelgroup.cpp b/indra/newview/llpanelgroup.cpp index 469f1c1739..ce4078409a 100644 --- a/indra/newview/llpanelgroup.cpp +++ b/indra/newview/llpanelgroup.cpp @@ -90,6 +90,7 @@ LLPanelGroup::LLPanelGroup() : LLPanel(), LLGroupMgrObserver( LLUUID() ), mSkipRefresh(FALSE), + mButtonJoin(NULL), mShowingNotifyDialog(false) { // Set up the factory callbacks. @@ -159,10 +160,6 @@ BOOL LLPanelGroup::postBuild() button = getChild<LLButton>("btn_chat"); button->setClickedCallback(onBtnGroupChatClicked, this); - button = getChild<LLButton>("btn_join"); - button->setVisible(false); - button->setEnabled(true); - button = getChild<LLButton>("btn_cancel"); button->setVisible(false); button->setEnabled(true); @@ -174,7 +171,7 @@ BOOL LLPanelGroup::postBuild() childSetCommitCallback("back",boost::bind(&LLPanelGroup::onBackBtnClick,this),NULL); childSetCommitCallback("btn_create",boost::bind(&LLPanelGroup::onBtnCreate,this),NULL); - childSetCommitCallback("btn_join",boost::bind(&LLPanelGroup::onBtnJoin,this),NULL); + childSetCommitCallback("btn_cancel",boost::bind(&LLPanelGroup::onBtnCancel,this),NULL); LLPanelGroupTab* panel_general = findChild<LLPanelGroupTab>("group_general_tab_panel"); @@ -188,7 +185,17 @@ BOOL LLPanelGroup::postBuild() if(panel_land) mTabs.push_back(panel_land); if(panel_general) + { panel_general->setupCtrls(this); + button = panel_general->getChild<LLButton>("btn_join"); + button->setVisible(false); + button->setEnabled(true); + + mButtonJoin = button; + mButtonJoin->setCommitCallback(boost::bind(&LLPanelGroup::onBtnJoin,this)); + + mJoinText = panel_general->getChild<LLUICtrl>("join_cost_text"); + } gVoiceClient->addObserver(this); @@ -326,16 +333,13 @@ void LLPanelGroup::update(LLGroupChange gc) { childSetValue("group_name", gdatap->mName); childSetToolTip("group_name",gdatap->mName); - - LLButton* btn_join = getChild<LLButton>("btn_join"); - LLUICtrl* join_text = getChild<LLUICtrl>("join_cost_text"); - + LLGroupData agent_gdatap; bool is_member = gAgent.getGroupData(mID,agent_gdatap); bool join_btn_visible = !is_member && gdatap->mOpenEnrollment; - btn_join->setVisible(join_btn_visible); - join_text->setVisible(join_btn_visible); + mButtonJoin->setVisible(join_btn_visible); + mJoinText->setVisible(join_btn_visible); if(join_btn_visible) { @@ -351,7 +355,7 @@ void LLPanelGroup::update(LLGroupChange gc) { fee_buff = getString("group_join_free", string_args); } - childSetValue("join_cost_text",fee_buff); + mJoinText->setValue(fee_buff); } } } @@ -380,7 +384,7 @@ void LLPanelGroup::setGroupID(const LLUUID& group_id) LLButton* button_apply = findChild<LLButton>("btn_apply"); LLButton* button_refresh = findChild<LLButton>("btn_refresh"); LLButton* button_create = findChild<LLButton>("btn_create"); - LLButton* button_join = findChild<LLButton>("btn_join"); + LLButton* button_cancel = findChild<LLButton>("btn_cancel"); LLButton* button_call = findChild<LLButton>("btn_call"); LLButton* button_chat = findChild<LLButton>("btn_chat"); @@ -417,8 +421,8 @@ void LLPanelGroup::setGroupID(const LLUUID& group_id) if(!tab_general || !tab_roles || !tab_notices || !tab_land) return; - if(button_join) - button_join->setVisible(false); + if(mButtonJoin) + mButtonJoin->setVisible(false); if(is_null_group_id)//creating new group @@ -478,6 +482,7 @@ void LLPanelGroup::setGroupID(const LLUUID& group_id) } reposButtons(); + update(GC_ALL);//show/hide "join" button if data is already ready } bool LLPanelGroup::apply(LLPanelGroupTab* tab) diff --git a/indra/newview/llpanelgroup.h b/indra/newview/llpanelgroup.h index 6e23eedffb..136868a60d 100644 --- a/indra/newview/llpanelgroup.h +++ b/indra/newview/llpanelgroup.h @@ -130,6 +130,9 @@ protected: std::vector<LLPanelGroupTab* > mTabs; + LLButton* mButtonJoin; + LLUICtrl* mJoinText; + }; class LLPanelGroupTab : public LLPanel diff --git a/indra/newview/llpanelgroupgeneral.cpp b/indra/newview/llpanelgroupgeneral.cpp index 3b303eed0f..555e277ce5 100644 --- a/indra/newview/llpanelgroupgeneral.cpp +++ b/indra/newview/llpanelgroupgeneral.cpp @@ -206,15 +206,19 @@ BOOL LLPanelGroupGeneral::postBuild() void LLPanelGroupGeneral::setupCtrls(LLPanel* panel_group) { - mInsignia = panel_group->getChild<LLTextureCtrl>("insignia"); + mInsignia = getChild<LLTextureCtrl>("insignia"); if (mInsignia) { mInsignia->setCommitCallback(onCommitAny, this); mDefaultIconID = mInsignia->getImageAssetID(); } - mFounderName = panel_group->getChild<LLNameBox>("founder_name"); + mFounderName = getChild<LLNameBox>("founder_name"); + + mGroupNameEditor = panel_group->getChild<LLLineEditor>("group_name_editor"); mGroupNameEditor->setPrevalidate( LLTextValidate::validateASCII ); + + } // static diff --git a/indra/newview/llpanelgroupinvite.cpp b/indra/newview/llpanelgroupinvite.cpp index 06a682c905..05261a65de 100644 --- a/indra/newview/llpanelgroupinvite.cpp +++ b/indra/newview/llpanelgroupinvite.cpp @@ -36,6 +36,7 @@ #include "llagent.h" #include "llfloateravatarpicker.h" #include "llbutton.h" +#include "llcallingcard.h" #include "llcombobox.h" #include "llgroupactions.h" #include "llgroupmgr.h" @@ -405,16 +406,13 @@ void LLPanelGroupInvite::addUsers(std::vector<LLUUID>& agent_ids) { LLUUID agent_id = agent_ids[i]; LLViewerObject* dest = gObjectList.findObject(agent_id); + std::string fullname; if(dest && dest->isAvatar()) { - std::string fullname; - LLSD args; LLNameValue* nvfirst = dest->getNVPair("FirstName"); LLNameValue* nvlast = dest->getNVPair("LastName"); if(nvfirst && nvlast) { - args["FIRST"] = std::string(nvfirst->getString()); - args["LAST"] = std::string(nvlast->getString()); fullname = std::string(nvfirst->getString()) + " " + std::string(nvlast->getString()); } if (!fullname.empty()) @@ -427,10 +425,44 @@ void LLPanelGroupInvite::addUsers(std::vector<LLUUID>& agent_ids) names.push_back("(Unknown)"); } } + else + { + //looks like user try to invite offline friend + //for offline avatar_id gObjectList.findObject() will return null + //so we need to do this additional search in avatar tracker, see EXT-4732 + if (LLAvatarTracker::instance().isBuddy(agent_id)) + { + if (!gCacheName->getFullName(agent_id, fullname)) + { + // actually it should happen, just in case + gCacheName->get(LLUUID(agent_id), false, boost::bind( + &LLPanelGroupInvite::addUserCallback, this, _1, _2, + _3)); + // for this special case! + //when there is no cached name we should remove resident from agent_ids list to avoid breaking of sequence + // removed id will be added in callback + agent_ids.erase(agent_ids.begin() + i); + } + else + { + names.push_back(fullname); + } + } + } } mImplementation->addUsers(names, agent_ids); } +void LLPanelGroupInvite::addUserCallback(const LLUUID& id, const std::string& first_name, const std::string& last_name) +{ + std::vector<std::string> names; + std::vector<LLUUID> agent_ids; + std::string full_name = first_name + " " + last_name; + agent_ids.push_back(id); + names.push_back(first_name + " " + last_name); + + mImplementation->addUsers(names, agent_ids); +} void LLPanelGroupInvite::draw() { LLPanel::draw(); diff --git a/indra/newview/llpanelgroupinvite.h b/indra/newview/llpanelgroupinvite.h index 37135b488a..b095dd2395 100644 --- a/indra/newview/llpanelgroupinvite.h +++ b/indra/newview/llpanelgroupinvite.h @@ -43,6 +43,10 @@ public: ~LLPanelGroupInvite(); void addUsers(std::vector<LLUUID>& agent_ids); + /** + * this callback is being used to add a user whose fullname isn't been loaded before invoking of addUsers(). + */ + void addUserCallback(const LLUUID& id, const std::string& first_name, const std::string& last_name); void clear(); void update(); diff --git a/indra/newview/llpanelimcontrolpanel.cpp b/indra/newview/llpanelimcontrolpanel.cpp index cbd6f64a48..8e305a5674 100644 --- a/indra/newview/llpanelimcontrolpanel.cpp +++ b/indra/newview/llpanelimcontrolpanel.cpp @@ -224,14 +224,6 @@ void LLPanelIMControlPanel::setSessionId(const LLUUID& session_id) childSetEnabled("share_btn", FALSE); childSetEnabled("teleport_btn", FALSE); childSetEnabled("pay_btn", FALSE); - - getChild<LLTextBox>("avatar_name")->setValue(im_session->mName); - getChild<LLTextBox>("avatar_name")->setToolTip(im_session->mName); - } - else - { - // If the participant is an avatar, fetch the currect name - gCacheName->get(mAvatarID, FALSE, boost::bind(&LLPanelIMControlPanel::nameUpdatedCallback, this, _1, _2, _3, _4)); } } @@ -247,19 +239,6 @@ void LLPanelIMControlPanel::changed(U32 mask) } } -void LLPanelIMControlPanel::nameUpdatedCallback(const LLUUID& id, const std::string& first, const std::string& last, BOOL is_group) -{ - if ( id == mAvatarID ) - { - std::string avatar_name; - avatar_name.assign(first); - avatar_name.append(" "); - avatar_name.append(last); - getChild<LLTextBox>("avatar_name")->setValue(avatar_name); - getChild<LLTextBox>("avatar_name")->setToolTip(avatar_name); - } -} - LLPanelGroupControlPanel::LLPanelGroupControlPanel(const LLUUID& session_id): mParticipantList(NULL) { diff --git a/indra/newview/llpanelimcontrolpanel.h b/indra/newview/llpanelimcontrolpanel.h index 3ab505a084..ce8fc58e56 100644 --- a/indra/newview/llpanelimcontrolpanel.h +++ b/indra/newview/llpanelimcontrolpanel.h @@ -89,9 +89,6 @@ public: // LLFriendObserver trigger virtual void changed(U32 mask); -protected: - void nameUpdatedCallback(const LLUUID& id, const std::string& first, const std::string& last, BOOL is_group); - private: void onViewProfileButtonClicked(); void onAddFriendButtonClicked(); diff --git a/indra/newview/llpanellandmarkinfo.cpp b/indra/newview/llpanellandmarkinfo.cpp index 36a542cfa0..56d52ccc65 100644 --- a/indra/newview/llpanellandmarkinfo.cpp +++ b/indra/newview/llpanellandmarkinfo.cpp @@ -376,21 +376,31 @@ void LLPanelLandmarkInfo::createLandmark(const LLUUID& folder_id) // static std::string LLPanelLandmarkInfo::getFullFolderName(const LLViewerInventoryCategory* cat) { - std::string name = cat->getName(); + std::string name; LLUUID parent_id; - // translate category name, if it's right below the root - // FIXME: it can throw notification about non existent string in strings.xml - if (cat->getParentUUID().notNull() && cat->getParentUUID() == gInventory.getRootFolderID()) + llassert(cat); + if (cat) { - LLTrans::findString(name, "InvFolder " + name); - } + name = cat->getName(); - // we don't want "My Inventory" to appear in the name - while ((parent_id = cat->getParentUUID()).notNull() && parent_id != gInventory.getRootFolderID()) - { - cat = gInventory.getCategory(parent_id); - name = cat->getName() + "/" + name; + // translate category name, if it's right below the root + // FIXME: it can throw notification about non existent string in strings.xml + if (cat->getParentUUID().notNull() && cat->getParentUUID() == gInventory.getRootFolderID()) + { + LLTrans::findString(name, "InvFolder " + name); + } + + // we don't want "My Inventory" to appear in the name + while ((parent_id = cat->getParentUUID()).notNull() && parent_id != gInventory.getRootFolderID()) + { + cat = gInventory.getCategory(parent_id); + llassert(cat); + if (cat) + { + name = cat->getName() + "/" + name; + } + } } return name; @@ -406,21 +416,24 @@ void LLPanelLandmarkInfo::populateFoldersList() // Put the "Landmarks" folder first in list. LLUUID landmarks_id = gInventory.findCategoryUUIDForType(LLFolderType::FT_LANDMARK); - const LLViewerInventoryCategory* cat = gInventory.getCategory(landmarks_id); - if (!cat) + const LLViewerInventoryCategory* lmcat = gInventory.getCategory(landmarks_id); + if (!lmcat) { llwarns << "Cannot find the landmarks folder" << llendl; } - std::string cat_full_name = getFullFolderName(cat); - mFolderCombo->add(cat_full_name, cat->getUUID()); + else + { + std::string cat_full_name = getFullFolderName(lmcat); + mFolderCombo->add(cat_full_name, lmcat->getUUID()); + } typedef std::vector<folder_pair_t> folder_vec_t; folder_vec_t folders; // Sort the folders by their full name. for (S32 i = 0; i < cats.count(); i++) { - cat = cats.get(i); - cat_full_name = getFullFolderName(cat); + const LLViewerInventoryCategory* cat = cats.get(i); + std::string cat_full_name = getFullFolderName(cat); folders.push_back(folder_pair_t(cat->getUUID(), cat_full_name)); } sort(folders.begin(), folders.end(), cmp_folders); diff --git a/indra/newview/llpanellandmarks.cpp b/indra/newview/llpanellandmarks.cpp index 7c1b0f6234..40ea75ea7a 100644 --- a/indra/newview/llpanellandmarks.cpp +++ b/indra/newview/llpanellandmarks.cpp @@ -111,25 +111,76 @@ void LLCheckFolderState::doFolder(LLFolderViewFolder* folder) } } +// Functor searching and opening a folder specified by UUID +// in a folder view tree. +class LLOpenFolderByID : public LLFolderViewFunctor +{ +public: + LLOpenFolderByID(const LLUUID& folder_id) + : mFolderID(folder_id) + , mIsFolderOpen(false) + {} + virtual ~LLOpenFolderByID() {} + /*virtual*/ void doFolder(LLFolderViewFolder* folder); + /*virtual*/ void doItem(LLFolderViewItem* item) {} + + bool isFolderOpen() { return mIsFolderOpen; } + +private: + bool mIsFolderOpen; + LLUUID mFolderID; +}; + +// virtual +void LLOpenFolderByID::doFolder(LLFolderViewFolder* folder) +{ + if (folder->getListener() && folder->getListener()->getUUID() == mFolderID) + { + if (!folder->isOpen()) + { + folder->setOpen(TRUE); + mIsFolderOpen = true; + } + } +} + /** * Bridge to support knowing when the inventory has changed to update Landmarks tab * ShowFolderState filter setting to show all folders when the filter string is empty and * empty folder message when Landmarks inventory category has no children. + * Ensures that "Landmarks" folder in the Library is open on strart up. */ class LLLandmarksPanelObserver : public LLInventoryObserver { public: - LLLandmarksPanelObserver(LLLandmarksPanel* lp) : mLP(lp) {} + LLLandmarksPanelObserver(LLLandmarksPanel* lp) + : mLP(lp), + mIsLibraryLandmarksOpen(false) + {} virtual ~LLLandmarksPanelObserver() {} /*virtual*/ void changed(U32 mask); private: LLLandmarksPanel* mLP; + bool mIsLibraryLandmarksOpen; }; void LLLandmarksPanelObserver::changed(U32 mask) { mLP->updateShowFolderState(); + + LLPlacesInventoryPanel* library = mLP->getLibraryInventoryPanel(); + if (!mIsLibraryLandmarksOpen && library) + { + // Search for "Landmarks" folder in the Library and open it once on start up. See EXT-4827. + const LLUUID &landmarks_cat = gInventory.findCategoryUUIDForType(LLFolderType::FT_LANDMARK, false, true); + if (landmarks_cat.notNull()) + { + LLOpenFolderByID opener(landmarks_cat); + library->getRootFolder()->applyFunctorRecursively(opener); + mIsLibraryLandmarksOpen = opener.isFolderOpen(); + } + } } LLLandmarksPanel::LLLandmarksPanel() @@ -526,9 +577,10 @@ void LLLandmarksPanel::initLandmarksPanel(LLPlacesInventoryPanel* inventory_list { root_folder->setupMenuHandle(LLInventoryType::IT_CATEGORY, mGearFolderMenu->getHandle()); root_folder->setupMenuHandle(LLInventoryType::IT_LANDMARK, mGearLandmarkMenu->getHandle()); + + root_folder->setParentLandmarksPanel(this); } - root_folder->setParentLandmarksPanel(this); inventory_list->saveFolderState(); } diff --git a/indra/newview/llpanellandmarks.h b/indra/newview/llpanellandmarks.h index cbbd10ac26..6358bd6f23 100644 --- a/indra/newview/llpanellandmarks.h +++ b/indra/newview/llpanellandmarks.h @@ -78,6 +78,8 @@ public: */ void setItemSelected(const LLUUID& obj_id, BOOL take_keyboard_focus); + LLPlacesInventoryPanel* getLibraryInventoryPanel() { return mLibraryInventoryPanel; } + protected: /** * @return true - if current selected panel is not null and selected item is a landmark diff --git a/indra/newview/llpanelmaininventory.cpp b/indra/newview/llpanelmaininventory.cpp index 1895993a8e..2d3401966b 100644 --- a/indra/newview/llpanelmaininventory.cpp +++ b/indra/newview/llpanelmaininventory.cpp @@ -1003,7 +1003,10 @@ void LLPanelMainInventory::onCustomAction(const LLSD& userdata) } const LLUUID item_id = current_item->getListener()->getUUID(); LLViewerInventoryItem *item = gInventory.getItem(item_id); - item->regenerateLink(); + if (item) + { + item->regenerateLink(); + } active_panel->setSelection(item_id, TAKE_FOCUS_NO); } if (command_name == "find_original") diff --git a/indra/newview/llpanelnearbymedia.cpp b/indra/newview/llpanelnearbymedia.cpp new file mode 100644 index 0000000000..6a88c916d7 --- /dev/null +++ b/indra/newview/llpanelnearbymedia.cpp @@ -0,0 +1,1180 @@ +/** + * @file llpanelnearbymedia.cpp + * @brief Management interface for muting and controlling nearby media + * + * $LicenseInfo:firstyear=2005&license=viewergpl$ + * + * Copyright (c) 2005-2009, Linden Research, Inc. + * + * Second Life Viewer Source Code + * The source code in this file ("Source Code") is provided by Linden Lab + * to you under the terms of the GNU General Public License, version 2.0 + * ("GPL"), unless you have obtained a separate licensing agreement + * ("Other License"), formally executed by you and Linden Lab. Terms of + * the GPL can be found in doc/GPL-license.txt in this distribution, or + * online at http://secondlifegrid.net/programs/open_source/licensing/gplv2 + * + * There are special exceptions to the terms and conditions of the GPL as + * it is applied to this Source Code. View the full text of the exception + * in the file doc/FLOSS-exception.txt in this software distribution, or + * online at + * http://secondlifegrid.net/programs/open_source/licensing/flossexception + * + * By copying, modifying or distributing this software, you acknowledge + * that you have read and understood your obligations described above, + * and agree to abide by those obligations. + * + * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO + * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, + * COMPLETENESS OR PERFORMANCE. + * $/LicenseInfo$ + */ + +#include "llviewerprecompiledheaders.h" + +#include "llpanelnearbymedia.h" + +#include "llaudioengine.h" +#include "llcheckboxctrl.h" +#include "llcombobox.h" +#include "llresizebar.h" +#include "llscrolllistctrl.h" +#include "llscrolllistitem.h" +#include "llscrolllistcell.h" +#include "llslider.h" +#include "llsliderctrl.h" +#include "llagent.h" +#include "llagentui.h" +#include "llbutton.h" +#include "lltextbox.h" +#include "llviewermedia.h" +#include "llviewerparcelmedia.h" +#include "llviewerregion.h" +#include "llviewermediafocus.h" +#include "llviewerparcelmgr.h" +#include "llparcel.h" +#include "llpluginclassmedia.h" +#include "llvovolume.h" +#include "llstatusbar.h" +#include "llsdutil.h" + +#include "llfloaterreg.h" +#include "llfloaterpreference.h" // for the gear icon +#include "lltabcontainer.h" + +#include <stringize.h> + +extern LLControlGroup gSavedSettings; + +static const LLUUID PARCEL_MEDIA_LIST_ITEM_UUID = LLUUID("CAB5920F-E484-4233-8621-384CF373A321"); +static const LLUUID PARCEL_AUDIO_LIST_ITEM_UUID = LLUUID("DF4B020D-8A24-4B95-AB5D-CA970D694822"); + +// +// LLPanelNearByMedia +// + +LLPanelNearByMedia::LLPanelNearByMedia() +: mMediaList(NULL), + mEnableAllCtrl(NULL), + mAllMediaDisabled(false), + mDebugInfoVisible(false), + mParcelMediaItem(NULL), + mParcelAudioItem(NULL) +{ + mParcelAudioAutoStart = gSavedSettings.getBOOL(LLViewerMedia::AUTO_PLAY_MEDIA_SETTING) && + gSavedSettings.getBOOL("MediaTentativeAutoPlay"); + + mCommitCallbackRegistrar.add("MediaListCtrl.EnableAll", boost::bind(&LLPanelNearByMedia::onClickEnableAll, this)); + mCommitCallbackRegistrar.add("MediaListCtrl.DisableAll", boost::bind(&LLPanelNearByMedia::onClickDisableAll, this)); + mCommitCallbackRegistrar.add("MediaListCtrl.GoMediaPrefs", boost::bind(&LLPanelNearByMedia::onAdvancedButtonClick, this)); + mCommitCallbackRegistrar.add("MediaListCtrl.MoreLess", boost::bind(&LLPanelNearByMedia::onMoreLess, this)); + mCommitCallbackRegistrar.add("SelectedMediaCtrl.Stop", boost::bind(&LLPanelNearByMedia::onClickSelectedMediaStop, this)); + mCommitCallbackRegistrar.add("SelectedMediaCtrl.Play", boost::bind(&LLPanelNearByMedia::onClickSelectedMediaPlay, this)); + mCommitCallbackRegistrar.add("SelectedMediaCtrl.Pause", boost::bind(&LLPanelNearByMedia::onClickSelectedMediaPause, this)); + mCommitCallbackRegistrar.add("SelectedMediaCtrl.Mute", boost::bind(&LLPanelNearByMedia::onClickSelectedMediaMute, this)); + mCommitCallbackRegistrar.add("SelectedMediaCtrl.Volume", boost::bind(&LLPanelNearByMedia::onCommitSelectedMediaVolume, this)); + mCommitCallbackRegistrar.add("SelectedMediaCtrl.Zoom", boost::bind(&LLPanelNearByMedia::onClickSelectedMediaZoom, this)); + mCommitCallbackRegistrar.add("SelectedMediaCtrl.Unzoom", boost::bind(&LLPanelNearByMedia::onClickSelectedMediaUnzoom, this)); + + LLUICtrlFactory::instance().buildPanel(this, "panel_nearby_media.xml"); +} + +LLPanelNearByMedia::~LLPanelNearByMedia() +{ +} + +BOOL LLPanelNearByMedia::postBuild() +{ + LLPanel::postBuild(); + + const S32 RESIZE_BAR_THICKNESS = 6; + LLResizeBar::Params p; + p.rect = LLRect(0, RESIZE_BAR_THICKNESS, getRect().getWidth(), 0); + p.name = "resizebar_bottom"; + p.min_size = getRect().getHeight(); + p.side = LLResizeBar::BOTTOM; + p.resizing_view = this; + addChild( LLUICtrlFactory::create<LLResizeBar>(p) ); + + mNearbyMediaPanel = getChild<LLUICtrl>("nearby_media_panel"); + mMediaList = getChild<LLScrollListCtrl>("media_list"); + mEnableAllCtrl = getChild<LLUICtrl>("all_nearby_media_enable_btn"); + mDisableAllCtrl = getChild<LLUICtrl>("all_nearby_media_disable_btn"); + mItemCountText = getChild<LLTextBox>("media_item_count"); + mShowCtrl = getChild<LLComboBox>("show_combo"); + + // Dynamic (selection-dependent) controls + mStopCtrl = getChild<LLUICtrl>("stop"); + mPlayCtrl = getChild<LLUICtrl>("play"); + mPauseCtrl = getChild<LLUICtrl>("pause"); + mMuteCtrl = getChild<LLUICtrl>("mute"); + mVolumeSliderCtrl = getChild<LLUICtrl>("volume_slider_ctrl"); + mZoomCtrl = getChild<LLUICtrl>("zoom"); + mUnzoomCtrl = getChild<LLUICtrl>("unzoom"); + mVolumeSlider = getChild<LLSlider>("volume_slider"); + mMuteBtn = getChild<LLButton>("mute_btn"); + + mEmptyNameString = getString("empty_item_text"); + mParcelMediaName = getString("parcel_media_name"); + mParcelAudioName = getString("parcel_audio_name"); + mPlayingString = getString("playing_suffix"); + + mMediaList->setDoubleClickCallback(onZoomMedia, this); + mMediaList->sortByColumnIndex(PROXIMITY_COLUMN, TRUE); + mMediaList->sortByColumnIndex(VISIBILITY_COLUMN, FALSE); + + refreshList(); + updateControls(); + updateColumns(); + + LLView* minimized_controls = getChildView("minimized_controls"); + mMoreHeight = getRect().getHeight(); + mLessHeight = getRect().getHeight() - minimized_controls->getRect().mBottom; + getChild<LLUICtrl>("more_less_btn")->setValue(false); + onMoreLess(); + + return TRUE; +} + +/*virtual*/ +void LLPanelNearByMedia::onMouseEnter(S32 x, S32 y, MASK mask) +{ + mHoverTimer.stop(); + LLPanel::onMouseEnter(x,y,mask); +} + + +/*virtual*/ +void LLPanelNearByMedia::onMouseLeave(S32 x, S32 y, MASK mask) +{ + mHoverTimer.start(); + LLPanel::onMouseLeave(x,y,mask); +} + +/*virtual*/ +void LLPanelNearByMedia::handleVisibilityChange ( BOOL new_visibility ) +{ + if (new_visibility) + { + mHoverTimer.start(); // timer will be stopped when mouse hovers over panel + //gFocusMgr.setTopCtrl(this); + } + else + { + mHoverTimer.stop(); + //if (gFocusMgr.getTopCtrl() == this) + //{ + // gFocusMgr.setTopCtrl(NULL); + //} + } +} + +/*virtual*/ +void LLPanelNearByMedia::onTopLost () +{ + //LLUICtrl* new_top = gFocusMgr.getTopCtrl(); + //if (!new_top || !new_top->hasAncestor(this)) + //{ + // setVisible(FALSE); + //} +} + +/*virtual*/ +void LLPanelNearByMedia::reshape(S32 width, S32 height, BOOL called_from_parent) +{ + LLPanel::reshape(width, height, called_from_parent); + + LLButton* more_less_btn = getChild<LLButton>("more_less_btn"); + if (more_less_btn->getValue().asBoolean()) + { + mMoreHeight = getRect().getHeight(); + } + +} + +const F32 AUTO_CLOSE_FADE_TIME_START= 4.0f; +const F32 AUTO_CLOSE_FADE_TIME_END = 5.0f; + +void LLPanelNearByMedia::draw() +{ + //LLUICtrl* new_top = gFocusMgr.getTopCtrl(); + //if (new_top != this) + //{ + // // reassert top ctrl + // gFocusMgr.setTopCtrl(this); + //} + + // keep bottom of panel on screen + LLRect screen_rect = calcScreenRect(); + if (screen_rect.mBottom < 0) + { + LLRect new_rect = getRect(); + new_rect.mBottom += 0 - screen_rect.mBottom; + setShape(new_rect); + } + + mItemCountText->setValue(llformat(getString("media_item_count_format").c_str(), mMediaList->getItemCount())); + + refreshList(); + updateControls(); + + F32 alpha = mHoverTimer.getStarted() + ? clamp_rescale(mHoverTimer.getElapsedTimeF32(), AUTO_CLOSE_FADE_TIME_START, AUTO_CLOSE_FADE_TIME_END, 1.f, 0.f) + : 1.0f; + LLViewDrawContext context(alpha); + + LLPanel::draw(); + + if (alpha == 0.f) + { + setVisible(false); + } +} + +bool LLPanelNearByMedia::getParcelAudioAutoStart() +{ + return mParcelAudioAutoStart; +} + +LLScrollListItem* LLPanelNearByMedia::addListItem(const LLUUID &id) +{ + if (NULL == mMediaList) return NULL; + + // Just set up the columns -- the values will be filled in by updateListItem(). + + LLSD row; + row["id"] = id; + + LLSD &columns = row["columns"]; + + columns[CHECKBOX_COLUMN]["column"] = "media_checkbox_ctrl"; + columns[CHECKBOX_COLUMN]["type"] = "checkbox"; + //if(mDebugInfoVisible) + { + columns[PROXIMITY_COLUMN]["column"] = "media_proximity"; + columns[PROXIMITY_COLUMN]["value"] = ""; + columns[VISIBILITY_COLUMN]["column"] = "media_visibility"; + columns[VISIBILITY_COLUMN]["value"] = ""; + columns[CLASS_COLUMN]["column"] = "media_class"; + columns[CLASS_COLUMN]["type"] = "text"; + columns[CLASS_COLUMN]["value"] = ""; + } + columns[NAME_COLUMN]["column"] = "media_name"; + columns[NAME_COLUMN]["type"] = "text"; + columns[NAME_COLUMN]["value"] = ""; + //if(mDebugInfoVisible) + { + columns[DEBUG_COLUMN]["column"] = "media_debug"; + columns[DEBUG_COLUMN]["type"] = "text"; + columns[DEBUG_COLUMN]["value"] = ""; + } + + LLScrollListItem* new_item = mMediaList->addElement(row); + if (NULL != new_item) + { + LLScrollListCheck* scroll_list_check = dynamic_cast<LLScrollListCheck*>(new_item->getColumn(CHECKBOX_COLUMN)); + if (scroll_list_check) + { + LLCheckBoxCtrl *check = scroll_list_check->getCheckBox(); + check->setCommitCallback(boost::bind(&LLPanelNearByMedia::onCheckItem, this, _1, id)); + } + } + return new_item; +} + +void LLPanelNearByMedia::updateListItem(LLScrollListItem* item, LLViewerMediaImpl* impl) +{ + std::string item_name; + std::string item_tooltip; + std::string debug_str; + LLPanelNearByMedia::MediaClass media_class = MEDIA_CLASS_ALL; + + getNameAndUrlHelper(impl, item_name, item_tooltip, mEmptyNameString); + // Focused + if (impl->hasFocus()) + { + media_class = MEDIA_CLASS_FOCUSED; + } + // Is attached to another avatar? + else if (impl->isAttachedToAnotherAvatar()) + { + media_class = MEDIA_CLASS_ON_OTHERS; + } + // Outside agent parcel + else if (!impl->isInAgentParcel()) + { + media_class = MEDIA_CLASS_OUTSIDE_PARCEL; + } + else { + // inside parcel + media_class = MEDIA_CLASS_WITHIN_PARCEL; + } + + if(mDebugInfoVisible) + { + debug_str += llformat("%g/", (float)impl->getInterest()); + + // proximity distance is actually distance squared -- display it as straight distance. + debug_str += llformat("%g/", fsqrtf(impl->getProximityDistance())); + + // s += llformat("%g/", (float)impl->getCPUUsage()); + // s += llformat("%g/", (float)impl->getApproximateTextureInterest()); + debug_str += llformat("%g/", (float)(NULL == impl->getSomeObject()) ? 0.0 : impl->getSomeObject()->getPixelArea()); + + debug_str += LLPluginClassMedia::priorityToString(impl->getPriority()); + + if(impl->hasMedia()) + { + debug_str += '@'; + } + else if(impl->isPlayable()) + { + debug_str += '+'; + } + else if(impl->isForcedUnloaded()) + { + debug_str += '!'; + } + } + + updateListItem(item, + item_name, + item_tooltip, + impl->getProximity(), + impl->isMediaDisabled(), + impl->hasMedia(), + impl->isMediaTimeBased() && impl->isMediaPlaying(), + media_class, + debug_str); +} + +void LLPanelNearByMedia::updateListItem(LLScrollListItem* item, + const std::string &item_name, + const std::string &item_tooltip, + S32 proximity, + bool is_disabled, + bool has_media, + bool is_time_based_and_playing, + LLPanelNearByMedia::MediaClass media_class, + const std::string &debug_str) +{ + LLScrollListCell* cell = item->getColumn(PROXIMITY_COLUMN); + if(cell) + { + // since we are forced to sort by text, encode sort order as string + std::string proximity_string = STRINGIZE(proximity); + std::string old_proximity_string = cell->getValue().asString(); + if(proximity_string != old_proximity_string) + { + cell->setValue(proximity_string); + mMediaList->setNeedsSort(true); + } + } + + cell = item->getColumn(CHECKBOX_COLUMN); + if(cell) + { + cell->setValue(!is_disabled); + } + + cell = item->getColumn(VISIBILITY_COLUMN); + if(cell) + { + S32 old_visibility = cell->getValue(); + // *HACK ALERT: force ordering of Media before Audio before the rest of the list + S32 new_visibility = + item->getUUID() == PARCEL_MEDIA_LIST_ITEM_UUID ? 3 + : item->getUUID() == PARCEL_AUDIO_LIST_ITEM_UUID ? 2 + : (has_media) ? 1 + : ((is_disabled) ? 0 + : -1); + cell->setValue(STRINGIZE(new_visibility)); + if (new_visibility != old_visibility) + { + mMediaList->setNeedsSort(true); + } + } + + cell = item->getColumn(NAME_COLUMN); + if(cell) + { + std::string name = item_name; + std::string old_name = cell->getValue().asString(); + if (has_media) + { + name += " " + mPlayingString; + } + if (name != old_name) + { + cell->setValue(name); + } + cell->setToolTip(item_tooltip); + + // *TODO: Make these font styles/colors configurable via XUI + U8 font_style = LLFontGL::NORMAL; + LLColor4 cell_color = LLColor4::white; + + // Only colorize by class in debug + if (mDebugInfoVisible) + { + switch (media_class) { + case MEDIA_CLASS_FOCUSED: + cell_color = LLColor4::yellow; + break; + case MEDIA_CLASS_ON_OTHERS: + cell_color = LLColor4::red; + break; + case MEDIA_CLASS_OUTSIDE_PARCEL: + cell_color = LLColor4::orange; + break; + case MEDIA_CLASS_WITHIN_PARCEL: + default: + break; + } + } + if (is_disabled) + { + if (mDebugInfoVisible) + { + font_style |= LLFontGL::ITALIC; + cell_color = LLColor4::black; + } + else { + // Dim it if it is disabled + cell_color.setAlpha(0.25); + } + } + // Dim it if it isn't "showing" + else if (!has_media) + { + cell_color.setAlpha(0.25); + } + // Bold it if it is time-based media and it is playing + else if (is_time_based_and_playing) + { + if (mDebugInfoVisible) font_style |= LLFontGL::BOLD; + } + cell->setColor(cell_color); + LLScrollListText *text_cell = dynamic_cast<LLScrollListText*> (cell); + if (text_cell) + { + text_cell->setFontStyle(font_style); + } + } + + cell = item->getColumn(CLASS_COLUMN); + if(cell) + { + // TODO: clean this up! + cell->setValue(STRINGIZE(media_class)); + } + + if(mDebugInfoVisible) + { + cell = item->getColumn(DEBUG_COLUMN); + if(cell) + { + cell->setValue(debug_str); + } + } +} + +void LLPanelNearByMedia::removeListItem(const LLUUID &id) +{ + if (NULL == mMediaList) return; + + mMediaList->deleteSingleItem(mMediaList->getItemIndex(id)); +} + +void LLPanelNearByMedia::refreshParcelItems() +{ + // + // First add/remove the "fake" items Parcel Media and Parcel Audio. + // These items will have special UUIDs + // PARCEL_MEDIA_LIST_ITEM_UUID + // PARCEL_AUDIO_LIST_ITEM_UUID + // + // Get the filter choice. + const LLSD &choice_llsd = mShowCtrl->getSelectedValue(); + MediaClass choice = (MediaClass)choice_llsd.asInteger(); + // Only show "special parcel items" if "All" or "Within" filter + bool should_include = choice == MEDIA_CLASS_ALL || choice == MEDIA_CLASS_WITHIN_PARCEL; + + // First Parcel Media: add or remove it as necessary + if (should_include && LLViewerMedia::hasParcelMedia()) + { + // Yes, there is parcel media. + if (NULL == mParcelMediaItem) + { + mParcelMediaItem = addListItem(PARCEL_MEDIA_LIST_ITEM_UUID); + mMediaList->setNeedsSort(true); + } + } + else { + if (NULL != mParcelMediaItem) { + removeListItem(PARCEL_MEDIA_LIST_ITEM_UUID); + mParcelMediaItem = NULL; + mMediaList->setNeedsSort(true); + } + } + + // ... then update it + if (NULL != mParcelMediaItem) + { + std::string name, url, tooltip; + getNameAndUrlHelper(LLViewerParcelMedia::getParcelMedia(), name, url, ""); + if (name.empty() || name == url) + { + tooltip = url; + } + else { + tooltip = name + " : " + url; + } + LLViewerMediaImpl *impl = LLViewerParcelMedia::getParcelMedia(); + updateListItem(mParcelMediaItem, + mParcelMediaName, + tooltip, + -2, // Proximity closer than anything else, before Parcel Audio + impl == NULL || impl->isMediaDisabled(), + impl != NULL && !LLViewerParcelMedia::getURL().empty(), + impl != NULL && impl->isMediaTimeBased() && impl->isMediaPlaying(), + MEDIA_CLASS_ALL, + "parcel media"); + } + + // Next Parcel Audio: add or remove it as necessary + if (should_include && LLViewerMedia::hasParcelAudio()) + { + // Yes, there is parcel audio. + if (NULL == mParcelAudioItem) + { + mParcelAudioItem = addListItem(PARCEL_AUDIO_LIST_ITEM_UUID); + mMediaList->setNeedsSort(true); + } + } + else { + if (NULL != mParcelAudioItem) { + removeListItem(PARCEL_AUDIO_LIST_ITEM_UUID); + mParcelAudioItem = NULL; + mMediaList->setNeedsSort(true); + } + } + + // ... then update it + if (NULL != mParcelAudioItem) + { + bool is_playing = LLViewerMedia::isParcelAudioPlaying(); + updateListItem(mParcelAudioItem, + mParcelAudioName, + LLViewerMedia::getParcelAudioURL(), + -1, // Proximity after Parcel Media, but closer than anything else + !is_playing, + is_playing, + is_playing, + MEDIA_CLASS_ALL, + "parcel audio"); + } +} + +void LLPanelNearByMedia::refreshList() +{ + bool all_items_deleted = false; + + if(!mMediaList) + { + // None of this makes any sense if the media list isn't there. + return; + } + + // Check whether the debug column has been shown/hidden. + bool debug_info_visible = gSavedSettings.getBOOL("MediaPerformanceManagerDebug"); + if(debug_info_visible != mDebugInfoVisible) + { + mDebugInfoVisible = debug_info_visible; + + // Clear all items so the list gets regenerated. + mMediaList->deleteAllItems(); + all_items_deleted = true; + + updateColumns(); + } + + refreshParcelItems(); + + // Get the canonical list from LLViewerMedia + LLViewerMedia::impl_list impls = LLViewerMedia::getPriorityList(); + LLViewerMedia::impl_list::iterator priority_iter; + + U32 enabled_count = 0; + U32 disabled_count = 0; + + // iterate over the impl list, creating rows as necessary. + for(priority_iter = impls.begin(); priority_iter != impls.end(); priority_iter++) + { + LLViewerMediaImpl *impl = *priority_iter; + + // If we just emptied out the list, every flag needs to be reset. + if(all_items_deleted) + { + impl->setInNearbyMediaList(false); + } + + if (!impl->isParcelMedia()) + { + LLUUID media_id = impl->getMediaTextureID(); + S32 proximity = impl->getProximity(); + // This is expensive (i.e. a linear search) -- don't use it here. We now use mInNearbyMediaList instead. + //S32 index = mMediaList->getItemIndex(media_id); + if (proximity < 0 || !shouldShow(impl)) + { + if (impl->getInNearbyMediaList()) + { + // There's a row for this impl -- remove it. + removeListItem(media_id); + impl->setInNearbyMediaList(false); + } + } + else + { + if (!impl->getInNearbyMediaList()) + { + // We don't have a row for this impl -- add one. + addListItem(media_id); + impl->setInNearbyMediaList(true); + } + } + // Update counts + if (impl->isMediaDisabled()) + { + disabled_count++; + } + else { + enabled_count++; + } + } + } + mDisableAllCtrl->setEnabled(LLViewerMedia::isAnyMediaShowing() || + LLViewerMedia::isParcelMediaPlaying() || + LLViewerMedia::isParcelAudioPlaying()); + mEnableAllCtrl->setEnabled(disabled_count > 0 || + // parcel media (if we have it, and it isn't playing, enable "start") + (LLViewerMedia::hasParcelMedia() && ! LLViewerMedia::isParcelMediaPlaying()) || + // parcel audio (if we have it, and it isn't playing, enable "start") + (LLViewerMedia::hasParcelAudio() && ! LLViewerMedia::isParcelAudioPlaying())); + + // Iterate over the rows in the control, updating ones whose impl exists, and deleting ones whose impl has gone away. + std::vector<LLScrollListItem*> items = mMediaList->getAllData(); + + for (std::vector<LLScrollListItem*>::iterator item_it = items.begin(); + item_it != items.end(); + ++item_it) + { + LLScrollListItem* item = (*item_it); + LLUUID row_id = item->getUUID(); + + if (row_id != PARCEL_MEDIA_LIST_ITEM_UUID && + row_id != PARCEL_AUDIO_LIST_ITEM_UUID) + { + LLViewerMediaImpl* impl = LLViewerMedia::getMediaImplFromTextureID(row_id); + if(impl) + { + updateListItem(item, impl); + } + else + { + // This item's impl has been deleted -- remove the row. + // Removing the row won't throw off our iteration, since we have a local copy of the array. + // We just need to make sure we don't access this item after the delete. + removeListItem(row_id); + } + } + } + + // Set the selection to whatever media impl the media focus/hover is on. + // This is an experiment, and can be removed by ifdefing out these 4 lines. + LLUUID media_target = LLViewerMediaFocus::getInstance()->getControlsMediaID(); + if(media_target.notNull()) + { + mMediaList->selectByID(media_target); + } +} + +void LLPanelNearByMedia::updateColumns() +{ + if (!mDebugInfoVisible) + { + if (mMediaList->getColumn(CHECKBOX_COLUMN)) mMediaList->getColumn(VISIBILITY_COLUMN)->setWidth(-1); + if (mMediaList->getColumn(VISIBILITY_COLUMN)) mMediaList->getColumn(VISIBILITY_COLUMN)->setWidth(-1); + if (mMediaList->getColumn(PROXIMITY_COLUMN)) mMediaList->getColumn(PROXIMITY_COLUMN)->setWidth(-1); + if (mMediaList->getColumn(CLASS_COLUMN)) mMediaList->getColumn(CLASS_COLUMN)->setWidth(-1); + if (mMediaList->getColumn(DEBUG_COLUMN)) mMediaList->getColumn(DEBUG_COLUMN)->setWidth(-1); + } + else { + if (mMediaList->getColumn(CHECKBOX_COLUMN)) mMediaList->getColumn(VISIBILITY_COLUMN)->setWidth(20); + if (mMediaList->getColumn(VISIBILITY_COLUMN)) mMediaList->getColumn(VISIBILITY_COLUMN)->setWidth(20); + if (mMediaList->getColumn(PROXIMITY_COLUMN)) mMediaList->getColumn(PROXIMITY_COLUMN)->setWidth(30); + if (mMediaList->getColumn(CLASS_COLUMN)) mMediaList->getColumn(CLASS_COLUMN)->setWidth(20); + if (mMediaList->getColumn(DEBUG_COLUMN)) mMediaList->getColumn(DEBUG_COLUMN)->setWidth(200); + } +} + +void LLPanelNearByMedia::onClickEnableAll() +{ + LLViewerMedia::setAllMediaEnabled(true); +} + +void LLPanelNearByMedia::onClickDisableAll() +{ + LLViewerMedia::setAllMediaEnabled(false); +} + +void LLPanelNearByMedia::onClickEnableParcelMedia() +{ + if ( ! LLViewerMedia::isParcelMediaPlaying() ) + { + LLViewerParcelMedia::play(LLViewerParcelMgr::getInstance()->getAgentParcel()); + } +} + +void LLPanelNearByMedia::onClickDisableParcelMedia() +{ + // This actually unloads the impl, as opposed to "stop"ping the media + LLViewerParcelMedia::stop(); +} + +void LLPanelNearByMedia::onCheckItem(LLUICtrl* ctrl, const LLUUID &row_id) +{ + LLCheckBoxCtrl* check = static_cast<LLCheckBoxCtrl*>(ctrl); + + setDisabled(row_id, ! check->getValue()); +} + +bool LLPanelNearByMedia::setDisabled(const LLUUID &row_id, bool disabled) +{ + if (row_id == PARCEL_AUDIO_LIST_ITEM_UUID) + { + if (disabled) onClickParcelAudioStop(); + else onClickParcelAudioStart(); + return true; + } + else if (row_id == PARCEL_MEDIA_LIST_ITEM_UUID) + { + if (disabled) onClickDisableParcelMedia(); + else onClickEnableParcelMedia(); + return true; + } + else { + LLViewerMediaImpl* impl = LLViewerMedia::getMediaImplFromTextureID(row_id); + if(impl) + { + impl->setDisabled(disabled, true); + return true; + } + } + return false; +} + +//static +void LLPanelNearByMedia::onZoomMedia(void* user_data) +{ + LLPanelNearByMedia* panelp = (LLPanelNearByMedia*)user_data; + LLUUID media_id = panelp->mMediaList->getValue().asUUID(); + + LLViewerMediaFocus::getInstance()->focusZoomOnMedia(media_id); +} + +void LLPanelNearByMedia::onClickParcelMediaPlay() +{ + LLViewerParcelMedia::play(LLViewerParcelMgr::getInstance()->getAgentParcel()); +} + +void LLPanelNearByMedia::onClickParcelMediaStop() +{ + if (LLViewerParcelMedia::getParcelMedia()) + { + // This stops the media playing, as opposed to unloading it like + // LLViewerParcelMedia::stop() does + LLViewerParcelMedia::getParcelMedia()->stop(); + } +} + +void LLPanelNearByMedia::onClickParcelMediaPause() +{ + LLViewerParcelMedia::pause(); +} + +void LLPanelNearByMedia::onClickParcelAudioStart() +{ + // User *explicitly* started the internet stream, so keep the stream + // playing and updated as they cross to other parcels etc. + mParcelAudioAutoStart = true; + + if (!gAudiop) + return; + + gAudiop->startInternetStream(LLViewerMedia::getParcelAudioURL()); +} + +void LLPanelNearByMedia::onClickParcelAudioPlay() +{ + // User *explicitly* started the internet stream, so keep the stream + // playing and updated as they cross to other parcels etc. + mParcelAudioAutoStart = true; + + if (!gAudiop) + return; + + if (LLAudioEngine::AUDIO_PAUSED == gAudiop->isInternetStreamPlaying()) + { + // 'false' means unpause + gAudiop->pauseInternetStream(false); + } + else { + gAudiop->startInternetStream(LLViewerMedia::getParcelAudioURL()); + } +} + +void LLPanelNearByMedia::onClickParcelAudioStop() +{ + // User *explicitly* stopped the internet stream, so don't + // re-start audio when i.e. they move to another parcel, until + // they explicitly start it again. + mParcelAudioAutoStart = false; + + if (!gAudiop) + return; + + gAudiop->stopInternetStream(); +} + +void LLPanelNearByMedia::onClickParcelAudioPause() +{ + if (!gAudiop) + return; + + // 'true' means pause + gAudiop->pauseInternetStream(true); +} + +bool LLPanelNearByMedia::shouldShow(LLViewerMediaImpl* impl) +{ + const LLSD &choice_llsd = mShowCtrl->getSelectedValue(); + MediaClass choice = (MediaClass)choice_llsd.asInteger(); + + switch (choice) + { + case MEDIA_CLASS_ALL: + return true; + break; + case MEDIA_CLASS_WITHIN_PARCEL: + return impl->isInAgentParcel(); + break; + case MEDIA_CLASS_OUTSIDE_PARCEL: + return ! impl->isInAgentParcel(); + break; + case MEDIA_CLASS_ON_OTHERS: + return impl->isAttachedToAnotherAvatar(); + break; + default: + break; + } + return true; +} + +void LLPanelNearByMedia::onAdvancedButtonClick() +{ + // bring up the prefs floater + LLFloaterPreference* prefsfloater = dynamic_cast<LLFloaterPreference*>(LLFloaterReg::showInstance("preferences")); + if (prefsfloater) + { + // grab the 'audio' panel from the preferences floater and + // bring it the front! + LLTabContainer* tabcontainer = prefsfloater->getChild<LLTabContainer>("pref core"); + LLPanel* audiopanel = prefsfloater->getChild<LLPanel>("audio"); + if (tabcontainer && audiopanel) + { + tabcontainer->selectTabPanel(audiopanel); + } + } +} + +void LLPanelNearByMedia::onMoreLess() +{ + bool is_more = getChild<LLUICtrl>("more_less_btn")->getValue(); + mNearbyMediaPanel->setVisible(is_more); + + // enable resizing when expanded + getChildView("resizebar_bottom")->setEnabled(is_more); + + S32 new_height = is_more ? mMoreHeight : mLessHeight; + + LLRect new_rect = getRect(); + new_rect.mBottom = new_rect.mTop - new_height; + + setShape(new_rect); +} + +void LLPanelNearByMedia::updateControls() +{ + LLUUID selected_media_id = mMediaList->getValue().asUUID(); + + if (selected_media_id == PARCEL_AUDIO_LIST_ITEM_UUID) + { + showTimeBasedControls(LLViewerMedia::isParcelAudioPlaying(), + false, // include_zoom + false, // is_zoomed + gSavedSettings.getBOOL("MuteMusic"), + gSavedSettings.getF32("AudioLevelMusic") ); + } + else if (selected_media_id == PARCEL_MEDIA_LIST_ITEM_UUID) + { + if (!LLViewerMedia::hasParcelMedia()) + { + // Shouldn't happen, but do this anyway + showDisabledControls(); + } + else { + LLViewerMediaImpl* impl = LLViewerParcelMedia::getParcelMedia(); + if (NULL == impl) + { + // Just means it hasn't started yet + showBasicControls(false, false, false); + } + else if (impl->isMediaTimeBased()) + { + showTimeBasedControls(impl->isMediaPlaying(), + false, // include_zoom + false, // is_zoomed + impl->getVolume() == 0.0, + impl->getVolume() ); + } + else { + // non-time-based parcel media + showBasicControls(LLViewerMedia::isParcelMediaPlaying(), false, false); + } + } + } + else { + LLViewerMediaImpl* impl = LLViewerMedia::getMediaImplFromTextureID(selected_media_id); + + if (NULL == impl) + { + showDisabledControls(); + } + else { + if (impl->isMediaTimeBased()) + { + showTimeBasedControls(impl->isMediaPlaying(), + ! impl->isParcelMedia(), // include_zoom + LLViewerMediaFocus::getInstance()->isZoomed(), + impl->getVolume() == 0.0, + impl->getVolume()); + } + else { + showBasicControls(!impl->isMediaDisabled(), + ! impl->isParcelMedia(), // include_zoom + LLViewerMediaFocus::getInstance()->isZoomed()); + } + } + } +} + +void LLPanelNearByMedia::showBasicControls(bool playing, bool include_zoom, bool is_zoomed) +{ + mStopCtrl->setVisible(playing); + mPlayCtrl->setVisible(!playing); + mPauseCtrl->setVisible(false); + mMuteCtrl->setVisible(false); + mVolumeSliderCtrl->setVisible(false); + mZoomCtrl->setVisible(include_zoom && !is_zoomed); + mUnzoomCtrl->setVisible(include_zoom && is_zoomed); + mStopCtrl->setEnabled(true); + mZoomCtrl->setEnabled(true); +} + +void LLPanelNearByMedia::showTimeBasedControls(bool playing, bool include_zoom, bool is_zoomed, bool muted, F32 volume) +{ + mStopCtrl->setVisible(true); + mPlayCtrl->setVisible(!playing); + mPauseCtrl->setVisible(playing); + mMuteCtrl->setVisible(true); + mVolumeSliderCtrl->setVisible(true); + mZoomCtrl->setVisible(include_zoom); + mZoomCtrl->setVisible(include_zoom && !is_zoomed); + mUnzoomCtrl->setVisible(include_zoom && is_zoomed); + mStopCtrl->setEnabled(true); + mZoomCtrl->setEnabled(true); + mMuteBtn->setValue(muted); + mVolumeSlider->setValue(volume); +} + +void LLPanelNearByMedia::showDisabledControls() +{ + mStopCtrl->setVisible(true); + mPlayCtrl->setVisible(false); + mPauseCtrl->setVisible(false); + mMuteCtrl->setVisible(false); + mVolumeSliderCtrl->setVisible(false); + mZoomCtrl->setVisible(true); + mUnzoomCtrl->setVisible(false); + mStopCtrl->setEnabled(false); + mZoomCtrl->setEnabled(false); +} + +void LLPanelNearByMedia::onClickSelectedMediaStop() +{ + setDisabled(mMediaList->getValue().asUUID(), true); +} + +void LLPanelNearByMedia::onClickSelectedMediaPlay() +{ + LLUUID selected_media_id = mMediaList->getValue().asUUID(); + + // First enable it + setDisabled(selected_media_id, false); + + // Special code to make play "unpause" if time-based and playing + if (selected_media_id != PARCEL_AUDIO_LIST_ITEM_UUID) + { + LLViewerMediaImpl *impl = (selected_media_id == PARCEL_MEDIA_LIST_ITEM_UUID) ? + ((LLViewerMediaImpl*)LLViewerParcelMedia::getParcelMedia()) : LLViewerMedia::getMediaImplFromTextureID(selected_media_id); + if (NULL != impl && impl->isMediaTimeBased() && impl->isMediaPaused()) + { + // Aha! It's really time-based media that's paused, so unpause + impl->play(); + return; + } + else if (impl->isParcelMedia()) + { + LLViewerParcelMedia::play(LLViewerParcelMgr::getInstance()->getAgentParcel()); + } + } +} + +void LLPanelNearByMedia::onClickSelectedMediaPause() +{ + LLUUID selected_media_id = mMediaList->getValue().asUUID(); + if (selected_media_id == PARCEL_AUDIO_LIST_ITEM_UUID) + { + onClickParcelAudioPause(); + } + else if (selected_media_id == PARCEL_MEDIA_LIST_ITEM_UUID) + { + onClickParcelMediaPause(); + } + else { + LLViewerMediaImpl* impl = LLViewerMedia::getMediaImplFromTextureID(selected_media_id); + if (NULL != impl && impl->isMediaTimeBased() && impl->isMediaPlaying()) + { + impl->pause(); + } + } +} + +void LLPanelNearByMedia::onClickSelectedMediaMute() +{ + LLUUID selected_media_id = mMediaList->getValue().asUUID(); + if (selected_media_id == PARCEL_AUDIO_LIST_ITEM_UUID) + { + gSavedSettings.setBOOL("MuteMusic", mMuteBtn->getValue()); + } + else { + LLViewerMediaImpl* impl = (selected_media_id == PARCEL_MEDIA_LIST_ITEM_UUID) ? + ((LLViewerMediaImpl*)LLViewerParcelMedia::getParcelMedia()) : LLViewerMedia::getMediaImplFromTextureID(selected_media_id); + if (NULL != impl && impl->isMediaTimeBased()) + { + F32 volume = impl->getVolume(); + if(volume > 0.0) + { + impl->setVolume(0.0); + } + else if (mVolumeSlider->getValueF32() == 0.0) + { + impl->setVolume(1.0); + mVolumeSlider->setValue(1.0); + } + else + { + impl->setVolume(mVolumeSlider->getValueF32()); + } + } + } +} + +void LLPanelNearByMedia::onCommitSelectedMediaVolume() +{ + LLUUID selected_media_id = mMediaList->getValue().asUUID(); + if (selected_media_id == PARCEL_AUDIO_LIST_ITEM_UUID) + { + F32 vol = mVolumeSlider->getValueF32(); + gSavedSettings.setF32("AudioLevelMusic", vol); + } + else { + LLViewerMediaImpl* impl = (selected_media_id == PARCEL_MEDIA_LIST_ITEM_UUID) ? + ((LLViewerMediaImpl*)LLViewerParcelMedia::getParcelMedia()) : LLViewerMedia::getMediaImplFromTextureID(selected_media_id); + if (NULL != impl && impl->isMediaTimeBased()) + { + impl->setVolume(mVolumeSlider->getValueF32()); + } + } +} + +void LLPanelNearByMedia::onClickSelectedMediaZoom() +{ + LLUUID selected_media_id = mMediaList->getValue().asUUID(); + if (selected_media_id == PARCEL_AUDIO_LIST_ITEM_UUID || selected_media_id == PARCEL_MEDIA_LIST_ITEM_UUID) + return; + LLViewerMediaFocus::getInstance()->focusZoomOnMedia(selected_media_id); +} + +void LLPanelNearByMedia::onClickSelectedMediaUnzoom() +{ + LLViewerMediaFocus::getInstance()->unZoom(); +} + + +// static +void LLPanelNearByMedia::getNameAndUrlHelper(LLViewerMediaImpl* impl, std::string& name, std::string & url, const std::string &defaultName) +{ + if (NULL == impl) return; + + name = impl->getName(); + url = impl->getCurrentMediaURL(); // This is the URL the media impl actually has loaded + if (url.empty()) + { + url = impl->getMediaEntryURL(); // This is the current URL from the media data + } + if (url.empty()) + { + url = impl->getHomeURL(); // This is the home URL from the media data + } + if (name.empty()) + { + name = url; + } + if (name.empty()) + { + name = defaultName; + } +} + diff --git a/indra/newview/llpanelnearbymedia.h b/indra/newview/llpanelnearbymedia.h new file mode 100644 index 0000000000..eedfd447de --- /dev/null +++ b/indra/newview/llpanelnearbymedia.h @@ -0,0 +1,185 @@ +/** + * @file llpanelnearbymedia.h + * @brief Management interface for muting and controlling nearby media + * + * $LicenseInfo:firstyear=2005&license=viewergpl$ + * + * Copyright (c) 2005-2009, Linden Research, Inc. + * + * Second Life Viewer Source Code + * The source code in this file ("Source Code") is provided by Linden Lab + * to you under the terms of the GNU General Public License, version 2.0 + * ("GPL"), unless you have obtained a separate licensing agreement + * ("Other License"), formally executed by you and Linden Lab. Terms of + * the GPL can be found in doc/GPL-license.txt in this distribution, or + * online at http://secondlifegrid.net/programs/open_source/licensing/gplv2 + * + * There are special exceptions to the terms and conditions of the GPL as + * it is applied to this Source Code. View the full text of the exception + * in the file doc/FLOSS-exception.txt in this software distribution, or + * online at + * http://secondlifegrid.net/programs/open_source/licensing/flossexception + * + * By copying, modifying or distributing this software, you acknowledge + * that you have read and understood your obligations described above, + * and agree to abide by those obligations. + * + * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO + * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, + * COMPLETENESS OR PERFORMANCE. + * $/LicenseInfo$ + */ + +#ifndef LL_LLPANELNEARBYMEDIA_H +#define LL_LLPANELNEARBYMEDIA_H + +#include "llpanel.h" + +class LLPanelNearbyMedia; +class LLButton; +class LLScrollListCtrl; +class LLSlider; +class LLSliderCtrl; +class LLCheckBoxCtrl; +class LLTextBox; +class LLComboBox; +class LLViewerMediaImpl; + +class LLPanelNearByMedia : public LLPanel +{ +public: + + /*virtual*/ BOOL postBuild(); + /*virtual*/ void draw(); + /*virtual*/ void onMouseEnter(S32 x, S32 y, MASK mask); + /*virtual*/ void onMouseLeave(S32 x, S32 y, MASK mask); + /*virtual*/ void handleVisibilityChange ( BOOL new_visibility ); + /*virtual*/ void onTopLost (); + /*virtual*/ void reshape(S32 width, S32 height, BOOL called_from_parent); + + // this is part of the nearby media *dialog* so we can track whether + // the user *implicitly* wants audio on or off via their *explicit* + // interaction with our buttons. + bool getParcelAudioAutoStart(); + + LLPanelNearByMedia(); + virtual ~LLPanelNearByMedia(); + +private: + + enum ColumnIndex { + CHECKBOX_COLUMN = 0, + PROXIMITY_COLUMN = 1, + VISIBILITY_COLUMN = 2, + CLASS_COLUMN = 3, + NAME_COLUMN = 4, + DEBUG_COLUMN = 5 + }; + + // Media "class" enumeration + enum MediaClass { + MEDIA_CLASS_ALL = 0, + MEDIA_CLASS_FOCUSED = 1, + MEDIA_CLASS_WITHIN_PARCEL = 2, + MEDIA_CLASS_OUTSIDE_PARCEL = 3, + MEDIA_CLASS_ON_OTHERS = 4 + }; + + // Add/remove an LLViewerMediaImpl to/from the list + LLScrollListItem* addListItem(const LLUUID &id); + void updateListItem(LLScrollListItem* item, LLViewerMediaImpl* impl); + void updateListItem(LLScrollListItem* item, + const std::string &item_name, + const std::string &item_tooltip, + S32 proximity, + bool is_disabled, + bool has_media, + bool is_time_based_and_playing, + MediaClass media_class, + const std::string &debug_str); + void removeListItem(const LLUUID &id); + + // Refresh the list in the UI + void refreshList(); + + void refreshParcelItems(); + + // UI Callbacks + void onClickEnableAll(); + void onClickDisableAll(); + void onClickEnableParcelMedia(); + void onClickDisableParcelMedia(); + void onClickMuteParcelMedia(); + void onParcelMediaVolumeSlider(); + void onClickParcelMediaPlay(); + void onClickParcelMediaStop(); + void onClickParcelMediaPause(); + void onClickParcelAudioPlay(); + void onClickParcelAudioStop(); + void onClickParcelAudioStart(); + void onClickParcelAudioPause(); + void onCheckAutoPlay(); + void onAdvancedButtonClick(); + void onMoreLess(); + + void onCheckItem(LLUICtrl* ctrl, const LLUUID &row_id); + + static void onZoomMedia(void* user_data); + +private: + bool setDisabled(const LLUUID &id, bool disabled); + + static void getNameAndUrlHelper(LLViewerMediaImpl* impl, std::string& name, std::string & url, const std::string &defaultName); + + void updateColumns(); + + bool shouldShow(LLViewerMediaImpl* impl); + + void showBasicControls(bool playing, bool include_zoom, bool is_zoomed); + void showTimeBasedControls(bool playing, bool include_zoom, bool is_zoomed, bool muted, F32 volume); + void showDisabledControls(); + void updateControls(); + + void onClickSelectedMediaStop(); + void onClickSelectedMediaPlay(); + void onClickSelectedMediaPause(); + void onClickSelectedMediaMute(); + void onCommitSelectedMediaVolume(); + void onClickSelectedMediaZoom(); + void onClickSelectedMediaUnzoom(); + + LLUICtrl* mNearbyMediaPanel; + LLTextBox* mItemCountText; + LLScrollListCtrl* mMediaList; + LLUICtrl* mEnableAllCtrl; + LLUICtrl* mDisableAllCtrl; + LLComboBox* mShowCtrl; + + // Dynamic (selection-dependent) controls + LLUICtrl* mStopCtrl; + LLUICtrl* mPlayCtrl; + LLUICtrl* mPauseCtrl; + LLUICtrl* mMuteCtrl; + LLUICtrl* mVolumeSliderCtrl; + LLUICtrl* mZoomCtrl; + LLUICtrl* mUnzoomCtrl; + LLSlider* mVolumeSlider; + LLButton* mMuteBtn; + + bool mAllMediaDisabled; + bool mDebugInfoVisible; + bool mParcelAudioAutoStart; + std::string mEmptyNameString; + std::string mPlayingString; + std::string mParcelMediaName; + std::string mParcelAudioName; + + S32 mMoreHeight; + S32 mLessHeight; + LLFrameTimer mHoverTimer; + LLScrollListItem* mParcelMediaItem; + LLScrollListItem* mParcelAudioItem; +}; + + +#endif // LL_LLPANELNEARBYMEDIA_H diff --git a/indra/newview/llpanelpeoplemenus.cpp b/indra/newview/llpanelpeoplemenus.cpp index 7e184c78a8..900d28adca 100644 --- a/indra/newview/llpanelpeoplemenus.cpp +++ b/indra/newview/llpanelpeoplemenus.cpp @@ -121,6 +121,7 @@ LLContextMenu* NearbyMenu::createMenu() const LLUUID& id = mUUIDs.front(); registrar.add("Avatar.Profile", boost::bind(&LLAvatarActions::showProfile, id)); registrar.add("Avatar.AddFriend", boost::bind(&LLAvatarActions::requestFriendshipDialog, id)); + registrar.add("Avatar.RemoveFriend", boost::bind(&LLAvatarActions::removeFriendDialog, id)); registrar.add("Avatar.IM", boost::bind(&LLAvatarActions::startIM, id)); registrar.add("Avatar.Call", boost::bind(&LLAvatarActions::startCall, id)); registrar.add("Avatar.OfferTeleport", boost::bind(&NearbyMenu::offerTeleport, this)); @@ -143,6 +144,7 @@ LLContextMenu* NearbyMenu::createMenu() // registrar.add("Avatar.AddFriend", boost::bind(&LLAvatarActions::requestFriendshipDialog, mUUIDs)); // *TODO: unimplemented registrar.add("Avatar.IM", boost::bind(&LLAvatarActions::startConference, mUUIDs)); registrar.add("Avatar.Call", boost::bind(&LLAvatarActions::startAdhocCall, mUUIDs)); + registrar.add("Avatar.RemoveFriend",boost::bind(&LLAvatarActions::removeFriendsDialog, mUUIDs)); // registrar.add("Avatar.Share", boost::bind(&LLAvatarActions::startIM, mUUIDs)); // *TODO: unimplemented // registrar.add("Avatar.Pay", boost::bind(&LLAvatarActions::pay, mUUIDs)); // *TODO: unimplemented enable_registrar.add("Avatar.EnableItem", boost::bind(&NearbyMenu::enableContextMenuItem, this, _2)); @@ -191,8 +193,26 @@ bool NearbyMenu::enableContextMenuItem(const LLSD& userdata) } else if (item == std::string("can_delete")) { - const LLUUID& id = mUUIDs.front(); - return LLAvatarActions::isFriend(id); + // We can remove friends if: + // - there are selected people + // - and there are only friends among selection. + + bool result = (mUUIDs.size() > 0); + + std::vector<LLUUID>::const_iterator + id = mUUIDs.begin(), + uuids_end = mUUIDs.end(); + + for (;id != uuids_end; ++id) + { + if ( !LLAvatarActions::isFriend(*id) ) + { + result = false; + break; + } + } + + return result; } else if (item == std::string("can_call")) { diff --git a/indra/newview/llpanelpicks.cpp b/indra/newview/llpanelpicks.cpp index ada65c98a4..8eb0b69491 100644 --- a/indra/newview/llpanelpicks.cpp +++ b/indra/newview/llpanelpicks.cpp @@ -843,10 +843,13 @@ void LLPanelPicks::onPanelClassifiedClose(LLPanelClassifiedInfo* panel) { LLClassifiedItem* c_item = dynamic_cast<LLClassifiedItem*>( mClassifiedsList->getItemByValue(values[n])); - - c_item->setClassifiedName(panel->getClassifiedName()); - c_item->setDescription(panel->getDescription()); - c_item->setSnapshotId(panel->getSnapshotId()); + llassert(c_item); + if (c_item) + { + c_item->setClassifiedName(panel->getClassifiedName()); + c_item->setDescription(panel->getDescription()); + c_item->setSnapshotId(panel->getSnapshotId()); + } } } } diff --git a/indra/newview/llpanelplaces.cpp b/indra/newview/llpanelplaces.cpp index c0491cc00f..26b57c003b 100644 --- a/indra/newview/llpanelplaces.cpp +++ b/indra/newview/llpanelplaces.cpp @@ -1015,7 +1015,8 @@ void LLPanelPlaces::showAddedLandmarkInfo(const std::vector<LLUUID>& items) LLInventoryItem* item = gInventory.getItem(item_id); - if (LLAssetType::AT_LANDMARK == item->getType()) + llassert(item); + if (item && (LLAssetType::AT_LANDMARK == item->getType()) ) { // Created landmark is passed to Places panel to allow its editing. // If the panel is closed we don't reopen it until created landmark is loaded. @@ -1047,14 +1048,13 @@ void LLPanelPlaces::updateVerbs() mTeleportBtn->setVisible(!is_create_landmark_visible && !isLandmarkEditModeOn); mShowOnMapBtn->setVisible(!is_create_landmark_visible && !isLandmarkEditModeOn); - mOverflowBtn->setVisible(!is_create_landmark_visible && !isLandmarkEditModeOn); + mOverflowBtn->setVisible(is_place_info_visible && !is_create_landmark_visible && !isLandmarkEditModeOn); mEditBtn->setVisible(mPlaceInfoType == LANDMARK_INFO_TYPE && !isLandmarkEditModeOn); mSaveBtn->setVisible(isLandmarkEditModeOn); mCancelBtn->setVisible(isLandmarkEditModeOn); mCloseBtn->setVisible(is_create_landmark_visible && !isLandmarkEditModeOn); mShowOnMapBtn->setEnabled(!is_create_landmark_visible && !isLandmarkEditModeOn && have_3d_pos); - mOverflowBtn->setEnabled(is_place_info_visible && !is_create_landmark_visible); if (is_place_info_visible) { diff --git a/indra/newview/llpanelprimmediacontrols.cpp b/indra/newview/llpanelprimmediacontrols.cpp index 479769ee20..a53a3ba1ad 100644 --- a/indra/newview/llpanelprimmediacontrols.cpp +++ b/indra/newview/llpanelprimmediacontrols.cpp @@ -724,10 +724,10 @@ void LLPanelPrimMediaControls::draw() mMediaControlsStack->updateLayout(); // adjust for layout stack spacing - S32 space = mMediaControlsStack->getPanelSpacing() + 1; + S32 space = mMediaControlsStack->getPanelSpacing() + 2; LLRect controls_bg_area = mMediaControlsStack->getRect(); - controls_bg_area.mTop += space; + controls_bg_area.mTop += space + 2; // adjust to ignore space from volume slider controls_bg_area.mBottom += mVolumeSliderCtrl->getRect().getHeight(); @@ -736,7 +736,7 @@ void LLPanelPrimMediaControls::draw() controls_bg_area.mLeft += mLeftBookend->getRect().getWidth() - space; // ignore space from right bookend padding - controls_bg_area.mRight -= mRightBookend->getRect().getWidth() - space; + controls_bg_area.mRight -= mRightBookend->getRect().getWidth() - space - 2; // draw control background UI image mBackgroundImage->draw( controls_bg_area, UI_VERTEX_COLOR % alpha); diff --git a/indra/newview/llpanelprimmediacontrols.h b/indra/newview/llpanelprimmediacontrols.h index 743cec70a1..2e0de7866c 100644 --- a/indra/newview/llpanelprimmediacontrols.h +++ b/indra/newview/llpanelprimmediacontrols.h @@ -58,6 +58,16 @@ public: void updateShape(); bool isMouseOver(); + + enum EZoomLevel + { + ZOOM_NONE = 0, + ZOOM_FAR, + ZOOM_MEDIUM, + ZOOM_NEAR + }; + + EZoomLevel getZoomLevel() const { return mCurrentZoom; } void nextZoomLevel(); void resetZoomLevel(bool reset_camera = true); void close(); @@ -66,13 +76,6 @@ public: void setMediaFace(LLPointer<LLViewerObject> objectp, S32 face, viewer_media_t media_impl, LLVector3 pick_normal = LLVector3::zero); - enum EZoomLevel - { - ZOOM_NONE = 0, - ZOOM_FAR, - ZOOM_MEDIUM, - ZOOM_NEAR - }; static const EZoomLevel kZoomLevels[]; static const int kNumZoomLevels; diff --git a/indra/newview/llpanelvolumepulldown.cpp b/indra/newview/llpanelvolumepulldown.cpp index 74e37efe4e..247134ad63 100644 --- a/indra/newview/llpanelvolumepulldown.cpp +++ b/indra/newview/llpanelvolumepulldown.cpp @@ -96,7 +96,10 @@ void LLPanelVolumePulldown::handleVisibilityChange ( BOOL new_visibility ) else { mHoverTimer.stop(); - gFocusMgr.setTopCtrl(NULL); + if (gFocusMgr.getTopCtrl() == this) + { + gFocusMgr.setTopCtrl(NULL); + } } } diff --git a/indra/newview/llplacesinventorypanel.cpp b/indra/newview/llplacesinventorypanel.cpp index 6c6eb7c719..f1e450a083 100644 --- a/indra/newview/llplacesinventorypanel.cpp +++ b/indra/newview/llplacesinventorypanel.cpp @@ -118,6 +118,7 @@ BOOL LLPlacesInventoryPanel::postBuild() mScroller->addChild(mFolders); mFolders->setScrollContainer(mScroller); + mFolders->addChild(mFolders->mStatusTextBox); // cut subitems diff --git a/indra/newview/llpreviewscript.cpp b/indra/newview/llpreviewscript.cpp index a8feaf690d..f5a9f82d50 100644 --- a/indra/newview/llpreviewscript.cpp +++ b/indra/newview/llpreviewscript.cpp @@ -661,7 +661,9 @@ void LLScriptEdCore::onBtnDynamicHelp() live_help_floater = new LLFloater(LLSD()); LLUICtrlFactory::getInstance()->buildFloater(live_help_floater, "floater_lsl_guide.xml", NULL); LLFloater* parent = dynamic_cast<LLFloater*>(getParent()); - parent->addDependentFloater(live_help_floater, TRUE); + llassert(parent); + if (parent) + parent->addDependentFloater(live_help_floater, TRUE); live_help_floater->childSetCommitCallback("lock_check", onCheckLock, this); live_help_floater->childSetValue("lock_check", gSavedSettings.getBOOL("ScriptHelpFollowsCursor")); live_help_floater->childSetCommitCallback("history_combo", onHelpComboCommit, this); @@ -953,8 +955,12 @@ BOOL LLPreviewLSL::postBuild() { const LLInventoryItem* item = getItem(); + llassert(item); + if (item) + { + childSetText("desc", item->getDescription()); + } childSetCommitCallback("desc", LLPreview::onText, this); - childSetText("desc", item->getDescription()); childSetPrevalidate("desc", &LLTextValidate::validateASCIIPrintableNoPipe); return LLPreview::postBuild(); diff --git a/indra/newview/llpreviewtexture.cpp b/indra/newview/llpreviewtexture.cpp index 0ed6bea74f..76b02f07ec 100644 --- a/indra/newview/llpreviewtexture.cpp +++ b/indra/newview/llpreviewtexture.cpp @@ -304,12 +304,12 @@ void LLPreviewTexture::openToSave() // static void LLPreviewTexture::onFileLoadedForSave(BOOL success, - LLViewerFetchedTexture *src_vi, - LLImageRaw* src, - LLImageRaw* aux_src, - S32 discard_level, - BOOL final, - void* userdata) + LLViewerFetchedTexture *src_vi, + LLImageRaw* src, + LLImageRaw* aux_src, + S32 discard_level, + BOOL final, + void* userdata) { LLUUID* item_uuid = (LLUUID*) userdata; diff --git a/indra/newview/llprogressview.cpp b/indra/newview/llprogressview.cpp index 7a48f890e0..0476e785a5 100644 --- a/indra/newview/llprogressview.cpp +++ b/indra/newview/llprogressview.cpp @@ -223,7 +223,10 @@ void LLProgressView::setCancelButtonVisible(BOOL b, const std::string& label) // static void LLProgressView::onCancelButtonClicked(void*) { - if (gAgent.getTeleportState() == LLAgent::TELEPORT_NONE) + // Quitting viewer here should happen only when "Quit" button is pressed while starting up. + // Check for startup state is used here instead of teleport state to avoid quitting when + // cancel is pressed while teleporting inside region (EXT-4911) + if (LLStartUp::getStartupState() < STATE_STARTED) { LLAppViewer::instance()->requestQuit(); } diff --git a/indra/newview/llrootview.h b/indra/newview/llrootview.h index 760b1a7a4c..38029e3a9d 100644 --- a/indra/newview/llrootview.h +++ b/indra/newview/llrootview.h @@ -35,6 +35,7 @@ #include "llview.h" #include "lluictrlfactory.h" +#include "lltooltip.h" class LLRootViewRegistry : public LLChildRegistry<LLRootViewRegistry> {}; diff --git a/indra/newview/llscriptfloater.cpp b/indra/newview/llscriptfloater.cpp index a81ec61263..d452ef2228 100644 --- a/indra/newview/llscriptfloater.cpp +++ b/indra/newview/llscriptfloater.cpp @@ -67,6 +67,7 @@ LLUUID notification_id_to_object_id(const LLUUID& notification_id) LLScriptFloater::LLScriptFloater(const LLSD& key) : LLDockableFloater(NULL, true, key) , mScriptForm(NULL) +, mSaveFloaterPosition(false) { setMouseDownCallback(boost::bind(&LLScriptFloater::onMouseDown, this)); setOverlapsScreenChannel(true); @@ -105,27 +106,29 @@ LLScriptFloater* LLScriptFloater::show(const LLUUID& notification_id) LLScriptFloater* floater = LLFloaterReg::getTypedInstance<LLScriptFloater>("script_floater", notification_id); floater->setNotificationId(notification_id); floater->createForm(notification_id); - LLFloaterReg::showTypedInstance<LLScriptFloater>("script_floater", notification_id, TRUE); - if (floater->getDockControl() == NULL) + if(LLScriptFloaterManager::OBJ_SCRIPT == LLScriptFloaterManager::getObjectType(notification_id)) { - LLChiclet* chiclet = LLBottomTray::getInstance()->getChicletPanel()->findChiclet<LLChiclet>(notification_id); - if (chiclet == NULL) - { - llerror("Dock chiclet for LLScriptFloater doesn't exist", 0); - } - else - { - LLBottomTray::getInstance()->getChicletPanel()->scrollToChiclet(chiclet); - } - - floater->setDockControl(new LLDockControl(chiclet, floater, floater->getDockTongue(), - LLDockControl::TOP, boost::bind(&LLScriptFloater::getAllowedRect, floater, _1))); + floater->setSavePosition(true); + floater->restorePosition(); + } + else + { + floater->dockToChiclet(true); } + LLFloaterReg::showTypedInstance<LLScriptFloater>("script_floater", notification_id, TRUE); + return floater; } +void LLScriptFloater::setNotificationId(const LLUUID& id) +{ + mNotificationId = id; + // Lets save object id now while notification exists + mObjectId = notification_id_to_object_id(id); +} + void LLScriptFloater::getAllowedRect(LLRect& rect) { rect = gViewerWindow->getWorldViewRectRaw(); @@ -162,6 +165,8 @@ void LLScriptFloater::createForm(const LLUUID& notification_id) void LLScriptFloater::onClose(bool app_quitting) { + savePosition(); + if(getNotificationId().notNull()) { LLScriptFloaterManager::getInstance()->onRemoveNotification(getNotificationId()); @@ -172,6 +177,8 @@ void LLScriptFloater::setDocked(bool docked, bool pop_on_undock /* = true */) { LLDockableFloater::setDocked(docked, pop_on_undock); + savePosition(); + hideToastsIfNeeded(); } @@ -208,6 +215,33 @@ void LLScriptFloater::onMouseDown() } } +void LLScriptFloater::savePosition() +{ + if(getSavePosition() && mObjectId.notNull()) + { + LLScriptFloaterManager::FloaterPositionInfo fpi = {getRect(), isDocked()}; + LLScriptFloaterManager::getInstance()->saveFloaterPosition(mObjectId, fpi); + } +} + +void LLScriptFloater::restorePosition() +{ + LLScriptFloaterManager::FloaterPositionInfo fpi; + if(LLScriptFloaterManager::getInstance()->getFloaterPosition(mObjectId, fpi)) + { + dockToChiclet(fpi.mDockState); + if(!fpi.mDockState) + { + // Un-docked floater is opened in 0,0, now move it to saved position + translate(fpi.mRect.mLeft - getRect().mLeft, fpi.mRect.mTop - getRect().mTop); + } + } + else + { + dockToChiclet(true); + } +} + void LLScriptFloater::onFocusLost() { if(getNotificationId().notNull()) @@ -225,6 +259,33 @@ void LLScriptFloater::onFocusReceived() } } +void LLScriptFloater::dockToChiclet(bool dock) +{ + if (getDockControl() == NULL) + { + LLChiclet* chiclet = LLBottomTray::getInstance()->getChicletPanel()->findChiclet<LLChiclet>(getNotificationId()); + if (chiclet == NULL) + { + llwarns << "Dock chiclet for LLScriptFloater doesn't exist" << llendl; + return; + } + else + { + LLBottomTray::getInstance()->getChicletPanel()->scrollToChiclet(chiclet); + } + + // Stop saving position while we dock floater + bool save = getSavePosition(); + setSavePosition(false); + + setDockControl(new LLDockControl(chiclet, this, getDockTongue(), + LLDockControl::TOP, boost::bind(&LLScriptFloater::getAllowedRect, this, _1)), dock); + + // Restore saving + setSavePosition(save); + } +} + void LLScriptFloater::hideToastsIfNeeded() { using namespace LLNotificationsUI; @@ -326,6 +387,7 @@ void LLScriptFloaterManager::onRemoveNotification(const LLUUID& notification_id) LLScriptFloater* floater = LLFloaterReg::findTypedInstance<LLScriptFloater>("script_floater", notification_id); if(floater) { + floater->savePosition(); floater->setNotificationId(LLUUID::null); floater->closeFloater(); } @@ -445,4 +507,27 @@ LLScriptFloaterManager::script_notification_map_t::const_iterator LLScriptFloate return mNotifications.end(); } +void LLScriptFloaterManager::saveFloaterPosition(const LLUUID& object_id, const FloaterPositionInfo& fpi) +{ + if(object_id.notNull()) + { + LLScriptFloaterManager::getInstance()->mFloaterPositions[object_id] = fpi; + } + else + { + llwarns << "Invalid object id" << llendl; + } +} + +bool LLScriptFloaterManager::getFloaterPosition(const LLUUID& object_id, FloaterPositionInfo& fpi) +{ + floater_position_map_t::const_iterator it = mFloaterPositions.find(object_id); + if(LLScriptFloaterManager::getInstance()->mFloaterPositions.end() != it) + { + fpi = it->second; + return true; + } + return false; +} + // EOF diff --git a/indra/newview/llscriptfloater.h b/indra/newview/llscriptfloater.h index f7efff83f9..ec3ec4b540 100644 --- a/indra/newview/llscriptfloater.h +++ b/indra/newview/llscriptfloater.h @@ -84,16 +84,21 @@ public: static std::string getObjectName(const LLUUID& notification_id); - /** - * Callback for notification toast buttons. - */ - static void onToastButtonClick(const LLSD¬ification, const LLSD&response); - typedef boost::signals2::signal<void(const LLSD&)> object_signal_t; boost::signals2::connection addNewObjectCallback(const object_signal_t::slot_type& cb) { return mNewObjectSignal.connect(cb); } boost::signals2::connection addToggleObjectFloaterCallback(const object_signal_t::slot_type& cb) { return mToggleFloaterSignal.connect(cb); } + struct FloaterPositionInfo + { + LLRect mRect; + bool mDockState; + }; + + void saveFloaterPosition(const LLUUID& object_id, const FloaterPositionInfo& fpi); + + bool getFloaterPosition(const LLUUID& object_id, FloaterPositionInfo& fpi); + protected: typedef std::map<std::string, EObjectType> object_type_map; @@ -111,6 +116,11 @@ private: object_signal_t mNewObjectSignal; object_signal_t mToggleFloaterSignal; + + // <object_id, floater position> + typedef std::map<LLUUID, FloaterPositionInfo> floater_position_map_t; + + floater_position_map_t mFloaterPositions; }; /** @@ -141,7 +151,7 @@ public: const LLUUID& getNotificationId() { return mNotificationId; } - void setNotificationId(const LLUUID& id) { mNotificationId = id; } + void setNotificationId(const LLUUID& id); /** * Close notification if script floater is closed. @@ -158,6 +168,14 @@ public: */ /*virtual*/ void setVisible(BOOL visible); + bool getSavePosition() { return mSaveFloaterPosition; } + + void setSavePosition(bool save) { mSaveFloaterPosition = save; } + + void savePosition(); + + void restorePosition(); + protected: /** @@ -181,9 +199,13 @@ protected: /*virtual*/ void onFocusReceived(); + void dockToChiclet(bool dock); + private: LLToastNotifyPanel* mScriptForm; LLUUID mNotificationId; + LLUUID mObjectId; + bool mSaveFloaterPosition; }; #endif //LL_SCRIPTFLOATER_H diff --git a/indra/newview/llsearchcombobox.cpp b/indra/newview/llsearchcombobox.cpp index 93a70b6471..a130878176 100644 --- a/indra/newview/llsearchcombobox.cpp +++ b/indra/newview/llsearchcombobox.cpp @@ -78,6 +78,7 @@ LLSearchComboBox::LLSearchComboBox(const Params&p) button_params.click_callback.function(boost::bind(&LLSearchComboBox::onSelectionCommit, this)); mSearchButton = LLUICtrlFactory::create<LLButton>(button_params); mTextEntry->addChild(mSearchButton); + mTextEntry->setPassDelete(TRUE); setButtonVisible(p.dropdown_button_visible); mTextEntry->setCommitCallback(boost::bind(&LLComboBox::onTextCommit, this, _2)); diff --git a/indra/newview/llsidepanelappearance.cpp b/indra/newview/llsidepanelappearance.cpp index 43215f86bd..cd4a821774 100644 --- a/indra/newview/llsidepanelappearance.cpp +++ b/indra/newview/llsidepanelappearance.cpp @@ -278,7 +278,7 @@ void LLSidepanelAppearance::toggleLookInfoPanel(BOOL visible) return; mLookInfo->setVisible(visible); - mPanelOutfitsInventory->setVisible(!visible); + if (mPanelOutfitsInventory) mPanelOutfitsInventory->setVisible(!visible); mFilterEditor->setVisible(!visible); mEditBtn->setVisible(!visible); mNewOutfitBtn->setVisible(!visible); @@ -305,7 +305,7 @@ void LLSidepanelAppearance::updateVerbs() { bool is_look_info_visible = mLookInfo->getVisible(); - if (!is_look_info_visible) + if (mPanelOutfitsInventory && !is_look_info_visible) { const bool is_correct_type = (mPanelOutfitsInventory->getCorrectListenerForAction() != NULL); mEditBtn->setEnabled(is_correct_type); diff --git a/indra/newview/llsidepaneliteminfo.cpp b/indra/newview/llsidepaneliteminfo.cpp index 44348ba429..0275736f6d 100644 --- a/indra/newview/llsidepaneliteminfo.cpp +++ b/indra/newview/llsidepaneliteminfo.cpp @@ -231,20 +231,23 @@ void LLSidepanelItemInfo::refreshFromItem(LLViewerInventoryItem* item) // PERMISSIONS LOOKUP // //////////////////////// + llassert(item); + if (!item) return; + // do not enable the UI for incomplete items. BOOL is_complete = item->isComplete(); const BOOL cannot_restrict_permissions = LLInventoryType::cannotRestrictPermissions(item->getInventoryType()); const BOOL is_calling_card = (item->getInventoryType() == LLInventoryType::IT_CALLINGCARD); const LLPermissions& perm = item->getPermissions(); const BOOL can_agent_manipulate = gAgent.allowOperation(PERM_OWNER, perm, - GP_OBJECT_MANIPULATE); + GP_OBJECT_MANIPULATE); const BOOL can_agent_sell = gAgent.allowOperation(PERM_OWNER, perm, - GP_OBJECT_SET_SALE) && + GP_OBJECT_SET_SALE) && !cannot_restrict_permissions; const BOOL is_link = item->getIsLinkType(); const LLUUID trash_id = gInventory.findCategoryUUIDForType(LLFolderType::FT_TRASH); - bool not_in_trash = item && (item->getUUID() != trash_id) && !gInventory.isObjectDescendentOf(item->getUUID(), trash_id); + bool not_in_trash = (item->getUUID() != trash_id) && !gInventory.isObjectDescendentOf(item->getUUID(), trash_id); // You need permission to modify the object to modify an inventory // item in it. diff --git a/indra/newview/llslurl.cpp b/indra/newview/llslurl.cpp index 3343ee88bd..e4773f99c5 100644 --- a/indra/newview/llslurl.cpp +++ b/indra/newview/llslurl.cpp @@ -40,6 +40,12 @@ const std::string LLSLURL::PREFIX_SL_HELP = "secondlife://app."; const std::string LLSLURL::PREFIX_SL = "sl://"; const std::string LLSLURL::PREFIX_SECONDLIFE = "secondlife://"; const std::string LLSLURL::PREFIX_SLURL_OLD = "http://slurl.com/secondlife/"; + +// For DnD - even though www.slurl.com redirects to slurl.com in a browser, you can copy and drag +// text with www.slurl.com or a link explicitly pointing at www.slurl.com so testing for this +// version is required also. +const std::string LLSLURL::PREFIX_SLURL_WWW = "http://www.slurl.com/secondlife/"; + const std::string LLSLURL::PREFIX_SLURL = "http://maps.secondlife.com/secondlife/"; const std::string LLSLURL::APP_TOKEN = "app/"; @@ -68,7 +74,10 @@ std::string LLSLURL::stripProtocol(const std::string& url) { stripped.erase(0, PREFIX_SLURL_OLD.length()); } - + else if (matchPrefix(stripped, PREFIX_SLURL_WWW)) + { + stripped.erase(0, PREFIX_SLURL_WWW.length()); + } return stripped; } @@ -81,6 +90,7 @@ bool LLSLURL::isSLURL(const std::string& url) if (matchPrefix(url, PREFIX_SECONDLIFE)) return true; if (matchPrefix(url, PREFIX_SLURL)) return true; if (matchPrefix(url, PREFIX_SLURL_OLD)) return true; + if (matchPrefix(url, PREFIX_SLURL_WWW)) return true; return false; } @@ -91,6 +101,7 @@ bool LLSLURL::isSLURLCommand(const std::string& url) if (matchPrefix(url, PREFIX_SL + APP_TOKEN) || matchPrefix(url, PREFIX_SECONDLIFE + "/" + APP_TOKEN) || matchPrefix(url, PREFIX_SLURL + APP_TOKEN) || + matchPrefix(url, PREFIX_SLURL_WWW + APP_TOKEN) || matchPrefix(url, PREFIX_SLURL_OLD + APP_TOKEN) ) { return true; diff --git a/indra/newview/llslurl.h b/indra/newview/llslurl.h index 21b32ce409..6a695e84f3 100644 --- a/indra/newview/llslurl.h +++ b/indra/newview/llslurl.h @@ -51,6 +51,7 @@ public: static const std::string PREFIX_SECONDLIFE; static const std::string PREFIX_SLURL; static const std::string PREFIX_SLURL_OLD; + static const std::string PREFIX_SLURL_WWW; static const std::string APP_TOKEN; diff --git a/indra/newview/llstartup.cpp b/indra/newview/llstartup.cpp index d1b91df6e9..136989166f 100644 --- a/indra/newview/llstartup.cpp +++ b/indra/newview/llstartup.cpp @@ -123,7 +123,7 @@ #include "llmutelist.h" #include "llpanelavatar.h" #include "llavatarpropertiesprocessor.h" -#include "llpanelevent.h" +#include "llfloaterevent.h" #include "llpanelclassified.h" #include "llpanelpick.h" #include "llpanelplace.h" @@ -1891,17 +1891,6 @@ bool idle_startup() } } - // If this is the very first time the user has logged into viewer2+ (from a legacy viewer, or new account) - // then auto-populate outfits from the library into the My Outfits folder. - static bool check_populate_my_outfits = true; - if (check_populate_my_outfits && - (LLInventoryModel::getIsFirstTimeInViewer2() - || gSavedSettings.getBOOL("MyOutfitsAutofill"))) - { - gAgentWearables.populateMyOutfitsFolder(); - } - check_populate_my_outfits = false; - return TRUE; } @@ -2484,7 +2473,7 @@ void register_viewer_callbacks(LLMessageSystem* msg) msg->setHandlerFunc("MapBlockReply", LLWorldMapMessage::processMapBlockReply); msg->setHandlerFunc("MapItemReply", LLWorldMapMessage::processMapItemReply); - msg->setHandlerFunc("EventInfoReply", LLPanelEvent::processEventInfoReply); + msg->setHandlerFunc("EventInfoReply", LLFloaterEvent::processEventInfoReply); msg->setHandlerFunc("PickInfoReply", &LLAvatarPropertiesProcessor::processPickInfoReply); // msg->setHandlerFunc("ClassifiedInfoReply", LLPanelClassified::processClassifiedInfoReply); msg->setHandlerFunc("ClassifiedInfoReply", LLAvatarPropertiesProcessor::processClassifiedInfoReply); @@ -2544,6 +2533,8 @@ bool callback_choose_gender(const LLSD& notification, const LLSD& response) void LLStartUp::loadInitialOutfit( const std::string& outfit_folder_name, const std::string& gender_name ) { + llinfos << "starting" << llendl; + // Not going through the processAgentInitialWearables path, so need to set this here. LLAppearanceManager::instance().setAttachmentInvLinkEnable(true); // Initiate creation of COF, since we're also bypassing that. diff --git a/indra/newview/llstatusbar.cpp b/indra/newview/llstatusbar.cpp index bff32af228..923e1e42fb 100644 --- a/indra/newview/llstatusbar.cpp +++ b/indra/newview/llstatusbar.cpp @@ -41,6 +41,7 @@ #include "llviewercontrol.h" #include "llfloaterbuycurrency.h" #include "llfloaterlagmeter.h" +#include "llpanelnearbymedia.h" #include "llpanelvolumepulldown.h" #include "llfloaterregioninfo.h" #include "llfloaterscriptdebug.h" @@ -49,6 +50,7 @@ #include "llkeyboard.h" #include "lllineeditor.h" #include "llmenugl.h" +#include "llrootview.h" #include "llsd.h" #include "lltextbox.h" #include "llui.h" @@ -61,6 +63,7 @@ #include "llresmgr.h" #include "llworld.h" #include "llstatgraph.h" +#include "llviewermedia.h" #include "llviewermenu.h" // for gMenuBarView #include "llviewerparcelmgr.h" #include "llviewerthrottle.h" @@ -130,7 +133,6 @@ LLStatusBar::LLStatusBar(const LLRect& rect) // status bar can possible overlay menus? setMouseOpaque(FALSE); - setIsChrome(TRUE); // size of day of the weeks and year sDays.reserve(7); @@ -140,9 +142,39 @@ LLStatusBar::LLStatusBar(const LLRect& rect) mHealthTimer = new LLFrameTimer(); LLUICtrlFactory::getInstance()->buildPanel(this,"panel_status_bar.xml"); +} + +LLStatusBar::~LLStatusBar() +{ + delete mBalanceTimer; + mBalanceTimer = NULL; + + delete mHealthTimer; + mHealthTimer = NULL; + + // LLView destructor cleans up children +} + +//----------------------------------------------------------------------- +// Overrides +//----------------------------------------------------------------------- + +// virtual +void LLStatusBar::draw() +{ + refresh(); + LLPanel::draw(); +} - // status bar can never get a tab - setFocusRoot(FALSE); +BOOL LLStatusBar::handleRightMouseDown(S32 x, S32 y, MASK mask) +{ + show_navbar_context_menu(this,x,y); + return TRUE; +} + +BOOL LLStatusBar::postBuild() +{ + gMenuBarView->setRightMouseDownCallback(boost::bind(&show_navbar_context_menu, _1, _2, _3)); // build date necessary data (must do after panel built) setupDate(); @@ -158,7 +190,10 @@ LLStatusBar::LLStatusBar(const LLRect& rect) mBtnVolume = getChild<LLButton>( "volume_btn" ); mBtnVolume->setClickedCallback( onClickVolume, this ); mBtnVolume->setMouseEnterCallback(boost::bind(&LLStatusBar::onMouseEnterVolume, this)); - mBtnVolume->setIsChrome(TRUE); + + mMediaToggle = getChild<LLButton>("media_toggle_btn"); + mMediaToggle->setClickedCallback( &LLStatusBar::onClickMediaToggle, this ); + mMediaToggle->setMouseEnterCallback(boost::bind(&LLStatusBar::onMouseEnterNearbyMedia, this)); gSavedSettings.getControl("MuteAudio")->getSignal()->connect(boost::bind(&LLStatusBar::onVolumeChanged, this, _2)); @@ -207,6 +242,13 @@ LLStatusBar::LLStatusBar(const LLRect& rect) mPanelVolumePulldown = new LLPanelVolumePulldown(); addChild(mPanelVolumePulldown); + mPanelNearByMedia = new LLPanelNearByMedia(); + LLView* popup_holder = gViewerWindow->getRootView()->getChildView("popup_holder"); + popup_holder->addChild(mPanelNearByMedia); + gViewerWindow->getRootView()->addMouseDownCallback(boost::bind(&LLStatusBar::onClickScreen, this, _1, _2)); + mPanelNearByMedia->setFollows(FOLLOWS_TOP|FOLLOWS_RIGHT); + mPanelNearByMedia->setVisible(FALSE); + LLRect volume_pulldown_rect = mPanelVolumePulldown->getRect(); LLButton* volbtn = getChild<LLButton>( "volume_btn" ); volume_pulldown_rect.setLeftTopAndSize(volbtn->getRect().mLeft - @@ -218,39 +260,6 @@ LLStatusBar::LLStatusBar(const LLRect& rect) mPanelVolumePulldown->setShape(volume_pulldown_rect); mPanelVolumePulldown->setFollows(FOLLOWS_TOP|FOLLOWS_RIGHT); mPanelVolumePulldown->setVisible(FALSE); -} - -LLStatusBar::~LLStatusBar() -{ - delete mBalanceTimer; - mBalanceTimer = NULL; - - delete mHealthTimer; - mHealthTimer = NULL; - - // LLView destructor cleans up children -} - -//----------------------------------------------------------------------- -// Overrides -//----------------------------------------------------------------------- - -// virtual -void LLStatusBar::draw() -{ - refresh(); - LLPanel::draw(); -} - -BOOL LLStatusBar::handleRightMouseDown(S32 x, S32 y, MASK mask) -{ - show_navbar_context_menu(this,x,y); - return TRUE; -} - -BOOL LLStatusBar::postBuild() -{ - gMenuBarView->setRightMouseDownCallback(boost::bind(&show_navbar_context_menu, _1, _2, _3)); return TRUE; } @@ -356,6 +365,13 @@ void LLStatusBar::refresh() // update the master volume button state bool mute_audio = LLAppViewer::instance()->getMasterSystemAudioMute(); mBtnVolume->setToggleState(mute_audio); + + // Don't show media toggle if there's no media, parcel media, and no parcel audio + mMediaToggle->setVisible(LLViewerMedia::hasInWorldMedia() || LLViewerMedia::hasParcelMedia() || LLViewerMedia::hasParcelAudio()); + // Note the "sense" of the toggle is opposite whether media is playing or not + mMediaToggle->setValue(! (LLViewerMedia::isAnyMediaShowing() || + LLViewerMedia::isParcelMediaPlaying() || + LLViewerMedia::isParcelAudioPlaying())); } void LLStatusBar::setVisibleForMouselook(bool visible) @@ -385,8 +401,8 @@ void LLStatusBar::setBalance(S32 balance) LLButton* btn_buy_currency = getChild<LLButton>("buycurrency"); LLStringUtil::format_map_t string_args; string_args["[AMT]"] = llformat("%s", money_str.c_str()); - std::string labe_str = getString("buycurrencylabel", string_args); - btn_buy_currency->setLabel(labe_str); + std::string label_str = getString("buycurrencylabel", string_args); + btn_buy_currency->setLabel(label_str); // Resize the balance button so that the label fits it, and the button expands to the left. // *TODO: LLButton should have an option where to expand. @@ -513,13 +529,32 @@ static void onClickScriptDebug(void*) LLFloaterScriptDebug::show(LLUUID::null); } -//static -void LLStatusBar::onMouseEnterVolume(LLUICtrl* ctrl) +void LLStatusBar::onMouseEnterVolume() { // show the master volume pull-down - gStatusBar->mPanelVolumePulldown->setVisible(TRUE); + mPanelVolumePulldown->setVisible(TRUE); } +void LLStatusBar::onMouseEnterNearbyMedia() +{ + LLView* popup_holder = gViewerWindow->getRootView()->getChildView("popup_holder"); + LLRect nearby_media_rect = mPanelNearByMedia->getRect(); + LLButton* nearby_media_btn = getChild<LLButton>( "media_toggle_btn" ); + LLRect nearby_media_btn_rect = nearby_media_btn->calcScreenRect(); + nearby_media_rect.setLeftTopAndSize(nearby_media_btn_rect.mLeft - + (nearby_media_rect.getWidth() - nearby_media_btn_rect.getWidth())/2, + nearby_media_btn_rect.mBottom, + nearby_media_rect.getWidth(), + nearby_media_rect.getHeight()); + // force onscreen + nearby_media_rect.translate(popup_holder->getRect().getWidth() - nearby_media_rect.mRight, 0); + + // show the master volume pull-down + mPanelNearByMedia->setShape(nearby_media_rect); + mPanelNearByMedia->setVisible(TRUE); +} + + static void onClickVolume(void* data) { // toggle the master mute setting @@ -527,6 +562,15 @@ static void onClickVolume(void* data) LLAppViewer::instance()->setMasterSystemAudioMute(!mute_audio); } +//static +void LLStatusBar::onClickMediaToggle(void* data) +{ + LLStatusBar *status_bar = (LLStatusBar*)data; + // "Selected" means it was showing the "play" icon (so media was playing), and now it shows "pause", so turn off media + bool enable = ! status_bar->mMediaToggle->getValue(); + LLViewerMedia::setAllMediaEnabled(enable); +} + // sets the static variables necessary for the date void LLStatusBar::setupDate() { @@ -596,6 +640,18 @@ void LLStatusBar::onClickStatGraph(void* data) LLFloaterReg::showInstance("lagmeter"); } +void LLStatusBar::onClickScreen(S32 x, S32 y) +{ + if (mPanelNearByMedia->getVisible()) + { + LLRect screen_rect = mPanelNearByMedia->calcScreenRect(); + if (!screen_rect.pointInRect(x, y)) + { + mPanelNearByMedia->setVisible(FALSE); + } + } +} + BOOL can_afford_transaction(S32 cost) { return((cost <= 0)||((gStatusBar) && (gStatusBar->getBalance() >=cost))); diff --git a/indra/newview/llstatusbar.h b/indra/newview/llstatusbar.h index 21a98dd753..e5240fcc3e 100644 --- a/indra/newview/llstatusbar.h +++ b/indra/newview/llstatusbar.h @@ -48,6 +48,7 @@ class LLUUID; class LLFrameTimer; class LLStatGraph; class LLPanelVolumePulldown; +class LLPanelNearByMedia; class LLStatusBar : public LLPanel @@ -87,6 +88,8 @@ public: S32 getSquareMetersCommitted() const; S32 getSquareMetersLeft() const; + LLPanelNearByMedia* getNearbyMediaPanel() { return mPanelNearByMedia; } + private: // simple method to setup the part that holds the date void setupDate(); @@ -94,9 +97,13 @@ private: void onClickBuyCurrency(); void onVolumeChanged(const LLSD& newvalue); - static void onMouseEnterVolume(LLUICtrl* ctrl); + void onMouseEnterVolume(); + void onMouseEnterNearbyMedia(); + void onClickScreen(S32 x, S32 y); static void onClickStatGraph(void* data); + static void onClickMediaToggle(void* data); + private: LLTextBox *mTextHealth; LLTextBox *mTextTime; @@ -105,6 +112,7 @@ private: LLStatGraph *mSGPacketLoss; LLButton *mBtnVolume; + LLButton *mMediaToggle; S32 mBalance; S32 mHealth; @@ -113,6 +121,7 @@ private: LLFrameTimer* mBalanceTimer; LLFrameTimer* mHealthTimer; LLPanelVolumePulldown* mPanelVolumePulldown; + LLPanelNearByMedia* mPanelNearByMedia; static std::vector<std::string> sDays; static std::vector<std::string> sMonths; static const U32 MAX_DATE_STRING_LENGTH; diff --git a/indra/newview/llstylemap.cpp b/indra/newview/llstylemap.cpp index 2485563cbc..61705c4eb3 100644 --- a/indra/newview/llstylemap.cpp +++ b/indra/newview/llstylemap.cpp @@ -49,6 +49,7 @@ const LLStyle::Params &LLStyleMap::lookupAgent(const LLUUID &source) if (source != LLUUID::null && source != gAgent.getID() ) { style_params.color.control = "HTMLLinkColor"; + style_params.readonly_color.control = "HTMLLinkColor"; style_params.link_href = LLSLURL::buildCommand("agent", source, "inspect"); } @@ -56,6 +57,7 @@ const LLStyle::Params &LLStyleMap::lookupAgent(const LLUUID &source) { // Make the resident's own name white and don't make the name clickable. style_params.color = LLColor4::white; + style_params.readonly_color = LLColor4::white; } mMap[source] = style_params; @@ -75,11 +77,13 @@ const LLStyle::Params &LLStyleMap::lookup(const LLUUID& id, const std::string& l if (id != LLUUID::null && !link.empty()) { style_params.color.control = "HTMLLinkColor"; + style_params.readonly_color.control = "HTMLLinkColor"; style_params.link_href = link; } else { style_params.color = LLColor4::white; + style_params.readonly_color = LLColor4::white; } mMap[id] = style_params; } diff --git a/indra/newview/lltexturecache.cpp b/indra/newview/lltexturecache.cpp index a7f26f1df1..91c303c79e 100644 --- a/indra/newview/lltexturecache.cpp +++ b/indra/newview/lltexturecache.cpp @@ -51,7 +51,8 @@ // cache/textures/[0-F]/UUID.texture // Actual texture body files -const S32 TEXTURE_CACHE_ENTRY_SIZE = 1024; +//note: there is no good to define 1024 for TEXTURE_CACHE_ENTRY_SIZE while FIRST_PACKET_SIZE is 600 on sim side. +const S32 TEXTURE_CACHE_ENTRY_SIZE = FIRST_PACKET_SIZE;//1024; const F32 TEXTURE_CACHE_PURGE_AMOUNT = .20f; // % amount to reduce the cache by when it exceeds its limit const F32 TEXTURE_CACHE_LRU_SIZE = .10f; // % amount for LRU list (low overhead to regenerate) diff --git a/indra/newview/lltexturefetch.cpp b/indra/newview/lltexturefetch.cpp index bdc196e16c..6c35464a51 100644 --- a/indra/newview/lltexturefetch.cpp +++ b/indra/newview/lltexturefetch.cpp @@ -488,8 +488,9 @@ void LLTextureFetchWorker::setupPacketData() U32 LLTextureFetchWorker::calcWorkPriority() { -// llassert_always(mImagePriority >= 0 && mImagePriority <= LLViewerTexture::maxDecodePriority()); - static F32 PRIORITY_SCALE = (F32)LLWorkerThread::PRIORITY_LOWBITS / LLViewerFetchedTexture::maxDecodePriority(); + //llassert_always(mImagePriority >= 0 && mImagePriority <= LLViewerFetchedTexture::maxDecodePriority()); + static const F32 PRIORITY_SCALE = (F32)LLWorkerThread::PRIORITY_LOWBITS / LLViewerFetchedTexture::maxDecodePriority(); + mWorkPriority = (U32)(mImagePriority * PRIORITY_SCALE); return mWorkPriority; } @@ -981,7 +982,12 @@ bool LLTextureFetchWorker::doWork(S32 param) } if (mLoadedDiscard < 0) { - llerrs << "Decode entered with invalid mLoadedDiscard. ID = " << mID << llendl; + //llerrs << "Decode entered with invalid mLoadedDiscard. ID = " << mID << llendl; + + //abort, don't decode + mState = DONE; + setPriority(LLWorkerThread::PRIORITY_LOW | mWorkPriority); + return true; } setPriority(LLWorkerThread::PRIORITY_LOW | mWorkPriority); // Set priority first since Responder may change it mRawImage = NULL; @@ -1509,8 +1515,8 @@ bool LLTextureFetch::createRequest(const std::string& url, const LLUUID& id, con unlockQueue() ; worker->lockWorkMutex(); - worker->mActiveCount++; - worker->mNeedsAux = needs_aux; + worker->mActiveCount++; + worker->mNeedsAux = needs_aux; worker->unlockWorkMutex(); } diff --git a/indra/newview/lltoastimpanel.cpp b/indra/newview/lltoastimpanel.cpp index 7ae2404203..26d3bd5192 100644 --- a/indra/newview/lltoastimpanel.cpp +++ b/indra/newview/lltoastimpanel.cpp @@ -66,12 +66,13 @@ LLToastIMPanel::LLToastIMPanel(LLToastIMPanel::Params &p) : LLToastPanel(p.notif std::string font_size = LLFontGL::sizeFromFont(fontp); style_params.font.name(font_name); style_params.font.size(font_size); - style_params.font.style = "UNDERLINE"; + //Handle IRC styled /me messages. std::string prefix = p.message.substr(0, 4); if (prefix == "/me " || prefix == "/me'") { + //style_params.font.style = "UNDERLINE"; mMessage->clear(); style_params.font.style ="ITALIC"; @@ -82,7 +83,8 @@ LLToastIMPanel::LLToastIMPanel(LLToastIMPanel::Params &p) : LLToastPanel(p.notif } else { - mMessage->setValue(p.message); + style_params.font.style = "NORMAL"; + mMessage->setText(p.message, style_params); } mAvatarName->setValue(p.from); @@ -141,32 +143,6 @@ BOOL LLToastIMPanel::handleToolTip(S32 x, S32 y, MASK mask) return LLToastPanel::handleToolTip(x, y, mask); } -void LLToastIMPanel::showInspector() -{ - LLIMModel::LLIMSession* im_session = LLIMModel::getInstance()->findIMSession(mSessionID); - if(!im_session) - { - llwarns << "Invalid IM session" << llendl; - return; - } - - switch(im_session->mSessionType) - { - case LLIMModel::LLIMSession::P2P_SESSION: - LLFloaterReg::showInstance("inspect_avatar", LLSD().with("avatar_id", mAvatarID)); - break; - case LLIMModel::LLIMSession::GROUP_SESSION: - LLFloaterReg::showInstance("inspect_group", LLSD().with("group_id", mSessionID)); - break; - case LLIMModel::LLIMSession::ADHOC_SESSION: - LLFloaterReg::showInstance("inspect_avatar", LLSD().with("avatar_id", im_session->mOtherParticipantID)); - break; - default: - llwarns << "Unknown IM session type" << llendl; - break; - } -} - void LLToastIMPanel::spawnNameToolTip() { // Spawn at right side of the name textbox. @@ -176,7 +152,7 @@ void LLToastIMPanel::spawnNameToolTip() LLToolTip::Params params; params.background_visible(false); - params.click_callback(boost::bind(&LLToastIMPanel::showInspector, this)); + params.click_callback(boost::bind(&LLFloaterReg::showInstance, "inspect_avatar", LLSD().with("avatar_id", mAvatarID), FALSE)); params.delay_time(0.0f); // spawn instantly on hover params.image(LLUI::getUIImage("Info_Small")); params.message(""); @@ -201,7 +177,7 @@ void LLToastIMPanel::spawnGroupIconToolTip() LLInspector::Params params; params.fillFrom(LLUICtrlFactory::instance().getDefaultParams<LLInspector>()); - params.click_callback(boost::bind(&LLToastIMPanel::showInspector, this)); + params.click_callback(boost::bind(&LLFloaterReg::showInstance, "inspect_group", LLSD().with("group_id", mSessionID), FALSE)); params.delay_time(0.100f); params.image(LLUI::getUIImage("Info_Small")); params.message(g_data.mName); @@ -214,16 +190,15 @@ void LLToastIMPanel::spawnGroupIconToolTip() void LLToastIMPanel::initIcon() { - LLIconCtrl* sys_msg_icon = getChild<LLIconCtrl>("sys_msg_icon"); - mAvatarIcon->setVisible(FALSE); mGroupIcon->setVisible(FALSE); - sys_msg_icon->setVisible(FALSE); mAdhocIcon->setVisible(FALSE); if(mAvatarName->getValue().asString() == SYSTEM_FROM) { - sys_msg_icon->setVisible(TRUE); + // "sys_msg_icon" was disabled by Erica in the changeset: 5109 (85181bc92cbe) + // and "dummy widget" warnings appeared in log. + // It does not make sense to have such image with empty name. Removed for EXT-5057. } else { diff --git a/indra/newview/lltoastnotifypanel.cpp b/indra/newview/lltoastnotifypanel.cpp index 4d741456c4..ef3535042c 100644 --- a/indra/newview/lltoastnotifypanel.cpp +++ b/indra/newview/lltoastnotifypanel.cpp @@ -46,6 +46,7 @@ #include "llnotificationsutil.h" const S32 BOTTOM_PAD = VPAD * 3; +const S32 IGNORE_BTN_TOP_DELTA = 3*VPAD;//additional ignore_btn padding S32 BUTTON_WIDTH = 90; //static @@ -127,14 +128,6 @@ mAddedDefaultBtn(false) { std::vector<index_button_pair_t> buttons; buttons.reserve(mNumOptions); - for (S32 i = 0; i < mNumOptions; i++) - { - LLSD form_element = form->getElement(i); - if (form_element["type"].asString() != "button") - { - continue; - } - } S32 buttons_width = 0; // create all buttons and accumulate they total width to reshape mControlPanel for (S32 i = 0; i < mNumOptions; i++) @@ -155,22 +148,42 @@ mAddedDefaultBtn(false) } else { - //try get an average left_pad to spread out buttons - S32 left_pad = (getRect().getWidth() - buttons_width) / (S32(buttons.size() + 1)); - // left_pad can be < 2*HPAD if we have a lot of buttons. - if(left_pad < 2*HPAD) + const S32 button_panel_width = mControlPanel->getRect().getWidth();// do not change width of the panel + S32 button_panel_height = mControlPanel->getRect().getHeight(); + //try get an average h_pad to spread out buttons + S32 h_pad = (button_panel_width - buttons_width) / (S32(buttons.size())); + if(h_pad < 2*HPAD) { - //Probably it is a scriptdialog toast, set default left_pad - left_pad = 2*HPAD; + /* + * Probably it is a scriptdialog toast + * for a scriptdialog toast h_pad can be < 2*HPAD if we have a lot of buttons. + * In last case set default h_pad to avoid heaping of buttons + */ + h_pad = 2*HPAD; } - //how many rows we need to fit all buttons with current width of the panel - S32 button_rows = (buttons_width + left_pad * S32(buttons.size() + 1)) / getRect().getWidth() + 1; - //calculate required panel height - S32 button_panel_height = button_rows *( BTN_HEIGHT + VPAD) + BOTTOM_PAD; - - adjustPanelForScriptNotice(getRect().getWidth(), button_panel_height); - //we begin from lefttop angle and go to rightbottom. - updateButtonsLayout(buttons, left_pad, button_panel_height); + if (mIsScriptDialog) + { + // we are using default width for script buttons so we can determinate button_rows + //to get a number of rows we divide the required width of the buttons to button_panel_width + S32 button_rows = llceil(F32(buttons.size() - 1) * (BUTTON_WIDTH + h_pad) / button_panel_width); + //S32 button_rows = (buttons.size() - 1) * (BUTTON_WIDTH + h_pad) / button_panel_width; + //reserve one row for the ignore_btn + button_rows++; + //calculate required panel height for scripdialog notification. + button_panel_height = button_rows * (BTN_HEIGHT + VPAD) + IGNORE_BTN_TOP_DELTA + BOTTOM_PAD; + } + else + { + // in common case buttons can have different widths so we need to calculate button_rows according to buttons_width + //S32 button_rows = llceil(F32(buttons.size()) * (buttons_width + h_pad) / button_panel_width); + S32 button_rows = llceil(F32((buttons.size() - 1) * h_pad + buttons_width) / button_panel_width); + //calculate required panel height + button_panel_height = button_rows * (BTN_HEIGHT + VPAD) + BOTTOM_PAD; + } + + // we need to keep min width and max height to make visible all buttons, because width of the toast can not be changed + adjustPanelForScriptNotice(button_panel_width, button_panel_height); + updateButtonsLayout(buttons, h_pad); } } // adjust panel's height to the text size @@ -202,7 +215,8 @@ LLButton* LLToastNotifyPanel::createButton(const LLSD& form_element, BOOL is_opt mBtnCallbackData.push_back(userdata); LLButton::Params p; - const LLFontGL* font = form_element["index"].asInteger() == -1 ? sFontSmall: sFont; // for ignore button in script dialog + bool is_ignore_btn = form_element["index"].asInteger() == -1; + const LLFontGL* font = is_ignore_btn ? sFontSmall: sFont; // for ignore button in script dialog p.name(form_element["name"].asString()); p.label(form_element["text"].asString()); p.font(font); @@ -216,12 +230,19 @@ LLButton* LLToastNotifyPanel::createButton(const LLSD& form_element, BOOL is_opt p.image_color(LLUIColorTable::instance().getColor("ButtonCautionImageColor")); p.image_color_disabled(LLUIColorTable::instance().getColor("ButtonCautionImageColor")); } + // for the scriptdialog buttons we use fixed button size. This is a limit! if (!mIsScriptDialog && font->getWidth(form_element["text"].asString()) > BUTTON_WIDTH) { p.rect.width = 1; p.auto_resize = true; } - + else if (mIsScriptDialog && is_ignore_btn) + { + // this is ignore button,make it smaller + p.rect.height = BTN_HEIGHT_SMALL; + p.rect.width = 1; + p.auto_resize = true; + } LLButton* btn = LLUICtrlFactory::create<LLButton>(p); mNumButtons++; btn->autoResize(); @@ -241,38 +262,48 @@ LLToastNotifyPanel::~LLToastNotifyPanel() LLNotifications::getInstance()->cancel(mNotification); } } -void LLToastNotifyPanel::updateButtonsLayout(const std::vector<index_button_pair_t>& buttons, S32 left_pad, S32 top) + +void LLToastNotifyPanel::updateButtonsLayout(const std::vector<index_button_pair_t>& buttons, S32 h_pad) { - S32 left = left_pad; + S32 left = 0; + //reserve place for ignore button + S32 bottom_offset = mIsScriptDialog ? (BTN_HEIGHT + IGNORE_BTN_TOP_DELTA + BOTTOM_PAD) : BOTTOM_PAD; + S32 max_width = mControlPanel->getRect().getWidth(); LLButton* ignore_btn = NULL; for (std::vector<index_button_pair_t>::const_iterator it = buttons.begin(); it != buttons.end(); it++) { - if(left + it->second->getRect().getWidth() + 2*HPAD > getRect().getWidth()) - { - // looks like we need to add button to the next row - left = left_pad; - top-= (BTN_HEIGHT + VPAD); - } - LLRect btn_rect(it->second->getRect()); - if(mIsScriptDialog && it->first == -1) + if (it->first == -1) { - //this is ignore button ( index == -1) we need to add it into new extra row at the end ignore_btn = it->second; continue; } - btn_rect.setLeftTopAndSize(left, top, btn_rect.getWidth(), btn_rect.getHeight()); - it->second->setRect(btn_rect); - left = btn_rect.mLeft + btn_rect.getWidth() + left_pad; - addChild(it->second, -1); + LLButton* btn = it->second; + LLRect btn_rect(btn->getRect()); + if (left + btn_rect.getWidth() > max_width)// whether there is still some place for button+h_pad in the mControlPanel + { + // looks like we need to add button to the next row + left = 0; + bottom_offset += (BTN_HEIGHT + VPAD); + } + //we arrange buttons from bottom to top for backward support of old script + btn_rect.setOriginAndSize(left, bottom_offset, btn_rect.getWidth(), btn_rect.getHeight()); + btn->setRect(btn_rect); + left = btn_rect.mLeft + btn_rect.getWidth() + h_pad; + mControlPanel->addChild(btn, -1); } - if(ignore_btn) + if (mIsScriptDialog && ignore_btn != NULL) { - LLRect btn_rect(ignore_btn->getRect()); - btn_rect.setOriginAndSize(getRect().getWidth() - btn_rect.getWidth() - left_pad, - BOTTOM_PAD,// move button at the bottom edge - btn_rect.getWidth(), btn_rect.getHeight()); - ignore_btn->setRect(btn_rect); - addChild(ignore_btn, -1); + LLRect ignore_btn_rect(ignore_btn->getRect()); + S32 buttons_per_row = max_width / BUTTON_WIDTH; //assume that h_pad far less than BUTTON_WIDTH + S32 ignore_btn_left = buttons_per_row * BUTTON_WIDTH + (buttons_per_row - 1) * h_pad - ignore_btn_rect.getWidth(); + if (ignore_btn_left + ignore_btn_rect.getWidth() > max_width)// make sure that the ignore button is in panel + { + ignore_btn_left = max_width - ignore_btn_rect.getWidth() - 2 * HPAD; + } + ignore_btn_rect.setOriginAndSize(ignore_btn_left, BOTTOM_PAD,// always move ignore button at the bottom + ignore_btn_rect.getWidth(), ignore_btn_rect.getHeight()); + ignore_btn->setRect(ignore_btn_rect); + mControlPanel->addChild(ignore_btn, -1); } } @@ -280,20 +311,26 @@ void LLToastNotifyPanel::adjustPanelForScriptNotice(S32 button_panel_width, S32 { //adjust layout // we need to keep min width and max height to make visible all buttons, because width of the toast can not be changed - LLRect button_rect = mControlPanel->getRect(); reshape(getRect().getWidth(), mInfoPanel->getRect().getHeight() + button_panel_height + VPAD); - button_rect.set(0, button_rect.mBottom + button_panel_height, button_rect.getWidth(), button_rect.mBottom); - mControlPanel->reshape(button_rect.getWidth(), button_panel_height); - mControlPanel->setRect(button_rect); + mControlPanel->reshape( button_panel_width, button_panel_height); } void LLToastNotifyPanel::adjustPanelForTipNotice() { LLRect info_rect = mInfoPanel->getRect(); LLRect this_rect = getRect(); - + //we don't need display ControlPanel for tips because they doesn't contain any buttons. mControlPanel->setVisible(FALSE); reshape(getRect().getWidth(), mInfoPanel->getRect().getHeight()); + + if (mNotification->getPayload().has("respond_on_mousedown") + && mNotification->getPayload()["respond_on_mousedown"] ) + { + mInfoPanel->setMouseDownCallback( + boost::bind(&LLNotification::respond, + mNotification, + mNotification->getResponseTemplate())); + } } // static diff --git a/indra/newview/lltoastnotifypanel.h b/indra/newview/lltoastnotifypanel.h index 1f50c21f6f..3d57c50386 100644 --- a/indra/newview/lltoastnotifypanel.h +++ b/indra/newview/lltoastnotifypanel.h @@ -73,7 +73,13 @@ private: void adjustPanelForScriptNotice(S32 max_width, S32 max_height); void adjustPanelForTipNotice(); void addDefaultButton(); - void updateButtonsLayout(const std::vector<index_button_pair_t>& buttons, S32 left_pad, S32 top); + /* + * It lays out buttons of the notification in mControlPanel. + * Buttons will be placed from BOTTOM to TOP. + * @param h_pad horizontal space between buttons. It is depent on number of buttons. + * @param buttons vector of button to be added. + */ + void updateButtonsLayout(const std::vector<index_button_pair_t>& buttons, S32 h_pad); // panel elements LLTextBase* mTextBox; diff --git a/indra/newview/lltoolpie.cpp b/indra/newview/lltoolpie.cpp index bf1e307d71..fb78b6a415 100644 --- a/indra/newview/lltoolpie.cpp +++ b/indra/newview/lltoolpie.cpp @@ -1263,11 +1263,10 @@ bool LLToolPie::handleMediaClick(const LLPickInfo& pick) return false; LLMediaEntry* mep = (tep->hasMedia()) ? tep->getMediaData() : NULL; - if(!mep) return false; - viewer_media_t media_impl = mep ? LLViewerMedia::getMediaImplFromTextureID(mep->getMediaID()) : NULL; + viewer_media_t media_impl = LLViewerMedia::getMediaImplFromTextureID(mep->getMediaID()); if (gSavedSettings.getBOOL("MediaOnAPrimUI")) { @@ -1485,6 +1484,12 @@ BOOL LLToolPie::pickRightMouseDownCallback() while( object && object->isAttachment()) { object = (LLViewerObject*)object->getParent(); + llassert(object); + } + + if (!object) + { + return TRUE; // unexpected, but escape } // Object is an avatar, so check for mute by id. diff --git a/indra/newview/llurldispatcher.cpp b/indra/newview/llurldispatcher.cpp index 0b6bd4b401..257afabdcc 100644 --- a/indra/newview/llurldispatcher.cpp +++ b/indra/newview/llurldispatcher.cpp @@ -223,6 +223,17 @@ void LLURLDispatcherImpl::regionNameCallback(U64 region_handle, const std::strin S32 z = 0; LLURLSimString::parse(sim_string, ®ion_name, &x, &y, &z); + // Invalid location? EXT-5380 + if (!region_handle) + { + if(!region_name.empty() && !LLStringOps::isDigit(region_name.c_str()[0]))// it is no sense to search an empty region_name or when the region_name starts with digits + { + // may be an user types incorrect region name, let's help him to find a correct one + LLFloaterReg::showInstance("search", LLSD().with("category", "places").with("id", LLSD(region_name))); + } + //*TODO: add notification about invalid region_name + return; + } LLVector3 local_pos; local_pos.mV[VX] = (F32)x; local_pos.mV[VY] = (F32)y; diff --git a/indra/newview/llviewerfloaterreg.cpp b/indra/newview/llviewerfloaterreg.cpp index 30316d9dac..9e04e8e051 100644 --- a/indra/newview/llviewerfloaterreg.cpp +++ b/indra/newview/llviewerfloaterreg.cpp @@ -55,6 +55,7 @@ #include "llfloaterbump.h" #include "llfloatercamera.h" #include "llfloaterdaycycle.h" +#include "llfloaterevent.h" #include "llfloatersearch.h" #include "llfloaterenvsettings.h" #include "llfloaterfonttest.h" @@ -78,7 +79,6 @@ #include "llfloatermap.h" #include "llfloatermemleak.h" #include "llfloaternamedesc.h" -#include "llfloaternearbymedia.h" #include "llfloaternotificationsconsole.h" #include "llfloateropenobject.h" #include "llfloaterpay.h" @@ -163,6 +163,8 @@ void LLViewerFloaterReg::registerFloaters() LLFloaterReg::add("env_settings", "floater_env_settings.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterEnvSettings>); LLFloaterReg::add("env_water", "floater_water.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterWater>); LLFloaterReg::add("env_windlight", "floater_windlight_options.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterWindLight>); + + LLFloaterReg::add("event", "floater_event.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterEvent>); LLFloaterReg::add("font_test", "floater_font_test.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterFontTest>); @@ -198,7 +200,6 @@ void LLViewerFloaterReg::registerFloaters() LLFloaterReg::add("mute_object_by_name", "floater_mute_object.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterGetBlockedObjectName>); LLFloaterReg::add("mini_map", "floater_map.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterMap>); - LLFloaterReg::add("nearby_media", "floater_nearby_media.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterNearbyMedia>); LLFloaterReg::add("notifications_console", "floater_notifications_console.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterNotificationConsole>); LLFloaterReg::add("notification_well_window", "floater_sys_well.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLNotificationWellWindow>); diff --git a/indra/newview/llviewerinventory.cpp b/indra/newview/llviewerinventory.cpp index 3001992630..b69eaa4853 100644 --- a/indra/newview/llviewerinventory.cpp +++ b/indra/newview/llviewerinventory.cpp @@ -649,6 +649,8 @@ bool LLViewerInventoryCategory::exportFileLocal(LLFILE* fp) const void LLViewerInventoryCategory::determineFolderType() { + /* Do NOT uncomment this code. This is for future 2.1 support of ensembles. + llassert(FALSE); LLFolderType::EType original_type = getPreferredType(); if (LLFolderType::lookupIsProtectedType(original_type)) return; @@ -692,6 +694,8 @@ void LLViewerInventoryCategory::determineFolderType() { changeType(LLFolderType::FT_NONE); } + llassert(FALSE); + */ } void LLViewerInventoryCategory::changeType(LLFolderType::EType new_folder_type) diff --git a/indra/newview/llviewermedia.cpp b/indra/newview/llviewermedia.cpp index 0e133f8729..642f672faf 100644 --- a/indra/newview/llviewermedia.cpp +++ b/indra/newview/llviewermedia.cpp @@ -50,6 +50,9 @@ #include "llcallbacklist.h" #include "llparcel.h" #include "llaudioengine.h" // for gAudiop +#include "llvoavatar.h" +#include "llvoavatarself.h" +#include "llviewerregion.h" #include "llevent.h" // LLSimpleListener #include "llnotificationsutil.h" @@ -63,6 +66,10 @@ #include <boost/signals2.hpp> /*static*/ const char* LLViewerMedia::AUTO_PLAY_MEDIA_SETTING = "ParcelMediaAutoPlayEnable"; +/*static*/ const char* LLViewerMedia::SHOW_MEDIA_ON_OTHERS_SETTING = "MediaShowOnOthers"; +/*static*/ const char* LLViewerMedia::SHOW_MEDIA_WITHIN_PARCEL_SETTING = "MediaShowWithinParcel"; +/*static*/ const char* LLViewerMedia::SHOW_MEDIA_OUTSIDE_PARCEL_SETTING = "MediaShowOutsideParcel"; + // Move this to its own file. @@ -254,6 +261,8 @@ static LLTimer sMediaCreateTimer; static const F32 LLVIEWERMEDIA_CREATE_DELAY = 1.0f; static F32 sGlobalVolume = 1.0f; static F64 sLowestLoadableImplInterest = 0.0f; +static bool sAnyMediaShowing = false; +static boost::signals2::connection sTeleportFinishConnection; ////////////////////////////////////////////////////////////////////////////////////////// static void add_media_impl(LLViewerMediaImpl* media) @@ -366,8 +375,7 @@ viewer_media_t LLViewerMedia::updateMediaImpl(LLMediaEntry* media_entry, const s // The current media URL is not empty. // If (the media was already loaded OR the media was set to autoplay) AND this update didn't come from this agent, // do a navigate. - bool auto_play = (media_impl->mMediaAutoPlay && gSavedSettings.getBOOL(AUTO_PLAY_MEDIA_SETTING)); - + bool auto_play = media_impl->isAutoPlayable(); if((was_loaded || auto_play) && !update_from_self) { needs_navigate = url_changed; @@ -391,7 +399,7 @@ viewer_media_t LLViewerMedia::updateMediaImpl(LLMediaEntry* media_entry, const s media_impl->mMediaAutoPlay = media_entry->getAutoPlay(); media_impl->mMediaEntryURL = media_entry->getCurrentURL(); - if(media_impl->mMediaAutoPlay && gSavedSettings.getBOOL(AUTO_PLAY_MEDIA_SETTING)) + if(media_impl->isAutoPlayable()) { needs_navigate = true; } @@ -688,6 +696,7 @@ static bool proximity_comparitor(const LLViewerMediaImpl* i1, const LLViewerMedi // static void LLViewerMedia::updateMedia(void *dummy_arg) { + sAnyMediaShowing = false; impl_list::iterator iter = sViewerMediaImplList.begin(); impl_list::iterator end = sViewerMediaImplList.end(); @@ -818,7 +827,7 @@ void LLViewerMedia::updateMedia(void *dummy_arg) impl_count_total++; } - + // Overrides if the window is minimized or we lost focus (taking care // not to accidentally "raise" the priority either) if (!gViewerWindow->getActive() /* viewer window minimized? */ @@ -840,7 +849,7 @@ void LLViewerMedia::updateMedia(void *dummy_arg) new_priority = LLPluginClassMedia::PRIORITY_UNLOADED; } } - + pimpl->setPriority(new_priority); if(pimpl->getUsedInUI()) @@ -854,6 +863,12 @@ void LLViewerMedia::updateMedia(void *dummy_arg) } total_cpu += pimpl->getCPUUsage(); + + if (!pimpl->getUsedInUI() && pimpl->hasMedia()) + { + sAnyMediaShowing = true; + } + } // Re-calculate this every time. @@ -895,9 +910,113 @@ void LLViewerMedia::updateMedia(void *dummy_arg) ////////////////////////////////////////////////////////////////////////////////////////// // static +bool LLViewerMedia::isAnyMediaShowing() +{ + return sAnyMediaShowing; +} + +////////////////////////////////////////////////////////////////////////////////////////// +// static +void LLViewerMedia::setAllMediaEnabled(bool val) +{ + // Set "tentative" autoplay first. We need to do this here or else + // re-enabling won't start up the media below. + gSavedSettings.setBOOL("MediaTentativeAutoPlay", val); + + // Then + impl_list::iterator iter = sViewerMediaImplList.begin(); + impl_list::iterator end = sViewerMediaImplList.end(); + + for(; iter != end; iter++) + { + LLViewerMediaImpl* pimpl = *iter; + if (!pimpl->getUsedInUI()) + { + pimpl->setDisabled(!val); + } + } + + // Also do Parcel Media and Parcel Audio + if (val) + { + if (!LLViewerMedia::isParcelMediaPlaying() && LLViewerMedia::hasParcelMedia()) + { + LLViewerParcelMedia::play(LLViewerParcelMgr::getInstance()->getAgentParcel()); + } + + if (!LLViewerMedia::isParcelAudioPlaying() && gAudiop && LLViewerMedia::hasParcelAudio()) + { + gAudiop->startInternetStream(LLViewerMedia::getParcelAudioURL()); + } + } + else { + // This actually unloads the impl, as opposed to "stop"ping the media + LLViewerParcelMedia::stop(); + if (gAudiop) gAudiop->stopInternetStream(); + } +} + +////////////////////////////////////////////////////////////////////////////////////////// +// static +bool LLViewerMedia::isParcelMediaPlaying() +{ + return (LLViewerMedia::hasParcelMedia() && LLViewerParcelMedia::getParcelMedia() && LLViewerParcelMedia::getParcelMedia()->hasMedia()); +} + +///////////////////////////////////////////////////////////////////////////////////////// +// static +bool LLViewerMedia::isParcelAudioPlaying() +{ + return (LLViewerMedia::hasParcelAudio() && gAudiop && LLAudioEngine::AUDIO_PLAYING == gAudiop->isInternetStreamPlaying()); +} + +bool LLViewerMedia::hasInWorldMedia() +{ + if (! gSavedSettings.getBOOL("AudioStreamingMedia")) return false; + if (sInWorldMediaDisabled) return false; + impl_list::iterator iter = sViewerMediaImplList.begin(); + impl_list::iterator end = sViewerMediaImplList.end(); + // This should be quick, because there should be very few non-in-world-media impls + for (; iter != end; iter++) + { + LLViewerMediaImpl* pimpl = *iter; + if (!pimpl->getUsedInUI() && !pimpl->isParcelMedia()) + { + // Found an in-world media impl + return true; + } + } + return false; +} + +////////////////////////////////////////////////////////////////////////////////////////// +// static +bool LLViewerMedia::hasParcelMedia() +{ + return !LLViewerParcelMedia::getURL().empty(); +} + +////////////////////////////////////////////////////////////////////////////////////////// +// static +bool LLViewerMedia::hasParcelAudio() +{ + return !LLViewerMedia::getParcelAudioURL().empty(); +} + +////////////////////////////////////////////////////////////////////////////////////////// +// static +std::string LLViewerMedia::getParcelAudioURL() +{ + return LLViewerParcelMgr::getInstance()->getAgentParcel()->getMusicURL(); +} + +////////////////////////////////////////////////////////////////////////////////////////// +// static void LLViewerMedia::initClass() { - gIdleCallbacks.addFunction(LLViewerMedia::updateMedia, NULL); + gIdleCallbacks.addFunction(LLViewerMedia::updateMedia, NULL); + sTeleportFinishConnection = LLViewerParcelMgr::getInstance()-> + setTeleportFinishedCallback(boost::bind(&LLViewerMedia::onTeleportFinished)); } ////////////////////////////////////////////////////////////////////////////////////////// @@ -905,6 +1024,15 @@ void LLViewerMedia::initClass() void LLViewerMedia::cleanupClass() { gIdleCallbacks.deleteFunction(LLViewerMedia::updateMedia, NULL); + sTeleportFinishConnection.disconnect(); +} + +////////////////////////////////////////////////////////////////////////////////////////// +// static +void LLViewerMedia::onTeleportFinished() +{ + // On teleport, clear this setting (i.e. set it to true) + gSavedSettings.setBOOL("MediaTentativeAutoPlay", true); } ////////////////////////////////////////////////////////////////////////////////////////// @@ -2057,6 +2185,21 @@ void LLViewerMediaImpl::scaleMouse(S32 *mouse_x, S32 *mouse_y) #endif } + + +////////////////////////////////////////////////////////////////////////////////////////// +bool LLViewerMediaImpl::isMediaTimeBased() +{ + bool result = false; + + if(mMediaSource) + { + result = mMediaSource->pluginSupportsMediaTime(); + } + + return result; +} + ////////////////////////////////////////////////////////////////////////////////////////// bool LLViewerMediaImpl::isMediaPlaying() { @@ -2103,7 +2246,7 @@ void LLViewerMediaImpl::resetPreviousMediaState() ////////////////////////////////////////////////////////////////////////////////////////// // -void LLViewerMediaImpl::setDisabled(bool disabled) +void LLViewerMediaImpl::setDisabled(bool disabled, bool forcePlayOnEnable) { if(mIsDisabled != disabled) { @@ -2118,7 +2261,7 @@ void LLViewerMediaImpl::setDisabled(bool disabled) else { // We just (re)enabled this media. Do a navigate if auto-play is in order. - if(mMediaAutoPlay && gSavedSettings.getBOOL(LLViewerMedia::AUTO_PLAY_MEDIA_SETTING)) + if(isAutoPlayable() || forcePlayOnEnable) { navigateTo(mMediaEntryURL, "", true, true); } @@ -2145,6 +2288,12 @@ bool LLViewerMediaImpl::isForcedUnloaded() const } } + // If this media's class is not supposed to be shown, unload + if (!shouldShowBasedOnClass()) + { + return true; + } + return false; } @@ -2399,16 +2548,25 @@ void LLViewerMediaImpl::calculateInterest() for(; iter != mObjectList.end() ; ++iter) { LLVOVolume *obj = *iter; - if(LLMuteList::getInstance()->isMuted(obj->getID())) + llassert(obj); + if (!obj) continue; + if(LLMuteList::getInstance() && + LLMuteList::getInstance()->isMuted(obj->getID())) + { mIsMuted = true; + } else { // We won't have full permissions data for all objects. Attempt to mute objects when we can tell their owners are muted. - LLPermissions* obj_perm = LLSelectMgr::getInstance()->findObjectPermissions(obj); - if(obj_perm) + if (LLSelectMgr::getInstance()) { - if(LLMuteList::getInstance()->isMuted(obj_perm->getOwner())) - mIsMuted = true; + LLPermissions* obj_perm = LLSelectMgr::getInstance()->findObjectPermissions(obj); + if(obj_perm) + { + if(LLMuteList::getInstance() && + LLMuteList::getInstance()->isMuted(obj_perm->getOwner())) + mIsMuted = true; + } } } } @@ -2630,3 +2788,112 @@ void LLViewerMediaImpl::setTextureID(LLUUID id) } } +////////////////////////////////////////////////////////////////////////////////////////// +// +bool LLViewerMediaImpl::isAutoPlayable() const +{ + return (mMediaAutoPlay && + gSavedSettings.getBOOL(LLViewerMedia::AUTO_PLAY_MEDIA_SETTING) && + gSavedSettings.getBOOL("MediaTentativeAutoPlay")); +} + +////////////////////////////////////////////////////////////////////////////////////////// +// +bool LLViewerMediaImpl::shouldShowBasedOnClass() const +{ + // If this is parcel media or in the UI, return true always + if (getUsedInUI() || isParcelMedia()) return true; + + bool attached_to_another_avatar = isAttachedToAnotherAvatar(); + bool inside_parcel = isInAgentParcel(); + + // llinfos << " hasFocus = " << hasFocus() << + // " others = " << (attached_to_another_avatar && gSavedSettings.getBOOL(LLViewerMedia::SHOW_MEDIA_ON_OTHERS_SETTING)) << + // " within = " << (inside_parcel && gSavedSettings.getBOOL(LLViewerMedia::SHOW_MEDIA_WITHIN_PARCEL_SETTING)) << + // " outside = " << (!inside_parcel && gSavedSettings.getBOOL(LLViewerMedia::SHOW_MEDIA_OUTSIDE_PARCEL_SETTING)) << llendl; + + // If it has focus, we should show it + if (hasFocus()) + return true; + + // If it is attached to an avatar and the pref is off, we shouldn't show it + if (attached_to_another_avatar) + return gSavedSettings.getBOOL(LLViewerMedia::SHOW_MEDIA_ON_OTHERS_SETTING); + + if (inside_parcel) + return gSavedSettings.getBOOL(LLViewerMedia::SHOW_MEDIA_WITHIN_PARCEL_SETTING); + else + return gSavedSettings.getBOOL(LLViewerMedia::SHOW_MEDIA_OUTSIDE_PARCEL_SETTING); +} + +////////////////////////////////////////////////////////////////////////////////////////// +// +bool LLViewerMediaImpl::isAttachedToAnotherAvatar() const +{ + bool result = false; + + std::list< LLVOVolume* >::const_iterator iter = mObjectList.begin(); + std::list< LLVOVolume* >::const_iterator end = mObjectList.end(); + for ( ; iter != end; iter++) + { + if (isObjectAttachedToAnotherAvatar(*iter)) + { + result = true; + break; + } + } + return result; +} + +////////////////////////////////////////////////////////////////////////////////////////// +// +//static +bool LLViewerMediaImpl::isObjectAttachedToAnotherAvatar(LLVOVolume *obj) +{ + bool result = false; + LLXform *xform = obj; + // Walk up parent chain + while (NULL != xform) + { + LLViewerObject *object = dynamic_cast<LLViewerObject*> (xform); + if (NULL != object) + { + LLVOAvatar *avatar = object->asAvatar(); + if (NULL != avatar && avatar != gAgent.getAvatarObject()) + { + result = true; + break; + } + } + xform = xform->getParent(); + } + return result; +} + +////////////////////////////////////////////////////////////////////////////////////////// +// +bool LLViewerMediaImpl::isInAgentParcel() const +{ + bool result = false; + + std::list< LLVOVolume* >::const_iterator iter = mObjectList.begin(); + std::list< LLVOVolume* >::const_iterator end = mObjectList.end(); + for ( ; iter != end; iter++) + { + LLVOVolume *object = *iter; + if (LLViewerMediaImpl::isObjectInAgentParcel(object)) + { + result = true; + break; + } + } + return result; +} + +////////////////////////////////////////////////////////////////////////////////////////// +// +// static +bool LLViewerMediaImpl::isObjectInAgentParcel(LLVOVolume *obj) +{ + return (LLViewerParcelMgr::getInstance()->inAgentParcel(obj->getPositionGlobal())); +} diff --git a/indra/newview/llviewermedia.h b/indra/newview/llviewermedia.h index daad70f14f..9dbffa78b3 100644 --- a/indra/newview/llviewermedia.h +++ b/indra/newview/llviewermedia.h @@ -48,7 +48,7 @@ class LLViewerMediaImpl; class LLUUID; class LLViewerMediaTexture; class LLMediaEntry; -class LLVOVolume ; +class LLVOVolume; class LLMimeDiscoveryResponder; typedef LLPointer<LLViewerMediaImpl> viewer_media_t; @@ -73,50 +73,68 @@ class LLViewerMediaImpl; class LLViewerMedia { LOG_CLASS(LLViewerMedia); - public: - - // String to get/set media autoplay in gSavedSettings - static const char *AUTO_PLAY_MEDIA_SETTING; +public: - typedef std::vector<LLViewerMediaImpl*> impl_list; - - typedef std::map<LLUUID, LLViewerMediaImpl*> impl_id_map; - - // Special case early init for just web browser component - // so we can show login screen. See .cpp file for details. JC - - static viewer_media_t newMediaImpl(const LLUUID& texture_id, - S32 media_width = 0, - S32 media_height = 0, - U8 media_auto_scale = false, - U8 media_loop = false); - - static viewer_media_t updateMediaImpl(LLMediaEntry* media_entry, const std::string& previous_url, bool update_from_self); - static LLViewerMediaImpl* getMediaImplFromTextureID(const LLUUID& texture_id); - static std::string getCurrentUserAgent(); - static void updateBrowserUserAgent(); - static bool handleSkinCurrentChanged(const LLSD& /*newvalue*/); - static bool textureHasMedia(const LLUUID& texture_id); - static void setVolume(F32 volume); - - static void updateMedia(void* dummy_arg = NULL); - - static void initClass(); - static void cleanupClass(); - - static F32 getVolume(); - static void muteListChanged(); - static void setInWorldMediaDisabled(bool disabled); - static bool getInWorldMediaDisabled(); - - static bool isInterestingEnough(const LLVOVolume* object, const F64 &object_interest); + // String to get/set media autoplay in gSavedSettings + static const char* AUTO_PLAY_MEDIA_SETTING; + static const char* SHOW_MEDIA_ON_OTHERS_SETTING; + static const char* SHOW_MEDIA_WITHIN_PARCEL_SETTING; + static const char* SHOW_MEDIA_OUTSIDE_PARCEL_SETTING; - // Returns the priority-sorted list of all media impls. - static impl_list &getPriorityList(); - - // This is the comparitor used to sort the list. - static bool priorityComparitor(const LLViewerMediaImpl* i1, const LLViewerMediaImpl* i2); - + typedef std::vector<LLViewerMediaImpl*> impl_list; + + typedef std::map<LLUUID, LLViewerMediaImpl*> impl_id_map; + + // Special case early init for just web browser component + // so we can show login screen. See .cpp file for details. JC + + static viewer_media_t newMediaImpl(const LLUUID& texture_id, + S32 media_width = 0, + S32 media_height = 0, + U8 media_auto_scale = false, + U8 media_loop = false); + + static viewer_media_t updateMediaImpl(LLMediaEntry* media_entry, const std::string& previous_url, bool update_from_self); + static LLViewerMediaImpl* getMediaImplFromTextureID(const LLUUID& texture_id); + static std::string getCurrentUserAgent(); + static void updateBrowserUserAgent(); + static bool handleSkinCurrentChanged(const LLSD& /*newvalue*/); + static bool textureHasMedia(const LLUUID& texture_id); + static void setVolume(F32 volume); + + // Is any media currently "showing"? Includes Parcel Media. Does not include media in the UI. + static bool isAnyMediaShowing(); + // Set all media enabled or disabled, depending on val. Does not include media in the UI. + static void setAllMediaEnabled(bool val); + + static void updateMedia(void* dummy_arg = NULL); + + static void initClass(); + static void cleanupClass(); + + static F32 getVolume(); + static void muteListChanged(); + static void setInWorldMediaDisabled(bool disabled); + static bool getInWorldMediaDisabled(); + + static bool isInterestingEnough(const LLVOVolume* object, const F64 &object_interest); + + // Returns the priority-sorted list of all media impls. + static impl_list &getPriorityList(); + + // This is the comparitor used to sort the list. + static bool priorityComparitor(const LLViewerMediaImpl* i1, const LLViewerMediaImpl* i2); + + // These are just helper functions for the convenience of others working with media + static bool hasInWorldMedia(); + static std::string getParcelAudioURL(); + static bool hasParcelMedia(); + static bool hasParcelAudio(); + static bool isParcelMediaPlaying(); + static bool isParcelAudioPlaying(); + +private: + static void onTeleportFinished(); }; // Implementation functions not exported into header file @@ -199,18 +217,20 @@ public: void updateImagesMediaStreams(); LLUUID getMediaTextureID() const; - void suspendUpdates(bool suspend) { mSuspendUpdates = suspend; }; + void suspendUpdates(bool suspend) { mSuspendUpdates = suspend; } void setVisible(bool visible); - bool getVisible() const { return mVisible; }; + bool getVisible() const { return mVisible; } + bool isVisible() const { return mVisible; } + bool isMediaTimeBased(); bool isMediaPlaying(); bool isMediaPaused(); bool hasMedia() const; - bool isMediaFailed() const { return mMediaSourceFailed; }; + bool isMediaFailed() const { return mMediaSourceFailed; } void setMediaFailed(bool val) { mMediaSourceFailed = val; } void resetPreviousMediaState(); - void setDisabled(bool disabled); + void setDisabled(bool disabled, bool forcePlayOnEnable = false); bool isMediaDisabled() const { return mIsDisabled; }; void setInNearbyMediaList(bool in_list) { mInNearbyMediaList = in_list; } @@ -222,10 +242,10 @@ public: // returns true if this instance could be playable based on autoplay setting, current load state, etc. bool isPlayable() const; - void setIsParcelMedia(bool is_parcel_media) { mIsParcelMedia = is_parcel_media; }; - bool isParcelMedia() const { return mIsParcelMedia; }; + void setIsParcelMedia(bool is_parcel_media) { mIsParcelMedia = is_parcel_media; } + bool isParcelMedia() const { return mIsParcelMedia; } - ECursorType getLastSetCursor() { return mLastSetCursor; }; + ECursorType getLastSetCursor() { return mLastSetCursor; } // utility function to create a ready-to-use media instance from a desired media type. static LLPluginClassMedia* newSourceFromMediaType(std::string media_type, LLPluginClassMediaOwner *owner /* may be NULL */, S32 default_width, S32 default_height); @@ -326,6 +346,18 @@ public: void cancelMimeTypeProbe(); + // Is this media attached to an avatar *not* self + bool isAttachedToAnotherAvatar() const; + + // Is this media in the agent's parcel? + bool isInAgentParcel() const; + +private: + bool isAutoPlayable() const; + bool shouldShowBasedOnClass() const; + static bool isObjectAttachedToAnotherAvatar(LLVOVolume *obj); + static bool isObjectInAgentParcel(LLVOVolume *obj); + private: // a single media url with some data and an impl. LLPluginClassMedia* mMediaSource; @@ -368,7 +400,7 @@ private: LLMimeDiscoveryResponder *mMimeTypeProbe; bool mMediaAutoPlay; std::string mMediaEntryURL; - bool mInNearbyMediaList; // used by LLFloaterNearbyMedia::refreshList() for performance reasons + bool mInNearbyMediaList; // used by LLPanelNearbyMedia::refreshList() for performance reasons bool mClearCache; LLColor4 mBackgroundColor; bool mNavigateSuspended; diff --git a/indra/newview/llviewermediafocus.cpp b/indra/newview/llviewermediafocus.cpp index f508a3462a..88e7cfec86 100644 --- a/indra/newview/llviewermediafocus.cpp +++ b/indra/newview/llviewermediafocus.cpp @@ -559,6 +559,19 @@ void LLViewerMediaFocus::focusZoomOnMedia(LLUUID media_id) } } +void LLViewerMediaFocus::unZoom() +{ + if(mMediaControls.get()) + { + mMediaControls.get()->resetZoomLevel(); + } +} + +bool LLViewerMediaFocus::isZoomed() const +{ + return (mMediaControls.get() && mMediaControls.get()->getZoomLevel() != LLPanelPrimMediaControls::ZOOM_NONE); +} + LLUUID LLViewerMediaFocus::getControlsMediaID() { if(getFocusedMediaImpl()) diff --git a/indra/newview/llviewermediafocus.h b/indra/newview/llviewermediafocus.h index 002044ea2e..d9ddc7432b 100644 --- a/indra/newview/llviewermediafocus.h +++ b/indra/newview/llviewermediafocus.h @@ -85,6 +85,9 @@ public: // Try to focus/zoom on the specified media (if it's on an object in world). void focusZoomOnMedia(LLUUID media_id); + // Are we zoomed in? + bool isZoomed() const; + void unZoom(); // Return the ID of the media instance the controls are currently attached to (either focus or hover). LLUUID getControlsMediaID(); diff --git a/indra/newview/llviewermenu.cpp b/indra/newview/llviewermenu.cpp index d860bba8b3..6a1fb7d6ff 100644 --- a/indra/newview/llviewermenu.cpp +++ b/indra/newview/llviewermenu.cpp @@ -44,6 +44,7 @@ #include "llagent.h" #include "llagentwearables.h" #include "llagentpilot.h" +#include "llbottomtray.h" #include "llcompilequeue.h" #include "llconsole.h" #include "lldebugview.h" @@ -2555,7 +2556,7 @@ void handle_object_inspect() key["task"] = "task"; LLSideTray::getInstance()->showPanel("sidepanel_inventory", key); } - + /* // Old floater properties LLFloaterReg::showInstance("inspect", LLSD()); @@ -3554,9 +3555,15 @@ bool LLHaveCallingcard::operator()(LLInventoryCategory* cat, BOOL is_agent_mappable(const LLUUID& agent_id) { - return (LLAvatarActions::isFriend(agent_id) && - LLAvatarTracker::instance().getBuddyInfo(agent_id)->isOnline() && - LLAvatarTracker::instance().getBuddyInfo(agent_id)->isRightGrantedFrom(LLRelationship::GRANT_MAP_LOCATION) + const LLRelationship* buddy_info = NULL; + bool is_friend = LLAvatarActions::isFriend(agent_id); + + if (is_friend) + buddy_info = LLAvatarTracker::instance().getBuddyInfo(agent_id); + + return (buddy_info && + buddy_info->isOnline() && + buddy_info->isRightGrantedFrom(LLRelationship::GRANT_MAP_LOCATION) ); } @@ -4842,9 +4849,10 @@ class LLToolsEnableUnlink : public view_listener_t { bool handleEvent(const LLSD& userdata) { + LLViewerObject* first_editable_object = LLSelectMgr::getInstance()->getSelection()->getFirstEditableObject(); bool new_value = LLSelectMgr::getInstance()->selectGetAllRootsValid() && - LLSelectMgr::getInstance()->getSelection()->getFirstEditableObject() && - !LLSelectMgr::getInstance()->getSelection()->getFirstEditableObject()->isAttachment(); + first_editable_object && + !first_editable_object->isAttachment(); return new_value; } }; @@ -5332,7 +5340,7 @@ class LLWorldCreateLandmark : public view_listener_t void handle_look_at_selection(const LLSD& param) { - const F32 PADDING_FACTOR = 2.f; + const F32 PADDING_FACTOR = 1.75f; BOOL zoom = (param.asString() == "zoom"); if (!LLSelectMgr::getInstance()->getSelection()->isEmpty()) { @@ -5352,14 +5360,19 @@ void handle_look_at_selection(const LLSD& param) } if (zoom) { + // Make sure we are not increasing the distance between the camera and object + LLVector3d orig_distance = gAgent.getCameraPositionGlobal() - LLSelectMgr::getInstance()->getSelectionCenterGlobal(); + distance = llmin(distance, (F32) orig_distance.length()); + gAgent.setCameraPosAndFocusGlobal(LLSelectMgr::getInstance()->getSelectionCenterGlobal() + LLVector3d(obj_to_cam * distance), - LLSelectMgr::getInstance()->getSelectionCenterGlobal(), - object_id ); + LLSelectMgr::getInstance()->getSelectionCenterGlobal(), + object_id ); + } else { gAgent.setFocusGlobal( LLSelectMgr::getInstance()->getSelectionCenterGlobal(), object_id ); - } + } } } @@ -5594,8 +5607,6 @@ void handle_buy_currency() LLFloaterBuyCurrency::buyCurrency(); } - - class LLFloaterVisible : public view_listener_t { bool handleEvent(const LLSD& userdata) @@ -5625,19 +5636,39 @@ class LLShowSidetrayPanel : public view_listener_t bool handleEvent(const LLSD& userdata) { std::string panel_name = userdata.asString(); - // Open up either the sidepanel or new floater. - if (LLSideTray::getInstance()->isPanelActive(panel_name)) + // Toggle the panel + if (!LLSideTray::getInstance()->isPanelActive(panel_name)) { - LLFloaterInventory::showAgentInventory(); + // LLFloaterInventory::showAgentInventory(); + LLSideTray::getInstance()->showPanel(panel_name, LLSD()); } else { - LLSideTray::getInstance()->showPanel(panel_name, LLSD()); + LLSideTray::getInstance()->collapseSideBar(); } return true; } }; +class LLSidetrayPanelVisible : public view_listener_t +{ + bool handleEvent(const LLSD& userdata) + { + std::string panel_name = userdata.asString(); + // Toggle the panel + if (LLSideTray::getInstance()->isPanelActive(panel_name)) + { + return true; + } + else + { + return false; + } + + } +}; + + bool callback_show_url(const LLSD& notification, const LLSD& response) { S32 option = LLNotificationsUtil::getSelectedOption(notification, response); @@ -6378,7 +6409,6 @@ class LLToolsSelectedScriptAction : public view_listener_t else { llwarns << "Failed to generate LLFloaterScriptQueue with action: " << action << llendl; - delete queue; } return true; } @@ -7602,6 +7632,24 @@ class LLWorldDayCycle : public view_listener_t } }; +class LLWorldToggleMovementControls : public view_listener_t +{ + bool handleEvent(const LLSD& userdata) + { + LLBottomTray::getInstance()->toggleMovementControls(); + return true; + } +}; + +class LLWorldToggleCameraControls : public view_listener_t +{ + bool handleEvent(const LLSD& userdata) + { + LLBottomTray::getInstance()->toggleCameraControls(); + return true; + } +}; + void show_navbar_context_menu(LLView* ctrl, S32 x, S32 y) { static LLMenuGL* show_navbar_context_menu = LLUICtrlFactory::getInstance()->createFromFile<LLMenuGL>("menu_hide_navbar.xml", @@ -7721,6 +7769,9 @@ void initialize_menus() view_listener_t::addMenu(new LLWorldPostProcess(), "World.PostProcess"); view_listener_t::addMenu(new LLWorldDayCycle(), "World.DayCycle"); + view_listener_t::addMenu(new LLWorldToggleMovementControls(), "World.Toggle.MovementControls"); + view_listener_t::addMenu(new LLWorldToggleCameraControls(), "World.Toggle.CameraControls"); + // Tools menu view_listener_t::addMenu(new LLToolsSelectTool(), "Tools.SelectTool"); view_listener_t::addMenu(new LLToolsSelectOnlyMyObjects(), "Tools.SelectOnlyMyObjects"); @@ -8022,6 +8073,7 @@ void initialize_menus() view_listener_t::addMenu(new LLFloaterVisible(), "FloaterVisible"); view_listener_t::addMenu(new LLShowSidetrayPanel(), "ShowSidetrayPanel"); + view_listener_t::addMenu(new LLSidetrayPanelVisible(), "SidetrayPanelVisible"); view_listener_t::addMenu(new LLSomethingSelected(), "SomethingSelected"); view_listener_t::addMenu(new LLSomethingSelectedNoHUD(), "SomethingSelectedNoHUD"); view_listener_t::addMenu(new LLEditableSelected(), "EditableSelected"); diff --git a/indra/newview/llviewermenufile.cpp b/indra/newview/llviewermenufile.cpp index de6fcbd8bc..0f26975149 100644 --- a/indra/newview/llviewermenufile.cpp +++ b/indra/newview/llviewermenufile.cpp @@ -861,84 +861,88 @@ void upload_done_callback( //LLAssetType::EType pref_loc = data->mPreferredLocation; BOOL is_balance_sufficient = TRUE; - if(result >= 0) + if(data) { - LLFolderType::EType dest_loc = (data->mPreferredLocation == LLFolderType::FT_NONE) ? LLFolderType::assetTypeToFolderType(data->mAssetInfo.mType) : data->mPreferredLocation; - - if (LLAssetType::AT_SOUND == data->mAssetInfo.mType || - LLAssetType::AT_TEXTURE == data->mAssetInfo.mType || - LLAssetType::AT_ANIMATION == data->mAssetInfo.mType) + if (result >= 0) { - // Charge the user for the upload. - LLViewerRegion* region = gAgent.getRegion(); - - if(!(can_afford_transaction(expected_upload_cost))) - { - LLFloaterBuyCurrency::buyCurrency( - llformat(LLTrans::getString("UploadingCosts").c_str(), - data->mAssetInfo.getName().c_str()), - expected_upload_cost); - is_balance_sufficient = FALSE; - } - else if(region) + LLFolderType::EType dest_loc = (data->mPreferredLocation == LLFolderType::FT_NONE) ? LLFolderType::assetTypeToFolderType(data->mAssetInfo.mType) : data->mPreferredLocation; + + if (LLAssetType::AT_SOUND == data->mAssetInfo.mType || + LLAssetType::AT_TEXTURE == data->mAssetInfo.mType || + LLAssetType::AT_ANIMATION == data->mAssetInfo.mType) { - // Charge user for upload - gStatusBar->debitBalance(expected_upload_cost); + // Charge the user for the upload. + LLViewerRegion* region = gAgent.getRegion(); - LLMessageSystem* msg = gMessageSystem; - msg->newMessageFast(_PREHASH_MoneyTransferRequest); - msg->nextBlockFast(_PREHASH_AgentData); - msg->addUUIDFast(_PREHASH_AgentID, gAgent.getID()); - msg->addUUIDFast(_PREHASH_SessionID, gAgent.getSessionID()); - msg->nextBlockFast(_PREHASH_MoneyData); - msg->addUUIDFast(_PREHASH_SourceID, gAgent.getID()); - msg->addUUIDFast(_PREHASH_DestID, LLUUID::null); - msg->addU8("Flags", 0); - // we tell the sim how much we were expecting to pay so it - // can respond to any discrepancy - msg->addS32Fast(_PREHASH_Amount, expected_upload_cost); - msg->addU8Fast(_PREHASH_AggregatePermNextOwner, (U8)LLAggregatePermissions::AP_EMPTY); - msg->addU8Fast(_PREHASH_AggregatePermInventory, (U8)LLAggregatePermissions::AP_EMPTY); - msg->addS32Fast(_PREHASH_TransactionType, TRANS_UPLOAD_CHARGE); - msg->addStringFast(_PREHASH_Description, NULL); - msg->sendReliable(region->getHost()); + if(!(can_afford_transaction(expected_upload_cost))) + { + LLFloaterBuyCurrency::buyCurrency( + llformat(LLTrans::getString("UploadingCosts").c_str(), + data->mAssetInfo.getName().c_str()), + expected_upload_cost); + is_balance_sufficient = FALSE; + } + else if(region) + { + // Charge user for upload + gStatusBar->debitBalance(expected_upload_cost); + + LLMessageSystem* msg = gMessageSystem; + msg->newMessageFast(_PREHASH_MoneyTransferRequest); + msg->nextBlockFast(_PREHASH_AgentData); + msg->addUUIDFast(_PREHASH_AgentID, gAgent.getID()); + msg->addUUIDFast(_PREHASH_SessionID, gAgent.getSessionID()); + msg->nextBlockFast(_PREHASH_MoneyData); + msg->addUUIDFast(_PREHASH_SourceID, gAgent.getID()); + msg->addUUIDFast(_PREHASH_DestID, LLUUID::null); + msg->addU8("Flags", 0); + // we tell the sim how much we were expecting to pay so it + // can respond to any discrepancy + msg->addS32Fast(_PREHASH_Amount, expected_upload_cost); + msg->addU8Fast(_PREHASH_AggregatePermNextOwner, (U8)LLAggregatePermissions::AP_EMPTY); + msg->addU8Fast(_PREHASH_AggregatePermInventory, (U8)LLAggregatePermissions::AP_EMPTY); + msg->addS32Fast(_PREHASH_TransactionType, TRANS_UPLOAD_CHARGE); + msg->addStringFast(_PREHASH_Description, NULL); + msg->sendReliable(region->getHost()); + } } - } - if(is_balance_sufficient) - { - // Actually add the upload to inventory - llinfos << "Adding " << uuid << " to inventory." << llendl; - const LLUUID folder_id = gInventory.findCategoryUUIDForType(dest_loc); - if(folder_id.notNull()) + if(is_balance_sufficient) { - U32 next_owner_perms = data->mNextOwnerPerm; - if(PERM_NONE == next_owner_perms) + // Actually add the upload to inventory + llinfos << "Adding " << uuid << " to inventory." << llendl; + const LLUUID folder_id = gInventory.findCategoryUUIDForType(dest_loc); + if(folder_id.notNull()) { - next_owner_perms = PERM_MOVE | PERM_TRANSFER; + U32 next_owner_perms = data->mNextOwnerPerm; + if(PERM_NONE == next_owner_perms) + { + next_owner_perms = PERM_MOVE | PERM_TRANSFER; + } + create_inventory_item(gAgent.getID(), gAgent.getSessionID(), + folder_id, data->mAssetInfo.mTransactionID, data->mAssetInfo.getName(), + data->mAssetInfo.getDescription(), data->mAssetInfo.mType, + data->mInventoryType, NOT_WEARABLE, next_owner_perms, + LLPointer<LLInventoryCallback>(NULL)); + } + else + { + llwarns << "Can't find a folder to put it in" << llendl; } - create_inventory_item(gAgent.getID(), gAgent.getSessionID(), - folder_id, data->mAssetInfo.mTransactionID, data->mAssetInfo.getName(), - data->mAssetInfo.getDescription(), data->mAssetInfo.mType, - data->mInventoryType, NOT_WEARABLE, next_owner_perms, - LLPointer<LLInventoryCallback>(NULL)); - } - else - { - llwarns << "Can't find a folder to put it in" << llendl; } } - } - else // if(result >= 0) - { - LLSD args; - args["FILE"] = LLInventoryType::lookupHumanReadable(data->mInventoryType); - args["REASON"] = std::string(LLAssetStorage::getErrorString(result)); - LLNotificationsUtil::add("CannotUploadReason", args); + else // if(result >= 0) + { + LLSD args; + args["FILE"] = LLInventoryType::lookupHumanReadable(data->mInventoryType); + args["REASON"] = std::string(LLAssetStorage::getErrorString(result)); + LLNotificationsUtil::add("CannotUploadReason", args); + } } LLUploadDialog::modalUploadFinished(); delete data; + data = NULL; // *NOTE: This is a pretty big hack. What this does is check the // file picker if there are any more pending uploads. If so, diff --git a/indra/newview/llviewermessage.cpp b/indra/newview/llviewermessage.cpp index 1416ed5bc4..5338ae9346 100644 --- a/indra/newview/llviewermessage.cpp +++ b/indra/newview/llviewermessage.cpp @@ -867,6 +867,10 @@ void open_inventory_offer(const std::vector<LLUUID>& items, const std::string& f } LLInventoryItem* item = gInventory.getItem(item_id); + llassert(item); + if (!item) { + continue; + } //////////////////////////////////////////////////////////////////////////////// // Special handling for various types. @@ -1302,13 +1306,6 @@ bool LLOfferInfo::inventory_task_offer_callback(const LLSD& notification, const msg->addUUIDFast(_PREHASH_RegionID, LLUUID::null); msg->addVector3Fast(_PREHASH_Position, gAgent.getPositionAgent()); LLInventoryObserver* opener = NULL; - LLViewerInventoryCategory* catp = NULL; - catp = (LLViewerInventoryCategory*)gInventory.getCategory(mObjectID); - LLViewerInventoryItem* itemp = NULL; - if(!catp) - { - itemp = (LLViewerInventoryItem*)gInventory.getItem(mObjectID); - } std::string from_string; // Used in the pop-up. std::string chatHistory_string; // Used in chat history. diff --git a/indra/newview/llviewerobjectlist.h b/indra/newview/llviewerobjectlist.h index 8d3d2c4b44..706966deae 100644 --- a/indra/newview/llviewerobjectlist.h +++ b/indra/newview/llviewerobjectlist.h @@ -232,6 +232,10 @@ public: extern LLViewerObjectList gObjectList; // Inlines +/** + * Note: + * it will return NULL for offline avatar_id + */ inline LLViewerObject *LLViewerObjectList::findObject(const LLUUID &id) { std::map<LLUUID, LLPointer<LLViewerObject> >::iterator iter = mUUIDObjectMap.find(id); diff --git a/indra/newview/llviewerparcelmgr.cpp b/indra/newview/llviewerparcelmgr.cpp index 07c8867e26..1f6bbcbae8 100644 --- a/indra/newview/llviewerparcelmgr.cpp +++ b/indra/newview/llviewerparcelmgr.cpp @@ -53,7 +53,7 @@ //#include "llfirstuse.h" #include "llfloaterbuyland.h" #include "llfloatergroups.h" -#include "llfloaternearbymedia.h" +#include "llpanelnearbymedia.h" #include "llfloatersellland.h" #include "llfloatertools.h" #include "llparcelselection.h" @@ -1795,12 +1795,13 @@ void optionally_start_music(const std::string& music_url) { // only play music when you enter a new parcel if the UI control for this // was not *explicitly* stopped by the user. (part of SL-4878) - LLFloaterNearbyMedia *nearby_media_floater = LLFloaterReg::findTypedInstance<LLFloaterNearbyMedia>("nearby_media"); - if ((nearby_media_floater && - nearby_media_floater->getParcelAudioAutoStart()) || + LLPanelNearByMedia* nearby_media_panel = gStatusBar->getNearbyMediaPanel();; + if ((nearby_media_panel && + nearby_media_panel->getParcelAudioAutoStart()) || // or they have expressed no opinion in the UI, but have autoplay on... - (!nearby_media_floater && - gSavedSettings.getBOOL(LLViewerMedia::AUTO_PLAY_MEDIA_SETTING))) + (!nearby_media_panel && + gSavedSettings.getBOOL(LLViewerMedia::AUTO_PLAY_MEDIA_SETTING) && + gSavedSettings.getBOOL("MediaTentativeAutoPlay"))) { llinfos << "Starting parcel music " << music_url << llendl; gAudiop->startInternetStream(music_url); diff --git a/indra/newview/llviewertexture.cpp b/indra/newview/llviewertexture.cpp index a4899c30a1..768b145351 100644 --- a/indra/newview/llviewertexture.cpp +++ b/indra/newview/llviewertexture.cpp @@ -774,7 +774,7 @@ void LLViewerTexture::generateGLTexture() LLImageGL* LLViewerTexture::getGLTexture() const { - llassert_always(mGLTexturep.notNull()) ; + llassert(mGLTexturep.notNull()) ; return mGLTexturep ; } @@ -791,7 +791,7 @@ BOOL LLViewerTexture::createGLTexture() BOOL LLViewerTexture::createGLTexture(S32 discard_level, const LLImageRaw* imageraw, S32 usename, BOOL to_create, S32 category) { - llassert_always(mGLTexturep.notNull()) ; + llassert(mGLTexturep.notNull()) ; BOOL ret = mGLTexturep->createGLTexture(discard_level, imageraw, usename, to_create, category) ; @@ -807,55 +807,55 @@ BOOL LLViewerTexture::createGLTexture(S32 discard_level, const LLImageRaw* image void LLViewerTexture::setExplicitFormat(LLGLint internal_format, LLGLenum primary_format, LLGLenum type_format, BOOL swap_bytes) { - llassert_always(mGLTexturep.notNull()) ; + llassert(mGLTexturep.notNull()) ; mGLTexturep->setExplicitFormat(internal_format, primary_format, type_format, swap_bytes) ; } void LLViewerTexture::setAddressMode(LLTexUnit::eTextureAddressMode mode) { - llassert_always(mGLTexturep.notNull()) ; + llassert(mGLTexturep.notNull()) ; mGLTexturep->setAddressMode(mode) ; } void LLViewerTexture::setFilteringOption(LLTexUnit::eTextureFilterOptions option) { - llassert_always(mGLTexturep.notNull()) ; + llassert(mGLTexturep.notNull()) ; mGLTexturep->setFilteringOption(option) ; } //virtual S32 LLViewerTexture::getWidth(S32 discard_level) const { - llassert_always(mGLTexturep.notNull()) ; + llassert(mGLTexturep.notNull()) ; return mGLTexturep->getWidth(discard_level) ; } //virtual S32 LLViewerTexture::getHeight(S32 discard_level) const { - llassert_always(mGLTexturep.notNull()) ; + llassert(mGLTexturep.notNull()) ; return mGLTexturep->getHeight(discard_level) ; } S32 LLViewerTexture::getMaxDiscardLevel() const { - llassert_always(mGLTexturep.notNull()) ; + llassert(mGLTexturep.notNull()) ; return mGLTexturep->getMaxDiscardLevel() ; } S32 LLViewerTexture::getDiscardLevel() const { - llassert_always(mGLTexturep.notNull()) ; + llassert(mGLTexturep.notNull()) ; return mGLTexturep->getDiscardLevel() ; } S8 LLViewerTexture::getComponents() const { - llassert_always(mGLTexturep.notNull()) ; + llassert(mGLTexturep.notNull()) ; return mGLTexturep->getComponents() ; } LLGLuint LLViewerTexture::getTexName() const { - llassert_always(mGLTexturep.notNull()) ; + llassert(mGLTexturep.notNull()) ; return mGLTexturep->getTexName() ; } @@ -880,124 +880,124 @@ BOOL LLViewerTexture::getBoundRecently() const LLTexUnit::eTextureType LLViewerTexture::getTarget(void) const { - llassert_always(mGLTexturep.notNull()) ; + llassert(mGLTexturep.notNull()) ; return mGLTexturep->getTarget() ; } BOOL LLViewerTexture::setSubImage(const LLImageRaw* imageraw, S32 x_pos, S32 y_pos, S32 width, S32 height) { - llassert_always(mGLTexturep.notNull()) ; + llassert(mGLTexturep.notNull()) ; return mGLTexturep->setSubImage(imageraw, x_pos, y_pos, width, height) ; } BOOL LLViewerTexture::setSubImage(const U8* datap, S32 data_width, S32 data_height, S32 x_pos, S32 y_pos, S32 width, S32 height) { - llassert_always(mGLTexturep.notNull()) ; + llassert(mGLTexturep.notNull()) ; return mGLTexturep->setSubImage(datap, data_width, data_height, x_pos, y_pos, width, height) ; } void LLViewerTexture::setGLTextureCreated (bool initialized) { - llassert_always(mGLTexturep.notNull()) ; + llassert(mGLTexturep.notNull()) ; mGLTexturep->setGLTextureCreated (initialized) ; } void LLViewerTexture::setCategory(S32 category) { - llassert_always(mGLTexturep.notNull()) ; + llassert(mGLTexturep.notNull()) ; mGLTexturep->setCategory(category) ; } LLTexUnit::eTextureAddressMode LLViewerTexture::getAddressMode(void) const { - llassert_always(mGLTexturep.notNull()) ; + llassert(mGLTexturep.notNull()) ; return mGLTexturep->getAddressMode() ; } S32 LLViewerTexture::getTextureMemory() const { - llassert_always(mGLTexturep.notNull()) ; + llassert(mGLTexturep.notNull()) ; return mGLTexturep->mTextureMemory ; } LLGLenum LLViewerTexture::getPrimaryFormat() const { - llassert_always(mGLTexturep.notNull()) ; + llassert(mGLTexturep.notNull()) ; return mGLTexturep->getPrimaryFormat() ; } BOOL LLViewerTexture::getIsAlphaMask() const { - llassert_always(mGLTexturep.notNull()) ; + llassert(mGLTexturep.notNull()) ; return mGLTexturep->getIsAlphaMask() ; } BOOL LLViewerTexture::getMask(const LLVector2 &tc) { - llassert_always(mGLTexturep.notNull()) ; + llassert(mGLTexturep.notNull()) ; return mGLTexturep->getMask(tc) ; } F32 LLViewerTexture::getTimePassedSinceLastBound() { - llassert_always(mGLTexturep.notNull()) ; + llassert(mGLTexturep.notNull()) ; return mGLTexturep->getTimePassedSinceLastBound() ; } BOOL LLViewerTexture::getMissed() const { - llassert_always(mGLTexturep.notNull()) ; + llassert(mGLTexturep.notNull()) ; return mGLTexturep->getMissed() ; } BOOL LLViewerTexture::isJustBound() const { - llassert_always(mGLTexturep.notNull()) ; + llassert(mGLTexturep.notNull()) ; return mGLTexturep->isJustBound() ; } void LLViewerTexture::forceUpdateBindStats(void) const { - llassert_always(mGLTexturep.notNull()) ; + llassert(mGLTexturep.notNull()) ; return mGLTexturep->forceUpdateBindStats() ; } U32 LLViewerTexture::getTexelsInAtlas() const { - llassert_always(mGLTexturep.notNull()) ; + llassert(mGLTexturep.notNull()) ; return mGLTexturep->getTexelsInAtlas() ; } U32 LLViewerTexture::getTexelsInGLTexture() const { - llassert_always(mGLTexturep.notNull()) ; + llassert(mGLTexturep.notNull()) ; return mGLTexturep->getTexelsInGLTexture() ; } BOOL LLViewerTexture::isGLTextureCreated() const { - llassert_always(mGLTexturep.notNull()) ; + llassert(mGLTexturep.notNull()) ; return mGLTexturep->isGLTextureCreated() ; } S32 LLViewerTexture::getDiscardLevelInAtlas() const { - llassert_always(mGLTexturep.notNull()) ; + llassert(mGLTexturep.notNull()) ; return mGLTexturep->getDiscardLevelInAtlas() ; } @@ -1033,12 +1033,6 @@ void LLViewerTexture::updateBindStatsForTester() //start of LLViewerFetchedTexture //---------------------------------------------------------------------------------------------- -//static -F32 LLViewerFetchedTexture::maxDecodePriority() -{ - return 6000000.f; -} - LLViewerFetchedTexture::LLViewerFetchedTexture(const LLUUID& id, const LLHost& host, BOOL usemipmaps) : LLViewerTexture(id, usemipmaps), mTargetHost(host) @@ -1485,6 +1479,13 @@ void LLViewerFetchedTexture::processTextureStats() } } +const F32 MAX_PRIORITY_PIXEL = 999.f ; //pixel area +const F32 PRIORITY_BOOST_LEVEL_FACTOR = 1000.f ; //boost level +const F32 PRIORITY_DELTA_DISCARD_LEVEL_FACTOR = 100000.f ; //delta discard +const S32 MAX_DELTA_DISCARD_LEVEL_FOR_PRIORITY = 4 ; +const F32 PRIORITY_ADDITIONAL_FACTOR = 1000000.f ; //additional +const S32 MAX_ADDITIONAL_LEVEL_FOR_PRIORITY = 8 ; +const F32 PRIORITY_BOOST_HIGH_FACTOR = 10000000.f ;//boost high F32 LLViewerFetchedTexture::calcDecodePriority() { #ifndef LL_RELEASE_FOR_DOWNLOAD @@ -1512,7 +1513,7 @@ F32 LLViewerFetchedTexture::calcDecodePriority() bool have_all_data = (cur_discard >= 0 && (cur_discard <= mDesiredDiscardLevel)); F32 pixel_priority = fsqrtf(mMaxVirtualSize); - F32 priority; + F32 priority = 0.f; if (mIsMissingAsset) { priority = 0.0f; @@ -1555,8 +1556,8 @@ F32 LLViewerFetchedTexture::calcDecodePriority() static const F64 log_2 = log(2.0); F32 desired = (F32)(log(32.0/pixel_priority) / log_2); S32 ddiscard = MAX_DISCARD_LEVEL - (S32)desired; - ddiscard = llclamp(ddiscard, 0, 4); - priority = (ddiscard+1)*100000.f; + ddiscard = llclamp(ddiscard, 0, MAX_DELTA_DISCARD_LEVEL_FOR_PRIORITY); + priority = (ddiscard + 1) * PRIORITY_DELTA_DISCARD_LEVEL_FACTOR; } else if ((mMinDiscardLevel > 0) && (cur_discard <= mMinDiscardLevel)) { @@ -1577,47 +1578,58 @@ F32 LLViewerFetchedTexture::calcDecodePriority() } else if (!isJustBound() && mCachedRawImageReady) { - if(mBoostLevel < BOOST_HIGH) - { - // We haven't rendered this in a while, de-prioritize it - desired_discard += 2; - } - //else + //if(mBoostLevel < BOOST_HIGH) //{ - // // We haven't rendered this in the last half second, and we have a cached raw image, leave the desired discard as-is - // desired_discard = cur_discard; + // // We haven't rendered this in a while, de-prioritize it + // desired_discard += 2; //} + //else + { + // We haven't rendered this in the last half second, and we have a cached raw image, leave the desired discard as-is + desired_discard = cur_discard; + } } S32 ddiscard = cur_discard - desired_discard; - ddiscard = llclamp(ddiscard, 0, 4); - priority = (ddiscard+1)*100000.f; + ddiscard = llclamp(ddiscard, 0, MAX_DELTA_DISCARD_LEVEL_FOR_PRIORITY); + priority = (ddiscard + 1) * PRIORITY_DELTA_DISCARD_LEVEL_FACTOR; } // Priority Formula: // BOOST_HIGH + ADDITIONAL PRI + DELTA DISCARD + BOOST LEVEL + PIXELS - // [10,000,000] + [1-9,000,000] + [1-400,000] + [1-20,000] + [0-999] + // [10,000,000] + [1,000,000-9,000,000] + [100,000-500,000] + [1-20,000] + [0-999] if (priority > 0.0f) { - pixel_priority = llclamp(pixel_priority, 0.0f, 999.f); + pixel_priority = llclamp(pixel_priority, 0.0f, MAX_PRIORITY_PIXEL); - priority = pixel_priority + 1000.f * mBoostLevel; + priority += pixel_priority + PRIORITY_BOOST_LEVEL_FACTOR * mBoostLevel; if ( mBoostLevel > BOOST_HIGH) { - priority += 10000000.f; + priority += PRIORITY_BOOST_HIGH_FACTOR; } if(mAdditionalDecodePriority > 0.0f) { - // 1-9 - S32 additional_priority = (S32)(1.0f + mAdditionalDecodePriority*8.0f + .5f); // round - // priority range += 0-9,000,000 - priority += 1000000.f * (F32)additional_priority; + // priority range += 1,000,000.f-9,000,000.f + priority += PRIORITY_ADDITIONAL_FACTOR * (1.0 + mAdditionalDecodePriority * MAX_ADDITIONAL_LEVEL_FOR_PRIORITY); } } return priority; } + +//static +F32 LLViewerFetchedTexture::maxDecodePriority() +{ + static const F32 max_priority = PRIORITY_BOOST_HIGH_FACTOR + //boost_high + PRIORITY_ADDITIONAL_FACTOR * (MAX_ADDITIONAL_LEVEL_FOR_PRIORITY + 1) + //additional (view dependent factors) + PRIORITY_DELTA_DISCARD_LEVEL_FACTOR * (MAX_DELTA_DISCARD_LEVEL_FOR_PRIORITY + 1) + //delta discard + PRIORITY_BOOST_LEVEL_FACTOR * (BOOST_MAX_LEVEL - 1) + //boost level + MAX_PRIORITY_PIXEL + 1.0f ; //pixel area. + + return max_priority ; +} + //============================================================================ void LLViewerFetchedTexture::setDecodePriority(F32 priority) @@ -2298,13 +2310,13 @@ void LLViewerFetchedTexture::destroyRawImage() if (mRawImage.notNull()) { - sRawCount--; - setCachedRawImage() ; + sRawCount--; if(mForceToSaveRawImage) { saveRawImage() ; } + setCachedRawImage() ; } mRawImage = NULL; @@ -2390,17 +2402,12 @@ void LLViewerFetchedTexture::setCachedRawImage() { --i ; } - //if(mForSculpt) - //{ - // mRawImage->scaleDownWithoutBlending(w >> i, h >> i) ; - //} - //else - { - mRawImage->scale(w >> i, h >> i) ; - } + + mRawImage->scale(w >> i, h >> i) ; } mCachedRawImage = mRawImage ; - mCachedRawDiscardLevel = mRawDiscardLevel + i ; + mRawDiscardLevel += i ; + mCachedRawDiscardLevel = mRawDiscardLevel ; } } @@ -2470,7 +2477,7 @@ BOOL LLViewerFetchedTexture::hasSavedRawImage() const F32 LLViewerFetchedTexture::getElapsedLastReferencedSavedRawImageTime() const { - return mLastReferencedSavedRawImageTime - sCurrentTime ; + return sCurrentTime - mLastReferencedSavedRawImageTime ; } //---------------------------------------------------------------------------------------------- //atlasing @@ -2747,7 +2754,7 @@ void LLViewerLODTexture::processTextureStats() } else { - if(isLargeImage() && !isJustBound() && mAdditionalDecodePriority < 1.0f) + if(isLargeImage() && !isJustBound() && mAdditionalDecodePriority < 0.3f) { //if is a big image and not being used recently, nor close to the view point, do not load hi-res data. mMaxVirtualSize = llmin(mMaxVirtualSize, (F32)LLViewerTexture::sMinLargeImageSize) ; @@ -2933,12 +2940,11 @@ LLViewerMediaTexture::~LLViewerMediaTexture() void LLViewerMediaTexture::reinit(BOOL usemipmaps /* = TRUE */) { - mGLTexturep = NULL ; - init(false); + llassert(mGLTexturep.notNull()) ; + mUseMipMaps = usemipmaps ; getLastReferencedTimer()->reset() ; - - generateGLTexture() ; + mGLTexturep->setUseMipMaps(mUseMipMaps) ; mGLTexturep->setNeedsAlphaAndPickMask(FALSE) ; } @@ -3043,6 +3049,10 @@ void LLViewerMediaTexture::initVirtualSize() void LLViewerMediaTexture::addMediaToFace(LLFace* facep) { + if(facep) + { + facep->setHasMedia(true) ; + } if(!mIsPlaying) { return ; //no need to add the face because the media is not in playing. @@ -3053,14 +3063,16 @@ void LLViewerMediaTexture::addMediaToFace(LLFace* facep) void LLViewerMediaTexture::removeMediaFromFace(LLFace* facep) { - if(!mIsPlaying) - { - return ; //no need to remove the face because the media is not in playing. - } if(!facep) { return ; } + facep->setHasMedia(false) ; + + if(!mIsPlaying) + { + return ; //no need to remove the face because the media is not in playing. + } mIsPlaying = FALSE ; //set to remove the media from the face. switchTexture(facep) ; diff --git a/indra/newview/llviewerwindow.cpp b/indra/newview/llviewerwindow.cpp index a9468f8fae..fd59ea41b2 100644 --- a/indra/newview/llviewerwindow.cpp +++ b/indra/newview/llviewerwindow.cpp @@ -856,56 +856,71 @@ LLWindowCallbacks::DragNDropResult LLViewerWindow::handleDragNDrop( LLWindow *wi LLVOVolume *obj = dynamic_cast<LLVOVolume*>(static_cast<LLViewerObject*>(pick_info.getObject())); - if (obj && obj->permModify() && !obj->getRegion()->getCapability("ObjectMedia").empty()) + if (obj && !obj->getRegion()->getCapability("ObjectMedia").empty()) { LLTextureEntry *te = obj->getTE(object_face); if (te) { if (drop) { - if (! te->hasMedia()) + // object does NOT have media already + if ( ! te->hasMedia() ) { - // Create new media entry - LLSD media_data; - // XXX Should we really do Home URL too? - media_data[LLMediaEntry::HOME_URL_KEY] = url; - media_data[LLMediaEntry::CURRENT_URL_KEY] = url; - media_data[LLMediaEntry::AUTO_PLAY_KEY] = true; - obj->syncMediaData(object_face, media_data, true, true); - // XXX This shouldn't be necessary, should it ?!? - if (obj->getMediaImpl(object_face)) - obj->getMediaImpl(object_face)->navigateReload(); - obj->sendMediaDataUpdate(); - - result = LLWindowCallbacks::DND_COPY; - } - else { - // Check the whitelist - if (te->getMediaData()->checkCandidateUrl(url)) + // we are allowed to modify the object + if ( obj->permModify() ) { - // just navigate to the URL + // Create new media entry + LLSD media_data; + // XXX Should we really do Home URL too? + media_data[LLMediaEntry::HOME_URL_KEY] = url; + media_data[LLMediaEntry::CURRENT_URL_KEY] = url; + media_data[LLMediaEntry::AUTO_PLAY_KEY] = true; + obj->syncMediaData(object_face, media_data, true, true); + // XXX This shouldn't be necessary, should it ?!? if (obj->getMediaImpl(object_face)) + obj->getMediaImpl(object_face)->navigateReload(); + obj->sendMediaDataUpdate(); + + result = LLWindowCallbacks::DND_COPY; + } + } + else + // object HAS media already + { + // URL passes the whitelist + if (te->getMediaData()->checkCandidateUrl( url ) ) + { + // we are allowed to modify the object or we have navigate permissions + // NOTE: Design states you you can change the URL if you have media + // navigate permissions even if you do not have prim modify rights + if ( obj->permModify() || obj->hasMediaPermission( te->getMediaData(), LLVOVolume::MEDIA_PERM_INTERACT ) ) { - obj->getMediaImpl(object_face)->navigateTo(url); - } - else { - // This is very strange. Navigation should - // happen via the Impl, but we don't have one. - // This sends it to the server, which /should/ - // trigger us getting it. Hopefully. - LLSD media_data; - media_data[LLMediaEntry::CURRENT_URL_KEY] = url; - obj->syncMediaData(object_face, media_data, true, true); - obj->sendMediaDataUpdate(); + // just navigate to the URL + if (obj->getMediaImpl(object_face)) + { + obj->getMediaImpl(object_face)->navigateTo(url); + } + else + { + // This is very strange. Navigation should + // happen via the Impl, but we don't have one. + // This sends it to the server, which /should/ + // trigger us getting it. Hopefully. + LLSD media_data; + media_data[LLMediaEntry::CURRENT_URL_KEY] = url; + obj->syncMediaData(object_face, media_data, true, true); + obj->sendMediaDataUpdate(); + } + result = LLWindowCallbacks::DND_LINK; } - result = LLWindowCallbacks::DND_LINK; } } LLSelectMgr::getInstance()->unhighlightObjectOnly(mDragHoveredObject); mDragHoveredObject = NULL; } - else { + else + { // Check the whitelist, if there's media (otherwise just show it) if (te->getMediaData() == NULL || te->getMediaData()->checkCandidateUrl(url)) { @@ -986,6 +1001,7 @@ void LLViewerWindow::handleMouseLeave(LLWindow *window) // Note: we won't get this if we have captured the mouse. llassert( gFocusMgr.getMouseCapture() == NULL ); mMouseInWindow = FALSE; + LLToolTipMgr::instance().blockToolTips(); } BOOL LLViewerWindow::handleCloseRequest(LLWindow *window) @@ -2476,6 +2492,8 @@ void LLViewerWindow::updateUI() static std::string last_handle_msg; + LLConsole::updateClass(); + // animate layout stacks so we have up to date rect for world view LLLayoutStack::updateClass(); diff --git a/indra/newview/llvoavatar.cpp b/indra/newview/llvoavatar.cpp index 4235f97eab..72b9c6df98 100644 --- a/indra/newview/llvoavatar.cpp +++ b/indra/newview/llvoavatar.cpp @@ -1492,9 +1492,9 @@ BOOL LLVOAvatar::parseSkeletonFile(const std::string& filename) //------------------------------------------------------------------------- // parse the file //------------------------------------------------------------------------- - BOOL success = sSkeletonXMLTree.parseFile( filename, FALSE ); + BOOL parsesuccess = sSkeletonXMLTree.parseFile( filename, FALSE ); - if (!success) + if (!parsesuccess) { llerrs << "Can't parse skeleton file: " << filename << llendl; return FALSE; @@ -1505,11 +1505,13 @@ BOOL LLVOAvatar::parseSkeletonFile(const std::string& filename) if (!root) { llerrs << "No root node found in avatar skeleton file: " << filename << llendl; + return FALSE; } if( !root->hasName( "linden_skeleton" ) ) { llerrs << "Invalid avatar skeleton file header: " << filename << llendl; + return FALSE; } std::string version; @@ -1517,6 +1519,7 @@ BOOL LLVOAvatar::parseSkeletonFile(const std::string& filename) if( !root->getFastAttributeString( version_string, version ) || (version != "1.0") ) { llerrs << "Invalid avatar skeleton file version: " << version << " in file: " << filename << llendl; + return FALSE; } return TRUE; @@ -2192,13 +2195,16 @@ BOOL LLVOAvatar::idleUpdate(LLAgent &agent, LLWorld &world, const F64 &time) // store off last frame's root position to be consistent with camera position LLVector3 root_pos_last = mRoot.getWorldPosition(); BOOL detailed_update = updateCharacter(agent); - BOOL voice_enabled = gVoiceClient->getVoiceEnabled( mID ) && gVoiceClient->inProximalChannel(); if (gNoRender) { return TRUE; } + static LLUICachedControl<bool> visualizers_in_calls("ShowVoiceVisualizersInCalls", false); + bool voice_enabled = (visualizers_in_calls || gVoiceClient->inProximalChannel()) && + gVoiceClient->getVoiceEnabled(mID); + idleUpdateVoiceVisualizer( voice_enabled ); idleUpdateMisc( detailed_update ); idleUpdateAppearanceAnimation(); @@ -2532,6 +2538,17 @@ void LLVOAvatar::idleUpdateLoadingEffect() // update visibility when avatar is partially loaded if (updateIsFullyLoaded()) // changed? { + if (isFullyLoaded() && isSelf()) + { + static bool first_fully_visible = true; + if (first_fully_visible) + { + llinfos << "self isFullyLoaded, first_fully_visible" << llendl; + + first_fully_visible = false; + LLAppearanceManager::instance().onFirstFullyVisible(); + } + } if (isFullyLoaded()) { deleteParticleSource(); @@ -3079,7 +3096,7 @@ BOOL LLVOAvatar::updateCharacter(LLAgent &agent) if (!visible) { - //updateMotions(LLCharacter::HIDDEN_UPDATE); + updateMotions(LLCharacter::HIDDEN_UPDATE); return FALSE; } @@ -4048,6 +4065,7 @@ void LLVOAvatar::updateTextures() // Spam if this is a baked texture, not set to default image, without valid host info if (isIndexBakedTexture((ETextureIndex)texture_index) && imagep->getID() != IMG_DEFAULT_AVATAR + && imagep->getID() != IMG_INVISIBLE && !imagep->getTargetHost().isOk()) { LL_WARNS_ONCE("Texture") << "LLVOAvatar::updateTextures No host for texture " diff --git a/indra/newview/llvoavatarself.cpp b/indra/newview/llvoavatarself.cpp index 13e28b246a..00998b300a 100644 --- a/indra/newview/llvoavatarself.cpp +++ b/indra/newview/llvoavatarself.cpp @@ -932,6 +932,13 @@ void LLVOAvatarSelf::wearableUpdated( EWearableType type, BOOL upload_result ) { const LLVOAvatarDictionary::BakedEntry *baked_dict = baked_iter->second; const LLVOAvatarDefines::EBakedTextureIndex index = baked_iter->first; + + // if we're editing our appearance, ensure that we're not using baked textures + // The baked texture for alpha masks is set explicitly when you hit "save" + if (gAgent.cameraCustomizeAvatar()) + { + setNewBakedTexture(index,IMG_DEFAULT_AVATAR); + } if (baked_dict) { for (LLVOAvatarDefines::wearables_vec_t::const_iterator type_iter = baked_dict->mWearables.begin(); diff --git a/indra/newview/llvoicechannel.cpp b/indra/newview/llvoicechannel.cpp index bb09a18cc3..dfd67d0c38 100644 --- a/indra/newview/llvoicechannel.cpp +++ b/indra/newview/llvoicechannel.cpp @@ -122,7 +122,8 @@ LLVoiceChannel::LLVoiceChannel(const LLUUID& session_id, const std::string& sess mState(STATE_NO_CHANNEL_INFO), mSessionName(session_name), mCallDirection(OUTGOING_CALL), - mIgnoreNextSessionLeave(FALSE) + mIgnoreNextSessionLeave(FALSE), + mCallEndedByAgent(false) { mNotifyArgs["VOICE_CHANNEL_NAME"] = mSessionName; @@ -412,7 +413,7 @@ void LLVoiceChannel::doSetState(const EState& new_state) EState old_state = mState; mState = new_state; if (!mStateChangedCallback.empty()) - mStateChangedCallback(old_state, mState, mCallDirection); + mStateChangedCallback(old_state, mState, mCallDirection, mCallEndedByAgent); } //static @@ -779,7 +780,8 @@ void LLVoiceChannelP2P::handleStatusChange(EStatusType type) } else { - // other user hung up + // other user hung up, so we didn't end the call + mCallEndedByAgent = false; } deactivate(); } @@ -810,6 +812,9 @@ void LLVoiceChannelP2P::activate() { if (callStarted()) return; + //call will be counted as ended by user unless this variable is changed in handleStatusChange() + mCallEndedByAgent = true; + LLVoiceChannel::activate(); if (callStarted()) diff --git a/indra/newview/llvoicechannel.h b/indra/newview/llvoicechannel.h index cb86671305..941cccacc3 100644 --- a/indra/newview/llvoicechannel.h +++ b/indra/newview/llvoicechannel.h @@ -58,7 +58,7 @@ public: OUTGOING_CALL } EDirection; - typedef boost::signals2::signal<void(const EState& old_state, const EState& new_state, const EDirection& direction)> state_changed_signal_t; + typedef boost::signals2::signal<void(const EState& old_state, const EState& new_state, const EDirection& direction, bool ended_by_agent)> state_changed_signal_t; // on current channel changed signal typedef boost::function<void(const LLUUID& session_id)> channel_changed_callback_t; @@ -122,6 +122,8 @@ protected: std::string mSessionName; LLSD mNotifyArgs; LLSD mCallDialogPayload; + // true if call was ended by agent + bool mCallEndedByAgent; BOOL mIgnoreNextSessionLeave; LLHandle<LLPanel> mLoginNotificationHandle; diff --git a/indra/newview/llvoiceclient.cpp b/indra/newview/llvoiceclient.cpp index f3bfc2e86c..3d153db733 100644 --- a/indra/newview/llvoiceclient.cpp +++ b/indra/newview/llvoiceclient.cpp @@ -5377,24 +5377,25 @@ LLVoiceClient::sessionState* LLVoiceClient::startUserIMSession(const LLUUID &uui // No session with user, need to start one. std::string uri = sipURIFromID(uuid); session = addSession(uri); + + llassert(session); + if (!session) return NULL; + session->mIsSpatial = false; session->mReconnect = false; session->mIsP2P = true; session->mCallerID = uuid; } - if(session) + if(session->mHandle.empty()) { - if(session->mHandle.empty()) - { - // Session isn't active -- start it up. - sessionCreateSendMessage(session, false, true); - } - else - { - // Session is already active -- start up text. - sessionTextConnectSendMessage(session); - } + // Session isn't active -- start it up. + sessionCreateSendMessage(session, false, true); + } + else + { + // Session is already active -- start up text. + sessionTextConnectSendMessage(session); } return session; diff --git a/indra/newview/llvovolume.cpp b/indra/newview/llvovolume.cpp index cb67890515..c43883f86e 100644 --- a/indra/newview/llvovolume.cpp +++ b/indra/newview/llvovolume.cpp @@ -711,6 +711,7 @@ void LLVOVolume::updateTextureVirtualSize() vsize = area; imagep->setBoostLevel(LLViewerTexture::BOOST_HUD); face->setPixelArea(area); // treat as full screen + face->setVirtualSize(vsize); } else { @@ -727,8 +728,7 @@ void LLVOVolume::updateTextureVirtualSize() gPipeline.markRebuild(mDrawable, LLDrawable::REBUILD_TCOORD, FALSE); } } - - face->setVirtualSize(vsize); + if (gPipeline.hasRenderDebugMask(LLPipeline::RENDER_DEBUG_TEXTURE_AREA)) { if (vsize < min_vsize) min_vsize = vsize; @@ -3653,7 +3653,8 @@ static LLFastTimer::DeclareTimer FTM_VOLUME_GEOM("Volume Geometry"); void LLVolumeGeometryManager::rebuildMesh(LLSpatialGroup* group) { llpushcallstacks ; - if (group->isState(LLSpatialGroup::MESH_DIRTY) && !group->isState(LLSpatialGroup::GEOM_DIRTY)) + llassert(group); + if (group && group->isState(LLSpatialGroup::MESH_DIRTY) && !group->isState(LLSpatialGroup::GEOM_DIRTY)) { LLFastTimer tm(FTM_VOLUME_GEOM); S32 num_mapped_veretx_buffer = LLVertexBuffer::sMappedCount ; @@ -3712,9 +3713,9 @@ void LLVolumeGeometryManager::rebuildMesh(LLSpatialGroup* group) } // don't forget alpha - if( group != NULL && - !group->mVertexBuffer.isNull() && - group->mVertexBuffer->isLocked()) + if(group != NULL && + !group->mVertexBuffer.isNull() && + group->mVertexBuffer->isLocked()) { group->mVertexBuffer->setBuffer(0); } @@ -3740,7 +3741,7 @@ void LLVolumeGeometryManager::rebuildMesh(LLSpatialGroup* group) group->clearState(LLSpatialGroup::MESH_DIRTY | LLSpatialGroup::NEW_DRAWINFO); } - if (group->isState(LLSpatialGroup::NEW_DRAWINFO)) + if (group && group->isState(LLSpatialGroup::NEW_DRAWINFO)) { llerrs << "WTF?" << llendl; } diff --git a/indra/newview/llweb.cpp b/indra/newview/llweb.cpp index 100ec0bb69..3385b75c65 100644 --- a/indra/newview/llweb.cpp +++ b/indra/newview/llweb.cpp @@ -148,6 +148,7 @@ std::string LLWeb::expandURLSubstitutions(const std::string &url, substitution["GRID"] = LLViewerLogin::getInstance()->getGridLabel(); substitution["OS"] = LLAppViewer::instance()->getOSInfo().getOSStringSimple(); substitution["SESSION_ID"] = gAgent.getSessionID(); + substitution["FIRST_LOGIN"] = gAgent.isFirstLogin(); // work out the current language std::string lang = LLUI::getLanguage(); diff --git a/indra/newview/pipeline.cpp b/indra/newview/pipeline.cpp index f10f9f9784..f90f8f1b89 100644 --- a/indra/newview/pipeline.cpp +++ b/indra/newview/pipeline.cpp @@ -1371,6 +1371,7 @@ void LLPipeline::updateMoveNormalAsync(LLDrawable* drawablep) if (!drawablep) { llerrs << "updateMove called with NULL drawablep" << llendl; + return; } if (drawablep->isState(LLDrawable::EARLY_MOVE)) { @@ -1977,7 +1978,7 @@ void LLPipeline::markVisible(LLDrawable *drawablep, LLCamera& camera) if (root && root->getParent() && root->getVObj() && root->getVObj()->isAttachment()) { LLVOAvatar* av = root->getParent()->getVObj()->asAvatar(); - if (av->isImpostor()) + if (av && av->isImpostor()) { return; } diff --git a/indra/newview/skins/default/colors.xml b/indra/newview/skins/default/colors.xml index b33d4f73a4..45050de044 100644 --- a/indra/newview/skins/default/colors.xml +++ b/indra/newview/skins/default/colors.xml @@ -286,6 +286,9 @@ name="ColorPaletteEntry32" reference="White" /> <color + name="ComboListBgColor" + reference="DkGray" /> + <color name="ConsoleBackground" reference="Black" /> <color diff --git a/indra/newview/skins/default/textures/icons/Inv_Shoe.png b/indra/newview/skins/default/textures/icons/Inv_Shoe.png Binary files differindex 51e1c7bbb7..1f52b0a6b6 100644 --- a/indra/newview/skins/default/textures/icons/Inv_Shoe.png +++ b/indra/newview/skins/default/textures/icons/Inv_Shoe.png diff --git a/indra/newview/skins/default/textures/icons/object_icon.png b/indra/newview/skins/default/textures/icons/object_icon.png Binary files differnew file mode 100644 index 0000000000..223874e631 --- /dev/null +++ b/indra/newview/skins/default/textures/icons/object_icon.png diff --git a/indra/newview/skins/default/textures/textures.xml b/indra/newview/skins/default/textures/textures.xml index b8131b2de9..9984cfcf5d 100644 --- a/indra/newview/skins/default/textures/textures.xml +++ b/indra/newview/skins/default/textures/textures.xml @@ -516,6 +516,7 @@ with the same filename but different name <texture name="SliderThumb_Press" file_name="widgets/SliderThumb_Press.png" /> <texture name="SL_Logo" file_name="icons/SL_Logo.png" preload="true" /> + <texture name="OBJECT_Icon" file_name="icons/object_icon.png" preload="true" /> <texture name="Snapshot_Off" file_name="bottomtray/Snapshot_Off.png" preload="true" scale.left="4" scale.top="19" scale.right="22" scale.bottom="4" /> <texture name="Snapshot_Over" file_name="bottomtray/Snapshot_Over.png" preload="false" /> @@ -633,8 +634,8 @@ with the same filename but different name <texture name="Unread_Msg" file_name="bottomtray/Unread_Msg.png" preload="false" /> <texture name="Unread_IM" file_name="bottomtray/Unread_IM.png" preload="false" /> - <texture name="WellButton_Lit" file_name="bottomtray/WellButton_Lit.png" preload="true" scale.left="4" scale.top="19" scale.right="28" scale.bottom="4" /> - <texture name="WellButton_Lit_Selected" file_name="bottomtray/WellButton_Lit_Selected.png" preload="true" scale.left="4" scale.top="19" scale.right="28" scale.bottom="4" /> + <texture name="Volume_Background" file_name="windows/Volume_Background.png" preload="false" + scale.left="6" scale.top="33" scale.right="63" scale.bottom="10" /> <texture name="VoicePTT_Lvl1" file_name="bottomtray/VoicePTT_Lvl1.png" preload="false" /> <texture name="VoicePTT_Lvl2" file_name="bottomtray/VoicePTT_Lvl2.png" preload="false" /> @@ -642,6 +643,9 @@ with the same filename but different name <texture name="VoicePTT_Off" file_name="bottomtray/VoicePTT_Off.png" preload="false" /> <texture name="VoicePTT_On" file_name="bottomtray/VoicePTT_On.png" preload="false" /> + <texture name="WellButton_Lit" file_name="bottomtray/WellButton_Lit.png" preload="true" scale.left="4" scale.top="19" scale.right="28" scale.bottom="4" /> + <texture name="WellButton_Lit_Selected" file_name="bottomtray/WellButton_Lit_Selected.png" preload="true" scale.left="4" scale.top="19" scale.right="28" scale.bottom="4" /> + <texture name="WebBasedMediaBackground" file_name="windows/WebBasedMediaBackground.png" preload="false" /> <texture name="Widget_DownArrow" file_name="icons/Widget_DownArrow.png" preload="true" /> diff --git a/indra/newview/skins/default/textures/windows/Flyout_Pointer_Up.png b/indra/newview/skins/default/textures/windows/Flyout_Pointer_Up.png Binary files differnew file mode 100644 index 0000000000..361fab59e0 --- /dev/null +++ b/indra/newview/skins/default/textures/windows/Flyout_Pointer_Up.png diff --git a/indra/newview/skins/default/textures/windows/Volume_Background.png b/indra/newview/skins/default/textures/windows/Volume_Background.png Binary files differnew file mode 100644 index 0000000000..43aaa441f5 --- /dev/null +++ b/indra/newview/skins/default/textures/windows/Volume_Background.png diff --git a/indra/newview/skins/default/xui/de/floater_about.xml b/indra/newview/skins/default/xui/de/floater_about.xml index 5f3762c224..c19f98516d 100644 --- a/indra/newview/skins/default/xui/de/floater_about.xml +++ b/indra/newview/skins/default/xui/de/floater_about.xml @@ -8,7 +8,7 @@ Kompiliert mit [COMPILER] version [COMPILER_VERSION] </floater.string> <floater.string name="AboutPosition"> - Sie befinden sich in [POSITION_0,number,1], [POSITION_1,number,1], [POSITION_2,number,1] in [REGION] auf [HOSTNAME] ([HOSTIP]) + Sie befinden sich in [POSITION_0,number,1], [POSITION_1,number,1], [POSITION_2,number,1] in [REGION] auf <nolink>[HOSTNAME]</nolink> ([HOSTIP]) [SERVER_VERSION] [[SERVER_RELEASE_NOTES_URL] [ReleaseNotes]] </floater.string> diff --git a/indra/newview/skins/default/xui/de/floater_about_land.xml b/indra/newview/skins/default/xui/de/floater_about_land.xml index aec1179901..05e2d4d754 100644 --- a/indra/newview/skins/default/xui/de/floater_about_land.xml +++ b/indra/newview/skins/default/xui/de/floater_about_land.xml @@ -12,7 +12,7 @@ <floater.string name="Remaining"> Restzeit </floater.string> - <tab_container name="landtab" width="489" tab_min_width="40"> + <tab_container name="landtab" tab_min_width="40" width="489"> <panel label="ALLGEMEIN" name="land_general_panel"> <panel.string name="new users only"> Nur neue Benutzer @@ -101,7 +101,7 @@ <text name="For sale to"> Zum Verkauf an: [BUYER] </text> - <text name="Sell with landowners objects in parcel." left_delta="-50" width="240"> + <text left_delta="-50" name="Sell with landowners objects in parcel." width="240"> Objekte sind im Verkauf eingeschlossen </text> <text name="Selling with no objects in parcel." width="260"> @@ -368,7 +368,7 @@ Nur große Parzellen können in der Suche aufgeführt werden. <text name="landing_point"> Landepunkt: [LANDING] </text> - <button label="Festlegen" label_selected="Festlegen" left="234" right="-88" name="Set" tool_tip="Legt den Landepunkt fest, an dem Besucher ankommen. Legt die Position Ihres Avatars innerhalb dieser Parzelle fest." width="70"/> + <button label="Festlegen" label_selected="Festlegen" left="234" name="Set" right="-88" tool_tip="Legt den Landepunkt fest, an dem Besucher ankommen. Legt die Position Ihres Avatars innerhalb dieser Parzelle fest." width="70"/> <button label="Löschen" label_selected="Löschen" left="312" name="Clear" tool_tip="Landepunkt löschen" width="70"/> <text name="Teleport Routing: "> Teleport-Route: @@ -422,6 +422,7 @@ Nur große Parzellen können in der Suche aufgeführt werden. <text name="MusicURL:"> Musik-URL: </text> + <check_box label="URL ausblenden" name="hide_music_url" tool_tip="Aktivieren Sie diese Option, wenn Sie nicht möchten, dass unautorisierte Personen die Musik-URL sehen können"/> <text name="Sound:"> Sound: </text> @@ -431,7 +432,7 @@ Nur große Parzellen können in der Suche aufgeführt werden. </text> <check_box label="Voice aktivieren" name="parcel_enable_voice_channel"/> <check_box label="Voice aktivieren (vom Grundstück eingerichtet)" name="parcel_enable_voice_channel_is_estate_disabled"/> - <check_box label="Voice auf diese Parzelle beschränken" name="parcel_enable_voice_channel_parcel"/> + <check_box label="Voice auf diese Parzelle beschränken" name="parcel_enable_voice_channel_local"/> </panel> <panel label="ZUGANG" name="land_access_panel"> <panel.string name="access_estate_defined"> diff --git a/indra/newview/skins/default/xui/de/floater_animation_preview.xml b/indra/newview/skins/default/xui/de/floater_animation_preview.xml index be573b524f..0d55ea7413 100644 --- a/indra/newview/skins/default/xui/de/floater_animation_preview.xml +++ b/indra/newview/skins/default/xui/de/floater_animation_preview.xml @@ -106,6 +106,9 @@ Maximal erlaubt sind [MAX_LENGTH] Sekunden. <floater.string name="E_ST_NO_XLT_EMOTE"> Emote-Name kann nicht gelesen werden. </floater.string> + <floater.string name="E_ST_BAD_ROOT"> + Falscher Root-Joint-Name, "hip" verwenden. + </floater.string> <text name="name_label"> Name: </text> @@ -181,5 +184,5 @@ Maximal erlaubt sind [MAX_LENGTH] Sekunden. Wir empfehlen exportierte BVH-Dateien aus Poser 4. </text> <button label="Hochladen ([AMOUNT] L$)" name="ok_btn" width="160"/> - <button label="Abbrechen" name="cancel_btn" left="180" width="88"/> + <button label="Abbrechen" left="180" name="cancel_btn" width="88"/> </floater> diff --git a/indra/newview/skins/default/xui/de/floater_customize.xml b/indra/newview/skins/default/xui/de/floater_customize.xml index a2bf45852a..b1e9ef6f19 100644 --- a/indra/newview/skins/default/xui/de/floater_customize.xml +++ b/indra/newview/skins/default/xui/de/floater_customize.xml @@ -156,8 +156,8 @@ <panel label="Hemd" name="Shirt"> <texture_picker label="Stoff" name="Fabric" tool_tip="Klicken Sie hier, um ein Bild auszuwählen"/> <color_swatch label="Farbe/Ton" name="Color/Tint" tool_tip="Klicken Sie hier, um die Farbauswahl zu öffnen"/> - <button label="Neues Hemd" label_selected="Neues Hemd" name="Create New"/> <button font="SansSerifSmall" label="Ausziehen" label_selected="Ausziehen" name="Take Off"/> + <button label="Neues Hemd" label_selected="Neues Hemd" name="Create New"/> <button font="SansSerifSmall" label="Speichern" label_selected="Speichern" left="107" name="Save"/> <button font="SansSerifSmall" label="Speichern unter..." label_selected="Speichern unter..." left="194" name="Save As" width="105"/> <button font="SansSerifSmall" label="Zurücksetzen" label_selected="Zurücksetzen" name="Revert"/> @@ -189,8 +189,8 @@ <panel label="Hose" name="Pants"> <texture_picker label="Stoff" name="Fabric" tool_tip="Klicken Sie hier, um ein Bild auszuwählen"/> <color_swatch label="Farbe/Ton" name="Color/Tint" tool_tip="Klicken Sie hier, um die Farbauswahl zu öffnen"/> - <button label="Neue Hose" label_selected="Neue Hose" name="Create New"/> <button font="SansSerifSmall" label="Ausziehen" label_selected="Ausziehen" name="Take Off"/> + <button label="Neue Hose" label_selected="Neue Hose" name="Create New"/> <button font="SansSerifSmall" label="Speichern" label_selected="Speichern" left="107" name="Save"/> <button font="SansSerifSmall" label="Speichern unter..." label_selected="Speichern unter..." left="194" name="Save As" width="105"/> <button font="SansSerifSmall" label="Zurücksetzen" label_selected="Zurücksetzen" name="Revert"/> @@ -238,6 +238,7 @@ <text name="not worn instructions"> Ziehen Sie neue Schuhe aus dem Inventar auf Ihren Avatar, um diese anzuziehen. Sie können aber auch eine neue erstellen und diese anlegen. </text> + <button label="Neue Schuhe" label_selected="Neue Schuhe" name="Create New"/> <text name="no modify instructions"> Sie sind nicht berechtigt, diese Kleidung zu bearbeiten. </text> @@ -246,7 +247,6 @@ </text> <texture_picker label="Stoff" name="Fabric" tool_tip="Klicken Sie hier, um ein Bild auszuwählen"/> <color_swatch label="Farbe/Ton" name="Color/Tint" tool_tip="Klicken Sie hier, um die Farbauswahl zu öffnen"/> - <button label="Neue Schuhe" label_selected="Neue Schuhe" name="Create New"/> <button font="SansSerifSmall" label="Ausziehen" label_selected="Ausziehen" name="Take Off"/> <button font="SansSerifSmall" label="Speichern" label_selected="Speichern" left="107" name="Save"/> <button font="SansSerifSmall" label="Speichern unter..." label_selected="Speichern unter..." left="194" name="Save As" width="105"/> @@ -271,6 +271,7 @@ <text name="not worn instructions"> Ziehen Sie neue Strümpfe aus dem Inventar auf Ihren Avatar, um diese anzuziehen. Sie können aber auch eine neue erstellen und diese anlegen. </text> + <button label="Neue Socken" label_selected="Neue Socken" name="Create New"/> <text name="no modify instructions"> Sie sind nicht berechtigt, diese Kleidung zu bearbeiten. </text> @@ -279,7 +280,6 @@ </text> <texture_picker label="Stoff" name="Fabric" tool_tip="Klicken Sie hier, um ein Bild auszuwählen"/> <color_swatch label="Farbe/Ton" name="Color/Tint" tool_tip="Klicken Sie hier, um die Farbauswahl zu öffnen"/> - <button label="Neue Socken" label_selected="Neue Socken" name="Create New"/> <button font="SansSerifSmall" label="Ausziehen" label_selected="Ausziehen" name="Take Off"/> <button font="SansSerifSmall" label="Speichern" label_selected="Speichern" left="107" name="Save"/> <button font="SansSerifSmall" label="Speichern unter..." label_selected="Speichern unter..." left="194" name="Save As" width="105"/> @@ -304,6 +304,7 @@ <text name="not worn instructions"> Ziehen Sie eine neue Jacke aus dem Inventar auf Ihren Avatar, um diese anzuziehen. Sie können aber auch eine neue erstellen und diese anlegen. </text> + <button label="Neue Jacke" label_selected="Neue Jacke" name="Create New"/> <text name="no modify instructions"> Sie sind nicht berechtigt, diese Kleidung zu bearbeiten. </text> @@ -313,7 +314,6 @@ <texture_picker label="Oberstoff" name="Upper Fabric" tool_tip="Klicken Sie hier, um ein Bild auszuwählen"/> <texture_picker label="Unterstoff" name="Lower Fabric" tool_tip="Klicken Sie hier, um ein Bild auszuwählen"/> <color_swatch label="Farbe/Ton" name="Color/Tint" tool_tip="Klicken Sie hier, um die Farbauswahl zu öffnen"/> - <button label="Neue Jacke" label_selected="Neue Jacke" name="Create New"/> <button font="SansSerifSmall" label="Ausziehen" label_selected="Ausziehen" name="Take Off"/> <button font="SansSerifSmall" label="Speichern" label_selected="Speichern" left="107" name="Save"/> <button font="SansSerifSmall" label="Speichern unter..." label_selected="Speichern unter..." left="194" name="Save As" width="105"/> @@ -338,6 +338,7 @@ <text name="not worn instructions"> Ziehen Sie neue Handschuhe aus dem Inventar auf Ihren Avatar, um diese anzuziehen. Sie können aber auch eine neue erstellen und diese anlegen. </text> + <button label="Neue Handschuhe" label_selected="Neue Handschuhe" name="Create New"/> <text name="no modify instructions"> Sie sind nicht berechtigt, diese Kleidung zu bearbeiten. </text> @@ -346,7 +347,6 @@ </text> <texture_picker label="Stoff" name="Fabric" tool_tip="Klicken Sie hier, um ein Bild auszuwählen"/> <color_swatch label="Farbe/Ton" name="Color/Tint" tool_tip="Klicken Sie hier, um die Farbauswahl zu öffnen"/> - <button label="Neue Handschuhe" label_selected="Neue Handschuhe" name="Create New"/> <button font="SansSerifSmall" label="Ausziehen" label_selected="Ausziehen" name="Take Off"/> <button font="SansSerifSmall" label="Speichern" label_selected="Speichern" left="107" name="Save"/> <button font="SansSerifSmall" label="Speichern unter..." label_selected="Speichern unter..." left="194" name="Save As" width="105"/> @@ -371,6 +371,7 @@ <text name="not worn instructions"> Ziehen Sie ein neues Unterhemd aus dem Inventar auf Ihren Avatar, um dieses anzuziehen. Sie können aber auch eine neue erstellen und diese anlegen. </text> + <button label="Neues Unterhemd" label_selected="Neues Unterhemd" name="Create New"/> <text name="no modify instructions"> Sie sind nicht berechtigt, diese Kleidung zu bearbeiten. </text> @@ -379,7 +380,6 @@ </text> <texture_picker label="Stoff" name="Fabric" tool_tip="Klicken Sie hier, um ein Bild auszuwählen"/> <color_swatch label="Farbe/Ton" name="Color/Tint" tool_tip="Klicken Sie hier, um die Farbauswahl zu öffnen"/> - <button label="Neues Unterhemd" label_selected="Neues Unterhemd" name="Create New"/> <button font="SansSerifSmall" label="Ausziehen" label_selected="Ausziehen" name="Take Off"/> <button font="SansSerifSmall" label="Speichern" label_selected="Speichern" left="107" name="Save"/> <button font="SansSerifSmall" label="Speichern unter..." label_selected="Speichern unter..." left="194" name="Save As" width="105"/> @@ -404,6 +404,7 @@ <text name="not worn instructions"> Ziehen Sie eine neue Unterhose aus dem Inventar auf Ihren Avatar, um diese anzuziehen. Sie können aber auch eine neue erstellen und diese anlegen. </text> + <button label="Neue Unterhose" label_selected="Neue Unterhose" name="Create New"/> <text name="no modify instructions"> Sie sind nicht berechtigt, diese Kleidung zu bearbeiten. </text> @@ -412,7 +413,6 @@ </text> <texture_picker label="Stoff" name="Fabric" tool_tip="Klicken Sie hier, um ein Bild auszuwählen"/> <color_swatch label="Farbe/Ton" name="Color/Tint" tool_tip="Klicken Sie hier, um die Farbauswahl zu öffnen"/> - <button label="Neue Unterhose" label_selected="Neue Unterhose" name="Create New"/> <button font="SansSerifSmall" label="Ausziehen" label_selected="Ausziehen" name="Take Off"/> <button font="SansSerifSmall" label="Speichern" label_selected="Speichern" left="107" name="Save"/> <button font="SansSerifSmall" label="Speichern unter..." label_selected="Speichern unter..." left="194" name="Save As" width="105"/> @@ -437,6 +437,7 @@ <text name="not worn instructions"> Ziehen Sie einen neuen Rock aus dem Inventar auf Ihren Avatar, um diesen anzuziehen. Sie können aber auch eine neue erstellen und diese anlegen. </text> + <button label="Neuer Rock" label_selected="Neuer Rock" name="Create New"/> <text name="no modify instructions"> Sie sind nicht berechtigt, diese Kleidung zu bearbeiten. </text> @@ -445,13 +446,12 @@ </text> <texture_picker label="Stoff" name="Fabric" tool_tip="Klicken Sie hier, um ein Bild auszuwählen"/> <color_swatch label="Farbe/Ton" name="Color/Tint" tool_tip="Klicken Sie hier, um die Farbauswahl zu öffnen"/> - <button label="Neuer Rock" label_selected="Neuer Rock" name="Create New"/> <button font="SansSerifSmall" label="Ausziehen" label_selected="Ausziehen" name="Take Off"/> <button font="SansSerifSmall" label="Speichern" label_selected="Speichern" left="107" name="Save"/> <button font="SansSerifSmall" label="Speichern unter..." label_selected="Speichern unter..." left="194" name="Save As" width="105"/> <button font="SansSerifSmall" label="Zurücksetzen" label_selected="Zurücksetzen" name="Revert"/> </panel> - <panel label="Alpha" name="Alpha"> + <panel label="Tätowierung" name="Tattoo"> <text name="title"> [BESCHR] </text> @@ -468,26 +468,24 @@ Befindet sich in [PATH] </text> <text name="not worn instructions"> - Sie können eine neue Alpha-Maske anlegen, indem Sie eine von Ihrem Inventar auf Ihren Avatar ziehen. Sie können aber auch eine neue erstellen und diese anlegen. + Ziehen Sie eine neue Tätowierung aus dem Inventar auf Ihren Avatar, um diese anzulegen. Sie können aber auch eine neue erstellen und diese anlegen. </text> + <button label="Neue Tätowierung erstellen" label_selected="Neue Tätowierung erstellen" name="Create New"/> <text name="no modify instructions"> Sie sind nicht berechtigt, diese Kleidung zu bearbeiten. </text> <text name="Item Action Label"> - Alpha: + Tätowierung: </text> - <texture_picker label="Alpha: Unten" name="Lower Alpha" tool_tip="Zum Auswählen eines Bildes hier klicken"/> - <texture_picker label="Alpha: Oben" name="Upper Alpha" tool_tip="Zum Auswählen eines Bildes hier klicken"/> - <texture_picker label="Kopf: Alpha" name="Head Alpha" tool_tip="Zum Auswählen eines Bildes hier klicken"/> - <texture_picker label="Alpha: Augen" name="Eye Alpha" tool_tip="Zum Auswählen eines Bildes hier klicken"/> - <texture_picker label="Alpha: Haare" name="Hair Alpha" tool_tip="Zum Auswählen eines Bildes hier klicken"/> - <button label="Neue Alpha erstellen" label_selected="Neue Alpha erstellen" name="Create New"/> + <texture_picker label="Kopftattoo" name="Head Tattoo" tool_tip="Zum Auswählen eines Bildes hier klicken"/> + <texture_picker label="Obere Tattoos" name="Upper Tattoo" tool_tip="Zum Auswählen eines Bildes hier klicken"/> + <texture_picker label="Untere Tattoos" name="Lower Tattoo" tool_tip="Zum Auswählen eines Bildes hier klicken"/> <button label="Ausziehen" label_selected="Ausziehen" name="Take Off"/> <button label="Speichern" label_selected="Speichern" name="Save"/> <button label="Speichern unter..." label_selected="Speichern unter..." name="Save As"/> <button label="Zurücksetzen" label_selected="Zurücksetzen" name="Revert"/> </panel> - <panel label="Tätowierung" name="Tattoo"> + <panel label="Alpha" name="Alpha"> <text name="title"> [BESCHR] </text> @@ -504,25 +502,27 @@ Befindet sich in [PATH] </text> <text name="not worn instructions"> - Ziehen Sie eine neue Tätowierung aus dem Inventar auf Ihren Avatar, um diese anzulegen. Sie können aber auch eine neue erstellen und diese anlegen. + Sie können eine neue Alpha-Maske anlegen, indem Sie eine von Ihrem Inventar auf Ihren Avatar ziehen. Sie können aber auch eine neue erstellen und diese anlegen. </text> + <button label="Neue Alpha erstellen" label_selected="Neue Alpha erstellen" name="Create New"/> <text name="no modify instructions"> Sie sind nicht berechtigt, diese Kleidung zu bearbeiten. </text> <text name="Item Action Label"> - Tätowierung: + Alpha: </text> - <texture_picker label="Kopftattoo" name="Head Tattoo" tool_tip="Zum Auswählen eines Bildes hier klicken"/> - <texture_picker label="Obere Tattoos" name="Upper Tattoo" tool_tip="Zum Auswählen eines Bildes hier klicken"/> - <texture_picker label="Untere Tattoos" name="Lower Tattoo" tool_tip="Zum Auswählen eines Bildes hier klicken"/> - <button label="Neue Tätowierung erstellen" label_selected="Neue Tätowierung erstellen" name="Create New"/> + <texture_picker label="Alpha: Unten" name="Lower Alpha" tool_tip="Zum Auswählen eines Bildes hier klicken"/> + <texture_picker label="Alpha: Oben" name="Upper Alpha" tool_tip="Zum Auswählen eines Bildes hier klicken"/> + <texture_picker label="Kopf: Alpha" name="Head Alpha" tool_tip="Zum Auswählen eines Bildes hier klicken"/> + <texture_picker label="Alpha: Augen" name="Eye Alpha" tool_tip="Zum Auswählen eines Bildes hier klicken"/> + <texture_picker label="Alpha: Haare" name="Hair Alpha" tool_tip="Zum Auswählen eines Bildes hier klicken"/> <button label="Ausziehen" label_selected="Ausziehen" name="Take Off"/> <button label="Speichern" label_selected="Speichern" name="Save"/> <button label="Speichern unter..." label_selected="Speichern unter..." name="Save As"/> <button label="Zurücksetzen" label_selected="Zurücksetzen" name="Revert"/> </panel> </tab_container> - <button label="Skriptinfo" label_selected="Skriptinfo" name="script_info"/> + <button label="Skriptinfo" label_selected="Skriptinfo" name="script_info" tool_tip="Skripts, die an Ihren Avatar angehängt sind, anzeigen"/> <button label="Outfit erstellen" label_selected="Outfit erstellen" name="make_outfit_btn"/> <button label="Abbrechen" label_selected="Abbrechen" name="Cancel"/> <button label="OK" label_selected="OK" name="Ok"/> diff --git a/indra/newview/skins/default/xui/de/floater_help_browser.xml b/indra/newview/skins/default/xui/de/floater_help_browser.xml index bfefa57731..d55a3b0a26 100644 --- a/indra/newview/skins/default/xui/de/floater_help_browser.xml +++ b/indra/newview/skins/default/xui/de/floater_help_browser.xml @@ -1,14 +1,9 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="floater_help_browser" title="HILFE-BROWSER"> - <floater.string name="home_page_url"> - http://de.secondlife.com - </floater.string> - <floater.string name="support_page_url"> - http://de.secondlife.com/support + <floater.string name="loading_text"> + Wird geladen... </floater.string> <layout_stack name="stack1"> - <layout_panel name="external_controls"> - <button label="In meinem Browser öffnen" name="open_browser"/> - </layout_panel> + <layout_panel name="external_controls"/> </layout_stack> </floater> diff --git a/indra/newview/skins/default/xui/de/floater_inventory.xml b/indra/newview/skins/default/xui/de/floater_inventory.xml index d9014fc0ef..d9b7c30fd2 100644 --- a/indra/newview/skins/default/xui/de/floater_inventory.xml +++ b/indra/newview/skins/default/xui/de/floater_inventory.xml @@ -1,13 +1,13 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> -<floater name="Inventory" title="INVENTAR"> +<floater name="Inventory" title="MEIN INVENTAR"> <floater.string name="Title"> - Inventar + MEIN INVENTAR </floater.string> <floater.string name="TitleFetching"> - Inventar ([ITEM_COUNT] Artikel werden abgerufen...) [FILTER] + MEIN INVENTAR ([ITEM_COUNT] Objekte werden abgerufen...) [FILTER] </floater.string> <floater.string name="TitleCompleted"> - Inventar ([ITEM_COUNT] Artikel) [FILTER] + MEIN INVENTAR ([ITEM_COUNT] Objekte) [FILTER] </floater.string> <floater.string name="Fetched"> Abgerufen diff --git a/indra/newview/skins/default/xui/de/floater_live_lsleditor.xml b/indra/newview/skins/default/xui/de/floater_live_lsleditor.xml index 248460af82..3b42a8b741 100644 --- a/indra/newview/skins/default/xui/de/floater_live_lsleditor.xml +++ b/indra/newview/skins/default/xui/de/floater_live_lsleditor.xml @@ -7,7 +7,7 @@ Läuft </floater.string> <floater.string name="Title"> - Skript: [NAME] + SKRIPT: [NAME] </floater.string> <button label="Zurücksetzen" label_selected="Zurücksetzen" name="Reset"/> <check_box initial_value="true" label="Läuft" name="running"/> diff --git a/indra/newview/skins/default/xui/de/floater_map.xml b/indra/newview/skins/default/xui/de/floater_map.xml index b985d1d187..a9a3149177 100644 --- a/indra/newview/skins/default/xui/de/floater_map.xml +++ b/indra/newview/skins/default/xui/de/floater_map.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> -<floater name="Map"> +<floater name="Map" title="Minikarte"> <floater.string name="mini_map_north"> N </floater.string> diff --git a/indra/newview/skins/default/xui/de/floater_outfit_save_as.xml b/indra/newview/skins/default/xui/de/floater_outfit_save_as.xml index 42cb91ccbb..89af08096e 100644 --- a/indra/newview/skins/default/xui/de/floater_outfit_save_as.xml +++ b/indra/newview/skins/default/xui/de/floater_outfit_save_as.xml @@ -3,9 +3,10 @@ <button label="Speichern" label_selected="Speichern" name="Save"/> <button label="Abbrechen" label_selected="Abbrechen" name="Cancel"/> <text name="Save item as:"> - Outfit speichern als: + Meine aktuelle Kleidung +als neues Outfit speichern: </text> <line_editor name="name ed"> - [BESCHR] + [DESC] (neu) </line_editor> </floater> diff --git a/indra/newview/skins/default/xui/de/floater_outgoing_call.xml b/indra/newview/skins/default/xui/de/floater_outgoing_call.xml index 99ef0e900e..17467d4891 100644 --- a/indra/newview/skins/default/xui/de/floater_outgoing_call.xml +++ b/indra/newview/skins/default/xui/de/floater_outgoing_call.xml @@ -25,10 +25,10 @@ Der Anruf wurde nicht entgegengenommen. Bitte versuchen Sie es später erneut. </text> <text name="nearby"> - Die Verbindung zu [VOICE_CHANNEL_NAME] wurde abgebrochen. Sie werden nun wieder mit dem Chat in Ihrer Nähe verbunden. + Die Verbindung zu [VOICE_CHANNEL_NAME] wurde abgebrochen. [RECONNECT_NEARBY] </text> <text name="nearby_P2P"> - [VOICE_CHANNEL_NAME] hat den Anruf beendet. Sie werden nun wieder mit dem Chat in Ihrer Nähe verbunden. + [VOICE_CHANNEL_NAME] hat den Anruf beendet. [RECONNECT_NEARBY] </text> <text name="leaving"> [CURRENT_CHAT] wird verlassen. diff --git a/indra/newview/skins/default/xui/de/floater_pay.xml b/indra/newview/skins/default/xui/de/floater_pay.xml index 6eb1d9472d..fb89eeb600 100644 --- a/indra/newview/skins/default/xui/de/floater_pay.xml +++ b/indra/newview/skins/default/xui/de/floater_pay.xml @@ -7,7 +7,7 @@ Einwohner bezahlen </string> <text name="payee_label" width="130"> - Zahlen: + Bezahlen: </text> <icon name="icon_person" tool_tip="Person"/> <text left="130" name="payee_name"> @@ -20,6 +20,6 @@ <text name="amount text"> Oder Betrag auswählen: </text> - <button label="Zahlen" label_selected="Zahlen" name="pay btn"/> + <button label="Bezahlen" label_selected="Bezahlen" name="pay btn"/> <button label="Abbrechen" label_selected="Abbrechen" name="cancel btn"/> </floater> diff --git a/indra/newview/skins/default/xui/de/floater_pay_object.xml b/indra/newview/skins/default/xui/de/floater_pay_object.xml index bc714361cc..ff85efad50 100644 --- a/indra/newview/skins/default/xui/de/floater_pay_object.xml +++ b/indra/newview/skins/default/xui/de/floater_pay_object.xml @@ -24,6 +24,6 @@ <text name="amount text"> Oder Betrag auswählen: </text> - <button label="Zahlen" label_selected="Zahlen" name="pay btn"/> + <button label="Bezahlen" label_selected="Bezahlen" name="pay btn"/> <button label="Abbrechen" label_selected="Abbrechen" name="cancel btn" width="76"/> </floater> diff --git a/indra/newview/skins/default/xui/de/floater_preferences.xml b/indra/newview/skins/default/xui/de/floater_preferences.xml index 106fd6dfd3..ca1d58279f 100644 --- a/indra/newview/skins/default/xui/de/floater_preferences.xml +++ b/indra/newview/skins/default/xui/de/floater_preferences.xml @@ -8,8 +8,8 @@ <panel label="Privatsphäre" name="im"/> <panel label="Sound" name="audio"/> <panel label="Chat" name="chat"/> - <panel label="Benachrichtigungen" name="msgs"/> - <panel label="Setup" name="input"/> + <panel label="Meldungen" name="msgs"/> + <panel label="Konfiguration" name="input"/> <panel label="Erweitert" name="advanced1"/> </tab_container> </floater> diff --git a/indra/newview/skins/default/xui/de/floater_preview_animation.xml b/indra/newview/skins/default/xui/de/floater_preview_animation.xml index b2e9c2e66d..3dcdb52555 100644 --- a/indra/newview/skins/default/xui/de/floater_preview_animation.xml +++ b/indra/newview/skins/default/xui/de/floater_preview_animation.xml @@ -7,6 +7,6 @@ Beschreibung: </text> <line_editor left="108" name="desc" width="160"/> - <button label="In Welt abspielen" label_selected="Stopp" name="Anim play btn" tool_tip="Diese Animation so wiedergeben, dass andere sie sehen können." width="116"/> - <button label="Lokal wiedergeben" label_selected="Stopp" left="171" name="Anim audition btn" tool_tip="Diese Animation so wiedergeben, dass nur Sie sie sehen." width="116"/> + <button label="Inworld abspielen" label_selected="Stopp" name="Anim play btn" tool_tip="Diese Animation so wiedergeben, dass andere sie sehen können." width="116"/> + <button label="Lokal abspielen" label_selected="Stopp" left="171" name="Anim audition btn" tool_tip="Diese Animation so wiedergeben, dass nur Sie sie sehen." width="116"/> </floater> diff --git a/indra/newview/skins/default/xui/de/floater_preview_sound.xml b/indra/newview/skins/default/xui/de/floater_preview_sound.xml index 17419548bc..4629ec4a04 100644 --- a/indra/newview/skins/default/xui/de/floater_preview_sound.xml +++ b/indra/newview/skins/default/xui/de/floater_preview_sound.xml @@ -6,6 +6,6 @@ <text name="desc txt"> Beschreibung: </text> - <button label="In Welt abspielen" label_selected="In Welt abspielen" name="Sound play btn" tool_tip="Gibt diesen Sound so wieder, dass andere ihn hören können."/> - <button label="Lokal wiedergeben" label_selected="Lokal wiedergeben" name="Sound audition btn" tool_tip="Gibt diesen Sound so wieder, dass nur Sie ihn hören."/> + <button label="Inworld abspielen" label_selected="Inworld abspielen" name="Sound play btn" tool_tip="Gibt diesen Sound so wieder, dass andere ihn hören können."/> + <button label="Lokal abspielen" label_selected="Lokal abspielen" name="Sound audition btn" tool_tip="Gibt diesen Sound so wieder, dass nur Sie ihn hören."/> </floater> diff --git a/indra/newview/skins/default/xui/de/floater_report_abuse.xml b/indra/newview/skins/default/xui/de/floater_report_abuse.xml index f471866967..02be3b3ed9 100644 --- a/indra/newview/skins/default/xui/de/floater_report_abuse.xml +++ b/indra/newview/skins/default/xui/de/floater_report_abuse.xml @@ -94,7 +94,7 @@ Objekt: Details: </text> <text name="bug_aviso"> - Bitte beschreiben Sie alles so genau wie möglich. + Detaillierte Beschreibung: </text> <text_editor bottom_delta="-136" height="70" name="details_edit"/> <text bottom_delta="-20" name="incomplete_title"> diff --git a/indra/newview/skins/default/xui/de/floater_script_preview.xml b/indra/newview/skins/default/xui/de/floater_script_preview.xml index 1ea3803aea..e0bcd42523 100644 --- a/indra/newview/skins/default/xui/de/floater_script_preview.xml +++ b/indra/newview/skins/default/xui/de/floater_script_preview.xml @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="preview lsl text" title="SKRIPT: ROTATIONS-SKRIPT"> <floater.string name="Title"> - Skript: [NAME] + SKRIPT: [NAME] </floater.string> <text name="desc txt" width="120"> Beschreibung: diff --git a/indra/newview/skins/default/xui/de/floater_sell_land.xml b/indra/newview/skins/default/xui/de/floater_sell_land.xml index a2c86e7bb0..09eae40477 100644 --- a/indra/newview/skins/default/xui/de/floater_sell_land.xml +++ b/indra/newview/skins/default/xui/de/floater_sell_land.xml @@ -21,7 +21,7 @@ 1. Preis festlegen: </text> <text name="price_text" > - Einen angemessenen Preis auswählen. + Prei angeben </text> <text name="price_ld"> L$ @@ -36,12 +36,12 @@ 2. Land verkaufen an: </text> <text bottom_delta="-16" height="16" left="72" name="sell_to_text" right="-10"> - Wählen Sie, ob der Verkauf offen oder auf eine bestimmte Person beschränkt ist. + Offener Verkauf oder Verkauf an bestimmte Person? </text> <combo_box bottom_delta="-32" height="16" left="72" name="sell_to" width="140"> <combo_box.item label="-- Auswählen --" name="--selectone--"/> - <combo_box.item label="Jeder" name="Anyone"/> - <combo_box.item label="Bestimmte Person:" name="Specificuser:"/> + <combo_box.item label="An jeden" name="Anyone"/> + <combo_box.item label="An bestimmte Person:" name="Specificuser:"/> </combo_box> <button label="Auswählen" name="sell_to_select_agent"/> <text name="sell_objects_label"> diff --git a/indra/newview/skins/default/xui/de/floater_snapshot.xml b/indra/newview/skins/default/xui/de/floater_snapshot.xml index b48c9a77c8..9ee50c7c5c 100644 --- a/indra/newview/skins/default/xui/de/floater_snapshot.xml +++ b/indra/newview/skins/default/xui/de/floater_snapshot.xml @@ -1,10 +1,10 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> -<floater name="Snapshot" title="FOTO-ANZEIGE"> +<floater name="Snapshot" title="FOTO-VORSCHAU"> <text name="type_label"> Zweck des Fotos </text> <radio_group label="Fototyp" name="snapshot_type_radio"> - <radio_item label="Email-Adresse" name="postcard"/> + <radio_item label="Emailen" name="postcard"/> <radio_item label="Mein Inventar ([AMOUNT] L$)" name="texture"/> <radio_item label="Auf meinem Computer speichern" name="local"/> </radio_group> @@ -68,7 +68,7 @@ <combo_box.item label="Tiefe" name="Depth"/> <combo_box.item label="Objektmasken" name="ObjectMattes"/> </combo_box> - <check_box label="Schnittstelle" name="ui_check"/> + <check_box label="Oberfläche" name="ui_check"/> <check_box label="HUDs" name="hud_check"/> <check_box label="Nach dem Speichern offen lassen" name="keep_open_check"/> <check_box label="Frame einfrieren (Vollbild)" name="freeze_frame_check"/> diff --git a/indra/newview/skins/default/xui/de/floater_sys_well.xml b/indra/newview/skins/default/xui/de/floater_sys_well.xml index 982786b66e..d7db97722c 100644 --- a/indra/newview/skins/default/xui/de/floater_sys_well.xml +++ b/indra/newview/skins/default/xui/de/floater_sys_well.xml @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="notification_chiclet" title="MELDUNGEN"> <string name="title_im_well_window"> - IM-SITZUNGEN + GESPRÄCHE </string> <string name="title_notification_well_window"> BENACHRICHTIGUNGEN diff --git a/indra/newview/skins/default/xui/de/floater_wearable_save_as.xml b/indra/newview/skins/default/xui/de/floater_wearable_save_as.xml index dad1b62975..f9b3552e8b 100644 --- a/indra/newview/skins/default/xui/de/floater_wearable_save_as.xml +++ b/indra/newview/skins/default/xui/de/floater_wearable_save_as.xml @@ -1,9 +1,9 @@ -<?xml version="1.0" encoding="utf-8" standalone="yes" ?> +<?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="modal container" title=" "> - <button label="Speichern" label_selected="Speichern" name="Save" /> - <button label="Abbrechen" label_selected="Abbrechen" name="Cancel" /> + <button label="Speichern" label_selected="Speichern" name="Save"/> + <button label="Abbrechen" label_selected="Abbrechen" name="Cancel"/> <text name="Save item as:"> - Objekt speichern als: + Objekt in meinem Inventar speichern als: </text> <line_editor name="name ed"> Neu [DESC] diff --git a/indra/newview/skins/default/xui/de/floater_world_map.xml b/indra/newview/skins/default/xui/de/floater_world_map.xml index accc023b8f..7d8a634452 100644 --- a/indra/newview/skins/default/xui/de/floater_world_map.xml +++ b/indra/newview/skins/default/xui/de/floater_world_map.xml @@ -62,6 +62,7 @@ </combo_box> <search_editor label="Regionen nach Name" name="location" tool_tip="Geben Sie den Namen einer Region ein"/> <button label="Suchen" name="DoSearch" tool_tip="Nach einer Region suchen"/> + <button name="Clear" tool_tip="Karte zurücksetzen"/> <scroll_list name="search_results"> <scroll_list.columns label="" name="icon"/> <scroll_list.columns label="" name="sim_name"/> diff --git a/indra/newview/skins/default/xui/de/inspect_object.xml b/indra/newview/skins/default/xui/de/inspect_object.xml index bcf4b91527..ede14a37d7 100644 --- a/indra/newview/skins/default/xui/de/inspect_object.xml +++ b/indra/newview/skins/default/xui/de/inspect_object.xml @@ -38,7 +38,7 @@ Besitzer secondlife:///app/agent/0e346d8b-4433-4d66-a6b0-fd37083abc4c/about http://www.superdupertest.com </text> <button label="Kaufen" name="buy_btn"/> - <button label="Zahlen" name="pay_btn"/> + <button label="Bezahlen" name="pay_btn"/> <button label="Kopie nehmen" name="take_free_copy_btn" width="100"/> <button label="Berühren" name="touch_btn"/> <button label="Sitzen" name="sit_btn"/> diff --git a/indra/newview/skins/default/xui/de/menu_attachment_other.xml b/indra/newview/skins/default/xui/de/menu_attachment_other.xml index 33cff066a2..d234443fae 100644 --- a/indra/newview/skins/default/xui/de/menu_attachment_other.xml +++ b/indra/newview/skins/default/xui/de/menu_attachment_other.xml @@ -12,6 +12,6 @@ <menu_item_call label="Hinauswerfen" name="Eject..."/> <menu_item_call label="Debug" name="Debug..."/> <menu_item_call label="Hineinzoomen" name="Zoom In"/> - <menu_item_call label="Zahlen" name="Pay..."/> + <menu_item_call label="Bezahlen" name="Pay..."/> <menu_item_call label="Objektprofil" name="Object Inspect"/> </context_menu> diff --git a/indra/newview/skins/default/xui/de/menu_avatar_other.xml b/indra/newview/skins/default/xui/de/menu_avatar_other.xml index 85db648119..05eade1d34 100644 --- a/indra/newview/skins/default/xui/de/menu_avatar_other.xml +++ b/indra/newview/skins/default/xui/de/menu_avatar_other.xml @@ -12,5 +12,5 @@ <menu_item_call label="Hinauswerfen" name="Eject..."/> <menu_item_call label="Debug" name="Debug..."/> <menu_item_call label="Hineinzoomen" name="Zoom In"/> - <menu_item_call label="Zahlen" name="Pay..."/> + <menu_item_call label="Bezahlen" name="Pay..."/> </context_menu> diff --git a/indra/newview/skins/default/xui/de/menu_avatar_self.xml b/indra/newview/skins/default/xui/de/menu_avatar_self.xml index 5f9856a9cb..3a116b84a2 100644 --- a/indra/newview/skins/default/xui/de/menu_avatar_self.xml +++ b/indra/newview/skins/default/xui/de/menu_avatar_self.xml @@ -1,8 +1,8 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <context_menu name="Self Pie"> <menu_item_call label="Aufstehen" name="Stand Up"/> - <context_menu label="Ausziehen >" name="Take Off >"> - <context_menu label="Kleidung >" name="Clothes >"> + <context_menu label="Ausziehen ▶" name="Take Off >"> + <context_menu label="Kleidung ▶" name="Clothes >"> <menu_item_call label="Hemd" name="Shirt"/> <menu_item_call label="Hose" name="Pants"/> <menu_item_call label="Rock" name="Skirt"/> @@ -16,8 +16,8 @@ <menu_item_call label="Alpha" name="Self Alpha"/> <menu_item_call label="Alle Kleider" name="All Clothes"/> </context_menu> - <context_menu label="HUD >" name="Object Detach HUD"/> - <context_menu label="Abnehmen >" name="Object Detach"/> + <context_menu label="HUD ▶" name="Object Detach HUD"/> + <context_menu label="Abnehmen ▶" name="Object Detach"/> <menu_item_call label="Alles abnehmen" name="Detach All"/> </context_menu> <menu_item_call label="Mein Aussehen" name="Appearance..."/> diff --git a/indra/newview/skins/default/xui/de/menu_inspect_avatar_gear.xml b/indra/newview/skins/default/xui/de/menu_inspect_avatar_gear.xml index 9b6a6b2c4a..30927ccb83 100644 --- a/indra/newview/skins/default/xui/de/menu_inspect_avatar_gear.xml +++ b/indra/newview/skins/default/xui/de/menu_inspect_avatar_gear.xml @@ -14,5 +14,5 @@ <menu_item_call label="Debug" name="debug"/> <menu_item_call label="Auf Karte anzeigen" name="find_on_map"/> <menu_item_call label="Hineinzoomen" name="zoom_in"/> - <menu_item_call label="Zahlen" name="pay"/> + <menu_item_call label="Bezahlen" name="pay"/> </menu> diff --git a/indra/newview/skins/default/xui/de/menu_inspect_object_gear.xml b/indra/newview/skins/default/xui/de/menu_inspect_object_gear.xml index 5efee8617b..634ef0b198 100644 --- a/indra/newview/skins/default/xui/de/menu_inspect_object_gear.xml +++ b/indra/newview/skins/default/xui/de/menu_inspect_object_gear.xml @@ -2,7 +2,7 @@ <menu name="Gear Menu"> <menu_item_call label="Berühren" name="touch"/> <menu_item_call label="Sitzen" name="sit"/> - <menu_item_call label="Zahlen" name="pay"/> + <menu_item_call label="Bezahlen" name="pay"/> <menu_item_call label="Kaufen" name="buy"/> <menu_item_call label="Nehmen" name="take"/> <menu_item_call label="Kopie nehmen" name="take_copy"/> diff --git a/indra/newview/skins/default/xui/de/menu_inventory.xml b/indra/newview/skins/default/xui/de/menu_inventory.xml index 77c012d045..a0625d88a8 100644 --- a/indra/newview/skins/default/xui/de/menu_inventory.xml +++ b/indra/newview/skins/default/xui/de/menu_inventory.xml @@ -2,7 +2,7 @@ <menu name="Popup"> <menu_item_call label="Kaufen" name="Task Buy"/> <menu_item_call label="Öffnen" name="Task Open"/> - <menu_item_call label="Wiedergeben/Abspielen" name="Task Play"/> + <menu_item_call label="Abspielen" name="Task Play"/> <menu_item_call label="Eigenschaften" name="Task Properties"/> <menu_item_call label="Umbenennen" name="Task Rename"/> <menu_item_call label="Löschen" name="Task Remove"/> @@ -65,8 +65,8 @@ <menu_item_call label="Konferenz-Chat starten" name="Conference Chat Folder"/> <menu_item_call label="Wiedergeben/Abspielen" name="Sound Play"/> <menu_item_call label="Landmarken-Info" name="About Landmark"/> - <menu_item_call label="In Welt abspielen" name="Animation Play"/> - <menu_item_call label="Lokal wiedergeben" name="Animation Audition"/> + <menu_item_call label="Inworld abspielen" name="Animation Play"/> + <menu_item_call label="Lokal abspielen" name="Animation Audition"/> <menu_item_call label="Instant Message senden" name="Send Instant Message"/> <menu_item_call label="Teleport anbieten..." name="Offer Teleport..."/> <menu_item_call label="Konferenz-Chat starten" name="Conference Chat"/> diff --git a/indra/newview/skins/default/xui/de/menu_object.xml b/indra/newview/skins/default/xui/de/menu_object.xml index 6f8d85ecb8..320f93c796 100644 --- a/indra/newview/skins/default/xui/de/menu_object.xml +++ b/indra/newview/skins/default/xui/de/menu_object.xml @@ -7,19 +7,19 @@ <menu_item_call label="Hier sitzen" name="Object Sit"/> <menu_item_call label="Objektprofil" name="Object Inspect"/> <menu_item_call label="Hineinzoomen" name="Zoom In"/> - <context_menu label="Anziehen >" name="Put On"> + <context_menu label="Anziehen ▶" name="Put On"> <menu_item_call label="Anziehen" name="Wear"/> - <context_menu label="Anhängen >" name="Object Attach"/> - <context_menu label="HUD anhängen >" name="Object Attach HUD"/> + <context_menu label="Anhängen ▶" name="Object Attach"/> + <context_menu label="HUD anhängen ▶" name="Object Attach HUD"/> </context_menu> - <context_menu label="Entfernen >" name="Remove"> - <menu_item_call label="Nehmen" name="Pie Object Take"/> + <context_menu label="Entfernen ▶" name="Remove"> <menu_item_call label="Missbrauch melden" name="Report Abuse..."/> <menu_item_call label="Ignorieren" name="Object Mute"/> <menu_item_call label="Zurückgeben" name="Return..."/> <menu_item_call label="Löschen" name="Delete"/> </context_menu> + <menu_item_call label="Nehmen" name="Pie Object Take"/> <menu_item_call label="Kopie nehmen" name="Take Copy"/> - <menu_item_call label="Zahlen" name="Pay..."/> + <menu_item_call label="Bezahlen" name="Pay..."/> <menu_item_call label="Kaufen" name="Buy..."/> </context_menu> diff --git a/indra/newview/skins/default/xui/de/menu_participant_list.xml b/indra/newview/skins/default/xui/de/menu_participant_list.xml index 15c957cee3..5ca4eaaa50 100644 --- a/indra/newview/skins/default/xui/de/menu_participant_list.xml +++ b/indra/newview/skins/default/xui/de/menu_participant_list.xml @@ -7,7 +7,7 @@ <menu_item_call label="IM" name="IM"/> <menu_item_call label="Anrufen" name="Call"/> <menu_item_call label="Teilen" name="Share"/> - <menu_item_call label="Zahlen" name="Pay"/> + <menu_item_call label="Bezahlen" name="Pay"/> <menu_item_check label="Voice ignorieren" name="Block/Unblock"/> <menu_item_check label="Text ignorieren" name="MuteText"/> <context_menu label="Moderator-Optionen >" name="Moderator Options"> diff --git a/indra/newview/skins/default/xui/de/menu_people_groups.xml b/indra/newview/skins/default/xui/de/menu_people_groups.xml index 87f43d27e6..76225ba241 100644 --- a/indra/newview/skins/default/xui/de/menu_people_groups.xml +++ b/indra/newview/skins/default/xui/de/menu_people_groups.xml @@ -1,6 +1,6 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <menu name="menu_group_plus"> - <menu_item_call label="Ansichts-Info" name="View Info"/> + <menu_item_call label="Info anzeigen" name="View Info"/> <menu_item_call label="Chat" name="Chat"/> <menu_item_call label="Anrufen" name="Call"/> <menu_item_call label="Aktivieren" name="Activate"/> diff --git a/indra/newview/skins/default/xui/de/menu_people_nearby.xml b/indra/newview/skins/default/xui/de/menu_people_nearby.xml index 9fa5db5fa3..5651f1097e 100644 --- a/indra/newview/skins/default/xui/de/menu_people_nearby.xml +++ b/indra/newview/skins/default/xui/de/menu_people_nearby.xml @@ -5,7 +5,7 @@ <menu_item_call label="IM" name="IM"/> <menu_item_call label="Anrufen" name="Call"/> <menu_item_call label="Teilen" name="Share"/> - <menu_item_call label="Zahlen" name="Pay"/> + <menu_item_call label="Bezahlen" name="Pay"/> <menu_item_check label="Ignorieren/Freischalten" name="Block/Unblock"/> <menu_item_call label="Teleport anbieten" name="teleport"/> </context_menu> diff --git a/indra/newview/skins/default/xui/de/menu_people_nearby_multiselect.xml b/indra/newview/skins/default/xui/de/menu_people_nearby_multiselect.xml index d572a8ca1c..f233617e4a 100644 --- a/indra/newview/skins/default/xui/de/menu_people_nearby_multiselect.xml +++ b/indra/newview/skins/default/xui/de/menu_people_nearby_multiselect.xml @@ -4,5 +4,5 @@ <menu_item_call label="IM" name="IM"/> <menu_item_call label="Anrufen" name="Call"/> <menu_item_call label="Teilen" name="Share"/> - <menu_item_call label="Zahlen" name="Pay"/> + <menu_item_call label="Bezahlen" name="Pay"/> </context_menu> diff --git a/indra/newview/skins/default/xui/de/menu_people_nearby_view_sort.xml b/indra/newview/skins/default/xui/de/menu_people_nearby_view_sort.xml index d0881ddd05..0f252ab46d 100644 --- a/indra/newview/skins/default/xui/de/menu_people_nearby_view_sort.xml +++ b/indra/newview/skins/default/xui/de/menu_people_nearby_view_sort.xml @@ -3,6 +3,6 @@ <menu_item_check label="Nach letzten Sprechern sortieren" name="sort_by_recent_speakers"/> <menu_item_check label="Nach Name sortieren" name="sort_name"/> <menu_item_check label="Nach Entfernung sortieren" name="sort_distance"/> - <menu_item_check label="Profilbilder anzeigen" name="view_icons"/> - <menu_item_call label="Zeige geblockte Einwohner & Objekte" name="show_blocked_list"/> + <menu_item_check label="Symbole für Personen anzeigen" name="view_icons"/> + <menu_item_call label="Ignorierte Einwohner & Objekte anzeigen" name="show_blocked_list"/> </menu> diff --git a/indra/newview/skins/default/xui/de/menu_people_recent_view_sort.xml b/indra/newview/skins/default/xui/de/menu_people_recent_view_sort.xml index 837983b716..1ef020f5e1 100644 --- a/indra/newview/skins/default/xui/de/menu_people_recent_view_sort.xml +++ b/indra/newview/skins/default/xui/de/menu_people_recent_view_sort.xml @@ -1,6 +1,6 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <menu name="menu_group_plus"> - <menu_item_check label="Nach aktuellesten Objekten sortieren" name="sort_most"/> + <menu_item_check label="Nach aktuellesten Sprechern sortieren" name="sort_most"/> <menu_item_check label="Nach Name sortieren" name="sort_name"/> <menu_item_check label="Symbole für Personen anzeigen" name="view_icons"/> <menu_item_call label="Ignorierte Einwohner & Objekte anzeigen" name="show_blocked_list"/> diff --git a/indra/newview/skins/default/xui/de/menu_profile_overflow.xml b/indra/newview/skins/default/xui/de/menu_profile_overflow.xml index f5cedf5464..22f983c4d0 100644 --- a/indra/newview/skins/default/xui/de/menu_profile_overflow.xml +++ b/indra/newview/skins/default/xui/de/menu_profile_overflow.xml @@ -1,7 +1,8 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <toggleable_menu name="profile_overflow_menu"> - <menu_item_call label="Zahlen" name="pay"/> + <menu_item_call label="Bezahlen" name="pay"/> <menu_item_call label="Teilen" name="share"/> + <menu_item_check label="Ignorieren/Freischalten" name="block_unblock"/> <menu_item_call label="Hinauswerfen" name="kick"/> <menu_item_call label="Einfrieren" name="freeze"/> <menu_item_call label="Auftauen" name="unfreeze"/> diff --git a/indra/newview/skins/default/xui/de/menu_viewer.xml b/indra/newview/skins/default/xui/de/menu_viewer.xml index c6bbea285f..dbccd2817c 100644 --- a/indra/newview/skins/default/xui/de/menu_viewer.xml +++ b/indra/newview/skins/default/xui/de/menu_viewer.xml @@ -22,13 +22,13 @@ <menu label="Unterhalten" name="Communicate"> <menu_item_call label="Meine Freunde" name="My Friends"/> <menu_item_call label="Meine Gruppen" name="My Groups"/> - <menu_item_check label="Lokaler Chat" name="Nearby Chat"/> + <menu_item_check label="Chat in der Nähe" name="Nearby Chat"/> <menu_item_call label="Leute in der Nähe" name="Active Speakers"/> <menu_item_check label="Medien in der Nähe" name="Nearby Media"/> </menu> <menu label="Welt" name="World"> <menu_item_check label="Minikarte" name="Mini-Map"/> - <menu_item_check label="Weltkarte" name="World Map"/> + <menu_item_check label="Karte" name="World Map"/> <menu_item_call label="Foto" name="Take Snapshot"/> <menu_item_call label="Landmarke für diesen Ort setzen" name="Create Landmark Here"/> <menu label="Ortsprofil" name="Land"> @@ -74,6 +74,7 @@ </menu> <menu_item_call label="Verknüpfung" name="Link"/> <menu_item_call label="Verknüpfung auflösen" name="Unlink"/> + <menu_item_check label="Verknüpfte Teile bearbeiten" name="Edit Linked Parts"/> <menu_item_call label="Fokus auf Auswahl" name="Focus on Selection"/> <menu_item_call label="Auf Auswahl zoomen" name="Zoom to Selection"/> <menu label="Objekt" name="Object"> @@ -90,25 +91,18 @@ <menu_item_call label="Skripts auf nicht ausführen einstellen" name="Set Scripts to Not Running"/> </menu> <menu label="Optionen" name="Options"> - <menu_item_check label="Verknüpfte Teile bearbeiten" name="Edit Linked Parts"/> <menu_item_call label="Hochlade-Berechtigungen (Standard) festlegen" name="perm prefs"/> <menu_item_check label="Erweiterte Berechtigungen anzeigen" name="DebugPermissions"/> - <menu label="Auswahl" name="Selection"> - <menu_item_check label="Nur meine Objekte auswählen" name="Select Only My Objects"/> - <menu_item_check label="Nur bewegliche Objekte auswählen" name="Select Only Movable Objects"/> - <menu_item_check label="Nach Umgebung auswählen" name="Select By Surrounding"/> - </menu> - <menu label="Anzeigen" name="Show"> - <menu_item_check label="Ausgeblendete Auswahl anzeigen" name="Show Hidden Selection"/> - <menu_item_check label="Lichtradius für Auswahl anzeigen" name="Show Light Radius for Selection"/> - <menu_item_check label="Auswahlstrahl anzeigen" name="Show Selection Beam"/> - </menu> - <menu label="Raster" name="Grid"> - <menu_item_check label="An Raster ausrichten" name="Snap to Grid"/> - <menu_item_call label="Objekt-XY an Raster ausrichten" name="Snap Object XY to Grid"/> - <menu_item_call label="Auswahl für Raster verwenden" name="Use Selection for Grid"/> - <menu_item_call label="Rasteroptionen" name="Grid Options"/> - </menu> + <menu_item_check label="Nur meine Objekte auswählen" name="Select Only My Objects"/> + <menu_item_check label="Nur bewegliche Objekte auswählen" name="Select Only Movable Objects"/> + <menu_item_check label="Nach Umgebung auswählen" name="Select By Surrounding"/> + <menu_item_check label="Ausgeblendete Auswahl anzeigen" name="Show Hidden Selection"/> + <menu_item_check label="Lichtradius für Auswahl anzeigen" name="Show Light Radius for Selection"/> + <menu_item_check label="Auswahlstrahl anzeigen" name="Show Selection Beam"/> + <menu_item_check label="An Raster ausrichten" name="Snap to Grid"/> + <menu_item_call label="Objekt-XY an Raster ausrichten" name="Snap Object XY to Grid"/> + <menu_item_call label="Auswahl für Raster verwenden" name="Use Selection for Grid"/> + <menu_item_call label="Rasteroptionen" name="Grid Options"/> </menu> <menu label="Verknüpfte Teile auswählen" name="Select Linked Parts"> <menu_item_call label="Nächstes Teil auswählen" name="Select Next Part"/> @@ -175,8 +169,8 @@ <menu_item_check label="Mehrer Threads ausführen" name="Run Multiple Threads"/> <menu_item_call label="Gruppen-Cache löschen" name="ClearGroupCache"/> <menu_item_check label="Weiche Mausbewegung" name="Mouse Smoothing"/> - <menu_item_check label="IMs in lokalem Chat anzeigen" name="IMInChat"/> <menu label="Tastaturkürzel" name="Shortcuts"> + <menu_item_call label="Bild ([COST] L$)..." name="Upload Image"/> <menu_item_check label="Suchen" name="Search"/> <menu_item_call label="Tasten freigeben" name="Release Keys"/> <menu_item_call label="UI-Größe auf Standard setzen" name="Set UI Size to Default"/> @@ -219,6 +213,7 @@ <menu_item_check label="Kamera" name="Camera"/> <menu_item_check label="Wind" name="Wind"/> <menu_item_check label="FOV" name="FOV"/> + <menu_item_check label="Gütesiegel" name="Badge"/> </menu> <menu label="Info anzeigen" name="Display Info"> <menu_item_check label="Zeit anzeigen" name="Show Time"/> diff --git a/indra/newview/skins/default/xui/de/notifications.xml b/indra/newview/skins/default/xui/de/notifications.xml index d94bbd8564..b067f9cca5 100644 --- a/indra/newview/skins/default/xui/de/notifications.xml +++ b/indra/newview/skins/default/xui/de/notifications.xml @@ -93,6 +93,10 @@ Wählen Sie ein einzelnes Objekt aus und versuchen Sie es erneut. Änderung an Kleidung/Körperteilen speichern? <usetemplate canceltext="Abbrechen" name="yesnocancelbuttons" notext="Nicht speichern" yestext="Alles speichern"/> </notification> + <notification name="FriendsAndGroupsOnly"> + Leute, die nicht auf Ihrer Freundesliste stehen, werden nicht wissen, dass Sie deren Anrufe oder Sofortnachrichten ignoriert haben. + <usetemplate name="okbutton" yestext="Ja"/> + </notification> <notification name="GrantModifyRights"> Wenn Sie einem anderen Einwohner, das die Erlaubnis zum Bearbeiten erteilen, dann kann dieser JEDES Objekt, das Sie inworld besitzen, verändern, löschen oder nehmen. Seien Sie SEHR vorsichtig, wenn Sie diese Erlaubnis gewähren! Möchten Sie [FIRST_NAME] [LAST_NAME] die Erlaubnis zum Bearbeiten gewähren? @@ -161,14 +165,16 @@ Der Rolle „[ROLE_NAME]“ diese Fähigkeit zuweisen? Möchten Sie fortfahren? <usetemplate ignoretext="Bestätigen, bevor Anhänge fallen gelassen werden" name="okcancelignore" notext="Nein" yestext="Ja"/> </notification> - <notification name="ClickUnimplemented"> - Leider ist diese Funktion noch nicht implementiert. - </notification> <notification name="JoinGroupCanAfford"> Der Beitritt zu dieser Gruppe kostet [COST] L$. Fortfahren? <usetemplate name="okcancelbuttons" notext="Abbrechen" yestext="Beitreten"/> </notification> + <notification name="JoinGroupNoCost"> + Sie treten der Gruppe [NAME] bei. +Fortfahren? + <usetemplate name="okcancelbuttons" notext="Abbrechen" yestext="Zusammenlegen"/> + </notification> <notification name="JoinGroupCannotAfford"> Der Beitritt zu dieser Gruppe kostet [COST] L$. Sie haben nicht genug L$, um dieser Gruppe beizutreten. @@ -318,7 +324,7 @@ Sie benötigen ein Benutzerkonto, um [SECOND_LIFE] betreten zu können. Möchten <notification name="AddClassified"> Anzeigen werden im Suchverzeichnis im Abschnitt „Anzeigen" und auf [http://secondlife.com/community/classifieds secondlife.com] für eine Woche angezeigt. Füllen Sie Ihre Anzeige aus und klicken Sie auf 'Veröffentlichen...', um sie zum Verzeichnis hinzuzufügen. -Sie werden gebeten, einen Preis zu bezahlen, wenn Sie auf 'Veröffentlichen' klicken. +Sie werden gebeten für die Anzeige zu bezahlen, wenn Sie auf 'Veröffentlichen' klicken. Wenn Sie mehr bezahlen, erscheint Ihre Anzeige weiter oben in der Liste, ebenso wenn ein Benutzer nach Ihren Suchbegriffen sucht. <usetemplate ignoretext="So wird eine neue Anzeige erstellt" name="okcancelignore" notext="Abbrechen" yestext="OK"/> </notification> @@ -336,6 +342,10 @@ Sind Sie sicher, dass Sie fortfahren wollen? Änderung an Anzeige [NAME] speichern? <usetemplate canceltext="Abbrechen" name="yesnocancelbuttons" notext="Nicht speichern" yestext="Speichern"/> </notification> + <notification name="ClassifiedInsufficientFunds"> + Sie haben nicht genügend Geld, um eine Anzeige zu erstellen. + <usetemplate name="okbutton" yestext="OK"/> + </notification> <notification name="DeleteAvatarPick"> Auswahl [PICK] löschen? <usetemplate name="okcancelbuttons" notext="Abbrechen" yestext="OK"/> @@ -431,18 +441,18 @@ Das Objekt ist möglicherweise außer Reichweite oder wurde gelöscht. Datei [[FILE]] kann nicht geschrieben werden </notification> <notification name="UnsupportedHardware"> - Achtung: Ihr System erfüllt nicht die Mindestanforderungen von [APP_NAME]. Dies kann eine schlechte Darstellungsleistung in [APP_NAME] zur Folge haben. Bei nicht unterstützten Systemkonfigurationen kann Ihnen unsere [SUPPORT_SITE] leider nicht helfen. + Ihr Computer entspricht leider nicht den Mindestanforderungen von [APP_NAME]. Dies kann zur Folge haben, dass das Programm nicht sehr gut ausgeführt wird. Bei nicht unterstützten Systemkonfigurationen kann Ihnen unser [SUPPORT_SITE] leider nicht helfen. MINDESTANF. -Die Seite [_URL] für weitere Informationen öffnen? +Weitere Informationen finden Sie auf [_URL]. <url name="url" option="0"> http://secondlife.com/support/sysreqs.php?lang=de </url> <usetemplate ignoretext="Meine Hardware wird nicht unterstützt" name="okcancelignore" notext="Nein" yestext="Ja"/> </notification> <notification name="UnknownGPU"> - Ihr System verwendet eine uns zurzeit unbekannte Grafikkarte. -Dies passiert dann, wenn die neue Hardware noch nicht mit [APP_NAME] getestet wurde. [APP_NAME] wird wahrscheinlich korrekt ausgeführt werden, jedoch sollten Sie Ihre Grafikeinstellungen anpassen, um eine bessere Darstellung zu erzielen. + Ihr System verwendet eine Grafikkarte, die [APP_NAME] nicht erkennt. +Dies passiert dann, wenn die neue Hardware noch nicht mit [APP_NAME] getestet wurde. Wahrscheinlich wird das Programm richtig ausgeführt, aber Sie müssen eventuell ein paar Grafikeinstellungen vornehmen. (Ich > Einstellungen > Grafik). <form name="form"> <ignore name="ignore" text="Meine Grafikkarte konnte nicht identifiziert werden."/> @@ -667,7 +677,7 @@ Ihre Suchanfrage: [FINALQUERY] Es wurde keine Suche durchgeführt. </notification> <notification name="CouldNotTeleportReason"> - Teleport fehlgeschlagen. + Teleport ist fehlgeschlagen. [REASON] </notification> <notification name="invalid_tport"> @@ -768,14 +778,6 @@ Mehrere Parzellen ausgewählt. Wählen Sie eine einzelne Parzelle. </notification> - <notification name="ParcelCanPlayMedia"> - Dieser Ort kann Streaming-Medien abspielen. -Streaming-Medien erfordern eine schnelle Internet-Verbindung. - -Streaming-Medien abspielen, wenn verfügbar? -(Sie können diese Option später unter Einstellungen > Datenschutz ändern.) - <usetemplate name="okcancelbuttons" notext="Deaktivieren" yestext="Medien wiedergeben"/> - </notification> <notification name="CannotDeedLandWaitingForServer"> Land kann nicht übertragen werden: Warte auf Server für Eigentümerinformationen. @@ -898,9 +900,8 @@ Land zusammenlegen? Dies ist ein temporärer Fehler. Bitte passen Sie das Kleidungsstück in einigen Minuten noch einmal an und speichern Sie es erneut. </notification> <notification name="YouHaveBeenLoggedOut"> - Sie wurden von [SECOND_LIFE] abgemeldet: + Es tut uns leid! Sie wurden von [SECOND_LIFE] abgemeldet. [MESSAGE] -Klicken Sie auf „IM & Chat anzeigen“, um vorhandene Nachrichten und Chat weiterhin anzuzeigen. Um [APP_NAME] zu schließen, auf „Beenden“ klicken. <usetemplate name="okcancelbuttons" notext="Beenden" yestext="IM & Chat anzeigen"/> </notification> <notification name="OnlyOfficerCanBuyLand"> @@ -1068,9 +1069,9 @@ Sie wurden zur nächstgelegenen Region teleportiert. Sie wurden zur nächstgelegenen Region teleportiert. </notification> <notification name="AvatarMovedHome"> - Ihr Heimatort ist zurzeit nicht verfügbar. + Ihr Zuhause ist zurzeit nicht verfügbar. Sie wurden zur nächstgelegenen Region teleportiert. -Sie müssen eventuell einen neuen Heimatort festlegen. +Sie müssen eventuell ein neues Zuhause festlegen. </notification> <notification name="ClothingLoading"> Ihre Kleidung wird noch heruntergeladen. @@ -1335,7 +1336,6 @@ Chat und Instant Messages werden ausgeblendet. Instant Messages (Sofortnachricht <notification name="JoinedTooManyGroupsMember"> Sie haben die maximale Anzahl an Gruppen erreicht. Bitte verlassen Sie eine andere Gruppe, um dieser beitreten zu können oder lehnen Sie das Angebot ab. [NAME] hat Sie eingeladen, einer Gruppe beizutreten. -[INVITE] <usetemplate name="okcancelbuttons" notext="Ablehnen" yestext="Beitreten"/> </notification> <notification name="JoinedTooManyGroups"> @@ -1403,7 +1403,7 @@ Chat und Instant Messages werden ausgeblendet. Instant Messages (Sofortnachricht </form> </notification> <notification name="TeleportFromLandmark"> - Möchten Sie sich wirklich teleportieren? + Sind Sie sicher, dass Sie zu <nolink>[LOCATION]</nolink> teleportieren möchten? <usetemplate ignoretext="Bestätigen, dass ich zu einer Landmarke teleportieren möchte" name="okcancelignore" notext="Abbrechen" yestext="Teleportieren"/> </notification> <notification name="TeleportToPick"> @@ -1730,7 +1730,7 @@ Inventarobjekt(e) verschieben? <notification name="HelpReportAbuseEmailLL"> Mit dieser Funktion können Sie Verstöße gegen die [http://secondlife.com/corporate/tos.php Servicebedingungen (EN)] and [http://secondlife.com/corporate/cs.php Community-Standards] melden. -Alle gemeldeten Verstöße werden bearbeitet. Sie können auf der Seite [http://secondlife.com/support/incidentreport.php Verstoßmeldungen] nachverfolgen, welche Verstoßmeldungen bearbeitet wurden. +Alle gemeldeten Verstöße werden bearbeitet. </notification> <notification name="HelpReportAbuseSelectCategory"> Wählen Sie eine Missbrauchskategorie aus. @@ -1936,10 +1936,10 @@ Von einer Webseite zu diesem Formular linken, um anderen leichten Zugang zu dies Betreff: [SUBJECT], Nachricht: [MESSAGE] </notification> <notification name="FriendOnline"> - [FIRST] [LAST] ist online + [NAME_SLURL] ist online </notification> <notification name="FriendOffline"> - [FIRST] [LAST] ist offline + [NAME_SLURL] ist offline </notification> <notification name="AddSelfFriend"> Obwohl Sie ein sehr netter Mensch sind, können Sie sich nicht selbst als Freund hinzufügen. @@ -2140,7 +2140,7 @@ Nicht transferierbare an die Gruppe übertragene Objekte wurden gelöscht. </notification> <notification name="ServerObjectMessage"> Nachricht von [NAME]: -[MSG] +<nolink>[MSG]</nolink> </notification> <notification name="NotSafe"> Auf diesem Land ist Schaden aktiviert. @@ -2320,7 +2320,6 @@ Versuchen Sie es in einigen Minuten erneut. <form name="form"> <button name="Accept" text="Akzeptieren"/> <button name="Decline" text="Ablehnen"/> - <button name="Send IM" text="IM senden"/> </form> </notification> <notification name="FriendshipOffered"> @@ -2600,7 +2599,7 @@ Sollte das Problem fortbestehen, finden Sie weitere Hilfestellung unter [SUPPORT - Ihr Arbeitsspeicher entspricht nicht den Mindestanforderungen. </global> <global name="You can only set your 'Home Location' on your land or at a mainland Infohub."> - Wenn Sie ein Stück Land besitzen, können Sie dies als Ihren Heimatort festlegen. + Wenn Sie ein Stück Land besitzen, können Sie dies als Ihr Zuhause festlegen. Ansonsten können Sie auf der Karte nachsehen und dort Ort suchen, die als „Infohub“ gekennzeichnet sind. </global> </notifications> diff --git a/indra/newview/skins/default/xui/de/panel_block_list_sidetray.xml b/indra/newview/skins/default/xui/de/panel_block_list_sidetray.xml index eeb5de749d..2d140515d4 100644 --- a/indra/newview/skins/default/xui/de/panel_block_list_sidetray.xml +++ b/indra/newview/skins/default/xui/de/panel_block_list_sidetray.xml @@ -1,6 +1,6 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <panel name="block_list_panel" width="300"> - <text name="title_text" left_pad="5" width="260"> + <text left_pad="5" name="title_text" width="260"> Liste der ignorierten Einwohner </text> <scroll_list name="blocked" tool_tip="Liste der zur Zeit ignorierten Einwohner" width="290"/> diff --git a/indra/newview/skins/default/xui/de/panel_bottomtray_lite.xml b/indra/newview/skins/default/xui/de/panel_bottomtray_lite.xml new file mode 100644 index 0000000000..9c84105254 --- /dev/null +++ b/indra/newview/skins/default/xui/de/panel_bottomtray_lite.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="bottom_tray_lite"> + <layout_stack name="toolbar_stack_lite"> + <layout_panel name="gesture_panel"> + <gesture_combo_list label="Gesten" name="Gesture" tool_tip="Gesten anzeigen/ausblenden"/> + </layout_panel> + </layout_stack> +</panel> diff --git a/indra/newview/skins/default/xui/de/panel_classified_info.xml b/indra/newview/skins/default/xui/de/panel_classified_info.xml index d45e28f0c8..d824eff338 100644 --- a/indra/newview/skins/default/xui/de/panel_classified_info.xml +++ b/indra/newview/skins/default/xui/de/panel_classified_info.xml @@ -6,18 +6,19 @@ <panel.string name="type_pg"> Allgemeiner Inhalt </panel.string> - <text name="title" value="Informationen über Anzeige"/> + <panel.string name="l$_price"> + [PRICE] L$ + </panel.string> + <text name="title" value="Anzeigen-Info"/> <scroll_container name="profile_scroll"> <panel name="scroll_content_panel"> - <text name="classified_name" value="[name]"/> - <text name="classified_location" value="[wird geladen...]"/> - <text name="content_type" value="[Inhalts-Art]"/> - <text name="category" value="[Kategorie]"/> + <text_editor name="classified_name" value="[name]"/> + <text_editor name="classified_location" value="[wird geladen...]"/> + <text_editor name="content_type" value="[Inhalts-Art]"/> + <text_editor name="category" value="[Kategorie]"/> <check_box label="Jede Woche automatisch erneuern" name="auto_renew"/> - <text name="price_for_listing" tool_tip="Preis für Anzeige."> - [PRICE] L$ - </text> - <text name="classified_desc" value="[description]"/> + <text_editor name="price_for_listing" tool_tip="Preis für Anzeige."/> + <text_editor name="classified_desc" value="[description]"/> </panel> </scroll_container> <panel name="buttons"> diff --git a/indra/newview/skins/default/xui/de/panel_edit_classified.xml b/indra/newview/skins/default/xui/de/panel_edit_classified.xml index a9b5da163f..2e0370c579 100644 --- a/indra/newview/skins/default/xui/de/panel_edit_classified.xml +++ b/indra/newview/skins/default/xui/de/panel_edit_classified.xml @@ -21,7 +21,7 @@ <text name="classified_location"> wird geladen... </text> - <button label="Auf aktuelle Position einstellen" name="set_to_curr_location_btn"/> + <button label="Aktuellen Standort verwenden" name="set_to_curr_location_btn"/> <combo_box name="content_type"> <combo_item name="mature_ci"> Moderater Inhalt diff --git a/indra/newview/skins/default/xui/de/panel_edit_pick.xml b/indra/newview/skins/default/xui/de/panel_edit_pick.xml index bd05a4151e..0cb14177af 100644 --- a/indra/newview/skins/default/xui/de/panel_edit_pick.xml +++ b/indra/newview/skins/default/xui/de/panel_edit_pick.xml @@ -18,7 +18,7 @@ <text name="pick_location"> wird geladen... </text> - <button label="Auf aktuelle Position einstellen" name="set_to_curr_location_btn"/> + <button label="Aktuellen Standort verwenden" name="set_to_curr_location_btn"/> </panel> </scroll_container> <panel label="bottom_panel" name="bottom_panel"> diff --git a/indra/newview/skins/default/xui/de/panel_edit_profile.xml b/indra/newview/skins/default/xui/de/panel_edit_profile.xml index f643115dbe..bf74abaeba 100644 --- a/indra/newview/skins/default/xui/de/panel_edit_profile.xml +++ b/indra/newview/skins/default/xui/de/panel_edit_profile.xml @@ -42,13 +42,13 @@ <line_editor name="homepage_edit" value="http://"/> <check_box label="In Suchergebnissen anzeigen" name="show_in_search_checkbox"/> <text name="title_acc_status_text" value="Mein Konto:"/> + <text_editor name="acc_status_text" value="Einwohner. Keine Zahlungsinfo archiviert."/> <text name="my_account_link" value="[[URL] Meine Startseite aufrufen]"/> - <text name="acc_status_text" value="Einwohner. Keine Zahlungsinfo archiviert."/> <text name="title_partner_text" value="Mein Partner:"/> - <text name="partner_edit_link" value="[[URL] bearbeiten]"/> <panel name="partner_data_panel"> - <name_box name="partner_text" value="[FIRST] [LAST]"/> + <name_box initial_value="(wird in Datenbank gesucht)" name="partner_text" value="[FIRST] [LAST]"/> </panel> + <text name="partner_edit_link" value="[[URL] bearbeiten]"/> </panel> </panel> </scroll_container> diff --git a/indra/newview/skins/default/xui/de/panel_friends.xml b/indra/newview/skins/default/xui/de/panel_friends.xml index 10c5954775..50013a2b24 100644 --- a/indra/newview/skins/default/xui/de/panel_friends.xml +++ b/indra/newview/skins/default/xui/de/panel_friends.xml @@ -25,7 +25,7 @@ <button label="IM/Anruf" name="im_btn" tool_tip="Beginnt eine Instant Message-Sitzung"/> <button label="Profil" name="profile_btn" tool_tip="Bilder, Gruppen und andere Informationen anzeigen"/> <button label="Teleportieren" name="offer_teleport_btn" tool_tip="Bieten Sie diesem Freund einen Teleport an Ihre Position an"/> - <button label="Zahlen" name="pay_btn" tool_tip="Diesem Freund Linden-Dollar (L$) geben"/> + <button label="Bezahlen" name="pay_btn" tool_tip="Diesem Freund Linden-Dollar (L$) geben"/> <button label="Entfernen" name="remove_btn" tool_tip="Diese Person von Ihrer Freundesliste entfernen"/> <button label="Hinzufügen" name="add_btn" tool_tip="Bieten Sie einem Einwohner die Freundschaft an"/> </panel> diff --git a/indra/newview/skins/default/xui/de/panel_group_general.xml b/indra/newview/skins/default/xui/de/panel_group_general.xml index 8904193f18..0d3c082a16 100644 --- a/indra/newview/skins/default/xui/de/panel_group_general.xml +++ b/indra/newview/skins/default/xui/de/panel_group_general.xml @@ -11,27 +11,45 @@ Bewegen Sie die Maus über die Optionen, um weitere Informationen anzuzeigen. <panel.string name="incomplete_member_data_str"> Mitgliedsdaten werden abgerufen </panel.string> + <panel name="group_info_top"> + <texture_picker label="" name="insignia" tool_tip="Klicken, um ein Bild auszuwählen"/> + <text name="prepend_founded_by"> + Gründer: + </text> + <name_box initial_value="(wird in Datenbank gesucht)" name="founder_name"/> + <text name="join_cost_text"> + Kostenlos + </text> + <button label="JETZT BEITRETEN!" name="btn_join"/> + </panel> <text_editor name="charter"> Gruppencharta </text_editor> <name_list name="visible_members"> <name_list.columns label="Mitglied" name="name" relwidth="0.40"/> <name_list.columns label="Titel" name="title" relwidth="0.25"/> + <name_list.columns label="Status" name="status"/> </name_list> + <text name="my_group_settngs_label"> + Ich + </text> <text name="active_title_label"> - Mein Titel + Mein Titel: </text> <combo_box name="active_title" tool_tip="Legt fest, was im Namensschild Ihres Avatars angezeigt wird, wenn diese Gruppe aktiviert ist."/> <check_box label="Gruppenmitteilungen erhalten" name="receive_notices" tool_tip="Festlegen, ob Sie von dieser Gruppe Mitteilungen erhalten können. Deaktivieren Sie diese Option, wenn Sie von der Gruppe Spam erhalten."/> <check_box label="In meinem Profil anzeigen" name="list_groups_in_profile" tool_tip="Steuert, ob diese Gruppe in Ihrem Profil angezeigt wird"/> <panel name="preferences_container"> - <check_box label="Registrierung offen" name="open_enrollement" tool_tip="Festlegen, ob der Gruppenbeitritt ohne Einladung zulässig ist."/> - <check_box label="Beitrittsgebühr" name="check_enrollment_fee" tool_tip="Festlegen, ob Neumitglieder eine Beitrittsgebühr zahlen müssen"/> + <text name="group_settngs_label"> + Gruppe + </text> + <check_box label="Jeder kann beitreten" name="open_enrollement" tool_tip="Festlegen, ob der Gruppenbeitritt ohne Einladung zulässig ist."/> + <check_box label="Kosten für Beitritt" name="check_enrollment_fee" tool_tip="Festlegen, ob Neumitglieder eine Beitrittsgebühr zahlen müssen"/> <spinner label="L$" name="spin_enrollment_fee" tool_tip="Wenn Beitrittsgebühr aktiviert ist, müssen neue Mitglieder diesen Betrag zahlen."/> - <check_box initial_value="true" label="In Suche anzeigen" name="show_in_group_list" tool_tip="Diese Gruppe in Suchergebnissen anzeigen"/> <combo_box name="group_mature_check" tool_tip="Legt fest, ob Ihre Gruppeninformation moderate Inhalte enthält"> <combo_box.item label="Allgemeiner Inhalt" name="pg"/> <combo_box.item label="Moderater Inhalt" name="mature"/> </combo_box> + <check_box initial_value="true" label="In Suche anzeigen" name="show_in_group_list" tool_tip="Diese Gruppe in Suchergebnissen anzeigen"/> </panel> </panel> diff --git a/indra/newview/skins/default/xui/de/panel_group_info_sidetray.xml b/indra/newview/skins/default/xui/de/panel_group_info_sidetray.xml index f70291c922..f333ce77e0 100644 --- a/indra/newview/skins/default/xui/de/panel_group_info_sidetray.xml +++ b/indra/newview/skins/default/xui/de/panel_group_info_sidetray.xml @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> -<panel label="Gruppeninfo" name="GroupInfo"> +<panel label="Gruppenprofil" name="GroupInfo"> <panel.string name="default_needs_apply_text"> - In der aktuellen Registerkarte befinden sich ungesicherte Änderungen + Diese Änderungen wurden nicht gespeichert. </panel.string> <panel.string name="want_apply_text"> Möchten Sie diese Änderungen speichern? @@ -12,27 +12,24 @@ <panel.string name="group_join_free"> Kostenlos </panel.string> - <text name="group_name" value="(Lädt...)"/> - <line_editor label="Geben Sie Ihren neuen Gruppennamen hier ein" name="group_name_editor"/> - <texture_picker label="" name="insignia" tool_tip="Klicken Sie, um ein Bild auszuwählen"/> - <text name="prepend_founded_by"> - Gründer: - </text> - <name_box initial_value="(empfange)" name="founder_name"/> - <text name="join_cost_text"> - Kostenlos - </text> - <button label="JETZT BEITRETEN!" name="btn_join"/> - <accordion name="groups_accordion"> - <accordion_tab name="group_general_tab" title="Allgemein"/> - <accordion_tab name="group_roles_tab" title="Rollen"/> - <accordion_tab name="group_notices_tab" title="Mitteilungen"/> - <accordion_tab name="group_land_tab" title="Land/Kapital"/> - </accordion> - <panel name="button_row"> - <button label="Erstellen" label_selected="Neue Gruppe" name="btn_create"/> - <button label="Gruppen-Chat" name="btn_chat"/> - <button label="Gruppe anrufen" name="btn_call"/> - <button label="Speichern" label_selected="Speichern" name="btn_apply"/> + <panel name="group_info_top"> + <text name="group_name" value="(wird geladen...)"/> + <line_editor label="Neuen Gruppennamen hier eingeben" name="group_name_editor"/> </panel> + <layout_stack name="layout"> + <layout_panel name="group_accordions"> + <accordion name="groups_accordion"> + <accordion_tab name="group_general_tab" title="Allgemein"/> + <accordion_tab name="group_roles_tab" title="Rollen"/> + <accordion_tab name="group_notices_tab" title="Mitteilungen"/> + <accordion_tab name="group_land_tab" title="Land/Kapital"/> + </accordion> + </layout_panel> + <layout_panel name="button_row"> + <button name="btn_create" tool_tip="Neue Gruppe erstellen"/> + <button label="Chat" name="btn_chat"/> + <button label="Gruppe anrufen" name="btn_call" tool_tip="Diese Gruppe anrufen"/> + <button label="Speichern" label_selected="Speichern" name="btn_apply"/> + </layout_panel> + </layout_stack> </panel> diff --git a/indra/newview/skins/default/xui/de/panel_group_land_money.xml b/indra/newview/skins/default/xui/de/panel_group_land_money.xml index d6cfb22cfe..0c89946987 100644 --- a/indra/newview/skins/default/xui/de/panel_group_land_money.xml +++ b/indra/newview/skins/default/xui/de/panel_group_land_money.xml @@ -1,65 +1,62 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <panel label="Land und L$" name="land_money_tab"> - <string name="help_text"> + <panel.string name="help_text"> Ein Warnhinweis wird angezeigt, solange der Wert für das insgesamt verwendete Land gleich oder weniger ist als der Gesamtbeitrag. - </string> - <button label="?" name="help_button"/> - <string name="cant_view_group_land_text"> + </panel.string> + <panel.string name="cant_view_group_land_text"> Sie sind nicht berechtigt, Landeigentum der Gruppe anzuzeigen. - </string> - <string name="cant_view_group_accounting_text"> + </panel.string> + <panel.string name="cant_view_group_accounting_text"> Sie sind nicht berechtigt, die Finanzinformationen der Gruppe anzuzeigen. - </string> - <string name="loading_txt"> + </panel.string> + <panel.string name="loading_txt"> Wird geladen... - </string> - <text name="group_land_heading"> - Land in Gruppenbesitz - </text> - <scroll_list name="group_parcel_list"> - <column label="Parzelle" name="name"/> - <column label="Region" name="location"/> - <column label="Typ" name="type"/> - <column label="Gebiet" name="area"/> - <column label="" name="hidden"/> - </scroll_list> - <button label="Karte" label_selected="Karte" name="map_button"/> - <text name="total_contributed_land_label"> - Gesamtbeitrag: - </text> - <text name="total_contributed_land_value"> - [AREA] m². - </text> - <text name="total_land_in_use_label" left="28" width="180"> - Insgesamt verwendetes Land: - </text> - <text name="total_land_in_use_value"> - [AREA] m². - </text> - <text name="land_available_label" left="4"> - Land verfügbar: - </text> - <text name="land_available_value"> - [AREA] m². - </text> - <text name="your_contribution_label"> - Ihr Beitrag: - </text> - <string name="land_contrib_error"> + </panel.string> + <panel.string name="land_contrib_error"> Ihr Landbeitrag kann nicht festgelegt werden. - </string> - <text name="your_contribution_units"> - m² - </text> - <text name="your_contribution_max_value"> - ([AMOUNT] max.) - </text> - <text name="group_over_limit_text" width="300"> - Um das benutzte Land zu unterstützen, sind weitere Landnutzungsrechte erforderlich. - </text> - <text name="group_money_heading" left="10" top_pad="10"> - Gruppen-L$ - </text> + </panel.string> + <panel name="layout_panel_landmoney"> + <scroll_list name="group_parcel_list"> + <scroll_list.columns label="Parzelle" name="name"/> + <scroll_list.columns label="Region" name="location"/> + <scroll_list.columns label="Typ" name="type"/> + <scroll_list.columns label="Gebiet" name="area"/> + </scroll_list> + <text name="total_contributed_land_label"> + Gesamtbeitrag: + </text> + <text name="total_contributed_land_value"> + [AREA] m². + </text> + <button label="Karte" label_selected="Karte" name="map_button"/> + <text name="total_land_in_use_label"> + Insgesamt genutztes Land: + </text> + <text name="total_land_in_use_value"> + [AREA] m². + </text> + <text name="land_available_label"> + Land verfügbar: + </text> + <text name="land_available_value"> + [AREA] m². + </text> + <text name="your_contribution_label"> + Ihr Beitrag: + </text> + <text name="your_contribution_units"> + m² + </text> + <text name="your_contribution_max_value"> + ([AMOUNT] max.) + </text> + <text name="group_over_limit_text"> + Um das benutzte Land zu unterstützen, sind weitere Landnutzungsrechte erforderlich. + </text> + <text name="group_money_heading"> + Gruppen-L$ + </text> + </panel> <tab_container name="group_money_tab_container"> <panel label="PLANUNG" name="group_money_planning_tab"> <text_editor name="group_money_planning_text"> @@ -82,89 +79,3 @@ </panel> </tab_container> </panel> -<!-- - -<?xml version="1.0" encoding="utf-8" standalone="yes"?> -<panel label="Land und L$" name="land_money_tab"> - <string name="help_text"> - Parzellen in Gruppenbesitz werden zusammen mit Beitragsdetails angezeigt. Ein Warnhinweis wird angezeigt, solange der Wert für das insgesamt verwendete Land gleich oder weniger ist als der Gesamtbeitrag. Die Registerkarten „Planung“, „Details“ und „Verkäufe“ enthalten Informationen über die Gruppenfinanzen. - </string> - <button label="?" name="help_button"/> - <string name="cant_view_group_land_text"> - Sie sind nicht berechtigt, Landeigentum der Gruppe anzuzeigen. - </string> - <string name="cant_view_group_accounting_text"> - Sie sind nicht berechtigt, die Finanzinformationen der Gruppe anzuzeigen. - </string> - <string name="loading_txt"> - Wird geladen... - </string> - <text name="group_land_heading"> - Land in Gruppenbesitz - </text> - <scroll_list name="group_parcel_list"> - <column label="Parzellenname" name="name"/> - <column label="Region" name="location"/> - <column label="Typ" name="type"/> - <column label="Gebiet" name="area"/> - <column label="" name="hidden"/> - </scroll_list> - <button label="Auf Karte" label_selected="Auf Karte" name="map_button"/> - <text name="total_contributed_land_label"> - Gesamtbeitrag: - </text> - <text name="total_contributed_land_value"> - [AREA] qm - </text> - <text name="total_land_in_use_label"> - Insgesamt verwendetes Land: - </text> - <text name="total_land_in_use_value"> - [AREA] qm - </text> - <text name="land_available_label"> - Land verfügbar: - </text> - <text name="land_available_value"> - [AREA] qm - </text> - <text name="your_contribution_label"> - Ihr Beitrag: - </text> - <string name="land_contrib_error"> - Ihr Landbeitrag kann nicht festgelegt werden. - </string> - <text name="your_contribution_max_value"> - qm (max. [AMOUNT]) - </text> - <text name="group_over_limit_text"> - Die Gruppenmitglieder müssen mehr Landnutzungsrechte spenden, damit -das verwendete Land gehalten werden kann. - </text> - <text name="group_money_heading"> - Gruppen-L$ - </text> - <tab_container name="group_money_tab_container"> - <panel label="Planung" name="group_money_planning_tab"> - <text_editor name="group_money_planning_text"> - Wird berechnet... - </text_editor> - </panel> - <panel label="Details" name="group_money_details_tab"> - <text_editor name="group_money_details_text"> - Wird berechnet... - </text_editor> - <button label="< Früher" label_selected="< Früher" name="earlier_details_button" tool_tip="Zurück in der Zeit"/> - <button label="Später >" label_selected="Später >" name="later_details_button" tool_tip="Weiter in der Zeit"/> - </panel> - <panel label="Verkäufe" name="group_money_sales_tab"> - <text_editor name="group_money_sales_text"> - Wird berechnet... - </text_editor> - <button label="< Früher" label_selected="< Früher" name="earlier_sales_button" tool_tip="Zurück in der Zeit"/> - <button label="Später >" label_selected="Später >" name="later_sales_button" tool_tip="Weiter in der Zeit"/> - </panel> - </tab_container> -</panel> - ---> diff --git a/indra/newview/skins/default/xui/de/panel_group_notices.xml b/indra/newview/skins/default/xui/de/panel_group_notices.xml index d2ba40ae2c..2ed149e6fc 100644 --- a/indra/newview/skins/default/xui/de/panel_group_notices.xml +++ b/indra/newview/skins/default/xui/de/panel_group_notices.xml @@ -39,7 +39,7 @@ Maximal 200 pro Gruppe täglich <text name="string"> Das Objekt hierin ziehen und ablegen, um es anzuhängen: </text> - <button label="Entfernen" label_selected="Anhang entfernen" name="remove_attachment"/> + <button label="Entfernen" label_selected="Anhang entfernen" name="remove_attachment" tool_tip="Anhang von Ihrer Benachrichtigung entfernen"/> <button label="Senden" label_selected="Senden" name="send_notice"/> <group_drop_target name="drop_target" tool_tip="Ziehen Sie ein Objekt aus Ihrem Inventar auf dieses Feld, um es mit dieser Mitteilung zu versenden. Um das Objekt anhängen zu können, müssen Sie die Erlaubnis zum Kopieren und Übertragen besitzen."/> </panel> diff --git a/indra/newview/skins/default/xui/de/panel_group_notify.xml b/indra/newview/skins/default/xui/de/panel_group_notify.xml index cb4c6cdb39..9c05e99786 100644 --- a/indra/newview/skins/default/xui/de/panel_group_notify.xml +++ b/indra/newview/skins/default/xui/de/panel_group_notify.xml @@ -4,7 +4,7 @@ <string name="subject_font" value="SANSSERIF_BIG"/> <string name="date_font" value="SANSSERIF"/> <panel label="Überschrift" name="header"> - <text name="title" value="Name des Absenders / Gruppenname"/> + <text name="title" value="Absender/Gruppenname"/> </panel> <text_editor name="message" value="Nachricht"/> <text name="attachment" value="Anhang"/> diff --git a/indra/newview/skins/default/xui/de/panel_group_roles.xml b/indra/newview/skins/default/xui/de/panel_group_roles.xml index b2e885e639..db5186e081 100644 --- a/indra/newview/skins/default/xui/de/panel_group_roles.xml +++ b/indra/newview/skins/default/xui/de/panel_group_roles.xml @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <panel label="Mitglieder und Rollen" name="roles_tab"> <panel.string name="default_needs_apply_text"> - Die Registerkarte enthält nicht gespeicherte Änderungen. + Diese Änderungen wurden nicht gespeichert. </panel.string> <panel.string name="want_apply_text"> Möchten Sie Ihre Änderungen speichern? diff --git a/indra/newview/skins/default/xui/de/panel_im_control_panel.xml b/indra/newview/skins/default/xui/de/panel_im_control_panel.xml index 8132f769cb..0dca272633 100644 --- a/indra/newview/skins/default/xui/de/panel_im_control_panel.xml +++ b/indra/newview/skins/default/xui/de/panel_im_control_panel.xml @@ -9,11 +9,14 @@ <button label="Freund hinzufügen" name="add_friend_btn"/> </layout_panel> <layout_panel name="teleport_btn_panel"> - <button label="Teleportieren" name="teleport_btn"/> + <button label="Teleportieren" name="teleport_btn" tool_tip="Dieser Person einen Teleport anbieten."/> </layout_panel> <layout_panel name="share_btn_panel"> <button label="Teilen" name="share_btn"/> </layout_panel> + <layout_panel name="share_btn_panel"> + <button label="Bezahlen" name="pay_btn"/> + </layout_panel> <layout_panel name="call_btn_panel"> <button label="Anrufen" name="call_btn"/> </layout_panel> diff --git a/indra/newview/skins/default/xui/de/panel_landmarks.xml b/indra/newview/skins/default/xui/de/panel_landmarks.xml index 3336232782..db12462a31 100644 --- a/indra/newview/skins/default/xui/de/panel_landmarks.xml +++ b/indra/newview/skins/default/xui/de/panel_landmarks.xml @@ -2,7 +2,7 @@ <panel name="Landmarks"> <accordion name="landmarks_accordion"> <accordion_tab name="tab_favorites" title="Favoritenleiste"/> - <accordion_tab name="tab_landmarks" title="Landmarken"/> + <accordion_tab name="tab_landmarks" title="Meine Landmarken"/> <accordion_tab name="tab_inventory" title="Mein Inventar"/> <accordion_tab name="tab_library" title="Bibliothek"/> </accordion> diff --git a/indra/newview/skins/default/xui/de/panel_main_inventory.xml b/indra/newview/skins/default/xui/de/panel_main_inventory.xml index aa0b43b550..eed365a1bb 100644 --- a/indra/newview/skins/default/xui/de/panel_main_inventory.xml +++ b/indra/newview/skins/default/xui/de/panel_main_inventory.xml @@ -57,7 +57,7 @@ <menu label="Sortieren" name="Sort"> <menu_item_check label="Nach Name" name="By Name"/> <menu_item_check label="Nach Datum" name="By Date"/> - <menu_item_check label="Ordner immer nach Name" name="Folders Always By Name"/> + <menu_item_check label="Ordner immer nach Namen" name="Folders Always By Name"/> <menu_item_check label="Systemordner nach oben" name="System Folders To Top"/> </menu> </menu_bar> diff --git a/indra/newview/skins/default/xui/de/panel_me.xml b/indra/newview/skins/default/xui/de/panel_me.xml index c61fc26f4c..ea74f01c8a 100644 --- a/indra/newview/skins/default/xui/de/panel_me.xml +++ b/indra/newview/skins/default/xui/de/panel_me.xml @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> -<panel label="Mein Profil" name="panel_me"> +<panel label="Mein Profil!!!!!" name="panel_me"> <tab_container name="tabs"> - <panel label="PROFIL" name="panel_profile"/> - <panel label="AUSWAHL" name="panel_picks"/> + <panel label="MEIN PROFIL" name="panel_profile"/> + <panel label="MEINE AUSWAHL" name="panel_picks"/> </tab_container> </panel> diff --git a/indra/newview/skins/default/xui/de/panel_my_profile.xml b/indra/newview/skins/default/xui/de/panel_my_profile.xml index 618ed88846..55eed89848 100644 --- a/indra/newview/skins/default/xui/de/panel_my_profile.xml +++ b/indra/newview/skins/default/xui/de/panel_my_profile.xml @@ -30,11 +30,14 @@ </panel> <text name="title_member_text" value="Einwohner seit:"/> <text name="title_acc_status_text" value="Kontostatus:"/> - <text name="acc_status_text"> + <text_editor name="acc_status_text"> Einwohner. Keine Zahlungsinfo archiviert. Linden. - </text> + </text_editor> <text name="title_partner_text" value="Partner:"/> + <panel name="partner_data_panel"> + <name_box initial_value="(wird in Datenbank gesucht)" name="partner_text"/> + </panel> <text name="title_groups_text" value="Gruppen:"/> </panel> </scroll_container> diff --git a/indra/newview/skins/default/xui/de/panel_navigation_bar.xml b/indra/newview/skins/default/xui/de/panel_navigation_bar.xml index ab59c207bf..99293edd0f 100644 --- a/indra/newview/skins/default/xui/de/panel_navigation_bar.xml +++ b/indra/newview/skins/default/xui/de/panel_navigation_bar.xml @@ -1,15 +1,18 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <panel name="navigation_bar"> <panel name="navigation_panel"> - <button name="back_btn" tool_tip="Zurück zum vorherigen Standort gehen"/> - <button name="forward_btn" tool_tip="Um einen Standort weiter gehen"/> - <button name="home_btn" tool_tip="Zu meinem Heimatort teleportieren"/> + <pull_button name="back_btn" tool_tip="Zurück zum vorherigen Standort gehen"/> + <pull_button name="forward_btn" tool_tip="Um einen Standort weiter gehen"/> + <button name="home_btn" tool_tip="Zu meinem Zuhause teleportieren"/> <location_input label="Standort" name="location_combo"/> <search_combo_box label="Suche" name="search_combo_box" tool_tip="Suche"> <combo_editor label="[SECOND_LIFE] durchsuchen" name="search_combo_editor"/> </search_combo_box> </panel> - <favorites_bar name="favorite"> + <favorites_bar name="favorite" tool_tip="Ziehen Sie Landmarken hier hin, damit Sie schnell zu Ihren Lieblingsplätzen in Second Life gelangen können!"> + <label name="favorites_bar_label" tool_tip="Ziehen Sie Landmarken hier hin, damit Sie schnell zu Ihren Lieblingsplätzen in Second Life gelangen können!"> + Favoritenleiste + </label> <chevron_button name=">>" tool_tip="Mehr meiner Favoriten anzeigen"/> </favorites_bar> </panel> diff --git a/indra/newview/skins/default/xui/de/panel_outfits_inventory.xml b/indra/newview/skins/default/xui/de/panel_outfits_inventory.xml index 8d2dd84512..54c56992fd 100644 --- a/indra/newview/skins/default/xui/de/panel_outfits_inventory.xml +++ b/indra/newview/skins/default/xui/de/panel_outfits_inventory.xml @@ -2,7 +2,7 @@ <panel label="Sonstiges" name="Outfits"> <tab_container name="appearance_tabs"> <inventory_panel label="MEINE OUTFITS" name="outfitslist_tab"/> - <inventory_panel label="AKTUELLES OUTFIT" name="cof_accordionpanel"/> + <inventory_panel label="AKTUELLES OUTFIT" name="cof_tab"/> </tab_container> <panel name="bottom_panel"> <button name="options_gear_btn" tool_tip="Zusätzliche Optionen anzeigen"/> diff --git a/indra/newview/skins/default/xui/de/panel_people.xml b/indra/newview/skins/default/xui/de/panel_people.xml index 91a17e127a..a119c86b47 100644 --- a/indra/newview/skins/default/xui/de/panel_people.xml +++ b/indra/newview/skins/default/xui/de/panel_people.xml @@ -5,7 +5,6 @@ <string name="no_one_near" value="Keiner in der Nähe"/> <string name="no_friends_online" value="Keine Freunde online"/> <string name="no_friends" value="Keine Freunde"/> - <string name="no_groups" value="Keine Gruppen"/> <string name="people_filter_label" value="Nach Leuten filtern"/> <string name="groups_filter_label" value="Nach Gruppen filtern"/> <filter_editor label="Filter" name="filter_input"/> @@ -16,18 +15,22 @@ <button name="add_friend_btn" tool_tip="Ausgewählten Einwohner zur Freundeliste hinzufügen"/> </panel> </panel> - <panel label="FREUNDE" name="friends_panel"> + <panel label="MEINE FREUNDE" name="friends_panel"> <accordion name="friends_accordion"> <accordion_tab name="tab_online" title="Online"/> <accordion_tab name="tab_all" title="Alle"/> </accordion> + <text name="no_friends_msg"> + Verwenden Sie [secondlife:///app/search/people die globale Suche], um Freunde hinzuzufügen. Oder klicken Sie auf einen Einwohner und fügen Sie diesen als Freund hinzu. +Wenn Sie nach Orten suchen, an denen sich Leute befinden, verwenden Sie [secondlife:///app/worldmap die Karte]. + </text> <panel label="bottom_panel" name="bottom_panel"> <button name="friends_viewsort_btn" tool_tip="Optionen"/> <button name="add_btn" tool_tip="Bieten Sie einem Einwohner die Freundschaft an"/> <button name="del_btn" tool_tip="Ausgewählte Person von Ihrer Freundesliste entfernen"/> </panel> </panel> - <panel label="GRUPPEN" name="groups_panel"> + <panel label="MEINE GRUPPEN" name="groups_panel"> <panel label="bottom_panel" name="bottom_panel"> <button name="groups_viewsort_btn" tool_tip="Optionen"/> <button name="plus_btn" tool_tip="Gruppe beitreten/Neue Gruppe erstellen"/> diff --git a/indra/newview/skins/default/xui/de/panel_place_profile.xml b/indra/newview/skins/default/xui/de/panel_place_profile.xml index 94a43833bf..fd4da94edc 100644 --- a/indra/newview/skins/default/xui/de/panel_place_profile.xml +++ b/indra/newview/skins/default/xui/de/panel_place_profile.xml @@ -6,7 +6,7 @@ <string name="available" value="verfügbar"/> <string name="allocated" value="vergeben"/> <string name="title_place" value="Ortsprofil"/> - <string name="title_teleport_history" value="Speicherort der Teleport-Liste"/> + <string name="title_teleport_history" value="Teleport-Liste"/> <string name="not_available" value="k.A."/> <string name="unknown" value="(unbekannt)"/> <string name="public" value="(öffentlich)"/> diff --git a/indra/newview/skins/default/xui/de/panel_places.xml b/indra/newview/skins/default/xui/de/panel_places.xml index 0b3ed26dce..7359a4fda4 100644 --- a/indra/newview/skins/default/xui/de/panel_places.xml +++ b/indra/newview/skins/default/xui/de/panel_places.xml @@ -2,7 +2,7 @@ <panel label="Orte" name="places panel"> <string name="landmarks_tab_title" value="MEINE LANDMARKEN"/> <string name="teleport_history_tab_title" value="TELEPORT-LISTE"/> - <filter_editor label="Orte filtern" name="Filter"/> + <filter_editor label="Meine Orte filtern" name="Filter"/> <panel name="button_panel"> <button label="Teleportieren" name="teleport_btn" tool_tip="Zu ausgewähltem Standort teleportieren"/> <button label="Karte" name="map_btn" width="60"/> diff --git a/indra/newview/skins/default/xui/de/panel_preferences_advanced.xml b/indra/newview/skins/default/xui/de/panel_preferences_advanced.xml index c9d6faf3ba..df1bbd5d52 100644 --- a/indra/newview/skins/default/xui/de/panel_preferences_advanced.xml +++ b/indra/newview/skins/default/xui/de/panel_preferences_advanced.xml @@ -1,48 +1,29 @@ <?xml version="1.0" encoding="utf-8"?> -<panel name="advanced"> - <panel.string name="resolution_format"> - [RES_X] x [RES_Y] - </panel.string> +<panel label="Erweitert" name="advanced"> <panel.string name="aspect_ratio_text"> [NUM]:[DEN] </panel.string> - <check_box label="Blasen-Chat" name="bubble_text_chat"/> - <color_swatch name="background" tool_tip="Farbe für Blasen-Chat auswählen"/> - <slider label="Deckkraft" name="bubble_chat_opacity" label_width="66"/> - <text name="AspectRatioLabel1" tool_tip="Breite/Höhe"> - Seitenverhältnis - </text> - <combo_box name="aspect_ratio" tool_tip="Breite/Höhe"> - <combo_box.item label="4:3 (Standard-CRT)" name="item1"/> - <combo_box.item label="5:4 (1280x1024 LCD)" name="item2"/> - <combo_box.item label="8:5 (Widescreen)" name="item3"/> - <combo_box.item label="16:9 (Widescreen)" name="item4"/> - </combo_box> - <check_box label="Automatisch erkennen" name="aspect_auto_detect"/> - <text name="heading1"> - Kamera: - </text> <slider label="Sichtwinkel" name="camera_fov"/> <slider label="Abstand" name="camera_offset_scale"/> <text name="heading2"> - Automatische Positionierung: + Automatische Position für: </text> <check_box label="Bauen/Bearbeiten" name="edit_camera_movement" tool_tip="Automatische Kamerapositionierung bei Wechsel in und aus dem Bearbeitungsmodus verwenden"/> <check_box label="Aussehen" name="appearance_camera_movement" tool_tip="Automatische Kamerapositionierung im Bearbeitenmodus verwenden"/> - <text name="heading3"> - Avatare: - </text> <check_box label="Mich im Mouselook anzeigen" name="first_person_avatar_visible"/> <check_box label="Mit Pfeiltasten bewegen" name="arrow_keys_move_avatar_check"/> <check_box label="2-mal-drücken-halten, um zu rennen" name="tap_tap_hold_to_run"/> <check_box label="Avatarlippen beim Sprechen bewegen" name="enable_lip_sync"/> - <check_box label="Skript-Fehler anzeigen" name="show_script_errors"/> + <check_box label="Blasen-Chat" name="bubble_text_chat"/> + <slider label="Deckkraft" label_width="66" name="bubble_chat_opacity"/> + <color_swatch name="background" tool_tip="Farbe für Blasen-Chat auswählen"/> + <check_box label="Skript-Fehler anzeigen:" name="show_script_errors"/> <radio_group name="show_location"> - <radio_item label="In Chat" name="0"/> - <radio_item label="In einem Fenster" name="1"/> + <radio_item label="Chat in der Nähe" name="0"/> + <radio_item label="Getrenntes Fenster" name="1"/> </radio_group> - <check_box label="Umschaltmodus für Mikrofon, wenn die Auslöste-Taste zum Sprechen gedrückt wird:" name="push_to_talk_toggle_check" tool_tip="Wenn der Umschaltmodus aktiviert ist, drücken Sie die Auslöse-Taste EINMAL, um Ihr Mikrofon an oder aus zu stellen. Wenn der Umschaltmodus nicht motiviert ist, ist das Mikro nur dann eingeschaltet, wenn Sie die Auslösetaste gedrückt halten."/> + <check_box label="Sprachfunktion ein-/ausschalten, wenn gedrückt wird:" name="push_to_talk_toggle_check" tool_tip="Wenn der Umschaltmodus aktiviert ist, drücken Sie die Auslöse-Taste EINMAL, um Ihr Mikrofon an oder aus zu stellen. Wenn der Umschaltmodus nicht motiviert ist, ist das Mikro nur dann eingeschaltet, wenn Sie die Auslösetaste gedrückt halten."/> <line_editor label="Auslöser für Zum-Sprechen-drücken:" name="modifier_combo"/> <button label="Taste festlegen" name="set_voice_hotkey_button"/> - <button label="Mittlere Maustaste" name="set_voice_middlemouse_button"/> + <button label="Mittlere Maustaste" name="set_voice_middlemouse_button" tool_tip="Auf mittlere Maustaste zurücksetzen"/> </panel> diff --git a/indra/newview/skins/default/xui/de/panel_preferences_alerts.xml b/indra/newview/skins/default/xui/de/panel_preferences_alerts.xml index def5fb3b1b..0a0534c739 100644 --- a/indra/newview/skins/default/xui/de/panel_preferences_alerts.xml +++ b/indra/newview/skins/default/xui/de/panel_preferences_alerts.xml @@ -4,11 +4,11 @@ Anzeigen: </text> <check_box label="Wenn ich Geld ausgebe oder L$ erhalte" name="notify_money_change_checkbox"/> - <check_box label="Wenn meinen Freund sich an- oder abmelden" name="friends_online_notify_checkbox"/> + <check_box label="Wenn meine Freunde sich an- oder abmelden" name="friends_online_notify_checkbox"/> <text name="show_label"> - Diese Warnhinweise immer anzeigen: + Immer anzeigen: </text> <text name="dont_show_label"> - Diese Benachrichtungen nie anzeigen: + Niemals anzeigen: </text> </panel> diff --git a/indra/newview/skins/default/xui/de/panel_preferences_chat.xml b/indra/newview/skins/default/xui/de/panel_preferences_chat.xml index cc0a09c06c..f580691c0d 100644 --- a/indra/newview/skins/default/xui/de/panel_preferences_chat.xml +++ b/indra/newview/skins/default/xui/de/panel_preferences_chat.xml @@ -40,8 +40,8 @@ <check_box initial_value="true" label="Beim Chatten Tippanimation abspielen" name="play_typing_animation"/> <check_box label="IMs per Email zuschicken, wenn ich offline bin" name="send_im_to_email"/> <check_box label="Text-Chatverlauf aktivieren" name="plain_text_chat_history"/> - <radio_group name="chat_window" tool_tip="Zeigen sie Ihre Sofortnachrichten (Instant Messages) in einem anderen Fenster oder in einem einzigen Fenster mit viele Registerkarten an (Neustart erforderlich)."> - <radio_item label="Mehrere Fenster" name="radio" value="0"/> - <radio_item label="Ein Fenster" name="radio2" value="1"/> + <radio_group name="chat_window" tool_tip="Zeigen Sie Ihre Sofortnachrichten (Instant Messages) in einem anderen Fenster oder in einem einzigen Fenster mit viele Registerkarten an (Neustart erforderlich)."> + <radio_item label="Getrennte Fenster" name="radio" value="0"/> + <radio_item label="Registerkarten" name="radio2" value="1"/> </radio_group> </panel> diff --git a/indra/newview/skins/default/xui/de/panel_preferences_general.xml b/indra/newview/skins/default/xui/de/panel_preferences_general.xml index 2af1b72472..bd9e10b641 100644 --- a/indra/newview/skins/default/xui/de/panel_preferences_general.xml +++ b/indra/newview/skins/default/xui/de/panel_preferences_general.xml @@ -33,7 +33,7 @@ </text> <combo_box name="start_location_combo"> <combo_box.item label="Mein letzter Standort" name="MyLastLocation" tool_tip="Als Standardeinstellung in letztem Standort anmelden."/> - <combo_box.item label="Mein Heimatort" name="MyHome" tool_tip="Als Standardeinstellung in Zuhauseposition anmelden."/> + <combo_box.item label="Mein Zuhause" name="MyHome" tool_tip="Als Standardeinstellung in Zuhauseposition anmelden."/> </combo_box> <check_box initial_value="true" label="Beim Anmelden anzeigen" name="show_location_checkbox"/> <text name="name_tags_textbox"> @@ -42,7 +42,7 @@ <radio_group name="Name_Tag_Preference"> <radio_item label="Aus" name="radio" value="0"/> <radio_item label="An" name="radio2" value="1"/> - <radio_item label="Vorübergehend anzeigen" name="radio3" value="2"/> + <radio_item label="Kurz anzeigen" name="radio3" value="2"/> </radio_group> <check_box label="Meinen Namen anzeigen" name="show_my_name_checkbox1"/> <check_box initial_value="true" label="Kleine Avatarnamen" name="small_avatar_names_checkbox"/> diff --git a/indra/newview/skins/default/xui/de/panel_preferences_privacy.xml b/indra/newview/skins/default/xui/de/panel_preferences_privacy.xml index 43664f4f8a..29b402415c 100644 --- a/indra/newview/skins/default/xui/de/panel_preferences_privacy.xml +++ b/indra/newview/skins/default/xui/de/panel_preferences_privacy.xml @@ -3,7 +3,7 @@ <panel.string name="log_in_to_change"> Anmelden, um Änderungen vorzunehmen </panel.string> - <button label="Verlauf leeren" name="clear_cache"/> + <button label="Cache leeren" name="clear_cache"/> <text name="cache_size_label_l"> (Standorte, Bilder, Web, Suchverlauf) </text> @@ -13,6 +13,7 @@ <check_box label="Cookies annehmen" name="cookies_enabled"/> <check_box label="Medien aktiviert" name="media_enabled"/> <check_box label="Automatische Wiedergabe zulassen" name="autoplay_enabled"/> + <check_box label="Musik aktiviert" name="music_enabled"/> <text name="Logs:"> Protokolle: </text> @@ -20,7 +21,7 @@ <check_box label="IM Protokolle auf meinem Computer speichern" name="log_instant_messages"/> <check_box label="Zeitstempel hinzufügen" name="show_timestamps_check_im"/> <text name="log_path_desc"> - Speicherort für Protokolle: + Protokolle speichern in: </text> <button label="Durchsuchen" label_selected="Durchsuchen" name="log_path_button"/> <button label="Ignorierte Einwohner/Objekte" name="block_list" width="180"/> diff --git a/indra/newview/skins/default/xui/de/panel_preferences_setup.xml b/indra/newview/skins/default/xui/de/panel_preferences_setup.xml index 00be3920ca..2516cd3a40 100644 --- a/indra/newview/skins/default/xui/de/panel_preferences_setup.xml +++ b/indra/newview/skins/default/xui/de/panel_preferences_setup.xml @@ -18,29 +18,29 @@ kbit/s </text> <check_box label="Eigener Port" name="connection_port_enabled"/> - <spinner label="Portnummer:" name="web_proxy_port"/> + <spinner label="Port-Nummer:" name="connection_port"/> <text name="cache_size_label_l"> Cachegröße </text> <text name="text_box5"> MB </text> - <button label="Durchsuchen" label_selected="Durchsuchen" name="set_cache"/> - <button label="Zurücksetzen" label_selected="Zurücksetzen" name="reset_cache"/> <text name="Cache location"> Cache-Ordner: </text> + <button label="Durchsuchen" label_selected="Durchsuchen" name="set_cache"/> + <button label="Zurücksetzen" label_selected="Zurücksetzen" name="reset_cache"/> <text name="Web:"> Web: </text> <radio_group name="use_external_browser"> - <radio_item label="Integrierten Browser verwenden" name="internal" tool_tip="Integrierten Webbrowser verwenden, um die Hilfe, Weblinks usw. anzuzeigen. Dieser Browser öffnet als neues Fenster innerhalb von [APP_NAME]."/> - <radio_item label="Meinen Browser verwenden (IE, Firefox)" name="external" tool_tip="Standard Webbrowser des Systems verwenden, um die Hilfe, Weblinks usw. anzuzeigen. Bei Vollbildmodus nicht empfohlen."/> + <radio_item label="Integrierten Browser verwenden" name="internal" tool_tip="Integrierten Webbrowser verwenden, um die Hilfe, Weblinks usw. anzuzeigen. Dieser Browser öffnet als neues Fenster innerhalb von [APP_NAME]." value="0"/> + <radio_item label="Meinen Browser verwenden (IE, Firefox, Safari)" name="external" tool_tip="Standard Webbrowser des Systems verwenden, um die Hilfe, Weblinks usw. anzuzeigen. Bei Vollbildmodus nicht empfohlen." value="1"/> </radio_group> - <check_box initial_value="false" label="Web Proxy" name="web_proxy_enabled"/> - <line_editor name="web_proxy_editor" tool_tip="Name oder IP Adresse des Proxyservers, den Sie benutzen möchten"/> - <button label="Durchsuchen" label_selected="Durchsuchen" name="set_proxy"/> + <check_box initial_value="false" label="Web-Proxy aktivieren" name="web_proxy_enabled"/> <text name="Proxy location"> Proxy-Standort: </text> + <line_editor name="web_proxy_editor" tool_tip="Name oder IP Adresse des Proxyservers, den Sie benutzen möchten"/> + <spinner label="Portnummer:" name="web_proxy_port"/> </panel> diff --git a/indra/newview/skins/default/xui/de/panel_profile.xml b/indra/newview/skins/default/xui/de/panel_profile.xml index 4ce5ed8fba..cb598f89f6 100644 --- a/indra/newview/skins/default/xui/de/panel_profile.xml +++ b/indra/newview/skins/default/xui/de/panel_profile.xml @@ -28,11 +28,14 @@ </panel> <text name="title_member_text" value="Einwohner seit:"/> <text name="title_acc_status_text" value="Kontostatus:"/> - <text name="acc_status_text"> + <text_editor name="acc_status_text"> Einwohner. Keine Zahlungsinfo archiviert. Linden. - </text> + </text_editor> <text name="title_partner_text" value="Partner:"/> + <panel name="partner_data_panel"> + <name_box initial_value="(wird in Datenbank gesucht)" name="partner_text"/> + </panel> <text name="title_groups_text" value="Gruppen:"/> </panel> </scroll_container> @@ -43,6 +46,7 @@ <button label="Anrufen" name="call" tool_tip="Diesen Einwohner anrufen"/> <button label="Karte" name="show_on_map_btn" tool_tip="Einwohner auf Karte anzeigen" width="36"/> <button label="Teleportieren" name="teleport" tool_tip="Teleport anbieten"/> + <button label="▼" name="overflow_btn" tool_tip="Dem Einwohner Geld geben oder Inventar an den Einwohner schicken"/> </layout_panel> <layout_panel name="profile_me_buttons_panel"> <button label="Profil bearbeiten" name="edit_profile_btn" tool_tip="Ihre persönlichen Informationen bearbeiten"/> diff --git a/indra/newview/skins/default/xui/de/panel_script_limits_my_avatar.xml b/indra/newview/skins/default/xui/de/panel_script_limits_my_avatar.xml index 16bf4e8eb4..c91eb98e9c 100644 --- a/indra/newview/skins/default/xui/de/panel_script_limits_my_avatar.xml +++ b/indra/newview/skins/default/xui/de/panel_script_limits_my_avatar.xml @@ -1,5 +1,8 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <panel label="MEIN AVATAR" name="script_limits_my_avatar_panel"> + <text name="script_memory"> + Avatar-Skript-Gebrauch + </text> <text name="loading_text"> Wird geladen... </text> diff --git a/indra/newview/skins/default/xui/de/panel_script_limits_region_memory.xml b/indra/newview/skins/default/xui/de/panel_script_limits_region_memory.xml index 3eec66fe75..8d7cc1bf9a 100644 --- a/indra/newview/skins/default/xui/de/panel_script_limits_region_memory.xml +++ b/indra/newview/skins/default/xui/de/panel_script_limits_region_memory.xml @@ -3,20 +3,18 @@ <text name="script_memory"> Parzellenskript-Speicher </text> - <text name="parcels_listed"> - Parzelleneigentümer: - </text> - <text name="memory_used"> - Verwendeter Speicher: - </text> + <text name="parcels_listed"/> + <text name="memory_used"/> <text name="loading_text"> Wird geladen... </text> <scroll_list name="scripts_list"> <scroll_list.columns label="Größe (KB)" name="size" width="80"/> + <scroll_list.columns label="URLs" name="urls"/> <scroll_list.columns label="Objektname" name="name"/> <scroll_list.columns label="Objekteigentümer" name="owner" width="130"/> - <scroll_list.columns label="Parzelle / Standort" name="location"/> + <scroll_list.columns label="Parzelle" name="parcel"/> + <scroll_list.columns label="Standort" name="location"/> </scroll_list> <button label="Liste aktualisieren" name="refresh_list_btn" width="110"/> <button label="Markieren" name="highlight_btn"/> diff --git a/indra/newview/skins/default/xui/de/panel_side_tray.xml b/indra/newview/skins/default/xui/de/panel_side_tray.xml index 446117962f..ba9cdb7c87 100644 --- a/indra/newview/skins/default/xui/de/panel_side_tray.xml +++ b/indra/newview/skins/default/xui/de/panel_side_tray.xml @@ -11,7 +11,7 @@ </sidetray_tab> <sidetray_tab description="Freunde, Kontakte und Leute in Ihrer Nähe finden." name="sidebar_people" tab_title="Leute"> <panel_container name="panel_container"> - <panel label="Gruppeninfo" name="panel_group_info_sidetray"/> + <panel label="Gruppenprofil" name="panel_group_info_sidetray"/> <panel label="Ignorierte Einwohner & Objekte" name="panel_block_list_sidetray"/> </panel_container> </sidetray_tab> diff --git a/indra/newview/skins/default/xui/de/panel_status_bar.xml b/indra/newview/skins/default/xui/de/panel_status_bar.xml index 33fd0f6348..46b6c75698 100644 --- a/indra/newview/skins/default/xui/de/panel_status_bar.xml +++ b/indra/newview/skins/default/xui/de/panel_status_bar.xml @@ -24,7 +24,7 @@ <button label="" label_selected="" name="buycurrency" tool_tip="Mein Kontostand"/> <button label="L$ kaufen" name="buyL" tool_tip="Hier klicken, um mehr L$ zu kaufen"/> <text name="TimeText" tool_tip="Aktuelle Zeit (Pazifik)"> - 12:00 + 24:00 H PST </text> <button name="volume_btn" tool_tip="Steuerung der Gesamtlautstärke"/> </panel> diff --git a/indra/newview/skins/default/xui/de/sidepanel_task_info.xml b/indra/newview/skins/default/xui/de/sidepanel_task_info.xml index 9f8fdc085a..825acac79d 100644 --- a/indra/newview/skins/default/xui/de/sidepanel_task_info.xml +++ b/indra/newview/skins/default/xui/de/sidepanel_task_info.xml @@ -37,7 +37,7 @@ Mischverkauf </panel.string> <text name="title" value="Objektprofil"/> - <text name="where" value="(Inworld)"/> + <text name="where" value="(inworld)"/> <panel label=""> <text name="Name:"> Name: @@ -122,7 +122,7 @@ </panel> <panel name="button_panel"> <button label="Öffnen" name="open_btn"/> - <button label="Zahlen" name="pay_btn"/> + <button label="Bezahlen" name="pay_btn"/> <button label="Kaufen" name="buy_btn"/> </panel> </panel> diff --git a/indra/newview/skins/default/xui/de/strings.xml b/indra/newview/skins/default/xui/de/strings.xml index 858bbf27b1..f1f7cef877 100644 --- a/indra/newview/skins/default/xui/de/strings.xml +++ b/indra/newview/skins/default/xui/de/strings.xml @@ -227,9 +227,6 @@ <string name="AvatarNameMultiple"> (mehrere) </string> - <string name="AvatarNameHippos"> - (hippos) - </string> <string name="GroupNameNone"> (keiner) </string> @@ -593,6 +590,9 @@ <string name="hang_up"> Verbindung mit In-Welt-Voice-Chat getrennt </string> + <string name="reconnect_nearby"> + Sie werden nun wieder mit dem Chat in Ihrer Nähe verbunden + </string> <string name="ScriptQuestionCautionChatGranted"> Dem Objekt „[OBJECTNAME]“, ein Objekt von „[OWNERNAME]“, in [REGIONNAME] [REGIONPOS], wurde folgende Berechtigung erteilt: [PERMISSIONS]. </string> @@ -1324,6 +1324,9 @@ <string name="ScriptLimitsRequestError"> Fehler bei Informationsabruf </string> + <string name="ScriptLimitsRequestNoParcelSelected"> + Keine Parzellen wurden ausgewählt + </string> <string name="ScriptLimitsRequestWrongRegion"> Fehler: Skriptinformationen sind nur für Ihre aktuelle Region verfügbar </string> diff --git a/indra/newview/skins/default/xui/en/floater_about_land.xml b/indra/newview/skins/default/xui/en/floater_about_land.xml index 44c9284b36..593bbe4b5e 100644 --- a/indra/newview/skins/default/xui/en/floater_about_land.xml +++ b/indra/newview/skins/default/xui/en/floater_about_land.xml @@ -369,7 +369,7 @@ Leyla Linden </text> layout="topleft" left_delta="0" name="Sell with landowners objects in parcel." - top_pad="-3" + top_pad="-2" width="186"> Objects included in sale </text> diff --git a/indra/newview/skins/default/xui/en/floater_event.xml b/indra/newview/skins/default/xui/en/floater_event.xml new file mode 100644 index 0000000000..9ce0c9c86d --- /dev/null +++ b/indra/newview/skins/default/xui/en/floater_event.xml @@ -0,0 +1,243 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes" ?> +<floater + follows="all" + height="350" + label="Event" + layout="topleft" + name="Event" + width="330"> + <floater.string + name="none"> + none + </floater.string> + <floater.string + name="notify"> + Notify + </floater.string> + <floater.string + name="dont_notify"> + Don't Notify + </floater.string> + <layout_stack + name="layout" + orientation="vertical" + follows="all" + layout="topleft" + left="0" + top="0" + height="350" + width="330" + border_size="0"> + <layout_panel + name="profile_stack" + follows="all" + layout="topleft" + top="0" + left="0" + height="305" + width="330"> + <text + follows="top|left|right" + font="SansSerifLarge" + text_color="white" + height="17" + layout="topleft" + left="10" + name="event_name" + top="5" + use_ellipses="true" + width="310"> + Nameless Event...of Doom! De doom! Doom doom. + </text> + <text + type="string" + length="1" + follows="top|left" + height="13" + text_color="LtGray_50" + layout="topleft" + left="25" + name="event_category" + width="300"> + (no category) + </text> + + <text + type="string" + length="1" + follows="top|left" + layout="topleft" + left="10" + top_pad="7" + name="event_runby_label" + width="310"> + Run by: + </text> + <text + follows="left|top" + height="20" + initial_value="(retrieving)" + layout="topleft" + left="10" + link="true" + name="event_runby" + top_pad="2" + use_ellipses="true" + width="310" /> + <text + type="string" + length="1" + left="10" + height="17" + font="SansSerifMedium" + text_color="EmphasisColor" + top_pad="5" + follows="top|left" + layout="topleft" + name="event_date" + width="310"> + 10/10/2010 + </text> + <text + type="string" + height="14" + length="1" + left="10" + follows="top|left" + layout="topleft" + name="event_duration" + width="310"> + 1 hour + </text> + <text + font="SansSerifMedium" + text_color="EmphasisColor" + type="string" + follows="left|top" + height="16" + layout="topleft" + left="10" + name="event_cover" + visible="true" + width="310"> + Free + </text> + <text + type="string" + length="1" + follows="top|left" + layout="topleft" + left="10" + top_pad="5" + name="event_location_label"> + Location: + </text> + <text + type="string" + length="1" + height="20" + left="10" + follows="top|left" + layout="topleft" + name="event_location" + use_ellipses="true" + value="SampleParcel, Name Long (145, 228, 26)" + width="310" /> + <icon + follows="top|left" + height="16" + image_name="Parcel_PG_Dark" + layout="topleft" + left="10" + name="rating_icon" + width="18" /> + <text + follows="left|top" + height="16" + layout="topleft" + left_pad="12" + name="rating_label" + top_delta="3" + value="Rating:" + width="60" /> + <text + follows="left|right|top" + height="16" + layout="topleft" + left_pad="0" + name="rating_value" + top_delta="0" + value="unknown" + width="200" /> + <expandable_text + follows="left|top|right" + height="106" + layout="topleft" + left="6" + name="event_desc" + width="313" /> + </layout_panel> + <layout_panel + follows="left|right" + height="24" + layout="topleft" + mouse_opaque="false" + name="button_panel" + top="0" + left="0" + user_resize="false"> + <button + follows="left|top" + height="18" + image_selected="AddItem_Press" + image_unselected="AddItem_Off" + image_disabled="AddItem_Disabled" + layout="topleft" + left="6" + name="create_event_btn" + picture_style="true" + tool_tip="Create Event" + width="18" /> + <button + follows="left|top" + height="18" + image_selected="MinusItem_Press" + image_unselected="MinusItem_Off" + image_disabled="MinusItem_Disabled" + layout="topleft" + visible="false" + left="6" + top_pad="-7" + name="god_delete_event_btn" + picture_style="true" + tool_tip="Delete Event" + width="18" /> + <button + follows="left|top" + height="23" + label="Notify Me" + layout="topleft" + left_pad="3" + top_delta="-12" + name="notify_btn" + width="100" /> + <button + follows="left|top" + height="23" + label="Teleport" + layout="topleft" + left_pad="5" + name="teleport_btn" + width="100" /> + <button + follows="left|top" + height="23" + label="Map" + layout="topleft" + left_pad="5" + name="map_btn" + width="85" /> + </layout_panel> + </layout_stack> + </floater> + diff --git a/indra/newview/skins/default/xui/en/floater_moveview.xml b/indra/newview/skins/default/xui/en/floater_moveview.xml index 0bdcbf30df..851a689d42 100644 --- a/indra/newview/skins/default/xui/en/floater_moveview.xml +++ b/indra/newview/skins/default/xui/en/floater_moveview.xml @@ -83,7 +83,7 @@ left="10" name="move up btn" scale_image="false" - tool_tip="Fly up, press "E"" + tool_tip="Fly up, press E" top="14" width="25" /> <button @@ -96,7 +96,7 @@ left_pad="45" name="move down btn" scale_image="false" - tool_tip="Fly down, press "C"" + tool_tip="Fly down, press C" top_delta="0" width="20" /> <joystick_turn diff --git a/indra/newview/skins/default/xui/en/floater_outfit_save_as.xml b/indra/newview/skins/default/xui/en/floater_outfit_save_as.xml index 16079b30cb..a2938e8574 100644 --- a/indra/newview/skins/default/xui/en/floater_outfit_save_as.xml +++ b/indra/newview/skins/default/xui/en/floater_outfit_save_as.xml @@ -4,6 +4,7 @@ can_minimize="false" height="100" layout="topleft" + title="Save Outfit" name="modal container" width="240"> <button diff --git a/indra/newview/skins/default/xui/en/floater_outgoing_call.xml b/indra/newview/skins/default/xui/en/floater_outgoing_call.xml index cc9afe4474..2bafd1bdef 100644 --- a/indra/newview/skins/default/xui/en/floater_outgoing_call.xml +++ b/indra/newview/skins/default/xui/en/floater_outgoing_call.xml @@ -96,13 +96,24 @@ No Answer. Please try again later. height="40" layout="topleft" left="77" - name="nearby_P2P" + name="nearby_P2P_by_other" top="27" width="315" word_wrap="true"> [VOICE_CHANNEL_NAME] has ended the call. [RECONNECT_NEARBY] </text> <text + font="SansSerifLarge" + height="40" + layout="topleft" + left="77" + name="nearby_P2P_by_agent" + top="27" + width="315" + word_wrap="true"> + You have ended the call. [RECONNECT_NEARBY] + </text> + <text font="SansSerif" height="50" layout="topleft" diff --git a/indra/newview/skins/default/xui/en/floater_postcard.xml b/indra/newview/skins/default/xui/en/floater_postcard.xml index 3a7b6cc832..6f78363b25 100644 --- a/indra/newview/skins/default/xui/en/floater_postcard.xml +++ b/indra/newview/skins/default/xui/en/floater_postcard.xml @@ -128,19 +128,9 @@ width="420"> Type your message here. </text_editor> - <text - type="string" - length="1" - bottom_delta="37" - follows="left|bottom" - layout="topleft" - left="12" - name="fine_print"> - If your recipient joins SL, you'll get a referral bonus. - </text> <button follows="right|bottom" - height="20" + height="23" label="Cancel" layout="topleft" name="cancel_btn" @@ -149,7 +139,7 @@ width="100" /> <button follows="right|bottom" - height="20" + height="23" label="Send" layout="topleft" left_delta="-106" diff --git a/indra/newview/skins/default/xui/en/floater_preview_texture.xml b/indra/newview/skins/default/xui/en/floater_preview_texture.xml index fc6f06ffd4..7fd7eab867 100644 --- a/indra/newview/skins/default/xui/en/floater_preview_texture.xml +++ b/indra/newview/skins/default/xui/en/floater_preview_texture.xml @@ -118,7 +118,7 @@ <button follows="right|bottom" height="22" - label="Cancel" + label="Discard" layout="topleft" left_pad="5" name="Discard" diff --git a/indra/newview/skins/default/xui/en/floater_tools.xml b/indra/newview/skins/default/xui/en/floater_tools.xml index 710c4447d4..ceca9385f3 100644 --- a/indra/newview/skins/default/xui/en/floater_tools.xml +++ b/indra/newview/skins/default/xui/en/floater_tools.xml @@ -67,80 +67,75 @@ </floater.string> <button follows="left|top" - height="20" - image_disabled="Tool_Zoom" - image_disabled_selected="Tool_Zoom" - image_selected="Tool_Zoom_Selected" - image_unselected="Tool_Zoom" + height="25" + image_bottom_pad="1" + image_overlay="Tool_Zoom" + image_selected="PushButton_Selected_Press" layout="topleft" left="10" name="button focus" tool_tip="Focus" - width="20"> + width="35"> <button.commit_callback function="BuildTool.setTool" parameter="Focus" /> </button> <button follows="left|top" - height="20" - image_disabled="Tool_Grab" - image_disabled_selected="Tool_Grab" - image_selected="Tool_Grab_Selected" - image_unselected="Tool_Grab" + height="25" + image_bottom_pad="1" + image_overlay="Tool_Grab" + image_selected="PushButton_Selected_Press" layout="topleft" - left_pad="20" + left_pad="10" name="button move" tool_tip="Move" - width="20"> + width="35"> <button.commit_callback function="BuildTool.setTool" parameter="Move" /> </button> <button follows="left|top" - height="20" - image_disabled="Tool_Face" - image_disabled_selected="Tool_Face" - image_selected="Tool_Face_Selected" - image_unselected="Tool_Face" + height="25" + image_bottom_pad="1" + image_overlay="Tool_Face" + image_selected="PushButton_Selected_Press" layout="topleft" - left_pad="20" + left_pad="10" name="button edit" tool_tip="Edit" - width="20"> + width="35"> <button.commit_callback function="BuildTool.setTool" parameter="Edit" /> </button> <button follows="left|top" - height="20" - image_disabled="Tool_Create" - image_disabled_selected="Tool_Create" - image_selected="Tool_Create_Selected" - image_unselected="Tool_Create" + height="25" + image_bottom_pad="1" + image_overlay="Tool_Create" + image_selected="PushButton_Selected_Press" layout="topleft" - left_pad="20" + left_pad="10" name="button create" tool_tip="Create" - width="20"> + width="35"> <button.commit_callback function="BuildTool.setTool" parameter="Create" /> </button> <button follows="left|top" - height="20" - image_disabled="Tool_Dozer" - image_disabled_selected="Tool_Dozer" - image_selected="Tool_Dozer_Selected" - image_unselected="Tool_Dozer" + height="25" + image_bottom_pad="1" + image_overlay="Tool_Dozer" + image_selected="PushButton_Selected_Press" layout="topleft" - left_pad="20" + left_pad="10" name="button land" tool_tip="Land" - width="20"> + width="35"> <button.commit_callback function="BuildTool.setTool" parameter="Land" /> @@ -1043,7 +1038,7 @@ even though the user gets a free copy. <check_box height="15" width="110" - top_pad="3" + top_pad="5" label="Show in search" layout="topleft" left="100" diff --git a/indra/newview/skins/default/xui/en/main_view.xml b/indra/newview/skins/default/xui/en/main_view.xml index 1d4377e339..7b6081d7be 100644 --- a/indra/newview/skins/default/xui/en/main_view.xml +++ b/indra/newview/skins/default/xui/en/main_view.xml @@ -162,6 +162,12 @@ mouse_opaque="false" name="Menu Holder" width="1024"/> + <panel top="0" + follows="all" + height="768" + mouse_opaque="false" + name="popup_holder" + width="1024"/> <snapshot_floater_view enabled="false" follows="all" height="768" diff --git a/indra/newview/skins/default/xui/en/menu_inspect_avatar_gear.xml b/indra/newview/skins/default/xui/en/menu_inspect_avatar_gear.xml index 85ec174829..1b002b1c32 100644 --- a/indra/newview/skins/default/xui/en/menu_inspect_avatar_gear.xml +++ b/indra/newview/skins/default/xui/en/menu_inspect_avatar_gear.xml @@ -116,4 +116,10 @@ <menu_item_call.on_click function="InspectAvatar.Pay"/> </menu_item_call> + <menu_item_call + label="Share" + name="share"> + <menu_item_call.on_click + function="InspectAvatar.Share"/> + </menu_item_call> </menu> diff --git a/indra/newview/skins/default/xui/en/menu_object.xml b/indra/newview/skins/default/xui/en/menu_object.xml index 5a9509e284..d66818e91a 100644 --- a/indra/newview/skins/default/xui/en/menu_object.xml +++ b/indra/newview/skins/default/xui/en/menu_object.xml @@ -87,16 +87,6 @@ label="Remove ▶" name="Remove"> <menu_item_call - enabled="false" - label="Take" - name="Pie Object Take"> - <menu_item_call.on_click - function="Tools.BuyOrTake" /> - <menu_item_call.on_enable - function="Tools.EnableBuyOrTake" - parameter="Buy,Take" /> - </menu_item_call> - <menu_item_call enabled="false" label="Report Abuse" name="Report Abuse..."> @@ -134,6 +124,16 @@ </menu_item_call> </context_menu> <menu_item_separator layout="topleft" /> + <menu_item_call + enabled="false" + label="Take" + name="Pie Object Take"> + <menu_item_call.on_click + function="Tools.BuyOrTake" /> + <menu_item_call.on_enable + function="Tools.EnableBuyOrTake" + parameter="Buy,Take" /> + </menu_item_call> <menu_item_call enabled="false" label="Take Copy" diff --git a/indra/newview/skins/default/xui/en/menu_people_nearby.xml b/indra/newview/skins/default/xui/en/menu_people_nearby.xml index c4da1df017..9d2ccba4da 100644 --- a/indra/newview/skins/default/xui/en/menu_people_nearby.xml +++ b/indra/newview/skins/default/xui/en/menu_people_nearby.xml @@ -20,6 +20,16 @@ parameter="can_add" /> </menu_item_call> <menu_item_call + label="Remove Friend" + layout="topleft" + name="Remove Friend"> + <menu_item_call.on_click + function="Avatar.RemoveFriend" /> + <menu_item_call.on_enable + function="Avatar.EnableItem" + parameter="can_delete" /> + </menu_item_call> + <menu_item_call label="IM" layout="topleft" name="IM"> diff --git a/indra/newview/skins/default/xui/en/menu_people_nearby_multiselect.xml b/indra/newview/skins/default/xui/en/menu_people_nearby_multiselect.xml index 0d3dd3366d..588342595e 100644 --- a/indra/newview/skins/default/xui/en/menu_people_nearby_multiselect.xml +++ b/indra/newview/skins/default/xui/en/menu_people_nearby_multiselect.xml @@ -14,6 +14,16 @@ parameter="can_add" /> </menu_item_call> <menu_item_call + label="Remove Friends" + layout="topleft" + name="Remove Friend"> + <menu_item_call.on_click + function="Avatar.RemoveFriend" /> + <menu_item_call.on_enable + function="Avatar.EnableItem" + parameter="can_delete" /> + </menu_item_call> + <menu_item_call label="IM" layout="topleft" name="IM"> diff --git a/indra/newview/skins/default/xui/en/menu_profile_overflow.xml b/indra/newview/skins/default/xui/en/menu_profile_overflow.xml index 407ce14e81..5162a4902f 100644 --- a/indra/newview/skins/default/xui/en/menu_profile_overflow.xml +++ b/indra/newview/skins/default/xui/en/menu_profile_overflow.xml @@ -19,19 +19,22 @@ <menu_item_call.on_click function="Profile.Share" /> </menu_item_call> - <menu_item_check - label="Block/Unblock" - layout="topleft" - name="block_unblock"> - <menu_item_check.on_click - function="Profile.BlockUnblock" /> - <menu_item_check.on_check - function="Profile.CheckItem" - parameter="is_blocked" /> - <menu_item_check.on_enable - function="Profile.EnableItem" - parameter="can_block" /> - </menu_item_check> + <menu_item_call + label="Block" + name="block"> + <menu_item_call.on_click + function="Profile.BlockUnblock"/> + <menu_item_call.on_visible + function="Profile.EnableBlock" /> + </menu_item_call> + <menu_item_call + label="Unblock" + name="unblock"> + <menu_item_call.on_click + function="Profile.BlockUnblock"/> + <menu_item_call.on_visible + function="Profile.EnableUnblock" /> + </menu_item_call> <menu_item_call label="Kick" layout="topleft" diff --git a/indra/newview/skins/default/xui/en/menu_viewer.xml b/indra/newview/skins/default/xui/en/menu_viewer.xml index 22f4d277a4..e11b18ec31 100644 --- a/indra/newview/skins/default/xui/en/menu_viewer.xml +++ b/indra/newview/skins/default/xui/en/menu_viewer.xml @@ -55,9 +55,10 @@ </menu_item_call> <menu_item_check label="My Inventory" - layout="topleft" name="Inventory" - shortcut="control|shift|I"> + layout="topleft" + shortcut="control|shift|I" + visible="false"> <menu_item_check.on_check function="Floater.Visible" parameter="inventory" /> @@ -65,24 +66,31 @@ function="Floater.Toggle" parameter="inventory" /> </menu_item_check> - <menu_item_call - label="Show Inventory in Side Tray" + <menu_item_check + label="My Inventory" name="ShowSidetrayInventory" + layout="topleft" shortcut="control|I" - visible="false"> - <menu_item_call.on_click + visible="true"> + <menu_item_check.on_check + function="SidetrayPanelVisible" + parameter="sidepanel_inventory" /> + <menu_item_check.on_click function="ShowSidetrayPanel" parameter="sidepanel_inventory" /> - </menu_item_call> - <menu_item_call + </menu_item_check> + <menu_item_check label="My Gestures" layout="topleft" name="Gestures" shortcut="control|G"> - <menu_item_call.on_click + <menu_item_check.on_check + function="Floater.Visible" + parameter="gestures" /> + <menu_item_check.on_click function="Floater.Toggle" parameter="gestures" /> - </menu_item_call> + </menu_item_check> <menu label="My Status" layout="topleft" @@ -303,8 +311,7 @@ function="Floater.Visible" parameter="moveview" /> <menu_item_check.on_click - function="Floater.Toggle" - parameter="moveview" /> + function="World.Toggle.MovementControls" /> </menu_item_check> <menu_item_check label="View Controls" @@ -314,8 +321,7 @@ function="Floater.Visible" parameter="camera" /> <menu_item_check.on_click - function="Floater.Toggle" - parameter="camera" /> + function="World.Toggle.CameraControls" /> </menu_item_check> <menu_item_check label="Ban Lines" @@ -1594,6 +1600,17 @@ name="Shortcuts" tear_off="true" visible="false"> + <menu_item_call + label="Image (L$[COST])..." + layout="topleft" + name="Upload Image" + shortcut="control|U"> + <menu_item_call.on_click + function="File.UploadImage" + parameter="" /> + <menu_item_call.on_enable + function="File.EnableUpload" /> + </menu_item_call> <menu_item_check label="Search" layout="topleft" diff --git a/indra/newview/skins/default/xui/en/notifications.xml b/indra/newview/skins/default/xui/en/notifications.xml index 8aef83a379..867e320ffe 100644 --- a/indra/newview/skins/default/xui/en/notifications.xml +++ b/indra/newview/skins/default/xui/en/notifications.xml @@ -19,7 +19,7 @@ <button default="true" index="0" - name="OK" + name="OK_okbutton" text="$yestext"/> </form> </template> @@ -29,7 +29,7 @@ <button default="true" index="0" - name="OK" + name="OK_okignore" text="$yestext"/> <ignore text="$ignoretext"/> </form> @@ -40,11 +40,11 @@ <button default="true" index="0" - name="OK" + name="OK_okcancelbuttons" text="$yestext"/> <button index="1" - name="Cancel" + name="Cancel_okcancelbuttons" text="$notext"/> </form> </template> @@ -54,11 +54,11 @@ <button default="true" index="0" - name="OK" + name="OK_okcancelignore" text="$yestext"/> <button index="1" - name="Cancel" + name="Cancel_okcancelignore" text="$notext"/> <ignore text="$ignoretext"/> </form> @@ -69,7 +69,7 @@ <button default="true" index="0" - name="OK" + name="OK_okhelpbuttons" text="$yestext"/> <button index="1" @@ -91,7 +91,7 @@ text="$notext"/> <button index="2" - name="Cancel" + name="Cancel_yesnocancelbuttons" text="$canceltext"/> </form> </template> @@ -2297,6 +2297,9 @@ Display settings have been set to recommended levels based on your system config name="ErrorMessage" type="alertmodal"> [ERROR_MESSAGE] + <usetemplate + name="okbutton" + yestext="OK"/> </notification> <notification diff --git a/indra/newview/skins/default/xui/en/panel_edit_classified.xml b/indra/newview/skins/default/xui/en/panel_edit_classified.xml index a357ba1d97..cc09835049 100644 --- a/indra/newview/skins/default/xui/en/panel_edit_classified.xml +++ b/indra/newview/skins/default/xui/en/panel_edit_classified.xml @@ -3,7 +3,7 @@ background_visible="true" bevel_style="in" follows="left|top|right|bottom" - height="570" + height="569" label="Edit Classified" layout="topleft" left="0" @@ -23,7 +23,7 @@ layout="topleft" name="back_btn" picture_style="true" - left="11" + left="12" tab_stop="false" top="2" width="23" /> @@ -46,12 +46,12 @@ follows="all" height="502" layout="topleft" - left="9" + left="8" top_pad="10" name="profile_scroll" reserve_scroll_corner="false" opaque="true" - width="310"> + width="312"> <panel name="scroll_content_panel" follows="left|top" @@ -71,15 +71,15 @@ left="11" name="classified_snapshot" /> <icon - height="18" - image_name="AddItem_Off" + height="197" + image_name="spacer24.tga" layout="topleft" - right="-5" name="edit_icon" label="" tool_tip="Click to select an image" - top="17" - width="18" /> + top="10" + left="11" + width="286" /> <text type="string" length="1" @@ -232,7 +232,7 @@ height="23" label="bottom_panel" layout="topleft" - left="9" + left="8" name="bottom_panel" top_pad="5" width="303"> @@ -252,6 +252,6 @@ layout="topleft" name="cancel_btn" left_pad="3" - width="152" /> + width="153" /> </panel> </panel> diff --git a/indra/newview/skins/default/xui/en/panel_edit_pick.xml b/indra/newview/skins/default/xui/en/panel_edit_pick.xml index 6ef762dc1d..657e369beb 100644 --- a/indra/newview/skins/default/xui/en/panel_edit_pick.xml +++ b/indra/newview/skins/default/xui/en/panel_edit_pick.xml @@ -3,7 +3,7 @@ background_visible="true" bevel_style="in" follows="left|top|right|bottom" - height="570" + height="569" label="Edit Pick" layout="topleft" left="0" @@ -18,7 +18,7 @@ image_overlay="BackArrow_Off" layout="topleft" name="back_btn" - left="11" + left="12" tab_stop="false" top="2" width="23" /> @@ -41,11 +41,11 @@ follows="all" height="502" layout="topleft" - left="9" + left="8" top_pad="10" name="profile_scroll" opaque="true" - width="310"> + width="312"> <panel name="scroll_content_panel" follows="left|top|right" @@ -66,15 +66,15 @@ left="11" name="pick_snapshot" /> <icon - height="18" - image_name="AddItem_Off" + height="197" + image_name="spacer24.tga" layout="topleft" - right="-5" name="edit_icon" label="" tool_tip="Click to select an image" - top="17" - width="18" /> + top="10" + left="11" + width="286" /> <text type="string" length="1" @@ -172,7 +172,7 @@ height="23" label="bottom_panel" layout="topleft" - left="9" + left="8" name="bottom_panel" top_pad="5" width="303"> @@ -192,6 +192,6 @@ layout="topleft" name="cancel_btn" left_pad="3" - width="152" /> + width="153" /> </panel> </panel> diff --git a/indra/newview/skins/default/xui/en/panel_edit_profile.xml b/indra/newview/skins/default/xui/en/panel_edit_profile.xml index 2a2199fc87..26be8440e7 100644 --- a/indra/newview/skins/default/xui/en/panel_edit_profile.xml +++ b/indra/newview/skins/default/xui/en/panel_edit_profile.xml @@ -60,11 +60,11 @@ <scroll_container color="DkGray2" follows="all" - height="493" + height="494" min_height="300" layout="topleft" - left="9" - width="290" + left="8" + width="292" name="profile_scroll" reserve_scroll_corner="true" opaque="true" @@ -74,19 +74,19 @@ follows="left|top|right" layout="topleft" top="0" - height="493" + height="494" min_height="300" left="0" - width="290"> + width="292"> <panel name="data_panel" follows="left|top|right" layout="topleft" top="0" - height="493" + height="494" min_height="300" left="0" - width="290"> + width="292"> <panel name="lifes_images_panel" follows="left|top|right" @@ -94,7 +94,7 @@ layout="topleft" top="0" left="0" - width="290"> + width="292"> <panel follows="left|top" height="117" @@ -102,7 +102,7 @@ left="10" name="second_life_image_panel" top="0" - width="280"> + width="282"> <text follows="left|top|right" font.style="BOLD" @@ -127,15 +127,15 @@ width="102" /> </panel> <icon - height="18" - image_name="AddItem_Off" + height="102" + image_name="spacer24.tga" layout="topleft" name="2nd_life_edit_icon" label="" - left="87" + left="11" + top_pad="-92" tool_tip="Click to select an image" - top="25" - width="18" /> + width="102" /> </panel> <text_editor type="string" @@ -183,15 +183,15 @@ width="102" /> </panel> <icon - height="18" - image_name="AddItem_Off" + height="102" + image_name="spacer24.tga" layout="topleft" name="real_world_edit_icon" label="" - left="87" + left="11" + top_pad="-92" tool_tip="Click to select an image" - top="148" - width="18" /> + width="102" /> <text_editor type="string" length="1" @@ -230,7 +230,7 @@ top_pad="0" value="http://" name="homepage_edit" - width="270"> + width="272"> </line_editor> <check_box follows="left|top" @@ -334,7 +334,7 @@ height="23" label="Save Changes" layout="topleft" - left="9" + left="8" name="save_btn" top="5" width="152" /> @@ -343,8 +343,8 @@ height="23" label="Cancel" layout="topleft" - left_pad="4" + left_pad="3" name="cancel_btn" - width="152" /> + width="153" /> </panel> </panel> diff --git a/indra/newview/skins/default/xui/en/panel_group_general.xml b/indra/newview/skins/default/xui/en/panel_group_general.xml index 618167181f..41e53be29e 100644 --- a/indra/newview/skins/default/xui/en/panel_group_general.xml +++ b/indra/newview/skins/default/xui/en/panel_group_general.xml @@ -3,7 +3,7 @@ label="General" follows="all" height="604" - width="313" + width="303" class="panel_group_general" name="general_tab"> <panel.string @@ -20,15 +20,84 @@ Hover your mouse over the options for more help. name="incomplete_member_data_str"> Retrieving member data </panel.string> + <panel + name="group_info_top" + follows="top|left" + top="0" + left="0" + height="129" + width="313" + layout="topleft"> + <texture_picker + follows="left|top" + height="110" + label="" + layout="topleft" + left="10" + name="insignia" + no_commit_on_selection="true" + tool_tip="Click to choose a picture" + top="5" + width="100" /> + <text + font="SansSerifSmall" + text_color="White_50" + width="190" + follows="top|left" + layout="topleft" + mouse_opaque="false" + type="string" + height="16" + length="1" + left_pad="10" + name="prepend_founded_by" + top_delta="0"> + Founder: + </text> + <name_box + follows="left|top" + height="16" + initial_value="(retrieving)" + layout="topleft" + left_delta="0" + link="true" + name="founder_name" + top_pad="2" + use_ellipses="true" + width="190" /> + <text + font="SansSerifMedium" + text_color="EmphasisColor" + type="string" + follows="left|top" + height="16" + layout="topleft" + left_delta="0" + name="join_cost_text" + top_pad="10" + visible="true" + width="190"> + Free + </text> + <button + follows="left|top" + left_delta="0" + top_pad="6" + height="23" + label="JOIN NOW!" + name="btn_join" + visible="true" + width="120" /> + </panel> <text_editor type="string" follows="left|top|right" left="5" - height="150" + height="80" layout="topleft" max_length="511" name="charter" - top="5" + top="105" right="-1" bg_readonly_color="DkGray2" text_readonly_color="White" @@ -40,7 +109,7 @@ Hover your mouse over the options for more help. draw_heading="true" follows="left|top|right" heading_height="23" - height="200" + height="160" layout="topleft" left="0" name="visible_members" @@ -110,9 +179,9 @@ Hover your mouse over the options for more help. top_pad="5" width="295" /> <panel - background_visible="true" - bevel_style="in" - border="true" + background_visible="false" + bevel_style="none" + border="false" bg_alpha_color="FloaterUnfocusBorderColor" follows="left|top|right" height="140" diff --git a/indra/newview/skins/default/xui/en/panel_group_info_sidetray.xml b/indra/newview/skins/default/xui/en/panel_group_info_sidetray.xml index 9727c54c6b..5373699c02 100644 --- a/indra/newview/skins/default/xui/en/panel_group_info_sidetray.xml +++ b/indra/newview/skins/default/xui/en/panel_group_info_sidetray.xml @@ -31,7 +31,7 @@ background_visible="true" follows="top|left" top="0" left="0" - height="129" + height="29" width="313" layout="topleft"> <button @@ -40,7 +40,7 @@ background_visible="true" image_overlay="BackArrow_Off" layout="topleft" name="back" - left="10" + left="8" tab_stop="false" top="2" width="23" /> @@ -48,14 +48,14 @@ background_visible="true" layout="topleft" name="group_name" value="(Loading...)" - font="SansSerifHuge" - height="20" - left_pad="5" - text_color="white" - top="3" + font="SansSerifHugeBold" + height="26" + left_pad="10" + text_color="LtGray" + top="0" use_ellipses="true" - width="270" - follows="top|left" + width="275" + follows="top|left|right" word_wrap="true" mouse_opaque="false"/> <line_editor @@ -70,77 +70,21 @@ background_visible="true" width="270" height="20" visible="false" /> - <texture_picker - follows="left|top" - height="113" - label="" - layout="topleft" - left="10" - name="insignia" - no_commit_on_selection="true" - tool_tip="Click to choose a picture" - top_pad="5" - width="100" /> - <text - font="SansSerifSmall" - text_color="White_50" - width="190" - follows="top|left" - layout="topleft" - mouse_opaque="false" - type="string" - height="16" - length="1" - left_pad="10" - name="prepend_founded_by" - top_delta="0"> - Founder: - </text> - <name_box - follows="left|top" - height="16" - initial_value="(retrieving)" - layout="topleft" - left_delta="0" - link="true" - name="founder_name" - top_pad="2" - use_ellipses="true" - width="190" /> - <text - font="SansSerifMedium" - text_color="EmphasisColor" - type="string" - follows="left|top" - height="16" - layout="topleft" - left_delta="0" - name="join_cost_text" - top_pad="10" - visible="true" - width="190"> - Free - </text> - <button - follows="left|top" - left_delta="0" - top_pad="6" - height="23" - label="JOIN NOW!" - name="btn_join" - visible="true" - width="120" /> </panel> <layout_stack name="layout" orientation="vertical" follows="all" - left="0" + left="8" top_pad="0" - height="437" - width="313" + height="536" + width="292" border_size="0"> <layout_panel + bg_alpha_color="DkGray2" + bg_opaque_color="DkGray2" + background_visible="true" + background_opaque="true" name="group_accordions" follows="all" layout="topleft" @@ -215,10 +159,11 @@ background_visible="true" </accordion> </layout_panel> <layout_panel - height="25" + height="30" layout="topleft" auto_resize="false" left="0" + top_pad="0" name="button_row" follows="bottom|left" width="313"> @@ -227,56 +172,52 @@ background_visible="true" height="23" image_overlay="Refresh_Off" layout="topleft" - left="5" - top="0" + left="0" + top="5" name="btn_refresh" width="23" /> - <button - follows="bottom|left" - height="18" - image_selected="AddItem_Press" - image_unselected="AddItem_Off" - image_disabled="AddItem_Disabled" - layout="topleft" - left_pad="2" - top_delta="3" - name="btn_create" - visible="true" - tool_tip="Create a new Group" - width="18" /> - <!-- <button - left_pad="10" - height="20" - label="Cancel" - label_selected="Cancel" - name="btn_cancel" - visible="false" - width="65" />--> <button follows="bottom|left" label="Chat" name="btn_chat" - left_pad="2" + left_pad="3" height="23" - top_delta="-3" - width="60" /> + width="82" /> <button follows="bottom|left" - left_pad="2" + left_pad="3" height="23" name="btn_call" label="Group Call" layout="topleft" tool_tip="Call this group" - width="95" /> + width="112" /> <button follows="bottom|left" height="23" label="Save" label_selected="Save" name="btn_apply" - left_pad="2" - width="85" /> + left_pad="3" + width="82" /> + <button + follows="bottom|left" + height="23" + layout="topleft" + left="0" + label="Create Group" + name="btn_create" + visible="true" + tool_tip="Create a new Group" + width="103" /> + <!--<button + left_pad="3" + height="23" + label="Cancel" + label_selected="Cancel" + name="btn_cancel" + visible="false" + width="65" />--> </layout_panel> </layout_stack> </panel> diff --git a/indra/newview/skins/default/xui/en/panel_group_notices.xml b/indra/newview/skins/default/xui/en/panel_group_notices.xml index 1f16aea2ef..5f46ad7860 100644 --- a/indra/newview/skins/default/xui/en/panel_group_notices.xml +++ b/indra/newview/skins/default/xui/en/panel_group_notices.xml @@ -159,7 +159,6 @@ Maximum 200 per group daily left_pad="3" max_length="511" name="create_message" - text_type="ascii" top_delta="0" width="220" word_wrap="true" /> diff --git a/indra/newview/skins/default/xui/en/panel_group_roles.xml b/indra/newview/skins/default/xui/en/panel_group_roles.xml index 25a0213bde..7557e2cc5e 100644 --- a/indra/newview/skins/default/xui/en/panel_group_roles.xml +++ b/indra/newview/skins/default/xui/en/panel_group_roles.xml @@ -276,7 +276,7 @@ things in this group. There's a broad variety of Abilities. </tab_container> <panel height="350" - background_visible="true" + background_visible="false" bg_alpha_color="FloaterUnfocusBorderColor" layout="topleft" follows="top|left|right" @@ -356,7 +356,7 @@ things in this group. There's a broad variety of Abilities. </panel> <panel height="550" - background_visible="true" + background_visible="false" bg_alpha_color="FloaterUnfocusBorderColor" layout="topleft" follows="top|left|right" @@ -509,7 +509,7 @@ things in this group. There's a broad variety of Abilities. </panel> <panel height="424" - background_visible="true" + background_visible="false" bg_alpha_color="FloaterUnfocusBorderColor" layout="topleft" follows="top|left|right" diff --git a/indra/newview/skins/default/xui/en/panel_im_control_panel.xml b/indra/newview/skins/default/xui/en/panel_im_control_panel.xml index c7e5b25e06..28c4adf67c 100644 --- a/indra/newview/skins/default/xui/en/panel_im_control_panel.xml +++ b/indra/newview/skins/default/xui/en/panel_im_control_panel.xml @@ -11,15 +11,6 @@ name="avatar_icon" top="-5" width="105"/> - <text - follows="top|left|right" - font="SansSerifLarge" - height="19" - layout="topleft" - name="avatar_name" - use_ellipses="true" - value="Unknown" - width="110" /> <layout_stack mouse_opaque="false" border_size="0" @@ -30,7 +21,7 @@ left="5" name="button_stack" orientation="vertical" - top_pad="-5" + top_pad="5" width="105"> <layout_panel mouse_opaque="false" diff --git a/indra/newview/skins/default/xui/en/panel_instant_message.xml b/indra/newview/skins/default/xui/en/panel_instant_message.xml index a0ad38cf76..34fd3352a3 100644 --- a/indra/newview/skins/default/xui/en/panel_instant_message.xml +++ b/indra/newview/skins/default/xui/en/panel_instant_message.xml @@ -56,16 +56,6 @@ name="adhoc_icon" top="3" width="18" /> - <!--<icon - follows="right" - height="20" - image_name="" - layout="topleft" - left="3" - mouse_opaque="true" - name="sys_msg_icon" - top="0" - width="20" />--> <text follows="left|right" font.style="BOLD" diff --git a/indra/newview/skins/default/xui/en/panel_landmarks.xml b/indra/newview/skins/default/xui/en/panel_landmarks.xml index 91d4cd6e83..e7104fd34e 100644 --- a/indra/newview/skins/default/xui/en/panel_landmarks.xml +++ b/indra/newview/skins/default/xui/en/panel_landmarks.xml @@ -7,7 +7,7 @@ left="0" width="380" help_topic="panel_landmarks" - border="true" + border="false" background_visible="true" bg_alpha_color="DkGray2" follows="left|top|right|bottom"> @@ -85,11 +85,14 @@ </accordion_tab> </accordion> <panel - background_visible="true" + bg_opaque_color="DkGray2" + bg_alpha_color="DkGray2" + background_visible="true" + background_opaque="true" bevel_style="none" bottom="0" follows="left|right|bottom" - height="30" + height="38" layout="bottomleft" left="0" name="bottom_panel" @@ -104,7 +107,7 @@ layout="topleft" left="10" name="options_gear_btn" - top="6" + top="10" width="18" /> <button follows="bottom|left" @@ -113,7 +116,7 @@ image_unselected="AddItem_Off" image_disabled="AddItem_Disabled" layout="topleft" - left_pad="5" + left_pad="10" name="add_btn" tool_tip="Add new landmark" width="18" /> @@ -123,10 +126,10 @@ image_selected="TrashItem_Press" image_unselected="TrashItem_Off" layout="topleft" - right="-5" + right="-10" name="trash_btn" tool_tip="Remove selected landmark" - top="6" + top="10" width="18" /> </panel> </panel> diff --git a/indra/newview/skins/default/xui/en/panel_main_inventory.xml b/indra/newview/skins/default/xui/en/panel_main_inventory.xml index af92bbb016..29c0f1fa4b 100644 --- a/indra/newview/skins/default/xui/en/panel_main_inventory.xml +++ b/indra/newview/skins/default/xui/en/panel_main_inventory.xml @@ -37,7 +37,7 @@ halign="center" top_pad="4" width="305"> <inventory_panel - border="false" + border="false" follows="all" height="295" label="MY INVENTORY" @@ -48,7 +48,7 @@ halign="center" top="16" width="290" /> <inventory_panel - border="false" + border="false" follows="all" height="295" label="RECENT" diff --git a/indra/newview/skins/default/xui/en/panel_me.xml b/indra/newview/skins/default/xui/en/panel_me.xml index a30d80f101..63c522ac69 100644 --- a/indra/newview/skins/default/xui/en/panel_me.xml +++ b/indra/newview/skins/default/xui/en/panel_me.xml @@ -4,7 +4,7 @@ border="false" follows="all" height="570" - label="My Profile!!!!!" + label="My Profile" layout="topleft" left="0" name="panel_me" @@ -26,16 +26,16 @@ </text> --> <tab_container follows="all" - height="570" + height="575" halign="center" layout="topleft" - left="6" + left="5" name="tabs" tab_min_width="95" tab_height="30" tab_position="top" top_pad="10" - width="315"> + width="317"> <panel class="panel_my_profile" filename="panel_my_profile.xml" diff --git a/indra/newview/skins/default/xui/en/panel_my_profile.xml b/indra/newview/skins/default/xui/en/panel_my_profile.xml index d519569543..4112b65635 100644 --- a/indra/newview/skins/default/xui/en/panel_my_profile.xml +++ b/indra/newview/skins/default/xui/en/panel_my_profile.xml @@ -60,13 +60,13 @@ left="0" name="profile_scroll" opaque="true" - height="492" + height="488" width="315" top="0"> <panel layout="topleft" follows="left|top|right" - height="492" + height="488" name="scroll_content_panel" top="0" left="0" @@ -385,12 +385,12 @@ user_resize="false" auto_resize="false" height="28" - width="313"> + width="315"> <button follows="bottom|right" height="23" - left="4" - top="5" + left="6" + top="1" label="Edit Profile" name="edit_profile_btn" tool_tip="Edit your personal information" @@ -399,10 +399,10 @@ follows="bottom|right" height="23" label="Edit Appearance" - left_pad="4" + left_pad="3" name="edit_appearance_btn" tool_tip="Create/edit your appearance: physical data, clothes and etc." - width="152" /> + width="153" /> </layout_panel> </layout_stack> </panel> diff --git a/indra/newview/skins/default/xui/en/panel_nearby_media.xml b/indra/newview/skins/default/xui/en/panel_nearby_media.xml new file mode 100644 index 0000000000..4a71be370e --- /dev/null +++ b/indra/newview/skins/default/xui/en/panel_nearby_media.xml @@ -0,0 +1,476 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes" ?> +<panel + can_resize="true" + can_close="false" + background_opaque="true" + background_visible="true" + layout="topleft" + width="270" + height="325" + name="nearby_media" + help_topic="nearby_media"> + <string name="media_item_count_format">(%ld media items)</string> + <string name="empty_item_text"><empty></string> + <string name="parcel_media_name">Parcel Streaming Media</string> + <string name="parcel_audio_name">Parcel Streaming Audio</string> + <string name="playing_suffix">(playing)</string> + <panel + bevel_style="in" + bg_alpha_color="0 0 0 0" + bg_opaque_color="0 0 0 0.3" + bg_opaque_image="Toast_Background" + follows="left|right|top" + top="0" + height="30" + name="minimized_controls" + left="0"> + <button + name="all_nearby_media_disable_btn" + follows="left" + tool_tip="Turn all nearby media off" + left="15" + width="60" + height="22" + label="Stop All"> + <button.commit_callback + function="MediaListCtrl.DisableAll" /> + </button> + <button + name="all_nearby_media_enable_btn" + follows="left" + tool_tip="Turn all nearby media on" + left_pad="4" + width="60" + height="22" + label="Start All"> + <button.commit_callback + function="MediaListCtrl.EnableAll" /> + </button> + <button + name="open_prefs_btn" + image_overlay="Icon_Gear_Foreground" + image_disabled="PushButton_Disabled" + image_disabled_selected="PushButton_Disabled" + image_selected="PushButton_Selected" + image_unselected="PushButton_Off" + hover_glow_amount="0.15" + tool_tip = "Bring up media prefs" + top_delta="0" + left_pad="4" + height="22" + min_width="28" + width="28"> + <button.commit_callback + function="MediaListCtrl.GoMediaPrefs" /> + </button> + <button + name="more_less_btn" + follows="right" + tool_tip="Advanced Controls" + top_delta="0" + right="-10" + width="60" + height="22" + toggle="true" + label="More >>" + label_selected="Less <<"> + <button.commit_callback + function="MediaListCtrl.MoreLess" /> + </button> + </panel> + <panel + name="nearby_media_panel" + bevel_style="in" + border_style="line" + bg_alpha_color="0 0 0 0" + bg_opaque_color="0 0 0 0.3" + follows="left|right|top|bottom" + top_delta="30" + right="-1" + left="0" + height="295"> + <text + type="string" + length="1" + follows="top|left" + font="SansSerif" + left="10" + width="100"> + Nearby Media + </text> + <!-- nix for now + <text + bottom_delta="1" + type="string" + follows="top|left|right" + font="SansSerif" + font.style="ITALIC" + font.size="Small" + name="media_item_count" + left="115" + right="-10"> + (?? media items) + </text> + --> + <text + type="string" + length="1" + follows="top|left" + font="SansSerif" + top_pad="15" + left="10" + width="40"> + Show: + </text> + <combo_box + height="23" + left="50" + width="140" + top_delta="-5" + follows="left|top" + name="show_combo"> + <combo_box.item + label="All" + value="0" + name="All" /> + <combo_box.item + label="In this Parcel" + value="2" + name="WithinParcel" /> + <combo_box.item + label="Outside this Parcel" + value="3" + name="OutsideParcel" /> + <combo_box.item + label="On other Avatars" + value="4" + ame="OnOthers" /> + </combo_box> + <scroll_list + follows="left|top|bottom|right" + column_padding="0" + height="100" + draw_heading="false" + draw_stripes="true" + bg_stripe_color="0.25 0.25 0.25 0.25" + top_pad="8" + left="10" + right="-10" + name="media_list"> + <scroll_list.columns + type="checkbox" + width="-1" + label="" + name="media_checkbox_ctrl" /> + <scroll_list.columns + sort_column="media_proximity" + width="-1" + label="Proximity" + name="media_proximity" /> + <scroll_list.columns + sort_column="media_visibility" + width="-1" + label="Visible" + name="media_visibility" /> + <scroll_list.columns + sort_column="media_class" + width="-1" + label="Class" + name="media_class" /> + <scroll_list.columns + label="Name" + name="media_name" /> + <scroll_list.columns + sort_column="media_debug" + width="-1" + label="Debug" + name="media_debug" /> + </scroll_list> + <panel + bevel_style="in" + background_visible="true" + bg_alpha_color="0.0 0.0 0.0 1.0" + bg_opaque_color="0 0 0 0.3" + follows="left|right|bottom" + top_pad="5" + height="30" + left="10" + right="-10"> + <layout_stack + name="media_controls" + follows="left|right|top" + animate="false" + height="75" + layout="topleft" + top="4" + left="10" + right="-10" + border_size="0" + mouse_opaque="false" + orientation="horizontal"> + <layout_panel + name="stop" + mouse_opaque="false" + auto_resize="false" + user_resize="false" + layout="topleft" + top="0" + height="22" + min_width="22" + width="22"> + <button + name="stop_btn" + follows="top" + image_overlay="Stop_Off" + image_disabled="PushButton_Disabled" + image_disabled_selected="PushButton_Disabled" + image_selected="PushButton_Selected" + image_unselected="PushButton_Off" + hover_glow_amount="0.15" + layout="topleft" + tool_tip="Stop selected media" + top="0" + height="22" + width="22"> + <button.commit_callback + function="SelectedMediaCtrl.Stop" /> + </button> + </layout_panel> + <layout_panel + name="play" + mouse_opaque="false" + auto_resize="false" + user_resize="false" + layout="topleft" + top="0" + height="22" + min_width="22" + width="22"> + <button + name="play_btn" + follows="top" + image_overlay="Play_Off" + image_disabled="PushButton_Disabled" + image_disabled_selected="PushButton_Disabled" + image_selected="PushButton_Selected" + image_unselected="PushButton_Off" + hover_glow_amount="0.15" + layout="topleft" + tool_tip = "Play selected media" + top="0" + height="22" + width="22"> + <button.commit_callback + function="SelectedMediaCtrl.Play" /> + </button> + </layout_panel> + <layout_panel + name="pause" + mouse_opaque="false" + auto_resize="false" + user_resize="false" + layout="topleft" + top="0" + min_width="22" + width="22"> + <button + name="pause_btn" + follows="top" + image_overlay="Pause_Off" + image_disabled="PushButton_Disabled" + image_disabled_selected="PushButton_Disabled" + image_selected="PushButton_Selected" + image_unselected="PushButton_Off" + hover_glow_amount="0.15" + layout="topleft" + top="0" + height="22" + width="22" + tool_tip = "Pause selected media"> + <button.commit_callback + function="SelectedMediaCtrl.Pause" /> + </button> + </layout_panel> + <layout_panel + name="volume_slider_ctrl" + mouse_opaque="false" + auto_resize="true" + user_resize="false" + follows="left|right" + layout="topleft" + top="0" + height="22" + min_width="100" + width="200"> + <slider_bar + name="volume_slider" + follows="left|right|top" + top="0" + height="22" + increment="0.01" + initial_value="0.5" + layout="topleft" + tool_tip="Audio volume for selected media" + width="200"> + <slider_bar.commit_callback + function="SelectedMediaCtrl.Volume" /> + </slider_bar> + </layout_panel> + <layout_panel + name="mute" + mouse_opaque="false" + auto_resize="false" + user_resize="false" + layout="topleft" + top="0" + height="72" + min_width="22" + width="22"> + <button + name="mute_btn" + follows="top" + image_disabled="PushButton_Disabled" + image_disabled_selected="PushButton_Disabled" + image_selected="AudioMute_Off" + image_unselected="Audio_Off" + hover_glow_amount="0.15" + is_toggle="true" + layout="topleft" + scale_image="false" + tool_tip="Mute audio on selected media" + top="0" + height="20" + width="22" > + <button.commit_callback + function="SelectedMediaCtrl.Mute" /> + </button> + </layout_panel> + <layout_panel + name="zoom" + mouse_opaque="false" + auto_resize="false" + user_resize="false" + layout="topleft" + top="0" + height="28" + min_width="22" + width="22"> + <button + name="zoom_btn" + follows="top" + image_overlay="Zoom_Off" + image_disabled="PushButton_Disabled" + image_disabled_selected="PushButton_Disabled" + image_selected="PushButton_Selected" + image_unselected="PushButton_Off" + hover_glow_amount="0.15" + top="0" + height="22" + layout="topleft" + tool_tip="Zoom into selected media" + width="22"> + <button.commit_callback + function="SelectedMediaCtrl.Zoom" /> + </button> + </layout_panel> + <layout_panel + name="unzoom" + mouse_opaque="false" + auto_resize="false" + user_resize="false" + layout="topleft" + top="0" + min_width="21" + width="21" > + <button + name="unzoom_btn" + follows="top" + image_overlay="UnZoom_Off" + image_disabled="PushButton_Disabled" + image_disabled_selected="PushButton_Disabled" + image_selected="PushButton_Selected" + image_unselected="PushButton_Off" + hover_glow_amount="0.15" + top="0" + height="22" + layout="topleft" + tool_tip ="Zoom back from selected media" + top_delta="-4" + width="21" > + <button.commit_callback + function="SelectedMediaCtrl.Unzoom" /> + </button> + </layout_panel> + <layout_panel + name="right_bookend" + width="0" + mouse_opaque="false" + user_resize="false" /> + </layout_stack> + </panel> + <panel + bevel_style="in" + background_visible="true" + bg_alpha_color="0.0 0.0 0.0 1.0" + bg_opaque_color="0 0 0 0.3" + follows="left|right|bottom" + top_pad="5" + height="90" + left="10" + right="-10"> + <check_box + name="media_enabled_btn" + control_name="AudioStreamingMedia" + value="true" + follows="left|bottom|right" + height="15" + tool_tip="Check this to enable all media" + label="All Media Enabled" + top="10" + left="10"/> + <check_box + name="media_auto_play_btn" + control_name="ParcelMediaAutoPlayEnable" + enabled_control="AudioStreamingMedia" + value="true" + follows="left|bottom|right" + height="15" + tool_tip="Check this to let media auto-play if it wants" + label="Allow Media to auto-play" + top_pad="5" + left="10"/> + <!-- + <check_box + name="media_show_within_parcel_btn" + control_name="MediaShowWithinParcel" + enabled_control="AudioStreamingMedia" + value="true" + follows="left|bottom|right" + height="15" + tool_tip="Uncheck this to hide media within the parcel you are standing in" + label="Show media within current parcel" + left="10"/> + --> + <check_box + name="media_show_outside_parcel_btn" + control_name="MediaShowOutsideParcel" + enabled_control="AudioStreamingMedia" + value="true" + follows="left|bottom|right" + height="15" + tool_tip="Uncheck this to hide media outside the parcel you are standing in" + label="Show media outside current parcel" + left="10"/> + <check_box + name="media_show_on_others_btn" + control_name="MediaShowOnOthers" + enabled_control="AudioStreamingMedia" + value="true" + follows="left|bottom|right" + height="15" + tool_tip="Uncheck this to hide media attached to other avatars nearby" + label="Show media attached to other avatars" + left="10"/> + </panel> + </panel> +</panel> diff --git a/indra/newview/skins/default/xui/en/panel_notes.xml b/indra/newview/skins/default/xui/en/panel_notes.xml index ac100a2c06..cff7b51ce8 100644 --- a/indra/newview/skins/default/xui/en/panel_notes.xml +++ b/indra/newview/skins/default/xui/en/panel_notes.xml @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="utf-8" standalone="yes" ?> <panel follows="all" - height="540" + height="533" label="Notes & Privacy" layout="topleft" left="0" @@ -25,7 +25,7 @@ layout="topleft" top="0" left="0" - height="475" + height="450" width="313"> <scroll_container color="DkGray2" @@ -34,7 +34,7 @@ left="0" name="profile_scroll" opaque="true" - height="475" + height="450" width="313" top="0"> <panel @@ -46,35 +46,35 @@ width="303"> <text follows="left|top" - font="SansSerifBold" + font.style="BOLD" height="16" layout="topleft" - left="10" + left="11" name="status_message" text_color="white" - top="20" + top="10" value="My private notes:" width="293" /> <text_editor follows="left|top" height="120" layout="topleft" - left="10" + left="12" max_length="1000" name="notes_edit" text_color="DkGray" - top_pad="10" - width="280" + top_pad="3" + width="288" word_wrap="true" /> <text follows="left|top" - font="SansSerifBold" + font.style="BOLD" height="16" layout="topleft" - left="10" + left="11" name="status_message2" text_color="white" - top_pad="30" + top_pad="20" value="Allow this person to:" width="293" /> <check_box @@ -82,7 +82,7 @@ height="16" label="See my online status" layout="topleft" - left="20" + left="10" name="status_check" width="293" /> <check_box @@ -90,7 +90,7 @@ height="16" label="See me on the map" layout="topleft" - left="20" + left="10" name="map_check" width="293" /> <check_box @@ -98,7 +98,7 @@ height="16" label="Edit, delete or take my objects" layout="topleft" - left="20" + left="10" name="objects_check" width="293" /> </panel> @@ -117,7 +117,7 @@ height="23" label="Add Friend" layout="topleft" - left="0" + left="2" mouse_opaque="false" name="add_friend" tool_tip="Offer friendship to the Resident" @@ -142,7 +142,7 @@ tool_tip="Call this Resident" left_pad="3" top="5" - width="45" /> + width="46" /> <button enabled="false" follows="bottom|left" diff --git a/indra/newview/skins/default/xui/en/panel_notification.xml b/indra/newview/skins/default/xui/en/panel_notification.xml index 145a24b642..34738745eb 100644 --- a/indra/newview/skins/default/xui/en/panel_notification.xml +++ b/indra/newview/skins/default/xui/en/panel_notification.xml @@ -3,8 +3,8 @@ background_opaque="false" border_visible="false" background_visible="true" - bg_alpha_color="0.3 0.3 0.3 0" - bg_opaque_color="0.3 0.3 0.3 0" + bg_alpha_color="1 0.3 0.3 0" + bg_opaque_color="1 0.3 0.3 0" label="notification_panel" layout="topleft" left="0" @@ -83,12 +83,16 @@ <panel background_visible="false" follows="left|right|bottom" - height="40" + height="30" + width="290" label="control_panel" layout="topleft" - left="0" - left_delta="-38" + left="10" name="control_panel" - top_pad="0"> + top_pad="5"> + <!-- + Notes: + This panel holds buttons of notification. Change of its size can affect the layout of buttons. + --> </panel> </panel> diff --git a/indra/newview/skins/default/xui/en/panel_online_status.xml b/indra/newview/skins/default/xui/en/panel_online_status.xml new file mode 100644 index 0000000000..14cb5fffee --- /dev/null +++ b/indra/newview/skins/default/xui/en/panel_online_status.xml @@ -0,0 +1,35 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes" ?> +<panel + background_visible="false" + height="152" + label="friend_online_status" + layout="topleft" + left="0" + name="friend_online_status" + top="0" + width="305"> + <avatar_icon + follows="top|left" + height="18" + image_name="Generic_Person" + layout="topleft" + left="3" + mouse_opaque="false" + name="avatar_icon" + top="10" + width="18" /> + <text + font="SansSerifSmall" + follows="all" + height="137" + layout="topleft" + left_pad="5" + name="message" + text_color="white" + top="15" + use_ellipses="true" + value="" + width="285" + word_wrap="true" + max_length="350" /> +</panel>
\ No newline at end of file diff --git a/indra/newview/skins/default/xui/en/panel_people.xml b/indra/newview/skins/default/xui/en/panel_people.xml index 31ea54cf40..752bccc351 100644 --- a/indra/newview/skins/default/xui/en/panel_people.xml +++ b/indra/newview/skins/default/xui/en/panel_people.xml @@ -1,11 +1,10 @@ <?xml version="1.0" encoding="utf-8" standalone="yes" ?> <!-- Side tray panel --> <panel -background_visible="true" follows="all" - height="575" label="People" layout="topleft" + height="449" min_height="350" name="people_panel" top="0" @@ -33,7 +32,7 @@ background_visible="true" follows="left|top|right" height="23" layout="topleft" - left="15" + left="10" label="Filter" max_length="300" name="filter_input" @@ -42,19 +41,23 @@ background_visible="true" width="303" /> <tab_container follows="all" - height="500" + height="383" layout="topleft" - left="6" + left="5" name="tabs" tab_min_width="70" tab_height="30" tab_position="top" top_pad="10" halign="center" - width="313"> - <panel + width="317"> + <panel + bg_opaque_color="DkGray2" + bg_alpha_color="DkGray2" + background_visible="true" + background_opaque="true" follows="all" - height="500" + height="383" label="NEARBY" layout="topleft" left="0" @@ -65,7 +68,7 @@ background_visible="true" <avatar_list allow_select="true" follows="all" - height="470" + height="345" ignore_online_status="true" layout="topleft" left="0" @@ -75,7 +78,7 @@ background_visible="true" width="313" /> <panel follows="left|right|bottom" - height="30" + height="38" label="bottom_panel" layout="topleft" left="0" @@ -91,7 +94,7 @@ background_visible="true" layout="topleft" left="10" name="nearby_view_sort_btn" - top="5" + top="10" width="18" /> <button follows="bottom|left" @@ -100,9 +103,8 @@ background_visible="true" image_unselected="AddItem_Off" image_disabled="AddItem_Disabled" layout="topleft" - left_pad="5" + left_pad="10" name="add_friend_btn" - top_delta="0" tool_tip="Add selected Resident to your friends List" width="18"> <commit_callback @@ -111,8 +113,12 @@ background_visible="true" </panel> </panel> <panel + bg_opaque_color="DkGray2" + bg_alpha_color="DkGray2" + background_visible="true" + background_opaque="true" follows="all" - height="500" + height="383" label="MY FRIENDS" layout="topleft" left="0" @@ -122,7 +128,7 @@ background_visible="true" width="313"> <accordion follows="all" - height="470" + height="345" layout="topleft" left="0" name="friends_accordion" @@ -130,14 +136,14 @@ background_visible="true" width="313"> <accordion_tab layout="topleft" - height="235" + height="172" min_height="150" name="tab_online" title="Online"> <avatar_list allow_select="true" follows="all" - height="235" + height="172" layout="topleft" left="0" multi_select="true" @@ -147,13 +153,13 @@ background_visible="true" </accordion_tab> <accordion_tab layout="topleft" - height="235" + height="173" name="tab_all" title="All"> <avatar_list allow_select="true" follows="all" - height="235" + height="173" layout="topleft" left="0" multi_select="true" @@ -162,20 +168,9 @@ background_visible="true" width="313" /> </accordion_tab> </accordion> - <text - follows="all" - height="450" - left="10" - name="no_friends_msg" - top="10" - width="293" - wrap="true"> - To add friends try [secondlife:///app/search/people global search] or click on a user to add them as a friend. -If you're looking for people to hang out with, [secondlife:///app/worldmap try the Map]. - </text> <panel follows="left|right|bottom" - height="30" + height="38" label="bottom_panel" layout="topleft" left="0" @@ -191,7 +186,7 @@ If you're looking for people to hang out with, [secondlife:///app/worldmap try t layout="topleft" left="10" name="friends_viewsort_btn" - top="5" + top="10" width="18" /> <button follows="bottom|left" @@ -200,10 +195,9 @@ If you're looking for people to hang out with, [secondlife:///app/worldmap try t image_unselected="AddItem_Off" image_disabled="AddItem_Disabled" layout="topleft" - left_pad="5" + left_pad="10" name="add_btn" tool_tip="Offer friendship to a Resident" - top_delta="0" width="18" /> <button follows="bottom|left" @@ -219,10 +213,25 @@ If you're looking for people to hang out with, [secondlife:///app/worldmap try t top_delta="0" width="18" /> </panel> + <text + follows="all" + height="450" + left="10" + name="no_friends_msg" + top="10" + width="293" + wrap="true"> + To add friends try [secondlife:///app/search/people global search] or click on a user to add them as a friend. +If you're looking for people to hang out with, [secondlife:///app/worldmap try the Map]. + </text> </panel> <panel + bg_opaque_color="DkGray2" + bg_alpha_color="DkGray2" + background_visible="true" + background_opaque="true" follows="all" - height="500" + height="383" label="MY GROUPS" layout="topleft" left="0" @@ -232,18 +241,17 @@ If you're looking for people to hang out with, [secondlife:///app/worldmap try t width="313"> <group_list follows="all" - height="470" + height="345" layout="topleft" left="0" name="group_list" - no_filtered_groups_msg="No groups" + no_filtered_groups_msg="[secondlife:///app/search/groups Try fine the group in search?]" no_groups_msg="[secondlife:///app/search/groups Try searching for some groups to join.]" top="0" width="313" /> <panel - top_pad="0" follows="left|right|bottom" - height="30" + height="38" label="bottom_panel" layout="topleft" left="0" @@ -259,7 +267,7 @@ If you're looking for people to hang out with, [secondlife:///app/worldmap try t layout="topleft" left="10" name="groups_viewsort_btn" - top="7" + top="10" width="18" /> <button follows="bottom|left" @@ -268,10 +276,9 @@ If you're looking for people to hang out with, [secondlife:///app/worldmap try t image_unselected="AddItem_Off" image_disabled="AddItem_Disabled" layout="topleft" - left_pad="5" + left_pad="10" name="plus_btn" tool_tip="Join group/Create new group" - top_delta="0" width="18" /> <button follows="bottom|left" @@ -280,16 +287,20 @@ If you're looking for people to hang out with, [secondlife:///app/worldmap try t image_selected="Activate_Checkmark" image_unselected="Activate_Checkmark" layout="topleft" - left_pad="24" + left_pad="10" name="activate_btn" tool_tip="Activate selected group" - top_delta="5" + top_delta="4" width="10" /> </panel> </panel> <panel + bg_opaque_color="DkGray2" + bg_alpha_color="DkGray2" + background_visible="true" + background_opaque="true" follows="all" - height="500" + height="383" label="RECENT" layout="topleft" left="0" @@ -300,7 +311,7 @@ If you're looking for people to hang out with, [secondlife:///app/worldmap try t <avatar_list allow_select="true" follows="all" - height="470" + height="345" layout="topleft" left="0" multi_select="true" @@ -309,9 +320,8 @@ If you're looking for people to hang out with, [secondlife:///app/worldmap try t top="0" width="313" /> <panel - top_pad="0" follows="left|right|bottom" - height="30" + height="38" label="bottom_panel" layout="topleft" left="0" @@ -327,7 +337,7 @@ If you're looking for people to hang out with, [secondlife:///app/worldmap try t layout="topleft" left="10" name="recent_viewsort_btn" - top="7" + top="10" width="18" /> <button follows="bottom|left" @@ -336,7 +346,7 @@ If you're looking for people to hang out with, [secondlife:///app/worldmap try t image_unselected="AddItem_Off" image_disabled="AddItem_Disabled" layout="topleft" - left_pad="5" + left_pad="10" name="add_friend_btn" top_delta="0" tool_tip="Add selected Resident to your friends List" @@ -349,89 +359,82 @@ If you're looking for people to hang out with, [secondlife:///app/worldmap try t </tab_container> <panel follows="bottom|left" - height="35" + height="23" layout="topleft" - left="10" + left="8" + top_pad="0" name="button_bar" width="313"> <button follows="bottom|left" - top="4" - left="0" height="23" label="Profile" layout="topleft" name="view_profile_btn" tool_tip="Show picture, groups, and other Residents information" - width="70" /> + width="64" /> <button follows="bottom|left" - top="4" - left_pad="2" + left_pad="3" height="23" label="IM" layout="topleft" name="im_btn" tool_tip="Open instant message session" - width="45" /> + width="43" /> <button follows="bottom|left" - top="4" - left_pad="2" + left_pad="3" height="23" label="Call" layout="topleft" name="call_btn" tool_tip="Call this Resident" - width="50" /> + width="51" /> <button - follows="left|top" - top="4" - left_pad="2" + follows="bottom|left" + left_pad="3" height="23" label="Share" layout="topleft" name="share_btn" - width="60" /> + width="62" /> <button follows="bottom|left" - top="4" - left_pad="2" + left_pad="3" height="23" label="Teleport" layout="topleft" name="teleport_btn" tool_tip="Offer teleport" - width="75" /> + width="76" /> <button follows="bottom|left" - top="4" left="0" + top_delta="0" height="23" label="Group Profile" layout="topleft" name="group_info_btn" tool_tip="Show group information" - width="102" /> + width="107" /> <button follows="bottom|left" - top="4" - left_pad="2" + left_pad="3" height="23" label="Group Chat" layout="topleft" name="chat_btn" tool_tip="Open chat session" - width="102" /> + width="100" /> <button follows="bottom|left" - top="4" - left_pad="2" + left_pad="3" height="23" label="Group Call" layout="topleft" name="group_call_btn" tool_tip="Call this group" - width="102" /> + width="95" /> </panel> </panel> diff --git a/indra/newview/skins/default/xui/en/panel_pick_info.xml b/indra/newview/skins/default/xui/en/panel_pick_info.xml index 097813131f..ecf5516390 100644 --- a/indra/newview/skins/default/xui/en/panel_pick_info.xml +++ b/indra/newview/skins/default/xui/en/panel_pick_info.xml @@ -16,7 +16,7 @@ image_overlay="BackArrow_Off" layout="topleft" name="back_btn" - left="11" + left="12" tab_stop="false" top="2" width="23" /> @@ -36,12 +36,12 @@ color="DkGray2" opaque="true" follows="all" - height="502" + height="503" layout="topleft" - left="9" + left="8" top_pad="10" name="profile_scroll" - width="310"> + width="312"> <panel name="scroll_content_panel" follows="left|top|right" @@ -116,7 +116,7 @@ height="35" layout="topleft" top_pad="5" - left="9" + left="8" name="buttons"> <button follows="bottom|left" diff --git a/indra/newview/skins/default/xui/en/panel_picks.xml b/indra/newview/skins/default/xui/en/panel_picks.xml index 887a89d518..54a5db9b16 100644 --- a/indra/newview/skins/default/xui/en/panel_picks.xml +++ b/indra/newview/skins/default/xui/en/panel_picks.xml @@ -4,7 +4,7 @@ bg_opaque_color="DkGray2" background_visible="true" background_opaque="true" follows="all" - height="540" + height="547" label="Picks" layout="topleft" left="0" @@ -24,12 +24,13 @@ bg_opaque_color="DkGray2" layout="topleft" left="6" name="picks_panel_text" + wrap="true" top="10" width="313"/> <accordion fit_parent="true" follows="all" - height="465" + height="470" layout="topleft" left="0" name="accordion" @@ -85,7 +86,7 @@ bg_opaque_color="DkGray2" label="bottom_panel" layout="topleft" name="edit_panel" - top_pad="0" + top_pad="-2" width="313"> <button enabled="false" @@ -129,8 +130,8 @@ bg_opaque_color="DkGray2" background_opaque="true" layout="topleft" left="0" - height="30" - top_pad="7" + height="40" + top="502" name="buttons_cucks" width="313"> <button diff --git a/indra/newview/skins/default/xui/en/panel_preferences_chat.xml b/indra/newview/skins/default/xui/en/panel_preferences_chat.xml index 433dfc17fe..2e81139ef2 100644 --- a/indra/newview/skins/default/xui/en/panel_preferences_chat.xml +++ b/indra/newview/skins/default/xui/en/panel_preferences_chat.xml @@ -9,13 +9,22 @@ name="chat" top="1" width="517"> - <radio_group + <text + follows="left|top" + layout="topleft" + left="30" + height="12" + width="120" + top="10"> + Font size: + </text> + <radio_group height="30" layout="topleft" - left="30" - control_name="ChatFontSize" + left="40" + control_name="ChatFontSize" name="chat_font_size" - top="10" + top_pad="0" width="440"> <radio_item height="16" @@ -45,12 +54,24 @@ top_delta="0" width="125" /> </radio_group> + + <text + follows="left|top" + layout="topleft" + left="30" + height="12" + top_pad="10" + width="120" + > + Font colors: + </text> + <color_swatch can_apply_immediately="true" follows="left|top" height="47" layout="topleft" - left="30" + left="40" name="user" top_pad="10" width="44" > @@ -79,7 +100,7 @@ follows="left|top" height="47" layout="topleft" - left="180" + left="190" name="agent" top_pad="-17" width="44" > @@ -110,7 +131,7 @@ height="47" label_width="60" layout="topleft" - left="350" + left="360" name="im" top_pad="-17" width="44"> @@ -141,7 +162,7 @@ height="47" label_width="44" layout="topleft" - left="30" + left="40" name="system" top_pad="40" width="44" > @@ -171,7 +192,7 @@ follows="left|top" height="47" layout="topleft" - left="180" + left="190" name="script_error" top_pad="-17" width="44"> @@ -201,7 +222,7 @@ follows="left|top" height="47" layout="topleft" - left="350" + left="360" name="objects" top_pad="-17" width="44" > @@ -231,7 +252,7 @@ follows="left|top" height="47" layout="topleft" - left="30" + left="40" name="owner" top_pad="40" width="44" > @@ -261,7 +282,7 @@ follows="left|top" height="47" layout="topleft" - left="180" + left="190" name="links" top_pad="-17" width="44" > @@ -314,6 +335,8 @@ top_pad="5" width="400" /> <text + follows="left|top" + layout="topleft" left="30" height="20" width="120" @@ -321,17 +344,20 @@ Show IMs in: </text> <text - left_pad="6" - height="20" - width="100" - text_color="White_25" - > + follows="left|top" + layout="topleft" + top_delta="0" + left="120" + height="20" + width="100" + text_color="White_25" + > (requires restart) </text> <radio_group height="30" layout="topleft" - left="30" + left="40" control_name="ChatWindow" name="chat_window" top_pad="0" diff --git a/indra/newview/skins/default/xui/en/panel_preferences_privacy.xml b/indra/newview/skins/default/xui/en/panel_preferences_privacy.xml index f7e3ede93c..f78d90c434 100644 --- a/indra/newview/skins/default/xui/en/panel_preferences_privacy.xml +++ b/indra/newview/skins/default/xui/en/panel_preferences_privacy.xml @@ -17,6 +17,7 @@ follows="left|bottom" height="23" label="Clear History" + tool_tip="Clear login image, last location, teleport history, web, and texture cache" layout="topleft" left="30" name="clear_cache" diff --git a/indra/newview/skins/default/xui/en/panel_prim_media_controls.xml b/indra/newview/skins/default/xui/en/panel_prim_media_controls.xml index e1d8ee241d..6b5f0c3896 100644 --- a/indra/newview/skins/default/xui/en/panel_prim_media_controls.xml +++ b/indra/newview/skins/default/xui/en/panel_prim_media_controls.xml @@ -71,7 +71,7 @@ layout="topleft" top="0" left="0" - border_size="1" + border_size="0" mouse_opaque="false" orientation="horizontal"> <!-- outer layout_panels center the inner one --> @@ -260,7 +260,7 @@ top="0" height="22" min_width="22" - width="24"> + width="22"> <button name="play_btn" follows="top" @@ -272,7 +272,6 @@ hover_glow_amount="0.15" layout="topleft" tool_tip = "Play media" - left_delta="2" top="0" height="22" width="22"> @@ -288,7 +287,7 @@ layout="topleft" top="0" min_width="22" - width="24"> + width="22"> <button name="pause_btn" follows="top" @@ -302,7 +301,6 @@ top="0" height="22" width="22" - left_delta="-1" tool_tip = "Pause media"> <button.commit_callback function="MediaCtrl.Pause" /> diff --git a/indra/newview/skins/default/xui/en/panel_profile.xml b/indra/newview/skins/default/xui/en/panel_profile.xml index 351df22042..d72e175bc4 100644 --- a/indra/newview/skins/default/xui/en/panel_profile.xml +++ b/indra/newview/skins/default/xui/en/panel_profile.xml @@ -59,7 +59,7 @@ left="0" name="profile_scroll" opaque="true" - height="524" + height="527" width="317" top="0"> <panel diff --git a/indra/newview/skins/default/xui/en/panel_profile_view.xml b/indra/newview/skins/default/xui/en/panel_profile_view.xml index 607de65c5c..5a96ba2dd2 100644 --- a/indra/newview/skins/default/xui/en/panel_profile_view.xml +++ b/indra/newview/skins/default/xui/en/panel_profile_view.xml @@ -6,6 +6,7 @@ layout="topleft" min_height="350" name="panel_target_profile" + left="0" width="333"> <string name="status_online"> @@ -21,17 +22,19 @@ image_overlay="BackArrow_Off" layout="topleft" name="back" - left="10" + left="12" tab_stop="false" top="2" width="23" /> <text_editor + h_pad="0" + v_pad="0" allow_scroll="false" bg_visible="false" read_only = "true" follows="top|left|right" font="SansSerifHugeBold" - height="29" + height="26" layout="topleft" left_pad="10" name="user_name" @@ -51,7 +54,7 @@ width="150" /> <tab_container follows="all" - height="535" + height="538" halign="center" layout="topleft" left="5" diff --git a/indra/newview/skins/default/xui/en/panel_side_tray.xml b/indra/newview/skins/default/xui/en/panel_side_tray.xml index eb95de3a7c..6ef93406ec 100644 --- a/indra/newview/skins/default/xui/en/panel_side_tray.xml +++ b/indra/newview/skins/default/xui/en/panel_side_tray.xml @@ -54,12 +54,19 @@ mouse_opaque="false" background_visible="true" > + <panel_container + name="panel_container" + default_panel_name="panel_me" + width="333" + > <panel class="panel_me" name="panel_me" filename="panel_me.xml" label="Me" /> + + </panel_container> </sidetray_tab> <sidetray_tab diff --git a/indra/newview/skins/default/xui/en/panel_status_bar.xml b/indra/newview/skins/default/xui/en/panel_status_bar.xml index 5754f67045..96c61b69f5 100644 --- a/indra/newview/skins/default/xui/en/panel_status_bar.xml +++ b/indra/newview/skins/default/xui/en/panel_status_bar.xml @@ -3,6 +3,7 @@ background_opaque="true" background_visible="true" bg_opaque_color="MouseGray" + chrome="true" follows="top|right" height="19" layout="topleft" @@ -10,6 +11,7 @@ mouse_opaque="false" name="status" top="19" + tab_stop="false" width="1000"> <panel.string name="StatBarDaysOfWeek"> @@ -73,7 +75,7 @@ pad_bottom="2" tool_tip="Click to buy more L$" top="2" - width="71" /> + width="45" /> <text type="string" font="SansSerifSmall" @@ -86,17 +88,31 @@ left_pad="0" name="TimeText" tool_tip="Current time (Pacific)" - width="89"> + width="80"> 24:00 AM PST </text> <button follows="right|top" height="15" + image_selected="Pause_Off" + image_unselected="Play_Off" + image_pressed="Play_Press" + image_pressed_selected="Pause_Press" + is_toggle="true" + left_pad="15" + top="2" + name="media_toggle_btn" + tool_tip="Click to toggle media" + width="16" > + </button> + <button + follows="right|top" + height="15" image_selected="AudioMute_Off" image_pressed="Audio_Press" image_unselected="Audio_Off" is_toggle="true" - left_pad="18" + left_pad="5" top="2" name="volume_btn" tool_tip="Global Volume Control" diff --git a/indra/newview/skins/default/xui/en/panel_volume_pulldown.xml b/indra/newview/skins/default/xui/en/panel_volume_pulldown.xml index 60d4a7e00b..55ab95bfe9 100644 --- a/indra/newview/skins/default/xui/en/panel_volume_pulldown.xml +++ b/indra/newview/skins/default/xui/en/panel_volume_pulldown.xml @@ -4,7 +4,7 @@ background_visible="false" border_visible="false" border="false" - chrome="true" + chrome="true" follows="bottom" height="150" layout="topleft" @@ -13,7 +13,7 @@ <!-- floater background image --> <icon height="150" - image_name="Inspector_Background" + image_name="Volume_Background" layout="topleft" left="0" name="normal_background" diff --git a/indra/newview/skins/default/xui/en/strings.xml b/indra/newview/skins/default/xui/en/strings.xml index 274ed178b2..c62a36bca3 100644 --- a/indra/newview/skins/default/xui/en/strings.xml +++ b/indra/newview/skins/default/xui/en/strings.xml @@ -1805,12 +1805,9 @@ Clears (deletes) the media and all params from the given face. <string name="LeaveMouselook">Press ESC to return to World View</string> <!-- inventory --> - <string name="InventoryNoMatchingItems">No matching items found in inventory.</string> - <string name="FavoritesNoMatchingItems">Drag a landmark here to add it to your favorites.</string> - <string name="InventoryNoTexture"> - You do not have a copy of -this texture in your inventory - </string> + <string name="InventoryNoMatchingItems">No matching items found in inventory. Try [secondlife:///app/search/groups "Search"].</string> + <string name="FavoritesNoMatchingItems">Drag a landmark here to add it to your favorites.</string> + <string name="InventoryNoTexture">You do not have a copy of this texture in your inventory</string> <!-- use value="" because they have preceding spaces --> <string name="no_transfer" value=" (no transfer)" /> <string name="no_modify" value=" (no modify)" /> @@ -2130,7 +2127,7 @@ this texture in your inventory <string name="ClassifiedUpdateAfterPublish">(will update after publish)</string> <!-- panel picks --> - <string name="NoPicksClassifiedsText">There are no picks/classifieds here</string> + <string name="NoPicksClassifiedsText">You haven't created any Picks or Classifieds. Click the Plus button below to create a Pick or Classified.</string> <string name="PicksClassifiedsLoadingText">Loading...</string> <!-- Multi Preview Floater --> diff --git a/indra/newview/skins/default/xui/en/widgets/combo_box.xml b/indra/newview/skins/default/xui/en/widgets/combo_box.xml index 132bd24bca..1f7499646f 100644 --- a/indra/newview/skins/default/xui/en/widgets/combo_box.xml +++ b/indra/newview/skins/default/xui/en/widgets/combo_box.xml @@ -20,7 +20,7 @@ image_pressed="DropDown_Press" image_pressed_selected="DropDown_Press" image_disabled="DropDown_Disabled" /> - <combo_box.combo_list bg_writeable_color="MenuDefaultBgColor" + <combo_box.combo_list bg_writeable_color="ComboListBgColor" background_visible="true" /> <!-- Text is "tentative" if you have typed in a string that does not match diff --git a/indra/newview/skins/default/xui/en/widgets/filter_editor.xml b/indra/newview/skins/default/xui/en/widgets/filter_editor.xml index 1228f6be3d..0720621f0b 100644 --- a/indra/newview/skins/default/xui/en/widgets/filter_editor.xml +++ b/indra/newview/skins/default/xui/en/widgets/filter_editor.xml @@ -16,6 +16,6 @@ image_unselected="Search" image_selected="Search" /> <clear_button label="" - image_unselected="Icon_Close_Foreground" - image_selected="Icon_Close_Press" /> + image_unselected="Icon_Close_Toast" + image_selected="Icon_Close_Toast" /> </filter_editor> diff --git a/indra/newview/skins/default/xui/en/widgets/search_editor.xml b/indra/newview/skins/default/xui/en/widgets/search_editor.xml index 1616e4c3f7..a9a760b3a4 100644 --- a/indra/newview/skins/default/xui/en/widgets/search_editor.xml +++ b/indra/newview/skins/default/xui/en/widgets/search_editor.xml @@ -15,7 +15,11 @@ height="13" image_unselected="Search" image_selected="Search" /> - <clear_button + <clear_button + bottom="4" + height="16" image_unselected="Icon_Close_Foreground" - image_selected="Icon_Close_Press" /> + image_selected="Icon_Close_Press" + pad_right="4" + width="16" /> </search_editor> diff --git a/indra/newview/skins/default/xui/es/floater_about.xml b/indra/newview/skins/default/xui/es/floater_about.xml index e8e38316f9..0ba8fdad18 100644 --- a/indra/newview/skins/default/xui/es/floater_about.xml +++ b/indra/newview/skins/default/xui/es/floater_about.xml @@ -1,20 +1,60 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="floater_about" title="ACERCA DE [CAPITALIZED_APP_NAME]"> -<tab_container name="about_tab"> - <panel name="credits_panel"> - <text_editor name="credits_editor"> - Le ofrecen Second Life Philip, Tessa, Andrew, Cory, James, Ben, Char, Charlie, Colin, Dan, Daniel, Doug, Eric, Hamlet, Haney, Eve, Hunter, Ian, Jeff, Jennifer, Jim, John, Lee, Mark, Peter, Phoenix, Richard, Robin, Xenon, Steve, Tanya, Eddie, Avi, Frank, Bruce, Aaron, Alice, Bob, Debra, Eileen, Helen, Janet, Louie, Leviathania, Stefan, Ray, Kevin, Tom, Mikeb, MikeT, Burgess, Elena, Tracy, Bill, Todd, Ryan, Zach, Sarah, Nova, Tim, Stephanie, Michael, Evan, Nicolas, Catherine, Rachelle, Dave, Holly, Bub, Kelly, Magellan, Ramzi, Don, Sabin, Jill, Rheya, Jeska, Torley, Kona, Callum, Charity, Ventrella, Jack, Vektor, Iris, Chris, Nicole, Mick, Reuben, Blue, Babbage, Yedwab, Deana, Lauren, Brent, Pathfinder, Chadrick, Altruima, Jesse, Teeny, Monroe, Icculus, David, Tess, Lizzie, Patsy, Isaac, Lawrence, Cyn, Bo, Gia, Annette, Marius, Tbone, Jonathan, Karen, Ginsu, Satoko, Yuko, Makiko, Thomas, Harry, Seth, Alexei, Brian, Guy, Runitai, Ethan, Data, Cornelius, Kenny, Swiss, Zero, Natria, Wendy, Stephen, Teeple, Thumper, Lucy, Dee, Mia, Liana, Warren, Branka, Aura, beez, Milo, Hermia, Red, Thrax, Joe, Sally, Magenta, Mogura, Paul, Jose, Rejean, Henrik, Lexie, Amber, Logan, Xan, Nora, Morpheus, Donovan, Leyla, MichaelFrancis, Beast, Cube, Bucky, Joshua, Stryfe, Harmony, Teresa, Claudia, Walker, Glenn, Fritz, Fordak, June, Cleopetra, Jean, Ivy, Betsy, Roosevelt, Spike, Ken, Which, Tofu, Chiyo, Rob, Zee, dustin, George, Del, Matthew, Cat, Jacqui, Lightfoot, Adrian, Viola, Alfred, Noel, Irfan, Sunil, Yool, Rika, Jane, Xtreme, Frontier, a2, Neo, Siobhan, Yoz, Justin, Elle, Qarl, Benjamin, Isabel, Gulliver, Everett, Christopher, Izzy, Stephany, Garry, Sejong, Sean, Tobin, Iridium, Meta, Anthony, Jeremy, JP, Jake, Maurice, Madhavi, Leopard, Kyle, Joon, Kari, Bert, Belinda, Jon, Kristi, Bridie, Pramod, KJ, Socrates, Maria, Ivan, Aric, Yamasaki, Adreanne, Jay, MitchK, Ceren, Coco, Durl, Jenny, Periapse, Kartic, Storrs, Lotte, Sandy, Rohn, Colossus, Zen, BigPapi, Brad, Pastrami, Kurz, Mani, Neuro, Jaime, MJ, Rowan, Sgt, Elvis, Gecko, Samuel, Sardonyx, Leo, Bryan, Niko, Soft, Poppy, Rachel, Aki, Angelo, Banzai, Alexa, Sue, CeeLo, Bender, CG, Gillian, Pelle, Nick, Echo, Zara, Christine, Shamiran, Emma, Blake, Keiko, Plexus, Joppa, Sidewinder, Erica, Ashlei, Twilight, Kristen, Brett, Q, Enus, Simon, Bevis, Kraft, Kip, Chandler, Ron, LauraP, Ram, KyleJM, Scouse, Prospero, Melissa, Marty, Nat, Hamilton, Kend, Lordan, Jimmy, Kosmo, Seraph, Green, Ekim, Wiggo, JT, Rome, Doris, Miz, Benoc, Whump, Trinity, Patch, Kate, TJ, Bao, Joohwan, Christy, Sofia, Matias, Cogsworth, Johan, Oreh, Cheah, Angela, Brandy, Mango, Lan, Aleks, Gloria, Heidy, Mitchell, Space, Colton, Bambers, Einstein, Maggie, Malbers, Rose, Winnie, Stella, Milton, Rothman, Niall, Marin, Allison, Katie, Dawn, Katt, Dusty, Kalpana, Judy, Andrea, Ambroff, Infinity, Gail, Rico, Raymond, Yi, William, Christa, M, Teagan, Scout, Molly, Dante, Corr, Dynamike, Usi, Kaylee, Vidtuts, Lil, Danica, Sascha, Kelv, Jacob, Nya, Rodney, Brandon, Elsie, Blondin, Grant, Katrin, Nyx, Gabriel, Locklainn, Claire, Devin, Minerva, Monty, Austin, Bradford, Si, Keira, H, Caitlin, Dita, Makai, Jenn, Ann, Meredith, Clare, Joy, Praveen, Cody, Edmund, Ruthe, Sirena, Gayathri, Spider, FJ, Davidoff, Tian, Jennie, Louise, Oskar, Landon, Noelle, Jarv, Ingrid, Al, Sommer, Doc, Aria, Huin, Gray, Lili, Vir, DJ, Yang, T, Simone, Maestro, Scott, Charlene, Quixote, Amanda, Susan, Zed, Anne, Enkidu, Esbee, Joroan, Katelin, Roxie, Tay, Scarlet, Kevin, Johnny, Wolfgang, Andren, Bob, Howard, Merov, Rand, Ray, Michon, Newell, Galen, Dessie, Les, Michon, Jenelle, Geo, Siz, Shapiro, Pete, Calyle, Selene, Allen, Phoebe, Goldin, Kimmora, Dakota, Slaton, Lindquist, Zoey, Hari, Othello, Rohit, Sheldon, Petra, Viale, Gordon, Kaye, Pink, Ferny, Emerson, Davy, Bri, Chan, Juan, Robert, Terrence, Nathan, Carl, y otros muchos. + <floater.string name="AboutHeader"> + [APP_NAME] [VIEWER_VERSION_0].[VIEWER_VERSION_1].[VIEWER_VERSION_2] ([VIEWER_VERSION_3]) [BUILD_DATE] [BUILD_TIME] ([CHANNEL]) +[[VIEWER_RELEASE_NOTES_URL] [ReleaseNotes]] + </floater.string> + <floater.string name="AboutCompiler"> + Compilado con [COMPILER], versión [COMPILER_VERSION] + </floater.string> + <floater.string name="AboutPosition"> + Estás en [POSITION_0,number,1], [POSITION_1,number,1], [POSITION_2,number,1] en la región de [REGION], alojada en [HOSTNAME] ([HOSTIP]) +[SERVER_VERSION] +[[SERVER_RELEASE_NOTES_URL] [ReleaseNotes]] + </floater.string> + <floater.string name="AboutSystem"> + CPU: [CPU] +Memoria: [MEMORY_MB] MB +Versión del Sistema Operativo: [OS_VERSION] +Fabricante de la tarjeta gráfica: [GRAPHICS_CARD_VENDOR] +Tarjeta gráfica: [GRAPHICS_CARD] + </floater.string> + <floater.string name="AboutDriver"> + Versión de Windows Graphics Driver: [GRAPHICS_DRIVER_VERSION] + </floater.string> + <floater.string name="AboutLibs"> + Versión de OpenGL: [OPENGL_VERSION] + +Versión de libcurl: [LIBCURL_VERSION] +Versión de J2C Decoder: [J2C_VERSION] +Versión de Audio Driver: [AUDIO_DRIVER_VERSION] +Versión de Qt Webkit: [QT_WEBKIT_VERSION] +Versión de Vivox: [VIVOX_VERSION] + </floater.string> + <floater.string name="none"> + (no hay) + </floater.string> + <floater.string name="AboutTraffic"> + Paquetes perdidos: [PACKETS_LOST,number,0]/[PACKETS_IN,number,0] ([PACKETS_PCT,number,1]%) + </floater.string> + <tab_container name="about_tab"> + <panel label="Información" name="support_panel"> + <button label="Copiar al portapapeles" name="copy_btn"/> + </panel> + <panel label="Créditos" name="credits_panel"> + <text_editor name="credits_editor"> + Le ofrecen Second Life Philip, Tessa, Andrew, Cory, James, Ben, Char, Charlie, Colin, Dan, Daniel, Doug, Eric, Hamlet, Haney, Eve, Hunter, Ian, Jeff, Jennifer, Jim, John, Lee, Mark, Peter, Phoenix, Richard, Robin, Xenon, Steve, Tanya, Eddie, Avi, Frank, Bruce, Aaron, Alice, Bob, Debra, Eileen, Helen, Janet, Louie, Leviathania, Stefan, Ray, Kevin, Tom, Mikeb, MikeT, Burgess, Elena, Tracy, Bill, Todd, Ryan, Zach, Sarah, Nova, Tim, Stephanie, Michael, Evan, Nicolas, Catherine, Rachelle, Dave, Holly, Bub, Kelly, Magellan, Ramzi, Don, Sabin, Jill, Rheya, Jeska, Torley, Kona, Callum, Charity, Ventrella, Jack, Vektor, Iris, Chris, Nicole, Mick, Reuben, Blue, Babbage, Yedwab, Deana, Lauren, Brent, Pathfinder, Chadrick, Altruima, Jesse, Teeny, Monroe, Icculus, David, Tess, Lizzie, Patsy, Isaac, Lawrence, Cyn, Bo, Gia, Annette, Marius, Tbone, Jonathan, Karen, Ginsu, Satoko, Yuko, Makiko, Thomas, Harry, Seth, Alexei, Brian, Guy, Runitai, Ethan, Data, Cornelius, Kenny, Swiss, Zero, Natria, Wendy, Stephen, Teeple, Thumper, Lucy, Dee, Mia, Liana, Warren, Branka, Aura, beez, Milo, Hermia, Red, Thrax, Joe, Sally, Magenta, Mogura, Paul, Jose, Rejean, Henrik, Lexie, Amber, Logan, Xan, Nora, Morpheus, Donovan, Leyla, MichaelFrancis, Beast, Cube, Bucky, Joshua, Stryfe, Harmony, Teresa, Claudia, Walker, Glenn, Fritz, Fordak, June, Cleopetra, Jean, Ivy, Betsy, Roosevelt, Spike, Ken, Which, Tofu, Chiyo, Rob, Zee, dustin, George, Del, Matthew, Cat, Jacqui, Lightfoot, Adrian, Viola, Alfred, Noel, Irfan, Sunil, Yool, Rika, Jane, Xtreme, Frontier, a2, Neo, Siobhan, Yoz, Justin, Elle, Qarl, Benjamin, Isabel, Gulliver, Everett, Christopher, Izzy, Stephany, Garry, Sejong, Sean, Tobin, Iridium, Meta, Anthony, Jeremy, JP, Jake, Maurice, Madhavi, Leopard, Kyle, Joon, Kari, Bert, Belinda, Jon, Kristi, Bridie, Pramod, KJ, Socrates, Maria, Ivan, Aric, Yamasaki, Adreanne, Jay, MitchK, Ceren, Coco, Durl, Jenny, Periapse, Kartic, Storrs, Lotte, Sandy, Rohn, Colossus, Zen, BigPapi, Brad, Pastrami, Kurz, Mani, Neuro, Jaime, MJ, Rowan, Sgt, Elvis, Gecko, Samuel, Sardonyx, Leo, Bryan, Niko, Soft, Poppy, Rachel, Aki, Angelo, Banzai, Alexa, Sue, CeeLo, Bender, CG, Gillian, Pelle, Nick, Echo, Zara, Christine, Shamiran, Emma, Blake, Keiko, Plexus, Joppa, Sidewinder, Erica, Ashlei, Twilight, Kristen, Brett, Q, Enus, Simon, Bevis, Kraft, Kip, Chandler, Ron, LauraP, Ram, KyleJM, Scouse, Prospero, Melissa, Marty, Nat, Hamilton, Kend, Lordan, Jimmy, Kosmo, Seraph, Green, Ekim, Wiggo, JT, Rome, Doris, Miz, Benoc, Whump, Trinity, Patch, Kate, TJ, Bao, Joohwan, Christy, Sofia, Matias, Cogsworth, Johan, Oreh, Cheah, Angela, Brandy, Mango, Lan, Aleks, Gloria, Heidy, Mitchell, Space, Colton, Bambers, Einstein, Maggie, Malbers, Rose, Winnie, Stella, Milton, Rothman, Niall, Marin, Allison, Katie, Dawn, Katt, Dusty, Kalpana, Judy, Andrea, Ambroff, Infinity, Gail, Rico, Raymond, Yi, William, Christa, M, Teagan, Scout, Molly, Dante, Corr, Dynamike, Usi, Kaylee, Vidtuts, Lil, Danica, Sascha, Kelv, Jacob, Nya, Rodney, Brandon, Elsie, Blondin, Grant, Katrin, Nyx, Gabriel, Locklainn, Claire, Devin, Minerva, Monty, Austin, Bradford, Si, Keira, H, Caitlin, Dita, Makai, Jenn, Ann, Meredith, Clare, Joy, Praveen, Cody, Edmund, Ruthe, Sirena, Gayathri, Spider, FJ, Davidoff, Tian, Jennie, Louise, Oskar, Landon, Noelle, Jarv, Ingrid, Al, Sommer, Doc, Aria, Huin, Gray, Lili, Vir, DJ, Yang, T, Simone, Maestro, Scott, Charlene, Quixote, Amanda, Susan, Zed, Anne, Enkidu, Esbee, Joroan, Katelin, Roxie, Tay, Scarlet, Kevin, Johnny, Wolfgang, Andren, Bob, Howard, Merov, Rand, Ray, Michon, Newell, Galen, Dessie, Les, Michon, Jenelle, Geo, Siz, Shapiro, Pete, Calyle, Selene, Allen, Phoebe, Goldin, Kimmora, Dakota, Slaton, Lindquist, Zoey, Hari, Othello, Rohit, Sheldon, Petra, Viale, Gordon, Kaye, Pink, Ferny, Emerson, Davy, Bri, Chan, Juan, Robert, Terrence, Nathan, Carl, y otros muchos. Gracias a todos estos residentes por contribuir a garantizar que esta es la mejor versión: able whitman, Adeon Writer, adonaira aabye, Aeron Kohime, Agathos Frascati, Aimee Trescothick, Aleric Inglewood, Alissa Sabre, Aminom Marvin, Angela Talamasca, Aralara Rajal, Armin Weatherwax, Ashrilyn Hayashida, Athanasius Skytower, Aura Dirval, Barney Boomslang, Biancaluce Robbiani, Biker Offcourse, Borg Capalini, Bulli Schumann, catherine pfeffer, Chalice Yao, Corre Porta, Court Goodman, Cummere Mayo, Dale Innis, Darien Caldwell, Darjeeling Schoonhoven, Daten Thielt, dimentox travanti, Dirk Talamasca, Drew Dwi, Duckless Vandyke, Elanthius Flagstaff, Electro Burnstein, emiley tomsen, Escort DeFarge, Eva Rau, Ezian Ecksol, Fire Centaur, Fluf Fredriksson, Francisco Koolhoven, Frontera Thor, Frungi Stastny, Gally Young, gearsawe stonecutter, Gigs Taggart, Gordon Wendt, Gudmund Shepherd, Gypsy Paz, Harleen Gretzky, Henri Beauchamp, Inma Rau, Irene Muni, Iskar Ariantho, Jacek Antonelli, JB Kraft, Jessicka Graves, Joeseph Albanese, Joshua Philgarlic, Khyota Wulluf, kirstenlee Cinquetti, Latif Khalifa, Lex Neva, Lilibeth Andree, Lisa Lowe, Lunita Savira, Loosey Demonia, lum pfohl, Marcos Fonzarelli, MartinRJ Fayray, Marusame Arai, Matthew Dowd, Maya Remblai, McCabe Maxsted, Meghan Dench, Melchoir Tokhes, Menos Short, Michelle2 Zenovka, Mimika Oh, Minerva Memel, Mm Alder, Ochi Wolfe, Omei Turnbull, Pesho Replacement, Phantom Ninetails, phoenixflames kukulcan, Polo Gufler, prez pessoa, princess niven, Prokofy Neva, Qie Niangao, Rem Beattie, RodneyLee Jessop, Saijanai Kuhn, Seg Baphomet, Sergen Davies, Shirley Marquez, SignpostMarv Martin, Sindy Tsure, Sira Arbizu, Skips Jigsaw, Sougent Harrop, Spritely Pixel, Squirrel Wood, StarSong Bright, Subversive Writer, Sugarcult Dagger, Sylumm Grigorovich, Tammy Nowotny, Tanooki Darkes, Tayra Dagostino, Theoretical Chemistry, Thickbrick Sleaford, valerie rosewood, Vex Streeter, Vixen Heron, Whoops Babii, Winter Ventura, Xiki Luik, Yann Dufaux, Yina Yao, Yukinoroh Kamachi, Zolute Infinity, Zwagoth Klaar Para tener éxito en los negocios, se atrevido, se el primero, se diferente. (Henry Marchant) - </text_editor> - </panel> - <panel name="licenses_panel"> - <text_editor name="credits_editor"> - 3Dconnexion SDK Copyright (C) 1992-2007 3Dconnexion + </text_editor> + </panel> + <panel label="Licencias" name="licenses_panel"> + <text_editor name="credits_editor"> + 3Dconnexion SDK Copyright (C) 1992-2007 3Dconnexion APR Copyright (C) 2000-2004 The Apache Software Foundation cURL Copyright (C) 1996-2002, Daniel Stenberg, (daniel@haxx.se) DBus/dbus-glib Copyright (C) 2002, 2003 CodeFactory AB / Copyright (C) 2003, 2004 Red Hat, Inc. @@ -35,10 +75,7 @@ All rights reserved. See licenses.txt for details. Voice chat Audio coding: Polycom(R) Siren14(TM) (ITU-T Rec. G.722.1 Annex C) - </text_editor> - </panel> -</tab_container> - <string name="you_are_at"> - Está en [POSITION] - </string> + </text_editor> + </panel> + </tab_container> </floater> diff --git a/indra/newview/skins/default/xui/es/floater_about_land.xml b/indra/newview/skins/default/xui/es/floater_about_land.xml index 7575df4b98..f215348b00 100644 --- a/indra/newview/skins/default/xui/es/floater_about_land.xml +++ b/indra/newview/skins/default/xui/es/floater_about_land.xml @@ -1,7 +1,59 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="floaterland" title="ACERCA DEL TERRENO"> + <floater.string name="Minutes"> + [MINUTES] minutos + </floater.string> + <floater.string name="Minute"> + minuto + </floater.string> + <floater.string name="Seconds"> + [SECONDS] segundos + </floater.string> + <floater.string name="Remaining"> + restantes + </floater.string> <tab_container name="landtab"> - <panel label="General" name="land_general_panel"> + <panel label="GENERAL" name="land_general_panel"> + <panel.string name="new users only"> + Sólo usuarios nuevos + </panel.string> + <panel.string name="anyone"> + Cualquiera + </panel.string> + <panel.string name="area_text"> + Superficie + </panel.string> + <panel.string name="area_size_text"> + [AREA] m² + </panel.string> + <panel.string name="auction_id_text"> + ID de la subasta: [ID] + </panel.string> + <panel.string name="need_tier_to_modify"> + Debe aprobar su compra para modificar este terreno. + </panel.string> + <panel.string name="group_owned_text"> + (Propiedad del grupo) + </panel.string> + <panel.string name="profile_text"> + Perfil... + </panel.string> + <panel.string name="info_text"> + Información... + </panel.string> + <panel.string name="public_text"> + (público) + </panel.string> + <panel.string name="none_text"> + (ninguno) + </panel.string> + <panel.string name="sale_pending_text"> + (Venta pendiente) + </panel.string> + <panel.string name="no_selection_text"> + No se ha seleccionado una parcela. +Vaya al menú Mundo > Acerca del terreno o seleccione otra parcela para ver sus características. + </panel.string> <text name="Name:"> Nombre: </text> @@ -26,7 +78,6 @@ <text name="OwnerText"> Leyla Linden </text> - <button label="Perfil..." label_selected="Perfil..." name="Profile..."/> <text name="Group:"> Grupo: </text> @@ -47,13 +98,13 @@ <text name="For sale to"> En venta a: [BUYER] </text> - <text width="216" name="Sell with landowners objects in parcel."> + <text name="Sell with landowners objects in parcel." width="216"> Los objetos se incluyen en la venta. </text> - <text width="216" name="Selling with no objects in parcel."> + <text name="Selling with no objects in parcel." width="216"> Los objetos no se incluyen en la venta. </text> - <button font="SansSerifSmall" bottom="-245" left="275" width="165" label="Cancelar la venta del terreno" label_selected="Cancelar la venta del terreno" name="Cancel Land Sale"/> + <button bottom="-245" font="SansSerifSmall" label="Cancelar la venta del terreno" label_selected="Cancelar la venta del terreno" left="275" name="Cancel Land Sale" width="165"/> <text name="Claimed:"> Reclamada: </text> @@ -74,58 +125,27 @@ </text> <button label="Comprar terreno..." label_selected="Comprar terreno..." left="130" name="Buy Land..." width="125"/> <button label="Comprar para el grupo..." label_selected="Comprar para el grupo..." name="Buy For Group..."/> - <button label="Comprar un pase..." label_selected="Comprar un pase..." left="130" width="125" name="Buy Pass..." tool_tip="Un pase le da acceso temporal a este terreno."/> + <button label="Comprar un pase..." label_selected="Comprar un pase..." left="130" name="Buy Pass..." tool_tip="Un pase le da acceso temporal a este terreno." width="125"/> <button label="Abandonar el terreno..." label_selected="Abandonar el terreno..." name="Abandon Land..."/> <button label="Reclamar el terreno..." label_selected="Reclamar el terreno..." name="Reclaim Land..."/> <button label="Venta Linden..." label_selected="Venta Linden..." name="Linden Sale..." tool_tip="El terreno debe estar en propiedad, con contenido, y no estar en subasta."/> - <panel.string name="new users only"> - Sólo usuarios nuevos - </panel.string> - <panel.string name="anyone"> - Cualquiera - </panel.string> - <panel.string name="area_text"> - Superficie - </panel.string> - <panel.string name="area_size_text"> - [AREA] m² - </panel.string> - <panel.string name="auction_id_text"> - ID de la subasta: [ID] - </panel.string> - <panel.string name="need_tier_to_modify"> - Debe aprobar su compra para modificar este terreno. - </panel.string> - <panel.string name="group_owned_text"> - (Propiedad del grupo) - </panel.string> - <panel.string name="profile_text"> - Perfil... - </panel.string> - <panel.string name="info_text"> - Información... - </panel.string> - <panel.string name="public_text"> - (público) + </panel> + <panel label="CONTRATO" name="land_covenant_panel"> + <panel.string name="can_resell"> + El terreno comprado en esta región se podrá revender. </panel.string> - <panel.string name="none_text"> - (ninguno) + <panel.string name="can_not_resell"> + El terreno comprado en esta región no se podrá revender. </panel.string> - <panel.string name="sale_pending_text"> - (Venta pendiente) + <panel.string name="can_change"> + El terreno comprado en esta región se podrá unir o dividir. </panel.string> - <panel.string name="no_selection_text"> - No se ha seleccionado una parcela. -Vaya al menú Mundo > Acerca del terreno o seleccione otra parcela para ver sus características. + <panel.string name="can_not_change"> + El terreno comprado en esta región no se podrá unir o dividir. </panel.string> - </panel> - <panel label="Contrato" name="land_covenant_panel"> <text name="estate_section_lbl"> Estado: </text> - <text name="estate_name_lbl"> - Nombre: - </text> <text name="estate_name_text"> mainland </text> @@ -144,9 +164,6 @@ Vaya al menú Mundo > Acerca del terreno o seleccione otra parcela para ver s <text name="region_section_lbl"> Región: </text> - <text name="region_name_lbl"> - Nombre: - </text> <text name="region_name_text"> leyla </text> @@ -174,121 +191,82 @@ Vaya al menú Mundo > Acerca del terreno o seleccione otra parcela para ver s <text name="changeable_clause"> El terreno de esta región no se podrá unir/dividir. </text> - <panel.string name="can_resell"> - El terreno comprado en esta región se podrá revender. - </panel.string> - <panel.string name="can_not_resell"> - El terreno comprado en esta región no se podrá revender. - </panel.string> - <panel.string name="can_change"> - El terreno comprado en esta región se podrá unir o dividir. + </panel> + <panel label="OBJETOS" name="land_objects_panel"> + <panel.string name="objects_available_text"> + [COUNT] de un máximo de [MAX] ([AVAILABLE] disponibles) </panel.string> - <panel.string name="can_not_change"> - El terreno comprado en esta región no se podrá unir o dividir. + <panel.string name="objects_deleted_text"> + [COUNT] de un máximo de [MAX] ([DELETED] se borrarán) </panel.string> - </panel> - <panel label="Objetos" name="land_objects_panel"> <text name="parcel_object_bonus"> Plus de objetos en la región: [BONUS] </text> <text name="Simulator primitive usage:"> - Simulador de uso de prims: + Uso de primitivas: </text> - <text name="objects_available" left="204" width="250" > + <text left="204" name="objects_available" width="250"> [COUNT] de un máximo de [MAX] ([AVAILABLE] disponibles) </text> - <panel.string name="objects_available_text"> - [COUNT] de un máximo de [MAX] ([AVAILABLE] disponibles) - </panel.string> - <panel.string name="objects_deleted_text"> - [COUNT] de un máximo de [MAX] ([DELETED] se borrarán) - </panel.string> <text name="Primitives parcel supports:" width="200"> Prims que admite la parcela: </text> - <text name="object_contrib_text" left="204" width="152"> + <text left="204" name="object_contrib_text" width="152"> [COUNT] </text> <text name="Primitives on parcel:"> Prims en la parcela: </text> - <text name="total_objects_text" left="204" width="48"> + <text left="204" name="total_objects_text" width="48"> [COUNT] </text> - <text name="Owned by parcel owner:" left="14" width="180" > + <text left="14" name="Owned by parcel owner:" width="180"> Del propietario de la parcela: </text> - <text name="owner_objects_text" left="204" width="48"> + <text left="204" name="owner_objects_text" width="48"> [COUNT] </text> <button label="Mostrar" label_selected="Mostrar" name="ShowOwner" right="-135" width="60"/> - <button label="Devolver..." label_selected="Devolver..." name="ReturnOwner..." tool_tip="Devolver los objetos a sus propietarios." right="-10" width="119"/> - <text name="Set to group:" left="14" width="180"> + <button label="Devolver..." label_selected="Devolver..." name="ReturnOwner..." right="-10" tool_tip="Devolver los objetos a sus propietarios." width="119"/> + <text left="14" name="Set to group:" width="180"> Del grupo: </text> - <text name="group_objects_text" left="204" width="48"> + <text left="204" name="group_objects_text" width="48"> [COUNT] </text> <button label="Mostrar" label_selected="Mostrar" name="ShowGroup" right="-135" width="60"/> - <button label="Devolver..." label_selected="Devolver..." name="ReturnGroup..." tool_tip="Devolver los objetos a sus propietarios." right="-10" width="119"/> - <text name="Owned by others:" left="14" width="128"> + <button label="Devolver..." label_selected="Devolver..." name="ReturnGroup..." right="-10" tool_tip="Devolver los objetos a sus propietarios." width="119"/> + <text left="14" name="Owned by others:" width="128"> Propiedad de otros: </text> - <text name="other_objects_text" left="204" width="48"> + <text left="204" name="other_objects_text" width="48"> [COUNT] </text> <button label="Mostrar" label_selected="Mostrar" name="ShowOther" right="-135" width="60"/> - <button label="Devolver..." label_selected="Devolver..." name="ReturnOther..." tool_tip="Devolver los objetos a sus propietarios." right="-10" width="119"/> - <text name="Selected / sat upon:" left="14" width="193" > + <button label="Devolver..." label_selected="Devolver..." name="ReturnOther..." right="-10" tool_tip="Devolver los objetos a sus propietarios." width="119"/> + <text left="14" name="Selected / sat upon:" width="193"> Seleccionados / con gente sentada: </text> - <text name="selected_objects_text" left="204" width="48"> + <text left="204" name="selected_objects_text" width="48"> [COUNT] </text> - <text name="Autoreturn" left="4" width="412" > + <text left="4" name="Autoreturn" width="412"> Autodevolución de objetos a otros residentes (minutos; 0 la desactiva): </text> - <line_editor name="clean other time" right="-20" /> + <line_editor name="clean other time" right="-20"/> <text name="Object Owners:" width="150"> Propietarios de los objetos: </text> - <button label="Actualizar la lista" label_selected="Actualizar la lista" name="Refresh List" left="158"/> - <button label="Devolver los objetos..." label_selected="Devolver los objetos..." name="Return objects..." left="270" width="164"/> + <button label="Actualizar la lista" label_selected="Actualizar la lista" left="158" name="Refresh List" tool_tip="Refresh Object List"/> + <button label="Devolver los objetos..." label_selected="Devolver los objetos..." left="270" name="Return objects..." width="164"/> <name_list name="owner list"> - <column label="Tipo" name="type"/> - <column label="Nombre" name="name"/> - <column label="Número" name="count"/> - <column label="Más recientes" name="mostrecent"/> + <name_list.columns label="Tipo" name="type"/> + <name_list.columns label="Nombre" name="name"/> + <name_list.columns label="Número" name="count"/> + <name_list.columns label="Más recientes" name="mostrecent"/> </name_list> </panel> - <panel label="Opciones" name="land_options_panel"> - <text name="allow_label"> - Permitir a otros residentes: - </text> - <check_box label="Editar el terreno" name="edit land check" tool_tip="Si se marca, cualquiera podrá modificar su terreno. Mejor dejarlo desmarcado, pues usted siempre puede modificar su terreno."/> - <check_box label="Crear hitos" name="check landmark"/> - <check_box label="Volar" name="check fly" tool_tip="Si se marca, los residentes podrán volar en su terreno. Si no, sólo podrán volar al cruzarlo o hasta que aterricen en él."/> - <text name="allow_label2" left="162" > - Crear objetos: - </text> - <check_box label="Todos los residentes" name="edit objects check" left="255" /> - <check_box label="El grupo" name="edit group objects check" left="385" /> - <text name="allow_label3" left="162"> - Dejar objetos: - </text> - <check_box label="Todos los residentes" name="all object entry check" left="255"/> - <check_box label="El grupo" name="group object entry check" left="385"/> - <text name="allow_label4" left="162"> - Ejecutar scripts: - </text> - <check_box label="Todos los residentes" name="check other scripts" left="255"/> - <check_box label="El grupo" name="check group scripts" left="385"/> - <text name="land_options_label"> - Opciones del terreno: - </text> - <check_box label="Seguro (sin daño)" name="check safe" tool_tip="Si se marca, convierte el terreno en 'seguro', desactivando el daño en combate. Si no, se activa el daño en combate."/> - <check_box label="Sin 'empujones'" name="PushRestrictCheck" tool_tip="Previene scripts que empujen. Marcando esta opción prevendrá que en su terreno haya comportamientos destructivos."/> - <check_box label="Mostrar la parcela en Buscar (30 L$/semana) en" name="ShowDirectoryCheck" tool_tip="Let people see this parcel in search results"/> + <panel label="OPCIONES" name="land_options_panel"> <panel.string name="search_enabled_tooltip"> Permitir que aparezca esta parcela en los resultados de la búsqueda </panel.string> @@ -299,62 +277,6 @@ Sólo las parcelas más grandes pueden listarse en la búsqueda. <panel.string name="search_disabled_permissions_tooltip"> Esta opción no esta activada porque usted no puede modificar las opciones de la parcela. </panel.string> - <combo_box name="land category with adult" left="282" width="140"> - <combo_box.item name="item0" label="Cualquier categoría" - /> - <combo_box.item name="item1" label="Localización Linden" - /> - <combo_box.item name="item2" label="'Adult'" - /> - <combo_box.item name="item3" label="Arte y Cultura" - /> - <combo_box.item name="item4" label="Negocios" - /> - <combo_box.item name="item5" label="Educativo" - /> - <combo_box.item name="item6" label="Juegos de azar" - /> - <combo_box.item name="item7" label="Entretenimiento" - /> - <combo_box.item name="item8" label="Para recién llegados" - /> - <combo_box.item name="item9" label="Parques y Naturaleza" - /> - <combo_box.item name="item10" label="Residencial" - /> - <combo_box.item name="item11" label="Compras" - /> - <combo_box.item name="item12" label="Otra" - /> - </combo_box> - <combo_box name="land category" left="282" width="140"> - <combo_box.item name="item0" label="Cualquier categoría" - /> - <combo_box.item name="item1" label="Localización Linden" - /> - <combo_box.item name="item3" label="Arte y Cultura" - /> - <combo_box.item name="item4" label="Negocios" - /> - <combo_box.item name="item5" label="Educativo" - /> - <combo_box.item name="item6" label="Juegos de azar" - /> - <combo_box.item name="item7" label="Entretenimiento" - /> - <combo_box.item name="item8" label="Para recién llegados" - /> - <combo_box.item name="item9" label="Parques y Naturaleza" - /> - <combo_box.item name="item10" label="Residencial" - /> - <combo_box.item name="item11" label="Compras" - /> - <combo_box.item name="item12" label="Otra" - /> - </combo_box> - <button label="?" label_selected="?" name="?" left="427"/> - <check_box label="Contenido 'Mature'" name="MatureCheck" tool_tip=""/> <panel.string name="mature_check_mature"> Contenido 'Mature' </panel.string> @@ -367,6 +289,71 @@ Sólo las parcelas más grandes pueden listarse en la búsqueda. <panel.string name="mature_check_adult_tooltip"> La información o el contenido de su parcela se considera 'Adult'. </panel.string> + <panel.string name="landing_point_none"> + (ninguno) + </panel.string> + <panel.string name="push_restrict_text"> + Sin 'empujones' + </panel.string> + <panel.string name="push_restrict_region_text"> + Sin 'empujones' (prevalece lo marcado en la región) + </panel.string> + <text name="allow_label"> + Permitir a otros residentes: + </text> + <check_box label="Editar el terreno" name="edit land check" tool_tip="Si se marca, cualquiera podrá modificar su terreno. Mejor dejarlo desmarcado, pues usted siempre puede modificar su terreno."/> + <check_box label="Volar" name="check fly" tool_tip="Si se marca, los residentes podrán volar en su terreno. Si no, sólo podrán volar al cruzarlo o hasta que aterricen en él."/> + <text left="162" name="allow_label2"> + Crear objetos: + </text> + <check_box label="Todos los residentes" left="255" name="edit objects check"/> + <check_box label="El grupo" left="385" name="edit group objects check"/> + <text left="162" name="allow_label3"> + Dejar objetos: + </text> + <check_box label="Todos los residentes" left="255" name="all object entry check"/> + <check_box label="El grupo" left="385" name="group object entry check"/> + <text left="162" name="allow_label4"> + Ejecutar scripts: + </text> + <check_box label="Todos los residentes" left="255" name="check other scripts"/> + <check_box label="El grupo" left="385" name="check group scripts"/> + <text name="land_options_label"> + Opciones del terreno: + </text> + <check_box label="Seguro (sin daño)" name="check safe" tool_tip="Si se marca, convierte el terreno en 'seguro', desactivando el daño en combate. Si no, se activa el daño en combate."/> + <check_box label="Sin 'empujones'" name="PushRestrictCheck" tool_tip="Previene scripts que empujen. Marcando esta opción prevendrá que en su terreno haya comportamientos destructivos."/> + <check_box label="Mostrar el sitio en la búsqueda (30 L$/semana)" name="ShowDirectoryCheck" tool_tip="Let people see this parcel in search results"/> + <combo_box left="282" name="land category with adult" width="140"> + <combo_box.item label="Cualquier categoría" name="item0"/> + <combo_box.item label="Localización Linden" name="item1"/> + <combo_box.item label="'Adult'" name="item2"/> + <combo_box.item label="Arte y Cultura" name="item3"/> + <combo_box.item label="Negocios" name="item4"/> + <combo_box.item label="Educativo" name="item5"/> + <combo_box.item label="Juegos de azar" name="item6"/> + <combo_box.item label="Entretenimiento" name="item7"/> + <combo_box.item label="Para recién llegados" name="item8"/> + <combo_box.item label="Parques y Naturaleza" name="item9"/> + <combo_box.item label="Residencial" name="item10"/> + <combo_box.item label="Compras" name="item11"/> + <combo_box.item label="Otra" name="item12"/> + </combo_box> + <combo_box left="282" name="land category" width="140"> + <combo_box.item label="Cualquier categoría" name="item0"/> + <combo_box.item label="Localización Linden" name="item1"/> + <combo_box.item label="Arte y Cultura" name="item3"/> + <combo_box.item label="Negocios" name="item4"/> + <combo_box.item label="Educativo" name="item5"/> + <combo_box.item label="Juegos de azar" name="item6"/> + <combo_box.item label="Entretenimiento" name="item7"/> + <combo_box.item label="Para recién llegados" name="item8"/> + <combo_box.item label="Parques y Naturaleza" name="item9"/> + <combo_box.item label="Residencial" name="item10"/> + <combo_box.item label="Compras" name="item11"/> + <combo_box.item label="Otra" name="item12"/> + </combo_box> + <check_box label="Contenido 'Mature'" name="MatureCheck" tool_tip=""/> <text name="Snapshot:"> Foto: </text> @@ -374,61 +361,46 @@ Sólo las parcelas más grandes pueden listarse en la búsqueda. <text name="landing_point"> Punto de llegada: [LANDING] </text> - <panel.string name="landing_point_none"> - (ninguno) - </panel.string> <button label="Definir" label_selected="Definir" name="Set" tool_tip="Configura el punto de llegada donde aparecerán los visitantes. Configúrelo a la posición de su avatar dentro de esta parcela."/> <button label="Borrar" label_selected="Borrar" name="Clear" tool_tip="Borrar el punto de llegada."/> <text name="Teleport Routing: "> Punto de teleporte: </text> <combo_box name="landing type" tool_tip="Punto de teleporte: defina cómo manejar en su terreno los teleportes."> - <combo_box.item name="Blocked" label="Bloqueado" - /> - <combo_box.item name="LandingPoint" label="Punto de llegada" - /> - <combo_box.item name="Anywhere" label="Cualquiera" - /> + <combo_box.item label="Bloqueado" name="Blocked"/> + <combo_box.item label="Punto de llegada" name="LandingPoint"/> + <combo_box.item label="Cualquiera" name="Anywhere"/> </combo_box> - <panel.string name="push_restrict_text"> - Sin 'empujones' - </panel.string> - <panel.string name="push_restrict_region_text"> - Sin 'empujones' (prevalece lo marcado en la región) - </panel.string> </panel> - <panel label="Media" name="land_media_panel"> + <panel label="MEDIA" name="land_media_panel"> <text name="with media:" width="85"> Tipo de media: </text> - <combo_box name="media type" tool_tip="Especifique si la URL es una película, una web, u otro media" left="97" /> + <combo_box left="97" name="media type" tool_tip="Especifique si la URL es una película, una web, u otro media"/> <text name="at URL:" width="85"> - URL del media: + Página inicial: </text> <line_editor left="97" name="media_url"/> <button label="Definir..." label_selected="Definir..." name="set_media_url"/> + <text name="CurrentURL:"> + Página actual: + </text> + <check_box label="Ocultar la URL del media" left="97" name="hide_media_url" tool_tip="Marcando esta opción esconderá en la información de esta parcela -a quien no esté autorizado a verla- la URL del media. Note que esto no está disponible para HTML."/> <text name="Description:"> Descripción: </text> - <line_editor name="url_description" tool_tip="Texto a mostrar cerca del botón play/cargar" left="97" /> + <line_editor left="97" name="url_description" tool_tip="Texto a mostrar cerca del botón play/cargar"/> <text name="Media texture:"> Cambiar la textura: </text> - <texture_picker label="" name="media texture" tool_tip="Pulse para elegir una imagen" left="97" /> + <texture_picker label="" left="97" name="media texture" tool_tip="Pulse para elegir una imagen"/> <text name="replace_texture_help" width="285"> (Los objetos que usen esta textura mostrarán la película o la web cuando pulse la flecha de play.) </text> - <text name="Options:"> - Opciones de -los media: - </text> - <check_box left="97" label="Escala automática" name="media_auto_scale" tool_tip="Marcando esta opción, se ajustará el tamaño del contenido automáticamente. Puede ser ligeramente más lento y con menor calidad visual, pero no tendrá que ajustar ni alinear ninguna textura."/> - <check_box label="Media en bucle" name="media_loop" tool_tip="Ejecuta el media en bucle: cuando acaba su ejecución, vuelve a empezar."/> - <check_box left="97" label="Ocultar la URL del media" name="hide_media_url" tool_tip="Marcando esta opción esconderá en la información de esta parcela -a quien no esté autorizado a verla- la URL del media. Note que esto no está disponible para HTML."/> - <check_box label="Ocultar la URL de la música" name="hide_music_url" tool_tip="Marcando esta opción esconderá en la información de esta parcela -a quien no esté autorizado a verla- la URL de la música"/> - <text name="media_size" tool_tip="Tamaño en el que mostrar las web (marque 0 para por defecto)." left="102" width="120"> + <check_box label="Escala automática" left="97" name="media_auto_scale" tool_tip="Marcando esta opción, se ajustará el tamaño del contenido automáticamente. Puede ser ligeramente más lento y con menor calidad visual, pero no tendrá que ajustar ni alinear ninguna textura."/> + <text left="102" name="media_size" tool_tip="Tamaño en el que mostrar las web (marque 0 para por defecto)." width="120"> Tamaño del media: </text> <spinner left_delta="104" name="media_size_width" tool_tip="Tamaño en el que mostrar las web (marque 0 para por defecto)."/> @@ -436,58 +408,43 @@ los media: <text name="pixels"> píxeles </text> - <text name="MusicURL:" bottom_delta="-28" > - URL de la -música: - </text> - <line_editor bottom_delta="-12" left="97" name="music_url"/> - <text name="Sound:"> - Sonido: - </text> - <check_box left="97" label="Limitar los gestos y los sonidos de objetos a esta parcela" name="check sound local"/> - <button label="?" label_selected="?" name="?" left="424"/> - <text name="Voice settings:"> - Voz: + <text name="Options:"> + Opciones de +los media: </text> - <check_box left="97" label="Activar la voz" name="parcel_enable_voice_channel"/> - <check_box left="97" label="Activar la voz (establecido por el Estado)" name="parcel_enable_voice_channel_is_estate_disabled"/> - <check_box left="117" label="Limitar la voz a esta parcela" name="parcel_enable_voice_channel_parcel"/> + <check_box label="Media en bucle" name="media_loop" tool_tip="Ejecuta el media en bucle: cuando acaba su ejecución, vuelve a empezar."/> </panel> - <panel label="Acceso" name="land_access_panel"> + <panel label="SONIDO" name="land_audio_panel"> + <check_box label="Activar la voz" name="parcel_enable_voice_channel"/> + <check_box label="Autorizar la voz (establecido por el Estado)" name="parcel_enable_voice_channel_is_estate_disabled"/> + </panel> + <panel label="ACCESO" name="land_access_panel"> + <panel.string name="access_estate_defined"> + (Definido por el Estado) + </panel.string> + <panel.string name="estate_override"> + Una o más de esta opciones está configurada a nivel del estado + </panel.string> <text name="Limit access to this parcel to:"> Acceso a esta parcela </text> - <check_box label="Permitir el acceso público" name="public_access"/> + <check_box label="Permitir el acceso público [MATURITY]" name="public_access"/> <text name="Only Allow"> - Impedir el acceso a: + Restringir el acceso a residentes verificados con: </text> - <check_box label="Residentes que no hayan dado a Linden Lab información de su forma de pago" name="limit_payment" tool_tip="Impedir el acceso a los residentes no identificados."/> - <check_box label="Residentes de los que no se ha verificado si son adultos" name="limit_age_verified" tool_tip="Residentes que no hayan verificado su edad. Para más información, vea support.secondlife.com"/> - <panel.string name="estate_override"> - Una o más de esta opciones está configurada a nivel del estado - </panel.string> + <check_box label="Información de pago aportada [ESTATE_PAYMENT_LIMIT]" name="limit_payment" tool_tip="Impedir el acceso a los residentes no identificados."/> + <check_box label="Verificación de edad [ESTATE_AGE_LIMIT]" name="limit_age_verified" tool_tip="Prohibir el acceso a residentes que no hayan verificado su edad. Para más información, ver [SUPPORT_SITE]."/> <check_box label="Acceso permitido al grupo: [GROUP]" name="GroupCheck" tool_tip="Elija el grupo en la pestaña General."/> <check_box label="Vender pases a:" name="PassCheck" tool_tip="Permitir acceso temporal a esta parcela"/> <combo_box name="pass_combo"> - <combo_box.item name="Anyone" label="Cualquiera" - /> - <combo_box.item name="Group" label="Grupo" - /> + <combo_box.item label="Cualquiera" name="Anyone"/> + <combo_box.item label="Grupo" name="Group"/> </combo_box> <spinner label="Precio en L$:" name="PriceSpin"/> <spinner label="Horas de acceso:" name="HoursSpin"/> - <text label="Permitir siempre" name="AllowedText"> - Residentes autorizados - </text> - <name_list name="AccessList" tool_tip="([LISTED] listados, el máx. es de [MAX])"/> - <button label="Añadir..." label_selected="Añadir..." name="add_allowed"/> - <button label="Quitar" label_selected="Quitar" name="remove_allowed"/> - <text label="Prohibir el acceso" name="BanCheck"> - Residentes con el acceso prohibido - </text> - <name_list name="BannedList" tool_tip="([LISTED] listados, el máx. es de [MAX])"/> - <button label="Añadir..." label_selected="Añadir..." name="add_banned"/> - <button label="Quitar" label_selected="Quitar" name="remove_banned"/> + <panel name="Allowed_layout_panel"> + <name_list name="AccessList" tool_tip="([LISTED] listados de un máx. de [MAX])"/> + </panel> </panel> </tab_container> </floater> diff --git a/indra/newview/skins/default/xui/es/floater_activeim.xml b/indra/newview/skins/default/xui/es/floater_activeim.xml new file mode 100644 index 0000000000..988786c1ae --- /dev/null +++ b/indra/newview/skins/default/xui/es/floater_activeim.xml @@ -0,0 +1,2 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<floater name="floater_activeim" title="MI activo"/> diff --git a/indra/newview/skins/default/xui/es/floater_animation_preview.xml b/indra/newview/skins/default/xui/es/floater_animation_preview.xml index 5a03aa6370..39835968ae 100644 --- a/indra/newview/skins/default/xui/es/floater_animation_preview.xml +++ b/indra/newview/skins/default/xui/es/floater_animation_preview.xml @@ -1,70 +1,177 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="Animation Preview" title=""> + <floater.string name="failed_to_initialize"> + Fallo al iniciar el movimiento + </floater.string> + <floater.string name="anim_too_long"> + El archivo de la animación dura [LENGTH] segundos. + +La duración máxima de una animación es de [MAX_LENGTH] segundos. + </floater.string> + <floater.string name="failed_file_read"> + No se ha podido leer el archivo de la animación. + +[STATUS] + </floater.string> + <floater.string name="E_ST_OK"> + OK + </floater.string> + <floater.string name="E_ST_EOF"> + Fin prematuro del archivo. + </floater.string> + <floater.string name="E_ST_NO_CONSTRAINT"> + No se puede leer la definición de la restricción. + </floater.string> + <floater.string name="E_ST_NO_FILE"> + No se puede abrir el archivo BVH. + </floater.string> + <floater.string name="E_ST_NO_HIER"> + 'HIERARCHY header' inválido. + </floater.string> + <floater.string name="E_ST_NO_JOINT"> + No se pueden encontrar 'ROOT' o 'JOINT'. + </floater.string> + <floater.string name="E_ST_NO_NAME"> + No se puede obtener el nombre 'JOINT'. + </floater.string> + <floater.string name="E_ST_NO_OFFSET"> + No se puede encontrar 'OFFSET'. + </floater.string> + <floater.string name="E_ST_NO_CHANNELS"> + No se puede encontrar 'CHANNELS'. + </floater.string> + <floater.string name="E_ST_NO_ROTATION"> + No se puede conseguir el orden de la rotación. + </floater.string> + <floater.string name="E_ST_NO_AXIS"> + No se puede encontrar el eje de rotación. + </floater.string> + <floater.string name="E_ST_NO_MOTION"> + No se puede encontrar 'MOTION'. + </floater.string> + <floater.string name="E_ST_NO_FRAMES"> + No se puede conseguir el número de frames. + </floater.string> + <floater.string name="E_ST_NO_FRAME_TIME"> + No se puede conseguir el tiempo del frame. + </floater.string> + <floater.string name="E_ST_NO_POS"> + No se pueden conseguir los valores de la posición. + </floater.string> + <floater.string name="E_ST_NO_ROT"> + No se pueden conseguir los valores de la rotación. + </floater.string> + <floater.string name="E_ST_NO_XLT_FILE"> + No se puede abrir el archivo de traducción. + </floater.string> + <floater.string name="E_ST_NO_XLT_HEADER"> + No se puede leer el encabezamiento de la traducción. + </floater.string> + <floater.string name="E_ST_NO_XLT_NAME"> + No se puede leer la traducción de los nombres. + </floater.string> + <floater.string name="E_ST_NO_XLT_IGNORE"> + No se puede leer la traducción de los valores ignorados. + </floater.string> + <floater.string name="E_ST_NO_XLT_RELATIVE"> + No se puede leer el valor relativo de la traducción. + </floater.string> + <floater.string name="E_ST_NO_XLT_OUTNAME"> + No se puede leer la traducción del valor 'outname' + </floater.string> + <floater.string name="E_ST_NO_XLT_MATRIX"> + No se puede leer la matriz de traducciones. + </floater.string> + <floater.string name="E_ST_NO_XLT_MERGECHILD"> + No se puede conseguir el nombre 'mergechild'. + </floater.string> + <floater.string name="E_ST_NO_XLT_MERGEPARENT"> + No se puede conseguir el nombre 'mergeparent'. + </floater.string> + <floater.string name="E_ST_NO_XLT_PRIORITY"> + No se puede obtener el valor prioritario. + </floater.string> + <floater.string name="E_ST_NO_XLT_LOOP"> + No se puede conseguir el valor del bucle. + </floater.string> + <floater.string name="E_ST_NO_XLT_EASEIN"> + No se pueden conseguir los valores 'easeIn'. + </floater.string> + <floater.string name="E_ST_NO_XLT_EASEOUT"> + No se pueden conseguir los valores 'easeOut'. + </floater.string> + <floater.string name="E_ST_NO_XLT_HAND"> + No se puede conseguir el valor de 'hand morph'. + </floater.string> + <floater.string name="E_ST_NO_XLT_EMOTE"> + No se puede leer el nombre del gesto. + </floater.string> <text name="name_label"> Nombre: </text> <text name="description_label"> Descripción: </text> - <spinner label_width="72" width="110" label="Prioridad:" name="priority" tool_tip="Controle qué otras animaciones pueden ser anuladas por ésta."/> - <check_box left="8" label="Bucle:" name="loop_check" tool_tip="Haga esta animación en bucle."/> - <spinner label_width="65" left="65" width="116" label="Empieza(%)" name="loop_in_point" tool_tip="Indique el punto en el que la animación empieza el bucle."/> - <spinner label_width="50" left="185" label="Acaba(%)" name="loop_out_point" tool_tip="Indique el punto en el que la animación acaba el bucle."/> + <spinner label="Prioridad:" label_width="72" name="priority" tool_tip="Controla qué otras animaciones pueden ser anuladas por ésta" width="110"/> + <check_box label="Bucle:" left="8" name="loop_check" tool_tip="Hace esta animación en bucle"/> + <spinner label="Empieza(%)" label_width="65" left="65" name="loop_in_point" tool_tip="Indica el punto en el que la animación vuelve a empezar" width="116"/> + <spinner label="Acaba(%)" label_width="50" left="185" name="loop_out_point" tool_tip="Indica el punto en el que la animación acaba el bucle"/> <text name="hand_label"> Posición de las manos </text> - <combo_box left_delta="120" width="164" name="hand_pose_combo" tool_tip="Control de lo que hacen las manos durante la animación."> - <combo_box.item name="Spread" label="Extendidas"/> - <combo_box.item name="Relaxed" label="Relajadas"/> - <combo_box.item name="PointBoth" label="Ambas señalan"/> - <combo_box.item name="Fist" label="Puño"/> - <combo_box.item name="RelaxedLeft" label="La izquierda relajada"/> - <combo_box.item name="PointLeft" label="La izquierda señala"/> - <combo_box.item name="FistLeft" label="Puño en la izquierda"/> - <combo_box.item name="RelaxedRight" label="La derecha relajada"/> - <combo_box.item name="PointRight" label="La derecha señala"/> - <combo_box.item name="FistRight" label="Puño en la derecha"/> - <combo_box.item name="SaluteRight" label="La derecha saluda"/> - <combo_box.item name="Typing" label="Escribiendo"/> - <combo_box.item name="PeaceRight" label="Paz en la derecha"/> + <combo_box left_delta="120" name="hand_pose_combo" tool_tip="Controla qué hacen las manos durante la animación" width="164"> + <combo_box.item label="Extendidas" name="Spread"/> + <combo_box.item label="Relajadas" name="Relaxed"/> + <combo_box.item label="Ambas señalan" name="PointBoth"/> + <combo_box.item label="Puño" name="Fist"/> + <combo_box.item label="La izq. relajada" name="RelaxedLeft"/> + <combo_box.item label="La izq. señala" name="PointLeft"/> + <combo_box.item label="Puño izq." name="FistLeft"/> + <combo_box.item label="La der. relajada" name="RelaxedRight"/> + <combo_box.item label="La der. señala" name="PointRight"/> + <combo_box.item label="Puño der." name="FistRight"/> + <combo_box.item label="La derecha saluda" name="SaluteRight"/> + <combo_box.item label="Escribiendo" name="Typing"/> + <combo_box.item label="'Paz' en la der." name="PeaceRight"/> </combo_box> <text name="emote_label"> Expresión </text> - <combo_box left_delta="120" width="164" name="emote_combo" tool_tip="Controle qué hace la cara durante la animación."> - <combo_box.item name="[None]" label="Nada]"/> - <combo_box.item name="Aaaaah" label="Aaaaah"/> - <combo_box.item name="Afraid" label="Con miedo"/> - <combo_box.item name="Angry" label="Enfadada"/> - <combo_box.item name="BigSmile" label="Gran sonrisa"/> - <combo_box.item name="Bored" label="Aburrida"/> - <combo_box.item name="Cry" label="Llorar"/> - <combo_box.item name="Disdain" label="Desdén"/> - <combo_box.item name="Embarrassed" label="Avergonzada"/> - <combo_box.item name="Frown" label="Fruncir el ceño"/> - <combo_box.item name="Kiss" label="Besar"/> - <combo_box.item name="Laugh" label="Reír"/> - <combo_box.item name="Plllppt" label="Sacar la lengua"/> - <combo_box.item name="Repulsed" label="Rechazo"/> - <combo_box.item name="Sad" label="Triste"/> - <combo_box.item name="Shrug" label="Encogerse de hombros"/> - <combo_box.item name="Smile" label="Sonrisa"/> - <combo_box.item name="Surprise" label="Sorpresa"/> - <combo_box.item name="Wink" label="Guiño"/> - <combo_box.item name="Worry" label="Preocupación"/> + <combo_box left_delta="120" name="emote_combo" tool_tip="Controla qué hace la cara durante la animación" width="164"> + <combo_box.item label="(ninguno)" name="[None]"/> + <combo_box.item label="Aaaaah" name="Aaaaah"/> + <combo_box.item label="Con miedo" name="Afraid"/> + <combo_box.item label="Enfado" name="Angry"/> + <combo_box.item label="Gran sonrisa" name="BigSmile"/> + <combo_box.item label="Aburrimiento" name="Bored"/> + <combo_box.item label="Llorar" name="Cry"/> + <combo_box.item label="Desdén" name="Disdain"/> + <combo_box.item label="Avergonzarse" name="Embarrassed"/> + <combo_box.item label="Fruncir el ceño" name="Frown"/> + <combo_box.item label="Beso" name="Kiss"/> + <combo_box.item label="Reír" name="Laugh"/> + <combo_box.item label="Sacar la lengua" name="Plllppt"/> + <combo_box.item label="Rechazo" name="Repulsed"/> + <combo_box.item label="Triste" name="Sad"/> + <combo_box.item label="Encogerse de hombros" name="Shrug"/> + <combo_box.item label="Sonrisa" name="Smile"/> + <combo_box.item label="Sorpresa" name="Surprise"/> + <combo_box.item label="Guiño" name="Wink"/> + <combo_box.item label="Preocupación" name="Worry"/> </combo_box> <text name="preview_label" width="250"> Vista previa mientras </text> - <combo_box left_delta="120" width="130" name="preview_base_anim" tool_tip="Compruebe cómo se comporta su animación a la vez que el avatar realiza acciones comunes."> - <combo_box.item name="Standing" label="Estar de pie"/> - <combo_box.item name="Walking" label="Caminar"/> - <combo_box.item name="Sitting" label="Estar sentado"/> - <combo_box.item name="Flying" label="Volar"/> + <combo_box left_delta="120" name="preview_base_anim" tool_tip="Compruebe cómo se comporta su animación a la vez que el avatar realiza acciones comunes." width="130"> + <combo_box.item label="De pie" name="Standing"/> + <combo_box.item label="Caminando" name="Walking"/> + <combo_box.item label="Sentado/a" name="Sitting"/> + <combo_box.item label="Volando" name="Flying"/> </combo_box> - <spinner label_width="125" width="192" label="Combinar (sec)" name="ease_in_time" tool_tip="Tiempo (en segundos) en el que se combinan las animaciones."/> - <spinner bottom_delta="-20" label_width="125" left="10" width="192" label="Dejar de combinar (sec)" name="ease_out_time" tool_tip="Tiempo (en segundos) en el que dejan de combinarse las animaciones."/> - <button bottom_delta="-32" name="play_btn" tool_tip="Mover/Pausar su animación."/> + <spinner label="Combinar (sec)" label_width="125" name="ease_in_time" tool_tip="Tiempo (en segundos) en el que se combinan las animaciones" width="192"/> + <spinner bottom_delta="-20" label="Dejar de combinar (sec)" label_width="125" left="10" name="ease_out_time" tool_tip="Tiempo (en segundos) en el que dejan de combinarse las animaciones" width="192"/> + <button bottom_delta="-32" name="play_btn" tool_tip="Ejecutar tu animación"/> + <button name="pause_btn" tool_tip="Pausar tu animación"/> <button label="" name="stop_btn" tool_tip="Parar la repetición de la animación"/> <slider label="" name="playback_slider"/> <text name="bad_animation_text"> @@ -73,19 +180,6 @@ Recomendamos usar archivos BVH exportados de Poser 4. </text> - <button label="Cancelar" name="cancel_btn"/> <button label="Subir ([AMOUNT] L$)" name="ok_btn"/> - <string name="failed_to_initialize"> - Fallo al iniciar el movimiento - </string> - <string name="anim_too_long"> - El archivo de la animación dura [LENGTH] segundos. - -La duración máxima de una animación es de [MAX_LENGTH] segundos. - </string> - <string name="failed_file_read"> - No se ha podido leer el archivo de la animación. - -[STATUS] - </string> + <button label="Cancelar" name="cancel_btn"/> </floater> diff --git a/indra/newview/skins/default/xui/es/floater_auction.xml b/indra/newview/skins/default/xui/es/floater_auction.xml index 5196ac0b78..6faf19dbb5 100644 --- a/indra/newview/skins/default/xui/es/floater_auction.xml +++ b/indra/newview/skins/default/xui/es/floater_auction.xml @@ -1,9 +1,11 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> -<floater name="floater_auction" title="EMPEZAR VENTA DE TERRENO LINDEN"> - <check_box label="Incluir la valla amarilla de selección" name="fence_check"/> - <button label="Foto" label_selected="Foto" name="snapshot_btn"/> - <button label="OK" label_selected="OK" name="ok_btn"/> - <text name="already for sale"> +<floater name="floater_auction" title="COMENZAR LA VENTA DE TERRENO LINDEN"> + <floater.string name="already for sale"> No puede subastar parcelas que ya están en venta. - </text> + </floater.string> + <check_box initial_value="true" label="Incluir la valla amarilla de selección" name="fence_check"/> + <button label="Foto" label_selected="Foto" name="snapshot_btn"/> + <button label="Vender a cualquiera" label_selected="Vender a cualquiera" name="sell_to_anyone_btn"/> + <button label="Limpiar las configuraciones" label_selected="Limpiar las configuraciones" name="reset_parcel_btn"/> + <button label="Comenzar subasta" label_selected="Comenzar subasta" name="start_auction_btn"/> </floater> diff --git a/indra/newview/skins/default/xui/es/floater_avatar_picker.xml b/indra/newview/skins/default/xui/es/floater_avatar_picker.xml index df0147b191..c83dd3ef3e 100644 --- a/indra/newview/skins/default/xui/es/floater_avatar_picker.xml +++ b/indra/newview/skins/default/xui/es/floater_avatar_picker.xml @@ -1,42 +1,47 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="avatarpicker" title="ELEGIR A UN RESIDENTE"> + <floater.string name="not_found"> + No se ha encontrado '[TEXT]' + </floater.string> + <floater.string name="no_one_near"> + No hay nadie cerca + </floater.string> + <floater.string name="no_results"> + Sin resultados + </floater.string> + <floater.string name="searching"> + Buscando... + </floater.string> + <string label="Elegir" label_selected="Elegir" name="Select"> + Seleccionar + </string> + <string name="Close"> + Cerrar + </string> <tab_container name="ResidentChooserTabs"> <panel label="Buscar" name="SearchPanel"> <text name="InstructSearchResidentName"> - Escriba parte del nombre del residente: + Escribe parte del nombre de la persona: </text> - <button label="Buscar" label_selected="Buscar" name="Find"/> + <button label="Ir" label_selected="Ir" name="Find"/> </panel> - <panel label="Tarjetas de visita" name="CallingCardsPanel"> - <text name="InstructSelectCallingCard"> - Elija una tarjeta de visita: + <panel label="Amigos" name="FriendsPanel"> + <text name="InstructSelectFriend"> + Elige a una persona: </text> </panel> <panel label="Cercanos" name="NearMePanel"> <text name="InstructSelectResident"> - Seleccionar un -residente cercano: + Elegir a alguien que esté cerca: </text> - <button font="SansSerifSmall" left_delta="1" width="115" label="Actualizar la lista" label_selected="Actualizar la lista" name="Refresh"/> - <slider label="Alcance" name="near_me_range" bottom_delta="-36"/> + <slider bottom_delta="-36" label="Alcance" name="near_me_range"/> <text name="meters"> Metros </text> - <scroll_list bottom_delta="-169" height="159" name="NearMe" /> + <button font="SansSerifSmall" label="Actualizar la lista" label_selected="Actualizar la lista" left_delta="1" name="Refresh" width="115"/> + <scroll_list bottom_delta="-169" height="159" name="NearMe"/> </panel> </tab_container> - <button label="Elegir" label_selected="Elegir" name="Select"/> - <button label="Cancelar" label_selected="Cancelar" name="Cancel"/> - <string name="not_found"> - No se ha encontrado '[TEXT]' - </string> - <string name="no_one_near"> - No hay nadie cerca - </string> - <string name="no_results"> - Sin resultados - </string> - <string name="searching"> - Buscando... - </string> + <button label="OK" label_selected="OK" name="ok_btn"/> + <button label="Cancelar" label_selected="Cancelar" name="cancel_btn"/> </floater> diff --git a/indra/newview/skins/default/xui/es/floater_avatar_textures.xml b/indra/newview/skins/default/xui/es/floater_avatar_textures.xml index 8febe4b0a9..d9ad3da633 100644 --- a/indra/newview/skins/default/xui/es/floater_avatar_textures.xml +++ b/indra/newview/skins/default/xui/es/floater_avatar_textures.xml @@ -1,30 +1,32 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="avatar_texture_debug" title="TEXTURAS DEL AVATAR"> - <text name="baked_label"> - Texturas predeterminadas - </text> + <floater.string name="InvalidAvatar"> + AVATAR NO VÁLIDO + </floater.string> <text name="composite_label"> Texturas compuestas </text> - <texture_picker label="Cabeza" name="baked_head"/> - <texture_picker label="Maquillaje" name="head_bodypaint"/> - <texture_picker label="Pelo" name="hair"/> <button label="Soltar" label_selected="Soltar" name="Dump"/> - <texture_picker label="Ojos" name="baked_eyes"/> - <texture_picker label="Ojo" name="eye_texture"/> - <texture_picker label="Parte superior del cuerpo" name="baked_upper_body"/> - <texture_picker label="Tatuaje de la parte superior del cuerpo" name="upper_bodypaint"/> - <texture_picker label="Camiseta" name="undershirt"/> - <texture_picker label="Guantes" name="gloves"/> - <texture_picker label="Camisa" name="shirt"/> + <texture_picker label="Pelo" name="hair_grain"/> + <texture_picker label="Alfa del pelo" name="hair_alpha"/> + <texture_picker label="Maquillaje" name="head_bodypaint"/> + <texture_picker label="Alfa de la cabeza" name="head_alpha"/> + <texture_picker label="Tatuaje de la cabeza" name="head_tattoo"/> + <texture_picker label="Ojo" name="eyes_iris"/> + <texture_picker label="Alfa de los ojos" name="eyes_alpha"/> + <texture_picker label="Pintura corporal: parte superior del cuerpo" name="upper_bodypaint"/> + <texture_picker label="Camiseta" name="upper_undershirt"/> + <texture_picker label="Guantes" name="upper_gloves"/> + <texture_picker label="Camisa" name="upper_shirt"/> <texture_picker label="Parte superior de la chaqueta" name="upper_jacket"/> - <texture_picker label="Parte inferior del cuerpo" name="baked_lower_body"/> - <texture_picker label="Tatuaje de la parte inferior del cuerpo" name="lower_bodypaint"/> - <texture_picker label="Ropa interior" name="underpants"/> - <texture_picker label="Calcetines" name="socks"/> - <texture_picker label="Zapatos" name="shoes"/> - <texture_picker label="Pantalones" name="pants"/> - <texture_picker label="Chaqueta" name="jacket"/> - <texture_picker label="Falda" name="baked_skirt"/> - <texture_picker label="Falda" name="skirt_texture"/> + <texture_picker label="Alfa superior" name="upper_alpha"/> + <texture_picker label="Tatuaje superior" name="upper_tattoo"/> + <texture_picker label="Pintura corporal: parte inferior del cuerpo" name="lower_bodypaint"/> + <texture_picker label="Ropa interior" name="lower_underpants"/> + <texture_picker label="Calcetines" name="lower_socks"/> + <texture_picker label="Zapatos" name="lower_shoes"/> + <texture_picker label="Pantalones" name="lower_pants"/> + <texture_picker label="Chaqueta" name="lower_jacket"/> + <texture_picker label="Alfa inferior" name="lower_alpha"/> + <texture_picker label="Tatuaje inferior" name="lower_tattoo"/> </floater> diff --git a/indra/newview/skins/default/xui/es/floater_beacons.xml b/indra/newview/skins/default/xui/es/floater_beacons.xml index 2df90bc911..b86967755c 100644 --- a/indra/newview/skins/default/xui/es/floater_beacons.xml +++ b/indra/newview/skins/default/xui/es/floater_beacons.xml @@ -1,15 +1,21 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="beacons" title="BALIZAS"> <panel name="beacons_panel"> - <check_box label="Objetos con script sólo al tocarlos" name="touch_only"/> - <check_box label="Objetos con script" name="scripted"/> - <check_box label="Objetos materiales" name="physical"/> - <check_box label="Fuentes de sonido" name="sounds"/> - <check_box label="Fuentes de partículas" name="particles"/> - <check_box label="Activar los realzados" name="highlights"/> - <check_box label="Activar las balizas" name="beacons"/> - <text name="beacon_width_label"> - Ancho de la baliza: + <text name="label_show"> + Mostrar: </text> + <check_box label="Balizas" name="beacons"/> + <check_box label="Realzados" name="highlights"/> + <text name="beacon_width_label" tool_tip="Ancho de la baliza"> + Ancho: + </text> + <text name="label_objects"> + Para estos objetos: + </text> + <check_box label="Materiales" name="physical"/> + <check_box label="Con scripts" name="scripted"/> + <check_box label="Sólo tocar" name="touch_only"/> + <check_box label="Origen de sonidos" name="sounds"/> + <check_box label="Origen de partículas" name="particles"/> </panel> </floater> diff --git a/indra/newview/skins/default/xui/es/floater_build_options.xml b/indra/newview/skins/default/xui/es/floater_build_options.xml index 3d839bf645..de8d205ad4 100644 --- a/indra/newview/skins/default/xui/es/floater_build_options.xml +++ b/indra/newview/skins/default/xui/es/floater_build_options.xml @@ -1,8 +1,11 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="build options floater" title="OPCIONES DE LA CUADRÍCULA"> - <spinner label="Unidad de la cuadrícula (metros)" name="GridResolution" width="250" label_width="192"/> - <spinner label="Graduación de la cuadrícula (metros)" name="GridDrawSize" width="250" label_width="192"/> + <spinner label="Unidad de la cuadrícula (metros)" label_width="192" name="GridResolution" width="250"/> + <spinner label="Graduación de la cuadrícula (metros)" label_width="192" name="GridDrawSize" width="250"/> <check_box label="Activar subunidades" name="GridSubUnit"/> <check_box label="Ver la sección transversal" name="GridCrossSection"/> + <text name="grid_opacity_label" tool_tip="Opacidad de la cuadrícula"> + Opacidad: + </text> <slider label="Opacidad de la cuadrícula" name="GridOpacity" width="250"/> </floater> diff --git a/indra/newview/skins/default/xui/es/floater_bulk_perms.xml b/indra/newview/skins/default/xui/es/floater_bulk_perms.xml index 0553f4c672..f1948220b4 100644 --- a/indra/newview/skins/default/xui/es/floater_bulk_perms.xml +++ b/indra/newview/skins/default/xui/es/floater_bulk_perms.xml @@ -1,44 +1,54 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> -<floater name="floaterbulkperms" title="CAMBIO MASIVO DE LOS PERMISOS DEL CONTENIDO"> - <text name="applyto"> - Tipos de contenido - </text> +<floater name="floaterbulkperms" title="EDITAR LOS PERMISOS DEL CONTENIDO"> + <floater.string name="nothing_to_modify_text"> + Lo seleccionado tiene contenidos no editables. + </floater.string> + <floater.string name="status_text"> + Configurando los permisos de [NAME] + </floater.string> + <floater.string name="start_text"> + Iniciando el cambio de permisos solicitado... + </floater.string> + <floater.string name="done_text"> + Finalizado el cambio de permisos solicitado. + </floater.string> <check_box label="Animación" name="check_animation"/> + <icon name="icon_animation" tool_tip="Animaciones"/> <check_box label="Partes del cuerpo" name="check_bodypart"/> + <icon name="icon_bodypart" tool_tip="Partes del cuerpo"/> <check_box label="Ropa" name="check_clothing"/> + <icon name="icon_clothing" tool_tip="Ropa"/> <check_box label="Gestos" name="check_gesture"/> - <check_box label="Hitos" name="check_landmark"/> + <icon name="icon_gesture" tool_tip="Gestos"/> <check_box label="Notas" name="check_notecard"/> + <icon name="icon_notecard" tool_tip="Notas"/> <check_box label="Objetos" name="check_object"/> + <icon name="icon_object" tool_tip="Objetos"/> <check_box label="Scripts" name="check_script"/> + <icon name="icon_script" tool_tip="Scripts"/> <check_box label="Sonidos" name="check_sound"/> + <icon name="icon_sound" tool_tip="Sonidos"/> <check_box label="Texturas" name="check_texture"/> - <button label="Marcar todo" label_selected="Todo" name="check_all"/> - <button label="Desmarcar todo" label_selected="Ninguno" name="check_none"/> + <icon name="icon_texture" tool_tip="Texturas"/> + <button label="√ Todos" label_selected="Todo" name="check_all"/> + <button label="Limpiar" label_selected="Ninguno" name="check_none"/> <text name="newperms"> - Permisos nuevos + Permisos nuevos del contenido + </text> + <text name="GroupLabel"> + Grupo: </text> - <check_box label="Compartir con el grupo" name="share_with_group"/> - <check_box label="Permitir a cualquiera que lo copie" name="everyone_copy"/> + <check_box label="Compartir" name="share_with_group"/> + <text name="AnyoneLabel"> + Cualquiera: + </text> + <check_box label="Copiarlo" name="everyone_copy"/> <text name="NextOwnerLabel"> - El próximo propietario puede: + Próximo propietario: </text> <check_box label="Modificarlo" name="next_owner_modify"/> <check_box label="Copiarlo" name="next_owner_copy"/> - <check_box label="Revenderlo/Darlo" name="next_owner_transfer"/> - <button label="Ayuda" name="help"/> - <button label="Aplicar" name="apply"/> - <button label="Cerrar" name="close"/> - <string name="nothing_to_modify_text"> - Lo seleccionado tiene contenidos no editables. - </string> - <string name="status_text"> - Configurando los permisos de [NAME] - </string> - <string name="start_text"> - Iniciando el cambio de permisos solicitado... - </string> - <string name="done_text"> - Finalizado el cambio de permisos solicitado. - </string> + <check_box initial_value="true" label="Transferirlo" name="next_owner_transfer" tool_tip="El próximo propietario puede dar o revender este objeto"/> + <button label="OK" name="apply"/> + <button label="Cancelar" name="close"/> </floater> diff --git a/indra/newview/skins/default/xui/es/floater_bumps.xml b/indra/newview/skins/default/xui/es/floater_bumps.xml index 0522f788bb..6a9c6b1f22 100644 --- a/indra/newview/skins/default/xui/es/floater_bumps.xml +++ b/indra/newview/skins/default/xui/es/floater_bumps.xml @@ -1,21 +1,24 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="floater_bumps" title="CHOQUES, EMPUJONES, E IMPACTOS"> - <text name="none_detected"> + <floater.string name="none_detected"> No se han detectado - </text> - <text name="bump"> + </floater.string> + <floater.string name="bump"> [TIME] [FIRST] [LAST] ha chocado con usted - </text> - <text name="llpushobject"> + </floater.string> + <floater.string name="llpushobject"> [TIME] [FIRST] [LAST] le ha empujado con un script - </text> - <text name="selected_object_collide"> + </floater.string> + <floater.string name="selected_object_collide"> [TIME] [FIRST] [LAST] ha hecho que un objeto impacte con usted - </text> - <text name="scripted_object_collide"> + </floater.string> + <floater.string name="scripted_object_collide"> [TIME] [FIRST] [LAST] ha hecho que un objeto con script impacte con usted - </text> - <text name="physical_object_collide"> + </floater.string> + <floater.string name="physical_object_collide"> [TIME] [FIRST] [LAST] ha hecho que un objeto material impacte con usted - </text> + </floater.string> + <floater.string name="timeStr"> + [[hour,datetime,slt]:[min,datetime,slt]] + </floater.string> </floater> diff --git a/indra/newview/skins/default/xui/es/floater_buy_contents.xml b/indra/newview/skins/default/xui/es/floater_buy_contents.xml index c4d269ff39..98604ad5f4 100644 --- a/indra/newview/skins/default/xui/es/floater_buy_contents.xml +++ b/indra/newview/skins/default/xui/es/floater_buy_contents.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> -<floater name="floater_buy_contents" title="COMPRAR EL CONTENIDO"> +<floater name="floater_buy_contents" title="COMPRAR LOS CONTENIDOS"> <text name="contains_text"> [NAME] contiene: </text> diff --git a/indra/newview/skins/default/xui/es/floater_buy_currency.xml b/indra/newview/skins/default/xui/es/floater_buy_currency.xml index 1ecb813dd1..30c4ea965d 100644 --- a/indra/newview/skins/default/xui/es/floater_buy_currency.xml +++ b/indra/newview/skins/default/xui/es/floater_buy_currency.xml @@ -1,71 +1,66 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> -<floater name="buy currency" title="COMPRAR DINERO"> - <text name="info_buying"> - Comprando dinero: - </text> - <text name="info_cannot_buy" left="5" right="-5"> - No puede comprar en este momento: - </text> - <text name="info_need_more" left="5" right="-5"> - Necesita más dinero: - </text> - <text name="error_message"> - Algo no va bien. +<floater name="buy currency" title="COMPRAR L$"> + <floater.string name="buy_currency"> + Comprar [LINDENS] L$ por, aprox., [LOCALAMOUNT] + </floater.string> + <text left="5" name="info_need_more" right="-5"> + Necesitas más L$ </text> - <button label="Ir al sitio web" name="error_web"/> <text name="contacting"> Contactando con el LindeX... </text> - <text name="buy_action_unknown" right="-5"> - Comprar L$ en el sistema LindeX de cambio + <text name="info_buying"> + Comprar L$ </text> - <text name="buy_action"> - [NAME] [PRICE] L$ + <text name="balance_label"> + Tengo + </text> + <text name="balance_amount"> + [AMT] L$ </text> <text name="currency_action" width="50"> - Comprar + Quiero comprar + </text> + <text name="currency_label"> + L$ </text> - <line_editor name="currency_amt" width="65" left_delta="50"> + <line_editor label="L$" left_delta="50" name="currency_amt" width="65"> 1234 </line_editor> - <text name="currency_est" width="138" left_delta="68"> - por, aprox., [LOCALAMOUNT] - </text> - <text name="getting_data"> - Obteniendo los datos... + <text name="buying_label"> + Al precio de </text> - <text name="balance_label"> - Actualmente, tiene + <text left_delta="68" name="currency_est" width="138"> + aprox. [LOCALAMOUNT] </text> - <text name="balance_amount"> - [AMT] L$ - </text> - <text name="buying_label"> - Está comprando + <text name="getting_data"> + Calculando... </text> - <text name="buying_amount"> - [AMT] L$ + <text name="buy_action"> + [NAME] [PRICE] L$ </text> <text name="total_label"> - Su saldo será de + Mi nuevo saldo será </text> <text name="total_amount"> [AMT] L$ </text> <text name="currency_links"> - [http://www.secondlife.com/my/account/payment_method_management.php?lang=es-ES payment method] | [http://www.secondlife.com/my/account/currency.php?lang=es-ES currency] | [http://www.secondlife.com/my/account/exchange_rates.php?lang=es-ES exchange rate] + [http://www.secondlife.com/ método de pago] | [http://www.secondlife.com/ moneda] | [http://www.secondlife.com/my/account/exchange_rates.php tipo de cambio] + </text> + <text name="exchange_rate_note"> + Vuelve a escribir la cantidad para ver el tipo de cambio más reciente. </text> <text name="purchase_warning_repurchase" right="-10"> - Confirmando esta compra sólo compra la moneda. -Tendrá que intentar de nuevo la operación. + Confirmando que con esta compra sólo se compran L$, no el objeto. </text> <text name="purchase_warning_notenough"> - No está comprando dinero suficiente. -Aumente la cantidad a comprar. + No estás comprando suficientes L$. Por favor, aumenta la cantidad. </text> + <button label="Comprar ahora" name="buy_btn"/> <button label="Cancelar" name="cancel_btn"/> - <button label="Comprar" name="buy_btn"/> - <string name="buy_currency"> - Compre [LINDENS] L$ por, aprox., [LOCALAMOUNT] - </string> + <text left="5" name="info_cannot_buy" right="-5"> + No se pudo hacer la compra + </text> + <button label="Ir a la web" name="error_web"/> </floater> diff --git a/indra/newview/skins/default/xui/es/floater_buy_land.xml b/indra/newview/skins/default/xui/es/floater_buy_land.xml index 7ff45fcf79..9e5af72199 100644 --- a/indra/newview/skins/default/xui/es/floater_buy_land.xml +++ b/indra/newview/skins/default/xui/es/floater_buy_land.xml @@ -3,25 +3,25 @@ <text name="region_name_label"> Región: </text> - <text name="region_name_text" left="565"> + <text left="565" name="region_name_text"> (desconocida) </text> <text name="region_type_label"> Tipo: </text> - <text name="region_type_text" left="565"> + <text left="565" name="region_type_text"> (desconocido) </text> <text name="estate_name_label"> Estado: </text> - <text name="estate_name_text" left="565"> + <text left="565" name="estate_name_text"> (desconocido) </text> - <text name="estate_owner_label" width="115" right="565"> + <text name="estate_owner_label" right="565" width="115"> Propietario del estado: </text> - <text name="estate_owner_text" left="565" > + <text left="565" name="estate_owner_text"> (desconocido) </text> <text name="resellable_changeable_label"> @@ -58,8 +58,8 @@ </text> <text name="info_price"> 1500 L$ -(1.1 L$/m²) -incluyendo los objetos +(1.1/m² L$) +se vende con los objetos </text> <text name="info_action"> Al comprar este terreno: @@ -75,16 +75,16 @@ incluyendo los objetos Sólo pueden ser propietarios de terreno los miembros premium. </text> <combo_box name="account_level"> - <combo_box.item name="US$9.95/month,billedmonthly" label="9.95 US$/mes, facturados mensualmente" /> - <combo_box.item name="US$7.50/month,billedquarterly" label="7.50 US$/mes, facturados cuatrimestralmente" /> - <combo_box.item name="US$6.00/month,billedannually" label="6.00 US$/mes, facturados anualmente" /> + <combo_box.item label="9.95 US$/mes, facturados mensualmente" name="US$9.95/month,billedmonthly"/> + <combo_box.item label="7.50 US$/mes, facturados trimestralmente" name="US$7.50/month,billedquarterly"/> + <combo_box.item label="6.00 US$/mes, facturados anualmente" name="US$6.00/month,billedannually"/> </combo_box> <text name="land_use_action"> Aumenta su cuota mensual por uso de terreno a 40 US$/mes. </text> <text name="land_use_reason"> - Usted posee 1309 m² de terreno. -Esta parcela mide 512 m². + Tienes 1309 m² de terreno. +Esta parcela es de 512 m². </text> <text name="purchase_action"> Pagar al residente Joe 4.000 L$ por el terreno @@ -99,12 +99,12 @@ Esta parcela mide 512 m². 1.000 </line_editor> <text name="currency_est"> - por, aprox., [AMOUNT2] US$ + por, aprox., [LOCAL_AMOUNT] </text> <text name="currency_balance"> Tiene 2.100 L$. </text> - <check_box label="Quitar [AMOUNT] m² de la contribución del grupo." name="remove_contribution"/> + <check_box label="Quitar [AMOUNT] m² de las contribuciones de grupo." name="remove_contribution"/> <button label="Comprar" name="buy_btn"/> <button label="Cancelar" name="cancel_btn"/> <string name="can_resell"> @@ -181,22 +181,22 @@ Inténtelo seleccionando un área más pequeña. Su cuenta puede poseer terreno. </string> <string name="land_holdings"> - Usted tiene [BUYER] m² de terreno. + Tienes [BUYER] m² de terreno. </string> <string name="pay_to_for_land"> Pagar por este terreno [AMOUNT] L$ a [SELLER] </string> <string name="buy_for_US"> - Comprar [AMOUNT] L$ por, aprox., [AMOUNT2] US$, + Comprar [AMOUNT] L$ por, aprox., [LOCAL_AMOUNT], </string> <string name="parcel_meters"> - Esta parcela tiene [AMOUNT] m². + Este terreno tiene [AMOUNT] m² </string> <string name="premium_land"> - Este terreno es premium, y se contará como de [AMOUNT] m². + Este terreno es 'premium', y se considerará como de [AMOUNT] m². </string> <string name="discounted_land"> - Este terreno tiene descuento, y se contará como de [AMOUNT] m². + Este terreno es 'discounted', y se considerará como de [AMOUNT] m². </string> <string name="meters_supports_object"> [AMOUNT] m² diff --git a/indra/newview/skins/default/xui/es/floater_buy_object.xml b/indra/newview/skins/default/xui/es/floater_buy_object.xml index 26696bc868..117d29777f 100644 --- a/indra/newview/skins/default/xui/es/floater_buy_object.xml +++ b/indra/newview/skins/default/xui/es/floater_buy_object.xml @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="contents" title="COMPRAR UNA COPIA DEL OBJETO"> <text name="contents_text"> - y sus contenidos: + Contenidos: </text> <text name="buy_text"> ¿Comprarlo por [AMOUNT] L$ a [NAME]? diff --git a/indra/newview/skins/default/xui/es/floater_camera.xml b/indra/newview/skins/default/xui/es/floater_camera.xml index 3aeb4e5771..40c5603706 100644 --- a/indra/newview/skins/default/xui/es/floater_camera.xml +++ b/indra/newview/skins/default/xui/es/floater_camera.xml @@ -10,7 +10,22 @@ Mover la cámara arriba y abajo, izquierda y derecha </floater.string> <panel name="controls"> - <joystick_track name="cam_track_stick" tool_tip="Mover la cámara arriba y abajo, izquierda y derecha"/> - <joystick_zoom name="zoom" tool_tip="Hacer zoom con la cámara en lo enfocado"/> + <joystick_track name="cam_track_stick" tool_tip="Mueve la cámara arriba y abajo, a izquierda y derecha"/> + <panel name="zoom" tool_tip="Hacer zoom con la cámara en lo enfocado"> + <slider_bar name="zoom_slider" tool_tip="Hacer zoom en lo enfocado"/> + </panel> + <joystick_rotate name="cam_rotate_stick" tool_tip="La cámara gira alrededor del punto de vista"/> + <panel name="camera_presets"> + <button name="rear_view" tool_tip="Desde detrás"/> + <button name="group_view" tool_tip="Desde tu hombro"/> + <button name="front_view" tool_tip="De frente"/> + <button name="mouselook_view" tool_tip="Vista subjetiva"/> + </panel> + </panel> + <panel name="buttons"> + <button label="" name="orbit_btn" tool_tip="Cámara orbital"/> + <button label="" name="pan_btn" tool_tip="Cámara panorámica"/> + <button label="" name="avatarview_btn" tool_tip="Posición de tu cámara"/> + <button label="" name="freecamera_btn" tool_tip="Centrar el objeto"/> </panel> </floater> diff --git a/indra/newview/skins/default/xui/es/floater_color_picker.xml b/indra/newview/skins/default/xui/es/floater_color_picker.xml index 4395ee6890..ed168c09d5 100644 --- a/indra/newview/skins/default/xui/es/floater_color_picker.xml +++ b/indra/newview/skins/default/xui/es/floater_color_picker.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> -<floater name="ColorPicker" title="PALETA DE COLORES"> +<floater name="ColorPicker" title="SELECTOR DE COLOR"> <text name="r_val_text"> Rojo: </text> @@ -18,14 +18,13 @@ <text name="l_val_text"> Lumin.: </text> - <check_box label="Aplicar ahora mismo" name="apply_immediate"/> + <check_box label="Aplicarlo ahora" name="apply_immediate"/> <button label="Cancelar" label_selected="Cancelar" name="cancel_btn"/> - <button label="Elegir" label_selected="Elegir" name="select_btn"/> + <button label="OK" label_selected="OK" name="select_btn"/> <text name="Current color:"> Color actual: </text> <text name="(Drag below to save.)"> - (Arrástrelo abajo - para guardarlo) + (arrástralo abajo para guardarlo) </text> </floater> diff --git a/indra/newview/skins/default/xui/es/floater_customize.xml b/indra/newview/skins/default/xui/es/floater_customize.xml index 94452dae6b..672a6fbc8b 100644 --- a/indra/newview/skins/default/xui/es/floater_customize.xml +++ b/indra/newview/skins/default/xui/es/floater_customize.xml @@ -14,8 +14,8 @@ <button label="Torso" label_selected="Torso" name="Torso"/> <button label="Piernas" label_selected="Piernas" name="Legs"/> <radio_group name="sex radio"> - <radio_item name="radio" label="Mujer" /> - <radio_item name="radio2" label="Varón" /> + <radio_item label="Mujer" name="radio"/> + <radio_item label="Varón" name="radio2"/> </radio_group> <text name="title"> [DESC] @@ -43,8 +43,8 @@ avatar. O parta de cero creando una nueva y vistiéndola. Forma: </text> <button label="Crear una forma nueva" label_selected="Crear una forma nueva" name="Create New"/> - <button left="113" label="Guardar" label_selected="Guardar" name="Save"/> - <button left="199" width="102" label="Guardar como..." label_selected="Guardar como..." name="Save As"/> + <button label="Guardar" label_selected="Guardar" left="113" name="Save"/> + <button label="Guardar como..." label_selected="Guardar como..." left="199" name="Save As" width="102"/> </panel> <panel label="Piel" name="Skin"> <button label="Color de piel" label_selected="Color de piel" name="Skin Color" width="115"/> @@ -76,12 +76,12 @@ avatar. O parta de cero creando una nueva y vistiéndola. <text name="Item Action Label" right="107"> Piel: </text> - <texture_picker width="90" label="Tatuaje: cabeza" name="Head Tattoos" tool_tip="Pulse para elegir una imagen"/> - <texture_picker width="90" label="Tatuaje: superior" name="Upper Tattoos" tool_tip="Pulse para elegir una imagen"/> - <texture_picker width="90" label="Tatuaje: inferior" name="Lower Tattoos" tool_tip="Pulse para elegir una imagen"/> + <texture_picker label="Tatuaje: cabeza" name="Head Tattoos" tool_tip="Pulse para elegir una imagen" width="90"/> + <texture_picker label="Tatuaje: superior" name="Upper Tattoos" tool_tip="Pulse para elegir una imagen" width="90"/> + <texture_picker label="Tatuaje: inferior" name="Lower Tattoos" tool_tip="Pulse para elegir una imagen" width="90"/> <button label="Crear una piel nueva" label_selected="Crear una piel nueva" name="Create New"/> - <button left="113" label="Guardar" label_selected="Guardar" name="Save"/> - <button left="199" width="102" label="Guardar como..." label_selected="Guardar como..." name="Save As"/> + <button label="Guardar" label_selected="Guardar" left="113" name="Save"/> + <button label="Guardar como..." label_selected="Guardar como..." left="199" name="Save As" width="102"/> <button label="Restablecer" label_selected="Restablecer" name="Revert"/> </panel> <panel label="Pelo" name="Hair"> @@ -116,8 +116,8 @@ avatar. O parta de cero creando uno nueva y vistiéndolo. </text> <texture_picker label="Textura" name="Texture" tool_tip="Pulse para elegir una imagen"/> <button label="Crear un pelo nuevo" label_selected="Crear un pelo nuevo" name="Create New"/> - <button left="113" label="Guardar" label_selected="Guardar" name="Save"/> - <button left="199" width="102" label="Guardar como..." label_selected="Guardar como..." name="Save As"/> + <button label="Guardar" label_selected="Guardar" left="113" name="Save"/> + <button label="Guardar como..." label_selected="Guardar como..." left="199" name="Save As" width="102"/> <button label="Restablecer" label_selected="Restablecer" name="Revert"/> </panel> <panel label="Ojos" name="Eyes"> @@ -148,18 +148,18 @@ avatar. O parta de cero creando unos nuevos y vistiéndoselos. </text> <texture_picker label="Iris" name="Iris" tool_tip="Pulse para elegir una imagen"/> <button label="Crear unos ojos nuevos" label_selected="Crear unos ojos nuevos" name="Create New"/> - <button left="113" label="Guardar" label_selected="Guardar" name="Save"/> - <button left="199" width="102" label="Guardar como..." label_selected="Guardar como..." name="Save As"/> + <button label="Guardar" label_selected="Guardar" left="113" name="Save"/> + <button label="Guardar como..." label_selected="Guardar como..." left="199" name="Save As" width="102"/> <button label="Restablecer" label_selected="Restablecer" name="Revert"/> </panel> - <panel label="Ropa" name="clothes_placeholder"/> + <placeholder label="Ropa" name="clothes_placeholder"/> <panel label="Camisa" name="Shirt"> <texture_picker label="Tela" name="Fabric" tool_tip="Pulse para elegir una imagen"/> - <color_swatch label="Color/Tinte" name="Color/Tint" tool_tip="Pulse para abrir el selector de color"/> + <color_swatch label="Color/Tinte" name="Color/Tint" tool_tip="Pulsa para abrir el selector de color"/> <button label="Crear una falda nueva" label_selected="Crear una falda nueva" name="Create New"/> <button label="Quitarla" label_selected="Quitarla" name="Take Off"/> - <button left="113" label="Guardar" label_selected="Guardar" name="Save"/> - <button left="199" width="102" label="Guardar como..." label_selected="Guardar como..." name="Save As"/> + <button label="Guardar" label_selected="Guardar" left="113" name="Save"/> + <button label="Guardar como..." label_selected="Guardar como..." left="199" name="Save As" width="102"/> <button label="Restablecer" label_selected="Restablecer" name="Revert"/> <text name="title"> [DESC] @@ -189,11 +189,11 @@ avatar. O parta de cero creando una nueva y vistiéndola. </panel> <panel label="Pantalones" name="Pants"> <texture_picker label="Tela" name="Fabric" tool_tip="Pulse para elegir una imagen"/> - <color_swatch label="Color/Tinte" name="Color/Tint" tool_tip="Pulse para abrir el selector de color"/> + <color_swatch label="Color/Tinte" name="Color/Tint" tool_tip="Pulsa para abrir el selector de color"/> <button label="Crear unos pantalones nuevos" label_selected="Crear unos pantalones nuevos" name="Create New" width="185"/> <button label="Quitarlos" label_selected="Quitarlos" name="Take Off"/> - <button left="113" label="Guardar" label_selected="Guardar" name="Save"/> - <button left="199" width="102" label="Guardar como..." label_selected="Guardar como..." name="Save As"/> + <button label="Guardar" label_selected="Guardar" left="113" name="Save"/> + <button label="Guardar como..." label_selected="Guardar como..." left="199" name="Save As" width="102"/> <button label="Restablecer" label_selected="Restablecer" name="Revert"/> <text name="title"> [DESC] @@ -248,11 +248,11 @@ avatar. O parta de cero creando unos nuevos y vistiéndoselos. Zapatos: </text> <texture_picker label="Tela" name="Fabric" tool_tip="Pulse para elegir una imagen"/> - <color_swatch label="Color/Tinte" name="Color/Tint" tool_tip="Pulse para abrir el selector de color"/> + <color_swatch label="Color/Tinte" name="Color/Tint" tool_tip="Pulsa para abrir el selector de color"/> <button label="Crear unos zapatos nuevos" label_selected="Crear unos zapatos nuevos" name="Create New"/> <button label="Quitarlos" label_selected="Quitarlos" name="Take Off"/> - <button left="113" label="Guardar" label_selected="Guardar" name="Save"/> - <button left="199" width="102" label="Guardar como..." label_selected="Guardar como..." name="Save As"/> + <button label="Guardar" label_selected="Guardar" left="113" name="Save"/> + <button label="Guardar como..." label_selected="Guardar como..." left="199" name="Save As" width="102"/> <button label="Restablecer" label_selected="Restablecer" name="Revert"/> </panel> <panel label="Calcetines" name="Socks"> @@ -282,11 +282,11 @@ avatar. O parta de cero creando unos nuevos y vistiéndoselos. Calcetines: </text> <texture_picker label="Tela" name="Fabric" tool_tip="Pulse para elegir una imagen"/> - <color_swatch label="Color/Tinte" name="Color/Tint" tool_tip="Pulse para abrir el selector de color"/> + <color_swatch label="Color/Tinte" name="Color/Tint" tool_tip="Pulsa para abrir el selector de color"/> <button label="Crear unos calcetines nuevos" label_selected="Crear unos calcetines nuevos" name="Create New" width="185"/> <button label="Quitarlos" label_selected="Quitarlos" name="Take Off"/> - <button left="113" label="Guardar" label_selected="Guardar" name="Save"/> - <button left="199" width="102" label="Guardar como..." label_selected="Guardar como..." name="Save As"/> + <button label="Guardar" label_selected="Guardar" left="113" name="Save"/> + <button label="Guardar como..." label_selected="Guardar como..." left="199" name="Save As" width="102"/> <button label="Restablecer" label_selected="Restablecer" name="Revert"/> </panel> <panel label="Chaqueta" name="Jacket"> @@ -317,11 +317,11 @@ avatar. O parta de cero creando una nueva y vistiéndola. </text> <texture_picker label="Tela superior" name="Upper Fabric" tool_tip="Pulse para elegir una imagen"/> <texture_picker label="Tela inferior" name="Lower Fabric" tool_tip="Pulse para elegir una imagen"/> - <color_swatch label="Color/Tinte" name="Color/Tint" tool_tip="Pulse para abrir el selector de color"/> + <color_swatch label="Color/Tinte" name="Color/Tint" tool_tip="Pulsa para abrir el selector de color"/> <button label="Crear una chaqueta nueva" label_selected="Crear una chaqueta nueva" name="Create New"/> <button label="Quitarla" label_selected="Quitarla" name="Take Off"/> - <button left="113" label="Guardar" label_selected="Guardar" name="Save"/> - <button left="199" width="102" label="Guardar como..." label_selected="Guardar como..." name="Save As"/> + <button label="Guardar" label_selected="Guardar" left="113" name="Save"/> + <button label="Guardar como..." label_selected="Guardar como..." left="199" name="Save As" width="102"/> <button label="Restablecer" label_selected="Restablecer" name="Revert"/> </panel> <panel label="Guantes" name="Gloves"> @@ -351,11 +351,11 @@ avatar. O parta de cero creando unos nuevos y vistiéndoselos. Guantes: </text> <texture_picker label="Tela" name="Fabric" tool_tip="Pulse para elegir una imagen"/> - <color_swatch label="Color/Tinte" name="Color/Tint" tool_tip="Pulse para abrir el selector de color"/> + <color_swatch label="Color/Tinte" name="Color/Tint" tool_tip="Pulsa para abrir el selector de color"/> <button label="Crear unos guantes nuevos" label_selected="Crear unos guantes nuevos" name="Create New"/> <button label="Quitarlos" label_selected="Quitarlos" name="Take Off"/> - <button left="113" label="Guardar" label_selected="Guardar" name="Save"/> - <button left="199" width="102" label="Guardar como..." label_selected="Guardar como..." name="Save As"/> + <button label="Guardar" label_selected="Guardar" left="113" name="Save"/> + <button label="Guardar como..." label_selected="Guardar como..." left="199" name="Save As" width="102"/> <button label="Restablecer" label_selected="Restablecer" name="Revert"/> </panel> <panel label="Camiseta" name="Undershirt"> @@ -385,11 +385,11 @@ avatar. O parta de cero creando una nueva y vistiéndola. Camiseta: </text> <texture_picker label="Tela" name="Fabric" tool_tip="Pulse para elegir una imagen"/> - <color_swatch label="Color/Tinte" name="Color/Tint" tool_tip="Pulse para abrir el selector de color"/> + <color_swatch label="Color/Tinte" name="Color/Tint" tool_tip="Pulsa para abrir el selector de color"/> <button label="Crear una camiseta nueva" label_selected="Crear una camiseta nueva" name="Create New"/> <button label="Quitarla" label_selected="Quitarla" name="Take Off"/> - <button left="113" label="Guardar" label_selected="Guardar" name="Save"/> - <button left="199" width="102" label="Guardar como..." label_selected="Guardar como..." name="Save As"/> + <button label="Guardar" label_selected="Guardar" left="113" name="Save"/> + <button label="Guardar como..." label_selected="Guardar como..." left="199" name="Save As" width="102"/> <button label="Restablecer" label_selected="Restablecer" name="Revert"/> </panel> <panel label="Ropa interior" name="Underpants"> @@ -419,11 +419,11 @@ avatar. O parta de cero creando una nueva y vistiéndola. Ropa interior: </text> <texture_picker label="Tela" name="Fabric" tool_tip="Pulse para elegir una imagen"/> - <color_swatch label="Color/Tinte" name="Color/Tint" tool_tip="Pulse para abrir el selector de color"/> + <color_swatch label="Color/Tinte" name="Color/Tint" tool_tip="Pulsa para abrir el selector de color"/> <button label="Crear una ropa interior nueva" label_selected="Crear una ropa interior nueva" name="Create New" width="185"/> <button label="Quitarla" label_selected="Quitarla" name="Take Off"/> - <button left="113" label="Guardar" label_selected="Guardar" name="Save"/> - <button left="199" width="102" label="Guardar como..." label_selected="Guardar como..." name="Save As"/> + <button label="Guardar" label_selected="Guardar" left="113" name="Save"/> + <button label="Guardar como..." label_selected="Guardar como..." left="199" name="Save As" width="102"/> <button label="Restablecer" label_selected="Restablecer" name="Revert"/> </panel> <panel label="Falda" name="Skirt"> @@ -453,16 +453,88 @@ avatar. O parta de cero creando una nueva y vistiéndola. Falda: </text> <texture_picker label="Tela" name="Fabric" tool_tip="Pulse para elegir una imagen"/> - <color_swatch label="Color/Tinte" name="Color/Tint" tool_tip="Pulse para abrir el selector de color"/> + <color_swatch label="Color/Tinte" name="Color/Tint" tool_tip="Pulsa para abrir el selector de color"/> <button label="Crear una falda nueva" label_selected="Crear una falda nueva" name="Create New"/> <button label="Quitarla" label_selected="Quitarla" name="Take Off"/> - <button left="113" label="Guardar" label_selected="Guardar" name="Save"/> - <button left="199" width="102" label="Guardar como..." label_selected="Guardar como..." name="Save As"/> + <button label="Guardar" label_selected="Guardar" left="113" name="Save"/> + <button label="Guardar como..." label_selected="Guardar como..." left="199" name="Save As" width="102"/> <button label="Restablecer" label_selected="Restablecer" name="Revert"/> </panel> + <panel label="Alfa" name="Alpha"> + <text name="title"> + [DESC] + </text> + <text name="title_no_modify"> + [DESC]: no modificable + </text> + <text name="title_loading"> + [DESC]: cargando... + </text> + <text name="title_not_worn"> + [DESC]: no puesto + </text> + <text name="path"> + Situado en [PATH] + </text> + <text name="not worn instructions"> + Pon una capa Alfa nueva arrastrándola desde tu inventario a tu avatar. +O crea una nueva y vístetela. + </text> + <text name="no modify instructions"> + No tienes permiso para modificar este artículo. + </text> + <text name="Item Action Label"> + Alfa: + </text> + <texture_picker label="Alfa inferior" name="Lower Alpha" tool_tip="Pulsa para elegir una imagen"/> + <texture_picker label="Alfa superior" name="Upper Alpha" tool_tip="Pulsa para elegir una imagen"/> + <texture_picker label="Alfa de la cabeza" name="Head Alpha" tool_tip="Pulsa para elegir una imagen"/> + <texture_picker label="Alfa de los ojos" name="Eye Alpha" tool_tip="Pulsa para elegir una imagen"/> + <texture_picker label="Alfa del pelo" name="Hair Alpha" tool_tip="Pulsa para elegir una imagen"/> + <button label="Crear una capa Alfa nueva" label_selected="Crear una capa Alfa nueva" name="Create New"/> + <button label="Quitarme" label_selected="Quitarme" name="Take Off"/> + <button label="Guardar" label_selected="Guardar" name="Save"/> + <button label="Guardar como..." label_selected="Guardar como..." name="Save As"/> + <button label="Revertir" label_selected="Revertir" name="Revert"/> + </panel> + <panel label="Tatuaje" name="Tattoo"> + <text name="title"> + [DESC] + </text> + <text name="title_no_modify"> + [DESC]: no modificable + </text> + <text name="title_loading"> + [DESC]: cargando... + </text> + <text name="title_not_worn"> + [DESC]: no puesto + </text> + <text name="path"> + Situado en [PATH] + </text> + <text name="not worn instructions"> + Pon un tatuaje nuevo arrastrándolo desde tu inventario a tu avatar. +O crea una nueva y vístetela. + </text> + <text name="no modify instructions"> + No tienes permiso para modificar este artículo. + </text> + <text name="Item Action Label"> + Tatuaje: + </text> + <texture_picker label="Tatuaje de la cabeza" name="Head Tattoo" tool_tip="Pulsa para elegir una imagen"/> + <texture_picker label="Tatuaje superior" name="Upper Tattoo" tool_tip="Pulsa para elegir una imagen"/> + <texture_picker label="Tatuaje inferior" name="Lower Tattoo" tool_tip="Pulsa para elegir una imagen"/> + <button label="Crear un tatuaje nuevo" label_selected="Crear un tatuaje nuevo" name="Create New"/> + <button label="Quitarme" label_selected="Quitarme" name="Take Off"/> + <button label="Guardar" label_selected="Guardar" name="Save"/> + <button label="Guardar como..." label_selected="Guardar como..." name="Save As"/> + <button label="Revertir" label_selected="Revertir" name="Revert"/> + </panel> </tab_container> <scroll_container left="230" name="panel_container"/> + <button label="Hacer un vestuario" label_selected="Hacer un vestuario" name="make_outfit_btn"/> <button label="Cancelar" label_selected="Cancelar" name="Cancel"/> <button label="OK" label_selected="OK" name="Ok"/> - <button label="Hacer un vestuario..." label_selected="Hacer un vestuario..." name="Make Outfit" width="130"/> </floater> diff --git a/indra/newview/skins/default/xui/es/floater_env_settings.xml b/indra/newview/skins/default/xui/es/floater_env_settings.xml index 5d6ba47daf..195690f546 100644 --- a/indra/newview/skins/default/xui/es/floater_env_settings.xml +++ b/indra/newview/skins/default/xui/es/floater_env_settings.xml @@ -1,5 +1,8 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="Environment Editor Floater" title="EDITOR DEL ENTORNO"> + <floater.string name="timeStr"> + [hour12,datetime,utc]:[min,datetime,utc] [ampm,datetime,utc] + </floater.string> <text name="EnvTimeText"> Duración de un día @@ -14,13 +17,12 @@ un día Color del agua </text> - <color_swatch label="" name="EnvWaterColor" tool_tip="Pulse para abrir el selector de color"/> + <color_swatch label="" name="EnvWaterColor" tool_tip="Pulsa para abrir el selector de color"/> <text name="EnvWaterFogText"> Claridad del agua </text> <button bottom="-144" label="Usar el horario del estado" name="EnvUseEstateTimeButton" width="155"/> - <button label="Cielo avanzado" name="EnvAdvancedSkyButton" width="155" left="167" /> - <button label="Agua avanzada" name="EnvAdvancedWaterButton" width="155" left="326"/> - <button label="?" name="EnvSettingsHelpButton"/> + <button label="Cielo avanzado" left="167" name="EnvAdvancedSkyButton" width="155"/> + <button label="Agua avanzada" left="326" name="EnvAdvancedWaterButton" width="155"/> </floater> diff --git a/indra/newview/skins/default/xui/es/floater_gesture.xml b/indra/newview/skins/default/xui/es/floater_gesture.xml index 496881f2d2..1dc1d54295 100644 --- a/indra/newview/skins/default/xui/es/floater_gesture.xml +++ b/indra/newview/skins/default/xui/es/floater_gesture.xml @@ -1,15 +1,25 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> -<floater name="gestures" title="GESTOS DISPONIBLES"> - <text name="help_label"> - Pulse dos veces en un gesto para reproducir las animaciones -y sonidos. - </text> - <scroll_list bottom_delta="-385" height="360" name="gesture_list"> - <column label="Botón" name="trigger"/> - <column label="Tecla" name="shortcut"/> - <column label="Nombre" name="name"/> +<floater label="Lugares" name="gestures" title="GESTOS"> + <floater.string name="loading"> + Cargando... + </floater.string> + <floater.string name="playing"> + (Ejecutándose) + </floater.string> + <floater.string name="copy_name"> + Copia de [COPY_NAME] + </floater.string> + <scroll_list bottom_delta="-385" height="360" name="gesture_list"> + <scroll_list.columns label="Nombre" name="name"/> + <scroll_list.columns label="Chat" name="trigger"/> + <scroll_list.columns label="Tecla" name="shortcut"/> </scroll_list> - <button label="Nuevo" name="new_gesture_btn"/> + <panel label="bottom_panel" name="bottom_panel"> + <menu_button name="gear_btn" tool_tip="Más opciones"/> + <button name="new_gesture_btn" tool_tip="Hacer un gesto nuevo"/> + <button name="activate_btn" tool_tip="Activar/Desactivar el gesto elegido"/> + <button name="del_btn" tool_tip="Borrar este gesto"/> + </panel> <button label="Editar" name="edit_btn"/> <button label="Reproducir" name="play_btn"/> <button label="Parar" name="stop_btn"/> diff --git a/indra/newview/skins/default/xui/es/floater_hardware_settings.xml b/indra/newview/skins/default/xui/es/floater_hardware_settings.xml index 9418252036..f967d697c5 100644 --- a/indra/newview/skins/default/xui/es/floater_hardware_settings.xml +++ b/indra/newview/skins/default/xui/es/floater_hardware_settings.xml @@ -8,21 +8,21 @@ Antialiasing: </text> <combo_box label="Antialiasing" name="fsaa" width="94"> - <combo_box.item name="FSAADisabled" label="Desactivado"/> - <combo_box.item name="2x" label="2x"/> - <combo_box.item name="4x" label="4x"/> - <combo_box.item name="8x" label="8x"/> - <combo_box.item name="16x" label="16x"/> + <combo_box.item label="Desactivado" name="FSAADisabled"/> + <combo_box.item label="2x" name="2x"/> + <combo_box.item label="4x" name="4x"/> + <combo_box.item label="8x" name="8x"/> + <combo_box.item label="16x" name="16x"/> </combo_box> <spinner label="Gamma:" name="gamma"/> <text name="(brightness, lower is brighter)"> - (brillo; menor es más brillante, 0=predeterminado) + (0 = brillo por defecto, más bajo = más brillo) </text> <text name="Enable VBO:"> Activar VBO: </text> - <check_box label="Activar OpenGL Vertex Buffer Objects" name="vbo" tool_tip="En hardware moderno, habilitar esta opción mejora el rendimiento. Pero en hardware antiguo, el habilitarlo hace que, frecuentemente, se obtenga una implementación pobre de VBO, lo que puede provocarle caídas."/> - <slider label_width="150" left="10" width="300" label="Memoria para texturas (MB):" name="GrapicsCardTextureMemory" tool_tip="Cantidad de memoria asignada a las texturas. Por defecto es la memoria de la tarjeta de vídeo. Reducir esta cantidad puede mejorar el rendimiento, pero también puede hacer que las texturas se vean borrosas."/> + <check_box initial_value="true" label="Activar OpenGL Vertex Buffer Objects" name="vbo" tool_tip="En hardware moderno, habilitar esta opción mejora el rendimiento. Pero en hardware antiguo, el habilitarlo hace que, frecuentemente, se obtenga una implementación pobre de VBO, lo que puede provocarle caídas."/> + <slider label="Memoria para texturas (MB):" name="GraphicsCardTextureMemory" tool_tip="Cantidad de memoria asignada a las texturas. Por defecto es la memoria de la tarjeta de vídeo. Reducir esta cantidad puede mejorar el rendimiento, pero también hacer que las texturas se vean borrosas."/> <spinner label="Intensidad de la niebla:" name="fog"/> <button label="OK" label_selected="OK" name="OK"/> </floater> diff --git a/indra/newview/skins/default/xui/es/floater_help_browser.xml b/indra/newview/skins/default/xui/es/floater_help_browser.xml new file mode 100644 index 0000000000..2a26bb8453 --- /dev/null +++ b/indra/newview/skins/default/xui/es/floater_help_browser.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<floater name="floater_help_browser" title="BUSCADOR DE AYUDA"> + <layout_stack name="stack1"> + <layout_panel name="external_controls"> + <button label="Abrir en mi propio navegador" name="open_browser"/> + </layout_panel> + </layout_stack> +</floater> diff --git a/indra/newview/skins/default/xui/es/floater_im.xml b/indra/newview/skins/default/xui/es/floater_im.xml index 3e92003bac..8589718b88 100644 --- a/indra/newview/skins/default/xui/es/floater_im.xml +++ b/indra/newview/skins/default/xui/es/floater_im.xml @@ -10,7 +10,7 @@ Pulse el botón [BUTTON NAME] para aceptar/conectar este chat de voz. </string> <string name="muted_message"> - Ha ignorado a este residente. Al enviarle un mensaje, automáticamente dejará de ignorarle. + Has ignorado a este residente. Enviándole un mensaje, automáticamente dejarás de ignorarle. </string> <string name="generic_request_error"> Error al hacer lo solicitado; por favor, inténtelo más tarde. diff --git a/indra/newview/skins/default/xui/es/floater_im_container.xml b/indra/newview/skins/default/xui/es/floater_im_container.xml new file mode 100644 index 0000000000..617097e9c9 --- /dev/null +++ b/indra/newview/skins/default/xui/es/floater_im_container.xml @@ -0,0 +1,2 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<multi_floater name="floater_im_box" title="Mensajes instantáneos"/> diff --git a/indra/newview/skins/default/xui/es/floater_im_session.xml b/indra/newview/skins/default/xui/es/floater_im_session.xml new file mode 100644 index 0000000000..c7312e609b --- /dev/null +++ b/indra/newview/skins/default/xui/es/floater_im_session.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<floater name="panel_im"> + <layout_stack name="im_panels"> + <layout_panel label="Panel de control de MI" name="panel_im_control_panel"/> + <layout_panel> + <line_editor label="A" name="chat_editor"/> + </layout_panel> + </layout_stack> +</floater> diff --git a/indra/newview/skins/default/xui/es/floater_image_preview.xml b/indra/newview/skins/default/xui/es/floater_image_preview.xml index 6d51a800b7..0ad91265c9 100644 --- a/indra/newview/skins/default/xui/es/floater_image_preview.xml +++ b/indra/newview/skins/default/xui/es/floater_image_preview.xml @@ -10,17 +10,17 @@ Previsualizar la imagen como: </text> - <combo_box label="Tipo de ropa" name="clothing_type_combo" left="100" width="186"> - <combo_box.item name="Image" label="Imagen" /> - <combo_box.item name="Hair" label="Pelo" /> - <combo_box.item name="FemaleHead" label="Cabeza de mujer" /> - <combo_box.item name="FemaleUpperBody" label="Mujer: parte superior del cuerpo" /> - <combo_box.item name="FemaleLowerBody" label="Mujer: parte inferior del cuerpo" /> - <combo_box.item name="MaleHead" label="Cabeza de varón" /> - <combo_box.item name="MaleUpperBody" label="Varón: parte superior del cuerpo" /> - <combo_box.item name="MaleLowerBody" label="Varón: parte inferior del cuerpo" /> - <combo_box.item name="Skirt" label="Falda" /> - <combo_box.item name="SculptedPrim" label="Prim sculpted"/> + <combo_box label="Tipo de ropa" left="100" name="clothing_type_combo" width="186"> + <combo_box.item label="Imagen" name="Image"/> + <combo_box.item label="Pelo" name="Hair"/> + <combo_box.item label="Mujer: cabeza" name="FemaleHead"/> + <combo_box.item label="Mujer: parte superior del cuerpo" name="FemaleUpperBody"/> + <combo_box.item label="Mujer: parte inferior del cuerpo" name="FemaleLowerBody"/> + <combo_box.item label="Varón: cabeza" name="MaleHead"/> + <combo_box.item label="Varón: parte superior del cuerpo" name="MaleUpperBody"/> + <combo_box.item label="Varón: parte inferior del cuerpo" name="MaleLowerBody"/> + <combo_box.item label="Falda" name="Skirt"/> + <combo_box.item label="Prim sculpted" name="SculptedPrim"/> </combo_box> <text name="bad_image_text"> Imposible leer la imagen. diff --git a/indra/newview/skins/default/xui/es/floater_incoming_call.xml b/indra/newview/skins/default/xui/es/floater_incoming_call.xml new file mode 100644 index 0000000000..f499198b31 --- /dev/null +++ b/indra/newview/skins/default/xui/es/floater_incoming_call.xml @@ -0,0 +1,21 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<floater name="incoming call" title="ESTÁ LLAMANDO ALGUIEN DESCONOCIDO"> + <floater.string name="localchat"> + Chat de voz + </floater.string> + <floater.string name="anonymous"> + anónimo + </floater.string> + <floater.string name="VoiceInviteP2P"> + está llamando. + </floater.string> + <floater.string name="VoiceInviteAdHoc"> + ha entrado en un chat de voz en multiconferencia. + </floater.string> + <text name="question"> + ¿Quieres dejar [CURRENT_CHAT] y entrar a este chat de voz? + </text> + <button label="Aceptar" label_selected="Aceptar" name="Accept"/> + <button label="Expulsar" label_selected="Expulsar" name="Reject"/> + <button label="Comenzar un MI" name="Start IM"/> +</floater> diff --git a/indra/newview/skins/default/xui/es/floater_inspect.xml b/indra/newview/skins/default/xui/es/floater_inspect.xml index 3c8b38648f..d95653ddd0 100644 --- a/indra/newview/skins/default/xui/es/floater_inspect.xml +++ b/indra/newview/skins/default/xui/es/floater_inspect.xml @@ -1,11 +1,14 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> -<floater name="inspect" title="EXAMINAR OBJETOS" min_width="450"> +<floater min_width="450" name="inspect" title="EXAMINAR LOS OBJETOS"> + <floater.string name="timeStamp"> + [wkday,datetime,local][day,datetime,local] [mth,datetime,local] [year,datetime,local][hour,datetime,local]:[min,datetime,local]:[second,datetime,local] + </floater.string> <scroll_list name="object_list" tool_tip="Seleccione un objeto de esta lista para realzarlo en el mundo"> - <column label="Nombre del objeto" name="object_name"/> - <column label="Propietario" name="owner_name"/> - <column label="Creador" name="creator_name"/> - <column label="Fecha de creación" name="creation_date"/> + <scroll_list.columns label="Nombre del objeto" name="object_name"/> + <scroll_list.columns label="Propietario" name="owner_name"/> + <scroll_list.columns label="Creador" name="creator_name"/> + <scroll_list.columns label="Fecha de creación" name="creation_date"/> </scroll_list> - <button width="185" label="Ver el perfil del propietario..." label_selected="" name="button owner" tool_tip="Ver el perfil del propietario del objeto realzado"/> - <button width="165" left="205" label="Ver el perfil del creador..." label_selected="" name="button creator" tool_tip="Ver el perfil del creador original del objeto realzado"/> + <button label="Ver el perfil del propietario..." label_selected="" name="button owner" tool_tip="Ver el perfil del propietario del objeto realzado" width="185"/> + <button label="Ver el perfil del creador..." label_selected="" left="205" name="button creator" tool_tip="Ver el perfil del creador original del objeto realzado" width="165"/> </floater> diff --git a/indra/newview/skins/default/xui/es/floater_inventory.xml b/indra/newview/skins/default/xui/es/floater_inventory.xml index 8d16d6089e..c2a1e4e91d 100644 --- a/indra/newview/skins/default/xui/es/floater_inventory.xml +++ b/indra/newview/skins/default/xui/es/floater_inventory.xml @@ -1,47 +1,16 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="Inventory" title="INVENTARIO"> - <search_editor label="Escriba aquí para buscar" name="inventory search editor"/> - <tab_container name="inventory filter tabs"> - <inventory_panel label="Todos los ítems" name="All Items"/> - <inventory_panel label="Ítems recientes" name="Recent Items"/> - </tab_container> - <menu_bar name="Inventory Menu"> - <menu label="Archivo" name="File"> - <menu_item_call label="Abrir" name="Open"/> - <menu_item_call label="Nueva ventana" name="New Window"/> - <menu_item_call label="Ver los filtros" name="Show Filters"/> - <menu_item_call label="Restablecer los filtros" name="Reset Current"/> - <menu_item_call label="Cerrar todas las carpetas" name="Close All Folders"/> - <menu_item_call label="Vaciar la papelera" name="Empty Trash"/> - </menu> - <menu label="Crear" name="Create"> - <menu_item_call label="Carpeta nueva" name="New Folder"/> - <menu_item_call label="Script nuevo" name="New Script"/> - <menu_item_call label="Nota nueva" name="New Note"/> - <menu_item_call label="Gesto nuevo" name="New Gesture"/> - <menu name="New Clothes"> - <menu_item_call label="Falda nueva" name="New Shirt"/> - <menu_item_call label="Pantalones nuevos" name="New Pants"/> - <menu_item_call label="Zapatos nuevos" name="New Shoes"/> - <menu_item_call label="Calcetines nuevos" name="New Socks"/> - <menu_item_call label="Chaqueta nueva" name="New Jacket"/> - <menu_item_call label="Falda nueva" name="New Skirt"/> - <menu_item_call label="Guantes nuevos" name="New Gloves"/> - <menu_item_call label="Camiseta nueva" name="New Undershirt"/> - <menu_item_call label="Ropa interior nueva" name="New Underpants"/> - </menu> - <menu name="New Body Parts"> - <menu_item_call label="Forma nueva" name="New Shape"/> - <menu_item_call label="Piel nueva" name="New Skin"/> - <menu_item_call label="Pelo nuevo" name="New Hair"/> - <menu_item_call label="Ojos nuevos" name="New Eyes"/> - </menu> - </menu> - <menu label="Ordenar" name="Sort"> - <menu_item_check label="Por el nombre" name="By Name"/> - <menu_item_check label="Por la fecha" name="By Date"/> - <menu_item_check label="Las carpetas, siempre por la fecha" name="Folders Always By Name"/> - <menu_item_check label="Las carpetas del sistema, arriba" name="System Folders To Top"/> - </menu> - </menu_bar> + <floater.string name="Title"> + Inventario + </floater.string> + <floater.string name="TitleFetching"> + Inventario (obtenidos [ITEM_COUNT] ítems...) [FILTER] + </floater.string> + <floater.string name="TitleCompleted"> + Inventario ([ITEM_COUNT] ítems) [FILTER] + </floater.string> + <floater.string name="Fetched"> + Obtenido + </floater.string> + <panel label="Panel del inventario" name="Inventory Panel"/> </floater> diff --git a/indra/newview/skins/default/xui/es/floater_inventory_item_properties.xml b/indra/newview/skins/default/xui/es/floater_inventory_item_properties.xml index 7abdfceb94..5746688962 100644 --- a/indra/newview/skins/default/xui/es/floater_inventory_item_properties.xml +++ b/indra/newview/skins/default/xui/es/floater_inventory_item_properties.xml @@ -1,5 +1,20 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="item properties" title="PROPIEDADES DEL ÍTEM DEL INVENTARIO"> + <floater.string name="unknown"> + (desconocido) + </floater.string> + <floater.string name="public"> + (público) + </floater.string> + <floater.string name="you_can"> + Usted puede: + </floater.string> + <floater.string name="owner_can"> + El propietario puede: + </floater.string> + <floater.string name="acquiredDate"> + [wkday,datetime,local][day,datetime,local] [mth,datetime,local] [year,datetime,local][hour,datetime,local]:[min,datetime,local]:[second,datetime,local] + </floater.string> <text name="LabelItemNameTitle"> Nombre: </text> @@ -27,55 +42,32 @@ May Mié 24 12:50:46 2006 </text> <text name="OwnerLabel"> - Usted puede: - </text> - <check_box label="Modificarlo" name="CheckOwnerModify"/> - <check_box left_delta="88" label="Copiarlo" name="CheckOwnerCopy"/> - <check_box label="Venderlo/darlo" name="CheckOwnerTransfer"/> - <text name="BaseMaskDebug"> - B: - </text> - <text name="OwnerMaskDebug"> - O: + Tú: </text> - <text name="GroupMaskDebug"> - G: + <check_box label="Editar" name="CheckOwnerModify"/> + <check_box label="Copiarlo" left_delta="88" name="CheckOwnerCopy"/> + <check_box label="Revender" name="CheckOwnerTransfer"/> + <text name="AnyoneLabel"> + Cualquiera: </text> - <text name="EveryoneMaskDebug"> - E: + <check_box label="Copiar" name="CheckEveryoneCopy"/> + <text name="GroupLabel"> + Grupo: </text> - <text name="NextMaskDebug"> - N: - </text> - <check_box label="Compartir con el grupo" name="CheckShareWithGroup"/> - <check_box label="Permitir a cualquiera que lo copie" name="CheckEveryoneCopy"/> + <check_box label="Compartir" name="CheckShareWithGroup"/> <text name="NextOwnerLabel" width="230"> - El próximo propietario puede: - </text> - <check_box label="Modificarlo" name="CheckNextOwnerModify"/> - <check_box left_delta="88" label="Copiarlo" name="CheckNextOwnerCopy"/> - <check_box label="Revenderlo/darlo" name="CheckNextOwnerTransfer"/> - <text name="SaleLabel"> - Marcar ítem como: + Próximo propietario: </text> + <check_box label="Editar" name="CheckNextOwnerModify"/> + <check_box label="Copiarlo" left_delta="88" name="CheckNextOwnerCopy"/> + <check_box label="Revender" name="CheckNextOwnerTransfer"/> <check_box label="En venta" name="CheckPurchase"/> - <radio_group name="RadioSaleType" left_delta="88" > - <radio_item name="radio" label="Original" /> - <radio_item name="radio2" label="Copia" /> - </radio_group> - <text name="TextPrice"> - Precio: L$ + <combo_box name="combobox sale copy"> + <combo_box.item label="Copia" name="Copy"/> + <combo_box.item label="Original" name="Original"/> + </combo_box> + <spinner label="Precio:" name="Edit Cost"/> + <text name="CurrencySymbol"> + L$ </text> - <string name="unknown"> - (desconocido) - </string> - <string name="public"> - (público) - </string> - <string name="you_can"> - Usted puede: - </string> - <string name="owner_can"> - El propietario puede: - </string> </floater> diff --git a/indra/newview/skins/default/xui/es/floater_joystick.xml b/indra/newview/skins/default/xui/es/floater_joystick.xml index 75c53dd646..283a46b60b 100644 --- a/indra/newview/skins/default/xui/es/floater_joystick.xml +++ b/indra/newview/skins/default/xui/es/floater_joystick.xml @@ -1,23 +1,23 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="Joystick" title="CONFIGURACIÓN DEL JOYSTICK"> - <check_box name="enable_joystick" label="Activar el joystick:"/> + <check_box label="Activar el joystick:" name="enable_joystick"/> <text left="140" name="joystick_type" width="360"/> - <spinner label="Mapping: eje X" name="JoystickAxis1" label_width="118" width="161"/> - <spinner label="Mapping: eje Y" name="JoystickAxis2" label_width="105" width="148"/> - <spinner label="Mapping: eje Z" name="JoystickAxis0" label_width="95" width="138"/> - <spinner label="Mapping: arriba/abajo" name="JoystickAxis4" label_width="118" width="161"/> - <spinner label="Mapping: izq./der." name="JoystickAxis5" label_width="105" width="148"/> - <spinner label="Mapping: giro" name="JoystickAxis3" label_width="95" width="138"/> - <spinner label="Mapping: zoom" name="JoystickAxis6" label_width="118" width="161"/> + <spinner label="Mapping: eje X" label_width="118" name="JoystickAxis1" width="161"/> + <spinner label="Mapping: eje Y" label_width="105" name="JoystickAxis2" width="148"/> + <spinner label="Mapping: eje Z" label_width="95" name="JoystickAxis0" width="138"/> + <spinner label="Mapping: arriba/abajo" label_width="118" name="JoystickAxis4" width="161"/> + <spinner label="Mapping: izq./der." label_width="105" name="JoystickAxis5" width="148"/> + <spinner label="Mapping: giro" label_width="95" name="JoystickAxis3" width="138"/> + <spinner label="Mapping: zoom" label_width="118" name="JoystickAxis6" width="161"/> <check_box label="Zoom directo" name="ZoomDirect"/> <check_box label="Cursor 3D" name="Cursor3D"/> <check_box label="Nivel automático" name="AutoLeveling"/> <text name="Control Modes:"> Modos de control: </text> - <check_box name="JoystickAvatarEnabled" label="Avatar"/> - <check_box name="JoystickBuildEnabled" left="192" label="Construir"/> - <check_box name="JoystickFlycamEnabled" label="Flycam"/> + <check_box label="Avatar" name="JoystickAvatarEnabled"/> + <check_box label="Construir" left="192" name="JoystickBuildEnabled"/> + <check_box label="Flycam" name="JoystickFlycamEnabled"/> <text name="XScale"> Escala: X </text> @@ -27,7 +27,7 @@ <text name="ZScale"> Escala: Z </text> - <text name="PitchScale" left="3" width="115"> + <text left="3" name="PitchScale" width="115"> Escala: arriba/abajo </text> <text name="YawScale"> @@ -45,10 +45,10 @@ <text name="ZDeadZone"> Zona muerta Z </text> - <text name="PitchDeadZone" left="3" width="115"> + <text left="3" name="PitchDeadZone" width="115"> Zona muerta arri./aba. </text> - <text name="YawDeadZone" left="3" width="115"> + <text left="3" name="YawDeadZone" width="115"> Zona muerta izq./der. </text> <text name="RollDeadZone"> @@ -63,9 +63,9 @@ <text name="ZoomDeadZone"> Zona muerta zoom </text> - <button label="Predeterminados del SpaceNavigator" name="SpaceNavigatorDefaults" font="SansSerifSmall" left="330" width="210"/> - <button label="OK" label_selected="OK" name="ok_btn" left="330"/> - <button label="Cancelar" label_selected="Cancelar" name="cancel_btn" left_delta="120"/> + <button font="SansSerifSmall" label="Predeterminados del SpaceNavigator" left="330" name="SpaceNavigatorDefaults" width="210"/> + <button label="OK" label_selected="OK" left="330" name="ok_btn"/> + <button label="Cancelar" label_selected="Cancelar" left_delta="120" name="cancel_btn"/> <stat_view label="Monitor del joystick" name="axis_view"> <stat_bar label="Eje 0" name="axis0"/> <stat_bar label="Eje 1" name="axis1"/> diff --git a/indra/newview/skins/default/xui/es/floater_lagmeter.xml b/indra/newview/skins/default/xui/es/floater_lagmeter.xml index 54c4ce8c6a..227689a194 100644 --- a/indra/newview/skins/default/xui/es/floater_lagmeter.xml +++ b/indra/newview/skins/default/xui/es/floater_lagmeter.xml @@ -1,155 +1,154 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="floater_lagmeter" title="MEDIDOR DEL LAG"> - <button label="" label_selected="" name="client_lagmeter" tool_tip="Estado del lag del cliente"/> - <text name="client"> - Cliente: - </text> - <text name="client_text" font="SansSerifSmall"> - Normal - </text> - <text left="30" name="client_lag_cause" right="-10" /> - <button label="" label_selected="" name="network_lagmeter" tool_tip="Estado del lag de la red"/> - <text name="network"> - Red: - </text> - <text name="network_text" font="SansSerifSmall"> - Normal - </text> - <text left="30" name="network_lag_cause" right="-10" /> - <button label="" label_selected="" name="server_lagmeter" tool_tip="Estado del lag del servidor"/> - <text name="server"> - Servidor: - </text> - <text name="server_text" font="SansSerifSmall"> - Normal - </text> - <text left="30" name="server_lag_cause" right="-32" /> - <button label="?" name="server_help"/> - <button label=">>" name="minimize"/> - <string name="max_title_msg"> + <floater.string name="max_title_msg"> Medidor del lag - </string> - <string name="max_width_px"> + </floater.string> + <floater.string name="max_width_px"> 360 - </string> - <string name="min_title_msg"> + </floater.string> + <floater.string name="min_title_msg"> Lag - </string> - <string name="min_width_px"> + </floater.string> + <floater.string name="min_width_px"> 90 - </string> - <string name="client_text_msg"> + </floater.string> + <floater.string name="client_text_msg"> Cliente - </string> - <string name="client_frame_rate_critical_fps"> + </floater.string> + <floater.string name="client_frame_rate_critical_fps"> 10 - </string> - <string name="client_frame_rate_warning_fps"> + </floater.string> + <floater.string name="client_frame_rate_warning_fps"> 15 - </string> - <string name="client_frame_time_window_bg_msg"> + </floater.string> + <floater.string name="client_frame_time_window_bg_msg"> Normal, ventana en segundo plano - </string> - <string name="client_frame_time_critical_msg"> + </floater.string> + <floater.string name="client_frame_time_critical_msg"> Frames del cliente valorados por debajo de [CLIENT_FRAME_RATE_CRITICAL] - </string> - <string name="client_frame_time_warning_msg"> + </floater.string> + <floater.string name="client_frame_time_warning_msg"> Frames del cliente valorados entre [CLIENT_FRAME_RATE_CRITICAL] y [CLIENT_FRAME_RATE_WARNING] - </string> - <string name="client_frame_time_normal_msg"> + </floater.string> + <floater.string name="client_frame_time_normal_msg"> Normal - </string> - <string name="client_draw_distance_cause_msg"> + </floater.string> + <floater.string name="client_draw_distance_cause_msg"> Posible causa: distancia de dibujo fijada muy alta - </string> - <string name="client_texture_loading_cause_msg"> + </floater.string> + <floater.string name="client_texture_loading_cause_msg"> Posible causa: imágenes cargándose - </string> - <string name="client_texture_memory_cause_msg"> + </floater.string> + <floater.string name="client_texture_memory_cause_msg"> Posible causa: demasiadas imágenes en la memoria - </string> - <string name="client_complex_objects_cause_msg"> + </floater.string> + <floater.string name="client_complex_objects_cause_msg"> Posible causa: demasiados objetos complejos en la escena - </string> - <string name="network_text_msg"> + </floater.string> + <floater.string name="network_text_msg"> Red - </string> - <string name="network_packet_loss_critical_pct"> + </floater.string> + <floater.string name="network_packet_loss_critical_pct"> 10 - </string> - <string name="network_packet_loss_warning_pct"> + </floater.string> + <floater.string name="network_packet_loss_warning_pct"> 5 - </string> - <string name="network_packet_loss_critical_msg"> + </floater.string> + <floater.string name="network_packet_loss_critical_msg"> La conexión deja caer más del [NETWORK_PACKET_LOSS_CRITICAL]% de los paquetes - </string> - <string name="network_packet_loss_warning_msg"> + </floater.string> + <floater.string name="network_packet_loss_warning_msg"> La conexión deja caer [NETWORK_PACKET_LOSS_WARNING]%-[NETWORK_PACKET_LOSS_CRITICAL]% de los paquetes - </string> - <string name="network_performance_normal_msg"> + </floater.string> + <floater.string name="network_performance_normal_msg"> Normal - </string> - <string name="network_ping_critical_ms"> + </floater.string> + <floater.string name="network_ping_critical_ms"> 600 - </string> - <string name="network_ping_warning_ms"> + </floater.string> + <floater.string name="network_ping_warning_ms"> 300 - </string> - <string name="network_ping_critical_msg"> + </floater.string> + <floater.string name="network_ping_critical_msg"> El tiempo de conexión -ping- supera los [NETWORK_PING_CRITICAL] ms - </string> - <string name="network_ping_warning_msg"> + </floater.string> + <floater.string name="network_ping_warning_msg"> El tiempo de conexión -ping- es de [NETWORK_PING_WARNING]-[NETWORK_PING_CRITICAL] ms - </string> - <string name="network_packet_loss_cause_msg"> + </floater.string> + <floater.string name="network_packet_loss_cause_msg"> Quizá una mala conexión o un ancho de banda fijado demasiado alto. - </string> - <string name="network_ping_cause_msg"> + </floater.string> + <floater.string name="network_ping_cause_msg"> Quizá una mala conexión o una aplicación de archivos compartidos. - </string> - <string name="server_text_msg"> + </floater.string> + <floater.string name="server_text_msg"> Servidor - </string> - <string name="server_frame_rate_critical_fps"> + </floater.string> + <floater.string name="server_frame_rate_critical_fps"> 20 - </string> - <string name="server_frame_rate_warning_fps"> + </floater.string> + <floater.string name="server_frame_rate_warning_fps"> 30 - </string> - <string name="server_single_process_max_time_ms"> + </floater.string> + <floater.string name="server_single_process_max_time_ms"> 20 - </string> - <string name="server_frame_time_critical_msg"> + </floater.string> + <floater.string name="server_frame_time_critical_msg"> Frecuencia (framerate) por debajo de [SERVER_FRAME_RATE_CRITICAL] - </string> - <string name="server_frame_time_warning_msg"> + </floater.string> + <floater.string name="server_frame_time_warning_msg"> Frecuencia (framerate) entre [SERVER_FRAME_RATE_CRITICAL] y [SERVER_FRAME_RATE_WARNING] - </string> - <string name="server_frame_time_normal_msg"> + </floater.string> + <floater.string name="server_frame_time_normal_msg"> Normal - </string> - <string name="server_physics_cause_msg"> + </floater.string> + <floater.string name="server_physics_cause_msg"> Posible causa: demasiados objetos físicos - </string> - <string name="server_scripts_cause_msg"> + </floater.string> + <floater.string name="server_scripts_cause_msg"> Posible causa: demasiados objetos con script - </string> - <string name="server_net_cause_msg"> + </floater.string> + <floater.string name="server_net_cause_msg"> Posible causa: demasiado tráfico en la red - </string> - <string name="server_agent_cause_msg"> + </floater.string> + <floater.string name="server_agent_cause_msg"> Posible causa: demasiada gente moviéndose en la región - </string> - <string name="server_images_cause_msg"> + </floater.string> + <floater.string name="server_images_cause_msg"> Posible causa: demasiados cálculos de imáganes - </string> - <string name="server_generic_cause_msg"> + </floater.string> + <floater.string name="server_generic_cause_msg"> Posible causa: carga del simulador muy pesada - </string> - <string name="smaller_label"> + </floater.string> + <floater.string name="smaller_label"> >> - </string> - <string name="bigger_label"> + </floater.string> + <floater.string name="bigger_label"> << - </string> + </floater.string> + <button label="" label_selected="" name="client_lagmeter" tool_tip="Estado del lag del cliente"/> + <text name="client"> + Cliente + </text> + <text font="SansSerifSmall" name="client_text"> + Normal + </text> + <text left="30" name="client_lag_cause" right="-10"/> + <button label="" label_selected="" name="network_lagmeter" tool_tip="Estado del lag de la red"/> + <text name="network"> + Red + </text> + <text font="SansSerifSmall" name="network_text"> + Normal + </text> + <text left="30" name="network_lag_cause" right="-10"/> + <button label="" label_selected="" name="server_lagmeter" tool_tip="Estado del lag del servidor"/> + <text name="server"> + Servidor + </text> + <text font="SansSerifSmall" name="server_text"> + Normal + </text> + <text left="30" name="server_lag_cause" right="-32"/> + <button label=">>" name="minimize" tool_tip="Cambia el tamaño de la ventana"/> </floater> diff --git a/indra/newview/skins/default/xui/es/floater_land_holdings.xml b/indra/newview/skins/default/xui/es/floater_land_holdings.xml index bcdebf4588..36a02b7300 100644 --- a/indra/newview/skins/default/xui/es/floater_land_holdings.xml +++ b/indra/newview/skins/default/xui/es/floater_land_holdings.xml @@ -1,14 +1,14 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="land holdings floater" title="MI TERRENO"> <scroll_list name="parcel list"> - <column label="Nombre de la parcela" name="name"/> + <column label="Parcela" name="name"/> <column label="Región" name="location"/> <column label="Tipo" name="type"/> <column label="Superficie" name="area"/> <column label="" name="hidden"/> </scroll_list> <button label="Teleportar" label_selected="Teleportar" name="Teleport" tool_tip="Teleportar al centro de este terreno."/> - <button width="130" label="Mostrar en el mapa" label_selected="Mostrar en el mapa" name="Show on Map" tool_tip="Mostrar este terreno en el mapa del mundo."/> + <button label="Mapa" label_selected="Mapa" name="Show on Map" tool_tip="Mostrar este terreno en el mapa del mundo" width="130"/> <text name="contrib_label"> Contribuciones a sus grupos: </text> diff --git a/indra/newview/skins/default/xui/es/floater_live_lsleditor.xml b/indra/newview/skins/default/xui/es/floater_live_lsleditor.xml index 02be809319..a1ec0eba4d 100644 --- a/indra/newview/skins/default/xui/es/floater_live_lsleditor.xml +++ b/indra/newview/skins/default/xui/es/floater_live_lsleditor.xml @@ -1,12 +1,15 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="script ed float" title="SCRIPT: SCRIPT NUEVO"> - <button label="Reiniciar" label_selected="Reiniciar" name="Reset"/> - <check_box label="Ejecutándose" name="running" left="4"/> - <check_box label="Mono" name="mono" left="106"/> - <string name="not_allowed"> - No está autorizado para ver este script. - </string> - <string name="script_running"> + <floater.string name="not_allowed"> + No puedes ver ni editar este script. Ha sido configurado como "no copiable". Necesitas todos los permisos para ver o editar un script que está dentro de un objeto. + </floater.string> + <floater.string name="script_running"> Ejecutándose - </string> + </floater.string> + <floater.string name="Title"> + Script: [NAME] + </floater.string> + <button label="Reiniciar" label_selected="Reiniciar" name="Reset"/> + <check_box initial_value="true" label="Ejecutándose" left="4" name="running"/> + <check_box initial_value="true" label="Mono" left="106" name="mono"/> </floater> diff --git a/indra/newview/skins/default/xui/es/floater_lsl_guide.xml b/indra/newview/skins/default/xui/es/floater_lsl_guide.xml index 0cde2fe5bc..d4a6e52f9f 100644 --- a/indra/newview/skins/default/xui/es/floater_lsl_guide.xml +++ b/indra/newview/skins/default/xui/es/floater_lsl_guide.xml @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="script ed float" title="WIKI DE LSL"> <check_box label="Seguir al cursor" name="lock_check"/> - <combo_box label="Bloquear" name="history_combo" left_delta="120" width="70"/> - <button label="Atrás" name="back_btn" left_delta="75"/> + <combo_box label="Bloquear" left_delta="120" name="history_combo" width="70"/> + <button label="Atrás" left_delta="75" name="back_btn"/> <button label="Adelante" name="fwd_btn"/> </floater> diff --git a/indra/newview/skins/default/xui/es/floater_media_settings.xml b/indra/newview/skins/default/xui/es/floater_media_settings.xml new file mode 100644 index 0000000000..3f7cef5785 --- /dev/null +++ b/indra/newview/skins/default/xui/es/floater_media_settings.xml @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<floater name="media_settings" title="CONFIGURACIÓN DE LOS MEDIA"> + <button label="OK" label_selected="OK" name="OK"/> + <button label="Cancelar" label_selected="Cancelar" name="Cancel"/> + <button label="Aplicar" label_selected="Aplicar" name="Apply"/> +</floater> diff --git a/indra/newview/skins/default/xui/es/floater_mem_leaking.xml b/indra/newview/skins/default/xui/es/floater_mem_leaking.xml index 6d5e987409..da8ba780bc 100644 --- a/indra/newview/skins/default/xui/es/floater_mem_leaking.xml +++ b/indra/newview/skins/default/xui/es/floater_mem_leaking.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> -<floater name="MemLeak" title="PRUEBA DE LA FUGA DE MEMORIA"> +<floater name="MemLeak" title="SIMULAR UNA PÉRDIDA DE MEMORIA"> <spinner label="Velocidad de la fuga (bites por fotograma):" name="leak_speed"/> <spinner label="Fuga de memoria máx. (MB):" name="max_leak"/> <text name="total_leaked_label"> diff --git a/indra/newview/skins/default/xui/es/floater_moveview.xml b/indra/newview/skins/default/xui/es/floater_moveview.xml index a61cebbf80..00a7a3fd6b 100644 --- a/indra/newview/skins/default/xui/es/floater_moveview.xml +++ b/indra/newview/skins/default/xui/es/floater_moveview.xml @@ -1,13 +1,35 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="move_floater"> -<panel name="panel_actions"> - <button label="" label_selected="" name="turn left btn" tool_tip="Girar a la izquierda"/> - <button label="" label_selected="" name="turn right btn" tool_tip="Girar a la derecha"/> - <button label="" label_selected="" name="move up btn" tool_tip="Saltar o ascender"/> - <button label="" label_selected="" name="move down btn" tool_tip="Agacharse o descender"/> - <joystick_slide name="slide left btn" tool_tip="Ir hacia la izquierda"/> - <joystick_slide name="slide right btn" tool_tip="Ir hacia la derecha"/> - <joystick_turn name="forward btn" tool_tip="Ir hacia adelante"/> - <joystick_turn name="backward btn" tool_tip="Ir hacia atrás"/> -</panel> + <string name="walk_forward_tooltip"> + Caminar hacia adelante (cursor arriba o W) + </string> + <string name="walk_back_tooltip"> + Caminar de espaldas (cursor abajo o S) + </string> + <string name="run_forward_tooltip"> + Correr hacia adelante (cursor arriba o W) + </string> + <string name="run_back_tooltip"> + Correr de espaldas (cursor abajo o S) + </string> + <string name="fly_forward_tooltip"> + Volar hacia adelante (cursor arriba o W) + </string> + <string name="fly_back_tooltip"> + Volar hacia atrás (cursor abajo o S) + </string> + <panel name="panel_actions"> + <button label="" label_selected="" name="turn left btn" tool_tip="Girar a la izq. (cursor izq. o A)"/> + <button label="" label_selected="" name="turn right btn" tool_tip="Girar a la der. (cursor der. o D)"/> + <button label="" label_selected="" name="move up btn" tool_tip="Volar subiendo, pulsa "E""/> + <button label="" label_selected="" name="move down btn" tool_tip="Volar bajando, pulsa "C""/> + <joystick_turn name="forward btn" tool_tip="Caminar hacia adelante (cursor arriba o W)"/> + <joystick_turn name="backward btn" tool_tip="Caminar de espaldas (cursor abajo o S)"/> + </panel> + <panel name="panel_modes"> + <button label="" name="mode_walk_btn" tool_tip="Modo de caminar"/> + <button label="" name="mode_run_btn" tool_tip="Modo de correr"/> + <button label="" name="mode_fly_btn" tool_tip="Modo de volar"/> + <button label="Dejar de volar" name="stop_fly_btn" tool_tip="Dejar de volar"/> + </panel> </floater> diff --git a/indra/newview/skins/default/xui/es/floater_mute_object.xml b/indra/newview/skins/default/xui/es/floater_mute_object.xml index 390333cd1d..4cd16a59ed 100644 --- a/indra/newview/skins/default/xui/es/floater_mute_object.xml +++ b/indra/newview/skins/default/xui/es/floater_mute_object.xml @@ -1,13 +1,14 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> -<floater name="mute by name" title="IGNORAR UN OBJETO SEGÚN SU NOMBRE"> - <text name="message" bottom_delta="-40"> - Ignorar según el nombre sólo afecta al chat y los MI del -objeto, no a sus sonidos. -Debe escribir exactamente el nombre del objeto. +<floater name="mute by name" title="IGNORAR OBJETOS SEGÚN SU NOMBRE"> + <text bottom_delta="-40" name="message"> + Ignorar un objeto: </text> - <line_editor name="object_name" bottom_delta="-58"> + <line_editor bottom_delta="-58" name="object_name"> Nombre del objeto </line_editor> + <text name="note"> + * Sólo se ignoran los textos del objeto, no sus sonidos + </text> <button label="OK" name="OK"/> <button label="Cancelar" name="Cancel"/> </floater> diff --git a/indra/newview/skins/default/xui/es/floater_nearby_chat.xml b/indra/newview/skins/default/xui/es/floater_nearby_chat.xml new file mode 100644 index 0000000000..d30a39f725 --- /dev/null +++ b/indra/newview/skins/default/xui/es/floater_nearby_chat.xml @@ -0,0 +1,2 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<floater name="nearby_chat" title="CHAT"/> diff --git a/indra/newview/skins/default/xui/es/floater_openobject.xml b/indra/newview/skins/default/xui/es/floater_openobject.xml index 89c79e8833..b8b688df60 100644 --- a/indra/newview/skins/default/xui/es/floater_openobject.xml +++ b/indra/newview/skins/default/xui/es/floater_openobject.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> -<floater name="objectcontents" title="CONTENIDO DEL OBJETO"> +<floater name="objectcontents" title="CONTENIDOS DEL OBJETO"> <text name="object_name"> [DESC]: </text> diff --git a/indra/newview/skins/default/xui/es/floater_outgoing_call.xml b/indra/newview/skins/default/xui/es/floater_outgoing_call.xml new file mode 100644 index 0000000000..51ff71dd17 --- /dev/null +++ b/indra/newview/skins/default/xui/es/floater_outgoing_call.xml @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<floater name="outgoing call" title="LLAMANDO"> + <floater.string name="localchat"> + Chat de voz + </floater.string> + <floater.string name="anonymous"> + anónimo + </floater.string> + <floater.string name="VoiceInviteP2P"> + está llamando. + </floater.string> + <floater.string name="VoiceInviteAdHoc"> + ha entrado en un chat de voz en multiconferencia. + </floater.string> + <text name="connecting"> + Conectando con [CALLEE_NAME] + </text> + <text name="calling"> + Llamando a [CALLEE_NAME] + </text> + <text name="noanswer"> + Sin respuesta. Vuelve a intentarlo más tarde. + </text> + <text name="leaving"> + Saliendo de [CURRENT_CHAT]. + </text> + <button label="Cancelar" label_selected="Cancelar" name="Cancel"/> +</floater> diff --git a/indra/newview/skins/default/xui/es/floater_pay.xml b/indra/newview/skins/default/xui/es/floater_pay.xml index 64156d94e3..d4a4e81310 100644 --- a/indra/newview/skins/default/xui/es/floater_pay.xml +++ b/indra/newview/skins/default/xui/es/floater_pay.xml @@ -1,22 +1,26 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="Give Money" title=""> + <string name="payee_group"> + Pagar al grupo + </string> + <string name="payee_resident"> + Pagar al residente + </string> + <text left="5" name="payee_label" width="105"> + Pagar: + </text> + <icon name="icon_person" tool_tip="Persona"/> + <text left="115" name="payee_name"> + [FIRST] [LAST] + </text> <button label="1 L$" label_selected="1 L$" name="fastpay 1"/> <button label="5 L$" label_selected="5 L$" name="fastpay 5"/> <button label="10 L$" label_selected="10 L$" name="fastpay 10"/> <button label="20 L$" label_selected="20 L$" name="fastpay 20"/> - <button label="Pagar" label_selected="Pagar" name="pay btn"/> - <button label="Cancelar" label_selected="Cancelar" name="cancel btn"/> - <text name="payee_label" left="5" width="105"> - Pagar al residente: - </text> - <text name="payee_name" left="115"> - [FIRST] [LAST] - </text> - <text name="fastpay text" width="100" halign="left"> - Pago rápido: - </text> - <text name="amount text" left="4" > - Cantidad: + <text left="4" name="amount text"> + O elige cuánto: </text> <line_editor left="60" name="amount" width="55"/> + <button label="Pagar" label_selected="Pagar" name="pay btn"/> + <button label="Cancelar" label_selected="Cancelar" name="cancel btn"/> </floater> diff --git a/indra/newview/skins/default/xui/es/floater_pay_object.xml b/indra/newview/skins/default/xui/es/floater_pay_object.xml index b5eca53bfa..2af8c8cc13 100644 --- a/indra/newview/skins/default/xui/es/floater_pay_object.xml +++ b/indra/newview/skins/default/xui/es/floater_pay_object.xml @@ -1,30 +1,29 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="Give Money" title=""> - <text name="payee_group" left="5" width="110"> - Pagar al grupo: - </text> - <text name="payee_resident" left="5" width="110"> - Pagar al residente: - </text> - <text name="payee_name" left="120" width="180"> + <string left="5" name="payee_group" width="110"> + Pagar al grupo + </string> + <string left="5" name="payee_resident" width="110"> + Pagar al residente + </string> + <icon name="icon_person" tool_tip="Persona"/> + <text left="120" name="payee_name" width="180"> [FIRST] [LAST] </text> - <text name="object_name_label" left="5" width="110"> + <text left="5" name="object_name_label" width="110"> A través del objeto: </text> - <text name="object_name_text" left="120" width="180"> + <icon name="icon_object" tool_tip="Objetos"/> + <text left="120" name="object_name_text" width="180"> ... </text> - <text name="fastpay text"> - Pago rápido: - </text> - <text name="amount text"> - Cantidad: - </text> <button label="1 L$" label_selected="1 L$" name="fastpay 1"/> <button label="5 L$" label_selected="5 L$" name="fastpay 5"/> <button label="10 L$" label_selected="10 L$" name="fastpay 10"/> <button label="20 L$" label_selected="20 L$" name="fastpay 20"/> + <text name="amount text"> + O elige cuánto: + </text> <button label="Pagar" label_selected="Pagar" name="pay btn"/> <button label="Cancelar" label_selected="Cancelar" name="cancel btn"/> </floater> diff --git a/indra/newview/skins/default/xui/es/floater_perm_prefs.xml b/indra/newview/skins/default/xui/es/floater_perm_prefs.xml index 7d3c8e62f3..93e2088aba 100644 --- a/indra/newview/skins/default/xui/es/floater_perm_prefs.xml +++ b/indra/newview/skins/default/xui/es/floater_perm_prefs.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> -<floater name="perm prefs" title="PERMISOS DE SUBIDA POR DEFECTO"> +<floater name="perm prefs" title="PERMISOS POR DEFECTO DE SUBIDA"> <panel label="Permisos" name="permissions"> <button label="?" label_selected="?" name="help"/> <check_box label="Compartir con el grupo" name="share_with_group"/> diff --git a/indra/newview/skins/default/xui/es/floater_postcard.xml b/indra/newview/skins/default/xui/es/floater_postcard.xml index ace3204cc7..df94486c0e 100644 --- a/indra/newview/skins/default/xui/es/floater_postcard.xml +++ b/indra/newview/skins/default/xui/es/floater_postcard.xml @@ -1,15 +1,15 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> -<floater name="Postcard" title="FOTO POR CORREO ELECTRÓNICO"> +<floater name="Postcard" title="FOTO POR CORREO"> <text name="to_label"> Correo electrónico del destinatario: </text> - <line_editor bottom_delta="-20" name="to_form" /> - <text name="from_label" bottom_delta="-12"> + <line_editor bottom_delta="-20" name="to_form"/> + <text bottom_delta="-12" name="from_label"> Su correo electrónico: </text> - <line_editor bottom_delta="-20" name="from_form" /> + <line_editor bottom_delta="-20" name="from_form"/> <text name="name_label"> Su nombre: </text> @@ -17,20 +17,20 @@ Asunto: </text> <line_editor label="Escriba aquí el asunto." name="subject_form"/> - <text name="msg_label" bottom_delta="-18"> + <text bottom_delta="-18" name="msg_label"> Mensaje: </text> <text_editor name="msg_form"> Escriba aquí el mensaje. </text_editor> - <text name="fine_print" bottom_delta="-21"> + <text bottom_delta="-21" name="fine_print"> Si su destinatario se registra en [SECOND_LIFE], usted conseguirá un bono de referido. </text> <button label="Cancelar" name="cancel_btn"/> <button label="Enviar" name="send_btn"/> <string name="default_subject"> - Postal desde [SECOND_LIFE] + Postal desde [SECOND_LIFE]. </string> <string name="default_message"> ¡Mira esto! diff --git a/indra/newview/skins/default/xui/es/floater_preferences.xml b/indra/newview/skins/default/xui/es/floater_preferences.xml index 5fe4ae3b64..8f71fdd035 100644 --- a/indra/newview/skins/default/xui/es/floater_preferences.xml +++ b/indra/newview/skins/default/xui/es/floater_preferences.xml @@ -1,9 +1,15 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> -<floater name="Preferences" title="PREFERENCIAS" min_width="350" width="646"> +<floater min_width="350" name="Preferences" title="PREFERENCIAS" width="646"> <button label="OK" label_selected="OK" name="OK"/> <button label="Cancelar" label_selected="Cancelar" name="Cancel"/> - <button label="Aplicar" label_selected="Aplicar" name="Apply"/> - <button label="Acerca de..." label_selected="Acerca de..." name="About..." /> - <button label="Ayuda" label_selected="Ayuda" name="Help"/> - <tab_container name="pref core" tab_width="146" width="646" /> + <tab_container name="pref core" tab_width="146" width="646"> + <panel label="General" name="general"/> + <panel label="Gráficos" name="display"/> + <panel label="Privacidad" name="im"/> + <panel label="Sonido" name="audio"/> + <panel label="Chat" name="chat"/> + <panel label="Notificaciones" name="msgs"/> + <panel label="Configurar" name="input"/> + <panel label="Avanzado" name="advanced1"/> + </tab_container> </floater> diff --git a/indra/newview/skins/default/xui/es/floater_preview_animation.xml b/indra/newview/skins/default/xui/es/floater_preview_animation.xml index 0d9cf8ec9f..c10648db73 100644 --- a/indra/newview/skins/default/xui/es/floater_preview_animation.xml +++ b/indra/newview/skins/default/xui/es/floater_preview_animation.xml @@ -1,8 +1,11 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="preview_anim"> + <floater.string name="Title"> + Animación: [NAME] + </floater.string> <text name="desc txt"> Descripción: </text> - <button left="12" width="142" label="Ejecutarla en el mundo" label_selected="Parar" name="Anim play btn" tool_tip="Ejecutar esta animación de modo que puedan verla los demás."/> - <button left="156" width="136" label="Ejecutarla para usted" label_selected="Parar" name="Anim audition btn" tool_tip="Ejecutar esta animación de modo que sólo la vea usted."/> + <button label="Ejecutarla en el mundo" label_selected="Parar" left="12" name="Anim play btn" tool_tip="Ejecutar esta animación de modo que puedan verla los demás" width="142"/> + <button label="Ejecutarla para usted" label_selected="Parar" left="156" name="Anim audition btn" tool_tip="Ejecutar esta animación de modo que sólo la vea yo" width="136"/> </floater> diff --git a/indra/newview/skins/default/xui/es/floater_preview_classified.xml b/indra/newview/skins/default/xui/es/floater_preview_classified.xml index 8114c7f3c2..d9c9c51ba8 100644 --- a/indra/newview/skins/default/xui/es/floater_preview_classified.xml +++ b/indra/newview/skins/default/xui/es/floater_preview_classified.xml @@ -1,2 +1,6 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> -<floater name="classified_preview" title="INFORMACIÓN CLASIFICADA"/> +<floater name="classified_preview" title="INFORMACIÓN DEL CLASIFICADO"> + <floater.string name="Title"> + Clasificado: [NAME] + </floater.string> +</floater> diff --git a/indra/newview/skins/default/xui/es/floater_preview_event.xml b/indra/newview/skins/default/xui/es/floater_preview_event.xml index 04cb0de4d4..7edd4f9e3f 100644 --- a/indra/newview/skins/default/xui/es/floater_preview_event.xml +++ b/indra/newview/skins/default/xui/es/floater_preview_event.xml @@ -1,2 +1,6 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> -<floater name="event_preview" title="INFORMACIÓN DE EVENTOS"/> +<floater name="event_preview" title="INFORMACIÓN DEL EVENTO"> + <floater.string name="Title"> + Evento: [NAME] + </floater.string> +</floater> diff --git a/indra/newview/skins/default/xui/es/floater_preview_gesture.xml b/indra/newview/skins/default/xui/es/floater_preview_gesture.xml index 0e43ce536c..febcd9d485 100644 --- a/indra/newview/skins/default/xui/es/floater_preview_gesture.xml +++ b/indra/newview/skins/default/xui/es/floater_preview_gesture.xml @@ -1,14 +1,29 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="gesture_preview"> - <string name="stop_txt"> + <floater.string name="step_anim"> + Animación a ejecutar: + </floater.string> + <floater.string name="step_sound"> + Sonido a ejecutar: + </floater.string> + <floater.string name="step_chat"> + Decir en el chat: + </floater.string> + <floater.string name="step_wait"> + Espera: + </floater.string> + <floater.string name="stop_txt"> Parar - </string> - <string name="preview_txt"> + </floater.string> + <floater.string name="preview_txt"> Vista previa - </string> - <string name="none_text"> + </floater.string> + <floater.string name="none_text"> -- Ninguno -- - </string> + </floater.string> + <floater.string name="Title"> + Gesto: [NAME] + </floater.string> <text name="desc_label"> Descripción: </text> @@ -22,37 +37,32 @@ <text name="key_label"> Atajo de teclado: </text> - <combo_box label="Ninguno" name="modifier_combo" left="116" width="76"/> - <combo_box label="Ninguno" name="key_combo" width="76" left_delta="80"/> + <combo_box label="Ninguno" left="116" name="modifier_combo" width="76"/> + <combo_box label="Ninguno" left_delta="80" name="key_combo" width="76"/> <text name="library_label"> Biblioteca: </text> + <scroll_list name="library_list"/> + <button label="Añadir >>" name="add_btn"/> <text name="steps_label"> Pasos: </text> - <scroll_list name="library_list"> - Animación -Sonido -Chat -Esperar - </scroll_list> - <button label="Añadir >>" name="add_btn"/> - <button label="Hacia arriba" name="up_btn"/> - <button label="Hacia abajo" name="down_btn"/> + <button label="Arriba" name="up_btn"/> + <button label="Abajo" name="down_btn"/> <button label="Quitar" name="delete_btn"/> - <text name="help_label"> - Todos los pasos suceden a la vez, -a menos que añada pasos de espera. - </text> - <text left="230" name="options_text" width="200" /> + <text left="230" name="options_text" width="200"/> <radio_group name="animation_trigger_type"> - <radio_item name="start" label="Empezar" /> - <radio_item name="stop" label="Parar" /> + <radio_item label="Empezar" name="start"/> + <radio_item label="Parar" name="stop"/> </radio_group> - <check_box bottom_delta="34" label="hasta que las animaciones estén hechas" name="wait_anim_check"/> + <check_box bottom_delta="34" label="hasta que las animaciones +estén hechas" name="wait_anim_check"/> <check_box bottom_delta="-30" label="tiempo en segundos" name="wait_time_check"/> - <line_editor left_delta="130" name="wait_time_editor" /> - <check_box left="130" label="Disponible" name="active_check" tool_tip="Los gestos disponibles pueden realizarse escribiendo en el chat su frase clave o pulsando su tecla de acceso rápido. Generalmente, los gestos pasan a no disponibles cuando hay un conflicto de teclas."/> + <line_editor left_delta="130" name="wait_time_editor"/> + <text name="help_label"> + Todos los pasos suceden a la vez, a menos que añadas pasos de espera. + </text> + <check_box label="Disponible" left="130" name="active_check" tool_tip="Los gestos disponibles pueden realizarse escribiendo en el chat su frase clave o pulsando su tecla de acceso rápido. Generalmente, los gestos pasan a no disponibles cuando hay un conflicto de teclas."/> <button label="Vista previa" name="preview_btn" width="85"/> <button label="Guardar" name="save_btn"/> </floater> diff --git a/indra/newview/skins/default/xui/es/floater_preview_gesture_info.xml b/indra/newview/skins/default/xui/es/floater_preview_gesture_info.xml new file mode 100644 index 0000000000..f5b771c6e7 --- /dev/null +++ b/indra/newview/skins/default/xui/es/floater_preview_gesture_info.xml @@ -0,0 +1,2 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<floater name="Gesture" title="ATAJO DE TECLADO PARA GESTOS"/> diff --git a/indra/newview/skins/default/xui/es/floater_preview_gesture_shortcut.xml b/indra/newview/skins/default/xui/es/floater_preview_gesture_shortcut.xml new file mode 100644 index 0000000000..ea955f9727 --- /dev/null +++ b/indra/newview/skins/default/xui/es/floater_preview_gesture_shortcut.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<floater name="Gesture" title="ATAJO DE TECLADO PARA GESTOS"> + <text name="trigger_label"> + Chat : + </text> + <text name="key_label"> + Teclado: + </text> + <combo_box label="Ninguno/a" name="modifier_combo"/> + <combo_box label="Ninguno/a" name="key_combo"/> + <text name="replace_text" tool_tip="Reemplaza la/s palabra/s clave con estas palabras. Por ejemplo, si cambias la palabra clave 'hola' por 'qué tal', se cambiará en el chat 'Quería decir hola' por 'Quería decir qué tal' en cuanto realices el gesto."> + Reemplazar por: + </text> + <line_editor name="replace_editor" tool_tip="Reemplaza la/s palabra/s clave con estas palabras. Por ejemplo, si cambias la palabra clave 'hola' por 'qué tal', se cambiará en el chat 'Quería decir hola' por 'Quería decir qué tal' en cuanto realices el gesto."/> +</floater> diff --git a/indra/newview/skins/default/xui/es/floater_preview_gesture_steps.xml b/indra/newview/skins/default/xui/es/floater_preview_gesture_steps.xml new file mode 100644 index 0000000000..f5b771c6e7 --- /dev/null +++ b/indra/newview/skins/default/xui/es/floater_preview_gesture_steps.xml @@ -0,0 +1,2 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<floater name="Gesture" title="ATAJO DE TECLADO PARA GESTOS"/> diff --git a/indra/newview/skins/default/xui/es/floater_preview_notecard.xml b/indra/newview/skins/default/xui/es/floater_preview_notecard.xml index 35f795a7ec..ee2e06a3d7 100644 --- a/indra/newview/skins/default/xui/es/floater_preview_notecard.xml +++ b/indra/newview/skins/default/xui/es/floater_preview_notecard.xml @@ -1,16 +1,22 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="preview notecard" title="NOTA:"> - <button label="Guardar" label_selected="Guardar" name="Save"/> + <floater.string name="no_object"> + No se ha podido encontrar el objeto que contiene esta nota. + </floater.string> + <floater.string name="not_allowed"> + no tienes permiso para ver esta nota. + </floater.string> + <floater.string name="Title"> + Nota: [NAME] + </floater.string> + <floater.string label="Guardar" label_selected="Guardar" name="Save"> + Guardar + </floater.string> <text name="desc txt"> Descripción: </text> <text_editor name="Notecard Editor"> Cargando... </text_editor> - <string name="no_object"> - No se ha podido encontrar el objeto que contiene esta nota. - </string> - <string name="not_allowed"> - No está autorizado a ver esta nota. - </string> + <button label="Guardar" label_selected="Guardar" name="Save"/> </floater> diff --git a/indra/newview/skins/default/xui/es/floater_preview_sound.xml b/indra/newview/skins/default/xui/es/floater_preview_sound.xml index 060a033b08..07ec53581c 100644 --- a/indra/newview/skins/default/xui/es/floater_preview_sound.xml +++ b/indra/newview/skins/default/xui/es/floater_preview_sound.xml @@ -1,8 +1,11 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="preview_sound"> + <floater.string name="Title"> + Sonido : [NAME] + </floater.string> <text name="desc txt"> Descripción: </text> - <button label="Tocar en el mundo" label_selected="Tocar en el mundo" name="Sound play btn" tool_tip="Tocar este sonido para que puedan oírlo los demás."/> - <button label="Oír sólo uno mismo" label_selected="Oír sólo uno mismo" name="Sound audition btn" tool_tip="Tocar este sonido para que sólo pueda oírlo usted."/> + <button label="Tocar en el mundo" label_selected="Tocar en el mundo" name="Sound play btn" tool_tip="Ejecutar este sonido de modo que lo oigan todos"/> + <button label="Oír sólo uno mismo" label_selected="Oír sólo uno mismo" name="Sound audition btn" tool_tip="Ejecutar este sonido de modo que sólo tú lo oigas"/> </floater> diff --git a/indra/newview/skins/default/xui/es/floater_preview_texture.xml b/indra/newview/skins/default/xui/es/floater_preview_texture.xml index 280438fefd..412b31abb9 100644 --- a/indra/newview/skins/default/xui/es/floater_preview_texture.xml +++ b/indra/newview/skins/default/xui/es/floater_preview_texture.xml @@ -1,9 +1,44 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="preview_texture"> + <floater.string name="Title"> + Textura: [NAME] + </floater.string> + <floater.string name="Copy"> + Copiar al inventario + </floater.string> <text name="desc txt"> Descripción: </text> <text name="dimensions"> - Tamaño: [WIDTH] x [HEIGHT] + [WIDTH] px x [HEIGHT] px </text> + <combo_box name="combo_aspect_ratio" tool_tip="Vista previa en una proporción concreta"> + <combo_item name="Unconstrained"> + Sin restricciones + </combo_item> + <combo_item name="1:1" tool_tip="Emblema del grupo o perfil del Mundo real"> + 1:1 + </combo_item> + <combo_item name="4:3" tool_tip="Perfil de [SECOND_LIFE]"> + 4:3 + </combo_item> + <combo_item name="10:7" tool_tip="Clasificados (también en las listas de búsqueda), hitos"> + 10:7 + </combo_item> + <combo_item name="3:2" tool_tip="Acerca del terreno"> + 3:2 + </combo_item> + <combo_item name="16:10"> + 16:10 + </combo_item> + <combo_item name="16:9" tool_tip="Destacados del perfil"> + 16:9 + </combo_item> + <combo_item name="2:1"> + 2:1 + </combo_item> + </combo_box> + <button label="OK" name="keep"/> + <button label="Cancelar" name="discard"/> + <button label="Guardar como" name="save_tex_btn"/> </floater> diff --git a/indra/newview/skins/default/xui/es/floater_report_abuse.xml b/indra/newview/skins/default/xui/es/floater_report_abuse.xml index a075c51247..760429e73d 100644 --- a/indra/newview/skins/default/xui/es/floater_report_abuse.xml +++ b/indra/newview/skins/default/xui/es/floater_report_abuse.xml @@ -1,12 +1,14 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="floater_report_abuse" title="DENUNCIA DE INFRACCIÓN"> - <texture_picker label="" name="screenshot"/> - <check_box label="Incluir una captura de pantalla" name="screen_check"/> + <floater.string name="Screenshot"> + Captura de pantalla + </floater.string> + <check_box label="Usar esta captura de pantalla" name="screen_check"/> <text name="reporter_title"> Denunciante: </text> <text name="reporter_field"> - Loremipsum Dolorsitamut + Loremipsum Dolorsitamut Longnamez </text> <text name="sim_title"> Región: @@ -21,11 +23,11 @@ {128.1, 128.1, 15.4} </text> <text name="select_object_label"> - Pulse el botón y luego el objeto: + Pulsa el botón y luego el objeto a denunciar: </text> <button label="" label_selected="" name="pick_btn" tool_tip="Señalar objeto - Identificar un objeto como sujeto de esta denuncia"/> <text name="object_name_label"> - Nombre: + Objeto: </text> <text name="object_name"> Consetetur Sadipscing @@ -34,54 +36,53 @@ Propietario: </text> <text name="owner_name"> - Hendrerit Vulputate + Hendrerit Vulputate Kamawashi Longname </text> <combo_box name="category_combo" tool_tip="Categoría -- Elija la categoría que describa mejor esta denuncia"> - <combo_box.item name="Select_category" label="Elegir la categoría"/> - <combo_box.item name="Age__Age_play" label="Edad > Jugar a ser niño"/> - <combo_box.item name="Age__Adult_resident_on_Teen_Second_Life" label="Edad > Residente adulto en Teen Second Life"/> - <combo_box.item name="Age__Underage_resident_outside_of_Teen_Second_Life" label="Edad > Residente menor de edad fuera de Teen Second Life"/> - <combo_box.item name="Assault__Combat_sandbox___unsafe_area" label="Ataque > Sandbox de combate / Zona no segura"/> - <combo_box.item name="Assault__Safe_area" label="Ataque > Zona segura"/> - <combo_box.item name="Assault__Weapons_testing_sandbox" label="Ataque > Sandbox de prueba de armas"/> - <combo_box.item name="Commerce__Failure_to_deliver_product_or_service" label="Comercio > Error en la entrega de productos o servicios"/> - <combo_box.item name="Disclosure__Real_world_information" label="Indiscreción > Información del mundo real"/> - <combo_box.item name="Disclosure__Remotely_monitoring chat" label="Indiscreción > Monitorizar a distancia el chat"/> - <combo_box.item name="Disclosure__Second_Life_information_chat_IMs" label="Indiscreción > Información Se Second Life, el chat o los MI"/> - <combo_box.item name="Disturbing_the_peace__Unfair_use_of_region_resources" label="Perturbando la paz > Abuso de los recursos de la región"/> - <combo_box.item name="Disturbing_the_peace__Excessive_scripted_objects" label="Perturbando la paz > Excesivos objetos con script"/> - <combo_box.item name="Disturbing_the_peace__Object_littering" label="Perturbando la paz > Objeto basura"/> - <combo_box.item name="Disturbing_the_peace__Repetitive_spam" label="Perturbando la paz > Spam (mensajes no pedidos) repetitivo"/> - <combo_box.item name="Disturbing_the_peace__Unwanted_advert_spam" label="Perturbando la paz > Publicidad no deseada"/> - <combo_box.item name="Fraud__L$" label="Fraude > L$"/> - <combo_box.item name="Fraud__Land" label="Fraude > Terreno"/> - <combo_box.item name="Fraud__Pyramid_scheme_or_chain_letter" label="Fraude > Esquemas piramidales o cadenas de cartas"/> - <combo_box.item name="Fraud__US$" label="Fraude > US$"/> - <combo_box.item name="Harassment__Advert_farms___visual_spam" label="Acoso > Anuncios múltiples / Spam visual"/> - <combo_box.item name="Harassment__Defaming_individuals_or_groups" label="Acoso > Difamación de individuos o grupos"/> - <combo_box.item name="Harassment__Impeding_movement" label="Acoso > Impedir el movimiento"/> - <combo_box.item name="Harassment__Sexual_harassment" label="Acoso > Acoso sexual"/> - <combo_box.item name="Harassment__Solicting_inciting_others_to_violate_ToS" label="Acoso > Incitar a, o pedir, que otros violen las Condiciones del Servicio"/> - <combo_box.item name="Harassment__Verbal_abuse" label="Acoso > Abuso verbal"/> - <combo_box.item name="Indecency__Broadly_offensive_content_or_conduct" label="Indecencia > En general, contenido o conducta ofensivos"/> - <combo_box.item name="Indecency__Inappropriate_avatar_name" label="Indecencia > Nombre inapropiado del avatar"/> - <combo_box.item name="Indecency__Mature_content_in_PG_region" label="Indecencia > Contenido o conducta inapropiada en una región 'PG'"/> - <combo_box.item name="Indecency__Inappropriate_content_in_Mature_region" label="Indecencia > Contenido o conducta inapropiada en una región 'Mature'"/> - <combo_box.item name="Intellectual_property_infringement_Content_Removal" label="Infracción de la propiedad intelectual > Eliminación de contenidos"/> - <combo_box.item name="Intellectual_property_infringement_CopyBot_or_Permissions_Exploit" label="Infracción de la propiedad intelectual > CopyBot o Exploit (programa malicioso) de permisos"/> - <combo_box.item name="Intolerance" label="Intolerancia"/> - <combo_box.item name="Land__Abuse_of_sandbox_resources" label="Terreno > Abuso de los recursos de un sandbox"/> - <combo_box.item name="Land__Encroachment__Objects_textures" label="Terreno > Invasión > Objetos/Texturas"/> - <combo_box.item name="Land__Encroachment__Particles" label="Terreno > Invasión > Partículas"/> - <combo_box.item name="Land__Encroachment__Trees_plants" label="Terreno > Invasión > Árboles/Plantas"/> - <combo_box.item name="Wagering_gambling" label="Apuestas/Juego"/> - <combo_box.item name="Other" label="Otra"/> + <combo_box.item label="Elegir la categoría" name="Select_category"/> + <combo_box.item label="Edad > Jugar a ser niño" name="Age__Age_play"/> + <combo_box.item label="Edad > Residente adulto en Teen Second Life" name="Age__Adult_resident_on_Teen_Second_Life"/> + <combo_box.item label="Edad > Residente menor de edad fuera de Teen Second Life" name="Age__Underage_resident_outside_of_Teen_Second_Life"/> + <combo_box.item label="Ataque > Sandbox de combate / Zona no segura" name="Assault__Combat_sandbox___unsafe_area"/> + <combo_box.item label="Ataque > Zona segura" name="Assault__Safe_area"/> + <combo_box.item label="Ataque > Sandbox de prueba de armas" name="Assault__Weapons_testing_sandbox"/> + <combo_box.item label="Comercio > Error en la entrega de productos o servicios" name="Commerce__Failure_to_deliver_product_or_service"/> + <combo_box.item label="Indiscreción > Información del mundo real" name="Disclosure__Real_world_information"/> + <combo_box.item label="Indiscreción > Monitorizar a distancia el chat" name="Disclosure__Remotely_monitoring chat"/> + <combo_box.item label="Indiscreción > Información Se Second Life, el chat o los MI" name="Disclosure__Second_Life_information_chat_IMs"/> + <combo_box.item label="Perturbando la paz > Abuso de los recursos de la región" name="Disturbing_the_peace__Unfair_use_of_region_resources"/> + <combo_box.item label="Perturbando la paz > Excesivos objetos con script" name="Disturbing_the_peace__Excessive_scripted_objects"/> + <combo_box.item label="Perturbando la paz > Objeto basura" name="Disturbing_the_peace__Object_littering"/> + <combo_box.item label="Perturbando la paz > Spam (mensajes no pedidos) repetitivo" name="Disturbing_the_peace__Repetitive_spam"/> + <combo_box.item label="Perturbando la paz > Publicidad no deseada" name="Disturbing_the_peace__Unwanted_advert_spam"/> + <combo_box.item label="Fraude > L$" name="Fraud__L$"/> + <combo_box.item label="Fraude > Terreno" name="Fraud__Land"/> + <combo_box.item label="Fraude > Esquemas piramidales o cadenas de cartas" name="Fraud__Pyramid_scheme_or_chain_letter"/> + <combo_box.item label="Fraude > US$" name="Fraud__US$"/> + <combo_box.item label="Acoso > Anuncios múltiples / Spam visual" name="Harassment__Advert_farms___visual_spam"/> + <combo_box.item label="Acoso > Difamación de individuos o grupos" name="Harassment__Defaming_individuals_or_groups"/> + <combo_box.item label="Acoso > Impedir el movimiento" name="Harassment__Impeding_movement"/> + <combo_box.item label="Acoso > Acoso sexual" name="Harassment__Sexual_harassment"/> + <combo_box.item label="Acoso > Incitar a, o pedir, que otros violen las Condiciones del Servicio" name="Harassment__Solicting_inciting_others_to_violate_ToS"/> + <combo_box.item label="Acoso > Abuso verbal" name="Harassment__Verbal_abuse"/> + <combo_box.item label="Indecencia > En general, contenido o conducta ofensivos" name="Indecency__Broadly_offensive_content_or_conduct"/> + <combo_box.item label="Indecencia > Nombre inapropiado del avatar" name="Indecency__Inappropriate_avatar_name"/> + <combo_box.item label="Indecencia > Contenido o conducta inapropiada en una región 'PG'" name="Indecency__Mature_content_in_PG_region"/> + <combo_box.item label="Indecencia > Contenido o conducta inapropiada en una región 'Mature'" name="Indecency__Inappropriate_content_in_Mature_region"/> + <combo_box.item label="Infracción de la propiedad intelectual > Eliminación de contenidos" name="Intellectual_property_infringement_Content_Removal"/> + <combo_box.item label="Infracción de la propiedad intelectual > CopyBot o Exploit (programa malicioso) de permisos" name="Intellectual_property_infringement_CopyBot_or_Permissions_Exploit"/> + <combo_box.item label="Intolerancia" name="Intolerance"/> + <combo_box.item label="Terreno > Abuso de los recursos de un sandbox" name="Land__Abuse_of_sandbox_resources"/> + <combo_box.item label="Terreno > Invasión > Objetos/Texturas" name="Land__Encroachment__Objects_textures"/> + <combo_box.item label="Terreno > Invasión > Partículas" name="Land__Encroachment__Particles"/> + <combo_box.item label="Terreno > Invasión > Árboles/Plantas" name="Land__Encroachment__Trees_plants"/> + <combo_box.item label="Apuestas/Juego" name="Wagering_gambling"/> + <combo_box.item label="Otra" name="Other"/> </combo_box> <text name="abuser_name_title"> Nombre del infractor: </text> - <button label="Elegir al residente" label_selected="" name="select_abuser" tool_tip="Elegir de una lista el nombre del infractor"/> - <check_box label="No sé el nombre del infractor" name="omit_abuser_name" tool_tip="Marque esto si no puede aportar el nombre del infractor"/> + <button label="Elegir" label_selected="" name="select_abuser" tool_tip="Elegir de una lista el nombre del infractor"/> <text name="abuser_name_title2"> Localización de la infracción: </text> @@ -92,13 +93,11 @@ Detalles: </text> <text name="bug_aviso"> - Por favor, sea muy concreto sobre la fecha, la localización, -la naturaleza de la infracción, el aportar textos relevantes -del chat o los MI, y, si es posible, seleccione el objeto. + Por favor, sé todo lo concreto que puedas </text> <text name="incomplete_title"> - Nota: las denuncias incompletas no se investigarán. + * Las denuncias incompletas no se investigarán </text> - <button label="Cancelar" label_selected="Cancelar" name="cancel_btn"/> <button label="Denunciar la infracción" label_selected="Denunciar la infracción" name="send_btn"/> + <button label="Cancelar" label_selected="Cancelar" name="cancel_btn"/> </floater> diff --git a/indra/newview/skins/default/xui/es/floater_script_debug_panel.xml b/indra/newview/skins/default/xui/es/floater_script_debug_panel.xml new file mode 100644 index 0000000000..db9fd5f36e --- /dev/null +++ b/indra/newview/skins/default/xui/es/floater_script_debug_panel.xml @@ -0,0 +1,2 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<floater name="script" short_title="[TODOS LOS SCRIPTS]" title="[TODOS LOS SCRIPTS]"/> diff --git a/indra/newview/skins/default/xui/es/floater_script_preview.xml b/indra/newview/skins/default/xui/es/floater_script_preview.xml index 79984e7bc1..36b58b608b 100644 --- a/indra/newview/skins/default/xui/es/floater_script_preview.xml +++ b/indra/newview/skins/default/xui/es/floater_script_preview.xml @@ -1,5 +1,8 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> -<floater name="preview lsl text" title="SCRIPT: SCRIPT DE ROTACIÓN"> +<floater name="preview lsl text" title="SCRIPT: ROTACIÓN DEL SCRIPT"> + <floater.string name="Title"> + Script: [NAME] + </floater.string> <text name="desc txt"> Descripción: </text> diff --git a/indra/newview/skins/default/xui/es/floater_script_queue.xml b/indra/newview/skins/default/xui/es/floater_script_queue.xml index ace596cd9a..39c84103c4 100644 --- a/indra/newview/skins/default/xui/es/floater_script_queue.xml +++ b/indra/newview/skins/default/xui/es/floater_script_queue.xml @@ -1,4 +1,19 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> -<floater name="queue" title="REINICIO"> +<floater name="queue" title="PROGRESO DEL REINICIO"> + <floater.string name="Starting"> + Empezando [START] de [COUNT] ítems. + </floater.string> + <floater.string name="Done"> + Hecho. + </floater.string> + <floater.string name="Resetting"> + Reiniciando + </floater.string> + <floater.string name="Running"> + Ejecutándose + </floater.string> + <floater.string name="NotRunning"> + Sin ejecutarse + </floater.string> <button label="Cerrar" label_selected="Cerrar" name="close"/> </floater> diff --git a/indra/newview/skins/default/xui/es/floater_script_search.xml b/indra/newview/skins/default/xui/es/floater_script_search.xml index a59f258a18..1ab6682023 100644 --- a/indra/newview/skins/default/xui/es/floater_script_search.xml +++ b/indra/newview/skins/default/xui/es/floater_script_search.xml @@ -1,15 +1,15 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> -<floater name="script search" title="BUSCAR EN EL SCRIPT" width="320"> - <check_box label="Indiferente mays./mins." name="case_text" left="75"/> +<floater name="script search" title="BÚSQUEDA DE SCRIPTS" width="320"> + <check_box label="Indiferente mays./mins." left="75" name="case_text"/> <button label="Buscar" label_selected="Buscar" name="search_btn" width="85"/> - <button label="Reemplazar" label_selected="Reemplazar" name="replace_btn" left="100" width="85"/> - <button label="Reemplazar todos" label_selected="Reemplazar todos" name="replace_all_btn" left="190" width="122"/> + <button label="Reemplazar" label_selected="Reemplazar" left="100" name="replace_btn" width="85"/> + <button label="Reemplazar todos" label_selected="Reemplazar todos" left="190" name="replace_all_btn" width="122"/> <text name="txt" width="65"> Buscar </text> <text name="txt2" width="65"> Reemplazar </text> - <line_editor left="75" name="search_text" width="240" /> - <line_editor left="75" name="replace_text" width="240" /> + <line_editor left="75" name="search_text" width="240"/> + <line_editor left="75" name="replace_text" width="240"/> </floater> diff --git a/indra/newview/skins/default/xui/es/floater_search.xml b/indra/newview/skins/default/xui/es/floater_search.xml new file mode 100644 index 0000000000..377b848530 --- /dev/null +++ b/indra/newview/skins/default/xui/es/floater_search.xml @@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<floater name="floater_search" title="ENCONTRAR"> + <floater.string name="loading_text"> + Cargando... + </floater.string> + <floater.string name="done_text"> + Hecho + </floater.string> + <layout_stack name="stack1"> + <layout_panel name="browser_layout"> + <text name="refresh_search"> + Redo search to reflect current God level + </text> + </layout_panel> + </layout_stack> +</floater> diff --git a/indra/newview/skins/default/xui/es/floater_select_key.xml b/indra/newview/skins/default/xui/es/floater_select_key.xml index 9c889df63a..6503a3d5cb 100644 --- a/indra/newview/skins/default/xui/es/floater_select_key.xml +++ b/indra/newview/skins/default/xui/es/floater_select_key.xml @@ -2,6 +2,6 @@ <floater name="modal container" title=""> <button label="Cancelar" label_selected="Cancelar" name="Cancel"/> <text name="Save item as:"> - Pulse una tecla para seleccionarla + Pulsa una tecla para configurarla como tu botón para hablar. </text> </floater> diff --git a/indra/newview/skins/default/xui/es/floater_sell_land.xml b/indra/newview/skins/default/xui/es/floater_sell_land.xml index c6e8746250..efedb5d689 100644 --- a/indra/newview/skins/default/xui/es/floater_sell_land.xml +++ b/indra/newview/skins/default/xui/es/floater_sell_land.xml @@ -1,64 +1,65 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> -<floater name="sell land" title="VENDER EL TERRENO"> - <scroll_container name="profile_scroll"> - <panel name="scroll_content_panel"> - <text name="info_parcel_label"> - Parcela: - </text> - <text name="info_parcel"> - NOMBRE DE LA PARCELA - </text> - <text name="info_size_label"> - Tamaño: - </text> - <text name="info_size"> - [AREA] m² - </text> - <text name="info_action"> - Vender esta parcela: - </text> - <icon bottom_delta="-56" name="step_price" /> - <text name="price_label"> - Marque un precio: - </text> - <text name="price_text"> - Elija un precio adecuado para esta parcela. - </text> - <text name="price_ld"> - L$ - </text> - <text name="price_per_m"> - ([PER_METER] L$ por metro cuadrado) - </text> - <text name="sell_to_label"> - Vender este terreno a: - </text> - <text name="sell_to_text"> - Elija si venderlo a cualquiera o a un comprador concreto. - </text> - <combo_box name="sell_to"> - <combo_box.item name="--selectone--" label="seleccione --" /> - <combo_box.item name="Anyone" label="Cualquiera" /> - <combo_box.item name="Specificuser:" label="Un usuario concreto:" /> - </combo_box> - <button label="Seleccionar..." name="sell_to_select_agent"/> - <text name="sell_objects_label"> - ¿Vender los objetos con el terreno? - </text> - <text name="sell_objects_text"> - Los objetos transferibles del propietario del terreno cambiarán -de propietario. - </text> - <radio_group name="sell_objects" bottom_delta="-58" > - <radio_item name="no" label="No, mantener la propiedad de los objetos" /> - <radio_item name="yes" label="Sí, vender los objetos con el terreno" /> - </radio_group> - <button label="Mostrar los objetos" name="show_objects" width="120"/> - <text name="nag_message_label"> - RECUERDE: todas las ventas son definitivas. - </text> - <button label="Poner el terreno en venta" name="sell_btn"/> - <button label="Cancelar" name="cancel_btn"/> - </panel> - </scroll_container> +<floater name="sell land" title="VENTA DE TERRENO"> + <scroll_container name="profile_scroll"> + <panel name="scroll_content_panel"> + <text name="info_parcel_label"> + Parcela: + </text> + <text name="info_parcel"> + NOMBRE DE LA PARCELA + </text> + <text name="info_size_label"> + Tamaño: + </text> + <text name="info_size"> + [AREA] m² + </text> + <text name="info_action"> + Vender esta parcela: + </text> + <text name="price_label"> + 1. Marcar un precio: + </text> + <text name="price_text"> + Elegir un precio adecuado. + </text> + <text name="price_ld"> + L$ + </text> + <line_editor name="price"> + 0 + </line_editor> + <text name="price_per_m"> + ([PER_METER] L$ por m²) + </text> + <text name="sell_to_label"> + 2. Vender el terreno a: + </text> + <text name="sell_to_text"> + Elige si venderlo a cualquiera o a un comprador concreto. + </text> + <combo_box name="sell_to"> + <combo_box.item label="- Elegir a alguien -" name="--selectone--"/> + <combo_box.item label="Cualquiera" name="Anyone"/> + <combo_box.item label="Alguien concreto:" name="Specificuser:"/> + </combo_box> + <button label="Elegir" name="sell_to_select_agent"/> + <text name="sell_objects_label"> + 3. ¿Vender los objetos junto con el terreno? + </text> + <text name="sell_objects_text"> + Los objetos transferibles del propietario del terreno que estén en la parcela cambiarán de propietario. + </text> + <radio_group bottom_delta="-58" name="sell_objects"> + <radio_item label="No, mantener la propiedad de los objetos" name="no"/> + <radio_item label="Sí, vender los objetos con el terreno" name="yes"/> + </radio_group> + <button label="Mostrar los objetos" name="show_objects" width="120"/> + <text name="nag_message_label"> + RECUERDA: todas las ventas son definitivas. + </text> + <button label="Poner en venta el terreno" name="sell_btn"/> + <button label="Cancelar" name="cancel_btn"/> + </panel> + </scroll_container> </floater> diff --git a/indra/newview/skins/default/xui/es/floater_settings_debug.xml b/indra/newview/skins/default/xui/es/floater_settings_debug.xml index 0e8e6bdfd2..36234763b0 100644 --- a/indra/newview/skins/default/xui/es/floater_settings_debug.xml +++ b/indra/newview/skins/default/xui/es/floater_settings_debug.xml @@ -1,10 +1,10 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> -<floater name="settings_debug" title="CONFIGURACIÓN DEL DEPURADOR"> +<floater name="settings_debug" title="CONFIGURACIONES DEL DEPURADOR"> <combo_box name="boolean_combo"> - <combo_box.item name="TRUE" label="TRUE" /> - <combo_box.item name="FALSE" label="FALSE" /> + <combo_box.item label="VERDADERO" name="TRUE"/> + <combo_box.item label="FALSO" name="FALSE"/> </combo_box> - <color_swatch label="Color" name="color_swatch"/> + <color_swatch label="Color" name="val_color_swatch"/> <spinner label="x" name="val_spinner_1"/> <spinner label="x" name="val_spinner_2"/> <spinner label="x" name="val_spinner_3"/> diff --git a/indra/newview/skins/default/xui/es/floater_snapshot.xml b/indra/newview/skins/default/xui/es/floater_snapshot.xml index afea6c09fe..9417c74d28 100644 --- a/indra/newview/skins/default/xui/es/floater_snapshot.xml +++ b/indra/newview/skins/default/xui/es/floater_snapshot.xml @@ -4,9 +4,9 @@ Destino de la foto </text> <radio_group label="Tipo de la foto" name="snapshot_type_radio"> - <radio_item name="postcard" label="Enviar por correo electrónico" /> - <radio_item name="texture" label="Guardarla en su inventario ([AMOUNT] L$)" /> - <radio_item name="local" label="Guardarla en su disco duro" /> + <radio_item label="Enviar por correo electrónico" name="postcard"/> + <radio_item label="Guardarla en su inventario ([AMOUNT] L$)" name="texture"/> + <radio_item label="Guardarla en su disco duro" name="local"/> </radio_group> <text name="file_size_label"> Tamaño del archivo: [SIZE] KB @@ -15,8 +15,8 @@ <button label="Enviar" name="send_btn"/> <button label="Guardar ([AMOUNT] L$)" name="upload_btn"/> <flyout_button label="Guardar" name="save_btn" tool_tip="Guardar la imagen en un archivo"> - <flyout_button_item name="save_item" label="Guardar"/> - <flyout_button_item name="saveas_item" label="Guardar como..."/> + <flyout_button_item label="Guardar" name="save_item"/> + <flyout_button_item label="Guardar como..." name="saveas_item"/> </flyout_button> <button label="Cancelar" name="discard_btn"/> <button label="Más >>" name="more_btn" tool_tip="Opciones avanzadas"/> @@ -28,50 +28,51 @@ Formato </text> <combo_box label="Resolución" name="postcard_size_combo"> - <combo_box.item name="CurrentWindow" label="Ventana actual"/> - <combo_box.item name="640x480" label="640x480"/> - <combo_box.item name="800x600" label="800x600"/> - <combo_box.item name="1024x768" label="1024x768"/> - <combo_box.item name="Custom" label="Personalizar"/> + <combo_box.item label="Ventana actual" name="CurrentWindow"/> + <combo_box.item label="640x480" name="640x480"/> + <combo_box.item label="800x600" name="800x600"/> + <combo_box.item label="1024x768" name="1024x768"/> + <combo_box.item label="Personalizar" name="Custom"/> </combo_box> <combo_box label="Resolución" name="texture_size_combo"> - <combo_box.item name="CurrentWindow" label="Ventana actual"/> - <combo_box.item name="Small(128x128)" label="Pequeño (128x128)"/> - <combo_box.item name="Medium(256x256)" label="Medio (256x256)"/> - <combo_box.item name="Large(512x512)" label="Grande (512x512)"/> - <combo_box.item name="Custom" label="Personalizar"/> + <combo_box.item label="Ventana actual" name="CurrentWindow"/> + <combo_box.item label="Pequeño (128x128)" name="Small(128x128)"/> + <combo_box.item label="Medio (256x256)" name="Medium(256x256)"/> + <combo_box.item label="Grande (512x512)" name="Large(512x512)"/> + <combo_box.item label="Personalizar" name="Custom"/> </combo_box> <combo_box label="Resolución" name="local_size_combo"> - <combo_box.item name="CurrentWindow" label="Ventana actual"/> - <combo_box.item name="320x240" label="320x240"/> - <combo_box.item name="640x480" label="640x480"/> - <combo_box.item name="800x600" label="800x600"/> - <combo_box.item name="1024x768" label="1024x768"/> - <combo_box.item name="1280x1024" label="1280x1024"/> - <combo_box.item name="1600x1200" label="1600x1200"/> - <combo_box.item name="Custom" label="Personalizar"/> + <combo_box.item label="Ventana actual" name="CurrentWindow"/> + <combo_box.item label="320x240" name="320x240"/> + <combo_box.item label="640x480" name="640x480"/> + <combo_box.item label="800x600" name="800x600"/> + <combo_box.item label="1024x768" name="1024x768"/> + <combo_box.item label="1280x1024" name="1280x1024"/> + <combo_box.item label="1600x1200" name="1600x1200"/> + <combo_box.item label="Personalizar" name="Custom"/> </combo_box> <combo_box label="Formato" name="local_format_combo"> - <combo_box.item name="PNG" label="PNG"/> - <combo_box.item name="JPEG" label="JPEG"/> - <combo_box.item name="BMP" label="BMP"/> + <combo_box.item label="PNG" name="PNG"/> + <combo_box.item label="JPEG" name="JPEG"/> + <combo_box.item label="BMP" name="BMP"/> </combo_box> - <spinner label="Ancho" name="snapshot_width" label_width="41" width="101"/> - <spinner label="Alto" name="snapshot_height" label_width="30" width="90" left="121"/> + <spinner label="Ancho" label_width="41" name="snapshot_width" width="101"/> + <spinner label="Alto" label_width="30" left="121" name="snapshot_height" width="90"/> <check_box label="Mantener las proporciones" name="keep_aspect_check"/> <slider label="Calidad de la imagen" name="image_quality_slider"/> <text name="layer_type_label"> Captura: </text> <combo_box label="Capas de la imagen" name="layer_types"> - <combo_box.item name="Colors" label="Colores"/> - <combo_box.item name="Depth" label="Profundidad"/> - <combo_box.item name="ObjectMattes" label="Bandas negras"/> + <combo_box.item label="Colores" name="Colors"/> + <combo_box.item label="Profundidad" name="Depth"/> + <combo_box.item label="Bandas negras" name="ObjectMattes"/> </combo_box> <check_box label="Incluir la interfaz en la foto" name="ui_check"/> <check_box bottom_delta="-17" label="Incluir los HUD en la foto" name="hud_check"/> <check_box bottom_delta="-17" label="Mantenerla abierta tras guardarla" name="keep_open_check"/> - <check_box bottom_delta="-17" label="Congelar la toma (vista previa en pantalla completa)" name="freeze_frame_check"/> + <check_box bottom_delta="-17" label="Congelar la toma +(vista previa en pantalla completa)" name="freeze_frame_check"/> <check_box bottom_delta="-29" label="Actualizar automáticamente" name="auto_snapshot_check"/> <string name="unknown"> desconocido diff --git a/indra/newview/skins/default/xui/es/floater_stats.xml b/indra/newview/skins/default/xui/es/floater_stats.xml new file mode 100644 index 0000000000..5f4fabf375 --- /dev/null +++ b/indra/newview/skins/default/xui/es/floater_stats.xml @@ -0,0 +1,71 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<floater name="Statistics" title="ESTADÍSTICAS"> + <scroll_container name="statistics_scroll"> + <container_view name="statistics_view"> + <stat_view label="Básico" name="basic"> + <stat_bar label="FPS" name="fps"/> + <stat_bar label="Ancho de banda" name="bandwidth"/> + <stat_bar label="Pérdida de paquetes" name="packet_loss"/> + <stat_bar label="Ping del Sim" name="ping"/> + </stat_view> + <stat_view label="Avanzado" name="advanced"> + <stat_view label="Renderización" name="render"> + <stat_bar label="KTris generados" name="ktrisframe"/> + <stat_bar label="KTris generados" name="ktrissec"/> + <stat_bar label="Objetos en total" name="objs"/> + <stat_bar label="Objetos nuevos" name="newobjs"/> + </stat_view> + <stat_view label="Textura" name="texture"> + <stat_bar label="Número" name="numimagesstat"/> + <stat_bar label="Raw: número" name="numrawimagesstat"/> + <stat_bar label="GL Mem" name="gltexmemstat"/> + <stat_bar label="Formatted Mem" name="formattedmemstat"/> + <stat_bar label="Raw Mem" name="rawmemstat"/> + <stat_bar label="Bound Mem" name="glboundmemstat"/> + </stat_view> + <stat_view label="Red" name="network"> + <stat_bar label="Paquetes salientes" name="packetsinstat"/> + <stat_bar label="Paquetes entrantes" name="packetsoutstat"/> + <stat_bar label="Objetos" name="objectkbitstat"/> + <stat_bar label="Textura" name="texturekbitstat"/> + <stat_bar label="Asset" name="assetkbitstat"/> + <stat_bar label="Capas" name="layerskbitstat"/> + <stat_bar label="Entrando ahora" name="actualinkbitstat"/> + <stat_bar label="Saliendo ahora" name="actualoutkbitstat"/> + <stat_bar label="Operaciones VFS pendientes" name="vfspendingoperations"/> + </stat_view> + </stat_view> + <stat_view label="Simulador" name="sim"> + <stat_bar label="Tiempo de dilación" name="simtimedilation"/> + <stat_bar label="FPS en el Sim" name="simfps"/> + <stat_bar label="Physics FPS" name="simphysicsfps"/> + <stat_view label="Physics Details" name="physicsdetail"> + <stat_bar label="Pin de objetos" name="physicspinnedtasks"/> + <stat_bar label="Objetos con bajo nivel de detalle" name="physicslodtasks"/> + <stat_bar label="Memoria asignada" name="physicsmemoryallocated"/> + <stat_bar label="Agentes: actual./seg." name="simagentups"/> + <stat_bar label="Agentes del grid principal" name="simmainagents"/> + <stat_bar label="Agentes secundarios" name="simchildagents"/> + <stat_bar label="Objetos" name="simobjects"/> + <stat_bar label="Objetos activos" name="simactiveobjects"/> + <stat_bar label="Scripts activos" name="simactivescripts"/> + <stat_bar label="Eventos de scripts" name="simscripteps"/> + <stat_bar label="Paquetes salientes" name="siminpps"/> + <stat_bar label="Paquetes entrantes" name="simoutpps"/> + <stat_bar label="Descargas pendientes" name="simpendingdownloads"/> + <stat_bar label="Subidas pendientes" name="simpendinguploads"/> + <stat_bar label="Total de bytes no reconocidos" name="simtotalunackedbytes"/> + </stat_view> + <stat_view label="Tiempo (ms)" name="simperf"> + <stat_bar label="Tiempo total de los frames" name="simframemsec"/> + <stat_bar label="Tiempo de red" name="simnetmsec"/> + <stat_bar label="Physics Time" name="simsimphysicsmsec"/> + <stat_bar label="Tiempo de la simulación" name="simsimothermsec"/> + <stat_bar label="Tiempo de los agentes" name="simagentmsec"/> + <stat_bar label="Tiempo de las imágenes" name="simimagesmsec"/> + <stat_bar label="Tiempo de los scripts" name="simscriptmsec"/> + </stat_view> + </stat_view> + </container_view> + </scroll_container> +</floater> diff --git a/indra/newview/skins/default/xui/es/floater_sys_well.xml b/indra/newview/skins/default/xui/es/floater_sys_well.xml new file mode 100644 index 0000000000..34c87351a4 --- /dev/null +++ b/indra/newview/skins/default/xui/es/floater_sys_well.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<floater name="sys_well_window" title="NOTIFICACIONES"> + <string name="title_im_well_window"> + SESIONES DE MI + </string> + <string name="title_notification_well_window"> + NOTIFICACIONES + </string> +</floater> diff --git a/indra/newview/skins/default/xui/es/floater_telehub.xml b/indra/newview/skins/default/xui/es/floater_telehub.xml index b2dddfb7f7..87cc9c1659 100644 --- a/indra/newview/skins/default/xui/es/floater_telehub.xml +++ b/indra/newview/skins/default/xui/es/floater_telehub.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> -<floater name="telehub" title="PUNTO DE TELEPORTE" min_height="310" height="310"> +<floater height="310" min_height="310" name="telehub" title="PUNTO DE TELEPORTE"> <text name="status_text_connected"> Punto de Teleporte conectado al objeto [OBJECT] </text> @@ -9,7 +9,7 @@ <text name="help_text_connected"> Para quitar, pulse Desconectar. </text> - <text name="help_text_not_connected" height="38" bottom_delta="-18"> + <text bottom_delta="-18" height="38" name="help_text_not_connected"> Seleccione el objeto y pulse Conectar el Punto de Teleporte. </text> @@ -21,12 +21,9 @@ de Teleporte. <button label="Añadir sucursales" name="add_spawn_point_btn"/> <button label="Quitar sucursales" name="remove_spawn_point_btn"/> <text name="spawn_point_help"> - Seleccione el objeto y pulse Añadir para -especificar la posición. -Hecho eso, puede mover o borrar el objeto. -Las posiciones son relativas al centro del -Punto de Teleporte. -Seleccione un ítem de la lista para mostrar su -posición en el mundo. + Selecciona el objeto y pulsa "Añadir sucursal" para especificar una posición. +Luego, puedes mover o borrar el objeto. +Las posiciones son relativas al centro del Punto de Teleporte. +Elige un ítem de la lista para realzarlo en el mundo. </text> </floater> diff --git a/indra/newview/skins/default/xui/es/floater_texture_ctrl.xml b/indra/newview/skins/default/xui/es/floater_texture_ctrl.xml index 09d6e7e4aa..ed2787ea60 100644 --- a/indra/newview/skins/default/xui/es/floater_texture_ctrl.xml +++ b/indra/newview/skins/default/xui/es/floater_texture_ctrl.xml @@ -1,23 +1,23 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> -<floater name="texture picker" title="ELEGIR: TEXTURA"> +<floater name="texture picker" title="DESTACADO: TEXTURA"> <string name="choose_picture"> Pulse para elegir una imagen </string> <text name="Multiple"> - Múltiple + Texturas múltiples </text> <text name="unknown"> - Dimensiones: [DIMENSIONS] + Tamaño: [DIMENSIONS] </text> <button label="Por defecto" label_selected="Por defecto" name="Default" width="84"/> - <button label="Ninguna" label_selected="Ninguna" name="None" left="90"/> + <button label="Ninguna" label_selected="Ninguna" left="90" name="None"/> <button label="Blanca" label_selected="Blanca" name="Blank"/> <check_box label="Ver las carpetas" name="show_folders_check"/> - <search_editor label="Escriba aquí para buscar una" name="inventory search editor"/> - <check_box label="Aplicar ahora mismo" name="apply_immediate_check"/> + <search_editor label="Filtrar las texturas" name="inventory search editor"/> + <check_box label="Aplicarlo ahora" name="apply_immediate_check"/> <button label="" label_selected="" name="Pipette"/> <button label="Cancelar" label_selected="Cancelar" name="Cancel"/> - <button label="Elegir" label_selected="Elegir" name="Select"/> + <button label="OK" label_selected="OK" name="Select"/> <string name="pick title"> Elegir: </string> diff --git a/indra/newview/skins/default/xui/es/floater_tools.xml b/indra/newview/skins/default/xui/es/floater_tools.xml index 24db352ac4..1c65567830 100644 --- a/indra/newview/skins/default/xui/es/floater_tools.xml +++ b/indra/newview/skins/default/xui/es/floater_tools.xml @@ -1,45 +1,81 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> -<floater name="toolbox floater" title="" short_title="CONSTRUIR" width="288"> +<floater name="toolbox floater" short_title="HERRAMIENTAS DE CONSTRUCCIÓN" title="" width="288"> + <floater.string name="status_rotate"> + Arrastre las bandas de color para girar el objeto + </floater.string> + <floater.string name="status_scale"> + Pulse y arrastre para estirar el lado seleccionado + </floater.string> + <floater.string name="status_move"> + Arrastrar para mover, Mayús.+arrastrar para copiar + </floater.string> + <floater.string name="status_modifyland"> + Mantenga pulsado para modificar el terreno + </floater.string> + <floater.string name="status_camera"> + Pulsa y arrastra para mover la cámara + </floater.string> + <floater.string name="status_grab"> + Arrastra para mover: Ctrl, verticalmente; Ctrl-Mayús., girando + </floater.string> + <floater.string name="status_place"> + Pulse en el mundo para construir + </floater.string> + <floater.string name="status_selectland"> + Pulse y arrastre para seleccionar el terreno + </floater.string> + <floater.string name="grid_screen_text"> + Pantalla + </floater.string> + <floater.string name="grid_local_text"> + Local + </floater.string> + <floater.string name="grid_world_text"> + Mundo + </floater.string> + <floater.string name="grid_reference_text"> + Referencia + </floater.string> + <floater.string name="grid_attachment_text"> + Añadido + </floater.string> <button label="" label_selected="" name="button focus" tool_tip="Visión"/> <button label="" label_selected="" name="button move" tool_tip="Mover"/> <button label="" label_selected="" name="button edit" tool_tip="Editar"/> <button label="" label_selected="" name="button create" tool_tip="Crear"/> <button label="" label_selected="" name="button land" tool_tip="Terreno"/> + <text name="text status" width="280"> + Arrastrar para mover, Mayús.+arrastrar para copiar + </text> <radio_group name="focus_radio_group"> <radio_item label="Zoom" name="radio zoom"/> <radio_item label="Órbita (Ctrl)" name="radio orbit"/> - <radio_item label="Panorámica (Ctrl-Shift)" name="radio pan"/> + <radio_item label="Panorámica (Ctrl+Shift)" name="radio pan"/> </radio_group> <radio_group name="move_radio_group"> <radio_item label="Mover" name="radio move"/> <radio_item label="Vertical (Ctrl)" name="radio lift"/> - <radio_item label="Horizontal (Ctrl-Shift)" name="radio spin"/> + <radio_item label="Horizontal (Ctrl+Shift)" name="radio spin"/> </radio_group> <radio_group name="edit_radio_group"> - <radio_item label="Posición" name="radio position"/> + <radio_item label="Moverse" name="radio position"/> <radio_item label="Girar (Ctrl)" name="radio rotate"/> - <radio_item label="Estirar (Ctrl-Shift)" name="radio stretch"/> + <radio_item label="Estirar (Ctrl+Shift)" name="radio stretch"/> <radio_item label="Elegir la cara" name="radio select face"/> </radio_group> <check_box label="Editar las partes enlazadas" name="checkbox edit linked parts"/> - <text name="text ruler mode"> - Ajuste: + <text name="RenderingCost" tool_tip="Muestra cuánto se calcula que cuesta renderizar este objeto"> + þ: [COUNT] </text> - <combo_box name="combobox grid mode" width="82"> - <combo_box.item name="World" label="Mundo" - /> - <combo_box.item name="Local" label="Local" - /> - <combo_box.item name="Reference" label="Referencia" - /> - </combo_box> <check_box label="Estirar ambos lados" name="checkbox uniform"/> - <check_box label="Estirar las texturas" name="checkbox stretch textures"/> - <check_box label="Usar la cuadrícula" name="checkbox snap to grid"/> - <button label="Opciones..." label_selected="Opciones..." name="Options..."/> - <text name="text status" width="280"> - Arrastrar para mover, Mayús.+arrastrar para copiar - </text> + <check_box initial_value="true" label="Estirar las texturas" name="checkbox stretch textures"/> + <check_box initial_value="true" label="Usar la cuadrícula" name="checkbox snap to grid"/> + <combo_box name="combobox grid mode" tool_tip="Elige qué cuadricula usar para posicionar el objeto" width="82"> + <combo_box.item label="Mundo" name="World"/> + <combo_box.item label="Local" name="Local"/> + <combo_box.item label="Referencia" name="Reference"/> + </combo_box> + <button label="Opciones..." label_selected="Opciones..." name="Options..." tool_tip="Ver más opciones de la cuadrícula"/> <button label="" label_selected="" name="ToolCube" tool_tip="Cubo"/> <button label="" label_selected="" name="ToolPrism" tool_tip="Prisma"/> <button label="" label_selected="" name="ToolPyramid" tool_tip="Pirámide"/> @@ -55,10 +91,10 @@ <button label="" label_selected="" name="ToolRing" tool_tip="Cono truncado"/> <button label="" label_selected="" name="ToolTree" tool_tip="Árbol"/> <button label="" label_selected="" name="ToolGrass" tool_tip="Hierba"/> - <check_box label="Mantener seleccionado" name="checkbox sticky"/> - <check_box label="Copia seleccionada" name="checkbox copy selection"/> - <check_box label="Centrada" name="checkbox copy centers"/> - <check_box label="Girada" name="checkbox copy rotates"/> + <check_box label="Mantener la herramienta elegida" name="checkbox sticky"/> + <check_box label="Copiar la selección" name="checkbox copy selection"/> + <check_box initial_value="true" label="Copia centrada" name="checkbox copy centers"/> + <check_box label="Copia girada" name="checkbox copy rotates"/> <radio_group name="land_radio_group"> <radio_item label="Seleccionar el terreno" name="radio select land"/> <radio_item label="Nivelar" name="radio flatten"/> @@ -68,7 +104,6 @@ <radio_item label="Escarpar" name="radio noise"/> <radio_item label="Restablecer" name="radio revert"/> </radio_group> - <button label="Aplicar" label_selected="Aplicar" name="button apply to selection" tool_tip="Modificar el terreno seleccionado" left="146"/> <text name="Bulldozer:"> Bulldozer: </text> @@ -78,14 +113,51 @@ <text name="Strength:"> Fuerza </text> - <text name="obj_count" left="134"> - Objetos seleccionados: [COUNT] + <button label="Aplicar" label_selected="Aplicar" left="146" name="button apply to selection" tool_tip="Modificar el terreno seleccionado"/> + <text left="134" name="obj_count"> + Objetos: [COUNT] </text> - <text name="prim_count" left="134"> - primitivas: [COUNT] + <text left="134" name="prim_count"> + Primitivas: [COUNT] </text> <tab_container name="Object Info Tabs" tab_max_width="62" tab_min_width="30" width="288"> <panel label="General" name="General"> + <panel.string name="text deed continued"> + Transfeir + </panel.string> + <panel.string name="text deed"> + Transferir + </panel.string> + <panel.string name="text modify info 1"> + Puedes modificar este objeto + </panel.string> + <panel.string name="text modify info 2"> + Puedes modificar estos objetos + </panel.string> + <panel.string name="text modify info 3"> + No puedes modificar este objeto + </panel.string> + <panel.string name="text modify info 4"> + No puedes modificar estos objetos + </panel.string> + <panel.string name="text modify warning"> + Para configurar los permisos, debes seleccionar el objeto completo + </panel.string> + <panel.string name="Cost Default"> + Precio: L$ + </panel.string> + <panel.string name="Cost Total"> + Precio total: L$ + </panel.string> + <panel.string name="Cost Per Unit"> + Price Per: L$ + </panel.string> + <panel.string name="Cost Mixed"> + Precio variable + </panel.string> + <panel.string name="Sale Mixed"> + Venta variable + </panel.string> <text name="Name:"> Nombre: </text> @@ -98,135 +170,77 @@ <text name="Creator Name"> Thrax Linden </text> - <button label="Perfil..." label_selected="Perfil..." name="button creator profile"/> <text name="Owner:"> Propietario: </text> <text name="Owner Name"> Thrax Linden </text> - <button label="Perfil..." label_selected="Perfil..." name="button owner profile"/> <text name="Group:"> Grupo: </text> - <text name="Group Name Proxy"> - Los Linden - </text> - <button label="Configurar..." label_selected="Configurar..." name="button set group"/> - <text name="Permissions:"> - Permisos: - </text> - - <check_box label="Compartir con el grupo" name="checkbox share with group" tool_tip="Permitir que todos los miembros del grupo compartan y utilicen sus permisos sobre este objeto. Debe transferirlo para activar las restricciones según los roles."/> - <string name="text deed continued"> - Transferir... - </string> - <string name="text deed"> - Transferir - </string> - <button label="Transferir..." label_selected="Transferir..." name="button deed" tool_tip="Los objetos compartidos por el grupo pueden ser transferidos por un oficial del grupo."/> - <check_box label="Permitir a cualquiera que lo mueva" name="checkbox allow everyone move"/> - <check_box label="Permitir a cualquiera que lo copie" name="checkbox allow everyone copy"/> - <check_box label="Mostrar en la búsqueda" name="search_check" tool_tip="Dejar que la gente vea este objeto en los resultados de la búsqueda"/> - <check_box label="En venta" name="checkbox for sale"/> - <text name="Cost"> - Precio: L$ + <button label="Configurar..." label_selected="Configurar..." name="button set group" tool_tip="Elige un grupo con el que compartir los permisos de este objeto"/> + <name_box initial_value="Cargando..." name="Group Name Proxy"/> + <button label="Transfeir" label_selected="Transfeir" name="button deed" tool_tip="La transferencia entrega este objeto con los permisos del próximo propietario. Los objetos compartidos por el grupo pueden ser transferidos por un oficial del grupo."/> + <check_box label="Compartir" name="checkbox share with group" tool_tip="Permite que todos los miembros del grupo compartan tus permisos de modificación en este objeto. Debes transferirlo para activar las restricciones según los roles."/> + <text name="label click action" width="180"> + Al tocarlo: </text> + <combo_box name="clickaction" width="192"> + <combo_box.item label="Tocarlo (por defecto)" name="Touch/grab(default)"/> + <combo_box.item label="Sentarse en el objeto" name="Sitonobject"/> + <combo_box.item label="Comprar el objeto" name="Buyobject"/> + <combo_box.item label="Pagar al objeto" name="Payobject"/> + <combo_box.item label="Abrirlo" name="Open"/> + <combo_box.item label="Zoom" name="Zoom"/> + </combo_box> + <check_box label="En venta:" name="checkbox for sale"/> <combo_box name="sale type"> <combo_box.item label="Copia" name="Copy"/> <combo_box.item label="Contenidos" name="Contents"/> <combo_box.item label="Original" name="Original"/> </combo_box> - - <text name="label click action" width="180"> - Al pulsarlo con el botón izquierdo: - </text> - <combo_box name="clickaction" width="192"> - <combo_box.item name="Touch/grab(default)" label="Tocar/Agarrar (por defecto)" - /> - <combo_box.item name="Sitonobject" label="Sentarse en el objeto" - /> - <combo_box.item name="Buyobject" label="Comprar el objeto" - /> - <combo_box.item name="Payobject" label="Pagar al objeto" - /> - <combo_box.item name="Open" label="Abrirlo" - /> - <combo_box.item name="Play" label="Ejecutar los media de la parcela" - /> - <combo_box.item name="Opemmedia" label="Abrir los media de la parcela" - /> - </combo_box> - <panel name="perms_build"> - <text name="perm_modify"> - Puede modificar este objeto - </text> - <text name="B:"> - B: - </text> - <text name="O:"> - O: - </text> - <text name="G:"> - G: - </text> - <text name="E:"> - E: - </text> - <text name="N:"> - N: - </text> - <text name="F:"> - F: - </text> - <text name="Next owner can:"> - El próximo propietario puede: - </text> - <check_box label="Modificarlo" name="checkbox next owner can modify"/> - <check_box label="Copiarlo" name="checkbox next owner can copy" left_delta="80"/> - <check_box name="checkbox next owner can transfer" left_delta="67"/> - </panel> - <string name="text modify info 1"> - Puede modificar este objeto - </string> - <string name="text modify info 2"> - Puede modificar estos objetos - </string> - <string name="text modify info 3"> - No puede modificar este objeto - </string> - <string name="text modify info 4"> - No puede modificar estos objetos - </string> - <string name="text modify warning"> - Debe seleccionar todo el objeto para definir los permisos - </string> - <string name="Cost Default"> - Precio: L$ - </string> - <string name="Cost Total"> - Precio total: L$ - </string> - <string name="Cost Per Unit"> - Precio por: L$ - </string> - <string name="Cost Mixed"> - Precio variable - </string> - <string name="Sale Mixed"> - Venta variable - </string> + <spinner label="Precio: L$" name="Edit Cost"/> + <check_box label="Mostrar en la búsqueda" name="search_check" tool_tip="Dejar que la gente vea este objeto en los resultados de la búsqueda"/> + <panel name="perms_build"> + <text name="perm_modify"> + Puedes modificar este objeto + </text> + <text name="Anyone can:"> + Cualquiera: + </text> + <check_box label="Moverlo" name="checkbox allow everyone move"/> + <check_box label="Copiar" name="checkbox allow everyone copy"/> + <text name="Next owner can:"> + Próximo propietario: + </text> + <check_box label="Modificarlo" name="checkbox next owner can modify"/> + <check_box label="Copiarlo" left_delta="80" name="checkbox next owner can copy"/> + <check_box label="Transferirlo" left_delta="67" name="checkbox next owner can transfer" tool_tip="El próximo propietario puede dar o revender este objeto"/> + <text name="B:"> + B: + </text> + <text name="O:"> + O: + </text> + <text name="G:"> + G: + </text> + <text name="E:"> + E: + </text> + <text name="N:"> + N: + </text> + <text name="F:"> + F: + </text> + </panel> </panel> <panel label="Objeto" name="Object"> - <text name="select_single"> - Seleccione un sólo prim para editarlo. - </text> - <text name="edit_object"> - Modificar los parámetros del objeto: - </text> <check_box label="Bloqueado" name="checkbox locked" tool_tip="Previene que el objeto sea movido o borrado. Suele ser útil mientras se construye, para prevenir que se modifique sin querer."/> <check_box label="Material" name="Physical Checkbox Ctrl" tool_tip="Permite que el objeto pueda ser empujado y le afecte la gravedad."/> - <check_box label="Temporal" name="Temporary Checkbox Ctrl" tool_tip="Hace que el objeto se borre 1 minuto después de su creación."/> + <check_box label="Temporal" name="Temporary Checkbox Ctrl" tool_tip="Provoca que el objeto desaparezca 1 minuto después de ser creado"/> <check_box label="Inmaterial" name="Phantom Checkbox Ctrl" tool_tip="Hace que el objeto no colisiones con otros objetos o avatares."/> <text name="label position"> Posición (metros) @@ -246,48 +260,27 @@ <spinner label="X" name="Rot X"/> <spinner label="Y" name="Rot Y"/> <spinner label="Z" name="Rot Z"/> - <text name="label material"> - Material - </text> - <combo_box name="material"> - <combo_box.item name="Stone" label="Piedra" - /> - <combo_box.item name="Metal" label="Metal" - /> - <combo_box.item name="Glass" label="Vidrio" - /> - <combo_box.item name="Wood" label="Madera" - /> - <combo_box.item name="Flesh" label="Carne" - /> - <combo_box.item name="Plastic" label="Plástico" - /> - <combo_box.item name="Rubber" label="Goma" - /> - </combo_box> - <text name="label basetype"> - Tipo de objeto a construir - </text> <combo_box name="comboBaseType"> - <combo_box.item name="Box" label="Caja" - /> - <combo_box.item name="Cylinder" label="Cilindro" - /> - <combo_box.item name="Prism" label="Prisma" - /> - <combo_box.item name="Sphere" label="Esfera" - /> - <combo_box.item name="Torus" label="Toroide" - /> - <combo_box.item name="Tube" label="Tubo" - /> - <combo_box.item name="Ring" label="Cono truncado" - /> - <combo_box.item name="Sculpted" label="Sculpted" - /> + <combo_box.item label="Caja" name="Box"/> + <combo_box.item label="Cilindro" name="Cylinder"/> + <combo_box.item label="Prisma" name="Prism"/> + <combo_box.item label="Esfera" name="Sphere"/> + <combo_box.item label="Toroide" name="Torus"/> + <combo_box.item label="Tubo" name="Tube"/> + <combo_box.item label="Cono truncado" name="Ring"/> + <combo_box.item label="Sculpted" name="Sculpted"/> + </combo_box> + <combo_box name="material"> + <combo_box.item label="Piedra" name="Stone"/> + <combo_box.item label="Metal" name="Metal"/> + <combo_box.item label="Vidrio" name="Glass"/> + <combo_box.item label="Madera" name="Wood"/> + <combo_box.item label="Carne" name="Flesh"/> + <combo_box.item label="Plástico" name="Plastic"/> + <combo_box.item label="Goma" name="Rubber"/> </combo_box> <text name="text cut"> - Corte: Inicio y Fin + Corte (inicio/fin) </text> <spinner label="I" name="cut begin"/> <spinner label="F" name="cut end"/> @@ -301,17 +294,13 @@ Forma del hueco </text> <combo_box name="hole"> - <combo_box.item name="Default" label="Por defecto" - /> - <combo_box.item name="Circle" label="Círculo" - /> - <combo_box.item name="Square" label="Cuadrado" - /> - <combo_box.item name="Triangle" label="Triángulo" - /> + <combo_box.item label="Por defecto" name="Default"/> + <combo_box.item label="Círculo" name="Circle"/> + <combo_box.item label="Cuadrado" name="Square"/> + <combo_box.item label="Triángulo" name="Triangle"/> </combo_box> <text name="text twist"> - Torsión: Inicio y Fin + Torsión (inicio/fin) </text> <spinner label="I" name="Twist Begin"/> <spinner label="F" name="Twist End"/> @@ -329,13 +318,13 @@ <spinner label="X" name="Shear X"/> <spinner label="Y" name="Shear Y"/> <text name="advanced_cut"> - Corte del perfil: Inicio y Fin + Corte del perfil (inicio/fin) </text> <text name="advanced_dimple"> - Horadar: Inicio y Fin + Horadar (inicio/fin) </text> <text name="advanced_slice"> - Cortar: Inicio y Fin + Cortar (inicio/fin) </text> <spinner label="I" name="Path Limit Begin"/> <spinner label="F" name="Path Limit End"/> @@ -351,22 +340,17 @@ Giros </text> <texture_picker label="Textura para sculpted" name="sculpt texture control" tool_tip="Pulse para elegir una imagen"/> - <check_box label="Espejo" name="sculpt mirror control" tool_tip="Girar el prim sculpted siguiendo el eje X."/> - <check_box label="Dentro-Fuera" name="sculpt invert control" tool_tip="Invertir los valores de los prims sculpted, haciendo aparecer fuera lo de dentro."/> + <check_box label="Espejo" name="sculpt mirror control" tool_tip="Girar el prim sculpted siguiendo el eje X"/> + <check_box label="Dentro-Fuera" name="sculpt invert control" tool_tip="Invertir los valores de los prims sculpted, haciendo aparecer fuera lo de dentro"/> <text name="label sculpt type"> Tipo de unión </text> <combo_box name="sculpt type control"> - <combo_box.item name="None" label="(ninguna)" - /> - <combo_box.item name="Sphere" label="Esfera" - /> - <combo_box.item name="Torus" label="Toroide" - /> - <combo_box.item name="Plane" label="Plano" - /> - <combo_box.item name="Cylinder" label="Cilindro" - /> + <combo_box.item label="(ninguna)" name="None"/> + <combo_box.item label="Esfera" name="Sphere"/> + <combo_box.item label="Toroide" name="Torus"/> + <combo_box.item label="Plano" name="Plane"/> + <combo_box.item label="Cilindro" name="Cylinder"/> </combo_box> </panel> <panel label="Caracter." name="Features"> @@ -376,7 +360,7 @@ <text name="edit_object"> Editar las características del objeto: </text> - <check_box label="Flexibilidad" name="Flexible1D Checkbox Ctrl" tool_tip="Permite que el objeto flexione en el eje Z. (Sólo del lado del cliente)"/> + <check_box label="Flexibilidad" name="Flexible1D Checkbox Ctrl" tool_tip="Permite que el objeto flexione en el eje Z (sólo del lado del cliente)"/> <spinner label="Blandura" name="FlexNumSections"/> <spinner label="Gravedad" name="FlexGravity"/> <spinner label="Fricción" name="FlexFriction"/> @@ -386,86 +370,70 @@ <spinner label="Fuerza en Y" name="FlexForceY"/> <spinner label="Fuerza en Z" name="FlexForceZ"/> <check_box label="Luz" name="Light Checkbox Ctrl" tool_tip="Hace que el objeto emita luz"/> - <text name="label color"> - Color - </text> - <color_swatch label="" name="colorswatch" tool_tip="Pulse para abrir el selector de color"/> + <color_swatch label="" name="colorswatch" tool_tip="Pulsa para abrir el selector de color"/> + <texture_picker label="" name="light texture control" tool_tip="Pulsa para elegir una proyección de imagen (sólo tiene efecto con renderización deferida activada)"/> <spinner label="Intensidad" name="Light Intensity"/> + <spinner label="FOV" name="Light FOV"/> <spinner label="Radio" name="Light Radius"/> + <spinner label="Visión" name="Light Focus"/> <spinner label="Atenuación" name="Light Falloff"/> + <spinner label="Ambiental" name="Light Ambiance"/> </panel> <panel label="Textura" name="Texture"> + <panel.string name="string repeats per meter"> + Repeticiones por m. + </panel.string> + <panel.string name="string repeats per face"> + Repeticiones por cara + </panel.string> <texture_picker label="Textura" name="texture control" tool_tip="Pulse para elegir una imagen"/> - <color_swatch label="Color" name="colorswatch" tool_tip="Pulse para abrir el selector de color"/> + <color_swatch label="Color" name="colorswatch" tool_tip="Pulsa para abrir el selector de color"/> <text name="color trans"> Transparencia % </text> <text name="glow label"> Resplandor </text> - <check_box label="Brillo al máximo" name="checkbox fullbright" bottom_delta="-21"/> + <check_box bottom_delta="-21" label="Brillo al +máximo" name="checkbox fullbright"/> <text name="tex gen"> Detallado </text> <combo_box name="combobox texgen" width="86"> - <combo_box.item name="Default" label="Por defecto" - /> - <combo_box.item name="Planar" label="Plano" - /> + <combo_box.item label="Por defecto" name="Default"/> + <combo_box.item label="Plano" name="Planar"/> </combo_box> <text name="label shininess"> Brillantez </text> <combo_box name="combobox shininess"> - <combo_box.item name="None" label="Ninguna" - /> - <combo_box.item name="Low" label="Baja" - /> - <combo_box.item name="Medium" label="Media" - /> - <combo_box.item name="High" label="Alta" - /> + <combo_box.item label="Ninguna" name="None"/> + <combo_box.item label="Baja" name="Low"/> + <combo_box.item label="Media" name="Medium"/> + <combo_box.item label="Alta" name="High"/> </combo_box> <text name="label bumpiness"> Relieve </text> <combo_box name="combobox bumpiness"> - <combo_box.item name="None" label="Ninguno" - /> - <combo_box.item name="Brightness" label="Brillo" - /> - <combo_box.item name="Darkness" label="Oscuro" - /> - <combo_box.item name="woodgrain" label="grano de madera" - /> - <combo_box.item name="bark" label="corteza" - /> - <combo_box.item name="bricks" label="ladrillos" - /> - <combo_box.item name="checker" label="cajero" - /> - <combo_box.item name="concrete" label="cemento" - /> - <combo_box.item name="crustytile" label="azulejería" - /> - <combo_box.item name="cutstone" label="piedra cortada" - /> - <combo_box.item name="discs" label="discos" - /> - <combo_box.item name="gravel" label="grava" - /> - <combo_box.item name="petridish" label="placa de Petri" - /> - <combo_box.item name="siding" label="revestimiento" - /> - <combo_box.item name="stonetile" label="baldosa de piedra" - /> - <combo_box.item name="stucco" label="estuco" - /> - <combo_box.item name="suction" label="succión" - /> - <combo_box.item name="weave" label="tejido" - /> + <combo_box.item label="Ninguno" name="None"/> + <combo_box.item label="Brillo" name="Brightness"/> + <combo_box.item label="Oscuro" name="Darkness"/> + <combo_box.item label="grano de madera" name="woodgrain"/> + <combo_box.item label="corteza" name="bark"/> + <combo_box.item label="ladrillos" name="bricks"/> + <combo_box.item label="cajero" name="checker"/> + <combo_box.item label="cemento" name="concrete"/> + <combo_box.item label="azulejería" name="crustytile"/> + <combo_box.item label="piedra cortada" name="cutstone"/> + <combo_box.item label="discos" name="discs"/> + <combo_box.item label="grava" name="gravel"/> + <combo_box.item label="placa de Petri" name="petridish"/> + <combo_box.item label="revestimiento" name="siding"/> + <combo_box.item label="baldosa de piedra" name="stonetile"/> + <combo_box.item label="estuco" name="stucco"/> + <combo_box.item label="succión" name="suction"/> + <combo_box.item label="tejido" name="weave"/> </combo_box> <text name="tex scale"> Repeticiones por cara @@ -474,31 +442,23 @@ <check_box label="Voltear" name="checkbox flip s"/> <spinner label="Vertical (V)" name="TexScaleV"/> <check_box label="Voltear" name="checkbox flip t"/> - <text name="tex rotate"> - Rotación (grados) - </text> - <string name="string repeats per meter"> - Repeticiones por m. - </string> - <string name="string repeats per face"> - Repeticiones por cara - </string> - <text name="rpt"> - Repeticiones por m. - </text> - <spinner left="118" name="TexRot" width="62" /> - <spinner left="118" name="rptctrl" width="62" /> - <button label="Aplicar" label_selected="Aplicar" name="button apply" left_delta="72"/> + <spinner label="Rotación" left="118" name="TexRot" width="62"/> + <spinner label="Repeticiones / Metro" left="118" name="rptctrl" width="62"/> + <button label="Aplicar" label_selected="Aplicar" left_delta="72" name="button apply"/> <text name="tex offset"> Desplazar </text> <spinner label="Horizontal (U)" name="TexOffsetU"/> <spinner label="Vertical (V)" name="TexOffsetV"/> - <text name="textbox autofix" width="180"> - Centrar la textura para los media -(primero debe subirla) - </text> - <button label="Alinear" label_selected="Alinear" name="button align" left="180"/> + <panel name="Add_Media"> + <text name="media_tex"> + Media + </text> + <button name="add_media" tool_tip="Añadir un media"/> + <button name="delete_media" tool_tip="Borrar esta textura para media"/> + <button name="edit_media" tool_tip="Editar este media"/> + <button label="Centrar" label_selected="Centrar los media" name="button align" tool_tip="Centrar esta textura para media (primero debe cargarse)"/> + </panel> </panel> <panel label="Contenido " name="Contents"> <button label="Script nuevo" label_selected="Script nuevo" name="button new script"/> @@ -513,59 +473,26 @@ Precio: [PRICE] L$ por [AREA] m² </text> <text name="label_area"> - Superficie: [AREA] m² + Área: [AREA] m² </text> - <button label="Acerca del terreno..." label_selected="Acerca del terreno..." name="button about land" width="140"/> - <check_box label="Mostrar los propietarios" name="checkbox show owners" tool_tip="El color de las parcelas es según su propietario: Verde = Su terreno Agua = Terreno de sus grupos Rojo = Propiedad de otros Amarillo = En venta Morado = Para subasta Gris = Público"/> - <button label="?" label_selected="?" name="button show owners help" left_delta="150"/> + <button label="Acerca del terreno" label_selected="Acerca del terreno" name="button about land" width="140"/> + <check_box label="Mostrar los propietarios" name="checkbox show owners" tool_tip="El color de las parcelas es según su propietario: + +Verde = Su terreno +Agua = Terreno de sus grupos +Rojo = Propiedad de otros +Amarillo = En venta +Morado = Para subasta +Gris = Público"/> <text name="label_parcel_modify"> Modificar la parcela </text> - <button label="Subdividir" label_selected="Subdividir" name="button subdivide land" width="140"/> - <button label="Unir" label_selected="Unir" name="button join land" width="140"/> + <button label="Dividir" label_selected="Dividir" name="button subdivide land" width="140"/> + <button label="Inscribirse" label_selected="Inscribirse" name="button join land" width="140"/> <text name="label_parcel_trans"> Transacciones de terreno </text> <button label="Comprar terreno" label_selected="Comprar terreno" name="button buy land" width="140"/> <button label="Abandonar el terreno" label_selected="Abandonar el terreno" name="button abandon land" width="140"/> </panel> - <floater.string name="status_rotate"> - Arrastre las bandas de color para girar el objeto - </floater.string> - <floater.string name="status_scale"> - Pulse y arrastre para estirar el lado seleccionado - </floater.string> - <floater.string name="status_move"> - Arrastrar para mover, Mayús.+arrastrar para copiar - </floater.string> - <floater.string name="status_modifyland"> - Mantenga pulsado para modificar el terreno - </floater.string> - <floater.string name="status_camera"> - Pulse y arrastre para cambiar el punto de vista - </floater.string> - <floater.string name="status_grab"> - Arrastre para mover objetos: Ctrl, verticalmente; Ctrl-Mayús., para girarlos. - </floater.string> - <floater.string name="status_place"> - Pulse en el mundo para construir - </floater.string> - <floater.string name="status_selectland"> - Pulse y arrastre para seleccionar el terreno - </floater.string> - <floater.string name="grid_screen_text"> - Pantalla - </floater.string> - <floater.string name="grid_local_text"> - Local - </floater.string> - <floater.string name="grid_world_text"> - Mundo - </floater.string> - <floater.string name="grid_reference_text"> - Referencia - </floater.string> - <floater.string name="grid_attachment_text"> - Añadido - </floater.string> </floater> diff --git a/indra/newview/skins/default/xui/es/floater_top_objects.xml b/indra/newview/skins/default/xui/es/floater_top_objects.xml index 29ae9991af..d2311c734b 100644 --- a/indra/newview/skins/default/xui/es/floater_top_objects.xml +++ b/indra/newview/skins/default/xui/es/floater_top_objects.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> -<floater name="top_objects" title="CARGANDO..."> +<floater name="top_objects" title="Objetos superiores"> <text name="title_text"> Cargando... </text> @@ -23,13 +23,13 @@ </text> <button label="Filtro" name="filter_object_btn" width="115"/> <text name="owner_name_text" width="130"> - Nombre del propietario: + Propietario: </text> <button label="Filtro" name="filter_owner_btn" width="115"/> <button label="Devolver lo seleccionado" name="return_selected_btn" width="170"/> - <button label="Devolver todo" name="return_all_btn" left="190"/> + <button label="Devolver todo" left="190" name="return_all_btn"/> <button label="Desactivar lo seleccionado" name="disable_selected_btn" width="170"/> - <button label="Desactivar todo" name="disable_all_btn" left="190"/> + <button label="Desactivar todo" left="190" name="disable_all_btn"/> <button label="Actualizar" name="refresh_btn" width="115"/> <string name="top_scripts_title"> Scripts según su uso diff --git a/indra/newview/skins/default/xui/es/floater_tos.xml b/indra/newview/skins/default/xui/es/floater_tos.xml index d46c84cb03..cbacce304c 100644 --- a/indra/newview/skins/default/xui/es/floater_tos.xml +++ b/indra/newview/skins/default/xui/es/floater_tos.xml @@ -4,8 +4,7 @@ <button label="Cancelar" label_selected="Cancelar" name="Cancel"/> <check_box label="Estoy de acuerdo con las Condiciones del Servicio" name="agree_chk"/> <text name="tos_heading"> - Por favor, lea cuidadosamente las siguientes Condiciones del Servicio. Si quiere seguir -iniciando sesión en [SECOND_LIFE], debe aceptar el acuerdo. + Por favor, lee detenidamente las siguientes Condiciones del Servicio. Para conectarte a [SECOND_LIFE], debes aceptar este acuerdo. </text> <text_editor name="tos_text"> TOS_TEXT diff --git a/indra/newview/skins/default/xui/es/floater_voice_controls.xml b/indra/newview/skins/default/xui/es/floater_voice_controls.xml new file mode 100644 index 0000000000..dfd03c6f83 --- /dev/null +++ b/indra/newview/skins/default/xui/es/floater_voice_controls.xml @@ -0,0 +1,25 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<floater name="floater_voice_controls" title="Controles de Voz"> + <string name="title_nearby"> + CHAT DE VOZ + </string> + <string name="title_group"> + Multiconferencia de voz con [GROUP] + </string> + <string name="title_adhoc"> + Multiconferencia de voz + </string> + <string name="title_peer_2_peer"> + Llamada: [NAME] + </string> + <string name="no_one_near"> + No hay nadie cerca + </string> + <panel name="control_panel"> + <layout_stack> + <layout_panel name="leave_btn_panel"> + <button label="Colgar" name="leave_call_btn"/> + </layout_panel> + </layout_stack> + </panel> +</floater> diff --git a/indra/newview/skins/default/xui/es/floater_water.xml b/indra/newview/skins/default/xui/es/floater_water.xml index c86e49a355..9996860137 100644 --- a/indra/newview/skins/default/xui/es/floater_water.xml +++ b/indra/newview/skins/default/xui/es/floater_water.xml @@ -11,20 +11,20 @@ <text name="BHText"> Color del agua </text> - <button label="?" name="WaterFogColorHelp" left="175" /> - <color_swatch label="" name="WaterFogColor" tool_tip="Pulse para abrir el selector de color"/> + <button label="?" left="175" name="WaterFogColorHelp"/> + <color_swatch label="" name="WaterFogColor" tool_tip="Pulsa para abrir el selector de color"/> <text name="WaterFogDensText"> Transparencia </text> - <button label="?" name="WaterFogDensityHelp" left="175" /> + <button label="?" left="175" name="WaterFogDensityHelp"/> <text name="WaterUnderWaterFogModText"> Modificar la claridad del agua </text> - <button label="?" name="WaterUnderWaterFogModHelp" left="175" /> + <button label="?" left="175" name="WaterUnderWaterFogModHelp"/> <text name="BDensText"> Tamaño de las ondulaciones </text> - <button label="?" name="WaterNormalScaleHelp" left="405"/> + <button label="?" left="405" name="WaterNormalScaleHelp"/> <text name="BHText2"> 1 </text> @@ -37,29 +37,29 @@ <text name="HDText"> Escala de Fresnel </text> - <button label="?" name="WaterFresnelScaleHelp" left="405"/> + <button label="?" left="405" name="WaterFresnelScaleHelp"/> <text name="FresnelOffsetText"> Coeficiente de reflexión </text> - <button label="?" name="WaterFresnelOffsetHelp" left="405"/> + <button label="?" left="405" name="WaterFresnelOffsetHelp"/> <text name="DensMultText"> Refracción de la superficie </text> - <button label="?" name="WaterScaleAboveHelp" left="640"/> + <button label="?" left="640" name="WaterScaleAboveHelp"/> <text name="WaterScaleBelowText"> Refracción bajo la superficie </text> - <button label="?" name="WaterScaleBelowHelp" left="640"/> + <button label="?" left="640" name="WaterScaleBelowHelp"/> <text name="MaxAltText"> Desenfoque </text> - <button label="?" name="WaterBlurMultiplierHelp" left="640"/> + <button label="?" left="640" name="WaterBlurMultiplierHelp"/> </panel> <panel label="Imagen" name="Waves"> <text name="BHText"> Sentido de la onda grande </text> - <button label="?" name="WaterWave1Help" left="170"/> + <button label="?" left="170" name="WaterWave1Help"/> <text name="WaterWave1DirXText"> X </text> @@ -69,7 +69,7 @@ <text name="BHText2"> Sentido de la onda pequeña </text> - <button label="?" name="WaterWave2Help" left="170"/> + <button label="?" left="170" name="WaterWave2Help"/> <text name="WaterWave2DirXText"> X </text> diff --git a/indra/newview/skins/default/xui/es/floater_whitelist_entry.xml b/indra/newview/skins/default/xui/es/floater_whitelist_entry.xml new file mode 100644 index 0000000000..71b185aa0a --- /dev/null +++ b/indra/newview/skins/default/xui/es/floater_whitelist_entry.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<floater name="whitelist_entry"> + <text name="media_label"> + Escribe una URL o un rango de URL para añadirla a lista de dominios autorizados + </text> + <line_editor name="whitelist_entry" tool_tip="Añade una URL o un rango de URL a la Lista Blanca"/> + <button label="OK" name="ok_btn"/> + <button label="Cancelar" name="cancel_btn"/> +</floater> diff --git a/indra/newview/skins/default/xui/es/floater_world_map.xml b/indra/newview/skins/default/xui/es/floater_world_map.xml index 4d7337bef7..37c4e2a377 100644 --- a/indra/newview/skins/default/xui/es/floater_world_map.xml +++ b/indra/newview/skins/default/xui/es/floater_world_map.xml @@ -1,57 +1,69 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="worldmap" title="MAPA DEL MUNDO"> - <tab_container name="maptab"> - <panel label="Objetos" name="objects_mapview"/> - <panel label="Terreno" name="terrain_mapview"/> - </tab_container> - <text name="you_label"> - Usted - </text> - <text name="home_label"> - Base - </text> - <text name="auction_label"> - Subasta - </text> - <text name="land_for_sale_label"> - Terreno en venta - </text> - <button label="Ir a la Base" label_selected="Ir a la Base" name="Go Home" tool_tip="Teleportar a su Base"/> - <check_box label="Residente" name="people_chk"/> - <check_box label="Punto de Info" name="infohub_chk"/> - <check_box label="Punto de Teleporte" name="telehubchk"/> - <check_box label="Terreno en venta" name="land_for_sale_chk"/> - <text name="events_label"> - Eventos: - </text> - <check_box label="'PG'" name="event_chk"/> - <check_box label="'Mature'" name="event_mature_chk"/> - <check_box label="'Adult'" name="event_adult_chk"/> - <combo_box label="Amigos conectados" name="friend combo" tool_tip="Amigo a mostrar en el mapa"> - <combo_box.item name="item1" label="Amigos conectados" /> - </combo_box> - <combo_box label="Hitos" name="landmark combo" tool_tip="Hito a mostrar en el mapa"> - <combo_box.item name="item1" label="Hitos" /> - </combo_box> - <line_editor label="Buscar por el nombre de la región" name="location" tool_tip="Escriba el nombre de una región"/> - <button label="Buscar" name="DoSearch" tool_tip="Buscar una región"/> - <text name="search_label"> - Resultados de la búsqueda: - </text> - <scroll_list name="search_results"> - <column label="" name="icon"/> - <column label="" name="sim_name"/> - </scroll_list> - <text name="location_label"> - Localización: - </text> - <spinner name="spin x" tool_tip="Coordenada X de la posición a mostrar en el mapa"/> - <spinner name="spin y" tool_tip="Coordenada Y de la posición a mostrar en el mapa"/> - <spinner name="spin z" tool_tip="Coordenada Z de la posición a mostrar en el mapa"/> - <button label="Teleportar" label_selected="Teleportar" name="Teleport" tool_tip="Teleportarse a la localización elegida"/> - <button label="Mostrar el destino" label_selected="Mostrar el destino" name="Show Destination" tool_tip="Centrar el mapa en la localización elegida"/> - <button label="Limpiar" label_selected="Limpiar" name="Clear" tool_tip="Parar la búsqueda"/> - <button label="Mostrar mi posición" label_selected="Mostrar mi posición" name="Show My Location" tool_tip="Centrar el mapa en la posición de su avatar"/> - <button label="Copiar la SLurl al portapapeles" name="copy_slurl" tool_tip="Copiar la posición actual como una SLurl, para usarla en la web."/> - <slider label="Zoom" name="zoom slider"/> + <panel name="layout_panel_1"> + <text name="events_label"> + Leyenda + </text> + </panel> + <panel> + <button label="Mostrar mi posición" label_selected="Mostrar mi posición" name="Show My Location" tool_tip="Centrar el mapa en la posición de mi avatar"/> + <text name="person_label"> + Yo + </text> + <check_box label="Residente" name="people_chk"/> + <check_box label="Punto de Info" name="infohub_chk"/> + <text name="infohub_label"> + Punto de Info + </text> + <check_box label="Terreno en venta" name="land_for_sale_chk"/> + <text name="land_sale_label"> + Venta de terreno + </text> + <text name="auction_label"> + por el propietario + </text> + <button label="Ir a la Base" label_selected="Ir a la Base" name="Go Home" tool_tip="Teleportar a mi Base"/> + <text name="Home_label"> + Base + </text> + <text name="events_label"> + Eventos: + </text> + <check_box label="'PG'" name="event_chk"/> + <check_box initial_value="true" label="'Mature'" name="event_mature_chk"/> + <text name="mature_label"> + Mature + </text> + <check_box label="'Adult'" name="event_adult_chk"/> + </panel> + <panel> + <text name="find_on_map_label"> + Encontrar en el mapa + </text> + </panel> + <panel> + <combo_box label="Amigos conectados" name="friend combo" tool_tip="Ver a los amigos en el mapa"> + <combo_box.item label="Mis amigos conectados" name="item1"/> + </combo_box> + <combo_box label="Mis hitos" name="landmark combo" tool_tip="Hito a ver en el mapa"> + <combo_box.item label="Mis hitos" name="item1"/> + </combo_box> + <search_editor label="Regiones alfabéticamente" name="location" tool_tip="Escriba el nombre de una región"/> + <button label="Encontrar" name="DoSearch" tool_tip="Buscar una región"/> + <scroll_list name="search_results"> + <scroll_list.columns label="" name="icon"/> + <scroll_list.columns label="" name="sim_name"/> + </scroll_list> + <button label="Teleportar" label_selected="Teleportar" name="Teleport" tool_tip="Teleportarse a la localización elegida"/> + <button label="Copiar la SLurl" name="copy_slurl" tool_tip="Copiar la SLurl de esta posición para usarla en una web."/> + <button label="Ver lo elegido" label_selected="Mostrar el destino" name="Show Destination" tool_tip="Centrar el mapa en la localización elegida"/> + </panel> + <panel> + <text name="zoom_label"> + Zoom + </text> + </panel> + <panel> + <slider label="Zoom" name="zoom slider"/> + </panel> </floater> diff --git a/indra/newview/skins/default/xui/es/inspect_avatar.xml b/indra/newview/skins/default/xui/es/inspect_avatar.xml new file mode 100644 index 0000000000..dff09aaace --- /dev/null +++ b/indra/newview/skins/default/xui/es/inspect_avatar.xml @@ -0,0 +1,21 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<!-- + Not can_close / no title to avoid window chrome + Single instance - only have one at a time, recycle it each spawn +--> +<floater name="inspect_avatar"> + <string name="Subtitle"> + [AGE] + </string> + <string name="Details"> + [SL_PROFILE] + </string> + <slider name="volume_slider" tool_tip="Volumen de la voz" value="0.5"/> + <button label="Añadir como amigo" name="add_friend_btn"/> + <button label="MI" name="im_btn"/> + <button label="Más" name="view_profile_btn"/> + <panel name="moderator_panel"> + <button label="Desactivar la voz" name="disable_voice"/> + <button label="Activar la voz" name="enable_voice"/> + </panel> +</floater> diff --git a/indra/newview/skins/default/xui/es/inspect_group.xml b/indra/newview/skins/default/xui/es/inspect_group.xml new file mode 100644 index 0000000000..ba10b19f41 --- /dev/null +++ b/indra/newview/skins/default/xui/es/inspect_group.xml @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<!-- + Not can_close / no title to avoid window chrome + Single instance - only have one at a time, recycle it each spawn +--> +<floater name="inspect_group"> + <string name="PrivateGroup"> + Grupo privado + </string> + <string name="FreeToJoin"> + Inscripción gratuita + </string> + <string name="CostToJoin"> + Inscribirse cuesta [AMOUNT] L$ + </string> + <string name="YouAreMember"> + Eres miembro + </string> + <button label="Inscribirse" name="join_btn"/> + <button label="Abandonar" name="leave_btn"/> + <button label="Ver el perfil" name="view_profile_btn"/> +</floater> diff --git a/indra/newview/skins/default/xui/es/inspect_object.xml b/indra/newview/skins/default/xui/es/inspect_object.xml new file mode 100644 index 0000000000..6a831def07 --- /dev/null +++ b/indra/newview/skins/default/xui/es/inspect_object.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<!-- + Not can_close / no title to avoid window chrome + Single instance - only have one at a time, recycle it each spawn +--> +<floater name="inspect_object"> + <string name="Creator"> + Por [CREATOR] + </string> + <string name="CreatorAndOwner"> + por [CREATOR] +propietario [OWNER] + </string> + <string name="Price"> + [AMOUNT] L$ + </string> + <string name="PriceFree"> + ¡Gratis! + </string> + <string name="Touch"> + Tocar + </string> + <string name="Sit"> + Sentarme + </string> + <button label="Comprar" name="buy_btn"/> + <button label="Pagar" name="pay_btn"/> + <button label="Coger una copia" name="take_free_copy_btn"/> + <button label="Tocar" name="touch_btn"/> + <button label="Sentarme" name="sit_btn"/> + <button label="Abrir" name="open_btn"/> + <icon name="secure_browsing" tool_tip="Navegación segura"/> + <button label="Más" name="more_info_btn"/> +</floater> diff --git a/indra/newview/skins/default/xui/es/inspect_remote_object.xml b/indra/newview/skins/default/xui/es/inspect_remote_object.xml new file mode 100644 index 0000000000..f814e84a6f --- /dev/null +++ b/indra/newview/skins/default/xui/es/inspect_remote_object.xml @@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<!-- + Not can_close / no title to avoid window chrome + Single instance - only have one at a time, recycle it each spawn +--> +<floater name="inspect_remote_object"> + <text name="object_owner_label"> + Propietario: + </text> + <button label="Mapa" name="map_btn"/> + <button label="Ignorar" name="block_btn"/> + <button label="Cerrar" name="close_btn"/> +</floater> diff --git a/indra/newview/skins/default/xui/es/menu_attachment_other.xml b/indra/newview/skins/default/xui/es/menu_attachment_other.xml new file mode 100644 index 0000000000..12acb572dc --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_attachment_other.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<!-- *NOTE: See also menu_avatar_other.xml --> +<context_menu name="Avatar Pie"> + <menu_item_call label="Ver el perfil" name="Profile..."/> + <menu_item_call label="Añadir como amigo" name="Add Friend"/> + <menu_item_call label="MI" name="Send IM..."/> + <menu_item_call label="Llamada" name="Call"/> + <menu_item_call label="Invitar al grupo" name="Invite..."/> + <menu_item_call label="Ignorar" name="Avatar Mute"/> + <menu_item_call label="Denunciar" name="abuse"/> + <menu_item_call label="Congelar" name="Freeze..."/> + <menu_item_call label="Expulsar" name="Eject..."/> + <menu_item_call label="Depurar" name="Debug..."/> + <menu_item_call label="Acercar el zoom" name="Zoom In"/> + <menu_item_call label="Pagar" name="Pay..."/> + <menu_item_call label="Perfil del objeto" name="Object Inspect"/> +</context_menu> diff --git a/indra/newview/skins/default/xui/es/menu_attachment_self.xml b/indra/newview/skins/default/xui/es/menu_attachment_self.xml new file mode 100644 index 0000000000..c5afb99d49 --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_attachment_self.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<context_menu name="Attachment Pie"> + <menu_item_call label="Tocar" name="Attachment Object Touch"/> + <menu_item_call label="Editar" name="Edit..."/> + <menu_item_call label="Quitar" name="Detach"/> + <menu_item_call label="Soltar" name="Drop"/> + <menu_item_call label="Levantarse" name="Stand Up"/> + <menu_item_call label="Mi apariencia" name="Appearance..."/> + <menu_item_call label="Mis amigos" name="Friends..."/> + <menu_item_call label="Mis grupos" name="Groups..."/> + <menu_item_call label="Mi perfil" name="Profile..."/> +</context_menu> diff --git a/indra/newview/skins/default/xui/es/menu_avatar_icon.xml b/indra/newview/skins/default/xui/es/menu_avatar_icon.xml new file mode 100644 index 0000000000..fe7331a108 --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_avatar_icon.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<menu name="Avatar Icon Menu"> + <menu_item_call label="Ver el perfil" name="Show Profile"/> + <menu_item_call label="Enviar un MI..." name="Send IM"/> + <menu_item_call label="Añadir como amigo..." name="Add Friend"/> + <menu_item_call label="Quitar de los amigos..." name="Remove Friend"/> +</menu> diff --git a/indra/newview/skins/default/xui/es/menu_avatar_other.xml b/indra/newview/skins/default/xui/es/menu_avatar_other.xml new file mode 100644 index 0000000000..83801e872d --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_avatar_other.xml @@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<!-- *NOTE: See also menu_attachment_other.xml --> +<context_menu name="Avatar Pie"> + <menu_item_call label="Ver el perfil" name="Profile..."/> + <menu_item_call label="Añadir como amigo" name="Add Friend"/> + <menu_item_call label="MI" name="Send IM..."/> + <menu_item_call label="Llamada" name="Call"/> + <menu_item_call label="Invitar al grupo" name="Invite..."/> + <menu_item_call label="Ignorar" name="Avatar Mute"/> + <menu_item_call label="Denunciar" name="abuse"/> + <menu_item_call label="Congelar" name="Freeze..."/> + <menu_item_call label="Expulsar" name="Eject..."/> + <menu_item_call label="Depurar" name="Debug..."/> + <menu_item_call label="Acercar el zoom" name="Zoom In"/> + <menu_item_call label="Pagar" name="Pay..."/> +</context_menu> diff --git a/indra/newview/skins/default/xui/es/menu_avatar_self.xml b/indra/newview/skins/default/xui/es/menu_avatar_self.xml new file mode 100644 index 0000000000..8d3790a4d1 --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_avatar_self.xml @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<context_menu name="Self Pie"> + <menu_item_call label="Levantarse" name="Stand Up"/> + <context_menu label="Quitarse >" name="Take Off >"> + <context_menu label="Ropa >" name="Clothes >"> + <menu_item_call label="Camisa" name="Shirt"/> + <menu_item_call label="Pantalón" name="Pants"/> + <menu_item_call label="Falda" name="Skirt"/> + <menu_item_call label="Zapatos" name="Shoes"/> + <menu_item_call label="Calcetines" name="Socks"/> + <menu_item_call label="Chaqueta" name="Jacket"/> + <menu_item_call label="Guantes" name="Gloves"/> + <menu_item_call label="Camiseta" name="Self Undershirt"/> + <menu_item_call label="Ropa interior" name="Self Underpants"/> + <menu_item_call label="Tatuaje" name="Self Tattoo"/> + <menu_item_call label="Alfa" name="Self Alpha"/> + <menu_item_call label="Toda la ropa" name="All Clothes"/> + </context_menu> + <context_menu label="HUD >" name="Object Detach HUD"/> + <context_menu label="Quitarse >" name="Object Detach"/> + <menu_item_call label="Quitarse todo" name="Detach All"/> + </context_menu> + <menu_item_call label="Mi apariencia" name="Appearance..."/> + <menu_item_call label="Mis amigos" name="Friends..."/> + <menu_item_call label="Mis grupos" name="Groups..."/> + <menu_item_call label="Mi perfil" name="Profile..."/> +</context_menu> diff --git a/indra/newview/skins/default/xui/es/menu_bottomtray.xml b/indra/newview/skins/default/xui/es/menu_bottomtray.xml new file mode 100644 index 0000000000..8169563882 --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_bottomtray.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<menu name="hide_camera_move_controls_menu"> + <menu_item_check label="Botón Gestos" name="ShowGestureButton"/> + <menu_item_check label="Botón Moverse" name="ShowMoveButton"/> + <menu_item_check label="Botón Vista" name="ShowCameraButton"/> + <menu_item_check label="Botón Foto" name="ShowSnapshotButton"/> + <menu_item_call label="Cortar" name="NearbyChatBar_Cut"/> + <menu_item_call label="Copiar" name="NearbyChatBar_Copy"/> + <menu_item_call label="Pegar" name="NearbyChatBar_Paste"/> + <menu_item_call label="Borrar" name="NearbyChatBar_Delete"/> + <menu_item_call label="Seleccionar todo" name="NearbyChatBar_Select_All"/> +</menu> diff --git a/indra/newview/skins/default/xui/es/menu_favorites.xml b/indra/newview/skins/default/xui/es/menu_favorites.xml new file mode 100644 index 0000000000..c8a7858ddb --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_favorites.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<menu name="Popup"> + <menu_item_call label="Teleportarse" name="Teleport To Landmark"/> + <menu_item_call label="Ver/Editar el hito" name="Landmark Open"/> + <menu_item_call label="Copiar la SLurl" name="Copy slurl"/> + <menu_item_call label="Mostrar en el mapa" name="Show On Map"/> + <menu_item_call label="Copiar" name="Landmark Copy"/> + <menu_item_call label="Pegar" name="Landmark Paste"/> + <menu_item_call label="Borrar" name="Delete"/> +</menu> diff --git a/indra/newview/skins/default/xui/es/menu_gesture_gear.xml b/indra/newview/skins/default/xui/es/menu_gesture_gear.xml new file mode 100644 index 0000000000..24706eb2c8 --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_gesture_gear.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<menu name="menu_gesture_gear"> + <menu_item_call label="Añadir a / Quitar de los favoritos" name="activate"/> + <menu_item_call label="Copiar" name="copy_gesture"/> + <menu_item_call label="Pegar" name="paste"/> + <menu_item_call label="Copiar la UUID" name="copy_uuid"/> + <menu_item_call label="Añadir al vestuario actual" name="save_to_outfit"/> + <menu_item_call label="Editar" name="edit_gesture"/> + <menu_item_call label="Inspeccionar" name="inspect"/> +</menu> diff --git a/indra/newview/skins/default/xui/es/menu_group_plus.xml b/indra/newview/skins/default/xui/es/menu_group_plus.xml new file mode 100644 index 0000000000..6b26ba42c4 --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_group_plus.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<menu name="menu_group_plus"> + <menu_item_call label="Entrar al grupo..." name="item_join"/> + <menu_item_call label="Grupo nuevo..." name="item_new"/> +</menu> diff --git a/indra/newview/skins/default/xui/es/menu_hide_navbar.xml b/indra/newview/skins/default/xui/es/menu_hide_navbar.xml new file mode 100644 index 0000000000..7fc1af00c5 --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_hide_navbar.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<menu name="hide_navbar_menu"> + <menu_item_check label="Mostrar la barra de navegación" name="ShowNavbarNavigationPanel"/> + <menu_item_check label="Mostrar la barra de favoritos" name="ShowNavbarFavoritesPanel"/> +</menu> diff --git a/indra/newview/skins/default/xui/es/menu_imchiclet_adhoc.xml b/indra/newview/skins/default/xui/es/menu_imchiclet_adhoc.xml new file mode 100644 index 0000000000..e11e9bdc58 --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_imchiclet_adhoc.xml @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<menu name="IMChiclet AdHoc Menu"> + <menu_item_call label="Acabar la sesión" name="End Session"/> +</menu> diff --git a/indra/newview/skins/default/xui/es/menu_imchiclet_group.xml b/indra/newview/skins/default/xui/es/menu_imchiclet_group.xml new file mode 100644 index 0000000000..a5e60ea40b --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_imchiclet_group.xml @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<menu name="IMChiclet Group Menu"> + <menu_item_call label="Información del grupo" name="Show Profile"/> + <menu_item_call label="Mostrar la sesión" name="Chat"/> + <menu_item_call label="Acabar la sesión" name="End Session"/> +</menu> diff --git a/indra/newview/skins/default/xui/es/menu_imchiclet_p2p.xml b/indra/newview/skins/default/xui/es/menu_imchiclet_p2p.xml new file mode 100644 index 0000000000..492801026c --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_imchiclet_p2p.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<menu name="IMChiclet P2P Menu"> + <menu_item_call label="Ver el perfil" name="Show Profile"/> + <menu_item_call label="Añadir como amigo" name="Add Friend"/> + <menu_item_call label="Mostrar la sesión" name="Send IM"/> + <menu_item_call label="Acabar la sesión" name="End Session"/> +</menu> diff --git a/indra/newview/skins/default/xui/es/menu_inspect_avatar_gear.xml b/indra/newview/skins/default/xui/es/menu_inspect_avatar_gear.xml new file mode 100644 index 0000000000..c6728f948d --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_inspect_avatar_gear.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="utf-8"?> +<menu name="Gear Menu"> + <menu_item_call label="Ver el perfil" name="view_profile"/> + <menu_item_call label="Añadir como amigo" name="add_friend"/> + <menu_item_call label="MI" name="im"/> + <menu_item_call label="Llamada" name="call"/> + <menu_item_call label="Teleportarse" name="teleport"/> + <menu_item_call label="Invitar al grupo" name="invite_to_group"/> + <menu_item_call label="Ignorar" name="block"/> + <menu_item_call label="Denunciar" name="report"/> + <menu_item_call label="Congelar" name="freeze"/> + <menu_item_call label="Expulsar" name="eject"/> + <menu_item_call label="Depurar" name="debug"/> + <menu_item_call label="Encontrar en el mapa" name="find_on_map"/> + <menu_item_call label="Acercar el zoom" name="zoom_in"/> + <menu_item_call label="Pagar" name="pay"/> +</menu> diff --git a/indra/newview/skins/default/xui/es/menu_inspect_object_gear.xml b/indra/newview/skins/default/xui/es/menu_inspect_object_gear.xml new file mode 100644 index 0000000000..af85b833e9 --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_inspect_object_gear.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="utf-8"?> +<menu name="Gear Menu"> + <menu_item_call label="Tocar" name="touch"/> + <menu_item_call label="Sentarse" name="sit"/> + <menu_item_call label="Pagar" name="pay"/> + <menu_item_call label="Comprar" name="buy"/> + <menu_item_call label="Tomar" name="take"/> + <menu_item_call label="Coger una copia" name="take_copy"/> + <menu_item_call label="Abrir" name="open"/> + <menu_item_call label="Editar" name="edit"/> + <menu_item_call label="Ponerse" name="wear"/> + <menu_item_call label="Denunciar" name="report"/> + <menu_item_call label="Ignorar" name="block"/> + <menu_item_call label="Acercar el zoom" name="zoom_in"/> + <menu_item_call label="Quitar" name="remove"/> + <menu_item_call label="Más información" name="more_info"/> +</menu> diff --git a/indra/newview/skins/default/xui/es/menu_inspect_self_gear.xml b/indra/newview/skins/default/xui/es/menu_inspect_self_gear.xml new file mode 100644 index 0000000000..cb8fb82f0d --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_inspect_self_gear.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="utf-8"?> +<menu name="Gear Menu"> + <menu_item_call label="Levantarse" name="stand_up"/> + <menu_item_call label="Mi apariencia" name="my_appearance"/> + <menu_item_call label="Mi perfil" name="my_profile"/> + <menu_item_call label="Mis amigos" name="my_friends"/> + <menu_item_call label="Mis grupos" name="my_groups"/> +</menu> diff --git a/indra/newview/skins/default/xui/es/menu_inventory.xml b/indra/newview/skins/default/xui/es/menu_inventory.xml index 28d47fce52..ae3eb1c845 100644 --- a/indra/newview/skins/default/xui/es/menu_inventory.xml +++ b/indra/newview/skins/default/xui/es/menu_inventory.xml @@ -12,7 +12,7 @@ <menu_item_call label="Script nuevo" name="New Script"/> <menu_item_call label="Nota nueva" name="New Note"/> <menu_item_call label="Gesto nuevo" name="New Gesture"/> - <menu name="New Clothes" label="Nueva ropa"> + <menu label="Ropas nuevas" name="New Clothes"> <menu_item_call label="Camisa nueva" name="New Shirt"/> <menu_item_call label="Pantalones nuevos" name="New Pants"/> <menu_item_call label="Zapatos nuevos" name="New Shoes"/> @@ -22,31 +22,47 @@ <menu_item_call label="Guantes nuevos" name="New Gloves"/> <menu_item_call label="Camiseta nueva" name="New Undershirt"/> <menu_item_call label="Ropa interior nueva" name="New Underpants"/> + <menu_item_call label="Nueva capa Alpha" name="New Alpha Mask"/> + <menu_item_call label="Tatuaje nuevo" name="New Tattoo"/> </menu> - <menu name="New Body Parts" label="Nuevas partes del cuerpo"> + <menu label="Nuevas partes del cuerpo" name="New Body Parts"> <menu_item_call label="Forma nueva" name="New Shape"/> <menu_item_call label="Piel nueva" name="New Skin"/> <menu_item_call label="Pelo nuevo" name="New Hair"/> <menu_item_call label="Ojos nuevos" name="New Eyes"/> </menu> + <menu label="Change Type" name="Change Type"> + <menu_item_call label="Por defecto" name="Default"/> + <menu_item_call label="Guantes" name="Gloves"/> + <menu_item_call label="Chaqueta" name="Jacket"/> + <menu_item_call label="Pantalón" name="Pants"/> + <menu_item_call label="Forma" name="Shape"/> + <menu_item_call label="Zapatos" name="Shoes"/> + <menu_item_call label="Camisa" name="Shirt"/> + <menu_item_call label="Falda" name="Skirt"/> + <menu_item_call label="Ropa interior" name="Underpants"/> + <menu_item_call label="Camiseta" name="Undershirt"/> + </menu> <menu_item_call label="Teleportar" name="Landmark Open"/> <menu_item_call label="Abrir" name="Animation Open"/> <menu_item_call label="Abrir" name="Sound Open"/> <menu_item_call label="Eliminar el ítem" name="Purge Item"/> <menu_item_call label="Restaurar el ítem" name="Restore Item"/> + <menu_item_call label="Ir al enlace" name="Goto Link"/> <menu_item_call label="Abrir" name="Open"/> <menu_item_call label="Propiedades" name="Properties"/> <menu_item_call label="Renombrar" name="Rename"/> <menu_item_call label="Copiar la UUID" name="Copy Asset UUID"/> <menu_item_call label="Copiar" name="Copy"/> <menu_item_call label="Pegar" name="Paste"/> + <menu_item_call label="Pegar como enlace" name="Paste As Link"/> <menu_item_call label="Borrar" name="Delete"/> <menu_item_call label="Quitarse los ítems" name="Take Off Items"/> <menu_item_call label="Añadir al vestuario" name="Add To Outfit"/> <menu_item_call label="Reemplazar el vestuario" name="Replace Outfit"/> <menu_item_call label="Empezar multiconferencia" name="Conference Chat Folder"/> <menu_item_call label="Escuchar" name="Sound Play"/> - <menu_item_call label="Acerca del hito" name="Teleport To Landmark"/> + <menu_item_call label="Acerca del hito" name="About Landmark"/> <menu_item_call label="Ver en el mundo" name="Animation Play"/> <menu_item_call label="Ejecutarla para usted" name="Animation Audition"/> <menu_item_call label="Enviar un mensaje instantáneo" name="Send Instant Message"/> @@ -54,8 +70,8 @@ <menu_item_call label="Empezar multiconferencia" name="Conference Chat"/> <menu_item_call label="Activar" name="Activate"/> <menu_item_call label="Desactivar" name="Deactivate"/> + <menu_item_call label="Guardar como" name="Save As"/> <menu_item_call label="Quitarse" name="Detach From Yourself"/> - <menu_item_call label="Volver a la última posición" name="Restore to Last Position"/> <menu_item_call label="Ponerse" name="Object Wear"/> <menu label="Anexar a" name="Attach To"/> <menu label="Anexar como HUD" name="Attach To HUD"/> diff --git a/indra/newview/skins/default/xui/es/menu_inventory_add.xml b/indra/newview/skins/default/xui/es/menu_inventory_add.xml new file mode 100644 index 0000000000..91cb4a08ff --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_inventory_add.xml @@ -0,0 +1,32 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<menu name="menu_inventory_add"> + <menu label="Subir" name="upload"> + <menu_item_call label="Imagen ([COST] L$)..." name="Upload Image"/> + <menu_item_call label="Sonido ([COST] L$)..." name="Upload Sound"/> + <menu_item_call label="Animación ([COST] L$)..." name="Upload Animation"/> + <menu_item_call label="Masivo ([COST] L$ por archivo)..." name="Bulk Upload"/> + </menu> + <menu_item_call label="Carpeta nueva" name="New Folder"/> + <menu_item_call label="Script nuevo" name="New Script"/> + <menu_item_call label="Nota nueva" name="New Note"/> + <menu_item_call label="Gesto nuevo" name="New Gesture"/> + <menu label="Ropas nuevas" name="New Clothes"> + <menu_item_call label="Camisa nueva" name="New Shirt"/> + <menu_item_call label="Pantalón nuevo" name="New Pants"/> + <menu_item_call label="Zapatos nuevos" name="New Shoes"/> + <menu_item_call label="Calcetines nuevos" name="New Socks"/> + <menu_item_call label="Chaqueta nueva" name="New Jacket"/> + <menu_item_call label="Falda nueva" name="New Skirt"/> + <menu_item_call label="Guantes nuevos" name="New Gloves"/> + <menu_item_call label="Camiseta nueva" name="New Undershirt"/> + <menu_item_call label="Ropa interior nueva" name="New Underpants"/> + <menu_item_call label="Nueva Alfa" name="New Alpha"/> + <menu_item_call label="Tatuaje nuevo" name="New Tattoo"/> + </menu> + <menu label="Nuevas partes del cuerpo" name="New Body Parts"> + <menu_item_call label="Forma nueva" name="New Shape"/> + <menu_item_call label="Piel nueva" name="New Skin"/> + <menu_item_call label="Pelo nuevo" name="New Hair"/> + <menu_item_call label="Ojos nuevos" name="New Eyes"/> + </menu> +</menu> diff --git a/indra/newview/skins/default/xui/es/menu_inventory_gear_default.xml b/indra/newview/skins/default/xui/es/menu_inventory_gear_default.xml new file mode 100644 index 0000000000..80cf78c0b5 --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_inventory_gear_default.xml @@ -0,0 +1,14 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<menu name="menu_gear_default"> + <menu_item_call label="Nueva ventana del inventario" name="new_window"/> + <menu_item_call label="Ordenar alfabéticamente" name="sort_by_name"/> + <menu_item_call label="Ordenar por los más recientes" name="sort_by_recent"/> + <menu_item_call label="Ver los filtros" name="show_filters"/> + <menu_item_call label="Restablecer los filtros" name="reset_filters"/> + <menu_item_call label="Cerrar todas las carpetas" name="close_folders"/> + <menu_item_call label="Vaciar la Papelera" name="empty_trash"/> + <menu_item_call label="Vaciar Objetos Perdidos" name="empty_lostnfound"/> + <menu_item_call label="Guardar la textura como" name="Save Texture As"/> + <menu_item_call label="Encontrar el original" name="Find Original"/> + <menu_item_call label="Encontrar todos los enlazados" name="Find All Links"/> +</menu> diff --git a/indra/newview/skins/default/xui/es/menu_land.xml b/indra/newview/skins/default/xui/es/menu_land.xml new file mode 100644 index 0000000000..c315cb2f2c --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_land.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<context_menu name="Land Pie"> + <menu_item_call label="Acerca del terreno" name="Place Information..."/> + <menu_item_call label="Sentarse aquí" name="Sit Here"/> + <menu_item_call label="Comprar este terreno" name="Land Buy"/> + <menu_item_call label="Comprar un pase" name="Land Buy Pass"/> + <menu_item_call label="Construir" name="Create"/> + <menu_item_call label="Modificar el terreno" name="Edit Terrain"/> +</context_menu> diff --git a/indra/newview/skins/default/xui/es/menu_landmark.xml b/indra/newview/skins/default/xui/es/menu_landmark.xml new file mode 100644 index 0000000000..f69b1539b8 --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_landmark.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<toggleable_menu name="landmark_overflow_menu"> + <menu_item_call label="Copiar la SLurl" name="copy"/> + <menu_item_call label="Borrar" name="delete"/> + <menu_item_call label="Crear un Destacado" name="pick"/> + <menu_item_call label="Añadir a la barra de favoritos" name="add_to_favbar"/> +</toggleable_menu> diff --git a/indra/newview/skins/default/xui/es/menu_login.xml b/indra/newview/skins/default/xui/es/menu_login.xml index 1cf6ad5ae6..7e1a537122 100644 --- a/indra/newview/skins/default/xui/es/menu_login.xml +++ b/indra/newview/skins/default/xui/es/menu_login.xml @@ -1,13 +1,30 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <menu_bar name="Login Menu"> - <menu label="Archivo" name="File"> + <menu label="Yo" name="File"> + <menu_item_call label="Preferencias" name="Preferences..."/> <menu_item_call label="Salir" name="Quit"/> </menu> - <menu label="Editar" name="Edit"> - <menu_item_call label="Preferencias..." name="Preferences..."/> - </menu> <menu label="Ayuda" name="Help"> <menu_item_call label="Ayuda de [SECOND_LIFE]" name="Second Life Help"/> - <menu_item_call label="Acerca de [APP_NAME]..." name="About Second Life..."/> + </menu> + <menu label="Depurar" name="Debug"> + <menu label="Editar" name="Edit"> + <menu_item_call label="Deshacer" name="Undo"/> + <menu_item_call label="Rehacer" name="Redo"/> + <menu_item_call label="Cortar" name="Cut"/> + <menu_item_call label="Copiar" name="Copy"/> + <menu_item_call label="Pegar" name="Paste"/> + <menu_item_call label="Borrar" name="Delete"/> + <menu_item_call label="Duplicar" name="Duplicate"/> + <menu_item_call label="Seleccionar todo" name="Select All"/> + <menu_item_call label="Deseleccionar" name="Deselect"/> + </menu> + <menu_item_call label="Mostrar las configuraciones del depurador" name="Debug Settings"/> + <menu_item_call label="Configuraciones del Visor/Color" name="UI/Color Settings"/> + <menu_item_call label="Mostrar el panel lateral" name="Show Side Tray"/> + <menu label="Pruebas de la interfaz" name="UI Tests"/> + <menu_item_call label="Mostrar los 'TOS'" name="TOS"/> + <menu_item_call label="Mostrar mensaje crítico" name="Critical"/> + <menu_item_call label="Web Browser Test" name="Web Browser Test"/> </menu> </menu_bar> diff --git a/indra/newview/skins/default/xui/es/menu_mini_map.xml b/indra/newview/skins/default/xui/es/menu_mini_map.xml index 19061cea06..9c5a5719ee 100644 --- a/indra/newview/skins/default/xui/es/menu_mini_map.xml +++ b/indra/newview/skins/default/xui/es/menu_mini_map.xml @@ -3,6 +3,7 @@ <menu_item_call label="Zoom cerca" name="Zoom Close"/> <menu_item_call label="Zoom medio" name="Zoom Medium"/> <menu_item_call label="Zoom lejos" name="Zoom Far"/> + <menu_item_check label="Girar el mapa" name="Rotate Map"/> <menu_item_call label="Parar la búsqueda" name="Stop Tracking"/> - <menu_item_call label="Perfil..." name="Profile"/> + <menu_item_call label="Mapa del mundo" name="World Map"/> </menu> diff --git a/indra/newview/skins/default/xui/es/menu_navbar.xml b/indra/newview/skins/default/xui/es/menu_navbar.xml new file mode 100644 index 0000000000..63e5468020 --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_navbar.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<menu name="Navbar Menu"> + <menu_item_check label="Mostrar las coordenadas" name="Show Coordinates"/> + <menu_item_check label="Mostrar las propiedades de la parcela" name="Show Parcel Properties"/> + <menu_item_call label="Hito" name="Landmark"/> + <menu_item_call label="Cortar" name="Cut"/> + <menu_item_call label="Copiar" name="Copy"/> + <menu_item_call label="Pegar" name="Paste"/> + <menu_item_call label="Borrar" name="Delete"/> + <menu_item_call label="Seleccionar todo" name="Select All"/> +</menu> diff --git a/indra/newview/skins/default/xui/es/menu_nearby_chat.xml b/indra/newview/skins/default/xui/es/menu_nearby_chat.xml new file mode 100644 index 0000000000..94b281b6c7 --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_nearby_chat.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<menu name="NearBy Chat Menu"> + <menu_item_call label="Mostrar la gente que está cerca..." name="nearby_people"/> + <menu_item_check label="Ver el texto ignorado" name="muted_text"/> + <menu_item_check label="Mostrar los iconos del amigo" name="show_buddy_icons"/> + <menu_item_check label="Mostrar los nombres" name="show_names"/> + <menu_item_check label="Mostrar los iconos y los nombres" name="show_icons_and_names"/> + <menu_item_call label="Tamaño de la fuente" name="font_size"/> +</menu> diff --git a/indra/newview/skins/default/xui/es/menu_object.xml b/indra/newview/skins/default/xui/es/menu_object.xml new file mode 100644 index 0000000000..2d701a89c3 --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_object.xml @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<context_menu name="Object Pie"> + <menu_item_call label="Tocar" name="Object Touch"/> + <menu_item_call label="Editar" name="Edit..."/> + <menu_item_call label="Construir" name="Build"/> + <menu_item_call label="Abrir" name="Open"/> + <menu_item_call label="Sentarse aquí" name="Object Sit"/> + <menu_item_call label="Perfil del objeto" name="Object Inspect"/> + <context_menu label="Poner >" name="Put On"> + <menu_item_call label="Ponerse" name="Wear"/> + <context_menu label="Anexar >" name="Object Attach"/> + <context_menu label="Anexar el HUD >" name="Object Attach HUD"/> + </context_menu> + <context_menu label="Quitar >" name="Remove"> + <menu_item_call label="Tomar" name="Pie Object Take"/> + <menu_item_call label="Denunciar una infracción" name="Report Abuse..."/> + <menu_item_call label="Ignorar" name="Object Mute"/> + <menu_item_call label="Devolver" name="Return..."/> + <menu_item_call label="Eliminar" name="Delete"/> + </context_menu> + <menu_item_call label="Coger una copia" name="Take Copy"/> + <menu_item_call label="Pagar" name="Pay..."/> + <menu_item_call label="Comprar" name="Buy..."/> +</context_menu> diff --git a/indra/newview/skins/default/xui/es/menu_object_icon.xml b/indra/newview/skins/default/xui/es/menu_object_icon.xml new file mode 100644 index 0000000000..7e4578b950 --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_object_icon.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<menu name="Object Icon Menu"> + <menu_item_call label="Perfil del objeto..." name="Object Profile"/> + <menu_item_call label="Ignorar..." name="Block"/> +</menu> diff --git a/indra/newview/skins/default/xui/es/menu_participant_list.xml b/indra/newview/skins/default/xui/es/menu_participant_list.xml new file mode 100644 index 0000000000..bc7e2617be --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_participant_list.xml @@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<context_menu name="Participant List Context Menu"> + <menu_item_call label="Ver el perfil" name="View Profile"/> + <menu_item_call label="Añadir como amigo" name="Add Friend"/> + <menu_item_call label="MI" name="IM"/> + <menu_item_call label="Llamada" name="Call"/> + <menu_item_call label="Compartir" name="Share"/> + <menu_item_call label="Pagar" name="Pay"/> + <menu_item_check label="Ignorar / No ignorar" name="Block/Unblock"/> + <menu_item_check label="Silenciar el texto" name="MuteText"/> + <menu_item_check label="Permitir el chat de texto" name="AllowTextChat"/> + <menu_item_call label="Ignorar a este participante" name="ModerateVoiceMuteSelected"/> + <menu_item_call label="Silenciar a todos los demás" name="ModerateVoiceMuteOthers"/> + <menu_item_call label="Quitar el silencio a este participante" name="ModerateVoiceUnMuteSelected"/> + <menu_item_call label="Quitar el silencio a todos los demás" name="ModerateVoiceUnMuteOthers"/> +</context_menu> diff --git a/indra/newview/skins/default/xui/es/menu_people_friends_view_sort.xml b/indra/newview/skins/default/xui/es/menu_people_friends_view_sort.xml new file mode 100644 index 0000000000..0e883be00e --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_people_friends_view_sort.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<menu name="menu_group_plus"> + <menu_item_check label="Ordenar alfabéticamente" name="sort_name"/> + <menu_item_check label="Ordenar por estatus" name="sort_status"/> + <menu_item_check label="Ver los iconos de la gente" name="view_icons"/> + <menu_item_call label="Ver la lista de Residentes y Objetos ignorados" name="show_blocked_list"/> +</menu> diff --git a/indra/newview/skins/default/xui/es/menu_people_groups_view_sort.xml b/indra/newview/skins/default/xui/es/menu_people_groups_view_sort.xml new file mode 100644 index 0000000000..1bd3efb611 --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_people_groups_view_sort.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<menu name="menu_group_plus"> + <menu_item_check label="Mostrar los iconos de grupo" name="Display Group Icons"/> + <menu_item_call label="Dejar el grupo seleccionado" name="Leave Selected Group"/> +</menu> diff --git a/indra/newview/skins/default/xui/es/menu_people_nearby.xml b/indra/newview/skins/default/xui/es/menu_people_nearby.xml new file mode 100644 index 0000000000..310a96d740 --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_people_nearby.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<context_menu name="Avatar Context Menu"> + <menu_item_call label="Ver el perfil" name="View Profile"/> + <menu_item_call label="Añadir como amigo" name="Add Friend"/> + <menu_item_call label="MI" name="IM"/> + <menu_item_call label="Llamada" name="Call"/> + <menu_item_call label="Compartir" name="Share"/> + <menu_item_call label="Pagar" name="Pay"/> + <menu_item_check label="Ignorar / No ignorar" name="Block/Unblock"/> +</context_menu> diff --git a/indra/newview/skins/default/xui/es/menu_people_nearby_multiselect.xml b/indra/newview/skins/default/xui/es/menu_people_nearby_multiselect.xml new file mode 100644 index 0000000000..7d6979256e --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_people_nearby_multiselect.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<context_menu name="Multi-Selected People Context Menu"> + <menu_item_call label="Añadir como amigos" name="Add Friends"/> + <menu_item_call label="MI" name="IM"/> + <menu_item_call label="Llamada" name="Call"/> + <menu_item_call label="Compartir" name="Share"/> + <menu_item_call label="Pagar" name="Pay"/> +</context_menu> diff --git a/indra/newview/skins/default/xui/es/menu_people_nearby_view_sort.xml b/indra/newview/skins/default/xui/es/menu_people_nearby_view_sort.xml new file mode 100644 index 0000000000..f0fe383c0c --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_people_nearby_view_sort.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<menu name="menu_group_plus"> + <menu_item_check label="Ordenar según las intervenciones recientes" name="sort_by_recent_speakers"/> + <menu_item_check label="Ordenar alfabéticamente" name="sort_name"/> + <menu_item_check label="Ordenar según distancia" name="sort_distance"/> + <menu_item_check label="Ver los iconos de la gente" name="view_icons"/> + <menu_item_call label="Ver la lista de Residentes y Objetos ignorados" name="show_blocked_list"/> +</menu> diff --git a/indra/newview/skins/default/xui/es/menu_people_recent_view_sort.xml b/indra/newview/skins/default/xui/es/menu_people_recent_view_sort.xml new file mode 100644 index 0000000000..e4aaa89110 --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_people_recent_view_sort.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<menu name="menu_group_plus"> + <menu_item_check label="Ordenar por los más recientes" name="sort_most"/> + <menu_item_check label="Ordenar alfabéticamente" name="sort_name"/> + <menu_item_check label="Ver los iconos de la gente" name="view_icons"/> + <menu_item_call label="Ver la lista de Residentes y Objetos ignorados" name="show_blocked_list"/> +</menu> diff --git a/indra/newview/skins/default/xui/es/menu_picks.xml b/indra/newview/skins/default/xui/es/menu_picks.xml new file mode 100644 index 0000000000..9da68d7c9b --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_picks.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<context_menu name="Picks"> + <menu_item_call label="Información" name="pick_info"/> + <menu_item_call label="Editar" name="pick_edit"/> + <menu_item_call label="Teleportar" name="pick_teleport"/> + <menu_item_call label="Mapa" name="pick_map"/> + <menu_item_call label="Eliminar" name="pick_delete"/> +</context_menu> diff --git a/indra/newview/skins/default/xui/es/menu_picks_plus.xml b/indra/newview/skins/default/xui/es/menu_picks_plus.xml new file mode 100644 index 0000000000..cc59bf1d29 --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_picks_plus.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<toggleable_menu name="picks_plus_menu"> + <menu_item_call label="Destacado nuevo" name="create_pick"/> + <menu_item_call label="Clasificado nuevo" name="create_classified"/> +</toggleable_menu> diff --git a/indra/newview/skins/default/xui/es/menu_place.xml b/indra/newview/skins/default/xui/es/menu_place.xml new file mode 100644 index 0000000000..675f0699e9 --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_place.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<toggleable_menu name="place_overflow_menu"> + <menu_item_call label="Crear un hito" name="landmark"/> + <menu_item_call label="Crear un destacado" name="pick"/> + <menu_item_call label="Comprar un pase" name="pass"/> + <menu_item_call label="Editar" name="edit"/> +</toggleable_menu> diff --git a/indra/newview/skins/default/xui/es/menu_place_add_button.xml b/indra/newview/skins/default/xui/es/menu_place_add_button.xml new file mode 100644 index 0000000000..4b2f908a06 --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_place_add_button.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<menu name="menu_folder_gear"> + <menu_item_call label="Añadir una carpeta" name="add_folder"/> + <menu_item_call label="Añadir este hito" name="add_landmark"/> +</menu> diff --git a/indra/newview/skins/default/xui/es/menu_places_gear_folder.xml b/indra/newview/skins/default/xui/es/menu_places_gear_folder.xml new file mode 100644 index 0000000000..bf46eb58e3 --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_places_gear_folder.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<menu name="menu_folder_gear"> + <menu_item_call label="Añadir este hito" name="add_landmark"/> + <menu_item_call label="Añadir una carpeta" name="add_folder"/> + <menu_item_call label="Cortar" name="cut"/> + <menu_item_call label="Copiar" name="copy_folder"/> + <menu_item_call label="Pegar" name="paste"/> + <menu_item_call label="Renombrar" name="rename"/> + <menu_item_call label="Borrar" name="delete"/> + <menu_item_call label="Abrir" name="expand"/> + <menu_item_call label="Cerrar" name="collapse"/> + <menu_item_call label="Abrir todas las carpetas" name="expand_all"/> + <menu_item_call label="Cerrar todas las carpetas" name="collapse_all"/> + <menu_item_check label="Ordenar por fecha" name="sort_by_date"/> +</menu> diff --git a/indra/newview/skins/default/xui/es/menu_places_gear_landmark.xml b/indra/newview/skins/default/xui/es/menu_places_gear_landmark.xml new file mode 100644 index 0000000000..eac85de846 --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_places_gear_landmark.xml @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<menu name="menu_ladmark_gear"> + <menu_item_call label="Teleportar" name="teleport"/> + <menu_item_call label="Más información" name="more_info"/> + <menu_item_call label="Mostrar en el mapa" name="show_on_map"/> + <menu_item_call label="Añadir un hito" name="add_landmark"/> + <menu_item_call label="Añadir una carpeta" name="add_folder"/> + <menu_item_call label="Cortar" name="cut"/> + <menu_item_call label="Copiar el hito" name="copy_landmark"/> + <menu_item_call label="Copiar la SLurl" name="copy_slurl"/> + <menu_item_call label="Pegar" name="paste"/> + <menu_item_call label="Renombrar" name="rename"/> + <menu_item_call label="Eliminar" name="delete"/> + <menu_item_call label="Abrir todas las carpetas" name="expand_all"/> + <menu_item_call label="Cerrar todas las carpetas" name="collapse_all"/> + <menu_item_check label="Ordenar por fecha" name="sort_by_date"/> + <menu_item_call label="Crear un Destacado" name="create_pick"/> +</menu> diff --git a/indra/newview/skins/default/xui/es/menu_profile_overflow.xml b/indra/newview/skins/default/xui/es/menu_profile_overflow.xml new file mode 100644 index 0000000000..c1e01f0554 --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_profile_overflow.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<toggleable_menu name="profile_overflow_menu"> + <menu_item_call label="Pagar" name="pay"/> + <menu_item_call label="Compartir" name="share"/> +</toggleable_menu> diff --git a/indra/newview/skins/default/xui/es/menu_slurl.xml b/indra/newview/skins/default/xui/es/menu_slurl.xml index 5c5900ae56..ca19acec6e 100644 --- a/indra/newview/skins/default/xui/es/menu_slurl.xml +++ b/indra/newview/skins/default/xui/es/menu_slurl.xml @@ -2,5 +2,5 @@ <menu name="Popup"> <menu_item_call label="Acerca de la URL" name="about_url"/> <menu_item_call label="Teleportar a la URL" name="teleport_to_url"/> - <menu_item_call label="Mostrar en el mapa" name="show_on_map"/> + <menu_item_call label="Mapa" name="show_on_map"/> </menu> diff --git a/indra/newview/skins/default/xui/es/menu_teleport_history_gear.xml b/indra/newview/skins/default/xui/es/menu_teleport_history_gear.xml new file mode 100644 index 0000000000..b708f3bc20 --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_teleport_history_gear.xml @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<menu name="Teleport History Gear Context Menu"> + <menu_item_call label="Abrir todas las carpetas" name="Expand all folders"/> + <menu_item_call label="Cerrar todas las carpetas" name="Collapse all folders"/> + <menu_item_call label="Limpiar el historial de teleportes" name="Clear Teleport History"/> +</menu> diff --git a/indra/newview/skins/default/xui/es/menu_teleport_history_item.xml b/indra/newview/skins/default/xui/es/menu_teleport_history_item.xml new file mode 100644 index 0000000000..ed33c55aca --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_teleport_history_item.xml @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<context_menu name="Teleport History Item Context Menu"> + <menu_item_call label="Teleportarse" name="Teleport"/> + <menu_item_call label="Más información" name="More Information"/> + <menu_item_call label="Copiar al portapapeles" name="CopyToClipboard"/> +</context_menu> diff --git a/indra/newview/skins/default/xui/es/menu_teleport_history_tab.xml b/indra/newview/skins/default/xui/es/menu_teleport_history_tab.xml new file mode 100644 index 0000000000..17e90422a5 --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_teleport_history_tab.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<context_menu name="Teleport History Item Context Menu"> + <menu_item_call label="Abrir" name="TabOpen"/> + <menu_item_call label="Cerrar" name="TabClose"/> +</context_menu> diff --git a/indra/newview/skins/default/xui/es/menu_text_editor.xml b/indra/newview/skins/default/xui/es/menu_text_editor.xml new file mode 100644 index 0000000000..095e461734 --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_text_editor.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<context_menu name="Text editor context menu"> + <menu_item_call label="Cortar" name="Cut"/> + <menu_item_call label="Copiar" name="Copy"/> + <menu_item_call label="Pegar" name="Paste"/> + <menu_item_call label="Borrar" name="Delete"/> + <menu_item_call label="Seleccionar todo" name="Select All"/> +</context_menu> diff --git a/indra/newview/skins/default/xui/es/menu_url_agent.xml b/indra/newview/skins/default/xui/es/menu_url_agent.xml new file mode 100644 index 0000000000..a089c8f68e --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_url_agent.xml @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<context_menu name="Url Popup"> + <menu_item_call label="Mostrar el perfil del Residente" name="show_agent"/> + <menu_item_call label="Copiar el nombre al portapapeles" name="url_copy_label"/> + <menu_item_call label="Copiar la SLurl al portapapeles" name="url_copy"/> +</context_menu> diff --git a/indra/newview/skins/default/xui/es/menu_url_group.xml b/indra/newview/skins/default/xui/es/menu_url_group.xml new file mode 100644 index 0000000000..79374b9739 --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_url_group.xml @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<context_menu name="Url Popup"> + <menu_item_call label="Mostrar la información del grupo" name="show_group"/> + <menu_item_call label="Copiar el grupo al portapapeles" name="url_copy_label"/> + <menu_item_call label="Copiar la SLurl al portapapeles" name="url_copy"/> +</context_menu> diff --git a/indra/newview/skins/default/xui/es/menu_url_http.xml b/indra/newview/skins/default/xui/es/menu_url_http.xml new file mode 100644 index 0000000000..585c059ff3 --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_url_http.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<context_menu name="Url Popup"> + <menu_item_call label="Abrir la página web" name="url_open"/> + <menu_item_call label="Abrir en el navegador incorporado" name="url_open_internal"/> + <menu_item_call label="Abrir en mi navegador" name="url_open_external"/> + <menu_item_call label="Copiar la URL al portapapeles" name="url_copy"/> +</context_menu> diff --git a/indra/newview/skins/default/xui/es/menu_url_inventory.xml b/indra/newview/skins/default/xui/es/menu_url_inventory.xml new file mode 100644 index 0000000000..13a8711c76 --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_url_inventory.xml @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<context_menu name="Url Popup"> + <menu_item_call label="Mostrar ítem del inventario" name="show_item"/> + <menu_item_call label="Copiar el nombre al portapapeles" name="url_copy_label"/> + <menu_item_call label="Copiar la SLurl al portapapeles" name="url_copy"/> +</context_menu> diff --git a/indra/newview/skins/default/xui/es/menu_url_map.xml b/indra/newview/skins/default/xui/es/menu_url_map.xml new file mode 100644 index 0000000000..f96a0c7170 --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_url_map.xml @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<context_menu name="Url Popup"> + <menu_item_call label="Mostrar en el mapa" name="show_on_map"/> + <menu_item_call label="Teleportarse a la localización" name="teleport_to_location"/> + <menu_item_call label="Copiar la SLurl al portapapeles" name="url_copy"/> +</context_menu> diff --git a/indra/newview/skins/default/xui/es/menu_url_objectim.xml b/indra/newview/skins/default/xui/es/menu_url_objectim.xml new file mode 100644 index 0000000000..8791a290af --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_url_objectim.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<context_menu name="Url Popup"> + <menu_item_call label="Mostrar la información del objeto" name="show_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"/> +</context_menu> diff --git a/indra/newview/skins/default/xui/es/menu_url_parcel.xml b/indra/newview/skins/default/xui/es/menu_url_parcel.xml new file mode 100644 index 0000000000..9e789ef8ee --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_url_parcel.xml @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<context_menu name="Url Popup"> + <menu_item_call label="Mostrar la información de la parcela" name="show_parcel"/> + <menu_item_call label="Mostrar en el mapa" name="show_on_map"/> + <menu_item_call label="Copiar la SLurl al portapapeles" name="url_copy"/> +</context_menu> diff --git a/indra/newview/skins/default/xui/es/menu_url_slapp.xml b/indra/newview/skins/default/xui/es/menu_url_slapp.xml new file mode 100644 index 0000000000..7147dcd3cf --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_url_slapp.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<context_menu name="Url Popup"> + <menu_item_call label="Ejecutar este comando" name="run_slapp"/> + <menu_item_call label="Copiar la SLurl al portapapeles" name="url_copy"/> +</context_menu> diff --git a/indra/newview/skins/default/xui/es/menu_url_slurl.xml b/indra/newview/skins/default/xui/es/menu_url_slurl.xml new file mode 100644 index 0000000000..4ab47c2f61 --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_url_slurl.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<context_menu name="Url Popup"> + <menu_item_call label="Mostrar la información del lugar" name="show_place"/> + <menu_item_call label="Mostrar en el mapa" name="show_on_map"/> + <menu_item_call label="Teleportarse a este lugar" name="teleport_to_location"/> + <menu_item_call label="Copiar la SLurl al portapapeles" name="url_copy"/> +</context_menu> diff --git a/indra/newview/skins/default/xui/es/menu_url_teleport.xml b/indra/newview/skins/default/xui/es/menu_url_teleport.xml new file mode 100644 index 0000000000..8f86a91be3 --- /dev/null +++ b/indra/newview/skins/default/xui/es/menu_url_teleport.xml @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<context_menu name="Url Popup"> + <menu_item_call label="Teleportarse a este lugar" name="teleport"/> + <menu_item_call label="Mostrar en el mapa" name="show_on_map"/> + <menu_item_call label="Copiar la SLurl al portapapeles" name="url_copy"/> +</context_menu> diff --git a/indra/newview/skins/default/xui/es/menu_viewer.xml b/indra/newview/skins/default/xui/es/menu_viewer.xml index fdb6a92084..acd7319b31 100644 --- a/indra/newview/skins/default/xui/es/menu_viewer.xml +++ b/indra/newview/skins/default/xui/es/menu_viewer.xml @@ -1,217 +1,326 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <menu_bar name="Main Menu"> - <menu name="Me"> + <menu label="Yo" name="Me"> <menu_item_call label="Preferencias" name="Preferences"/> - <menu_item_call name="Manage My Account"> - <menu_item_call.on_click name="ManageMyAccount_url" parameter="WebLaunchJoinNow,http://secondlife.com/account/index.php?lang=es" /> + <menu_item_call label="Mi panel de control" name="Manage My Account"> + <menu_item_call.on_click name="ManageMyAccount_url" parameter="WebLaunchJoinNow,http://secondlife.com/account/index.php?lang=es"/> </menu_item_call> + <menu_item_call label="Comprar L$" name="Buy and Sell L$"/> + <menu_item_call label="Mi perfil" name="Profile"/> + <menu_item_call label="Mi apariencia" name="Appearance"/> + <menu_item_check label="Mi Inventario" name="Inventory"/> + <menu_item_call label="Mostrar el inventario en el panel lateral" name="ShowSidetrayInventory"/> + <menu_item_call label="Mis gestos" name="Gestures"/> + <menu label="Mi estatus" name="Status"> + <menu_item_call label="Ausente" name="Set Away"/> + <menu_item_call label="Ocupado" name="Set Busy"/> + </menu> + <menu_item_call label="Solicitar estatus de Administrador" name="Request Admin Options"/> + <menu_item_call label="Dejar el estatus de Administrador" name="Leave Admin Options"/> + <menu_item_call label="Salir de [APP_NAME]" name="Quit"/> </menu> - <menu label="Archivo" name="File"> - <tearoff_menu label="~~~~~~~~~~~" name="~~~~~~~~~~~"/> - <menu label="Subir" name="upload"> - <menu_item_call label="Imagen ([COST] L$)..." name="Upload Image"/> - <menu_item_call label="Sonido ([COST] L$)..." name="Upload Sound"/> - <menu_item_call label="Animación ([COST] L$)..." name="Upload Animation"/> - <menu_item_call label="Masiva ([COST] L$ por archivo)..." name="Bulk Upload"/> - <menu_item_separator label="-----------" name="separator"/> - <menu_item_call label="Definir los permisos por defecto..." name="perm prefs"/> - </menu> - <menu_item_separator label="-----------" name="separator"/> - <menu_item_call label="Cerrar la ventana" name="Close Window"/> - <menu_item_call label="Cerrar todas las ventanas" name="Close All Windows"/> - <menu_item_separator label="-----------" name="separator2"/> - <menu_item_call label="Guardar la textura como..." name="Save Texture As..."/> - <menu_item_separator label="-----------" name="separator3"/> - <menu_item_call label="Hacer una foto" name="Take Snapshot"/> - <menu_item_call label="Guardar una foto" name="Snapshot to Disk"/> - <menu_item_separator label="-----------" name="separator4"/> - <menu_item_call label="Salir" name="Quit"/> - </menu> - <menu label="Editar" name="Edit"> - <menu_item_call label="Deshacer" name="Undo"/> - <menu_item_call label="Rehacer" name="Redo"/> - <menu_item_separator label="-----------" name="separator"/> - <menu_item_call label="Cortar" name="Cut"/> - <menu_item_call label="Copiar" name="Copy"/> - <menu_item_call label="Pegar" name="Paste"/> - <menu_item_call label="Borrar" name="Delete"/> - <menu_item_separator label="-----------" name="separator2"/> - <menu_item_call label="Buscar..." name="Search..."/> - <menu_item_separator label="-----------" name="separator3"/> - <menu_item_call label="Seleccionar todo" name="Select All"/> - <menu_item_call label="Deseleccionar" name="Deselect"/> - <menu_item_separator label="-----------" name="separator4"/> - <menu_item_call label="Duplicar" name="Duplicate"/> - <menu_item_separator label="-----------" name="separator5"/> - <menu label="Anexar el objeto" name="Attach Object"/> - <menu label="Quitarse el objeto" name="Detach Object"/> - <menu label="Quitarse ropa" name="Take Off Clothing"> - <menu_item_call label="Camisa" name="Shirt"/> - <menu_item_call label="Pantalones" name="Pants"/> - <menu_item_call label="Zapatos" name="Shoes"/> - <menu_item_call label="Calcetines" name="Socks"/> - <menu_item_call label="Chaqueta" name="Jacket"/> - <menu_item_call label="Guantes" name="Gloves"/> - <menu_item_call label="Camiseta" name="Menu Undershirt"/> - <menu_item_call label="Ropa interior" name="Menu Underpants"/> - <menu_item_call label="Falda" name="Skirt"/> - <menu_item_call label="Toda la ropa" name="All Clothes"/> - </menu> - <menu_item_separator label="-----------" name="separator6"/> - <menu_item_call label="Gestos..." name="Gestures..."/> - <menu_item_call label="Perfil..." name="Profile..."/> - <menu_item_call label="Apariencia..." name="Appearance..."/> - <menu_item_separator label="-----------" name="separator7"/> - <menu_item_check label="Amigos..." name="Friends..."/> - <menu_item_call label="Grupos..." name="Groups..."/> - <menu_item_separator label="-----------" name="separator8"/> - <menu_item_call label="Preferencias..." name="Preferences..."/> - </menu> - <menu label="Ver" name="View"> - <tearoff_menu label="~~~~~~~~~~~" name="~~~~~~~~~~~"/> - <menu_item_call label="Vista subjetiva" name="Mouselook"/> - <menu_item_check label="Construir" name="Build"/> - <menu_item_check label="Flycam del joystick" name="Joystick Flycam"/> - <menu_item_call label="Volver a la vista por defecto" name="Reset View"/> - <menu_item_call label="Mirar al último que habló" name="Look at Last Chatter"/> - <menu_item_separator label="-----------" name="separator"/> - <menu_item_check label="Barra de herramientas" name="Toolbar"/> - <menu_item_check label="Chat" name="Chat History"/> - <menu_item_check label="Comunicarse" name="Instant Message"/> - <menu_item_check label="Inventario" name="Inventory"/> - <menu_item_check label="Participantes activos" name="Active Speakers"/> - <menu_item_check label="Lista de ignorados" name="Mute List"/> - <menu_item_separator label="-----------" name="separator2"/> - <menu_item_check label="Controles de la cámara" name="Camera Controls"/> - <menu_item_check label="Controles del movimiento" name="Movement Controls"/> - <menu_item_check label="Mapa del mundo" name="World Map"/> - <menu_item_check label="Minimapa" name="Mini-Map"/> - <menu_item_separator label="-----------" name="separator3"/> - <menu_item_check label="Estadísticas" name="Statistics Bar"/> - <menu_item_check label="Límites de las parcelas" name="Property Lines"/> - <menu_item_check label="Líneas de prohibición" name="Banlines"/> - <menu_item_check label="Propietarios del terreno" name="Land Owners"/> - <menu_item_separator label="-----------" name="separator4"/> - <menu label="Información adicional" name="Hover Tips"> - <menu_item_check label="Mostrar información adicional." name="Show Tips"/> - <menu_item_separator label="-----------" name="separator"/> - <menu_item_check label="Información adicional del terreno" name="Land Tips"/> - <menu_item_check label="Información adicional en todos los objetos" name="Tips On All Objects"/> - </menu> - <menu_item_check label="Realzar las transparencias" name="Highlight Transparent"/> - <menu_item_check label="Balizas" name="beacons"/> - <menu_item_check label="Ocultar las partículas" name="Hide Particles"/> - <menu_item_check label="Mostrar los HUD en uso" name="Show HUD Attachments"/> - <menu_item_separator label="-----------" name="separator5"/> - <menu_item_call label="Acercar el zoom" name="Zoom In"/> - <menu_item_call label="Zoom predeterminado" name="Zoom Default"/> - <menu_item_call label="Alejar el zoom" name="Zoom Out"/> - <menu_item_separator label="-----------" name="separator6"/> - <menu_item_call label="Pantalla completa" name="Toggle Fullscreen"/> - <menu_item_call label="Interfaz en el tamaño predeterminado" name="Set UI Size to Default"/> + <menu label="Comunicarse" name="Communicate"> + <menu_item_call label="Mis amigos" name="My Friends"/> + <menu_item_call label="Mis grupos" name="My Groups"/> + <menu_item_check label="Chat" name="Nearby Chat"/> + <menu_item_call label="Gente cerca" name="Active Speakers"/> + <menu_item_check label="Media cercanos" name="Nearby Media"/> </menu> <menu label="Mundo" name="World"> - <menu_item_call label="Chat" name="Chat"/> - <menu_item_check label="Correr siempre" name="Always Run"/> - <menu_item_check label="Volar" name="Fly"/> - <menu_item_separator label="-----------" name="separator"/> - <menu_item_call label="Crear aquí un hito" name="Create Landmark Here"/> - <menu_item_call label="Fijar mi Base aquí" name="Set Home to Here"/> - <menu_item_separator label="-----------" name="separator2"/> - <menu_item_call label="Teleportar a mi Base" name="Teleport Home"/> - <menu_item_separator label="-----------" name="separator3"/> - <menu_item_call label="Pasar al estado ausente" name="Set Away"/> - <menu_item_call label="Pasar al estado ocupado" name="Set Busy"/> - <menu_item_call label="Parar la animación de mi avatar" name="Stop Animating My Avatar"/> - <menu_item_call label="Recuperar las teclas" name="Release Keys"/> - <menu_item_separator label="-----------" name="separator4"/> - <menu_item_call label="Historial de mi cuenta..." name="Account History..."> - <on_click name="AccountHistory_url" userdata="WebLaunchAccountHistory,http://secondlife.com/account/transactions.php?lang=es"/> - </menu_item_call> - <menu_item_call label="Administrar mi cuenta..." name="Manage My Account..."> - <on_click name="ManageMyAccount_url" userdata="WebLaunchJoinNow,http://secondlife.com/account/index.php?lang=es"/> - </menu_item_call> - <menu_item_call label="Comprar L$..." name="Buy and Sell L$..."/> - <menu_item_separator label="-----------" name="separator5"/> - <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..."/> - <menu_item_call label="Region/Estado..." name="Region/Estate..."/> - <menu_item_separator label="-----------" name="separator6"/> - <menu label="Configuración del entorno" name="Environment Settings"> + <menu_item_check label="Moverse" name="Movement Controls"/> + <menu_item_check label="Vista" name="Camera Controls"/> + <menu_item_call label="Acerca del terreno" name="About Land"/> + <menu_item_call label="Región/Estado" name="Region/Estate"/> + <menu_item_call label="Comprar terreno" name="Buy Land"/> + <menu_item_call label="Mi terreno" name="My Land"/> + <menu label="Mostrar" name="Land"> + <menu_item_check label="Líneas de prohibición" name="Ban Lines"/> + <menu_item_check label="Balizas" name="beacons"/> + <menu_item_check label="Límites de las parcelas" name="Property Lines"/> + <menu_item_check label="Propietarios del terreno" name="Land Owners"/> + </menu> + <menu label="Hitos" name="Landmarks"> + <menu_item_call label="Crear aquí un hito" name="Create Landmark Here"/> + <menu_item_call label="Fijar mi base aquí" name="Set Home to Here"/> + </menu> + <menu_item_call label="Base" name="Teleport Home"/> + <menu_item_check label="Minimapa" name="Mini-Map"/> + <menu_item_check label="Mapa del mundo" name="World Map"/> + <menu_item_call label="Foto" name="Take Snapshot"/> + <menu label="Sol" name="Environment Settings"> <menu_item_call label="Amanecer" name="Sunrise"/> <menu_item_call label="Mediodía" name="Noon"/> <menu_item_call label="Atardecer" name="Sunset"/> <menu_item_call label="Medianoche" name="Midnight"/> - <menu_item_call label="Volver a los valores por defecto de la región" name="Revert to Region Default"/> - <menu_item_separator label="-----------" name="separator"/> + <menu_item_call label="Usar el horario del estado" name="Revert to Region Default"/> <menu_item_call label="Editor del entorno" name="Environment Editor"/> </menu> </menu> - <menu label="Herramientas" name="Tools"> - <menu label="Elegir una herramienta" name="Select Tool"> - <menu_item_call label="Visión" name="Focus"/> - <menu_item_call label="Moverse" name="Move"/> - <menu_item_call label="Modificar" name="Edit"/> - <menu_item_call label="Crear" name="Create"/> - <menu_item_call label="Terreno" name="Land"/> - </menu> - <menu_item_separator label="-----------" name="separator"/> - <menu_item_check label="Seleccionar sólo mis objetos" name="Select Only My Objects"/> - <menu_item_check label="Seleccionar sólo objetos movibles" name="Select Only Movable Objects"/> - <menu_item_check label="Seleccionar marcando los alrededores" name="Select By Surrounding"/> - <menu_item_check label="Al seleccionar, mostrar los ocultos" name="Show Hidden Selection"/> - <menu_item_check label="Al seleccionar, mostrar el radio de la luz" name="Show Light Radius for Selection"/> - <menu_item_check label="Mostrar rayo indicador" name="Show Selection Beam"/> - <menu_item_separator label="-----------" name="separator2"/> - <menu_item_check label="Ajustar a la cuadrícula" name="Snap to Grid"/> - <menu_item_call label="Ajustar a la cuadrícula los ejes X e Y" name="Snap Object XY to Grid"/> - <menu_item_call label="Usar lo seleccionado como cuadrícula" name="Use Selection for Grid"/> - <menu_item_call label="Opciones de la cuadrícula..." name="Grid Options..."/> - <menu_item_separator label="-----------" name="separator3"/> - <menu_item_check label="Editar las partes enlazadas" name="Edit Linked Parts"/> + <menu label="Construir" name="BuildTools"> + <menu_item_check label="Construir" name="Show Build Tools"/> + <menu label="Seleccionar la herramienta de construcción" name="Select Tool"> + <menu_item_call label="Herramienta Visión" name="Focus"/> + <menu_item_call label="Herramienta Mover" name="Move"/> + <menu_item_call label="Herramienta Editar" name="Edit"/> + <menu_item_call label="Herramienta Crear" name="Create"/> + <menu_item_call label="Herramienta Terreno" name="Land"/> + </menu> + <menu label="Editar" name="Edit"> + <menu_item_call label="Deshacer" name="Undo"/> + <menu_item_call label="Rehacer" name="Redo"/> + <menu_item_call label="Cortar" name="Cut"/> + <menu_item_call label="Copiar" name="Copy"/> + <menu_item_call label="Pegar" name="Paste"/> + <menu_item_call label="Eliminar" name="Delete"/> + <menu_item_call label="Duplicar" name="Duplicate"/> + <menu_item_call label="Seleccionar todo" name="Select All"/> + <menu_item_call label="Deseleccionar" name="Deselect"/> + </menu> <menu_item_call label="Enlazar" name="Link"/> <menu_item_call label="Desenlazar" name="Unlink"/> - <menu_item_separator label="-----------" name="separator4"/> <menu_item_call label="Visión en lo seleccionado" name="Focus on Selection"/> <menu_item_call label="Zoom en lo seleccionado" name="Zoom to Selection"/> - <menu_item_call label="Comprar el objeto" name="Menu Object Take"> - <on_enable userdata="Comprar el objeto,Coger el objeto" name="EnableBuyOrTake"/> - </menu_item_call> - <menu_item_call label="Coger una copia" name="Take Copy"/> - <menu_item_call label="Devolver una copia del objeto a los contenidos de donde salió" name="Save Object Back to Object Contents"/> - <menu_item_separator label="-----------" name="separator6"/> - <menu_item_call label="Ver en una ventana los errores o alertas de los scripts" name="Show Script Warning/Error Window"/> - <menu label="Recompilar los scripts en lo seleccionado" name="Recompile Scripts in Selection"> - <menu_item_call label="Mono" name="Mono"/> - <menu_item_call label="LSL" name="LSL"/> - </menu> - <menu_item_call label="Reiniciar los scripts en lo seleccionado" name="Reset Scripts in Selection"/> - <menu_item_call label="Definir los scripts a ejecutar en lo seleccionado" name="Set Scripts to Running in Selection"/> - <menu_item_call label="Definir los scripts a no ejecutar en lo seleccionado" name="Set Scripts to Not Running in Selection"/> + <menu label="Objeto" name="Object"> + <menu_item_call label="Comprar" name="Menu Object Take"/> + <menu_item_call label="Coger una copia" name="Take Copy"/> + <menu_item_call label="Guardar una copia en mi inventario" name="Save Object Back to My Inventory"/> + <menu_item_call label="Guardar una copia del objeto en los contenidos de donde salió" name="Save Object Back to Object Contents"/> + </menu> + <menu label="Scripts" name="Scripts"> + <menu_item_call label="Recompilar los scripts (Mono)" name="Mono"/> + <menu_item_call label="Recompilar los scripts (LSL)" name="LSL"/> + <menu_item_call label="Reiniciar los scripts" name="Reset Scripts"/> + <menu_item_call label="Definir los scripts a ejecutar" name="Set Scripts to Running"/> + <menu_item_call label="Configurar scripts como no ejecutándose" name="Set Scripts to Not Running"/> + </menu> + <menu label="Opciones" name="Options"> + <menu_item_check label="Editar las partes enlazadas" name="Edit Linked Parts"/> + <menu_item_call label="Configurar los permisos por defecto de subida" name="perm prefs"/> + <menu_item_check label="Mostrar los permisos avanzados" name="DebugPermissions"/> + <menu label="Selección" name="Selection"> + <menu_item_check label="Seleccionar sólo mis objetos" name="Select Only My Objects"/> + <menu_item_check label="Seleccionar sólo los objetos movibles" name="Select Only Movable Objects"/> + <menu_item_check label="Seleccionar marcando los alrededores" name="Select By Surrounding"/> + </menu> + <menu label="Mostrar" name="Show"> + <menu_item_check label="Al seleccionar, mostrar lo oculto" name="Show Hidden Selection"/> + <menu_item_check label="Al seleccionar, mostrar el radio de la luz" name="Show Light Radius for Selection"/> + <menu_item_check label="Mostrar el rayo indicador" name="Show Selection Beam"/> + </menu> + <menu label="Cuadrícula" name="Grid"> + <menu_item_check label="Ajustar a la cuadrícula" name="Snap to Grid"/> + <menu_item_call label="Ajustar a la cuadrícula los ejes X e Y" name="Snap Object XY to Grid"/> + <menu_item_call label="Usar lo seleccionado como cuadrícula" name="Use Selection for Grid"/> + <menu_item_call label="Opciones de la cuadrícula" name="Grid Options"/> + </menu> + </menu> + <menu label="Seleccionar las partes enlazadas" name="Select Linked Parts"> + <menu_item_call label="Seleccionar la parte siguiente" name="Select Next Part"/> + <menu_item_call label="Seleccionar la parte previa" name="Select Previous Part"/> + <menu_item_call label="Incluir la parte siguiente" name="Include Next Part"/> + <menu_item_call label="Incluir la parte previa" name="Include Previous Part"/> + </menu> </menu> <menu label="Ayuda" name="Help"> <menu_item_call label="Ayuda de [SECOND_LIFE]" name="Second Life Help"/> <menu_item_call label="Tutorial" name="Tutorial"/> - <menu_item_separator label="-----------" name="separator"/> - <menu_item_call label="Blog oficial..." name="Official Linden Blog..."/> - <menu_item_separator label="-----------" name="separator2"/> - <menu_item_call label="Portal de programación..." name="Scripting Portal..."/> - <menu_item_separator label="-----------" name="separator3"/> - <menu_item_call label="Denunciar una infracción..." name="Report Abuse..."/> - <menu_item_call label="Choques, empujones, e impactos..." name="Bumps, Pushes &amp; Hits..."/> - <menu_item_call label="Medidor del lag" name="Lag Meter"/> - <menu_item_separator label="-----------" name="separator7"/> - <menu label="Informes de fallos" name="Bug Reporting"> - <menu_item_call label="Public Issue Tracker..." name="Public Issue Tracker..."/> - <menu_item_call label="Ayuda del Public Issue Tracker..." name="Publc Issue Tracker Help..."/> - <menu_item_separator label="-----------" name="separator7"/> - <menu_item_call label="Informes de fallos - instrucciones..." name="Bug Reporing 101..."/> - <menu_item_call label="Problemas de seguridad..." name="Security Issues..."/> - <menu_item_call label="Wiki QA..." name="QA Wiki..."/> - <menu_item_separator label="-----------" name="separator9"/> - <menu_item_call label="Informar de un fallo..." name="Report Bug..."/> - </menu> - <menu_item_call label="Acerca de [APP_NAME]..." name="About Second Life..."/> + <menu_item_call label="Denunciar una infracción" name="Report Abuse"/> + <menu_item_call label="Informar de un fallo" name="Report Bug"/> + </menu> + <menu label="Avanzado" name="Advanced"> + <menu_item_check label="Pasar al estado ausente tras 30 min." name="Go Away/AFK When Idle"/> + <menu_item_call label="Parar mis animaciones" name="Stop Animating My Avatar"/> + <menu_item_call label="Recargar las texturas" name="Rebake Texture"/> + <menu_item_call label="Interfaz en el tamaño predeterminado" name="Set UI Size to Default"/> + <menu_item_check label="Limitar la distancia para Seleccionar" name="Limit Select Distance"/> + <menu_item_check label="Desactivar los límites de la cámara" name="Disable Camera Distance"/> + <menu_item_check label="Foto en Alta Resolución" name="HighResSnapshot"/> + <menu_item_check label="Silenciar el Guardar una foto" name="QuietSnapshotsToDisk"/> + <menu_item_check label="Comprimir las fotos para el disco duro" name="CompressSnapshotsToDisk"/> + <menu label="Herramientas de rendimiento" name="Performance Tools"> + <menu_item_call label="Medidor de lag" name="Lag Meter"/> + <menu_item_check label="Estadísticas" name="Statistics Bar"/> + <menu_item_check label="Mostrar cuánto cuesta renderizar el avatar" name="Avatar Rendering Cost"/> + </menu> + <menu label="Realzando y Visibilidad" name="Highlighting and Visibility"> + <menu_item_check label="Baliza con destellos" name="Cheesy Beacon"/> + <menu_item_check label="Ocultar las partículas" name="Hide Particles"/> + <menu_item_check label="Ocultar lo seleccionado" name="Hide Selected"/> + <menu_item_check label="Realzar las transparencias" name="Highlight Transparent"/> + <menu_item_check label="Mostrar los HUD anexados" name="Show HUD Attachments"/> + <menu_item_check label="Mostrar el Punto de Mira en la vista subjetiva" name="ShowCrosshairs"/> + <menu_item_check label="Mostrar información complementaria del terreno" name="Land Tips"/> + </menu> + <menu label="Objetos representados" name="Rendering Types"> + <menu_item_check label="Simple" name="Simple"/> + <menu_item_check label="Alfa" name="Alpha"/> + <menu_item_check label="Árbol" name="Tree"/> + <menu_item_check label="Avatares" name="Character"/> + <menu_item_check label="Superficie del terreno" name="SurfacePath"/> + <menu_item_check label="Cielo" name="Sky"/> + <menu_item_check label="Agua" name="Water"/> + <menu_item_check label="Terreno" name="Ground"/> + <menu_item_check label="volumen" name="Volume"/> + <menu_item_check label="Hierba" name="Grass"/> + <menu_item_check label="Nubes" name="Clouds"/> + <menu_item_check label="Partículas" name="Particles"/> + <menu_item_check label="Efectos de relieve" name="Bump"/> + </menu> + <menu label="Rasgos renderizados" name="Rendering Features"> + <menu_item_check label="UI" name="UI"/> + <menu_item_check label="Seleccionado" name="Selected"/> + <menu_item_check label="Realzados" name="Highlighted"/> + <menu_item_check label="Texturas dinámicas" name="Dynamic Textures"/> + <menu_item_check label="Huellas" name="Foot Shadows"/> + <menu_item_check label="Niebla" name="Fog"/> + <menu_item_check label="Objetos flexibles" name="Flexible Objects"/> + </menu> + <menu_item_check label="Ejecutar múltiples temas" name="Run Multiple Threads"/> + <menu_item_call label="Vaciar la caché de grupo" name="ClearGroupCache"/> + <menu_item_check label="Vista subjetiva suavizada" name="Mouse Smoothing"/> + <menu_item_check label="Mostrar los MI en el chat" name="IMInChat"/> + <menu label="Atajos de teclado" name="Shortcuts"> + <menu_item_check label="Buscar" name="Search"/> + <menu_item_call label="Recuperar las teclas" name="Release Keys"/> + <menu_item_call label="Interfaz en el tamaño predeterminado" name="Set UI Size to Default"/> + <menu_item_check label="Correr siempre" name="Always Run"/> + <menu_item_check label="Volar" name="Fly"/> + <menu_item_call label="Cerrar la ventana" name="Close Window"/> + <menu_item_call label="Cerrar todas las ventanas" name="Close All Windows"/> + <menu_item_call label="Guardar una foto" name="Snapshot to Disk"/> + <menu_item_call label="Vista subjetiva" name="Mouselook"/> + <menu_item_check label="Flycam del joystick" name="Joystick Flycam"/> + <menu_item_call label="Volver a la vista por defecto" name="Reset View"/> + <menu_item_call label="Mirar al último que habló" name="Look at Last Chatter"/> + <menu label="Seleccionar la herramienta de construcción" name="Select Tool"> + <menu_item_call label="Herramienta Visión" name="Focus"/> + <menu_item_call label="Herramienta Mover" name="Move"/> + <menu_item_call label="Herramienta Editar" name="Edit"/> + <menu_item_call label="Herramienta Crear" name="Create"/> + <menu_item_call label="Herramienta Terreno" name="Land"/> + </menu> + <menu_item_call label="Acercar el zoom" name="Zoom In"/> + <menu_item_call label="Zoom por defecto" name="Zoom Default"/> + <menu_item_call label="Alejar el zoom" name="Zoom Out"/> + <menu_item_call label="Pantalla completa" name="Toggle Fullscreen"/> + </menu> + <menu_item_call label="Mostrar las configuraciones del depurador" name="Debug Settings"/> + <menu_item_check label="Mostrar el menú Desarrollar" name="Debug Mode"/> + </menu> + <menu label="Develop" name="Develop"> + <menu label="Consoles" name="Consoles"> + <menu_item_check label="Texture Console" name="Texture Console"/> + <menu_item_check label="Debug Console" name="Debug Console"/> + <menu_item_call label="Notifications Console" name="Notifications"/> + <menu_item_check label="Texture Size Console" name="Texture Size"/> + <menu_item_check label="Texture Category Console" name="Texture Category"/> + <menu_item_check label="Fast Timers" name="Fast Timers"/> + <menu_item_check label="Memory" name="Memory"/> + <menu_item_call label="Region Info to Debug Console" name="Region Info to Debug Console"/> + <menu_item_check label="Camera" name="Camera"/> + <menu_item_check label="Wind" name="Wind"/> + </menu> + <menu label="Show Info" name="Display Info"> + <menu_item_check label="Show Time" name="Show Time"/> + <menu_item_check label="Show Render Info" name="Show Render Info"/> + <menu_item_check label="Show Color Under Cursor" name="Show Color Under Cursor"/> + <menu_item_check label="Show Updates to Objects" name="Show Updates"/> + </menu> + <menu label="Force an Error" name="Force Errors"> + <menu_item_call label="Force Breakpoint" name="Force Breakpoint"/> + <menu_item_call label="FForce LLError And Crash" name="Force LLError And Crash"/> + <menu_item_call label="Force Bad Memory Access" name="Force Bad Memory Access"/> + <menu_item_call label="Force an Infinite Loop" name="Force Infinite Loop"/> + <menu_item_call label="Force Driver Crash" name="Force Driver Carsh"/> + <menu_item_call label="Force Software Exception" name="Force Software Exception"/> + <menu_item_call label="Force Disconnect Viewer" name="Force Disconnect Viewer"/> + <menu_item_call label="Simulate a Memory Leak" name="Memory Leaking Simulation"/> + </menu> + <menu label="Render Tests" name="Render Tests"> + <menu_item_check label="Camera Offset" name="Camera Offset"/> + <menu_item_check label="Randomize Framerate" name="Randomize Framerate"/> + <menu_item_check label="Frame Test" name="Frame Test"/> + </menu> + <menu label="Rendering" name="Rendering"> + <menu_item_check label="Ejes" name="Axes"/> + <menu_item_check label="Wireframe" name="Wireframe"/> + <menu_item_check label="Global Illumination" name="Global Illumination"/> + <menu_item_check label="Animation Textures" name="Animation Textures"/> + <menu_item_check label="Disable Textures" name="Disable Textures"/> + <menu_item_check label="Render Attached Lights" name="Render Attached Lights"/> + <menu_item_check label="Render Attached Particles" name="Render Attached Particles"/> + <menu_item_check label="Hover Glow Objects" name="Hover Glow Objects"/> + </menu> + <menu label="Red" name="Network"> + <menu_item_check label="Pause Avatar" name="AgentPause"/> + <menu_item_call label="Drop a Packet" name="Drop a Packet"/> + </menu> + <menu_item_call label="Bumps, Pushes & Hits" name="Bumps, Pushes &amp; Hits"/> + <menu label="World" name="World"> + <menu_item_check label="Region Sun Override" name="Sim Sun Override"/> + <menu_item_check label="Baliza con destellos" name="Cheesy Beacon"/> + <menu_item_check label="Fixed Weather" name="Fixed Weather"/> + <menu_item_call label="Dump Region Object Cache" name="Dump Region Object Cache"/> + </menu> + <menu label="UI" name="UI"> + <menu_item_call label="Web Browser Test" name="Web Browser Test"/> + <menu_item_call label="Print Selected Object Info" name="Print Selected Object Info"/> + <menu_item_call label="Memory Stats" name="Memory Stats"/> + <menu_item_check label="Double-Click Auto-Pilot" name="Double-ClickAuto-Pilot"/> + <menu_item_check label="Debug Clicks" name="Debug Clicks"/> + <menu_item_check label="Debug Mouse Events" name="Debug Mouse Events"/> + </menu> + <menu label="XUI" name="XUI"> + <menu_item_call label="Reload Color Settings" name="Reload Color Settings"/> + <menu_item_call label="Show Font Test" name="Show Font Test"/> + <menu_item_call label="Load from XML" name="Load from XML"/> + <menu_item_call label="Save to XML" name="Save to XML"/> + <menu_item_check label="Show XUI Names" name="Show XUI Names"/> + <menu_item_call label="Send Test IMs" name="Send Test IMs"/> + </menu> + <menu label="Avatar" name="Character"> + <menu label="Grab Baked Texture" name="Grab Baked Texture"> + <menu_item_call label="Iris" name="Iris"/> + <menu_item_call label="Cabeza" name="Head"/> + <menu_item_call label="Upper Body" name="Upper Body"/> + <menu_item_call label="Lower Body" name="Lower Body"/> + <menu_item_call label="Falda" name="Skirt"/> + </menu> + <menu label="Character Tests" name="Character Tests"> + <menu_item_call label="Toggle Character Geometry" name="Toggle Character Geometry"/> + <menu_item_check label="Allow Select Avatar" name="Allow Select Avatar"/> + </menu> + <menu_item_call label="Force Params to Default" name="Force Params to Default"/> + <menu_item_check label="Animation Info" name="Animation Info"/> + <menu_item_check label="Slow Motion Animations" name="Slow Motion Animations"/> + <menu_item_check label="Disable Level Of Detail" name="Disable LOD"/> + <menu_item_check label="Show Collision Skeleton" name="Show Collision Skeleton"/> + <menu_item_check label="Display Agent Target" name="Display Agent Target"/> + <menu_item_call label="Debug Avatar Textures" name="Debug Avatar Textures"/> + </menu> + <menu_item_check label="HTTP Textures" name="HTTP Textures"/> + <menu_item_check label="Console Window on next Run" name="Console Window"/> + <menu_item_check label="Show Admin Menu" name="View Admin Options"/> + <menu_item_call label="Solicitar estatus de Administrador" name="Request Admin Options"/> + <menu_item_call label="Dejar el estatus de Administrador" name="Leave Admin Options"/> + </menu> + <menu label="Admin" name="Admin"> + <menu label="Object"> + <menu_item_call label="Coger una copia" name="Take Copy"/> + <menu_item_call label="Force Owner To Me" name="Force Owner To Me"/> + <menu_item_call label="Force Owner Permissive" name="Force Owner Permissive"/> + <menu_item_call label="Eliminar" name="Delete"/> + <menu_item_call label="Lock" name="Lock"/> + </menu> + <menu label="Parcel" name="Parcel"> + <menu_item_call label="Force Owner To Me" name="Owner To Me"/> + <menu_item_call label="Set to Linden Content" name="Set to Linden Content"/> + <menu_item_call label="Claim Public Land" name="Claim Public Land"/> + </menu> + <menu label="Región" name="Region"> + <menu_item_call label="Dump Temporary Asset Data" name="Dump Temp Asset Data"/> + <menu_item_call label="Save Region State" name="Save Region State"/> + </menu> + <menu_item_call label="God Tools" name="God Tools"/> </menu> </menu_bar> diff --git a/indra/newview/skins/default/xui/es/mime_types_linux.xml b/indra/newview/skins/default/xui/es/mime_types_linux.xml new file mode 100644 index 0000000000..77d05934f4 --- /dev/null +++ b/indra/newview/skins/default/xui/es/mime_types_linux.xml @@ -0,0 +1,217 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<mimetypes name="default"> + <widgetset name="web"> + <label name="web_label"> + Contenido web + </label> + <tooltip name="web_tooltip"> + Este sitio tiene contenido web + </tooltip> + <playtip name="web_playtip"> + Mostrar el contenido web + </playtip> + </widgetset> + <widgetset name="movie"> + <label name="movie_label"> + Película + </label> + <tooltip name="movie_tooltip"> + Aquí puede verse una película + </tooltip> + <playtip name="movie_playtip"> + Ver la película + </playtip> + </widgetset> + <widgetset name="image"> + <label name="image_label"> + Imagen + </label> + <tooltip name="image_tooltip"> + En este sitio hay una imagen + </tooltip> + <playtip name="image_playtip"> + Ver la imagen de esta localización + </playtip> + </widgetset> + <widgetset name="audio"> + <label name="audio_label"> + Audio + </label> + <tooltip name="audio_tooltip"> + En este sitio hay audio + </tooltip> + <playtip name="audio_playtip"> + Oír el audio de este sitio + </playtip> + </widgetset> + <scheme name="rtsp"> + <label name="rtsp_label"> + Streaming en 'Real Time' + </label> + </scheme> + <mimetype name="blank"> + <label name="blank_label"> + - Vacío - + </label> + </mimetype> + <mimetype name="none/none"> + <label name="none/none_label"> + - Vacío - + </label> + </mimetype> + <mimetype name="audio/*"> + <label name="audio2_label"> + Audio + </label> + </mimetype> + <mimetype name="video/*"> + <label name="video2_label"> + Vídeo + </label> + </mimetype> + <mimetype name="image/*"> + <label name="image2_label"> + Imagen + </label> + </mimetype> + <mimetype name="video/vnd.secondlife.qt.legacy"> + <label name="vnd.secondlife.qt.legacy_label"> + Película (QuickTime) + </label> + </mimetype> + <mimetype name="application/javascript"> + <label name="application/javascript_label"> + Javascript + </label> + </mimetype> + <mimetype name="application/ogg"> + <label name="application/ogg_label"> + Audio/Vídeo Ogg + </label> + </mimetype> + <mimetype name="application/pdf"> + <label name="application/pdf_label"> + Documento PDF + </label> + </mimetype> + <mimetype name="application/postscript"> + <label name="application/postscript_label"> + Documento Postscript + </label> + </mimetype> + <mimetype name="application/rtf"> + <label name="application/rtf_label"> + Texto enriquecido (RTF) + </label> + </mimetype> + <mimetype name="application/smil"> + <label name="application/smil_label"> + Synchronized Multimedia Integration Language (SMIL) + </label> + </mimetype> + <mimetype name="application/xhtml+xml"> + <label name="application/xhtml+xml_label"> + Página web (XHTML) + </label> + </mimetype> + <mimetype name="application/x-director"> + <label name="application/x-director_label"> + Macromedia Director + </label> + </mimetype> + <mimetype name="audio/mid"> + <label name="audio/mid_label"> + Audio (MIDI) + </label> + </mimetype> + <mimetype name="audio/mpeg"> + <label name="audio/mpeg_label"> + Audio (MP3) + </label> + </mimetype> + <mimetype name="audio/x-aiff"> + <label name="audio/x-aiff_label"> + Audio (AIFF) + </label> + </mimetype> + <mimetype name="audio/x-wav"> + <label name="audio/x-wav_label"> + Audio (WAV) + </label> + </mimetype> + <mimetype name="image/bmp"> + <label name="image/bmp_label"> + Imagen (BMP) + </label> + </mimetype> + <mimetype name="image/gif"> + <label name="image/gif_label"> + Imagen (GIF) + </label> + </mimetype> + <mimetype name="image/jpeg"> + <label name="image/jpeg_label"> + Imagen (JPEG) + </label> + </mimetype> + <mimetype name="image/png"> + <label name="image/png_label"> + Imagen (PNG) + </label> + </mimetype> + <mimetype name="image/svg+xml"> + <label name="image/svg+xml_label"> + Imagen (SVG) + </label> + </mimetype> + <mimetype name="image/tiff"> + <label name="image/tiff_label"> + Imagen (TIFF) + </label> + </mimetype> + <mimetype name="text/html"> + <label name="text/html_label"> + Página web + </label> + </mimetype> + <mimetype name="text/plain"> + <label name="text/plain_label"> + Texto + </label> + </mimetype> + <mimetype name="text/xml"> + <label name="text/xml_label"> + XML + </label> + </mimetype> + <mimetype name="video/mpeg"> + <label name="video/mpeg_label"> + Película (MPEG) + </label> + </mimetype> + <mimetype name="video/mp4"> + <label name="video/mp4_label"> + Película (MP4) + </label> + </mimetype> + <mimetype name="video/quicktime"> + <label name="video/quicktime_label"> + Película (QuickTime) + </label> + </mimetype> + <mimetype name="video/x-ms-asf"> + <label name="video/x-ms-asf_label"> + Película (Windows Media ASF) + </label> + </mimetype> + <mimetype name="video/x-ms-wmv"> + <label name="video/x-ms-wmv_label"> + Película (Windows Media WMV) + </label> + </mimetype> + <mimetype name="video/x-msvideo"> + <label name="video/x-msvideo_label"> + Película (AVI) + </label> + </mimetype> +</mimetypes> diff --git a/indra/newview/skins/default/xui/es/mime_types_mac.xml b/indra/newview/skins/default/xui/es/mime_types_mac.xml new file mode 100644 index 0000000000..77d05934f4 --- /dev/null +++ b/indra/newview/skins/default/xui/es/mime_types_mac.xml @@ -0,0 +1,217 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<mimetypes name="default"> + <widgetset name="web"> + <label name="web_label"> + Contenido web + </label> + <tooltip name="web_tooltip"> + Este sitio tiene contenido web + </tooltip> + <playtip name="web_playtip"> + Mostrar el contenido web + </playtip> + </widgetset> + <widgetset name="movie"> + <label name="movie_label"> + Película + </label> + <tooltip name="movie_tooltip"> + Aquí puede verse una película + </tooltip> + <playtip name="movie_playtip"> + Ver la película + </playtip> + </widgetset> + <widgetset name="image"> + <label name="image_label"> + Imagen + </label> + <tooltip name="image_tooltip"> + En este sitio hay una imagen + </tooltip> + <playtip name="image_playtip"> + Ver la imagen de esta localización + </playtip> + </widgetset> + <widgetset name="audio"> + <label name="audio_label"> + Audio + </label> + <tooltip name="audio_tooltip"> + En este sitio hay audio + </tooltip> + <playtip name="audio_playtip"> + Oír el audio de este sitio + </playtip> + </widgetset> + <scheme name="rtsp"> + <label name="rtsp_label"> + Streaming en 'Real Time' + </label> + </scheme> + <mimetype name="blank"> + <label name="blank_label"> + - Vacío - + </label> + </mimetype> + <mimetype name="none/none"> + <label name="none/none_label"> + - Vacío - + </label> + </mimetype> + <mimetype name="audio/*"> + <label name="audio2_label"> + Audio + </label> + </mimetype> + <mimetype name="video/*"> + <label name="video2_label"> + Vídeo + </label> + </mimetype> + <mimetype name="image/*"> + <label name="image2_label"> + Imagen + </label> + </mimetype> + <mimetype name="video/vnd.secondlife.qt.legacy"> + <label name="vnd.secondlife.qt.legacy_label"> + Película (QuickTime) + </label> + </mimetype> + <mimetype name="application/javascript"> + <label name="application/javascript_label"> + Javascript + </label> + </mimetype> + <mimetype name="application/ogg"> + <label name="application/ogg_label"> + Audio/Vídeo Ogg + </label> + </mimetype> + <mimetype name="application/pdf"> + <label name="application/pdf_label"> + Documento PDF + </label> + </mimetype> + <mimetype name="application/postscript"> + <label name="application/postscript_label"> + Documento Postscript + </label> + </mimetype> + <mimetype name="application/rtf"> + <label name="application/rtf_label"> + Texto enriquecido (RTF) + </label> + </mimetype> + <mimetype name="application/smil"> + <label name="application/smil_label"> + Synchronized Multimedia Integration Language (SMIL) + </label> + </mimetype> + <mimetype name="application/xhtml+xml"> + <label name="application/xhtml+xml_label"> + Página web (XHTML) + </label> + </mimetype> + <mimetype name="application/x-director"> + <label name="application/x-director_label"> + Macromedia Director + </label> + </mimetype> + <mimetype name="audio/mid"> + <label name="audio/mid_label"> + Audio (MIDI) + </label> + </mimetype> + <mimetype name="audio/mpeg"> + <label name="audio/mpeg_label"> + Audio (MP3) + </label> + </mimetype> + <mimetype name="audio/x-aiff"> + <label name="audio/x-aiff_label"> + Audio (AIFF) + </label> + </mimetype> + <mimetype name="audio/x-wav"> + <label name="audio/x-wav_label"> + Audio (WAV) + </label> + </mimetype> + <mimetype name="image/bmp"> + <label name="image/bmp_label"> + Imagen (BMP) + </label> + </mimetype> + <mimetype name="image/gif"> + <label name="image/gif_label"> + Imagen (GIF) + </label> + </mimetype> + <mimetype name="image/jpeg"> + <label name="image/jpeg_label"> + Imagen (JPEG) + </label> + </mimetype> + <mimetype name="image/png"> + <label name="image/png_label"> + Imagen (PNG) + </label> + </mimetype> + <mimetype name="image/svg+xml"> + <label name="image/svg+xml_label"> + Imagen (SVG) + </label> + </mimetype> + <mimetype name="image/tiff"> + <label name="image/tiff_label"> + Imagen (TIFF) + </label> + </mimetype> + <mimetype name="text/html"> + <label name="text/html_label"> + Página web + </label> + </mimetype> + <mimetype name="text/plain"> + <label name="text/plain_label"> + Texto + </label> + </mimetype> + <mimetype name="text/xml"> + <label name="text/xml_label"> + XML + </label> + </mimetype> + <mimetype name="video/mpeg"> + <label name="video/mpeg_label"> + Película (MPEG) + </label> + </mimetype> + <mimetype name="video/mp4"> + <label name="video/mp4_label"> + Película (MP4) + </label> + </mimetype> + <mimetype name="video/quicktime"> + <label name="video/quicktime_label"> + Película (QuickTime) + </label> + </mimetype> + <mimetype name="video/x-ms-asf"> + <label name="video/x-ms-asf_label"> + Película (Windows Media ASF) + </label> + </mimetype> + <mimetype name="video/x-ms-wmv"> + <label name="video/x-ms-wmv_label"> + Película (Windows Media WMV) + </label> + </mimetype> + <mimetype name="video/x-msvideo"> + <label name="video/x-msvideo_label"> + Película (AVI) + </label> + </mimetype> +</mimetypes> diff --git a/indra/newview/skins/default/xui/es/notifications.xml b/indra/newview/skins/default/xui/es/notifications.xml index 6b58bbea47..08b0ab1720 100644 --- a/indra/newview/skins/default/xui/es/notifications.xml +++ b/indra/newview/skins/default/xui/es/notifications.xml @@ -9,74 +9,33 @@ <global name="implicitclosebutton"> Cerrar </global> - <template name="okbutton"> - <form> - <button - name="OK" - text="$yestext"/> - </form> - </template> - - <template name="okignore"> - <form> - <button - name="OK" - text="$yestext"/> - <ignore text="$ignoretext"/> - </form> - </template> - - <template name="okcancelbuttons"> - <form> - <button - name="OK" - text="$yestext"/> - <button - name="Cancel" - text="$notext"/> - </form> - </template> - - <template name="okcancelignore"> - <form> - <button - name="OK" - text="$yestext"/> - <button - name="Cancel" - text="$notext"/> - <ignore text="$ignoretext"/> - </form> - </template> - - <template name="okhelpbuttons"> - <form> - <button - name="OK" - text="$yestext"/> - <button - name="Help" - text="$helptext"/> - </form> - </template> - - <template name="yesnocancelbuttons"> - <form> - <button - name="Yes" - text="$yestext"/> - <button - name="No" - text="$notext"/> - <button - name="Cancel" - text="$canceltext"/> - </form> - </template> - <notification functor="GenericAcknowledge" label="Mensaje de alerta desconocida" name="MissingAlert"> - Su versión de [APP_NAME] no sabe cómo mostrar el mensaje de alerta que acaba de recibir. - -Detalles del error: no se ha encontrado en notifications.xml la alerta llamada '[_NAME]'. + <template name="okbutton"> + <form> + <button name="OK" text="$yestext"/> + </form> + </template> + <template name="okignore"/> + <template name="okcancelbuttons"> + <form> + <button name="Cancel" text="$notext"/> + </form> + </template> + <template name="okcancelignore"/> + <template name="okhelpbuttons"> + <form> + <button name="Help" text="$helptext"/> + </form> + </template> + <template name="yesnocancelbuttons"> + <form> + <button name="Yes" text="$yestext"/> + <button name="No" text="$notext"/> + </form> + </template> + <notification functor="GenericAcknowledge" label="Mensaje de notificación desconocida" name="MissingAlert"> + Tu versión de [APP_NAME] no sabe cómo mostrar la notificación que acaba de recibir. Por favor, comprueba que tienes instalado el último Visor. + +Detalles del error: la notificación de nombre '[_NAME]' no se ha encontrado en notifications.xml. <usetemplate name="okbutton" yestext="OK"/> </notification> <notification name="FloaterNotFound"> @@ -97,24 +56,18 @@ Detalles del error: no se ha encontrado en notifications.xml la alerta llamada & <usetemplate name="okcancelbuttons" notext="Cancelar" yestext="Sí"/> </notification> <notification name="BadInstallation"> - Ha habido un error al actualizar [APP_NAME]. Por favor, descargue la última versión desde secondlife.com. - <usetemplate - name="okbutton" - yestext="OK"/> + Ha habido un error actualizando [APP_NAME]. Por favor, [http://get.secondlife.com descarga la última versión] del Visor. + <usetemplate name="okbutton" yestext="OK"/> </notification> <notification name="LoginFailedNoNetwork"> - Error de red: no se ha podido conectar. + No se puede conectar con [SECOND_LIFE_GRID]. '[DIAGNOSTIC]' -Por favor, revise su conexión a internet. - <usetemplate - name="okbutton" - yestext="OK"/> +Asegúrate de que tu conexión a internet está funcionando adecuadamente. + <usetemplate name="okbutton" yestext="OK"/> </notification> <notification name="MessageTemplateNotFound"> No se ha encontrado la plantilla de mensaje [PATH]. - <usetemplate - name="okbutton" - yestext="OK"/> + <usetemplate name="okbutton" yestext="OK"/> </notification> <notification name="WearableSave"> ¿Guardar los cambios en las ropas o partes del cuerpo actuales? @@ -173,7 +126,7 @@ Por favor, revise su conexión a internet. Va a añadir miembros al rol de [ROLE_NAME]. No podrá removérseles de ese rol, sino que deberán renunciar a él por sí mismos. ¿Está seguro de que quiere seguir? - <usetemplate ignoretext="Cuando se añaden miembros del grupo al rol de propietario" name="okcancelignore" notext="No" yestext="Sí"/> + <usetemplate ignoretext="Confirma que vas a añadir un nuevo Propietario al grupo" name="okcancelignore" notext="No" yestext="Sí"/> </notification> <notification name="AssignDangerousActionWarning"> Va a añadir la capacidad '[ACTION_NAME]' al rol '[ROLE_NAME]'. @@ -191,58 +144,8 @@ No podrá removérseles de ese rol, sino que deberán renunciar a él por sí mi ¿Añadir esta capacidad a '[ROLE_NAME]'? <usetemplate name="okcancelbuttons" notext="No" yestext="Sí"/> </notification> - <notification name="ClickPublishHelpLand"> - Seleccionar 'Publicar en la web' -Marcando este ítem, se mostrará: -- esta parcela en los resultados de la búsqueda -- los objetos públicos de esta parcela -- esta parcela en la búsqueda de la web - </notification> - <notification name="ClickSoundHelpLand"> - Los media y la música sólo pueden disfrutarse dentro de la parcela. Según el nivel de calificación de los residentes, las opciones de sonido y de voz pueden ceñirse a la parcela u oírse fuera de ella. ¿Quiere ir a la Base de Conocimientos para aprender más sobre cómo configurar estas opciones? - <url name="url"> - https://support.secondlife.com/ics/support/default.asp?deptID=4417&task=knowledge&questionID=5046 - </url> - <usetemplate - name="okcancelbuttons" - yestext="Ir a la Base de Conocimientos" - notext="Cerrar" /> - </notification> - <notification name="ClickSearchHelpAll"> - Los resultados de la búsqueda se organizan según la pestaña en que esté, su nivel de calificación, la categoría elegida, y otros factores. Para más detalles, vea, por favor, la Base de Conocimientos. - <url name="url"> - https://support.secondlife.com/ics/support/default.asp?deptID=4417&task=knowledge&questionID=4722 - </url> - <usetemplate - name="okcancelbuttons" - yestext="Ir a la Base de Conocimientos" - notext="Cerrar" /> - </notification> - <notification name="ClickPublishHelpLandDisabled"> - No puede hacer que esta parcela aparezca en la búsqueda, porque está situada en una región que lo prohíbe. - </notification> - <notification name="ClickPublishHelpAvatar"> - Al seleccionar 'Mostrar en la búsqueda' se mostrará: -- mi perfil en los resultados de la búsqueda -- un enlace a mi perfil en las páginas públicas de grupo - </notification> - <notification name="ClickPartnerHelpAvatar"> - Puede proponérselo a otro residente o disolver su relación con un/a compañero/a en el sitio web de [SECOND_LIFE]. - -¿Ir al sitio web de [SECOND_LIFE] para tener más información sobre este asunto? - <usetemplate name="okcancelbuttons" notext="Cancelar" yestext="Ir a la página"/> - </notification> - <notification name="ClickUploadHelpPermissions"> - Sus permisos por defecto no funcionarán en regiones antiguas. - </notification> - <notification name="ClickWebProfileHelpAvatar"> - Si este residente ha indicado una URL para mostrar un perfil en la web, usted puede: - * Pulsar 'Cargar' para ver la página en esta pestaña web. - * Pulsar Cargar > 'En un navegador externo' para ver la página en su navegador por defecto. - * Pulsar Cargar > 'URL Inicio' para volver al perfil en la web de este residente si usted ha estado navegando por otros sitios. - -Cuando esté viendo su propio perfil, puede introducir cualquier URL como su perfil web, y pulsar OK para fijarla. -Los demás residentes podrán visitar la URL que usted haya elegido cuando vean su perfil. + <notification name="ClickUnimplemented"> + Lo sentimos, aún no está implementado. </notification> <notification name="JoinGroupCanAfford"> Entrar a este grupo cuesta [COST] L$. @@ -253,6 +156,12 @@ Los demás residentes podrán visitar la URL que usted haya elegido cuando vean Entrar a este grupo cuesta [COST] L$. No tiene dinero suficiente para entrar. </notification> + <notification name="CreateGroupCost"> + Crear este grupo te costará 100 L$. +Los grupos necesitan más de un miembro. Si no, son borrados permanentemente. +Por favor, invita a miembros en las próximas 48 horas. + <usetemplate canceltext="Cancelar" name="okcancelbuttons" notext="Cancelar" yestext="Crear un grupo por 100 L$"/> + </notification> <notification name="LandBuyPass"> Por [COST] L$ puede entrar a este terreno ('[PARCEL_NAME]') durante [TIME] horas. ¿Comprar un pase? <usetemplate name="okcancelbuttons" notext="Cancelar" yestext="OK"/> @@ -267,10 +176,10 @@ Su precio de venta será de [SALE_PRICE] L$, y se autorizará la compra sólo a <usetemplate name="okcancelbuttons" notext="Cancelar" yestext="OK"/> </notification> <notification name="ConfirmLandSaleToAnyoneChange"> - ATENCIÓN: Al pulsar 'vender a cualquiera', su terreno estará disponible para toda la comunidad de [SECOND_LIFE], incluso para quienes no están en esta región. + ATENCIÓN: Marcando 'vender a cualquiera' hace que tu terreno esté disponible para toda la comunidad de [SECOND_LIFE], incluso para quienes no están en esta región. -Los [LAND_SIZE] m² de terreno seleccionados se van a poner a la venta. -Su precio de venta será de [SALE_PRICE] L$, y se autorizará la compra a [NAME]. +Los [LAND_SIZE] m² seleccionados de terreno se van a poner a la venta. +El precio de venta será de [SALE_PRICE] L$ y se autoriza la compra a [NAME]. <usetemplate name="okcancelbuttons" notext="Cancelar" yestext="OK"/> </notification> <notification name="ReturnObjectsDeededToGroup"> @@ -330,6 +239,12 @@ Objetos: [N] Toda esta región tiene activado el 'daño'. Para que funcionen las armas los scripts deben estar activados. </notification> + <notification name="MultipleFacesSelected"> + Están seleccionadas varias caras. +Si sigues con esta acción, en las diferentes caras del objeto aparecerán distintas peticiones de los media. +Para colocar los media en una sola cara, marca la opción Elegir la cara y pulsa en la cara adecuada del objeto, y luego pulsa Añadir. + <usetemplate ignoretext="Los media se configurarán en las varias caras seleccionadas" name="okcancelignore" notext="Cancelar" yestext="OK"/> + </notification> <notification name="MustBeInParcel"> Para configurar el Punto de llegada de la parcela, debe estar usted dentro de ella. @@ -366,6 +281,10 @@ La carpeta del vestuario contiene partes del cuerpo, u objetos a anexar o que no <notification name="CannotWearTrash"> No puede vestirse ropas o partes del cuerpo que están en la Papelera </notification> + <notification name="MaxAttachmentsOnOutfit"> + No se puede anexar el objeto. +Se ha superado el límite máximo de [MAX_ATTACHMENTS] objetos. Por favor, quítate alguno. + </notification> <notification name="CannotWearInfoNotComplete"> No puede vestirse este ítem porque aún no se ha cargado. Por favor, reinténtelo en un minuto. </notification> @@ -380,17 +299,22 @@ Necesita una cuenta para entrar en [SECOND_LIFE]. ¿Quiere crear una ahora? <usetemplate name="okcancelbuttons" notext="Volver a intentarlo" yestext="Crear una cuenta nueva"/> </notification> <notification name="AddClassified"> - Los anuncios clasificados aparecen durante una semana en la sección 'Clasificados' del directorio Buscar y en [http://secondlife.com/community/classifieds/?lang=es-ES secondlife.com]. -Rellene su anuncio y pulse 'Publicar...' para añadirlo al directorio. -Cuando pulse Publicar, se le preguntará por un precio a pagar. -El pagar más hará que su anuncio aparezca más arriba en la lista, y que también aparezca más arriba cuando la gente busque por palabras clave. - <usetemplate ignoretext="Cuando se añade un nuevo Clasificado" name="okcancelignore" notext="Cancelar" yestext="OK"/> + Los anuncios clasificados aparecen durante una semana en la sección 'Clasificados' de la búsqueda y en [http://secondlife.com/community/classifieds secondlife.com]. +Rellena tu anuncio y pulsa 'Publicar...' para añadirlo al directorio. +Cuando pulses Publicar, se te preguntará por un precio a pagar. +El pagar más hará que tu anuncio aparezca más arriba en la lista, y que también aparezca más arriba en la lista cuando la gente busque por palabras clave. + <usetemplate ignoretext="Cómo crear un anuncio clasificado nuevo." name="okcancelignore" notext="Cancelar" yestext="OK"/> </notification> <notification name="DeleteClassified"> ¿Borrar el clasificado '[NAME]'? No se reembolsan las cuotas pagadas. <usetemplate name="okcancelbuttons" notext="Cancelar" yestext="OK"/> </notification> + <notification name="DeleteMedia"> + Has elegido borrar los media asociados a esta cara. +¿Estás seguro de que quieres continuar? + <usetemplate ignoretext="Confirmar antes de borrar los media de un objeto" name="okcancelignore" notext="No" yestext="Sí"/> + </notification> <notification name="ClassifiedSave"> ¿Guardar los cambios en el clasificado [NAME]? <usetemplate canceltext="Cancelar" name="yesnocancelbuttons" notext="No guardar" yestext="Guardar"/> @@ -421,17 +345,17 @@ No se reembolsan las cuotas pagadas. <usetemplate name="okcancelbuttons" notext="Cancelar" yestext="OK"/> </notification> <notification name="CacheWillClear"> - La caché se limpiará cuando reinicie [APP_NAME]. + La caché se limpiará cuando reinices [APP_NAME]. </notification> <notification name="CacheWillBeMoved"> - La caché se moverá cuando reinicie [APP_NAME]. -Nota: esto limpiará la caché. + La caché se moverá cuando reinicies [APP_NAME]. +Nota: esto vaciará la caché. </notification> <notification name="ChangeConnectionPort"> - Las configuraciones del puerto tendrán efecto cuando reinicie [APP_NAME]. + La configuración del puerto tendrá efecto cuando reinicies [APP_NAME]. </notification> <notification name="ChangeSkin"> - La nueva apariencia se verá cuando reinicie [APP_NAME]. + La nueva apariencia la verás cuando reinicies [APP_NAME]. </notification> <notification name="GoToAuctionPage"> ¿Ir a la página web de [SECOND_LIFE] para ver los detalles de la subasta @@ -480,6 +404,11 @@ El objeto debe de haber sido borrado o estar fuera de rango ('out of range& <notification name="SaveBytecodeFailReason"> Al guardar un script compilado, hubo un problema por: [REASON]. Por favor, reintente guardarlo más tarde.. </notification> + <notification name="StartRegionEmpty"> + Perdon, no está definida tu Posición inicial. +Por favor, escribe el nombre de la región en el cajetín de Posición inicial, o elige para esa posición Mi Base o Mi última posición. + <usetemplate name="okbutton" yestext="OK"/> + </notification> <notification name="CouldNotStartStopScript"> No se ha podido correr o parar el script porque no se pudo encontrar el objeto que incluye. El objeto debe de haber sido borrado o estar fuera de rango ('out of range').. @@ -498,23 +427,21 @@ Para más información, ¿quiere visitar [_URL]? <url name="url" option="0"> http://secondlife.com/support/sysreqs.php?lang=es </url> - <usetemplate ignoretext="Cuando se detecte hardware no adecuado" name="okcancelignore" notext="No" yestext="Sí"/> + <usetemplate ignoretext="El hardware de mi ordenador no está admitido" name="okcancelignore" notext="No" yestext="Sí"/> </notification> <notification name="UnknownGPU"> - En este momento, desconocemos la tarjeta gráfica de su sistema. -Con frecuencia, esto se debe a hardware nuevo que no hemos podido revisar aún. -Es muy probable que [APP_NAME] funcione correctamente, pero deberá ajustar sus configuraciones gráficas a lo que sea más apropiado. -(Menú Editar > Preferencias > Gráficos). + Tu sistema tiene una tarjeta gráfica desconocida, hoy por hoy, para [APP_NAME]. +Suele suceder con hardware nuevo aún no probado con [APP_NAME]. Lo más probable es que [APP_NAME] se ejecute correctamente, pero debes ajustar tus preferencias gráficas a niveles más adecuados. +(Yo > Preferencias > Gráficos). <form name="form"> - <ignore name="ignore" text="Cuando se detecte una tarjeta gráfica desconocida"/> + <ignore name="ignore" text="No se ha podido identificar mi tarjeta gráfica"/> </form> </notification> <notification name="DisplaySettingsNoShaders"> - [APP_NAME] se cayó al inicializar los drivers gráficos. -La calidad de los gráficos deberá establecerse en un nivel bajo para prevenir algunos errores frecuentes en los drivers. -Esto desactivará algunas opciones gráficas. -Le recomendamos que actualice los drivers de su tarjeta gráfica. -La calidad gráfica puede configurarse en Preferencias > Gráficos. + [APP_NAME] se cae al iniciar los 'driver' gráficos. +La calidad de los gráficos se configurará en Baja para prevenir algunos errores comunes de los gráficos. Esto desactivará algunas posibilidades gráficas. +Te recomendamos actualizar los 'drivers' de tu tarjeta gráfica. +La calidad gráfica puede ajustarse en Preferencias > Gráficos. </notification> <notification name="RegionNoTerraforming"> En la región [REGION] no se permite modificar el terreno. @@ -569,6 +496,9 @@ Temporalmente, será incapaz de moverse, usar el chat, o interactuar con el mund ¿Expulsar a [AVATAR_NAME] de su terreno? <usetemplate name="okcancelbuttons" notext="Cancelar" yestext="Expulsar"/> </notification> + <notification name="EjectAvatarFromGroup"> + Has expulsado a [AVATAR_NAME] del grupo [GROUP_NAME] + </notification> <notification name="AcquireErrorTooManyObjects"> ERROR 'ACQUIRE': Hay demasiados objetos seleccionados. </notification> @@ -580,7 +510,7 @@ misma región. <notification name="PromptGoToCurrencyPage"> [EXTRA] -¿Ir a [_URL] para informarse sobre la compra de L$? +¿Ir a [_URL] para informarte sobre la compra de L$? <url name="url"> http://secondlife.com/app/currency/?lang=es-ES </url> @@ -671,12 +601,15 @@ Podría ser [VALIDS] No se ha podido crear el archivo de salida: [FILE] </notification> <notification name="DoNotSupportBulkAnimationUpload"> - Actualmente, no ofrecemos la posibilidad de subida masiva de archivos de animación. + Actualmente, [APP_NAME] no admite la subida masiva de animaciones. </notification> <notification name="CannotUploadReason"> No se ha podido subir [FILE] por la siguiente razón: [REASON] Por favor, inténtelo más tarde. </notification> + <notification name="LandmarkCreated"> + Se ha añadido "[LANDMARK_NAME]" a tu carpeta [FOLDER_NAME]. + </notification> <notification name="CannotCreateLandmarkNotOwner"> No puede crear un hito aquí porque el propietario del terreno no lo permite. </notification> @@ -699,6 +632,9 @@ Seleccione objetos con scripts. Seleccione objetos con scripts en los que usted tenga permiso para modificarlos. </notification> + <notification name="CannotOpenScriptObjectNoMod"> + Imposible abrir el script del objeto sin modificar los permisos. + </notification> <notification name="CannotSetRunningSelectObjectsNoScripts"> No se puede configurar ningún script como 'ejecutándose'. @@ -726,48 +662,45 @@ por lo que no se ha hecho la búsqueda. No se ha podido teleportar. [REASON] </notification> - - <notification name="invalid_tport"> -Ha habido un problema al procesar su petición de teleporte. Debe volver a iniciar sesión para poder teleportarse. Si le sigue apareciendo este mensaje, revise, por favor, las preguntas frecuentes en el Soporte técnico: -www.secondlife.com/support - </notification> - <notification name="invalid_region_handoff"> -Ha habido un problema al procesar su paso a otra región. Debe volver a iniciar sesión para poder pasar de región a región. Si le sigue apareciendo este mensaje, revise, por favor, las preguntas frecuentes en el Soporte técnico: -www.secondlife.com/support - </notification> - <notification name="blocked_tport"> -Lo sentimos, en estos momentos los teleportes están bloqueados. Vuelva a intentarlo en un momento. Si sigue sin poder teleportarse, desconéctese y vuelva a iniciar sesión para solucionar el problema. - </notification> - <notification name="nolandmark_tport"> -Lo sentimos, pero el sistema no ha podido localizar el destino de este hito. - </notification> - <notification name="timeout_tport"> -Lo sentimos, pero el sistema no ha podido completar el teleporte. + <notification name="invalid_tport"> + Ha habido un problema al procesar tu petición de teleporte. Debes volver a iniciar sesión antes de poder teleportarte de nuevo. +Si sigues recibiendo este mensaje, por favor, acude al [SUPPORT_SITE]. + </notification> + <notification name="invalid_region_handoff"> + Ha habido un problema al procesar tu paso a otra región. Debes volver a iniciar sesión para poder pasar de región a región. +Si sigues recibiendo este mensaje, por favor, acude al [SUPPORT_SITE]. + </notification> + <notification name="blocked_tport"> + Lo sentimos, en estos momentos los teleportes están bloqueados. Vuelva a intentarlo en un momento. Si sigue sin poder teleportarse, desconéctese y vuelva a iniciar sesión para solucionar el problema. + </notification> + <notification name="nolandmark_tport"> + Lo sentimos, pero el sistema no ha podido localizar el destino de este hito. + </notification> + <notification name="timeout_tport"> + Lo sentimos, pero el sistema no ha podido completar el teleporte. Vuelva a intentarlo en un momento. - </notification> - <notification name="noaccess_tport"> -Lo sentimos, pero usted no tiene acceso al destino de este teleporte. - </notification> - <notification name="missing_attach_tport"> -Aún no han llegado sus objetos anexados. Espere unos segundos más o desconéctese y vuelva a iniciar sesión antes de teleportarse. - </notification> - <notification name="too_many_uploads_tport"> -La cola de espera en esta región está actualmente obstruida, por lo que su petición de teleporte no se atenderá en un tiempo prudencial. Por favor, vuelva a intentarlo en unos minutos o vaya a una zona menos ocupada. - </notification> - <notification name="expired_tport"> -Lo sentimos, pero el sistema no ha podido atender a su petición de teleporte en un tiempo prudencial. Por favor, vuelva a intentarlo en unos pocos minutos. - </notification> - <notification name="expired_region_handoff"> -Lo sentimos, pero el sistema no ha podido completar su paso a otra región en un tiempo prudencial. Por favor, vuelva a intentarlo en unos pocos minutos. - </notification> - <notification name="no_host"> -Ha sido imposible encontrar el destino del teleporte: o está desactivado temporalmente o ya no existe. Por favor, vuelva a intentarlo en unos pocos minutos. - </notification> - <notification name="no_inventory_host"> -En estos momentos no está disponible el sistema del inventario. - </notification> - - + </notification> + <notification name="noaccess_tport"> + Lo sentimos, pero usted no tiene acceso al destino de este teleporte. + </notification> + <notification name="missing_attach_tport"> + Aún no han llegado sus objetos anexados. Espere unos segundos más o desconéctese y vuelva a iniciar sesión antes de teleportarse. + </notification> + <notification name="too_many_uploads_tport"> + La cola de espera en esta región está actualmente obstruida, por lo que su petición de teleporte no se atenderá en un tiempo prudencial. Por favor, vuelva a intentarlo en unos minutos o vaya a una zona menos ocupada. + </notification> + <notification name="expired_tport"> + Lo sentimos, pero el sistema no ha podido atender a su petición de teleporte en un tiempo prudencial. Por favor, vuelva a intentarlo en unos pocos minutos. + </notification> + <notification name="expired_region_handoff"> + Lo sentimos, pero el sistema no ha podido completar su paso a otra región en un tiempo prudencial. Por favor, vuelva a intentarlo en unos pocos minutos. + </notification> + <notification name="no_host"> + Ha sido imposible encontrar el destino del teleporte: o está desactivado temporalmente o ya no existe. Por favor, vuelva a intentarlo en unos pocos minutos. + </notification> + <notification name="no_inventory_host"> + En estos momentos no está disponible el sistema del inventario. + </notification> <notification name="CannotSetLandOwnerNothingSelected"> No se ha podido configurar el propietario del terreno: no se ha seleccionado una parcela. @@ -804,7 +737,7 @@ no se ha seleccionado una parcela. no se ha podido encontrar en qué región está. </notification> <notification name="CannotCloseFloaterBuyLand"> - No puede cerrar la ventana de Comprar terreno hasta que [APP_NAME] calcule el precio de esta transacción. + No puedes cerrar la ventana de Comprar terreno hasta que [APP_NAME] calcule el precio de esta transacción. </notification> <notification name="CannotDeedLandNothingSelected"> No se ha podido transferir el terreno: @@ -825,11 +758,11 @@ ha seleccionado varias parcelas. Inténtelo seleccionando sólo una. </notification> <notification name="ParcelCanPlayMedia"> - Esta localización puede mostrar media en streaming. + Esta localización puede ejecutar media en streaming. Los media en streaming necesitan una conexión a internet rápida. Si hay media, ¿reproducirlos en streaming? -(Puede cambiar más adelante esta opción en Preferencias > Audio y Vídeo). +(Puedes cambiar más adelante esta opción en Preferencias > Privacidad). <usetemplate name="okcancelbuttons" notext="Desactivar" yestext="Ejecutar los media"/> </notification> <notification name="CannotDeedLandWaitingForServer"> @@ -928,17 +861,6 @@ Deberá reconfigurar el nombre y las opciones de la nueva parcela. ¿Unir el terreno? <usetemplate name="okcancelbuttons" notext="Cancelar" yestext="OK"/> </notification> - <notification name="ShowOwnersHelp"> - Mostrar los propietarios: -El color de las parcelas indica el tipo de propietario. - -Verde = Su terreno -Agua = Terreno de sus grupos -Rojo = Propiedad de otros -Amarillo = En venta -Morado = Para subasta -Gris = Público - </notification> <notification name="ConfirmNotecardSave"> Esta nota debe guardarse antes de que se la pueda copiar o ver. ¿Guardar la nota? <usetemplate name="okcancelbuttons" notext="Cancelar" yestext="OK"/> @@ -961,12 +883,12 @@ Gris = Público </notification> <notification name="CannotSaveToAssetStore"> No se ha podido guardar [NAME] en la base central de almacenamiento. -Esto es, generalmente, un fallo temporal. Por favor, reinténtelo en unos pocos minutos. +Generalmente, esto es un fallo pasajero. Por favor, personaliza y guarda el ítem de aquí a unos minutos. </notification> <notification name="YouHaveBeenLoggedOut"> - Se ha cerrado su sesión en [SECOND_LIFE]: + Se te ha cerrado la sesión en [SECOND_LIFE]: [MESSAGE] -Aún puede ver el chat y los MI existentes pulsando 'Ver MI y Chat'. Si no, pulse 'Salir' para dejar inmediatemente [APP_NAME]. +Aún puedes ver el chat y los MI existentes pulsando 'Ver MI y Chat'. Si no, pulsa 'Salir' para dejar ahora [SECOND_LIFE]. <usetemplate name="okcancelbuttons" notext="Salir" yestext="Ver MI y Chat"/> </notification> <notification name="OnlyOfficerCanBuyLand"> @@ -1126,36 +1048,37 @@ Si se vende una parcela transferida, el precio de venta se dividirá a partes ig <notification name="ErrorMessage"> [ERROR_MESSAGE] </notification> - <notification name="AvatarMoved"> - Su localización [TYPE] no está disponible en estos momentos. [HELP] -Ha sido llevado a una región cercana. - </notification> <notification name="AvatarMovedDesired"> - La localización que ha elegido no está disponible en estos momentos. -Ha sido llevado a una región cercana. + La localización que querías no está disponible en estos momentos. +Se te ha llevado a una región cercana. </notification> <notification name="AvatarMovedLast"> - Su última posición no está disponible en estos momentos. -Ha sido llevado a una región cercana. + En estos momentos no está disponible tu última posición. +Se te ha llevado a una región cercana. + </notification> + <notification name="AvatarMovedHome"> + En estos momentos no está disponible tu Base. +Se te ha llevado a una región cercana. +Quizá quieras configurar una nueva posición para tu Base. </notification> <notification name="ClothingLoading"> - Aún está descargándose su ropa. -Puede usar normalmente [SECOND_LIFE], los demás residentes le verán correctamente. + Aún está descargándose tu ropa. +Puedes usar [SECOND_LIFE] de forma normal; los demás residentes te verán correctamente. <form name="form"> - <ignore name="ignore" text="Cuando está llevando mucho tiempo descargar la ropa"/> + <ignore name="ignore" text="La ropa está tardando mucho en descargarse"/> </form> </notification> <notification name="FirstRun"> - Se ha completado la instalación de [APP_NAME]. + Se ha completado la instalación de [SECOND_LIFE]. -Si esta es la primera vez que usa [SECOND_LIFE], deberá crear una cuenta antes de que pueda iniciar una sesión. -¿Volver a [https://join.secondlife.com/index.php?lang=es-ES secondlife.com] para crear una cuenta nueva? +Si es la primera vez que usas [SECOND_LIFE], debes crear una cuenta antes de poder iniciar una sesión. +¿Volver a [http://join.secondlife.com secondlife.com] para crear una cuenta nueva? <usetemplate name="okcancelbuttons" notext="Continuar" yestext="Cuenta nueva..."/> </notification> <notification name="LoginPacketNeverReceived"> - Tenemos problemas de conexión. Puede deberse a un problema de su conexión a internet o de los servidores de [SECOND_LIFE]. + Tenemos problemas de conexión. Puede deberse a un problema de tu conexión a internet o de [SECOND_LIFE_GRID]. -Puede revisar su conexión a internet y volver a intentarlo en unos minutos. Pulse Ayuda para conectarse a nuestro sitio de Sporte, o pulse Teleportar para intentar teleportarse a su Base. +Puedes revisar tu conexión a internet y volver a intentarlo en unos minutos, pulsar Ayuda para conectarte a [SUPPORT_SITE], o pulsar Teleporte para intentar teleportarte a tu Base. <url name="url"> http://es.secondlife.com/support/ </url> @@ -1178,10 +1101,10 @@ Puede cambiar más adelante su elección. [NAME] cuesta [PRICE] L$. No tiene suficientes L$ para hacer eso. </notification> <notification name="GrantedModifyRights"> - Se le ha concedido el privilegio de modificar los objetos de [FIRST_NAME] [LAST_NAME]. + [NAME] te ha dado permiso para modificar sus objetos. </notification> <notification name="RevokedModifyRights"> - Ha sido revocado su privilegio de modificar los objetos de [FIRST_NAME] [LAST_NAME]. + Ha sido revocado tu privilegio de modificar los objetos de [NAME] </notification> <notification name="FlushMapVisibilityCaches"> Esto limpiará las caches del mapa en esta región. @@ -1260,93 +1183,107 @@ Por favor, ponga en venta el objeto y reinténtelo. [DOWNLOAD_PATH]. </notification> <notification name="DownloadWindowsMandatory"> - Está disponible una versión nueva de [APP_NAME]. + Hay una versión nueva de [SECOND_LIFE] disponible. [MESSAGE] -Debe descargar esta actualización para usar [APP_NAME]. +Debes descargar esta actualización para usar [SECOND_LIFE]. <usetemplate name="okcancelbuttons" notext="Salir" yestext="Descargarla"/> </notification> <notification name="DownloadWindows"> - Está disponible una versión actualizada de [APP_NAME]. + Hay una versión actualizada de [SECOND_LIFE] disponible. [MESSAGE] -Esta actualización no es obligatoria, pero le sugerimos instalarla para mejorar el rendimiento y la estabilidad. +Esta actualización no es obligatoria, pero te sugerimos instalarla para mejorar el rendimiento y la estabilidad. <usetemplate name="okcancelbuttons" notext="Continuar" yestext="Descargarla"/> </notification> <notification name="DownloadWindowsReleaseForDownload"> - Está disponible una versión actualizada de [APP_NAME]. + Hay una versión actualizada de [SECOND_LIFE] disponible. [MESSAGE] -Esta actualización no es obligatoria, pero le sugerimos instalarla para mejorar el rendimiento y la estabilidad. +Esta actualización no es obligatoria, pero te sugerimos instalarla para mejorar el rendimiento y la estabilidad. <usetemplate name="okcancelbuttons" notext="Continuar" yestext="Descargarla"/> </notification> + <notification name="DownloadLinuxMandatory"> + Hay una versión nueva de [SECOND_LIFE] disponible. +[MESSAGE] +Debes descargar esta actualización para usar [SECOND_LIFE]. + <usetemplate name="okcancelbuttons" notext="Salir" yestext="Descargar"/> + </notification> + <notification name="DownloadLinux"> + Hay una versión actualizada de [SECOND_LIFE] disponible. +[MESSAGE] +Esta actualización no es obligatoria, pero te sugerimos instalarla para mejorar el rendimiento y la estabilidad. + <usetemplate name="okcancelbuttons" notext="Continuar" yestext="Descargar"/> + </notification> + <notification name="DownloadLinuxReleaseForDownload"> + Hay una versión actualizada de [SECOND_LIFE] disponible. +[MESSAGE] +Esta actualización no es obligatoria, pero te sugerimos instalarla para mejorar el rendimiento y la estabilidad. + <usetemplate name="okcancelbuttons" notext="Continuar" yestext="Descargar"/> + </notification> <notification name="DownloadMacMandatory"> - Está disponible una versión nueva de [APP_NAME]. + Hay una versión nueva de [SECOND_LIFE] disponible. [MESSAGE] -Debe descargar esta actualización para usar [APP_NAME]. +Debes descargar esta actualización para usar [SECOND_LIFE]. -¿Descargarla a su carpeta de aplicaciones? +¿Descargarla a tu carpeta de Programas? <usetemplate name="okcancelbuttons" notext="Salir" yestext="Descargarla"/> </notification> <notification name="DownloadMac"> - Está disponible una versión actualizada de [APP_NAME]. + Hay una versión actualizada de [SECOND_LIFE] disponible. [MESSAGE] -Esta actualización no es obligatoria, pero le sugerimos instalarla para mejorar el rendimiento y la estabilidad. +Esta actualización no es obligatoria, pero te sugerimos instalarla para mejorar el rendimiento y la estabilidad. -¿Descargarla a su carpeta de aplicaciones? +¿Descargarla a tu carpeta de Programas? <usetemplate name="okcancelbuttons" notext="Continuar" yestext="Descargarla"/> </notification> <notification name="DownloadMacReleaseForDownload"> - Está disponible una versión actualizada de [APP_NAME]. + Hay una versión actualizada de [SECOND_LIFE] disponible. [MESSAGE] -Esta actualización no es obligatoria, pero le sugerimos instalarla para mejorar el rendimiento y la estabilidad. +Esta actualización no es obligatoria, pero te sugerimos instalarla para mejorar el rendimiento y la estabilidad. -¿Descargarla a su carpeta de aplicaciones? +¿Descargarla a tu carpeta de Programas? <usetemplate name="okcancelbuttons" notext="Continuar" yestext="Descargarla"/> </notification> <notification name="DeedObjectToGroup"> Transferir este objeto al grupo hará que: * Reciba los L$ pagados en el objeto - <usetemplate ignoretext="Cuando se transfieren objetos a los grupos" name="okcancelignore" notext="Cancelar" yestext="Transferir"/> + <usetemplate ignoretext="Confirmar antes de transferir un objeto al grupo" name="okcancelignore" notext="Cancelar" yestext="Transferir"/> </notification> <notification name="WebLaunchExternalTarget"> - ¿Abrir el navegador de su sistema para ver este contenido? - <usetemplate ignoretext="Cuando se abra el navegador de su sistema para ver una página web" name="okcancelignore" notext="Cancelar" yestext="OK"/> + ¿Quieres abrir tu navegador para ver este contenido? + <usetemplate ignoretext="Abrir mi navegador para ver una página web" name="okcancelignore" notext="Cancelar" yestext="OK"/> </notification> <notification name="WebLaunchJoinNow"> - ¿Ir a www.secondlife.com para administrar su cuenta? - <usetemplate ignoretext="Cuando se abra el navegador para administrar su cuenta" name="okcancelignore" notext="Cancelar" yestext="OK"/> + ¿Ir al [http://secondlife.com/account/ Panel de Control] para administrar tu cuenta? + <usetemplate ignoretext="Abrir mi navegador para administrar mi cuenta" name="okcancelignore" notext="Cancelar" yestext="OK"/> </notification> <notification name="WebLaunchSecurityIssues"> Visite el wiki de [SECOND_LIFE] para más detalles sobre cómo informar de una cuestión de seguridad. - <usetemplate ignoretext="Cuando se abra el navegador para ver el wiki de cuestiones de seguridad" name="okcancelignore" notext="Cancelar" yestext="OK"/> + <usetemplate ignoretext="Abrir mi navegador para informar de un fallo de seguridad" name="okcancelignore" notext="Cancelar" yestext="OK"/> </notification> <notification name="WebLaunchQAWiki"> Visite el wiki QA de [SECOND_LIFE]. - <usetemplate ignoretext="Cuando se abra el navegador para ver el wiki QA" name="okcancelignore" notext="Cancelar" yestext="OK"/> + <usetemplate ignoretext="Abrir mi navegador para el ver el wiki de 'QA' (Control de Calidad)" name="okcancelignore" notext="Cancelar" yestext="OK"/> </notification> <notification name="WebLaunchPublicIssue"> Visite el Public Issue Tracker (sistema público de seguimiento de incidencias) de [SECOND_LIFE], donde podrá informar de errores y otros asuntos. - <usetemplate ignoretext="Cuando se abra el navegador para ver el Public Issue Tracker" name="okcancelignore" notext="Cancelar" yestext="Ir a la página"/> - </notification> - <notification name="WebLaunchPublicIssueHelp"> - Visite el wiki de [SECOND_LIFE] para informarse de cómo usar el Public Issue Tracker (sistema público de seguimiento de incidencias). - <usetemplate ignoretext="Cuando se abra el navegador para ver el wiki del Public Issue Tracker" name="okcancelignore" notext="Cancelar" yestext="Ir a la página"/> + <usetemplate ignoretext="Abrir mi navegador para usar el 'Public Issue Tracker'" name="okcancelignore" notext="Cancelar" yestext="Ir a la página"/> </notification> <notification name="WebLaunchSupportWiki"> Para ver las últimas noticias e informaciones, ¿ir la Blog oficial? - <usetemplate ignoretext="Cuando se abra el navegador para ver el blog" name="okcancelignore" notext="Cancelar" yestext="OK"/> + <usetemplate ignoretext="Abrir mi navegador para ver el blog" name="okcancelignore" notext="Cancelar" yestext="OK"/> </notification> <notification name="WebLaunchLSLGuide"> - ¿Ir a la Guía de programación para encontrar ayuda? - <usetemplate ignoretext="Cuando se abra el navegador para ver la Guía de programación" name="okcancelignore" notext="Cancelar" yestext="OK"/> + ¿Quieres abrir la Guía de Script para tener ayuda sobre el tema? + <usetemplate ignoretext="Abrir mi navegador para ver la Guía de Script" name="okcancelignore" notext="Cancelar" yestext="OK"/> </notification> <notification name="WebLaunchLSLWiki"> - ¿Ir al portal de LSL para encontrar ayuda sobre programación? - <usetemplate ignoretext="Cuando se abra el navegador para ver el portal de programación" name="okcancelignore" notext="Cancelar" yestext="Ir a la página"/> + ¿Quieres visitar el portal de LSL para tener ayuda sobre manejo de scripts? + <usetemplate ignoretext="Abrir mi navegador para ver el portal de LSL" name="okcancelignore" notext="Cancelar" yestext="Ir a la página"/> </notification> <notification name="ReturnToOwner"> ¿Está seguro de que quiere devolver los objetos seleccionados a sus propietarios? Los objetos transferibles que se hayan cedido volverán a sus propietarios anteriores. *ATENCIÓN* ¡Serán borrados los objetos no transferibles que estén cedidos! - <usetemplate ignoretext="Cuando se devuelvan los objetos a sus propietarios" name="okcancelignore" notext="Cancelar" yestext="OK"/> + <usetemplate ignoretext="Confirmar antes de devolver objetos a sus propietarios." name="okcancelignore" notext="Cancelar" yestext="OK"/> </notification> <notification name="GroupLeaveConfirmMember"> Actualmente, usted es miembro del grupo [GROUP]. @@ -1358,14 +1295,14 @@ Esta actualización no es obligatoria, pero le sugerimos instalarla para mejorar <usetemplate name="okcancelbuttons" notext="Cancelar" yestext="Expulsar a todos los usuarios"/> </notification> <notification name="MuteLinden"> - Perdón, pero no puede ignorar a un Linden. + Lo sentimos, pero no puedes ignorar a un Linden. <usetemplate name="okbutton" yestext="OK"/> </notification> <notification name="CannotStartAuctionAlreadyForSale"> No puede empezar una subasta en una parcela que ya está en venta. Desactive la venta de terreno si está seguro de querer iniciar una subasta. </notification> - <notification label="Fallo al ignorar un objeto según el nombre" name="MuteByNameFailed"> - Ya ha ignorado ese nombre. + <notification label="Falló ignorar el objeto según su nombre." name="MuteByNameFailed"> + Ya has ignorado este nombre. <usetemplate name="okbutton" yestext="OK"/> </notification> <notification name="RemoveItemWarn"> @@ -1383,12 +1320,12 @@ Esta actualización no es obligatoria, pero le sugerimos instalarla para mejorar </notification> <notification name="BusyModeSet"> Pasar al modo ocupado. -Se ocultará el chat y los mensajes instantáneos. Los mensajes instantáneos recibirán su Respuesta en el modo ocupado. Todos los ofrecimientos de teleporte serán rehusados. Todas las ofertas de inventario irán a su Papelera. - <usetemplate ignoretext="Cuando se pasa al modo ocupado" name="okignore" yestext="OK"/> +Se ocultará el chat y los mensajes instantáneos (éstos recibirán tu Respuesta en el modo ocupado). Se rehusarán todos los ofrecimientos de teleporte. Todas las ofertas de inventario irán a tu Papelera. + <usetemplate ignoretext="Cambio mi estado al modo ocupado" name="okignore" yestext="OK"/> </notification> <notification name="JoinedTooManyGroupsMember"> - Pertenece a demasiados grupos para poder entrar en otro. Por favor, salga de al menos uno antes de entrar en éste, o rehúse la oferta. Para salir de un grupo, seleccione la opción 'Grupos...' en el menú 'Editar'. -[NAME] le ha invitado a ser miembro de un grupo. + Perteneces a demasiados grupos para poder entrar en otro. Por favor, sal de al menos uno antes de entrar en éste, o rehúsa la oferta. +[NAME] te ha invitado a ser miembro de un grupo. [INVITE] <usetemplate name="okcancelbuttons" notext="Rehusar" yestext="Entrar"/> </notification> @@ -1454,7 +1391,15 @@ Se ocultará el chat y los mensajes instantáneos. Los mensajes instantáneos re </notification> <notification name="TeleportFromLandmark"> ¿Está seguro de que quiere teleportarse? - <usetemplate ignoretext="Cuando está teleportando desde un hito del inventario" name="okcancelignore" notext="Cancelar" yestext="Teleportar"/> + <usetemplate ignoretext="Confirmar que quiero teleportarme a un hito" name="okcancelignore" notext="Cancelar" yestext="Teleportar"/> + </notification> + <notification name="TeleportToPick"> + ¿Teleportarte a [PICK]? + <usetemplate ignoretext="Confirmar el teleporte a una localización de los Destacados" name="okcancelignore" notext="Cancelar" yestext="Teleportar"/> + </notification> + <notification name="TeleportToClassified"> + ¿Teleportarse a [CLASSIFIED]? + <usetemplate ignoretext="Confirmar el teleporte a una localización de los Clasificados" name="okcancelignore" notext="Cancelar" yestext="Teleportar"/> </notification> <notification label="Mensaje a todo el estado" name="MessageEstate"> Escriba un anuncio breve que se enviará a todo el que esté en su estado. @@ -1523,9 +1468,7 @@ Se cambiarán miles de regiones, y se provocará un colapso en el espacio del se Usted no está autorizado en esa región por su nivel de calificación. Puede deberse a que no hay información validada de su edad. Por favor, compruebe que tiene instalado el último visor, y vaya a la Base de Conocimientos para más detalles sobre el acceso a zonas con este nivel de calificación. - <usetemplate - name="okbutton" - yestext="OK"/> + <usetemplate name="okbutton" yestext="OK"/> </notification> <notification name="RegionEntryAccessBlocked_KB"> Usted no está autorizado en esa región por su nivel de calificación. @@ -1534,37 +1477,26 @@ Por favor, compruebe que tiene instalado el último visor, y vaya a la Base de C <url name="url"> http://wiki.secondlife.com/wiki/Linden_Lab_Official:Maturity_ratings:_an_overview/es </url> - <usetemplate - name="okcancelignore" - yestext="Ir a la Base de Conocimientos" - notext="Cerrar" - ignoretext="Cuando la entrada a la región está bloqueada por el nivel de calificación"/> + <usetemplate ignoretext="No puedo entrar a esta región dado el nivel de calificación" name="okcancelignore" notext="Cerrar" yestext="Ir a la Base de Conocimientos"/> </notification> <notification name="RegionEntryAccessBlocked_Notify"> Usted no está autorizado en esa región por su nivel de calificación. </notification> <notification name="RegionEntryAccessBlocked_Change"> - Usted no está autorizado en esa región por su nivel de calificación.. - -Puede pulsar 'Cambiar preferencia' para aumentar su nivel de calificación y poder entrar. Desde ese momento, podrá buscar y acceder a contenido [REGIONMATURITY]. Si más adelante quiere deshacer esta configuración, vaya a Editar > Preferencias... > General. - <form name="form"> - <button - name="OK" - text="Cambiar preferencia"/> - <button - default="true" - name="Cancel" - text="Cerrar"/> - <ignore name="ignore" text="Cuando la entrada a la región está bloqueada por la preferencia del nivel de calificación"/> - </form> + No estás autorizado en esta región por tus preferencias sobre el nivel de calificación. + +Puedes pulsar 'Cambiar las Preferencias' para incrementar las preferencias del nivel de calificación y, así, poder entrar. En adelante, podrás buscar y acceder a contenido [REGIONMATURITY]. Si más adelante quieres deshacer este cambio, ve a Yo > Preferencias > General. + <form name="form"> + <button name="OK" text="Cambiar las preferencias"/> + <button default="true" name="Cancel" text="Cerrar"/> + <ignore name="ignore" text="Mis preferencias sobre nivel de calificación me impiden entrar a esta región"/> + </form> </notification> <notification name="LandClaimAccessBlocked"> Usted no puede reclamar este terreno por su nivel de calificación. Puede deberse a que no hay información validada de su edad. Por favor, compruebe que tiene instalado el último visor, y vaya a la Base de Conocimientos para más detalles sobre el acceso a zonas con este nivel de calificación. - <usetemplate - name="okbutton" - yestext="OK"/> + <usetemplate name="okbutton" yestext="OK"/> </notification> <notification name="LandClaimAccessBlocked_KB"> No puede reclamar este terreno por sus nivel de calificación. @@ -1573,32 +1505,22 @@ Por favor, compruebe que tiene instalado el último visor, y vaya a la Base de C <url name="url"> http://wiki.secondlife.com/wiki/Linden_Lab_Official:Maturity_ratings:_an_overview/es </url> - <usetemplate - name="okcancelignore" - yestext="Ir a la Base de Conocimientos" - notext="Cerrar" - ignoretext="Cuando el reclamar terreno está bloqueado por el nivel de calificación"/> + <usetemplate ignoretext="No puedo reclamar este terreno, dado el nivel de calificación" name="okcancelignore" notext="Cerrar" yestext="Ir a la Base de Conocimientos"/> </notification> <notification name="LandClaimAccessBlocked_Notify"> Por su nivel de calificación, usted no puede reclamar este terreno. </notification> <notification name="LandClaimAccessBlocked_Change"> - No puede reclamar este terreno por sus preferencias de nivel de calificación. + No puedes reclamar este terreno por tus preferencias sobre el nivel de calificación. -Puede pulsar 'Cambiar preferencia' para aumentar su nivel de calificación y poder entrar. Desde ese momento, podrá buscar y acceder a contenido [REGIONMATURITY]. Si más adelante quiere deshacer esta configuración, vaya a Editar > Preferencias... > General.. - <usetemplate - name="okcancelignore" - yestext="Cambiar preferencia" - notext="Cerrar" - ignoretext="Cuando el reclamar terreno está bloqueado por la preferencia del nivel de calificación"/> +Puedes pulsar 'Cambiar las Preferencias' para incrementar las preferencias del nivel de calificación y, así, poder entrar. En adelante, podrás buscar y acceder a contenido [REGIONMATURITY]. Si más adelante quieres deshacer este cambio, ve a Yo > Preferencias > General. + <usetemplate ignoretext="Mis preferencias sobre el nivel de calificación me impiden reclamar este terreno" name="okcancelignore" notext="Cerrar" yestext="Cambiar preferencia"/> </notification> <notification name="LandBuyAccessBlocked"> Usted no puede comprar este terreno por su nivel de calificación. Puede deberse a que no hay información validada de su edad. Por favor, compruebe que tiene instalado el último visor, y vaya a la Base de Conocimientos para más detalles sobre el acceso a zonas con este nivel de calificación. - <usetemplate - name="okbutton" - yestext="OK"/> + <usetemplate name="okbutton" yestext="OK"/> </notification> <notification name="LandBuyAccessBlocked_KB"> No puede comprar este terreno por sus preferencias de nivel de calificación. @@ -1607,27 +1529,19 @@ Por favor, compruebe que tiene instalado el último visor, y vaya a la Base de C <url name="url"> http://wiki.secondlife.com/wiki/Linden_Lab_Official:Maturity_ratings:_an_overview/es </url> - <usetemplate - name="okcancelignore" - yestext="Ir a la Base de Conocimientos" - notext="Cerrar" - ignoretext="Cuando la compra de terreno está bloqueada por el nivel de calificación"/> + <usetemplate ignoretext="No puedo comprar este terreno, dado el nivel de calificación" name="okcancelignore" notext="Cerrar" yestext="Ir a la Base de Conocimientos"/> </notification> <notification name="LandBuyAccessBlocked_Notify"> No puede comprar este terreno por su nivel de calificación. </notification> <notification name="LandBuyAccessBlocked_Change"> - No puede comprar este terreno por sus preferencias de nivel de calificación. + No puedes comprar este terreno por tus preferencias sobre el nivel de calificación. -Puede pulsar 'Cambiar preferencia' para aumentar su nivel de calificación y poder entrar. Desde ese momento, podrá buscar y acceder a contenido [REGIONMATURITY]. Si más adelante quiere deshacer esta configuración, vaya a Editar > Preferencias... > General. - <usetemplate - name="okcancelignore" - yestext="Cambiar preferencia" - notext="Cerrar" - ignoretext="Cuando la compra de terreno está bloqueada por la preferencia del nivel de calificación"/> +Puedes pulsar 'Cambiar las Preferencias' para incrementar las preferencias del nivel de calificación y, así, poder entrar. En adelante, podrás buscar y acceder a contenido [REGIONMATURITY]. Si más adelante quieres deshacer este cambio, ve a Yo > Preferencias > General. + <usetemplate ignoretext="Mis preferencias sobre el nivel de calificación me impiden comprar el terreno" name="okcancelignore" notext="Cerrar" yestext="Cambiar preferencia"/> </notification> <notification name="TooManyPrimsSelected"> - "Hay seleccionadas demasiadas primitivas. Por favor, seleccione [MAX_PRIM_COUNT] o menos, y reinténtelo." + Hay demasiados prims seleccionados. Por favor, selecciona [MAX_PRIM_COUNT] o menos y vuelve a intentarlo <usetemplate name="okbutton" yestext="OK"/> </notification> <notification name="ProblemImportingEstateCovenant"> @@ -1642,9 +1556,7 @@ Puede pulsar 'Cambiar preferencia' para aumentar su nivel de calificac </notification> <notification name="UnableToLoadNotecardAsset"> En este momento, no se pueden cargar los datos de la's nota's. - <usetemplate - name="okbutton" - yestext="OK"/> + <usetemplate name="okbutton" yestext="OK"/> </notification> <notification name="NotAllowedToViewNotecard"> Permisos insuficientes para ver la nota asociada a la ID solicitada. @@ -1662,19 +1574,11 @@ Puede pulsar 'Cambiar preferencia' para aumentar su nivel de calificac </notification> <notification name="SetClassifiedMature"> ¿Este anuncio tiene contenido 'Mature'? - <usetemplate - canceltext="Cancelar" - name="yesnocancelbuttons" - notext="No" - yestext="Sí"/> + <usetemplate canceltext="Cancelar" name="yesnocancelbuttons" notext="No" yestext="Sí"/> </notification> <notification name="SetGroupMature"> ¿Este grupo tiene contenido 'Mature'? - <usetemplate - canceltext="Cancelar" - name="yesnocancelbuttons" - notext="No" - yestext="Sí"/> + <usetemplate canceltext="Cancelar" name="yesnocancelbuttons" notext="No" yestext="Sí"/> </notification> <notification label="Confirmar el reinicio" name="ConfirmRestart"> ¿Verdaderamente quiere reiniciar la región de aquí a 2 minutos? @@ -1688,226 +1592,12 @@ Puede pulsar 'Cambiar preferencia' para aumentar su nivel de calificac <button name="Cancel" text="Cancelar"/> </form> </notification> - <notification label="No permitir modificar el terreno" name="HelpRegionBlockTerraform"> - Si se marca está casilla, los propietarios de terreno no podrán modificarlo, independientemente de lo que esté configurado en cada parcela. - -Por defecto: off - </notification> - <notification label="Prohibir volar" name="HelpRegionBlockFly"> - Si se marca esta casilla, estará prohibido volar en la región, independientemente de lo que esté configurado en cada parcela. - -Por defecto: off - </notification> - <notification label="Cambio múltiple de permisos del contenido" name="HelpBulkPermission"> - La herramienta de cambio múltiple de permisos le ayuda a cambiar con rapidez los permisos de varios de los objetos contenidos en el objeto u objetos que seleccione. Pero fíjese que sólo configurará los permisos de los ítems que están en el contenido de los objetos seleccionados, no los de esos objetos que los contienen. - -Note también que los permisos no se aplicarán a los contenidos que puedan tener cada uno de los ítems. Lo que haga sólo afectará a los ítems que estén exactamente en el primer nivel de contenidos. - -Puede elegir qué clase de ítems modificar usando la lista 'Tipos de contenido' here. Las imágenes se consideran incluidas si selecciona Texturas. - -* Esta herramienta sólo puede cambiar los permisos de aquellos ítems de los que usted esté autorizado a cambiarlos. -* No puede otorgar al siguiente propietario permisos que usted no tenga ya. -* Los permisos para el nuevo propietario son, en principio, una solicitud. Si alguno de los ítems no puede coger todos esos permisos solicitados, no cambiará ninguno de los permisos que tenga. - -Cuando esté listo para efectuar el cambio múltiple de permisos, pulse 'Aplicar' y espere a que se muestren los resultados. - -SSi cierra la ventana de Cambio múltiple de permisos mientras se están cambiando, se cancelará la operación. - </notification> - <notification label="Permitir el daño" name="HelpRegionAllowDamage"> - Si se marca la casilla, el sistema de 'vida' afecta a todas las parcelas independientemente de lo que tenga marcado cada una. -Si la casilla no está marcada, el propietario de cada parcela podrá decidir si activa en ella el sistema de 'vida'. - -Por defecto: off - </notification> - <notification label="Nº máximo de avatares" name="HelpRegionAgentLimit"> - Configura el número máximo de avatares que se permite en esta región. -El funcionamiento puede variar según el número de avatares que estén presentes. - -Por defecto: 40 - </notification> - <notification label="Plus de objetos" name="HelpRegionObjectBonus"> - El plus de objetos es un multiplicador de los prims permitidos en cualquier parcela. -El rango permitido es de 1 a 10. Fijándolo en '1', se permiten 117 objetos en cada parcela de 512 m². Fijándolo en '2', se permiten 234 (el doble), y así sucesivamente. El número máximo de objetos permitidos en una región sigue siendo de 15.000, sea cual sea el plus. -Una vez establecido, tenga en cuenta que reducir el plus de objetos puede causar que se devuelvan o borren objetos. - -Por defecto: 1.0 - </notification> - <notification label="Calificación" name="HelpRegionMaturity"> - Configura el nivel de calificación de la región, tal como se verá en la barra superior del visor de cualquier residente, y en los datos que mostrará el mapa del mundo cuando se pase el cursor sobre esta región. Esta configuración también afecta al acceso a esta región y a los resultados de la búsqueda. Los demás residentes sólo entrarán en las regiones o verán aquellos resultados de la búsqueda que tengan el mismo nivel de calificación que ellos han elegido en sus preferencias. - -Puede llevar algún tiempo que este cambio se refleje en el mapa. - </notification> - <notification label="Impedir 'empujar'" name="HelpRegionRestrictPushObject"> - Esta casilla controla en toda la región los permisos para que haya 'empujones'. -Cuando está activada, los residentes sólo pueden ser empujados por sí mismos o por el propietario de la parcela. -('Empujar' se refiere a la función llPushObject() del LSL). - -Por defecto: Off - </notification> - <notification label="Unir/Dividir parcelas" name="HelpParcelChanges"> - Esta casilla determina si las parcelas que no son del propietario del estado pueden unirse o subdividirse. -Si no se marca esta opción: - * Sólo los propietarios o los administradores del estado pueden unir o dividir parcelas. - * Sólo podrán unir o dividir las parcelas pertenecientes al propietario o a un grupo en el que tengan los poderes adecuados. -Si se marca esta opción: - * Todo los propietarios de parcelas podrán unir o dividir las que posean. - * En parcelas propiedad de un grupo, quienes tengan los poderes adecuados podrán unirlas o dividirlas. - -Por defecto: Marcado - </notification> - <notification label="No mostrar en la búsqueda" name="HelpRegionSearch"> - Marcando esta casilla bloqueará que los propietarios de parcelas puedan listarlas en la búsqueda. - -Por defecto: Off - </notification> <notification label="Cambiada la calificación de la región" name="RegionMaturityChange"> Se ha actualizado la calificación de esta región. Llevará algún tiempo que el cambio se refleje en el mapa. </notification> - <notification label="Reventa de terreno" name="HelpRegionLandResell"> - Los propietarios y los administradores del estado pueden poner en venta cualquier terreno que posea el propietario del estado. -Si se desmarca esta opción, los compradores no podrán revender el terreno que compren en esta región. -Si se marca esta opción, los compradores podrán revender el terreno que compren en esta región. - -Por defecto: Deshabilitado - </notification> - <notification label="Desactivar los scripts" name="HelpRegionDisableScripts"> - Cuando el rendimiento de un sim es pobre, el culpable puede ser un script. Abra Estadísticas (Ctrl+May+1). Mire Simulator Physics FPS. Si es menor de 45, abre el panel Time, en la parte inferior de las Estadísticas. Si ve que Script Time está en 25 ms o más alto, pulse el botón Listar los scripts según su uso, y verá el nombre y la posición de los scripts que pueden estar causando el bajo rendimiento. - -Marcando la casilla Desactivar los scripts y pulsando el botón Aplicar, se desactivarán temporalmente en esta región todos los scripts. -Debe hacer esto para viajar a la posición que ha visto en la Lista de scripts según su uso. Cuando llegue, investigue el script para determinar si es él quien causa el problema. Deberá contactar con el propietario del script, o borrar o devolver el objeto. -Desmarque la casilla Desactivar los scripts y pulse Aplicar para reactivar los scripts en la región. - -Por defecto: off - </notification> - <notification label="Desactivar las colisiones" name="HelpRegionDisableCollisions"> - Cuando el rendimiento de un sim es pobre, la culpa puede estar en los objetos físicos. Abra Estadísticas (Ctrl+May+1). Mire Simulator Physics FPS. Si es menor de 45, abre el panel Time, en la parte inferior de las Estadísticas. Si ve que Sim Time (Physics) está en 20 ms o más alto, pulse el botón Listar los objetos que colisionan, y verá el nombre y la posición de los objetos que pueden estar causando el bajo rendimiento. - -Marcando la casilla Desactivar las colisiones y pulsando el botón Aplicar, se desactivarán temporalmente las colisiones entre objetos. -Debe hacer esto para viajar a la localización que se ha avisado en la Lista de objetos que colisionan. Cuando llegue, investigue el objeto: -¿está colisionando constantemente con otros objetos? Deberá contactar con el propietario del objeto, o borrarlo o devolverlo. -Desmarque la casilla Desactivar las colisiones y pulse Aplicar para reactivar las colisiones en la región. - -Por defecto: off - </notification> - <notification label="Desactivar la física" name="HelpRegionDisablePhysics"> - Desactivar la física es parecido a Desactivar las colisiones, pero se desactivan todas las simulaciones físicas: no sólo se detiene la colisión de objetos, sino que también se provoca que los avatares no puedan moverse. - -Esto debería usarse sólo cuando Desactivar las colisiones no ha aportado a la región suficiente rendimiento para investigar un problema con las propiedades físicas o los objetos que colisionan. - -Cuando acabe, no se olvide de reactivar la física, o los avatares seguirán sin poderse mover. - -Por defecto: off - </notification> - <notification label="Objetos que colisionan" name="HelpRegionTopColliders"> - Muestra una lista de aquellos objetos con más colisiones potenciales con otros objetos. Estos objetos pueden ralentizar el rendimiento. -Seleccione Ver > Estadísticas, y mire Simulator > Time > Sim Time (Physics) para ver si se están empleando en 'physics' más de 20 ms. - </notification> - <notification label="Listar los scripts" name="HelpRegionTopScripts"> - Muestra una lista de los objetos que más tiempo emplean en ejecutar scripts de LSL. Estos objetos pueden ralentizar el rendimiento. -Seleccione Ver > Estadísticas, y mire Simulator > Time > Script Time para ver si se están empleando más de 25 ms. - </notification> - <notification label="Reiniciar la región" name="HelpRegionRestart"> - Reinicia los procesos del servidor en que corre esta región tras dos minutos de advertencia previa. Se desconectará a todos los residentes que estén en la región. La región guardará sus datos, y debería volver en unos 90 segundos. - -Reiniciar la región no solventa la mayoría de los problemas de rendimiento, y, normalmente, debe utilizarse sólo cuando se indique. - </notification> - <notification label="Nivel del agua" name="HelpRegionWaterHeight"> - Es el nivel, en metros, del agua. Si se marca en algo distinto de 20, y usted tiene al lado el agua del mundo o un 'vacío', habrá una diferencia visible. - -Por defecto: 20 - </notification> - <notification label="Elevación del terreno" name="HelpRegionTerrainRaise"> - Es la distancia que, en metros, los propietarios de parcelas pueden elevar su terreno sobre la altura del terreno inicialmente creado. - -Por defecto: 4 - </notification> - <notification label="Rebaje del terreno" name="HelpRegionTerrainLower"> - Es la distancia que, en metros, los propietarios de parcelas pueden bajar su terreno sobre la altura del terreno inicialmente creado. - -Por defecto: -4 - </notification> - <notification label="Subir un RAW para el terreno" name="HelpRegionUploadRaw"> - Este botón carga un archivo .RAW en la región en que usted está. -El archivo debe tener las dimensiones correctas (RGB, 256x256) y 13 canales. La forma mejor de crear un archivo de terreno es descargar el archivo RAW existente. Un buen inicio es modificar el canal rojo -red- (altura del terreno), y subirlo. - -La carga puede llevar unos 45 segundos. Fíjese que subir un archivo de terreno *no* moverá los objetos que haya en el terreno, sólo el terreno mismo y los permisos asociados a las parcelas. -Por tanto, puede que algunos objetos acaben enterrados.. - -Para más información sobre la edición de las alturas del terreno, consulte la ayuda F1. - </notification> - <notification label="Descargar el RAW del terreno" name="HelpRegionDownloadRaw"> - Este botón descarga un archivo de esta región con los datos de alturas, dimensiones de las parcelas, estado de las parcelas en venta, y algunos permisos de las parcelas. Al abrir el archivo en un programa como Photoshop debe especificar las dimensiones del documento: RGB, 256x256 con 13 canales. -Este archivo de terreno no puede abrirse de otro modo. - -Para más información sobre la edición de las alturas del terreno, consulte la ayuda F1. - </notification> - <notification label="Usar el Sol del estado" name="HelpRegionUseEstateSun"> - Esta casilla hace que la posición del Sol en la región sea la misma que la del resto del estado. - -Por defecto: on - </notification> - <notification label="Fijar el Sol" name="HelpRegionFixedSun"> - Esta casilla fija la posición del Sol en la posición del deslizable Fase, y detiene su movimiento. - -Por defecto: off - </notification> - <notification label="Predeterminar este terreno" name="HelpRegionBakeTerrain"> - Este botón salva la forma actual del terreno como nueva forma por defecto para la región. Una vez predeterminado, el terreno puede volver a esa forma cada vez que usted u otros usan la opción 'Revertir' en Editar el terreno. El terreno predeterminado también marca el punto medio para elevar y bajar los límites. - </notification> - <notification label="Administradores del estado" name="HelpEstateEstateManager"> - Un administrador del estado es un residente en el que usted delega controles de la región y configuraciones del estado. Un administrador del estado puede cambiar algunas configuraciones de estos paneles, excepto las de subir, descargar, y predeterminar el terreno. Y, concretamente, puede autorizar o expulsar a residentes de su estado. - -Sólo el propietario del estado puede añadir o remover administradores, nadie más. -Por favor, elija sólo a residentes en quienes confíe, pues usted será el responsable último de sus acciones. - </notification> - <notification label="Usar el horario global" name="HelpEstateUseGlobalTime"> - Esta casilla hace que, en su estado, el Sol tenga la misma posición que en los estados propiedad de Linden, 'mainland'. - -Por defecto: on - </notification> - <notification label="Fijar el Sol" name="HelpEstateFixedSun"> - Esta casilla fija la posición del Sol en la posición del deslizable Fase, y detiene su movimiento. - </notification> - <notification label="Acceso público" name="HelpEstateExternallyVisible"> - Esta casilla habilita que cualquier residente que esté en otro estado pueda entrar en éste sin tener que estar en una lista de acceso. - -Por defecto: on - </notification> - <notification label="Permitir el teleporte a cualquier punto" name="HelpEstateAllowDirectTeleport"> - Cuando esta marcado, los residentes puede teleportarse directamente a cualquier punto de su estado. Si se desmarca, los residentes se teleportarán al Punto de Teleporte más cercano. - -Por defecto: off - </notification> - <notification label="Autorizar el acceso" name="HelpEstateAllowResident"> - El acceso a este estado se limitará a los residentes aquí enumerados y a cualquier grupo de abajo. Esta configuración sólo funciona cuando está desmarcado Acceso público. - </notification> - <notification label="Autorizar el acceso de grupo" name="HelpEstateAllowGroup"> - El acceso a este estado se limitará a los grupos aquí enumerados y a cualquier residente de abajo. Esta configuración sólo funciona cuando está desmarcado Acceso público. - </notification> - <notification label="Dirección de correo para infracciones" name="HelpEstateAbuseEmailAddress"> - Aportando aquí una dirección de correo válida, se hará que las Denuncias de Infracción en este estado se envíen a esa dirección. -Si se deja en blanco, las Denuncias de Infracción se enviarán sólo a Linden Lab. - </notification> - <notification label="Denegar el acceso" name="HelpEstateBanResident"> - A los residentes en esta lista se les niega el acceso a su estado, independientemente de cualquier otra configuración. - </notification> - <notification label="Autorizar el chat de voz" name="HelpEstateVoiceChat"> - Se autoriza a las parcelas del estado a tener sus propios canales de voz en los que los residentes puedan hablar y oír a otros residentes. - -Por defecto: off - </notification> <notification label="Desajuste en la versión de voz" name="VoiceVersionMismatch"> - En esta región, la versión de [APP_NAME] no es compatible con el chat de voz. Para que el chat de voz funcione correctamente, debe actualizar [APP_NAME]. - </notification> - <notification label="Contrato del estado" name="HelpEstateCovenant"> - Definir un contrato del estado le permite vender parcelas del mismo. Si no existe un contrato, no puede vender terreno. -La nota para su contrato puede estar vacía si es que no quiere aplicar reglas, avisos a los compradores, o cualquier otra cosa relacionada con el terreno antes de que sea comprado. - -Puede usar un contrato para comunicar al posible comprador reglas, pautas, información cultural, o, simplemente, sus propias expectativas. -Así, puede hablarse de parcelación, normas de las construcciones, formas de pago, u otra información que considere que el nuevo propietario debe saber y con la que debe estar de acuerdo antes de hacer la compra. - -Para poder finalizar la compra, el comprador debe aceptar el contrato marcando la casilla adecuada. Los contratos de los estados son siempre visibles en la información Acerca del terreno en todas las parcelas. + Esta versión de [APP_NAME] no es compatible con la prestación de voz de esta región. Para que el chat de voz funcione correctamente debes actualizar [APP_NAME]. </notification> <notification label="No se pudo comprar los objetos" name="BuyObjectOneOwner"> No se pueden comprar a la vez objetos de propietarios diferentes. @@ -1995,52 +1685,36 @@ Ha actualizado la posición de este Destacado, pero los otros detalles permanece Ha elegido ítems 'no copiables' de su inventario. Esos ítems se quitarán de su inventario, no se copiarán. ¿Mover el/los ítem/s del inventario? - <usetemplate ignoretext="Cuando mueva objetos 'no copiables' del inventario" name="okcancelignore" notext="Cancelar" yestext="OK"/> + <usetemplate ignoretext="Avisarme antes de que mueva ítems 'no copiables' desde un objeto" name="okcancelignore" notext="Cancelar" yestext="OK"/> </notification> <notification name="MoveInventoryFromScriptedObject"> Ha elegido ítems 'no copiables' de su inventario. Esos ítems se moverán a su inventario, no se copiarán. Dado que estos objetos tienen scripts, moverlos a su inventario puede provocar un mal funcionamiento del script. ¿Mover el/los ítem/s del inventario? - <usetemplate ignoretext="Cuando mueva objetos con script 'no copiables' del inventario" name="okcancelignore" notext="Cancelar" yestext="OK"/> + <usetemplate ignoretext="Avisarme antes de que mueva ítems 'no copiables' que puedan estropear un objeto con script" name="okcancelignore" notext="Cancelar" yestext="OK"/> </notification> <notification name="ClickActionNotPayable"> - Atención: la acción 'Pagar al objeto' al pulsar ha sido marcada, pero sólo funcionará si se añade un script con un evento money(). + Advertencia: la acción 'Pagar al objeto' ha sido marcada, pero sólo funcionará si se añade un script con un evento money(). <form name="form"> - <ignore name="ignore" text="Cuando configure 'Pagar al objeto' sin el evento money()"/> + <ignore name="ignore" text="He establecido la acción 'Pagar al objeto' cuando construyo uno sin un script money()"/> </form> </notification> <notification name="OpenObjectCannotCopy"> En este objeto, no hay ítems que esté autorizado a copiar. </notification> <notification name="WebLaunchAccountHistory"> - ¿Ir al sitio web de [SECOND_LIFE] para ver el historial de su cuenta? - <usetemplate ignoretext="Cuando se cargue la página web del historial de la cuenta" name="okcancelignore" notext="Cancelar" yestext="Ir a la página"/> - </notification> - <notification name="ClickOpenF1Help"> - ¿Visitar el sitio web de Soporte de [SECOND_LIFE]? - <usetemplate ignoretext="Cuando visite el sitio web de Soporte de [SECOND_LIFE]." name="okcancelignore" notext="Cancelar" yestext="Ir"/> + ¿Ir a tu [http://secondlife.com/account/ Panel de Control] para ver el historial de tu cuenta? + <usetemplate ignoretext="Abrir mi navegador para ver el historial de mi cuenta" name="okcancelignore" notext="Cancelar" yestext="Ir a la página"/> </notification> <notification name="ConfirmQuit"> ¿Está seguro de que quiere salir? - <usetemplate ignoretext="Cuando esté saliendo de [APP_NAME]." name="okcancelignore" notext="Continuar" yestext="Salir"/> + <usetemplate ignoretext="Confirmar antes de salir" name="okcancelignore" notext="No salir" yestext="Salir"/> </notification> <notification name="HelpReportAbuseEmailLL"> - Use esta herramienta para denunciar violaciones de las [http://secondlife.com/corporate/tos.php?lang=es-ES Condiciones del Servicio] y las [http://secondlife.com/corporate/cs.php?lang=es-ES Normas de la Comunidad]. - -Se investigan y resuelven todas las infracciones denunciadas de las Normas de la Comunidad y las Condiciones del Servicio. Puede ver la resolución tomada en el Informe de Incidentes, en: - -http://secondlife.com/support/incidentreport.php - </notification> - <notification name="HelpReportAbuseEmailEO"> - IMPORTANTE: Esta denuncia no irá a Linden Lab, sino al propietario de la región en la que usted se encuentra actualmente. + Usa esta herramienta para denunciar violaciones de las [http://secondlife.com/corporate/tos.php Condiciones de Servicio] o las [http://secondlife.com/corporate/cs.php Normas de la Comunidad]. -Como un servicio a los residentes y visitantes, el propietario de la región ha elegido recibir y resolver todas las enuncias que se originen en esta región. Linden Lab no investigará las denuncias que usted envíe desde aquí. - -El propietario de la región resolverá las denuncias basándose en las reglas locales de la región, tal como se detallan en el Contrato del estado. -(Puede ver el Contrato yendo al menú Mundo y eligiendo Acerca del terreno). - -La resolución de esta denuncia se aplica exclusivamente a esta región; el acceso de los residentes a otras áreas de [SECOND_LIFE] no se verá afectado por el resultado de esta denuncia. Únicamente Linden Lab puede impedir el acceso a la totalidad de [SECOND_LIFE]. +Se investigan y resuelven todas las infracciones denunciadas. Puedes ver la resolución tomada en el [http://secondlife.com/support/incidentreport.php Informe de Incidentes]. </notification> <notification name="HelpReportAbuseSelectCategory"> Por favor, elija una categoría para esta denuncia de infracción. @@ -2066,13 +1740,13 @@ Aportar una descripción precisa nos ayuda a clasificar y procesar las denuncias <notification name="HelpReportAbuseContainsCopyright"> Estimado Residente: -Parece que está usted denunciando una violación de la propiedad intelectual. Por favor, asegúrese de que su denuncia es correcto. +Parece que estás denunciando una violación de la propiedad intelectual. Por favor, asegúrate de que tu denuncia es correcta. -(1) El proceso de la denuncia. Debe enviar una denuncia de infracción si cree que un Residente está reventando el sistema de permisos de [SECOND_LIFE], por ejemplo, usando un CopyBot u otras herramientas parecidas para copiar, infringiendo los derechos de propiedad intelectual. El Equipo de Infracciones (Abuse Team) investiga y lleva a cabo las acciones disciplinarias apropiadas ante toda acción que viole las las Normas de la Comunidad de [SECOND_LIFE] o las Condiciones del Servicio. Sin embargo, el Equipo de Infracciones ni gestiona ni responde a las solicitudes de eliminar contenidos del mundo de [SECOND_LIFE]. +(1) El proceso de la denuncia. Debes enviar una denuncia de infracción si crees que un Residente está reventando el sistema de permisos de [SECOND_LIFE], usando, por ejemplo, un CopyBot u otras herramientas parecidas para copiar, infringiendo los derechos de propiedad intelectual. El Equipo de Infracciones ('Abuse Team') investiga y lleva a cabo las acciones disciplinarias apropiadas ante toda acción que viole las [http://secondlife.com/corporate/tos.php Condiciones de Servicio] o las [http://secondlife.com/corporate/cs.php Normas de la Comunidad] de [SECOND_LIFE]. Sin embargo, el Equipo de Infracciones ni gestiona ni responde a las solicitudes de eliminar contenidos del mundo de [SECOND_LIFE]. -(2) El DMCA o Proceso de Eliminación de Contenido. Para solicitar que se elimine algún contenido de [SECOND_LIFE], DEBE enviar una notificación válida de infracción tal y como se explica en nuestra DMCA Policy en http://secondlife.com/corporate/dmca.php. +(2) El DMCA o Proceso de Eliminación de Contenido. Para solicitar que se elimine algún contenido de [SECOND_LIFE], DEBES enviar una notificación válida de infracción tal y como se explica en nuestra [http://secondlife.com/corporate/dmca.php 'DMCA Policy']. -Si todavía quiere seguir con el proceso de infracción, por favor, cierre esta ventana y acabe de enviar su denuncia. En concreto, debe seleccionar la categoría 'CopyBot o Programa para saltarse los permisos'. +Si todavía quieres seguir con el proceso de infracción, por favor, cierra esta ventana y acaba de enviar tu denuncia. En concreto, debes seleccionar la categoría 'CopyBot o Programa para saltarse los permisos'. Gracias, @@ -2085,7 +1759,7 @@ Linden Lab <notification label="Reemplazar el anexado actual" name="ReplaceAttachment"> En ese punto de su cuerpo ya hay un objeto anexado. ¿Quiere reemplazarlo por el objeto que ha elegido? <form name="form"> - <ignore name="ignore" save_option="true" text="Cuando se reemplacen anexados existentes"/> + <ignore name="ignore" save_option="true" text="Reemplazar un añadido actual con el ítem seleccionado"/> <button ignore="Reemplazar automaticamente" name="Yes" text="OK"/> <button ignore="Nunca reemplazar" name="No" text="Cancelar"/> </form> @@ -2095,18 +1769,22 @@ Linden Lab ¿Quiere salir del modo Ocupado ante de completar esta transacción? <form name="form"> - <ignore name="ignore" save_option="true" text="Cuando se esté pagando a un objeto o persona en el modo Ocupado"/> + <ignore name="ignore" save_option="true" text="Voy a pagar a una persona u objeto mientras estoy en el modo ocupado"/> <button ignore="Siempre salir del modo Ocupado" name="Yes" text="OK"/> <button ignore="Nunca salir del modo Ocupado" name="No" text="Cancelar"/> </form> </notification> + <notification name="ConfirmDeleteProtectedCategory"> + La carpeta '[FOLDERNAME]' pertenece al sistema, y borrar carpetas del sistema puede provocar inestabilidad. ¿Estás seguro de que quieres borrarla? + <usetemplate ignoretext="Confirmar antes de borrar una carpeta del sistema" name="okcancelignore" notext="Cancelar" yestext="OK"/> + </notification> <notification name="ConfirmEmptyTrash"> - ¿Está seguro de que quiere vaciar definitivamente el contenido de su Papelera? - <usetemplate ignoretext="Cuando se vacíe la Papelera" name="okcancelignore" notext="Cancelar" yestext="OK"/> + ¿Estás seguro de que quieres borrar de forma permanente el contenido de la Papelera? + <usetemplate ignoretext="Confirmar antes de vaciar la Papelera del inventario" name="okcancelignore" notext="Cancelar" yestext="OK"/> </notification> <notification name="ConfirmClearBrowserCache"> - ¿Está seguro de que quiere limpiar la caché de su navegador? - <usetemplate name="okcancelbuttons" notext="Cancelar" yestext="Sí"/> + ¿Estás seguro de que quieres borrar tu historial web, de viajes y de búsquedas? + <usetemplate name="okcancelbuttons" notext="Cancelar" yestext="OK"/> </notification> <notification name="ConfirmClearCookies"> ¿Está seguro de que quiere limpiar sus cookies? @@ -2117,39 +1795,18 @@ Linden Lab <usetemplate name="okcancelbuttons" notext="Cancelar" yestext="Sí"/> </notification> <notification name="ConfirmEmptyLostAndFound"> - ¿Está seguro de que quiere eliminar permanentemente el contenido de su carpeta Objetos Perdidos? - <usetemplate ignoretext="Cuando se vacíe la carpeta del inventario Objetos Perdidos" name="okcancelignore" notext="No" yestext="Sí"/> + ¿Estás seguro de que quieres borrar de forma permanente el contenido de Objetos Perdidos? + <usetemplate ignoretext="Confirmar antes de vaciar la carpeta Objetos Perdidos" name="okcancelignore" notext="No" yestext="Sí"/> </notification> <notification name="CopySLURL"> - Se ha copiado a su portapapeles la siguiente SLurl: + Se ha copiado a tu portapapeles esta SLurl: [SLURL] -Publíquela en una página web para que otros puedan acceder fácilmente a esta posición, o pruébela usted mismo pegándola en la barra de direcciones de su navegador. +Publícala en una página web para que otros puedan acceder fácilmente a esta posición, o pruébala tú mismo pegándola en la barra de direcciones de tu navegador. <form name="form"> - <ignore name="ignore" text="Cuando se copie una SLurl al portapapeles"/> + <ignore name="ignore" text="La SLurl se ha copiado a mi portapapeles"/> </form> </notification> - <notification name="GraphicsPreferencesHelp"> - Este panel controla el tamaño de la ventana, y la resolución y la calidad de los gráficos del cliente. La interfaz Preferencias > Gráficos le permite escoger entre cuatro niveles gráficos: Bajo, Medio, Alto, y Ultra. También puede personalizar sus configuraciones gráficas marcando la casilla Personalizar y adaptando estas configuraciones: - -Efectos: activa o desactiva varios tipos de shaders. - -Objetos reflejados: determina qué objetos reflejará el agua. - -Renderización del avatar: muestra opciones que afectan a cómo renderiza el cliente los avatares. - -Distancia de dibujo: afecta a cuán lejos de su punto de vista se renderizarán los objetos en la escena. - -Núm. máx. de partículas: define el número máximo de partículas que podrá ver a la vez en su pantalla. - -Calidad del procesamiento: define la resolución con que se renderiza el brillo. - -Detalle de la malla: define la cantidad de detalles o número de triángulos usados para renderizar algunos objetos. Cuanto más alto sea el valor, más detalle, pero más tiempo para renderizar. - -Detalles de la iluminación: determina que tipo de luces quiere usted que se rendericen. - -Nivel de detalle del terreno: marca con cuánto detalle quiere ver la textura del terreno. - </notification> <notification name="WLSavePresetAlert"> ¿Quiere sobrescribir la preselección guardada? <usetemplate name="okcancelbuttons" notext="No" yestext="Sí"/> @@ -2168,149 +1825,6 @@ Nivel de detalle del terreno: marca con cuánto detalle quiere ver la textura de Ya existe un efecto de procesamiento. ¿Desea sobreescribirlo? <usetemplate name="okcancelbuttons" notext="No" yestext="Sí"/> </notification> - <notification name="HelpEditSky"> - Edite los deslizables del WindLight para crear y guardar configuraciones del cielo. - </notification> - <notification name="HelpEditDayCycle"> - Define cómo se verán los cielos a lo largo del día. - </notification> - <notification name="EnvSettingsHelpButton"> - Estas configuraciones ajustan la forma en que usted ve el medio ambiente localmente, en su ordenador. Su tarjeta gráfica debe admitir shaders de la atmósfera ('atmospheric shaders') para poder acceder a esta configuración. - -Ajuste el deslizable 'Duración de un día' para cambiar localmente, en su visor, las etapas del día. - -Ajuste el deslizable 'Nubosidad' para controlar cuántas nubes cubren el cielo. - -Pulse un color en el selector de 'Color del agua' para cambiar el color de la misma. - -Ajuste el deslizable 'Claridad del agua' para controlar el nivel de claridad del agua bajo la superficie. - -Pulse 'Usar el horario del estado' para devolver los valores del día al tiempo actual de la región y seguir a partir de él. - -Pulse 'Cielo avanzado' para abrir un editor con configuraciones avanzadas para el cielo. - -Pulse 'Agua avanzada' para abrir un editor con configuraciones avanzadas para el agua. - </notification> - <notification name="HelpDayCycle"> - El Editor del ciclo del día le permite controlar el cielo de [SECOND_LIFE] durante el ciclo día/noche. Este es el ciclo que usa el deslizable Duración de un día del Editor del entorno. - -El Editor del ciclo del día trabaja configurando fotogramas clave ('keyframes'): nodos (representados por los puntos grises en la línea del tiempo) cada uno de los cuales tiene asociado un Cielo definido. Según progresa la Duración de un día, el WindLight realiza la 'animación' del cielo interpolándose entre esos fotogramas clave. - -La flecha amarilla sobre la línea del tiempo representa lo que usted ve actualmente, basándose en la Duración de un día. Púlsela y muévela para ver cómo cambia la animación del día. Puede añadir o borrar fotogramas clave pulsando los botones Añadir un punto o Quitar un punto, situados a la derecha de la línea del tiempo. - -Puede establecer la posición en el tiempo de cualquier fotograma clave moviéndolo a lo largo de la línea del tiempo, o configurando manualmente su valor en el recuadro Configuración del fotograma clave. También en ese recuadro podrá asociar el fotograma clave a un modelo predefinido de WindLight. - -La Duración del ciclo establece la duración total de un 'día'. Marcar un valor bajo (por ejemplo, 2 min.) hará que las 24 horas de su línea del tiempo se animen ¡en sólo dos minutos reales! Una vez que esté satisfecho con su ciclo de la línea del tiempo y los fotogramas clave, utilice los botones Probar y Parar para obtener una vista previa de los resultados. Recuerde que también puede mover la flecha amarilla de encima de la línea del tiempo para ver el ciclo de la animación. El botón Usar el horario del estado sincronizará su ciclo de duración de un día con el ciclo del estado. - -Cuando todo esté a su gusto, puede guardar esos datos y cargarlos luego usando los botones Guardar este tipo de día y Cargar un tipo de día. Note que, por el momento, sólo podemos permitir un ciclo de un día. - </notification> - <notification name="HelpBlueHorizon"> - Use los deslizables Rojo/Verde/Azul (RVA) para ajustar el color del cielo. Puede usar el deslizable de Intensidad (I) para moverlos al unísono. - </notification> - <notification name="HelpHazeHorizon"> - La Cantidad de bruma es uno de los parámetros más útiles para ajustar el nivel de luz de la escena. Es eficaz para simular muchos ajustes de la exposición, como la claridad en un ambiente nublado o de nevisca, o las tonalidades del una flor Iris aún cerrada. - </notification> - <notification name="HelpBlueDensity"> - La Saturación afecta a la densidad global de la saturación de color del cielo y la niebla. Si mueve el deslizable Intensidad (I) a la derecha, los colores serán más vivos y brillantes. Si lo mueve a la izquierda, se irán decolorando hasta llegar incluso al blanco y negro. Si desea ajustar el balance de color del cielo, puede controlar la saturación de cada elemento usando el deslizable Rojo/Verde/Azul (RVA). - </notification> - <notification name="HelpHazeDensity"> - La Densidad de la bruma controla lo sombrío de la atmósfera, su neblina. Es eficaz para simular escenas con mucho humo o contaminantes, y también para simular niebla y llovizna. - </notification> - <notification name="HelpDensityMult"> - La Densidad puede usarse para definir globalmente la 'pesadez' de la atmósfera. Los ajustes bajos dan sensación de un 'aire limpio', y los altos de pesadez, de esmog. - </notification> - <notification name="HelpDistanceMult"> - Ajusta a qué distancia se percibe el WindLight. El valor cero desactiva la influencia del WindLight en el terreno y los objetos. Los valores superiores a 1 simulan mayores distancias a las que afectan los efectos atmosféricos - </notification> - <notification name="HelpMaxAltitude"> - La Altitud máx. ajusta hasta que altura el WindLight realiza sus cálculos para computar la iluminación atmosférica. En las últimas horas del día, es útil para ajustar la 'profundidad' a la que aparece el Sol. - </notification> - <notification name="HelpSunlightColor"> - Ajusta en la escena la intensidad y el color de las luces directas. - </notification> - <notification name="HelpSunAmbient"> - Ajusta en la escena la intensidad y el color de la luz ambiental. - </notification> - <notification name="HelpSunGlow"> - El deslizable Tamaño controla el tamaño del Sol. -El deslizable Visión controla cómo se ve de borroso el Sol en el cielo. - </notification> - <notification name="HelpSceneGamma"> - Ajusta la distribución de luz y oscuridad en la pantalla. - </notification> - <notification name="HelpStarBrightness"> - Ajusta el brillo de las estrellas en el cielo. - </notification> - <notification name="HelpTimeOfDay"> - Controla la posición del Sol en el cielo. Es parecido a la elevación. - </notification> - <notification name="HelpEastAngle"> - Controla la posición del Sol en el cielo. Es parecido al acimut. - </notification> - <notification name="HelpCloudColor"> - Edita el color de las nubes. En general, es recomendable mantenerlas blanquecinas. -Pero, vaya, diviértase si quiere. - </notification> - <notification name="HelpCloudDetail"> - Controla el detalle de las capas superiores de la imagen en la imagen principal de las nubes. X e Y controlan su posición. D (Densidad) controla la densidad o la fracturación con que aparecen las nubes. - </notification> - <notification name="HelpCloudDensity"> - Le permite controlar la posición de las nubes con los deslizables X e Y, y su desnidad con el deslizable D. - </notification> - <notification name="HelpCloudCoverage"> - Controla cuánto cubren el cielo las nubes. - </notification> - <notification name="HelpCloudScale"> - Controla el tamaño de la imagen de las nubes en la bóveda celeste. - </notification> - <notification name="HelpCloudScrollX"> - Controla la velocidad de las nubes al moverse en la dirección del eje X. - </notification> - <notification name="HelpCloudScrollY"> - Controla la velocidad de las nubes al moverse en la dirección del eje Y. - </notification> - <notification name="HelpClassicClouds"> - Marque esta casilla para activar la aparición de las nubes clásicas de [SECOND_LIFE] junto a las nubes del WindLight. - </notification> - <notification name="HelpWaterFogColor"> - Elije el color del agua bajo la superficie. - </notification> - <notification name="HelpWaterFogDensity"> - Controla la densidad de la claridad del agua, y a qué distancia puede verse bajo ella. - </notification> - <notification name="HelpUnderWaterFogMod"> - Modifica el efecto de Transparencia para controlar cuán lejos su avatar puede ver bajo el agua. - </notification> - <notification name="HelpWaterGlow"> - Controla la cantidad de brillo de la superficie del agua. - </notification> - <notification name="HelpWaterNormalScale"> - Controla el tamaño de las tres ondulaciones que componen el agua. - </notification> - <notification name="HelpWaterFresnelScale"> - Controla cuánta luz se refleja desde diferentes ángulos. - </notification> - <notification name="HelpWaterFresnelOffset"> - Controla cuánta intensidad de luz se refleja. - </notification> - <notification name="HelpWaterScaleAbove"> - Controla la cantidad de luz refractada mirando la superficie del agua desde arriba. - </notification> - <notification name="HelpWaterScaleBelow"> - Controla la cantidad de luz refractada mirando la superficie del agua desde debajo. - </notification> - <notification name="HelpWaterBlurMultiplier"> - Controla cómo se mezclan las ondas y los reflejos. - </notification> - <notification name="HelpWaterNormalMap"> - Controla cuál es la capa de 'vista normal' del agua, para determinar las reflexiones/refracciones. - </notification> - <notification name="HelpWaterWave1"> - Controla hacia adónde y a qué velocidad se mueve en los ejes X e Y la versión en tamaño grande de la 'vista normal'. - </notification> - <notification name="HelpWaterWave2"> - Controla hacia adónde y a qué velocidad se mueve en los ejes X e Y la versión en tamaño pequeño de la 'vista normal'. - </notification> <notification name="NewSkyPreset"> Dame un nombre para el cielo nuevo. <form name="form"> @@ -2356,35 +1870,33 @@ Pero, vaya, diviértase si quiere. <usetemplate name="okbutton" yestext="OK"/> </notification> <notification name="Cannot_Purchase_an_Attachment"> - No se pueden comprar los ítems que aún forman parte de un objeto anexado. + No puedes comprar un objeto mientras esté anexado. </notification> <notification label="Acerca de las solicitudes de autorización de débito" name="DebitPermissionDetails"> Al admitir esta petición, le da permiso a un script para que coja dólares Linden (L$) de su cuenta. Para revocar este permiso, el propietario del objeto debe eliminarlo o reiniciar ese script del objeto. <usetemplate name="okbutton" yestext="OK"/> </notification> <notification name="AutoWearNewClothing"> - ¿Quiere vestirse automáticamente el ítem de ropa nueva que ha creado? - <usetemplate ignoretext="Al vestirme automáticamente la ropa nueva" name="okcancelignore" notext="No" yestext="Sí"/> + ¿Quieres ponerte automáticamente la ropa que vas a crear? + <usetemplate ignoretext="Ponerme la ropa que estoy creando mientras modifico mi apariencia" name="okcancelignore" notext="No" yestext="Sí"/> </notification> <notification name="NotAgeVerified"> - Para acceder a esta parcela, se debe haber verificado su edad. -¿Quiere visitar la web de [SECOND_LIFE] para verificar su edad? + Debes haber verificado tu edad para visitar este sitio. ¿Quieres ir al sitio web de [SECOND_LIFE] y verificarla? [_URL] <url name="url" option="0"> https://secondlife.com/account/verification.php?lang=es </url> - <usetemplate ignoretext="Advertir de la falta de la verificación de edad" name="okcancelignore" notext="No" yestext="Sí"/> + <usetemplate ignoretext="No he verificado mi edad" name="okcancelignore" notext="No" yestext="Sí"/> </notification> <notification name="Cannot enter parcel: no payment info on file"> - Antes de que pueda acceder a esta parcela, se requiere que usted tenga archivada su información de pago. -¿Quiere visitar la web de [SECOND_LIFE] para actualizar esto? + Para visitar este sitio debes haber aportado información de pago en tu cuenta. ¿Quieres ir al sitio web de [SECOND_LIFE] y configurar esto? [_URL] <url name="url" option="0"> https://secondlife.com/account/index.php?lang=es </url> - <usetemplate ignoretext="Advertir de la falta de información de pago" name="okcancelignore" notext="No" yestext="Sí"/> + <usetemplate ignoretext="No he registrado información de pago" name="okcancelignore" notext="No" yestext="Sí"/> </notification> <notification name="MissingString"> La cadena [STRING_NAME] Ha desaparecido de strings.xml @@ -2414,7 +1926,7 @@ Pero, vaya, diviértase si quiere. [FIRST] [LAST] no está conectado </notification> <notification name="AddSelfFriend"> - No se puede añadir como amigo a usted mismo. + Aunque eres muy agradable, no puedes añadirte como amigo a ti mismo. </notification> <notification name="UploadingAuctionSnapshot"> Subiendo fotos del mundo y del sitio web... @@ -2433,7 +1945,7 @@ Pero, vaya, diviértase si quiere. Se ha descargado Terrain.raw </notification> <notification name="GestureMissing"> - El gesto [NAME] ha desaparecido de la base de datos. + No se encuentra en la base de datos el gesto [NAME]. </notification> <notification name="UnableToLoadGesture"> No se ha podido cargar el gesto [NAME]. @@ -2446,14 +1958,14 @@ Por favor, vuelva a intentarlo. No se ha podido cargar el hito. Por favor, vuelva a intentarlo. </notification> <notification name="CapsKeyOn"> - Tiene pulsada su tecla de bloqueo de mayúsculas, lo que influirá en cómo escriba la contraseña. -Quizá quiera soltar esa tecla. + Tienes pulsada la tecla de mayúsculas. +Esto puede influir en tu contraseña. </notification> <notification name="NotecardMissing"> La nota ha desaparecido de la base de datos. </notification> <notification name="NotecardNoPermissions"> - No tiene permisos suficientes para ver la nota. + No tienes permiso para ver esta nota. </notification> <notification name="RezItemNoPermissions"> No tiene permisos suficientes para renderizar el objeto. @@ -2491,11 +2003,11 @@ Por favor, vuelva a intentarlo. Por favor, vuelva a intentarlo. </notification> <notification name="CannotBuyObjectsFromDifferentOwners"> - No puede comprar a la vez objetos de diferentes propietarios. -Por favor, elija sólo uno. + No puedes comprar más de un objeto a la vez. +Por favor, selecciona un sólo objeto. </notification> <notification name="ObjectNotForSale"> - El objeto no aparece como puesto a la venta. + Este objeto no está en venta. </notification> <notification name="EnteringGodMode"> Entrando en el modo administrativo, nivel [LEVEL] @@ -2504,10 +2016,10 @@ Por favor, elija sólo uno. Saliendo del modo administrativo, nivel [LEVEL] </notification> <notification name="CopyFailed"> - No se ha hecho la copia porque usted no tiene permiso para hacerla + No tienes pemiso para copiar esto. </notification> <notification name="InventoryAccepted"> - [NAME] ha aceptado su oferta del inventario. + [NAME] ha recibido tu oferta de inventario. </notification> <notification name="InventoryDeclined"> [NAME] ha rehusado su oferta del inventario. @@ -2522,12 +2034,14 @@ Por favor, elija sólo uno. Se ha rehusado su tarjeta de visita. </notification> <notification name="TeleportToLandmark"> - Ahora que ha llegado a mainland (los continentes), puede teleportarse a localizaciones como '[NAME]' pulsando el botón Inventario de la esquina inferior derecha de su pantalla, y, después, seleccionando la carpeta Hitos. -Pulse dos veces en el hito y, luego, pulse en Teleportar para viajar hasta allí. + Puedes teleportarte a lugares como '[NAME]' abriendo el panel Lugares -a la derecha de tu pantalla- y seleccionando la sección Hitos. +Pulsa en un hito para seleccionarlo, y, luego, pulsa 'Teleportar' en la parte inferior del panel. +(También puedes pulsar dos veces en el hito o pulsarlo con el botón derecho del ratón y elegir 'Teleportar'.) </notification> <notification name="TeleportToPerson"> - Ahora que ha llegado a mainland (los continentes), puede contactar con residentes como '[NAME]' pulsando el botón Inventario de la esquina inferior derecha de su pantalla, y, después, seleccionando la carpeta Tarjetas de visita. -Pulse dos veces en la tarjeta, pulse en Mensaje Instantáneo, y escriba un mensaje. + Puedes contactar con residentes como '[NAME]' abriendo el panel Gente, a la derecha de tu pantalla. +Selecciona un residente de la lista y pulsa 'MI' en la parte inferior del panel. +(También puedes pulsar dos veces en su nombre o pulsarlo con el botón derecho y elegir 'MI'). </notification> <notification name="CantSelectLandFromMultipleRegions"> No puede seleccionar un terreno que cruce las fronteras entre servidores. @@ -2550,6 +2064,9 @@ Inténtelo seleccionando un trozo más pequeño de terreno. <notification name="SystemMessage"> [MESSAGE] </notification> + <notification name="PaymentRecived"> + [MESSAGE] + </notification> <notification name="EventNotification"> Notificación de un evento: @@ -2574,8 +2091,20 @@ Inténtelo seleccionando un trozo más pequeño de terreno. [NAMES] </notification> <notification name="NoQuickTime"> - No se ve como instalado en su sistema el software QuickTime de Apple. -Si quiere ver por streaming elementos multimedia en las parcelas que los tengan, debe ir al sitio web de QuickTime (http://www.apple.com/quicktime) e instalar el QuickTime Player. + No parece que tu sistema tenga instalado el software QuickTime de Apple. +Si quieres ver media en streaming en las parcelas que los tienen, deberías ir al [http://www.apple.com/quicktime sitio de QuickTime] e intalar el QuickTime Player. + </notification> + <notification name="NoPlugin"> + No se ha encontrado el 'Media Plugin' para manejar el 'mime type' "[MIME_TYPE]". Los media de este tipo no estarán disponibles. + </notification> + <notification name="MediaPluginFailed"> + Fallo de este 'Media Plugin': + [PLUGIN] + +Por favor, reinstala el plugin o contacta con el vendedor si sigues teniendo problemas. + <form name="form"> + <ignore name="ignore" text="Fallo al ejecutar un 'Media Plugin'"/> + </form> </notification> <notification name="OwnedObjectsReturned"> Se han devuelto a su inventario los objetos de los que usted era propietario en la parcela seleccionada. @@ -2594,24 +2123,26 @@ Los objetos no transferibles que se transfirieron al grupo han sido borrados. <notification name="UnOwnedObjectsReturned"> Se han devuelto a sus propietarios los objetos de los que usted NO era propietario en la parcela seleccionada. </notification> + <notification name="ServerObjectMessage"> + Mensaje de [NAME]: +[MSG] + </notification> <notification name="NotSafe"> - Este es un terreno con el daño autorizado ('no seguro'). -Aquí puede ser herido. Si muere, será teleportado a su Base. + Este terreno tiene el daño activado. +Aquí puedes ser herido. Si mueres, se te teleportará a tu Base. </notification> <notification name="NoFly"> - En este terreno no se permite volar ('no volar'). -Aquí no debe volar. + Este terreno tiene desactivado el poder volar. +Aquí no puedes volar. </notification> <notification name="PushRestricted"> - Este terreno es 'Sin empujones'. -No puede empujar a otros a menos que sea el propietario del terreno. + Este terreno no autoriza el poder empujar. No puedes hacerlo a menos que seas el propetario del terreno. </notification> <notification name="NoVoice"> - Este terreno tiene desactivada la voz. + Este tereno tiene desactivado el chat de voz. No podrás oír hablar a nadie. </notification> <notification name="NoBuild"> - Este terreno tiene desactivado el construir ('no construir'). -Aquí no puede crear objetos. + Este terreno tiene desactivado el poder construir. Aquí no puedes ni construir ni crear objetos. </notification> <notification name="ScriptsStopped"> Un administrador ha detenido temporalmente los scripts en esta región. @@ -2620,12 +2151,12 @@ Aquí no puede crear objetos. En esta región no se está ejecutando ningún script. </notification> <notification name="NoOutsideScripts"> - Esta región tiene desactivados los scripts de otros -('no scripts de otros'). -No se ejecutará ningún script que no pertenezca al propietario del terreno. + Este terreno tiene desactivados los scripts externos. + +Los scripts no funcionan aquí, excepto los pertenecientes al propietario del terreno. </notification> <notification name="ClaimPublicLand"> - Sólo puede reclamar terreno público en la región en que está usted. + Sólo puedes reclamar terreno público de la región en que estás. </notification> <notification name="RegionTPAccessBlocked"> No está autorizado en esa región por su nivel de calificación. Debe validar su edad y/o instalar el último visor. @@ -2638,16 +2169,9 @@ Por favor, vaya a la Base de Conocimientos para más detalles sobre el acceso a <notification name="NoTeenGridAccess"> Su cuenta no puede conectarse a esta región del grid teen. </notification> - <notification name="NoHelpIslandTP"> - No puede teleportarse de vuelta a la Help Island ('Isla de Ayuda'). -Vaya a la 'Help Island Public' ('Isla Pública de Ayuda') para repetir el tutorial. - </notification> <notification name="ImproperPaymentStatus"> No tiene el estado de pago adecuado para entrar a esta región. </notification> - <notification name="MustGetAgeRegion"> - Debe haber verificado su edad para entrar a esta región. - </notification> <notification name="MustGetAgeParcel"> Debe haber verificado su edad para entrar a esta parcela. </notification> @@ -2710,7 +2234,8 @@ Por favor, reinténtelo en unos momentos. No se ha podido encontrar una parcela válida. </notification> <notification name="ObjectGiveItem"> - Un objeto llamado [OBJECTFROMNAME], propiedad de [FIRST] [LAST], le ha dado un/a [OBJECTTYPE] de nombre [OBJECTNAME]. + Un objeto de nombre [OBJECTFROMNAME], propiedad de [NAME_SLURL], te ha dado un/a [OBJECTTYPE]: +[ITEM_SLURL] <form name="form"> <button name="Keep" text="Guardar"/> <button name="Discard" text="Descartar"/> @@ -2718,7 +2243,8 @@ Por favor, reinténtelo en unos momentos. </form> </notification> <notification name="ObjectGiveItemUnknownUser"> - Un objeto llamado [OBJECTFROMNAME], propiedad de (un usuario desconocido), le ha dado un/a [OBJECTTYPE] de nombre [OBJECTNAME]. + Un objeto de nombre [OBJECTFROMNAME], propiedad de (un residente desconocido) te ha dado un/a [OBJECTTYPE]: +[ITEM_SLURL] <form name="form"> <button name="Keep" text="Guardar"/> <button name="Discard" text="Descartar"/> @@ -2726,15 +2252,17 @@ Por favor, reinténtelo en unos momentos. </form> </notification> <notification name="UserGiveItem"> - [NAME] le ha dado un/a [OBJECTTYPE] de nombre '[OBJECTNAME]'. + [NAME_SLURL] te ha dado un/a [OBJECTTYPE]: +[ITEM_SLURL] <form name="form"> <button name="Keep" text="Guardar"/> + <button name="Show" text="Mostrar"/> <button name="Discard" text="Descartar"/> - <button name="Mute" text="Ignorar"/> </form> </notification> <notification name="GodMessage"> [NAME] + [MESSAGE] </notification> <notification name="JoinGroup"> @@ -2746,7 +2274,7 @@ Por favor, reinténtelo en unos momentos. </form> </notification> <notification name="TeleportOffered"> - [NAME] se ha ofrecido a teleportarle hasta su posición: + [NAME] te ofrece teleportarte a su localización: [MESSAGE] <form name="form"> @@ -2773,6 +2301,9 @@ Por favor, reinténtelo en unos momentos. <button name="Decline" text="Rehusar"/> </form> </notification> + <notification name="FriendshipOffered"> + Has ofrecido amistad a [TO_NAME] + </notification> <notification name="OfferFriendshipNoMessage"> [NAME] le está ofreciendo amistad. @@ -2797,12 +2328,12 @@ Esto añadirá un ítem a su inventario para que pueda enviar rápidamente a est </form> </notification> <notification name="RegionRestartMinutes"> - La región se reiniciará en [MINUTES] minutos. -Si permanece en esta región, será desconectado. + Esta región se reiniciará en [MINUTES] minutos. +Si permaneces en esta región serás desconectado. </notification> <notification name="RegionRestartSeconds"> - La región se reiniciará en [SECONDS] segundos. -Si permanece en esta región, será desconectado. + Esta región se reiniciará en [SECONDS] segundos. +Si permaneces en esta región serás desconectado. </notification> <notification name="LoadWebPage"> ¿Cargar la página web [URL]? @@ -2822,7 +2353,7 @@ Del objeto: [OBJECTNAME]; propiedad de: [NAME]? Búsqueda fallida de [TYPE] de nombre [DESC] en la base de datos. </notification> <notification name="InvalidWearable"> - El ítem que intenta llevar usa una característica que su visor no puede leer. Por favor, actualice su versión de [APP_NAME] para llevar este ítem. + El ítem que quieres vestirte tiene una característica que tu visor no puede leer. Por favor, actualiza tu versión de [APP_NAME] para ponerte este ítem. </notification> <notification name="ScriptQuestion"> '[OBJECTNAME]', un objeto propiedad de '[NAME]', querría: @@ -2836,10 +2367,10 @@ Del objeto: [OBJECTNAME]; propiedad de: [NAME]? </form> </notification> <notification name="ScriptQuestionCaution"> - '[OBJECTNAME]', un objeto propiedad de '[NAME]', querría: + Un objeto de nombre '[OBJECTNAME]', propiedad de '[NAME]', quiere: [QUESTIONS] -Si no confía en este objeto y su creador, debe denegar la solicitud. Para más información, pulse el botón Detalles. +Si no confias en este objeto y en su creador, deberías rehusar esta petición. ¿Autorizar esta petición? <form name="form"> @@ -2862,39 +2393,44 @@ Si no confía en este objeto y su creador, debe denegar la solicitud. Para más <button name="Ignore" text="Ignorar"/> </form> </notification> + <notification name="ScriptToast"> + El '[TITLE]' de [FIRST] [LAST] está esperando una respuesta del usuario. + <form name="form"> + <button name="Open" text="Abrir el diálogo"/> + <button name="Ignore" text="Ignorar"/> + <button name="Block" text="Ignorar"/> + </form> + </notification> <notification name="FirstBalanceIncrease"> - Ha recibido [AMOUNT] L$. -Pueden darle L$ tanto objetos como otros usuarios. -Su balance se muestra en la esquina superior derecha de la pantalla. + Has recibido [AMOUNT] L$. +Tu saldo de L$ se muestra arriba a la derecha. </notification> <notification name="FirstBalanceDecrease"> - Ha pagado [AMOUNT] L$. -Su balance se muestra en la esquina superior derecha de la pantalla. + Acabas de pagar [AMOUNT] L$. +Tu saldo de L$ se muestra arriba a la derecha. + </notification> + <notification name="BuyLindenDollarSuccess"> + ¡Gracias por tu pago! + +Tu saldo de L$ se actualizará cuando se complete el proceso. Si el proceso tarda más de 20 minutos, se cancelará tu transacción, y la cantidad se cargará en tu saldo de US$. + +Puedes revisar el estado de tu pago en el Historial de transacciones de tu [http://secondlife.com/account/ Panel de Control] </notification> <notification name="FirstSit"> - Está sentado. -Use las teclas del cursor (o AWSD) para cambiar el punto de vista. -Pulde el botón 'Levantarse' para ponerse de pie. + Estás sentado. +Usa las teclas de cursor (o AWSD) para mirar alrededor. +Pulsa el botón 'Levantarme' para ponerte de pie. </notification> <notification name="FirstMap"> - Pulse el mapa y arrástrelo para desplazarlo. -Púlselo dos veces para teleportarse. -Use los controles de la derecha para encontrar sitios y mostrar diferentes fondos. + Pulsa y arrastra el mapa para ver los alrededores. +Pulsa dos veces para teleportarte. +Usa los controles de la derecha para encontrar cosas y mostrar diferentes fondos. </notification> <notification name="FirstBuild"> - Usted puede construir objetos nuevos en algunas zonas de [SECOND_LIFE]. -Use las herramientas de arriba a la izquierda para construir, y pruebe a cambiar rápidamente entre ellas pulsando Ctrl o Alt. -Pulse Esc para dejar de construir. - </notification> - <notification name="FirstLeftClickNoHit"> - En algunos objetos concretos, al pulsarlos con el botón izquierdo del ratón interacciona con ellos. -Si el puntero del ratón pasa a ser una mano puede interactuar con el objeto. -El botón derecho del ratón siempre muestra un menú con cosas que usted puede hacer. + Has abierto las herramientas de construcción. Cada objeto que estás viendo alrededor de ti se ha creado usando estas herramientas. </notification> <notification name="FirstTeleport"> - Esta región no permite teleportarse de un punto a otro, por lo que ha sido llevado al Punto de Teleporte más cercano. -Su destinado está señalado con una columna de luz roja. -Siga la flecha roja hasta llegar a la columna, o pulse la flecha para hacerla desaparecer. + Sólo puedes teleportarte a ciertos lugares de esta región. La flecha apunta al destino que elegiste. Pulsa la flecha para que desaparezca. </notification> <notification name="FirstOverrideKeys"> A partir de ahora, sus teclas de movimiento las gestiona un objeto. @@ -2902,46 +2438,41 @@ Pruebe las teclas del cursor o AWSD para ver qué hacen. Algunos objetos (las pistolas, por ejemplo) le pedirán que, para usarlos, entre usted en vista subjetiva. Pulse 'M' para hacerlo. </notification> <notification name="FirstAppearance"> - Está modificando su apariencia. -Use las teclas del cursor para girar el punto de vista y hacer zoom. -Cuando acabe, pulse 'Guardar todo' para salvar su apariencia y salir del modificarla. -Puede modificar su apariencia tantas veces como quiera. + Estás modicando tu apariencia. +Usa las teclas de cursor para mirar alrededor. +Cuando lo hayas hecho, pulsa 'Guardar todo'. </notification> <notification name="FirstInventory"> - Este es su inventario. Tiene objetos, notas, ropas, y otras cosas de su propiedad. -* Para vestirse un objeto o un vestuario completo, arrástrelo hasta usted mismo. -* Para colocar un objeto en el mundo, arrástrelo hasta el suelo. -* Para leer una nota, pulse dos veces en ella. + Este es tu inventario: contiene los ítems de los que eres propietario. + +* Para vestirte algo, arrástralo hasta ti mismo. +* Para colocar un objeto en el mundo, arrástralo hasta el suelo. +* Para leer una nota, pulsa dos veces en ella. </notification> <notification name="FirstSandbox"> - Esta es una región 'sandbox' (zona de pruebas). -Los objetos que construya aquí pueden ser eliminados cuando salga de esta zona, pues los sandbox se limpian regularmente. Por favor, tenga en cuenta la información que hay arriba de su pantalla junto al nombre de la región. + Esta es una región 'sandbox' (zona de pruebas) donde los Residentes pueden aprender a construir. -Las regiones sandbox no son frecuentes, y están señalizadas. +Los objetos que construyas aquí serán eliminados cuando la abandones; por tanto, no olvides pulsarlos con el botón derecho y elegir 'Tomar' para que tu creación vaya a tu inventario. </notification> <notification name="FirstFlexible"> - Este objeto es flexible. -Los objetos flexibles no pueden ser materiales, y serán inmateriales hasta que se desmarque la casilla de flexibles. + Este objeto es flexible. Los objetos flexibles han de ser inmateriales, no materiales. </notification> <notification name="FirstDebugMenus"> - Ha activado el menú Avanzado. -Contiene herramientas útiles para los desarrolladores que trabajan mejorando [SECOND_LIFE]. -Para pasar este menú a una ventana, pulse Ctrl+Alt+D. En un Mac, pulse ⌥⌘D. + Has abierto el menú Avanzado. + +Para activar este menú, + Windows: Ctrl+Alt+D + Mac: ⌥⌘D </notification> <notification name="FirstSculptedPrim"> - Está editando un prim 'sculpted'. -Los prim sculpted requieren una textura especial para tomar forma. -Puede encontrar ejemplos de texturas sculpted en la biblioteca del inventario. - </notification> - <notification name="FirstMedia"> - Ha empezado a reproducir media. Puede hacer que los media se reproduzcan automáticamente en la pestaña Audio y Vídeo de la ventana de preferencias. Note que tal cosa puede suponer un riesgo de seguridad en los sitios multimedia en los que no confíe. + Está editando un prim 'sculpted'. Los prim sculpted necesitan una textura especial para definir su forma. </notification> <notification name="MaxListSelectMessage"> Puede seleccionar un máximo de [MAX_SELECT] ítems de esta lista. </notification> <notification name="VoiceInviteP2P"> - [NAME] le está invitando a un chat de voz. -Pulse Aceptar para coger la llamada o Rehusar para declinar la invitación. Pulse Ignorar para ignorar a quien llama. + [NAME] te está invitando a un chat de voz. +Pulsa Aceptar o Rehusar para coger o no la llamada. Pulsa Ignorar para ignorar al que llama. <form name="form"> <button name="Accept" text="Aceptar"/> <button name="Decline" text="Rehusar"/> @@ -2949,17 +2480,17 @@ Pulse Aceptar para coger la llamada o Rehusar para declinar la invitación. Puls </form> </notification> <notification name="AutoUnmuteByIM"> - [FIRST] [LAST], a quien ha enviado un mensaje instantáneo, ha dejado automáticamente de estar ignorado. + [FIRST] [LAST] ha dejado automáticamente de estar ignorado al enviarle un mensaje instantáneo. </notification> <notification name="AutoUnmuteByMoney"> - [FIRST] [LAST], a quien ha dado dinero, ha dejado automáticamente de estar ignorado. + [FIRST] [LAST] ha dejado automáticamente de estar ignorado al darle dinero. </notification> <notification name="AutoUnmuteByInventory"> - [FIRST] [LAST], a quien ha ofrecido algo del inventario, ha dejado automáticamente de estar ignorado. + [FIRST] [LAST] ha dejado automáticamente de estar ignorado al ofrecerle algo del inventario. </notification> <notification name="VoiceInviteGroup"> [NAME] ha empezado un chat de voz con el grupo [GROUP]. -Pulse Aceptar para coger la llamada o Rehusar para declinar la invitación. Pulse Ignorar para ignorar a quien llama. +Pulsa Aceptar o Rehusar para coger o no la llamada. Pulsa Ignorar para ignorar al que llama. <form name="form"> <button name="Accept" text="Aceptar"/> <button name="Decline" text="Rehusar"/> @@ -2968,7 +2499,7 @@ Pulse Aceptar para coger la llamada o Rehusar para declinar la invitación. Puls </notification> <notification name="VoiceInviteAdHoc"> [NAME] ha empezado un chat de voz en multiconferencia. -Pulse Aceptar para coger la llamada o Rehusar para declinar la invitación. Pulse Ignorar para ignorar a este usuario. +Pulsa Aceptar o Rehusar para coger o no la llamada. Pulsa Ignorar para ignorar al que llama. <form name="form"> <button name="Accept" text="Aceptar"/> <button name="Decline" text="Rehusar"/> @@ -2976,8 +2507,8 @@ Pulse Aceptar para coger la llamada o Rehusar para declinar la invitación. Puls </form> </notification> <notification name="InviteAdHoc"> - [NAME] le está invitando a un chat en multiconferencia. -Pulse Aceptar para entrar al chat o Rehusar para declinar la invitación. Pulse Ignorar para ignorar a este usuario. + NAME] te está invitando a un chat en multiconferencia. +Pulsa Aceptar o Rehusar para coger o no la llamada. Pulsa Ignorar para ignorar al que llama. <form name="form"> <button name="Accept" text="Aceptar"/> <button name="Decline" text="Rehusar"/> @@ -2991,25 +2522,25 @@ Pulse Aceptar para entrar al chat o Rehusar para declinar la invitación. Pulse Lo sentimos. Este área ha llegado a su capacidad máxima de conversaciones por voz. Por favor, intente usar la voz en otra zona. </notification> <notification name="VoiceChannelDisconnected"> - Ha sido desconectado del [VOICE_CHANNEL_NAME]. Va a ser reconectado al chat de voz del mundo. + Has sido desconectado de [VOICE_CHANNEL_NAME]. Vas a ser reconectado al chat de voz. </notification> <notification name="VoiceChannelDisconnectedP2P"> - [VOICE_CHANNEL_NAME] ha colgado la llamada. Usted va a ser reconectado al chat de voz del mundo. + [VOICE_CHANNEL_NAME] ha colgado la llamada. Vas a ser reconectado al chat de voz. </notification> <notification name="P2PCallDeclined"> - [VOICE_CHANNEL_NAME] ha rehusado su llamada. Usted va a ser reconectado al chat de voz del mundo. + [VOICE_CHANNEL_NAME] ha rehusado tu llamada. Vas a ser reconectado al chat de voz. </notification> <notification name="P2PCallNoAnswer"> - [VOICE_CHANNEL_NAME] no está disponible para coger su llamada. Usted va a ser reconectado al chat de voz del mundo. + [VOICE_CHANNEL_NAME] no está disponible para coger tu llamada. Vas a ser reconectado al chat de voz. </notification> <notification name="VoiceChannelJoinFailed"> - Fallo al conectar al [VOICE_CHANNEL_NAME]; por favor, inténtelo más tarde. Usted va a ser reconectado al chat de voz del mundo. + Fallo al conectar a [VOICE_CHANNEL_NAME]; por favor, inténtalo más tarde. Vas a ser reconectado al chat de voz. </notification> <notification name="VoiceLoginRetry"> Estamos creando un canal de voz para usted. Se puede tardar hasta un minuto. </notification> <notification name="Cannot enter parcel: not a group member"> - No puede entrar en esta parcela, no es miembro del grupo adecuado. + Sólo los miembros de un grupo determinado pueden visitar esta zona. </notification> <notification name="Cannot enter parcel: banned"> No puede entrar en esta parcela, se le ha prohibido el acceso. @@ -3024,18 +2555,58 @@ Pulse Aceptar para entrar al chat o Rehusar para declinar la invitación. Pulse Ha ocurrido un error intentando conectarle al [VOICE_CHANNEL_NAME]. Por favor, inténtelo más tarde. </notification> <notification name="ServerVersionChanged"> - La región en la que ha entrado se ejecuta en un simulador con una versión diferente. Pulse este mensaje para ver más detalles. + Acabas de entrar en una región que usa un servidor con una versión distinta, y esto puede influir en el funcionamiento. [[URL] Ver las notas de desarrollo]. + </notification> + <notification name="UnsupportedCommandSLURL"> + No se admite el formato de la SLurl que has pulsado. </notification> - <notification name="UnableToOpenCommandURL"> - No puede abrirse desde este navegador la URL que ha pulsado. + <notification name="BlockedSLURL"> + Por tu seguridad, se ha bloqueado una SLurl recibida de un navegador no de confianza. + </notification> + <notification name="ThrottledSLURL"> + En muy poco tiempo, se han recibido muchas SLurls desde un navegador que no es de confianza. +Por tu seguridad, serán bloqueadas durante unos segundos. + </notification> + <notification name="IMToast"> + [MESSAGE] + <form name="form"> + <button name="respondbutton" text="Responder"/> + </form> + </notification> + <notification name="AttachmentSaved"> + Se ha guardado el adjunto. + </notification> + <notification name="UnableToFindHelpTopic"> + No se ha podido encontrar un tema de ayuda para este elemento. + </notification> + <notification name="ObjectMediaFailure"> + Error del servidor: fallo en la actualización u obtención de los media. +'[ERROR]' + <usetemplate name="okbutton" yestext="OK"/> + </notification> + <notification name="TextChatIsMutedByModerator"> + Un moderador ha silenciado tu chat de texto. + <usetemplate name="okbutton" yestext="OK"/> + </notification> + <notification name="VoiceIsMutedByModerator"> + Un moderador ha silenciado tu voz. + <usetemplate name="okbutton" yestext="OK"/> + </notification> + <notification name="ConfirmClearTeleportHistory"> + ¿Estás seguro de que quieres borrar tu historial de teleportes? + <usetemplate name="okcancelbuttons" notext="Cancelar" yestext="OK"/> + </notification> + <notification name="BottomTrayButtonCanNotBeShown"> + El botón elegido no se puede mostrar correctamente. +Se mostrará cuando tenga suficiente espacio. </notification> <global name="UnsupportedCPU"> - La velocidad de su CPU no cumple los requerimientos mínimos. </global> <global name="UnsupportedGLRequirements"> - Parece que no tiene los requerimientos de hardware apropiados para [APP_NAME]. [APP_NAME] requiere una tarjeta gráfica OpenGL que admita texturas múltiples ('multitexture support'). Si la tiene, compruebe que tiene los últimos drivers para su tarjeta gráfica, así como los últimos parches y 'service packs' para su sistema operativo. + Parece que no tienes el hardware apropiado para [APP_NAME]. [APP_NAME] requiere una tarjeta gráfica OpenGL que admita texturas múltiples ('multitexture support'). Si la tienes, comprueba que tienes los últimos 'drivers' para tu tarjeta gráfica, así como los últimos parches y 'service packs' para tu sistema operativo. -Si los problemas persisten, por favor, acuda a: http://www.secondlife.com/support +Si los problemas persisten, por favor, acude a [SUPPORT_SITE]. </global> <global name="UnsupportedCPUAmount"> 796 @@ -3049,10 +2620,8 @@ Si los problemas persisten, por favor, acuda a: http://www.secondlife.com/suppor <global name="UnsupportedRAM"> - La memoria de su sistema no cumple los requerimientos mínimos. </global> - <global name="PermYes"> - Sí - </global> - <global name="PermNo"> - No + <global name="You can only set your 'Home Location' on your land or at a mainland Infohub."> + Si posees un terreno, puedes hacerlo tu Base. +También puedes buscar en el Mapa lugares marcados como "Puntos de Información". </global> </notifications> diff --git a/indra/newview/skins/default/xui/es/panel_active_object_row.xml b/indra/newview/skins/default/xui/es/panel_active_object_row.xml new file mode 100644 index 0000000000..8d4fadb101 --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_active_object_row.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="panel_activeim_row"> + <string name="unknown_obj"> + Objeto desconocido + </string> + <text name="object_name"> + Objeto sin nombre + </text> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_adhoc_control_panel.xml b/indra/newview/skins/default/xui/es/panel_adhoc_control_panel.xml new file mode 100644 index 0000000000..6f30286216 --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_adhoc_control_panel.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="panel_im_control_panel"> + <panel name="panel_call_buttons"> + <button label="Llamar" name="call_btn"/> + <button label="Colgar" name="end_call_btn"/> + <button label="Controles de la voz" name="voice_ctrls_btn"/> + </panel> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_avatar_list_item.xml b/indra/newview/skins/default/xui/es/panel_avatar_list_item.xml new file mode 100644 index 0000000000..83d7223272 --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_avatar_list_item.xml @@ -0,0 +1,25 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="avatar_list_item"> + <string name="FormatSeconds"> + [COUNT] seg. + </string> + <string name="FormatMinutes"> + [COUNT] min. + </string> + <string name="FormatHours"> + [COUNT] h. + </string> + <string name="FormatDays"> + [COUNT] d. + </string> + <string name="FormatWeeks"> + [COUNT] sem. + </string> + <string name="FormatMonths"> + [COUNT] mes/es + </string> + <string name="FormatYears"> + [COUNT] año/s + </string> + <text name="avatar_name" value="Desconocido"/> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_block_list_sidetray.xml b/indra/newview/skins/default/xui/es/panel_block_list_sidetray.xml new file mode 100644 index 0000000000..6513345448 --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_block_list_sidetray.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="block_list_panel"> + <text name="title_text"> + Lista de ignorados + </text> + <scroll_list name="blocked" tool_tip="Lista de los residentes ignorados actualmente"/> + <button label="Ignorar al residente..." label_selected="Ignorar al residente..." name="Block resident..." tool_tip="Elige a un residente para ignorarle"/> + <button label="Ignorar objetos según el nombre..." label_selected="Ignorar objetos según el nombre..." name="Block object by name..."/> + <button label="No ignorar" label_selected="No ignorar" name="Unblock" tool_tip="Quitar objetos o residentes de la lista de ignorados"/> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_bottomtray.xml b/indra/newview/skins/default/xui/es/panel_bottomtray.xml new file mode 100644 index 0000000000..9924cd5ed6 --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_bottomtray.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="bottom_tray"> + <string name="SpeakBtnToolTip"> + Activa/Desactiva el micrófono + </string> + <string name="VoiceControlBtnToolTip"> + Muestra/Oculta el panel del control de voz + </string> + <layout_stack name="toolbar_stack"> + <layout_panel name="gesture_panel"> + <gesture_combo_box label="Gestos" name="Gesture" tool_tip="Muestra/Oculta los gestos"/> + </layout_panel> + <layout_panel name="movement_panel"> + <button label="Moverme" name="movement_btn" tool_tip="Muestra/Oculta los controles del movimiento"/> + </layout_panel> + <layout_panel name="cam_panel"> + <button label="Visión" name="camera_btn" tool_tip="Muestra/Oculta los controles de la cámara"/> + </layout_panel> + <layout_panel name="snapshot_panel"> + <button label="" name="snapshots" tool_tip="Hacer una foto"/> + </layout_panel> + </layout_stack> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_classified_info.xml b/indra/newview/skins/default/xui/es/panel_classified_info.xml new file mode 100644 index 0000000000..3b82994e32 --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_classified_info.xml @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="panel_classified_info"> + <text name="title" value="Información del clasificado"/> + <scroll_container name="profile_scroll"> + <panel name="scroll_content_panel"> + <text name="classified_name" value="[nombre]"/> + <text name="classified_location" value="[cargando...]"/> + <text name="content_type" value="[tipo de contenido]"/> + <text name="category" value="[categoría]"/> + <check_box label="Renovar automáticamente cada semana" name="auto_renew"/> + <text name="price_for_listing" tool_tip="Precio por publicarlo."> + [PRICE] L$ + </text> + <text name="classified_desc" value="[descripción]"/> + </panel> + </scroll_container> + <panel name="buttons"> + <button label="Teleportar" name="teleport_btn"/> + <button label="Mapa" name="show_on_map_btn"/> + <button label="Editar" name="edit_btn"/> + </panel> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_edit_alpha.xml b/indra/newview/skins/default/xui/es/panel_edit_alpha.xml new file mode 100644 index 0000000000..3f238da9d0 --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_edit_alpha.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="edit_alpha_panel"> + <panel name="avatar_alpha_color_panel"> + <texture_picker label="Alfa inferior" name="Lower Alpha" tool_tip="Pulsa para elegir una imagen"/> + <texture_picker label="Alfa superior" name="Upper Alpha" tool_tip="Pulsa para elegir una imagen"/> + <texture_picker label="Alfa de la cabeza" name="Head Alpha" tool_tip="Pulsa para elegir una imagen"/> + <texture_picker label="Alfa de los ojos" name="Eye Alpha" tool_tip="Pulsa para elegir una imagen"/> + <texture_picker label="Alfa del pelo" name="Hair Alpha" tool_tip="Pulsa para elegir una imagen"/> + </panel> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_edit_classified.xml b/indra/newview/skins/default/xui/es/panel_edit_classified.xml new file mode 100644 index 0000000000..e612104b3f --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_edit_classified.xml @@ -0,0 +1,33 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel label="Editar el clasificado" name="panel_edit_classified"> + <panel.string name="location_notice"> + (se actualizará tras guardarlo) + </panel.string> + <text name="title"> + Editar el clasificado + </text> + <scroll_container name="profile_scroll"> + <panel name="scroll_content_panel"> + <icon label="" name="edit_icon" tool_tip="Pulsa para elegir una imagen"/> + <text name="Name:"> + Título: + </text> + <text name="description_label"> + Descripción: + </text> + <text name="location_label"> + Localización: + </text> + <text name="classified_location"> + cargando... + </text> + <button label="Configurarlo en esta localización" name="set_to_curr_location_btn"/> + <spinner label="L$" name="price_for_listing" tool_tip="Precio por publicarlo." value="50"/> + <check_box label="Renovar automáticamente cada semana" name="auto_renew"/> + </panel> + </scroll_container> + <panel label="bottom_panel" name="bottom_panel"> + <button label="Guardar" name="save_changes_btn"/> + <button label="Cancelar" name="cancel_btn"/> + </panel> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_edit_eyes.xml b/indra/newview/skins/default/xui/es/panel_edit_eyes.xml new file mode 100644 index 0000000000..e33848554d --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_edit_eyes.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="edit_eyes_panel"> + <panel name="avatar_eye_color_panel"> + <texture_picker label="Iris" name="Iris" tool_tip="Pulsa para elegir una imagen"/> + </panel> + <accordion name="wearable_accordion"> + <accordion_tab name="eyes_main_tab" title="Ojos"/> + </accordion> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_edit_gloves.xml b/indra/newview/skins/default/xui/es/panel_edit_gloves.xml new file mode 100644 index 0000000000..397322466c --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_edit_gloves.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="edit_gloves_panel"> + <panel name="avatar_gloves_color_panel"> + <texture_picker label="Tela" name="Fabric" tool_tip="Pulsa para elegir una imagen"/> + <color_swatch label="Color/Tinte" name="Color/Tint" tool_tip="Pulsa para abrir el selector de color"/> + </panel> + <accordion name="wearable_accordion"> + <accordion_tab name="gloves_main_tab" title="Guantes"/> + </accordion> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_edit_hair.xml b/indra/newview/skins/default/xui/es/panel_edit_hair.xml new file mode 100644 index 0000000000..49cc8ce98c --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_edit_hair.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="edit_hair_panel"> + <panel name="avatar_hair_color_panel"> + <texture_picker label="Textura" name="Texture" tool_tip="Pulsa para elegir una imagen"/> + </panel> + <accordion name="wearable_accordion"> + <accordion_tab name="hair_color_tab" title="Color"/> + <accordion_tab name="hair_style_tab" title="Estilo"/> + <accordion_tab name="hair_eyebrows_tab" title="Cejas"/> + <accordion_tab name="hair_facial_tab" title="Facial"/> + </accordion> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_edit_jacket.xml b/indra/newview/skins/default/xui/es/panel_edit_jacket.xml new file mode 100644 index 0000000000..abee993aec --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_edit_jacket.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="edit_jacket_panel"> + <panel name="avatar_jacket_color_panel"> + <texture_picker label="Tejido superior" name="Upper Fabric" tool_tip="Pulsa para elegir una imagen"/> + <texture_picker label="Tejido inferior" name="Lower Fabric" tool_tip="Pulsa para elegir una imagen"/> + <color_swatch label="Color/Tinte" name="Color/Tint" tool_tip="Pulsa para abrir el selector de color"/> + </panel> + <accordion name="wearable_accordion"> + <accordion_tab name="jacket_main_tab" title="Chaqueta"/> + </accordion> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_edit_pants.xml b/indra/newview/skins/default/xui/es/panel_edit_pants.xml new file mode 100644 index 0000000000..80eb5f0de0 --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_edit_pants.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="edit_pants_panel"> + <panel name="avatar_pants_color_panel"> + <texture_picker label="Tela" name="Fabric" tool_tip="Pulsa para elegir una imagen"/> + <color_swatch label="Color/Tinte" name="Color/Tint" tool_tip="Pulsa para abrir el selector de color"/> + </panel> + <accordion name="wearable_accordion"> + <accordion_tab name="pants_main_tab" title="Pantalones"/> + </accordion> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_edit_pick.xml b/indra/newview/skins/default/xui/es/panel_edit_pick.xml new file mode 100644 index 0000000000..839e9c6023 --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_edit_pick.xml @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel label="Editar el destacado" name="panel_edit_pick"> + <text name="title"> + Editar el destacado + </text> + <scroll_container name="profile_scroll"> + <panel name="scroll_content_panel"> + <icon label="" name="edit_icon" tool_tip="Pulsa para elegir una imagen"/> + <text name="Name:"> + Título: + </text> + <text name="description_label"> + Descripción: + </text> + <text name="location_label"> + Posición: + </text> + <text name="pick_location"> + cargando... + </text> + <button label="Configurar en la posición actual" name="set_to_curr_location_btn"/> + </panel> + </scroll_container> + <panel label="bottom_panel" name="bottom_panel"> + <button label="Guardar [WHAT]" name="save_changes_btn"/> + <button label="Cancelar" name="cancel_btn"/> + </panel> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_edit_profile.xml b/indra/newview/skins/default/xui/es/panel_edit_profile.xml index c12dd8d58c..e1ff6ec92a 100644 --- a/indra/newview/skins/default/xui/es/panel_edit_profile.xml +++ b/indra/newview/skins/default/xui/es/panel_edit_profile.xml @@ -1,45 +1,48 @@ -<?xml version="1.0" encoding="utf-8" standalone="yes" ?> -<panel name="edit_profile_panel"> - <string name="CaptionTextAcctInfo"> - [ACCTTYPE] [PAYMENTINFO] [AGEVERIFICATION] - </string> - <string name="AcctTypeResident" - value="Residente" /> - <string name="AcctTypeTrial" - value="Prueba" /> - <string name="AcctTypeCharterMember" - value="Miembro fundador" /> - <string name="AcctTypeEmployee" - value="Empleado de Linden Lab" /> - <string name="PaymentInfoUsed" - value="Ha usado una forma de pago" /> - <string name="PaymentInfoOnFile" - value="Hay infor. de la forma de pago" /> - <string name="NoPaymentInfoOnFile" - value="Sin infor. de la forma de pago" /> - <string name="AgeVerified" - value="Edad verificada" /> - <string name="NotAgeVerified" - value="Edad no verificada" /> - <string name="partner_edit_link_url"> - http://www.secondlife.com/account/partners.php?lang=es - </string> - <panel name="scroll_content_panel"> - <panel name="data_panel" > - <panel name="lifes_images_panel"> - <panel name="second_life_image_panel"> - <text name="second_life_photo_title_text"> - [SECOND_LIFE]: - </text> - </panel> - </panel> - <text name="title_partner_text" value="Compañero/a:"/> - <panel name="partner_data_panel"> - <text name="partner_text" value="[FIRST] [LAST]"/> - </panel> - <text name="text_box3"> - Mensaje en el estado ocupado: - </text> - </panel> - </panel> +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel label="Editar el perfil" name="edit_profile_panel"> + <string name="CaptionTextAcctInfo"> + [ACCTTYPE] [PAYMENTINFO] [AGEVERIFICATION] + </string> + <string name="RegisterDateFormat"> + [REG_DATE] ([AGE]) + </string> + <string name="AcctTypeResident" value="Residente"/> + <string name="AcctTypeTrial" value="Prueba"/> + <string name="AcctTypeCharterMember" value="Miembro fundador"/> + <string name="AcctTypeEmployee" value="Empleado de Linden Lab"/> + <string name="PaymentInfoUsed" value="Ha usado una forma de pago"/> + <string name="PaymentInfoOnFile" value="Hay infor. de la forma de pago"/> + <string name="NoPaymentInfoOnFile" value="Sin infor. de la forma de pago"/> + <string name="AgeVerified" value="Edad verificada"/> + <string name="NotAgeVerified" value="Edad no verificada"/> + <string name="partner_edit_link_url"> + http://www.secondlife.com/account/partners.php?lang=es + </string> + <string name="no_partner_text" value="Ninguno"/> + <scroll_container name="profile_scroll"> + <panel name="scroll_content_panel"> + <panel name="data_panel"> + <panel name="lifes_images_panel"> + <icon label="" name="2nd_life_edit_icon" tool_tip="Pulsa para elegir una imagen"/> + </panel> + <panel name="first_life_image_panel"> + <text name="real_world_photo_title_text" value="Mundo real:"/> + </panel> + <icon label="" name="real_world_edit_icon" tool_tip="Pulsa para elegir una imagen"/> + <text name="title_homepage_text"> + Web: + </text> + <check_box label="Mostrarme en los resultados de la búsqueda" name="show_in_search_checkbox"/> + <text name="title_acc_status_text" value="Mi cuenta:"/> + <text name="my_account_link" value="[[URL] Ir a mi Panel de Control]"/> + <text name="acc_status_text" value="Residente. No ha aportado información de pago."/> + <text name="title_partner_text" value="Mi compañero/a:"/> + <text name="partner_edit_link" value="[[URL] Editar]"/> + </panel> + </panel> + </scroll_container> + <panel name="profile_me_buttons_panel"> + <button label="Guardar cambios" name="save_btn"/> + <button label="Cancelar" name="cancel_btn"/> + </panel> </panel> diff --git a/indra/newview/skins/default/xui/es/panel_edit_shape.xml b/indra/newview/skins/default/xui/es/panel_edit_shape.xml new file mode 100644 index 0000000000..8a9ac0e9ec --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_edit_shape.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="edit_shape_panel"> + <panel name="avatar_sex_panel"> + <text name="gender_text"> + Sexo: + </text> + <radio_group name="sex_radio"> + <radio_item label="Mujer" name="radio"/> + <radio_item label="Varón" name="radio2"/> + </radio_group> + </panel> + <accordion name="wearable_accordion"> + <accordion_tab name="shape_body_tab" title="Cuerpo"/> + <accordion_tab name="shape_head_tab" title="Cabeza"/> + <accordion_tab name="shape_eyes_tab" title="Ojos"/> + <accordion_tab name="shape_ears_tab" title="Orejas"/> + <accordion_tab name="shape_nose_tab" title="Nariz"/> + <accordion_tab name="shape_mouth_tab" title="Boca"/> + <accordion_tab name="shape_chin_tab" title="Barbilla"/> + <accordion_tab name="shape_torso_tab" title="Torso"/> + <accordion_tab name="shape_legs_tab" title="Piernas"/> + </accordion> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_edit_shirt.xml b/indra/newview/skins/default/xui/es/panel_edit_shirt.xml new file mode 100644 index 0000000000..6d65660409 --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_edit_shirt.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="edit_shirt_panel"> + <panel name="avatar_shirt_color_panel"> + <texture_picker label="Tela" name="Fabric" tool_tip="Pulsa para elegir una imagen"/> + <color_swatch label="Color/Tinte" name="Color/Tint" tool_tip="Pulsa para abrir el selector de color"/> + </panel> + <accordion name="wearable_accordion"> + <accordion_tab name="shirt_main_tab" title="Camisa"/> + </accordion> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_edit_shoes.xml b/indra/newview/skins/default/xui/es/panel_edit_shoes.xml new file mode 100644 index 0000000000..e613b1809d --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_edit_shoes.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="edit_shoes_panel"> + <panel name="avatar_shoes_color_panel"> + <texture_picker label="Tela" name="Fabric" tool_tip="Pulsa para elegir una imagen"/> + <color_swatch label="Color/Tinte" name="Color/Tint" tool_tip="Pulsa para abrir el selector de color"/> + </panel> + <accordion name="wearable_accordion"> + <accordion_tab name="shoes_main_tab" title="Zapatos"/> + </accordion> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_edit_skin.xml b/indra/newview/skins/default/xui/es/panel_edit_skin.xml new file mode 100644 index 0000000000..2d9e556a4a --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_edit_skin.xml @@ -0,0 +1,14 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="edit_skin_panel"> + <panel name="avatar_skin_color_panel"> + <texture_picker label="Tatuajes de la cabeza" name="Head Tattoos" tool_tip="Pulsa para elegir una imagen"/> + <texture_picker label="Tatuajes superiores" name="Upper Tattoos" tool_tip="Pulsa para elegir una imagen"/> + <texture_picker label="Tatuajes inferiores" name="Lower Tattoos" tool_tip="Pulsa para elegir una imagen"/> + </panel> + <accordion name="wearable_accordion"> + <accordion_tab name="skin_color_tab" title="Color de la piel"/> + <accordion_tab name="skin_face_tab" title="Detalles faciales"/> + <accordion_tab name="skin_makeup_tab" title="Maquillaje"/> + <accordion_tab name="skin_body_tab" title="Detalles del cuerpo"/> + </accordion> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_edit_skirt.xml b/indra/newview/skins/default/xui/es/panel_edit_skirt.xml new file mode 100644 index 0000000000..c8e25d38a9 --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_edit_skirt.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="edit_skirt_panel"> + <panel name="avatar_skirt_color_panel"> + <texture_picker label="Tela" name="Fabric" tool_tip="Pulsa para elegir una imagen"/> + <color_swatch label="Color/Tinte" name="Color/Tint" tool_tip="Pulsa para abrir el selector de color"/> + </panel> + <accordion name="wearable_accordion"> + <accordion_tab name="skirt_main_tab" title="Falda"/> + </accordion> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_edit_socks.xml b/indra/newview/skins/default/xui/es/panel_edit_socks.xml new file mode 100644 index 0000000000..d65f119da7 --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_edit_socks.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="edit_socks_panel"> + <panel name="avatar_socks_color_panel"> + <texture_picker label="Tela" name="Fabric" tool_tip="Pulsa para elegir una imagen"/> + <color_swatch label="Color/Tinte" name="Color/Tint" tool_tip="Pulsa para abrir el selector de color"/> + </panel> + <accordion name="wearable_accordion"> + <accordion_tab name="socks_main_tab" title="Calcetines"/> + </accordion> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_edit_tattoo.xml b/indra/newview/skins/default/xui/es/panel_edit_tattoo.xml new file mode 100644 index 0000000000..e5e72a11e4 --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_edit_tattoo.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="edit_tattoo_panel"> + <panel name="avatar_tattoo_color_panel"> + <texture_picker label="Tatuaje de la cabeza" name="Head Tattoo" tool_tip="Pulsa para elegir una imagen"/> + <texture_picker label="Tatuaje superior" name="Upper Tattoo" tool_tip="Pulsa para elegir una imagen"/> + <texture_picker label="Tatuaje inferior" name="Lower Tattoo" tool_tip="Pulsa para elegir una imagen"/> + </panel> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_edit_underpants.xml b/indra/newview/skins/default/xui/es/panel_edit_underpants.xml new file mode 100644 index 0000000000..ea446c1625 --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_edit_underpants.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="edit_underpants_panel"> + <panel name="avatar_underpants_color_panel"> + <texture_picker label="Tela" name="Fabric" tool_tip="Pulsa para elegir una imagen"/> + <color_swatch label="Color/Tinte" name="Color/Tint" tool_tip="Pulsa para abrir el selector de color"/> + </panel> + <accordion name="wearable_accordion"> + <accordion_tab name="underpants_main_tab" title="Ropa interior"/> + </accordion> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_edit_undershirt.xml b/indra/newview/skins/default/xui/es/panel_edit_undershirt.xml new file mode 100644 index 0000000000..92e42657a4 --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_edit_undershirt.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="edit_undershirt_panel"> + <panel name="avatar_undershirt_color_panel"> + <texture_picker label="Tela" name="Fabric" tool_tip="Pulsa para elegir una imagen"/> + <color_swatch label="Color/Tinte" name="Color/Tint" tool_tip="Pulsa para abrir el selector de color"/> + </panel> + <accordion name="wearable_accordion"> + <accordion_tab name="undershirt_main_tab" title="Camiseta"/> + </accordion> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_edit_wearable.xml b/indra/newview/skins/default/xui/es/panel_edit_wearable.xml new file mode 100644 index 0000000000..6d48b77d3c --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_edit_wearable.xml @@ -0,0 +1,101 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel label="Se puede poner" name="panel_edit_wearable"> + <string name="edit_shape_title"> + Modificando la anatomía + </string> + <string name="edit_skin_title"> + Modificando la piel + </string> + <string name="edit_hair_title"> + Modificando el pelo + </string> + <string name="edit_eyes_title"> + Modificando los ojos + </string> + <string name="edit_shirt_title"> + Modificando la camisa + </string> + <string name="edit_pants_title"> + Modificando los pantalones + </string> + <string name="edit_shoes_title"> + Modificando los zapatos + </string> + <string name="edit_socks_title"> + Modificando los calcetines + </string> + <string name="edit_jacket_title"> + Modificando la chaqueta + </string> + <string name="edit_skirt_title"> + Modificando la falda + </string> + <string name="edit_gloves_title"> + Modificando los guantes + </string> + <string name="edit_undershirt_title"> + Modificando la camiseta + </string> + <string name="edit_underpants_title"> + Modificando la ropa interior + </string> + <string name="edit_alpha_title"> + Modificando la capa Alfa + </string> + <string name="edit_tattoo_title"> + Modificando los tatuajes + </string> + <string name="shape_desc_text"> + Anatomía: + </string> + <string name="skin_desc_text"> + Piel: + </string> + <string name="hair_desc_text"> + Pelo: + </string> + <string name="eyes_desc_text"> + Ojos: + </string> + <string name="shirt_desc_text"> + Camisa: + </string> + <string name="pants_desc_text"> + Pantalones: + </string> + <string name="shoes_desc_text"> + Zapatos: + </string> + <string name="socks_desc_text"> + Calcetines: + </string> + <string name="jacket_desc_text"> + Chaqueta: + </string> + <string name="skirt_skirt_desc_text"> + Falda: + </string> + <string name="gloves_desc_text"> + Guantes: + </string> + <string name="undershirt_desc_text"> + Camiseta: + </string> + <string name="underpants_desc_text"> + Ropa interior: + </string> + <string name="alpha_desc_text"> + Capa alfa: + </string> + <string name="tattoo_desc_text"> + Tatuaje: + </string> + <text name="edit_wearable_title" value="Modificando la anatomía"/> + <panel label="Camisa" name="wearable_type_panel"> + <text name="description_text" value="Anatomía:"/> + </panel> + <panel name="button_panel"> + <button label="Guardar como" name="save_as_button"/> + <button label="Revertir" name="revert_button"/> + </panel> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_friends.xml b/indra/newview/skins/default/xui/es/panel_friends.xml index ea5c7d1e4f..833b71a038 100644 --- a/indra/newview/skins/default/xui/es/panel_friends.xml +++ b/indra/newview/skins/default/xui/es/panel_friends.xml @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <panel name="friends"> <string name="Multiple"> - Varios amigos... + Varios amigos </string> <scroll_list name="friend_list" tool_tip="Para seleccionar a varios amigos, mantenga pulsado Ctrl o Mays. mientras les va pulsando."> <column name="icon_online_status" tool_tip="Estado de conexión"/> @@ -13,8 +13,8 @@ </scroll_list> <button label="MI/Llamada" name="im_btn" tool_tip="Abrir sesión de mensajes instantáneos"/> <button label="Perfil" name="profile_btn" tool_tip="Mostrar la imagen, los grupos, y otra información"/> - <button label="Teleportar..." name="offer_teleport_btn" tool_tip="Ofrecer a este amigo teleportarle hasta su posición"/> - <button label="Pagar..." name="pay_btn" tool_tip="Dar dólares Linden (L$) a este amigo"/> - <button label="Quitar..." name="remove_btn" tool_tip="Quitar a esta persona de su lista de amigos"/> - <button label="Añadir..." name="add_btn" tool_tip="Ofrecer ser mi amigo a un residente"/> + <button label="Teleporte" name="offer_teleport_btn" tool_tip="Ofrecer a este amigo teleportarle hasta su posición"/> + <button label="Pagar" name="pay_btn" tool_tip="Dar dólares Linden (L$) a este amigo"/> + <button label="Quitar" name="remove_btn" tool_tip="Quitar a esta persona de su lista de amigos"/> + <button label="Añadir" name="add_btn" tool_tip="Ofrecer ser mi amigo a un residente"/> </panel> diff --git a/indra/newview/skins/default/xui/es/panel_group_control_panel.xml b/indra/newview/skins/default/xui/es/panel_group_control_panel.xml new file mode 100644 index 0000000000..c55d69b8a7 --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_group_control_panel.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="panel_im_control_panel"> + <button label="Perfil del grupo" name="group_info_btn"/> + <panel name="panel_call_buttons"> + <button label="Llamar al grupo" name="call_btn"/> + <button label="Colgar" name="end_call_btn"/> + <button label="Abrir los controles de la voz" name="voice_ctrls_btn"/> + </panel> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_group_general.xml b/indra/newview/skins/default/xui/es/panel_group_general.xml index 4fd5685b7d..4f7c7e599e 100644 --- a/indra/newview/skins/default/xui/es/panel_group_general.xml +++ b/indra/newview/skins/default/xui/es/panel_group_general.xml @@ -1,72 +1,37 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <panel label="General" name="general_tab"> - <string name="help_text"> - La pestaña General contiene información global de este grupo, la lista de propietarios y miembros visibles, las preferencias generales del grupo, y las opciones de los miembros. + <panel.string name="help_text"> + La pestaña General tiene información general de este grupo, una lista de sus miembros, las preferencias generales del grupo y las opciones de sus miembros. -Ponga su ratón sobre las opciones para más información. - </string> - <string name="group_info_unchanged"> - La información general del grupo ha cambiado. - </string> - <button label="?" label_selected="?" name="help_button"/> - <line_editor label="Escriba aquí el nombre de su nuevo grupo" name="group_name_editor"/> - <text name="group_name"> - Escriba aquí el nombre de su nuevo grupo - </text> - <text name="prepend_founded_by"> - Creado por - </text> - <text name="founder_name"> - (esperando) - </text> - <text name="group_charter_label"> - Carta del grupo - </text> - <texture_picker label="Emblema del grupo" name="insignia" tool_tip="Pulse para elegir una imagen"/> +Deja el cursor sobre las opciones para ver más ayuda. + </panel.string> + <panel.string name="group_info_unchanged"> + Ha cambiado la información general del grupo + </panel.string> + <panel.string name="incomplete_member_data_str"> + Recuperando los datos de los miembros + </panel.string> <text_editor name="charter"> Carta del grupo </text_editor> - <button label="Entrar (0 L$)" label_selected="Entrar (0 L$)" name="join_button"/> - <button label="Ver en detalle" label_selected="Ver en detalle" name="info_button"/> - <text name="text_owners_and_visible_members"> - Propietarios y Miembros visibles - </text> - <text name="text_owners_are_shown_in_bold"> - (los propietarios aparecen en negrilla) - </text> <name_list name="visible_members"> - <name_list.columns label="Nombre del miembro" name="name" relwidth="0.40"/> + <name_list.columns label="Miembro" name="name" relwidth="0.40"/> <name_list.columns label="Etiqueta" name="title" relwidth="0.25"/> - <name_list.columns label="Última conexión" name="online" relwidth="0.35"/> </name_list> - <text name="text_group_preferences"> - Preferencias del grupo + <text name="active_title_label"> + Mi etiqueta </text> + <combo_box name="active_title" tool_tip="Configura la etiqueta que se verá sobre el nombre de tu avatar cuando tengas activo este grupo."/> + <check_box label="Recibir los avisos del grupo" name="receive_notices" tool_tip="Configura si quieres recibir avisos del grupo. Desmárcalo si este grupo te envía 'spam'."/> + <check_box label="Mostrarlo en mi perfil" name="list_groups_in_profile" tool_tip="Configura si quieres que este grupo se vea en tu perfil"/> <panel name="preferences_container"> - <check_box label="Mostrar en la búsqueda" name="show_in_group_list" tool_tip="Dejar que la gente vea este grupo en los resultados de la búsqueda."/> - <check_box label="Inscripción libre" name="open_enrollement" tool_tip="Definir si se admiten al grupo nuevos miembros sin que sea preciso invitárseles."/> - <check_box label="Cuota de inscripción:" name="check_enrollment_fee" tool_tip="Define si se requiere una cuota para entrar al grupo."/> - <spinner width="60" left_delta="130" name="spin_enrollment_fee" tool_tip="Cuando está marcado 'Cuota de inscripción', los miembros nuevos deben pagar esta cuota para entrar al grupo."/> - <combo_box bottom_delta="-38" width="150" name="group_mature_check" tool_tip="Establece si la información de su grupo es 'mature'."> - <combo_box.item name="select_mature" label="- Elegir Calificación -"/> - <combo_box.item name="mature" label="Contenido 'Mature'"/> - <combo_box.item name="pg" label="Contenido 'PG'"/> + <check_box label="Inscripción libre" name="open_enrollement" tool_tip="Configura si se permite la entrada de nuevos miembros sin ser invitados."/> + <check_box label="Cuota de entrada" name="check_enrollment_fee" tool_tip="Configura si hay que pagar una cuota para entrar al grupo"/> + <spinner label="L$" left_delta="130" name="spin_enrollment_fee" tool_tip="Si la opción Cuota de entrada está marcada, los nuevos miembros han de pagar esta cuota para entrar al grupo." width="60"/> + <combo_box bottom_delta="-38" name="group_mature_check" tool_tip="Establece si la información de su grupo es 'mature'." width="150"> + <combo_box.item label="Contenido 'PG'" name="pg"/> + <combo_box.item label="Contenido 'Mature'" name="mature"/> </combo_box> - <panel name="title_container"> - <text name="active_title_label"> - Mi etiqueta activa - </text> - <combo_box name="active_title" tool_tip="Define la etiqueta que aparecerá sobre el nombre de su avatar cuando tenga activo este grupo."/> - </panel> - <check_box label="Recibir los avisos del grupo" name="receive_notices" tool_tip="Define si quiere recibir avisos de este grupo. Desmarque esto si el grupo le envía spam."/> - <check_box label="Mostrar el grupo en mi perfil" name="list_groups_in_profile" tool_tip="Define si quiere que este grupo aparezca en su perfil."/> + <check_box initial_value="true" label="Mostrar en la búsqueda" name="show_in_group_list" tool_tip="Permite que la gente vea este grupo en los resultados de la búsqueda"/> </panel> - <string name="incomplete_member_data_str"> - Recuperando los datos de los miembros - </string> - <string name="confirm_group_create_str"> - Crear este grupo cuesta 100 L$. -¿Está plena, absoluta, y TOTALMENTE seguro de que quiere gastarse 100 L$ para crear este grupo? -Queda avisado de que si, en un plazo de 48 horas, no entra nadie al grupo, éste será disuelto, y el nombre no se podrá usar en el futuro. - </string> </panel> diff --git a/indra/newview/skins/default/xui/es/panel_group_info_sidetray.xml b/indra/newview/skins/default/xui/es/panel_group_info_sidetray.xml new file mode 100644 index 0000000000..be08a1aaa7 --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_group_info_sidetray.xml @@ -0,0 +1,36 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel label="Información del grupo" name="GroupInfo"> + <panel.string name="default_needs_apply_text"> + Hay cambios sin guardar en la pestaña actual + </panel.string> + <panel.string name="want_apply_text"> + ¿Quieres guardar estos cambios? + </panel.string> + <panel.string name="group_join_btn"> + Entrar ([AMOUNT] L$) + </panel.string> + <panel.string name="group_join_free"> + Gratis + </panel.string> + <text name="group_name" value="(Cargando...)"/> + <line_editor label="Escribe aquí el nombre de tu nuevo grupo" name="group_name_editor"/> + <texture_picker label="" name="insignia" tool_tip="Pulsa para elegir una imagen"/> + <text name="prepend_founded_by"> + Fundador: + </text> + <name_box initial_value="(buscando)" name="founder_name"/> + <text name="join_cost_text"> + Gratis + </text> + <button label="¡ENTRA AHORA!" name="btn_join"/> + <accordion name="groups_accordion"> + <accordion_tab name="group_general_tab" title="General"/> + <accordion_tab name="group_roles_tab" title="Roles"/> + <accordion_tab name="group_notices_tab" title="Avisos"/> + <accordion_tab name="group_land_tab" title="Terreno/Bienes"/> + </accordion> + <panel name="button_row"> + <button label="Crear" label_selected="Grupo nuevo" name="btn_create"/> + <button label="Guardar" label_selected="Guardar" name="btn_apply"/> + </panel> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_group_invite.xml b/indra/newview/skins/default/xui/es/panel_group_invite.xml index f66f0c473a..08993d6ed8 100644 --- a/indra/newview/skins/default/xui/es/panel_group_invite.xml +++ b/indra/newview/skins/default/xui/es/panel_group_invite.xml @@ -1,24 +1,30 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <panel label="Invitar a un miembro" name="invite_panel" width="224"> - <text name="help_text" height="72" bottom_delta="-96" width="214"> + <panel.string name="confirm_invite_owner_str"> + ¿Está seguro de que quiere invitar a un nuevo propietario/s? ¡Esta acción es permanente! + </panel.string> + <panel.string name="loading"> + (cargando...) + </panel.string> + <panel.string name="already_in_group"> + No se invitará a algunos avatares porque ya están en el grupo. + </panel.string> + <text bottom_delta="-96" height="72" name="help_text" width="214"> Puede seleccionar a varios residentes para invitarles a su grupo. Para empezar, pulse 'Abrir el selector de residentes'. </text> <button bottom_delta="-10" label="Abrir el selector de residentes" name="add_button" tool_tip=""/> - <name_list height="156" bottom_delta="-160" name="invitee_list" tool_tip="Para seleccionar a varios residentes, mantenga pulsada la tecla Ctrl y vaya pulsando sus nombres."/> - <button left_delta="-7" width="214" label="Eliminar de la lista a los seleccionados" name="remove_button" tool_tip="Elimina los residentes seleccionados de la lista de invitaciones."/> + <name_list bottom_delta="-160" height="156" name="invitee_list" tool_tip="Apretando la tecla Ctrl, pulsa en los nombres de los residentes para elegir a varios"/> + <button label="Eliminar de la lista a los seleccionados" left_delta="-7" name="remove_button" tool_tip="Quitar a los residentes seleccionados de la lista de invitaciones" width="214"/> <text name="role_text"> Elegir qué rol asignarles: </text> - <combo_box name="role_name" tool_tip="Elige de la lista de roles cuál asignar a los miembros."/> + <combo_box name="role_name" tool_tip="Elige el rol de entre la lista de aquellos que estás autorizado a asignar"/> <button label="Enviar las invitaciones" name="ok_button"/> <button label="Cancelar" name="cancel_button"/> - <string name="confirm_invite_owner_str"> - ¿Está seguro de que quiere invitar a un nuevo propietario/s? ¡Esta acción es permanente! - </string> - <string name="loading"> - (cargando...) + <string name="GroupInvitation"> + Invitar al grupo </string> </panel> diff --git a/indra/newview/skins/default/xui/es/panel_group_land_money.xml b/indra/newview/skins/default/xui/es/panel_group_land_money.xml index bccc114624..2ad290b49f 100644 --- a/indra/newview/skins/default/xui/es/panel_group_land_money.xml +++ b/indra/newview/skins/default/xui/es/panel_group_land_money.xml @@ -1,14 +1,14 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <panel label="Terreno y L$" name="land_money_tab"> <string name="help_text"> - Se listan las parcelas propiedad del grupo, detallando las contribuciones. Aparece una advertencia si el Terreno total en uso es menor que o igual a la Contribución total. Las pestañas 'Planificación', 'Detalles' y 'Ventas' aportan información sobre las finanzas del grupo + Aparece una advertencia si el Terreno total en uso es menor que o igual a la Contribución total. </string> <button label="?" name="help_button"/> <string name="cant_view_group_land_text"> - No tiene permiso para ver qué terreno posee el grupo. + No tienes permiso para ver el terreno propiedad del grupo </string> <string name="cant_view_group_accounting_text"> - No tiene permiso para ver la información de la cuenta del grupo. + No tienes permiso para ver la información de la cuenta del grupo. </string> <string name="loading_txt"> Cargando... @@ -23,7 +23,7 @@ <column label="Superficie" name="area" width="81"/> <column label="" name="hidden"/> </scroll_list> - <button label="Mostrar en el mapa" label_selected="Mostrar en el mapa" name="map_button" left="282" width="130"/> + <button label="Mapa" label_selected="Mapa" left="282" name="map_button" width="130"/> <text name="total_contributed_land_label"> Contribución total: </text> @@ -43,43 +43,42 @@ [AREA] m² </text> <text name="your_contribution_label"> - Su contribución: + Tu contribución: </text> <string name="land_contrib_error"> - No se ha podido defininir su contribución de terreno. + No se ha podido definir tu contribución de terreno </string> <text name="your_contribution_units"> - ( m² ) + m² </text> <text name="your_contribution_max_value"> ([AMOUNT] máx.) </text> <text name="group_over_limit_text"> - Los miembros del grupo deben contribuir con más créditos de terreno -para mantener el terreno en uso. + Se necesitan más créditos de terreno para mantener el terreno en uso </text> <text name="group_money_heading"> L$ del grupo </text> <tab_container name="group_money_tab_container"> - <panel label="Planificación" name="group_money_planning_tab"> + <panel label="RESUMEN" name="group_money_planning_tab"> <text_editor name="group_money_planning_text"> - Calculando... + Cargando... </text_editor> </panel> - <panel label="Detalles" name="group_money_details_tab"> + <panel label="DETALLES" name="group_money_details_tab"> <text_editor name="group_money_details_text"> - Calculando... + Cargando... </text_editor> - <button label="< Antes" label_selected="< Antes" name="earlier_details_button" tool_tip="Ir hacia atrás en el tiempo"/> - <button label="Después >" label_selected="Después >" name="later_details_button" tool_tip="Ir hacia adelante en el tiempo"/> + <button label="< Antes" label_selected="< Antes" name="earlier_details_button" tool_tip="Anterior"/> + <button label="Después >" label_selected="Después >" name="later_details_button" tool_tip="Siguiente"/> </panel> - <panel label="Ventas" name="group_money_sales_tab"> + <panel label="VENTAS" name="group_money_sales_tab"> <text_editor name="group_money_sales_text"> - Calculando... + Cargando... </text_editor> - <button label="< Antes" label_selected="< Antes" name="earlier_sales_button" tool_tip="Ir hacia atrás en el tiempo"/> - <button label="Después >" label_selected="Después >" name="later_sales_button" tool_tip="Ir hacia adelante en el tiempo"/> + <button label="< Antes" label_selected="< Antes" name="earlier_sales_button" tool_tip="Anterior"/> + <button label="Después >" label_selected="Después >" name="later_sales_button" tool_tip="Siguiente"/> </panel> </tab_container> </panel> diff --git a/indra/newview/skins/default/xui/es/panel_group_list_item.xml b/indra/newview/skins/default/xui/es/panel_group_list_item.xml new file mode 100644 index 0000000000..4b6373f6ce --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_group_list_item.xml @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="group_list_item"> + <text name="group_name" value="Desconocido"/> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_group_notices.xml b/indra/newview/skins/default/xui/es/panel_group_notices.xml index c6788b3a65..02365fc698 100644 --- a/indra/newview/skins/default/xui/es/panel_group_notices.xml +++ b/indra/newview/skins/default/xui/es/panel_group_notices.xml @@ -1,35 +1,29 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <panel label="Avisos" name="notices_tab"> - <text name="help_text"> + <panel.string name="help_text"> Los avisos son una forma rápida de comunicación dentro de un grupo, difundiendo un mensaje y, si se quiere, añadiéndole un ítem. Los avisos sólo los reciben los miembros del grupo cuyo rol tiene adjudicada tal habilidad. Puede desactivar los avisos en la pestaña General. - </text> - <text name="no_notices_text"> - No hay avisos pasados. - </text> - <button label="?" label_selected="?" name="help_button"/> - <text name="lbl"> - Archivo de avisos del grupo - </text> + </panel.string> + <panel.string name="no_notices_text"> + No hay avisos pasados + </panel.string> <text name="lbl2"> - Los avisos se mantienen durante 14 días. Las listas de avisos tienen un límite de 200 avisos por día. + Los avisos se mantienen durante 14 días. +El máximo es de 200 por día y grupo. </text> <scroll_list name="notice_list"> - <column label="Asunto" name="subject"/> - <column label="De" name="from"/> - <column label="Fecha" name="date"/> + <scroll_list.columns label="Asunto" name="subject"/> + <scroll_list.columns label="De" name="from"/> + <scroll_list.columns label="Fecha" name="date"/> </scroll_list> <text name="notice_list_none_found"> - No se han encontrado. + No se han encontrado </text> - <button label="Crear un aviso nuevo" label_selected="Crear un aviso nuevo" name="create_new_notice"/> - <button label="Actualizar" label_selected="Actualizar la lista" name="refresh_notices"/> + <button label="Crear un aviso nuevo" label_selected="Crear un aviso nuevo" name="create_new_notice" tool_tip="Crear un aviso nuevo"/> + <button label="Actualizar" label_selected="Actualizar la lista" name="refresh_notices" tool_tip="Actualizar la lista de avisos"/> <panel label="Crear un aviso nuevo" name="panel_create_new_notice"> <text name="lbl"> Crear un aviso </text> - <text name="lbl2"> - Puede añadir un ítem al aviso arrastrándolo desde su inventario a este panel. Los ítems anexados deben ser copiables y transferibles, y no se puede enviar una carpeta. - </text> <text name="lbl3"> Asunto: </text> @@ -39,16 +33,19 @@ <text name="lbl5"> Anexar: </text> - <button label="Remover lo anexado" label_selected="Remover lo anexado" name="remove_attachment"/> + <text name="string"> + Arrastra y suelta aquí un ítem para adjuntarlo: + </text> + <button label="Quitar" label_selected="Remover lo anexado" name="remove_attachment"/> <button label="Enviar" label_selected="Enviar" name="send_notice"/> - <panel name="drop_target" tool_tip="Para enviar un ítem con el aviso, arrástrelo desde su inventario hasta el cuadro del mensaje. Para poder enviar ese objeto con el aviso, usted debe tener permiso para copiarlo y transferirlo."/> + <group_drop_target name="drop_target" tool_tip="Para enviar un ítem con el aviso, arrástralo desde tu inventario hasta este cajetín. Para poder adjuntarlo, debes tener permiso para copiarlo y transferirlo."/> </panel> <panel label="Ver avisos pasados" name="panel_view_past_notice"> <text name="lbl"> Avisos archivados </text> <text name="lbl2"> - Pulse el botón 'Crear un aviso nuevo' para enviar uno nuevo. + Para enviar un aviso nuevo, pulsa el botón + </text> <text name="lbl3"> Asunto: @@ -56,6 +53,6 @@ <text name="lbl4"> Mensaje: </text> - <button label="Abrir lo anexado" label_selected="Abrir lo anexado" name="open_attachment"/> + <button label="Abrir el adjunto" label_selected="Abrir lo anexado" name="open_attachment"/> </panel> </panel> diff --git a/indra/newview/skins/default/xui/es/panel_group_notify.xml b/indra/newview/skins/default/xui/es/panel_group_notify.xml new file mode 100644 index 0000000000..7bdacbd1e0 --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_group_notify.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel label="instant_message" name="panel_group_notify"> + <panel label="header" name="header"> + <text name="title" value="Nombre del emisor / Nombre del grupo"/> + </panel> + <text name="attachment" value="Adjunto"/> + <button label="OK" name="btn_ok"/> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_group_roles.xml b/indra/newview/skins/default/xui/es/panel_group_roles.xml index 2739a3da5e..29d96d8d9e 100644 --- a/indra/newview/skins/default/xui/es/panel_group_roles.xml +++ b/indra/newview/skins/default/xui/es/panel_group_roles.xml @@ -1,158 +1,119 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <panel label="Miembros y Roles" name="roles_tab"> - <string name="default_needs_apply_text"> - En esta pestaña hay cambios sin aplicar. - </string> - <string name="want_apply_text"> - ¿Quiere aplicar estos cambios? - </string> - <button label="?" name="help_button"/> - <panel name="members_header"> - <text name="static"> - Miembros y Roles - </text> - <text name="static2"> - Los miembros del grupo tienen asignados roles con distintas capacidades. -Estas configuraciones son fácilmente personalizables, para facilitar una -mayor flexibilidad y organización. - </text> - </panel> - <panel name="roles_header"> - <text name="static"> - Roles - </text> - <text name="role_properties_modifiable"> - Elija un rol de los de abajo. Puede modificar su nombre, su -descripción, y la etiqueta de los miembros. - </text> - <text name="role_properties_not_modifiable"> - Elija un rol de los de abajo para ver sus propiedades, miembros, y qué -capacidades tiene asignadas. - </text> - <text bottom_delta="-28" name="role_actions_modifiable"> - También puede asignar capacidades al rol. - </text> - <text name="role_actions_not_modifiable"> - Puede ver, pero no modificar, las capacidades asignadas. - </text> - </panel> - <panel name="actions_header"> - <text name="static"> - Capacidades - </text> - <text name="static2"> - Puede ver una descripción de la capacidad, y qué miembros y roles pueden -realizarla. - </text> - </panel> + <panel.string name="default_needs_apply_text"> + En esta pestaña hay cambios sin guardar + </panel.string> + <panel.string name="want_apply_text"> + ¿Quieres guardar estos cambios? + </panel.string> <tab_container height="164" name="roles_tab_container"> - <panel height="148" label="Miembros" name="members_sub_tab" tool_tip="Miembros"> - <line_editor bottom="127" name="search_text"/> - <button label="Buscar" name="search_button" width="75"/> - <button label="Verlos todos" name="show_all_button" left_delta="80"/> - <name_list name="member_list" bottom_delta="-105" height="104" > - <column label="Nombre del miembro" name="name"/> - <column label="Cuotas donadas" name="donated"/> - <column label="Última conexión" name="online"/> - </name_list> - <button label="Invitar a un nuevo miembro..." name="member_invite" width="175"/> - <button label="Expulsar del grupo" name="member_eject"/> - <string name="help_text"> + <panel height="148" label="MIEMBROS" name="members_sub_tab" tool_tip="Miembros"> + <panel.string name="help_text"> Puede añadir o quitar los roles asignados a los miembros. Seleccione varios nombres manteniendo pulsada la tecla Ctrl y pulsando en cada uno de ellos. - </string> + </panel.string> + <filter_editor label="Filtrar los miembros" name="filter_input"/> + <name_list bottom_delta="-105" height="104" name="member_list"> + <name_list.columns label="Miembro" name="name"/> + <name_list.columns label="Donaciones" name="donated"/> + <name_list.columns label="Estatus" name="online"/> + </name_list> + <button label="Invitar" name="member_invite" width="175"/> + <button label="Expulsar" name="member_eject"/> </panel> - <panel height="148" label="Roles" name="roles_sub_tab"> - <line_editor bottom="127" name="search_text"/> - <button label="Buscar" name="search_button" width="75"/> - <button label="Verlos todos" name="show_all_button" left_delta="80"/> - <scroll_list name="role_list" bottom_delta="-104" height="104"> - <column label="Nombre del rol" name="name"/> - <column label="Etiqueta" name="title"/> - <column label="Miembros" name="members"/> + <panel height="148" label="ROLES" name="roles_sub_tab"> + <panel.string name="help_text"> + Los roles tienen una etiqueta propia y unas capacidades que se +permiten ejercer a sus miembros. Los miembros pueden +tener más de un rol. Un grupo puede tener hasta 10 roles, +incluyendo el de Todos y el de Propietarios. + </panel.string> + <panel.string name="cant_delete_role"> + Los roles de 'Todos' y 'Propietarios' son especiales, y no pueden eliminarse. + </panel.string> + <panel.string name="power_folder_icon"> + Inv_FolderClosed + </panel.string> + <filter_editor label="Filtrar los roles" name="filter_input"/> + <scroll_list bottom_delta="-104" height="104" name="role_list"> + <scroll_list.columns label="Rol" name="name"/> + <scroll_list.columns label="Etiqueta" name="title"/> + <scroll_list.columns label="#" name="members"/> </scroll_list> - <button label="Crear un rol nuevo..." name="role_create"/> + <button label="Añadir un rol" name="role_create"/> <button label="Eliminar el rol" name="role_delete"/> - <string name="help_text"> - Los roles tienen una etiqueta y una serie de capacidades permitidas que los miembros pueden desarrollar. Los miembros pueden tener más de un rol. Un grupo puede tener hasta 10 roles, incluyendo el de Todos y el de Propietarios. - </string> - <string name="cant_delete_role"> - Los roles de 'Todos' y 'Propietarios' son especiales, y no pueden eliminarse. - </string> </panel> - <panel height="148" label="Capacidades" name="actions_sub_tab"> - <line_editor bottom="127" name="search_text"/> - <button label="Buscar" name="search_button" width="75"/> - <button label="Verlos todos" name="show_all_button" left_delta="80"/> - <scroll_list bottom_delta="-120" height="118" name="action_list" tool_tip="Elija una capacidad para verla más en detalle."> - <column label="" name="icon"/> - <column label="" name="action"/> - </scroll_list> - <string name="help_text"> + <panel height="148" label="CAPACIDADES" name="actions_sub_tab" tool_tip="Puedes ver una descripción de la capacidad y qué miembros y roles la tienen."> + <panel.string name="help_text"> Las capacidades permiten a los miembros que tienen ese rol el hacer tareas específicas dentro de este grupo. Hay una gran variedad de capacidades. - </string> + </panel.string> + <filter_editor label="Filtrar las capacidades" name="filter_input"/> + <scroll_list bottom_delta="-120" height="118" name="action_list" tool_tip="Elige una capacidad para verla más en detalle"> + <scroll_list.columns label="" name="icon"/> + <scroll_list.columns label="" name="action"/> + </scroll_list> </panel> </tab_container> <panel name="members_footer"> <text name="static"> - Roles asignados + Miembros asignados </text> + <scroll_list name="member_assigned_roles"> + <scroll_list.columns label="" name="checkbox"/> + <scroll_list.columns label="" name="role"/> + </scroll_list> <text name="static2"> Capacidades permitidas </text> - <scroll_list name="member_assigned_roles"> - <column label="" name="checkbox"/> - <column label="" name="role"/> - </scroll_list> - <scroll_list name="member_allowed_actions" tool_tip="Para más detalles de cada capacidad permitida, vea la pestaña Capacidades."> - <column label="" name="icon"/> - <column label="" name="action"/> + <scroll_list name="member_allowed_actions" tool_tip="Para más detalles de cada capacidad, ver la pestaña Capacidades"> + <scroll_list.columns label="" name="icon"/> + <scroll_list.columns label="" name="action"/> </scroll_list> </panel> <panel name="roles_footer"> <text name="static"> - Nombre - </text> - <text name="static2"> - Descripción + Nombre del rol </text> <line_editor name="role_name"> Empleados </line_editor> <text name="static3"> - Etiqueta + Etiqueta del rol </text> <line_editor name="role_title"> (esperando) </line_editor> + <text name="static2"> + Descripción + </text> <text_editor name="role_description"> (esperando) </text_editor> <text name="static4"> - Miembros asignados + Roles asignados </text> + <check_box label="Mostrar los miembros" name="role_visible_in_list" tool_tip="Establece si los miembros de este rol pueden ser vistos en la pestaña General por personas ajenas al grupo."/> <text name="static5" tool_tip="Una lista de las capacidades que puede desarrollar el rol seleccionado actualmente."> Capacidades asignadas </text> - <check_box label="Los miembros son visibles." name="role_visible_in_list" tool_tip="Establece si los miembros de este rol pueden ser vistos en la pestaña General por personas ajenas al grupo."/> - <scroll_list name="role_allowed_actions" tool_tip="Para más detalles de cada capacidad permitida, vea la pestaña Capacidades."> - <column label="" name="icon"/> - <column label="" name="checkbox"/> - <column label="" name="action"/> + <scroll_list name="role_allowed_actions" tool_tip="Para más detalles de cada capacidad, ver la pestaña Capacidades"> + <scroll_list.columns label="" name="icon"/> + <scroll_list.columns label="" name="checkbox"/> + <scroll_list.columns label="" name="action"/> </scroll_list> </panel> <panel name="actions_footer"> <text name="static"> - Descripción + Descripción de la capacidad </text> <text_editor name="action_description"> Esta capacidad es la de 'Expulsar miembros de este grupo'. Sólo un propietario puede expulsar a otro. </text_editor> <text name="static2"> - Roles con la capacidad + Roles con esta capacidad </text> <text name="static3"> - Miembros con la capacidad + Miembros con esta capacidad </text> </panel> </panel> diff --git a/indra/newview/skins/default/xui/es/panel_im_control_panel.xml b/indra/newview/skins/default/xui/es/panel_im_control_panel.xml new file mode 100644 index 0000000000..5f69c50b73 --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_im_control_panel.xml @@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="panel_im_control_panel"> + <text name="avatar_name" value="Desconocido"/> + <button label="Perfil" name="view_profile_btn"/> + <button label="Añadir como amigo" name="add_friend_btn"/> + <button label="Teleportarse" name="teleport_btn"/> + <button label="Compartir" name="share_btn"/> + <panel name="panel_call_buttons"> + <button label="Llamada" name="call_btn"/> + <button label="Colgar" name="end_call_btn"/> + <button label="Controles de Voz" name="voice_ctrls_btn"/> + </panel> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_landmark_info.xml b/indra/newview/skins/default/xui/es/panel_landmark_info.xml new file mode 100644 index 0000000000..c4d9d4a2b3 --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_landmark_info.xml @@ -0,0 +1,37 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="landmark_info"> + <string name="title_create_landmark" value="Crear un hito"/> + <string name="title_edit_landmark" value="Editar el hito"/> + <string name="title_landmark" value="Hito"/> + <string name="not_available" value="(No disp.)"/> + <string name="unknown" value="(desconocidas)"/> + <string name="public" value="(público)"/> + <string name="server_update_text"> + Los datos de este lugar no están disponibles sin una actualización del servidor. + </string> + <string name="server_error_text"> + Los datos de este lugar no están disponibles por el momento. Por favor, prueba más tarde. + </string> + <string name="server_forbidden_text"> + Por restricciones en el acceso, los datos de esta localización no están disponibles. Por favor, revisa tus permisos con el propietario de la parcela. + </string> + <string name="acquired_date"> + [wkday,datetime,local][day,datetime,local] [mth,datetime,local] [year,datetime,local][hour,datetime,local]:[min,datetime,local]:[second,datetime,local] + </string> + <text name="title" value="Añadir el perfil"/> + <scroll_container name="place_scroll"> + <panel name="scrolling_panel"> + <text name="maturity_value" value="desconocido"/> + <panel name="landmark_info_panel"> + <text name="owner_label" value="Propietario:"/> + <text name="creator_label" value="Creador:"/> + <text name="created_label" value="Creado:"/> + </panel> + <panel name="landmark_edit_panel"> + <text name="title_label" value="Título:"/> + <text name="notes_label" value="Mis notas:"/> + <text name="folder_label" value="Localización del hito:"/> + </panel> + </panel> + </scroll_container> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_landmarks.xml b/indra/newview/skins/default/xui/es/panel_landmarks.xml new file mode 100644 index 0000000000..8c2aa96b3b --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_landmarks.xml @@ -0,0 +1,14 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="Landmarks"> + <accordion name="landmarks_accordion"> + <accordion_tab name="tab_favorites" title="Barra de favoritos"/> + <accordion_tab name="tab_landmarks" title="Hitos"/> + <accordion_tab name="tab_inventory" title="Mi Inventario"/> + <accordion_tab name="tab_library" title="Biblioteca"/> + </accordion> + <panel name="bottom_panel"> + <button name="options_gear_btn" tool_tip="Ver más opciones"/> + <button name="add_btn" tool_tip="Añadir un nuevo hito"/> + <dnd_button name="trash_btn" tool_tip="Quitar el hito seleccionado"/> + </panel> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_login.xml b/indra/newview/skins/default/xui/es/panel_login.xml index 52c3855d6a..5485575aec 100644 --- a/indra/newview/skins/default/xui/es/panel_login.xml +++ b/indra/newview/skins/default/xui/es/panel_login.xml @@ -6,34 +6,29 @@ <panel.string name="forgot_password_url"> http://secondlife.com/account/request.php?lang=es </panel.string> -<panel name="login_widgets"> - <text name="first_name_text"> - Nombre: - </text> - <text name="last_name_text"> - Apellido: - </text> - <text name="password_text"> - Contraseña: - </text> - <text name="start_location_text"> - Posición inicial: - </text> - <combo_box name="start_location_combo"> - <combo_box.item name="MyHome" label="Mi Base"/> - <combo_box.item name="MyLastLocation" label="Mi última posición"/> - <combo_box.item name="Typeregionname" label="<Escriba el nombre de la Región>"/> - </combo_box> - <check_box label="Recordar la contraseña" name="remember_check"/> - <button label="Iniciar sesión" label_selected="Iniciar sesión" name="connect_btn"/> - <text name="create_new_account_text"> - Regístrese para obtener una cuenta - </text> - <text name="forgot_password_text"> - ¿Olvidó su nombre o su contraseña? - </text> - <text name="channel_text"> - [VERSION] - </text> -</panel> + <layout_stack name="login_widgets"> + <layout_panel name="login"> + <text name="first_name_text"> + Nombre: + </text> + <line_editor label="Nombre" name="first_name_edit" tool_tip="[SECOND_LIFE] First Name"/> + <line_editor label="Apellido" name="last_name_edit" tool_tip="[SECOND_LIFE] Last Name"/> + <check_box label="Recordar" name="remember_check"/> + <text name="start_location_text"> + Empezar en: + </text> + <combo_box name="start_location_combo"> + <combo_box.item label="Mi Base" name="MyHome"/> + </combo_box> + <button label="Iniciar sesión" name="connect_btn"/> + </layout_panel> + <layout_panel name="links"> + <text name="create_new_account_text"> + Registrarse + </text> + <text name="login_help"> + ¿Necesitas ayuda para conectarte? + </text> + </layout_panel> + </layout_stack> </panel> diff --git a/indra/newview/skins/default/xui/es/panel_main_inventory.xml b/indra/newview/skins/default/xui/es/panel_main_inventory.xml new file mode 100644 index 0000000000..8656098467 --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_main_inventory.xml @@ -0,0 +1,64 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel label="Cosas" name="main inventory panel"> + <panel.string name="Title"> + Cosas + </panel.string> + <filter_editor label="Filtrar" name="inventory search editor"/> + <tab_container name="inventory filter tabs"> + <inventory_panel label="Todos los ítems" name="All Items"/> + <inventory_panel label="Ítems recientes" name="Recent Items"/> + </tab_container> + <panel name="bottom_panel"> + <button name="options_gear_btn" tool_tip="Mostrar más opciones"/> + <button name="add_btn" tool_tip="Añadir un ítem nuevo"/> + <dnd_button name="trash_btn" tool_tip="Quitar el ítem seleccionado"/> + </panel> + <menu_bar name="Inventory Menu"> + <menu label="Archivo" name="File"> + <menu_item_call label="Abrir" name="Open"/> + <menu label="Subir" name="upload"> + <menu_item_call label="Imagen ([COST] L$)..." name="Upload Image"/> + <menu_item_call label="Sonido ([COST] L$)..." name="Upload Sound"/> + <menu_item_call label="Animación ([COST] L$)..." name="Upload Animation"/> + <menu_item_call label="Masivo ([COST] L$ por archivo)..." name="Bulk Upload"/> + </menu> + <menu_item_call label="Ventana nueva" name="New Window"/> + <menu_item_call label="Ver los filtros" name="Show Filters"/> + <menu_item_call label="Restablecer los filtros" name="Reset Current"/> + <menu_item_call label="Cerrar todas las carpetas" name="Close All Folders"/> + <menu_item_call label="Vaciar la Papelera" name="Empty Trash"/> + <menu_item_call label="Vaciar Objetos Perdidos" name="Empty Lost And Found"/> + </menu> + <menu label="Crear" name="Create"> + <menu_item_call label="Carpeta nueva" name="New Folder"/> + <menu_item_call label="Script nuevo" name="New Script"/> + <menu_item_call label="Nota nueva" name="New Note"/> + <menu_item_call label="Gesto nuevo" name="New Gesture"/> + <menu label="Ropas nuevas" name="New Clothes"> + <menu_item_call label="Camisa nueva" name="New Shirt"/> + <menu_item_call label="Pantalón nuevo" name="New Pants"/> + <menu_item_call label="Zapatos nuevos" name="New Shoes"/> + <menu_item_call label="Calcetines nuevos" name="New Socks"/> + <menu_item_call label="Chaqueta nueva" name="New Jacket"/> + <menu_item_call label="Falda nueva" name="New Skirt"/> + <menu_item_call label="Guantes nuevos" name="New Gloves"/> + <menu_item_call label="Camiseta nueva" name="New Undershirt"/> + <menu_item_call label="Ropa interior nueva" name="New Underpants"/> + <menu_item_call label="Nueva Alfa" name="New Alpha"/> + <menu_item_call label="Tatuaje nuevo" name="New Tattoo"/> + </menu> + <menu label="Nuevas partes del cuerpo" name="New Body Parts"> + <menu_item_call label="Forma nueva" name="New Shape"/> + <menu_item_call label="Piel nueva" name="New Skin"/> + <menu_item_call label="Pelo nuevo" name="New Hair"/> + <menu_item_call label="Ojos nuevos" name="New Eyes"/> + </menu> + </menu> + <menu label="Ordenar" name="Sort"> + <menu_item_check label="Alfabéticamente" name="By Name"/> + <menu_item_check label="Cronológicamente" name="By Date"/> + <menu_item_check label="Las carpetas siempre alfabéticamente" name="Folders Always By Name"/> + <menu_item_check label="Las carpetas del sistema, arriba" name="System Folders To Top"/> + </menu> + </menu_bar> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_me.xml b/indra/newview/skins/default/xui/es/panel_me.xml new file mode 100644 index 0000000000..fe5c91bafe --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_me.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel label="Mi perfil" name="panel_me"> + <tab_container name="tabs"> + <panel label="PERFIL" name="panel_profile"/> + <panel label="Destacados" name="panel_picks"/> + </tab_container> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_media_settings_general.xml b/indra/newview/skins/default/xui/es/panel_media_settings_general.xml new file mode 100644 index 0000000000..3cf10e0e2c --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_media_settings_general.xml @@ -0,0 +1,32 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel label="General" name="Media Settings General"> + <text name="home_label"> + Web: + </text> + <text name="home_fails_whitelist_label"> + (La Lista Blanca especificada no aprueba esta página) + </text> + <line_editor name="home_url" tool_tip="Página inicial para el origen de este media"/> + <text name="preview_label"> + Vista previa + </text> + <text name="current_url_label"> + Página actual: + </text> + <text name="current_url" tool_tip="La página actual para el origen de este media" value=""/> + <button label="Definir" name="current_url_reset_btn"/> + <check_box initial_value="false" label="Media en bucle" name="auto_loop"/> + <check_box initial_value="false" label="A la primera pulsación" name="first_click_interact"/> + <check_box initial_value="false" label="Zoom automático" name="auto_zoom"/> + <check_box initial_value="false" label="Ejecutar automáticamente los media" name="auto_play"/> + <text name="media_setting_note"> + Nota: los residentes pueden elegir una configuración distinta de ésta + </text> + <check_box initial_value="false" label="Ajustar automáticamente los media en la cara del objeto" name="auto_scale"/> + <text name="size_label"> + Tamaño: + </text> + <text name="X_label"> + X + </text> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_media_settings_permissions.xml b/indra/newview/skins/default/xui/es/panel_media_settings_permissions.xml new file mode 100644 index 0000000000..3e625f56fe --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_media_settings_permissions.xml @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel label="Personalizar" name="Media settings for controls"> + <text name="controls_label"> + Controles: + </text> + <combo_box name="controls"> + <combo_item name="Standard"> + Estándar + </combo_item> + <combo_item name="Mini"> + Mini + </combo_item> + </combo_box> + <check_box initial_value="false" label="Permitir la navegación e interactividad" name="perms_owner_interact"/> + <check_box initial_value="false" label="Mostrar la barra de control" name="perms_owner_control"/> + <check_box initial_value="false" label="Permitir la navegación e interactividad" name="perms_group_interact"/> + <check_box initial_value="false" label="Mostrar la barra de control" name="perms_group_control"/> + <check_box initial_value="false" label="Permitir la navegación e interactividad" name="perms_anyone_interact"/> + <check_box initial_value="false" label="Mostrar la barra de control" name="perms_anyone_control"/> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_media_settings_security.xml b/indra/newview/skins/default/xui/es/panel_media_settings_security.xml new file mode 100644 index 0000000000..f4debc88fc --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_media_settings_security.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel label="Seguridad" name="Media Settings Security"> + <check_box initial_value="false" label="Permitir el acceso sólo a estas URL (según prefijo)" name="whitelist_enable"/> + <text name="home_url_fails_some_items_in_whitelist"> + Están marcadas las entradas que la página web no admite: + </text> + <button label="Añadir" name="whitelist_add"/> + <button label="Borrar" name="whitelist_del"/> + <text name="home_url_fails_whitelist"> + Atención: la página web especificada en la pestaña General no se admite en esta Lista Blanca. Se ha desactivado hasta que se añada una entrada correcta. + </text> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_my_profile.xml b/indra/newview/skins/default/xui/es/panel_my_profile.xml new file mode 100644 index 0000000000..41623e8acb --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_my_profile.xml @@ -0,0 +1,37 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel label="Perfil" name="panel_profile"> + <string name="no_partner_text" value="Ninguno/a"/> + <string name="RegisterDateFormat"> + [REG_DATE] ([AGE]) + </string> + <scroll_container name="profile_scroll"> + <panel name="scroll_content_panel"> + <panel name="second_life_image_panel"> + <icon label="" name="2nd_life_edit_icon" tool_tip="Pulsa el botón Editar el perfil para cambiar la imagen"/> + </panel> + <panel name="first_life_image_panel"> + <icon label="" name="real_world_edit_icon" tool_tip="Pulsa el botón Editar el perfil para cambiar la imagen"/> + <text name="title_rw_descr_text" value="Mundo real:"/> + </panel> + <text name="me_homepage_text"> + Página web: + </text> + <text name="title_member_text" value="Miembro desde:"/> + <text name="title_acc_status_text" value="Estado de la cuenta:"/> + <text name="acc_status_text" value="Residente. No ha aportado información de pago."/> + <text name="title_partner_text" value="Compañero/a:"/> + <text name="title_groups_text" value="Grupos:"/> + </panel> + </scroll_container> + <panel name="profile_buttons_panel"> + <button label="Añadir como amigo" name="add_friend"/> + <button label="MI" name="im"/> + <button label="Llamada" name="call"/> + <button label="Mapa" name="show_on_map_btn"/> + <button label="Teleporte" name="teleport"/> + </panel> + <panel name="profile_me_buttons_panel"> + <button label="Editar el perfil" name="edit_profile_btn" tool_tip="Edita tu información personal"/> + <button label="Editar la apariencia" name="edit_appearance_btn" tool_tip="Crea o edita tu apariencia: físico, ropas, etc."/> + </panel> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_navigation_bar.xml b/indra/newview/skins/default/xui/es/panel_navigation_bar.xml new file mode 100644 index 0000000000..8e595096d9 --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_navigation_bar.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="navigation_bar"> + <panel name="navigation_panel"> + <button name="back_btn" tool_tip="Volver a lo localización anterior"/> + <button name="forward_btn" tool_tip="Ir una localización adelante"/> + <button name="home_btn" tool_tip="Teleportar a mi Base"/> + <location_input label="Localización" name="location_combo"/> + <search_combo_box label="Buscar" name="search_combo_box" tool_tip="Buscar"> + <combo_editor label="Buscar en [SECOND_LIFE]" name="search_combo_editor"/> + </search_combo_box> + </panel> + <favorites_bar name="favorite"> + <chevron_button name=">>" tool_tip="Ver más de Mis favoritos"/> + </favorites_bar> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_nearby_chat.xml b/indra/newview/skins/default/xui/es/panel_nearby_chat.xml new file mode 100644 index 0000000000..986c109c41 --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_nearby_chat.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<!-- All our XML is utf-8 encoded. --> +<panel name="nearby_chat"> + <panel name="chat_caption"> + <text name="sender_name"> + CHAT + </text> + </panel> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_nearby_chat_bar.xml b/indra/newview/skins/default/xui/es/panel_nearby_chat_bar.xml new file mode 100644 index 0000000000..1df45108ab --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_nearby_chat_bar.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="chat_bar"> + <string name="min_width"> + 192 + </string> + <string name="max_width"> + 320 + </string> + <line_editor label="Pulsa aquí para chatear." name="chat_box" tool_tip="Pulsa Enter para decirlo o Ctrl+Enter para gritarlo"/> + <button name="show_nearby_chat" tool_tip="Muestra o esconde el registro del chat"/> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_notes.xml b/indra/newview/skins/default/xui/es/panel_notes.xml new file mode 100644 index 0000000000..26d5a044c3 --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_notes.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel label="Notas y Privacidad" name="panel_notes"> + <layout_stack name="layout"> + <panel name="notes_stack"> + <scroll_container name="profile_scroll"> + <panel name="profile_scroll_panel"> + <text name="status_message" value="Mis notas privadas:"/> + <text name="status_message2" value="Permitir que esta persona:"/> + <check_box label="Vea si estoy conectado" name="status_check"/> + <check_box label="Me vea en el mapa" name="map_check"/> + <check_box label="Edite, borre o coja mis objetos" name="objects_check"/> + </panel> + </scroll_container> + </panel> + <panel name="notes_buttons_panel"> + <button label="Añadir" name="add_friend" tool_tip="Ofrecer amistad al residente"/> + <button label="MI" name="im" tool_tip="Abrir un mensaje instantáneo"/> + <button label="Llamada" name="call" tool_tip="Llamar a este residente"/> + <button label="Mapa" name="show_on_map_btn" tool_tip="Ver al residente en el mapa"/> + <button label="Teleportar" name="teleport" tool_tip="Ofrecer teleporte"/> + </panel> + </layout_stack> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_outfits_inventory.xml b/indra/newview/skins/default/xui/es/panel_outfits_inventory.xml new file mode 100644 index 0000000000..7d966bba37 --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_outfits_inventory.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="Outfits"> + <accordion name="outfits_accordion"> + <accordion_tab name="tab_cof" title="Vestuario actual"/> + <accordion_tab name="tab_outfits" title="Mis vestuarios"/> + </accordion> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_outfits_inventory_gear_default.xml b/indra/newview/skins/default/xui/es/panel_outfits_inventory_gear_default.xml new file mode 100644 index 0000000000..8fc265504b --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_outfits_inventory_gear_default.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<menu name="menu_gear_default"> + <menu_item_call label="Reemplazar el vestuario actual" name="wear"/> + <menu_item_call label="Añadir al vestuario actual" name="add"/> + <menu_item_call label="Quitar del vestuario actual" name="remove"/> + <menu_item_call label="Renombrar" name="rename"/> + <menu_item_call label="Quitar" name="remove_link"/> + <menu_item_call label="Borrar" name="delete"/> +</menu> diff --git a/indra/newview/skins/default/xui/es/panel_people.xml b/indra/newview/skins/default/xui/es/panel_people.xml new file mode 100644 index 0000000000..35a6c4f641 --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_people.xml @@ -0,0 +1,53 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<!-- Side tray panel --> +<panel label="Gente" name="people_panel"> + <string name="no_people" value="No hay nadie"/> + <string name="no_one_near" value="No hay nadie cerca"/> + <string name="no_friends_online" value="No hay amigos conectados"/> + <string name="no_friends" value="No hay amigos"/> + <string name="no_groups" value="No hay grupos"/> + <string name="people_filter_label" value="Filtrar a la gente"/> + <string name="groups_filter_label" value="Filtrar a los grupos"/> + <filter_editor label="Filtrar" name="filter_input"/> + <tab_container name="tabs"> + <panel label="CERCANÍA" name="nearby_panel"> + <panel label="bottom_panel" name="bottom_panel"> + <button name="nearby_view_sort_btn" tool_tip="Opciones"/> + <button name="add_friend_btn" tool_tip="Añadir a tu lista de amigos al residente seleccionado"/> + </panel> + </panel> + <panel label="AMIGOS" name="friends_panel"> + <accordion name="friends_accordion"> + <accordion_tab name="tab_online" title="Conectado"/> + <accordion_tab name="tab_all" title="Todas"/> + </accordion> + <panel label="bottom_panel" name="bottom_panel"> + <button name="friends_viewsort_btn" tool_tip="Opciones"/> + <button name="add_btn" tool_tip="Ofrecer amistad a un residente"/> + <button name="del_btn" tool_tip="Quitar a la persona seleccionada de tu lista de amigos"/> + </panel> + </panel> + <panel label="GRUPOS" name="groups_panel"> + <panel label="bottom_panel" name="bottom_panel"> + <button name="groups_viewsort_btn" tool_tip="Opciones"/> + <button name="plus_btn" tool_tip="Entrar en un grupo o crear uno"/> + <button name="activate_btn" tool_tip="Activar el grupo seleccionado"/> + </panel> + </panel> + <panel label="RECIENTE" name="recent_panel"> + <panel label="bottom_panel" name="bottom_panel"> + <button name="recent_viewsort_btn" tool_tip="Opciones"/> + <button name="add_friend_btn" tool_tip="Añadir a tu lista de amigos al residente seleccionado"/> + </panel> + </panel> + </tab_container> + <panel name="button_bar"> + <button label="Perfil" name="view_profile_btn" tool_tip="Mostrar imagen, grupos y otra información de los residentes"/> + <button label="MI" name="im_btn" tool_tip="Abrir un mensaje instantáneo"/> + <button label="Llamada" name="call_btn" tool_tip="Llamar a este residente"/> + <button label="Compartir" name="share_btn"/> + <button label="Teleportarse" name="teleport_btn" tool_tip="Ofrecer teleporte"/> + <button label="Perfil del grupo" name="group_info_btn" tool_tip="Ver la información del grupo"/> + <button label="Chat de grupo" name="chat_btn" tool_tip="Abrir el chat"/> + </panel> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_pick_info.xml b/indra/newview/skins/default/xui/es/panel_pick_info.xml new file mode 100644 index 0000000000..c55addbc93 --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_pick_info.xml @@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="panel_pick_info"> + <text name="title" value="Información del destacado"/> + <scroll_container name="profile_scroll"> + <panel name="scroll_content_panel"> + <text name="pick_name" value="[nombre]"/> + <text name="pick_location" value="[cargando...]"/> + <text name="pick_desc" value="[descripción]"/> + </panel> + </scroll_container> + <panel name="buttons"> + <button label="Teleporte" name="teleport_btn"/> + <button label="Mapa" name="show_on_map_btn"/> + <button label="Editar" name="edit_btn"/> + </panel> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_picks.xml b/indra/newview/skins/default/xui/es/panel_picks.xml new file mode 100644 index 0000000000..abedc6c551 --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_picks.xml @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel label="Destacados" name="panel_picks"> + <string name="no_picks" value="No hay destacados"/> + <string name="no_classifieds" value="No hay clasificados"/> + <text name="empty_picks_panel_text"> + No hay ni destacados ni clasificados + </text> + <accordion name="accordion"> + <accordion_tab name="tab_picks" title="Destacados"/> + <accordion_tab name="tab_classifieds" title="Clasificados"/> + </accordion> + <panel label="bottom_panel" name="edit_panel"> + <button name="new_btn" tool_tip="Crear un nuevo destacado o clasificado de la posición actual"/> + </panel> + <panel name="buttons_cucks"> + <button label="Información" name="info_btn" tool_tip="Mostrar la información del destacado"/> + <button label="Teleportarse" name="teleport_btn" tool_tip="Teleportar a esta zona"/> + <button label="Mapa" name="show_on_map_btn" tool_tip="Mostrar esta zona en el mapa del mundo"/> + </panel> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_place_profile.xml b/indra/newview/skins/default/xui/es/panel_place_profile.xml new file mode 100644 index 0000000000..ad1b832979 --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_place_profile.xml @@ -0,0 +1,103 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="place_profile"> + <string name="on" value="On"/> + <string name="off" value="Off"/> + <string name="anyone" value="Cualquiera"/> + <string name="available" value="disponible"/> + <string name="allocated" value="asignados"/> + <string name="title_place" value="Añadir el perfil"/> + <string name="title_teleport_history" value="Localización del historial de teleportes"/> + <string name="not_available" value="(No disp.)"/> + <string name="unknown" value="(desconocido)"/> + <string name="public" value="(público)"/> + <string name="none_text" value="(ninguno)"/> + <string name="sale_pending_text" value="(venta pendiente)"/> + <string name="group_owned_text" value="(propiedad de un grupo)"/> + <string name="price_text" value="L$"/> + <string name="area_text" value="m²"/> + <string name="all_residents_text" value="Todos los residentes"/> + <string name="group_text" value="Grupo"/> + <string name="can_resell"> + El terreno comprado en esta región puede revenderse. + </string> + <string name="can_not_resell"> + El terreno comprado en esta región no puede revenderse. + </string> + <string name="can_change"> + El terreno comprado en esta región puede unirse o dividirse. + </string> + <string name="can_not_change"> + El terreno comprado en esta región no puede unirse o dividirse. + </string> + <string name="server_update_text"> + La información de esta parcela no está disponible sin una actualización del servidor. + </string> + <string name="server_error_text"> + En este momento no está disponible la información de esta parcela. Por favor, inténtalo más tarde. + </string> + <string name="server_forbidden_text"> + Por tener restringido el acceso, no está disponible la información de esta parcela. Por favor, revisa tus permisos con el propietario de la parcela. + </string> + <string name="acquired_date"> + [wkday,datetime,local][day,datetime,local] [mth,datetime,local] [year,datetime,local][hour,datetime,local]:[min,datetime,local]:[second,datetime,local] + </string> + <text name="title" value="Añadir el perfil"/> + <scroll_container name="place_scroll"> + <panel name="scrolling_panel"> + <text name="owner_label" value="Propietario:"/> + <text name="maturity_value" value="desconocido"/> + <accordion name="advanced_info_accordion"> + <accordion_tab name="parcel_characteristics_tab" title="Parcela"> + <panel> + <text name="rating_label" value="Calificación:"/> + <text name="rating_value" value="desconocida"/> + <text name="voice_label" value="Voz:"/> + <text name="voice_value" value="Sí"/> + <text name="fly_label" value="Volar:"/> + <text name="fly_value" value="Sí"/> + <text name="push_label" value="Empujones:"/> + <text name="push_value" value="No"/> + <text name="build_label" value="Construir:"/> + <text name="build_value" value="Sí"/> + <text name="scripts_label" value="Scripts:"/> + <text name="scripts_value" value="Sí"/> + <text name="damage_label" value="Daño:"/> + <text name="damage_value" value="No"/> + <button label="Acerca del terreno" name="about_land_btn"/> + </panel> + </accordion_tab> + <accordion_tab name="region_information_tab" title="Región"> + <panel> + <text name="region_name_label" value="Región:"/> + <text name="region_type_label" value="Tipo:"/> + <text name="region_rating_label" value="Calificación:"/> + <text name="region_owner_label" value="Propietario:"/> + <text name="region_group_label" value="Grupo:"/> + <button label="Región/Estado" name="region_info_btn"/> + </panel> + </accordion_tab> + <accordion_tab name="estate_information_tab" title="Estado"> + <panel> + <text name="estate_name_label" value="Estado:"/> + <text name="estate_rating_label" value="Calificación:"/> + <text name="estate_owner_label" value="Propietario:"/> + <text name="covenant_label" value="Contrato:"/> + </panel> + </accordion_tab> + <accordion_tab name="sales_tab" title="En venta"> + <panel> + <text name="sales_price_label" value="Precio:"/> + <text name="area_label" value="Área:"/> + <text name="traffic_label" value="Tráfico:"/> + <text name="primitives_label" value="Primitivas:"/> + <text name="parcel_scripts_label" value="Scripts:"/> + <text name="terraform_limits_label" value="Límites de modificación del terreno:"/> + <text name="subdivide_label" value="Puede dividirse/unirse:"/> + <text name="resale_label" value="Puede revenderse:"/> + <text name="sale_to_label" value="En venta a:"/> + </panel> + </accordion_tab> + </accordion> + </panel> + </scroll_container> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_places.xml b/indra/newview/skins/default/xui/es/panel_places.xml new file mode 100644 index 0000000000..4a64fa3320 --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_places.xml @@ -0,0 +1,14 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel label="Lugares" name="places panel"> + <string name="landmarks_tab_title" value="MIS HITOS"/> + <string name="teleport_history_tab_title" value="HISTORIAL DE TELEPORTES"/> + <filter_editor label="Filtrar los lugares" name="Filter"/> + <panel name="button_panel"> + <button label="Teleporte" name="teleport_btn"/> + <button label="Mapa" name="map_btn"/> + <button label="Editar" name="edit_btn"/> + <button label="Cerrar" name="close_btn"/> + <button label="Cancelar" name="cancel_btn"/> + <button label="Guardar" name="save_btn"/> + </panel> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_preferences_advanced.xml b/indra/newview/skins/default/xui/es/panel_preferences_advanced.xml index 02fb4da017..3dc6cad90e 100644 --- a/indra/newview/skins/default/xui/es/panel_preferences_advanced.xml +++ b/indra/newview/skins/default/xui/es/panel_preferences_advanced.xml @@ -1,7 +1,16 @@ <?xml version="1.0" encoding="utf-8"?> <panel name="advanced"> + <panel.string name="resolution_format"> + [RES_X] x [RES_Y] + </panel.string> + <panel.string name="aspect_ratio_text"> + [NUM]:[DEN] + </panel.string> + <check_box label="Bocadillos del chat" name="bubble_text_chat"/> + <color_swatch name="background" tool_tip="Elegir el color de los bocadillos del chat"/> + <slider label="Opacidad" name="bubble_chat_opacity"/> <text name="AspectRatioLabel1" tool_tip="ancho / alto"> - Proporción: + Proporción </text> <combo_box name="aspect_ratio" tool_tip="ancho / alto"> <combo_box.item label="4:3 (Standard CRT)" name="item1"/> @@ -9,4 +18,31 @@ <combo_box.item label="8:5 (Widescreen)" name="item3"/> <combo_box.item label="16:9 (Widescreen)" name="item4"/> </combo_box> + <check_box label="Detectar automáticamente" name="aspect_auto_detect"/> + <text name="heading1"> + Cámara: + </text> + <slider label="Ángulo de visión" name="camera_fov"/> + <slider label="Distancia" name="camera_offset_scale"/> + <text name="heading2"> + Posicionamiento automático para: + </text> + <check_box label="Construir/Editar" name="edit_camera_movement" tool_tip="Usar el posicionamiento automático de la cámara al entrar en o salir del modo de edición"/> + <check_box label="Apariencia" name="appearance_camera_movement" tool_tip="Usar el posicionamiento automático de la cámara mientras se está editando"/> + <text name="heading3"> + Avatares: + </text> + <check_box label="Verme en vista subjetiva" name="first_person_avatar_visible"/> + <check_box label="Las teclas del cursor siempre para moverme" name="arrow_keys_move_avatar_check"/> + <check_box label="Correr siempre: atajo de teclado" name="tap_tap_hold_to_run"/> + <check_box label="Al hablar, mover los labios del avatar" name="enable_lip_sync"/> + <check_box label="Mostrar los errores de los scripts" name="show_script_errors"/> + <radio_group name="show_location"> + <radio_item label="En el chat" name="0"/> + <radio_item label="En una ventana" name="1"/> + </radio_group> + <check_box label="Modo 'un toque' para el micrófono cuando pulses la tecla:" name="push_to_talk_toggle_check" tool_tip="En el modo 'un toque', pulsa y suelta el botón UNA VEZ para activar o desactivar el micrófono. Si no estás en el modo 'un toque', el micrófono sólo recogerá tu voz mientras mantengas pulsado el botón."/> + <line_editor label="Botón de Apretar para Hablar" name="modifier_combo"/> + <button label="Elegir la tecla" name="set_voice_hotkey_button"/> + <button label="Botón de en medio del ratón" name="set_voice_middlemouse_button"/> </panel> diff --git a/indra/newview/skins/default/xui/es/panel_preferences_alerts.xml b/indra/newview/skins/default/xui/es/panel_preferences_alerts.xml index a71ac172a3..433d7d15b4 100644 --- a/indra/newview/skins/default/xui/es/panel_preferences_alerts.xml +++ b/indra/newview/skins/default/xui/es/panel_preferences_alerts.xml @@ -1,18 +1,14 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <panel label="Ventanas emergentes" name="popups" title="Ventanas emergentes"> - <text name="dont_show_label"> - No mostrar estas ventanas emergentes: + <text name="tell_me_label"> + Avisarme: </text> - <button width="200" label="Activar esta ventana emergente" label_selected="Activar esta popup" name="enable_popup"/> - <button width="255" left="225" label="Activar todas las ventanas emergentes..." label_selected="Restaurar cajas de diálogo 'Mostrar en la próxima vez'..." name="reset_dialogs_btn" tool_tip="Activar todas las ventanas emergentes y los avisos de 'primera vez que se usa'."/> + <check_box label="Cuando gaste o consiga L$" name="notify_money_change_checkbox"/> + <check_box label="Cuando mis amigos se conecten o desconecten" name="friends_online_notify_checkbox"/> <text name="show_label" width="300"> - Mostrar estas ventanas emergentes: + Mostrar siempre estos avisos: </text> - <button left="205" width="275" label="Desactivar todas estas ventanas emergentes..." name="skip_dialogs_btn" tool_tip="Desactivar todas las ventanas emergentes y los avisos de 'primera vez que se usa'."/> - <text name="text_box2"> - Oferta de notas, texturas e hitos: + <text name="dont_show_label"> + No mostrar nunca estos avisos: </text> - <check_box label="Aceptar automáticamente" name="accept_new_inventory"/> - <check_box label="Ver automáticamente tras aceptar" name="show_new_inventory"/> - <check_box label="Mostrar automáticamente los objetos aceptados recientemente en el inventario" name="show_in_inventory"/> </panel> diff --git a/indra/newview/skins/default/xui/es/panel_preferences_chat.xml b/indra/newview/skins/default/xui/es/panel_preferences_chat.xml index 4e9dc6db6f..89243afbb5 100644 --- a/indra/newview/skins/default/xui/es/panel_preferences_chat.xml +++ b/indra/newview/skins/default/xui/es/panel_preferences_chat.xml @@ -1,17 +1,13 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <panel label="Chat de texto" name="chat"> - <text name="text_box"> - Tamaño de la fuente -del chat: - </text> <radio_group name="chat_font_size"> - <radio_item name="radio" label="Pequeño" /> - <radio_item name="radio2" label="Medio" /> - <radio_item name="radio3" label="Grande" /> + <radio_item label="Disminuir" name="radio"/> + <radio_item label="Media" name="radio2"/> + <radio_item label="Aumentar" name="radio3"/> </radio_group> <color_swatch label="Usted" name="user"/> <text name="text_box1"> - Usted + Yo </text> <color_swatch label="Otros" name="agent"/> <text name="text_box2"> @@ -37,22 +33,14 @@ del chat: <text name="text_box7"> Propietario </text> - <color_swatch label="Bocadillo" name="background"/> - <text name="text_box8"> - Bocadillo - </text> <color_swatch label="URL" name="links"/> <text name="text_box9"> URL </text> - <check_box label="Ver en el chat los avisos y errores de los scripts" name="script_errors_as_chat"/> - <spinner label="Quitar el chat tras" name="fade_chat_time" label_width="95" width="145" /> - <slider label="Opacidad" name="console_opacity"/> - <check_box label="Usar el ancho de la pantalla (tras reiniciar)" name="chat_full_width_check"/> - <check_box label="Cerrar el chat al pulsar Intro" name="close_chat_on_return_check"/> - <check_box label="En el chat, las teclas del cursor mueven el avatar" name="arrow_keys_move_avatar_check"/> - <check_box label="Incluir la hora en el chat" name="show_timestamps_check"/> - <check_box label="Ejecutar la animación de escribir al hacerlo en el chat" name="play_typing_animation"/> - <check_box label="Mostrar el chat en bocadillos" name="bubble_text_chat"/> - <slider label="Opacidad" name="bubble_chat_opacity"/> + <check_box initial_value="true" label="Ejecutar la animación de escribir al hacerlo en el chat" name="play_typing_animation"/> + <check_box label="Cuando estoy desconectado, enviarme los MI al correo-e" name="send_im_to_email"/> + <radio_group name="chat_window" tool_tip="Ver tus mensajes instantáneos en ventanas separadas o en una sola con varias pestañas (requiere volverse a conectar)"> + <radio_item label="Varias ventanas" name="radio"/> + <radio_item label="Una ventana" name="radio2"/> + </radio_group> </panel> diff --git a/indra/newview/skins/default/xui/es/panel_preferences_general.xml b/indra/newview/skins/default/xui/es/panel_preferences_general.xml index 2b813a18bf..7402f6270d 100644 --- a/indra/newview/skins/default/xui/es/panel_preferences_general.xml +++ b/indra/newview/skins/default/xui/es/panel_preferences_general.xml @@ -1,90 +1,64 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <panel label="General" name="general_panel"> - <combo_box name="start_location_combo"> - <combo_box.item name="MyHome" tool_tip="Por defecto, iniciar sesión en mi Base." label="Mi Base"/> - <combo_box.item name="MyLastLocation" tool_tip="Por defecto, iniciar sesión en mi última posición." label="Mi última posición"/> - </combo_box> - <check_box label="Ver mi posición inicial en la pantalla de inicio de sesión" name="show_location_checkbox"/> - <combo_box name="fade_out_combobox"> - <combo_box.item name="Never" label="Nunca"/> - <combo_box.item name="Show Temporarily" label="Mostrarlos temporalmente"/> - <combo_box.item name="Always" label="Siempre"/> - </combo_box> - <check_box label="Nombres de avatar en pequeño" name="small_avatar_names_checkbox"/> - <check_box label="No ver mi nombre en mi pantalla" name="show_my_name_checkbox"/> - <text name="group_titles_textbox"> - Etiquetas de grupo: - </text> - <check_box label="Ocultar las etiquetas de grupo" name="show_all_title_checkbox"/> - <check_box label="Ocultar mi etiqueta de grupo" name="show_my_title_checkbox"/> - <color_swatch label="" name="effect_color_swatch" tool_tip="Pulse para abrir el selector de color"/> - <text name="UI Size:"> - Tamaño de la interfaz: + <text name="language_textbox"> + Idioma: </text> - <check_box label="Resolución independiente del tamaño" name="ui_auto_scale"/> - <spinner label="Ausente tras:" name="afk_timeout_spinner"/> - <check_box label="Avisar cuando gasto o recibo dólares Linden (L$)" name="notify_money_change_checkbox"/> - <text name="maturity_desired_label"> - Calificación: + <combo_box name="language_combobox"> + <combo_box.item label="Predeterminado del sistema" name="System Default Language"/> + <combo_box.item label="English (Inglés)" name="English"/> + <combo_box.item label="Dansk (Danés) - Beta" name="Danish"/> + <combo_box.item label="Deutsch (Alemán) - Beta" name="Deutsch(German)"/> + <combo_box.item label="Español - Beta" name="Spanish"/> + <combo_box.item label="Français (Francés) - Beta" name="French"/> + <combo_box.item label="Italiano - Beta" name="Italian"/> + <combo_box.item label="Nederlands (Neerlandés) - Beta" name="Dutch"/> + <combo_box.item label="Polski (Polaco) - Beta" name="Polish"/> + <combo_box.item label="Portugués (Portugués) - Beta" name="Portugese"/> + <combo_box.item label="日本語 (Japonés) - Beta" name="(Japanese)"/> + </combo_box> + <text name="language_textbox2"> + (requiere reiniciar) </text> <text name="maturity_desired_prompt"> Quiero acceder a contenido calificado: </text> + <text name="maturity_desired_textbox"/> <combo_box name="maturity_desired_combobox"> - <combo_box.item name="Desired_Adult" label="'PG', 'Mature' y 'Adult'"/> - <combo_box.item name="Desired_Mature" label="'PG' y 'Mature'"/> - <combo_box.item name="Desired_PG" label="'PG'"/> + <combo_box.item label="'PG', 'Mature' y 'Adult'" name="Desired_Adult"/> + <combo_box.item label="'PG' y 'Mature'" name="Desired_Mature"/> + <combo_box.item label="'PG'" name="Desired_PG"/> </combo_box> - <text name="maturity_desired_textbox"> - 'PG' - </text> <text name="start_location_textbox"> - Posición inicial: + Localización inicial: </text> - <text name="show_names_textbox"> - Mostrar los nombres: + <combo_box name="start_location_combo"> + <combo_box.item label="Mi última posición" name="MyLastLocation" tool_tip="Por defecto, iniciar sesión en mi última posición."/> + <combo_box.item label="Mi Base" name="MyHome" tool_tip="Por defecto, iniciar sesión en mi Base."/> + </combo_box> + <check_box initial_value="true" label="Mostrar en la pantalla de conexión" name="show_location_checkbox"/> + <text name="name_tags_textbox"> + Etiquetas de los nombres: </text> + <radio_group name="Name_Tag_Preference"> + <radio_item label="Off" name="radio"/> + <radio_item label="On" name="radio2"/> + <radio_item label="Mostrar brevemente" name="radio3"/> + </radio_group> + <check_box label="Mostrar mi nombre" name="show_my_name_checkbox1"/> + <check_box initial_value="true" label="Etiquetas de los avatares en pequeño" name="small_avatar_names_checkbox"/> + <check_box label="Mostrar las etiquetas de grupo" name="show_all_title_checkbox1"/> <text name="effects_color_textbox"> - Color de mis efectos: + Mis efectos: + </text> + <color_swatch label="" name="effect_color_swatch" tool_tip="Pulse para abrir el selector de color"/> + <text name="title_afk_text"> + Ausente tras: </text> + <spinner label="Ausente tras:" name="afk_timeout_spinner"/> <text name="seconds_textbox"> segundos </text> - <text name="crash_report_textbox"> - Informes de caídas: - </text> - <text name="language_textbox"> - Idioma: - </text> - <text name="language_textbox2"> - (Tendrá efecto tras reiniciar) + <text name="text_box3"> + Respuesta cuando estoy en el modo ocupado: </text> - <string name="region_name_prompt"> - <escriba el nombre de la región> - </string> - <combo_box name="crash_behavior_combobox"> - <combo_box.item name="Askbeforesending" label="Preguntar antes de enviar"/> - <combo_box.item name="Alwayssend" label="Enviar siempre"/> - <combo_box.item name="Neversend" label="No enviar nunca"/> - </combo_box> - <combo_box name="language_combobox"> - <combo_box.item name="System Default Language" label="Predeterminado del sistema"/> - <combo_box.item name="English" label="English (Inglés)"/> - <combo_box.item name="Danish" label="Dansk (Danés) - Beta"/> - <combo_box.item name="Deutsch(German)" label="Deutsch (Alemán) - Beta"/> - <combo_box.item name="Spanish" label="Español - Beta"/> - <combo_box.item name="French" label="Français (Francés) - Beta"/> - <combo_box.item name="Italian" label="Italiano - Beta"/> - <combo_box.item name="Hungarian" label="Magyar (Húngaro) - Beta"/> - <combo_box.item name="Dutch" label="Nederlands (Neerlandés) - Beta"/> - <combo_box.item name="Polish" label="Polski (Polaco) - Beta"/> - <combo_box.item name="Portugese" label="Portugués (Portugués) - Beta"/> - <combo_box.item name="Russian" label="Русский (Ruso) - Beta"/> - <combo_box.item name="Turkish" label="Türkçe (Turco) - Beta"/> - <combo_box.item name="Ukrainian" label="Українська (Ucraniano) - Beta"/> - <combo_box.item name="Chinese" label="中文 (简体) (Chino) - Beta"/> - <combo_box.item name="(Japanese)" label="日本語 (Japonés) - Beta"/> - <combo_box.item name="(Korean)" label="한국어 (Coreano) - Beta"/> - </combo_box> - <check_box label="Compartir el idioma con los objetos" name="language_is_public" tool_tip="Hace que los objetos con script del mundo sepan su idioma preferido."/> </panel> diff --git a/indra/newview/skins/default/xui/es/panel_preferences_graphics1.xml b/indra/newview/skins/default/xui/es/panel_preferences_graphics1.xml index 4038940256..dc7d692531 100644 --- a/indra/newview/skins/default/xui/es/panel_preferences_graphics1.xml +++ b/indra/newview/skins/default/xui/es/panel_preferences_graphics1.xml @@ -1,43 +1,17 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <panel label="Gráficos" name="Display panel"> - <button label="?" name="GraphicsPreferencesHelpButton"/> - <check_box label="Abrir Second Life en una ventana" name="windowed mode"/> - <text_editor name="FullScreenInfo" width="480"> - Si no está marcado, el visor se mostrará en pantalla completa cuando inicie sesión. - </text_editor> - <text name="WindowSizeLabel"> - Tamaño de la ventana: + <text name="UI Size:"> + Tamaño de la UI: </text> - <combo_box left="124" name="windowsize combo"> - <combo_box.item name="640x480" label="640x480"/> - <combo_box.item name="800x600" label="800x600"/> - <combo_box.item name="720x480" label="720x480 (NTSC)"/> - <combo_box.item name="768x576" label="768x576 (PAL)"/> - <combo_box.item name="1024x768" label="1024x768"/> - </combo_box> - <text name="DisplayResLabel"> - Resolución: + <text name="QualitySpeed"> + Calidad y velocidad: </text> - <combo_box left="124" name="fullscreen combo" /> - <text name="AspectRatioLabel1" tool_tip="ancho / alto"> - Proporción: - </text> - <combo_box left="124" name="aspect_ratio" tool_tip="ancho / alto"> - <combo_box.item name="4:3(StandardCRT)" label="4:3 (Standard CRT)"/> - <combo_box.item name="5:4(1280x1024LCD)" label="5:4 (1280x1024 LCD)"/> - <combo_box.item name="8:5(Widescreen)" label="8:5 (Widescreen)"/> - <combo_box.item name="16:9(Widescreen)" label="16:9 (Widescreen)"/> - </combo_box> - <check_box label="Detectar automáticamente la proporción" name="aspect_auto_detect" left="295" /> - <text name="HigherText"> - Calidad y - </text> - <text name="QualityText"> - Rendimiento: - </text> - <text name="FasterText" left="95"> + <text left="95" name="FasterText"> El más rápido </text> + <text name="BetterText"> + Mejor + </text> <text name="ShadersPrefText"> Bajo </text> @@ -50,97 +24,83 @@ <text name="ShadersPrefText4"> Ultra </text> - <text name="HigherText2" left="325" > - Más alto - </text> - <text name="QualityText2" left="325" > - calidad - </text> - <check_box label="Personalizar" name="CustomSettings"/> - <panel name="CustomGraphics Panel"> - <text name="ShadersText"> - Shaders: - </text> - <check_box label="Efecto de relieve y brillo" name="BumpShiny"/> - <check_box label="Shaders básicos" name="BasicShaders" tool_tip="Desactivando esta opción puede prevenir fallos en algunos controladores de la tarjeta gráfica."/> - <check_box label="Shaders de la atmósfera" name="WindLightUseAtmosShaders"/> - <check_box label="Reflejos en el agua" name="Reflections"/> - <text name="ReflectionDetailText"> - Objetos reflejados: - </text> - <radio_group name="ReflectionDetailRadio"> - <radio_item name="0" label="Terreno y árboles" /> - <radio_item name="1" label="Todos los objetos estáticos" /> - <radio_item name="2" label="Todos los avatares y objetos" /> - <radio_item name="3" label="Todo" /> - </radio_group> - <text name="AvatarRenderingText"> - Renderización del avatar: - </text> - <check_box label="Avatares simulados" name="AvatarImpostors"/> - <check_box label="Renderizado por hardware" name="AvatarVertexProgram"/> - <check_box label="Ropas del avatar" name="AvatarCloth"/> - <text name="DrawDistanceMeterText1"> - m - </text> - <text name="DrawDistanceMeterText2"> - m - </text> - <slider label="Distancia de dibujo:" name="DrawDistance"/> - <slider label="Núm. máx. de partículas:" name="MaxParticleCount"/> - <slider label="Calidad del procesamiento:" name="RenderPostProcess" label_width="142"/> - <text name="MeshDetailText"> - Detalle de la malla: - </text> - <slider label=" Objetos:" name="ObjectMeshDetail"/> - <slider label=" Prims flexibles:" name="FlexibleMeshDetail"/> - <slider label=" Árboles:" name="TreeMeshDetail"/> - <slider label=" Avatares:" name="AvatarMeshDetail"/> - <slider label=" Terreno:" name="TerrainMeshDetail"/> - <slider label=" Cielo:" name="SkyMeshDetail"/> - <text name="PostProcessText"> - Baja - </text> - <text name="ObjectMeshDetailText"> - Bajo - </text> - <text name="FlexibleMeshDetailText"> - Bajo - </text> - <text name="TreeMeshDetailText"> - Bajo - </text> - <text name="AvatarMeshDetailText"> - Bajo - </text> - <text name="TerrainMeshDetailText"> - Bajo - </text> - <text name="SkyMeshDetailText"> - Bajo - </text> - <text name="LightingDetailText" width="135"> - Detalles de la iluminación: - </text> - <radio_group name="LightingDetailRadio"> - <radio_item name="SunMoon" label="Sólo el Sol y la Luna" /> - <radio_item name="LocalLights" label="Puntos de luz cercanos" /> - </radio_group> - <text name="TerrainDetailText"> - Nivel de detalle del + <panel label="CustomGraphics" name="CustomGraphics Panel"> + <text name="ShadersText"> + Shaders: + </text> + <check_box initial_value="true" label="Efecto de relieve y brillo" name="BumpShiny"/> + <check_box initial_value="true" label="Shaders básicos" name="BasicShaders" tool_tip="Desactivando esta opción puede prevenir fallos en algunos controladores de la tarjeta gráfica."/> + <check_box initial_value="true" label="Shaders de la atmósfera" name="WindLightUseAtmosShaders"/> + <check_box initial_value="true" label="Reflejos en el agua" name="Reflections"/> + <text name="ReflectionDetailText"> + Objetos reflejados: + </text> + <radio_group name="ReflectionDetailRadio"> + <radio_item label="Terreno y árboles" name="0"/> + <radio_item label="Todos los objetos estáticos" name="1"/> + <radio_item label="Todos los avatares y objetos" name="2"/> + <radio_item label="Todo" name="3"/> + </radio_group> + <text name="AvatarRenderingText"> + Renderización del avatar: + </text> + <check_box initial_value="true" label="Avatares simulados" name="AvatarImpostors"/> + <check_box initial_value="true" label="Renderizado por hardware" name="AvatarVertexProgram"/> + <check_box initial_value="true" label="Ropas del avatar" name="AvatarCloth"/> + <slider label="Distancia de dibujo:" name="DrawDistance"/> + <text name="DrawDistanceMeterText2"> + m + </text> + <slider label="Núm. máx. de partículas:" name="MaxParticleCount"/> + <slider label="Calidad del procesamiento:" label_width="142" name="RenderPostProcess"/> + <text name="MeshDetailText"> + Detalle de la malla: + </text> + <slider label=" Objetos:" name="ObjectMeshDetail"/> + <slider label=" Prims flexibles:" name="FlexibleMeshDetail"/> + <slider label=" Árboles:" name="TreeMeshDetail"/> + <slider label=" Avatares:" name="AvatarMeshDetail"/> + <slider label=" Terreno:" name="TerrainMeshDetail"/> + <slider label=" Cielo:" name="SkyMeshDetail"/> + <text name="PostProcessText"> + Baja + </text> + <text name="ObjectMeshDetailText"> + Bajo + </text> + <text name="FlexibleMeshDetailText"> + Bajo + </text> + <text name="TreeMeshDetailText"> + Bajo + </text> + <text name="AvatarMeshDetailText"> + Bajo + </text> + <text name="TerrainMeshDetailText"> + Bajo + </text> + <text name="SkyMeshDetailText"> + Bajo + </text> + <text name="LightingDetailText" width="135"> + Detalles de la iluminación: + </text> + <radio_group name="LightingDetailRadio"> + <radio_item label="Sólo el Sol y la Luna" name="SunMoon"/> + <radio_item label="Puntos de luz cercanos" name="LocalLights"/> + </radio_group> + <text name="TerrainDetailText"> + Nivel de detalle del terreno: - </text> - <radio_group name="TerrainDetailRadio" left_delta="60"> - <radio_item name="0" label="Bajo" /> - <radio_item name="2" label="Alto" /> - </radio_group> + </text> + <radio_group left_delta="60" name="TerrainDetailRadio"> + <radio_item label="Bajo" name="0"/> + <radio_item label="Alto" name="2"/> + </radio_group> </panel> - <button label="Configuraciones recomendadas" name="Defaults" width="195" left="110"/> - <button label="Opciones del hardware" label_selected="Opciones del hardware" name="GraphicsHardwareButton" left="315"/> - <panel.string name="resolution_format"> - [RES_X] x [RES_Y] - </panel.string> - <panel.string name="aspect_ratio_text"> - [NUM]:[DEN] - </panel.string> + <button label="Aplicar" label_selected="Aplicar" name="Apply"/> + <button label="Por defecto" left="110" name="Defaults" width="195"/> + <button label="Avanzado" name="Advanced"/> + <button label="Hardware" label_selected="Hardware" left="315" name="GraphicsHardwareButton"/> </panel> diff --git a/indra/newview/skins/default/xui/es/panel_preferences_privacy.xml b/indra/newview/skins/default/xui/es/panel_preferences_privacy.xml index cbaa3d96ee..fbc885abc4 100644 --- a/indra/newview/skins/default/xui/es/panel_preferences_privacy.xml +++ b/indra/newview/skins/default/xui/es/panel_preferences_privacy.xml @@ -1,34 +1,27 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <panel label="Comunicación" name="im"> - <text name="text_box"> - Mi estado de conexión: + <panel.string name="log_in_to_change"> + Conéctate para que cambie + </panel.string> + <button label="Limpiar el historial" name="clear_cache"/> + <text name="cache_size_label_l"> + (Localizaciones, imágenes, web, historial de búsqueda) </text> - <check_box label="Sólo pueden ver si estoy conectado mis amigos y grupos" name="online_visibility"/> - <text name="text_box2"> - Opciones de los MI: + <check_box label="Sólo saben si estoy conectado mis amigos y grupos" name="online_visibility"/> + <check_box label="Sólo pueden llamarme o mandarme un MI mis amigos y grupos" name="voice_call_friends_only_check"/> + <check_box label="Desconectar el micrófono cuando finalicen las llamadas" name="auto_disengage_mic_check"/> + <check_box label="Aceptar las 'cookies'" name="cookies_enabled"/> + <check_box label="Permitir la ejecución automática de los media" name="autoplay_enabled"/> + <text name="Logs:"> + Registros: </text> - <string name="log_in_to_change"> - inicie sesión para cambiar - </string> - <check_box label="Enviar MI al correo electrónico ([EMAIL])" name="send_im_to_email"/> - <check_box label="Incluir los MI en la consola del chat" name="include_im_in_chat_console"/> - <check_box label="Incluir la hora en los MI" name="show_timestamps_check"/> - <check_box label="Avisar si se conecta un amigo" name="friends_online_notify_checkbox"/> - <text name="text_box3"> - Mensaje en el estado -ocupado: - </text> - <text name="text_box4"> - Opciones de los -registros: - </text> - <check_box label="Guardar un registro de los MI en mi ordenador" name="log_instant_messages"/> - <check_box label="Incluir la hora en el registro de los MI" name="log_instant_messages_timestamp"/> - <check_box label="Mostrar el final de la última conversación por MI" name="log_show_history"/> - <check_box label="Guardar un registro del chat en mi ordenador" name="log_chat"/> - <check_box label="Incluir la hora en el registro del chat" name="log_chat_timestamp"/> - <check_box label="Mostrar en el chat la llegada de los MI" name="log_chat_IM"/> - <check_box label="Incluir la fecha junto a la hora" name="log_date_timestamp"/> - <button label="Cambiar la ruta" label_selected="Cambiar la ruta" name="log_path_button" width="120"/> + <check_box label="Guardar en mi ordenador registros del chat" name="log_nearby_chat"/> + <check_box label="Guardar en mi ordenador registros de los MI" name="log_instant_messages"/> + <check_box label="Añadir fecha y hora" name="show_timestamps_check_im"/> <line_editor left="278" name="log_path_string" right="-20"/> + <text name="log_path_desc"> + Ruta de los registros + </text> + <button label="Elegir" label_selected="Elegir" name="log_path_button" width="120"/> + <button label="Lista de ignorados" name="block_list"/> </panel> diff --git a/indra/newview/skins/default/xui/es/panel_preferences_setup.xml b/indra/newview/skins/default/xui/es/panel_preferences_setup.xml index 967626b8d5..d58878b120 100644 --- a/indra/newview/skins/default/xui/es/panel_preferences_setup.xml +++ b/indra/newview/skins/default/xui/es/panel_preferences_setup.xml @@ -1,32 +1,46 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <panel label="Dispositivos y Cámara" name="Input panel"> - <text name=" Mouselook Options:"> + <button bottom_delta="-40" label="Otros dispositivos" name="joystick_setup_button"/> + <text name="Mouselook:"> Vista subjetiva: </text> - <text name=" Mouse Sensitivity:"> - Sensibilidad del ratón: + <text name=" Mouse Sensitivity"> + Sensibilidad del ratón </text> - <check_box label="Invertir el ratón" name="invert_mouse"/> - <text name=" Auto Fly Options:"> - Vuelo: + <check_box label="Invertir" name="invert_mouse"/> + <text name="Network:"> + Red: </text> - <check_box label="Despegar/Aterrizar pulsando RePág/AvPág" name="automatic_fly"/> - <text name=" Camera Options:"> - Opciones de la cámara: + <text name="Maximum bandwidth"> + Ancho de banda máximo </text> - <text name="camera_fov_label" width="218"> - Ángulo de vista de la cámara: + <text name="text_box2"> + kbps </text> - <slider bottom_delta="-6" width="128" left="326" name="camera_fov" /> - <text name="Camera Follow Distance:" width="218"> - Distancia a la que sigue la cámara: + <check_box label="Personalizar el puerto" name="connection_port_enabled"/> + <spinner label="Número de puerto:" name="web_proxy_port"/> + <text name="cache_size_label_l"> + Tamaño de la caché </text> - <slider bottom_delta="-6" width="128" left="326" name="camera_offset_scale" /> - <check_box label="Reorientar la cámara al editar" name="edit_camera_movement" tool_tip="Usar la reorientación automática de la cámara al entrar y salir del modo de edición"/> - <check_box label="Reorientar la cámara al modificar la apariencia" name="appearance_camera_movement" tool_tip="Usar la reorientación automática de la cámara mientras se modifica la apariencia"/> - <text name="text2"> - Visualización del avatar: + <text name="text_box5"> + MB + </text> + <button label="Elegir" label_selected="Elegir" name="set_cache"/> + <button label="Recuperar" label_selected="Configurar" name="reset_cache"/> + <text name="Cache location"> + Ruta de la caché + </text> + <text name="Web:"> + Web: + </text> + <radio_group name="use_external_browser"> + <radio_item label="Usar el navegador incorporado" name="internal" tool_tip="Usa el navegador incorporado para ayuda, enlaces web, etc. Este navegador se abre en una nueva ventana dentro de [APP_NAME]."/> + <radio_item label="Usar mi navegador (IE, Firefox)" name="external" tool_tip="Usa tu navegador por defecto para ayuda, enlaces web, etc. No es aconsejable si estás a pantalla completa."/> + </radio_group> + <check_box initial_value="false" label="Web proxy" name="web_proxy_enabled"/> + <line_editor name="web_proxy_editor" tool_tip="Nombre o dirección IP del proxy que quieres usar"/> + <button label="Buscar" label_selected="Buscar" name="set_proxy"/> + <text name="Proxy location"> + Localización del proxy </text> - <check_box label="Ver el avatar en vista subjetiva" name="first_person_avatar_visible"/> - <button bottom_delta="-40" label="Configurar el joystick" name="joystick_setup_button"/> </panel> diff --git a/indra/newview/skins/default/xui/es/panel_preferences_sound.xml b/indra/newview/skins/default/xui/es/panel_preferences_sound.xml index 241f3042fe..5ec5ba88fa 100644 --- a/indra/newview/skins/default/xui/es/panel_preferences_sound.xml +++ b/indra/newview/skins/default/xui/es/panel_preferences_sound.xml @@ -1,38 +1,38 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> -<panel label="Audio y Vídeo" name="Preference Media panel"> - <slider label="General" name="System Volume"/> +<panel label="Sonidos" name="Preference Media panel"> + <slider label="Volumen general" name="System Volume"/> + <check_box initial_value="true" label="Silenciar al minimizar" name="mute_when_minimized"/> <slider label="Ambiental" name="Wind Volume"/> - <slider label="Sonidos" name="SFX Volume"/> - <slider label="Media" name="Media Volume"/> - <slider label="Interfaz" name="UI Volume"/> - <slider label="Música" name="Music Volume"/> + <slider label="Botones" name="UI Volume"/> + <slider label="Medios de comunicación" name="Media Volume"/> + <slider label="Efectos sonoros" name="SFX Volume"/> + <slider label="Música en streaming" name="Music Volume"/> + <check_box label="Voz" name="enable_voice_check"/> <slider label="Voz" name="Voice Volume"/> - <text_editor name="voice_unavailable"> - El chat de voz no está disponible - </text_editor> - <check_box label="Activar el chat de voz" name="enable_voice_check"/> + <text name="Listen from"> + Oír desde: + </text> <radio_group name="ear_location"> - <radio_item name="0" label="Oír el chat desde la posición de la cámara." /> - <radio_item name="1" label="Oír el chat desde la posición del avatar." /> + <radio_item label="La posición de la cámara" name="0"/> + <radio_item label="La posición del avatar" name="1"/> </radio_group> - <button label="Configuración de los dispositivos" name="device_settings_btn" width="210" /> - <text name="muting_text"> - Volumen: - </text> - <text name="streaming_prefs_text"> - Preferencias multimedia: - </text> - <text name="audio_prefs_text"> - Preferencias de sonido: - </text> - <panel label="Volumen" name="Volume Panel"/> - <check_box label="Si hay música, reproducirla en streaming" name="streaming_music"/> - <check_box label="Si hay media, reproducirlos en streaming" name="streaming_video"/> - <check_box label="Reproducir automáticamente los media" name="auto_streaming_video"/> - <check_box label="Silenciar el sonido al minimizar la ventana" name="mute_when_minimized"/> - <slider label="Efecto Doppler" name="Doppler Effect" label_width="140" width="270" /> - <slider label="Distancia de escucha" name="Distance Factor" label_width="140" width="270" /> - <slider label="Nivel de atenuación" name="Rolloff Factor" label_width="140" width="270" /> - <spinner label="Avisar de transacción de L$ desde" name="L$ Change Threshold" label_width="195" width="259"/> - <spinner label="Avisar del estado de la vida desde" name="Health Change Threshold" label_width="195" width="259"/> + <button label="Dispositivos de entrada y salida" name="device_settings_btn" width="210"/> + <panel label="Configuración de dispositivos" name="device_settings_panel"> + <panel.string name="default_text"> + Por defecto + </panel.string> + <text name="Input"> + Entrada + </text> + <text name="My volume label"> + Mi volumen: + </text> + <slider_bar initial_value="1.0" name="mic_volume_slider" tool_tip="Cambia el volumen usando este deslizable"/> + <text name="wait_text"> + Por favor, espera + </text> + <text name="Output"> + Salida + </text> + </panel> </panel> diff --git a/indra/newview/skins/default/xui/es/panel_prim_media_controls.xml b/indra/newview/skins/default/xui/es/panel_prim_media_controls.xml new file mode 100644 index 0000000000..4701c67e06 --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_prim_media_controls.xml @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="MediaControls"> + <layout_stack name="media_controls"> + <layout_panel name="media_address"> + <line_editor name="media_address_url" tool_tip="URL de los media"/> + <layout_stack name="media_address_url_icons"> + <layout_panel> + <icon name="media_whitelist_flag" tool_tip="Lista Blanca activada"/> + </layout_panel> + <layout_panel> + <icon name="media_secure_lock_flag" tool_tip="Navegación segura"/> + </layout_panel> + </layout_stack> + </layout_panel> + <layout_panel name="media_play_position"> + <slider_bar initial_value="0.5" name="media_play_slider" tool_tip="Progreso de la película"/> + </layout_panel> + <layout_panel name="media_volume"> + <button name="media_mute_button" tool_tip="Silenciar este media"/> + <slider name="volume_slider" tool_tip="Volumen de los media"/> + </layout_panel> + </layout_stack> + <layout_stack> + <panel name="media_progress_indicator"> + <progress_bar name="media_progress_bar" tool_tip="Los media se están cargando"/> + </panel> + </layout_stack> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_profile.xml b/indra/newview/skins/default/xui/es/panel_profile.xml index 218e03dcce..f61c7c3e33 100644 --- a/indra/newview/skins/default/xui/es/panel_profile.xml +++ b/indra/newview/skins/default/xui/es/panel_profile.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> -<panel name="panel_profile"> +<panel label="Perfil" name="panel_profile"> <string name="CaptionTextAcctInfo"> [ACCTTYPE] [PAYMENTINFO] [AGEVERIFICATION] @@ -11,4 +11,38 @@ http://www.secondlife.com/account/partners.php?lang=es </string> <string name="my_account_link_url" value="http://secondlife.com/my/account/index.php?lang=es-ES"/> + <string name="no_partner_text" value="Ninguno"/> + <string name="RegisterDateFormat"> + [REG_DATE] ([AGE]) + </string> + <scroll_container name="profile_scroll"> + <panel name="scroll_content_panel"> + <panel name="second_life_image_panel"> + <text name="title_sl_descr_text" value="[SECOND_LIFE]:"/> + </panel> + <panel name="first_life_image_panel"> + <text name="title_rw_descr_text" value="Mundo real:"/> + </panel> + <text name="me_homepage_text"> + Web: + </text> + <text name="title_member_text" value="Miembro desde:"/> + <text name="title_acc_status_text" value="Estado de la cuenta:"/> + <text name="acc_status_text" value="Residente. No ha aportado información de pago."/> + <text name="title_partner_text" value="Compañero/a:"/> + <text name="title_groups_text" value="Grupos:"/> + </panel> + </scroll_container> + <panel name="profile_buttons_panel"> + <button label="Añadir como amigo" name="add_friend" tool_tip="Ofrecer amistad al residente"/> + <button label="MI" name="im" tool_tip="Abrir un mensaje instantáneo"/> + <button label="Llamada" name="call" tool_tip="Llamar a este residente"/> + <button label="Mapa" name="show_on_map_btn" tool_tip="Ver al residente en el mapa"/> + <button label="Teleportarse" name="teleport" tool_tip="Ofrecer teleporte"/> + <button label="▼" name="overflow_btn" tool_tip="Pagar dinero o dar algo del inventario al residente"/> + </panel> + <panel name="profile_me_buttons_panel"> + <button label="Editar el perfil" name="edit_profile_btn"/> + <button label="Modificar la apariencia" name="edit_appearance_btn"/> + </panel> </panel> diff --git a/indra/newview/skins/default/xui/es/panel_profile_view.xml b/indra/newview/skins/default/xui/es/panel_profile_view.xml new file mode 100644 index 0000000000..b556346051 --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_profile_view.xml @@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="panel_target_profile"> + <string name="status_online"> + Conectado/a + </string> + <string name="status_offline"> + Desconectado/a + </string> + <text_editor name="user_name" value="(Cargando...)"/> + <text name="status" value="Conectado/a"/> + <tab_container name="tabs"> + <panel label="PERFIL" name="panel_profile"/> + <panel label="DESTACADOS" name="panel_picks"/> + <panel label="NOTAS Y PRIVACIDAD" name="panel_notes"/> + </tab_container> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_region_covenant.xml b/indra/newview/skins/default/xui/es/panel_region_covenant.xml index 220479098b..7713a173e5 100644 --- a/indra/newview/skins/default/xui/es/panel_region_covenant.xml +++ b/indra/newview/skins/default/xui/es/panel_region_covenant.xml @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <panel label="Contrato" name="Covenant"> <text name="estate_section_lbl"> - Estado: + Estado </text> <text name="estate_name_lbl"> Nombre: @@ -22,7 +22,7 @@ Última modificación el miér. 31 de dic. de 1969, 16:00:00 </text> <button label="?" name="covenant_help"/> - <text_editor name="covenant_editor" bottom="-263" height="178" > + <text_editor bottom="-263" height="178" name="covenant_editor"> No se ha aportado un contrato para este estado. </text_editor> <button label="Cambiar" name="reset_covenant"/> @@ -30,11 +30,11 @@ Los cambios en el contrato se mostrarán en todas las parcelas del estado. </text> - <text name="covenant_instructions" bottom_delta="-31" > - Para cambiar el contrato de este estado, arrastre y suelte una nota. + <text bottom_delta="-31" name="covenant_instructions"> + Arrastra y suelta una nota para cambiar el contrato de este Estado. </text> <text name="region_section_lbl"> - Región: + Región </text> <text name="region_name_lbl"> Nombre: diff --git a/indra/newview/skins/default/xui/es/panel_region_debug.xml b/indra/newview/skins/default/xui/es/panel_region_debug.xml index a7999cc54d..64162220a6 100644 --- a/indra/newview/skins/default/xui/es/panel_region_debug.xml +++ b/indra/newview/skins/default/xui/es/panel_region_debug.xml @@ -7,11 +7,11 @@ desconocida </text> <check_box label="Desactivar los scripts" name="disable_scripts_check" tool_tip="Descativar todos los scripts en esta región"/> - <button label="?" name="disable_scripts_help" left="215"/> + <button label="?" left="215" name="disable_scripts_help"/> <check_box label="Desactivar las colisiones" name="disable_collisions_check" tool_tip="Desactiva las colisiones (no las de avatares) en esta región"/> - <button label="?" name="disable_collisions_help" left="215"/> + <button label="?" left="215" name="disable_collisions_help"/> <check_box label="Desactivar las propiedades físicas" name="disable_physics_check" tool_tip="Desactiva toda la física en esta región"/> - <button label="?" name="disable_physics_help" left="215"/> + <button label="?" left="215" name="disable_physics_help"/> <button label="Aplicar" name="apply_btn"/> <text name="objret_text_lbl" width="130"> Devolver el objeto @@ -22,18 +22,18 @@ <line_editor name="target_avatar_name"> (nadie) </line_editor> - <button label="Elegir..." name="choose_avatar_btn"/> + <button label="Elegir" name="choose_avatar_btn"/> <text name="options_text_lbl"> Opciones: </text> - <check_box label="Devolver sólo los objetos con scripts" name="return_scripts" tool_tip="Devolver sólo los objetos que tengan scripts."/> - <check_box label="Devolver sólo los objetos que están en terreno de otro" name="return_other_land" tool_tip="Devolver sólo los objetos que están en terreno de otro"/> - <check_box label="Devolver los objetos de cualquier región de este estado" name="return_estate_wide" tool_tip="Devolver los objetos de todas las regiones que forman este estado"/> + <check_box label="Con scripts" name="return_scripts" tool_tip="Devolver sólo los objetos con scripts"/> + <check_box label="En el terreno de otros" name="return_other_land" tool_tip="Devolver sólo los objetos que están en terreno de otro"/> + <check_box label="En cada región de este estado" name="return_estate_wide" tool_tip="Devolver los objetos de todas las regiones que forman este estado"/> <button label="Devolver" name="return_btn"/> - <button width="280" label="Listar los objetos que colisionan..." name="top_colliders_btn" tool_tip="Lista de los objetos con más posibles colisiones potenciales"/> - <button label="?" name="top_colliders_help" left="297"/> - <button width="280" label="Listar los scripts según su uso..." name="top_scripts_btn" tool_tip="Lista de los objetos que más tiempo emplean ejecutando scripts"/> - <button label="?" name="top_scripts_help" left="297"/> + <button label="Listar los objetos que colisionan..." name="top_colliders_btn" tool_tip="Lista de los objetos con más posibles colisiones potenciales" width="280"/> + <button label="?" left="297" name="top_colliders_help"/> + <button label="Listar los scripts según su uso..." name="top_scripts_btn" tool_tip="Lista de los objetos que más tiempo emplean ejecutando scripts" width="280"/> + <button label="?" left="297" name="top_scripts_help"/> <button label="Reiniciar la región" name="restart_btn" tool_tip="Cuenta atrás de 2 minutos y reiniciar la región"/> <button label="?" name="restart_help"/> <button label="Retrasar el reinicio" name="cancel_restart_btn" tool_tip="Retrasar una hora el reinicio de la región"/> diff --git a/indra/newview/skins/default/xui/es/panel_region_estate.xml b/indra/newview/skins/default/xui/es/panel_region_estate.xml index f16ec89cb0..437ecd4e10 100644 --- a/indra/newview/skins/default/xui/es/panel_region_estate.xml +++ b/indra/newview/skins/default/xui/es/panel_region_estate.xml @@ -11,7 +11,7 @@ pestaña afectarán a todas las regiones del estado. (desconocido) </text> <text name="owner_text"> - Propietario: + Propietario del Estado: </text> <text name="estate_owner"> (desconocido) @@ -24,10 +24,10 @@ pestaña afectarán a todas las regiones del estado. <check_box label="Permitir el acceso público" name="externally_visible_check"/> <button label="?" name="externally_visible_help"/> <text name="Only Allow"> - Impedir el acceso a Residentes... + Acceso restringido a cuentas verificadas por: </text> - <check_box label="sin información de pago archivada" name="limit_payment" tool_tip="Impedir el acceso a los residentes no identificados."/> - <check_box label="que no han verificado si son adultos" name="limit_age_verified" tool_tip="Impedir el acceso a residentes que no hayan verificado su edad. Para más información, vea support.secondlife.com"/> + <check_box label="Información de pago aportada" name="limit_payment" tool_tip="Expulsar a los residentes no identificados"/> + <check_box label="Verificación de la edad" name="limit_age_verified" tool_tip="Prohibir el acceso a residentes que no hayan verificado su edad. Para más información, ver [SUPPORT_SITE]."/> <check_box label="Permitir el chat de voz" name="voice_chat_check"/> <button label="?" name="voice_chat_help"/> <check_box label="Permitir el teleporte a cualquier punto" name="allow_direct_teleport"/> diff --git a/indra/newview/skins/default/xui/es/panel_region_texture.xml b/indra/newview/skins/default/xui/es/panel_region_texture.xml index 5540358f97..83c22d20eb 100644 --- a/indra/newview/skins/default/xui/es/panel_region_texture.xml +++ b/indra/newview/skins/default/xui/es/panel_region_texture.xml @@ -48,7 +48,7 @@ Estos valores representan la gama de mezclas para las texturas superiores. </text> <text name="height_text_lbl11"> - Midiendo en metros, el valor BAJA es la altura MÁXIMA de la textura #1, + Midiendo en metros, el valor BAJA es la altura MÁXIMA de la textura #1, y el valor ALTA es la altura MÍNIMA de la textura #4. </text> <text name="height_text_lbl12"> y el valor ALTA es la altura MÍNIMA de la textura #4. diff --git a/indra/newview/skins/default/xui/es/panel_script_ed.xml b/indra/newview/skins/default/xui/es/panel_script_ed.xml new file mode 100644 index 0000000000..c73db729fe --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_script_ed.xml @@ -0,0 +1,43 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="script panel"> + <panel.string name="loading"> + Cargando... + </panel.string> + <panel.string name="can_not_view"> + No puedes ver ni editar este script. Ha sido configurado como "no copiable". Necesitas todos los permisos para ver o editar un script que está dentro de un objeto. + </panel.string> + <panel.string name="public_objects_can_not_run"> + Los objetos públicos no pueden ejecutar scripts + </panel.string> + <panel.string name="script_running"> + Ejecutándose + </panel.string> + <panel.string name="Title"> + Script: [NAME] + </panel.string> + <text_editor name="Script Editor"> + Cargando... + </text_editor> + <button label="Guardar" label_selected="Guardar" name="Save_btn"/> + <combo_box label="Insertar..." name="Insert..."/> + <menu_bar name="script_menu"> + <menu label="Archivo" name="File"> + <menu_item_call label="Guardar" name="Save"/> + <menu_item_call label="Deshacer todos los cambios" name="Revert All Changes"/> + </menu> + <menu label="Editar" name="Edit"> + <menu_item_call label="Deshacer" name="Undo"/> + <menu_item_call label="Rehacer" name="Redo"/> + <menu_item_call label="Cortar" name="Cut"/> + <menu_item_call label="Copiar" name="Copy"/> + <menu_item_call label="Pegar" name="Paste"/> + <menu_item_call label="Seleccionar todo" name="Select All"/> + <menu_item_call label="Deseleccionar" name="Deselect"/> + <menu_item_call label="Buscar / Reemplazar..." name="Search / Replace..."/> + </menu> + <menu label="Ayuda" name="Help"> + <menu_item_call label="Ayuda..." name="Help..."/> + <menu_item_call label="Ayuda de palabras clave..." name="Keyword Help..."/> + </menu> + </menu_bar> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_side_tray.xml b/indra/newview/skins/default/xui/es/panel_side_tray.xml new file mode 100644 index 0000000000..1222f620f1 --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_side_tray.xml @@ -0,0 +1,26 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<!-- Side tray cannot show background because it is always + partially on screen to hold tab buttons. --> +<side_tray name="sidebar"> + <sidetray_tab description="Base." name="sidebar_home" tab_title="Home"> + <panel label="base" name="panel_home"/> + </sidetray_tab> + <sidetray_tab description="Encuentra a tus amigos, contactos y gente que esté cerca." name="sidebar_people" tab_title="People"> + <panel_container name="panel_container"> + <panel label="Información del grupo" name="panel_group_info_sidetray"/> + <panel label="Residentes y objetos ignorados" name="panel_block_list_sidetray"/> + </panel_container> + </sidetray_tab> + <sidetray_tab description="Encontrar lugares donde ir o que ya visitaste." label="Lugares" name="sidebar_places" tab_title="Places"> + <panel label="Lugares" name="panel_places"/> + </sidetray_tab> + <sidetray_tab description="Edita tu perfil público y tus destacados." name="sidebar_me" tab_title="My Profile"> + <panel label="Yo" name="panel_me"/> + </sidetray_tab> + <sidetray_tab description="Cambia tu apariencia y tu 'look' actual." name="sidebar_appearance" tab_title="My Appearance"> + <panel label="Modificar la apariencia" name="sidepanel_appearance"/> + </sidetray_tab> + <sidetray_tab description="Mira tu inventario." name="sidebar_inventory" tab_title="My Inventory"> + <panel label="Modificar el inventario" name="sidepanel_inventory"/> + </sidetray_tab> +</side_tray> diff --git a/indra/newview/skins/default/xui/es/panel_side_tray_tab_caption.xml b/indra/newview/skins/default/xui/es/panel_side_tray_tab_caption.xml new file mode 100644 index 0000000000..3633b0ccaa --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_side_tray_tab_caption.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="sidetray_tab_panel"> + <text name="sidetray_tab_title" value="Panel lateral"/> + <button name="show_help" tool_tip="Ver ayuda"/> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_stand_stop_flying.xml b/indra/newview/skins/default/xui/es/panel_stand_stop_flying.xml new file mode 100644 index 0000000000..350aec9c69 --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_stand_stop_flying.xml @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<!-- Width and height of this panel should be synchronized with "panel_modes" in the floater_moveview.xml--> +<panel name="panel_stand_stop_flying"> + <button label="Levantarme" name="stand_btn" tool_tip="Pulsa aquí para levantarte."/> + <button label="Dejar de volar" name="stop_fly_btn" tool_tip="Dejar de volar"/> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_status_bar.xml b/indra/newview/skins/default/xui/es/panel_status_bar.xml index 31cde7d237..a3443aee25 100644 --- a/indra/newview/skins/default/xui/es/panel_status_bar.xml +++ b/indra/newview/skins/default/xui/es/panel_status_bar.xml @@ -1,38 +1,29 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <panel name="status"> - <text name="ParcelNameText" tool_tip="Nombre de la parcela en la que está. Pulse Acerca del terreno."> - el nombre de la parcela va aquí - </text> - <text name="BalanceText" tool_tip="Saldo de su cuenta"> - Cargando... - </text> - <button label="" label_selected="" name="buycurrency" tool_tip="Comprar dinero"/> - <text name="TimeText" tool_tip="Hora actual (costa oeste EE.UU.)"> - 12:00 AM - </text> - <string name="StatBarDaysOfWeek"> + <panel.string name="StatBarDaysOfWeek"> Domingo:Lunes:Martes:Miércoles:Jueves:Viernes:Sábado - </string> - <string name="StatBarMonthsOfYear"> + </panel.string> + <panel.string name="StatBarMonthsOfYear"> Enero:Febrero:Marzo:Abril:Mayo:Junio:Julio:Agosto:Septiembre:Octubre:Noviembre:Diciembre - </string> - <button label="" label_selected="" name="scriptout" tool_tip="Errores y alertas de los scripts"/> - <button label="" label_selected="" name="health" tool_tip="Vida"/> - <text name="HealthText" tool_tip="Vida"> - 100% - </text> - <button label="" label_selected="" name="no_fly" tool_tip="Prohibido volar"/> - <button label="" label_selected="" name="no_build" tool_tip="No se permite Construir/Renderizar"/> - <button label="" label_selected="" name="no_scripts" tool_tip="No se permiten los scripts"/> - <button label="" label_selected="" name="restrictpush" tool_tip="Sin 'empujones'"/> - <button label="" label_selected="" name="status_no_voice" tool_tip="Aquí no está disponible la voz"/> - <button label="" label_selected="" name="buyland" tool_tip="Comprar esta parcela"/> - <line_editor label="Buscar" name="search_editor" tool_tip="Buscar en [SECOND_LIFE]"/> - <button label="" label_selected="" name="search_btn" tool_tip="Buscar en [SECOND_LIFE]"/> - <string name="packet_loss_tooltip"> + </panel.string> + <panel.string name="packet_loss_tooltip"> Pérdida de paquetes - </string> - <string name="bandwidth_tooltip"> + </panel.string> + <panel.string name="bandwidth_tooltip"> Ancho de banda - </string> + </panel.string> + <panel.string name="time"> + [hour12, datetime, slt]:[min, datetime, slt] [ampm, datetime, slt] [timezone,datetime, slt] + </panel.string> + <panel.string name="timeTooltip"> + [weekday, datetime, slt], [day, datetime, slt] [month, datetime, slt] [year, datetime, slt] + </panel.string> + <panel.string name="buycurrencylabel"> + [AMT] L$ + </panel.string> + <button label="" label_selected="" name="buycurrency" tool_tip="Mi saldo: pulsa para comprar más L$"/> + <text name="TimeText" tool_tip="Hora actual (Pacífico)"> + 12:00 AM + </text> + <button name="volume_btn" tool_tip="Control general del volumen"/> </panel> diff --git a/indra/newview/skins/default/xui/es/panel_teleport_history.xml b/indra/newview/skins/default/xui/es/panel_teleport_history.xml new file mode 100644 index 0000000000..ff7cd5e723 --- /dev/null +++ b/indra/newview/skins/default/xui/es/panel_teleport_history.xml @@ -0,0 +1,14 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="Teleport History"> + <accordion name="history_accordion"> + <accordion_tab name="today" title="Hoy"/> + <accordion_tab name="yesterday" title="Ayer"/> + <accordion_tab name="2_days_ago" title="Hace 2 días"/> + <accordion_tab name="3_days_ago" title="Hace 3 días"/> + <accordion_tab name="4_days_ago" title="Hace 4 días"/> + <accordion_tab name="5_days_ago" title="Hace 5 días"/> + <accordion_tab name="6_days_and_older" title="6 y más días"/> + <accordion_tab name="1_month_and_older" title="1 mes y más"/> + <accordion_tab name="6_months_and_older" title="6 y más meses"/> + </accordion> +</panel> diff --git a/indra/newview/skins/default/xui/es/panel_world_map.xml b/indra/newview/skins/default/xui/es/panel_world_map.xml index 7cb4009422..77cec6b60b 100644 --- a/indra/newview/skins/default/xui/es/panel_world_map.xml +++ b/indra/newview/skins/default/xui/es/panel_world_map.xml @@ -1,5 +1,11 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <panel name="world_map"> + <panel.string name="Loading"> + Cargando... + </panel.string> + <panel.string name="InvalidLocation"> + Localización inválida + </panel.string> <panel.string name="world_map_north"> N </panel.string> diff --git a/indra/newview/skins/default/xui/es/role_actions.xml b/indra/newview/skins/default/xui/es/role_actions.xml index da9a820eb8..14df3d67ca 100644 --- a/indra/newview/skins/default/xui/es/role_actions.xml +++ b/indra/newview/skins/default/xui/es/role_actions.xml @@ -1,199 +1,76 @@ -<?xml version="1.0" encoding="utf-8" standalone="yes" ?> +<?xml version="1.0" encoding="utf-8" standalone="yes"?> <role_actions> - <action_set - description="Estas capacidades incluyen poderes para añadir o quitar miembros del grupo, y para pemitir que se sumen nuevos miembros sin necesidad de invitación." - name="Membership"> - <action description="Invitar personas al grupo" - longdescription="Invitar a personas al grupo usando el botón 'Invitar a un nuevo miembro' en Miembros y Roles > subpestaña Miembros." - name="member invite" value="1" /> - <action description="Expulsar a miembros del grupo" - longdescription="Expulsar a miembros del grupo usando el botón 'Expulsar del grupo' en Miembros y Roles > subpestaña Miembros. Un propietario puede expulsar a cualquiera, excepto a otro propietario. Si usted no es un propietario, un miembro del grupo puede expulsarle sólo si tiene concedida tal capacidad específica. Para quitar capacidades a los miembros, usted debe tener la de 'Quitar capacidades a miembros'." - name="member eject" value="2" /> - <action - description="Activar/desactivar 'Inscripción libre' y cambiar 'Cuota de inscripción'" - longdescription="Activar/desactivar 'Inscripción libre' para permitir o no que se unan sin invitación nuevos miembros, y cambiar la 'Cuota de inscripción' en la sección Preferencias del grupo de la pestaña General." - name="member options" value="3" /> + <action_set description="Estas capacidades incluyen poderes para añadir o quitar miembros del grupo, y para pemitir que se sumen nuevos miembros sin necesidad de invitación." name="Membership"> + <action description="Invitar personas al grupo" longdescription="Invitar a gente a este grupo usando el botón 'Invitar' en la sección Roles > pestaña Miembros." name="member invite" value="1"/> + <action description="Expulsar a miembros del grupo" longdescription="Expulsar a miembros de este grupo usando el botón 'Expulsar' en la sección Roles > pestaña Miembros. Un propietario puede expulsar a cualquiera, excepto a otro propietario. Si no eres un propietario, un miembro puede ser expulsado única y exclusivamente si está en el rol de Cualquiera y NO en otros roles. Para quitar roles a los miembros, tienes que tener la capacidad de 'Quitar roles a los miembros'." name="member eject" value="2"/> + <action description="Cambiar 'Inscripción abierta' y 'Cuota de inscripción'" longdescription="En la sección General, cambiar la 'Inscripción abierta' -que permite entrar al grupo sin invitación- y la 'Cuota de inscripción'." name="member options" value="3"/> </action_set> - <action_set - description="Estas habilidades incluyen el poder añadir, quitar y cambiar roles, asignarlos a miembros, y darles capacidades." - name="Roles"> - <action description="Crear nuevos roles" - longdescription="Crear nuevos roles en Miembros y Roles > pestaña Roles > botón Crear un rol nuevo." - name="role create" value="4" /> - <action description="Borrar roles" - longdescription="Borrar roles en Miembros y Roles > pestaña Roles > botón Eliminar el rol." - name="role delete" value="5" /> - <action description="Cambiar nombres de roles, títulos y descripciones" - longdescription="Cambiar el nombre del rol que elija, su etiqueta y descripción en la parte media de la pestaña Miembros y Roles." - name="role properties" value="6" /> - <action description="Designar miembros para el rol del asignador" - longdescription="Designar miembros para un rol en la sección Roles asignados de la pestaña Miembros y Roles > subpestaña Miembros. Un miembro con este poder sólo puede asignar a otros el rol que él posee." - name="role assign member limited" value="7" /> - <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 > 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úrese de lo que está haciendo antes de otorgar esta capacidad." - name="role assign member" value="8" /> - <action description="Quitar capacidades a los miembros" - longdescription="Quitar capacidades a los miembros en la sección Capacidades asignadas de Miembros y Roles > subpestaña Roles. No se pueden quitar a los Propietarios." - name="role remove member" value="9" /> - <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 > 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úrese de lo que está haciendo antes de otorgar esta capacidad." - name="role change actions" value="10" /> + <action_set description="Estas habilidades incluyen el poder añadir, quitar y cambiar roles, asignarlos a miembros, y darles capacidades." name="Roles"> + <action description="Crear nuevos roles" longdescription="Crear roles nuevos en la sección Roles > pestaña Roles." name="role create" value="4"/> + <action description="Borrar roles" longdescription="Borrar roles en la sección Roles > pestaña Roles." name="role delete" value="5"/> + <action description="Cambiar el nombre, la etiqueta y la descripción de los roles, así como qué miembros se muestran públicamente en ese rol" longdescription="Cambiar el nombre, la etiqueta y la descripción de los roles, así como qué miembros se muestran públicamente en ese rol. Se hace seleccionando el rol, dentro de la sección Roles > pestaña Roles." name="role properties" value="6"/> + <action description="Designar miembros para el rol del asignador" longdescription="Añadir miembros a los roles en la lista de Roles asignados (sección Roles > pestaña Miembros). Un miembro con esta capacidad sólo puede añadir miembros a los roles que tenga él mismo." name="role assign member limited" value="7"/> + <action description="Designar miembros para cualquier rol" longdescription="Designar miembros para cualquier rol en la lista de Roles asignados (sección Roles > pestaña Miembros). *AVISO* Todos los miembros que tengan un rol con esta capacidad podrán asignarse a sí mismos -y a otros miembros que no sean los propietarios- 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" value="8"/> + <action description="Quitar capacidades a los miembros" longdescription="Quitar miembros de los roles en la lista de roles asignados (sección Roles > pestaña Miembros). No se puede quitar a los Propietarios." name="role remove member" value="9"/> + <action description="Añadir o quitar capacidades a los roles" longdescription="Asignar y quitar capacidades a cada rol en la lista de capacidades permitidas (sección Roles > pestaña Roles). *AVISO* Todos los miembros que tengan un rol con esta capacidad podrán asignarse a sí mismos -y a otros miembros que no sean los propietarios- todas las capacidades. 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" value="10"/> </action_set> - <action_set - description="Estas capacidades incluyen poderes para modificar la identidad del grupo, como su visibilidad pública, su carta o su emblema." - name="Group Identity"> - <action - description="Cambiar la carta, emblema, 'Mostrar en la búsqueda', y qué miembros serán visibles en la información del grupo" - longdescription="Cambiar la carta, emblema, 'Mostrar en la búsqueda', y qué miembros serán visibles en la información del grupo de la pestaña General." - name="group change identity" value="11" /> + <action_set description="Estas capacidades incluyen poderes para modificar la identidad del grupo, como su visibilidad pública, su carta o su emblema." name="Group Identity"> + <action description="Cambiar la carta, emblema, 'Mostrar en la búsqueda', y qué miembros serán visibles en la información del grupo" longdescription="Cambia la carta, emblema y 'Mostrar en la búsqueda'. Se hace en la sección General." name="group change identity" value="11"/> </action_set> - <action_set - description="Estas capacidades incluyen poderes para transferir, modificar y vender terrenos del grupo. Vea el menú Mundo > Acerca del terreno, o pulse con el botón derecho en el terreno y seleccione 'Acerca del terreno...', o pulse en la información de la parcela en la barra superior del menú." - name="Parcel Management"> - <action description="Transferir y comprar terreno para el grupo" - longdescription="Transferir y comprar terreno para el grupo. Se hace en Acerca del terreno > pestaña General." - name="land deed" value="12" /> - <action description="Abandonar al terreno a favor de Governor Linden" - longdescription="Abandonar al terreno a favor de Governor Linden. *AVISO* Todos los miembros con esta capacidad pueden abandonar terreno perteneciente al grupo en Acerca del terreno > pestaña General, devolviendo la posesión a Linden ¡gratuitamente! Asegúrese de lo que está haciendo antes de otorgar esta capacidad." - name="land release" value="13" /> - <action description="Vender terreno" - longdescription="Vender terreno. *AVISO* Todos los miembros con esta capacidad pueden vender terreno perteneciente al grupo -¡en la forma en que quieran!- en Acerca del terreno > pestaña General. Asegúrese de lo que está haciendo antes de otorgar esta capacidad." - name="land set sale info" value="14" /> - <action description="Dividir y unir parcelas" - longdescription="Dividir y unir parcelas. Se hace pulsando con el botón derecho en el terreno, 'Modificar el terreno', y dibujando en el terreno con el ratón lo que se quiere seleccionar. Para dividir, elija la parte que quiere separar y pulse 'Subdividir...'. Para unir, seleccione dos o más parcelas contiguas y pulse 'Unir...'. " - name="land divide join" value="15" /> + <action_set description="Estas capacidades incluyen poder para transferir, modificar y vender terrenos del grupo. Para ver la ventana Acerca del terreno, pulsa con el botón derecho en el terreno y selecciona 'Acerca del terreno', o pulsa en el signo 'i' de la barra de navegación." name="Parcel Management"> + <action description="Transferir y comprar terreno para el grupo" longdescription="Transferir y comprar terreno para el grupo. Se hace en Acerca del terreno > pestaña General." name="land deed" value="12"/> + <action description="Abandonar al terreno a favor de Governor Linden" longdescription="Abandonar al terreno a favor de Governor Linden. *AVISO* Todos los miembros con esta capacidad pueden abandonar terreno perteneciente al grupo en Acerca del terreno > pestaña General, devolviendo la posesión a Linden ¡gratuitamente! Asegúrese de lo que está haciendo antes de otorgar esta capacidad." name="land release" value="13"/> + <action description="Vender terreno" longdescription="Vender terreno. *AVISO* Todos los miembros con esta capacidad pueden vender terreno perteneciente al grupo -¡en la forma en que quieran!- en Acerca del terreno > pestaña General. Asegúrese de lo que está haciendo antes de otorgar esta capacidad." name="land set sale info" value="14"/> + <action description="Dividir y unir parcelas" longdescription="Dividir y unir parcelas. Se hace pulsando con el botón derecho en el terreno, 'Modificar el terreno', y dibujando en el terreno con el ratón lo que se quiere seleccionar. Para dividir, elige la parte que quieres separar y pulsa 'Dividir'. Para unir, selecciona dos o más parcelas contiguas y pulsa 'Unir'." name="land divide join" value="15"/> </action_set> - <action_set - description="Estas capacidades incluyen poder cambiar el nombre de la parcela y su configuración, así como si se muestra en Buscar y las opciones del punto de llegada y el de teleporte." - name="Parcel Identity"> - <action - description="Activar/desactivar 'Mostrar en Buscar' y el definir la categoría" - longdescription="Activar/desactivar el 'Mostrar en Buscar' y en que categoría se mostrará en Acerca del terreno > pestaña Opciones." - name="land find places" value="17" /> - <action - description="Cambiar el nombre de la parcela, la descripción, y la configuración de 'Mostrar en Buscar'" - longdescription="Cambiar el nombre y descripción de la parcela, y la configuración de 'Mostrar en Buscar'. Se hace en Acerca del terreno > pestaña Opciones." - name="land change identity" value="18" /> - <action description="Definir los puntos de llegada y teleporte" - longdescription="En una parcela perteneciente al grupo, los miembros con un rol que tenga esta capacidad pueden precisar el punto de llegada o el de teleporte. Se hace en Acerca del terreno > pestaña Opciones." - name="land set landing point" value="19" /> + <action_set description="Estas capacidades incluyen poder cambiar el nombre de la parcela y su configuración, así como si se muestra en Buscar y las opciones del punto de llegada y el de teleporte." name="Parcel Identity"> + <action description="Cambiar 'Mostrar el sitio en Buscar' y configurar la categoría" longdescription="Cambia 'Mostrar el sitio en Buscar' y el configurar la categoría de una parcela en Acerca del terreno > pestaña Opciones." name="land find places" value="17"/> + <action description="Cambiar el nombre de la parcela, su descripción, y la configuración de 'Mostrar el sitio en Buscar'" longdescription="Cambia el nombre de la parcela, su descripción, y la configuración de 'Mostrar el sitio en Buscar'. Se hace en Acerca del terreno > pestaña Opciones." name="land change identity" value="18"/> + <action description="Definir los puntos de llegada y teleporte" longdescription="En una parcela perteneciente al grupo, los miembros con un rol que tenga esta capacidad pueden precisar el punto de llegada o el de teleporte. Se hace en Acerca del terreno > pestaña Opciones." name="land set landing point" value="19"/> </action_set> - <action_set - description="Estas capacidades incluyen poderes que afectan a las opciones de la parcela, como 'Crear objetos', 'Editar el terreno' y las configuraciones de la música y los media." - name="Parcel Settings"> - <action description="Cambiar música y configuraciones de los media" - longdescription="Cambiar la música en streaming y las configuraciones de vídeo en Acerca del terreno > pestaña Media." - name="land change media" value="20" /> - <action description="Activar/desactivar 'Editar el terreno'" - longdescription="Activar/desactivar 'Editar el terreno'. *AVISO* Acerca del terreno > pestaña Opciones > Editar el terreno, permite a cualquiera alterar la forma de su terreno y sustituir y mover plantas Linden. Asegúrese de lo que está haciendo antes de otorgar esta capacidad. La edición del terreno se activada/desactiva en Acerca del terreno > pestaña Opciones." - name="land edit" value="21" /> - <action - description="Activar/desactivar varios ítems de Acerca del terreno > Opciones" - longdescription="Activar/desactivar en un terreno del grupo los ítems de Acerca del terreno > pestaña Opciones: 'Seguro (sin daño)', 'Volar', y permitir a otros residentes: 'Crear objetos', 'Editar el terreno', 'Crear hitos', y 'Ejecutar scripts'." - name="land options" value="22" /> + <action_set description="Estas capacidades incluyen poderes que afectan a las opciones de la parcela, como 'Crear objetos', 'Editar el terreno' y las configuraciones de la música y los media." name="Parcel Settings"> + <action description="Cambiar música y configuraciones de los media" longdescription="Cambiar la música en streaming y las configuraciones de vídeo en Acerca del terreno > pestaña Media." name="land change media" value="20"/> + <action description="Activar/desactivar 'Editar el terreno'" longdescription="Activar/desactivar 'Editar el terreno'. *AVISO* Acerca del terreno > pestaña Opciones > Editar el terreno, permite a cualquiera alterar la forma de su terreno y sustituir y mover plantas Linden. Asegúrese de lo que está haciendo antes de otorgar esta capacidad. La edición del terreno se activada/desactiva en Acerca del terreno > pestaña Opciones." name="land edit" value="21"/> + <action description="Activar/desactivar varios ítems de Acerca del terreno > Opciones" longdescription="Cambia 'Seguro (sin daño)', 'Volar', y el permitir a otros residentes en terrenos propiedad del grupo 'Modificar el terreno', 'Construir', 'Crear hitos' y 'Ejecutat scripts', como aparece en Acerca del terreno > pestaña Opciones." name="land options" value="22"/> </action_set> - <action_set - description="Estas capacidades incluyen poderes que permiten a los miembros rebasar las restricciones de parcelas pertenecientes al grupo." - name="Parcel Powers"> - <action description="Permitir siempre 'Editar el terreno'" - longdescription="Quien tenga un rol con esta capacidad puede editar el terreno de una parcela perteneciente al grupo aunque eso esté desactivado en Acerca del terreno > pestaña Opciones." - name="land allow edit land" value="23" /> - <action description="Permitir siempre 'Volar'" - longdescription="Quien tenga un rol con esta capacidad puede volar sobre una parcela perteneciente al grupo aunque eso esté desactivado en Acerca del terreno > pestaña Opciones." - name="land allow fly" value="24" /> - <action description="Permitir siempre 'Crear objetos'" - longdescription="Quien tenga un rol con esta capacidad puede crear objetos en una parcela perteneciente al grupo aunque eso esté desactivado en Acerca del terreno > pestaña Opciones." - name="land allow create" value="25" /> - <action description="Permitir siempre 'Crear hitos'" - longdescription="Quien tenga un rol con esta capacidad puede crear un hito en una parcela perteneciente al grupo aunque eso esté desactivado en Acerca del terreno > pestaña Opciones." - name="land allow landmark" value="26" /> - <action description="Permitir 'Fijar mi Base aquí' en el terreno del grupo" - longdescription="Quien tenga un rol con esta capacidad puede usar el menú Mundo > Fijar mi Base aquí en una parcela transferida al grupo." - name="land allow set home" value="28" /> + <action_set description="Estas capacidades incluyen poderes que permiten a los miembros rebasar las restricciones de parcelas pertenecientes al grupo." name="Parcel Powers"> + <action description="Permitir siempre 'Editar el terreno'" longdescription="Quien tenga un rol con esta capacidad puede editar el terreno de una parcela perteneciente al grupo aunque eso esté desactivado en Acerca del terreno > pestaña Opciones." name="land allow edit land" value="23"/> + <action description="Permitir siempre 'Volar'" longdescription="Quien tenga un rol con esta capacidad puede volar sobre una parcela perteneciente al grupo aunque eso esté desactivado en Acerca del terreno > pestaña Opciones." name="land allow fly" value="24"/> + <action description="Permitir siempre 'Crear objetos'" longdescription="Quien tenga un rol con esta capacidad puede crear objetos en una parcela perteneciente al grupo aunque eso esté desactivado en Acerca del terreno > pestaña Opciones." name="land allow create" value="25"/> + <action description="Permitir siempre 'Crear hitos'" longdescription="Quien tenga un rol con esta capacidad puede crear un hito en una parcela perteneciente al grupo aunque eso esté desactivado en Acerca del terreno > pestaña Opciones." name="land allow landmark" value="26"/> + <action description="Permitir 'Fijar mi Base aquí' en el terreno del grupo" longdescription="Los miembros que tengan un rol con esta capacidad pueden usar el menú Mundo > Hitos > Fijar aquí mi Base en una parcela transferida al grupo." name="land allow set home" value="28"/> </action_set> - <action_set - description="Estas capacidades incluyen poderes para permitir o restringir el acceso a parcelas pertenecientes al grupo, incluyendo el congelar y expulsar a residentes." - name="Parcel Access"> - <action description="Administrar las listas de acceso a la parcela" - longdescription="Administre las listas de acceso a la parcela en Acerca del terreno > pestaña Acceso." - name="land manage allowed" value="29" /> - <action description="Administrar la lista de residentes con el acceso prohibido" - longdescription="Administrar la lista de residentes con el acceso prohibido a la parcela en Acerca del terreno > pestaña Acceso." - name="land manage banned" value="30" /> - <action description="Cambiar en las configuraciones de parcela el 'Vender pases a...'" - longdescription="Cambiar la configuración de 'Vender pases a...' en Acerca del terreno > pestaña Acceso." - name="land manage passes" value="31" /> - <action description="Expulsar y congelar residentes en las parcelas" - longdescription="Quien tenga un rol con esta capacidad puede actuar frente a un residente indeseado en una parcela del grupo pulsando con el botón derecho sobre él, Más > y seleccionando 'Expulsar...' o 'Congelar...'." - name="land admin" value="32" /> + <action_set description="Estas capacidades incluyen poderes para permitir o restringir el acceso a parcelas pertenecientes al grupo, incluyendo el congelar y expulsar a residentes." name="Parcel Access"> + <action description="Administrar las listas de acceso a la parcela" longdescription="Administre las listas de acceso a la parcela en Acerca del terreno > pestaña Acceso." name="land manage allowed" value="29"/> + <action description="Administrar la lista de residentes con el acceso prohibido" longdescription="Manejar la lista de expulsados en Acerca del terreno > pestaña Acceso." name="land manage banned" value="30"/> + <action description="Cambiar en la parcela la configuración de 'Vender pases a'" longdescription="Cambia en la parcela la configuración de 'Vender pases a' (Acerca del terreno > pestaña Acceso)." name="land manage passes" value="31"/> + <action description="Expulsar y congelar residentes en las parcelas" longdescription="En una parcela propiedad del grupo, los miembros cuyo rol tengan esta capacidad pueden manejar a residentes no deseados pulsándoles con el botón derecho del ratón para 'Expulsar' o 'Congelar'." name="land admin" value="32"/> </action_set> - <action_set - description="Estas capacidades incluyen poderes que permitan a los miembros devolver objetos y poner y mover plantas Linden. Es útil para que miembros organicen el paisaje, pero debe ser usado con cuidado, ya que no se pueden deshacer esos cambios en los objetos." - name="Parcel Content"> - <action description="Devolver objetos que pertenecen al grupo" - longdescription="Devolver objetos pertenecientes al grupo en parcelas de su propiedad en Acerca del terreno > pestaña Objetos." - name="land return group owned" value="48" /> - <action description="Devolver objetos definidos para el grupo" - longdescription="Devuelva objetos en parcelas pertenecientes al grupo en Acerca del terreno > pestaña Objetos." - name="land return group set" value="33" /> - <action description="Devolver objetos que no pertenecen al grupo" - longdescription="Devuolver objetos que estén en una parcela del grupo y pertenezcan a alguien que no sea del grupo en Acerca del terreno > pestaña Objetos." - name="land return non group" value="34" /> - <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 's Biblioteca de su Inventario > carpeta Objetos, o pueden crearse con el botón Construir." - name="land gardening" value="35" /> + <action_set description="Estas capacidades incluyen poderes que permitan a los miembros devolver objetos y poner y mover plantas Linden. Es útil para que miembros organicen el paisaje, pero debe ser usado con cuidado, ya que no se pueden deshacer esos cambios en los objetos." name="Parcel Content"> + <action description="Devolver objetos que pertenecen al grupo" longdescription="Devolver objetos pertenecientes al grupo en parcelas de su propiedad en Acerca del terreno > pestaña Objetos." name="land return group owned" value="48"/> + <action description="Devolver objetos definidos para el grupo" longdescription="Devuelva objetos en parcelas pertenecientes al grupo en Acerca del terreno > pestaña Objetos." name="land return group set" value="33"/> + <action description="Devolver objetos que no pertenecen al grupo" longdescription="Devuolver objetos que estén en una parcela del grupo y pertenezcan a alguien que no sea del grupo en Acerca del terreno > pestaña Objetos." name="land return non group" value="34"/> + <action description="Modificar el paisaje usando plantas Linden" longdescription="Capacidad de poner y mover árboles, plantas y arbustos Linden. Estos ítems están en la Biblioteca de tu inventario > carpeta Objetos, o pueden construirse con el menú Construir." name="land gardening" value="35"/> </action_set> - <action_set - description="Estas capacidades incluyen poderes para tranferir, modificar y vender objetos pertenecientes al grupo. Estos cambios se hacen en la pestaña General de la herramienta de edición. Para verlo, pulse en un objeto con el botón derecho y elija Editar. " - name="Object Management"> - <action description="Transferir objetos al grupo" - longdescription="Transferir objetos al grupo en Editar > pestaña General." - name="object deed" value="36" /> - <action description="Manipular (mover, copiar, y modificar) objetos del grupo" - longdescription="Manipular (mover, copiar, y modificar) objetos pertenecientes al grupo en Editar > pestaña General." - name="object manipulate" value="38" /> - <action description="Vender objetos pertenecientes al grupo" - longdescription="Poner a la venta objetos pertenecientes al grupo para venta en Editar > pestaña General." - name="object set sale" value="39" /> + <action_set description="Estas capacidades incluyen poder transferir, modificar y vender objetos propiedad del grupo. Estos cambios se hacen en las Herramientas de construcción > pestaña General. Pulsa un objeto con el botón derecho del ratón y edítalo para ver sus configuraciones." name="Object Management"> + <action description="Transferir objetos al grupo" longdescription="Transferir objetos al grupo en las Herramientas de construcción > pestaña General." name="object deed" value="36"/> + <action description="Manipular (mover, copiar, y modificar) objetos del grupo" longdescription="Mover, copiar y modificar objetos pertenecientes al grupo en las Herramientas de construcción > pestaña General." name="object manipulate" value="38"/> + <action description="Vender objetos pertenecientes al grupo" longdescription="Poner a la venta objetos pertenecientes al grupo en las Herramientas de construcción > pestaña General." name="object set sale" value="39"/> </action_set> - <action_set - description="Estas habilidades incluyen poderes para que los miembros paguen deudas del grupo o reciban sus dividendos, y para limitar el acceso al historial de la cuenta del grupo." - name="Accounting"> - <action description="Pagar deudas y recibir dividendos del grupo" - longdescription="Quien tenga un rol con esta capacidad, automáticamente pagará deudas del grupo y recibirá sus dividendos. Esto significa que recibirá una parte de las ventas de terreno de grupo, y que contribuirá a cosas como, por ejemplo, las cuotas por posesión de terreno. " - name="accounting accountable" value="40" /> + <action_set description="Estas habilidades incluyen poderes para que los miembros paguen deudas del grupo o reciban sus dividendos, y para limitar el acceso al historial de la cuenta del grupo." name="Accounting"> + <action description="Pagar deudas y recibir dividendos del grupo" longdescription="Quien tenga un rol con esta capacidad, automáticamente pagará deudas del grupo y recibirá sus dividendos. Esto significa que recibirá una parte de las ventas de terreno de grupo, y que contribuirá a cosas como, por ejemplo, las cuotas por posesión de terreno. " name="accounting accountable" value="40"/> </action_set> - <action_set - description="Estas habilidades incluyen poderes para enviar, recibir y ver avisos de grupo." - name="Notices"> - <action description="Enviar aviso" - longdescription="Quien tenga un rol con esta capacidad puede enviar avisos en Información del grupo > pestaña Avisos." - name="notices send" value="42" /> - <action description="Recibir avisos nuevos y ver los anteriores" - longdescription="Quien tenga un rol con esta capacidad puede recibir los avisos nuevos, y ver los anteriores en Información del grupo > pestaña Avisos." - name="notices receive" value="43" /> + <action_set description="Estas habilidades incluyen poderes para enviar, recibir y ver avisos de grupo." name="Notices"> + <action description="Enviar aviso" longdescription="Los miembros con un rol que tenga esta capacidad pueden enviar avisos a través de la sección Grupo > Avisos." name="notices send" value="42"/> + <action description="Recibir avisos nuevos y ver los anteriores" longdescription="Los miembros con un rol que tenga esta capacidad pueden recibir Avisos y ver los ya enviados en la sección Grupo > Avisos." name="notices receive" value="43"/> </action_set> - <action_set - description="Estas habilidades incluyen poderes para permitir a los miembros crear propuestas, votarlas, y ver el historial de votaciones." - name="Proposals"> - <action description="Hacer una propuesta" - longdescription="Quien tenga un rol con esta capacidad puede crear propuestas para que sean votadas en Información del grupo > pestaña Propuestas." - name="proposal start" value="44" /> - <action description="Votar en propuestas" - longdescription="Quien tenga un rol con esta capacidad puede votar las propuestas en Información del grupo > pestaña Propuestas." - name="proposal vote" value="45" /> + <action_set description="Estas habilidades incluyen poderes para permitir a los miembros crear propuestas, votarlas, y ver el historial de votaciones." name="Proposals"> + <action description="Hacer una propuesta" longdescription="Quien tenga un rol con esta capacidad puede crear propuestas para que sean votadas en Información del grupo > pestaña Propuestas." name="proposal start" value="44"/> + <action description="Votar en propuestas" longdescription="Quien tenga un rol con esta capacidad puede votar las propuestas en Información del grupo > pestaña Propuestas." name="proposal vote" value="45"/> </action_set> - <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="Abrir chat de grupo" - longdescription="Quien tenga un rol con esta capacidad puede abrir sesiones de chat del grupo, tanto de texto como de voz." - name="join group chat" value="16" /> - <action description="Abrir chat de voz del grupo" - longdescription="Quien tenga un rol con esta capacidad puede abrir sesiones de chat de voz del grupo. NOTA: para acceder al chat de voz debe tenerse la capacidad 'Abrir chat de grupo'." - name="join voice chat" value="27" /> - <action description="Moderar el chat de grupo" - longdescription="Quien tenga esta capacidad puede controlar el acceso y la participación en los chats de texto y de voz del grupo." - name="moderate group chat" value="37" /> + <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="Abrir chat de grupo" longdescription="Quien tenga un rol con esta capacidad puede abrir sesiones de chat del grupo, tanto de texto como de voz." name="join group chat" value="16"/> + <action description="Abrir chat de voz del grupo" longdescription="Quien tenga un rol con esta capacidad puede abrir sesiones de chat de voz del grupo. NOTA: para acceder al chat de voz debe tenerse la capacidad 'Abrir chat de grupo'." name="join voice chat" value="27"/> + <action description="Moderar el chat de grupo" longdescription="Quien tenga esta capacidad puede controlar el acceso y la participación en los chats de texto y de voz del grupo." name="moderate group chat" value="37"/> </action_set> </role_actions> diff --git a/indra/newview/skins/default/xui/es/sidepanel_appearance.xml b/indra/newview/skins/default/xui/es/sidepanel_appearance.xml new file mode 100644 index 0000000000..da9f6bbcf1 --- /dev/null +++ b/indra/newview/skins/default/xui/es/sidepanel_appearance.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel label="Vestuarios" name="appearance panel"> + <string name="No Outfit" value="No hay vestuario"/> + <filter_editor label="Filtrar los vestuarios" name="Filter"/> + <panel name="bottom_panel"> + <button name="options_gear_btn" tool_tip="Ver más opciones"/> + <button name="newlook_btn" tool_tip="Añadir un vestuario nuevo"/> + <dnd_button name="trash_btn" tool_tip="Quitar el ítem seleccionado"/> + <button label="Ponerme" name="wear_btn"/> + </panel> +</panel> diff --git a/indra/newview/skins/default/xui/es/sidepanel_inventory.xml b/indra/newview/skins/default/xui/es/sidepanel_inventory.xml new file mode 100644 index 0000000000..776b253adc --- /dev/null +++ b/indra/newview/skins/default/xui/es/sidepanel_inventory.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel label="Cosas" name="objects panel"> + <panel label="" name="sidepanel__inventory_panel"> + <panel name="button_panel"> + <button label="Perfil" name="info_btn"/> + <button label="Ponerme" name="wear_btn"/> + <button label="Play" name="play_btn"/> + <button label="Teleporte" name="teleport_btn"/> + </panel> + </panel> +</panel> diff --git a/indra/newview/skins/default/xui/es/sidepanel_item_info.xml b/indra/newview/skins/default/xui/es/sidepanel_item_info.xml new file mode 100644 index 0000000000..e5a132ce1f --- /dev/null +++ b/indra/newview/skins/default/xui/es/sidepanel_item_info.xml @@ -0,0 +1,70 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="item properties" title="Propiedades del ítem del inventario"> + <panel.string name="unknown"> + (desconocidas) + </panel.string> + <panel.string name="public"> + (público) + </panel.string> + <panel.string name="you_can"> + Puedes: + </panel.string> + <panel.string name="owner_can"> + El propietario puede: + </panel.string> + <panel.string name="acquiredDate"> + [wkday,datetime,local][day,datetime,local] [mth,datetime,local] [year,datetime,local][hour,datetime,local]:[min,datetime,local]:[second,datetime,local] + </panel.string> + <text name="title" value="Propiedades del ítem"/> + <panel label=""> + <text name="LabelItemNameTitle"> + Nombre: + </text> + <text name="LabelItemDescTitle"> + Descripción: + </text> + <text name="LabelCreatorTitle"> + Creador: + </text> + <button label="Perfil..." name="BtnCreator"/> + <text name="LabelOwnerTitle"> + Propietario: + </text> + <button label="Perfil..." name="BtnOwner"/> + <text name="LabelAcquiredTitle"> + Obtenido: + </text> + <text name="LabelAcquiredDate"> + Miér., 24 Mayo 2006 12:50:46 + </text> + <text name="OwnerLabel"> + Tú: + </text> + <check_box label="Editar" name="CheckOwnerModify"/> + <check_box label="Copiar" name="CheckOwnerCopy"/> + <check_box label="Revender" name="CheckOwnerTransfer"/> + <text name="AnyoneLabel"> + Cualquiera: + </text> + <check_box label="Copiar" name="CheckEveryoneCopy"/> + <text name="GroupLabel"> + Grupo: + </text> + <check_box label="Compartir" name="CheckShareWithGroup"/> + <text name="NextOwnerLabel"> + El próximo propietario: + </text> + <check_box label="Editar" name="CheckNextOwnerModify"/> + <check_box label="Copiar" name="CheckNextOwnerCopy"/> + <check_box label="Revender" name="CheckNextOwnerTransfer"/> + <check_box label="En venta" name="CheckPurchase"/> + <combo_box name="combobox sale copy"> + <combo_box.item label="Copiar" name="Copy"/> + <combo_box.item label="Original" name="Original"/> + </combo_box> + <spinner label="Precio:" name="Edit Cost"/> + <text name="CurrencySymbol"> + L$ + </text> + </panel> +</panel> diff --git a/indra/newview/skins/default/xui/es/sidepanel_task_info.xml b/indra/newview/skins/default/xui/es/sidepanel_task_info.xml new file mode 100644 index 0000000000..a65a0d5e45 --- /dev/null +++ b/indra/newview/skins/default/xui/es/sidepanel_task_info.xml @@ -0,0 +1,119 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="object properties" title="Propiedades del objeto"> + <panel.string name="text deed continued"> + Transfeir + </panel.string> + <panel.string name="text deed"> + Transfeir + </panel.string> + <panel.string name="text modify info 1"> + Puedes modificar este objeto + </panel.string> + <panel.string name="text modify info 2"> + Puedes modificar estos objetos + </panel.string> + <panel.string name="text modify info 3"> + No puedes modificar este objeto + </panel.string> + <panel.string name="text modify info 4"> + No puedes modificar estos objetos + </panel.string> + <panel.string name="text modify warning"> + Este objeto tiene partes enlazadas + </panel.string> + <panel.string name="Cost Default"> + Precio: L$ + </panel.string> + <panel.string name="Cost Total"> + Precio total: L$ + </panel.string> + <panel.string name="Cost Per Unit"> + Price Per: L$ + </panel.string> + <panel.string name="Cost Mixed"> + Mixed Price + </panel.string> + <panel.string name="Sale Mixed"> + Mixed Sale + </panel.string> + <panel label=""> + <text name="Name:"> + Nombre: + </text> + <text name="Description:"> + Descripción: + </text> + <text name="Creator:"> + Creador: + </text> + <text name="Owner:"> + Propietario: + </text> + <text name="Group:"> + Grupo: + </text> + <button name="button set group" tool_tip="Elige un grupo con el que compartir los permisos de este objeto"/> + <name_box initial_value="Cargando..." name="Group Name Proxy"/> + <button label="Transfeir" label_selected="Transfeir" name="button deed" tool_tip="La transferencia entrega este objeto con los permisos del próximo propietario. Los objetos compartidos por el grupo pueden ser transferidos por un oficial del grupo."/> + <check_box label="Compartir" name="checkbox share with group" tool_tip="Permite que todos los miembros del grupo compartan tus permisos de modificación en este objeto. Debes transferirlo para activar las restricciones según los roles."/> + <text name="label click action"> + Al tocarlo: + </text> + <combo_box name="clickaction"> + <combo_box.item label="Tocarlo (por defecto)" name="Touch/grab(default)"/> + <combo_box.item label="Sentarme en el objeto" name="Sitonobject"/> + <combo_box.item label="Comprar el objeto" name="Buyobject"/> + <combo_box.item label="Pagar al objeto" name="Payobject"/> + <combo_box.item label="Abrir" name="Open"/> + </combo_box> + <check_box label="En venta:" name="checkbox for sale"/> + <combo_box name="sale type"> + <combo_box.item label="Copiarlo" name="Copy"/> + <combo_box.item label="Contenidos" name="Contents"/> + <combo_box.item label="Original" name="Original"/> + </combo_box> + <spinner label="Precio: L$" name="Edit Cost"/> + <check_box label="Mostrar en la búsqueda" name="search_check" tool_tip="Permitir que la gente vea este objetos en los resultados de la búsqueda"/> + <panel name="perms_build"> + <text name="perm_modify"> + Puedes modificar este objeto + </text> + <text name="Anyone can:"> + Cualquiera: + </text> + <check_box label="Moverse" name="checkbox allow everyone move"/> + <check_box label="Copiarlo" name="checkbox allow everyone copy"/> + <text name="Next owner can:"> + Próximo propietario: + </text> + <check_box label="Modificarlo" name="checkbox next owner can modify"/> + <check_box label="Copiarlo" name="checkbox next owner can copy"/> + <check_box label="Transferirlo" name="checkbox next owner can transfer" tool_tip="El próximo propietario puede dar o revender este objeto"/> + <text name="B:"> + B: + </text> + <text name="O:"> + O: + </text> + <text name="G:"> + G: + </text> + <text name="E:"> + E: + </text> + <text name="N:"> + N: + </text> + <text name="F:"> + F: + </text> + </panel> + </panel> + <panel name="button_panel"> + <button label="Abrir" name="open_btn"/> + <button label="Pagar" name="pay_btn"/> + <button label="Comprar" name="buy_btn"/> + <button label="Cancelar" name="cancel_btn"/> + <button label="Guardar" name="save_btn"/> + </panel> +</panel> diff --git a/indra/newview/skins/default/xui/es/strings.xml b/indra/newview/skins/default/xui/es/strings.xml index dc508f7c37..4b96b7f31f 100644 --- a/indra/newview/skins/default/xui/es/strings.xml +++ b/indra/newview/skins/default/xui/es/strings.xml @@ -4,10 +4,21 @@ For example, the strings used in avatar chat bubbles, and strings that are returned from one component and may appear in many places--> <strings> - <string name="create_account_url">http://join.secondlife.com/index.php?lang=es-ES</string> + <string name="SUPPORT_SITE"> + Portal de Soporte de Second Life + </string> + <string name="StartupDetectingHardware"> + Identificando el hardware... + </string> + <string name="StartupLoading"> + Cargando + </string> <string name="LoginInProgress"> Iniciando la sesión. [APP_NAME] debe de aparecer congelado. Por favor, espere. </string> + <string name="LoginInProgressNoFrozen"> + Iniciando la sesión... + </string> <string name="LoginAuthenticating"> Autenticando </string> @@ -26,6 +37,9 @@ <string name="LoginInitializingMultimedia"> Iniciando multimedia... </string> + <string name="LoginInitializingFonts"> + Cargando las fuentes... + </string> <string name="LoginVerifyingCache"> Comprobando los archivos de la caché (puede tardar entre 60 y 90 segundos)... </string> @@ -56,9 +70,15 @@ <string name="LoginDownloadingClothing"> Descargando la ropa... </string> + <string name="LoginFailedNoNetwork"> + Error de red: no se ha podido conectar; por favor, revisa tu conexión a internet. + </string> <string name="Quit"> Salir </string> + <string name="create_account_url"> + http://join.secondlife.com/index.php?lang=es-ES + </string> <string name="AgentLostConnection"> Esta región puede estar teniendo problemas. Por favor, compruebe su conexión a internet. </string> @@ -77,39 +97,9 @@ <string name="TooltipIsGroup"> (Grupo) </string> - <string name="TooltipFlagScript"> - Script - </string> - <string name="TooltipFlagPhysics"> - Propiedades físicas - </string> - <string name="TooltipFlagTouch"> - Tocar - </string> - <string name="TooltipFlagL$"> - L$ - </string> - <string name="TooltipFlagDropInventory"> - Desplegar el inventario - </string> - <string name="TooltipFlagPhantom"> - Inmaterial - </string> - <string name="TooltipFlagTemporary"> - Temporal - </string> - <string name="TooltipFlagRightClickMenu"> - (pulse el botón derecho del ratón para ver el menú) - </string> - <string name="TooltipFreeToCopy"> - Copia gratis - </string> <string name="TooltipForSaleL$"> En venta: [AMOUNT] L$ </string> - <string name="TooltipForSaleMsg"> - En venta: [MESSAGE] - </string> <string name="TooltipFlagGroupBuild"> Construir el grupo </string> @@ -137,6 +127,76 @@ <string name="TooltipMustSingleDrop"> Aquí se puede arrastrar sólo un ítem </string> + <string name="TooltipHttpUrl"> + Pulsa para ver esta página web + </string> + <string name="TooltipSLURL"> + Pulsa para ver la información de este lugar + </string> + <string name="TooltipAgentUrl"> + Pulsa para ver el perfil de este residente + </string> + <string name="TooltipGroupUrl"> + Pulsa para ver la descripción de este grupo + </string> + <string name="TooltipEventUrl"> + Pulsa para ver la descripción de este evento + </string> + <string name="TooltipClassifiedUrl"> + Pulsa para ver este clasificado + </string> + <string name="TooltipParcelUrl"> + Pulsa para ver la descripción de esta parcela + </string> + <string name="TooltipTeleportUrl"> + Pulsa para teleportarte a esta posición + </string> + <string name="TooltipObjectIMUrl"> + Pulsa para ver la descripción de este objeto + </string> + <string name="TooltipMapUrl"> + Pulsa para ver en el mapa esta localización + </string> + <string name="TooltipSLAPP"> + Pulsa para ejecutar el comando secondlife:// + </string> + <string name="CurrentURL" value="URL actual: [CurrentURL]"/> + <string name="SLurlLabelTeleport"> + Teleportarse a + </string> + <string name="SLurlLabelShowOnMap"> + Mostrarla en el mapa + </string> + <string name="BUTTON_CLOSE_DARWIN"> + Cerrar (⌘W) + </string> + <string name="BUTTON_CLOSE_WIN"> + Cerrar (Ctrl+W) + </string> + <string name="BUTTON_RESTORE"> + Maximizar + </string> + <string name="BUTTON_MINIMIZE"> + Minimizar + </string> + <string name="BUTTON_TEAR_OFF"> + Separar la ventana + </string> + <string name="BUTTON_DOCK"> + Fijar + </string> + <string name="BUTTON_UNDOCK"> + Soltar + </string> + <string name="BUTTON_HELP"> + Ver la Ayuda + </string> + <string name="Searching"> + Buscando... + </string> + <string name="NoneFound"> + No se ha encontrado. + </string> <string name="RetrievingData"> Reintentando... </string> @@ -191,8 +251,77 @@ <string name="AssetErrorUnknownStatus"> Estado desconocido </string> - <string name="AvatarEditingApparance"> - (Modificando la apariencia) + <string name="texture"> + la textura + </string> + <string name="sound"> + el sonido + </string> + <string name="calling card"> + la tarjeta de visita + </string> + <string name="landmark"> + el hito + </string> + <string name="legacy script"> + el script antiguo + </string> + <string name="clothing"> + esa ropa + </string> + <string name="object"> + el objeto + </string> + <string name="note card"> + la nota + </string> + <string name="folder"> + la carpeta + </string> + <string name="root"> + la ruta + </string> + <string name="lsl2 script"> + ese script de LSL2 + </string> + <string name="lsl bytecode"> + el código intermedio de LSL + </string> + <string name="tga texture"> + esa textura tga + </string> + <string name="body part"> + esa parte del cuerpo + </string> + <string name="snapshot"> + la foto + </string> + <string name="lost and found"> + Objetos Perdidos + </string> + <string name="targa image"> + esa imagen targa + </string> + <string name="trash"> + la Papelera + </string> + <string name="jpeg image"> + esa imagen jpeg + </string> + <string name="animation"> + la animación + </string> + <string name="gesture"> + el gesto + </string> + <string name="simstate"> + simstate + </string> + <string name="favorite"> + ese favorito + </string> + <string name="symbolic link"> + el enlace </string> <string name="AvatarAway"> Ausente @@ -414,7 +543,19 @@ Cargando... </string> <string name="worldmap_offline"> - Desconectado/a + Sin conexión + </string> + <string name="worldmap_results_none_found"> + No se ha encontrado. + </string> + <string name="Ok"> + OK + </string> + <string name="Premature end of file"> + Fin prematuro del archivo + </string> + <string name="ST_NO_JOINT"> + No se puede encontrar ROOT o JOINT. </string> <string name="whisper"> susurra: @@ -422,6 +563,57 @@ <string name="shout"> grita: </string> + <string name="ringing"> + Conectando al chat de voz... + </string> + <string name="connected"> + Conectado + </string> + <string name="unavailable"> + La voz no está disponible en su localización actual + </string> + <string name="hang_up"> + Desconectado del chat de voz + </string> + <string name="ScriptQuestionCautionChatGranted"> + '[OBJECTNAME]', un objeto propiedad de '[OWNERNAME]', localizado en [REGIONNAME] con la posición [REGIONPOS], ha recibido permiso para: [PERMISSIONS]. + </string> + <string name="ScriptQuestionCautionChatDenied"> + A '[OBJECTNAME]', un objeto propiedad de '[OWNERNAME]', localizado en [REGIONNAME] con la posición [REGIONPOS], se le ha denegado el permiso para: [PERMISSIONS]. + </string> + <string name="ScriptTakeMoney"> + Cogerle a usted dólares Linden (L$) + </string> + <string name="ActOnControlInputs"> + Actuar en sus controles de entrada + </string> + <string name="RemapControlInputs"> + Reconfigurar sus controles de entrada + </string> + <string name="AnimateYourAvatar"> + Ejecutar animaciones en su avatar + </string> + <string name="AttachToYourAvatar"> + Anexarse a su avatar + </string> + <string name="ReleaseOwnership"> + Anular la propiedad y que pase a ser público + </string> + <string name="LinkAndDelink"> + Enlazar y desenlazar de otros objetos + </string> + <string name="AddAndRemoveJoints"> + Añadir y quitar uniones con otros objetos + </string> + <string name="ChangePermissions"> + Cambiar sus permisos + </string> + <string name="TrackYourCamera"> + Seguir su cámara + </string> + <string name="ControlYourCamera"> + Controlar su cámara + </string> <string name="SIM_ACCESS_PG"> 'PG' </string> @@ -440,8 +632,6 @@ <string name="land_type_unknown"> (desconocido) </string> - <string name="covenant_never_modified">Última modificación: (nunca)</string> - <string name="covenant_modified">Última modificación: </string> <string name="all_files"> Todos los archivos </string> @@ -487,28 +677,740 @@ <string name="choose_the_directory"> Elegir directorio </string> - <!-- OSMessageBox messages --> - <string name="MBAlreadyRunning"> - [APP_NAME] ya se está ejecutando. -Busque en la barra de su escritorio una copia minimizada del programa. -Si aun así persiste este mensaje, reinicie su ordenador. + <string name="AvatarSetNotAway"> + Salir del estado ausente </string> - <string name="MBVideoDrvErr"> - No se puede ejecutar [APP_NAME] porque los drivers de su tarjeta de vídeo no están instalados correctamente, o no están actualizados, o son de un hardware no admitido. Por favor, asegúrese de que tiene los últimos drivers para su tarjeta de vídeo, e incluso en ese caso intente reinstalarlos. - -Si sigue recibiendo este mensaje, contacte con el [SUPPORT_SITE]. + <string name="AvatarSetAway"> + Pasar al estado ausente + </string> + <string name="AvatarSetNotBusy"> + Salir del estado ocupado + </string> + <string name="AvatarSetBusy"> + Pasar al estado ocupado + </string> + <string name="shape"> + Forma + </string> + <string name="skin"> + Piel + </string> + <string name="hair"> + Pelo + </string> + <string name="eyes"> + Ojos + </string> + <string name="shirt"> + Camisa + </string> + <string name="pants"> + Pantalón + </string> + <string name="shoes"> + Zapatos + </string> + <string name="socks"> + Calcetines + </string> + <string name="jacket"> + Chaqueta + </string> + <string name="gloves"> + Guantes + </string> + <string name="undershirt"> + Camiseta + </string> + <string name="underpants"> + Ropa interior + </string> + <string name="skirt"> + Falda + </string> + <string name="alpha"> + Alfa + </string> + <string name="tattoo"> + Tatuaje + </string> + <string name="invalid"> + inválido/a + </string> + <string name="next"> + Siguiente + </string> + <string name="ok"> + OK + </string> + <string name="GroupNotifyGroupNotice"> + Aviso de grupo + </string> + <string name="GroupNotifyGroupNotices"> + Avisos del grupo + </string> + <string name="GroupNotifySentBy"> + Enviado por + </string> + <string name="GroupNotifyAttached"> + Adjunto: + </string> + <string name="GroupNotifyViewPastNotices"> + Ver los avisos pasados u optar por dejar de recibir aquí estos mensajes. + </string> + <string name="GroupNotifyOpenAttachment"> + Abrir el adjunto + </string> + <string name="GroupNotifySaveAttachment"> + Guardar el adjunto + </string> + <string name="TeleportOffer"> + Ofrecimiento de teleporte + </string> + <string name="StartUpNotification"> + Llegó [%d] aviso nuevo mientras estabas ausente... + </string> + <string name="StartUpNotifications"> + Llegaron [%d] avisos nuevos mientras estabas ausente... + </string> + <string name="OverflowInfoChannelString"> + Tienes [%d] aviso/s más + </string> + <string name="BodyPartsRightArm"> + Brazo der. + </string> + <string name="BodyPartsHead"> + Cabeza + </string> + <string name="BodyPartsLeftArm"> + Brazo izq. + </string> + <string name="BodyPartsLeftLeg"> + Pierna izq. + </string> + <string name="BodyPartsTorso"> + Torso + </string> + <string name="BodyPartsRightLeg"> + Pierna der. + </string> + <string name="GraphicsQualityLow"> + Bajo + </string> + <string name="GraphicsQualityMid"> + Medio + </string> + <string name="GraphicsQualityHigh"> + Alto + </string> + <string name="LeaveMouselook"> + Pulsa ESC para salir de la vista subjetiva + </string> + <string name="InventoryNoMatchingItems"> + No se han encontrado tales ítems en el inventario. + </string> + <string name="InventoryNoTexture"> + No tienes una copia de esta +textura en tu inventario + </string> + <string name="no_transfer" value="(no transferible)"/> + <string name="no_modify" value="(no modificable)"/> + <string name="no_copy" value="(no copiable)"/> + <string name="worn" value="(puesto)"/> + <string name="link" value="(enlace)"/> + <string name="broken_link" value="(enlace roto)""/> + <string name="LoadingContents"> + Cargando el contenido... + </string> + <string name="NoContents"> + No hay contenido + </string> + <string name="WornOnAttachmentPoint" value="(lo llevas en: [ATTACHMENT_POINT])"/> + <string name="Chat" value="Chat :"/> + <string name="Sound" value="Sonido :"/> + <string name="Wait" value="--- Espera :"/> + <string name="AnimFlagStop" value="Parar la animación:"/> + <string name="AnimFlagStart" value="Empezar la animación:"/> + <string name="Wave" value="Onda"/> + <string name="HelloAvatar" value="¡Hola, avatar!"/> + <string name="ViewAllGestures" value="Ver todos >>"/> + <string name="Animations" value="Animaciones,"/> + <string name="Calling Cards" value="Tarjetas de visita,"/> + <string name="Clothing" value="Ropa,"/> + <string name="Gestures" value="Gestos,"/> + <string name="Landmarks" value="Hitos,"/> + <string name="Notecards" value="Notas,"/> + <string name="Objects" value="Objetos,"/> + <string name="Scripts" value="Scripts,"/> + <string name="Sounds" value="Sonidos,"/> + <string name="Textures" value="Texturas,"/> + <string name="Snapshots" value="Fotos,"/> + <string name="No Filters" value="No"/> + <string name="Since Logoff" value="- Desde la desconexión"/> + <string name="InvFolder My Inventory"> + Mi Inventario + </string> + <string name="InvFolder My Favorites"> + Mis Favoritos + </string> + <string name="InvFolder Library"> + Biblioteca + </string> + <string name="InvFolder Textures"> + Texturas + </string> + <string name="InvFolder Sounds"> + Sonidos + </string> + <string name="InvFolder Calling Cards"> + Tarjetas de visita + </string> + <string name="InvFolder Landmarks"> + Hitos + </string> + <string name="InvFolder Scripts"> + Scripts + </string> + <string name="InvFolder Clothing"> + Ropa + </string> + <string name="InvFolder Objects"> + Objetos + </string> + <string name="InvFolder Notecards"> + Notas + </string> + <string name="InvFolder New Folder"> + Carpeta nueva + </string> + <string name="InvFolder Inventory"> + Inventario + </string> + <string name="InvFolder Uncompressed Images"> + Imágenes sin comprimir + </string> + <string name="InvFolder Body Parts"> + Partes del cuerpo + </string> + <string name="InvFolder Trash"> + la Papelera + </string> + <string name="InvFolder Photo Album"> + Álbum de fotos + </string> + <string name="InvFolder Lost And Found"> + Objetos Perdidos + </string> + <string name="InvFolder Uncompressed Sounds"> + Sonidos sin comprimir + </string> + <string name="InvFolder Animations"> + Animaciones + </string> + <string name="InvFolder Gestures"> + Gestos + </string> + <string name="InvFolder favorite"> + Favoritos + </string> + <string name="InvFolder Current Outfit"> + Vestuario actual + </string> + <string name="InvFolder My Outfits"> + Mis vestuarios + </string> + <string name="InvFolder Friends"> + Amigos + </string> + <string name="InvFolder All"> + Todas + </string> + <string name="Buy"> + Comprar + </string> + <string name="BuyforL$"> + Comprar por L$ + </string> + <string name="Stone"> + Piedra + </string> + <string name="Metal"> + Metal + </string> + <string name="Glass"> + Cristal + </string> + <string name="Wood"> + Madera + </string> + <string name="Flesh"> + Carne + </string> + <string name="Plastic"> + Plástico + </string> + <string name="Rubber"> + Goma + </string> + <string name="Light"> + Claridad + </string> + <string name="KBShift"> + Mayúsculas + </string> + <string name="KBCtrl"> + Ctrl + </string> + <string name="Chest"> + Tórax + </string> + <string name="Skull"> + Cráneo + </string> + <string name="Left Shoulder"> + Hombro izquierdo + </string> + <string name="Right Shoulder"> + Hombro derecho + </string> + <string name="Left Hand"> + Mano izq. + </string> + <string name="Right Hand"> + Mano der. + </string> + <string name="Left Foot"> + Pie izq. + </string> + <string name="Right Foot"> + Pie der. + </string> + <string name="Spine"> + Columna + </string> + <string name="Pelvis"> + Pelvis + </string> + <string name="Mouth"> + Boca + </string> + <string name="Chin"> + Barbilla + </string> + <string name="Left Ear"> + Oreja izq. + </string> + <string name="Right Ear"> + Oreja der. + </string> + <string name="Left Eyeball"> + Ojo izq. + </string> + <string name="Right Eyeball"> + Ojo der. + </string> + <string name="Nose"> + Nariz + </string> + <string name="R Upper Arm"> + Brazo der. + </string> + <string name="R Forearm"> + Antebrazo der. + </string> + <string name="L Upper Arm"> + Brazo izq. + </string> + <string name="L Forearm"> + Antebrazo izq. + </string> + <string name="Right Hip"> + Cadera der. + </string> + <string name="R Upper Leg"> + Muslo der. + </string> + <string name="R Lower Leg"> + Pantorrilla der. + </string> + <string name="Left Hip"> + Cadera izq. + </string> + <string name="L Upper Leg"> + Muslo izq. + </string> + <string name="L Lower Leg"> + Pantorrilla izq. + </string> + <string name="Stomach"> + Abdomen + </string> + <string name="Left Pec"> + Pecho izquierdo + </string> + <string name="Right Pec"> + Pecho derecho + </string> + <string name="YearsMonthsOld"> + [AGEYEARS] [AGEMONTHS] de edad + </string> + <string name="YearsOld"> + [AGEYEARS] de edad + </string> + <string name="MonthsOld"> + [AGEMONTHS] de edad + </string> + <string name="WeeksOld"> + [AGEWEEKS] de edad + </string> + <string name="DaysOld"> + [AGEDAYS] de edad + </string> + <string name="TodayOld"> + Registrado hoy + </string> + <string name="AgeYearsA"> + [COUNT] año + </string> + <string name="AgeYearsB"> + [COUNT] años + </string> + <string name="AgeYearsC"> + [COUNT] años + </string> + <string name="AgeMonthsA"> + [COUNT] mes + </string> + <string name="AgeMonthsB"> + [COUNT] meses + </string> + <string name="AgeMonthsC"> + [COUNT] meses + </string> + <string name="AgeWeeksA"> + [COUNT] semana + </string> + <string name="AgeWeeksB"> + [COUNT] semanas + </string> + <string name="AgeWeeksC"> + [COUNT] semanas + </string> + <string name="AgeDaysA"> + [COUNT] día + </string> + <string name="AgeDaysB"> + [COUNT] días + </string> + <string name="AgeDaysC"> + [COUNT] días + </string> + <string name="GroupMembersA"> + [COUNT] miembro + </string> + <string name="GroupMembersB"> + [COUNT] miembros + </string> + <string name="GroupMembersC"> + [COUNT] miembros + </string> + <string name="AcctTypeResident"> + Residente + </string> + <string name="AcctTypeTrial"> + Prueba + </string> + <string name="AcctTypeCharterMember"> + Miembro fundador + </string> + <string name="AcctTypeEmployee"> + Empleado de Linden Lab + </string> + <string name="PaymentInfoUsed"> + Ha usado información sobre la forma de pago + </string> + <string name="PaymentInfoOnFile"> + Hay información archivada sobre la forma de pago + </string> + <string name="NoPaymentInfoOnFile"> + No hay información archivada sobre la forma de pago + </string> + <string name="AgeVerified"> + Edad verificada + </string> + <string name="NotAgeVerified"> + Edad no verificada + </string> + <string name="Center 2"> + Centro 2 + </string> + <string name="Top Right"> + Arriba der. + </string> + <string name="Top"> + Arriba + </string> + <string name="Top Left"> + Arriba izq. + </string> + <string name="Center"> + Centro + </string> + <string name="Bottom Left"> + Abajo izq. + </string> + <string name="Bottom"> + Abajo + </string> + <string name="Bottom Right"> + Abajo der. + </string> + <string name="CompileQueueDownloadedCompiling"> + Descargado, compilándolo + </string> + <string name="CompileQueueScriptNotFound"> + No se encuentra el script en el servidor. + </string> + <string name="CompileQueueProblemDownloading"> + Problema al descargar + </string> + <string name="CompileQueueInsufficientPermDownload"> + Permisos insuficientes para descargar un script. + </string> + <string name="CompileQueueInsufficientPermFor"> + Permisos insuficientes para + </string> + <string name="CompileQueueUnknownFailure"> + Fallo desconocido en la descarga + </string> + <string name="CompileQueueTitle"> + Recompilando + </string> + <string name="CompileQueueStart"> + recompilar + </string> + <string name="ResetQueueTitle"> + Progreso del reinicio + </string> + <string name="ResetQueueStart"> + restaurar + </string> + <string name="RunQueueTitle"> + Configurar según se ejecuta + </string> + <string name="RunQueueStart"> + Configurando según se ejecuta + </string> + <string name="NotRunQueueTitle"> + Configurar sin ejecutar + </string> + <string name="NotRunQueueStart"> + Configurando sin ejecutarlo + </string> + <string name="CompileSuccessful"> + ¡Compilación correcta! + </string> + <string name="CompileSuccessfulSaving"> + Compilación correcta, guardando... + </string> + <string name="SaveComplete"> + Guardado. + </string> + <string name="ObjectOutOfRange"> + Script (objeto fuera de rango) + </string> + <string name="GodToolsObjectOwnedBy"> + El objeto [OBJECT] es propiedad de [OWNER] + </string> + <string name="GroupsNone"> + ninguno + </string> + <string name="Group" value="(grupo)"/> + <string name="Unknown"> + (Desconocido) + </string> + <string name="SummaryForTheWeek" value="Resumen de esta semana, empezando el"/> + <string name="NextStipendDay" value="El próximo día de pago es el"/> + <string name="GroupIndividualShare" value="Grupo Aportaciones individuales"/> + <string name="Balance"> + Saldo + </string> + <string name="Credits"> + Créditos + </string> + <string name="Debits"> + Débitos + </string> + <string name="Total"> + Total + </string> + <string name="NoGroupDataFound"> + No se encontraron datos del grupo + </string> + <string name="IMParentEstate"> + parent estate + </string> + <string name="IMMainland"> + continente + </string> + <string name="IMTeen"> + teen + </string> + <string name="RegionInfoError"> + error + </string> + <string name="RegionInfoAllEstatesOwnedBy"> + todos los estados propiedad de [OWNER] + </string> + <string name="RegionInfoAllEstatesYouOwn"> + todos los estados que posees + </string> + <string name="RegionInfoAllEstatesYouManage"> + todos los estados que administras para [OWNER] + </string> + <string name="RegionInfoAllowedResidents"> + Residentes autorizados: ([ALLOWEDAGENTS], de un máx. de [MAXACCESS]) + </string> + <string name="RegionInfoAllowedGroups"> + Grupos autorizados: ([ALLOWEDGROUPS], de un máx. de [MAXACCESS]) + </string> + <string name="CursorPos"> + Línea [LINE], Columna [COLUMN] + </string> + <string name="PanelDirCountFound"> + [COUNT] resultados + </string> + <string name="PanelContentsNewScript"> + Script nuevo + </string> + <string name="MuteByName"> + (por el nombre) + </string> + <string name="MuteAgent"> + (residente) + </string> + <string name="MuteObject"> + (objeto) + </string> + <string name="MuteGroup"> + (grupo) + </string> + <string name="RegionNoCovenant"> + No se ha aportado un contrato para este estado. + </string> + <string name="RegionNoCovenantOtherOwner"> + No se ha aportado un contrato para este estado. El terreno de este estado lo vende el propietario del estado, no Linden Lab. Por favor, contacta con ese propietario para informarte sobre la venta. + </string> + <string name="covenant_last_modified"> + Última modificación: + </string> + <string name="none_text" value="(no hay)"/> + <string name="never_text" value="(nunca)"/> + <string name="GroupOwned"> + Propiedad del grupo + </string> + <string name="Public"> + Público + </string> + <string name="ClassifiedClicksTxt"> + Clics: [TELEPORT] teleportes, [MAP] mapa, [PROFILE] perfil + </string> + <string name="ClassifiedUpdateAfterPublish"> + (se actualizará tras la publicación) + </string> + <string name="MultiPreviewTitle"> + Vista previa + </string> + <string name="MultiPropertiesTitle"> + Propiedades + </string> + <string name="InvOfferAnObjectNamed"> + Un objeto de nombre + </string> + <string name="InvOfferOwnedByGroup"> + propiedad del grupo + </string> + <string name="InvOfferOwnedByUnknownGroup"> + propiedad de un grupo desconocido + </string> + <string name="InvOfferOwnedBy"> + propiedad de + </string> + <string name="InvOfferOwnedByUnknownUser"> + propiedad de un usuario desconocido + </string> + <string name="InvOfferGaveYou"> + te ha dado + </string> + <string name="InvOfferYouDecline"> + Has rehusado + </string> + <string name="InvOfferFrom"> + de + </string> + <string name="GroupMoneyTotal"> + Total + </string> + <string name="GroupMoneyBought"> + comprado + </string> + <string name="GroupMoneyPaidYou"> + pagado a ti + </string> + <string name="GroupMoneyPaidInto"> + pagado en + </string> + <string name="GroupMoneyBoughtPassTo"> + pase comprado a + </string> + <string name="GroupMoneyPaidFeeForEvent"> + cuotas pagadas para el evento + </string> + <string name="GroupMoneyPaidPrizeForEvent"> + precio pagado por el evento + </string> + <string name="GroupMoneyBalance"> + Saldo + </string> + <string name="GroupMoneyCredits"> + Créditos + </string> + <string name="GroupMoneyDebits"> + Débitos + </string> + <string name="ViewerObjectContents"> + Contenidos + </string> + <string name="AcquiredItems"> + Artículos adquiridos + </string> + <string name="Cancel"> + Cancelar + </string> + <string name="UploadingCosts"> + Subir este/a [%s] cuesta + </string> + <string name="UnknownFileExtension"> + Extensión de archivo desconocida [.%s] +Se esperaba .wav, .tga, .bmp, .jpg, .jpeg, o .bvh + </string> + <string name="AddLandmarkNavBarMenu"> + Guardarme este hito... + </string> + <string name="EditLandmarkNavBarMenu"> + Editar este hito... </string> <string name="accel-mac-control"> - ⌃ + ⌃ </string> <string name="accel-mac-command"> - ⌘ + ⌘ </string> <string name="accel-mac-option"> - ⌥ + ⌥ </string> <string name="accel-mac-shift"> - ⇧ + ⇧ </string> <string name="accel-win-control"> Ctrl+ @@ -519,82 +1421,1790 @@ Si sigue recibiendo este mensaje, contacte con el [SUPPORT_SITE]. <string name="accel-win-shift"> Mayús+ </string> - <string name="GraphicsQualityLow"> - Bajo + <string name="FileSaved"> + Archivo guardado </string> - <string name="GraphicsQualityMid"> - Medio + <string name="Receiving"> + Recibiendo </string> - <string name="GraphicsQualityHigh"> - Alto + <string name="AM"> + AM </string> - - <!-- PARCEL_CATEGORY_UI_STRING --> - <string name="Linden Location">Localización Linden</string> - <string name="Adult">'Adult'</string> - <string name="Arts&Culture">Arte y Cultura</string> - <string name="Business">Negocios</string> - <string name="Educational">Educativo</string> - <string name="Gaming">Juegos de azar</string> - <string name="Hangout">Entretenimiento</string> - <string name="Newcomer Friendly">Para recién llegados</string> - <string name="Parks&Nature">Parques y Naturaleza</string> - <string name="Residential">Residencial</string> - <string name="Shopping">Compras</string> - <string name="Other">Otra</string> - - <string name="ringing"> - Conectando al chat de voz... + <string name="PM"> + PM </string> - <string name="connected"> - Conectado + <string name="PST"> + PST </string> - <string name="unavailable"> - La voz no está disponible en su localización actual + <string name="PDT"> + PDT </string> - <string name="hang_up"> - Desconectado del chat de voz + <string name="Forward"> + Adelante + </string> + <string name="Left"> + Izquierda + </string> + <string name="Right"> + Derecha + </string> + <string name="Back"> + Atrás + </string> + <string name="North"> + Norte + </string> + <string name="South"> + Sur + </string> + <string name="West"> + Oeste + </string> + <string name="East"> + Este + </string> + <string name="Up"> + Arriba + </string> + <string name="Down"> + Abajo + </string> + <string name="Any Category"> + Cualquier categoría + </string> + <string name="Shopping"> + Compras + </string> + <string name="Land Rental"> + Terreno en alquiler + </string> + <string name="Property Rental"> + Propiedad en alquiler + </string> + <string name="Special Attraction"> + Atracción especial + </string> + <string name="New Products"> + Nuevos productos + </string> + <string name="Employment"> + Empleo + </string> + <string name="Wanted"> + Se busca + </string> + <string name="Service"> + Servicios + </string> + <string name="Personal"> + Personal + </string> + <string name="None"> + Ninguno + </string> + <string name="Linden Location"> + Localización Linden + </string> + <string name="Adult"> + 'Adult' + </string> + <string name="Arts&Culture"> + Arte y Cultura + </string> + <string name="Business"> + Negocios + </string> + <string name="Educational"> + Educativo + </string> + <string name="Gaming"> + Juegos de azar + </string> + <string name="Hangout"> + Entretenimiento + </string> + <string name="Newcomer Friendly"> + Para recién llegados + </string> + <string name="Parks&Nature"> + Parques y Naturaleza + </string> + <string name="Residential"> + Residencial + </string> + <string name="Stage"> + Artes escénicas + </string> + <string name="Other"> + Otra + </string> + <string name="Any"> + Cualquiera + </string> + <string name="You"> + Tú + </string> + <string name="Multiple Media"> + Múltiples medias + </string> + <string name="Play Media"> + Play/Pausa los media + </string> + <string name="MBCmdLineError"> + Ha habido un error analizando la línea de comando. +Por favor, consulta: http://wiki.secondlife.com/wiki/Client_parameters +Error: + </string> + <string name="MBCmdLineUsg"> + [APP_NAME] Uso de línea de comando: + </string> + <string name="MBUnableToAccessFile"> + [APP_NAME] no puede acceder a un archivo que necesita. + +Puede ser porque estés ejecutando varias copias, o porque tu sistema crea -equivocadamente- que el archivo está abierto. +Si este mensaje persiste, reinicia tu ordenador y vuelve a intentarlo. +Si aun así sigue apareciendo el mensaje, debes desinstalar completamente [APP_NAME] y reinstalarlo. + </string> + <string name="MBFatalError"> + Error fatal + </string> + <string name="MBRequiresAltiVec"> + [APP_NAME] requiere un procesador con AltiVec (G4 o posterior). + </string> + <string name="MBAlreadyRunning"> + [APP_NAME] ya se está ejecutando. +Revisa tu barra de tareas para encontrar una copia minimizada del programa. +Si este mensaje persiste, reinicia tu ordenador. + </string> + <string name="MBFrozenCrashed"> + En su anterior ejecución, [APP_NAME] se congeló o se cayó. +¿Quieres enviar un informe de caída? + </string> + <string name="MBAlert"> + Alerta + </string> + <string name="MBNoDirectX"> + [APP_NAME] no encuentra DirectX 9.0b o superior. +[APP_NAME] usa DirectX para detectar el hardware o los drivers no actualizados que pueden provocar problemas de estabilidad, ejecución pobre y caídas. Aunque puedes ejecutar [APP_NAME] sin él, recomendamos encarecidamente hacerlo con DirectX 9.0b. + +¿Quieres continuar? + </string> + <string name="MBWarning"> + ¡Atención! + </string> + <string name="MBNoAutoUpdate"> + Las actualizaciones automáticas no están todavía implementadas para Linux. +Por favor, descarga la última versión desde www.secondlife.com. + </string> + <string name="MBRegClassFailed"> + Fallo en RegisterClass + </string> + <string name="MBError"> + Error + </string> + <string name="MBFullScreenErr"> + No puede ejecutarse a pantalla completa de [WIDTH] x [HEIGHT]. +Ejecutándose en una ventana. + </string> + <string name="MBDestroyWinFailed"> + Error Shutdown destruyendo la ventana (DestroyWindow() failed) + </string> + <string name="MBShutdownErr"> + Error Shutdown + </string> + <string name="MBDevContextErr"> + No se puede construir el 'GL device context' + </string> + <string name="MBPixelFmtErr"> + No se puede encontrar un formato adecuado de píxel + </string> + <string name="MBPixelFmtDescErr"> + No se puede conseguir la descripción del formato de píxel + </string> + <string name="MBTrueColorWindow"> + Para ejecutarse, [APP_NAME] necesita True Color (32-bit). +Por favor, en las configuraciones de tu ordenador ajusta el modo de color a 32-bit. + </string> + <string name="MBAlpha"> + [APP_NAME] no puede ejecutarse porque no puede obtener un canal alpha de 8 bit. Generalmente, se debe a alguna cuestión de los drivers de la tarjeta de vídeo. +Por favor, comprueba que tienes instalados los últimos drivers para tu tarjeta de vídeo. +Comprueba también que tu monitor esta configurado para True Color (32-bit) en Panel de Control > Apariencia y temas > Pantalla. +Si sigues recibiendo este mensaje, contacta con [SUPPORT_SITE]. + </string> + <string name="MBPixelFmtSetErr"> + No se puede configurar el formato de píxel + </string> + <string name="MBGLContextErr"> + No se puede crear el 'GL rendering context' + </string> + <string name="MBGLContextActErr"> + No se puede activar el 'GL rendering context' + </string> + <string name="MBVideoDrvErr"> + [APP_NAME] no puede ejecutarse porque los drivers de tu tarjeta de vídeo o no están bien instalados, o no están actualizados, o son para hardware no admitido. Por favor, comprueba que tienes los drivers más actuales para tu tarjeta de vídeo, y, aunque los tengas, intenta reinstalarlos. + +Si sigues recibiendo este mensaje, contacta con [SUPPORT_SITE]. + </string> + <string name="5 O'Clock Shadow"> + Barba del día + </string> + <string name="All White"> + Blanco del todo + </string> + <string name="Anime Eyes"> + Ojos de cómic + </string> + <string name="Arced"> + Arqueadas + </string> + <string name="Arm Length"> + Brazos: longitud + </string> + <string name="Attached"> + Cortos + </string> + <string name="Attached Earlobes"> + Lóbulos cortos + </string> + <string name="Back Bangs"> + Back Bangs + </string> + <string name="Back Bangs Down"> + Back Bangs Down + </string> + <string name="Back Bangs Up"> + Back Bangs Up + </string> + <string name="Back Fringe"> + Nuca: largo + </string> + <string name="Back Hair"> + Back Hair + </string> + <string name="Back Hair Down"> + Back Hair Down + </string> + <string name="Back Hair Up"> + Back Hair Up + </string> + <string name="Baggy"> + Marcadas + </string> + <string name="Bangs"> + Bangs + </string> + <string name="Bangs Down"> + Bangs Down + </string> + <string name="Bangs Up"> + Bangs Up + </string> + <string name="Beady Eyes"> + Ojos pequeños + </string> + <string name="Belly Size"> + Barriga: tamaño + </string> + <string name="Big"> + Grande + </string> + <string name="Big Butt"> + Culo grande + </string> + <string name="Big Eyeball"> + Big Eyeball + </string> + <string name="Big Hair Back"> + Pelo: moño + </string> + <string name="Big Hair Front"> + Pelo: tupé + </string> + <string name="Big Hair Top"> + Pelo: melena alta + </string> + <string name="Big Head"> + Cabeza grande + </string> + <string name="Big Pectorals"> + Grandes pectorales + </string> + <string name="Big Spikes"> + Crestas grandes + </string> + <string name="Black"> + Negro + </string> + <string name="Blonde"> + Rubio + </string> + <string name="Blonde Hair"> + Pelo rubio + </string> + <string name="Blush"> + Colorete + </string> + <string name="Blush Color"> + Color del colorete + </string> + <string name="Blush Opacity"> + Opacidad del colorete + </string> + <string name="Body Definition"> + Definición del cuerpo + </string> + <string name="Body Fat"> + Cuerpo: gordura + </string> + <string name="Body Freckles"> + Pecas del cuerpo + </string> + <string name="Body Thick"> + Cuerpo grueso + </string> + <string name="Body Thickness"> + Cuerpo: grosor + </string> + <string name="Body Thin"> + Cuerpo delgado + </string> + <string name="Bow Legged"> + Abiertas + </string> + <string name="Breast Buoyancy"> + Busto: firmeza + </string> + <string name="Breast Cleavage"> + Busto: canalillo + </string> + <string name="Breast Size"> + Busto: tamaño + </string> + <string name="Bridge Width"> + Puente: ancho + </string> + <string name="Broad"> + Ancho + </string> + <string name="Brow Size"> + Arco ciliar + </string> + <string name="Bug Eyes"> + Bug Eyes + </string> + <string name="Bugged Eyes"> + Ojos saltones + </string> + <string name="Bulbous"> + Bulbosa + </string> + <string name="Bulbous Nose"> + Nariz de porra + </string> + <string name="Bushy Eyebrows"> + Cejijuntas + </string> + <string name="Bushy Hair"> + Pelo tupido + </string> + <string name="Butt Size"> + Culo: tamaño + </string> + <string name="bustle skirt"> + Polisón + </string> + <string name="no bustle"> + Sin polisón + </string> + <string name="more bustle"> + Con polisón + </string> + <string name="Chaplin"> + Cortito + </string> + <string name="Cheek Bones"> + Pómulos + </string> + <string name="Chest Size"> + Tórax: tamaño + </string> + <string name="Chin Angle"> + Barbilla: ángulo + </string> + <string name="Chin Cleft"> + Barbilla: contorno + </string> + <string name="Chin Curtains"> + Barba en collar + </string> + <string name="Chin Depth"> + Barbilla: largo + </string> + <string name="Chin Heavy"> + Hacia la barbilla + </string> + <string name="Chin In"> + Barbilla retraída + </string> + <string name="Chin Out"> + Barbilla prominente + </string> + <string name="Chin-Neck"> + Papada + </string> + <string name="Clear"> + Transparente + </string> + <string name="Cleft"> + Remarcar + </string> + <string name="Close Set Eyes"> + Ojos juntos + </string> + <string name="Closed"> + Cerrar + </string> + <string name="Closed Back"> + Trasera cerrada + </string> + <string name="Closed Front"> + Frontal cerrado + </string> + <string name="Closed Left"> + Cerrada + </string> + <string name="Closed Right"> + Cerrada + </string> + <string name="Coin Purse"> + Poco abultada + </string> + <string name="Collar Back"> + Espalda + </string> + <string name="Collar Front"> + Escote + </string> + <string name="Corner Down"> + Hacia abajo + </string> + <string name="Corner Normal"> + Corner Normal + </string> + <string name="Corner Up"> + Hacia arriba + </string> + <string name="Creased"> + Caídos + </string> + <string name="Crooked Nose"> + Nariz torcida + </string> + <string name="Cropped Hair"> + Cropped Hair + </string> + <string name="Cuff Flare"> + Acampanado + </string> + <string name="Dark"> + Oscuridad + </string> + <string name="Dark Green"> + Verde oscuro + </string> + <string name="Darker"> + Más oscuros + </string> + <string name="Deep"> + Remarcar + </string> + <string name="Default Heels"> + Tacones por defecto + </string> + <string name="Default Toe"> + Default Toe + </string> + <string name="Dense"> + Densas + </string> + <string name="Dense hair"> + Dense hair + </string> + <string name="Double Chin"> + Mucha papada + </string> + <string name="Downturned"> + Poco + </string> + <string name="Duffle Bag"> + Muy abultada + </string> + <string name="Ear Angle"> + Orejas: ángulo + </string> + <string name="Ear Size"> + Orejas: tamaño + </string> + <string name="Ear Tips"> + Orejas: forma + </string> + <string name="Egg Head"> + Cabeza: ahuevada + </string> + <string name="Eye Bags"> + Ojos: bolsas + </string> + <string name="Eye Color"> + Ojos: color + </string> + <string name="Eye Depth"> + Ojos: profundidad + </string> + <string name="Eye Lightness"> + Ojos: brillo + </string> + <string name="Eye Opening"> + Ojos: apertura + </string> + <string name="Eye Pop"> + Ojos: simetría + </string> + <string name="Eye Size"> + Ojos: tamaño + </string> + <string name="Eye Spacing"> + Ojos: separación + </string> + <string name="Eyeball Size"> + Eyeball Size + </string> + <string name="Eyebrow Arc"> + Cejas: arco + </string> + <string name="Eyebrow Density"> + Cejas: densidad + </string> + <string name="Eyebrow Height"> + Cejas: altura + </string> + <string name="Eyebrow Points"> + Cejas: en V + </string> + <string name="Eyebrow Size"> + Cejas: tamaño + </string> + <string name="Eyelash Length"> + Pestañas: longitud + </string> + <string name="Eyeliner"> + Contorno de ojos + </string> + <string name="Eyeliner Color"> + Contorno de ojos: color + </string> + <string name="Eyes Back"> + Eyes Back + </string> + <string name="Eyes Bugged"> + Eyes Bugged + </string> + <string name="Eyes Forward"> + Eyes Forward + </string> + <string name="Eyes Long Head"> + Eyes Long Head + </string> + <string name="Eyes Shear Left Up"> + Ojos arriba - izq. + </string> + <string name="Eyes Shear Right Up"> + Ojos arriba - der. + </string> + <string name="Eyes Short Head"> + Eyes Short Head + </string> + <string name="Eyes Spread"> + Eyes Spread + </string> + <string name="Eyes Sunken"> + Eyes Sunken + </string> + <string name="Eyes Together"> + Eyes Together + </string> + <string name="Face Shear"> + Cara: simetría + </string> + <string name="Facial Definition"> + Rasgos marcados + </string> + <string name="Far Set Eyes"> + Ojos separados + </string> + <string name="Fat"> + Fat + </string> + <string name="Fat Head"> + Fat Head + </string> + <string name="Fat Lips"> + Prominentes + </string> + <string name="Fat Lower"> + Fat Lower + </string> + <string name="Fat Lower Lip"> + Fat Lower Lip + </string> + <string name="Fat Torso"> + Fat Torso + </string> + <string name="Fat Upper"> + Fat Upper + </string> + <string name="Fat Upper Lip"> + Fat Upper Lip + </string> + <string name="Female"> + Mujer + </string> + <string name="Fingerless"> + Sin dedos + </string> + <string name="Fingers"> + Con dedos + </string> + <string name="Flared Cuffs"> + Campana + </string> + <string name="Flat"> + Redondeadas + </string> + <string name="Flat Butt"> + Culo plano + </string> + <string name="Flat Head"> + Cabeza plana + </string> + <string name="Flat Toe"> + Empeine bajo + </string> + <string name="Foot Size"> + Pie: tamaño + </string> + <string name="Forehead Angle"> + Frente: ángulo + </string> + <string name="Forehead Heavy"> + Hacia la frente + </string> + <string name="Freckles"> + Pecas + </string> + <string name="Front Bangs Down"> + Front Bangs Down + </string> + <string name="Front Bangs Up"> + Front Bangs Up + </string> + <string name="Front Fringe"> + Flequillo + </string> + <string name="Front Hair"> + Front Hair + </string> + <string name="Front Hair Down"> + Front Hair Down + </string> + <string name="Front Hair Up"> + Front Hair Up + </string> + <string name="Full Back"> + Sin cortar + </string> + <string name="Full Eyeliner"> + Contorno completo + </string> + <string name="Full Front"> + Sin cortar + </string> + <string name="Full Hair Sides"> + Pelo: volumen a los lados + </string> + <string name="Full Sides"> + Volumen total + </string> + <string name="Glossy"> + Con brillo + </string> + <string name="Glove Fingers"> + Guantes: dedos + </string> + <string name="Glove Length"> + Guantes: largo + </string> + <string name="Hair"> + Pelo + </string> + <string name="Hair Back"> + Pelo: nuca + </string> + <string name="Hair Front"> + Pelo: delante + </string> + <string name="Hair Sides"> + Pelo: lados + </string> + <string name="Hair Sweep"> + Peinado: dirección + </string> + <string name="Hair Thickess"> + Pelo: espesor + </string> + <string name="Hair Thickness"> + Pelo: espesor + </string> + <string name="Hair Tilt"> + Pelo: inclinación + </string> + <string name="Hair Tilted Left"> + A la izq. + </string> + <string name="Hair Tilted Right"> + A la der. + </string> + <string name="Hair Volume"> + Pelo: volumen + </string> + <string name="Hand Size"> + Manos: tamaño + </string> + <string name="Handlebars"> + Muy largo + </string> + <string name="Head Length"> + Cabeza: longitud + </string> + <string name="Head Shape"> + Cabeza: forma + </string> + <string name="Head Size"> + Cabeza: tamaño + </string> + <string name="Head Stretch"> + Cabeza: estiramiento + </string> + <string name="Heel Height"> + Tacón: altura + </string> + <string name="Heel Shape"> + Tacón: forma + </string> + <string name="Height"> + Altura + </string> + <string name="High"> + Subir + </string> + <string name="High Heels"> + Tacones altos + </string> + <string name="High Jaw"> + Mandíbula alta + </string> + <string name="High Platforms"> + Suela gorda + </string> + <string name="High and Tight"> + Pegada + </string> + <string name="Higher"> + Arrriba + </string> + <string name="Hip Length"> + Cadera: altura + </string> + <string name="Hip Width"> + Cadera: ancho + </string> + <string name="In"> + Pegadas + </string> + <string name="In Shdw Color"> + Línea de ojos: color + </string> + <string name="In Shdw Opacity"> + Línea de ojos: opacidad + </string> + <string name="Inner Eye Corner"> + Ojos: lagrimal + </string> + <string name="Inner Eye Shadow"> + Inner Eye Shadow + </string> + <string name="Inner Shadow"> + Línea de ojos + </string> + <string name="Jacket Length"> + Chaqueta: largo + </string> + <string name="Jacket Wrinkles"> + Chaqueta: arrugas + </string> + <string name="Jaw Angle"> + Mandíbula: ángulo + </string> + <string name="Jaw Jut"> + Maxilar inferior + </string> + <string name="Jaw Shape"> + Mandíbula: forma + </string> + <string name="Join"> + Más junto + </string> + <string name="Jowls"> + Mofletes + </string> + <string name="Knee Angle"> + Rodillas: ángulo + </string> + <string name="Knock Kneed"> + Zambas + </string> + <string name="Large"> + Aumentar + </string> + <string name="Large Hands"> + Manos grandes + </string> + <string name="Left Part"> + Raya: izq. + </string> + <string name="Leg Length"> + Piernas: longitud + </string> + <string name="Leg Muscles"> + Piernas: musculatura + </string> + <string name="Less"> + Menos + </string> + <string name="Less Body Fat"> + Menos gordura + </string> + <string name="Less Curtains"> + Menos tupida + </string> + <string name="Less Freckles"> + Menos pecas + </string> + <string name="Less Full"> + Menos grosor + </string> + <string name="Less Gravity"> + Más levantado + </string> + <string name="Less Love"> + Menos michelines + </string> + <string name="Less Muscles"> + Pocos músculos + </string> + <string name="Less Muscular"> + Poca musculatura + </string> + <string name="Less Rosy"> + Menos sonrosada + </string> + <string name="Less Round"> + Menos redondeada + </string> + <string name="Less Saddle"> + Menos cartucheras + </string> + <string name="Less Square"> + Menos cuadrada + </string> + <string name="Less Volume"> + Menos volumen + </string> + <string name="Less soul"> + Pequeña + </string> + <string name="Lighter"> + Más luminosos + </string> + <string name="Lip Cleft"> + Labio: hoyuelo + </string> + <string name="Lip Cleft Depth"> + Hoyuelo marcado + </string> + <string name="Lip Fullness"> + Labios: grosor + </string> + <string name="Lip Pinkness"> + Labios sonrosados + </string> + <string name="Lip Ratio"> + Labios: ratio + </string> + <string name="Lip Thickness"> + Labios: prominencia + </string> + <string name="Lip Width"> + Labios: ancho + </string> + <string name="Lipgloss"> + Brillo de labios + </string> + <string name="Lipstick"> + Barra de labios + </string> + <string name="Lipstick Color"> + Barra de labios: color + </string> + <string name="Long"> + Más + </string> + <string name="Long Head"> + Cabeza alargada + </string> + <string name="Long Hips"> + Cadera larga + </string> + <string name="Long Legs"> + Piernas largas + </string> + <string name="Long Neck"> + Cuello largo + </string> + <string name="Long Pigtails"> + Coletas largas + </string> + <string name="Long Ponytail"> + Cola de caballo larga + </string> + <string name="Long Torso"> + Torso largo + </string> + <string name="Long arms"> + Brazos largos + </string> + <string name="Longcuffs"> + Longcuffs + </string> + <string name="Loose Pants"> + Pantalón suelto + </string> + <string name="Loose Shirt"> + Camiseta suelta + </string> + <string name="Loose Sleeves"> + Puños anchos + </string> + <string name="Love Handles"> + Michelines + </string> + <string name="Low"> + Bajar + </string> + <string name="Low Heels"> + Tacones bajos + </string> + <string name="Low Jaw"> + Mandíbula baja + </string> + <string name="Low Platforms"> + Suela fina + </string> + <string name="Low and Loose"> + Suelta + </string> + <string name="Lower"> + Abajo + </string> + <string name="Lower Bridge"> + Puente: abajo + </string> + <string name="Lower Cheeks"> + Mejillas: abajo + </string> + <string name="Male"> + Varón + </string> + <string name="Middle Part"> + Raya: en medio + </string> + <string name="More"> + Más + </string> + <string name="More Blush"> + Más colorete + </string> + <string name="More Body Fat"> + Más gordura + </string> + <string name="More Curtains"> + Más tupida + </string> + <string name="More Eyeshadow"> + Más + </string> + <string name="More Freckles"> + Más pecas + </string> + <string name="More Full"> + Más grosor + </string> + <string name="More Gravity"> + Menos levantado + </string> + <string name="More Lipstick"> + Más barra de labios + </string> + <string name="More Love"> + Más michelines + </string> + <string name="More Lower Lip"> + Más el inferior + </string> + <string name="More Muscles"> + Más músculos + </string> + <string name="More Muscular"> + Más musculatura + </string> + <string name="More Rosy"> + Más sonrosada + </string> + <string name="More Round"> + Más redondeada + </string> + <string name="More Saddle"> + Más cartucheras + </string> + <string name="More Sloped"> + Más inclinada + </string> + <string name="More Square"> + Más cuadrada + </string> + <string name="More Upper Lip"> + Más el superior + </string> + <string name="More Vertical"> + Más recta + </string> + <string name="More Volume"> + Más volumen + </string> + <string name="More soul"> + Grande + </string> + <string name="Moustache"> + Bigote + </string> + <string name="Mouth Corner"> + Comisuras + </string> + <string name="Mouth Position"> + Boca: posición + </string> + <string name="Mowhawk"> + Rapado + </string> + <string name="Muscular"> + Muscular + </string> + <string name="Mutton Chops"> + Patillas largas + </string> + <string name="Nail Polish"> + Uñas pintadas + </string> + <string name="Nail Polish Color"> + Uñas pintadas: color + </string> + <string name="Narrow"> + Disminuir + </string> + <string name="Narrow Back"> + Rapada + </string> + <string name="Narrow Front"> + Entradas + </string> + <string name="Narrow Lips"> + Labios estrechos + </string> + <string name="Natural"> + Natural + </string> + <string name="Neck Length"> + Cuello: longitud + </string> + <string name="Neck Thickness"> + Cuello: grosor + </string> + <string name="No Blush"> + Sin colorete + </string> + <string name="No Eyeliner"> + Sin contorno + </string> + <string name="No Eyeshadow"> + Menos + </string> + <string name="No Heels"> + No Heels + </string> + <string name="No Lipgloss"> + Sin brillo + </string> + <string name="No Lipstick"> + Sin barra de labios + </string> + <string name="No Part"> + Sin raya + </string> + <string name="No Polish"> + Sin pintar + </string> + <string name="No Red"> + Nada + </string> + <string name="No Spikes"> + Sin crestas + </string> + <string name="No White"> + Sin blanco + </string> + <string name="No Wrinkles"> + Sin arrugas + </string> + <string name="Normal Lower"> + Normal Lower + </string> + <string name="Normal Upper"> + Normal Upper + </string> + <string name="Nose Left"> + Nariz a la izq. + </string> + <string name="Nose Right"> + Nariz a la der. + </string> + <string name="Nose Size"> + Nariz: tamaño + </string> + <string name="Nose Thickness"> + Nariz: grosor + </string> + <string name="Nose Tip Angle"> + Nariz: respingona + </string> + <string name="Nose Tip Shape"> + Nariz: punta + </string> + <string name="Nose Width"> + Nariz: ancho + </string> + <string name="Nostril Division"> + Ventana: altura + </string> + <string name="Nostril Width"> + Ventana: ancho + </string> + <string name="Old"> + Old + </string> + <string name="Opaque"> + Opaco + </string> + <string name="Open"> + Abrir + </string> + <string name="Open Back"> + Apertura trasera + </string> + <string name="Open Front"> + Apertura frontal + </string> + <string name="Open Left"> + Abierta + </string> + <string name="Open Right"> + Abierta + </string> + <string name="Orange"> + Anaranjado + </string> + <string name="Out"> + De soplillo + </string> + <string name="Out Shdw Color"> + Sombra de ojos: color + </string> + <string name="Out Shdw Opacity"> + Sombra de ojos: opacidad + </string> + <string name="Outer Eye Corner"> + Ojos: comisura + </string> + <string name="Outer Eye Shadow"> + Outer Eye Shadow + </string> + <string name="Outer Shadow"> + Sombra de ojos + </string> + <string name="Overbite"> + Retraído + </string> + <string name="Package"> + Pubis + </string> + <string name="Painted Nails"> + Pintadas + </string> + <string name="Pale"> + Pálida + </string> + <string name="Pants Crotch"> + Pantalón: cruz + </string> + <string name="Pants Fit"> + Ceñido + </string> + <string name="Pants Length"> + Pernera: largo + </string> + <string name="Pants Waist"> + Caja + </string> + <string name="Pants Wrinkles"> + Pantalón: arrugas + </string> + <string name="Part"> + Raya + </string> + <string name="Part Bangs"> + Flequillo partido + </string> + <string name="Pectorals"> + Pectorales + </string> + <string name="Pigment"> + Tono + </string> + <string name="Pigtails"> + Coletas + </string> + <string name="Pink"> + Rosa + </string> + <string name="Pinker"> + Más sonrosados + </string> + <string name="Platform Height"> + Suela: altura + </string> + <string name="Platform Width"> + Suela: ancho + </string> + <string name="Pointy"> + En punta + </string> + <string name="Pointy Heels"> + De aguja + </string> + <string name="Pointy Toe"> + Pointy Toe + </string> + <string name="Ponytail"> + Cola de caballo + </string> + <string name="Poofy Skirt"> + Con vuelo + </string> + <string name="Pop Left Eye"> + Izquierdo más grande + </string> + <string name="Pop Right Eye"> + Derecho más grande + </string> + <string name="Puffy"> + Hinchadas + </string> + <string name="Puffy Eyelids"> + Ojeras + </string> + <string name="Rainbow Color"> + Irisación + </string> + <string name="Red Hair"> + Pelirrojo + </string> + <string name="Red Skin"> + Red Skin + </string> + <string name="Regular"> + Regular + </string> + <string name="Regular Muscles"> + Regular Muscles + </string> + <string name="Right Part"> + Raya: der. + </string> + <string name="Rosy Complexion"> + Tez sonrosada + </string> + <string name="Round"> + Redondear + </string> + <string name="Round Forehead"> + Round Forehead + </string> + <string name="Ruddiness"> + Rubicundez + </string> + <string name="Ruddy"> + Rojiza + </string> + <string name="Rumpled Hair"> + Pelo encrespado + </string> + <string name="Saddle Bags"> + Cartucheras + </string> + <string name="Saddlebags"> + Cartucheras + </string> + <string name="Scrawny"> + Scrawny + </string> + <string name="Scrawny Leg"> + Piernas flacas + </string> + <string name="Separate"> + Más ancho + </string> + <string name="Shading"> + Shading + </string> + <string name="Shadow hair"> + Shadow hair + </string> + <string name="Shallow"> + Sin marcar + </string> + <string name="Shear Back"> + Nuca: corte + </string> + <string name="Shear Face"> + Shear Face + </string> + <string name="Shear Front"> + Shear Front + </string> + <string name="Shear Left"> + Shear Left + </string> + <string name="Shear Left Up"> + Arriba - izq. + </string> + <string name="Shear Right"> + Shear Right + </string> + <string name="Shear Right Up"> + Arriba - der. + </string> + <string name="Sheared Back"> + Rapada + </string> + <string name="Sheared Front"> + Rapada + </string> + <string name="Shift Left"> + A la izq. + </string> + <string name="Shift Mouth"> + Boca: ladeada + </string> + <string name="Shift Right"> + A la der. + </string> + <string name="Shirt Bottom"> + Alto de cintura + </string> + <string name="Shirt Fit"> + Ceñido + </string> + <string name="Shirt Wrinkles"> + Camisa: arrugas + </string> + <string name="Shoe Height"> + Caña: altura + </string> + <string name="Short"> + Menos + </string> + <string name="Short Arms"> + Brazos cortos + </string> + <string name="Short Legs"> + Piernas cortas + </string> + <string name="Short Neck"> + Cuello corto + </string> + <string name="Short Pigtails"> + Coletas cortas + </string> + <string name="Short Ponytail"> + Cola de caballo corta + </string> + <string name="Short Sideburns"> + Patillas cortas + </string> + <string name="Short Torso"> + Torso corto + </string> + <string name="Short hips"> + Cadera corta + </string> + <string name="Shoulders"> + Hombros + </string> + <string name="Side Bangs"> + Side Bangs + </string> + <string name="Side Bangs Down"> + Side Bangs Down + </string> + <string name="Side Bangs Up"> + Side Bangs Up + </string> + <string name="Side Fringe"> + Lados: franja + </string> + <string name="Sideburns"> + Patillas + </string> + <string name="Sides Hair"> + Pelo: lados + </string> + <string name="Sides Hair Down"> + Bajar lados del pelo + </string> + <string name="Sides Hair Up"> + Subir lados del pelo + </string> + <string name="Skinny"> + Skinny + </string> + <string name="Skinny Neck"> + Cuello estrecho + </string> + <string name="Skirt Fit"> + Falda: vuelo + </string> + <string name="Skirt Length"> + Falda: largo + </string> + <string name="Slanted Forehead"> + Slanted Forehead + </string> + <string name="Sleeve Length"> + Largo de manga + </string> + <string name="Sleeve Looseness"> + Ancho de puños + </string> + <string name="Slit Back"> + Raja trasera + </string> + <string name="Slit Front"> + Raja frontal + </string> + <string name="Slit Left"> + Raja a la izq. + </string> + <string name="Slit Right"> + Raja a la der. + </string> + <string name="Small"> + Disminuir + </string> + <string name="Small Hands"> + Manos pequeñas + </string> + <string name="Small Head"> + Cabeza pequeña + </string> + <string name="Smooth"> + Leves + </string> + <string name="Smooth Hair"> + Pelo liso + </string> + <string name="Socks Length"> + Calcetines: largo + </string> + <string name="Some"> + Some + </string> + <string name="Soulpatch"> + Perilla + </string> + <string name="Sparse"> + Depiladas + </string> + <string name="Spiked Hair"> + Crestas + </string> + <string name="Square"> + Cuadrada + </string> + <string name="Square Toe"> + Punta cuadrada + </string> + <string name="Squash Head"> + Cabeza aplastada + </string> + <string name="Squash/Stretch Head"> + Squash/Stretch Head + </string> + <string name="Stretch Head"> + Cabeza estirada + </string> + <string name="Sunken"> + Chupadas + </string> + <string name="Sunken Chest"> + Estrecho de pecho + </string> + <string name="Sunken Eyes"> + Ojos hundidos + </string> + <string name="Sweep Back"> + Sweep Back + </string> + <string name="Sweep Forward"> + Sweep Forward + </string> + <string name="Swept Back"> + Swept Back + </string> + <string name="Swept Back Hair"> + Swept Back Hair + </string> + <string name="Swept Forward"> + Swept Forward + </string> + <string name="Swept Forward Hair"> + Swept Forward Hair + </string> + <string name="Tall"> + Alta + </string> + <string name="Taper Back"> + Cubierta trasera + </string> + <string name="Taper Front"> + Cubierta frontal + </string> + <string name="Thick Heels"> + Tacones grandes + </string> + <string name="Thick Neck"> + Cuello ancho + </string> + <string name="Thick Toe"> + Empeine alto + </string> + <string name="Thickness"> + Thickness + </string> + <string name="Thin"> + Delgadas + </string> + <string name="Thin Eyebrows"> + Cejas finas + </string> + <string name="Thin Lips"> + Hacia dentro + </string> + <string name="Thin Nose"> + Nariz fina + </string> + <string name="Tight Chin"> + Poca papada + </string> + <string name="Tight Cuffs"> + Sin campana + </string> + <string name="Tight Pants"> + Pantalón ceñido + </string> + <string name="Tight Shirt"> + Camisa ceñida + </string> + <string name="Tight Skirt"> + Falda ceñida + </string> + <string name="Tight Sleeves"> + Puños ceñidos + </string> + <string name="Tilt Left"> + Tilt Left + </string> + <string name="Tilt Right"> + Tilt Right + </string> + <string name="Toe Shape"> + Punta: forma + </string> + <string name="Toe Thickness"> + Empeine + </string> + <string name="Torso Length"> + Torso: longitud + </string> + <string name="Torso Muscles"> + Torso: musculatura + </string> + <string name="Torso Scrawny"> + Torso flacucho + </string> + <string name="Unattached"> + Largos + </string> + <string name="Uncreased"> + Abiertos + </string> + <string name="Underbite"> + Prognatismo + </string> + <string name="Unnatural"> + No natural + </string> + <string name="Upper Bridge"> + Puente: arriba + </string> + <string name="Upper Cheeks"> + Mejillas: arriba + </string> + <string name="Upper Chin Cleft"> + Barbilla: prominencia + </string> + <string name="Upper Eyelid Fold"> + Párpados + </string> + <string name="Upturned"> + Mucho + </string> + <string name="Very Red"> + Del todo + </string> + <string name="Waist Height"> + Cintura + </string> + <string name="Well-Fed"> + Mofletes + </string> + <string name="White Hair"> + Pelo blanco + </string> + <string name="Wide"> + Ancho + </string> + <string name="Wide Back"> + Completa + </string> + <string name="Wide Front"> + Completa + </string> + <string name="Wide Lips"> + Labios anchos + </string> + <string name="Wild"> + Total + </string> + <string name="Wrinkles"> + Arrugas + </string> + <string name="LocationCtrlAddLandmarkTooltip"> + Añadir a mis hitos + </string> + <string name="LocationCtrlEditLandmarkTooltip"> + Editar mis hitos + </string> + <string name="LocationCtrlInfoBtnTooltip"> + Ver más información de esta localización + </string> + <string name="LocationCtrlComboBtnTooltip"> + Historial de mis localizaciones + </string> + <string name="UpdaterWindowTitle"> + Actualizar [APP_NAME] + </string> + <string name="UpdaterNowUpdating"> + Actualizando [APP_NAME]... + </string> + <string name="UpdaterNowInstalling"> + Instalando [APP_NAME]... + </string> + <string name="UpdaterUpdatingDescriptive"> + Tu visor [APP_NAME] se está actualizando a la última versión. Llevará algún tiempo, paciencia. + </string> + <string name="UpdaterProgressBarTextWithEllipses"> + Descargando la actualización... + </string> + <string name="UpdaterProgressBarText"> + Descargando la actualización + </string> + <string name="UpdaterFailDownloadTitle"> + Fallo en la descarga de la actualización + </string> + <string name="UpdaterFailUpdateDescriptive"> + Ha habido un error actualizando [APP_NAME]. Por favor, descarga la última versión desde www.secondlife.com. + </string> + <string name="UpdaterFailInstallTitle"> + Fallo al instalar la actualización + </string> + <string name="UpdaterFailStartTitle"> + Fallo al iniciar el visor + </string> + <string name="IM_logging_string"> + -- Activado el registro de los mensajes instantáneos -- + </string> + <string name="IM_typing_start_string"> + [NAME] está escribiendo... + </string> + <string name="Unnamed"> + (sin nombre) + </string> + <string name="IM_moderated_chat_label"> + (Moderado: por defecto, desactivada la voz) + </string> + <string name="IM_unavailable_text_label"> + Para esta llamada no está disponible el chat de texto. + </string> + <string name="IM_muted_text_label"> + Un moderador del grupo ha desactivado tu chat de texto. + </string> + <string name="IM_default_text_label"> + Pulsa aquí para enviar un mensaje instantáneo. + </string> + <string name="IM_to_label"> + A + </string> + <string name="IM_moderator_label"> + (Moderador) </string> - <string name="ScriptQuestionCautionChatGranted"> - '[OBJECTNAME]', un objeto propiedad de '[OWNERNAME]', localizado en [REGIONNAME] con la posición [REGIONPOS], ha recibido permiso para: [PERMISSIONS]. - </string> - <string name="ScriptQuestionCautionChatDenied"> - A '[OBJECTNAME]', un objeto propiedad de '[OWNERNAME]', localizado en [REGIONNAME] con la posición [REGIONPOS], se le ha denegado el permiso para: [PERMISSIONS]. - </string> - <string name="ScriptTakeMoney"> - Cogerle a usted dólares Linden (L$) - </string> - <string name="ActOnControlInputs"> - Actuar en sus controles de entrada - </string> - <string name="RemapControlInputs"> - Reconfigurar sus controles de entrada - </string> - <string name="AnimateYourAvatar"> - Ejecutar animaciones en su avatar - </string> - <string name="AttachToYourAvatar"> - Anexarse a su avatar - </string> - <string name="ReleaseOwnership"> - Anular la propiedad y que pase a ser público - </string> - <string name="LinkAndDelink"> - Enlazar y desenlazar de otros objetos - </string> - <string name="AddAndRemoveJoints"> - Añadir y quitar uniones con otros objetos - </string> - <string name="ChangePermissions"> - Cambiar sus permisos - </string> - <string name="TrackYourCamera"> - Seguir su cámara - </string> - <string name="ControlYourCamera"> - Controlar su cámara - </string> - <string name="only_user_message"> Usted es el único usuario en esta sesión. </string> @@ -637,31 +3247,4 @@ Si sigue recibiendo este mensaje, contacte con el [SUPPORT_SITE]. <string name="close_on_no_ability"> Usted ya no tendrá más la capacidad de estar en la sesión de chat. </string> - <string name="AcctTypeResident"> - Residente - </string> - <string name="AcctTypeTrial"> - Prueba - </string> - <string name="AcctTypeCharterMember"> - Miembro fundador - </string> - <string name="AcctTypeEmployee"> - Empleado de Linden Lab - </string> - <string name="PaymentInfoUsed"> - Ha usado una forma de pago - </string> - <string name="PaymentInfoOnFile"> - Hay infor. de la forma de pago - </string> - <string name="NoPaymentInfoOnFile"> - Sin infor. de la forma de pago - </string> - <string name="AgeVerified"> - Edad verificada - </string> - <string name="NotAgeVerified"> - Edad no verificada - </string> </strings> diff --git a/indra/newview/skins/default/xui/es/teleport_strings.xml b/indra/newview/skins/default/xui/es/teleport_strings.xml index 6cf5437e3c..0a605277f2 100644 --- a/indra/newview/skins/default/xui/es/teleport_strings.xml +++ b/indra/newview/skins/default/xui/es/teleport_strings.xml @@ -2,12 +2,12 @@ <teleport_messages> <message_set name="errors"> <message name="invalid_tport"> - Ha habido un problema al procesar su petición de teleporte. Debe volver a iniciar sesión para poder teleportarse. Si le sigue apareciendo este mensaje, revise, por favor, las preguntas frecuentes en el Soporte técnico: -www.secondlife.com/support + Ha habido un problema al procesar tu petición de teleporte. Debes volver a iniciar sesión antes de poder teleportarte de nuevo. +Si sigues recibiendo este mensaje, por favor, acude al [SUPPORT_SITE]. </message> <message name="invalid_region_handoff"> - Ha habido un problema al procesar su paso a otra región. Debe volver a iniciar sesión para poder pasar de región a región. Si le sigue apareciendo este mensaje, revise, por favor, las preguntas frecuentes en el Soporte técnico: -www.secondlife.com/support + Ha habido un problema al procesar tu paso a otra región. Debes volver a iniciar sesión para poder pasar de región a región. +Si sigues recibiendo este mensaje, por favor, acude al [SUPPORT_SITE]. </message> <message name="blocked_tport"> Lo sentimos, en estos momentos los teleportes están bloqueados. Vuelva a intentarlo en un momento. Si sigue sin poder teleportarse, desconéctese y vuelva a iniciar sesión para solucionar el problema. diff --git a/indra/newview/skins/default/xui/fr/floater_about.xml b/indra/newview/skins/default/xui/fr/floater_about.xml index 440412c0c0..21d0b6c10c 100644 --- a/indra/newview/skins/default/xui/fr/floater_about.xml +++ b/indra/newview/skins/default/xui/fr/floater_about.xml @@ -8,7 +8,7 @@ Compilé avec [COMPILER] version [COMPILER_VERSION] </floater.string> <floater.string name="AboutPosition"> - Vous êtes à [POSITION_0,number,1], [POSITION_1,number,1], [POSITION_2,number,1] dans [REGION] se trouvant à [HOSTNAME] ([HOSTIP]) + Vous êtes à [POSITION_0,number,1], [POSITION_1,number,1], [POSITION_2,number,1] dans [REGION] se trouvant à <nolink>[HOSTNAME]</nolink> ([HOSTIP]) [SERVER_VERSION] [[SERVER_RELEASE_NOTES_URL] [ReleaseNotes]] </floater.string> @@ -54,7 +54,7 @@ Pour réussir dans les affaires, soyez audacieux, créatif et différent. - Henr </panel> <panel label="Licences" name="licenses_panel"> <text_editor name="credits_editor"> - 3Dconnexion SDK Copyright (C) 1992-2007 3Dconnexion + 3Dconnexion SDK Copyright (C) 1992-2007 3Dconnexion APR Copyright (C) 2000-2004 The Apache Software Foundation cURL Copyright (C) 1996-2002, Daniel Stenberg, (daniel@haxx.se) expat Copyright (C) 1998, 1999, 2000 Thai Open Source Software Center Ltd. diff --git a/indra/newview/skins/default/xui/fr/floater_about_land.xml b/indra/newview/skins/default/xui/fr/floater_about_land.xml index 8e2b27aca6..e7e2d8a0ee 100644 --- a/indra/newview/skins/default/xui/fr/floater_about_land.xml +++ b/indra/newview/skins/default/xui/fr/floater_about_land.xml @@ -71,7 +71,7 @@ Catégorie : </text> <text name="ContentRatingText"> - Adult + Adulte </text> <text name="Owner:"> Propriétaire : @@ -99,7 +99,7 @@ Prix : [PRICE] L$ ([PRICE_PER_SQM] L$/m²) </text> <text name="SalePending"/> - <button label="Vendez du terrain" label_selected="Vendre le terrain..." name="Sell Land..."/> + <button label="Vendre le terrain" label_selected="Vendre le terrain..." name="Sell Land..."/> <text name="For sale to"> À vendre à : [BUYER] </text> @@ -424,10 +424,11 @@ texture : <check_box label="En boucle" name="media_loop" tool_tip="Jouer le média en boucle. Lorsque le média aura fini de jouer, il recommencera."/> </panel> <panel label="SON" name="land_audio_panel"> - <text name="MusicURL:" bottom_delta="-28" > + <text bottom_delta="-28" name="MusicURL:"> URL de la musique : </text> + <check_box label="Masquer l'URL" name="hide_music_url" tool_tip="Si vous cochez cette option, l'URL de musique sera masquée et invisible pour tous les utilisateurs non autorisés des informations de cette parcelle."/> <text name="Sound:"> Son : </text> @@ -437,7 +438,7 @@ musique : </text> <check_box label="Activer le chat vocal" name="parcel_enable_voice_channel"/> <check_box label="Activer la voix (contrôlé par le domaine)" name="parcel_enable_voice_channel_is_estate_disabled"/> - <check_box label="Limiter le chat vocal à cette parcelle" name="parcel_enable_voice_channel_parcel"/> + <check_box label="Limiter le chat vocal à cette parcelle" name="parcel_enable_voice_channel_local"/> </panel> <panel label="ACCÈS" name="land_access_panel"> <panel.string name="access_estate_defined"> diff --git a/indra/newview/skins/default/xui/fr/floater_animation_preview.xml b/indra/newview/skins/default/xui/fr/floater_animation_preview.xml index f7a796a508..e0cb0ef524 100644 --- a/indra/newview/skins/default/xui/fr/floater_animation_preview.xml +++ b/indra/newview/skins/default/xui/fr/floater_animation_preview.xml @@ -106,6 +106,9 @@ La longueur maximale est de [MAX_LENGTH] secondes. <floater.string name="E_ST_NO_XLT_EMOTE"> Impossible de lire le nom emote. </floater.string> + <floater.string name="E_ST_BAD_ROOT"> + Nom de racine incorrect. + </floater.string> <text name="name_label"> Nom : </text> diff --git a/indra/newview/skins/default/xui/fr/floater_avatar_textures.xml b/indra/newview/skins/default/xui/fr/floater_avatar_textures.xml index 983efcdc47..ae8f926d8f 100644 --- a/indra/newview/skins/default/xui/fr/floater_avatar_textures.xml +++ b/indra/newview/skins/default/xui/fr/floater_avatar_textures.xml @@ -24,7 +24,7 @@ <texture_picker label="Alpha yeux" name="eyes_alpha"/> <texture_picker label="Haut du corps" name="upper-baked"/> <texture_picker label="Peinture corporelle haut" name="upper_bodypaint"/> - <texture_picker label="Sous-vêtements (homme)" name="upper_undershirt"/> + <texture_picker label="Débardeur" name="upper_undershirt"/> <texture_picker label="Gants" name="upper_gloves"/> <texture_picker label="Chemise" name="upper_shirt"/> <texture_picker label="Veste (haut)" name="upper_jacket"/> @@ -32,7 +32,7 @@ <texture_picker label="Tatouage haut" name="upper_tattoo"/> <texture_picker label="Bas du corps" name="lower-baked"/> <texture_picker label="Peinture corporelle bas" name="lower_bodypaint"/> - <texture_picker label="Sous-vêtements (femme)" name="lower_underpants"/> + <texture_picker label="Caleçon" name="lower_underpants"/> <texture_picker label="Chaussettes" name="lower_socks"/> <texture_picker label="Chaussures" name="lower_shoes"/> <texture_picker label="Pantalon" name="lower_pants"/> diff --git a/indra/newview/skins/default/xui/fr/floater_beacons.xml b/indra/newview/skins/default/xui/fr/floater_beacons.xml index 778d92793b..d61115a2db 100644 --- a/indra/newview/skins/default/xui/fr/floater_beacons.xml +++ b/indra/newview/skins/default/xui/fr/floater_beacons.xml @@ -2,7 +2,7 @@ <floater name="beacons" title="BALISES"> <panel name="beacons_panel"> <text name="label_show"> - Afficher : + Afficher : </text> <check_box label="Balises" name="beacons"/> <check_box label="Surbrillances" name="highlights"/> diff --git a/indra/newview/skins/default/xui/fr/floater_customize.xml b/indra/newview/skins/default/xui/fr/floater_customize.xml index a1cd568571..82b54aeffc 100644 --- a/indra/newview/skins/default/xui/fr/floater_customize.xml +++ b/indra/newview/skins/default/xui/fr/floater_customize.xml @@ -156,8 +156,8 @@ <panel label="Chemise" name="Shirt"> <texture_picker label="Tissu" name="Fabric" tool_tip="Cliquez pour sélectionner une image" width="74"/> <color_swatch label="Couleur/Teinte" name="Color/Tint" tool_tip="Cliquez pour ouvrir le sélecteur de couleurs" width="74"/> - <button label="Créer une chemise" label_selected="Créer une chemise" name="Create New"/> <button label="Enlever" label_selected="Enlever" left="12" name="Take Off" width="82"/> + <button label="Créer une chemise" label_selected="Créer une chemise" name="Create New"/> <button label="Enregistrer" label_selected="Enregistrer" left="100" name="Save" width="82"/> <button label="Enregistrer sous..." label_selected="Enregistrer sous..." left="188" name="Save As" width="111"/> <button label="Rétablir" label_selected="Rétablir" left="305" name="Revert" width="82"/> @@ -189,8 +189,8 @@ <panel label="Pantalon" name="Pants"> <texture_picker label="Tissu" name="Fabric" tool_tip="Cliquez pour sélectionner une image" width="74"/> <color_swatch label="Couleur/Teinte" name="Color/Tint" tool_tip="Cliquez pour ouvrir le sélecteur de couleurs" width="74"/> - <button label="Créer un pantalon" label_selected="Créer un pantalon" name="Create New"/> <button label="Enlever" label_selected="Enlever" left="12" name="Take Off" width="82"/> + <button label="Créer un pantalon" label_selected="Créer un pantalon" name="Create New"/> <button label="Enregistrer" label_selected="Enregistrer" left="100" name="Save" width="82"/> <button label="Enregistrer sous..." label_selected="Enregistrer sous..." left="188" name="Save As" width="111"/> <button label="Rétablir" label_selected="Rétablir" left="305" name="Revert" width="82"/> @@ -238,6 +238,7 @@ <text name="not worn instructions"> Pour changer de chaussures, faites-en glisser une paire de votre inventaire à votre avatar. Vous pouvez aussi en créer des nouvelles et les porter. </text> + <button label="Créer des chaussures" label_selected="Créer des chaussures" name="Create New"/> <text name="no modify instructions"> Vous n'avez pas la permission de modifier cet objet. </text> @@ -246,7 +247,6 @@ </text> <texture_picker label="Tissu" name="Fabric" tool_tip="Cliquez pour sélectionner une image" width="74"/> <color_swatch label="Couleur/Teinte" name="Color/Tint" tool_tip="Cliquez pour ouvrir le sélecteur de couleurs" width="74"/> - <button label="Créer des chaussures" label_selected="Créer des chaussures" name="Create New"/> <button label="Enlever" label_selected="Enlever" left="12" name="Take Off" width="82"/> <button label="Enregistrer" label_selected="Enregistrer" left="100" name="Save" width="82"/> <button label="Enregistrer sous..." label_selected="Enregistrer sous..." left="188" name="Save As" width="111"/> @@ -271,6 +271,7 @@ <text name="not worn instructions"> Pour changer de chaussettes, faites-en glisser une paire à partir de votre inventaire. Vous pouvez aussi en créer des nouvelles et les porter. </text> + <button label="Créer des chaussettes" label_selected="Créer des chaussettes" name="Create New"/> <text name="no modify instructions"> Vous n'avez pas la permission de modifier cet objet. </text> @@ -279,7 +280,6 @@ </text> <texture_picker label="Tissu" name="Fabric" tool_tip="Cliquez pour sélectionner une image" width="74"/> <color_swatch label="Couleur/Teinte" name="Color/Tint" tool_tip="Cliquez pour ouvrir le sélecteur de couleurs" width="74"/> - <button label="Créer des chaussettes" label_selected="Créer des chaussettes" name="Create New"/> <button label="Enlever" label_selected="Enlever" left="12" name="Take Off" width="82"/> <button label="Enregistrer" label_selected="Enregistrer" left="100" name="Save" width="82"/> <button label="Enregistrer sous..." label_selected="Enregistrer sous..." left="188" name="Save As" width="111"/> @@ -304,6 +304,7 @@ <text name="not worn instructions"> Pour changer de veste, faites-en glisser une à partir de votre inventaire. Vous pouvez aussi en créer une nouvelle et la porter. </text> + <button label="Créer une veste" label_selected="Créer une veste" name="Create New"/> <text name="no modify instructions"> Vous n'avez pas la permission de modifier cet objet. </text> @@ -313,7 +314,6 @@ <texture_picker label="Tissu (dessus)" name="Upper Fabric" tool_tip="Cliquez pour sélectionner une image" width="81"/> <texture_picker label="Tissu (dessous)" name="Lower Fabric" tool_tip="Cliquez pour sélectionner une image" width="81"/> <color_swatch label="Couleur/Teinte" name="Color/Tint" tool_tip="Cliquez pour ouvrir le sélecteur de couleurs" width="81"/> - <button label="Créer une veste" label_selected="Créer une veste" name="Create New"/> <button label="Enlever" label_selected="Enlever" left="12" name="Take Off" width="82"/> <button label="Enregistrer" label_selected="Enregistrer" left="100" name="Save" width="82"/> <button label="Enregistrer sous..." label_selected="Enregistrer sous..." left="188" name="Save As" width="111"/> @@ -338,6 +338,7 @@ <text name="not worn instructions"> Pour changer de gants, faites-en glisser une paire à partir de votre inventaire. Vous pouvez aussi en créer de nouveaux et les porter. </text> + <button label="Créer des gants" label_selected="Créer des gants" name="Create New"/> <text name="no modify instructions"> Vous n'avez pas la permission de modifier cet objet. </text> @@ -346,13 +347,12 @@ </text> <texture_picker label="Tissu" name="Fabric" tool_tip="Cliquez pour sélectionner une image" width="74"/> <color_swatch label="Couleur/Teinte" name="Color/Tint" tool_tip="Cliquez pour ouvrir le sélecteur de couleurs" width="74"/> - <button label="Créer des gants" label_selected="Créer des gants" name="Create New"/> <button label="Enlever" label_selected="Enlever" left="12" name="Take Off" width="82"/> <button label="Enregistrer" label_selected="Enregistrer" left="100" name="Save" width="82"/> <button label="Enregistrer sous..." label_selected="Enregistrer sous..." left="188" name="Save As" width="111"/> <button label="Rétablir" label_selected="Rétablir" left="305" name="Revert" width="82"/> </panel> - <panel label="Sous-vêtements (haut)" name="Undershirt"> + <panel label="Débardeur" name="Undershirt"> <text name="title"> [DESC] </text> @@ -363,30 +363,29 @@ [DESC]: en cours de chargement... </text> <text name="title_not_worn"> - [DESC]: non portés + [DESC]: non porté </text> <text name="path"> Emplacement : [PATH] </text> <text name="not worn instructions"> - Pour changer de sous-vêtements (homme), faites-en glisser à partir de votre inventaire. Vous pouvez aussi en créer de nouveaux et les porter. + Pour changer de débardeur, faites-en glisser un à partir de votre inventaire. Vous pouvez aussi en créer un nouveau et le porter. </text> + <button label="Créer un débardeur" label_selected="Créer un débardeur" name="Create New"/> <text name="no modify instructions"> Vous n'avez pas la permission de modifier cet objet. </text> <text bottom="-470" name="Item Action Label" right="92"> - Sous-vêtements -(haut) : + Débardeur : </text> <texture_picker label="Tissu" name="Fabric" tool_tip="Cliquez pour sélectionner une image" width="74"/> <color_swatch label="Couleur/Teinte" name="Color/Tint" tool_tip="Cliquez pour ouvrir le sélecteur de couleurs" width="74"/> - <button label="Créer des sous-vêtements" label_selected="Créer des sous-vêtements" name="Create New"/> <button label="Enlever" label_selected="Enlever" left="12" name="Take Off" width="82"/> <button label="Enregistrer" label_selected="Enregistrer" left="100" name="Save" width="82"/> <button label="Enregistrer sous..." label_selected="Enregistrer sous..." left="188" name="Save As" width="111"/> <button label="Rétablir" label_selected="Rétablir" left="305" name="Revert" width="82"/> </panel> - <panel label="Sous-vêtements (bas)" name="Underpants"> + <panel label="Caleçon" name="Underpants"> <text name="title"> [DESC] </text> @@ -397,24 +396,23 @@ [DESC]: en cours de chargement... </text> <text name="title_not_worn"> - [DESC]: non portés + [DESC]: non porté </text> <text name="path"> Emplacement : [PATH] </text> <text name="not worn instructions"> - Pour changer de sous-vêtements (femme), faites-en glisser à partir de votre inventaire. Vous pouvez aussi en créer de nouveaux et les porter. + Pour changer de caleçon, faites-en glisser un à partir de votre inventaire. Vous pouvez aussi en créer un nouveau et le porter. </text> + <button label="Créer un caleçon" label_selected="Créer un caleçon" name="Create New"/> <text name="no modify instructions"> Vous n'avez pas la permission de modifier cet objet. </text> <text bottom="-470" name="Item Action Label" right="92"> - Sous-vêtements -(bas) : + Caleçon : </text> <texture_picker label="Tissu" name="Fabric" tool_tip="Cliquez pour sélectionner une image" width="74"/> <color_swatch label="Couleur/Teinte" name="Color/Tint" tool_tip="Cliquez pour ouvrir le sélecteur de couleurs" width="74"/> - <button label="Créer des sous-vêtements" label_selected="Créer des sous-vêtements" name="Create New"/> <button label="Enlever" label_selected="Enlever" left="12" name="Take Off" width="82"/> <button label="Enregistrer" label_selected="Enregistrer" left="100" name="Save" width="82"/> <button label="Enregistrer sous..." label_selected="Enregistrer sous..." left="188" name="Save As" width="111"/> @@ -439,6 +437,7 @@ <text name="not worn instructions"> Pour changer de jupe, faites-en glisser une à partir de votre inventaire. Vous pouvez aussi en créer une nouvelle et la porter. </text> + <button label="Créer une jupe" label_selected="Créer une jupe" name="Create New"/> <text name="no modify instructions"> Vous n'avez pas la permission de modifier cet objet. </text> @@ -447,13 +446,12 @@ </text> <texture_picker label="Tissu" name="Fabric" tool_tip="Cliquez pour sélectionner une image" width="74"/> <color_swatch label="Couleur/Teinte" name="Color/Tint" tool_tip="Cliquez pour ouvrir le sélecteur de couleurs" width="74"/> - <button label="Créer une jupe" label_selected="Créer une jupe" name="Create New"/> <button label="Enlever" label_selected="Enlever" left="12" name="Take Off" width="82"/> <button label="Enregistrer" label_selected="Enregistrer" left="100" name="Save" width="82"/> <button label="Enregistrer sous..." label_selected="Enregistrer sous..." left="188" name="Save As" width="111"/> <button label="Rétablir" label_selected="Rétablir" left="305" name="Revert" width="82"/> </panel> - <panel label="Alpha" name="Alpha"> + <panel label="Tatouage" name="Tattoo"> <text name="title"> [DESC] </text> @@ -470,26 +468,24 @@ Dans [PATH] </text> <text name="not worn instructions"> - Pour changer de masque alpha, faites-en glisser un de votre inventaire à votre avatar. Vous pouvez aussi en créer un nouveau et le porter. + Pour changer de tatouage, faites-en glisser un de votre inventaire à votre avatar. Vous pouvez aussi en créer un nouveau et le porter. </text> + <button label="Créer un nouveau tatouage" label_selected="Créer un nouveau tatouage" name="Create New"/> <text name="no modify instructions"> Vous n'avez pas le droit de modifier cet objet. </text> <text name="Item Action Label"> - Alpha : + Tatouage : </text> - <texture_picker label="Alpha bas" name="Lower Alpha" tool_tip="Cliquez pour sélectionner une image"/> - <texture_picker label="Alpha haut" name="Upper Alpha" tool_tip="Cliquez pour sélectionner une image"/> - <texture_picker label="Alpha tête" name="Head Alpha" tool_tip="Cliquez pour sélectionner une image"/> - <texture_picker label="Alpha yeux" name="Eye Alpha" tool_tip="Cliquez pour sélectionner une image"/> - <texture_picker label="Alpha cheveux" name="Hair Alpha" tool_tip="Cliquez pour sélectionner une image"/> - <button label="Créer un nouvel alpha" label_selected="Créer un nouvel alpha" name="Create New"/> + <texture_picker label="Tatouage tête" name="Head Tattoo" tool_tip="Cliquez pour sélectionner une image"/> + <texture_picker label="Tatouage haut" name="Upper Tattoo" tool_tip="Cliquez pour sélectionner une image"/> + <texture_picker label="Tatouage bas" name="Lower Tattoo" tool_tip="Cliquez pour sélectionner une image"/> <button label="Enlever" label_selected="Enlever" name="Take Off"/> <button label="Enregistrer" label_selected="Enregistrer" name="Save"/> <button label="Enregistrer sous..." label_selected="Enregistrer sous..." name="Save As"/> <button label="Annuler modification" label_selected="Annuler modification" name="Revert"/> </panel> - <panel label="Tatouage" name="Tattoo"> + <panel label="Alpha" name="Alpha"> <text name="title"> [DESC] </text> @@ -506,18 +502,20 @@ Dans [PATH] </text> <text name="not worn instructions"> - Pour changer de tatouage, faites-en glisser un de votre inventaire à votre avatar. Vous pouvez aussi en créer un nouveau et le porter. + Pour changer de masque alpha, faites-en glisser un de votre inventaire à votre avatar. Vous pouvez aussi en créer un nouveau et le porter. </text> + <button label="Créer un nouvel alpha" label_selected="Créer un nouvel alpha" name="Create New"/> <text name="no modify instructions"> Vous n'avez pas le droit de modifier cet objet. </text> <text name="Item Action Label"> - Tatouage : + Alpha : </text> - <texture_picker label="Tatouage tête" name="Head Tattoo" tool_tip="Cliquez pour sélectionner une image"/> - <texture_picker label="Tatouage haut" name="Upper Tattoo" tool_tip="Cliquez pour sélectionner une image"/> - <texture_picker label="Tatouage bas" name="Lower Tattoo" tool_tip="Cliquez pour sélectionner une image"/> - <button label="Créer un nouveau tatouage" label_selected="Créer un nouveau tatouage" name="Create New"/> + <texture_picker label="Alpha bas" name="Lower Alpha" tool_tip="Cliquez pour sélectionner une image"/> + <texture_picker label="Alpha haut" name="Upper Alpha" tool_tip="Cliquez pour sélectionner une image"/> + <texture_picker label="Alpha tête" name="Head Alpha" tool_tip="Cliquez pour sélectionner une image"/> + <texture_picker label="Alpha yeux" name="Eye Alpha" tool_tip="Cliquez pour sélectionner une image"/> + <texture_picker label="Alpha cheveux" name="Hair Alpha" tool_tip="Cliquez pour sélectionner une image"/> <button label="Enlever" label_selected="Enlever" name="Take Off"/> <button label="Enregistrer" label_selected="Enregistrer" name="Save"/> <button label="Enregistrer sous..." label_selected="Enregistrer sous..." name="Save As"/> @@ -525,7 +523,7 @@ </panel> </tab_container> <scroll_container left="251" name="panel_container"/> - <button label="Infos sur les scripts" label_selected="Infos sur les scripts" name="script_info"/> + <button label="Infos sur les scripts" label_selected="Infos sur les scripts" name="script_info" tool_tip="Afficher les scripts attachés à votre avatar"/> <button label="Créer tenue" label_selected="Créer une tenue..." name="make_outfit_btn"/> <button label="Annuler" label_selected="Annuler" name="Cancel"/> <button label="OK" label_selected="OK" name="Ok"/> diff --git a/indra/newview/skins/default/xui/fr/floater_help_browser.xml b/indra/newview/skins/default/xui/fr/floater_help_browser.xml index 1170d1d87b..11caca640c 100644 --- a/indra/newview/skins/default/xui/fr/floater_help_browser.xml +++ b/indra/newview/skins/default/xui/fr/floater_help_browser.xml @@ -1,14 +1,9 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="floater_help_browser" title="NAVIGATEUR D'AIDE"> - <floater.string name="home_page_url"> - http://fr.secondlife.com - </floater.string> - <floater.string name="support_page_url"> - http://fr.secondlife.com/support + <floater.string name="loading_text"> + Chargement… </floater.string> <layout_stack name="stack1"> - <layout_panel name="external_controls"> - <button label="Ouvrir dans mon navigateur Web" name="open_browser"/> - </layout_panel> + <layout_panel name="external_controls"/> </layout_stack> </floater> diff --git a/indra/newview/skins/default/xui/fr/floater_inventory.xml b/indra/newview/skins/default/xui/fr/floater_inventory.xml index 1f8b7f37ad..200c07e522 100644 --- a/indra/newview/skins/default/xui/fr/floater_inventory.xml +++ b/indra/newview/skins/default/xui/fr/floater_inventory.xml @@ -1,13 +1,13 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> -<floater name="Inventory" title="INVENTAIRE"> +<floater name="Inventory" title="MON INVENTAIRE"> <floater.string name="Title"> - Inventaire + MON INVENTAIRE </floater.string> <floater.string name="TitleFetching"> - Inventaire (Récupération de [ITEM_COUNT] articles en cours) [FILTER] + MON INVENTAIRE (récupération de [ITEM_COUNT] articles en cours) [FILTER] </floater.string> <floater.string name="TitleCompleted"> - Inventaire ([ITEM_COUNT] articles) [FILTER] + MON INVENTAIRE ([ITEM_COUNT] articles) [FILTER] </floater.string> <floater.string name="Fetched"> Récupéré diff --git a/indra/newview/skins/default/xui/fr/floater_live_lsleditor.xml b/indra/newview/skins/default/xui/fr/floater_live_lsleditor.xml index 7e7180166d..52b1a16bbc 100644 --- a/indra/newview/skins/default/xui/fr/floater_live_lsleditor.xml +++ b/indra/newview/skins/default/xui/fr/floater_live_lsleditor.xml @@ -7,7 +7,7 @@ Exécution en cours </floater.string> <floater.string name="Title"> - Script : [NAME] + SCRIPT : [NAME] </floater.string> <button label="Réinitialiser" label_selected="Réinitialiser" left="390" name="Reset" width="100"/> <check_box initial_value="true" label="Exécution en cours" left="4" name="running"/> diff --git a/indra/newview/skins/default/xui/fr/floater_map.xml b/indra/newview/skins/default/xui/fr/floater_map.xml index aeef4b0e91..e01b687fce 100644 --- a/indra/newview/skins/default/xui/fr/floater_map.xml +++ b/indra/newview/skins/default/xui/fr/floater_map.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> -<floater name="Map"> +<floater name="Map" title="Mini-carte"> <floater.string name="mini_map_north"> N </floater.string> diff --git a/indra/newview/skins/default/xui/fr/floater_outfit_save_as.xml b/indra/newview/skins/default/xui/fr/floater_outfit_save_as.xml index f5dfc8d6df..46e253ba2c 100644 --- a/indra/newview/skins/default/xui/fr/floater_outfit_save_as.xml +++ b/indra/newview/skins/default/xui/fr/floater_outfit_save_as.xml @@ -3,9 +3,10 @@ <button label="Enregistrer" label_selected="Enregistrer" name="Save"/> <button label="Annuler" label_selected="Annuler" name="Cancel"/> <text name="Save item as:"> - Enregistrer la tenue sous : + Enregistrer ce que je porte +comme une nouvelle tenue : </text> <line_editor name="name ed"> - [DESC] + [DESC] (nouv.) </line_editor> </floater> diff --git a/indra/newview/skins/default/xui/fr/floater_outgoing_call.xml b/indra/newview/skins/default/xui/fr/floater_outgoing_call.xml index a6f0970502..09bcdef2f1 100644 --- a/indra/newview/skins/default/xui/fr/floater_outgoing_call.xml +++ b/indra/newview/skins/default/xui/fr/floater_outgoing_call.xml @@ -25,10 +25,10 @@ Pas de réponse. Veuillez réessayer ultérieurement. </text> <text name="nearby"> - Vous avez été déconnecté(e) de [VOICE_CHANNEL_NAME]. Vous allez maintenant être reconnecté(e) au chat vocal près de vous. + Vous avez été déconnecté(e) de [VOICE_CHANNEL_NAME]. [RECONNECT_NEARBY] </text> <text name="nearby_P2P"> - [VOICE_CHANNEL_NAME] a mis fin à l'appel. Vous allez maintenant être reconnecté(e) au chat vocal près de vous. + [VOICE_CHANNEL_NAME] a mis fin à l’appel. [RECONNECT_NEARBY] </text> <text name="leaving"> En train de quitter [CURRENT_CHAT]. diff --git a/indra/newview/skins/default/xui/fr/floater_preview_animation.xml b/indra/newview/skins/default/xui/fr/floater_preview_animation.xml index 923d56801e..b14aecafbb 100644 --- a/indra/newview/skins/default/xui/fr/floater_preview_animation.xml +++ b/indra/newview/skins/default/xui/fr/floater_preview_animation.xml @@ -6,6 +6,6 @@ <text name="desc txt"> Description : </text> - <button label="Jouer dans le Monde" label_selected="Stop" left="20" name="Anim play btn" tool_tip="Lire cette animation de façon à ce que les autres puissent la voir" width="131"/> + <button label="Jouer dans Second Life" label_selected="Stop" left="20" name="Anim play btn" tool_tip="Lire cette animation de façon à ce que les autres puissent la voir" width="131"/> <button label="Jouer localement" label_selected="Stop" left="162" name="Anim audition btn" tool_tip="Lire cette animation de façon à ce que vous soyez la seule personne à pouvoir la voir" width="125"/> </floater> diff --git a/indra/newview/skins/default/xui/fr/floater_preview_sound.xml b/indra/newview/skins/default/xui/fr/floater_preview_sound.xml index 67d93e9e92..a215f92df1 100644 --- a/indra/newview/skins/default/xui/fr/floater_preview_sound.xml +++ b/indra/newview/skins/default/xui/fr/floater_preview_sound.xml @@ -6,6 +6,6 @@ <text name="desc txt"> Description : </text> - <button label="Jouer dans le Monde" label_selected="Jouer dans le Monde" left_delta="-142" name="Sound play btn" tool_tip="Lire ce son de façon à ce que les autres puissent l'entendre" width="131"/> + <button label="Jouer dans Second Life" label_selected="Jouer dans Second Life" left_delta="-142" name="Sound play btn" tool_tip="Lire ce son de façon à ce que les autres puissent l'entendre" width="131"/> <button label="Jouer localement" label_selected="Jouer localement" left="162" name="Sound audition btn" tool_tip="Lire ce son de façon à ce que vous soyez la seule personne à pouvoir l'entendre" width="125"/> </floater> diff --git a/indra/newview/skins/default/xui/fr/floater_report_abuse.xml b/indra/newview/skins/default/xui/fr/floater_report_abuse.xml index 215df18bd6..78c35dc303 100644 --- a/indra/newview/skins/default/xui/fr/floater_report_abuse.xml +++ b/indra/newview/skins/default/xui/fr/floater_report_abuse.xml @@ -5,7 +5,7 @@ </floater.string> <check_box label="Utiliser cette capture d'écran" name="screen_check"/> <text name="reporter_title" width="60"> - Déposant : + Témoin : </text> <text name="reporter_field"> Loremipsum Dolorsitamut Longnamez diff --git a/indra/newview/skins/default/xui/fr/floater_script_preview.xml b/indra/newview/skins/default/xui/fr/floater_script_preview.xml index 7b8c5399b9..7b6bc73677 100644 --- a/indra/newview/skins/default/xui/fr/floater_script_preview.xml +++ b/indra/newview/skins/default/xui/fr/floater_script_preview.xml @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="preview lsl text" title="SCRIPT : SCRIPT DE ROTATION"> <floater.string name="Title"> - Script : [NAME] + SCRIPT : [NAME] </floater.string> <text name="desc txt"> Description : diff --git a/indra/newview/skins/default/xui/fr/floater_sys_well.xml b/indra/newview/skins/default/xui/fr/floater_sys_well.xml index 9b0253065c..47b761aed9 100644 --- a/indra/newview/skins/default/xui/fr/floater_sys_well.xml +++ b/indra/newview/skins/default/xui/fr/floater_sys_well.xml @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="notification_chiclet" title="NOTIFICATIONS"> <string name="title_im_well_window"> - SESSIONS IM + CONVERSATIONS </string> <string name="title_notification_well_window"> NOTIFICATIONS diff --git a/indra/newview/skins/default/xui/fr/floater_wearable_save_as.xml b/indra/newview/skins/default/xui/fr/floater_wearable_save_as.xml index af6274d4e2..5dda347fcf 100644 --- a/indra/newview/skins/default/xui/fr/floater_wearable_save_as.xml +++ b/indra/newview/skins/default/xui/fr/floater_wearable_save_as.xml @@ -1,9 +1,9 @@ -<?xml version="1.0" encoding="utf-8" standalone="yes" ?> +<?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="modal container"> - <button label="Enregistrer" label_selected="Enregistrer" name="Save" /> - <button label="Annuler" label_selected="Annuler" name="Cancel" /> + <button label="Enregistrer" label_selected="Enregistrer" name="Save"/> + <button label="Annuler" label_selected="Annuler" name="Cancel"/> <text name="Save item as:"> - Enregistrer l'objet sous : + Enregistrer l'objet dans mon inventaire comme : </text> <line_editor name="name ed"> Nouveau [DESC] diff --git a/indra/newview/skins/default/xui/fr/floater_world_map.xml b/indra/newview/skins/default/xui/fr/floater_world_map.xml index 3ac3580d4b..19ea764ae8 100644 --- a/indra/newview/skins/default/xui/fr/floater_world_map.xml +++ b/indra/newview/skins/default/xui/fr/floater_world_map.xml @@ -71,6 +71,7 @@ </combo_box> <search_editor label="Régions par nom" name="location" tool_tip="Saisissez le nom d'une région" width="155"/> <button label="Trouver" label_selected=">" left_delta="160" name="DoSearch" tool_tip="Recherchez sur la carte" width="75"/> + <button name="Clear" tool_tip="Effacer les lignes de suivi et réinitialiser la carte"/> <scroll_list left="-270" name="search_results" width="252"> <scroll_list.columns label="" name="icon"/> <scroll_list.columns label="" name="sim_name"/> diff --git a/indra/newview/skins/default/xui/fr/menu_avatar_self.xml b/indra/newview/skins/default/xui/fr/menu_avatar_self.xml index 82945cf96e..e370e8d3b8 100644 --- a/indra/newview/skins/default/xui/fr/menu_avatar_self.xml +++ b/indra/newview/skins/default/xui/fr/menu_avatar_self.xml @@ -1,8 +1,8 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <context_menu name="Self Pie"> <menu_item_call label="Me lever" name="Stand Up"/> - <context_menu label="Enlever >" name="Take Off >"> - <context_menu label="Habits >" name="Clothes >"> + <context_menu label="Enlever ▶" name="Take Off >"> + <context_menu label="Habits ▶" name="Clothes >"> <menu_item_call label="Chemise" name="Shirt"/> <menu_item_call label="Pantalon" name="Pants"/> <menu_item_call label="Jupe" name="Skirt"/> @@ -16,8 +16,8 @@ <menu_item_call label="Alpha" name="Self Alpha"/> <menu_item_call label="Tous les habits" name="All Clothes"/> </context_menu> - <context_menu label="HUD >" name="Object Detach HUD"/> - <context_menu label="Détacher >" name="Object Detach"/> + <context_menu label="HUD ▶" name="Object Detach HUD"/> + <context_menu label="Détacher ▶" name="Object Detach"/> <menu_item_call label="Tout détacher" name="Detach All"/> </context_menu> <menu_item_call label="Mon apparence" name="Appearance..."/> diff --git a/indra/newview/skins/default/xui/fr/menu_inventory.xml b/indra/newview/skins/default/xui/fr/menu_inventory.xml index 5276aa5b7e..2f6f25dc6b 100644 --- a/indra/newview/skins/default/xui/fr/menu_inventory.xml +++ b/indra/newview/skins/default/xui/fr/menu_inventory.xml @@ -20,8 +20,8 @@ <menu_item_call label="Nouvelle veste" name="New Jacket"/> <menu_item_call label="Nouvelle jupe" name="New Skirt"/> <menu_item_call label="Nouveaux gants" name="New Gloves"/> - <menu_item_call label="Nouveau tricot" name="New Undershirt"/> - <menu_item_call label="Nouveaux sous-vêtements" name="New Underpants"/> + <menu_item_call label="Nouveau débardeur" name="New Undershirt"/> + <menu_item_call label="Nouveau caleçon" name="New Underpants"/> <menu_item_call label="Nouveau masque alpha" name="New Alpha Mask"/> <menu_item_call label="Nouveau tatouage" name="New Tattoo"/> </menu> @@ -40,8 +40,8 @@ <menu_item_call label="Chaussures" name="Shoes"/> <menu_item_call label="Chemise" name="Shirt"/> <menu_item_call label="Jupe" name="Skirt"/> - <menu_item_call label="Sous-vêtements (femme)" name="Underpants"/> - <menu_item_call label="Sous-vêtements (homme)" name="Undershirt"/> + <menu_item_call label="Caleçon" name="Underpants"/> + <menu_item_call label="Débardeur" name="Undershirt"/> </menu> <menu_item_call label="Téléporter" name="Landmark Open"/> <menu_item_call label="Ouvrir" name="Animation Open"/> @@ -65,7 +65,7 @@ <menu_item_call label="Démarrer le chat conférence" name="Conference Chat Folder"/> <menu_item_call label="Jouer" name="Sound Play"/> <menu_item_call label="À propos du repère" name="About Landmark"/> - <menu_item_call label="Jouer dans le Monde" name="Animation Play"/> + <menu_item_call label="Jouer dans Second Life" name="Animation Play"/> <menu_item_call label="Jouer localement" name="Animation Audition"/> <menu_item_call label="Envoyer un message instantané" name="Send Instant Message"/> <menu_item_call label="Offrir de téléporter..." name="Offer Teleport..."/> diff --git a/indra/newview/skins/default/xui/fr/menu_object.xml b/indra/newview/skins/default/xui/fr/menu_object.xml index b6775661ad..1837be9c5d 100644 --- a/indra/newview/skins/default/xui/fr/menu_object.xml +++ b/indra/newview/skins/default/xui/fr/menu_object.xml @@ -7,18 +7,18 @@ <menu_item_call label="M'asseoir ici" name="Object Sit"/> <menu_item_call label="Profil de l'objet" name="Object Inspect"/> <menu_item_call label="Zoomer en avant" name="Zoom In"/> - <context_menu label="Porter >" name="Put On"> + <context_menu label="Porter ▶" name="Put On"> <menu_item_call label="Porter" name="Wear"/> - <context_menu label="Joindre >" name="Object Attach"/> - <context_menu label="Joindre les éléments HUD >" name="Object Attach HUD"/> + <context_menu label="Attacher ▶" name="Object Attach"/> + <context_menu label="Attacher les éléments HUD ▶" name="Object Attach HUD"/> </context_menu> - <context_menu label="Supprimer >" name="Remove"> - <menu_item_call label="Prendre" name="Pie Object Take"/> + <context_menu label="Supprimer ▶" name="Remove"> <menu_item_call label="Signaler une infraction" name="Report Abuse..."/> <menu_item_call label="Ignorer" name="Object Mute"/> <menu_item_call label="Retour" name="Return..."/> <menu_item_call label="Supprimer" name="Delete"/> </context_menu> + <menu_item_call label="Prendre" name="Pie Object Take"/> <menu_item_call label="Prendre une copie" name="Take Copy"/> <menu_item_call label="Payer" name="Pay..."/> <menu_item_call label="Acheter" name="Buy..."/> diff --git a/indra/newview/skins/default/xui/fr/menu_profile_overflow.xml b/indra/newview/skins/default/xui/fr/menu_profile_overflow.xml index 4bb9fa19a8..381c75ce31 100644 --- a/indra/newview/skins/default/xui/fr/menu_profile_overflow.xml +++ b/indra/newview/skins/default/xui/fr/menu_profile_overflow.xml @@ -2,6 +2,7 @@ <toggleable_menu name="profile_overflow_menu"> <menu_item_call label="Payer" name="pay"/> <menu_item_call label="Partager" name="share"/> + <menu_item_check label="Ignorer/Ne plus ignorer" name="block_unblock"/> <menu_item_call label="Éjecter" name="kick"/> <menu_item_call label="Geler" name="freeze"/> <menu_item_call label="Dégeler" name="unfreeze"/> diff --git a/indra/newview/skins/default/xui/fr/menu_viewer.xml b/indra/newview/skins/default/xui/fr/menu_viewer.xml index 272fcfdae6..33a82569a1 100644 --- a/indra/newview/skins/default/xui/fr/menu_viewer.xml +++ b/indra/newview/skins/default/xui/fr/menu_viewer.xml @@ -74,6 +74,7 @@ </menu> <menu_item_call label="Lien" name="Link"/> <menu_item_call label="Annuler le lien" name="Unlink"/> + <menu_item_check label="Modifier les parties reliées" name="Edit Linked Parts"/> <menu_item_call label="Point central sur la sélection" name="Focus on Selection"/> <menu_item_call label="Zoomer sur la sélection" name="Zoom to Selection"/> <menu label="Objet" name="Object"> @@ -90,25 +91,18 @@ <menu_item_call label="Définir les scripts sur Pas d'exécution" name="Set Scripts to Not Running"/> </menu> <menu label="Options" name="Options"> - <menu_item_check label="Modifier les parties reliées" name="Edit Linked Parts"/> <menu_item_call label="Définir les droits de chargement par défaut" name="perm prefs"/> <menu_item_check label="Afficher les droits avancés" name="DebugPermissions"/> - <menu label="Sélection" name="Selection"> - <menu_item_check label="Sélectionner mes objets uniquement" name="Select Only My Objects"/> - <menu_item_check label="Sélectionner les objets déplaçables uniquement" name="Select Only Movable Objects"/> - <menu_item_check label="Sélectionner en entourant" name="Select By Surrounding"/> - </menu> - <menu label="Afficher" name="Show"> - <menu_item_check label="Afficher la sélection masquée" name="Show Hidden Selection"/> - <menu_item_check label="Afficher le rayon lumineux pour la sélection" name="Show Light Radius for Selection"/> - <menu_item_check label="Afficher le faisceau de sélection lumineux" name="Show Selection Beam"/> - </menu> - <menu label="Grille" name="Grid"> - <menu_item_check label="Fixer sur la grille" name="Snap to Grid"/> - <menu_item_call label="Fixer les coordonnées XY de l'objet sur la grille" name="Snap Object XY to Grid"/> - <menu_item_call label="Utiliser la sélection pour la grille" name="Use Selection for Grid"/> - <menu_item_call label="Options de la grille" name="Grid Options"/> - </menu> + <menu_item_check label="Sélectionner mes objets uniquement" name="Select Only My Objects"/> + <menu_item_check label="Sélectionner les objets déplaçables uniquement" name="Select Only Movable Objects"/> + <menu_item_check label="Sélectionner en entourant" name="Select By Surrounding"/> + <menu_item_check label="Afficher la sélection masquée" name="Show Hidden Selection"/> + <menu_item_check label="Afficher le rayon lumineux pour la sélection" name="Show Light Radius for Selection"/> + <menu_item_check label="Afficher le faisceau de sélection lumineux" name="Show Selection Beam"/> + <menu_item_check label="Fixer sur la grille" name="Snap to Grid"/> + <menu_item_call label="Fixer les coordonnées XY de l’objet sur la grille" name="Snap Object XY to Grid"/> + <menu_item_call label="Utiliser la sélection pour la grille" name="Use Selection for Grid"/> + <menu_item_call label="Options de la grille" name="Grid Options"/> </menu> <menu label="Sélectionner les parties reliées" name="Select Linked Parts"> <menu_item_call label="Sélectionner la partie suivante" name="Select Next Part"/> @@ -175,8 +169,8 @@ <menu_item_check label="Exécuter plusieurs threads" name="Run Multiple Threads"/> <menu_item_call label="Effacer le cache du groupe" name="ClearGroupCache"/> <menu_item_check label="Effet de lissage de la souris" name="Mouse Smoothing"/> - <menu_item_check label="Afficher les IM dans le chat près de vous" name="IMInChat"/> <menu label="Raccourcis" name="Shortcuts"> + <menu_item_call label="Image ([COST] L$)..." name="Upload Image"/> <menu_item_check label="Rechercher" name="Search"/> <menu_item_call label="Relâcher les touches" name="Release Keys"/> <menu_item_call label="Taille de l'interface par défaut" name="Set UI Size to Default"/> @@ -219,6 +213,7 @@ <menu_item_check label="Caméra" name="Camera"/> <menu_item_check label="Vent" name="Wind"/> <menu_item_check label="Angle de champ" name="FOV"/> + <menu_item_check label="Badge" name="Badge"/> </menu> <menu label="Afficher les infos" name="Display Info"> <menu_item_check label="Afficher l'heure" name="Show Time"/> diff --git a/indra/newview/skins/default/xui/fr/notifications.xml b/indra/newview/skins/default/xui/fr/notifications.xml index 6d7aef6389..1bafd593cf 100644 --- a/indra/newview/skins/default/xui/fr/notifications.xml +++ b/indra/newview/skins/default/xui/fr/notifications.xml @@ -93,6 +93,10 @@ Veuillez ne sélectionner qu'un seul objet. Enregistrer tous les changements dans les habits/parties du corps ? <usetemplate canceltext="Annuler" name="yesnocancelbuttons" notext="Ne pas enregistrer" yestext="Tout enregistrer"/> </notification> + <notification name="FriendsAndGroupsOnly"> + Les résidents qui ne sont pas vos amis ne sauront pas que vous avez choisi d'ignorer leurs appels et leurs messages instantanés. + <usetemplate name="okbutton" yestext="Oui"/> + </notification> <notification name="GrantModifyRights"> Lorsque vous accordez des droits d'édition à un autre résident, vous lui permettez de changer, supprimer ou prendre n'importe lequel de vos objets dans le Monde. Réfléchissez bien avant d'accorder ces droits. Souhaitez-vous accorder des droits d'édition à [FIRST_NAME] [LAST_NAME] ? @@ -154,14 +158,16 @@ Ajouter ce pouvoir à « [ROLE_NAME] » ? Voulez-vous vraiment continuer ? <usetemplate ignoretext="Confirmez avant d'abandonner les éléments joints." name="okcancelignore" notext="Non" yestext="Oui"/> </notification> - <notification name="ClickUnimplemented"> - Désolés, pas encore mis en œuvre. - </notification> <notification name="JoinGroupCanAfford"> Rejoindre ce groupe coûte [COST] L$. Voulez-vous continuer ? <usetemplate name="okcancelbuttons" notext="Annuler" yestext="Rejoindre"/> </notification> + <notification name="JoinGroupNoCost"> + Vous vous apprêtez à rejoindre le groupe [NAME]. +Voulez-vous continuer ? + <usetemplate name="okcancelbuttons" notext="Annuler" yestext="Fusionner"/> + </notification> <notification name="JoinGroupCannotAfford"> Rejoindre ce groupe coûte [COST] L$. Vous n'avez pas suffisamment de L$ pour rejoindre ce groupe. @@ -328,6 +334,10 @@ Voulez-vous vraiment continuer ? Enregistrer les changements dans l'annonce [NAME] ? <usetemplate canceltext="Annuler" name="yesnocancelbuttons" notext="Ne pas enregistrer" yestext="Enregistrer"/> </notification> + <notification name="ClassifiedInsufficientFunds"> + Fonds insuffisants pour créer la petite annonce. + <usetemplate name="okbutton" yestext="OK"/> + </notification> <notification name="DeleteAvatarPick"> Supprimer le favori [PICK] ? <usetemplate name="okcancelbuttons" notext="Annuler" yestext="OK"/> @@ -423,18 +433,18 @@ L'objet est peut-être inaccessible ou a peut-être été supprimé. Impossible d'écrire le fichier [[FILE]] </notification> <notification name="UnsupportedHardware"> - Avertissement : vous n'avez pas la configuration système requise pour utiliser [APP_NAME]. Si vous continuez à utiliser [APP_NAME], votre performance risque d'être moindre. Malheureusement, la page [SUPPORT_SITE] n'offre aucune assistance pour les problèmes de configuration système. + Votre ordinateur ne satisfait pas la configuration système requise pour [APP_NAME]. Les performances risquent d'être médiocres. Malheureusement, la page [SUPPORT_SITE] n’offre aucune assistance pour les problèmes de configuration système. MINSPECS -Voulez-vous visiter [_URL] pour plus d'informations ? +Consulter [_URL] pour en savoir plus ? <url name="url" option="0"> http://secondlife.com/support/sysreqs.php?lang=fr </url> <usetemplate ignoretext="Mon matériel n'est pas pris en charge" name="okcancelignore" notext="Non" yestext="Oui"/> </notification> <notification name="UnknownGPU"> - Votre système contient une carte graphique que [APP_NAME] ne reconnaît pas actuellement. -Cela est souvent le cas avec le nouveau matériel qui n'a pas encore été testé avec [APP_NAME]. Vous pourrez probablement utiliser [APP_NAME] sans problème, mais vous devrez peut-être ajuster les paramètres de vos graphiques. + Votre système contient une carte graphique que [APP_NAME] ne reconnaît pas. +Cela est souvent le cas avec le nouveau matériel qui n'a pas encore été testé avec [APP_NAME]. Cela ne posera probablement pas de problème, mais vous devrez peut-être ajuster vos paramètres graphiques. (Moi > Préférences > Graphiques). <form name="form"> <ignore name="ignore" text="Ma carte graphique ne peut être identifiée"/> @@ -657,7 +667,7 @@ Recherche effectuée : [FINALQUERY] Vos termes de recherche étaient trop courts et aucune recherche n'a été effectuée. </notification> <notification name="CouldNotTeleportReason"> - Impossible de téléporter. + Échec de la téléportation. [REASON] </notification> <notification name="invalid_tport"> @@ -757,14 +767,6 @@ plusieurs parcelles sélectionnées. Essayez de ne sélectionner qu'une seule parcelle. </notification> - <notification name="ParcelCanPlayMedia"> - Cet emplacement propose des flux de média. -Pour jouer des flux de média, il faut avoir une connexion Internet rapide. - -Jouer les flux de média lorsqu'ils sont disponibles ? -(Vous pourrez modifier cette option ultérieurement sous Préférences > Confidentialité.) - <usetemplate name="okcancelbuttons" notext="Désactiver" yestext="Jouer le média"/> - </notification> <notification name="CannotDeedLandWaitingForServer"> Cession du terrain impossible : rapport de propriété sur le point d'être envoyé par le serveur. @@ -886,9 +888,8 @@ Fusionner le terrain ? Cette erreur est généralement temporaire. Veuillez éditer et sauvegarder l'élément endossable à nouveau d'ici quelques minutes. </notification> <notification name="YouHaveBeenLoggedOut"> - Vous avez été déconnecté(e) de [SECOND_LIFE] : + Zut. Vous avez été déconnecté(e) de [SECOND_LIFE] [MESSAGE] -Vous pouvez afficher vos messages instantanés et votre chat en cliquant sur Afficher IM et chat. Sinon, cliquez sur Quitter pour quitter immédiatement [APP_NAME]. <usetemplate name="okcancelbuttons" notext="Quitter" yestext="Afficher IM et chat"/> </notification> <notification name="OnlyOfficerCanBuyLand"> @@ -1316,7 +1317,6 @@ Les chats et les messages instantanés ne s'afficheront pas. Les messages i <notification name="JoinedTooManyGroupsMember"> Vous avez atteint le nombre de groupes maximum. Avant de pouvoir rejoindre ce groupe, vous devez en quitter un ou refuser cette offre. [NAME] vous invite à rejoindre un groupe. -[INVITE] <usetemplate name="okcancelbuttons" notext="Refuser" yestext="Rejoindre"/> </notification> <notification name="JoinedTooManyGroups"> @@ -1384,7 +1384,7 @@ Les chats et les messages instantanés ne s'afficheront pas. Les messages i </form> </notification> <notification name="TeleportFromLandmark"> - Êtes-vous certain de vouloir être téléporté ? + Souhaitez-vous vraiment vous téléporter vers <nolink>[LOCATION]</nolink> ? <usetemplate ignoretext="Confirmer que je veux me téléporter à un repère" name="okcancelignore" notext="Annuler" yestext="Téléporter"/> </notification> <notification name="TeleportToPick"> @@ -1708,9 +1708,9 @@ Déplacer les objets de l'inventaire ? <usetemplate ignoretext="Confirmer avant de quitter" name="okcancelignore" notext="Ne pas quitter" yestext="Quitter"/> </notification> <notification name="HelpReportAbuseEmailLL"> - Utilisez cet outil pour signaler des infractions aux [http://secondlife.com/corporate/tos.php Conditions d'utilisation] et aux [http://secondlife.com/corporate/cs.php Règles communautaires]. + Utilisez cet outil pour signaler des infractions aux [http://secondlife.com/corporate/tos.php Conditions d’utilisation] et aux [http://secondlife.com/corporate/cs.php Règles communautaires]. -Lorsqu'elles sont signalées, toutes les infractions font l'objet d'une enquête et sont résolues. Vous pouvez consulter les détails de la résolution d'un incident dans le [http://secondlife.com/support/incidentreport.php Rapport d'incident]. +Lorsqu'elles sont signalées, toutes les infractions font l'objet d'une enquête et sont résolues. </notification> <notification name="HelpReportAbuseSelectCategory"> Veuillez choisir une catégorie pour ce rapport d'infraction. @@ -1917,10 +1917,10 @@ Liez-la à partir d'une page web pour permettre aux autres résidents d&apo Sujet : [SUBJECT], Message : [MESSAGE] </notification> <notification name="FriendOnline"> - [FIRST] [LAST] est connecté(e) + [NAME_SLURL] est connecté </notification> <notification name="FriendOffline"> - [FIRST] [LAST] est déconnecté(e) + [NAME_SLURL] est déconnecté </notification> <notification name="AddSelfFriend"> Même si vous êtes extrêmement sympathique, vous ne pouvez pas devenir ami avec vous-même. @@ -2121,8 +2121,8 @@ Les objets non transférables donnés au groupe ont étés supprimés. Les objets sélectionnés sur la parcelle et qui ne sont pas à vous ont été rendus à leurs propriétaires. </notification> <notification name="ServerObjectMessage"> - Message de [NAME] : -[MSG] + Message de [NAME] : +<nolink>[MSG]</nolink> </notification> <notification name="NotSafe"> Les dégâts sont autorisés sur ce terrain. @@ -2302,7 +2302,6 @@ Veuillez réessayer dans quelques minutes. <form name="form"> <button name="Accept" text="Accepter"/> <button name="Decline" text="Refuser"/> - <button name="Send IM" text="Envoyer IM"/> </form> </notification> <notification name="FriendshipOffered"> diff --git a/indra/newview/skins/default/xui/fr/panel_bottomtray_lite.xml b/indra/newview/skins/default/xui/fr/panel_bottomtray_lite.xml new file mode 100644 index 0000000000..5b6d37ce00 --- /dev/null +++ b/indra/newview/skins/default/xui/fr/panel_bottomtray_lite.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="bottom_tray_lite"> + <layout_stack name="toolbar_stack_lite"> + <layout_panel name="gesture_panel"> + <gesture_combo_list label="Geste" name="Gesture" tool_tip="Affiche/Masque les gestes"/> + </layout_panel> + </layout_stack> +</panel> diff --git a/indra/newview/skins/default/xui/fr/panel_classified_info.xml b/indra/newview/skins/default/xui/fr/panel_classified_info.xml index d317e35d2f..784c6baae9 100644 --- a/indra/newview/skins/default/xui/fr/panel_classified_info.xml +++ b/indra/newview/skins/default/xui/fr/panel_classified_info.xml @@ -6,18 +6,19 @@ <panel.string name="type_pg"> Contenu Général </panel.string> + <panel.string name="l$_price"> + [PRICE] L$ + </panel.string> <text name="title" value="Infos sur la petite annonce"/> <scroll_container name="profile_scroll"> <panel name="scroll_content_panel"> - <text name="classified_name" value="[name]"/> - <text name="classified_location" value="[loading...]"/> - <text name="content_type" value="[content type]"/> - <text name="category" value="[category]"/> + <text_editor name="classified_name" value="[name]"/> + <text_editor name="classified_location" value="[loading...]"/> + <text_editor name="content_type" value="[content type]"/> + <text_editor name="category" value="[category]"/> <check_box label="Renouvellement automatique toutes les semaines" name="auto_renew"/> - <text name="price_for_listing" tool_tip="Coût de l'annonce."> - [PRICE] L$ - </text> - <text name="classified_desc" value="[description]"/> + <text_editor name="price_for_listing" tool_tip="Coût de l'annonce."/> + <text_editor name="classified_desc" value="[description]"/> </panel> </scroll_container> <panel name="buttons"> diff --git a/indra/newview/skins/default/xui/fr/panel_edit_profile.xml b/indra/newview/skins/default/xui/fr/panel_edit_profile.xml index 24cf7844b5..d10a7f37e1 100644 --- a/indra/newview/skins/default/xui/fr/panel_edit_profile.xml +++ b/indra/newview/skins/default/xui/fr/panel_edit_profile.xml @@ -42,18 +42,18 @@ <line_editor name="homepage_edit" value="http://"/> <check_box label="Afficher dans les résultats de recherche" name="show_in_search_checkbox"/> <text name="title_acc_status_text" value="Mon compte :"/> + <text_editor name="acc_status_text" value="Résident. Aucune info de paiement enregistrée."/> <text name="my_account_link" value="[[URL] Accéder à ma Page d'accueil]"/> - <text name="acc_status_text" value="Résident. Aucune info de paiement enregistrée."/> <text name="title_partner_text" value="Mon partenaire :"/> - <text name="partner_edit_link" value="[[URL] Modifier]"/> <panel name="partner_data_panel"> - <name_box name="partner_text" value="[FIRST] [LAST]"/> + <name_box initial_value="(récupération en cours)" name="partner_text" value="[FIRST] [LAST]"/> </panel> + <text name="partner_edit_link" value="[[URL] Modifier]"/> </panel> </panel> </scroll_container> <panel name="profile_me_buttons_panel"> - <button label="Enregistrer les changements" width="166" name="save_btn"/> + <button label="Enregistrer les changements" name="save_btn" width="166"/> <button label="Annuler" name="cancel_btn"/> </panel> </panel> diff --git a/indra/newview/skins/default/xui/fr/panel_edit_underpants.xml b/indra/newview/skins/default/xui/fr/panel_edit_underpants.xml index 6323462877..90dcae18ec 100644 --- a/indra/newview/skins/default/xui/fr/panel_edit_underpants.xml +++ b/indra/newview/skins/default/xui/fr/panel_edit_underpants.xml @@ -5,6 +5,6 @@ <color_swatch label="Couleur/Teinte" name="Color/Tint" width="80" tool_tip="Cliquez pour ouvrir le sélecteur de couleurs"/> </panel> <accordion name="wearable_accordion"> - <accordion_tab name="underpants_main_tab" title="Sous-vêtements (femme)"/> + <accordion_tab name="underpants_main_tab" title="Caleçon"/> </accordion> </panel> diff --git a/indra/newview/skins/default/xui/fr/panel_edit_undershirt.xml b/indra/newview/skins/default/xui/fr/panel_edit_undershirt.xml index 5af733d8a2..950cdd7639 100644 --- a/indra/newview/skins/default/xui/fr/panel_edit_undershirt.xml +++ b/indra/newview/skins/default/xui/fr/panel_edit_undershirt.xml @@ -5,6 +5,6 @@ <color_swatch label="Couleur/Teinte" name="Color/Tint" width="80" tool_tip="Cliquez pour ouvrir le sélecteur de couleurs"/> </panel> <accordion name="wearable_accordion"> - <accordion_tab name="undershirt_main_tab" title="Sous-vêtements (homme)"/> + <accordion_tab name="undershirt_main_tab" title="Débardeur"/> </accordion> </panel> diff --git a/indra/newview/skins/default/xui/fr/panel_group_general.xml b/indra/newview/skins/default/xui/fr/panel_group_general.xml index f0b242c6a1..cf71a28451 100644 --- a/indra/newview/skins/default/xui/fr/panel_group_general.xml +++ b/indra/newview/skins/default/xui/fr/panel_group_general.xml @@ -11,27 +11,45 @@ Faites glisser le pointeur de la souris sur les options pour en savoir plus. <panel.string name="incomplete_member_data_str"> Extraction des données du résident en cours </panel.string> + <panel name="group_info_top"> + <texture_picker label="" name="insignia" tool_tip="Cliquez pour sélectionner une image"/> + <text name="prepend_founded_by"> + Fondateur : + </text> + <name_box initial_value="(récupération en cours)" name="founder_name"/> + <text name="join_cost_text"> + Gratuit + </text> + <button label="REJOINDRE" name="btn_join"/> + </panel> <text_editor name="charter"> Indiquez ici la charte de votre groupe </text_editor> <name_list name="visible_members"> <name_list.columns label="Membre" name="name" relwidth="0.40"/> <name_list.columns label="Titre" name="title" relwidth="0.25"/> + <name_list.columns label="Statut" name="status"/> </name_list> + <text name="my_group_settngs_label"> + Moi + </text> <text name="active_title_label"> - Mon titre + Mon titre : </text> <combo_box name="active_title" tool_tip="Indique le titre qui apparaît en face du nom de votre avatar lorsque votre groupe est actif."/> <check_box label="Recevoir les notices du groupe" name="receive_notices" tool_tip="Indique si vous souhaitez recevoir les notices envoyées au groupe. Décochez si ce groupe vous envoie des spams."/> <check_box label="Afficher dans mon profil" name="list_groups_in_profile" tool_tip="Indique si vous voulez afficher ce groupe dans votre profil"/> <panel name="preferences_container"> - <check_box label="Inscription libre" name="open_enrollement" tool_tip="Indique si ce groupe autorise les nouveaux membres à le rejoindre sans y être invités."/> - <check_box label="Frais d'inscription" name="check_enrollment_fee" tool_tip="Indique s'il faut payer des frais d'inscription pour rejoindre ce groupe"/> + <text name="group_settngs_label"> + Groupe + </text> + <check_box label="Inscription ouverte à tous" name="open_enrollement" tool_tip="Indique si ce groupe autorise les nouveaux membres à le rejoindre sans y être invités."/> + <check_box label="Inscription payante" name="check_enrollment_fee" tool_tip="Indique s'il faut payer des frais d'inscription pour rejoindre ce groupe"/> <spinner label="L$" name="spin_enrollment_fee" tool_tip="Les nouveaux membres doivent payer ces frais pour rejoindre le groupe quand l'option Frais d'inscription est cochée."/> - <check_box initial_value="true" label="Afficher dans la recherche" name="show_in_group_list" tool_tip="Permettre aux autres résidents de voir ce groupe dans les résultats de recherche"/> <combo_box name="group_mature_check" tool_tip="Définit si votre groupe contient des informations de type Modéré" width="195"> <combo_box.item label="Contenu Général" name="pg"/> <combo_box.item label="Contenu Modéré" name="mature"/> </combo_box> + <check_box initial_value="true" label="Afficher dans la recherche" name="show_in_group_list" tool_tip="Permettre aux autres résidents de voir ce groupe dans les résultats de recherche"/> </panel> </panel> diff --git a/indra/newview/skins/default/xui/fr/panel_group_info_sidetray.xml b/indra/newview/skins/default/xui/fr/panel_group_info_sidetray.xml index 8207fd7735..081a956a3f 100644 --- a/indra/newview/skins/default/xui/fr/panel_group_info_sidetray.xml +++ b/indra/newview/skins/default/xui/fr/panel_group_info_sidetray.xml @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <panel label="Profil du groupe" name="GroupInfo"> <panel.string name="default_needs_apply_text"> - Certaines modifications sur cet onglet n'ont pas été enregistrées. + Certaines modifications n'ont pas été enregistrées. </panel.string> <panel.string name="want_apply_text"> Voulez-vous enregistrer ces modifications ? @@ -12,27 +12,24 @@ <panel.string name="group_join_free"> Gratuit </panel.string> - <text name="group_name" value="(en cours de chargement...)"/> - <line_editor label="Saisissez le nom du groupe ici" name="group_name_editor"/> - <texture_picker label="" name="insignia" tool_tip="Cliquez pour sélectionner une image"/> - <text name="prepend_founded_by"> - Fondateur : - </text> - <name_box initial_value="(récupération en cours)" name="founder_name"/> - <text name="join_cost_text"> - Gratuit - </text> - <button label="REJOINDRE" name="btn_join"/> - <accordion name="groups_accordion"> - <accordion_tab name="group_general_tab" title="Général"/> - <accordion_tab name="group_roles_tab" title="Rôles"/> - <accordion_tab name="group_notices_tab" title="Notices"/> - <accordion_tab name="group_land_tab" title="Terrain/Actifs"/> - </accordion> - <panel name="button_row"> - <button label="Créer" label_selected="Nouveau groupe" name="btn_create"/> - <button label="Chat de groupe" name="btn_chat"/> - <button label="Appel de groupe" width="100" name="btn_call"/> - <button label="Enregistrer" label_selected="Enregistrer" name="btn_apply"/> + <panel name="group_info_top"> + <text name="group_name" value="(en cours de chargement...)"/> + <line_editor label="Saisissez le nom du groupe ici" name="group_name_editor"/> </panel> + <layout_stack name="layout"> + <layout_panel name="group_accordions"> + <accordion name="groups_accordion"> + <accordion_tab name="group_general_tab" title="Général"/> + <accordion_tab name="group_roles_tab" title="Rôles"/> + <accordion_tab name="group_notices_tab" title="Notices"/> + <accordion_tab name="group_land_tab" title="Terrain/Actifs"/> + </accordion> + </layout_panel> + <layout_panel name="button_row"> + <button name="btn_create" tool_tip="Créer un groupe"/> + <button label="Chat" name="btn_chat"/> + <button label="Appel de groupe" name="btn_call" tool_tip="Appeler ce groupe"/> + <button label="Enregistrer" label_selected="Enregistrer" name="btn_apply"/> + </layout_panel> + </layout_stack> </panel> diff --git a/indra/newview/skins/default/xui/fr/panel_group_land_money.xml b/indra/newview/skins/default/xui/fr/panel_group_land_money.xml index 02b14cb859..a10eaf9d18 100644 --- a/indra/newview/skins/default/xui/fr/panel_group_land_money.xml +++ b/indra/newview/skins/default/xui/fr/panel_group_land_money.xml @@ -1,65 +1,62 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <panel label="Terrain et L$" name="land_money_tab"> - <string name="help_text"> + <panel.string name="help_text"> Un avertissement apparaît si la surface utilisée par le groupe est supérieure ou égale au total des contributions. - </string> - <button label="?" name="help_button"/> - <string name="cant_view_group_land_text"> + </panel.string> + <panel.string name="cant_view_group_land_text"> Vous n'avez pas la permission de voir quel terrain possède ce groupe - </string> - <string name="cant_view_group_accounting_text"> + </panel.string> + <panel.string name="cant_view_group_accounting_text"> Vous n'avez pas la permission d'accéder aux informations financières de ce groupe. - </string> - <string name="loading_txt"> + </panel.string> + <panel.string name="loading_txt"> Chargement... - </string> - <text name="group_land_heading"> - Terrain du groupe - </text> - <scroll_list name="group_parcel_list" width="310"> - <column label="Parcelle" name="name" width="76" /> - <column label="Région" name="location" width="78" /> - <column label="Type" name="type" width="70" /> - <column label="Surface" name="area" width="50" /> - <column label="" name="hidden" width="-1" /> - </scroll_list> - <button label="Carte" label_selected="Carte" name="map_button"/> - <text name="total_contributed_land_label"> - Total des contributions : - </text> - <text name="total_contributed_land_value"> - [AREA] m² - </text> - <text name="total_land_in_use_label"> - Superficie déjà utilisée : - </text> - <text name="total_land_in_use_value"> - [AREA] m² - </text> - <text name="land_available_label"> - Superficie disponible : - </text> - <text name="land_available_value"> - [AREA] m² - </text> - <text name="your_contribution_label"> - Votre contribution : - </text> - <string name="land_contrib_error"> + </panel.string> + <panel.string name="land_contrib_error"> Impossible de définir votre don de terrain - </string> - <text name="your_contribution_units"> - m² - </text> - <text name="your_contribution_max_value"> - ([AMOUNT] max.) - </text> - <text name="group_over_limit_text"> - Une contribution supplémentaire est requise pour prendre en charge le terrain utilisé - </text> - <text name="group_money_heading"> - Finances - </text> + </panel.string> + <panel name="layout_panel_landmoney"> + <scroll_list name="group_parcel_list"> + <scroll_list.columns label="Parcelle" name="name"/> + <scroll_list.columns label="Région" name="location"/> + <scroll_list.columns label="Type" name="type"/> + <scroll_list.columns label="Surface" name="area"/> + </scroll_list> + <text name="total_contributed_land_label"> + Total des contributions : + </text> + <text name="total_contributed_land_value"> + [AREA] m² + </text> + <button label="Carte" label_selected="Carte" name="map_button"/> + <text name="total_land_in_use_label"> + Superficie déjà utilisée : + </text> + <text name="total_land_in_use_value"> + [AREA] m² + </text> + <text name="land_available_label"> + Superficie disponible : + </text> + <text name="land_available_value"> + [AREA] m² + </text> + <text name="your_contribution_label"> + Votre contribution : + </text> + <text name="your_contribution_units"> + m² + </text> + <text name="your_contribution_max_value"> + ([AMOUNT] max.) + </text> + <text name="group_over_limit_text"> + Une contribution supplémentaire est requise pour prendre en charge le terrain utilisé + </text> + <text name="group_money_heading"> + Finances + </text> + </panel> <tab_container name="group_money_tab_container"> <panel label="PLANIFICATION" name="group_money_planning_tab"> <text_editor name="group_money_planning_text"> diff --git a/indra/newview/skins/default/xui/fr/panel_group_notices.xml b/indra/newview/skins/default/xui/fr/panel_group_notices.xml index 68c74f9322..35a5caaa92 100644 --- a/indra/newview/skins/default/xui/fr/panel_group_notices.xml +++ b/indra/newview/skins/default/xui/fr/panel_group_notices.xml @@ -10,7 +10,7 @@ Vous pouvez désactiver la réception des notices dans l'onglet Général. </panel.string> <text name="lbl2"> Les notices sont conservées pendant 14 jours. -200 maximum par groupe et par jour +200 max. par groupe et par jour. </text> <scroll_list name="notice_list"> <scroll_list.columns label="" name="icon"/> @@ -30,19 +30,19 @@ Vous pouvez désactiver la réception des notices dans l'onglet Général. <text name="lbl3"> Sujet : </text> - <line_editor name="create_subject" /> - <text name="lbl4"> + <line_editor name="create_subject"/> + <text name="lbl4"> Message : </text> <text_editor name="create_message"/> - <text name="lbl5" > + <text name="lbl5"> Pièce-jointe : </text> <line_editor name="create_inventory_name"/> <text name="string"> Faire glisser l'objet et le déposer ici pour le joindre : </text> - <button label="Supprimer" label_selected="Supprimer pièce-jointe" name="remove_attachment"/> + <button label="Supprimer" label_selected="Supprimer pièce-jointe" name="remove_attachment" tool_tip="Supprimer la pièce jointe de votre notification"/> <button label="Envoyer" label_selected="Envoyer" left="200" name="send_notice" width="100"/> <group_drop_target name="drop_target" tool_tip="Faites glisser un objet de l'inventaire jusqu'à cette case pour l'envoyer avec la notice. Vous devez avoir l'autorisation de copier et transférer l'objet pour pouvoir le joindre."/> </panel> diff --git a/indra/newview/skins/default/xui/fr/panel_group_roles.xml b/indra/newview/skins/default/xui/fr/panel_group_roles.xml index 400d4d6aee..7fc10833ea 100644 --- a/indra/newview/skins/default/xui/fr/panel_group_roles.xml +++ b/indra/newview/skins/default/xui/fr/panel_group_roles.xml @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <panel label="Membres et rôles" name="roles_tab"> <panel.string name="default_needs_apply_text"> - Certaines modifications sur cet onglet n'ont pas été enregistrées. + Certaines modifications n'ont pas été enregistrées. </panel.string> <panel.string name="want_apply_text"> Voulez-vous enregistrer vos modifications ? @@ -47,7 +47,7 @@ notamment les rôles Tous et Propriétaire. <scroll_list.columns label="#" name="members"/> </scroll_list> <button label="Nouveau rôle" name="role_create"/> - <button label="Supprimer le rôle" width="120" name="role_delete"/> + <button label="Supprimer le rôle" name="role_delete" width="120"/> </panel> <panel height="148" label="POUVOIRS" name="actions_sub_tab" tool_tip="Vous pouvez afficher une description du pouvoir et voir quels membres et rôles peuvent s'en servir."> <panel.string name="help_text"> diff --git a/indra/newview/skins/default/xui/fr/panel_im_control_panel.xml b/indra/newview/skins/default/xui/fr/panel_im_control_panel.xml index 0590ed0f1b..115e25e487 100644 --- a/indra/newview/skins/default/xui/fr/panel_im_control_panel.xml +++ b/indra/newview/skins/default/xui/fr/panel_im_control_panel.xml @@ -9,11 +9,14 @@ <button label="Devenir amis" name="add_friend_btn"/> </layout_panel> <layout_panel name="teleport_btn_panel"> - <button label="Téléporter" name="teleport_btn"/> + <button label="Téléporter" name="teleport_btn" tool_tip="Proposer de téléporter cette personne"/> </layout_panel> <layout_panel name="share_btn_panel"> <button label="Partager" name="share_btn"/> </layout_panel> + <layout_panel name="share_btn_panel"> + <button label="Payer" name="pay_btn"/> + </layout_panel> <layout_panel name="call_btn_panel"> <button label="Appeler" name="call_btn"/> </layout_panel> diff --git a/indra/newview/skins/default/xui/fr/panel_landmarks.xml b/indra/newview/skins/default/xui/fr/panel_landmarks.xml index c4e90bed61..9c15b0bbd3 100644 --- a/indra/newview/skins/default/xui/fr/panel_landmarks.xml +++ b/indra/newview/skins/default/xui/fr/panel_landmarks.xml @@ -2,7 +2,7 @@ <panel name="Landmarks"> <accordion name="landmarks_accordion"> <accordion_tab name="tab_favorites" title="Barre des Favoris"/> - <accordion_tab name="tab_landmarks" title="Repères"/> + <accordion_tab name="tab_landmarks" title="Mes repères"/> <accordion_tab name="tab_inventory" title="Mon inventaire"/> <accordion_tab name="tab_library" title="Bibliothèque"/> </accordion> diff --git a/indra/newview/skins/default/xui/fr/panel_login.xml b/indra/newview/skins/default/xui/fr/panel_login.xml index 75648d3541..209a803e07 100644 --- a/indra/newview/skins/default/xui/fr/panel_login.xml +++ b/indra/newview/skins/default/xui/fr/panel_login.xml @@ -19,7 +19,7 @@ <text name="password_text"> Mot de passe : </text> - <check_box label="Rappel" name="remember_check"/> + <check_box label="Enregistrer" name="remember_check"/> <text name="start_location_text"> Commencer à : </text> diff --git a/indra/newview/skins/default/xui/fr/panel_main_inventory.xml b/indra/newview/skins/default/xui/fr/panel_main_inventory.xml index 5dc9042205..5faba01339 100644 --- a/indra/newview/skins/default/xui/fr/panel_main_inventory.xml +++ b/indra/newview/skins/default/xui/fr/panel_main_inventory.xml @@ -42,8 +42,8 @@ <menu_item_call label="Nouvelle veste" name="New Jacket"/> <menu_item_call label="Nouvelle jupe" name="New Skirt"/> <menu_item_call label="Nouveaux gants" name="New Gloves"/> - <menu_item_call label="Nouveaux sous-vêtements (homme)" name="New Undershirt"/> - <menu_item_call label="Nouveaux sous-vêtements (femme)" name="New Underpants"/> + <menu_item_call label="Nouveau débardeur" name="New Undershirt"/> + <menu_item_call label="Nouveau caleçon" name="New Underpants"/> <menu_item_call label="Nouvel alpha" name="New Alpha"/> <menu_item_call label="Nouveau tatouage" name="New Tattoo"/> </menu> diff --git a/indra/newview/skins/default/xui/fr/panel_me.xml b/indra/newview/skins/default/xui/fr/panel_me.xml index c9d77c208f..a34d43603b 100644 --- a/indra/newview/skins/default/xui/fr/panel_me.xml +++ b/indra/newview/skins/default/xui/fr/panel_me.xml @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> -<panel label="Mon profil" name="panel_me"> +<panel label="Mon profil !" name="panel_me"> <tab_container name="tabs"> - <panel label="PROFIL" name="panel_profile"/> - <panel label="FAVORIS" name="panel_picks"/> + <panel label="MON PROFIL" name="panel_profile"/> + <panel label="MES PRÉFÉRENCES" name="panel_picks"/> </tab_container> </panel> diff --git a/indra/newview/skins/default/xui/fr/panel_my_profile.xml b/indra/newview/skins/default/xui/fr/panel_my_profile.xml index bbf760466a..73affc3420 100644 --- a/indra/newview/skins/default/xui/fr/panel_my_profile.xml +++ b/indra/newview/skins/default/xui/fr/panel_my_profile.xml @@ -30,11 +30,14 @@ </panel> <text name="title_member_text" value="Résident depuis :"/> <text name="title_acc_status_text" value="Statut du compte :"/> - <text name="acc_status_text"> + <text_editor name="acc_status_text"> Résident. Aucune info de paiement enregistrée. Linden. - </text> + </text_editor> <text name="title_partner_text" value="Partenaire :"/> + <panel name="partner_data_panel"> + <name_box initial_value="(récupération en cours)" name="partner_text"/> + </panel> <text name="title_groups_text" value="Groupes :"/> </panel> </scroll_container> diff --git a/indra/newview/skins/default/xui/fr/panel_navigation_bar.xml b/indra/newview/skins/default/xui/fr/panel_navigation_bar.xml index 7b89a2b686..974c0cd032 100644 --- a/indra/newview/skins/default/xui/fr/panel_navigation_bar.xml +++ b/indra/newview/skins/default/xui/fr/panel_navigation_bar.xml @@ -1,15 +1,18 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <panel name="navigation_bar"> <panel name="navigation_panel"> - <button name="back_btn" tool_tip="Revenir à l'emplacement précédent"/> - <button name="forward_btn" tool_tip="Avancer d'un emplacement"/> + <pull_button name="back_btn" tool_tip="Revenir à l'emplacement précédent"/> + <pull_button name="forward_btn" tool_tip="Avancer d'un emplacement"/> <button name="home_btn" tool_tip="Me téléporter jusqu'à mon domicile"/> <location_input label="Emplacement" name="location_combo"/> <search_combo_box label="Rechercher" name="search_combo_box" tool_tip="Rechercher"> <combo_editor label="Rechercher dans [SECOND_LIFE]" name="search_combo_editor"/> </search_combo_box> </panel> - <favorites_bar name="favorite"> + <favorites_bar name="favorite" tool_tip="Faites glisser des repères ici pour un accès rapide à vos lieux favoris dans Second Life."> + <label name="favorites_bar_label" tool_tip="Faites glisser des repères ici pour un accès rapide à vos lieux favoris dans Second Life."> + Barre des Favoris + </label> <chevron_button name=">>" tool_tip="Afficher d'avantage de Favoris"/> </favorites_bar> </panel> diff --git a/indra/newview/skins/default/xui/fr/panel_outfits_inventory.xml b/indra/newview/skins/default/xui/fr/panel_outfits_inventory.xml index 3447d54cf8..d3ace66095 100644 --- a/indra/newview/skins/default/xui/fr/panel_outfits_inventory.xml +++ b/indra/newview/skins/default/xui/fr/panel_outfits_inventory.xml @@ -2,7 +2,7 @@ <panel label="Choses" name="Outfits"> <tab_container name="appearance_tabs"> <inventory_panel label="MES TENUES" name="outfitslist_tab"/> - <inventory_panel label="TENUE" name="cof_accordionpanel"/> + <inventory_panel label="TENUE" name="cof_tab"/> </tab_container> <panel name="bottom_panel"> <button name="options_gear_btn" tool_tip="Afficher d'autres options"/> diff --git a/indra/newview/skins/default/xui/fr/panel_people.xml b/indra/newview/skins/default/xui/fr/panel_people.xml index 408a7e67d7..f129f56261 100644 --- a/indra/newview/skins/default/xui/fr/panel_people.xml +++ b/indra/newview/skins/default/xui/fr/panel_people.xml @@ -5,7 +5,6 @@ <string name="no_one_near" value="Personne près de vous"/> <string name="no_friends_online" value="Pas d'amis connectés"/> <string name="no_friends" value="Pas d'amis"/> - <string name="no_groups" value="Pas de groupes"/> <string name="people_filter_label" value="Filtrer les personnes"/> <string name="groups_filter_label" value="Filtrer les groupes"/> <filter_editor label="Filtre" name="filter_input"/> @@ -16,18 +15,22 @@ <button name="add_friend_btn" tool_tip="Ajouter le résident sélectionné à votre liste d'amis"/> </panel> </panel> - <panel label="AMIS" name="friends_panel"> + <panel label="MES AMIS" name="friends_panel"> <accordion name="friends_accordion"> <accordion_tab name="tab_online" title="En ligne"/> <accordion_tab name="tab_all" title="Tout"/> </accordion> + <text name="no_friends_msg"> + Pour ajouter des amis, essayez [secondlife:///app/search/people la recherche globale] ou cliquez sur un utilisateur pour l'ajouter à vos amis. +Si vous voulez rencontrer d'autres résidents, ouvrez la [secondlife:///app/worldmap carte]. + </text> <panel label="bottom_panel" name="bottom_panel"> <button name="friends_viewsort_btn" tool_tip="Options"/> <button name="add_btn" tool_tip="Proposer à ce résident de devenir votre ami"/> <button name="del_btn" tool_tip="Supprimer le résident sélectionné de votre liste d'amis"/> </panel> </panel> - <panel label="GROUPES" name="groups_panel"> + <panel label="MES GROUPES" name="groups_panel"> <panel label="bottom_panel" name="bottom_panel"> <button name="groups_viewsort_btn" tool_tip="Options"/> <button name="plus_btn" tool_tip="Rejoindre/créer un nouveau groupe"/> @@ -47,8 +50,8 @@ <button label="Appeler" name="call_btn" tool_tip="Appeler ce résident"/> <button label="Partager" name="share_btn"/> <button label="Téléporter" name="teleport_btn" tool_tip="Proposez une téléportation"/> - <button label="Profil du groupe" name="group_info_btn" tool_tip="Voir le profil du groupe"/> - <button label="Chat de groupe" name="chat_btn" tool_tip="Ouvrir une session de chat"/> - <button label="Appel de groupe" name="group_call_btn" tool_tip="Appeler ce groupe"/> + <button label="Profil" name="group_info_btn" tool_tip="Voir le profil du groupe"/> + <button label="Chat" name="chat_btn" tool_tip="Ouvrir une session de chat"/> + <button label="Appel" name="group_call_btn" tool_tip="Appeler ce groupe"/> </panel> </panel> diff --git a/indra/newview/skins/default/xui/fr/panel_place_profile.xml b/indra/newview/skins/default/xui/fr/panel_place_profile.xml index 7ff796a61f..620bab0c24 100644 --- a/indra/newview/skins/default/xui/fr/panel_place_profile.xml +++ b/indra/newview/skins/default/xui/fr/panel_place_profile.xml @@ -6,7 +6,7 @@ <string name="available" value="disponible"/> <string name="allocated" value="affecté"/> <string name="title_place" value="Profil du lieu"/> - <string name="title_teleport_history" value="Emplacement de l'historique des téléportations"/> + <string name="title_teleport_history" value="Historique des téléportations"/> <string name="not_available" value="(s/o)"/> <string name="unknown" value="(inconnu)"/> <string name="public" value="(public)"/> diff --git a/indra/newview/skins/default/xui/fr/panel_places.xml b/indra/newview/skins/default/xui/fr/panel_places.xml index 3cea86a3e4..f6a64f0c58 100644 --- a/indra/newview/skins/default/xui/fr/panel_places.xml +++ b/indra/newview/skins/default/xui/fr/panel_places.xml @@ -2,7 +2,7 @@ <panel label="Lieux" name="places panel"> <string name="landmarks_tab_title" value="MES REPÈRES"/> <string name="teleport_history_tab_title" value="HISTORIQUE DES TÉLÉPORTATIONS"/> - <filter_editor label="Filtrer les lieux" name="Filter"/> + <filter_editor label="Filtrer Mes lieux" name="Filter"/> <panel name="button_panel"> <button label="Téléporter" name="teleport_btn" tool_tip="Me téléporter jusqu'à la zone sélectionnée"/> <button label="Carte" name="map_btn"/> diff --git a/indra/newview/skins/default/xui/fr/panel_preferences_advanced.xml b/indra/newview/skins/default/xui/fr/panel_preferences_advanced.xml index 0c0cc29e7a..4b8559fdde 100644 --- a/indra/newview/skins/default/xui/fr/panel_preferences_advanced.xml +++ b/indra/newview/skins/default/xui/fr/panel_preferences_advanced.xml @@ -1,48 +1,29 @@ <?xml version="1.0" encoding="utf-8"?> -<panel name="advanced"> - <panel.string name="resolution_format"> - [RES_X] x [RES_Y] - </panel.string> +<panel label="Avancées" name="advanced"> <panel.string name="aspect_ratio_text"> [NUM]:[DEN] </panel.string> - <check_box label="Bulles de chat" name="bubble_text_chat"/> - <color_swatch name="background" tool_tip="Choisir la couleur des bulles de chat"/> - <slider label="Opacité" name="bubble_chat_opacity"/> - <text width="140" name="AspectRatioLabel1" tool_tip="largeur/hauteur"> - Rapport hauteur/largeur - </text> - <combo_box name="aspect_ratio" tool_tip="largeur/hauteur"> - <combo_box.item label="4:3 (Standard CRT)" name="item1"/> - <combo_box.item label="5:4 (1280 x 1024 LCD)" name="item2"/> - <combo_box.item label="8:5 (écran large)" name="item3"/> - <combo_box.item label="16:9 (plein écran)" name="item4"/> - </combo_box> - <check_box label="Détection automatique" name="aspect_auto_detect"/> - <text name="heading1"> - Caméra : - </text> <slider label="Angle de vue" name="camera_fov"/> <slider label="Distance" name="camera_offset_scale"/> <text name="heading2"> - Positionnement automatique pour : + Positionnement automatique pour : </text> <check_box label="Construire/Éditer" name="edit_camera_movement" tool_tip="Utilisez le positionnement automatique de la caméra quand vous accédez au mode de modification et quand vous le quittez"/> <check_box label="Apparence" name="appearance_camera_movement" tool_tip="Utiliser le positionnement automatique de la caméra quand je suis en mode Édition"/> - <text name="heading3"> - Avatars : - </text> <check_box label="Afficher en vue subjective" name="first_person_avatar_visible"/> <check_box label="Les touches de direction me font toujours me déplacer" name="arrow_keys_move_avatar_check"/> <check_box label="Appuyer deux fois et maintenir enfoncé pour courir" name="tap_tap_hold_to_run"/> <check_box label="Faire bouger les lèvres de l'avatar quand il parle" name="enable_lip_sync"/> - <check_box label="Afficher les erreurs de script" name="show_script_errors"/> + <check_box label="Bulles de chat" name="bubble_text_chat"/> + <slider label="Opacité" name="bubble_chat_opacity"/> + <color_swatch name="background" tool_tip="Choisir la couleur des bulles de chat"/> + <check_box label="Afficher les erreurs de script dans :" name="show_script_errors"/> <radio_group name="show_location"> - <radio_item label="En chat" name="0"/> - <radio_item label="Dans une fenêtre" name="1"/> + <radio_item label="Chat près de vous" name="0"/> + <radio_item label="Autre fenêtre" name="1"/> </radio_group> - <check_box label="Basculer le mode micro quand j'appuie sur la touche de contrôle de la fonction Parler :" name="push_to_talk_toggle_check" tool_tip="En mode bascule, appuyez une fois sur la touche de contrôle de la fonction, puis relâchez-la pour activer/désactiver votre micro. Si vous n'êtes pas en mode bascule, le micro ne diffuse votre voix que quand vous maintenez la touche de contrôle de la fonction enfoncée."/> + <check_box label="Activer/désactiver la fonction Parler quand j'appuie sur :" name="push_to_talk_toggle_check" tool_tip="En mode bascule, appuyez une fois sur la touche de contrôle de la fonction, puis relâchez-la pour activer/désactiver votre micro. Si vous n'êtes pas en mode bascule, le micro ne diffuse votre voix que quand vous maintenez la touche de contrôle de la fonction enfoncée."/> <line_editor label="Touche de contrôle de la fonction Appuyer pour parler" name="modifier_combo"/> <button label="Définir la touche" name="set_voice_hotkey_button"/> - <button label="Bouton central de la souris" name="set_voice_middlemouse_button"/> + <button label="Bouton central de la souris" name="set_voice_middlemouse_button" tool_tip="Réinitialiser sur le bouton central de la souris"/> </panel> diff --git a/indra/newview/skins/default/xui/fr/panel_preferences_alerts.xml b/indra/newview/skins/default/xui/fr/panel_preferences_alerts.xml index 73f4e1e2bd..901a92ed1b 100644 --- a/indra/newview/skins/default/xui/fr/panel_preferences_alerts.xml +++ b/indra/newview/skins/default/xui/fr/panel_preferences_alerts.xml @@ -6,9 +6,9 @@ <check_box label="Quand je dépense ou que je reçois des L$" name="notify_money_change_checkbox"/> <check_box label="Quand mes amis se connectent ou se déconnectent" name="friends_online_notify_checkbox"/> <text name="show_label"> - Toujours afficher ces notifications : + Toujours afficher : </text> <text name="dont_show_label"> - Ne jamais afficher ces notifications : + Ne jamais afficher : </text> </panel> diff --git a/indra/newview/skins/default/xui/fr/panel_preferences_chat.xml b/indra/newview/skins/default/xui/fr/panel_preferences_chat.xml index 25a8e3b6d4..27242ec3de 100644 --- a/indra/newview/skins/default/xui/fr/panel_preferences_chat.xml +++ b/indra/newview/skins/default/xui/fr/panel_preferences_chat.xml @@ -42,6 +42,6 @@ <check_box label="Activer l'historique des chats en texte brut" name="plain_text_chat_history"/> <radio_group name="chat_window" tool_tip="Afficher vos messages instantanés dans plusieurs fenêtres ou dans une seule fenêtre avec plusieurs onglets (redémarrage requis)"> <radio_item label="Plusieurs fenêtres" name="radio" value="0"/> - <radio_item label="Une fenêtre" name="radio2" value="1"/> + <radio_item label="Onglets" name="radio2" value="1"/> </radio_group> </panel> diff --git a/indra/newview/skins/default/xui/fr/panel_preferences_general.xml b/indra/newview/skins/default/xui/fr/panel_preferences_general.xml index b359cf56d8..c3bbe18a7c 100644 --- a/indra/newview/skins/default/xui/fr/panel_preferences_general.xml +++ b/indra/newview/skins/default/xui/fr/panel_preferences_general.xml @@ -51,10 +51,10 @@ Mes effets : </text> <text name="title_afk_text"> - Délai d'absence : + Me montrer absent après : </text> <color_swatch label="" name="effect_color_swatch" tool_tip="Cliquer pour ouvrir le sélecteur de couleurs"/> - <combo_box label="Délai d'absence :" name="afk"> + <combo_box label="Me montrer absent après :" name="afk"> <combo_box.item label="2 minutes" name="item0"/> <combo_box.item label="5 minutes" name="item1"/> <combo_box.item label="10 minutes" name="item2"/> diff --git a/indra/newview/skins/default/xui/fr/panel_preferences_graphics1.xml b/indra/newview/skins/default/xui/fr/panel_preferences_graphics1.xml index 9576119eb5..aa004d2c84 100644 --- a/indra/newview/skins/default/xui/fr/panel_preferences_graphics1.xml +++ b/indra/newview/skins/default/xui/fr/panel_preferences_graphics1.xml @@ -21,7 +21,7 @@ Plus rapide </text> <text name="BetterText"> - Meilleur + Meilleure </text> <text name="ShadersPrefText"> Faible diff --git a/indra/newview/skins/default/xui/fr/panel_preferences_privacy.xml b/indra/newview/skins/default/xui/fr/panel_preferences_privacy.xml index 88b68d1a06..3035183b28 100644 --- a/indra/newview/skins/default/xui/fr/panel_preferences_privacy.xml +++ b/indra/newview/skins/default/xui/fr/panel_preferences_privacy.xml @@ -13,12 +13,13 @@ <check_box label="Accepter les cookies" name="cookies_enabled"/> <check_box label="Média activé" name="media_enabled"/> <check_box label="Autoriser la lecture automatique du média" name="autoplay_enabled"/> + <check_box label="Musique activée" name="music_enabled"/> <text name="Logs:"> Journaux : </text> <check_box label="Sauvegarder les chats près de moi sur mon ordinateur" name="log_nearby_chat"/> <check_box label="Sauvegarder les IM sur mon ordinateur" name="log_instant_messages"/> - <check_box label="Inclure les heures" name="show_timestamps_check_im"/> + <check_box label="Inclure les dates et heures" name="show_timestamps_check_im"/> <text name="log_path_desc"> Emplacement : </text> diff --git a/indra/newview/skins/default/xui/fr/panel_preferences_setup.xml b/indra/newview/skins/default/xui/fr/panel_preferences_setup.xml index d477a9532d..3c789574a4 100644 --- a/indra/newview/skins/default/xui/fr/panel_preferences_setup.xml +++ b/indra/newview/skins/default/xui/fr/panel_preferences_setup.xml @@ -18,29 +18,29 @@ kbps </text> <check_box label="Port de connexion personnalisé" name="connection_port_enabled"/> - <spinner label="Numéro de port :" label_width="95" name="web_proxy_port" width="170"/> + <spinner label="Numéro de port :" name="connection_port"/> <text name="cache_size_label_l"> Taille de la mémoire </text> <text name="text_box5"> Mo </text> - <button label="Parcourir" label_selected="Parcourir" name="set_cache"/> - <button label="Réinitialiser" label_selected="Réinitialiser" name="reset_cache"/> <text name="Cache location"> Emplacement du cache : </text> + <button label="Parcourir" label_selected="Parcourir" name="set_cache"/> + <button label="Réinitialiser" label_selected="Réinitialiser" name="reset_cache"/> <text name="Web:"> Web : </text> <radio_group name="use_external_browser"> - <radio_item label="Utiliser le navigateur intégré" name="internal" tool_tip="Utilisez le navigateur intégré pour obtenir de l'aide, ouvrir des liens, etc. Ce navigateur s'ouvre dans [APP_NAME]."/> - <radio_item label="Utiliser mon navigateur (IE, Firefox etc.)" name="external" tool_tip="Utiliser le navigateur web système par défaut pour l'aide, les liens etc. Non recommandé en mode plein écran."/> + <radio_item label="Utiliser le navigateur intégré" name="internal" tool_tip="Utilisez le navigateur intégré pour obtenir de l'aide, ouvrir des liens, etc. Ce navigateur s'ouvre dans [APP_NAME]." value="0"/> + <radio_item label="Utiliser mon navigateur (IE, Firefox, Safari)" name="external" tool_tip="Utiliser le navigateur web système par défaut pour l'aide, les liens etc. Non recommandé en mode plein écran." value="1"/> </radio_group> - <check_box initial_value="false" label="Proxy web" name="web_proxy_enabled"/> - <line_editor name="web_proxy_editor" tool_tip="Le nom ou adresse IP du proxy que vous souhaitez utiliser"/> - <button label="Parcourir" label_selected="Parcourir" name="set_proxy"/> + <check_box initial_value="false" label="Activer le proxy Web" name="web_proxy_enabled"/> <text name="Proxy location"> Emplacement du proxy : </text> + <line_editor name="web_proxy_editor" tool_tip="Le nom ou adresse IP du proxy que vous souhaitez utiliser"/> + <spinner label="Numéro de port :" label_width="95" name="web_proxy_port" width="170"/> </panel> diff --git a/indra/newview/skins/default/xui/fr/panel_profile.xml b/indra/newview/skins/default/xui/fr/panel_profile.xml index 19c6a3b090..364426fed1 100644 --- a/indra/newview/skins/default/xui/fr/panel_profile.xml +++ b/indra/newview/skins/default/xui/fr/panel_profile.xml @@ -28,21 +28,25 @@ </panel> <text name="title_member_text" value="Résident depuis :"/> <text name="title_acc_status_text" value="Statut du compte :"/> - <text name="acc_status_text"> + <text_editor name="acc_status_text"> Résident. Aucune info de paiement enregistrée. Linden. - </text> + </text_editor> <text name="title_partner_text" value="Partenaire :"/> + <panel name="partner_data_panel"> + <name_box initial_value="(récupération en cours)" name="partner_text"/> + </panel> <text name="title_groups_text" value="Groupes :"/> </panel> </scroll_container> </layout_panel> <layout_panel name="profile_buttons_panel"> <button label="Devenir amis" name="add_friend" tool_tip="Proposer à ce résident de devenir votre ami"/> - <button label="IM" name="im" width="30" tool_tip="Ouvrir une session IM"/> - <button label="Appeler" name="call" width="60" tool_tip="Appeler ce résident"/> + <button label="IM" name="im" tool_tip="Ouvrir une session IM" width="30"/> + <button label="Appeler" name="call" tool_tip="Appeler ce résident" width="60"/> <button label="Carte" name="show_on_map_btn" tool_tip="Afficher le résident sur la carte"/> <button label="Téléporter" name="teleport" tool_tip="Proposez une téléportation"/> + <button label="▼" name="overflow_btn" tool_tip="Payer ou partager l'inventaire avec le résident"/> </layout_panel> <layout_panel name="profile_me_buttons_panel"> <button label="Modifier le profil" name="edit_profile_btn" tool_tip="Modifier vos informations personnelles"/> diff --git a/indra/newview/skins/default/xui/fr/panel_script_limits_my_avatar.xml b/indra/newview/skins/default/xui/fr/panel_script_limits_my_avatar.xml index 47d8382e57..e541fae31f 100644 --- a/indra/newview/skins/default/xui/fr/panel_script_limits_my_avatar.xml +++ b/indra/newview/skins/default/xui/fr/panel_script_limits_my_avatar.xml @@ -1,10 +1,13 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <panel label="MON AVATAR" name="script_limits_my_avatar_panel"> + <text name="script_memory"> + Utilisation des scripts d'avatars + </text> <text name="loading_text"> Chargement... </text> <scroll_list name="scripts_list"> - <scroll_list.columns label="Taille (Ko)" width="80" name="size"/> + <scroll_list.columns label="Taille (Ko)" name="size" width="80"/> <scroll_list.columns label="URL" name="urls"/> <scroll_list.columns label="Nom de l'objet" name="name"/> <scroll_list.columns label="Endroit" name="location"/> diff --git a/indra/newview/skins/default/xui/fr/panel_script_limits_region_memory.xml b/indra/newview/skins/default/xui/fr/panel_script_limits_region_memory.xml index 9426047ee1..751abd6f1d 100644 --- a/indra/newview/skins/default/xui/fr/panel_script_limits_region_memory.xml +++ b/indra/newview/skins/default/xui/fr/panel_script_limits_region_memory.xml @@ -3,20 +3,18 @@ <text name="script_memory"> Mémoire des scripts de parcelles </text> - <text name="parcels_listed"> - Parcelles possédées : - </text> - <text name="memory_used"> - Mémoire utilisée : - </text> + <text name="parcels_listed"/> + <text name="memory_used"/> <text name="loading_text"> Chargement... </text> <scroll_list name="scripts_list"> - <scroll_list.columns label="Taille (Ko)" width="80" name="size"/> + <scroll_list.columns label="Taille (Ko)" name="size" width="80"/> + <scroll_list.columns label="URL" name="urls"/> <scroll_list.columns label="Nom de l'objet" name="name"/> - <scroll_list.columns label="Propriétaire d'objet" width="140" name="owner"/> - <scroll_list.columns label="Parcelle/emplacement" name="location"/> + <scroll_list.columns label="Propriétaire d'objet" name="owner" width="140"/> + <scroll_list.columns label="Parcelle" name="parcel"/> + <scroll_list.columns label="Endroit" name="location"/> </scroll_list> <button label="Rafraîchir la liste" name="refresh_list_btn"/> <button label="Surbrillance" name="highlight_btn"/> diff --git a/indra/newview/skins/default/xui/fr/panel_status_bar.xml b/indra/newview/skins/default/xui/fr/panel_status_bar.xml index ae575a9fac..600676ee71 100644 --- a/indra/newview/skins/default/xui/fr/panel_status_bar.xml +++ b/indra/newview/skins/default/xui/fr/panel_status_bar.xml @@ -24,7 +24,7 @@ <button label="" label_selected="" name="buycurrency" tool_tip="Mon solde"/> <button label="Acheter des L$" name="buyL" tool_tip="Cliquez pour acheter plus de L$"/> <text name="TimeText" tool_tip="Heure actuelle (Pacifique)"> - midi + 00h00 PST </text> <button name="volume_btn" tool_tip="Contrôle du volume global"/> </panel> diff --git a/indra/newview/skins/default/xui/fr/sidepanel_task_info.xml b/indra/newview/skins/default/xui/fr/sidepanel_task_info.xml index 688bed8cbf..f791877fa8 100644 --- a/indra/newview/skins/default/xui/fr/sidepanel_task_info.xml +++ b/indra/newview/skins/default/xui/fr/sidepanel_task_info.xml @@ -37,7 +37,7 @@ Vente mixte </panel.string> <text name="title" value="Profil de l'objet"/> - <text name="where" value="(dans le monde virtuel)"/> + <text name="where" value="(dans Second Life)"/> <panel label=""> <text name="Name:"> Nom : diff --git a/indra/newview/skins/default/xui/fr/strings.xml b/indra/newview/skins/default/xui/fr/strings.xml index c6f73dde21..aff2187484 100644 --- a/indra/newview/skins/default/xui/fr/strings.xml +++ b/indra/newview/skins/default/xui/fr/strings.xml @@ -227,9 +227,6 @@ <string name="AvatarNameMultiple"> (multiple) </string> - <string name="AvatarNameHippos"> - (hippos) - </string> <string name="GroupNameNone"> (aucun) </string> @@ -593,6 +590,9 @@ <string name="hang_up"> Déconnecté du chat vocal </string> + <string name="reconnect_nearby"> + Vous allez maintenant être reconnecté(e) au chat vocal près de vous. + </string> <string name="ScriptQuestionCautionChatGranted"> '[OBJECTNAME]', un objet appartenant à [OWNERNAME], situé dans [REGIONNAME] à [REGIONPOS], a reçu le droit de : [PERMISSIONS]. </string> @@ -642,7 +642,7 @@ Modéré </string> <string name="SIM_ACCESS_ADULT"> - Adult + Adulte </string> <string name="SIM_ACCESS_DOWN"> Hors ligne @@ -741,10 +741,10 @@ Gants </string> <string name="undershirt"> - Sous-vêtements (homme) + Débardeur </string> <string name="underpants"> - Sous-vêtements (femme) + Caleçon </string> <string name="skirt"> Jupe @@ -1324,6 +1324,9 @@ <string name="ScriptLimitsRequestError"> Une erreur est survenue pendant la requête d'informations. </string> + <string name="ScriptLimitsRequestNoParcelSelected"> + Aucune parcelle sélectionnée + </string> <string name="ScriptLimitsRequestWrongRegion"> Erreur : les informations de script ne sont disponibles que dans votre région actuelle. </string> @@ -1706,7 +1709,7 @@ Appartenant aux Lindens </string> <string name="Adult"> - Adult + Adulte </string> <string name="Arts&Culture"> Arts et culture @@ -1897,7 +1900,7 @@ Si ce message persiste, veuillez aller sur la page [SUPPORT_SITE]. Mèches de derrière </string> <string name="Baggy"> - Cernés + Plus </string> <string name="Bangs"> Frange @@ -1924,7 +1927,7 @@ Si ce message persiste, veuillez aller sur la page [SUPPORT_SITE]. Volume : Haut </string> <string name="Big Head"> - Grosse tête + Plus </string> <string name="Big Pectorals"> Gros pectoraux @@ -1960,13 +1963,13 @@ Si ce message persiste, veuillez aller sur la page [SUPPORT_SITE]. Grains de beauté </string> <string name="Body Thick"> - Corps épais + Plus </string> <string name="Body Thickness"> Épaisseur du corps </string> <string name="Body Thin"> - Corps mince + Moins </string> <string name="Bow Legged"> Jambes arquées @@ -2098,7 +2101,7 @@ Si ce message persiste, veuillez aller sur la page [SUPPORT_SITE]. Déviation du nez </string> <string name="Cuff Flare"> - Jambe + Jambes </string> <string name="Dark"> Sombre @@ -2215,7 +2218,7 @@ Si ce message persiste, veuillez aller sur la page [SUPPORT_SITE]. Jambes larges </string> <string name="Flat"> - Plat + Moins </string> <string name="Flat Butt"> Fesses plates @@ -2380,7 +2383,7 @@ Si ce message persiste, veuillez aller sur la page [SUPPORT_SITE]. Saillie de la mâchoire </string> <string name="Jaw Shape"> - Forme de la mâchoire + Mâchoire </string> <string name="Join"> Rapprochés @@ -2461,7 +2464,7 @@ Si ce message persiste, veuillez aller sur la page [SUPPORT_SITE]. Fente labiale </string> <string name="Lip Cleft Depth"> - Profondeur fente labiale + Fente labiale </string> <string name="Lip Fullness"> Volume des lèvres @@ -2488,7 +2491,7 @@ Si ce message persiste, veuillez aller sur la page [SUPPORT_SITE]. Couleur du rouge à lèvres </string> <string name="Long"> - Long + Plus </string> <string name="Long Head"> Tête longue @@ -2587,7 +2590,7 @@ Si ce message persiste, veuillez aller sur la page [SUPPORT_SITE]. Plus </string> <string name="More Lower Lip"> - Plus + Inférieure plus grosse </string> <string name="More Muscles"> Plus @@ -2611,7 +2614,7 @@ Si ce message persiste, veuillez aller sur la page [SUPPORT_SITE]. Plus </string> <string name="More Upper Lip"> - Plus + Supérieure plus grosse </string> <string name="More Vertical"> Plus @@ -2647,7 +2650,7 @@ Si ce message persiste, veuillez aller sur la page [SUPPORT_SITE]. Couleur du vernis </string> <string name="Narrow"> - Étroit + Moins </string> <string name="Narrow Back"> Arrière étroit @@ -2827,7 +2830,7 @@ Si ce message persiste, veuillez aller sur la page [SUPPORT_SITE]. Plateforme (largeur) </string> <string name="Pointy"> - Pointu + Pointue </string> <string name="Pointy Heels"> Talons pointus @@ -2845,10 +2848,10 @@ Si ce message persiste, veuillez aller sur la page [SUPPORT_SITE]. Œil droit saillant </string> <string name="Puffy"> - Gonflées + Plus </string> <string name="Puffy Eyelids"> - Paupières + Cernes </string> <string name="Rainbow Color"> Couleur arc en ciel @@ -3013,10 +3016,10 @@ Si ce message persiste, veuillez aller sur la page [SUPPORT_SITE]. Petites mains </string> <string name="Small Head"> - Petite tête + Moins </string> <string name="Smooth"> - Lisses + Moins </string> <string name="Smooth Hair"> Cheveux lisses @@ -3034,7 +3037,7 @@ Si ce message persiste, veuillez aller sur la page [SUPPORT_SITE]. Mèches en pointe </string> <string name="Square"> - Carré + Carrée </string> <string name="Square Toe"> Orteil carré @@ -3145,7 +3148,7 @@ Si ce message persiste, veuillez aller sur la page [SUPPORT_SITE]. Menton supérieur </string> <string name="Upper Eyelid Fold"> - Paupière supérieure + Paupière sup. </string> <string name="Upturned"> En trompette @@ -3163,7 +3166,7 @@ Si ce message persiste, veuillez aller sur la page [SUPPORT_SITE]. Cheveux blancs </string> <string name="Wide"> - Large + Plus </string> <string name="Wide Back"> Derrière large diff --git a/indra/newview/skins/default/xui/ja/floater_about.xml b/indra/newview/skins/default/xui/ja/floater_about.xml index 78bc355f4b..9105c2613d 100644 --- a/indra/newview/skins/default/xui/ja/floater_about.xml +++ b/indra/newview/skins/default/xui/ja/floater_about.xml @@ -8,9 +8,9 @@ コンパイラー [COMPILER] [COMPILER_VERSION] バージョン </floater.string> <floater.string name="AboutPosition"> - You are at [POSITION_0,number,1], [POSITION_1,number,1], [POSITION_2,number,1] in [REGION] located at [HOSTNAME] ([HOSTIP]) + あなたの現在地は、[POSITION_0,number,1], [POSITION_1,number,1], [POSITION_2,number,1] の [REGION] です。位置は <nolink>[HOSTNAME]</nolink> です。([HOSTIP]) [SERVER_VERSION] -[[SERVER_RELEASE_NOTES_URL] [ReleaseNotes]] +[[SERVER_RELEASE_NOTES_URL] [リリースノート]] </floater.string> <floater.string name="AboutSystem"> CPU: [CPU] diff --git a/indra/newview/skins/default/xui/ja/floater_about_land.xml b/indra/newview/skins/default/xui/ja/floater_about_land.xml index 49486d791a..bf3452c161 100644 --- a/indra/newview/skins/default/xui/ja/floater_about_land.xml +++ b/indra/newview/skins/default/xui/ja/floater_about_land.xml @@ -107,7 +107,7 @@ <text name="Selling with no objects in parcel."> オブジェクトは販売しない </text> - <button label="土地販売の取り消し" label_selected="土地販売の取り消し" name="Cancel Land Sale" width="100"/> + <button label="土地販売の取り消し" label_selected="土地販売の取り消し" name="Cancel Land Sale" width="100"/> <text name="Claimed:"> 取得日時: </text> @@ -206,7 +206,7 @@ [MAX]の内[COUNT]([DELETED]を削除) </panel.string> <text name="parcel_object_bonus"> - 地域オブジェクトボーナス要因: [BONUS] + オブジェクトボーナス: [BONUS] </text> <text name="Simulator primitive usage:" width="500"> プリム使用状況: @@ -263,7 +263,7 @@ <text name="Object Owners:" width="150"> オブジェクトのオーナー: </text> - <button label="リスト更新" label_selected="リスト更新" left="146" name="Refresh List" tool_tip="オブジェクトのリストを更新"/> + <button label="リスト更新" label_selected="リスト更新" left="146" name="Refresh List" tool_tip="オブジェクトのリストを更新します"/> <button label="オブジェクトを返却する" label_selected="オブジェクトの返却..." left="256" name="Return objects..."/> <name_list label="カウント" name="owner list"> <name_list.columns label="タイプ" name="type"/> @@ -329,8 +329,8 @@ 土地オプション: </text> <check_box label="安全(ダメージなし)" name="check safe" tool_tip="チェックを入れるとこの土地でのダメージコンバットが無効になり、「安全」に設定されます。 チェックを外すとダメージコンバットが有効になります。"/> - <check_box label="プッシングを制限" name="PushRestrictCheck" tool_tip="スクリプトによるプッシングを制限します。 このオプションを選択することにより、あなたの土地での破壊的行動を妨げることができます。"/> - <check_box label="検索に区画を表示(週 L$30)" name="ShowDirectoryCheck" tool_tip="検索結果でこの区画を表示させる"/> + <check_box label="プッシングを制限" name="PushRestrictCheck" tool_tip="スクリプトによるプッシングを制限します。 このオプションを選択することにより、あなたの土地での破壊的行動を防ぐことができます。"/> + <check_box label="検索に区画を表示(週 L$30)" name="ShowDirectoryCheck" tool_tip="この区画を検索結果に表示します"/> <combo_box name="land category with adult"> <combo_box.item label="全カテゴリ" name="item0"/> <combo_box.item label="Linden所在地" name="item1"/> @@ -383,7 +383,7 @@ <text name="with media:"> 種類: </text> - <combo_box name="media type" tool_tip="URL が動画、ウェブ・ページ、その他のメディアの場合に指定します"/> + <combo_box name="media type" tool_tip="URL が動画、Webページ、その他のメディアの場合に指定します"/> <text name="at URL:"> ホームページ: </text> @@ -396,20 +396,20 @@ <text name="Description:"> 説明: </text> - <line_editor name="url_description" tool_tip="[再生]/[ロード]ボタンの隣に表示されるテキスト"/> + <line_editor name="url_description" tool_tip="「再生」「ロード」ボタンの隣に表示されるテキストです"/> <text name="Media texture:"> - テクスチャの置き換え: + テクスチャ置き換え: </text> - <texture_picker label="" name="media texture" tool_tip="写真をクリックして選択" left="120"/> + <texture_picker label="" left="120" name="media texture" tool_tip="写真をクリックして選択"/> <text name="replace_texture_help" width="290"> このテクスチャを使用するオブジェクトのプレイをクリックすると、ムービーや Web ページを表示します。 テクスチャを変更するにはサムネイルを選択してください。 </text> <check_box label="スケールを自動設定" name="media_auto_scale" tool_tip="このオプションをチェックすると、この区画のコンテンツのスケールが自動的に設定されます。 動作速度と画質が少し低下することがありますが、他のテクスチャーのスケーリングや整列が必要になることはありません。"/> - <text name="media_size" tool_tip="レンダリングするウェブ・メディアのサイズ。デフォルトの 0 のままにします。"> + <text name="media_size" tool_tip="レンダリングするWebメディアのサイズです。デフォルトの 0 のままにします。"> サイズ: </text> - <spinner name="media_size_width" tool_tip="レンダリングするウェブ・メディアのサイズ。デフォルトの 0 のままにします。"/> - <spinner name="media_size_height" tool_tip="レンダリングするウェブ・メディアのサイズ。デフォルトの 0 のままにします。"/> + <spinner name="media_size_width" tool_tip="レンダリングするWebメディアのサイズです。デフォルトの 0 のままにします。"/> + <spinner name="media_size_height" tool_tip="レンダリングするWebメディアのサイズです。デフォルトの 0 のままにします。"/> <text name="pixels"> ピクセル </text> @@ -422,16 +422,17 @@ <text name="MusicURL:"> 音楽 URL: </text> + <check_box label="URL を非表示にする" name="hide_music_url" tool_tip="このオプションにチェックを入れると、権限のない人が区画情報を見たときに音楽のURLが隠れます。"/> <text name="Sound:"> サウンド: </text> - <check_box label="ジェスチャーとオブジェクトの音をこの区画だけに限定" name="check sound local"/> + <check_box label="ジェスチャーとオブジェクトの音をこの区画だけに限定する" name="check sound local"/> <text name="Voice settings:"> ボイス: </text> <check_box label="ボイスを有効にする" name="parcel_enable_voice_channel"/> <check_box label="ボイスを有効にする(不動産設定)" name="parcel_enable_voice_channel_is_estate_disabled"/> - <check_box label="この区画でのボイス使用を制限" name="parcel_enable_voice_channel_parcel"/> + <check_box label="ボイスをこの区画に限定する" name="parcel_enable_voice_channel_local"/> </panel> <panel label="アクセス" name="land_access_panel"> <panel.string name="access_estate_defined"> @@ -441,16 +442,16 @@ 1つ以上のオプションが、不動産レベルで設定されています。 </panel.string> <text name="Limit access to this parcel to:"> - この区画にアクセス + この区画へのアクセス </text> - <check_box label="パブリックアクセスを許可 [MATURITY]" name="public_access"/> + <check_box label="パブリックアクセスを許可する [MATURITY]" name="public_access"/> <text name="Only Allow"> - 次の住人のアクセス禁止: + 次の住人のアクセスを許可: </text> <check_box label="支払情報登録済 [ESTATE_PAYMENT_LIMIT]" name="limit_payment" tool_tip="未確認の住人の立入を禁止します。"/> <check_box label="年齢確認 [ESTATE_AGE_LIMIT]" name="limit_age_verified" tool_tip="年齢確認を済ませていない住人の立入を禁止します。 詳しい情報は [SUPPORT_SITE] をご覧下さい。"/> - <check_box label="グループ・アクセスを許可:[GROUP]" name="GroupCheck" tool_tip="[一般]タブで、グループを選択してください。"/> - <check_box label="入場許可を販売:" name="PassCheck" tool_tip="この区画への一時的なアクセスを許可"/> + <check_box label="グループのアクセスを許可:[GROUP]" name="GroupCheck" tool_tip="[一般]タブで、グループを選択してください。"/> + <check_box label="入場許可を販売:" name="PassCheck" tool_tip="この区画への一時的なアクセスを許可します"/> <combo_box name="pass_combo"> <combo_box.item label="誰でも" name="Anyone"/> <combo_box.item label="グループ" name="Group"/> @@ -467,7 +468,7 @@ </panel> <panel name="Banned_layout_panel"> <text label="禁止" name="BanCheck"> - 立入禁止された住人 + 立入を禁止された住人 </text> <name_list name="BannedList" tool_tip="(合計 [LISTED] 人、最大 [MAX] 人)"/> <button label="追加" name="add_banned"/> diff --git a/indra/newview/skins/default/xui/ja/floater_animation_preview.xml b/indra/newview/skins/default/xui/ja/floater_animation_preview.xml index f0378f61d7..8c2ac17ace 100644 --- a/indra/newview/skins/default/xui/ja/floater_animation_preview.xml +++ b/indra/newview/skins/default/xui/ja/floater_animation_preview.xml @@ -106,6 +106,9 @@ <floater.string name="E_ST_NO_XLT_EMOTE"> エモート名を読みとれません。 </floater.string> + <floater.string name="E_ST_BAD_ROOT"> + ルートジョイント名が無効です。「hip」を使用してください。 + </floater.string> <text name="name_label"> 名前: </text> @@ -168,17 +171,17 @@ <combo_box.item label="座る" name="Sitting"/> <combo_box.item label="飛ぶ" name="Flying"/> </combo_box> - <spinner label="フェーズイン(秒)" name="ease_in_time" tool_tip="アニメーションのブレンドイン時間(秒)"/> - <spinner label="フェーズアウト(秒)" name="ease_out_time" tool_tip="アニメーションのブレンドアウト時間(秒)"/> + <spinner label="イーズイン(秒)" name="ease_in_time" tool_tip="アニメーションのブレンドイン時間(秒)"/> + <spinner label="イーズアウト(秒)" name="ease_out_time" tool_tip="アニメーションのブレンドアウト時間(秒)"/> <button label="" name="play_btn" tool_tip="アニメーションを再生する"/> <button name="pause_btn" tool_tip="アニメーションを一時停止する"/> <button label="" name="stop_btn" tool_tip="アニメーションの再生を停止"/> <slider label="" name="playback_slider"/> <text name="bad_animation_text"> - アニメーション・ファイルを読み込めません。 + アニメーションファイルを読み込めません。 Poser 4からエクスポートされたBVHファイルを推奨します。 </text> - <button label="アップロードL$[AMOUNT]" name="ok_btn"/> + <button label="アップロードL$[AMOUNT]" name="ok_btn"/> <button label="取り消し" name="cancel_btn"/> </floater> diff --git a/indra/newview/skins/default/xui/ja/floater_avatar_textures.xml b/indra/newview/skins/default/xui/ja/floater_avatar_textures.xml index ff8b2083ad..0ea913e66a 100644 --- a/indra/newview/skins/default/xui/ja/floater_avatar_textures.xml +++ b/indra/newview/skins/default/xui/ja/floater_avatar_textures.xml @@ -7,7 +7,7 @@ ベークドテクスチャ </text> <text name="composite_label" width="128"> - 合成テクスチャー + 合成テクスチャ </text> <button label="テクスチャID一覧をコンソールに書き込む" label_selected="捨てる" name="Dump" width="200"/> <scroll_container name="profile_scroll"> diff --git a/indra/newview/skins/default/xui/ja/floater_build_options.xml b/indra/newview/skins/default/xui/ja/floater_build_options.xml index 8d3dba3883..9fd788d9cb 100644 --- a/indra/newview/skins/default/xui/ja/floater_build_options.xml +++ b/indra/newview/skins/default/xui/ja/floater_build_options.xml @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="build options floater" title="グリッドオプション"> <spinner label="グリッドユニット(メートル)" name="GridResolution"/> - <spinner label="グリッド範囲(メートル)" name="GridDrawSize"/> + <spinner label="グリッド゙範囲(メートル)" name="GridDrawSize"/> <check_box label="サブユニットにスナップ" name="GridSubUnit"/> <check_box label="横断面を表示" name="GridCrossSection"/> <text name="grid_opacity_label" tool_tip="グリッドの透明度"> diff --git a/indra/newview/skins/default/xui/ja/floater_bulk_perms.xml b/indra/newview/skins/default/xui/ja/floater_bulk_perms.xml index 7ac9187aad..be24960c6e 100644 --- a/indra/newview/skins/default/xui/ja/floater_bulk_perms.xml +++ b/indra/newview/skins/default/xui/ja/floater_bulk_perms.xml @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> -<floater name="floaterbulkperms" title="コンテンツ権限の編集"> +<floater name="floaterbulkperms" title="中身の権限の編集"> <floater.string name="nothing_to_modify_text"> - 選択した中に編集できないコンテンツが含まれています + 選択した中に編集できないものが含まれています </floater.string> <floater.string name="status_text"> [NAME]に権限を設定中です。 @@ -28,12 +28,12 @@ <icon name="icon_script" tool_tip="スクリプト"/> <check_box label="サウンド" name="check_sound"/> <icon name="icon_sound" tool_tip="サウンド"/> - <check_box label="テクスチャー" name="check_texture"/> + <check_box label="テクスチャ" name="check_texture"/> <icon name="icon_texture" tool_tip="テクスチャ"/> <button label="すべてに √" label_selected="全て" name="check_all"/> <button label="クリア" label_selected="なし" name="check_none"/> <text name="newperms"> - 新しいコンテンツ権限 + 新しい中身の権限 </text> <text name="GroupLabel"> グループ: diff --git a/indra/newview/skins/default/xui/ja/floater_buy_contents.xml b/indra/newview/skins/default/xui/ja/floater_buy_contents.xml index 53b7f24141..69d4faf5b8 100644 --- a/indra/newview/skins/default/xui/ja/floater_buy_contents.xml +++ b/indra/newview/skins/default/xui/ja/floater_buy_contents.xml @@ -1,22 +1,22 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> -<floater min_width="340" name="floater_buy_contents" title="コンテンツの購入" width="340"> +<floater min_width="340" name="floater_buy_contents" title="中身の購入" width="340"> <text name="contains_text" width="320"> - [NAME]の内容: + [NAME]の中身: </text> <scroll_list name="item_list" width="310"/> <text name="buy_text" width="320"> - コンテンツを[NAME]からL$[AMOUNT]で購入しますか? + 中身を[NAME]からL$[AMOUNT]で購入しますか? </text> <button label="取り消し" label_selected="取り消し" name="cancel_btn" width="73"/> <button label="購入" label_selected="購入" left_delta="-77" name="buy_btn" width="73"/> <check_box label="今すぐ服を着る" left_delta="-125" name="wear_check"/> <text name="no_copy_text"> - (コピーなし) + (コピー不可) </text> <text name="no_modify_text"> - (修正なし) + (修正不可) </text> <text name="no_transfer_text"> - (転送なし) + (再販・プレゼント不可) </text> </floater> diff --git a/indra/newview/skins/default/xui/ja/floater_buy_currency.xml b/indra/newview/skins/default/xui/ja/floater_buy_currency.xml index 357b3682ba..32de533dc4 100644 --- a/indra/newview/skins/default/xui/ja/floater_buy_currency.xml +++ b/indra/newview/skins/default/xui/ja/floater_buy_currency.xml @@ -40,7 +40,7 @@ [NAME] L$ [PRICE] </text> <text name="total_label"> - 新しい残高 + 購入後の残高 </text> <text name="total_amount"> L$ [AMT] diff --git a/indra/newview/skins/default/xui/ja/floater_buy_land.xml b/indra/newview/skins/default/xui/ja/floater_buy_land.xml index 97fae511f6..f332c3d988 100644 --- a/indra/newview/skins/default/xui/ja/floater_buy_land.xml +++ b/indra/newview/skins/default/xui/ja/floater_buy_land.xml @@ -67,12 +67,12 @@ <text name="error_message"> 何か変です </text> - <button label="ウェブ・サイトに移動" name="error_web"/> + <button label="Webサイトに移動" name="error_web"/> <text name="account_action"> - プレミアム・メンバーにアップグレード + プレミアム会員にアップグレード </text> <text name="account_reason"> - 土地を保有できるのはプレミアム・メンバーだけです + 土地を保有できるのはプレミアム会員だけです </text> <combo_box name="account_level"> <combo_box.item label="月額 9.95米ドル、 月払い" name="US$9.95/month,billedmonthly"/> @@ -114,10 +114,10 @@ 再販不可能 </string> <string name="can_change"> - 統合/再分割可能 + 統合・再分割可能 </string> <string name="can_not_change"> - 統合/再分割不可能 + 統合・再分割不可能 </string> <string name="cant_buy_for_group"> あなたはアクティブなグループ用の土地購入を許可されていません @@ -127,7 +127,7 @@ </string> <string name="multiple_parcels_selected"> 複数の異なった区画を選択しました。 -これより小さなエリアを選択してください。 +これより小さな範囲を選択してください。 </string> <string name="no_permission"> あなたはアクティブなグループ用の土地購入を許可されていません @@ -149,7 +149,7 @@ </string> <string name="not_owned_by_you"> 他の使用者に所有された土地が選択されています。 -これより小さなエリアを選択してください。 +これより小さな範囲を選択してください。 </string> <string name="processing"> 購入処理中... @@ -203,7 +203,7 @@ オブジェクト [AMOUNT2] 個サポート </string> <string name="sold_with_objects"> - オブジェクトと共に販売済み + オブジェクト込みで販売 </string> <string name="sold_without_objects"> オブジェクトは含まれていません diff --git a/indra/newview/skins/default/xui/ja/floater_buy_object.xml b/indra/newview/skins/default/xui/ja/floater_buy_object.xml index f807e91573..7a5b7dc140 100644 --- a/indra/newview/skins/default/xui/ja/floater_buy_object.xml +++ b/indra/newview/skins/default/xui/ja/floater_buy_object.xml @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="contents" title="オブジェクトのコピーを購入"> <text name="contents_text"> - 内容: + 中身: </text> <text name="buy_text"> [NAME]からL$[AMOUNT]で購入しますか? @@ -12,15 +12,15 @@ 購入 </text> <string name="title_buy_copy_text"> - 次のものを買う + 次のものを購入 </string> <text name="no_copy_text"> - (コピーなし) + (コピー不可) </text> <text name="no_modify_text"> - (修正なし) + (修正不可) </text> <text name="no_transfer_text"> - (転送なし) + (再販・プレゼント不可) </text> </floater> diff --git a/indra/newview/skins/default/xui/ja/floater_camera.xml b/indra/newview/skins/default/xui/ja/floater_camera.xml index be118273fa..3730bcd385 100644 --- a/indra/newview/skins/default/xui/ja/floater_camera.xml +++ b/indra/newview/skins/default/xui/ja/floater_camera.xml @@ -11,7 +11,7 @@ </floater.string> <panel name="controls"> <joystick_track name="cam_track_stick" tool_tip="カメラを上下左右に動かします"/> - <panel name="zoom" tool_tip="向いてる方法にカメラをズーム"> + <panel name="zoom" tool_tip="向いている方法にカメラをズーム"> <slider_bar name="zoom_slider" tool_tip="向いている方向にカメラをズーム"/> </panel> <joystick_rotate name="cam_rotate_stick" tool_tip="自分を軸にカメラを回す"/> diff --git a/indra/newview/skins/default/xui/ja/floater_color_picker.xml b/indra/newview/skins/default/xui/ja/floater_color_picker.xml index a98da4b8ba..dc87d27a15 100644 --- a/indra/newview/skins/default/xui/ja/floater_color_picker.xml +++ b/indra/newview/skins/default/xui/ja/floater_color_picker.xml @@ -18,7 +18,7 @@ <text name="l_val_text"> 輝度: </text> - <check_box label="今すぐ適用" name="apply_immediate"/> + <check_box label="すぐ適用" name="apply_immediate"/> <button label="" label_selected="" name="color_pipette"/> <button label="取り消し" label_selected="取り消し" name="cancel_btn"/> <button label="OK" label_selected="OK" name="select_btn"/> diff --git a/indra/newview/skins/default/xui/ja/floater_critical.xml b/indra/newview/skins/default/xui/ja/floater_critical.xml index 39f6ee8e3f..f69c24622a 100644 --- a/indra/newview/skins/default/xui/ja/floater_critical.xml +++ b/indra/newview/skins/default/xui/ja/floater_critical.xml @@ -3,10 +3,10 @@ <button label="続行" label_selected="続行" name="Continue" /> <button label="取り消し" label_selected="取り消し" name="Cancel" /> <text name="tos_title"> - クリティカル・メッセージ + クリティカルメッセージ </text> <text name="tos_heading"> - 次のメッセージを注意深くお読みください。 + 次のメッセージを注意してよくお読みください。 </text> <text_editor name="tos_text"> TOS_TEXT diff --git a/indra/newview/skins/default/xui/ja/floater_customize.xml b/indra/newview/skins/default/xui/ja/floater_customize.xml index 7d1809f1ed..4d8b91ff99 100644 --- a/indra/newview/skins/default/xui/ja/floater_customize.xml +++ b/indra/newview/skins/default/xui/ja/floater_customize.xml @@ -50,7 +50,7 @@ <panel label="スキン" name="Skin"> <button label="スキンの色" label_selected="スキンの色" name="Skin Color"/> <button label="顔の細部" label_selected="顔の細部" name="Face Detail"/> - <button label="メイクアップ" label_selected="メイクアップ" name="Makeup"/> + <button label="メイク" label_selected="メイク" name="Makeup"/> <button label="身体細部" label_selected="身体細部" name="Body Detail"/> <text name="title"> [DESC] @@ -156,8 +156,8 @@ <panel label="シャツ" name="Shirt"> <texture_picker label="生地" name="Fabric" tool_tip="写真をクリックして選択"/> <color_swatch label="色/明暗" name="Color/Tint" tool_tip="クリックしてカラーピッカーを開きます"/> - <button label="新しいシャツを作成" label_selected="新しいシャツを作成" name="Create New"/> <button label="取り外す" label_selected="取り外す" name="Take Off"/> + <button label="新しいシャツを作成" label_selected="新しいシャツを作成" name="Create New"/> <button label="保存" label_selected="保存" name="Save"/> <button label="別名で保存..." label_selected="別名で保存..." name="Save As"/> <button label="戻す" label_selected="戻す" name="Revert"/> @@ -186,11 +186,11 @@ シャツ: </text> </panel> - <panel label="ズボン" name="Pants"> + <panel label="パンツ" name="Pants"> <texture_picker label="生地" name="Fabric" tool_tip="写真をクリックして選択"/> <color_swatch label="色/明暗" name="Color/Tint" tool_tip="クリックしてカラーピッカーを開きます"/> - <button label="新しいズボンを作成" label_selected="新しいズボンを作成" name="Create New"/> <button label="取り外す" label_selected="取り外す" name="Take Off"/> + <button label="新しいパンツを作成" label_selected="新しいパンツを作成" name="Create New"/> <button label="保存" label_selected="保存" name="Save"/> <button label="別名で保存..." label_selected="別名で保存..." name="Save As"/> <button label="戻す" label_selected="戻す" name="Revert"/> @@ -216,7 +216,7 @@ あなたはこの服の修正を許されていません。 </text> <text name="Item Action Label"> - ズボン: + パンツ: </text> </panel> <panel label="靴" name="Shoes"> @@ -238,6 +238,7 @@ <text name="not worn instructions"> あなたの持ち物からアバターにドラッグして、新しい靴を履きます。 代わりに、はじめから新しく作成して着用することもできます。 </text> + <button label="新しい靴を作成" label_selected="新しい靴を作成" name="Create New"/> <text name="no modify instructions"> あなたはこの服の修正を許されていません。 </text> @@ -246,7 +247,6 @@ </text> <texture_picker label="生地" name="Fabric" tool_tip="写真をクリックして選択"/> <color_swatch label="色/明暗" name="Color/Tint" tool_tip="クリックしてカラーピッカーを開きます"/> - <button label="新しい靴を作成" label_selected="新しい靴を作成" name="Create New"/> <button label="取り外す" label_selected="取り外す" name="Take Off"/> <button label="保存" label_selected="保存" name="Save"/> <button label="別名で保存..." label_selected="別名で保存..." name="Save As"/> @@ -271,6 +271,7 @@ <text name="not worn instructions"> あなたの持ち物からアバターにドラッグして、新しい靴下を履きます。 代わりに、はじめから新しく作成して着用することもできます。 </text> + <button label="新しい靴下を作成" label_selected="新しい靴下を作成" name="Create New"/> <text name="no modify instructions"> あなたはこの服の修正を許されていません。 </text> @@ -279,7 +280,6 @@ </text> <texture_picker label="生地" name="Fabric" tool_tip="写真をクリックして選択"/> <color_swatch label="色/明暗" name="Color/Tint" tool_tip="クリックしてカラーピッカーを開きます"/> - <button label="新しい靴下を作成" label_selected="新しい靴下を作成" name="Create New"/> <button label="取り外す" label_selected="取り外す" name="Take Off"/> <button label="保存" label_selected="保存" name="Save"/> <button label="別名で保存..." label_selected="別名で保存..." name="Save As"/> @@ -304,6 +304,7 @@ <text name="not worn instructions"> 持ち物からあなたのアバターに1つドラッグして、新しいジャケットを着ます。 代わりに、はじめから新しく作成して着用することもできます。 </text> + <button label="新しい上着を作成" label_selected="新しい上着を作成" name="Create New"/> <text name="no modify instructions"> あなたはこの服の修正を許されていません。 </text> @@ -313,7 +314,6 @@ <texture_picker label="上半身の生地" name="Upper Fabric" tool_tip="写真をクリックして選択"/> <texture_picker label="下層生地" name="Lower Fabric" tool_tip="写真をクリックして選択"/> <color_swatch label="色/明暗" name="Color/Tint" tool_tip="クリックしてカラーピッカーを開きます"/> - <button label="新しい上着を作成" label_selected="新しい上着を作成" name="Create New"/> <button label="取り外す" label_selected="取り外す" name="Take Off"/> <button label="保存" label_selected="保存" name="Save"/> <button label="別名で保存..." label_selected="別名で保存..." name="Save As"/> @@ -338,6 +338,7 @@ <text name="not worn instructions"> あなたの持ち物からアバターにドラッグして、新しい手袋をつけます。 代わりに、はじめから新しく作成して着用することもできます。 </text> + <button label="新しい手袋を作成" label_selected="新しい手袋を作成" name="Create New"/> <text name="no modify instructions"> あなたはこの服の修正を許されていません。 </text> @@ -346,7 +347,6 @@ </text> <texture_picker label="生地" name="Fabric" tool_tip="写真をクリックして選択"/> <color_swatch label="色/明暗" name="Color/Tint" tool_tip="クリックしてカラーピッカーを開きます"/> - <button label="新しい手袋を作成" label_selected="新しい手袋を作成" name="Create New"/> <button label="取り外す" label_selected="取り外す" name="Take Off"/> <button label="保存" label_selected="保存" name="Save"/> <button label="別名で保存..." label_selected="別名で保存..." name="Save As"/> @@ -371,6 +371,7 @@ <text name="not worn instructions"> 持ち物からあなたのアバターに1つドラッグして、新しい下着(上)を着ます。 代わりに、はじめから新しく作成して着用することもできます。 </text> + <button label="新しい下着シャツを作成" label_selected="新しい下着シャツを作成" name="Create New"/> <text name="no modify instructions"> あなたはこの服の修正を許されていません。 </text> @@ -379,7 +380,6 @@ </text> <texture_picker label="生地" name="Fabric" tool_tip="写真をクリックして選択"/> <color_swatch label="色/明暗" name="Color/Tint" tool_tip="クリックしてカラーピッカーを開きます"/> - <button label="新しい下着シャツを作成" label_selected="新しい下着シャツを作成" name="Create New"/> <button label="取り外す" label_selected="取り外す" name="Take Off"/> <button label="保存" label_selected="保存" name="Save"/> <button label="別名で保存..." label_selected="別名で保存..." name="Save As"/> @@ -404,6 +404,7 @@ <text name="not worn instructions"> あなたの持ち物からアバターにドラッグして、新しい下着(下)を履きます。 代わりに、はじめから新しく作成して着用することもできます。 </text> + <button label="新しいパンツを作成" label_selected="新しいパンツを作成" name="Create New"/> <text name="no modify instructions"> あなたはこの服の修正を許されていません。 </text> @@ -412,7 +413,6 @@ </text> <texture_picker label="生地" name="Fabric" tool_tip="写真をクリックして選択"/> <color_swatch label="色/明暗" name="Color/Tint" tool_tip="クリックしてカラーピッカーを開きます"/> - <button label="新しいパンツを作成" label_selected="新しいパンツを作成" name="Create New"/> <button label="取り外す" label_selected="取り外す" name="Take Off"/> <button label="保存" label_selected="保存" name="Save"/> <button label="別名で保存..." label_selected="別名で保存..." name="Save As"/> @@ -437,6 +437,7 @@ <text name="not worn instructions"> 持ち物からあなたのアバターに1つドラッグして、新しいスカートを履きます。 代わりに、はじめから新しく作成して着用することもできます。 </text> + <button label="スカートを作成" label_selected="スカートを作成" name="Create New"/> <text name="no modify instructions"> あなたはこの服の修正を許されていません。 </text> @@ -445,13 +446,12 @@ </text> <texture_picker label="生地" name="Fabric" tool_tip="写真をクリックして選択"/> <color_swatch label="色/明暗" name="Color/Tint" tool_tip="クリックしてカラーピッカーを開きます"/> - <button label="スカートを作成" label_selected="スカートを作成" name="Create New"/> <button label="取り外す" label_selected="取り外す" name="Take Off"/> <button label="保存" label_selected="保存" name="Save"/> <button label="別名で保存..." label_selected="別名で保存..." name="Save As"/> <button label="戻す" label_selected="戻す" name="Revert"/> </panel> - <panel label="アルファ" name="Alpha"> + <panel label="タトゥ" name="Tattoo"> <text name="title"> [DESC] </text> @@ -468,26 +468,24 @@ 参照 [PATH] </text> <text name="not worn instructions"> - あなたの持ち物からアバターにドラッグして、新しいアルファマスクをつけます。 代わりに、はじめから新しく作成して着用することもできます。 + あなたの持ち物からアバターにドラッグして、新しいタトゥをつけます。 代わりに、はじめから新しく作成して着用することもできます。 </text> + <button label="新しいタトゥを作成" label_selected="新しいタトゥを作成" name="Create New"/> <text name="no modify instructions"> この着用物を修正する権限がありません。 </text> <text name="Item Action Label"> - アルファ: + タトゥ: </text> - <texture_picker label="アルファ(下)" name="Lower Alpha" tool_tip="クリックして写真を選択します"/> - <texture_picker label="アルファ(上)" name="Upper Alpha" tool_tip="クリックして写真を選択します"/> - <texture_picker label="頭部のアルファ" name="Head Alpha" tool_tip="クリックして写真を選択します"/> - <texture_picker label="目のアルファ" name="Eye Alpha" tool_tip="クリックして写真を選択します"/> - <texture_picker label="髪のアルファ" name="Hair Alpha" tool_tip="クリックして写真を選択します"/> - <button label="新しいアルファを作成" label_selected="新しいアルファを作成" name="Create New"/> + <texture_picker label="頭部のタトゥー" name="Head Tattoo" tool_tip="クリックして写真を選択します"/> + <texture_picker label="上部のタトゥー" name="Upper Tattoo" tool_tip="クリックして写真を選択します"/> + <texture_picker label="下部のタトゥー" name="Lower Tattoo" tool_tip="クリックして写真を選択します"/> <button label="取り外す" label_selected="取り外す" name="Take Off"/> <button label="保存" label_selected="保存" name="Save"/> <button label="別名で保存..." label_selected="別名で保存..." name="Save As"/> <button label="元に戻す" label_selected="元に戻す" name="Revert"/> </panel> - <panel label="タトゥ" name="Tattoo"> + <panel label="アルファ" name="Alpha"> <text name="title"> [DESC] </text> @@ -504,25 +502,27 @@ 参照 [PATH] </text> <text name="not worn instructions"> - あなたの持ち物からアバターにドラッグして、新しいタトゥをつけます。 代わりに、はじめから新しく作成して着用することもできます。 + あなたの持ち物からアバターにドラッグして、新しいアルファマスクをつけます。 代わりに、はじめから新しく作成して着用することもできます。 </text> + <button label="新しいアルファを作成" label_selected="新しいアルファを作成" name="Create New"/> <text name="no modify instructions"> この着用物を修正する権限がありません。 </text> <text name="Item Action Label"> - タトゥ: + アルファ: </text> - <texture_picker label="頭部のタトゥー" name="Head Tattoo" tool_tip="クリックして写真を選択します"/> - <texture_picker label="上部のタトゥー" name="Upper Tattoo" tool_tip="クリックして写真を選択します"/> - <texture_picker label="下部のタトゥー" name="Lower Tattoo" tool_tip="クリックして写真を選択します"/> - <button label="新しいタトゥを作成" label_selected="新しいタトゥを作成" name="Create New"/> + <texture_picker label="アルファ(下)" name="Lower Alpha" tool_tip="クリックして写真を選択します"/> + <texture_picker label="アルファ(上)" name="Upper Alpha" tool_tip="クリックして写真を選択します"/> + <texture_picker label="頭部のアルファ" name="Head Alpha" tool_tip="クリックして写真を選択します"/> + <texture_picker label="目のアルファ" name="Eye Alpha" tool_tip="クリックして写真を選択します"/> + <texture_picker label="髪のアルファ" name="Hair Alpha" tool_tip="クリックして写真を選択します"/> <button label="取り外す" label_selected="取り外す" name="Take Off"/> <button label="保存" label_selected="保存" name="Save"/> <button label="別名で保存..." label_selected="別名で保存..." name="Save As"/> <button label="元に戻す" label_selected="元に戻す" name="Revert"/> </panel> </tab_container> - <button label="スクリプト情報" label_selected="スクリプト情報" name="script_info"/> + <button label="スクリプト情報" label_selected="スクリプト情報" name="script_info" tool_tip="あなたのアバターに付いているスクリプトを表示する"/> <button label="アウトフィット作成" label_selected="アウトフィット作成" name="make_outfit_btn"/> <button label="キャンセル" label_selected="キャンセル" name="Cancel"/> <button label="OK" label_selected="OK" name="Ok"/> diff --git a/indra/newview/skins/default/xui/ja/floater_help_browser.xml b/indra/newview/skins/default/xui/ja/floater_help_browser.xml index 0a783713d5..15200d7ef7 100644 --- a/indra/newview/skins/default/xui/ja/floater_help_browser.xml +++ b/indra/newview/skins/default/xui/ja/floater_help_browser.xml @@ -1,14 +1,9 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="floater_help_browser" title="ヘルプブラウザ"> - <floater.string name="home_page_url"> - http://jp.secondlife.com - </floater.string> - <floater.string name="support_page_url"> - http://jp.secondlife.com/support + <floater.string name="loading_text"> + ローディング... </floater.string> <layout_stack name="stack1"> - <layout_panel name="external_controls"> - <button label="Web ブラウザで開く" name="open_browser"/> - </layout_panel> + <layout_panel name="external_controls"/> </layout_stack> </floater> diff --git a/indra/newview/skins/default/xui/ja/floater_image_preview.xml b/indra/newview/skins/default/xui/ja/floater_image_preview.xml index 57ed139e54..2e57acf0d2 100644 --- a/indra/newview/skins/default/xui/ja/floater_image_preview.xml +++ b/indra/newview/skins/default/xui/ja/floater_image_preview.xml @@ -7,7 +7,7 @@ 説明: </text> <text name="preview_label"> - イメージのプレビュー: + プレビュー: </text> <combo_box label="服の種類" name="clothing_type_combo"> <combo_box.item label="画像" name="Image"/> @@ -26,7 +26,7 @@ 24bitTarga(.tga)でイメージを保存してください。 </text> - <check_box label="ロスのない圧縮を使用" name="lossless_check"/> + <check_box label="可逆圧縮" name="lossless_check"/> <button label="取り消し" name="cancel_btn"/> - <button label="アップロードL$[AMOUNT]" name="ok_btn"/> + <button label="アップロード゙L$[AMOUNT]" name="ok_btn"/> </floater> diff --git a/indra/newview/skins/default/xui/ja/floater_inspect.xml b/indra/newview/skins/default/xui/ja/floater_inspect.xml index 63a8fb978b..b3825c0b7f 100644 --- a/indra/newview/skins/default/xui/ja/floater_inspect.xml +++ b/indra/newview/skins/default/xui/ja/floater_inspect.xml @@ -3,12 +3,12 @@ <floater.string name="timeStamp"> [year,datetime,local] [mth,datetime,local] [day,datetime,local] [wkday,datetime,local] [hour,datetime,local]:[min,datetime,local]:[second,datetime,local] </floater.string> - <scroll_list name="object_list" tool_tip="このリストからオブジェクトを選択し、この世界で強調表示します。"> - <scroll_list.columns label="オブジェクト名" name="object_name"/> + <scroll_list name="object_list" tool_tip="リストからオブジェクトを選択し、インワールドで強調表示します。"> + <scroll_list.columns label="名前" name="object_name"/> <scroll_list.columns label="所有者名" name="owner_name"/> <scroll_list.columns label="制作者名" name="creator_name"/> <scroll_list.columns label="作成日" name="creation_date"/> </scroll_list> - <button label="所有者のプロフィールを表示..." name="button owner" tool_tip="選択されたオブジェクトの所有者のプロフィールを見る" width="180"/> - <button label="制作者のプロフィールを表示..." name="button creator" tool_tip="選択されたオブジェクトの制作者のプロフィールを見る" width="180"/> + <button label="所有者のプロフィールを表示..." name="button owner" tool_tip="選択したオブジェクトの所有者のプロフィールを表示します" width="180"/> + <button label="制作者のプロフィールを表示..." name="button creator" tool_tip="選択したオブジェクトの制作者のプロフィールを表示します" width="180"/> </floater> diff --git a/indra/newview/skins/default/xui/ja/floater_inventory.xml b/indra/newview/skins/default/xui/ja/floater_inventory.xml index 7cf16b8ff2..b113fde94a 100644 --- a/indra/newview/skins/default/xui/ja/floater_inventory.xml +++ b/indra/newview/skins/default/xui/ja/floater_inventory.xml @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="Inventory" title="持ち物"> <floater.string name="Title"> - インベントリ + 持ち物 </floater.string> <floater.string name="TitleFetching"> 持ち物 ( [ITEM_COUNT] アイテムを取得中...) [FILTER] diff --git a/indra/newview/skins/default/xui/ja/floater_inventory_view_finder.xml b/indra/newview/skins/default/xui/ja/floater_inventory_view_finder.xml index 86bb5dcf62..47a63e5e20 100644 --- a/indra/newview/skins/default/xui/ja/floater_inventory_view_finder.xml +++ b/indra/newview/skins/default/xui/ja/floater_inventory_view_finder.xml @@ -9,7 +9,7 @@ <check_box label="オブジェクト" name="check_object"/> <check_box label="スクリプト" name="check_script"/> <check_box label="サウンド" name="check_sound"/> - <check_box label="テクスチャー" name="check_texture"/> + <check_box label="テクスチャ" name="check_texture"/> <check_box label="スナップショット" name="check_snapshot"/> <button label="すべて" label_selected="すべて" name="All"/> <button label="なし" label_selected="なし" name="None"/> diff --git a/indra/newview/skins/default/xui/ja/floater_land_holdings.xml b/indra/newview/skins/default/xui/ja/floater_land_holdings.xml index 474bd32cb0..aca916f22f 100644 --- a/indra/newview/skins/default/xui/ja/floater_land_holdings.xml +++ b/indra/newview/skins/default/xui/ja/floater_land_holdings.xml @@ -7,17 +7,17 @@ <column label="面積" name="area"/> <column label="" name="hidden"/> </scroll_list> - <button label="テレポート" label_selected="テレポート" name="Teleport" tool_tip="この土地の中心にテレポート"/> + <button label="テレポート" label_selected="テレポート" name="Teleport" tool_tip="この土地の中心にテレポートします"/> <button label="地図" label_selected="地図" name="Show on Map" tool_tip="この土地を世界地図に表示します"/> <text name="contrib_label"> - あなたのグループへの貢献: + 所属グループへの貢献: </text> <scroll_list name="grant list"> <column label="グループ名" name="group"/> <column label="面積" name="area"/> </scroll_list> <text name="allowed_label"> - 現在の支払いプランでの許可された保有地: + 現在の支払いプランで許可された保有地: </text> <text name="allowed_text"> [AREA] 平方メートル @@ -29,7 +29,7 @@ [AREA] 平方メートル </text> <text name="available_label"> - 土地購入可: + 購入可能な土地: </text> <text name="available_text"> [AREA] 平方メートル diff --git a/indra/newview/skins/default/xui/ja/floater_map.xml b/indra/newview/skins/default/xui/ja/floater_map.xml index f3cba7e674..8d920a3c3f 100644 --- a/indra/newview/skins/default/xui/ja/floater_map.xml +++ b/indra/newview/skins/default/xui/ja/floater_map.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> -<floater name="Map"> +<floater name="Map" title="ミニマップ"> <floater.string name="mini_map_north"> 北 </floater.string> @@ -25,7 +25,7 @@ 北西 </floater.string> <floater.string name="ToolTipMsg"> - [AGENT][REGION] (ダブルクリックで地図を開く) + [AGENT][REGION] (ダブルクリックで地図を開きます) </floater.string> <text label="北" name="floater_map_north" text="北"> 北 diff --git a/indra/newview/skins/default/xui/ja/floater_media_browser.xml b/indra/newview/skins/default/xui/ja/floater_media_browser.xml index 4f67523eec..c4731b73a3 100644 --- a/indra/newview/skins/default/xui/ja/floater_media_browser.xml +++ b/indra/newview/skins/default/xui/ja/floater_media_browser.xml @@ -22,8 +22,8 @@ <button label="現在のページを区画に送る" name="assign"/> </layout_panel> <layout_panel name="external_controls"> - <button label="外部ウェブ・ブラウザで開く" name="open_browser"/> - <check_box label="常に外部のウェブ・ブラウザで開く" name="open_always"/> + <button label="外部Webブラウザで開く" name="open_browser"/> + <check_box label="常に外部のWebブラウザで開く" name="open_always"/> <button label="閉じる" name="close"/> </layout_panel> </layout_stack> diff --git a/indra/newview/skins/default/xui/ja/floater_mem_leaking.xml b/indra/newview/skins/default/xui/ja/floater_mem_leaking.xml index 6167b6db91..f48bb94e32 100644 --- a/indra/newview/skins/default/xui/ja/floater_mem_leaking.xml +++ b/indra/newview/skins/default/xui/ja/floater_mem_leaking.xml @@ -1,9 +1,9 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="MemLeak" title="メモリリークのシミュレート"> - <spinner label="リークスピード(1フレームごとのバイト数):" label_width="244" name="leak_speed"/> - <spinner label="リークした最大メモリ数(MB):" label_width="244" name="max_leak"/> + <spinner label="リーク速度(1フレームごとのバイト数):" label_width="244" name="leak_speed"/> + <spinner label="最大メモリリーク(MB):" label_width="244" name="max_leak"/> <text name="total_leaked_label"> - 現在のリークメモリサイズ: [SIZE] KB + 現在のメモリリーク: [SIZE] KB </text> <text name="note_label_1"> [NOTE1] diff --git a/indra/newview/skins/default/xui/ja/floater_outfit_save_as.xml b/indra/newview/skins/default/xui/ja/floater_outfit_save_as.xml index a869b106ce..16a3da5508 100644 --- a/indra/newview/skins/default/xui/ja/floater_outfit_save_as.xml +++ b/indra/newview/skins/default/xui/ja/floater_outfit_save_as.xml @@ -3,9 +3,10 @@ <button label="保存" label_selected="保存" name="Save"/> <button label="キャンセル" label_selected="キャンセル" name="Cancel"/> <text name="Save item as:"> - アウトフィットを別名で保存: + 着用しているものを +新しいアウトフィットに保存: </text> <line_editor name="name ed"> - [DESC] + [DESC] (新) </line_editor> </floater> diff --git a/indra/newview/skins/default/xui/ja/floater_outgoing_call.xml b/indra/newview/skins/default/xui/ja/floater_outgoing_call.xml index 8d67108b77..574eb6e0a3 100644 --- a/indra/newview/skins/default/xui/ja/floater_outgoing_call.xml +++ b/indra/newview/skins/default/xui/ja/floater_outgoing_call.xml @@ -25,10 +25,10 @@ 繋がりませんでした。 あとでもう一度お試しください。 </text> <text name="nearby"> - [VOICE_CHANNEL_NAME] への接続が切れました。 「近くのボイスチャット」に再接続されます。 + [VOICE_CHANNEL_NAME] への接続が切れました。 [RECONNECT_NEARBY] </text> <text name="nearby_P2P"> - [VOICE_CHANNEL_NAME] がコールを終了しました。 「近くのボイスチャット」に再接続されます。 + [VOICE_CHANNEL_NAME] がコールを終了しました。 [RECONNECT_NEARBY] </text> <text name="leaving"> [CURRENT_CHAT] を終了します。 diff --git a/indra/newview/skins/default/xui/ja/floater_perm_prefs.xml b/indra/newview/skins/default/xui/ja/floater_perm_prefs.xml index adbb8596d3..98cda25a81 100644 --- a/indra/newview/skins/default/xui/ja/floater_perm_prefs.xml +++ b/indra/newview/skins/default/xui/ja/floater_perm_prefs.xml @@ -5,11 +5,11 @@ <check_box label="グループで共同管理" name="share_with_group"/> <check_box label="誰に対してもコピーを許可" name="everyone_copy"/> <text name="NextOwnerLabel"> - 次のオーナーができる操作: + 次の所有者ができる操作: </text> <check_box label="修正" name="next_owner_modify"/> <check_box label="コピー" name="next_owner_copy"/> - <check_box label="再販/プレゼント" name="next_owner_transfer"/> + <check_box label="再販・プレゼント" name="next_owner_transfer"/> </panel> <button label="OK" label_selected="OK" name="ok"/> <button label="取り消し" label_selected="取り消し" name="cancel"/> diff --git a/indra/newview/skins/default/xui/ja/floater_postcard.xml b/indra/newview/skins/default/xui/ja/floater_postcard.xml index b2ca059ccd..5a2b047fe0 100644 --- a/indra/newview/skins/default/xui/ja/floater_postcard.xml +++ b/indra/newview/skins/default/xui/ja/floater_postcard.xml @@ -1,11 +1,11 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="Postcard" title="スナップショットをメール"> <text name="to_label"> - 住人のEメール: + 住人のメール: </text> <line_editor left="145" name="to_form" width="125"/> <text name="from_label"> - あなたのEメール: + あなたのメール: </text> <line_editor left="145" name="from_form" width="125"/> <text name="name_label"> @@ -15,14 +15,14 @@ <text name="subject_label"> 件名: </text> - <line_editor label="件名をここに入力" left="145" name="subject_form" width="125"/> + <line_editor label="件名を入力してください" left="145" name="subject_form" width="125"/> <text name="msg_label"> メッセージ: </text> <text_editor bottom_delta="-120" height="110" name="msg_form"> メッセージをここに入力してください。 </text_editor> - <check_box label="ウェブ上で公開" name="allow_publish_check" tool_tip="このポストカードをウェブ上で公開します。"/> + <check_box label="Web上で公開" name="allow_publish_check" tool_tip="このポストカードをWeb上で公開します。"/> <check_box label="成人向けコンテンツ" name="mature_check" tool_tip="このポストカードには成人向け内容が含まれます。"/> <button label="?" left="300" name="publish_help_btn"/> <text name="fine_print"> diff --git a/indra/newview/skins/default/xui/ja/floater_preferences.xml b/indra/newview/skins/default/xui/ja/floater_preferences.xml index 1493219b83..e2893d5eab 100644 --- a/indra/newview/skins/default/xui/ja/floater_preferences.xml +++ b/indra/newview/skins/default/xui/ja/floater_preferences.xml @@ -8,7 +8,7 @@ <panel label="プライバシー" name="im"/> <panel label="サウンド" name="audio"/> <panel label="チャット" name="chat"/> - <panel label="通知" name="msgs"/> + <panel label="メッセージ" name="msgs"/> <panel label="セットアップ" name="input"/> <panel label="詳細" name="advanced1"/> </tab_container> diff --git a/indra/newview/skins/default/xui/ja/floater_preview_animation.xml b/indra/newview/skins/default/xui/ja/floater_preview_animation.xml index fb2f2c7433..606dda12bd 100644 --- a/indra/newview/skins/default/xui/ja/floater_preview_animation.xml +++ b/indra/newview/skins/default/xui/ja/floater_preview_animation.xml @@ -6,6 +6,6 @@ <text name="desc txt"> 説明: </text> - <button label="世界で再生" label_selected="停止" name="Anim play btn" tool_tip="他人に見えるように再生"/> - <button label="ローカルに再生" label_selected="停止" name="Anim audition btn" tool_tip="自分だけが見えるように再生"/> + <button label="インワールドで再生する" label_selected="停止" name="Anim play btn" tool_tip="他人にも見えるように再生します"/> + <button label="ローカル再生" label_selected="停止" name="Anim audition btn" tool_tip="自分だけが見えるように再生します"/> </floater> diff --git a/indra/newview/skins/default/xui/ja/floater_preview_gesture.xml b/indra/newview/skins/default/xui/ja/floater_preview_gesture.xml index a378700d15..8a0aea717c 100644 --- a/indra/newview/skins/default/xui/ja/floater_preview_gesture.xml +++ b/indra/newview/skins/default/xui/ja/floater_preview_gesture.xml @@ -38,7 +38,7 @@ </text> <line_editor name="replace_editor" tool_tip="トリガー・ワードをこれらの単語に置き換えます。 たとえば、トリガー「hello」を「Howdy」に置換すると、「I wanted to say hello」というチャット文が「I wanted to say howdy」に変わり、ジェスチャーにも置換が反映されます。"/> <text name="key_label"> - ショートカット・キー: + ショートカット: </text> <combo_box label="なし" left="160" name="modifier_combo"/> <combo_box label="なし" name="key_combo"/> diff --git a/indra/newview/skins/default/xui/ja/floater_preview_sound.xml b/indra/newview/skins/default/xui/ja/floater_preview_sound.xml index d3c06cbef4..c8375389ce 100644 --- a/indra/newview/skins/default/xui/ja/floater_preview_sound.xml +++ b/indra/newview/skins/default/xui/ja/floater_preview_sound.xml @@ -6,6 +6,6 @@ <text name="desc txt"> 説明: </text> - <button label="世界で再生" label_selected="世界で再生" name="Sound play btn" tool_tip="他人が聞こえるように再生"/> - <button label="ローカルに再生" label_selected="ローカルに再生" name="Sound audition btn" tool_tip="自分だけが聞こえるように再生"/> + <button label="インワールドで再生する" label_selected="インワールドで再生する" name="Sound play btn" tool_tip="他人にも聞こえるように再生します"/> + <button label="ローカル再生" label_selected="ローカル再生" name="Sound audition btn" tool_tip="自分だけが聞こえるように再生します"/> </floater> diff --git a/indra/newview/skins/default/xui/ja/floater_report_abuse.xml b/indra/newview/skins/default/xui/ja/floater_report_abuse.xml index 964a99c3a4..c66f307f23 100644 --- a/indra/newview/skins/default/xui/ja/floater_report_abuse.xml +++ b/indra/newview/skins/default/xui/ja/floater_report_abuse.xml @@ -25,7 +25,7 @@ <text name="select_object_label"> ボタンをクリックしてから、悪意のあるオブジェクトをクリック: </text> - <button label="" label_selected="" name="pick_btn" tool_tip="オブジェクト・ピッカー - この報告の主題となるオブジェクトを特定"/> + <button label="" label_selected="" name="pick_btn" tool_tip="オブジェクトピッカー - 報告対象のオブジェクトを選択してください"/> <text name="object_name_label"> オブジェクト: </text> @@ -33,13 +33,13 @@ Consetetur Sadipscing </text> <text name="owner_name_label"> - オーナー: + 所有者: </text> <text name="owner_name"> Hendrerit Vulputate Kamawashi Longname </text> - <combo_box name="category_combo" tool_tip="カテゴリー -- この報告に最も適したカテゴリーを選択してください"> - <combo_box.item label="カテゴリーを選択" name="Select_category"/> + <combo_box name="category_combo" tool_tip="カテゴリ -- この報告に最も適したカテゴリを選択してください"> + <combo_box.item label="カテゴリを選択してください" name="Select_category"/> <combo_box.item label="年齢>年齢偽証" name="Age__Age_play"/> <combo_box.item label="年齢 > 成人の住人が Teen Second Life にいる" name="Age__Adult_resident_on_Teen_Second_Life"/> <combo_box.item label="年齢 > 未成年の住人がTeen Second Life の外にいる" name="Age__Underage_resident_outside_of_Teen_Second_Life"/> diff --git a/indra/newview/skins/default/xui/ja/floater_sell_land.xml b/indra/newview/skins/default/xui/ja/floater_sell_land.xml index b06b16bbb3..1e884af5f2 100644 --- a/indra/newview/skins/default/xui/ja/floater_sell_land.xml +++ b/indra/newview/skins/default/xui/ja/floater_sell_land.xml @@ -36,7 +36,7 @@ 2. 特定の人に販売: </text> <text name="sell_to_text" right="-6"> - 販売先の指定なしか、特定の人に販売するか選択してください。 + 販売先の指定なしか、特定の人に販売するかを選択してください。 </text> <combo_box name="sell_to"> <combo_box.item label="- 1つ選択 -" name="--selectone--"/> diff --git a/indra/newview/skins/default/xui/ja/floater_snapshot.xml b/indra/newview/skins/default/xui/ja/floater_snapshot.xml index 6c84de9b19..4ad54ec7ab 100644 --- a/indra/newview/skins/default/xui/ja/floater_snapshot.xml +++ b/indra/newview/skins/default/xui/ja/floater_snapshot.xml @@ -28,21 +28,21 @@ 形式 </text> <combo_box label="解像度" name="postcard_size_combo"> - <combo_box.item label="現在のウィンドウ" name="CurrentWindow"/> + <combo_box.item label="現在のウィンドウ" name="CurrentWindow"/> <combo_box.item label="640x480" name="640x480"/> <combo_box.item label="800x600" name="800x600"/> <combo_box.item label="1024x768" name="1024x768"/> <combo_box.item label="カスタム" name="Custom"/> </combo_box> <combo_box label="解像度" name="texture_size_combo"> - <combo_box.item label="現在のウィンドウ" name="CurrentWindow"/> + <combo_box.item label="現在のウィンドウ" name="CurrentWindow"/> <combo_box.item label="小(128x128)" name="Small(128x128)"/> <combo_box.item label="中(256x256)" name="Medium(256x256)"/> <combo_box.item label="大(512x512)" name="Large(512x512)"/> <combo_box.item label="カスタム" name="Custom"/> </combo_box> <combo_box label="解像度" name="local_size_combo"> - <combo_box.item label="現在のウィンドウ" name="CurrentWindow"/> + <combo_box.item label="現在のウィンドウ" name="CurrentWindow"/> <combo_box.item label="320x240" name="320x240"/> <combo_box.item label="640x480" name="640x480"/> <combo_box.item label="800x600" name="800x600"/> @@ -61,7 +61,7 @@ <check_box label="縦横比の固定" name="keep_aspect_check"/> <slider label="画質" name="image_quality_slider"/> <text name="layer_type_label"> - キャプチャ: + キャプチャ: </text> <combo_box label="画像レイヤー" name="layer_types"> <combo_box.item label="色" name="Colors"/> diff --git a/indra/newview/skins/default/xui/ja/floater_sound_preview.xml b/indra/newview/skins/default/xui/ja/floater_sound_preview.xml index a24ba6e075..7d83309c46 100644 --- a/indra/newview/skins/default/xui/ja/floater_sound_preview.xml +++ b/indra/newview/skins/default/xui/ja/floater_sound_preview.xml @@ -9,7 +9,7 @@ <button label="取り消し" label_selected="取り消し" name="cancel_btn"/> <button label="アップロード (L$[AMOUNT])" label_selected="アップロード (L$[AMOUNT])" name="ok_btn"/> <text name="text"> - ビットレート(kbps): + ビットレート(kbps): </text> <radio_group name="bitrate"> <radio_item label="32" name="32"/> diff --git a/indra/newview/skins/default/xui/ja/floater_sys_well.xml b/indra/newview/skins/default/xui/ja/floater_sys_well.xml index a7c0a2b391..3ac2a11a97 100644 --- a/indra/newview/skins/default/xui/ja/floater_sys_well.xml +++ b/indra/newview/skins/default/xui/ja/floater_sys_well.xml @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="notification_chiclet" title="通知"> <string name="title_im_well_window"> - IMセッション + 換算 </string> <string name="title_notification_well_window"> 通知 diff --git a/indra/newview/skins/default/xui/ja/floater_telehub.xml b/indra/newview/skins/default/xui/ja/floater_telehub.xml index 79af7a7809..7318083771 100644 --- a/indra/newview/skins/default/xui/ja/floater_telehub.xml +++ b/indra/newview/skins/default/xui/ja/floater_telehub.xml @@ -10,7 +10,7 @@ 「切断」をクリックして削除します。 </text> <text name="help_text_not_connected"> - 物体を選択し「テレハブの接続」をクリックする + 物体を選択して「テレハブの接続」をクリックしてください。 </text> <button label="テレハブの接続" name="connect_btn"/> <button label="切断" name="disconnect_btn"/> diff --git a/indra/newview/skins/default/xui/ja/floater_texture_ctrl.xml b/indra/newview/skins/default/xui/ja/floater_texture_ctrl.xml index 1500808e60..399cffcce5 100644 --- a/indra/newview/skins/default/xui/ja/floater_texture_ctrl.xml +++ b/indra/newview/skins/default/xui/ja/floater_texture_ctrl.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> -<floater name="texture picker" title="選択: テクスチャ"> +<floater name="texture picker" title="テクスチャの選択"> <string name="choose_picture"> クリックして写真を選択 </string> @@ -9,12 +9,12 @@ <text name="unknown"> サイズ: [DIMENSIONS] </text> - <button label="デフォルト" label_selected="デフォルト" name="Default"/> + <button label="デフォルト" label_selected="デフォルト" name="Default"/> <button label="なし" label_selected="なし" name="None"/> <button label="ブランク" label_selected="ブランク" name="Blank"/> <check_box label="フォルダを表示" name="show_folders_check"/> <search_editor label="テクスチャをフィルター" name="inventory search editor"/> - <check_box label="今すぐ適用" name="apply_immediate_check"/> + <check_box label="すぐ適用" name="apply_immediate_check"/> <button label="" label_selected="" name="Pipette"/> <button label="取り消し" label_selected="取り消し" name="Cancel"/> <button label="OK" label_selected="OK" name="Select"/> diff --git a/indra/newview/skins/default/xui/ja/floater_tools.xml b/indra/newview/skins/default/xui/ja/floater_tools.xml index 52d3537d9a..456e30c2b4 100644 --- a/indra/newview/skins/default/xui/ja/floater_tools.xml +++ b/indra/newview/skins/default/xui/ja/floater_tools.xml @@ -171,7 +171,7 @@ Esbee Linden </text> <text name="Owner:"> - オーナー: + 所有者: </text> <text name="Owner Name"> Erica Linden @@ -197,7 +197,7 @@ <check_box label="販売対象:" name="checkbox for sale"/> <combo_box name="sale type"> <combo_box.item label="コピー" name="Copy"/> - <combo_box.item label="コンテンツ" name="Contents"/> + <combo_box.item label="中身" name="Contents"/> <combo_box.item label="オリジナル" name="Original"/> </combo_box> <spinner label="価格: L$" name="Edit Cost"/> @@ -239,9 +239,9 @@ </panel> <panel label="形状" name="Object"> <check_box label="ロック済み" name="checkbox locked" tool_tip="オブジェクトの移動と削除を禁止します。 この機能を使うと、構築中に意図しない編集を防ぐことができます。"/> - <check_box label="物理" name="Physical Checkbox Ctrl" tool_tip="オブジェクトに対する重力の作用と影響を有効にする"/> + <check_box label="物理" name="Physical Checkbox Ctrl" tool_tip="オブジェクトに対する重力の作用と影響を有効にします"/> <check_box label="臨時" name="Temporary Checkbox Ctrl" tool_tip="制作後 1 分でオブジェクトは削除されます"/> - <check_box label="ファントム" name="Phantom Checkbox Ctrl" tool_tip="オブジェクト同士の衝突またはオブジェクトとアバターの衝突を回避"/> + <check_box label="ファントム" name="Phantom Checkbox Ctrl" tool_tip="オブジェクト同士の衝突またはオブジェクトとアバターの衝突を回避します"/> <text name="label position"> 位置(メートル) </text> @@ -280,7 +280,7 @@ <combo_box.item label="ゴム" name="Rubber"/> </combo_box> <text name="text cut"> - パスカット (始点/終点) + パスカット (始点・終点) </text> <spinner label="B" name="cut begin"/> <spinner label="E" name="cut end"/> @@ -300,7 +300,7 @@ <combo_box.item label="三角形" name="Triangle"/> </combo_box> <text name="text twist"> - ひねり (始点/終点) + ひねり (始点・終点) </text> <spinner label="B" name="Twist Begin"/> <spinner label="E" name="Twist End"/> @@ -318,13 +318,13 @@ <spinner label="X" name="Shear X"/> <spinner label="Y" name="Shear Y"/> <text name="advanced_cut"> - プロフィールカット (始点/終点) + プロフィールカット (始点・終点) </text> <text name="advanced_dimple"> - くぼみ (始点/終点) + くぼみ (始点・終点) </text> <text name="advanced_slice"> - 切り取り (始点/終点) + 切り取り (始点・終点) </text> <spinner label="B" name="Path Limit Begin"/> <spinner label="E" name="Path Limit End"/> @@ -340,8 +340,8 @@ 回転体 </text> <texture_picker label="スカルプトテクスチャー" name="sculpt texture control" tool_tip="クリックして写真を選択してください。"/> - <check_box label="ミラー" name="sculpt mirror control" tool_tip="スカルプトプリムを X 軸上で反転させる"/> - <check_box label="裏返し" name="sculpt invert control" tool_tip="スカルプトプリムを反転させて裏返す"/> + <check_box label="ミラー" name="sculpt mirror control" tool_tip="スカルプトプリムを X 軸上で反転させます"/> + <check_box label="裏返し" name="sculpt invert control" tool_tip="スカルプトプリムを反転させて裏返します"/> <text name="label sculpt type"> 縫い目のタイプ </text> @@ -360,7 +360,7 @@ <text name="edit_object"> オブジェクトの特徴を編集: </text> - <check_box label="フレキシブル・パス" name="Flexible1D Checkbox Ctrl" tool_tip="Z 軸を中心にオブジェクトの屈曲を有効にする(クライアント側のみ)"/> + <check_box label="フレキシブル・パス" name="Flexible1D Checkbox Ctrl" tool_tip="Z 軸を中心にオブジェクトの屈曲を有効にします(クライアント側のみ)"/> <spinner label="柔軟性" label_width="72" name="FlexNumSections" width="135"/> <spinner label="重力" label_width="72" name="FlexGravity" width="135"/> <spinner label="ドラッグ" label_width="72" name="FlexFriction" width="135"/> @@ -369,9 +369,9 @@ <spinner label="X軸方向の力" label_width="72" name="FlexForceX" width="135"/> <spinner label="Y軸方向の力" label_width="72" name="FlexForceY" width="135"/> <spinner label="Z軸方向の力" label_width="72" name="FlexForceZ" width="135"/> - <check_box label="光" name="Light Checkbox Ctrl" tool_tip="オブジェクトが発光"/> + <check_box label="光" name="Light Checkbox Ctrl" tool_tip="オブジェクトが発光します"/> <color_swatch label="" left_delta="74" name="colorswatch" tool_tip="クリックしてカラーピッカーを開きます"/> - <texture_picker label="" name="light texture control" tool_tip="クリックで投影画を選択(遅延レンダリング有効時のみ)"/> + <texture_picker label="" name="light texture control" tool_tip="クリックで投影画を選択します(遅延レンダリング有効時のみ)"/> <spinner label="輝度" label_width="72" name="Light Intensity" width="135"/> <spinner label="FOV" name="Light FOV"/> <spinner label="半径" label_width="72" name="Light Radius" width="135"/> @@ -381,7 +381,7 @@ </panel> <panel label="材質" name="Texture"> <panel.string name="string repeats per meter"> - メートルごとに繰返す + メートルごとに繰り返す </panel.string> <panel.string name="string repeats per face"> 面ごとに繰り返す @@ -453,10 +453,10 @@ <text name="media_tex"> メディア </text> - <button name="add_media" tool_tip="メディアを追加"/> - <button name="delete_media" tool_tip="このメディアテクスチャを削除"/> - <button name="edit_media" tool_tip="このメディアを編集"/> - <button label="揃える" label_selected="メディアを一列に揃える" name="button align" tool_tip="メディアテクスチャを一列に揃える(最初に読み込む必要があります)"/> + <button name="add_media" tool_tip="メディアを追加します"/> + <button name="delete_media" tool_tip="このメディアテクスチャを削除します"/> + <button name="edit_media" tool_tip="このメディアを編集します"/> + <button label="揃える" label_selected="メディアを一列に揃える" name="button align" tool_tip="メディアテクスチャを一列に揃えます(最初に読み込む必要があります)"/> </panel> </panel> <panel label="中身" name="Contents"> @@ -475,7 +475,7 @@ 面積: [AREA] 平方メートル </text> <button label="土地情報" label_selected="土地情報" name="button about land"/> - <check_box label="オーナーを表示" name="checkbox show owners" tool_tip="所有者の種類別に区画を色づけ: 緑 = あなたの土地 アクア = あなたのグループ所有地 赤 = 他人が所有する土地 黄色 = 売り出し中 紫 = オークション グレー = パブリック"/> + <check_box label="所有者を表示" name="checkbox show owners" tool_tip="所有者の種類別に区画を色づけます: 緑 = あなたの土地 アクア = あなたのグループ所有地 赤 = 他人が所有する土地 黄色 = 売り出し中 紫 = オークション グレー = パブリック"/> <text name="label_parcel_modify"> 区画の編集 </text> diff --git a/indra/newview/skins/default/xui/ja/floater_wearable_save_as.xml b/indra/newview/skins/default/xui/ja/floater_wearable_save_as.xml index fc9ddf5096..de8b590a80 100644 --- a/indra/newview/skins/default/xui/ja/floater_wearable_save_as.xml +++ b/indra/newview/skins/default/xui/ja/floater_wearable_save_as.xml @@ -1,9 +1,9 @@ -<?xml version="1.0" encoding="utf-8" standalone="yes" ?> +<?xml version="1.0" encoding="utf-8" standalone="yes"?> <floater name="modal container" title=" "> - <button label="保存" label_selected="保存" name="Save" /> - <button label="取り消し" label_selected="取り消し" name="Cancel" /> + <button label="保存" label_selected="保存" name="Save"/> + <button label="取り消し" label_selected="取り消し" name="Cancel"/> <text name="Save item as:"> - アイテムを別名で保存: + アイテムを別名で持ち物に保存: </text> <line_editor name="name ed"> New [DESC] diff --git a/indra/newview/skins/default/xui/ja/floater_window_size.xml b/indra/newview/skins/default/xui/ja/floater_window_size.xml index a31336c0f8..152a5f4806 100644 --- a/indra/newview/skins/default/xui/ja/floater_window_size.xml +++ b/indra/newview/skins/default/xui/ja/floater_window_size.xml @@ -4,7 +4,7 @@ [RES_X] x [RES_Y] </string> <text name="windowsize_text"> - ウィンドウのサイズの設定: + ウィンドウのサイズを設定: </text> <combo_box name="window_size_combo" tool_tip="横幅 x 高さ"> <combo_box.item label="1000 x 700 (標準)" name="item0"/> diff --git a/indra/newview/skins/default/xui/ja/floater_world_map.xml b/indra/newview/skins/default/xui/ja/floater_world_map.xml index a0f2d98adf..4897c94ec4 100644 --- a/indra/newview/skins/default/xui/ja/floater_world_map.xml +++ b/indra/newview/skins/default/xui/ja/floater_world_map.xml @@ -2,13 +2,13 @@ <floater name="worldmap" title="世界地図"> <panel name="layout_panel_1"> <text name="events_label"> - レジェンド + 表記・記号 </text> </panel> <panel> - <button label="現在地を表示" label_selected="現在地を表示" name="Show My Location" tool_tip="マップを中央に表示する"/> + <button label="現在地を表示" label_selected="現在地を表示" name="Show My Location" tool_tip="アバターの位置を地図の中心に表示します"/> <text name="me_label"> - ミー + 自分 </text> <check_box label="住人" name="people_chk"/> <text name="person_label"> @@ -23,12 +23,12 @@ 土地販売 </text> <text name="by_owner_label"> - by owner + 所有者の販売 </text> <text name="auction_label"> 土地オークション </text> - <button label="ホームへ" label_selected="ホームへ" name="Go Home" tool_tip="「ホーム」にテレポート"/> + <button label="ホームへ" label_selected="ホームへ" name="Go Home" tool_tip="「ホーム」にテレポートします"/> <text name="Home_label"> ホーム </text> @@ -50,25 +50,26 @@ </panel> <panel> <text name="find_on_map_label"> - 地図で探す + 地図上で探す </text> </panel> <panel> - <combo_box label="オンラインのフレンド" name="friend combo" tool_tip="フレンドを地図に表示"> + <combo_box label="オンラインのフレンド" name="friend combo" tool_tip="フレンドを地図上に表示します"> <combo_box.item label="オンラインのフレンド" name="item1"/> </combo_box> - <combo_box label="マイ ランドマーク" name="landmark combo" tool_tip="地図に表示するランドマーク"> + <combo_box label="マイ ランドマーク" name="landmark combo" tool_tip="地図上に表示するランドマーク"> <combo_box.item label="マイ ランドマーク" name="item1"/> </combo_box> <search_editor label="リージョン名" name="location" tool_tip="地域名を入力してください。"/> <button label="検索" name="DoSearch" tool_tip="地域検索"/> + <button name="Clear" tool_tip="追跡ラインをクリアして地図をリセットします"/> <scroll_list name="search_results"> <scroll_list.columns label="" name="icon"/> <scroll_list.columns label="" name="sim_name"/> </scroll_list> - <button label="テレポート" label_selected="テレポート" name="Teleport" tool_tip="選択されたロケーションにテレポート"/> - <button label="SLurl をコピー" name="copy_slurl" tool_tip="現在地を SLurl としてコピーして、Webで使用します。"/> - <button label="選択したリージョンを表示する" label_selected="目的地を表示" name="Show Destination" tool_tip="選択したロケーションを地図の中心にする"/> + <button label="テレポート" label_selected="テレポート" name="Teleport" tool_tip="選択した場所にレポートします"/> + <button label="SLurl をコピー" name="copy_slurl" tool_tip="現在地を SLurl でコピーして、Webで使用します。"/> + <button label="選択したリージョンを表示する" label_selected="目的地を表示" name="Show Destination" tool_tip="選択した場所を地図の中心に表示します"/> </panel> <panel> <text name="zoom_label"> diff --git a/indra/newview/skins/default/xui/ja/menu_avatar_self.xml b/indra/newview/skins/default/xui/ja/menu_avatar_self.xml index 1bfadf8d45..a638bed36f 100644 --- a/indra/newview/skins/default/xui/ja/menu_avatar_self.xml +++ b/indra/newview/skins/default/xui/ja/menu_avatar_self.xml @@ -1,8 +1,8 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <context_menu name="Self Pie"> <menu_item_call label="立ち上がる" name="Stand Up"/> - <context_menu label="脱ぐ>" name="Take Off >"> - <context_menu label="衣類 >" name="Clothes >"> + <context_menu label="脱ぐ ▶" name="Take Off >"> + <context_menu label="衣類 ▶" name="Clothes >"> <menu_item_call label="シャツ" name="Shirt"/> <menu_item_call label="パンツ" name="Pants"/> <menu_item_call label="スカート" name="Skirt"/> @@ -16,12 +16,12 @@ <menu_item_call label="アルファ" name="Self Alpha"/> <menu_item_call label="すべての衣類" name="All Clothes"/> </context_menu> - <context_menu label="HUD >" name="Object Detach HUD"/> - <context_menu label="取り外す >" name="Object Detach"/> + <context_menu label="HUD ▶" name="Object Detach HUD"/> + <context_menu label="取り外す ▶" name="Object Detach"/> <menu_item_call label="すべて取り外す" name="Detach All"/> </context_menu> <menu_item_call label="容姿" name="Appearance..."/> <menu_item_call label="フレンド" name="Friends..."/> <menu_item_call label="グループ" name="Groups..."/> - <menu_item_call label="マイ プロフィール" name="Profile..."/> + <menu_item_call label="プロフィール" name="Profile..."/> </context_menu> diff --git a/indra/newview/skins/default/xui/ja/menu_inspect_self_gear.xml b/indra/newview/skins/default/xui/ja/menu_inspect_self_gear.xml index 76c01d6109..d02701b400 100644 --- a/indra/newview/skins/default/xui/ja/menu_inspect_self_gear.xml +++ b/indra/newview/skins/default/xui/ja/menu_inspect_self_gear.xml @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="utf-8"?> <menu name="Gear Menu"> <menu_item_call label="立ち上がる" name="stand_up"/> - <menu_item_call label="マイ 容姿" name="my_appearance"/> + <menu_item_call label="容姿" name="my_appearance"/> <menu_item_call label="プロフィール" name="my_profile"/> <menu_item_call label="フレンド" name="my_friends"/> <menu_item_call label="グループ" name="my_groups"/> diff --git a/indra/newview/skins/default/xui/ja/menu_inventory.xml b/indra/newview/skins/default/xui/ja/menu_inventory.xml index 78c0dd0a78..a2dbc34270 100644 --- a/indra/newview/skins/default/xui/ja/menu_inventory.xml +++ b/indra/newview/skins/default/xui/ja/menu_inventory.xml @@ -62,13 +62,13 @@ <menu_item_call label="リンクを外す" name="Remove Link"/> <menu_item_call label="削除" name="Delete"/> <menu_item_call label="システムフォルダを削除する" name="Delete System Folder"/> - <menu_item_call label="会議チャット開始" name="Conference Chat Folder"/> + <menu_item_call label="コンファレンスチャットを開始" name="Conference Chat Folder"/> <menu_item_call label="再生" name="Sound Play"/> <menu_item_call label="ランドマークの情報" name="About Landmark"/> - <menu_item_call label="世界で再生" name="Animation Play"/> - <menu_item_call label="ローカルに再生" name="Animation Audition"/> - <menu_item_call label="インスタント・メッセージを送信" name="Send Instant Message"/> - <menu_item_call label="テレポートを贈る..." name="Offer Teleport..."/> + <menu_item_call label="インワールドで再生する" name="Animation Play"/> + <menu_item_call label="ローカル再生" name="Animation Audition"/> + <menu_item_call label="インスタントメッセージを送信" name="Send Instant Message"/> + <menu_item_call label="テレポートを送る..." name="Offer Teleport..."/> <menu_item_call label="会議チャット開始" name="Conference Chat"/> <menu_item_call label="アクティブ" name="Activate"/> <menu_item_call label="非アクティブ" name="Deactivate"/> diff --git a/indra/newview/skins/default/xui/ja/menu_login.xml b/indra/newview/skins/default/xui/ja/menu_login.xml index 42a95ac3d3..d6f13f0e59 100644 --- a/indra/newview/skins/default/xui/ja/menu_login.xml +++ b/indra/newview/skins/default/xui/ja/menu_login.xml @@ -24,7 +24,7 @@ <menu_item_call label="UI/色の設定" name="UI/Color Settings"/> <menu_item_call label="XUI プレビューツール" name="UI Preview Tool"/> <menu label="UI テスト" name="UI Tests"/> - <menu_item_call label="ウィンドウのサイズの設定..." name="Set Window Size..."/> + <menu_item_call label="ウィンドウのサイズを設定..." name="Set Window Size..."/> <menu_item_call label="利用規約を表示" name="TOS"/> <menu_item_call label="クリティカルメッセージを表示" name="Critical"/> <menu_item_call label="Web ブラウザのテスト" name="Web Browser Test"/> diff --git a/indra/newview/skins/default/xui/ja/menu_object.xml b/indra/newview/skins/default/xui/ja/menu_object.xml index a161c01514..888d382e7e 100644 --- a/indra/newview/skins/default/xui/ja/menu_object.xml +++ b/indra/newview/skins/default/xui/ja/menu_object.xml @@ -7,18 +7,18 @@ <menu_item_call label="ここに座る" name="Object Sit"/> <menu_item_call label="オブジェクトのプロフィール" name="Object Inspect"/> <menu_item_call label="ズームイン" name="Zoom In"/> - <context_menu label="装着 >" name="Put On"> + <context_menu label="装着 ▶" name="Put On"> <menu_item_call label="装着" name="Wear"/> - <context_menu label="取り付け >" name="Object Attach"/> - <context_menu label="HUD を取り付け >" name="Object Attach HUD"/> + <context_menu label="取り付ける ▶" name="Object Attach"/> + <context_menu label="HUD を取り付ける ▶" name="Object Attach HUD"/> </context_menu> - <context_menu label="削除 >" name="Remove"> - <menu_item_call label="取る" name="Pie Object Take"/> + <context_menu label="取り外す ▶" name="Remove"> <menu_item_call label="嫌がらせの報告" name="Report Abuse..."/> <menu_item_call label="ブロック" name="Object Mute"/> <menu_item_call label="返却" name="Return..."/> <menu_item_call label="削除" name="Delete"/> </context_menu> + <menu_item_call label="取る" name="Pie Object Take"/> <menu_item_call label="コピーを取る" name="Take Copy"/> <menu_item_call label="支払う" name="Pay..."/> <menu_item_call label="買う" name="Buy..."/> diff --git a/indra/newview/skins/default/xui/ja/menu_people_groups.xml b/indra/newview/skins/default/xui/ja/menu_people_groups.xml index 4e5dc60a3d..842d79dc4b 100644 --- a/indra/newview/skins/default/xui/ja/menu_people_groups.xml +++ b/indra/newview/skins/default/xui/ja/menu_people_groups.xml @@ -3,6 +3,6 @@ <menu_item_call label="情報を表示" name="View Info"/> <menu_item_call label="チャット" name="Chat"/> <menu_item_call label="コール" name="Call"/> - <menu_item_call label="有効化" name="Activate"/> + <menu_item_call label="アクティブ" name="Activate"/> <menu_item_call label="脱退" name="Leave"/> </menu> diff --git a/indra/newview/skins/default/xui/ja/menu_profile_overflow.xml b/indra/newview/skins/default/xui/ja/menu_profile_overflow.xml index bb93990efe..dd0016c566 100644 --- a/indra/newview/skins/default/xui/ja/menu_profile_overflow.xml +++ b/indra/newview/skins/default/xui/ja/menu_profile_overflow.xml @@ -2,6 +2,7 @@ <toggleable_menu name="profile_overflow_menu"> <menu_item_call label="支払う" name="pay"/> <menu_item_call label="共有" name="share"/> + <menu_item_check label="ブロック・ブロック解除" name="block_unblock"/> <menu_item_call label="追放" name="kick"/> <menu_item_call label="フリーズ" name="freeze"/> <menu_item_call label="フリーズ解除" name="unfreeze"/> diff --git a/indra/newview/skins/default/xui/ja/menu_slurl.xml b/indra/newview/skins/default/xui/ja/menu_slurl.xml index 2e06c53494..eb24cee7e0 100644 --- a/indra/newview/skins/default/xui/ja/menu_slurl.xml +++ b/indra/newview/skins/default/xui/ja/menu_slurl.xml @@ -1,6 +1,6 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <menu name="Popup"> <menu_item_call label="URLについて" name="about_url"/> - <menu_item_call label="URLへテレポートする" name="teleport_to_url"/> + <menu_item_call label="URLにテレポートする" name="teleport_to_url"/> <menu_item_call label="地図" name="show_on_map"/> </menu> diff --git a/indra/newview/skins/default/xui/ja/menu_viewer.xml b/indra/newview/skins/default/xui/ja/menu_viewer.xml index db8583ca15..57703e2183 100644 --- a/indra/newview/skins/default/xui/ja/menu_viewer.xml +++ b/indra/newview/skins/default/xui/ja/menu_viewer.xml @@ -49,12 +49,12 @@ <menu_item_call label="日没" name="Sunset"/> <menu_item_call label="深夜" name="Midnight"/> <menu_item_call label="エステートタイム" name="Revert to Region Default"/> - <menu_item_call label="環境編集" name="Environment Editor"/> + <menu_item_call label="自然環境エディター" name="Environment Editor"/> </menu> </menu> <menu label="制作" name="BuildTools"> <menu_item_check label="制作" name="Show Build Tools"/> - <menu label="制作ツールを選択" name="Select Tool"> + <menu label="制作ツールを選択する" name="Select Tool"> <menu_item_call label="フォーカスツール" name="Focus"/> <menu_item_call label="移動ツール" name="Move"/> <menu_item_call label="編集ツール" name="Edit"/> @@ -74,12 +74,13 @@ </menu> <menu_item_call label="リンク" name="Link"/> <menu_item_call label="リンクを外す" name="Unlink"/> + <menu_item_check label="リンクした部分を編集" name="Edit Linked Parts"/> <menu_item_call label="選択したものに焦点を合わせる" name="Focus on Selection"/> <menu_item_call label="選択したものをズームする" name="Zoom to Selection"/> <menu label="オブジェクト" name="Object"> - <menu_item_call label="買う" name="Menu Object Take"/> + <menu_item_call label="取る" name="Menu Object Take"/> <menu_item_call label="コピーを取る" name="Take Copy"/> - <menu_item_call label="「マイ 持ち物」に保存" name="Save Object Back to My Inventory"/> + <menu_item_call label="「持ち物」に保存" name="Save Object Back to My Inventory"/> <menu_item_call label="オブジェクトの中身に保存" name="Save Object Back to Object Contents"/> </menu> <menu label="スクリプト" name="Scripts"> @@ -90,25 +91,18 @@ <menu_item_call label="スクリプトを実行停止にする" name="Set Scripts to Not Running"/> </menu> <menu label="オプション" name="Options"> - <menu_item_check label="リンク部位を編集" name="Edit Linked Parts"/> <menu_item_call label="デフォルトのアップロード権限を設定" name="perm prefs"/> <menu_item_check label="権限の詳細を表示" name="DebugPermissions"/> - <menu label="選択" name="Selection"> - <menu_item_check label="私のオブジェクトだけを選択" name="Select Only My Objects"/> - <menu_item_check label="動的オブジェクトのみ選択" name="Select Only Movable Objects"/> - <menu_item_check label="環境で選択" name="Select By Surrounding"/> - </menu> - <menu label="表示" name="Show"> - <menu_item_check label="非表示の選択を表示" name="Show Hidden Selection"/> - <menu_item_check label="選択した光の半径範囲を表示" name="Show Light Radius for Selection"/> - <menu_item_check label="選択ビームを表示" name="Show Selection Beam"/> - </menu> - <menu label="グリッド" name="Grid"> - <menu_item_check label="グリッドポイントにスナップ" name="Snap to Grid"/> - <menu_item_call label="オブジェクトのXY軸をグリッドにスナップ" name="Snap Object XY to Grid"/> - <menu_item_call label="選択をグリッドに使用" name="Use Selection for Grid"/> - <menu_item_call label="グリッドオプション" name="Grid Options"/> - </menu> + <menu_item_check label="私のオブジェクトだけを選択" name="Select Only My Objects"/> + <menu_item_check label="動的オブジェクトのみ選択" name="Select Only Movable Objects"/> + <menu_item_check label="環境で選択" name="Select By Surrounding"/> + <menu_item_check label="非表示の選択を表示" name="Show Hidden Selection"/> + <menu_item_check label="選択した光の半径範囲を表示" name="Show Light Radius for Selection"/> + <menu_item_check label="選択したビームを表示" name="Show Selection Beam"/> + <menu_item_check label="グリッドポイントにスナップ" name="Snap to Grid"/> + <menu_item_call label="オブジェクトのXY軸をグリッドにスナップ" name="Snap Object XY to Grid"/> + <menu_item_call label="選択をグリッドに使用" name="Use Selection for Grid"/> + <menu_item_call label="グリッドオプション" name="Grid Options"/> </menu> <menu label="リンクした部分を選択" name="Select Linked Parts"> <menu_item_call label="次の部位を選択" name="Select Next Part"/> @@ -119,8 +113,8 @@ </menu> <menu label="ヘルプ" name="Help"> <menu_item_call label="[SECOND_LIFE] ヘルプ" name="Second Life Help"/> - <menu_item_call label="嫌がらせを報告" name="Report Abuse"/> - <menu_item_call label="バグ報告" name="Report Bug"/> + <menu_item_call label="嫌がらせを報告する" name="Report Abuse"/> + <menu_item_call label="バグを報告する" name="Report Bug"/> <menu_item_call label="[APP_NAME] について" name="About Second Life"/> </menu> <menu label="アドバンス" name="Advanced"> @@ -175,8 +169,8 @@ <menu_item_check label="マルチスレッド処理" name="Run Multiple Threads"/> <menu_item_call label="グループキャッシュのクリア" name="ClearGroupCache"/> <menu_item_check label="マウスの平滑化" name="Mouse Smoothing"/> - <menu_item_check label="近くのチャットに IM を表示" name="IMInChat"/> <menu label="ショートカット" name="Shortcuts"> + <menu_item_call label="画像 (L$ [COST] )..." name="Upload Image"/> <menu_item_check label="検索" name="Search"/> <menu_item_call label="キーをリリース" name="Release Keys"/> <menu_item_call label="UI のサイズをデフォルトに設定" name="Set UI Size to Default"/> @@ -219,6 +213,7 @@ <menu_item_check label="カメラ" name="Camera"/> <menu_item_check label="風" name="Wind"/> <menu_item_check label="FOV" name="FOV"/> + <menu_item_check label="バッジ" name="Badge"/> </menu> <menu label="情報を表示" name="Display Info"> <menu_item_check label="時間を表示" name="Show Time"/> diff --git a/indra/newview/skins/default/xui/ja/mime_types.xml b/indra/newview/skins/default/xui/ja/mime_types.xml index 2f945b2010..54663a0367 100644 --- a/indra/newview/skins/default/xui/ja/mime_types.xml +++ b/indra/newview/skins/default/xui/ja/mime_types.xml @@ -2,13 +2,13 @@ <mimetypes name="default"> <widgetset name="web"> <label name="web_label"> - ウェブ・コンテンツ + Webコンテンツ </label> <tooltip name="web_tooltip"> - ここにウェブ・コンテンツがあります。 + ここにWebコンテンツがあります。 </tooltip> <playtip name="web_playtip"> - ウェブ・コンテンツを表示 + Webコンテンツを表示 </playtip> </widgetset> <widgetset name="movie"> @@ -119,7 +119,7 @@ </mimetype> <mimetype name="application/xhtml+xml"> <label name="application/xhtml+xml_label"> - ウェブ・ページ (XHTML) + Webページ (XHTML) </label> </mimetype> <mimetype name="application/x-director"> @@ -184,7 +184,7 @@ </mimetype> <mimetype menu="1" name="text/html"> <label name="text/html_label"> - ウェブ・ページ + Webページ </label> </mimetype> <mimetype menu="1" name="text/plain"> diff --git a/indra/newview/skins/default/xui/ja/notifications.xml b/indra/newview/skins/default/xui/ja/notifications.xml index b502fb2e6e..58109e57f7 100644 --- a/indra/newview/skins/default/xui/ja/notifications.xml +++ b/indra/newview/skins/default/xui/ja/notifications.xml @@ -92,6 +92,10 @@ 衣服/身体部位に対する変更をすべて保存しますか? <usetemplate canceltext="取り消し" name="yesnocancelbuttons" notext="保存しない" yestext="すべて保存"/> </notification> + <notification name="FriendsAndGroupsOnly"> + フレンド以外の人からのコールや、インスタントメッセージを無視する設定にしたことを、相手に知られることはありません。 + <usetemplate name="okbutton" yestext="はい"/> + </notification> <notification name="GrantModifyRights"> 他人に修正権限を与えると、権限を与えられた人はあなたが所有するインワールドのオブジェクトを変更、削除、持ち帰ることができます。 この権限を与える際には十分に注意してください。 [FIRST_NAME] [LAST_NAME] に修正権限を与えますか? @@ -162,14 +166,16 @@ 続けますか? <usetemplate ignoretext="アタッチメントを下に落とす前に確認する" name="okcancelignore" notext="いいえ" yestext="はい"/> </notification> - <notification name="ClickUnimplemented"> - 申し訳ありませんが、まだ未実装です。 - </notification> <notification name="JoinGroupCanAfford"> このグループに参加するには、L$[COST]かかります。 続行しますか? <usetemplate name="okcancelbuttons" notext="取り消し" yestext="参加"/> </notification> + <notification name="JoinGroupNoCost"> + [NAME] というグループに入ろうとしています。 +続けますか? + <usetemplate name="okcancelbuttons" notext="キャンセル" yestext="参加"/> + </notification> <notification name="JoinGroupCannotAfford"> このグループに加入するには、L$[COST]必要です。 L$が不足しているのでこのグループに参加することができません。 @@ -348,6 +354,10 @@ L$が不足しているのでこのグループに参加することができま クラシファイド広告[NAME]への変更を保存しますか? <usetemplate canceltext="キャンセル" name="yesnocancelbuttons" notext="保存しない" yestext="保存"/> </notification> + <notification name="ClassifiedInsufficientFunds"> + クラシファイド広告を出すには、資金が足りません。 + <usetemplate name="okbutton" yestext="OK"/> + </notification> <notification name="DeleteAvatarPick"> ピック[PICK]を削除しますか? <usetemplate name="okcancelbuttons" notext="取り消し" yestext="OK"/> @@ -443,18 +453,18 @@ L$が不足しているのでこのグループに参加することができま ファイル[[FILE]]を書き込めません。 </notification> <notification name="UnsupportedHardware"> - 警告: お使いのシステムは [APP_NAME] の必要最低限の動作環境を満たしていません。 このまま [APP_NAME] を使用すると、パフォーマンスの低下を感じるかもしれません。 恐れ入りますが [SUPPORT_SITE] ではサポート対象外のシステムに関する技術的サポートは行っておりません。 + お使いのコンピューターは [APP_NAME] の必要最低限の動作環境を満たしていません。 パフォーマンスの低下を感じるかもしれません。 恐れ入りますが [SUPPORT_SITE] ではサポート対象外のシステムに関する技術的サポートは行っておりません。 最低動作環境 -[_URL] を開いて詳しい情報を確認しますか? +[_URL] に移動して確認をしますか? <url name="url" option="0"> http://secondlife.com/support/sysreqs.php?lang=ja </url> <usetemplate ignoretext="使用しているコンピューターのハードウェアがサポートされていません" name="okcancelignore" notext="いいえ" yestext="はい"/> </notification> <notification name="UnknownGPU"> - お使いのシステムには、現在 [APP_NAME] が認識できないグラフィックカードが搭載されています。 -[APP_NAME] でまだテストされていない最新ハードウェアのためだと考えられます。 [APP_NAME] は正常に実行される可能性が高いですが、表示設定を調整する必要があるかもしれません。 + お使いのシステムには、[APP_NAME] が認識できないグラフィックカードが搭載されています。 +[APP_NAME] でまだテストされていない最新ハードウェアのためだと考えられます。 問題ないとは思いますが、グラフィックの設定を調整する必要があるかもしれません。 (ミー > 環境設定 > グラフィック) <form name="form"> <ignore name="ignore" text="使用中のグラフックカードが認識されませんでした"/> @@ -795,14 +805,6 @@ L$が不足しているのでこのグループに参加することができま これより1つの区画を選択してください。 </notification> - <notification name="ParcelCanPlayMedia"> - この場所では、ストリーミングメディアの再生が可能です。 -ストリーミングメディアには、高速インターネット接続を要します。 - -利用可能なときにストリーミングメディアを再生しますか? -(このオプションは、「環境設定」 > 「プライバシー」であとからでも変更できます。) - <usetemplate name="okcancelbuttons" notext="無効化" yestext="メディアを再生"/> - </notification> <notification name="CannotDeedLandWaitingForServer"> 土地を譲渡できません: サーバーからの所有権情報を待っています。 @@ -929,9 +931,8 @@ L$は返金されません。 通常これは一時的なエラーです。 数分後にもう一度着用物をカスタマイズ・保存してください。 </notification> <notification name="YouHaveBeenLoggedOut"> - [SECOND_LIFE] からログアウトしました: + しまった、 [SECOND_LIFE] からログアウトされてしまいました [MESSAGE] -「IMとチャットを見る」をクリックすると、引き続き既に開いている IM とチャットを見ることができます。 「終了」をクリックすると [APP_NAME] をすぐに終了します。 <usetemplate name="okcancelbuttons" notext="終了" yestext="IMとチャットを表示"/> </notification> <notification name="OnlyOfficerCanBuyLand"> @@ -1382,7 +1383,6 @@ F1キーを押してください。 <notification name="JoinedTooManyGroupsMember"> 加入できるグループの最大限に達しました。 このグループに加入するために他のグループを脱退するか、この申し入れを断ってください。 [NAME] があなたをグループのメンバーとして勧誘しています。 -[INVITE] <usetemplate name="okcancelbuttons" notext="辞退" yestext="参加"/> </notification> <notification name="JoinedTooManyGroups"> @@ -1450,7 +1450,7 @@ F1キーを押してください。 </form> </notification> <notification name="TeleportFromLandmark"> - 本当にテレポートしますか? + このまま <nolink>[LOCATION]</nolink> にテレポートしますか? <usetemplate ignoretext="ランドマークにテレポートしたいか確認する" name="okcancelignore" notext="キャンセル" yestext="テレポート"/> </notification> <notification name="TeleportToPick"> @@ -1780,7 +1780,7 @@ L$[AMOUNT]で、このクラシファイド広告を今すぐ公開しますか <notification name="HelpReportAbuseEmailLL"> このツールを利用して [http://secondlife.com/corporate/tos.php 利用規約] や [http://jp.secondlife.com/corporate/cs.php コミュニティスタンダード] の違反を報告してください。 -報告された嫌がらせはすべて調査・解決されます。 解決されたものは [http://secondlife.com/support/incidentreport.php Incident Report] で見ることができます。 +報告された嫌がらせはすべて調査・解決されます。 </notification> <notification name="HelpReportAbuseSelectCategory"> 嫌がらせ報告のカテゴリを選択してください。 @@ -1993,10 +1993,10 @@ Webページにこれをリンクすると、他人がこの場所に簡単に 件名: [SUBJECT], メッセージ: [MESSAGE] </notification> <notification name="FriendOnline"> - [FIRST] [LAST] はオンラインです。 + [NAME_SLURL] はオンラインです </notification> <notification name="FriendOffline"> - [FIRST] [LAST] はオフラインです。 + [NAME_SLURL] はオフラインです </notification> <notification name="AddSelfFriend"> 残念ながら自分自身をフレンド登録することはできません。 @@ -2202,7 +2202,7 @@ Webページにこれをリンクすると、他人がこの場所に簡単に </notification> <notification name="ServerObjectMessage"> [NAME] からのメッセージ: -[MSG] +<nolink>[MSG]</nolink> </notification> <notification name="NotSafe"> この土地ではダメージが有効です。 @@ -2383,7 +2383,6 @@ Webページにこれをリンクすると、他人がこの場所に簡単に <form name="form"> <button name="Accept" text="受け入れる"/> <button name="Decline" text="辞退"/> - <button name="Send IM" text="IMを送信"/> </form> </notification> <notification name="FriendshipOffered"> diff --git a/indra/newview/skins/default/xui/ja/panel_bottomtray.xml b/indra/newview/skins/default/xui/ja/panel_bottomtray.xml index 414413a980..81a852522b 100644 --- a/indra/newview/skins/default/xui/ja/panel_bottomtray.xml +++ b/indra/newview/skins/default/xui/ja/panel_bottomtray.xml @@ -17,11 +17,11 @@ <button label="視界" name="camera_btn" tool_tip="カメラコントロールの表示・非表示"/> </layout_panel> <layout_panel name="snapshot_panel"> - <button label="" name="snapshots" tool_tip="スナップショットを撮る"/> + <button label="" name="snapshots" tool_tip="スナップショットを撮ります"/> </layout_panel> <layout_panel name="im_well_panel"> <chiclet_im_well name="im_well"> - <button name="Unread IM messages" tool_tip="Conversations"/> + <button name="Unread IM messages" tool_tip="会話"/> </chiclet_im_well> </layout_panel> <layout_panel name="notification_well_panel"> diff --git a/indra/newview/skins/default/xui/ja/panel_bottomtray_lite.xml b/indra/newview/skins/default/xui/ja/panel_bottomtray_lite.xml new file mode 100644 index 0000000000..6eca8adfe5 --- /dev/null +++ b/indra/newview/skins/default/xui/ja/panel_bottomtray_lite.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<panel name="bottom_tray_lite"> + <layout_stack name="toolbar_stack_lite"> + <layout_panel name="gesture_panel"> + <gesture_combo_list label="ジェスチャー" name="Gesture" tool_tip="ジェスチャーの表示・非表示"/> + </layout_panel> + </layout_stack> +</panel> diff --git a/indra/newview/skins/default/xui/ja/panel_classified_info.xml b/indra/newview/skins/default/xui/ja/panel_classified_info.xml index 7fc4e6f674..14e04d5691 100644 --- a/indra/newview/skins/default/xui/ja/panel_classified_info.xml +++ b/indra/newview/skins/default/xui/ja/panel_classified_info.xml @@ -6,18 +6,19 @@ <panel.string name="type_pg"> 一般コンテンツ </panel.string> + <panel.string name="l$_price"> + L$ [PRICE] + </panel.string> <text name="title" value="クラシファイド広告情報"/> <scroll_container name="profile_scroll"> <panel name="scroll_content_panel"> - <text name="classified_name" value="[name]"/> - <text name="classified_location" value="[loading...]"/> - <text name="content_type" value="[content type]"/> - <text name="category" value="[category]"/> + <text_editor name="classified_name" value="[name]"/> + <text_editor name="classified_location" value="[loading...]"/> + <text_editor name="content_type" value="[content type]"/> + <text_editor name="category" value="[category]"/> <check_box label="毎週自動更新" name="auto_renew"/> - <text name="price_for_listing" tool_tip="掲載価格"> - L$ [PRICE] - </text> - <text name="classified_desc" value="[description]"/> + <text_editor name="price_for_listing" tool_tip="掲載価格"/> + <text_editor name="classified_desc" value="[description]"/> </panel> </scroll_container> <panel name="buttons"> diff --git a/indra/newview/skins/default/xui/ja/panel_edit_profile.xml b/indra/newview/skins/default/xui/ja/panel_edit_profile.xml index d1a2b31934..cd81565acb 100644 --- a/indra/newview/skins/default/xui/ja/panel_edit_profile.xml +++ b/indra/newview/skins/default/xui/ja/panel_edit_profile.xml @@ -42,13 +42,13 @@ <line_editor name="homepage_edit" value="http://"/> <check_box label="検索結果に表示" name="show_in_search_checkbox"/> <text name="title_acc_status_text" value="マイアカウント:"/> + <text_editor name="acc_status_text" value="住人。 支払情報未登録。"/> <text name="my_account_link" value="[[URL] マイアカウントに移動]"/> - <text name="acc_status_text" value="住人。 支払情報未登録。"/> <text name="title_partner_text" value="マイパートナー:"/> - <text name="partner_edit_link" value="[[URL] 編集]" width="100"/> <panel name="partner_data_panel"> - <name_box name="partner_text" value="[FIRST] [LAST]"/> + <name_box initial_value="(取得中)" name="partner_text" value="[FIRST] [LAST]"/> </panel> + <text name="partner_edit_link" value="[[URL] 編集]" width="100"/> </panel> </panel> </scroll_container> diff --git a/indra/newview/skins/default/xui/ja/panel_friends.xml b/indra/newview/skins/default/xui/ja/panel_friends.xml index 80a68f8258..97e58ceaed 100644 --- a/indra/newview/skins/default/xui/ja/panel_friends.xml +++ b/indra/newview/skins/default/xui/ja/panel_friends.xml @@ -4,7 +4,7 @@ 複数のフレンド </string> <scroll_list name="friend_list" tool_tip="複数のフレンドを選択するには、ShiftキーまたはCtrlキーを押しながら名前をクリックします。"> - <column name="icon_online_status" tool_tip="オンライン・ステータス"/> + <column name="icon_online_status" tool_tip="オンライン状況"/> <column label="名前" name="friend_name" tool_tip="名前"/> <column name="icon_visible_online" tool_tip="フレンドは、あなたがオンラインかどうか確認することができます。"/> <column name="icon_visible_map" tool_tip="フレンドは、地図であなたの居場所を見つけることができます。"/> @@ -15,18 +15,18 @@ <text name="friend_name_label" right="-10"> フレンドを選択して権利を変更... </text> - <check_box label="オンライン・ステータスの確認を許可する" name="online_status_cb" tool_tip="コーリングカードあるいはフレンドリストでこのフレンドがオンライン状態を確認できるよう設定"/> - <check_box label="世界地図上であなたの居場所を検索可能にする" name="map_status_cb" tool_tip="このフレンドが地図で私の位置を発見できるように設定"/> - <check_box label="オブジェクトの修正を許可する" name="modify_status_cb" tool_tip="このフレンドがオブジェクトを改造できる許可を与える"/> + <check_box label="オンライン状況の確認を許可する" name="online_status_cb" tool_tip="コーリングカードあるいはフレンドリストでこのフレンドがオンライン状況を確認できるよう設定します"/> + <check_box label="世界地図上であなたの居場所を検索可能にする" name="map_status_cb" tool_tip="このフレンドが地図で私の位置を発見できるように設定します"/> + <check_box label="オブジェクトの修正を許可する" name="modify_status_cb" tool_tip="このフレンドに私のオブジェクトを改造する許可を与えます"/> <text name="process_rights_label"> 権利変更をプロセス中... </text> </panel> <pad left="-95"/> - <button label="IM/コール" name="im_btn" tool_tip="インスタントメッセージ・セッションを開く" width="90"/> + <button label="IM・コール" name="im_btn" tool_tip="インスタントメッセージ・セッションを開きます。" width="90"/> <button label="プロフィール" name="profile_btn" tool_tip="写真、グループ、およびその他の情報を表示します。" width="90"/> - <button label="テレポート" name="offer_teleport_btn" tool_tip="このフレンドに、あなたの現在のロケーションまでのテレポートを申し出ます。" width="90"/> - <button label="支払う" name="pay_btn" tool_tip="リンデンドル (L$) をこのフレンドにあげる" width="90"/> + <button label="テレポート" name="offer_teleport_btn" tool_tip="このフレンドに、あなたの現在地へのテレポートを申し出ます。" width="90"/> + <button label="支払う" name="pay_btn" tool_tip="リンデンドル (L$) をこのフレンドにあげます。" width="90"/> <button label="削除" name="remove_btn" tool_tip="この人物をフレンドリストから外します。" width="90"/> - <button label="追加" name="add_btn" tool_tip="フレンド登録を申し出る" width="90"/> + <button label="追加" name="add_btn" tool_tip="フレンド登録を申し出ます。" width="90"/> </panel> diff --git a/indra/newview/skins/default/xui/ja/panel_group_control_panel.xml b/indra/newview/skins/default/xui/ja/panel_group_control_panel.xml index 1c89675c1e..f7f575206a 100644 --- a/indra/newview/skins/default/xui/ja/panel_group_control_panel.xml +++ b/indra/newview/skins/default/xui/ja/panel_group_control_panel.xml @@ -5,7 +5,7 @@ <button label="グループ情報" name="group_info_btn"/> </layout_panel> <layout_panel name="call_btn_panel"> - <button label="グループにコール" name="call_btn"/> + <button label="グループコール" name="call_btn"/> </layout_panel> <layout_panel name="end_call_btn_panel"> <button label="コール終了" name="end_call_btn"/> diff --git a/indra/newview/skins/default/xui/ja/panel_group_general.xml b/indra/newview/skins/default/xui/ja/panel_group_general.xml index 538f3800bd..17cfafc54d 100644 --- a/indra/newview/skins/default/xui/ja/panel_group_general.xml +++ b/indra/newview/skins/default/xui/ja/panel_group_general.xml @@ -9,29 +9,47 @@ 一般的なグループ情報が変更されました。 </panel.string> <panel.string name="incomplete_member_data_str"> - メンバー・データを検索 + メンバーのデータを検索 </panel.string> + <panel name="group_info_top"> + <texture_picker label="" name="insignia" tool_tip="クリックして写真を選択します"/> + <text name="prepend_founded_by"> + 創始者: + </text> + <name_box initial_value="(取得中)" name="founder_name"/> + <text name="join_cost_text"> + 無料 + </text> + <button label="参加します!" name="btn_join"/> + </panel> <text_editor name="charter"> グループの理念、指針を記入してください </text_editor> <name_list name="visible_members"> <name_list.columns label="メンバー" name="name"/> <name_list.columns label="タイトル" name="title"/> + <name_list.columns label="ログイン" name="status"/> </name_list> + <text name="my_group_settngs_label"> + 個人の設定 + </text> <text name="active_title_label"> - 私のタイトル + 私のタイトル: </text> <combo_box name="active_title" tool_tip="このグループをアクティブにしたときに、アバター名の上に表示されるタイトルを設定します。"/> <check_box label="グループ通知を受信" name="receive_notices" tool_tip="このグループからの通知を受信するかどうかの設定を行います。 グループからスパムが送られてくる場合はこのボックスのチェックを外してください。"/> <check_box label="プロフィールに表示" name="list_groups_in_profile" tool_tip="あなたのプロフィールにこのグループを表示するかどうかの設定を行います。"/> <panel name="preferences_container"> - <check_box label="会員募集" name="open_enrollement" tool_tip="招待されなくても新規メンバーが加入できるかどうかを設定します。"/> - <check_box label="入会費" name="check_enrollment_fee" tool_tip="入会費が必要かどうかを設定します。"/> + <text name="group_settngs_label"> + グループの設定 + </text> + <check_box label="誰でも入会できます" name="open_enrollement" tool_tip="招待されなくても新規メンバーが加入できるかどうかを設定します。"/> + <check_box label="入会費がかかります" name="check_enrollment_fee" tool_tip="入会費が必要かどうかを設定します。"/> <spinner label="L$" name="spin_enrollment_fee" tool_tip="「入会費」にチェックが入っている場合、新規メンバーは指定された入会費を支払わなければグループに入れません。"/> - <check_box initial_value="true" label="検索に表示" name="show_in_group_list" tool_tip="このグループを検索結果に表示させます"/> <combo_box name="group_mature_check" tool_tip="あなたのグループに「控えめ」にレート設定された情報があるかどうかを設定します"> <combo_box.item label="一般コンテンツ" name="pg"/> <combo_box.item label="控えめコンテンツ" name="mature"/> </combo_box> + <check_box initial_value="true" label="検索に表示" name="show_in_group_list" tool_tip="このグループを検索結果に表示させます"/> </panel> </panel> diff --git a/indra/newview/skins/default/xui/ja/panel_group_info_sidetray.xml b/indra/newview/skins/default/xui/ja/panel_group_info_sidetray.xml index 252220b64d..cfc0629ddb 100644 --- a/indra/newview/skins/default/xui/ja/panel_group_info_sidetray.xml +++ b/indra/newview/skins/default/xui/ja/panel_group_info_sidetray.xml @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <panel label="グループ情報" name="GroupInfo"> <panel.string name="default_needs_apply_text"> - 現在のタブには、保存されていない変更があります。 + 保存していない変更があります </panel.string> <panel.string name="want_apply_text"> 変更を保存しますか? @@ -12,27 +12,24 @@ <panel.string name="group_join_free"> 無料 </panel.string> - <text name="group_name" value="(ローディング...)"/> - <line_editor label="新しいグループの名前を入力" name="group_name_editor"/> - <texture_picker label="" name="insignia" tool_tip="クリックして写真を選択します"/> - <text name="prepend_founded_by"> - 創始者: - </text> - <name_box initial_value="(取得中)" name="founder_name"/> - <text name="join_cost_text"> - 無料 - </text> - <button label="参加します!" name="btn_join"/> - <accordion name="groups_accordion"> - <accordion_tab name="group_general_tab" title="一般"/> - <accordion_tab name="group_roles_tab" title="役割"/> - <accordion_tab name="group_notices_tab" title="通知"/> - <accordion_tab name="group_land_tab" title="土地・資産"/> - </accordion> - <panel name="button_row"> - <button label="作成" label_selected="新しいグループ" name="btn_create"/> - <button label="グループチャット" name="btn_chat" width="100"/> - <button label="グループコール" name="btn_call"/> - <button label="保存" label_selected="保存" name="btn_apply"/> + <panel name="group_info_top"> + <text name="group_name" value="(ローディング...)"/> + <line_editor label="新しいグループの名前を入力してください" name="group_name_editor"/> </panel> + <layout_stack name="layout"> + <layout_panel name="group_accordions"> + <accordion name="groups_accordion"> + <accordion_tab name="group_general_tab" title="一般"/> + <accordion_tab name="group_roles_tab" title="役割"/> + <accordion_tab name="group_notices_tab" title="通知"/> + <accordion_tab name="group_land_tab" title="土地・資産"/> + </accordion> + </layout_panel> + <layout_panel name="button_row"> + <button name="btn_create" tool_tip="新しいグループを作成"/> + <button label="チャット" name="btn_chat"/> + <button label="グループコール" name="btn_call" tool_tip="このグループにコールする"/> + <button label="保存" label_selected="保存" name="btn_apply"/> + </layout_panel> + </layout_stack> </panel> diff --git a/indra/newview/skins/default/xui/ja/panel_group_invite.xml b/indra/newview/skins/default/xui/ja/panel_group_invite.xml index dc58359133..a21b340fdd 100644 --- a/indra/newview/skins/default/xui/ja/panel_group_invite.xml +++ b/indra/newview/skins/default/xui/ja/panel_group_invite.xml @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <panel label="メンバーを招待" name="invite_panel"> <panel.string name="confirm_invite_owner_str"> - 本当に新しい所有者を招待しますか?この操作は取り消しできません。 + 本当に新しい所有者を招待しますか?この操作は取り消しできません。 </panel.string> <panel.string name="loading"> (ローディング...) diff --git a/indra/newview/skins/default/xui/ja/panel_group_land_money.xml b/indra/newview/skins/default/xui/ja/panel_group_land_money.xml index b620a66122..c0449f1221 100644 --- a/indra/newview/skins/default/xui/ja/panel_group_land_money.xml +++ b/indra/newview/skins/default/xui/ja/panel_group_land_money.xml @@ -1,65 +1,62 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <panel label="土地とL$" name="land_money_tab"> - <string name="help_text"> + <panel.string name="help_text"> 「土地利用の合計」が「寄付総額」以下、または同じになるまで警告が表示されます。 - </string> - <button label="?" name="help_button"/> - <string name="cant_view_group_land_text"> + </panel.string> + <panel.string name="cant_view_group_land_text"> グループ所有地を確認する権限がありません。 - </string> - <string name="cant_view_group_accounting_text"> + </panel.string> + <panel.string name="cant_view_group_accounting_text"> グループの会計情報を確認する権限がありません。 - </string> - <string name="loading_txt"> + </panel.string> + <panel.string name="loading_txt"> ロード中... - </string> - <text name="group_land_heading"> - グループの保有地 - </text> - <scroll_list name="group_parcel_list"> - <column label="区画" name="name"/> - <column label="地域(リージョン)" name="location"/> - <column label="種類" name="type"/> - <column label="面積" name="area"/> - <column label="" name="hidden"/> - </scroll_list> - <button label="地図" label_selected="地図" name="map_button" width="60"/> - <text name="total_contributed_land_label"> - 寄付合計: - </text> - <text name="total_contributed_land_value" width="150"> - [AREA] 平方メートル - </text> - <text name="total_land_in_use_label"> - 土地利用の合計: - </text> - <text name="total_land_in_use_value" width="150"> - [AREA] 平方メートル - </text> - <text name="land_available_label"> - 利用可能の土地: - </text> - <text name="land_available_value" width="150"> - [AREA] 平方メートル - </text> - <text name="your_contribution_label"> - あなたの貢献: - </text> - <string name="land_contrib_error"> + </panel.string> + <panel.string name="land_contrib_error"> 土地の貢献を設定することができません - </string> - <text name="your_contribution_units" width="80"> - 平方メートル - </text> - <text name="your_contribution_max_value" width="100"> - (最大 [AMOUNT]) - </text> - <text name="group_over_limit_text"> - 土地を使用するには、土地クレジットがもっと必要です - </text> - <text name="group_money_heading"> - グループL$ - </text> + </panel.string> + <panel name="layout_panel_landmoney"> + <scroll_list name="group_parcel_list"> + <scroll_list.columns label="区画" name="name"/> + <scroll_list.columns label="地域" name="location"/> + <scroll_list.columns label="種類" name="type"/> + <scroll_list.columns label="面積" name="area"/> + </scroll_list> + <text name="total_contributed_land_label"> + 寄付合計: + </text> + <text name="total_contributed_land_value"> + [AREA] 平方メートル + </text> + <button label="地図" label_selected="地図" name="map_button"/> + <text name="total_land_in_use_label"> + 土地利用の合計: + </text> + <text name="total_land_in_use_value"> + [AREA] 平方メートル + </text> + <text name="land_available_label"> + 利用可能の土地: + </text> + <text name="land_available_value"> + [AREA] 平方メートル + </text> + <text name="your_contribution_label"> + あなたの貢献: + </text> + <text name="your_contribution_units"> + 平方メートル + </text> + <text name="your_contribution_max_value"> + (最大 [AMOUNT]) + </text> + <text name="group_over_limit_text"> + 土地利用をサポートするための土地クレジットが足りません + </text> + <text name="group_money_heading"> + グループの L$ + </text> + </panel> <tab_container name="group_money_tab_container"> <panel label="計画" name="group_money_planning_tab"> <text_editor name="group_money_planning_text"> diff --git a/indra/newview/skins/default/xui/ja/panel_group_notices.xml b/indra/newview/skins/default/xui/ja/panel_group_notices.xml index c5168c4d7c..a0c50c6122 100644 --- a/indra/newview/skins/default/xui/ja/panel_group_notices.xml +++ b/indra/newview/skins/default/xui/ja/panel_group_notices.xml @@ -21,8 +21,8 @@ <text name="notice_list_none_found"> 見つかりませんでした </text> - <button label="新しい通知を作成" label_selected="新しい通知を作成" name="create_new_notice" tool_tip="新しい通知を作成"/> - <button label="更新" label_selected="リスト更新" name="refresh_notices" tool_tip="通知リストを更新"/> + <button label="新しい通知を作成" label_selected="新しい通知を作成" name="create_new_notice" tool_tip="新しい通知を作成します"/> + <button label="更新" label_selected="リスト更新" name="refresh_notices" tool_tip="通知リストを更新します"/> <panel label="新しい通知を作成" name="panel_create_new_notice"> <text name="lbl"> 通知を作成 @@ -31,7 +31,7 @@ 件名: </text> <text name="lbl4"> - メッセージ: + 内容: </text> <text name="lbl5"> 添付: @@ -39,7 +39,7 @@ <text name="string"> ここにアイテムをドラッグ&ドロップして添付してください: </text> - <button label="取り外す" label_selected="添付物を削除" name="remove_attachment"/> + <button label="取り外す" label_selected="添付物を削除" name="remove_attachment" tool_tip="あなたの通知から添付されたアイテムを削除します"/> <button label="送信" label_selected="送信" name="send_notice"/> <group_drop_target name="drop_target" tool_tip="持ち物のアイテムをこのボックスにドラッグして、通知と一緒に送ります。 添付するには、そのアイテムのコピーと再販・プレゼントの権限があなたにある必要があります。"/> </panel> @@ -54,7 +54,7 @@ 件名: </text> <text name="lbl4"> - メッセージ: + 内容: </text> <button label="添付アイテムを開く" label_selected="添付物を開く" name="open_attachment"/> </panel> diff --git a/indra/newview/skins/default/xui/ja/panel_group_roles.xml b/indra/newview/skins/default/xui/ja/panel_group_roles.xml index 1f2d28ca4f..db6fe268c7 100644 --- a/indra/newview/skins/default/xui/ja/panel_group_roles.xml +++ b/indra/newview/skins/default/xui/ja/panel_group_roles.xml @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <panel label="メンバーと役割" name="roles_tab"> <panel.string name="default_needs_apply_text"> - 現在のタブには、保存されていない変更があります。 + 保存していない変更があります </panel.string> <panel.string name="want_apply_text"> 変更を保存しますか? diff --git a/indra/newview/skins/default/xui/ja/panel_groups.xml b/indra/newview/skins/default/xui/ja/panel_groups.xml index 337402d32c..de81a6431a 100644 --- a/indra/newview/skins/default/xui/ja/panel_groups.xml +++ b/indra/newview/skins/default/xui/ja/panel_groups.xml @@ -1,12 +1,12 @@ <?xml version="1.0" encoding="utf-8" standalone="yes" ?> <panel name="groups"> <text name="groupdesc"> - アクティブなグループ名は太字で表示されています + アクティブなグループは太字で表示されています </text> <text name="groupcount" width="270"> - あなたは[COUNT] グループに所属しています (最大[MAX]) + [COUNT] のグループに所属しています (最大[MAX]) </text> - <button label="IM/コール" name="IM" + <button label="IM・コール" name="IM" tool_tip="インスタントメッセージ・セッションを開く" /> <button label="情報" name="Info" /> <button label="アクティブ" name="Activate" /> diff --git a/indra/newview/skins/default/xui/ja/panel_im_control_panel.xml b/indra/newview/skins/default/xui/ja/panel_im_control_panel.xml index bfadcb13d3..be15e92aa1 100644 --- a/indra/newview/skins/default/xui/ja/panel_im_control_panel.xml +++ b/indra/newview/skins/default/xui/ja/panel_im_control_panel.xml @@ -9,11 +9,14 @@ <button label="フレンド登録" name="add_friend_btn"/> </layout_panel> <layout_panel name="teleport_btn_panel"> - <button label="テレポート" name="teleport_btn"/> + <button label="テレポート" name="teleport_btn" tool_tip="この人にテレポートを送ります"/> </layout_panel> <layout_panel name="share_btn_panel"> <button label="共有" name="share_btn"/> </layout_panel> + <layout_panel name="share_btn_panel"> + <button label="支払う" name="pay_btn"/> + </layout_panel> <layout_panel name="call_btn_panel"> <button label="コール" name="call_btn"/> </layout_panel> diff --git a/indra/newview/skins/default/xui/ja/panel_landmark_info.xml b/indra/newview/skins/default/xui/ja/panel_landmark_info.xml index 9129c66a45..87477c2651 100644 --- a/indra/newview/skins/default/xui/ja/panel_landmark_info.xml +++ b/indra/newview/skins/default/xui/ja/panel_landmark_info.xml @@ -36,7 +36,7 @@ </panel> <panel name="landmark_edit_panel"> <text name="title_label" value="タイトル:"/> - <text name="notes_label" value="個人的メモ:"/> + <text name="notes_label" value="メモ:"/> <text name="folder_label" value="ランドマークの位置:"/> </panel> </panel> diff --git a/indra/newview/skins/default/xui/ja/panel_landmarks.xml b/indra/newview/skins/default/xui/ja/panel_landmarks.xml index 45767e8c50..993c52b561 100644 --- a/indra/newview/skins/default/xui/ja/panel_landmarks.xml +++ b/indra/newview/skins/default/xui/ja/panel_landmarks.xml @@ -2,13 +2,13 @@ <panel name="Landmarks"> <accordion name="landmarks_accordion"> <accordion_tab name="tab_favorites" title="お気に入りバー"/> - <accordion_tab name="tab_landmarks" title="ランドマーク"/> + <accordion_tab name="tab_landmarks" title="マイ ランドマーク"/> <accordion_tab name="tab_inventory" title="持ち物"/> <accordion_tab name="tab_library" title="ライブラリ"/> </accordion> <panel name="bottom_panel"> - <button name="options_gear_btn" tool_tip="その他のオプションを表示"/> - <button name="add_btn" tool_tip="新しいランドマークを追加"/> - <dnd_button name="trash_btn" tool_tip="選択したランドマークを削除"/> + <button name="options_gear_btn" tool_tip="その他のオプションを表示します"/> + <button name="add_btn" tool_tip="新しいランドマークを追加します"/> + <dnd_button name="trash_btn" tool_tip="選択したランドマークを削除します"/> </panel> </panel> diff --git a/indra/newview/skins/default/xui/ja/panel_login.xml b/indra/newview/skins/default/xui/ja/panel_login.xml index 1d18a86b53..c217af38ba 100644 --- a/indra/newview/skins/default/xui/ja/panel_login.xml +++ b/indra/newview/skins/default/xui/ja/panel_login.xml @@ -19,7 +19,7 @@ <text name="password_text"> パスワード: </text> - <check_box label="記憶する" name="remember_check"/> + <check_box label="パスワードを記憶" name="remember_check"/> <text name="start_location_text"> 開始地点: </text> @@ -28,7 +28,7 @@ <combo_box.item label="ホーム" name="MyHome"/> <combo_box.item label="<地域名を入力>" name="Typeregionname"/> </combo_box> - <button label="ログイン" name="connect_btn" left_pad="30" width="60"/> + <button label="ログイン" left_pad="30" name="connect_btn" width="60"/> </layout_panel> <layout_panel name="links"> <text name="create_new_account_text"> diff --git a/indra/newview/skins/default/xui/ja/panel_main_inventory.xml b/indra/newview/skins/default/xui/ja/panel_main_inventory.xml index d533ce5e0d..36c7b75f97 100644 --- a/indra/newview/skins/default/xui/ja/panel_main_inventory.xml +++ b/indra/newview/skins/default/xui/ja/panel_main_inventory.xml @@ -9,9 +9,9 @@ <inventory_panel label="最新" name="Recent Items"/> </tab_container> <panel name="bottom_panel"> - <button name="options_gear_btn" tool_tip="その他のオプションを表示"/> - <button name="add_btn" tool_tip="新しいアイテムの追加"/> - <dnd_button name="trash_btn" tool_tip="選択したアイテムを削除"/> + <button name="options_gear_btn" tool_tip="その他のオプションを表示します"/> + <button name="add_btn" tool_tip="新しいアイテムを追加します"/> + <dnd_button name="trash_btn" tool_tip="選択したアイテムを削除します"/> </panel> <menu_bar name="Inventory Menu"> <menu label="ファイル" name="File"> @@ -32,7 +32,7 @@ <menu label="新規作成" name="Create"> <menu_item_call label="フォルダ" name="New Folder"/> <menu_item_call label="スクリプト" name="New Script"/> - <menu_item_call label="新しいノートカード" name="New Note"/> + <menu_item_call label="ノートカード" name="New Note"/> <menu_item_call label="ジェスチャー" name="New Gesture"/> <menu label="衣類" name="New Clothes"> <menu_item_call label="シャツ" name="New Shirt"/> @@ -40,7 +40,7 @@ <menu_item_call label="靴" name="New Shoes"/> <menu_item_call label="靴下" name="New Socks"/> <menu_item_call label="ジャケット" name="New Jacket"/> - <menu_item_call label="シャツ" name="New Skirt"/> + <menu_item_call label="スカート" name="New Skirt"/> <menu_item_call label="手袋" name="New Gloves"/> <menu_item_call label="下着(上)" name="New Undershirt"/> <menu_item_call label="下着(下)" name="New Underpants"/> diff --git a/indra/newview/skins/default/xui/ja/panel_me.xml b/indra/newview/skins/default/xui/ja/panel_me.xml index fe51d8507d..523a3fa594 100644 --- a/indra/newview/skins/default/xui/ja/panel_me.xml +++ b/indra/newview/skins/default/xui/ja/panel_me.xml @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> -<panel label="マイ プロフィール" name="panel_me"> +<panel label="My Profile!!!!!" name="panel_me"> <tab_container name="tabs"> - <panel label="プロフィール" name="panel_profile"/> - <panel label="ピック" name="panel_picks"/> + <panel label="マイ プロフィール" name="panel_profile"/> + <panel label="マイ ピック" name="panel_picks"/> </tab_container> </panel> diff --git a/indra/newview/skins/default/xui/ja/panel_media_settings_general.xml b/indra/newview/skins/default/xui/ja/panel_media_settings_general.xml index 74e414c381..eba26bbe3d 100644 --- a/indra/newview/skins/default/xui/ja/panel_media_settings_general.xml +++ b/indra/newview/skins/default/xui/ja/panel_media_settings_general.xml @@ -20,7 +20,7 @@ <check_box initial_value="false" label="自動ズーム" name="auto_zoom"/> <check_box initial_value="false" label="自動メディア再生" name="auto_play"/> <text name="media_setting_note"> - 注: 住人はこの設定を無視できます + 注意: 住人はこの設定を無視できます </text> <check_box initial_value="false" label="オブジェクトの表面のメディアの自動スケール" name="auto_scale"/> <text name="size_label"> diff --git a/indra/newview/skins/default/xui/ja/panel_media_settings_security.xml b/indra/newview/skins/default/xui/ja/panel_media_settings_security.xml index 7822123a30..6accbd4852 100644 --- a/indra/newview/skins/default/xui/ja/panel_media_settings_security.xml +++ b/indra/newview/skins/default/xui/ja/panel_media_settings_security.xml @@ -1,6 +1,6 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <panel label="セキュリティ" name="Media Settings Security"> - <check_box initial_value="false" label="指定したURLパターンにのみアクセスを許可する" name="whitelist_enable"/> + <check_box initial_value="false" label="指定したURLパターンのみアクセスを許可する" name="whitelist_enable"/> <text name="home_url_fails_some_items_in_whitelist"> ホームページに失敗したエントリーがマークされました: </text> diff --git a/indra/newview/skins/default/xui/ja/panel_my_profile.xml b/indra/newview/skins/default/xui/ja/panel_my_profile.xml index 4cce3798cf..17461ef771 100644 --- a/indra/newview/skins/default/xui/ja/panel_my_profile.xml +++ b/indra/newview/skins/default/xui/ja/panel_my_profile.xml @@ -28,13 +28,16 @@ <icon label="" name="real_world_edit_icon" tool_tip="下の「プロフィールの編集」ボタンを押して画像を変更します"/> <text name="title_rw_descr_text" value="現実世界:"/> </panel> - <text name="title_member_text" value="住人となった日:"/> + <text name="title_member_text" value="メンバー登録:"/> <text name="title_acc_status_text" value="アカウントの状態:"/> - <text name="acc_status_text"> + <text_editor name="acc_status_text"> 住人。 支払情報未登録。 リンデン。 - </text> + </text_editor> <text name="title_partner_text" value="パートナー:"/> + <panel name="partner_data_panel"> + <name_box initial_value="(取得中)" name="partner_text"/> + </panel> <text name="title_groups_text" value="グループ:"/> </panel> </scroll_container> diff --git a/indra/newview/skins/default/xui/ja/panel_navigation_bar.xml b/indra/newview/skins/default/xui/ja/panel_navigation_bar.xml index a154442095..0426c4fe9a 100644 --- a/indra/newview/skins/default/xui/ja/panel_navigation_bar.xml +++ b/indra/newview/skins/default/xui/ja/panel_navigation_bar.xml @@ -1,15 +1,18 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <panel name="navigation_bar"> <panel name="navigation_panel"> - <button name="back_btn" tool_tip="前の場所"/> - <button name="forward_btn" tool_tip="次の場所"/> + <pull_button name="back_btn" tool_tip="前の場所へ戻ります"/> + <pull_button name="forward_btn" tool_tip="次の場所へ進みます"/> <button name="home_btn" tool_tip="「ホーム」にテレポート"/> <location_input label="場所" name="location_combo"/> <search_combo_box label="検索" name="search_combo_box" tool_tip="検索"> <combo_editor label="[SECOND_LIFE] を検索:" name="search_combo_editor"/> </search_combo_box> </panel> - <favorites_bar name="favorite"> + <favorites_bar name="favorite" tool_tip="ランドマークをここにドラッグして、Second Lifeのお気に入りの場所に素早くアクセス!"> + <label name="favorites_bar_label" tool_tip="ランドマークをここにドラッグして、Second Lifeのお気に入りの場所に素早くアクセス!"> + お気に入りバー + </label> <chevron_button name=">>" tool_tip="お気に入りをもっと表示"/> </favorites_bar> </panel> diff --git a/indra/newview/skins/default/xui/ja/panel_notes.xml b/indra/newview/skins/default/xui/ja/panel_notes.xml index 1948c54359..6023bf125f 100644 --- a/indra/newview/skins/default/xui/ja/panel_notes.xml +++ b/indra/newview/skins/default/xui/ja/panel_notes.xml @@ -15,9 +15,9 @@ <layout_panel name="notes_buttons_panel"> <button label="フレンド登録" name="add_friend" tool_tip="フレンド登録を申し出ます"/> <button label="IM" name="im" tool_tip="インスタントメッセージを開きます"/> - <button label="コール" name="call" tool_tip="この住人にコールする"/> - <button label="地図" name="show_on_map_btn" tool_tip="住人を地図上で表示する"/> - <button label="テレポート" name="teleport" tool_tip="テレポートを送る"/> + <button label="コール" name="call" tool_tip="この住人にコールします"/> + <button label="地図" name="show_on_map_btn" tool_tip="住人を地図上で表示します"/> + <button label="テレポート" name="teleport" tool_tip="テレポートを送ります"/> </layout_panel> </layout_stack> </panel> diff --git a/indra/newview/skins/default/xui/ja/panel_outfits_inventory.xml b/indra/newview/skins/default/xui/ja/panel_outfits_inventory.xml index 6c2d845ad3..b941763388 100644 --- a/indra/newview/skins/default/xui/ja/panel_outfits_inventory.xml +++ b/indra/newview/skins/default/xui/ja/panel_outfits_inventory.xml @@ -2,13 +2,13 @@ <panel label="もの" name="Outfits"> <tab_container name="appearance_tabs"> <inventory_panel label="マイ アウトフィット" name="outfitslist_tab"/> - <inventory_panel label="着用中" name="cof_accordionpanel"/> + <inventory_panel label="着用中" name="cof_tab"/> </tab_container> <panel name="bottom_panel"> - <button name="options_gear_btn" tool_tip="その他のオプションを表示"/> - <dnd_button name="trash_btn" tool_tip="選択したアイテムを削除"/> - <button label="アウトフィットを保存する" name="make_outfit_btn" tool_tip="容姿をアウトフィットに保存する" width="140"/> - <button label="装着" name="wear_btn" tool_tip="選択したアウトフィットを着用する"/> + <button name="options_gear_btn" tool_tip="その他のオプションを表示します"/> + <dnd_button name="trash_btn" tool_tip="選択したアイテムを削除します"/> + <button label="アウトフィットを保存する" name="make_outfit_btn" tool_tip="容姿をアウトフィットに保存します" width="140"/> + <button label="装着" name="wear_btn" tool_tip="選択したアウトフィットを着用します"/> <button label="M" name="look_edit_btn"/> </panel> </panel> diff --git a/indra/newview/skins/default/xui/ja/panel_people.xml b/indra/newview/skins/default/xui/ja/panel_people.xml index c955cf6e48..bad4cdbc05 100644 --- a/indra/newview/skins/default/xui/ja/panel_people.xml +++ b/indra/newview/skins/default/xui/ja/panel_people.xml @@ -5,7 +5,6 @@ <string name="no_one_near" value="近くに誰もいません"/> <string name="no_friends_online" value="オンラインのフレンドはいません"/> <string name="no_friends" value="フレンドはいません"/> - <string name="no_groups" value="グループはありません"/> <string name="people_filter_label" value="人をフィルター"/> <string name="groups_filter_label" value="グループをフィルター"/> <filter_editor label="フィルター" name="filter_input"/> @@ -16,22 +15,26 @@ <button name="add_friend_btn" tool_tip="選択した住人をフレンドリストに登録"/> </panel> </panel> - <panel label="フレンド" name="friends_panel"> + <panel label="マイ フレンド" name="friends_panel"> <accordion name="friends_accordion"> <accordion_tab name="tab_online" title="オンライン"/> <accordion_tab name="tab_all" title="全員"/> </accordion> + <text name="no_friends_msg"> + お友達を追加するには、[secondlife:///app/search/people グローバル検索] をするか、ユーザーをクリックして行ってください。 +誰か一緒に行動をする人をお探しの時は、[secondlife:///app/worldmap 地図をお試しださい]。 + </text> <panel label="bottom_panel" name="bottom_panel"> <button name="friends_viewsort_btn" tool_tip="オプション"/> - <button name="add_btn" tool_tip="フレンド登録を申し出る"/> - <button name="del_btn" tool_tip="選択した人をフレンドリストから削除"/> + <button name="add_btn" tool_tip="フレンド登録を申し出ます"/> + <button name="del_btn" tool_tip="選択した人をフレンドリストから削除します"/> </panel> </panel> - <panel label="グループ" name="groups_panel"> + <panel label="マイ グループ" name="groups_panel"> <panel label="bottom_panel" name="bottom_panel"> <button name="groups_viewsort_btn" tool_tip="オプション"/> - <button name="plus_btn" tool_tip="グループに参加 / 新規グループを作成"/> - <button name="activate_btn" tool_tip="選択したグループをアクティベート"/> + <button name="plus_btn" tool_tip="グループに参加 / 新規グループを作成します"/> + <button name="activate_btn" tool_tip="選択したグループをアクティブにします"/> </panel> </panel> <panel label="最新" name="recent_panel"> @@ -42,13 +45,13 @@ </panel> </tab_container> <panel name="button_bar"> - <button label="プロフィール" name="view_profile_btn" tool_tip="写真、グループ、その他住人情報を表示"/> - <button label="IM" name="im_btn" tool_tip="インスタントメッセージを開く"/> - <button label="コール" name="call_btn" tool_tip="この住人にコールする"/> + <button label="プロフィール" name="view_profile_btn" tool_tip="写真、グループ、その他住人情報を表示します"/> + <button label="IM" name="im_btn" tool_tip="インスタントメッセージを開きます"/> + <button label="コール" name="call_btn" tool_tip="この住人にコールします"/> <button label="共有" name="share_btn"/> - <button label="テレポート" name="teleport_btn" tool_tip="テレポートを送る"/> - <button label="グループ情報" name="group_info_btn" tool_tip="グループ情報を表示"/> - <button label="グループチャット" name="chat_btn" tool_tip="チャットを開始"/> - <button label="グループにコールする" name="group_call_btn" tool_tip="このグループにコールする"/> + <button label="テレポート" name="teleport_btn" tool_tip="テレポートを送ります"/> + <button label="グループ情報" name="group_info_btn" tool_tip="グループ情報を表示します"/> + <button label="グループチャット" name="chat_btn" tool_tip="チャットを開始します"/> + <button label="グループコール" name="group_call_btn" tool_tip="このグループにコールします"/> </panel> </panel> diff --git a/indra/newview/skins/default/xui/ja/panel_picks.xml b/indra/newview/skins/default/xui/ja/panel_picks.xml index f74bf7a073..4f58c032da 100644 --- a/indra/newview/skins/default/xui/ja/panel_picks.xml +++ b/indra/newview/skins/default/xui/ja/panel_picks.xml @@ -10,8 +10,8 @@ <button name="new_btn" tool_tip="現在地の新しいピック、またはクラシファイド広告を作成します"/> </panel> <panel name="buttons_cucks"> - <button label="情報" name="info_btn" tool_tip="ピックの情報を表示"/> - <button label="テレポート" name="teleport_btn" tool_tip="該当するエリアにテレポート"/> - <button label="地図" name="show_on_map_btn" tool_tip="世界地図に該当するエリアを表示"/> + <button label="情報" name="info_btn" tool_tip="ピックの情報を表示します"/> + <button label="テレポート" name="teleport_btn" tool_tip="該当するエリアにテレポートします"/> + <button label="地図" name="show_on_map_btn" tool_tip="世界地図に該当するエリアを表示します"/> </panel> </panel> diff --git a/indra/newview/skins/default/xui/ja/panel_place_profile.xml b/indra/newview/skins/default/xui/ja/panel_place_profile.xml index ef4b71c4aa..a6af5f3d3c 100644 --- a/indra/newview/skins/default/xui/ja/panel_place_profile.xml +++ b/indra/newview/skins/default/xui/ja/panel_place_profile.xml @@ -6,7 +6,7 @@ <string name="available" value="利用可"/> <string name="allocated" value="割り当て済"/> <string name="title_place" value="場所のプロフィール"/> - <string name="title_teleport_history" value="テレポート履歴の場所"/> + <string name="title_teleport_history" value="テレポートの履歴"/> <string name="not_available" value="(該当なし)"/> <string name="unknown" value="(不明)"/> <string name="public" value="(公開)"/> @@ -86,9 +86,9 @@ <button label="土地情報" name="about_land_btn"/> </panel> </accordion_tab> - <accordion_tab name="region_information_tab" title="リージョン"> + <accordion_tab name="region_information_tab" title="リージョン(地域) "> <panel> - <text name="region_name_label" value="リージョン:"/> + <text name="region_name_label" value="地域:"/> <text name="region_name" value="Mooseland"/> <text name="region_type_label" value="種類:"/> <text name="region_type" value="Moose"/> @@ -105,7 +105,7 @@ </accordion_tab> <accordion_tab name="estate_information_tab" title="エステート(不動産)"> <panel> - <text name="estate_name_label" value="エステート(不動産):"/> + <text name="estate_name_label" value="不動産:"/> <text name="estate_rating_label" value="レーティング区分:"/> <text name="estate_owner_label" value="所有者:"/> <text name="covenant_label" value="約款:"/> diff --git a/indra/newview/skins/default/xui/ja/panel_places.xml b/indra/newview/skins/default/xui/ja/panel_places.xml index b1c7a3308f..e2dba19c1d 100644 --- a/indra/newview/skins/default/xui/ja/panel_places.xml +++ b/indra/newview/skins/default/xui/ja/panel_places.xml @@ -2,7 +2,7 @@ <panel label="場所" name="places panel"> <string name="landmarks_tab_title" value="マイ ランドマーク"/> <string name="teleport_history_tab_title" value="テレポートの履歴"/> - <filter_editor label="場所をフィルター" name="Filter"/> + <filter_editor label="私の場所をフィルターする" name="Filter"/> <panel name="button_panel"> <button label="テレポート" name="teleport_btn" tool_tip="該当するエリアにテレポートします"/> <button label="地図" name="map_btn"/> diff --git a/indra/newview/skins/default/xui/ja/panel_preferences_advanced.xml b/indra/newview/skins/default/xui/ja/panel_preferences_advanced.xml index d444cccd2d..e0c25c35a1 100644 --- a/indra/newview/skins/default/xui/ja/panel_preferences_advanced.xml +++ b/indra/newview/skins/default/xui/ja/panel_preferences_advanced.xml @@ -1,27 +1,8 @@ <?xml version="1.0" encoding="utf-8"?> -<panel name="advanced"> - <panel.string name="resolution_format"> - [RES_X] x [RES_Y] - </panel.string> +<panel label="アドバンス" name="advanced"> <panel.string name="aspect_ratio_text"> [NUM]:[DEN] </panel.string> - <check_box label="吹き出しチャット" name="bubble_text_chat"/> - <color_swatch name="background" tool_tip="吹き出しチャットの色を選択します"/> - <slider label="透明度" name="bubble_chat_opacity"/> - <text name="AspectRatioLabel1" tool_tip="(幅/高さ)"> - 縦横比 - </text> - <combo_box name="aspect_ratio" tool_tip="(幅/高さ)"> - <combo_box.item label="4:3(標準CRT)" name="item1"/> - <combo_box.item label="5:4(1280x1024 LCD)" name="item2"/> - <combo_box.item label="8:5(ワイドスクリ-ン)" name="item3"/> - <combo_box.item label="16:9(ワイドスクリ-ン)" name="item4"/> - </combo_box> - <check_box label="自動検出" name="aspect_auto_detect"/> - <text name="heading1"> - カメラ: - </text> <slider label="視界角" name="camera_fov"/> <slider label="距離" name="camera_offset_scale"/> <text name="heading2"> @@ -29,20 +10,20 @@ </text> <check_box label="制作・編集" name="edit_camera_movement" tool_tip="編集モードのオン・オフの切り替えに、自動カメラポジションを使います"/> <check_box label="容姿" name="appearance_camera_movement" tool_tip="編集モードに入ったときに、自動カメラポジションを使います"/> - <text name="heading3"> - アバター: - </text> <check_box label="一人称視点で表示する" name="first_person_avatar_visible"/> <check_box label="常にキー操作で動くようにする" name="arrow_keys_move_avatar_check"/> <check_box label="上矢印キー2度押し+長押しで走る" name="tap_tap_hold_to_run"/> <check_box label="話すときにアバターの口を動かす" name="enable_lip_sync"/> - <check_box label="スクリプトのエラーを表示する" name="show_script_errors"/> + <check_box label="吹き出しチャット" name="bubble_text_chat"/> + <slider label="透明度" name="bubble_chat_opacity"/> + <color_swatch name="background" tool_tip="吹き出しチャットの色を選択します"/> + <check_box label="スクリプトのエラーを表示:" name="show_script_errors"/> <radio_group name="show_location"> - <radio_item label="チャット" name="0"/> - <radio_item label="ウィンドウ" name="1"/> + <radio_item label="近くのチャット" name="0"/> + <radio_item label="別々のウィンドウ" name="1"/> </radio_group> - <check_box label="トリガーキーを押したときに、マイクを切り替える:" name="push_to_talk_toggle_check" tool_tip="トグルモードの時にトリガーキーを1度押して放すと、マイクのオン・オフ設定を切り替えます。 トグルモードではないときは、トリガーキーを押した状態の時のみあなたの声が相手に聞こえます。"/> + <check_box label="押すとボイスのオン・オフを切り替えます:" name="push_to_talk_toggle_check" tool_tip="トグルモードの時にトリガーキーを1度押して放すと、マイクのオン・オフ設定を切り替えます。 トグルモードではないときは、トリガーキーを押した状態の時のみあなたの声が相手に聞こえます。"/> <line_editor label="プッシュ・トゥ・スピークのトリガー" name="modifier_combo"/> <button label="キー設定" name="set_voice_hotkey_button"/> - <button label="マウスの中央ボタン" name="set_voice_middlemouse_button"/> + <button label="マウスの中央ボタン" name="set_voice_middlemouse_button" tool_tip="マウスの中央ボタンにリセットします"/> </panel> diff --git a/indra/newview/skins/default/xui/ja/panel_preferences_alerts.xml b/indra/newview/skins/default/xui/ja/panel_preferences_alerts.xml index 16af659326..7fd2e31698 100644 --- a/indra/newview/skins/default/xui/ja/panel_preferences_alerts.xml +++ b/indra/newview/skins/default/xui/ja/panel_preferences_alerts.xml @@ -4,11 +4,11 @@ 知らせる: </text> <check_box label="リンデンドルを使用・受け取るとき" name="notify_money_change_checkbox"/> - <check_box label="フレンドがログアウト・ログインするとき" name="friends_online_notify_checkbox"/> + <check_box label="フレンドがログイン・ログアウトするとき" name="friends_online_notify_checkbox"/> <text name="show_label" width="300"> - 常に表示する通知: + 常に表示するメッセージ: </text> <text name="dont_show_label"> - 表示しない通知: + 表示しないメッセージ: </text> </panel> diff --git a/indra/newview/skins/default/xui/ja/panel_preferences_chat.xml b/indra/newview/skins/default/xui/ja/panel_preferences_chat.xml index ece18a75ca..81b9ed6a73 100644 --- a/indra/newview/skins/default/xui/ja/panel_preferences_chat.xml +++ b/indra/newview/skins/default/xui/ja/panel_preferences_chat.xml @@ -7,27 +7,27 @@ </radio_group> <color_swatch label="自分" name="user"/> <text name="text_box1"> - ミー + 自分 </text> <color_swatch label="その他" name="agent"/> <text name="text_box2"> - その他 + 他人 </text> <color_swatch label="IM" name="im"/> <text name="text_box3"> IM </text> - <color_swatch label="システム" name="system"/> + <color_swatch label="システム" name="system"/> <text name="text_box4"> - システム + システム </text> <color_swatch label="エラー" name="script_error"/> <text name="text_box5"> エラー </text> - <color_swatch label="オブジェクト" name="objects"/> + <color_swatch label="オブジェクト" name="objects"/> <text name="text_box6"> - オブジェクト + オブジェクト </text> <color_swatch label="所有者" name="owner"/> <text name="text_box7"> @@ -37,11 +37,11 @@ <text name="text_box9"> URL </text> - <check_box initial_value="true" label="チャット中はタイピング動作のアニメーションを再生" name="play_typing_animation"/> - <check_box label="オフライン時に受け取った IM をメールで送信" name="send_im_to_email"/> - <check_box label="文字チャットの履歴を有効にする" name="plain_text_chat_history"/> - <radio_group name="chat_window" tool_tip="インスタントメッセージを別ウィンドウ、または1つのウィンドウに複数タブで表示(要再起動)"> - <radio_item label="複数ウィンドウ" name="radio" value="0"/> - <radio_item label="1つのウィンドウ" name="radio2" value="1"/> + <check_box initial_value="true" label="チャット中にタイピング動作のアニメーションを再生" name="play_typing_animation"/> + <check_box label="オフライン時に受け取った IM をメールで受信" name="send_im_to_email"/> + <check_box label="チャット履歴に文字だけで表示する" name="plain_text_chat_history"/> + <radio_group name="chat_window" tool_tip="インスタントメッセージを別フローター、または1つのフローターに複数タブで表示します(要再起動)"> + <radio_item label="別々のウィンドウ" name="radio" value="0"/> + <radio_item label="タブ" name="radio2" value="1"/> </radio_group> </panel> diff --git a/indra/newview/skins/default/xui/ja/panel_preferences_general.xml b/indra/newview/skins/default/xui/ja/panel_preferences_general.xml index 765662b96a..f216c3acbc 100644 --- a/indra/newview/skins/default/xui/ja/panel_preferences_general.xml +++ b/indra/newview/skins/default/xui/ja/panel_preferences_general.xml @@ -33,7 +33,7 @@ </text> <combo_box name="start_location_combo"> <combo_box.item label="最後にログアウトした場所" name="MyLastLocation" tool_tip="常に最後にいた場所にログイン"/> - <combo_box.item label="自宅(ホーム)" name="MyHome" tool_tip="常に自宅(ホーム)にログイン"/> + <combo_box.item label="ホーム" name="MyHome" tool_tip="常にホーム(自宅)にログイン"/> </combo_box> <check_box initial_value="true" label="ログイン画面に表示する" name="show_location_checkbox"/> <text name="name_tags_textbox"> @@ -48,7 +48,7 @@ <check_box initial_value="true" label="小さいアバター名" name="small_avatar_names_checkbox"/> <check_box label="グループタイトルを表示" name="show_all_title_checkbox1"/> <text name="effects_color_textbox"> - 私のビームの色: + ビームの色: </text> <text name="title_afk_text"> 一時退席までの時間: diff --git a/indra/newview/skins/default/xui/ja/panel_preferences_graphics1.xml b/indra/newview/skins/default/xui/ja/panel_preferences_graphics1.xml index 191748fe91..8df829c296 100644 --- a/indra/newview/skins/default/xui/ja/panel_preferences_graphics1.xml +++ b/indra/newview/skins/default/xui/ja/panel_preferences_graphics1.xml @@ -55,7 +55,7 @@ <text name="AvatarRenderingText"> アバター表示: </text> - <check_box initial_value="true" label="アバターの精度を上げる" name="AvatarImpostors"/> + <check_box initial_value="true" label="アバターの描画を簡略化" name="AvatarImpostors"/> <check_box initial_value="true" label="ハードウェアスキニング" name="AvatarVertexProgram"/> <check_box initial_value="true" label="アバターの布" name="AvatarCloth"/> <slider label="描画距離:" name="DrawDistance"/> diff --git a/indra/newview/skins/default/xui/ja/panel_preferences_privacy.xml b/indra/newview/skins/default/xui/ja/panel_preferences_privacy.xml index 7a7cb8b96b..87febfb52d 100644 --- a/indra/newview/skins/default/xui/ja/panel_preferences_privacy.xml +++ b/indra/newview/skins/default/xui/ja/panel_preferences_privacy.xml @@ -11,13 +11,14 @@ <check_box label="フレンドとグループ以外からはコールとIMを受信しない" name="voice_call_friends_only_check"/> <check_box label="コールが終了したらマイクのスイッチを切る" name="auto_disengage_mic_check"/> <check_box label="Cookieを受け入れる" name="cookies_enabled"/> - <check_box label="メディアが有効です" name="media_enabled"/> + <check_box label="メディアを有効にする" name="media_enabled"/> <check_box label="メディアを自動再生する" name="autoplay_enabled"/> + <check_box label="音楽を有効にする" name="music_enabled"/> <text name="Logs:"> ログ: </text> - <check_box label="コンピューターに近くのチャットログを保存する" name="log_nearby_chat"/> - <check_box label="コンピューターに IM ログを保存する" name="log_instant_messages"/> + <check_box label="近くのチャットログをコンピューターに保存する" name="log_nearby_chat"/> + <check_box label="IM ログをコンピューターに保存する" name="log_instant_messages"/> <check_box label="タイムスタンプを追加する" name="show_timestamps_check_im"/> <text name="log_path_desc"> ログの保存場所: diff --git a/indra/newview/skins/default/xui/ja/panel_preferences_setup.xml b/indra/newview/skins/default/xui/ja/panel_preferences_setup.xml index 12e21709ae..1fb824a6d7 100644 --- a/indra/newview/skins/default/xui/ja/panel_preferences_setup.xml +++ b/indra/newview/skins/default/xui/ja/panel_preferences_setup.xml @@ -18,29 +18,29 @@ kbps </text> <check_box label="カスタムポート" name="connection_port_enabled"/> - <spinner label="ポート番号:" name="web_proxy_port"/> + <spinner label="ポート番号:" name="connection_port"/> <text name="cache_size_label_l"> キャッシュサイズ </text> <text name="text_box5"> MB </text> - <button label="参照" label_selected="参照" name="set_cache"/> - <button label="リセット" label_selected="リセット" name="reset_cache"/> <text name="Cache location"> キャッシュの保存場所: </text> + <button label="参照" label_selected="参照" name="set_cache"/> + <button label="リセット" label_selected="リセット" name="reset_cache"/> <text name="Web:"> Web: </text> <radio_group name="use_external_browser"> - <radio_item label="内蔵ブラウザを使用" name="internal" tool_tip="内蔵ブラウザでヘルプやWebリンクなどを見ます。[APP_NAME] 内に新しいウィンドウでこのブラウザが開きます。"/> - <radio_item label="外部ブラウザ(IEやFirefox)を使用" name="external" tool_tip="デフォルトのシステムWebブラウザでヘルプやWebリンク先などを見ます。全画面で起動中にはおすすめしません。"/> + <radio_item label="内蔵ブラウザを使用" name="internal" tool_tip="内蔵ブラウザでヘルプやWebリンクなどを見ます。[APP_NAME] 内に新しいウィンドウでこのブラウザが開きます。" value="0"/> + <radio_item label="外部ブラウザ(IEやFirefox)を使用" name="external" tool_tip="デフォルトのシステムWebブラウザでヘルプやWebリンク先などを見ます。全画面で起動中にはおすすめしません。" value="1"/> </radio_group> - <check_box initial_value="false" label="Webプロキシ" name="web_proxy_enabled"/> - <line_editor name="web_proxy_editor" tool_tip="使用するプロキシ名またはIPアドレス"/> - <button label="参照" label_selected="参照" name="set_proxy"/> + <check_box initial_value="false" label="Web プロキシを有効にする" name="web_proxy_enabled"/> <text name="Proxy location"> プロキシ: </text> + <line_editor name="web_proxy_editor" tool_tip="使用するプロキシ名またはIPアドレス"/> + <spinner label="ポート番号:" name="web_proxy_port"/> </panel> diff --git a/indra/newview/skins/default/xui/ja/panel_profile.xml b/indra/newview/skins/default/xui/ja/panel_profile.xml index 98969f5ab3..e7bc989c52 100644 --- a/indra/newview/skins/default/xui/ja/panel_profile.xml +++ b/indra/newview/skins/default/xui/ja/panel_profile.xml @@ -26,13 +26,16 @@ <panel name="first_life_image_panel"> <text name="title_rw_descr_text" value="現実世界:"/> </panel> - <text name="title_member_text" value="住人となった日:"/> + <text name="title_member_text" value="住人登録:"/> <text name="title_acc_status_text" value="アカウントの状態:"/> - <text name="acc_status_text"> + <text_editor name="acc_status_text"> 住人。 支払情報未登録。 リンデン。 - </text> + </text_editor> <text name="title_partner_text" value="パートナー:"/> + <panel name="partner_data_panel"> + <name_box initial_value="(取得中)" name="partner_text"/> + </panel> <text name="title_groups_text" value="グループ:"/> </panel> </scroll_container> @@ -40,9 +43,10 @@ <layout_panel name="profile_buttons_panel"> <button label="フレンド登録" name="add_friend" tool_tip="フレンド登録を申し出ます"/> <button label="IM" name="im" tool_tip="インスタントメッセージを開きます"/> - <button label="コール" name="call" tool_tip="この住人にコールする"/> - <button label="地図" name="show_on_map_btn" tool_tip="住人を地図上で表示する"/> - <button label="テレポート" name="teleport" tool_tip="テレポートを送る"/> + <button label="コール" name="call" tool_tip="この住人にコールします"/> + <button label="地図" name="show_on_map_btn" tool_tip="住人を地図上で表示します"/> + <button label="テレポート" name="teleport" tool_tip="テレポートを送ります"/> + <button label="▼" name="overflow_btn" tool_tip="住人にお金を渡すか持ち物を共有します"/> </layout_panel> <layout_panel name="profile_me_buttons_panel"> <button label="プロフィールの編集" name="edit_profile_btn" tool_tip="個人的な情報を編集します"/> diff --git a/indra/newview/skins/default/xui/ja/panel_region_covenant.xml b/indra/newview/skins/default/xui/ja/panel_region_covenant.xml index d61fd0fe7f..9a517d79e9 100644 --- a/indra/newview/skins/default/xui/ja/panel_region_covenant.xml +++ b/indra/newview/skins/default/xui/ja/panel_region_covenant.xml @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <panel label="約款" name="Covenant"> <text font="SansSerifLarge" name="estate_section_lbl" width="200"> - エステート(不動産) + 不動産 </text> <text name="estate_name_lbl"> 名前: @@ -33,7 +33,7 @@ この不動産約款の変更をする際は、ノートカードをドラッグ&ドロップしてください。 </text> <text bottom_delta="-34" font="SansSerifLarge" name="region_section_lbl" width="200"> - リージョン(地域) + 地域 </text> <text name="region_name_lbl"> 名前: diff --git a/indra/newview/skins/default/xui/ja/panel_region_debug.xml b/indra/newview/skins/default/xui/ja/panel_region_debug.xml index 4209fb17e5..f6865c12b1 100644 --- a/indra/newview/skins/default/xui/ja/panel_region_debug.xml +++ b/indra/newview/skins/default/xui/ja/panel_region_debug.xml @@ -6,11 +6,11 @@ <text name="region_text"> 未知 </text> - <check_box label="スクリプト無効化" name="disable_scripts_check" tool_tip="この地域のスクリプトをすべて無効化"/> + <check_box label="スクリプト無効化" name="disable_scripts_check" tool_tip="この地域のスクリプトをすべて無効にします"/> <button label="?" name="disable_scripts_help"/> - <check_box label="衝突を無効化" name="disable_collisions_check" tool_tip="この地域の非アバター衝突を無効化"/> + <check_box label="衝突を無効化" name="disable_collisions_check" tool_tip="この地域の非アバター衝突を無効にします"/> <button label="?" name="disable_collisions_help"/> - <check_box label="物理作用を無効化" name="disable_physics_check" tool_tip="この地域の物理作用をすべて無効化"/> + <check_box label="物理作用を無効化" name="disable_physics_check" tool_tip="この地域の物理作用をすべて無効にします"/> <button label="?" name="disable_physics_help"/> <button label="適用" name="apply_btn"/> <text name="objret_text_lbl" width="120"> @@ -27,14 +27,14 @@ オプション: </text> <check_box label="スクリプト付きのもの" name="return_scripts" tool_tip="スクリプトのオブジェクトだけ返却します"/> - <check_box label="他人の土地にあるもの" name="return_other_land" tool_tip="他人に属する土地にあるオブジェクトのみを返却"/> - <check_box label="この不動産に属するすべてのリージョンのもの" name="return_estate_wide" tool_tip="この不動産に含まれているすべての地域のオブジェクトを返却"/> + <check_box label="他人の土地にあるもの" name="return_other_land" tool_tip="他人に属する土地にあるオブジェクトのみを返却します"/> + <check_box label="この不動産に属するすべてのリージョンのもの" name="return_estate_wide" tool_tip="この不動産に含まれているすべての地域のオブジェクトを返却します"/> <button label="返却" name="return_btn"/> <button label="上部コライダー取得" name="top_colliders_btn" tool_tip="衝突する可能性が最も高いオブジェクトのリスト"/> <button label="?" name="top_colliders_help"/> <button label="上部スクリプト取得" name="top_scripts_btn" tool_tip="スクリプトの実行に最も時間を費やしているオブジェクトのリスト"/> <button label="?" name="top_scripts_help"/> - <button label="地域再起動" name="restart_btn" tool_tip="2分間のカウントダウン後、地域を再起動"/> + <button label="地域再起動" name="restart_btn" tool_tip="2分間のカウントダウン後、地域を再起動します"/> <button label="?" name="restart_help"/> - <button label="再起動を遅延" name="cancel_restart_btn" tool_tip="地域の再起動を1時間遅延する"/> + <button label="再起動を遅延" name="cancel_restart_btn" tool_tip="地域の再起動を1時間遅延します"/> </panel> diff --git a/indra/newview/skins/default/xui/ja/panel_region_estate.xml b/indra/newview/skins/default/xui/ja/panel_region_estate.xml index de93e47342..fcc225c333 100644 --- a/indra/newview/skins/default/xui/ja/panel_region_estate.xml +++ b/indra/newview/skins/default/xui/ja/panel_region_estate.xml @@ -40,7 +40,7 @@ <check_box label="太陽固定" name="fixed_sun_check"/> <button label="?" name="fixed_sun_help"/> <slider label="段階" name="sun_hour_slider"/> - <check_box label="パブリック・アクセスを許可" name="externally_visible_check"/> + <check_box label="パブリックアクセスを許可" name="externally_visible_check"/> <button label="?" name="externally_visible_help"/> <check_box label="直接テレポートを許可" name="allow_direct_teleport"/> <button label="?" name="allow_direct_teleport_help"/> diff --git a/indra/newview/skins/default/xui/ja/panel_region_general.xml b/indra/newview/skins/default/xui/ja/panel_region_general.xml index e3d2d2163c..168141ee77 100644 --- a/indra/newview/skins/default/xui/ja/panel_region_general.xml +++ b/indra/newview/skins/default/xui/ja/panel_region_general.xml @@ -28,9 +28,9 @@ <button label="?" name="restrict_pushobject_help"/> <check_box label="土地の再販を許可" name="allow_land_resell_check"/> <button label="?" name="land_resell_help"/> - <check_box label="土地の統合/分割を許可" name="allow_parcel_changes_check"/> + <check_box label="土地の統合・分割を許可" name="allow_parcel_changes_check"/> <button label="?" name="parcel_changes_help"/> - <check_box label="土地の検索表示をブロック" name="block_parcel_search_check" tool_tip="検索結果で、この地域と区画を人に見せる"/> + <check_box label="土地の検索表示をブロック" name="block_parcel_search_check" tool_tip="検索結果で、この地域と区画を表示するかどうかの設定です"/> <button label="?" name="parcel_search_help"/> <spinner label="アバター数上限" name="agent_limit_spin"/> <button label="?" name="agent_limit_help"/> @@ -40,14 +40,14 @@ 区分: </text> <combo_box label="控えめ" name="access_combo"> - <combo_box.item label="Adult" name="Adult"/> + <combo_box.item label="アダルト" name="Adult"/> <combo_box.item label="控えめ" name="Mature"/> <combo_box.item label="一般" name="PG"/> </combo_box> <button label="?" name="access_help"/> <button label="適用" name="apply_btn"/> - <button label="ユーザー1人ホームテレポート" name="kick_btn"/> - <button label="ユーザー全員ホームテレポート" name="kick_all_btn"/> - <button label="メッセージを地域へ送信..." name="im_btn"/> + <button label="ユーザー1名をホームにテレポート" name="kick_btn"/> + <button label="ユーザー全員をホームにテレポート" name="kick_all_btn"/> + <button label="メッセージを地域に送信..." name="im_btn"/> <button label="テレハブの管理..." name="manage_telehub_btn"/> </panel> diff --git a/indra/newview/skins/default/xui/ja/panel_region_general_layout.xml b/indra/newview/skins/default/xui/ja/panel_region_general_layout.xml index f58a26a7d0..df7e5d9129 100644 --- a/indra/newview/skins/default/xui/ja/panel_region_general_layout.xml +++ b/indra/newview/skins/default/xui/ja/panel_region_general_layout.xml @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <panel label="リージョン(地域)" name="General"> <text name="region_text_lbl"> - リージョン: + 地域: </text> <text name="region_text" left_delta="70"> 不明 @@ -24,9 +24,9 @@ <check_box label="プッシュを制限" name="restrict_pushobject"/> <check_box label="土地の再販を許可" name="allow_land_resell_check"/> <check_box label="土地の統合・分割を許可" name="allow_parcel_changes_check"/> - <check_box label="土地の検索教示をブロック" name="block_parcel_search_check" tool_tip="このリージョンとリージョン内の区画を検索結果に表示する"/> + <check_box label="土地の検索表示をブロック" name="block_parcel_search_check" tool_tip="検索結果で、この地域と区画を表示するかどうかの設定です"/> <spinner label="アバター数上限" name="agent_limit_spin" label_width="110" width="190"/> - <spinner label="オブジェクトボーナス" name="object_bonus_spin" label_width="110" width="190"/> + <spinner label="物体ボーナス" name="object_bonus_spin" label_width="110" width="190"/> <text label="レーティング区分" name="access_text"> レーティング区分: </text> @@ -38,6 +38,6 @@ <button label="適用" name="apply_btn"/> <button label="ユーザー1名をホームにテレポート..." name="kick_btn"/> <button label="ユーザー全員をホームにテレポート..." name="kick_all_btn"/> - <button label="リージョンにメッセージを送信..." name="im_btn"/> + <button label="メッセージを地域に送信..." name="im_btn"/> <button label="テレハブの管理..." name="manage_telehub_btn"/> </panel> diff --git a/indra/newview/skins/default/xui/ja/panel_script_limits_my_avatar.xml b/indra/newview/skins/default/xui/ja/panel_script_limits_my_avatar.xml index 1d81304860..494884c187 100644 --- a/indra/newview/skins/default/xui/ja/panel_script_limits_my_avatar.xml +++ b/indra/newview/skins/default/xui/ja/panel_script_limits_my_avatar.xml @@ -1,5 +1,8 @@ <?xml version="1.0" encoding="utf-8" standalone="yes"?> <panel label="マイ アバター" name="script_limits_my_avatar_panel"> + <text name="script_memory"> + アバターのスクリプト使用 + </text> <text name="loading_text"> ローディング... </text> diff --git a/indra/newview/skins/default/xui/ja/panel_script_limits_region_memory.xml b/indra/newview/skins/default/xui/ja/panel_script_limits_region_memory.xml index 6a62af4ec6..d91eba9699 100644 --- a/indra/newview/skins/default/xui/ja/panel_script_limits_region_memory.xml +++ b/indra/newview/skins/default/xui/ja/panel_script_limits_region_memory.xml @@ -3,20 +3,18 @@ <text name="script_memory"> 区画スクリプトメモリ </text> - <text name="parcels_listed"> - 区画所有者: - </text> - <text name="memory_used"> - 使用されたメモリ: - </text> + <text name="parcels_listed"/> + <text name="memory_used"/> <text name="loading_text"> ローディング... </text> <scroll_list name="scripts_list"> <scroll_list.columns label="サイズ (kb)" name="size" width="90"/> + <scroll_list.columns label="URL" name="urls"/> <scroll_list.columns label="オブジェクト名" name="name"/> <scroll_list.columns label="オブジェクトの所有者" name="owner" width="120"/> - <scroll_list.columns label="区画・位置" name="location"/> + <scroll_list.columns label="区画" name="parcel"/> + <scroll_list.columns label="場所" name="location"/> </scroll_list> <button label="リスト更新" name="refresh_list_btn"/> <button label="ハイライト" name="highlight_btn"/> diff --git a/indra/newview/skins/default/xui/ja/panel_status_bar.xml b/indra/newview/skins/default/xui/ja/panel_status_bar.xml index 063e584762..67b6e699f8 100644 --- a/indra/newview/skins/default/xui/ja/panel_status_bar.xml +++ b/indra/newview/skins/default/xui/ja/panel_status_bar.xml @@ -21,10 +21,10 @@ <panel.string name="buycurrencylabel"> L$ [AMT] </panel.string> - <button label="" label_selected="" name="buycurrency" tool_tip="私の残高"/> + <button label="" label_selected="" name="buycurrency" tool_tip="所持金"/> <button label="L$ の購入" name="buyL" tool_tip="クリックして L$ を購入します"/> <text name="TimeText" tool_tip="現在時刻(太平洋)"> - 12:00 AM + 24:00 AM PST </text> <button name="volume_btn" tool_tip="グローバル音量設定"/> </panel> diff --git a/indra/newview/skins/default/xui/ja/sidepanel_task_info.xml b/indra/newview/skins/default/xui/ja/sidepanel_task_info.xml index c2d2af5346..ab00953f1a 100644 --- a/indra/newview/skins/default/xui/ja/sidepanel_task_info.xml +++ b/indra/newview/skins/default/xui/ja/sidepanel_task_info.xml @@ -37,7 +37,7 @@ Mixed Sale </panel.string> <text name="title" value="オブジェクトのプロフィール"/> - <text name="where" value="(ワールド内)"/> + <text name="where" value="(インワールド)"/> <panel label=""> <text name="Name:"> 名前: diff --git a/indra/newview/skins/default/xui/ja/strings.xml b/indra/newview/skins/default/xui/ja/strings.xml index 288ad4bc1d..28f4e88cd5 100644 --- a/indra/newview/skins/default/xui/ja/strings.xml +++ b/indra/newview/skins/default/xui/ja/strings.xml @@ -227,9 +227,6 @@ <string name="AvatarNameMultiple"> (複数) </string> - <string name="AvatarNameHippos"> - (hippos) - </string> <string name="GroupNameNone"> (なし) </string> @@ -339,7 +336,7 @@ リンク </string> <string name="AvatarEditingAppearance"> - (容姿の編集) + (容姿の編集中) </string> <string name="AvatarAway"> 一時退席中 @@ -588,11 +585,14 @@ 接続しました </string> <string name="unavailable"> - あなたの現在のロケーションでは、ボイスを利用できません。 + 現在地では、ボイスを利用できません。 </string> <string name="hang_up"> インワールドボイスチャットの通話が切断されました </string> + <string name="reconnect_nearby"> + 「近くのボイスチャット」に再接続されます + </string> <string name="ScriptQuestionCautionChatGranted"> [REGIONNAME]の[REGIONPOS]という場所にある「[OWNERNAME]」所有の「[OBJECTNAME]」というオブジェクトは、次の権限を許可しました: [PERMISSIONS] </string> @@ -642,7 +642,7 @@ 控えめ </string> <string name="SIM_ACCESS_ADULT"> - Adult + アダルト </string> <string name="SIM_ACCESS_DOWN"> オフライン @@ -786,7 +786,7 @@ 添付アイテムを保存 </string> <string name="TeleportOffer"> - テレポートを渡す + テレポートを送る </string> <string name="StartUpNotifications"> 不在中に新しい通知が届きました。 @@ -833,7 +833,7 @@ <string name="InventoryNoTexture"> 持ち物内にこのテクスチャのコピーがありません </string> - <string name="no_transfer" value=" (再販/プレゼント不可)"/> + <string name="no_transfer" value=" (再販・プレゼント不可)"/> <string name="no_modify" value=" (編集不可)"/> <string name="no_copy" value=" (コピー不可)"/> <string name="worn" value=" (着用中)"/> @@ -874,7 +874,7 @@ <string name="No Filters" value="いいえ "/> <string name="Since Logoff" value=" - ログオフ以来"/> <string name="InvFolder My Inventory"> - マイ 持ち物 + 持ち物 </string> <string name="InvFolder My Favorites"> お気に入り @@ -1324,6 +1324,9 @@ <string name="ScriptLimitsRequestError"> 情報のリクエスト中にエラーが発生しました </string> + <string name="ScriptLimitsRequestNoParcelSelected"> + 区画が選択されていません。 + </string> <string name="ScriptLimitsRequestWrongRegion"> エラー: スクリプト情報は現在地のみ取得できます </string> @@ -1706,7 +1709,7 @@ Linden 所在地 </string> <string name="Adult"> - Adult + アダルト </string> <string name="Arts&Culture"> アートとカルチャー @@ -3190,7 +3193,7 @@ www.secondlife.com から最新バージョンをダウンロードしてくだ 現在地の詳細を見る </string> <string name="LocationCtrlComboBtnTooltip"> - マイロケーション履歴 + マイ ロケーション履歴 </string> <string name="LocationCtrlForSaleTooltip"> この土地を購入 @@ -3247,7 +3250,7 @@ www.secondlife.com から最新バージョンをダウンロードしてくだ -- インスタントメッセージの保存開始 -- </string> <string name="IM_typing_start_string"> - [NAME] は入力中... + [NAME] は入力中です... </string> <string name="Unnamed"> (名前なし) diff --git a/indra/newview/tests/lllogininstance_test.cpp b/indra/newview/tests/lllogininstance_test.cpp index f7ac5361c5..ef93586c6e 100644 --- a/indra/newview/tests/lllogininstance_test.cpp +++ b/indra/newview/tests/lllogininstance_test.cpp @@ -2,7 +2,7 @@ * @file lllogininstance_test.cpp * @brief Test for lllogininstance.cpp. * - * $LicenseInfo:firstyear=2008&license=internal$ + * $LicenseInfo:firstyear=2008&license=viewergpl$ * Copyright (c) 2008, Linden Research, Inc. * $/LicenseInfo$ */ diff --git a/indra/newview/tests/llxmlrpclistener_test.cpp b/indra/newview/tests/llxmlrpclistener_test.cpp index c94ba0a3e8..c2c7e963b9 100644 --- a/indra/newview/tests/llxmlrpclistener_test.cpp +++ b/indra/newview/tests/llxmlrpclistener_test.cpp @@ -4,7 +4,7 @@ * @date 2009-03-20 * @brief Test for llxmlrpclistener. * - * $LicenseInfo:firstyear=2009&license=internal$ + * $LicenseInfo:firstyear=2009&license=viewergpl$ * Copyright (c) 2009, Linden Research, Inc. * $/LicenseInfo$ */ diff --git a/install.xml b/install.xml index 209c22788a..eb5bb0f964 100644 --- a/install.xml +++ b/install.xml @@ -1021,16 +1021,16 @@ anguage Infrstructure (CLI) international standard</string> <key>linux</key> <map> <key>md5sum</key> - <string>7e4c3c819f27f0f0c19d6f7cd6daf161</string> + <string>4c75b2f1e8524c7844ee3ea1cd59a3db</string> <key>url</key> - <uri>http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/llqtwebkit-linux-20100209.tar.bz2</uri> + <uri>http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/llqtwebkit-linux-20100209b.tar.bz2</uri> </map> <key>windows</key> <map> <key>md5sum</key> - <string>df0f751818dddb566d55499286c727a8</string> + <string>1e9798dc424a6f6c2bea50649bbcc7ae</string> <key>url</key> - <uri>http://viewer-source-downloads.s3.amazonaws.com/install_pkgs/llqtwebkit-windows-qt4.6-20100208.tar.bz2</uri> + <uri>http://viewer-source-downloads.s3.amazonaws.com/install_pkgs/llqtwebkit-windows-qt4.6-20100210.tar.bz2</uri> </map> </map> </map> diff --git a/scripts/messages/message_template.msg b/scripts/messages/message_template.msg index c50ae4ad80..d4f791c202 100644 --- a/scripts/messages/message_template.msg +++ b/scripts/messages/message_template.msg @@ -1383,6 +1383,10 @@ version 2.0 { AgentID LLUUID } { KickedFromEstateID U32 } } + { + AgentInfo Single + { AgentEffectiveMaturity U32 } + } } // DataHomeLocationReply data->sim |