diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 000000000..176a458f9 --- /dev/null +++ b/.gitattributes @@ -0,0 +1 @@ +* text=auto diff --git a/indra/cmake/00-Common.cmake b/indra/cmake/00-Common.cmake index 5c0d433be..5eaca5c32 100644 --- a/indra/cmake/00-Common.cmake +++ b/indra/cmake/00-Common.cmake @@ -41,7 +41,9 @@ if (WINDOWS) "${CMAKE_C_FLAGS_RELEASE} ${LL_C_FLAGS} /O2 /Zi /MD /MP /arch:SSE2 /fp:fast" CACHE STRING "C compiler release options" FORCE) - set(CMAKE_EXE_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS_RELEASE} /LARGEADDRESSAWARE") + if(NOT CMAKE_EXE_LINKER_FLAGS_RELEASE MATCHES LARGEADDRESSAWARE) + set(CMAKE_EXE_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS_RELEASE} /LARGEADDRESSAWARE") + endif() set(CMAKE_CXX_STANDARD_LIBRARIES "") set(CMAKE_C_STANDARD_LIBRARIES "") @@ -68,8 +70,7 @@ if (WINDOWS) "${CMAKE_CXX_FLAGS_RELEASE} -D_SECURE_STL=0 -D_HAS_ITERATOR_DEBUGGING=0" CACHE STRING "C++ compiler release options" FORCE) set(CMAKE_C_FLAGS_RELEASE - "${CMAKE_CXX_FLAGS_RELEASE} -D_SECURE_STL=0 -D_HAS_ITERATOR_DEBUGGING=0" - CACHE STRING "C compiler release options" FORCE) + "${CMAKE_C_FLAGS_RELEASE}" CACHE STRING "C compiler release options" FORCE) add_definitions( /Zc:wchar_t- ) diff --git a/indra/cmake/Audio.cmake b/indra/cmake/Audio.cmake index 6bad4a726..3d78e6751 100644 --- a/indra/cmake/Audio.cmake +++ b/indra/cmake/Audio.cmake @@ -40,3 +40,11 @@ link_directories( ${VORBISFILE_LIBRARY_DIRS} ${OGG_LIBRARY_DIRS} ) + +set(LLAUDIO_VORBIS_LIBRARIES + ${VORBISENC_LIBRARIES} + ${VORBISFILE_LIBRARIES} + ${VORBIS_LIBRARIES} + ${OGG_LIBRARIES} + ) + diff --git a/indra/cmake/FMODEX.cmake b/indra/cmake/FMODEX.cmake index 283260d80..9a39b1264 100644 --- a/indra/cmake/FMODEX.cmake +++ b/indra/cmake/FMODEX.cmake @@ -53,6 +53,11 @@ find_path(FMODEX_INCLUDE_DIR fmod.h ${FMODEX_SDK_DIR} ) +if(DARWIN) + set(FMODEX_ORIG_LIBRARY "${FMODEX_LIBRARY}") + set(FMODEX_LIBRARY "${CMAKE_CURRENT_BINARY_DIR}/libfmodex.dylib") +endif(DARWIN) + if (FMODEX_LIBRARY AND FMODEX_INCLUDE_DIR) set(FMODEX ON CACHE BOOL "Use closed source FMOD Ex sound library.") else (FMODEX_LIBRARY AND FMODEX_INCLUDE_DIR) diff --git a/indra/llaudio/CMakeLists.txt b/indra/llaudio/CMakeLists.txt index 61c383c0d..bd14fa548 100644 --- a/indra/llaudio/CMakeLists.txt +++ b/indra/llaudio/CMakeLists.txt @@ -111,10 +111,4 @@ list(APPEND llaudio_SOURCE_FILES ${llaudio_HEADER_FILES}) add_library (llaudio ${llaudio_SOURCE_FILES}) add_dependencies(llaudio prepare) -target_link_libraries( - llaudio - ${VORBISENC_LIBRARIES} - ${VORBISFILE_LIBRARIES} - ${VORBIS_LIBRARIES} - ${OGG_LIBRARIES} - ) + diff --git a/indra/llaudio/llstreamingaudio_fmodex.cpp b/indra/llaudio/llstreamingaudio_fmodex.cpp index d4e52d340..535c77a7b 100644 --- a/indra/llaudio/llstreamingaudio_fmodex.cpp +++ b/indra/llaudio/llstreamingaudio_fmodex.cpp @@ -400,7 +400,7 @@ LLAudioStreamManagerFMODEX::LLAudioStreamManagerFMODEX(FMOD::System *system, con exinfo.cbsize = sizeof(exinfo); exinfo.suggestedsoundtype = FMOD_SOUND_TYPE_OGGVORBIS; //Hint to speed up loading.*/ - FMOD_RESULT result = mSystem->createStream(url.c_str(), FMOD_2D | FMOD_NONBLOCKING | FMOD_IGNORETAGS, 0, &mInternetStream); + FMOD_RESULT result = mSystem->createStream(url.c_str(), FMOD_2D | FMOD_NONBLOCKING | FMOD_MPEGSEARCH | FMOD_IGNORETAGS, 0, &mInternetStream); if (result!= FMOD_OK) { diff --git a/indra/llcommon/llfasttimer_class.cpp b/indra/llcommon/llfasttimer_class.cpp index 15075aa87..5fb9fd580 100644 --- a/indra/llcommon/llfasttimer_class.cpp +++ b/indra/llcommon/llfasttimer_class.cpp @@ -183,6 +183,10 @@ BOOL LLFastTimer::sMetricLog = FALSE; LLMutex* LLFastTimer::sLogLock = NULL; std::queue LLFastTimer::sLogQueue; +#if LL_WINDOWS +#define USE_RDTSC 1 +#endif + std::vector* LLFastTimer::sTimerInfos = NULL; U64 LLFastTimer::sTimerCycles = 0; U32 LLFastTimer::sTimerCalls = 0; @@ -380,7 +384,9 @@ void LLFastTimer::updateCachedPointers() } // See lltimer.cpp. -#if LL_LINUX || LL_DARWIN || LL_SOLARIS +#if USE_RDTSC +std::string LLFastTimer::sClockType = "rdtsc"; +#elif LL_LINUX || LL_DARWIN || LL_SOLARIS std::string LLFastTimer::sClockType = "gettimeofday"; #elif LL_WINDOWS std::string LLFastTimer::sClockType = "QueryPerformanceCounter"; @@ -391,6 +397,9 @@ std::string LLFastTimer::sClockType = "QueryPerformanceCounter"; //static U64 LLFastTimer::countsPerSecond() // counts per second for the *32-bit* timer { +#if USE_RDTSC + static U64 sCPUClockFrequency = U64(LLProcessorInfo().getCPUFrequency()*1000000.0); +#else static bool firstcall = true; static U64 sCPUClockFrequency; if (firstcall) @@ -398,6 +407,7 @@ U64 LLFastTimer::countsPerSecond() // counts per second for the *32-bit* timer sCPUClockFrequency = calc_clock_frequency(); firstcall = false; } +#endif return sCPUClockFrequency >> 8; } @@ -937,6 +947,38 @@ LLFastTimer::LLFastTimer(LLFastTimer::FrameState* state) // Important note: These implementations must be FAST! // +#if USE_RDTSC +U32 LLFastTimer::getCPUClockCount32() +{ + U32 ret_val; + __asm + { + _emit 0x0f + _emit 0x31 + shr eax,8 + shl edx,24 + or eax, edx + mov dword ptr [ret_val], eax + } + return ret_val; +} + +// return full timer value, *not* shifted by 8 bits +U64 LLFastTimer::getCPUClockCount64() +{ + U64 ret_val; + __asm + { + _emit 0x0f + _emit 0x31 + mov eax,eax + mov edx,edx + mov dword ptr [ret_val+4], edx + mov dword ptr [ret_val], eax + } + return ret_val; +} +#else //LL_COMMON_API U64 get_clock_count(); // in lltimer.cpp // These use QueryPerformanceCounter, which is arguably fine and also works on AMD architectures. U32 LLFastTimer::getCPUClockCount32() @@ -948,4 +990,4 @@ U64 LLFastTimer::getCPUClockCount64() { return get_clock_count(); } - +#endif diff --git a/indra/llcommon/llstring.cpp b/indra/llcommon/llstring.cpp index f00eefe90..15a4b3d77 100644 --- a/indra/llcommon/llstring.cpp +++ b/indra/llcommon/llstring.cpp @@ -53,7 +53,7 @@ std::string ll_safe_string(const char* in) std::string ll_safe_string(const char* in, S32 maxlen) { - if(in) return std::string(in, maxlen); + if(in && maxlen > 0) return std::string(in, maxlen); return std::string(); } diff --git a/indra/llcommon/llversionviewer.h.in b/indra/llcommon/llversionviewer.h.in index 81b44887b..82285523d 100644 --- a/indra/llcommon/llversionviewer.h.in +++ b/indra/llcommon/llversionviewer.h.in @@ -35,7 +35,7 @@ const S32 LL_VERSION_MAJOR = 1; const S32 LL_VERSION_MINOR = 7; -const S32 LL_VERSION_PATCH = 0; +const S32 LL_VERSION_PATCH = 1; const S32 LL_VERSION_BUILD = ${vBUILD}; const char * const LL_CHANNEL = "${VIEWER_CHANNEL}"; diff --git a/indra/llmessage/message_prehash.cpp b/indra/llmessage/message_prehash.cpp index fbc663347..6d1d3498c 100644 --- a/indra/llmessage/message_prehash.cpp +++ b/indra/llmessage/message_prehash.cpp @@ -1048,6 +1048,7 @@ char const* const _PREHASH_SimIP = LLMessageStringTable::getInstance()->getStrin char const* const _PREHASH_GodID = LLMessageStringTable::getInstance()->getString("GodID"); char const* const _PREHASH_TeleportMinPrice = LLMessageStringTable::getInstance()->getString("TeleportMinPrice"); char const* const _PREHASH_VoteItem = LLMessageStringTable::getInstance()->getString("VoteItem"); +char const* const _PREHASH_ObjectRotation = LLMessageStringTable::getInstance()->getString("ObjectRotation"); char const* const _PREHASH_SitRotation = LLMessageStringTable::getInstance()->getString("SitRotation"); char const* const _PREHASH_SnapSelection = LLMessageStringTable::getInstance()->getString("SnapSelection"); char const* const _PREHASH_SoundTrigger = LLMessageStringTable::getInstance()->getString("SoundTrigger"); diff --git a/indra/llmessage/message_prehash.h b/indra/llmessage/message_prehash.h index b4523ea8e..d388d8629 100644 --- a/indra/llmessage/message_prehash.h +++ b/indra/llmessage/message_prehash.h @@ -1048,6 +1048,7 @@ extern char const* const _PREHASH_SimIP; extern char const* const _PREHASH_GodID; extern char const* const _PREHASH_TeleportMinPrice; extern char const* const _PREHASH_VoteItem; +extern char const* const _PREHASH_ObjectRotation; extern char const* const _PREHASH_SitRotation; extern char const* const _PREHASH_SnapSelection; extern char const* const _PREHASH_SoundTrigger; diff --git a/indra/llrender/llglstates.h b/indra/llrender/llglstates.h index e26aead67..0e2c3bcb4 100644 --- a/indra/llrender/llglstates.h +++ b/indra/llrender/llglstates.h @@ -59,7 +59,6 @@ protected: LLGLEnable mColorMaterial; LLGLDisable mAlphaTest, mBlend, mCullFace, mDither, mFog, mLineSmooth, mLineStipple, mNormalize, mPolygonSmooth, - mTextureGenQ, mTextureGenR, mTextureGenS, mTextureGenT, mGLMultisample; public: LLGLSDefault() @@ -76,10 +75,6 @@ public: mLineStipple(GL_LINE_STIPPLE), mNormalize(GL_NORMALIZE), mPolygonSmooth(GL_POLYGON_SMOOTH), - mTextureGenQ(GL_TEXTURE_GEN_Q), - mTextureGenR(GL_TEXTURE_GEN_R), - mTextureGenS(GL_TEXTURE_GEN_S), - mTextureGenT(GL_TEXTURE_GEN_T), mGLMultisample(GL_MULTISAMPLE_ARB) { } }; diff --git a/indra/llrender/llrender.cpp b/indra/llrender/llrender.cpp index 31cc03994..feedabad5 100644 --- a/indra/llrender/llrender.cpp +++ b/indra/llrender/llrender.cpp @@ -1451,6 +1451,16 @@ void LLRender::matrixMode(U32 mode) mMatrixMode = mode; } +U32 LLRender::getMatrixMode() +{ + if (mMatrixMode >= MM_TEXTURE0 && mMatrixMode <= MM_TEXTURE3) + { //always return MM_TEXTURE if current matrix mode points at any texture matrix + return MM_TEXTURE; + } + return mMatrixMode; +} + + void LLRender::loadIdentity() { flush(); diff --git a/indra/llrender/llrender.h b/indra/llrender/llrender.h index 6e412926d..0d9c5326f 100644 --- a/indra/llrender/llrender.h +++ b/indra/llrender/llrender.h @@ -345,6 +345,7 @@ public: void loadIdentity(); void multMatrix(const GLfloat* m); void matrixMode(U32 mode); + U32 getMatrixMode(); const glh::matrix4f& getModelviewMatrix(); const glh::matrix4f& getProjectionMatrix(); diff --git a/indra/llrender/llrendertarget.cpp b/indra/llrender/llrendertarget.cpp index f58445414..c75304957 100644 --- a/indra/llrender/llrendertarget.cpp +++ b/indra/llrender/llrendertarget.cpp @@ -389,9 +389,6 @@ void LLRenderTarget::release() if (mTex.size() > 0) { - //Release before delete. - for (U32 i = 0; i < mTex.size(); ++i) - glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0+i, LLTexUnit::getInternalType(mUsage), 0, 0); sBytesAllocated -= mResX*mResY*4*mTex.size(); LLImageGL::deleteTextures(mUsage, mInternalFormat[0], 0, mTex.size(), &mTex[0], true); mTex.clear(); diff --git a/indra/llrender/llshadermgr.cpp b/indra/llrender/llshadermgr.cpp index fcede5363..a120b5d32 100644 --- a/indra/llrender/llshadermgr.cpp +++ b/indra/llrender/llshadermgr.cpp @@ -717,8 +717,8 @@ GLhandleARB LLShaderMgr::loadShaderFile(const std::string& filename, S32 & shade } else if (major_version > 1 || minor_version >= 30) { //switches are supported in GLSL 1.30 and later - if (gGLManager.mIsNVIDIA) - { //switches are unreliable on some NVIDIA drivers + if (gGLManager.mIsNVIDIA || (gGLManager.mIsATI && gGLManager.mGLVersion < 3.3f)) + { //switches are unreliable on old drivers for (S32 i = 0; i < texture_index_channels; ++i) { std::string if_string = llformat("\t%sif (vary_texture_index == %d) { return texture2D(tex%d, texcoord); }\n", i > 0 ? "else " : "", i, i); diff --git a/indra/llui/llbutton.cpp b/indra/llui/llbutton.cpp index f10e211f1..12906fd92 100644 --- a/indra/llui/llbutton.cpp +++ b/indra/llui/llbutton.cpp @@ -1063,11 +1063,13 @@ void LLButton::setImageOverlay(const std::string& image_name, LLFontGL::HAlign a if (image_name.empty()) { mImageOverlay = NULL; + mImageOverlaySelectedColor = LLColor4::white; } else { mImageOverlay = LLUI::getUIImage(image_name); mImageOverlayAlignment = alignment; + mImageOverlaySelectedColor = color; mImageOverlayColor = color; } } @@ -1077,11 +1079,13 @@ void LLButton::setImageOverlay(const LLUUID& image_id, LLFontGL::HAlign alignmen if (image_id.isNull()) { mImageOverlay = NULL; + mImageOverlaySelectedColor = LLColor4::white; } else { mImageOverlay = LLUI::getUIImageByID(image_id); mImageOverlayAlignment = alignment; + mImageOverlaySelectedColor = color; mImageOverlayColor = color; } } diff --git a/indra/llui/llmodaldialog.cpp b/indra/llui/llmodaldialog.cpp index 9996ca460..8c8f94113 100644 --- a/indra/llui/llmodaldialog.cpp +++ b/indra/llui/llmodaldialog.cpp @@ -69,6 +69,12 @@ LLModalDialog::~LLModalDialog() { gFocusMgr.unlockFocus(); } + + std::list::iterator iter = std::find(sModalStack.begin(), sModalStack.end(), this); + if (iter != sModalStack.end()) + { + llerrs << "Attempt to delete dialog while still in sModalStack!" << llendl; + } } // virtual @@ -91,6 +97,8 @@ void LLModalDialog::startModal() { if (mModal) { + + // If Modal, Hide the active modal dialog if (!sModalStack.empty()) { @@ -103,6 +111,14 @@ void LLModalDialog::startModal() gFocusMgr.setTopCtrl( this ); setFocus(TRUE); + std::list::iterator iter = std::find(sModalStack.begin(), sModalStack.end(), this); + if (iter != sModalStack.end()) + { + sModalStack.erase(iter); + llwarns << "Dialog already on modal stack" << llendl; + //TODO: incvestigate in which specific cases it happens, cause that's not good! -SG + } + sModalStack.push_front( this ); } @@ -314,5 +330,16 @@ void LLModalDialog::onAppFocusGained() } } - - +void LLModalDialog::shutdownModals() +{ + // This method is only for use during app shutdown. ~LLModalDialog() + // checks sModalStack, and if the dialog instance is still there, it + // crumps with "Attempt to delete dialog while still in sModalStack!" But + // at app shutdown, all bets are off. If the user asks to shut down the + // app, we shouldn't have to care WHAT's open. Put differently, if a modal + // dialog is so crucial that we can't let the user terminate until s/he + // addresses it, we should reject a termination request. The current state + // of affairs is that we accept it, but then produce an llerrs popup that + // simply makes our software look unreliable. + sModalStack.clear(); +} diff --git a/indra/llui/llmodaldialog.h b/indra/llui/llmodaldialog.h index f6abd0a7a..09f9f197e 100644 --- a/indra/llui/llmodaldialog.h +++ b/indra/llui/llmodaldialog.h @@ -74,7 +74,8 @@ public: static void onAppFocusGained(); static S32 activeCount() { return sModalStack.size(); } - + static void shutdownModals(); + protected: void centerOnScreen(); diff --git a/indra/llui/llmultifloater.cpp b/indra/llui/llmultifloater.cpp index 377c9a12b..07b811f71 100644 --- a/indra/llui/llmultifloater.cpp +++ b/indra/llui/llmultifloater.cpp @@ -88,6 +88,7 @@ LLMultiFloater::LLMultiFloater( { mTabContainer->setRightTabBtnOffset(RESIZE_HANDLE_WIDTH); } + mTabContainer->setCommitCallback(boost::bind(&LLMultiFloater::onTabSelected, this)); addChild(mTabContainer); } @@ -114,6 +115,7 @@ LLMultiFloater::LLMultiFloater( { mTabContainer->setRightTabBtnOffset(RESIZE_HANDLE_WIDTH); } + mTabContainer->setCommitCallback(boost::bind(&LLMultiFloater::onTabSelected, this)); addChild(mTabContainer); @@ -482,7 +484,7 @@ void LLMultiFloater::setCanResize(BOOL can_resize) } } -BOOL LLMultiFloater::postBuild() +/*BOOL LLMultiFloater::postBuild() { // remember any original xml minimum size getResizeLimits(&mOrigMinWidth, &mOrigMinHeight); @@ -501,7 +503,7 @@ BOOL LLMultiFloater::postBuild() } return FALSE; -} +}*/ void LLMultiFloater::updateResizeLimits() { diff --git a/indra/llui/llmultifloater.h b/indra/llui/llmultifloater.h index 0ac9ee856..e56b387bc 100644 --- a/indra/llui/llmultifloater.h +++ b/indra/llui/llmultifloater.h @@ -45,7 +45,6 @@ public: LLMultiFloater(const std::string& name, const std::string& rect_control, LLTabContainer::TabPosition tab_pos = LLTabContainer::TOP, BOOL auto_resize = TRUE); virtual ~LLMultiFloater() {}; - virtual BOOL postBuild(); virtual LLXMLNodePtr getXML(bool save_children = true) const; /*virtual*/ void open(); /* Flawfinder: ignore */ /*virtual*/ void onClose(bool app_quitting); diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt index abda254cf..c70f5fabd 100644 --- a/indra/newview/CMakeLists.txt +++ b/indra/newview/CMakeLists.txt @@ -8,17 +8,14 @@ include(DBusGlib) include(DirectX) include(ELFIO) if(FMODEX) - include(FMODEX) - if(FMODEX) - set(FMOD OFF) - endif(FMODEX) + include(FMODEX) + set(FMOD OFF) +else(FMODEX) + include(FMOD) endif(FMODEX) -if(NOT FMODEX) - include(FMOD) -endif(NOT FMODEX) include(OPENAL) -include(Hunspell) include(FindOpenGL) +include(Hunspell) #include(JsonCpp) include(LLAddBuildTest) include(LLAudio) @@ -76,40 +73,28 @@ include_directories( ) set(viewer_SOURCE_FILES - sgmemstat.cpp - sgversion.cpp - llviewerobjectbackup.cpp - slfloatermediafilter.cpp - floaterlocalassetbrowse.cpp aoremotectrl.cpp - lgghunspell_wrapper.cpp - lggdicdownload.cpp - floaterao.cpp - floatervoicelicense.cpp - lldaycyclemanager.cpp - llenvmanager.cpp - llwlhandlers.cpp - llregioninfomodel.cpp - m7wlinterface.cpp ascentfloatercontactgroups.cpp ascentkeyword.cpp ascentprefschat.cpp ascentprefssys.cpp ascentprefsvan.cpp + chatbar_as_cmdline.cpp emeraldboobutils.cpp - floatersculptpreview.cpp + floaterao.cpp + floaterlocalassetbrowse.cpp + floatervoicelicense.cpp hbfloatergrouptitles.cpp hgfloatertexteditor.cpp - hippogridmanager.cpp hippofloaterxml.cpp + hippogridmanager.cpp hippolimits.cpp - hipporestrequest.cpp hippopanelgrids.cpp - importtracker.cpp + hipporestrequest.cpp + importtracker.cpp jcfloaterareasearch.cpp - chatbar_as_cmdline.cpp - qtoolalign.cpp - NACLantispam.cpp + lggdicdownload.cpp + lgghunspell_wrapper.cpp llaccountingcostmanager.cpp llagent.cpp llagentaccess.cpp @@ -124,8 +109,8 @@ set(viewer_SOURCE_FILES llappearancemgr.cpp llappviewer.cpp llassetconverter.cpp - llassetuploadresponders.cpp llassetuploadqueue.cpp + llassetuploadresponders.cpp llattachmentsmgr.cpp llaudiosourcevo.cpp llavatarpropertiesprocessor.cpp @@ -150,6 +135,7 @@ set(viewer_SOURCE_FILES llcurlrequest.cpp llcurrencyuimanager.cpp llcylinder.cpp + lldaycyclemanager.cpp lldebugmessagebox.cpp lldebugview.cpp lldelayedgestureerror.cpp @@ -166,9 +152,10 @@ set(viewer_SOURCE_FILES lldrawpoolwater.cpp lldrawpoolwlsky.cpp lldriverparam.cpp - lldroptarget.cpp + lldroptarget.cpp lldynamictexture.cpp llemote.cpp + llenvmanager.cpp lleventinfo.cpp lleventnotifier.cpp lleventpoll.cpp @@ -188,13 +175,11 @@ set(viewer_SOURCE_FILES llfloateravatartextures.cpp llfloaterbeacons.cpp llfloaterblacklist.cpp - llviewerdisplayname.cpp - llfloaterdisplayname.cpp llfloaterbuildoptions.cpp llfloaterbulkpermission.cpp llfloaterbump.cpp - llfloaterbuycontents.cpp llfloaterbuy.cpp + llfloaterbuycontents.cpp llfloaterbuycurrency.cpp llfloaterbuyland.cpp llfloatercamera.cpp @@ -205,6 +190,7 @@ set(viewer_SOURCE_FILES llfloatercustomize.cpp llfloaterdaycycle.cpp llfloaterdirectory.cpp + llfloaterdisplayname.cpp llfloatereditui.cpp llfloaterenvsettings.cpp llfloaterevent.cpp @@ -219,7 +205,6 @@ set(viewer_SOURCE_FILES llfloatergroups.cpp llfloaterhandler.cpp llfloaterhtmlcurrency.cpp - llfloatermediabrowser.cpp llfloaterhtmlsimple.cpp llfloaterhud.cpp llfloaterimagepreview.cpp @@ -230,6 +215,7 @@ set(viewer_SOURCE_FILES llfloaterlandholdings.cpp llfloaterlandmark.cpp llfloatermap.cpp + llfloatermediabrowser.cpp llfloatermemleak.cpp llfloatermodeluploadbase.cpp llfloatermute.cpp @@ -248,8 +234,8 @@ set(viewer_SOURCE_FILES llfloaterregiondebugconsole.cpp llfloaterregioninfo.cpp llfloaterreporter.cpp - llfloatersearchreplace.cpp llfloaterscriptdebug.cpp + llfloatersearchreplace.cpp llfloatersellland.cpp llfloatersettingsdebug.cpp llfloatersnapshot.cpp @@ -281,8 +267,8 @@ set(viewer_SOURCE_FILES llgroupnotify.cpp llhomelocationresponder.cpp llhoverview.cpp - llhudeffectbeam.cpp llhudeffect.cpp + llhudeffectbeam.cpp llhudeffectlookat.cpp llhudeffectpointat.cpp llhudeffecttrail.cpp @@ -308,17 +294,18 @@ set(viewer_SOURCE_FILES llinventorypanel.cpp lljoystickbutton.cpp lllandmarklist.cpp - lllocaltextureobject.cpp lllocalinventory.cpp + lllocaltextureobject.cpp lllogchat.cpp llloginhandler.cpp - llsavedlogins.cpp llmainlooprepeater.cpp llmanip.cpp llmaniprotate.cpp llmanipscale.cpp llmaniptranslate.cpp + llmapresponders.cpp llmarketplacenotifications.cpp + llmediactrl.cpp llmediaremotectrl.cpp llmemoryview.cpp llmenucommands.cpp @@ -339,7 +326,6 @@ set(viewer_SOURCE_FILES llpanelavatar.cpp llpanelclassified.cpp llpanelcontents.cpp - llpaneleditwearable.cpp llpaneldebug.cpp llpaneldirbrowser.cpp llpaneldirclassified.cpp @@ -349,8 +335,9 @@ set(viewer_SOURCE_FILES llpaneldirland.cpp llpaneldirpeople.cpp llpaneldirplaces.cpp - llpaneldirpopular.cpp llpaneldisplay.cpp + llpaneldirpopular.cpp + llpaneleditwearable.cpp llpanelevent.cpp llpanelface.cpp llpanelgeneral.cpp @@ -362,7 +349,6 @@ set(viewer_SOURCE_FILES llpanelgrouproles.cpp llpanelgroupvoting.cpp llpanelinput.cpp - llpanelobjectinventory.cpp llpanelland.cpp llpanellandaudio.cpp llpanellandmedia.cpp @@ -370,11 +356,12 @@ set(viewer_SOURCE_FILES llpanellandoptions.cpp llpanellogin.cpp llpanelmaininventory.cpp - llpanelmorph.cpp llpanelmediahud.cpp + llpanelmorph.cpp llpanelmsgs.cpp llpanelnetwork.cpp llpanelobject.cpp + llpanelobjectinventory.cpp llpanelpathfindingrebakenavmesh.cpp llpanelpermissions.cpp llpanelpick.cpp @@ -400,8 +387,8 @@ set(viewer_SOURCE_FILES llprefschat.cpp llprefsim.cpp llprefsvoice.cpp - llpreviewanim.cpp llpreview.cpp + llpreviewanim.cpp llpreviewgesture.cpp llpreviewlandmark.cpp llpreviewnotecard.cpp @@ -410,8 +397,10 @@ set(viewer_SOURCE_FILES llpreviewtexture.cpp llproductinforequest.cpp llprogressview.cpp + llregioninfomodel.cpp llregionposition.cpp llremoteparcelrequest.cpp + llsavedlogins.cpp llsavedsettingsglue.cpp llscrollingpanelparam.cpp llscrollingpanelparambase.cpp @@ -439,10 +428,10 @@ set(viewer_SOURCE_FILES lltexturestats.cpp lltexturestatsuploader.cpp lltextureview.cpp + lltool.cpp lltoolbar.cpp lltoolbrush.cpp lltoolcomp.cpp - lltool.cpp lltooldraganddrop.cpp lltoolface.cpp lltoolfocus.cpp @@ -461,7 +450,7 @@ set(viewer_SOURCE_FILES lltoolview.cpp lltracker.cpp lluploaddialog.cpp - lluploadfloaterobservers.cpp + lluploadfloaterobservers.cpp llurl.cpp llurldispatcher.cpp llurlhistory.cpp @@ -477,6 +466,7 @@ set(viewer_SOURCE_FILES llviewercamera.cpp llviewercontrol.cpp llviewerdisplay.cpp + llviewerdisplayname.cpp llviewerfoldertype.cpp llviewergenericmessage.cpp llviewergesture.cpp @@ -488,15 +478,16 @@ set(viewer_SOURCE_FILES llviewerkeyboard.cpp llviewerlayer.cpp llviewermedia.cpp - llviewermediaeventemitter.cpp - llviewermediaobserver.cpp - llviewermediafocus.cpp llviewermedia_streamingaudio.cpp + llviewermediaeventemitter.cpp + llviewermediafocus.cpp + llviewermediaobserver.cpp llviewermenu.cpp llviewermenufile.cpp llviewermessage.cpp llviewernetwork.cpp llviewerobject.cpp + llviewerobjectbackup.cpp llviewerobjectlist.cpp llviewerparcelmedia.cpp llviewerparcelmediaautoplay.cpp @@ -543,32 +534,37 @@ set(viewer_SOURCE_FILES llwearablelist.cpp llwearabletype.cpp llweb.cpp - llmediactrl.cpp llwind.cpp llwlanimator.cpp llwldaycycle.cpp + llwlhandlers.cpp llwlparammanager.cpp llwlparamset.cpp llworld.cpp llworldmap.cpp llworldmipmap.cpp - llmapresponders.cpp llworldmapview.cpp llxmlrpctransaction.cpp + m7wlinterface.cpp + NACLantispam.cpp noise.cpp pipeline.cpp - scriptcounter.cpp - wlfPanel_AdvSettings.cpp - rlvhandler.cpp - rlvhelper.cpp + qtoolalign.cpp rlvcommon.cpp - rlvlocks.cpp - rlvinventory.cpp rlvextensions.cpp rlvfloaterbehaviour.cpp + rlvhandler.cpp + rlvhelper.cpp + rlvinventory.cpp + rlvlocks.cpp rlvui.cpp - shcommandhandler.cpp - shfloatermediaticker.cpp + scriptcounter.cpp + sgmemstat.cpp + sgversion.cpp + shcommandhandler.cpp + shfloatermediaticker.cpp + slfloatermediafilter.cpp + wlfPanel_AdvSettings.cpp ) # This gets renamed in the packaging step @@ -578,41 +574,28 @@ set(VIEWER_BINARY_NAME "secondlife-bin" CACHE STRING set(viewer_HEADER_FILES CMakeLists.txt ViewerInstall.cmake - - NACLantispam.h - sgmemstat.h - sgversion.h - llviewerobjectbackup.h - slfloatermediafilter.h - floaterlocalassetbrowse.h aoremotectrl.h - floaterao.h - floatervoicelicense.h - lldaycyclemanager.h - llenvmanager.h - llwlhandlers.h - llregioninfomodel.h - m7wlinterface.h ascentfloatercontactgroups.h ascentkeyword.h ascentprefschat.h ascentprefssys.h ascentprefsvan.h + chatbar_as_cmdline.h emeraldboobutils.h - floatersculptpreview.h + floaterao.h + floaterlocalassetbrowse.h + floatervoicelicense.h hbfloatergrouptitles.h hgfloatertexteditor.h - hippogridmanager.h hippofloaterxml.h + hippogridmanager.h hippolimits.h - hipporestrequest.h hippopanelgrids.h - importtracker.h + hipporestrequest.h + importtracker.h jcfloaterareasearch.h lggdicdownload.h lgghunspell_wrapper.h - chatbar_as_cmdline.h - qtoolalign.h llaccountingcostmanager.h llagent.h llagentaccess.h @@ -628,8 +611,8 @@ set(viewer_HEADER_FILES llappearancemgr.h llappviewer.h llassetconverter.h - llassetuploadresponders.h llassetuploadqueue.h + llassetuploadresponders.h llattachmentsmgr.h llaudiosourcevo.h llavatarpropertiesprocessor.h @@ -654,6 +637,7 @@ set(viewer_HEADER_FILES llcurlrequest.h llcurrencyuimanager.h llcylinder.h + lldaycyclemanager.h lldebugmessagebox.h lldebugview.h lldelayedgestureerror.h @@ -670,9 +654,10 @@ set(viewer_HEADER_FILES lldrawpoolwater.h lldrawpoolwlsky.h lldriverparam.h - lldroptarget.h + lldroptarget.h lldynamictexture.h llemote.h + llenvmanager.h lleventinfo.h lleventnotifier.h lleventpoll.h @@ -692,8 +677,6 @@ set(viewer_HEADER_FILES llfloateravatartextures.h llfloaterbeacons.h llfloaterblacklist.h - llviewerdisplayname.h - llfloaterdisplayname.h llfloaterbuildoptions.h llfloaterbulkpermission.h llfloaterbump.h @@ -709,6 +692,7 @@ set(viewer_HEADER_FILES llfloatercustomize.h llfloaterdaycycle.h llfloaterdirectory.h + llfloaterdisplayname.h llfloatereditui.h llfloaterenvsettings.h llfloaterexploreanimations.h @@ -723,7 +707,6 @@ set(viewer_HEADER_FILES llfloatergroups.h llfloaterhandler.h llfloaterhtmlcurrency.h - llfloatermediabrowser.h llfloaterhtmlsimple.h llfloaterhud.h llfloaterimagepreview.h @@ -734,6 +717,7 @@ set(viewer_HEADER_FILES llfloaterlandholdings.h llfloaterlandmark.h llfloatermap.h + llfloatermediabrowser.h llfloatermemleak.h llfloatermodeluploadbase.h llfloatermute.h @@ -744,16 +728,16 @@ set(viewer_HEADER_FILES llfloateropenobject.h llfloaterparcel.h llfloaterpermissionsmgr.h + llfloaterperms.h llfloaterpostcard.h llfloaterpostprocess.h llfloaterpreference.h - llfloaterperms.h llfloaterproperties.h llfloaterregiondebugconsole.h llfloaterregioninfo.h llfloaterreporter.h - llfloatersearchreplace.h llfloaterscriptdebug.h + llfloatersearchreplace.h llfloatersellland.h llfloatersettingsdebug.h llfloatersnapshot.h @@ -812,17 +796,18 @@ set(viewer_HEADER_FILES lljoystickbutton.h lllandmarklist.h lllightconstants.h - lllocaltextureobject.h lllocalinventory.h + lllocaltextureobject.h lllogchat.h llloginhandler.h - llsavedlogins.h llmainlooprepeater.h llmanip.h llmaniprotate.h llmanipscale.h llmaniptranslate.h + llmapresponders.h llmarketplacenotifications.h + llmediactrl.h llmediaremotectrl.h llmemoryview.h llmenucommands.h @@ -843,7 +828,6 @@ set(viewer_HEADER_FILES llpanelavatar.h llpanelclassified.h llpanelcontents.h - llpaneleditwearable.h llpaneldebug.h llpaneldirbrowser.h llpaneldirclassified.h @@ -855,6 +839,7 @@ set(viewer_HEADER_FILES llpaneldirplaces.h llpaneldirpopular.h llpaneldisplay.h + llpaneleditwearable.h llpanelevent.h llpanelface.h llpanelgeneral.h @@ -866,7 +851,6 @@ set(viewer_HEADER_FILES llpanelgrouproles.h llpanelgroupvoting.h llpanelinput.h - llpanelobjectinventory.h llpanelland.h llpanellandaudio.h llpanellandmedia.h @@ -874,11 +858,12 @@ set(viewer_HEADER_FILES llpanellandoptions.h llpanellogin.h llpanelmaininventory.h - llpanelmorph.h llpanelmediahud.h + llpanelmorph.h llpanelmsgs.h llpanelnetwork.h llpanelobject.h + llpanelobjectinventory.h llpanelpathfindingrebakenavmesh.h llpanelpermissions.h llpanelpick.h @@ -914,9 +899,11 @@ set(viewer_HEADER_FILES llpreviewtexture.h llproductinforequest.h llprogressview.h + llregioninfomodel.h llregionposition.h llremoteparcelrequest.h llresourcedata.h + llsavedlogins.h llsavedsettingsglue.h llscrollingpanelparam.h llscrollingpanelparambase.h @@ -969,7 +956,7 @@ set(viewer_HEADER_FILES lltranslate.h lluiconstants.h lluploaddialog.h - lluploadfloaterobservers.h + lluploadfloaterobservers.h llurl.h llurldispatcher.h llurlhistory.h @@ -985,6 +972,7 @@ set(viewer_HEADER_FILES llviewercamera.h llviewercontrol.h llviewerdisplay.h + llviewerdisplayname.h llviewerfoldertype.h llviewergenericmessage.h llviewergesture.h @@ -997,13 +985,14 @@ set(viewer_HEADER_FILES llviewerlayer.h llviewermedia.h llviewermediaeventemitter.h - llviewermediaobserver.h llviewermediafocus.h + llviewermediaobserver.h llviewermenu.h llviewermenufile.h llviewermessage.h llviewernetwork.h llviewerobject.h + llviewerobjectbackup.h llviewerobjectlist.h llviewerparcelmedia.h llviewerparcelmediaautoplay.h @@ -1052,38 +1041,43 @@ set(viewer_HEADER_FILES llwearablelist.h llwearabletype.h llweb.h - llmediactrl.h llwind.h llwindebug.h llwlanimator.h llwldaycycle.h + llwlhandlers.h llwlparammanager.h llwlparamset.h llworld.h llworldmap.h llworldmipmap.h - llmapresponders.h llworldmapview.h llxmlrpctransaction.h + m7wlinterface.h macmain.h + NACLantispam.h noise.h pipeline.h + qtoolalign.h randgauss.h + rlvcommon.h + rlvdefines.h + rlvextensions.h + rlvfloaterbehaviour.h + rlvhandler.h + rlvhelper.h + rlvinventory.h + rlvlocks.h + rlvui.h scriptcounter.h + sgmemstat.h + sgversion.h + shcommandhandler.h + shfloatermediaticker.h + slfloatermediafilter.h VertexCache.h VorbisFramework.h wlfPanel_AdvSettings.h - rlvdefines.h - rlvhandler.h - rlvhelper.h - rlvcommon.h - rlvlocks.h - rlvinventory.h - rlvextensions.h - rlvfloaterbehaviour.h - rlvui.h - shcommandhandler.h - shfloatermediaticker.h ) source_group("CMake Rules" FILES ViewerInstall.cmake) @@ -1146,16 +1140,16 @@ if (WINDOWS) llappviewerwin32.h llwindebug.h ) - + # precompiled header configuration # llviewerprecompiledheaders.cpp generates # the .pch file. - # All sources added to viewer_SOURCE_FILES + # All sources added to viewer_SOURCE_FILES # at this point use it. set_source_files_properties(llviewerprecompiledheaders.cpp PROPERTIES COMPILE_FLAGS "/Ycllviewerprecompiledheaders.h" - ) + ) foreach( src_file ${viewer_SOURCE_FILES} ) set_source_files_properties( ${src_file} @@ -1197,13 +1191,13 @@ if (WINDOWS) ${ARTWORK_DIR}/res/snowglobe_icon.BMP ${ARTWORK_DIR}/res/snowglobe_icon.ico ${ARTWORK_DIR}/res/resource.h - ${ARTWORK_DIR}/res/toolbuy.cur - ${ARTWORK_DIR}/res/toolopen.cur - ${ARTWORK_DIR}/res/toolpay.cur ${ARTWORK_DIR}/res/toolpickobject.cur ${ARTWORK_DIR}/res/toolpickobject2.cur ${ARTWORK_DIR}/res/toolpickobject3.cur ${ARTWORK_DIR}/res/toolpipette.cur + ${ARTWORK_DIR}/res/toolbuy.cur + ${ARTWORK_DIR}/res/toolopen.cur + ${ARTWORK_DIR}/res/toolpay.cur ${ARTWORK_DIR}/res/toolsit.cur ) @@ -1283,20 +1277,16 @@ endif (WINDOWS) # Add the xui files. This is handy for searching for xui elements # from within the IDE. - -file(GLOB viewer_XUI_FILE_GLOB_LIST - ${CMAKE_CURRENT_SOURCE_DIR}/skins/default/xui/en-us/*.xml) - set(viewer_XUI_FILES - ${CMAKE_CURRENT_SOURCE_DIR}/skins/default/colors.xml ${CMAKE_CURRENT_SOURCE_DIR}/skins/default/colors_base.xml - - - ) - +file(GLOB viewer_XUI_FILE_GLOB_LIST + ${CMAKE_CURRENT_SOURCE_DIR}/skins/default/xui/en-us/*.xml) list(APPEND viewer_XUI_FILES ${viewer_XUI_FILE_GLOB_LIST}) + + + list(SORT viewer_XUI_FILES) source_group("XUI Files" FILES ${viewer_XUI_FILES}) @@ -1384,9 +1374,6 @@ if (FMOD OR FMODEX) if(FMOD) set(fmodwrapper_SOURCE_FILES fmodwrapper.cpp) add_library(fmodwrapper SHARED ${fmodwrapper_SOURCE_FILES}) - if (FMODEX) - set(fmodwrapper_needed_LIBRARIES ${FMODEX_LIBRARY} ${CARBON_LIBRARY}) - endif (FMODEX) if (FMOD) set(fmodwrapper_needed_LIBRARIES ${FMOD_LIBRARY} ${CARBON_LIBRARY}) endif (FMOD) @@ -1451,21 +1438,21 @@ if (WINDOWS) set(release_flags "/MAP:Release/${VIEWER_BINARY_NAME}.map") endif() -if (FMOD) - if(MANIFEST_LIBRARIES) - set(MANIFEST_LIBRARIES "${MANIFEST_LIBRARIES}|${FMOD_BINARY_DIR}/fmod.dll") - else(MANIFEST_LIBRARIES) - set(MANIFEST_LIBRARIES "--extra_libraries=${FMOD_BINARY_DIR}/fmod.dll") - endif(MANIFEST_LIBRARIES) -endif (FMOD) -if (FMODEX) - if(MANIFEST_LIBRARIES) - set(MANIFEST_LIBRARIES "${MANIFEST_LIBRARIES}|${FMODEX_BINARY_DIR}/fmodex.dll") - else(MANIFEST_LIBRARIES) - set(MANIFEST_LIBRARIES "--extra_libraries=${FMODEX_BINARY_DIR}/fmodex.dll") - endif(MANIFEST_LIBRARIES) - set(EXTRA_LINKER_FLAGS "/DELAYLOAD:fmodex.dll") -endif (FMODEX) + if (FMOD) + if(MANIFEST_LIBRARIES) + set(MANIFEST_LIBRARIES "${MANIFEST_LIBRARIES}|${FMOD_BINARY_DIR}/fmod.dll") + else(MANIFEST_LIBRARIES) + set(MANIFEST_LIBRARIES "--extra_libraries=${FMOD_BINARY_DIR}/fmod.dll") + endif(MANIFEST_LIBRARIES) + endif (FMOD) + if (FMODEX) + if(MANIFEST_LIBRARIES) + set(MANIFEST_LIBRARIES "${MANIFEST_LIBRARIES}|${FMODEX_BINARY_DIR}/fmodex.dll") + else(MANIFEST_LIBRARIES) + set(MANIFEST_LIBRARIES "--extra_libraries=${FMODEX_BINARY_DIR}/fmodex.dll") + endif(MANIFEST_LIBRARIES) + set(EXTRA_LINKER_FLAGS "/DELAYLOAD:fmodex.dll") + endif (FMODEX) set_target_properties(${VIEWER_BINARY_NAME} PROPERTIES @@ -1480,11 +1467,11 @@ endif (FMODEX) TARGET ${VIEWER_BINARY_NAME} PRE_BUILD COMMAND ${CMAKE_SOURCE_DIR}/tools/vstool/vstool.exe ARGS - --solution + --solution ${CMAKE_BINARY_DIR}/${CMAKE_PROJECT_NAME}.sln --workingdir ${VIEWER_BINARY_NAME} - ${CMAKE_CURRENT_SOURCE_DIR} + "${CMAKE_CURRENT_SOURCE_DIR}" COMMENT "Setting the ${VIEWER_BINARY_NAME} working directory for debugging." ) endif (NOT UNATTENDED) @@ -1510,30 +1497,32 @@ endif (FMODEX) ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/app_settings/message.xml COMMENT "Copying message.xml to the runtime folder." ) - + add_dependencies(${VIEWER_BINARY_NAME} copy_win_libs) if (EXISTS ${CMAKE_SOURCE_DIR}/copy_win_scripts) add_dependencies(${VIEWER_BINARY_NAME} copy_win_scripts) endif (EXISTS ${CMAKE_SOURCE_DIR}/copy_win_scripts) - - add_custom_command( + + add_custom_command( OUTPUT ${CMAKE_CFG_INTDIR}/touched.bat COMMAND ${PYTHON_EXECUTABLE} ARGS ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py - --configuration=${CMAKE_CFG_INTDIR} - --channel=${VIEWER_CHANNEL} - --login_channel=${VIEWER_LOGIN_CHANNEL} + --artwork=${ARTWORK_DIR} --branding_id=${VIEWER_BRANDING_ID} + --build=${CMAKE_CURRENT_BINARY_DIR} + --channel=${VIEWER_CHANNEL} + --configuration=${CMAKE_CFG_INTDIR} + --dest=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR} --grid=${GRID} + --login_channel=${VIEWER_LOGIN_CHANNEL} --source=${CMAKE_CURRENT_SOURCE_DIR} - --artwork=${ARTWORK_DIR} - --build=${CMAKE_CURRENT_BINARY_DIR} - --dest=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR} - --touch=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/touched.bat + --touch=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/touched.bat ${MANIFEST_LIBRARIES} - DEPENDS ${VIEWER_BINARY_NAME} ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py + DEPENDS + ${VIEWER_BINARY_NAME} + ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py ) add_dependencies(${VIEWER_BINARY_NAME} SLPlugin media_plugin_quicktime media_plugin_webkit basic_plugin_filepicker) @@ -1544,9 +1533,16 @@ endif (FMODEX) endif (PACKAGE) endif (WINDOWS) +# *NOTE - this list is very sensitive to ordering, test carefully on all +# platforms if you change the releative order of the entries here. +# In particular, cmake 2.6.4 (when buidling with linux/makefile generators) +# appears to sometimes de-duplicate redundantly listed dependencies improperly. +# To work around this, higher level modules should be listed before the modules +# that they depend upon. -brad target_link_libraries(${VIEWER_BINARY_NAME} ${GOOGLE_PERFTOOLS_LIBRARIES} ${LLAUDIO_LIBRARIES} + ${LLAUDIO_VORBIS_LIBRARIES} ${LLCHARACTER_LIBRARIES} ${LLIMAGE_LIBRARIES} ${LLIMAGEJ2COJ_LIBRARIES} @@ -1572,7 +1568,7 @@ target_link_libraries(${VIEWER_BINARY_NAME} ${BOOST_SYSTEM_LIBRARY} ${DBUSGLIB_LIBRARIES} ${OPENGL_LIBRARIES} - ${FMODWRAPPER_LIBRARY} + ${FMODWRAPPER_LIBRARY} # must come after LLAudio ${APRUTIL_LIBRARIES} ${OPENGL_LIBRARIES} ${JSONCPP_LIBRARIES} @@ -1608,21 +1604,23 @@ if (LINUX) COMMAND ${PYTHON_EXECUTABLE} ARGS ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py - --standalone=${STANDALONE} - --grid=${GRID} - --channel=${VIEWER_CHANNEL} - --login_channel=${VIEWER_LOGIN_CHANNEL} - --branding_id=${VIEWER_BRANDING_ID} - --installer_name=${product} --arch=${ARCH} - --source=${CMAKE_CURRENT_SOURCE_DIR} --artwork=${ARTWORK_DIR} + --branding_id=${VIEWER_BRANDING_ID} --build=${CMAKE_CURRENT_BINARY_DIR} - --dest=${CMAKE_CURRENT_BINARY_DIR}/packaged - --touch=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/.${product}.touched --buildtype=${CMAKE_BUILD_TYPE} + --channel=${VIEWER_CHANNEL} + --dest=${CMAKE_CURRENT_BINARY_DIR}/packaged + --grid=${GRID} + --installer_name=${product} + --login_channel=${VIEWER_LOGIN_CHANNEL} + --source=${CMAKE_CURRENT_SOURCE_DIR} + --standalone=${STANDALONE} + --touch=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/.${product}.touched ${MANIFEST_LIBRARIES} - DEPENDS secondlife-stripped ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py + DEPENDS + secondlife-stripped + ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py ) add_dependencies(${VIEWER_BINARY_NAME} SLPlugin media_plugin_gstreamer010 media_plugin_webkit basic_plugin_filepicker) @@ -1654,22 +1652,31 @@ if (DARWIN) COMMAND ${PYTHON_EXECUTABLE} ARGS ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py - --grid=${GRID} --actions=copy - --configuration=${CMAKE_CFG_INTDIR} - --source=${CMAKE_CURRENT_SOURCE_DIR} --artwork=${ARTWORK_DIR} --branding_id=${VIEWER_BRANDING_ID} --build=${CMAKE_CURRENT_BINARY_DIR} - --dest=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/${product}.app --buildtype=${CMAKE_BUILD_TYPE} + --configuration=${CMAKE_CFG_INTDIR} + --dest=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/${product}.app + --grid=${GRID} + --source=${CMAKE_CURRENT_SOURCE_DIR} DEPENDS ${VIEWER_BINARY_NAME} ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py ) add_dependencies(${VIEWER_BINARY_NAME} SLPlugin media_plugin_quicktime media_plugin_webkit basic_plugin_filepicker) + if (FMODEX) + add_custom_command(OUTPUT "${FMODEX_LIBRARY}" + COMMAND cp "${FMODEX_ORIG_LIBRARY}" "${FMODEX_LIBRARY}" + COMMAND install_name_tool -id "@executable_path/../Resources/libfmodex.dylib" ${FMODEX_LIBRARY} + DEPENDS "${FMODEX_ORIG_LIBRARY}") + add_custom_target(fmodex_modified_library DEPENDS "${FMODEX_LIBRARY}") + add_dependencies(${VIEWER_BINARY_NAME} fmodex_modified_library) + endif (FMODEX) + if (PACKAGE) - add_custom_target(package ALL DEPENDS ${VIEWER_BINARY_NAME}) + add_custom_target(package ALL DEPENDS ${VIEWER_BINARY_NAME}) add_dependencies(package mac-updater mac-crash-logger) add_custom_command( @@ -1677,38 +1684,38 @@ if (DARWIN) COMMAND ${PYTHON_EXECUTABLE} ARGS ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py - --grid=${GRID} - --configuration=${CMAKE_CFG_INTDIR} - --channel=${VIEWER_CHANNEL} - --login_channel=${VIEWER_LOGIN_CHANNEL} - --branding_id=${VIEWER_BRANDING_ID} - --source=${CMAKE_CURRENT_SOURCE_DIR} --artwork=${ARTWORK_DIR} + --branding_id=${VIEWER_BRANDING_ID} --build=${CMAKE_CURRENT_BINARY_DIR} - --dest=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/${product}.app - --touch=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/.${product}.touched --buildtype=${CMAKE_BUILD_TYPE} + --channel=${VIEWER_CHANNEL} + --configuration=${CMAKE_CFG_INTDIR} + --dest=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/${product}.app + --grid=${GRID} + --login_channel=${VIEWER_LOGIN_CHANNEL} + --source=${CMAKE_CURRENT_SOURCE_DIR} + --touch=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/.${product}.touched DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py ) - - +# Viewer-Development doesn't have this duplicate of the above command, here.. +# this may be a botched merge, but Mac seems to be picky, so I'm leaving it ~Liru add_custom_command( TARGET package POST_BUILD COMMAND ${PYTHON_EXECUTABLE} ARGS ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py - --grid=${GRID} - --configuration=${CMAKE_CFG_INTDIR} - --channel=${VIEWER_CHANNEL} - --login_channel=${VIEWER_LOGIN_CHANNEL} - --branding_id=${VIEWER_BRANDING_ID} - --source=${CMAKE_CURRENT_SOURCE_DIR} --artwork=${ARTWORK_DIR} + --branding_id=${VIEWER_BRANDING_ID} --build=${CMAKE_CURRENT_BINARY_DIR} - --dest=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/${product}.app - --touch=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/.${product}.touched --buildtype=${CMAKE_BUILD_TYPE} + --channel=${VIEWER_CHANNEL} + --configuration=${CMAKE_CFG_INTDIR} + --dest=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/${product}.app + --grid=${GRID} + --login_channel=${VIEWER_LOGIN_CHANNEL} + --source=${CMAKE_CURRENT_SOURCE_DIR} + --touch=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/.${product}.touched DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py ) diff --git a/indra/newview/NACLantispam.cpp b/indra/newview/NACLantispam.cpp index aac555a50..cabd47ed0 100644 --- a/indra/newview/NACLantispam.cpp +++ b/indra/newview/NACLantispam.cpp @@ -111,6 +111,8 @@ void NACLAntiSpamQueue::blockEntry(LLUUID& source) } int NACLAntiSpamQueue::checkEntry(LLUUID& name, U32 multiplier) { + static LLCachedControl enabled(gSavedSettings,"AntiSpamEnabled",false); + if(!enabled) return 0; it=entries.find(name.asString()); if(it != entries.end()) { @@ -200,7 +202,7 @@ void NACLAntiSpamRegistry::setRegisteredQueueTime(U32 name, U32 time) { if(name >= QUEUE_MAX || queues[name] == 0) { - LL_ERRS("AntiSpam") << "CODE BUG: Attempting to use a antispam queue that was not created or was outside of the reasonable range of queues. Queue: " << getQueueName(name) << llendl; + LL_ERRS("AntiSpam") << "CODE BUG: Attempting to set time of antispam queue that was outside of the reasonable range of queues or not created. Queue: " << getQueueName(name) << llendl; return; } @@ -210,7 +212,7 @@ void NACLAntiSpamRegistry::setRegisteredQueueAmount(U32 name, U32 amount) { if(name >= QUEUE_MAX || queues[name] == 0) { - LL_ERRS("AntiSpam") << "CODE BUG: Attempting to use a antispam queue that was not created or was outside of the reasonable range of queues. Queue: " << getQueueName(name) << llendl; + LL_ERRS("AntiSpam") << "CODE BUG: Attempting to set amount for antispam queue that was outside of the reasonable range of queues or not created. Queue: " << getQueueName(name) << llendl; return; } @@ -237,7 +239,7 @@ void NACLAntiSpamRegistry::clearRegisteredQueue(U32 name) { if(name >= QUEUE_MAX || queues[name] == 0) { - LL_ERRS("AntiSpam") << "CODE BUG: Attempting to use a antispam queue that was not created or was outside of the reasonable range of queues. Queue: " << getQueueName(name) << llendl; + LL_ERRS("AntiSpam") << "CODE BUG: Attempting to clear antispam queue that was outside of the reasonable range of queues or not created. Queue: " << getQueueName(name) << llendl; return; } @@ -247,7 +249,7 @@ void NACLAntiSpamRegistry::purgeRegisteredQueue(U32 name) { if(name >= QUEUE_MAX || queues[name] == 0) { - LL_ERRS("AntiSpam") << "CODE BUG: Attempting to use a antispam queue that was not created or was outside of the reasonable range of queues. Queue: " << getQueueName(name) << llendl; + LL_ERRS("AntiSpam") << "CODE BUG: Attempting to purge antispam queue that was outside of the reasonable range of queues or not created. Queue: " << getQueueName(name) << llendl; return; } @@ -263,7 +265,7 @@ void NACLAntiSpamRegistry::blockOnQueue(U32 name, LLUUID& source) { if(name >= QUEUE_MAX || queues[name] == 0) { - LL_ERRS("AntiSpam") << "CODE BUG: Attempting to use a antispam queue that was not created or was outside of the reasonable range of queues. Queue: " << getQueueName(name) << llendl; + LL_ERRS("AntiSpam") << "CODE BUG: Attempting to use a antispam queue that was outside of the reasonable range of queues or not created. Queue: " << getQueueName(name) << llendl; return; } queues[name]->blockEntry(source); @@ -295,7 +297,7 @@ bool NACLAntiSpamRegistry::checkQueue(U32 name, LLUUID& source, U32 multiplier) { if(name >= QUEUE_MAX || queues[name] == 0) { - LL_ERRS("AntiSpam") << "CODE BUG: Attempting to use a antispam queue that was not created or was outside of the reasonable range of queues. Queue: " << getQueueName(name) << llendl; + LL_ERRS("AntiSpam") << "CODE BUG: Attempting to check antispam queue that was outside of the reasonable range of queues or not created. Queue: " << getQueueName(name) << llendl; return false; } result=queues[name]->checkEntry(source,multiplier); @@ -356,6 +358,8 @@ void NACLAntiSpamRegistry::purgeAllQueues() } int NACLAntiSpamRegistry::checkGlobalEntry(LLUUID& name, U32 multiplier) { + static LLCachedControl enabled(gSavedSettings,"AntiSpamEnabled",false); + if(!enabled) return 0; it2=globalEntries.find(name.asString()); if(it2 != globalEntries.end()) { diff --git a/indra/newview/app_settings/default_grids.xml b/indra/newview/app_settings/default_grids.xml index a909642b8..b86d64ac3 100755 --- a/indra/newview/app_settings/default_grids.xml +++ b/indra/newview/app_settings/default_grids.xml @@ -2,7 +2,7 @@ - default_grids_version20 + default_grids_version21 @@ -38,6 +38,23 @@ auto_update0 + + + auto_update 0 + gridname OSGrid + gridnick osgrid + helperuri http://helper.osgrid.org/ + inventory_links 0 + loginpage http://www.osgrid.org/splash/ + loginuri http://login.osgrid.org/ + password http://www.osgrid.org/ + platform OpenSim + register http://www.osgrid.org/ + render_compat 1 + search + support http://www.osgrid.org/ + website http://www.osgrid.org/ + diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index 20a643877..bf264794f 100644 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -8,6 +8,31 @@ settings_sh.xml settings_rlv.xml + + SGShiftCrouchToggle + + Comment + Allow crouch toggle by holding shift + Persist + 1 + Type + Boolean + Value + 1 + + + SGServerVersionChangedNotification + + Comment + Notify when going to a simulator of different version + Persist + 1 + Type + Boolean + Value + 0 + + SianaRenderDeferredInvisiprim Comment @@ -905,6 +930,17 @@ Value 0 + AntiSpamEnabled + + Comment + When false, antispam, not relating to dialog blocking, will be turned off. + Persist + 1 + Type + Boolean + Value + 0 + AntiSpamFriendshipOffers Comment @@ -1035,7 +1071,7 @@ Type U32 Value - 20 + 100 _NACL_AntiSpamNewlines @@ -1057,7 +1093,7 @@ Type U32 Value - 20 + 100 AgentChatColor @@ -11962,7 +11998,7 @@ Type U32 Value - 32 + 128 RunBtnState diff --git a/indra/newview/app_settings/settings_ascent_coa.xml b/indra/newview/app_settings/settings_ascent_coa.xml index b76f74109..792c600e7 100644 --- a/indra/newview/app_settings/settings_ascent_coa.xml +++ b/indra/newview/app_settings/settings_ascent_coa.xml @@ -3,6 +3,20 @@ + SGDetachBridge + + Comment + Force detach phoenix, firestorm, whatever bridge may be there on attachment point 127 + Persist + 1 + Type + Boolean + Value + 1 + IsCOA + 1 + + SGDisableChatAnimation Comment diff --git a/indra/newview/app_settings/shaders/class1/effects/PosterizeF.glsl b/indra/newview/app_settings/shaders/class1/effects/PosterizeF.glsl index 1da0cdbad..0f8b2f8f2 100644 --- a/indra/newview/app_settings/shaders/class1/effects/PosterizeF.glsl +++ b/indra/newview/app_settings/shaders/class1/effects/PosterizeF.glsl @@ -8,7 +8,9 @@ #extension GL_ARB_texture_rectangle : enable #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform sampler2DRect tex0; @@ -18,6 +20,6 @@ VARYING vec2 vary_texcoord0; void main(void) { - vec3 color = pow(floor(pow(vec3(texture2D(tex0, vary_texcoord0.st)),vec3(.6)) * layerCount)/layerCount,vec3(1.66666)); - gl_FragColor = vec4(color, 1.0); + vec3 color = pow(floor(pow(vec3(texture2DRect(tex0, vary_texcoord0.st)),vec3(.6)) * layerCount)/layerCount,vec3(1.66666)); + frag_color = vec4(color, 1.0); } diff --git a/indra/newview/app_settings/shaders/class1/effects/colorFilterF.glsl b/indra/newview/app_settings/shaders/class1/effects/colorFilterF.glsl index cf0dbee8d..e03b83113 100644 --- a/indra/newview/app_settings/shaders/class1/effects/colorFilterF.glsl +++ b/indra/newview/app_settings/shaders/class1/effects/colorFilterF.glsl @@ -8,9 +8,12 @@ #extension GL_ARB_texture_rectangle : enable #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif + uniform sampler2DRect tex0; uniform float brightness; uniform float contrast; @@ -38,5 +41,5 @@ void main(void) /// Modulate saturation color = mix(vec3(dot(color, lumWeights)), color, saturation); - gl_FragColor = vec4(color, 1.0); + frag_color = vec4(color, 1.0); } diff --git a/indra/newview/app_settings/shaders/class1/effects/gaussBlurF.glsl b/indra/newview/app_settings/shaders/class1/effects/gaussBlurF.glsl index 1bb7046c2..6c56e2108 100644 --- a/indra/newview/app_settings/shaders/class1/effects/gaussBlurF.glsl +++ b/indra/newview/app_settings/shaders/class1/effects/gaussBlurF.glsl @@ -1,7 +1,9 @@ #extension GL_ARB_texture_rectangle : enable #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform sampler2DRect tex0; @@ -31,5 +33,5 @@ void main(void) color += weight.z * vec3(texture2DRect(tex0, vec2(vary_texcoord0.s,vary_texcoord0.t+offset.t))); color += weight.z * vec3(texture2DRect(tex0, vec2(vary_texcoord0.s,vary_texcoord0.t-offset.t))); } - gl_FragColor = vec4(color.xyz,1.0); -} \ No newline at end of file + frag_color = vec4(color.xyz,1.0); +} diff --git a/indra/newview/app_settings/shaders/class1/effects/nightVisionF.glsl b/indra/newview/app_settings/shaders/class1/effects/nightVisionF.glsl index 793ff201a..6257c4e9b 100644 --- a/indra/newview/app_settings/shaders/class1/effects/nightVisionF.glsl +++ b/indra/newview/app_settings/shaders/class1/effects/nightVisionF.glsl @@ -8,7 +8,9 @@ #extension GL_ARB_texture_rectangle : enable #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform sampler2DRect tex0; @@ -48,5 +50,5 @@ void main(void) outColor += noiseValue; - gl_FragColor = vec4(outColor, 1.0); + frag_color = vec4(outColor, 1.0); } diff --git a/indra/newview/app_settings/windlight/skies/Blacknight.xml b/indra/newview/app_settings/windlight/skies/Blacknight.xml index 65940a320..1dd8081ae 100644 --- a/indra/newview/app_settings/windlight/skies/Blacknight.xml +++ b/indra/newview/app_settings/windlight/skies/Blacknight.xml @@ -1,141 +1,141 @@ - - - ambient - - 0 - 0 - 0 - 0 - - blue_density - - 2 - 2 - 2 - 1 - - blue_horizon - - 0 - 0 - 0 - 0 - - cloud_color - - 0.2113494873046875 - 0.22654294967651367 - 0.2339630126953125 - 0.2339630126953125 - - cloud_pos_density1 - - 1.6884100437164307 - 0.52609699964523315 - 1 - 1 - - cloud_pos_density2 - - 1.6884100437164307 - 0.52609699964523315 - 0.125 - 1 - - cloud_scale - - 0.18000000715255737 - 0 - 0 - 1 - - cloud_scroll_rate - - 10.199999809265137 - 10.01099967956543 - - cloud_shadow - - 0.28999999165534973 - 0 - 0 - 1 - - density_multiplier - - 0.00011000000085914508 - 0 - 0 - 1 - - distance_multiplier - - 100 - 0 - 0 - 1 - - east_angle - 0 - enable_cloud_scroll - - 1 - 1 - - gamma - - 0.070000000298023224 - 0 - 0 - 1 - - glow - - 20 - 0.0010000000474974513 - -0 - 1 - - haze_density - - 4 - 0 - 0 - 1 - - haze_horizon - - 0 - 0.19915600121021271 - 0.19915600121021271 - 1 - - lightnorm - - -0 - 0.85491091012954712 - 0.51877486705780029 - 1 - - max_y - - 240 - 0 - 0 - 1 - - preset_num - 22 - star_brightness - 1.4800000190734863 - sun_angle - 4.1669716835021973 - sunlight_color - - 0.7084808349609375 - 0.8618316650390625 - 0.83307838439941406 - 0.2872772216796875 - - - + + + ambient + + 0 + 0 + 0 + 0 + + blue_density + + 2 + 2 + 2 + 1 + + blue_horizon + + 0 + 0 + 0 + 0 + + cloud_color + + 0.2113494873046875 + 0.22654294967651367 + 0.2339630126953125 + 0.2339630126953125 + + cloud_pos_density1 + + 1.6884100437164307 + 0.52609699964523315 + 1 + 1 + + cloud_pos_density2 + + 1.6884100437164307 + 0.52609699964523315 + 0.125 + 1 + + cloud_scale + + 0.18000000715255737 + 0 + 0 + 1 + + cloud_scroll_rate + + 10.199999809265137 + 10.01099967956543 + + cloud_shadow + + 0.28999999165534973 + 0 + 0 + 1 + + density_multiplier + + 0.00011000000085914508 + 0 + 0 + 1 + + distance_multiplier + + 100 + 0 + 0 + 1 + + east_angle + 0 + enable_cloud_scroll + + 1 + 1 + + gamma + + 0.070000000298023224 + 0 + 0 + 1 + + glow + + 20 + 0.0010000000474974513 + -0 + 1 + + haze_density + + 4 + 0 + 0 + 1 + + haze_horizon + + 0 + 0.19915600121021271 + 0.19915600121021271 + 1 + + lightnorm + + -0 + 0.85491091012954712 + 0.51877486705780029 + 1 + + max_y + + 240 + 0 + 0 + 1 + + preset_num + 22 + star_brightness + 1.4800000190734863 + sun_angle + 4.1669716835021973 + sunlight_color + + 0.7084808349609375 + 0.8618316650390625 + 0.83307838439941406 + 0.2872772216796875 + + + diff --git a/indra/newview/app_settings/windlight/skies/names.txt b/indra/newview/app_settings/windlight/skies/names.txt index 2d80cde58..de0124430 100644 --- a/indra/newview/app_settings/windlight/skies/names.txt +++ b/indra/newview/app_settings/windlight/skies/names.txt @@ -1,77 +1,77 @@ -- Orac - Black fog 1 -- Orac - Black fog 2 -- Orac - Drawing blue -- Orac - Drawing extreme -- Orac - Drawing green -- Orac - Drawing red -- Orac - Drawing underground comic -- Orac - fog -- Orac - gray -- Orac - green -AnaLu - outdoor city night -AnaLutetia - AvatarOpt(2) -AnaLutetia - AvatarOpt2 whiter -AnaLutetia - outdoor -AnaLutetia - Studio Light -AnaLutetia - STUDIO2 -AnaLutetia - STUDIO3 -AnaLutetia-default -AnaLutetia-outdoor2(2) -AnaLutetia -B5-ShadowDancing -CB'%s %Rouge 1 -CB'%s %Rouge 2 -CB'%s %Rouge 3 -CB'%s %Rouge 4 -CB'%s %Rouge 5 -CB'%s %Rouge 6 -Fairy blue (Paulina) -Fairy dark blue (Paulina) -Fairy light pink (Paulina) -Fairy warm pinks (Paulina) -PaperSnow -Places Abracadabra -Places Abracadabra2 -Places Abracadabra3 -Places alirium -Places Annamaria -Places Astryls Wild -Places Babbage -Places Beach Cay Surreal -Places Beach Cay -Places Bentham -Places Cornfield -Places Cromac -Places Crucible -Places District8 -Places Duskwood -Places Eridu -Places Erie -Places Eugene 2 -Places Eugene BL -Places Greed -Places Greed2 -Places Imagine -Places Kingsport -Places Kunming -Places Las Legunas -Places Legacies -Places Midian -Places Mother -Places Old New York -Places Paris 2 -Places Paris -Places Pathfinder -Places Sand -Places Terre Des Mortes -Places Urbania -Places Wiccan -Places-Embryo -StrawberrySingh.com - Closeups -Sunset Pink (Paulina) -Surreal - Brazil (Paulina) -Surreal - Fire (Paulina) -Surreal - Flirt (Paulina) -Surreal - Night (Paulina) -Surreal - Summer (Paulina) +- Orac - Black fog 1 +- Orac - Black fog 2 +- Orac - Drawing blue +- Orac - Drawing extreme +- Orac - Drawing green +- Orac - Drawing red +- Orac - Drawing underground comic +- Orac - fog +- Orac - gray +- Orac - green +AnaLu - outdoor city night +AnaLutetia - AvatarOpt(2) +AnaLutetia - AvatarOpt2 whiter +AnaLutetia - outdoor +AnaLutetia - Studio Light +AnaLutetia - STUDIO2 +AnaLutetia - STUDIO3 +AnaLutetia-default +AnaLutetia-outdoor2(2) +AnaLutetia +B5-ShadowDancing +CB'%s %Rouge 1 +CB'%s %Rouge 2 +CB'%s %Rouge 3 +CB'%s %Rouge 4 +CB'%s %Rouge 5 +CB'%s %Rouge 6 +Fairy blue (Paulina) +Fairy dark blue (Paulina) +Fairy light pink (Paulina) +Fairy warm pinks (Paulina) +PaperSnow +Places Abracadabra +Places Abracadabra2 +Places Abracadabra3 +Places alirium +Places Annamaria +Places Astryls Wild +Places Babbage +Places Beach Cay Surreal +Places Beach Cay +Places Bentham +Places Cornfield +Places Cromac +Places Crucible +Places District8 +Places Duskwood +Places Eridu +Places Erie +Places Eugene 2 +Places Eugene BL +Places Greed +Places Greed2 +Places Imagine +Places Kingsport +Places Kunming +Places Las Legunas +Places Legacies +Places Midian +Places Mother +Places Old New York +Places Paris 2 +Places Paris +Places Pathfinder +Places Sand +Places Terre Des Mortes +Places Urbania +Places Wiccan +Places-Embryo +StrawberrySingh.com - Closeups +Sunset Pink (Paulina) +Surreal - Brazil (Paulina) +Surreal - Fire (Paulina) +Surreal - Flirt (Paulina) +Surreal - Night (Paulina) +Surreal - Summer (Paulina) wastelands \ No newline at end of file diff --git a/indra/newview/app_settings/windlight/water/Blacknight%20Water.xml b/indra/newview/app_settings/windlight/water/Blacknight%20Water.xml index 26b51fa31..e1eec0610 100644 --- a/indra/newview/app_settings/windlight/water/Blacknight%20Water.xml +++ b/indra/newview/app_settings/windlight/water/Blacknight%20Water.xml @@ -1,43 +1,43 @@ - - - blurMultiplier - 0.13400000333786011 - fresnelOffset - 0.53999996185302734 - fresnelScale - 0.61000001430511475 - normScale - - 5.8000001907348633 - 1.7000000476837158 - 5.5 - - normalMap - 822ded49-9a6c-f61c-cb89-6df54f42cdf4 - scaleAbove - 0.079999998211860657 - scaleBelow - 0.39999997615814209 - underWaterFogMod - 1 - waterFogColor - - 0.019683837890625 - 0.027191162109375 - 0.027191162109375 - 1 - - waterFogDensity - 59.714115142822266 - wave1Dir - - 0.099999904632568359 - -0.3600001335144043 - - wave2Dir - - 0.099999904632568359 - -0.67000001668930054 - - - + + + blurMultiplier + 0.13400000333786011 + fresnelOffset + 0.53999996185302734 + fresnelScale + 0.61000001430511475 + normScale + + 5.8000001907348633 + 1.7000000476837158 + 5.5 + + normalMap + 822ded49-9a6c-f61c-cb89-6df54f42cdf4 + scaleAbove + 0.079999998211860657 + scaleBelow + 0.39999997615814209 + underWaterFogMod + 1 + waterFogColor + + 0.019683837890625 + 0.027191162109375 + 0.027191162109375 + 1 + + waterFogDensity + 59.714115142822266 + wave1Dir + + 0.099999904632568359 + -0.3600001335144043 + + wave2Dir + + 0.099999904632568359 + -0.67000001668930054 + + + diff --git a/indra/newview/ascentprefschat.cpp b/indra/newview/ascentprefschat.cpp index 5960024bd..d368e07a8 100644 --- a/indra/newview/ascentprefschat.cpp +++ b/indra/newview/ascentprefschat.cpp @@ -96,6 +96,7 @@ LLPrefsAscentChat::LLPrefsAscentChat() childSetEnabled("reset_antispam", started); childSetCommitCallback("reset_antispam", onCommitResetAS, this); + childSetCommitCallback("enable_as", onCommitEnableAS, this); childSetCommitCallback("antispam_checkbox", onCommitDialogBlock, this); childSetCommitCallback("KeywordsOn", onCommitKeywords, this); @@ -250,6 +251,20 @@ void LLPrefsAscentChat::onCommitResetAS(LLUICtrl*, void*) NACLAntiSpamRegistry::purgeAllQueues(); } +//static +void LLPrefsAscentChat::onCommitEnableAS(LLUICtrl* ctrl, void* user_data) +{ + LLPrefsAscentChat* self = (LLPrefsAscentChat*)user_data; + bool enabled = ctrl->getValue().asBoolean(); + self->childSetEnabled("spammsg_checkbox", enabled); + self->childSetEnabled("antispamtime", enabled); + self->childSetEnabled("antispamamount", enabled); + self->childSetEnabled("antispamsoundmulti", enabled); + self->childSetEnabled("antispamsoundpreloadmulti", enabled); + self->childSetEnabled("antispamnewlines", enabled); + self->childSetEnabled("Notify On Spam", enabled); +} + //static void LLPrefsAscentChat::onCommitDialogBlock(LLUICtrl* ctrl, void* user_data) { @@ -344,6 +359,7 @@ void LLPrefsAscentChat::refreshValues() mIMResponseText = gSavedPerAccountSettings.getString("AscentInstantMessageResponse"); //Spam -------------------------------------------------------------------------------- + mEnableAS = gSavedSettings.getBOOL("AntiSpamEnabled"); mGlobalQueue = gSavedSettings.getBOOL("_NACL_AntiSpamGlobalQueue"); mChatSpamCount = gSavedSettings.getU32("_NACL_AntiSpamAmount"); mChatSpamTime = gSavedSettings.getU32("_NACL_AntiSpamTime"); @@ -404,6 +420,15 @@ void LLPrefsAscentChat::refresh() childSetText("im_response", wstring_to_utf8str(auto_response)); //Antispam ------------------------------------------------------------------------ + // sensitivity tuners + childSetEnabled("spammsg_checkbox", mEnableAS); + childSetEnabled("antispamtime", mEnableAS); + childSetEnabled("antispamamount", mEnableAS); + childSetEnabled("antispamsoundmulti", mEnableAS); + childSetEnabled("antispamsoundpreloadmulti", mEnableAS); + childSetEnabled("antispamnewlines", mEnableAS); + childSetEnabled("Notify On Spam", mEnableAS); + // dialog blocking tuners childSetEnabled("Block All Dialogs From", !mBlockDialogSpam); childSetEnabled("Alerts", !mBlockDialogSpam); childSetEnabled("Friendship Offers", !mBlockDialogSpam); @@ -549,6 +574,7 @@ void LLPrefsAscentChat::cancel() gSavedPerAccountSettings.setString("AscentInstantMessageResponse", mIMResponseText); //Spam -------------------------------------------------------------------------------- + gSavedSettings.setBOOL("AntiSpamEnabled", mEnableAS); gSavedSettings.setBOOL("_NACL_AntiSpamGlobalQueue", mGlobalQueue); gSavedSettings.setU32("_NACL_AntiSpamAmount", mChatSpamCount); gSavedSettings.setU32("_NACL_AntiSpamTime", mChatSpamTime); diff --git a/indra/newview/ascentprefschat.h b/indra/newview/ascentprefschat.h index 936646164..661ddc4f6 100644 --- a/indra/newview/ascentprefschat.h +++ b/indra/newview/ascentprefschat.h @@ -57,6 +57,7 @@ protected: static void onCommitTimeDate(LLUICtrl* ctrl, void *userdata); static void onCommitAutoResponse(LLUICtrl* ctrl, void* user_data); static void onCommitResetAS(LLUICtrl*,void*); + static void onCommitEnableAS(LLUICtrl*, void*); static void onCommitDialogBlock(LLUICtrl*, void*); static void onCommitKeywords(LLUICtrl* ctrl, void* user_data); @@ -86,6 +87,7 @@ protected: std::string mIMResponseText; //Spam -------------------------------------------------------------------------------- + BOOL mEnableAS; BOOL mGlobalQueue; U32 mChatSpamCount; U32 mChatSpamTime; diff --git a/indra/newview/ascentprefssys.cpp b/indra/newview/ascentprefssys.cpp index 684a2fb0a..64f423dec 100644 --- a/indra/newview/ascentprefssys.cpp +++ b/indra/newview/ascentprefssys.cpp @@ -298,6 +298,7 @@ void LLPrefsAscentSys::refreshValues() mPrivateLookAt = gSavedSettings.getBOOL("PrivateLookAt"); mShowLookAt = gSavedSettings.getBOOL("AscentShowLookAt"); mQuietSnapshotsToDisk = gSavedSettings.getBOOL("QuietSnapshotsToDisk"); + mDetachBridge = gSavedSettings.getBOOL("SGDetachBridge"); mRevokePermsOnStandUp = gSavedSettings.getBOOL("RevokePermsOnStandUp"); mDisableClickSit = gSavedSettings.getBOOL("DisableClickSit"); mDisplayScriptJumps = gSavedSettings.getBOOL("AscentDisplayTotalScriptJumps"); @@ -445,6 +446,7 @@ void LLPrefsAscentSys::cancel() gSavedSettings.setBOOL("PrivateLookAt", mPrivateLookAt); gSavedSettings.setBOOL("AscentShowLookAt", mShowLookAt); gSavedSettings.setBOOL("QuietSnapshotsToDisk", mQuietSnapshotsToDisk); + gSavedSettings.setBOOL("SGDetachBridge", mDetachBridge); gSavedSettings.setBOOL("RevokePermsOnStandUp", mRevokePermsOnStandUp); gSavedSettings.setBOOL("DisableClickSit", mDisableClickSit); gSavedSettings.setBOOL("AscentDisplayTotalScriptJumps", mDisplayScriptJumps); diff --git a/indra/newview/ascentprefssys.h b/indra/newview/ascentprefssys.h index deb0b6a3f..3b233bb28 100644 --- a/indra/newview/ascentprefssys.h +++ b/indra/newview/ascentprefssys.h @@ -99,6 +99,7 @@ protected: BOOL mPrivateLookAt; BOOL mShowLookAt; BOOL mQuietSnapshotsToDisk; + BOOL mDetachBridge; BOOL mRevokePermsOnStandUp; BOOL mDisableClickSit; BOOL mDisplayScriptJumps; diff --git a/indra/newview/floatersculptpreview.cpp b/indra/newview/floatersculptpreview.cpp deleted file mode 100644 index cc8706e5c..000000000 --- a/indra/newview/floatersculptpreview.cpp +++ /dev/null @@ -1,893 +0,0 @@ -/** - * @file LLFloaterSculptPreview.cpp - * @brief LLFloaterSculptPreview class implementation - * - * $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 "floatersculptpreview.h" - -#include "llimagebmp.h" -#include "llimagetga.h" -#include "llimagejpeg.h" -#include "llimagepng.h" - -#include "llagent.h" -#include "llbutton.h" -#include "llcombobox.h" -#include "lldrawable.h" -#include "lldrawpoolavatar.h" -#include "llrender.h" -#include "llface.h" -#include "llfocusmgr.h" -#include "lltextbox.h" -#include "lltoolmgr.h" -#include "llui.h" -#include "llviewercamera.h" -#include "llviewerwindow.h" -#include "llvoavatar.h" -#include "pipeline.h" -#include "lluictrlfactory.h" -#include "llviewershadermgr.h" -#include "llviewertexturelist.h" -#include "llstring.h" -#include "llviewercontrol.h" - -//static -S32 LLFloaterSculptPreview::sUploadAmount = 10; - -const S32 PREVIEW_BORDER_WIDTH = 2; -const S32 PREVIEW_RESIZE_HANDLE_SIZE = S32(RESIZE_HANDLE_WIDTH * OO_SQRT2) + PREVIEW_BORDER_WIDTH; -const S32 PREVIEW_HPAD = PREVIEW_RESIZE_HANDLE_SIZE; -const S32 PREF_BUTTON_HEIGHT = 0; -const S32 PREVIEW_TEXTURE_HEIGHT = 512; - - -//----------------------------------------------------------------------------- -// LLFloaterSculptPreview() -//----------------------------------------------------------------------------- -LLFloaterSculptPreview::LLFloaterSculptPreview(LLImageRaw* src) : - //LLFloaterNameDesc(filename), - mAvatarPreview(NULL), - mSculptedPreview(NULL) -{ - mLastMouseX = 0; - mLastMouseY = 0; - mImagep = NULL ; - mRawImagep = src; -} - -LLFloaterSculptPreview* LLFloaterSculptPreview::show(LLImageRaw* src) -{ - LLFloaterSculptPreview* floaterp = new LLFloaterSculptPreview(src); - - llinfos << (floaterp->mRawImagep.notNull() ? "has raw image" : "no raw image") << llendl; - //floaterp->loadImage(src); - // Builds and adds to gFloaterView - LLUICtrlFactory::getInstance()->buildFloater(floaterp, "floater_sculpt_preview.xml"); - - gFloaterView->addChild(floaterp); - floaterp->open(); /*Flawfinder: ignore*/ - - gFloaterView->adjustToFitScreen(floaterp, FALSE); - - llinfos << "build and adjusted" << llendl; - return floaterp; - -} - -//----------------------------------------------------------------------------- -// postBuild() -//----------------------------------------------------------------------------- -BOOL LLFloaterSculptPreview::postBuild() -{ - childSetLabelArg("ok_btn", "[AMOUNT]", llformat("%d",sUploadAmount)); - - LLCtrlSelectionInterface* iface = childGetSelectionInterface("clothing_type_combo"); - if (iface) - { - iface->selectFirstItem(); - } - childSetCommitCallback("clothing_type_combo", onPreviewTypeCommit, this); - - mPreviewRect.set(PREVIEW_HPAD, - PREVIEW_TEXTURE_HEIGHT, - getRect().getWidth() - PREVIEW_HPAD, - PREVIEW_HPAD + PREF_BUTTON_HEIGHT + PREVIEW_HPAD); - mPreviewImageRect.set(0.f, 1.f, 1.f, 0.f); - - childHide("bad_image_text"); - - if (mRawImagep.notNull() && gAgent.getRegion() != NULL) - { - mAvatarPreview = new LLPreviewAvatar(256, 256); - mAvatarPreview->setPreviewTarget("mPelvis", "mUpperBodyMesh0", mRawImagep, 2.f, FALSE); - - mSculptedPreview = new LLPreviewSculpted(256, 256); - mSculptedPreview->setPreviewTarget(mRawImagep, 2.0f); - - if (mRawImagep->getWidth() * mRawImagep->getHeight () <= LL_IMAGE_REZ_LOSSLESS_CUTOFF * LL_IMAGE_REZ_LOSSLESS_CUTOFF) - childEnable("lossless_check"); - - childSetValue("temp_check",FALSE); - } - else - { - mAvatarPreview = NULL; - mSculptedPreview = NULL; - childShow("bad_image_text"); - childDisable("clothing_type_combo"); - childDisable("ok_btn"); - } - - return TRUE; -} - -//----------------------------------------------------------------------------- -// LLFloaterSculptPreview() -//----------------------------------------------------------------------------- -LLFloaterSculptPreview::~LLFloaterSculptPreview() -{ - clearAllPreviewTextures(); - - mRawImagep = NULL; - mAvatarPreview = NULL; - mSculptedPreview = NULL; - - mImagep = NULL ; -} - -//static -//----------------------------------------------------------------------------- -// onPreviewTypeCommit() -//----------------------------------------------------------------------------- -void LLFloaterSculptPreview::onPreviewTypeCommit(LLUICtrl* ctrl, void* userdata) -{ - LLFloaterSculptPreview *fp =(LLFloaterSculptPreview *)userdata; - - if (!fp->mAvatarPreview || !fp->mSculptedPreview) - { - return; - } - - S32 which_mode = 0; - - LLCtrlSelectionInterface* iface = fp->childGetSelectionInterface("clothing_type_combo"); - if (iface) - { - which_mode = iface->getFirstSelectedIndex(); - } - - switch(which_mode) - { - case 0: - break; - case 1: - fp->mAvatarPreview->setPreviewTarget("mSkull", "mHairMesh0", fp->mRawImagep, 0.4f, FALSE); - break; - case 2: - fp->mAvatarPreview->setPreviewTarget("mSkull", "mHeadMesh0", fp->mRawImagep, 0.4f, FALSE); - break; - case 3: - fp->mAvatarPreview->setPreviewTarget("mChest", "mUpperBodyMesh0", fp->mRawImagep, 1.0f, FALSE); - break; - case 4: - fp->mAvatarPreview->setPreviewTarget("mKneeLeft", "mLowerBodyMesh0", fp->mRawImagep, 1.2f, FALSE); - break; - case 5: - fp->mAvatarPreview->setPreviewTarget("mSkull", "mHeadMesh0", fp->mRawImagep, 0.4f, TRUE); - break; - case 6: - fp->mAvatarPreview->setPreviewTarget("mChest", "mUpperBodyMesh0", fp->mRawImagep, 1.2f, TRUE); - break; - case 7: - fp->mAvatarPreview->setPreviewTarget("mKneeLeft", "mLowerBodyMesh0", fp->mRawImagep, 1.2f, TRUE); - break; - case 8: - fp->mAvatarPreview->setPreviewTarget("mKneeLeft", "mSkirtMesh0", fp->mRawImagep, 1.3f, FALSE); - break; - case 9: - fp->mSculptedPreview->setPreviewTarget(fp->mRawImagep, 2.0f); - break; - default: - break; - } - - fp->mAvatarPreview->refresh(); - fp->mSculptedPreview->refresh(); -} - - -//----------------------------------------------------------------------------- -// clearAllPreviewTextures() -//----------------------------------------------------------------------------- -void LLFloaterSculptPreview::clearAllPreviewTextures() -{ - if (mAvatarPreview) - { - mAvatarPreview->clearPreviewTexture("mHairMesh0"); - mAvatarPreview->clearPreviewTexture("mUpperBodyMesh0"); - mAvatarPreview->clearPreviewTexture("mLowerBodyMesh0"); - mAvatarPreview->clearPreviewTexture("mHeadMesh0"); - mAvatarPreview->clearPreviewTexture("mUpperBodyMesh0"); - mAvatarPreview->clearPreviewTexture("mLowerBodyMesh0"); - mAvatarPreview->clearPreviewTexture("mSkirtMesh0"); - } -} - -//----------------------------------------------------------------------------- -// draw() -//----------------------------------------------------------------------------- -void LLFloaterSculptPreview::draw() -{ - LLFloater::draw(); - LLRect r = getRect(); - - if (mRawImagep.notNull()) - { - LLCtrlSelectionInterface* iface = childGetSelectionInterface("clothing_type_combo"); - U32 selected = 0; - if (iface) - selected = iface->getFirstSelectedIndex(); - - if (selected <= 0) - { - gl_rect_2d_checkerboard(calcScreenRect(),mPreviewRect); - LLGLDisable gls_alpha(GL_ALPHA_TEST); - - if(mImagep.notNull()) - { - gGL.getTexUnit(0)->bindManual(LLTexUnit::TT_TEXTURE, mImagep->getTexName()); - } - else - { - mImagep = LLViewerTextureManager::getLocalTexture(mRawImagep.get(), FALSE) ; - - gGL.getTexUnit(0)->unbind(mImagep->getTarget()) ; - gGL.getTexUnit(0)->bindManual(LLTexUnit::TT_TEXTURE, mImagep->getTexName()); - stop_glerror(); - - gGL.getTexUnit(0)->setTextureFilteringOption(LLTexUnit::TFO_BILINEAR); - - gGL.getTexUnit(0)->setTextureAddressMode(LLTexUnit::TAM_CLAMP); - if (mAvatarPreview) - { - mAvatarPreview->setTexture(mImagep->getTexName()); - mSculptedPreview->setTexture(mImagep->getTexName()); - } - } - - gGL.color3f(1.f, 1.f, 1.f); - gGL.begin( LLRender::QUADS ); - { - gGL.texCoord2f(mPreviewImageRect.mLeft, mPreviewImageRect.mTop); - gGL.vertex2i(PREVIEW_HPAD, PREVIEW_TEXTURE_HEIGHT); - gGL.texCoord2f(mPreviewImageRect.mLeft, mPreviewImageRect.mBottom); - gGL.vertex2i(PREVIEW_HPAD, PREVIEW_HPAD + PREF_BUTTON_HEIGHT + PREVIEW_HPAD); - gGL.texCoord2f(mPreviewImageRect.mRight, mPreviewImageRect.mBottom); - gGL.vertex2i(r.getWidth() - PREVIEW_HPAD, PREVIEW_HPAD + PREF_BUTTON_HEIGHT + PREVIEW_HPAD); - gGL.texCoord2f(mPreviewImageRect.mRight, mPreviewImageRect.mTop); - gGL.vertex2i(r.getWidth() - PREVIEW_HPAD, PREVIEW_TEXTURE_HEIGHT); - } - gGL.end(); - - gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); - - stop_glerror(); - } - else - { - if ((mAvatarPreview) && (mSculptedPreview)) - { - gGL.color3f(1.f, 1.f, 1.f); - - if (selected == 9) - { - gGL.getTexUnit(0)->bind(mSculptedPreview); - } - else - { - gGL.getTexUnit(0)->bind(mAvatarPreview); - } - - gGL.begin( LLRender::QUADS ); - { - gGL.texCoord2f(0.f, 1.f); - gGL.vertex2i(PREVIEW_HPAD, PREVIEW_TEXTURE_HEIGHT); - gGL.texCoord2f(0.f, 0.f); - gGL.vertex2i(PREVIEW_HPAD, PREVIEW_HPAD + PREF_BUTTON_HEIGHT + PREVIEW_HPAD); - gGL.texCoord2f(1.f, 0.f); - gGL.vertex2i(r.getWidth() - PREVIEW_HPAD, PREVIEW_HPAD + PREF_BUTTON_HEIGHT + PREVIEW_HPAD); - gGL.texCoord2f(1.f, 1.f); - gGL.vertex2i(r.getWidth() - PREVIEW_HPAD, PREVIEW_TEXTURE_HEIGHT); - } - gGL.end(); - - gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); - } - } - } -} - -//----------------------------------------------------------------------------- -// handleMouseDown() -//----------------------------------------------------------------------------- -BOOL LLFloaterSculptPreview::handleMouseDown(S32 x, S32 y, MASK mask) -{ - if (mPreviewRect.pointInRect(x, y)) - { - bringToFront( x, y ); - gFocusMgr.setMouseCapture(this); - gViewerWindow->hideCursor(); - mLastMouseX = x; - mLastMouseY = y; - return TRUE; - } - - return LLFloater::handleMouseDown(x, y, mask); -} - -//----------------------------------------------------------------------------- -// handleMouseUp() -//----------------------------------------------------------------------------- -BOOL LLFloaterSculptPreview::handleMouseUp(S32 x, S32 y, MASK mask) -{ - gFocusMgr.setMouseCapture(FALSE); - gViewerWindow->showCursor(); - return LLFloater::handleMouseUp(x, y, mask); -} - -//----------------------------------------------------------------------------- -// handleHover() -//----------------------------------------------------------------------------- -BOOL LLFloaterSculptPreview::handleHover(S32 x, S32 y, MASK mask) -{ - MASK local_mask = mask & ~MASK_ALT; - - if (mAvatarPreview && hasMouseCapture()) - { - if (local_mask == MASK_PAN) - { - // pan here - LLCtrlSelectionInterface* iface = childGetSelectionInterface("clothing_type_combo"); - if (iface && iface->getFirstSelectedIndex() <= 0) - { - mPreviewImageRect.translate((F32)(x - mLastMouseX) * -0.005f * mPreviewImageRect.getWidth(), - (F32)(y - mLastMouseY) * -0.005f * mPreviewImageRect.getHeight()); - } - else - { - mAvatarPreview->pan((F32)(x - mLastMouseX) * -0.005f, (F32)(y - mLastMouseY) * -0.005f); - mSculptedPreview->pan((F32)(x - mLastMouseX) * -0.005f, (F32)(y - mLastMouseY) * -0.005f); - } - } - else if (local_mask == MASK_ORBIT) - { - F32 yaw_radians = (F32)(x - mLastMouseX) * -0.01f; - F32 pitch_radians = (F32)(y - mLastMouseY) * 0.02f; - - mAvatarPreview->rotate(yaw_radians, pitch_radians); - mSculptedPreview->rotate(yaw_radians, pitch_radians); - } - else - { - LLCtrlSelectionInterface* iface = childGetSelectionInterface("clothing_type_combo"); - if (iface && iface->getFirstSelectedIndex() <= 0) - { - F32 zoom_amt = (F32)(y - mLastMouseY) * -0.002f; - mPreviewImageRect.stretch(zoom_amt); - } - else - { - F32 yaw_radians = (F32)(x - mLastMouseX) * -0.01f; - F32 zoom_amt = (F32)(y - mLastMouseY) * 0.02f; - - mAvatarPreview->rotate(yaw_radians, 0.f); - mAvatarPreview->zoom(zoom_amt); - mSculptedPreview->rotate(yaw_radians, 0.f); - mSculptedPreview->zoom(zoom_amt); - } - } - - LLCtrlSelectionInterface* iface = childGetSelectionInterface("clothing_type_combo"); - if (iface && iface->getFirstSelectedIndex() <= 0) - { - if (mPreviewImageRect.getWidth() > 1.f) - { - mPreviewImageRect.stretch((1.f - mPreviewImageRect.getWidth()) * 0.5f); - } - else if (mPreviewImageRect.getWidth() < 0.1f) - { - mPreviewImageRect.stretch((0.1f - mPreviewImageRect.getWidth()) * 0.5f); - } - - if (mPreviewImageRect.getHeight() > 1.f) - { - mPreviewImageRect.stretch((1.f - mPreviewImageRect.getHeight()) * 0.5f); - } - else if (mPreviewImageRect.getHeight() < 0.1f) - { - mPreviewImageRect.stretch((0.1f - mPreviewImageRect.getHeight()) * 0.5f); - } - - if (mPreviewImageRect.mLeft < 0.f) - { - mPreviewImageRect.translate(-mPreviewImageRect.mLeft, 0.f); - } - else if (mPreviewImageRect.mRight > 1.f) - { - mPreviewImageRect.translate(1.f - mPreviewImageRect.mRight, 0.f); - } - - if (mPreviewImageRect.mBottom < 0.f) - { - mPreviewImageRect.translate(0.f, -mPreviewImageRect.mBottom); - } - else if (mPreviewImageRect.mTop > 1.f) - { - mPreviewImageRect.translate(0.f, 1.f - mPreviewImageRect.mTop); - } - } - else - { - mAvatarPreview->refresh(); - mSculptedPreview->refresh(); - } - - LLUI::setMousePositionLocal(this, mLastMouseX, mLastMouseY); - } - - if (!mPreviewRect.pointInRect(x, y) || !mAvatarPreview || !mSculptedPreview) - { - return LLFloater::handleHover(x, y, mask); - } - else if (local_mask == MASK_ORBIT) - { - gViewerWindow->setCursor(UI_CURSOR_TOOLCAMERA); - } - else if (local_mask == MASK_PAN) - { - gViewerWindow->setCursor(UI_CURSOR_TOOLPAN); - } - else - { - gViewerWindow->setCursor(UI_CURSOR_TOOLZOOMIN); - } - - return TRUE; -} - -//----------------------------------------------------------------------------- -// handleScrollWheel() -//----------------------------------------------------------------------------- -BOOL LLFloaterSculptPreview::handleScrollWheel(S32 x, S32 y, S32 clicks) -{ - if (mPreviewRect.pointInRect(x, y) && mAvatarPreview) - { - mAvatarPreview->zoom((F32)clicks * -0.2f); - mAvatarPreview->refresh(); - - mSculptedPreview->zoom((F32)clicks * -0.2f); - mSculptedPreview->refresh(); - } - - return TRUE; -} - -//----------------------------------------------------------------------------- -// onMouseCaptureLost() -//----------------------------------------------------------------------------- -// static -void LLFloaterSculptPreview::onMouseCaptureLostImagePreview(LLMouseHandler* handler) -{ - gViewerWindow->showCursor(); -} - - -//----------------------------------------------------------------------------- -// LLPreviewAvatar -//----------------------------------------------------------------------------- -LLPreviewAvatar::LLPreviewAvatar(S32 width, S32 height) : LLViewerDynamicTexture(width, height, 3, ORDER_MIDDLE, FALSE) -{ - mNeedsUpdate = TRUE; - mTargetJoint = NULL; - mTargetMesh = NULL; - mCameraDistance = 0.f; - mCameraYaw = 0.f; - mCameraPitch = 0.f; - mCameraZoom = 1.f; - - mDummyAvatar = (LLVOAvatar*)gObjectList.createObjectViewer(LL_PCODE_LEGACY_AVATAR, gAgent.getRegion()); - mDummyAvatar->createDrawable(&gPipeline); - mDummyAvatar->mIsDummy = TRUE; - mDummyAvatar->mSpecialRenderMode = 2; - mDummyAvatar->setPositionAgent(LLVector3::zero); - mDummyAvatar->slamPosition(); - mDummyAvatar->updateJointLODs(); - mDummyAvatar->updateGeometry(mDummyAvatar->mDrawable); - // gPipeline.markVisible(mDummyAvatar->mDrawable, *LLViewerCamera::getInstance()); - - mTextureName = 0; -} - - -LLPreviewAvatar::~LLPreviewAvatar() -{ - mDummyAvatar->markDead(); -} - - -void LLPreviewAvatar::setPreviewTarget(const std::string& joint_name, const std::string& mesh_name, LLImageRaw* imagep, F32 distance, BOOL male) -{ - mTargetJoint = mDummyAvatar->mRoot.findJoint(joint_name); - // clear out existing test mesh - if (mTargetMesh) - { - mTargetMesh->setTestTexture(0); - } - - if (male) - { - mDummyAvatar->setVisualParamWeight( "male", 1.f ); - mDummyAvatar->updateVisualParams(); - mDummyAvatar->updateGeometry(mDummyAvatar->mDrawable); - } - else - { - mDummyAvatar->setVisualParamWeight( "male", 0.f ); - mDummyAvatar->updateVisualParams(); - mDummyAvatar->updateGeometry(mDummyAvatar->mDrawable); - } - mDummyAvatar->mRoot.setVisible(FALSE, TRUE); - - mTargetMesh = (LLViewerJointMesh*)mDummyAvatar->mRoot.findJoint(mesh_name); - mTargetMesh->setTestTexture(mTextureName); - mTargetMesh->setVisible(TRUE, FALSE); - mCameraDistance = distance; - mCameraZoom = 1.f; - mCameraPitch = 0.f; - mCameraYaw = 0.f; - mCameraOffset.clearVec(); -} - -//----------------------------------------------------------------------------- -// clearPreviewTexture() -//----------------------------------------------------------------------------- -void LLPreviewAvatar::clearPreviewTexture(const std::string& mesh_name) -{ - if (mDummyAvatar) - { - LLViewerJointMesh *mesh = (LLViewerJointMesh*)mDummyAvatar->mRoot.findJoint(mesh_name); - // clear out existing test mesh - if (mesh) - { - mesh->setTestTexture(0); - } - } -} - -//----------------------------------------------------------------------------- -// update() -//----------------------------------------------------------------------------- -BOOL LLPreviewAvatar::render() -{ - mNeedsUpdate = FALSE; - LLVOAvatar* avatarp = mDummyAvatar; - - gGL.matrixMode(LLRender::MM_PROJECTION); - gGL.pushMatrix(); - gGL.loadIdentity(); - gGL.ortho(0.0f, mFullWidth, 0.0f, mFullHeight, -1.0f, 1.0f); - - gGL.matrixMode(LLRender::MM_MODELVIEW); - gGL.pushMatrix(); - gGL.loadIdentity(); - - LLGLSUIDefault def; - gGL.color4f(0.15f, 0.2f, 0.3f, 1.f); - - if (LLGLSLShader::sNoFixedFunction) - { - gUIProgram.bind(); - } - - gl_rect_2d_simple( mFullWidth, mFullHeight ); - - gGL.matrixMode(LLRender::MM_PROJECTION); - gGL.popMatrix(); - - gGL.matrixMode(LLRender::MM_MODELVIEW); - gGL.popMatrix(); - - gGL.flush(); - LLVector3 target_pos = mTargetJoint->getWorldPosition(); - - LLQuaternion camera_rot = LLQuaternion(mCameraPitch, LLVector3::y_axis) * - LLQuaternion(mCameraYaw, LLVector3::z_axis); - - LLQuaternion av_rot = avatarp->mPelvisp->getWorldRotation() * camera_rot; - LLViewerCamera::getInstance()->setOriginAndLookAt( - target_pos + ((LLVector3(mCameraDistance, 0.f, 0.f) + mCameraOffset) * av_rot), // camera - LLVector3::z_axis, // up - target_pos + (mCameraOffset * av_rot) ); // point of interest - - stop_glerror(); - - LLViewerCamera::getInstance()->setAspect((F32)mFullWidth / mFullHeight); - LLViewerCamera::getInstance()->setView(LLViewerCamera::getInstance()->getDefaultFOV() / mCameraZoom); - LLViewerCamera::getInstance()->setPerspective(FALSE, mOrigin.mX, mOrigin.mY, mFullWidth, mFullHeight, FALSE); - - LLVertexBuffer::unbind(); - avatarp->updateLOD(); - - - if (avatarp->mDrawable.notNull()) - { - LLGLDepthTest gls_depth(GL_TRUE, GL_TRUE); - // make sure alpha=0 shows avatar material color - LLGLDisable no_blend(GL_BLEND); - - LLDrawPoolAvatar *avatarPoolp = (LLDrawPoolAvatar *)avatarp->mDrawable->getFace(0)->getPool(); - gPipeline.enableLightsPreview(); - avatarPoolp->renderAvatars(avatarp); // renders only one avatar - } - - gGL.color4f(1,1,1,1); - return TRUE; -} - -//----------------------------------------------------------------------------- -// refresh() -//----------------------------------------------------------------------------- -void LLPreviewAvatar::refresh() -{ - mNeedsUpdate = TRUE; -} - -//----------------------------------------------------------------------------- -// rotate() -//----------------------------------------------------------------------------- -void LLPreviewAvatar::rotate(F32 yaw_radians, F32 pitch_radians) -{ - mCameraYaw = mCameraYaw + yaw_radians; - - mCameraPitch = llclamp(mCameraPitch + pitch_radians, -0.95f * F_PI_BY_TWO, 0.95f * F_PI_BY_TWO); -} - -//----------------------------------------------------------------------------- -// zoom() -//----------------------------------------------------------------------------- -void LLPreviewAvatar::zoom(F32 zoom_amt) -{ - mCameraZoom = llclamp(mCameraZoom + zoom_amt, 0.5f, 20.f); -} - -void LLPreviewAvatar::pan(F32 right, F32 up) -{ - mCameraOffset.mV[VY] = llclamp(mCameraOffset.mV[VY] + right * mCameraDistance / mCameraZoom, -1.f, 1.f); - mCameraOffset.mV[VZ] = llclamp(mCameraOffset.mV[VZ] + up * mCameraDistance / mCameraZoom, -1.f, 1.f); -} - - -//----------------------------------------------------------------------------- -// LLPreviewSculpted -//----------------------------------------------------------------------------- - -LLPreviewSculpted::LLPreviewSculpted(S32 width, S32 height) : LLViewerDynamicTexture(width, height, 3, ORDER_MIDDLE, FALSE) -{ - mNeedsUpdate = TRUE; - mCameraDistance = 0.f; - mCameraYaw = 0.f; - mCameraPitch = 0.f; - mCameraZoom = 1.f; - mTextureName = 0; - - LLVolumeParams volume_params; - volume_params.setType(LL_PCODE_PROFILE_CIRCLE, LL_PCODE_PATH_CIRCLE); - volume_params.setSculptID(LLUUID::null, LL_SCULPT_TYPE_SPHERE); - - F32 const HIGHEST_LOD = 4.0f; - mVolume = new LLVolume(volume_params, HIGHEST_LOD); -} - - -LLPreviewSculpted::~LLPreviewSculpted() -{ -} - - -void LLPreviewSculpted::setPreviewTarget(LLImageRaw* imagep, F32 distance) -{ - mCameraDistance = distance; - mCameraZoom = 1.f; - mCameraPitch = 0.f; - mCameraYaw = 0.f; - mCameraOffset.clearVec(); - - if (imagep) - { - mVolume->sculpt(imagep->getWidth(), imagep->getHeight(), imagep->getComponents(), imagep->getData(), 0); - } - - const LLVolumeFace &vf = mVolume->getVolumeFace(0); - U32 num_indices = vf.mNumIndices; - U32 num_vertices = vf.mNumVertices; - - mVertexBuffer = new LLVertexBuffer(LLVertexBuffer::MAP_VERTEX | LLVertexBuffer::MAP_NORMAL | LLVertexBuffer::MAP_TEXCOORD0, 0); - mVertexBuffer->allocateBuffer(num_vertices, num_indices, TRUE); - - LLStrider vertex_strider; - LLStrider normal_strider; - LLStrider tc_strider; - LLStrider index_strider; - - mVertexBuffer->getVertexStrider(vertex_strider); - mVertexBuffer->getNormalStrider(normal_strider); - mVertexBuffer->getTexCoord0Strider(tc_strider); - mVertexBuffer->getIndexStrider(index_strider); - - // build vertices and normals - LLStrider pos; - pos = (LLVector3*) vf.mPositions; pos.setStride(16); - LLStrider norm; - norm = (LLVector3*) vf.mNormals; norm.setStride(16); - LLStrider tc; - tc = (LLVector2*) vf.mTexCoords; tc.setStride(8); - for (U32 i = 0; (S32)i < num_vertices; i++) - { - *(vertex_strider++) = *pos++; - LLVector3 normal = *norm++; - normal.normalize(); - *(normal_strider++) = normal; - *(tc_strider++) = *tc++; - } - - // build indices - for (U16 i = 0; i < num_indices; i++) - { - *(index_strider++) = vf.mIndices[i]; - } -} - - -//----------------------------------------------------------------------------- -// render() -//----------------------------------------------------------------------------- -BOOL LLPreviewSculpted::render() -{ - mNeedsUpdate = FALSE; - - LLGLSUIDefault def; - LLGLDisable no_blend(GL_BLEND); - LLGLEnable cull(GL_CULL_FACE); - LLGLDepthTest depth(GL_TRUE); - - gGL.matrixMode(LLRender::MM_PROJECTION); - gGL.pushMatrix(); - gGL.loadIdentity(); - gGL.ortho(0.0f, mFullWidth, 0.0f, mFullHeight, -1.0f, 1.0f); - - gGL.matrixMode(LLRender::MM_MODELVIEW); - gGL.pushMatrix(); - gGL.loadIdentity(); - - gGL.color4f(0.15f, 0.2f, 0.3f, 1.f); - - if (LLGLSLShader::sNoFixedFunction) - { - gUIProgram.bind(); - } - - gl_rect_2d_simple( mFullWidth, mFullHeight ); - - gGL.matrixMode(LLRender::MM_PROJECTION); - gGL.popMatrix(); - - gGL.matrixMode(LLRender::MM_MODELVIEW); - gGL.popMatrix(); - - glClear(GL_DEPTH_BUFFER_BIT); - - LLVector3 target_pos(0, 0, 0); - - LLQuaternion camera_rot = LLQuaternion(mCameraPitch, LLVector3::y_axis) * - LLQuaternion(mCameraYaw, LLVector3::z_axis); - - LLQuaternion av_rot = camera_rot; - LLViewerCamera::getInstance()->setOriginAndLookAt( - target_pos + ((LLVector3(mCameraDistance, 0.f, 0.f) + mCameraOffset) * av_rot), // camera - LLVector3::z_axis, // up - target_pos + (mCameraOffset * av_rot) ); // point of interest - - stop_glerror(); - - LLViewerCamera::getInstance()->setAspect((F32) mFullWidth / mFullHeight); - LLViewerCamera::getInstance()->setView(LLViewerCamera::getInstance()->getDefaultFOV() / mCameraZoom); - LLViewerCamera::getInstance()->setPerspective(FALSE, mOrigin.mX, mOrigin.mY, mFullWidth, mFullHeight, FALSE); - - const LLVolumeFace &vf = mVolume->getVolumeFace(0); - U32 num_indices = vf.mNumIndices; - - gPipeline.enableLightsAvatar(); - - if (LLGLSLShader::sNoFixedFunction) - { - gObjectPreviewProgram.bind(); - } - gGL.pushMatrix(); - const F32 SCALE = 1.25f; - gGL.scalef(SCALE, SCALE, SCALE); - const F32 BRIGHTNESS = 0.9f; - gGL.color3f(BRIGHTNESS, BRIGHTNESS, BRIGHTNESS); - - mVertexBuffer->setBuffer(LLVertexBuffer::MAP_VERTEX | LLVertexBuffer::MAP_NORMAL | LLVertexBuffer::MAP_TEXCOORD0); - mVertexBuffer->draw(LLRender::TRIANGLES, num_indices, 0); - - gGL.popMatrix(); - - if (LLGLSLShader::sNoFixedFunction) - { - gObjectPreviewProgram.unbind(); - } - - return TRUE; -} - -//----------------------------------------------------------------------------- -// refresh() -//----------------------------------------------------------------------------- -void LLPreviewSculpted::refresh() -{ - mNeedsUpdate = TRUE; -} - -//----------------------------------------------------------------------------- -// rotate() -//----------------------------------------------------------------------------- -void LLPreviewSculpted::rotate(F32 yaw_radians, F32 pitch_radians) -{ - mCameraYaw = mCameraYaw + yaw_radians; - - mCameraPitch = llclamp(mCameraPitch + pitch_radians, -0.95f * F_PI_BY_TWO, 0.95f * F_PI_BY_TWO); -} - -//----------------------------------------------------------------------------- -// zoom() -//----------------------------------------------------------------------------- -void LLPreviewSculpted::zoom(F32 zoom_amt) -{ - mCameraZoom = llclamp(mCameraZoom + zoom_amt, 0.5f, 20.f); -} - -void LLPreviewSculpted::pan(F32 right, F32 up) -{ - mCameraOffset.mV[VY] = llclamp(mCameraOffset.mV[VY] + right * mCameraDistance / mCameraZoom, -1.f, 1.f); - mCameraOffset.mV[VZ] = llclamp(mCameraOffset.mV[VZ] + up * mCameraDistance / mCameraZoom, -1.f, 1.f); -} diff --git a/indra/newview/floatersculptpreview.h b/indra/newview/floatersculptpreview.h deleted file mode 100644 index 775b84889..000000000 --- a/indra/newview/floatersculptpreview.h +++ /dev/null @@ -1,144 +0,0 @@ -/** - * @file LLFloaterSculptPreview.h - * @brief LLFloaterSculptPreview class definition - * - * $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_LLFloaterSculptPreview_H -#define LL_LLFloaterSculptPreview_H - -#include "llfloater.h" -#include "llresizehandle.h" -#include "lldynamictexture.h" -#include "llquaternion.h" -#include "llviewerobjectlist.h" - -class LLComboBox; -class LLJoint; -class LLViewerJointMesh; -class LLVOAvatar; -class LLTextBox; -class LLVertexBuffer; - -class LLPreviewSculpted : public LLViewerDynamicTexture -{ - public: - LLPreviewSculpted(S32 width, S32 height); - virtual ~LLPreviewSculpted(); - - void setPreviewTarget(LLImageRaw *imagep, F32 distance); - void setTexture(U32 name) { mTextureName = name; } - - BOOL render(); - void refresh(); - void rotate(F32 yaw_radians, F32 pitch_radians); - void zoom(F32 zoom_amt); - void pan(F32 right, F32 up); - virtual BOOL needsRender() { return mNeedsUpdate; } - - protected: - BOOL mNeedsUpdate; - U32 mTextureName; - F32 mCameraDistance; - F32 mCameraYaw; - F32 mCameraPitch; - F32 mCameraZoom; - LLVector3 mCameraOffset; - LLPointer mVolume; - LLPointer mVertexBuffer; -}; - - -class LLPreviewAvatar : public LLViewerDynamicTexture -{ -public: - LLPreviewAvatar(S32 width, S32 height); - virtual ~LLPreviewAvatar(); - - void setPreviewTarget(const std::string& joint_name, const std::string& mesh_name, LLImageRaw* imagep, F32 distance, BOOL male); - void setTexture(U32 name) { mTextureName = name; } - void clearPreviewTexture(const std::string& mesh_name); - - BOOL render(); - void refresh(); - void rotate(F32 yaw_radians, F32 pitch_radians); - void zoom(F32 zoom_amt); - void pan(F32 right, F32 up); - virtual BOOL needsRender() { return mNeedsUpdate; } - -protected: - BOOL mNeedsUpdate; - LLJoint* mTargetJoint; - LLViewerJointMesh* mTargetMesh; - F32 mCameraDistance; - F32 mCameraYaw; - F32 mCameraPitch; - F32 mCameraZoom; - LLVector3 mCameraOffset; - LLPointer mDummyAvatar; - U32 mTextureName; -}; - -class LLFloaterSculptPreview : public LLFloater -{ -public: - LLFloaterSculptPreview(LLImageRaw* src); - virtual ~LLFloaterSculptPreview(); - static LLFloaterSculptPreview* show(LLImageRaw* src); - virtual BOOL postBuild(); - - BOOL handleMouseDown(S32 x, S32 y, MASK mask); - BOOL handleMouseUp(S32 x, S32 y, MASK mask); - BOOL handleHover(S32 x, S32 y, MASK mask); - BOOL handleScrollWheel(S32 x, S32 y, S32 clicks); - - static void onMouseCaptureLostImagePreview(LLMouseHandler*); - static void setUploadAmount(S32 amount) { sUploadAmount = amount; } - - void clearAllPreviewTextures(); - -protected: - static void onPreviewTypeCommit(LLUICtrl*,void*); - void draw(); - bool loadImage(LLImageRaw* src); - - LLPointer mRawImagep; - LLPointer mAvatarPreview; - LLPointer mSculptedPreview; - S32 mLastMouseX; - S32 mLastMouseY; - LLRect mPreviewRect; - LLRectf mPreviewImageRect; - LLPointer mImagep ; - LLViewerObject* tmpvolume; - - static S32 sUploadAmount; -}; - -#endif // LL_LLFloaterSculptPreview_H diff --git a/indra/newview/installers/windows/installer_template.nsi b/indra/newview/installers/windows/installer_template.nsi index 7a426decc..8fa0a943c 100644 --- a/indra/newview/installers/windows/installer_template.nsi +++ b/indra/newview/installers/windows/installer_template.nsi @@ -1,822 +1,822 @@ -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;; secondlife setup.nsi -;; Copyright 2004-2008, Linden Research, Inc. -;; -;; NSIS Unicode 2.38.1 or higher required -;; http://www.scratchpaper.com/ -;; -;; Author: James Cook, Don Kjer, Callum Prentice -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;; Compiler flags -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -SetOverwrite on ; overwrite files -SetCompress auto ; compress iff saves space -SetCompressor /solid /final lzma ; compress whole installer as one block -SetDatablockOptimize off ; only saves us 0.1%, not worth it -XPStyle on ; add an XP manifest to the installer -RequestExecutionLevel admin ; on Vista we must be admin because we write to Program Files - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;;; Project flags -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - -%%VERSION%% - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;; Tweak for different servers/builds (this placeholder is replaced by viewer_manifest.py) -;; For example: -;; !define INSTFLAGS "%(flags)s" -;; !define INSTNAME "SecondLife%(grid_caps)s" -;; !define SHORTCUT "Second Life (%(grid_caps)s)" -;; !define URLNAME "secondlife%(grid)s" -;; !define UNINSTALL_SETTINGS 1 - -%%GRID_VARS%% - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;; - language files - one for each language (or flavor thereof) -;; (these files are in the same place as the nsi template but the python script generates a new nsi file in the -;; application directory so we have to add a path to these include files) -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -!include "%%SOURCE%%\installers\windows\lang_de.nsi" -!include "%%SOURCE%%\installers\windows\lang_en-us.nsi" -!include "%%SOURCE%%\installers\windows\lang_es.nsi" -!include "%%SOURCE%%\installers\windows\lang_fr.nsi" -!include "%%SOURCE%%\installers\windows\lang_ja.nsi" -!include "%%SOURCE%%\installers\windows\lang_it.nsi" -!include "%%SOURCE%%\installers\windows\lang_ko.nsi" -!include "%%SOURCE%%\installers\windows\lang_nl.nsi" -!include "%%SOURCE%%\installers\windows\lang_pt-br.nsi" -!include "%%SOURCE%%\installers\windows\lang_zh.nsi" - -# *TODO: Move these into the language files themselves -LangString LanguageCode ${LANG_GERMAN} "de" -LangString LanguageCode ${LANG_ENGLISH} "en" -LangString LanguageCode ${LANG_SPANISH} "es" -LangString LanguageCode ${LANG_FRENCH} "fr" -LangString LanguageCode ${LANG_JAPANESE} "ja" -LangString LanguageCode ${LANG_ITALIAN} "it" -LangString LanguageCode ${LANG_KOREAN} "ko" -LangString LanguageCode ${LANG_DUTCH} "nl" -LangString LanguageCode ${LANG_PORTUGUESEBR} "pt" -LangString LanguageCode ${LANG_SIMPCHINESE} "zh" - -Name ${VIEWERNAME} - -SubCaption 0 $(LicenseSubTitleSetup) ; override "license agreement" text - -BrandingText "Prepare to Implode!" ; bottom of window text -Icon %%SOURCE%%\installers\windows\install_icon_singularity.ico -UninstallIcon %%SOURCE%%\installers\windows\uninstall_icon_singularity.ico -WindowIcon off ; show our icon in left corner -BGGradient 9090b0 000000 notext -CRCCheck on ; make sure CRC is OK -#InstProgressFlags smooth colored ; new colored smooth look -InstProgressFlags -InstallColors /windows -ShowInstDetails show ; no details, no "show" button -SetOverwrite on ; stomp files by default -AutoCloseWindow true ; after all files install, close window - -InstallDir "$PROGRAMFILES\${INSTNAME}" -InstallDirRegKey HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\${INSTNAME}" "" -DirText $(DirectoryChooseTitle) $(DirectoryChooseSetup) - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;;; Variables -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -Var INSTPROG -Var INSTEXE -Var INSTFLAGS -Var INSTSHORTCUT -Var COMMANDLINE ; command line passed to this installer, set in .onInit -Var SHORTCUT_LANG_PARAM ; "--set InstallLanguage de", passes language to viewer - -;;; Function definitions should go before file includes, because calls to -;;; DLLs like LangDLL trigger an implicit file include, so if that call is at -;;; the end of this script NSIS has to decompress the whole installer before -;;; it can call the DLL function. JC - -!include "FileFunc.nsh" ; For GetParameters, GetOptions -!insertmacro GetParameters -!insertmacro GetOptions - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;;; After install completes, launch app -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -Function .onInstSuccess - Push $R0 # Option value, unused - ${GetOptions} $COMMANDLINE "/AUTOSTART" $R0 - # If parameter was there (no error) just launch - # Otherwise ask - IfErrors label_ask_launch label_launch - -label_ask_launch: - # Don't launch by default when silent - IfSilent label_no_launch - MessageBox MB_YESNO $(InstSuccesssQuestion) \ - IDYES label_launch IDNO label_no_launch - -label_launch: - # Assumes SetOutPath $INSTDIR - Exec '"$INSTDIR\$INSTEXE" $INSTFLAGS $SHORTCUT_LANG_PARAM' -label_no_launch: - Pop $R0 -FunctionEnd - - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -; Make sure we're not on Windows 98 / ME -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -Function CheckWindowsVersion - DetailPrint "Checking Windows version..." - Call GetWindowsVersion - Pop $R0 - ; Just get first two characters, ignore 4.0 part of "NT 4.0" - StrCpy $R0 $R0 2 - ; Blacklist certain OS versions - StrCmp $R0 "95" win_ver_bad - StrCmp $R0 "98" win_ver_bad - StrCmp $R0 "ME" win_ver_bad - StrCmp $R0 "NT" win_ver_bad - Return -win_ver_bad: - MessageBox MB_YESNO $(CheckWindowsVersionMB) IDNO win_ver_abort - Return -win_ver_abort: - Quit -FunctionEnd - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -; Make sure the user can install/uninstall -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -Function CheckIfAdministrator - DetailPrint $(CheckAdministratorInstDP) - UserInfo::GetAccountType - Pop $R0 - StrCmp $R0 "Admin" lbl_is_admin - MessageBox MB_OK $(CheckAdministratorInstMB) - Quit -lbl_is_admin: - Return -FunctionEnd - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;; -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -Function un.CheckIfAdministrator - DetailPrint $(CheckAdministratorUnInstDP) - UserInfo::GetAccountType - Pop $R0 - StrCmp $R0 "Admin" lbl_is_admin - MessageBox MB_OK $(CheckAdministratorUnInstMB) - Quit -lbl_is_admin: - Return -FunctionEnd - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -; Checks to see if the current version has already been installed (according to the registry). -; If it has, allow user to bail out of install process. -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -Function CheckIfAlreadyCurrent - Push $0 - ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "Version" - StrCmp $0 ${VERSION_LONG} 0 DONE - MessageBox MB_OKCANCEL $(CheckIfCurrentMB) /SD IDOK IDOK DONE - Quit - - DONE: - Pop $0 - Return -FunctionEnd - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -; Close the program, if running. Modifies no variables. -; Allows user to bail out of install process. -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -Function CloseSecondLife - Push $0 - FindWindow $0 "Second Life" "" - IntCmp $0 0 DONE - MessageBox MB_OKCANCEL $(CloseSecondLifeInstMB) IDOK CLOSE IDCANCEL CANCEL_INSTALL - - CANCEL_INSTALL: - Quit - - CLOSE: - DetailPrint $(CloseSecondLifeInstDP) - SendMessage $0 16 0 0 - - LOOP: - FindWindow $0 "Second Life" "" - IntCmp $0 0 DONE - Sleep 500 - Goto LOOP - - DONE: - Pop $0 - Return -FunctionEnd - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -; Test our connection to secondlife.com -; Also allows us to count attempted installs by examining web logs. -; *TODO: Return current SL version info and have installer check -; if it is up to date. -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -Function CheckNetworkConnection - Push $0 - Push $1 - Push $2 # Option value for GetOptions - DetailPrint $(CheckNetworkConnectionDP) - ; Look for a tag value from the stub installer, used for statistics - ; to correlate installs. Default to "" if not found on command line. - StrCpy $2 "" - ${GetOptions} $COMMANDLINE "/STUBTAG=" $2 - GetTempFileName $0 - !define HTTP_TIMEOUT 5000 ; milliseconds - ; Don't show secondary progress bar, this will be quick. - NSISdl::download_quiet \ - /TIMEOUT=${HTTP_TIMEOUT} \ - "http://install.secondlife.com/check/?stubtag=$2&version=${VERSION_LONG}" \ - $0 - Pop $1 ; Return value, either "success", "cancel" or an error message - ; MessageBox MB_OK "Download result: $1" - ; Result ignored for now - ; StrCmp $1 "success" +2 - ; DetailPrint "Connection failed: $1" - Delete $0 ; temporary file - Pop $2 - Pop $1 - Pop $0 - Return -FunctionEnd - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -; Delete files in Documents and Settings\\SecondLife\cache -; Delete files in Documents and Settings\All Users\SecondLife\cache -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;Function RemoveCacheFiles -; -;; Delete files in Documents and Settings\\SecondLife -;Push $0 -;Push $1 -;Push $2 -; DetailPrint $(RemoveCacheFilesDP) -; -; StrCpy $0 0 ; Index number used to iterate via EnumRegKey -; -; LOOP: -; EnumRegKey $1 HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList" $0 -; StrCmp $1 "" DONE ; no more users -; -; ReadRegStr $2 HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\$1" "ProfileImagePath" -; StrCmp $2 "" CONTINUE 0 ; "ProfileImagePath" value is missing -; -; ; Required since ProfileImagePath is of type REG_EXPAND_SZ -; ExpandEnvStrings $2 $2 -; -; ; When explicitly uninstalling, everything goes away -; RMDir /r "$2\Application Data\SecondLife\cache" -; -; CONTINUE: -; IntOp $0 $0 + 1 -; Goto LOOP -; DONE: -;Pop $2 -;Pop $1 -;Pop $0 -; -;; Delete files in Documents and Settings\All Users\SecondLife -;Push $0 -; ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" "Common AppData" -; StrCmp $0 "" +2 -; RMDir /r "$0\SecondLife\cache" -;Pop $0 -; -;; Delete filse in C:\Windows\Application Data\SecondLife -;; If the user is running on a pre-NT system, Application Data lives here instead of -;; in Documents and Settings. -;RMDir /r "$WINDIR\Application Data\SecondLife\cache" -; -;FunctionEnd - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;;; Delete the installed shader files -;;; Since shaders are in active development, we'll likely need to shuffle them -;;; around a bit from build to build. This ensures that shaders that we move -;;; or rename in the dev tree don't get left behind in the install. -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -Function RemoveOldShaders - -;; Remove old shader files first so fallbacks will work. see DEV-5663 -RMDir /r "$INSTDIR\app_settings\shaders\*" - -FunctionEnd - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;;; Delete the installed XUI files -;;; We've changed the directory hierarchy for skins, putting all XUI and texture -;;; files under a specific skin directory, i.e. skins/default/xui/en-us as opposed -;;; to skins/xui/en-us. Need to clean up the old path when upgrading -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -Function RemoveOldXUI - -;; remove old XUI and texture files -RmDir /r "$INSTDIR\skins\html" -RmDir /r "$INSTDIR\skins\xui" -RmDir /r "$INSTDIR\skins\textures" -Delete "$INSTDIR\skins\*.txt" - -FunctionEnd - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;;; Remove any releasenotes files. -;;; We are no longer including release notes with the viewer. This will delete -;;; any that were left behind by an older installer. Delete will not fail if -;;; the files do not exist -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -Function RemoveOldReleaseNotes - -;; remove releasenotes.txt file from application directory, and the shortcut -;; from the start menu. -Delete "$SMPROGRAMS\$INSTSHORTCUT\SL Release Notes.lnk" -Delete "$INSTDIR\releasenotes.txt" - -FunctionEnd - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;;; Delete a xui file that causes crash in Silver skin in cases where it was -;;; left behind by an older installer. -;;; See SNOW-348 -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -Function RemoveOldAboutLandSilver - -Delete "$INSTDIR\skins\silver\xui\en-us\floater_about_land.xml" - -FunctionEnd - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -; Delete files in Documents and Settings\\SecondLife -; Delete files in Documents and Settings\All Users\SecondLife -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -Function un.DocumentsAndSettingsFolder - -; Delete files in Documents and Settings\\SecondLife -Push $0 -Push $1 -Push $2 - - DetailPrint "Deleting files in Documents and Settings folder" - - StrCpy $0 0 ; Index number used to iterate via EnumRegKey - - LOOP: - EnumRegKey $1 HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList" $0 - StrCmp $1 "" DONE ; no more users - - ReadRegStr $2 HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\$1" "ProfileImagePath" - StrCmp $2 "" CONTINUE 0 ; "ProfileImagePath" value is missing - - ; Required since ProfileImagePath is of type REG_EXPAND_SZ - ExpandEnvStrings $2 $2 - - ; If uninstalling a normal install remove everything - ; Otherwise (preview/dmz etc) just remove cache - StrCmp $INSTFLAGS "" RM_ALL RM_CACHE - RM_ALL: - RMDir /r "$2\Application Data\SecondLife" - RM_CACHE: - # Local Settings directory is the cache, there is no "cache" subdir - RMDir /r "$2\Local Settings\Application Data\SecondLife" - # Vista version of the same - RMDir /r "$2\AppData\Local\SecondLife" - Delete "$2\Application Data\SecondLife\user_settings\settings_windlight.xml" - - CONTINUE: - IntOp $0 $0 + 1 - Goto LOOP - DONE: - -Pop $2 -Pop $1 -Pop $0 - -; Delete files in Documents and Settings\All Users\SecondLife -Push $0 - ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" "Common AppData" - StrCmp $0 "" +2 - RMDir /r "$0\SecondLife" -Pop $0 - -; Delete filse in C:\Windows\Application Data\SecondLife -; If the user is running on a pre-NT system, Application Data lives here instead of -; in Documents and Settings. -RMDir /r "$WINDIR\Application Data\SecondLife" - -FunctionEnd - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -; Close the program, if running. Modifies no variables. -; Allows user to bail out of uninstall process. -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -Function un.CloseSecondLife - Push $0 - FindWindow $0 "Second Life" "" - IntCmp $0 0 DONE - MessageBox MB_OKCANCEL $(CloseSecondLifeUnInstMB) IDOK CLOSE IDCANCEL CANCEL_UNINSTALL - - CANCEL_UNINSTALL: - Quit - - CLOSE: - DetailPrint $(CloseSecondLifeUnInstDP) - SendMessage $0 16 0 0 - - LOOP: - FindWindow $0 "Second Life" "" - IntCmp $0 0 DONE - Sleep 500 - Goto LOOP - - DONE: - Pop $0 - Return -FunctionEnd - - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -; -; Delete the stored password for the current Windows user -; DEV-10821 -- Unauthorised user can gain access to an SL account after a real user has uninstalled -; -Function un.RemovePassword - -DetailPrint "Removing Second Life password" - -SetShellVarContext current -Delete "$APPDATA\SecondLife\user_settings\password.dat" -SetShellVarContext all - -FunctionEnd - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;;; Delete the installed files -;;; This deletes the uninstall executable, but it works -;;; because it is copied to temp directory before running -;;; -;;; Note: You must list all files here, because we only -;;; want to delete our files, not things users left in the -;;; application directories. -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -Function un.ProgramFiles - -;; Remove mozilla file first so recursive directory deletion doesn't get hung up -Delete "$INSTDIR\app_settings\mozilla\components" - -;; This placeholder is replaced by the complete list of files to uninstall by viewer_manifest.py -%%DELETE_FILES%% - -;; Optional/obsolete files. Delete won't fail if they don't exist. -Delete "$INSTDIR\dronesettings.ini" -Delete "$INSTDIR\message_template.msg" -Delete "$INSTDIR\newview.pdb" -Delete "$INSTDIR\newview.map" -Delete "$INSTDIR\SecondLife.pdb" -Delete "$INSTDIR\SecondLife.map" -Delete "$INSTDIR\comm.dat" -Delete "$INSTDIR\*.glsl" -Delete "$INSTDIR\motions\*.lla" -Delete "$INSTDIR\trial\*.html" -Delete "$INSTDIR\newview.exe" -;; Remove entire help directory -Delete "$INSTDIR\help\Advanced\*" -RMDir "$INSTDIR\help\Advanced" -Delete "$INSTDIR\help\basics\*" -RMDir "$INSTDIR\help\basics" -Delete "$INSTDIR\help\Concepts\*" -RMDir "$INSTDIR\help\Concepts" -Delete "$INSTDIR\help\welcome\*" -RMDir "$INSTDIR\help\welcome" -Delete "$INSTDIR\help\*" -RMDir "$INSTDIR\help" - -Delete "$INSTDIR\uninst.exe" -RMDir "$INSTDIR" - -IfFileExists "$INSTDIR" FOLDERFOUND NOFOLDER - -FOLDERFOUND: - MessageBox MB_YESNO $(DeleteProgramFilesMB) IDNO NOFOLDER - RMDir /r "$INSTDIR" - -NOFOLDER: - -FunctionEnd - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;;; Uninstall settings -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -UninstallText $(UninstallTextMsg) -ShowUninstDetails show - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;;; Uninstall section -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -Section Uninstall - -; Start with some default values. -StrCpy $INSTFLAGS "" -StrCpy $INSTPROG "${INSTNAME}" -StrCpy $INSTEXE "${INSTEXE}" -StrCpy $INSTSHORTCUT "${SHORTCUT}" -Call un.CheckIfAdministrator ; Make sure the user can install/uninstall - -; uninstall for all users (if you change this, change it in the install as well) -SetShellVarContext all - -; Make sure we're not running -Call un.CloseSecondLife - -; Clean up registry keys and subkeys (these should all be !defines somewhere) -DeleteRegKey HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" -DeleteRegKey HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$INSTPROG" - -; Clean up shortcuts -Delete "$SMPROGRAMS\$INSTSHORTCUT\*.*" -RMDir "$SMPROGRAMS\$INSTSHORTCUT" - -Delete "$DESKTOP\$INSTSHORTCUT.lnk" -Delete "$INSTDIR\$INSTSHORTCUT.lnk" -Delete "$INSTDIR\Uninstall $INSTSHORTCUT.lnk" - -; Clean up cache and log files. -; Leave them in-place for non AGNI installs. - -!ifdef UNINSTALL_SETTINGS -Call un.DocumentsAndSettingsFolder -!endif - -; remove stored password on uninstall -Call un.RemovePassword - -Call un.ProgramFiles - -SectionEnd ; end of uninstall section - - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -; (From the NSIS documentation, JC) -; GetWindowsVersion -; -; Based on Yazno's function, http://yazno.tripod.com/powerpimpit/ -; Updated by Joost Verburg -; -; Returns on top of stack -; -; Windows Version (95, 98, ME, NT x.x, 2000, XP, 2003) -; or -; '' (Unknown Windows Version) -; -; Usage: -; Call GetWindowsVersion -; Pop $R0 -; ; at this point $R0 is "NT 4.0" or whatnot -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -Function GetWindowsVersion - - Push $R0 - Push $R1 - - ReadRegStr $R0 HKLM \ - "SOFTWARE\Microsoft\Windows NT\CurrentVersion" CurrentVersion - - IfErrors 0 lbl_winnt - - ; we are not NT - ReadRegStr $R0 HKLM \ - "SOFTWARE\Microsoft\Windows\CurrentVersion" VersionNumber - - StrCpy $R1 $R0 1 - StrCmp $R1 '4' 0 lbl_error - - StrCpy $R1 $R0 3 - - StrCmp $R1 '4.0' lbl_win32_95 - StrCmp $R1 '4.9' lbl_win32_ME lbl_win32_98 - - lbl_win32_95: - StrCpy $R0 '95' - Goto lbl_done - - lbl_win32_98: - StrCpy $R0 '98' - Goto lbl_done - - lbl_win32_ME: - StrCpy $R0 'ME' - Goto lbl_done - - lbl_winnt: - - StrCpy $R1 $R0 1 - - StrCmp $R1 '3' lbl_winnt_x - StrCmp $R1 '4' lbl_winnt_x - - StrCpy $R1 $R0 3 - - StrCmp $R1 '5.0' lbl_winnt_2000 - StrCmp $R1 '5.1' lbl_winnt_XP - StrCmp $R1 '5.2' lbl_winnt_2003 lbl_error - - lbl_winnt_x: - StrCpy $R0 "NT $R0" 6 - Goto lbl_done - - lbl_winnt_2000: - Strcpy $R0 '2000' - Goto lbl_done - - lbl_winnt_XP: - Strcpy $R0 'XP' - Goto lbl_done - - lbl_winnt_2003: - Strcpy $R0 '2003' - Goto lbl_done - - lbl_error: - Strcpy $R0 '' - lbl_done: - - Pop $R1 - Exch $R0 - -FunctionEnd - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;; Note: to add new languages, add a language file include to the list -;; at the top of this file, add an entry to the menu and then add an -;; entry to the language ID selector below -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -Function .onInit - Push $0 - ${GetParameters} $COMMANDLINE ; get our command line - ${GetOptions} $COMMANDLINE "/LANGID=" $0 ; /LANGID=1033 implies US English - ; If no language (error), then proceed - IfErrors lbl_check_silent - ; No error means we got a language, so use it - StrCpy $LANGUAGE $0 - Goto lbl_return - -lbl_check_silent: - ; For silent installs, no language prompt, use default - IfSilent lbl_return - - ; If we currently have a version of SL installed, default to the language of that install - ; Otherwise don't change $LANGUAGE and it will default to the OS UI language. - ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\${INSTNAME}" "InstallerLanguage" - IfErrors lbl_build_menu - StrCpy $LANGUAGE $0 - -lbl_build_menu: - Push "" - # Use separate file so labels can be UTF-16 but we can still merge changes - # into this ASCII file. JC - !include "%%SOURCE%%\installers\windows\language_menu.nsi" - - Push A ; A means auto count languages for the auto count to work the first empty push (Push "") must remain - LangDLL::LangDialog $(InstallerLanguageTitle) $(SelectInstallerLanguage) - Pop $0 - StrCmp $0 "cancel" 0 +2 - Abort - StrCpy $LANGUAGE $0 - - ; save language in registry - WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\${INSTNAME}" "InstallerLanguage" $LANGUAGE -lbl_return: - Pop $0 - Return -FunctionEnd - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -Function un.onInit - ; read language from registry and set for uninstaller - ; Key will be removed on successful uninstall - ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\${INSTNAME}" "InstallerLanguage" - IfErrors lbl_end - StrCpy $LANGUAGE $0 -lbl_end: - Return -FunctionEnd - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;;; MAIN SECTION -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -Section "" ; (default section) - -SetShellVarContext all ; install for all users (if you change this, change it in the uninstall as well) - -; Start with some default values. -StrCpy $INSTFLAGS "${INSTFLAGS}" -StrCpy $INSTPROG "${INSTNAME}" -StrCpy $INSTEXE "${INSTEXE}" -StrCpy $INSTSHORTCUT "${SHORTCUT}" - -Call CheckWindowsVersion ; warn if on Windows 98/ME -Call CheckIfAdministrator ; Make sure the user can install/uninstall -Call CheckIfAlreadyCurrent ; Make sure that we haven't already installed this version -Call CloseSecondLife ; Make sure we're not running -#Call CheckNetworkConnection ; ping secondlife.com - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;;; Don't remove cache files during a regular install, removing the inventory cache on upgrades results in lots of damage to the servers. -;Call RemoveCacheFiles ; Installing over removes potentially corrupted - ; VFS and cache files. - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;;; Need to clean out shader files from previous installs to fix DEV-5663 -Call RemoveOldShaders - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;;; Need to clean out old XUI files that predate skinning -Call RemoveOldXUI - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;;; Clear out old releasenotes.txt files. These are now on the public wiki. -Call RemoveOldReleaseNotes - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;;; Remove an old xui file that should not be in Silver skin -Call RemoveOldAboutLandSilver - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;;; Files -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;; This placeholder is replaced by the complete list of all the files in the installer, by viewer_manifest.py -%%INSTALL_FILES%% - -# Pass the installer's language to the client to use as a default -StrCpy $SHORTCUT_LANG_PARAM "--set InstallLanguage $(LanguageCode)" - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -; Shortcuts in start menu -CreateDirectory "$SMPROGRAMS\$INSTSHORTCUT" -SetOutPath "$INSTDIR" -CreateShortCut "$SMPROGRAMS\$INSTSHORTCUT\$INSTSHORTCUT.lnk" \ - "$INSTDIR\$INSTEXE" "$INSTFLAGS $SHORTCUT_LANG_PARAM" - - -WriteINIStr "$SMPROGRAMS\$INSTSHORTCUT\SL Create Account.url" \ - "InternetShortcut" "URL" \ - "http://www.secondlife.com/registration/" -WriteINIStr "$SMPROGRAMS\$INSTSHORTCUT\SL Your Account.url" \ - "InternetShortcut" "URL" \ - "http://www.secondlife.com/account/" -WriteINIStr "$SMPROGRAMS\$INSTSHORTCUT\SL Scripting Language Help.url" \ - "InternetShortcut" "URL" \ - "http://wiki.secondlife.com/wiki/LSL_Portal" -CreateShortCut "$SMPROGRAMS\$INSTSHORTCUT\Uninstall $INSTSHORTCUT.lnk" \ - '"$INSTDIR\uninst.exe"' '' - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -; Other shortcuts -SetOutPath "$INSTDIR" -CreateShortCut "$DESKTOP\$INSTSHORTCUT.lnk" \ - "$INSTDIR\$INSTEXE" "$INSTFLAGS $SHORTCUT_LANG_PARAM" -CreateShortCut "$INSTDIR\$INSTSHORTCUT.lnk" \ - "$INSTDIR\$INSTEXE" "$INSTFLAGS $SHORTCUT_LANG_PARAM" -CreateShortCut "$INSTDIR\Uninstall $INSTSHORTCUT.lnk" \ - '"$INSTDIR\uninst.exe"' '' - - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -; Write registry -WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "" "$INSTDIR" -WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "Version" "${VERSION_LONG}" -WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "Flags" "$INSTFLAGS" -WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "Shortcut" "$INSTSHORTCUT" -WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "Exe" "$INSTEXE" -WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Uninstall\$INSTPROG" "DisplayName" "$INSTPROG (remove only)" -WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Uninstall\$INSTPROG" "UninstallString" '"$INSTDIR\uninst.exe"' - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -; Write URL registry info -WriteRegStr HKEY_CLASSES_ROOT "${URLNAME}" "(default)" "URL:Second Life" -WriteRegStr HKEY_CLASSES_ROOT "${URLNAME}" "URL Protocol" "" -WriteRegStr HKEY_CLASSES_ROOT "${URLNAME}\DefaultIcon" "" '"$INSTDIR\$INSTEXE"' -;; URL param must be last item passed to viewer, it ignores subsequent params -;; to avoid parameter injection attacks. -WriteRegExpandStr HKEY_CLASSES_ROOT "${URLNAME}\shell\open\command" "" '"$INSTDIR\$INSTEXE" $INSTFLAGS -url "%1"' - -; write out uninstaller -WriteUninstaller "$INSTDIR\uninst.exe" - -; end of default section -SectionEnd - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; EOF ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; secondlife setup.nsi +;; Copyright 2004-2008, Linden Research, Inc. +;; +;; NSIS Unicode 2.38.1 or higher required +;; http://www.scratchpaper.com/ +;; +;; Author: James Cook, Don Kjer, Callum Prentice +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; Compiler flags +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +SetOverwrite on ; overwrite files +SetCompress auto ; compress iff saves space +SetCompressor /solid /final lzma ; compress whole installer as one block +SetDatablockOptimize off ; only saves us 0.1%, not worth it +XPStyle on ; add an XP manifest to the installer +RequestExecutionLevel admin ; on Vista we must be admin because we write to Program Files + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; Project flags +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; + +%%VERSION%% + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; Tweak for different servers/builds (this placeholder is replaced by viewer_manifest.py) +;; For example: +;; !define INSTFLAGS "%(flags)s" +;; !define INSTNAME "SecondLife%(grid_caps)s" +;; !define SHORTCUT "Second Life (%(grid_caps)s)" +;; !define URLNAME "secondlife%(grid)s" +;; !define UNINSTALL_SETTINGS 1 + +%%GRID_VARS%% + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; - language files - one for each language (or flavor thereof) +;; (these files are in the same place as the nsi template but the python script generates a new nsi file in the +;; application directory so we have to add a path to these include files) +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +!include "%%SOURCE%%\installers\windows\lang_de.nsi" +!include "%%SOURCE%%\installers\windows\lang_en-us.nsi" +!include "%%SOURCE%%\installers\windows\lang_es.nsi" +!include "%%SOURCE%%\installers\windows\lang_fr.nsi" +!include "%%SOURCE%%\installers\windows\lang_ja.nsi" +!include "%%SOURCE%%\installers\windows\lang_it.nsi" +!include "%%SOURCE%%\installers\windows\lang_ko.nsi" +!include "%%SOURCE%%\installers\windows\lang_nl.nsi" +!include "%%SOURCE%%\installers\windows\lang_pt-br.nsi" +!include "%%SOURCE%%\installers\windows\lang_zh.nsi" + +# *TODO: Move these into the language files themselves +LangString LanguageCode ${LANG_GERMAN} "de" +LangString LanguageCode ${LANG_ENGLISH} "en" +LangString LanguageCode ${LANG_SPANISH} "es" +LangString LanguageCode ${LANG_FRENCH} "fr" +LangString LanguageCode ${LANG_JAPANESE} "ja" +LangString LanguageCode ${LANG_ITALIAN} "it" +LangString LanguageCode ${LANG_KOREAN} "ko" +LangString LanguageCode ${LANG_DUTCH} "nl" +LangString LanguageCode ${LANG_PORTUGUESEBR} "pt" +LangString LanguageCode ${LANG_SIMPCHINESE} "zh" + +Name ${VIEWERNAME} + +SubCaption 0 $(LicenseSubTitleSetup) ; override "license agreement" text + +BrandingText "Prepare to Implode!" ; bottom of window text +Icon %%SOURCE%%\installers\windows\install_icon_singularity.ico +UninstallIcon %%SOURCE%%\installers\windows\uninstall_icon_singularity.ico +WindowIcon off ; show our icon in left corner +BGGradient 9090b0 000000 notext +CRCCheck on ; make sure CRC is OK +#InstProgressFlags smooth colored ; new colored smooth look +InstProgressFlags +InstallColors /windows +ShowInstDetails show ; no details, no "show" button +SetOverwrite on ; stomp files by default +AutoCloseWindow true ; after all files install, close window + +InstallDir "$PROGRAMFILES\${INSTNAME}" +InstallDirRegKey HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\${INSTNAME}" "" +DirText $(DirectoryChooseTitle) $(DirectoryChooseSetup) + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; Variables +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +Var INSTPROG +Var INSTEXE +Var INSTFLAGS +Var INSTSHORTCUT +Var COMMANDLINE ; command line passed to this installer, set in .onInit +Var SHORTCUT_LANG_PARAM ; "--set InstallLanguage de", passes language to viewer + +;;; Function definitions should go before file includes, because calls to +;;; DLLs like LangDLL trigger an implicit file include, so if that call is at +;;; the end of this script NSIS has to decompress the whole installer before +;;; it can call the DLL function. JC + +!include "FileFunc.nsh" ; For GetParameters, GetOptions +!insertmacro GetParameters +!insertmacro GetOptions + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; After install completes, launch app +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +Function .onInstSuccess + Push $R0 # Option value, unused + ${GetOptions} $COMMANDLINE "/AUTOSTART" $R0 + # If parameter was there (no error) just launch + # Otherwise ask + IfErrors label_ask_launch label_launch + +label_ask_launch: + # Don't launch by default when silent + IfSilent label_no_launch + MessageBox MB_YESNO $(InstSuccesssQuestion) \ + IDYES label_launch IDNO label_no_launch + +label_launch: + # Assumes SetOutPath $INSTDIR + Exec '"$INSTDIR\$INSTEXE" $INSTFLAGS $SHORTCUT_LANG_PARAM' +label_no_launch: + Pop $R0 +FunctionEnd + + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +; Make sure we're not on Windows 98 / ME +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +Function CheckWindowsVersion + DetailPrint "Checking Windows version..." + Call GetWindowsVersion + Pop $R0 + ; Just get first two characters, ignore 4.0 part of "NT 4.0" + StrCpy $R0 $R0 2 + ; Blacklist certain OS versions + StrCmp $R0 "95" win_ver_bad + StrCmp $R0 "98" win_ver_bad + StrCmp $R0 "ME" win_ver_bad + StrCmp $R0 "NT" win_ver_bad + Return +win_ver_bad: + MessageBox MB_YESNO $(CheckWindowsVersionMB) IDNO win_ver_abort + Return +win_ver_abort: + Quit +FunctionEnd + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +; Make sure the user can install/uninstall +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +Function CheckIfAdministrator + DetailPrint $(CheckAdministratorInstDP) + UserInfo::GetAccountType + Pop $R0 + StrCmp $R0 "Admin" lbl_is_admin + MessageBox MB_OK $(CheckAdministratorInstMB) + Quit +lbl_is_admin: + Return +FunctionEnd + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +Function un.CheckIfAdministrator + DetailPrint $(CheckAdministratorUnInstDP) + UserInfo::GetAccountType + Pop $R0 + StrCmp $R0 "Admin" lbl_is_admin + MessageBox MB_OK $(CheckAdministratorUnInstMB) + Quit +lbl_is_admin: + Return +FunctionEnd + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +; Checks to see if the current version has already been installed (according to the registry). +; If it has, allow user to bail out of install process. +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +Function CheckIfAlreadyCurrent + Push $0 + ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "Version" + StrCmp $0 ${VERSION_LONG} 0 DONE + MessageBox MB_OKCANCEL $(CheckIfCurrentMB) /SD IDOK IDOK DONE + Quit + + DONE: + Pop $0 + Return +FunctionEnd + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +; Close the program, if running. Modifies no variables. +; Allows user to bail out of install process. +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +Function CloseSecondLife + Push $0 + FindWindow $0 "Second Life" "" + IntCmp $0 0 DONE + MessageBox MB_OKCANCEL $(CloseSecondLifeInstMB) IDOK CLOSE IDCANCEL CANCEL_INSTALL + + CANCEL_INSTALL: + Quit + + CLOSE: + DetailPrint $(CloseSecondLifeInstDP) + SendMessage $0 16 0 0 + + LOOP: + FindWindow $0 "Second Life" "" + IntCmp $0 0 DONE + Sleep 500 + Goto LOOP + + DONE: + Pop $0 + Return +FunctionEnd + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +; Test our connection to secondlife.com +; Also allows us to count attempted installs by examining web logs. +; *TODO: Return current SL version info and have installer check +; if it is up to date. +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +Function CheckNetworkConnection + Push $0 + Push $1 + Push $2 # Option value for GetOptions + DetailPrint $(CheckNetworkConnectionDP) + ; Look for a tag value from the stub installer, used for statistics + ; to correlate installs. Default to "" if not found on command line. + StrCpy $2 "" + ${GetOptions} $COMMANDLINE "/STUBTAG=" $2 + GetTempFileName $0 + !define HTTP_TIMEOUT 5000 ; milliseconds + ; Don't show secondary progress bar, this will be quick. + NSISdl::download_quiet \ + /TIMEOUT=${HTTP_TIMEOUT} \ + "http://install.secondlife.com/check/?stubtag=$2&version=${VERSION_LONG}" \ + $0 + Pop $1 ; Return value, either "success", "cancel" or an error message + ; MessageBox MB_OK "Download result: $1" + ; Result ignored for now + ; StrCmp $1 "success" +2 + ; DetailPrint "Connection failed: $1" + Delete $0 ; temporary file + Pop $2 + Pop $1 + Pop $0 + Return +FunctionEnd + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +; Delete files in Documents and Settings\\SecondLife\cache +; Delete files in Documents and Settings\All Users\SecondLife\cache +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;Function RemoveCacheFiles +; +;; Delete files in Documents and Settings\\SecondLife +;Push $0 +;Push $1 +;Push $2 +; DetailPrint $(RemoveCacheFilesDP) +; +; StrCpy $0 0 ; Index number used to iterate via EnumRegKey +; +; LOOP: +; EnumRegKey $1 HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList" $0 +; StrCmp $1 "" DONE ; no more users +; +; ReadRegStr $2 HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\$1" "ProfileImagePath" +; StrCmp $2 "" CONTINUE 0 ; "ProfileImagePath" value is missing +; +; ; Required since ProfileImagePath is of type REG_EXPAND_SZ +; ExpandEnvStrings $2 $2 +; +; ; When explicitly uninstalling, everything goes away +; RMDir /r "$2\Application Data\SecondLife\cache" +; +; CONTINUE: +; IntOp $0 $0 + 1 +; Goto LOOP +; DONE: +;Pop $2 +;Pop $1 +;Pop $0 +; +;; Delete files in Documents and Settings\All Users\SecondLife +;Push $0 +; ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" "Common AppData" +; StrCmp $0 "" +2 +; RMDir /r "$0\SecondLife\cache" +;Pop $0 +; +;; Delete filse in C:\Windows\Application Data\SecondLife +;; If the user is running on a pre-NT system, Application Data lives here instead of +;; in Documents and Settings. +;RMDir /r "$WINDIR\Application Data\SecondLife\cache" +; +;FunctionEnd + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; Delete the installed shader files +;;; Since shaders are in active development, we'll likely need to shuffle them +;;; around a bit from build to build. This ensures that shaders that we move +;;; or rename in the dev tree don't get left behind in the install. +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +Function RemoveOldShaders + +;; Remove old shader files first so fallbacks will work. see DEV-5663 +RMDir /r "$INSTDIR\app_settings\shaders\*" + +FunctionEnd + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; Delete the installed XUI files +;;; We've changed the directory hierarchy for skins, putting all XUI and texture +;;; files under a specific skin directory, i.e. skins/default/xui/en-us as opposed +;;; to skins/xui/en-us. Need to clean up the old path when upgrading +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +Function RemoveOldXUI + +;; remove old XUI and texture files +RmDir /r "$INSTDIR\skins\html" +RmDir /r "$INSTDIR\skins\xui" +RmDir /r "$INSTDIR\skins\textures" +Delete "$INSTDIR\skins\*.txt" + +FunctionEnd + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; Remove any releasenotes files. +;;; We are no longer including release notes with the viewer. This will delete +;;; any that were left behind by an older installer. Delete will not fail if +;;; the files do not exist +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +Function RemoveOldReleaseNotes + +;; remove releasenotes.txt file from application directory, and the shortcut +;; from the start menu. +Delete "$SMPROGRAMS\$INSTSHORTCUT\SL Release Notes.lnk" +Delete "$INSTDIR\releasenotes.txt" + +FunctionEnd + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; Delete a xui file that causes crash in Silver skin in cases where it was +;;; left behind by an older installer. +;;; See SNOW-348 +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +Function RemoveOldAboutLandSilver + +Delete "$INSTDIR\skins\silver\xui\en-us\floater_about_land.xml" + +FunctionEnd + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +; Delete files in Documents and Settings\\SecondLife +; Delete files in Documents and Settings\All Users\SecondLife +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +Function un.DocumentsAndSettingsFolder + +; Delete files in Documents and Settings\\SecondLife +Push $0 +Push $1 +Push $2 + + DetailPrint "Deleting files in Documents and Settings folder" + + StrCpy $0 0 ; Index number used to iterate via EnumRegKey + + LOOP: + EnumRegKey $1 HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList" $0 + StrCmp $1 "" DONE ; no more users + + ReadRegStr $2 HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\$1" "ProfileImagePath" + StrCmp $2 "" CONTINUE 0 ; "ProfileImagePath" value is missing + + ; Required since ProfileImagePath is of type REG_EXPAND_SZ + ExpandEnvStrings $2 $2 + + ; If uninstalling a normal install remove everything + ; Otherwise (preview/dmz etc) just remove cache + StrCmp $INSTFLAGS "" RM_ALL RM_CACHE + RM_ALL: + RMDir /r "$2\Application Data\SecondLife" + RM_CACHE: + # Local Settings directory is the cache, there is no "cache" subdir + RMDir /r "$2\Local Settings\Application Data\SecondLife" + # Vista version of the same + RMDir /r "$2\AppData\Local\SecondLife" + Delete "$2\Application Data\SecondLife\user_settings\settings_windlight.xml" + + CONTINUE: + IntOp $0 $0 + 1 + Goto LOOP + DONE: + +Pop $2 +Pop $1 +Pop $0 + +; Delete files in Documents and Settings\All Users\SecondLife +Push $0 + ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" "Common AppData" + StrCmp $0 "" +2 + RMDir /r "$0\SecondLife" +Pop $0 + +; Delete filse in C:\Windows\Application Data\SecondLife +; If the user is running on a pre-NT system, Application Data lives here instead of +; in Documents and Settings. +RMDir /r "$WINDIR\Application Data\SecondLife" + +FunctionEnd + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +; Close the program, if running. Modifies no variables. +; Allows user to bail out of uninstall process. +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +Function un.CloseSecondLife + Push $0 + FindWindow $0 "Second Life" "" + IntCmp $0 0 DONE + MessageBox MB_OKCANCEL $(CloseSecondLifeUnInstMB) IDOK CLOSE IDCANCEL CANCEL_UNINSTALL + + CANCEL_UNINSTALL: + Quit + + CLOSE: + DetailPrint $(CloseSecondLifeUnInstDP) + SendMessage $0 16 0 0 + + LOOP: + FindWindow $0 "Second Life" "" + IntCmp $0 0 DONE + Sleep 500 + Goto LOOP + + DONE: + Pop $0 + Return +FunctionEnd + + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +; +; Delete the stored password for the current Windows user +; DEV-10821 -- Unauthorised user can gain access to an SL account after a real user has uninstalled +; +Function un.RemovePassword + +DetailPrint "Removing Second Life password" + +SetShellVarContext current +Delete "$APPDATA\SecondLife\user_settings\password.dat" +SetShellVarContext all + +FunctionEnd + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; Delete the installed files +;;; This deletes the uninstall executable, but it works +;;; because it is copied to temp directory before running +;;; +;;; Note: You must list all files here, because we only +;;; want to delete our files, not things users left in the +;;; application directories. +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +Function un.ProgramFiles + +;; Remove mozilla file first so recursive directory deletion doesn't get hung up +Delete "$INSTDIR\app_settings\mozilla\components" + +;; This placeholder is replaced by the complete list of files to uninstall by viewer_manifest.py +%%DELETE_FILES%% + +;; Optional/obsolete files. Delete won't fail if they don't exist. +Delete "$INSTDIR\dronesettings.ini" +Delete "$INSTDIR\message_template.msg" +Delete "$INSTDIR\newview.pdb" +Delete "$INSTDIR\newview.map" +Delete "$INSTDIR\SecondLife.pdb" +Delete "$INSTDIR\SecondLife.map" +Delete "$INSTDIR\comm.dat" +Delete "$INSTDIR\*.glsl" +Delete "$INSTDIR\motions\*.lla" +Delete "$INSTDIR\trial\*.html" +Delete "$INSTDIR\newview.exe" +;; Remove entire help directory +Delete "$INSTDIR\help\Advanced\*" +RMDir "$INSTDIR\help\Advanced" +Delete "$INSTDIR\help\basics\*" +RMDir "$INSTDIR\help\basics" +Delete "$INSTDIR\help\Concepts\*" +RMDir "$INSTDIR\help\Concepts" +Delete "$INSTDIR\help\welcome\*" +RMDir "$INSTDIR\help\welcome" +Delete "$INSTDIR\help\*" +RMDir "$INSTDIR\help" + +Delete "$INSTDIR\uninst.exe" +RMDir "$INSTDIR" + +IfFileExists "$INSTDIR" FOLDERFOUND NOFOLDER + +FOLDERFOUND: + MessageBox MB_YESNO $(DeleteProgramFilesMB) IDNO NOFOLDER + RMDir /r "$INSTDIR" + +NOFOLDER: + +FunctionEnd + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; Uninstall settings +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +UninstallText $(UninstallTextMsg) +ShowUninstDetails show + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; Uninstall section +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +Section Uninstall + +; Start with some default values. +StrCpy $INSTFLAGS "" +StrCpy $INSTPROG "${INSTNAME}" +StrCpy $INSTEXE "${INSTEXE}" +StrCpy $INSTSHORTCUT "${SHORTCUT}" +Call un.CheckIfAdministrator ; Make sure the user can install/uninstall + +; uninstall for all users (if you change this, change it in the install as well) +SetShellVarContext all + +; Make sure we're not running +Call un.CloseSecondLife + +; Clean up registry keys and subkeys (these should all be !defines somewhere) +DeleteRegKey HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" +DeleteRegKey HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$INSTPROG" + +; Clean up shortcuts +Delete "$SMPROGRAMS\$INSTSHORTCUT\*.*" +RMDir "$SMPROGRAMS\$INSTSHORTCUT" + +Delete "$DESKTOP\$INSTSHORTCUT.lnk" +Delete "$INSTDIR\$INSTSHORTCUT.lnk" +Delete "$INSTDIR\Uninstall $INSTSHORTCUT.lnk" + +; Clean up cache and log files. +; Leave them in-place for non AGNI installs. + +!ifdef UNINSTALL_SETTINGS +Call un.DocumentsAndSettingsFolder +!endif + +; remove stored password on uninstall +Call un.RemovePassword + +Call un.ProgramFiles + +SectionEnd ; end of uninstall section + + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +; (From the NSIS documentation, JC) +; GetWindowsVersion +; +; Based on Yazno's function, http://yazno.tripod.com/powerpimpit/ +; Updated by Joost Verburg +; +; Returns on top of stack +; +; Windows Version (95, 98, ME, NT x.x, 2000, XP, 2003) +; or +; '' (Unknown Windows Version) +; +; Usage: +; Call GetWindowsVersion +; Pop $R0 +; ; at this point $R0 is "NT 4.0" or whatnot +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +Function GetWindowsVersion + + Push $R0 + Push $R1 + + ReadRegStr $R0 HKLM \ + "SOFTWARE\Microsoft\Windows NT\CurrentVersion" CurrentVersion + + IfErrors 0 lbl_winnt + + ; we are not NT + ReadRegStr $R0 HKLM \ + "SOFTWARE\Microsoft\Windows\CurrentVersion" VersionNumber + + StrCpy $R1 $R0 1 + StrCmp $R1 '4' 0 lbl_error + + StrCpy $R1 $R0 3 + + StrCmp $R1 '4.0' lbl_win32_95 + StrCmp $R1 '4.9' lbl_win32_ME lbl_win32_98 + + lbl_win32_95: + StrCpy $R0 '95' + Goto lbl_done + + lbl_win32_98: + StrCpy $R0 '98' + Goto lbl_done + + lbl_win32_ME: + StrCpy $R0 'ME' + Goto lbl_done + + lbl_winnt: + + StrCpy $R1 $R0 1 + + StrCmp $R1 '3' lbl_winnt_x + StrCmp $R1 '4' lbl_winnt_x + + StrCpy $R1 $R0 3 + + StrCmp $R1 '5.0' lbl_winnt_2000 + StrCmp $R1 '5.1' lbl_winnt_XP + StrCmp $R1 '5.2' lbl_winnt_2003 lbl_error + + lbl_winnt_x: + StrCpy $R0 "NT $R0" 6 + Goto lbl_done + + lbl_winnt_2000: + Strcpy $R0 '2000' + Goto lbl_done + + lbl_winnt_XP: + Strcpy $R0 'XP' + Goto lbl_done + + lbl_winnt_2003: + Strcpy $R0 '2003' + Goto lbl_done + + lbl_error: + Strcpy $R0 '' + lbl_done: + + Pop $R1 + Exch $R0 + +FunctionEnd + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; Note: to add new languages, add a language file include to the list +;; at the top of this file, add an entry to the menu and then add an +;; entry to the language ID selector below +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +Function .onInit + Push $0 + ${GetParameters} $COMMANDLINE ; get our command line + ${GetOptions} $COMMANDLINE "/LANGID=" $0 ; /LANGID=1033 implies US English + ; If no language (error), then proceed + IfErrors lbl_check_silent + ; No error means we got a language, so use it + StrCpy $LANGUAGE $0 + Goto lbl_return + +lbl_check_silent: + ; For silent installs, no language prompt, use default + IfSilent lbl_return + + ; If we currently have a version of SL installed, default to the language of that install + ; Otherwise don't change $LANGUAGE and it will default to the OS UI language. + ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\${INSTNAME}" "InstallerLanguage" + IfErrors lbl_build_menu + StrCpy $LANGUAGE $0 + +lbl_build_menu: + Push "" + # Use separate file so labels can be UTF-16 but we can still merge changes + # into this ASCII file. JC + !include "%%SOURCE%%\installers\windows\language_menu.nsi" + + Push A ; A means auto count languages for the auto count to work the first empty push (Push "") must remain + LangDLL::LangDialog $(InstallerLanguageTitle) $(SelectInstallerLanguage) + Pop $0 + StrCmp $0 "cancel" 0 +2 + Abort + StrCpy $LANGUAGE $0 + + ; save language in registry + WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\${INSTNAME}" "InstallerLanguage" $LANGUAGE +lbl_return: + Pop $0 + Return +FunctionEnd + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +Function un.onInit + ; read language from registry and set for uninstaller + ; Key will be removed on successful uninstall + ReadRegStr $0 HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\${INSTNAME}" "InstallerLanguage" + IfErrors lbl_end + StrCpy $LANGUAGE $0 +lbl_end: + Return +FunctionEnd + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; MAIN SECTION +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +Section "" ; (default section) + +SetShellVarContext all ; install for all users (if you change this, change it in the uninstall as well) + +; Start with some default values. +StrCpy $INSTFLAGS "${INSTFLAGS}" +StrCpy $INSTPROG "${INSTNAME}" +StrCpy $INSTEXE "${INSTEXE}" +StrCpy $INSTSHORTCUT "${SHORTCUT}" + +Call CheckWindowsVersion ; warn if on Windows 98/ME +Call CheckIfAdministrator ; Make sure the user can install/uninstall +Call CheckIfAlreadyCurrent ; Make sure that we haven't already installed this version +Call CloseSecondLife ; Make sure we're not running +#Call CheckNetworkConnection ; ping secondlife.com + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; Don't remove cache files during a regular install, removing the inventory cache on upgrades results in lots of damage to the servers. +;Call RemoveCacheFiles ; Installing over removes potentially corrupted + ; VFS and cache files. + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; Need to clean out shader files from previous installs to fix DEV-5663 +Call RemoveOldShaders + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; Need to clean out old XUI files that predate skinning +Call RemoveOldXUI + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; Clear out old releasenotes.txt files. These are now on the public wiki. +Call RemoveOldReleaseNotes + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; Remove an old xui file that should not be in Silver skin +Call RemoveOldAboutLandSilver + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; Files +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; This placeholder is replaced by the complete list of all the files in the installer, by viewer_manifest.py +%%INSTALL_FILES%% + +# Pass the installer's language to the client to use as a default +StrCpy $SHORTCUT_LANG_PARAM "--set InstallLanguage $(LanguageCode)" + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +; Shortcuts in start menu +CreateDirectory "$SMPROGRAMS\$INSTSHORTCUT" +SetOutPath "$INSTDIR" +CreateShortCut "$SMPROGRAMS\$INSTSHORTCUT\$INSTSHORTCUT.lnk" \ + "$INSTDIR\$INSTEXE" "$INSTFLAGS $SHORTCUT_LANG_PARAM" + + +WriteINIStr "$SMPROGRAMS\$INSTSHORTCUT\SL Create Account.url" \ + "InternetShortcut" "URL" \ + "http://www.secondlife.com/registration/" +WriteINIStr "$SMPROGRAMS\$INSTSHORTCUT\SL Your Account.url" \ + "InternetShortcut" "URL" \ + "http://www.secondlife.com/account/" +WriteINIStr "$SMPROGRAMS\$INSTSHORTCUT\SL Scripting Language Help.url" \ + "InternetShortcut" "URL" \ + "http://wiki.secondlife.com/wiki/LSL_Portal" +CreateShortCut "$SMPROGRAMS\$INSTSHORTCUT\Uninstall $INSTSHORTCUT.lnk" \ + '"$INSTDIR\uninst.exe"' '' + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +; Other shortcuts +SetOutPath "$INSTDIR" +CreateShortCut "$DESKTOP\$INSTSHORTCUT.lnk" \ + "$INSTDIR\$INSTEXE" "$INSTFLAGS $SHORTCUT_LANG_PARAM" +CreateShortCut "$INSTDIR\$INSTSHORTCUT.lnk" \ + "$INSTDIR\$INSTEXE" "$INSTFLAGS $SHORTCUT_LANG_PARAM" +CreateShortCut "$INSTDIR\Uninstall $INSTSHORTCUT.lnk" \ + '"$INSTDIR\uninst.exe"' '' + + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +; Write registry +WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "" "$INSTDIR" +WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "Version" "${VERSION_LONG}" +WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "Flags" "$INSTFLAGS" +WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "Shortcut" "$INSTSHORTCUT" +WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Linden Research, Inc.\$INSTPROG" "Exe" "$INSTEXE" +WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Uninstall\$INSTPROG" "DisplayName" "$INSTPROG (remove only)" +WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Uninstall\$INSTPROG" "UninstallString" '"$INSTDIR\uninst.exe"' + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +; Write URL registry info +WriteRegStr HKEY_CLASSES_ROOT "${URLNAME}" "(default)" "URL:Second Life" +WriteRegStr HKEY_CLASSES_ROOT "${URLNAME}" "URL Protocol" "" +WriteRegStr HKEY_CLASSES_ROOT "${URLNAME}\DefaultIcon" "" '"$INSTDIR\$INSTEXE"' +;; URL param must be last item passed to viewer, it ignores subsequent params +;; to avoid parameter injection attacks. +WriteRegExpandStr HKEY_CLASSES_ROOT "${URLNAME}\shell\open\command" "" '"$INSTDIR\$INSTEXE" $INSTFLAGS -url "%1"' + +; write out uninstaller +WriteUninstaller "$INSTDIR\uninst.exe" + +; end of default section +SectionEnd + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; EOF ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; diff --git a/indra/newview/llagent.cpp b/indra/newview/llagent.cpp index 99b0e92f7..a0798dcd8 100644 --- a/indra/newview/llagent.cpp +++ b/indra/newview/llagent.cpp @@ -36,6 +36,7 @@ #include "llagentui.h" #include "llanimationstates.h" #include "llcallingcard.h" +#include "llcapabilitylistener.h" #include "llconsole.h" #include "llenvmanager.h" #include "llfirstuse.h" @@ -70,6 +71,7 @@ #include "llviewermenu.h" #include "llviewerobjectlist.h" #include "llviewerparcelmgr.h" +#include "llviewerregion.h" #include "llviewerstats.h" #include "llviewerwindow.h" #include "llvoavatarself.h" @@ -77,21 +79,20 @@ #include "llworldmap.h" //Misc non-standard includes -#include "llviewerregion.h" #include "llurldispatcher.h" #include "llimview.h" //For gIMMgr //Floaters -#include "llfloatermute.h" -#include "llfloatermap.h" #include "llfloateractivespeakers.h" +#include "llfloateravatarinfo.h" +#include "llfloaterchat.h" #include "llfloaterdirectory.h" #include "llfloatergroupinfo.h" #include "llfloatergroups.h" -#include "llfloateravatarinfo.h" -#include "llfloaterworldmap.h" #include "llfloaterland.h" +#include "llfloatermap.h" +#include "llfloatermute.h" #include "llfloatersnapshot.h" -#include "llfloaterchat.h" +#include "llfloaterworldmap.h" #include "lluictrlfactory.h" //For LLUICtrlFactory::getLayeredXMLNode @@ -121,7 +122,6 @@ const F64 CHAT_AGE_FAST_RATE = 3.0; const F32 MIN_FIDGET_TIME = 8.f; // seconds const F32 MAX_FIDGET_TIME = 20.f; // seconds - // The agent instance. LLAgent gAgent; std::string gAuthString; @@ -130,7 +130,7 @@ std::string gAuthString; LLUUID gReSitTargetID; LLVector3 gReSitOffset; // -// +//-------------------------------------------------------------------- // Statics // @@ -247,6 +247,7 @@ LLAgent::LLAgent() : mFirstLogin(FALSE), mGenderChosen(FALSE), mAppearanceSerialNum(0), + mMouselookModeInSignal(NULL), mMouselookModeOutSignal(NULL), mPendingLure(NULL) @@ -310,7 +311,6 @@ LLAgent::~LLAgent() mEffectColor = NULL; } - // Handle any actions that need to be performed when the main app gains focus // (such as through alt-tab). //----------------------------------------------------------------------------- @@ -481,7 +481,7 @@ void LLAgent::movePitch(F32 mag) if (mag > 0) { - setControlFlags(AGENT_CONTROL_PITCH_POS ); + setControlFlags(AGENT_CONTROL_PITCH_POS); } else if (mag < 0) { @@ -535,8 +535,6 @@ BOOL LLAgent::getPhantom() return exlPhantom; } -// - //----------------------------------------------------------------------------- // setFlying() //----------------------------------------------------------------------------- @@ -665,9 +663,9 @@ void LLAgent::setRegion(LLViewerRegion *regionp) << " located at " << ip << llendl; if (mRegionp) { - // NaCl - Antispam Registry - NACLAntiSpamRegistry::purgeAllQueues(); - // NaCl End + // NaCl - Antispam Registry + NACLAntiSpamRegistry::purgeAllQueues(); + // NaCl End // We've changed regions, we're now going to change our agent coordinate frame. mAgentOriginGlobal = regionp->getOriginGlobal(); @@ -1713,7 +1711,6 @@ void LLAgent::updateAgentPosition(const F32 dt, const F32 yaw_radians, const S32 gAgentCamera.updateLookAt(mouse_x, mouse_y); } - // friends and operators std::ostream& operator<<(std::ostream &s, const LLAgent &agent) @@ -2201,6 +2198,33 @@ void LLAgent::setStartPosition( U32 location_id ) } } +struct HomeLocationMapper: public LLCapabilityListener::CapabilityMapper +{ + // No reply message expected + HomeLocationMapper(): LLCapabilityListener::CapabilityMapper("HomeLocation") {} + virtual void buildMessage(LLMessageSystem* msg, + const LLUUID& agentID, + const LLUUID& sessionID, + const std::string& capabilityName, + const LLSD& payload) const + { + msg->newMessageFast(_PREHASH_SetStartLocationRequest); + msg->nextBlockFast( _PREHASH_AgentData); + msg->addUUIDFast(_PREHASH_AgentID, agentID); + msg->addUUIDFast(_PREHASH_SessionID, sessionID); + msg->nextBlockFast( _PREHASH_StartLocationData); + // corrected by sim + msg->addStringFast(_PREHASH_SimName, ""); + msg->addU32Fast(_PREHASH_LocationID, payload["HomeLocation"]["LocationId"].asInteger()); + msg->addVector3Fast(_PREHASH_LocationPos, + ll_vector3_from_sdmap(payload["HomeLocation"]["LocationPos"])); + msg->addVector3Fast(_PREHASH_LocationLookAt, + ll_vector3_from_sdmap(payload["HomeLocation"]["LocationLookAt"])); + } +}; +// Need an instance of this class so it will self-register +static HomeLocationMapper homeLocationMapper; + void LLAgent::requestStopMotion( LLMotion* motion ) { // Notify all avatars that a motion has stopped. @@ -2372,7 +2396,7 @@ bool LLAgent::sendMaturityPreferenceToServer(int preferredMaturity) { access_prefs["max"] = "A"; } - + LLSD body = LLSD::emptyMap(); body["access_prefs"] = access_prefs; llinfos << "Sending access prefs update to " << (access_prefs["max"].asString()) << " via capability to: " @@ -2782,7 +2806,6 @@ BOOL LLAgent::allowOperation(PermissionBit op, return perm.allowOperationBy(op, agent_proxy, group_proxy); } - void LLAgent::getName(std::string& name) { name.clear(); @@ -3470,7 +3493,7 @@ bool LLAgent::teleportCore(bool is_local) // hide land floater too - it'll be out of date LLFloaterLand::hideInstance(); - + LLViewerParcelMgr::getInstance()->deselectLand(); LLViewerMediaFocus::getInstance()->setFocusFace(false, NULL, 0, NULL); @@ -3728,8 +3751,7 @@ void LLAgent::setTeleportState(ETeleportState state) } switch (mTeleportState) - - { + { case TELEPORT_NONE: mbTeleportKeepsLookAt = false; break; @@ -3996,10 +4018,10 @@ void LLAgent::sendAgentSetAppearance() break; } msg->nextBlockFast(_PREHASH_VisualParam ); + // We don't send the param ids. Instead, we assume that the receiver has the same params in the same sequence. const F32 param_value = param->getWeight(); const U8 new_weight = F32_to_U8(param_value, param->getMinWeight(), param->getMaxWeight()); - msg->addU8Fast(_PREHASH_ParamValue, new_weight ); transmitted_params++; } @@ -4016,7 +4038,7 @@ void LLAgent::sendAgentDataUpdateRequest() { gMessageSystem->newMessageFast(_PREHASH_AgentDataUpdateRequest); gMessageSystem->nextBlockFast(_PREHASH_AgentData); - gMessageSystem->addUUIDFast(_PREHASH_AgentID, gAgent.getID()); + gMessageSystem->addUUIDFast(_PREHASH_AgentID, gAgent.getID() ); gMessageSystem->addUUIDFast(_PREHASH_SessionID, gAgent.getSessionID()); sendReliableMessage(); } @@ -4208,4 +4230,3 @@ LLAgentQueryManager::~LLAgentQueryManager() } // EOF - diff --git a/indra/newview/llattachmentsmgr.cpp b/indra/newview/llattachmentsmgr.cpp index abca74796..c064fa5f4 100644 --- a/indra/newview/llattachmentsmgr.cpp +++ b/indra/newview/llattachmentsmgr.cpp @@ -88,6 +88,9 @@ void LLAttachmentsMgr::onIdle(void *) void LLAttachmentsMgr::onIdle() { + if(!gAgent.getRegion()) + return; + S32 obj_count = mPendingAttachments.size(); if (obj_count == 0) { diff --git a/indra/newview/lldrawpoolterrain.cpp b/indra/newview/lldrawpoolterrain.cpp index b26896d07..b98cc84e8 100644 --- a/indra/newview/lldrawpoolterrain.cpp +++ b/indra/newview/lldrawpoolterrain.cpp @@ -575,6 +575,8 @@ void LLDrawPoolTerrain::renderFull4TU() gGL.loadIdentity(); gGL.translatef(-1.f, 0.f, 0.f); + gGL.matrixMode(LLRender::MM_MODELVIEW); + // Set alpha texture and do lighting modulation gGL.getTexUnit(3)->setTextureColorBlend(LLTexUnit::TBO_MULT, LLTexUnit::TBS_PREV_COLOR, LLTexUnit::TBS_VERT_COLOR); gGL.getTexUnit(3)->setTextureAlphaBlend(LLTexUnit::TBO_REPLACE, LLTexUnit::TBS_TEX_ALPHA); @@ -722,6 +724,7 @@ void LLDrawPoolTerrain::renderFull2TU() gGL.matrixMode(LLRender::MM_TEXTURE); gGL.loadIdentity(); gGL.translatef(-1.f, 0.f, 0.f); + gGL.matrixMode(LLRender::MM_MODELVIEW); // Care about alpha only gGL.getTexUnit(0)->setTextureColorBlend(LLTexUnit::TBO_REPLACE, LLTexUnit::TBS_PREV_COLOR); @@ -761,7 +764,7 @@ void LLDrawPoolTerrain::renderFull2TU() gGL.matrixMode(LLRender::MM_TEXTURE); gGL.loadIdentity(); gGL.translatef(-2.f, 0.f, 0.f); - + gGL.matrixMode(LLRender::MM_MODELVIEW); // Care about alpha only gGL.getTexUnit(0)->setTextureColorBlend(LLTexUnit::TBO_REPLACE, LLTexUnit::TBS_PREV_COLOR); gGL.getTexUnit(0)->setTextureAlphaBlend(LLTexUnit::TBO_REPLACE, LLTexUnit::TBS_TEX_ALPHA); diff --git a/indra/newview/llenvmanager.cpp b/indra/newview/llenvmanager.cpp index 7e5377bd1..f3ffe732f 100644 --- a/indra/newview/llenvmanager.cpp +++ b/indra/newview/llenvmanager.cpp @@ -494,13 +494,11 @@ void LLEnvManagerNew::onRegionSettingsResponse(const LLSD& content) // Load region sky presets. LLWLParamManager::instance().refreshRegionPresets(); - bool bOverridden = M7WindlightInterface::getInstance()->hasOverride(); + // Not possible to assume M7WL should take precidence as OpenSim will send both + // bool bOverridden = M7WindlightInterface::getInstance()->hasOverride(); // If using server settings, update managers. -// if (getUseRegionSettings()) -// [RLVa:KB] - Checked: 2011-08-29 (RLVa-1.4.1a) | Added: RLVa-1.4.1a - if (!bOverridden && (getUseRegionSettings()) && (LLWLParamManager::getInstance()->mAnimator.getIsRunning()) ) -// [/RLVa:KB] + if (getUseRegionSettings()) { updateManagersFromPrefs(mInterpNextChangeMessage); } diff --git a/indra/newview/llfloateranimpreview.cpp b/indra/newview/llfloateranimpreview.cpp index 95ba4a08f..52eee0eb8 100644 --- a/indra/newview/llfloateranimpreview.cpp +++ b/indra/newview/llfloateranimpreview.cpp @@ -1,4 +1,4 @@ -/** +/** * @file llfloateranimpreview.cpp * @brief LLFloaterAnimPreview class implementation * @@ -1430,17 +1430,18 @@ void LLFloaterAnimPreview::onBtnOK(void* userdata) } else // - - upload_new_resource(floaterp->mTransactionID, // tid + { + upload_new_resource(floaterp->mTransactionID, // tid LLAssetType::AT_ANIMATION, name, desc, 0, - LLFolderType::FT_ANIMATION, + LLFolderType::FT_NONE, LLInventoryType::IT_ANIMATION, LLFloaterPerms::getNextOwnerPerms(), LLFloaterPerms::getGroupPerms(), LLFloaterPerms::getEveryonePerms(), name, callback, expected_upload_cost, userdata); + } } else { diff --git a/indra/newview/llfloaterimagepreview.cpp b/indra/newview/llfloaterimagepreview.cpp index 9ac2f29ba..83941b789 100644 --- a/indra/newview/llfloaterimagepreview.cpp +++ b/indra/newview/llfloaterimagepreview.cpp @@ -111,6 +111,7 @@ BOOL LLFloaterImagePreview::postBuild() } childSetLabelArg("ok_btn", "[UPLOADFEE]", gHippoGridManager->getConnectedGrid()->getUploadFee()); + childSetAction("ok_btn", onBtnOK, this); LLCtrlSelectionInterface* iface = childGetSelectionInterface("clothing_type_combo"); if (iface) diff --git a/indra/newview/llfloaternamedesc.cpp b/indra/newview/llfloaternamedesc.cpp index ce7c9fb21..1d930c337 100644 --- a/indra/newview/llfloaternamedesc.cpp +++ b/indra/newview/llfloaternamedesc.cpp @@ -157,7 +157,7 @@ BOOL LLFloaterNameDesc::postBuild() // OK button childSetLabelArg("ok_btn", "[UPLOADFEE]", gHippoGridManager->getConnectedGrid()->getUploadFee()); - childSetAction("ok_btn", onBtnOK, this); + //childSetAction("ok_btn", onBtnOK, this); setDefaultBtn("ok_btn"); return TRUE; diff --git a/indra/newview/llfloatertools.cpp b/indra/newview/llfloatertools.cpp index 4ef0cfbf3..1219176d6 100644 --- a/indra/newview/llfloatertools.cpp +++ b/indra/newview/llfloatertools.cpp @@ -75,11 +75,11 @@ #include "lltoolplacer.h" #include "lltoolselectland.h" #include "llui.h" +#include "llviewercontrol.h" +#include "llviewerjoystick.h" #include "llviewermenu.h" #include "llviewerparcelmgr.h" #include "llviewerwindow.h" -#include "llviewercontrol.h" -#include "llviewerjoystick.h" #include "lluictrlfactory.h" #include "llmeshrepository.h" @@ -101,7 +101,9 @@ const std::string PANEL_NAMES[LLFloaterTools::PANEL_COUNT] = std::string("Content"), // PANEL_CONTENTS, }; + // Local prototypes +void commit_grid_mode(LLUICtrl *ctrl, void*); void commit_select_component(LLUICtrl *ctrl, void *data); void click_show_more(void*); void click_popup_info(void*); @@ -117,8 +119,7 @@ void click_apply_to_selection(void*); void commit_radio_zoom(LLUICtrl *, void*); void commit_radio_orbit(LLUICtrl *, void*); void commit_radio_pan(LLUICtrl *, void*); -void commit_grid_mode(LLUICtrl *, void*); -void commit_slider_zoom(LLUICtrl *, void*); +void commit_slider_zoom(LLUICtrl *ctrl, void*); void commit_select_tool(LLUICtrl *ctrl, void *data); @@ -212,7 +213,6 @@ LLPCode toolData[]={ BOOL LLFloaterTools::postBuild() { - // Hide until tool selected setVisible(FALSE); @@ -223,59 +223,60 @@ BOOL LLFloaterTools::postBuild() getDragHandle()->setEnabled( !gSavedSettings.getBOOL("ToolboxAutoMove") ); LLRect rect; - mBtnFocus = getChild("button focus");//btn; + mBtnFocus = getChild("button focus");//btn; childSetAction("button focus",LLFloaterTools::setEditTool, (void*)LLToolCamera::getInstance()); - mBtnMove = getChild("button move"); + mBtnMove = getChild("button move"); childSetAction("button move",LLFloaterTools::setEditTool, (void*)LLToolGrab::getInstance()); - mBtnEdit = getChild("button edit"); + mBtnEdit = getChild("button edit"); childSetAction("button edit",LLFloaterTools::setEditTool, (void*)LLToolCompTranslate::getInstance()); - mBtnCreate = getChild("button create"); + mBtnCreate = getChild("button create"); childSetAction("button create",LLFloaterTools::setEditTool, (void*)LLToolCompCreate::getInstance()); - mBtnLand = getChild("button land" ); + mBtnLand = getChild("button land" ); childSetAction("button land",LLFloaterTools::setEditTool, (void*)LLToolSelectLand::getInstance()); - mTextStatus = getChild("text status"); + mTextStatus = getChild("text status"); childSetCommitCallback("slider zoom",commit_slider_zoom,this); - mRadioZoom = getChild("radio zoom"); + mRadioZoom = getChild("radio zoom"); childSetCommitCallback("radio zoom",commit_radio_zoom,this); - mRadioOrbit = getChild("radio orbit"); + mRadioOrbit = getChild("radio orbit"); childSetCommitCallback("radio orbit",commit_radio_orbit,this); - mRadioPan = getChild("radio pan"); + mRadioPan = getChild("radio pan"); childSetCommitCallback("radio pan",commit_radio_pan,this); - mRadioMove = getChild("radio move"); + mRadioMove = getChild("radio move"); childSetCommitCallback("radio move",click_popup_grab_drag,this); - mRadioLift = getChild("radio lift"); + mRadioLift = getChild("radio lift"); childSetCommitCallback("radio lift",click_popup_grab_lift,this); - mRadioSpin = getChild("radio spin"); + mRadioSpin = getChild("radio spin"); childSetCommitCallback("radio spin",click_popup_grab_spin,NULL); - mRadioPosition = getChild("radio position"); + mRadioPosition = getChild("radio position"); childSetCommitCallback("radio position",commit_select_tool,NULL); - mRadioRotate = getChild("radio rotate"); + mRadioRotate = getChild("radio rotate"); childSetCommitCallback("radio rotate",commit_select_tool,NULL); - mRadioStretch = getChild("radio stretch"); + mRadioStretch = getChild("radio stretch"); childSetCommitCallback("radio stretch",commit_select_tool,NULL); - mRadioSelectFace = getChild("radio select face"); + mRadioSelectFace = getChild("radio select face"); childSetCommitCallback("radio select face",commit_select_tool,NULL); - mRadioAlign = getChild("radio align"); + mRadioAlign = getChild("radio align"); childSetCommitCallback("radio align",commit_select_tool,NULL); - mCheckSelectIndividual = getChild("checkbox edit linked parts"); + mCheckSelectIndividual = getChild("checkbox edit linked parts"); childSetValue("checkbox edit linked parts",(BOOL)gSavedSettings.getBOOL("EditLinkedParts")); childSetCommitCallback("checkbox edit linked parts",commit_select_component,this); - mCheckSnapToGrid = getChild("checkbox snap to grid"); + mCheckSnapToGrid = getChild("checkbox snap to grid"); childSetValue("checkbox snap to grid",(BOOL)gSavedSettings.getBOOL("SnapEnabled")); - mBtnGridOptions = getChild("Options..."); + mBtnGridOptions = getChild("Options..."); childSetAction("Options...",onClickGridOptions, this); - mCheckStretchUniform = getChild("checkbox uniform"); + mCheckStretchUniform = getChild("checkbox uniform"); childSetValue("checkbox uniform",(BOOL)gSavedSettings.getBOOL("ScaleUniform")); - mCheckStretchTexture = getChild("checkbox stretch textures"); + mCheckStretchTexture = getChild("checkbox stretch textures"); childSetValue("checkbox stretch textures",(BOOL)gSavedSettings.getBOOL("ScaleStretchTextures")); - mCheckLimitDrag = getChild("checkbox limit drag distance"); + mCheckLimitDrag = getChild("checkbox limit drag distance"); childSetValue("checkbox limit drag distance",(BOOL)gSavedSettings.getBOOL("LimitDragDistance")); - mTextGridMode = getChild("text ruler mode"); - mComboGridMode = getChild("combobox grid mode"); + mTextGridMode = getChild("text ruler mode"); + mComboGridMode = getChild("combobox grid mode"); childSetCommitCallback("combobox grid mode",commit_grid_mode, this); + // // Create Buttons // @@ -287,9 +288,7 @@ BOOL LLFloaterTools::postBuild() { found->setClickedCallback(boost::bind(&LLFloaterTools::setObjectType, toolData[t])); mButtons.push_back( found ); - } - else - { + }else{ llwarns << "Tool button not found! DOA Pending." << llendl; } } @@ -320,14 +319,14 @@ BOOL LLFloaterTools::postBuild() mBtnApplyToSelection = getChild("button apply to selection"); childSetAction("button apply to selection",click_apply_to_selection, (void*)0); - mSliderDozerSize = getChild("slider brush size"); + mSliderDozerSize = getChild("slider brush size"); childSetCommitCallback("slider brush size", commit_slider_dozer_size, (void*)0); childSetValue( "slider brush size", gSavedSettings.getF32("LandBrushSize")); - - mSliderDozerForce = getChild("slider force"); + + mSliderDozerForce = getChild("slider force"); childSetCommitCallback("slider force",commit_slider_dozer_force, (void*)0); // the setting stores the actual force multiplier, but the slider is logarithmic, so we convert here - childSetValue( "slider force", log10(gSavedSettings.getF32("LandBrushForce"))); + childSetValue("slider force", log10(gSavedSettings.getF32("LandBrushForce"))); mTab = getChild("Object Info Tabs"); if(mTab) @@ -491,7 +490,7 @@ void LLFloaterTools::refresh() { value_string = "0"; // An unlinked prim is "link 0". } - else + else { children.push_front(selected->getRootEdit()); // need root in the list too S32 index = 0; @@ -514,7 +513,7 @@ void LLFloaterTools::refresh() } childSetTextArg("link_num_obj_count", "[DESC]", desc_string); childSetTextArg("link_num_obj_count", "[NUM]", value_string); - + LLStringUtil::format_map_t selection_args; selection_args["COUNT"] = llformat("%.1d", (S32)prim_count); if(gMeshRepo.meshRezEnabled()) @@ -597,7 +596,7 @@ void LLFloaterTools::updatePopup(LLCoordGL center, MASK mask) childSetVisible("slider zoom", focus_visible); childSetEnabled("slider zoom", gCameraBtnZoom); - mRadioZoom ->set( !gCameraBtnOrbit && + mRadioZoom ->set(!gCameraBtnOrbit && !gCameraBtnPan && !(mask == MASK_ORBIT) && !(mask == (MASK_ORBIT | MASK_ALT)) && @@ -684,21 +683,21 @@ void LLFloaterTools::updatePopup(LLCoordGL center, MASK mask) switch (mObjectSelection->getSelectType()) { - case SELECT_TYPE_HUD: - mComboGridMode->add(getString("grid_screen_text")); - mComboGridMode->add(getString("grid_local_text")); - //mComboGridMode->add(getString("grid_reference_text")); - break; - case SELECT_TYPE_WORLD: - mComboGridMode->add(getString("grid_world_text")); - mComboGridMode->add(getString("grid_local_text")); - mComboGridMode->add(getString("grid_reference_text")); - break; - case SELECT_TYPE_ATTACHMENT: - mComboGridMode->add(getString("grid_attachment_text")); - mComboGridMode->add(getString("grid_local_text")); - mComboGridMode->add(getString("grid_reference_text")); - break; + case SELECT_TYPE_HUD: + mComboGridMode->add(getString("grid_screen_text")); + mComboGridMode->add(getString("grid_local_text")); + //mComboGridMode->add(getString("grid_reference_text")); + break; + case SELECT_TYPE_WORLD: + mComboGridMode->add(getString("grid_world_text")); + mComboGridMode->add(getString("grid_local_text")); + mComboGridMode->add(getString("grid_reference_text")); + break; + case SELECT_TYPE_ATTACHMENT: + mComboGridMode->add(getString("grid_attachment_text")); + mComboGridMode->add(getString("grid_local_text")); + mComboGridMode->add(getString("grid_reference_text")); + break; } mComboGridMode->setCurrentByIndex(index); @@ -832,8 +831,8 @@ void LLFloaterTools::onOpen() mParcelSelection = LLViewerParcelMgr::getInstance()->getFloatingParcelSelection(); mObjectSelection = LLSelectMgr::getInstance()->getEditSelection(); - // gMenuBarView->setItemVisible(std::string("Tools"), TRUE); - // gMenuBarView->arrange(); + //gMenuBarView->setItemVisible(std::string("Tools"), TRUE); + //gMenuBarView->arrange(); } // virtual @@ -868,7 +867,7 @@ void LLFloaterTools::onClose(bool app_quitting) // so manually reset tool to default (pie menu tool) LLToolMgr::getInstance()->getCurrentToolset()->selectFirstTool(); } - else + else { // Switch back to mouselook toolset LLToolMgr::getInstance()->setCurrentToolset(gMouselookToolset); @@ -963,10 +962,7 @@ void commit_slider_dozer_force(LLUICtrl *ctrl, void*) gSavedSettings.setF32("LandBrushForce", dozer_force); } - - - -void click_apply_to_selection(void* user) +void click_apply_to_selection(void*) { LLToolBrushLand::getInstance()->modifyLandInSelectionGlobal(); } @@ -1028,13 +1024,6 @@ void commit_select_component(LLUICtrl *ctrl, void *data) } } -void commit_grid_mode(LLUICtrl *ctrl, void *data) -{ - LLComboBox* combo = (LLComboBox*)ctrl; - - LLSelectMgr::getInstance()->setGridMode((EGridMode)combo->getCurrentIndex()); -} - // static void LLFloaterTools::setObjectType( LLPCode pcode ) { @@ -1043,6 +1032,13 @@ void LLFloaterTools::setObjectType( LLPCode pcode ) gFocusMgr.setMouseCapture(NULL); } +void commit_grid_mode(LLUICtrl *ctrl, void *data) +{ + LLComboBox* combo = (LLComboBox*)ctrl; + + LLSelectMgr::getInstance()->setGridMode((EGridMode)combo->getCurrentIndex()); +} + // static void LLFloaterTools::onClickGridOptions(void* data) { @@ -1069,25 +1065,25 @@ void LLFloaterTools::onSelectTreesGrass(LLUICtrl*, void*) { const std::string &selected = gFloaterTools->mComboTreesGrass->getValue(); LLPCode pcode = LLToolPlacer::getObjectType(); - if (pcode == LL_PCODE_LEGACY_TREE) + if (pcode == LL_PCODE_LEGACY_TREE) { gSavedSettings.setString("LastTree", selected); - } - else if (pcode == LL_PCODE_LEGACY_GRASS) + } + else if (pcode == LL_PCODE_LEGACY_GRASS) { gSavedSettings.setString("LastGrass", selected); - } + } } void LLFloaterTools::updateTreeGrassCombo(bool visible) { LLTextBox* tree_grass_label = getChild("tree_grass_label"); - if (visible) + if (visible) { LLPCode pcode = LLToolPlacer::getObjectType(); std::map::iterator it, end; std::string selected; - if (pcode == LL_PCODE_LEGACY_TREE) + if (pcode == LL_PCODE_LEGACY_TREE) { tree_grass_label->setVisible(visible); LLButton* button = getChild("ToolTree"); @@ -1096,8 +1092,8 @@ void LLFloaterTools::updateTreeGrassCombo(bool visible) selected = gSavedSettings.getString("LastTree"); it = LLVOTree::sSpeciesNames.begin(); end = LLVOTree::sSpeciesNames.end(); - } - else if (pcode == LL_PCODE_LEGACY_GRASS) + } + else if (pcode == LL_PCODE_LEGACY_GRASS) { tree_grass_label->setVisible(visible); LLButton* button = getChild("ToolGrass"); @@ -1106,8 +1102,8 @@ void LLFloaterTools::updateTreeGrassCombo(bool visible) selected = gSavedSettings.getString("LastGrass"); it = LLVOGrass::sSpeciesNames.begin(); end = LLVOGrass::sSpeciesNames.end(); - } - else + } + else { mComboTreesGrass->removeall(); mComboTreesGrass->setLabel(LLStringExplicit("")); // LLComboBox::removeall() does not clear the label @@ -1122,7 +1118,7 @@ void LLFloaterTools::updateTreeGrassCombo(bool visible) int select = 0, i = 0; - while (it != end) + while (it != end) { const std::string &species = it->first; mComboTreesGrass->add(species); ++i; diff --git a/indra/newview/llfloatertools.h b/indra/newview/llfloatertools.h index 7e8c5ef54..085a2774e 100644 --- a/indra/newview/llfloatertools.h +++ b/indra/newview/llfloatertools.h @@ -38,18 +38,18 @@ #include "llparcelselection.h" class LLButton; -class LLTextBox; -class LLTool; class LLCheckBoxCtrl; -class LLTabContainer; +class LLComboBox; class LLPanelPermissions; class LLPanelObject; class LLPanelVolume; class LLPanelContents; class LLPanelFace; class LLPanelLandInfo; -class LLComboBox; class LLSlider; +class LLTabContainer; +class LLTextBox; +class LLTool; class LLParcelSelection; class LLObjectSelection; @@ -72,8 +72,10 @@ public: virtual ~LLFloaterTools(); virtual void onOpen(); - virtual void onClose(bool app_quitting); virtual BOOL canClose(); + virtual void onClose(bool app_quitting); + /*virtual*/ void draw(); + virtual void onFocusReceived(); // call this once per frame to handle visibility, rect location, // button highlights, etc. @@ -93,24 +95,20 @@ public: PANEL_COUNT }; - /*virtual*/ void draw(); - void dirty(); void showPanel(EInfoPanel panel); void setStatusText(const std::string& text); - virtual void onFocusReceived(); static void setEditTool(void* data); void saveLastTool(); -private: +private: void refresh(); static void setObjectType( LLPCode pcode ); static void onClickGridOptions(void* data); public: - LLButton *mBtnFocus; LLButton *mBtnMove; LLButton *mBtnEdit; @@ -146,6 +144,7 @@ public: LLCheckBoxCtrl* mCheckStretchTexture; LLCheckBoxCtrl* mCheckLimitDrag; + LLButton *mBtnRotateLeft; LLButton *mBtnRotateReset; LLButton *mBtnRotateRight; diff --git a/indra/newview/llfloaterurlentry.h b/indra/newview/llfloaterurlentry.h index 6d04326cf..dbc345a1c 100644 --- a/indra/newview/llfloaterurlentry.h +++ b/indra/newview/llfloaterurlentry.h @@ -1,6 +1,6 @@ /** - * @file llfloaternamedesc.h - * @brief LLFloaterNameDesc class definition + * @file llfloaterurlentry.h + * @brief LLFloaterURLEntry class definition * * $LicenseInfo:firstyear=2007&license=viewergpl$ * diff --git a/indra/newview/llglsandbox.cpp b/indra/newview/llglsandbox.cpp index 07f73ac7a..be658d131 100644 --- a/indra/newview/llglsandbox.cpp +++ b/indra/newview/llglsandbox.cpp @@ -67,11 +67,14 @@ #include "llresmgr.h" #include "pipeline.h" #include "llspatialpartition.h" - + // [RLVa:KB] #include "rlvhandler.h" // [/RLVa:KB] +// Height of the yellow selection highlight posts for land +const F32 PARCEL_POST_HEIGHT = 0.666f; + // Returns true if you got at least one object void LLToolSelectRect::handleRectangleSelection(S32 x, S32 y, MASK mask) { @@ -708,29 +711,27 @@ void LLViewerParcelMgr::renderCollisionSegments(U8* segments, BOOL use_pass, LLV x2 = x1 + PARCEL_GRID_STEP_METERS; y2 = y1; - { - dy = (pos_y - y1) + DIST_OFFSET; - - if (pos_x < x1) - dx = pos_x - x1; - else if (pos_x > x2) - dx = pos_x - x2; - else - dx = 0; - - dist = dx*dx+dy*dy; + dy = (pos_y - y1) + DIST_OFFSET; - if (dist < MIN_DIST_SQ) - alpha = MAX_ALPHA; - else if (dist > MAX_DIST_SQ) - alpha = 0.0f; - else - alpha = 30/dist; + if (pos_x < x1) + dx = pos_x - x1; + else if (pos_x > x2) + dx = pos_x - x2; + else + dx = 0; - alpha = llclamp(alpha, 0.0f, MAX_ALPHA); + dist = dx*dx+dy*dy; - gGL.color4f(1.f, 1.f, 1.f, alpha); - } + if (dist < MIN_DIST_SQ) + alpha = MAX_ALPHA; + else if (dist > MAX_DIST_SQ) + alpha = 0.0f; + else + alpha = 30/dist; + + alpha = llclamp(alpha, 0.0f, MAX_ALPHA); + + gGL.color4f(1.f, 1.f, 1.f, alpha); if ((pos_y - y1) < 0) direction = SOUTH_MASK; else direction = NORTH_MASK; @@ -748,29 +749,27 @@ void LLViewerParcelMgr::renderCollisionSegments(U8* segments, BOOL use_pass, LLV x2 = x1; y2 = y1 + PARCEL_GRID_STEP_METERS; - { - dx = (pos_x - x1) + DIST_OFFSET; - - if (pos_y < y1) - dy = pos_y - y1; - else if (pos_y > y2) - dy = pos_y - y2; - else - dy = 0; + dx = (pos_x - x1) + DIST_OFFSET; - dist = dx*dx+dy*dy; - - if (dist < MIN_DIST_SQ) - alpha = MAX_ALPHA; - else if (dist > MAX_DIST_SQ) - alpha = 0.0f; - else - alpha = 30/dist; + if (pos_y < y1) + dy = pos_y - y1; + else if (pos_y > y2) + dy = pos_y - y2; + else + dy = 0; - alpha = llclamp(alpha, 0.0f, MAX_ALPHA); + dist = dx*dx+dy*dy; - gGL.color4f(1.f, 1.f, 1.f, alpha); - } + if (dist < MIN_DIST_SQ) + alpha = MAX_ALPHA; + else if (dist > MAX_DIST_SQ) + alpha = 0.0f; + else + alpha = 30/dist; + + alpha = llclamp(alpha, 0.0f, MAX_ALPHA); + + gGL.color4f(1.f, 1.f, 1.f, alpha); if ((pos_x - x1) > 0) direction = WEST_MASK; else direction = EAST_MASK; @@ -927,4 +926,3 @@ void LLViewerObjectList::renderObjectBeacons() } - \ No newline at end of file diff --git a/indra/newview/llhudtext.h b/indra/newview/llhudtext.h index 9bdbc0c31..2583862cc 100644 --- a/indra/newview/llhudtext.h +++ b/indra/newview/llhudtext.h @@ -99,6 +99,7 @@ public: void setAlpha(F32 alpha); void setZCompare(const BOOL zcompare); void setDoFade(const BOOL do_fade); + bool getDoFade() const { return mDoFade; } // void setVisibleOffScreen(BOOL visible) { mVisibleOffScreen = visible; } // mMaxLines of -1 means unlimited lines. diff --git a/indra/newview/llmediaremotectrl.cpp b/indra/newview/llmediaremotectrl.cpp index e8d04ff2b..50d3276b8 100644 --- a/indra/newview/llmediaremotectrl.cpp +++ b/indra/newview/llmediaremotectrl.cpp @@ -241,7 +241,7 @@ void LLMediaRemoteCtrl::enableMediaButtons() LLButton* music_stop_btn = mMusicStopBtn; LLButton* music_pause_btn = mMusicPauseBtn; LLButton* media_play_btn = mMediaPlayBtn; - LLButton* media_stop_btn = mMediaPlayBtn; + LLButton* media_stop_btn = mMediaStopBtn; LLButton* media_pause_btn = mMediaPauseBtn; LLIconCtrl* media_icon = mMediaIcon; diff --git a/indra/newview/llpanelclassified.cpp b/indra/newview/llpanelclassified.cpp index 5421cd886..1d3e50360 100644 --- a/indra/newview/llpanelclassified.cpp +++ b/indra/newview/llpanelclassified.cpp @@ -336,7 +336,7 @@ void LLPanelClassified::processProperties(void* data, EAvatarProcessorType type) LLAvatarClassifiedInfo* c_info = static_cast(data); if(c_info && mClassifiedID == c_info->classified_id) { - LLAvatarPropertiesProcessor::getInstance()->removeObserver(mCreatorID, this); + LLAvatarPropertiesProcessor::getInstance()->removeObserver(LLUUID::null, this); // "Location text" is actually the original // name that owner gave the parcel, and the location. @@ -571,7 +571,7 @@ void LLPanelClassified::sendClassifiedInfoRequest() { if (mClassifiedID != mRequestedID) { - LLAvatarPropertiesProcessor::getInstance()->addObserver(mCreatorID, this); + LLAvatarPropertiesProcessor::getInstance()->addObserver(LLUUID::null, this); LLAvatarPropertiesProcessor::getInstance()->sendClassifiedInfoRequest(mClassifiedID); mDataRequested = TRUE; diff --git a/indra/newview/llpanelobject.cpp b/indra/newview/llpanelobject.cpp index 4c2d0a38f..21868422e 100644 --- a/indra/newview/llpanelobject.cpp +++ b/indra/newview/llpanelobject.cpp @@ -115,15 +115,6 @@ enum { MI_VOLUME_COUNT }; - - - - - - - - - enum { MI_HOLE_SAME, MI_HOLE_CIRCLE, @@ -377,11 +368,6 @@ BOOL LLPanelObject::postBuild() childSetCommitCallback("sculpt mirror control", onCommitSculptType, this); mCtrlSculptInvert = getChild("sculpt invert control"); childSetCommitCallback("sculpt invert control", onCommitSculptType, this); - - - - - // Start with everyone disabled clearCtrls(); @@ -455,7 +441,7 @@ void LLPanelObject::getState( ) } LLCalc* calcp = LLCalc::getInstance(); - + LLVOVolume *volobjp = NULL; if ( objectp && (objectp->getPCode() == LL_PCODE_VOLUME)) { @@ -477,7 +463,7 @@ void LLPanelObject::getState( ) } // can move or rotate only linked group with move permissions, or sub-object with move and modify perms - BOOL enable_move = objectp->permMove() && !objectp->isPermanentEnforced() && ((root_objectp == NULL) || !root_objectp->isPermanentEnforced()) && !objectp->isAttachment() && (objectp->permModify() || !gSavedSettings.getBOOL("EditLinkedParts")); + BOOL enable_move = objectp->permMove() && !objectp->isPermanentEnforced() && ((root_objectp == NULL) || !root_objectp->isPermanentEnforced()) && ( (objectp->permModify() && !objectp->isAttachment()) || !gSavedSettings.getBOOL("EditLinkedParts")); BOOL enable_scale = objectp->permMove() && !objectp->isPermanentEnforced() && ((root_objectp == NULL) || !root_objectp->isPermanentEnforced()) && objectp->permModify(); BOOL enable_rotate = objectp->permMove() && !objectp->isPermanentEnforced() && ((root_objectp == NULL) || !root_objectp->isPermanentEnforced()) && ( (objectp->permModify() && !objectp->isAttachment()) || !gSavedSettings.getBOOL("EditLinkedParts")); @@ -527,8 +513,9 @@ void LLPanelObject::getState( ) mCtrlPosX->setEnabled(enable_move); mCtrlPosY->setEnabled(enable_move); mCtrlPosZ->setEnabled(enable_move); - mBtnLinkObj->setEnabled((enable_move && !single_volume)); - mBtnUnlinkObj->setEnabled((enable_move && (selected_count > 1))); + mBtnLinkObj->setEnabled(LLSelectMgr::getInstance()->enableLinkObjects()); + mBtnUnlinkObj->setEnabled((LLSelectMgr::getInstance()->enableUnlinkObjects() + && (selected_count > 1) && LLSelectMgr::getInstance()->getSelection()->getRootObjectCount()<=1)); mBtnCopyPos->setEnabled(enable_move); mBtnPastePos->setEnabled(enable_move); mBtnPastePosClip->setEnabled(enable_move); @@ -623,6 +610,7 @@ void LLPanelObject::getState( ) childSetVisible("select_single", TRUE); childSetEnabled("select_single", TRUE); } + BOOL is_flexible = volobjp && volobjp->isFlexible(); BOOL is_permanent = root_objectp->flagObjectPermanent(); BOOL is_permanent_enforced = root_objectp->isPermanentEnforced(); @@ -1231,19 +1219,13 @@ void LLPanelObject::getState( ) default: if (editable) { - - - - - - - mSpinScaleX->set( 1.f - scale_x ); mSpinScaleY->set( 1.f - scale_y ); mSpinScaleX->setMinValue(-1.f); mSpinScaleX->setMaxValue(1.f); mSpinScaleY->setMinValue(-1.f); mSpinScaleY->setMaxValue(1.f); + // Torus' Hole Size is Box/Cyl/Prism's Taper calcp->setVar(LLCalc::X_TAPER, 1.f - scale_x); calcp->setVar(LLCalc::Y_TAPER, 1.f - scale_y); @@ -1403,7 +1385,9 @@ void LLPanelObject::getState( ) // sculpt texture if (selected_item == MI_SCULPT) { - LLUUID id; + + + LLUUID id; LLSculptParams *sculpt_params = (LLSculptParams *)objectp->getParameterEntry(LLNetworkData::PARAMS_SCULPT); @@ -1414,10 +1398,11 @@ void LLPanelObject::getState( ) mSculptTextureRevert = sculpt_params->getSculptTexture(); mSculptTypeRevert = sculpt_params->getSculptType(); } + U8 sculpt_type = sculpt_params->getSculptType(); U8 sculpt_stitching = sculpt_type & LL_SCULPT_TYPE_MASK; BOOL sculpt_invert = sculpt_type & LL_SCULPT_FLAG_INVERT; - BOOL sculpt_mirror = sculpt_type & LL_SCULPT_FLAG_MIRROR; + BOOL sculpt_mirror = sculpt_type & LL_SCULPT_FLAG_MIRROR; isMesh = (sculpt_stitching == LL_SCULPT_TYPE_MESH); LLTextureCtrl* mTextureCtrl = getChild("sculpt texture control"); @@ -1465,7 +1450,7 @@ void LLPanelObject::getState( ) mCtrlSculptMirror->setVisible(sculpt_texture_visible && !isMesh); mCtrlSculptInvert->setVisible(sculpt_texture_visible && !isMesh); - + //---------------------------------------------------------------------------- mObject = objectp; @@ -1473,7 +1458,7 @@ void LLPanelObject::getState( ) } // static -BOOL LLPanelObject::precommitValidate( LLUICtrl* ctrl, void* userdata ) +bool LLPanelObject::precommitValidate( const LLSD& data ) { // TODO: Richard will fill this in later. return TRUE; // FALSE means that validation failed and new value should not be commited. @@ -1612,86 +1597,6 @@ void LLPanelObject::getVolumeParams(LLVolumeParams& volume_params) U8 path; switch ( selected_type ) { - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - case MI_CYLINDER: profile = LL_PCODE_PROFILE_CIRCLE; path = LL_PCODE_PATH_LINE; @@ -1900,7 +1805,7 @@ void LLPanelObject::getVolumeParams(LLVolumeParams& volume_params) // Scale X,Y F32 scale_x = mSpinScaleX->get(); F32 scale_y = mSpinScaleY->get(); - // + // //if ( was_selected_type == MI_BOX || was_selected_type == MI_CYLINDER || was_selected_type == MI_PRISM) if ( was_selected_type == MI_BOX || was_selected_type == MI_CYLINDER || was_selected_type == MI_PRISM || was_selected_type == MI_SPHERE || @@ -1934,7 +1839,6 @@ void LLPanelObject::getVolumeParams(LLVolumeParams& volume_params) // Revolutions F32 revolutions = mSpinRevolutions->get(); - if ( selected_type == MI_SPHERE ) { // Snap values to valid sphere parameters. @@ -2140,7 +2044,7 @@ void LLPanelObject::sendPosition(BOOL btn_down) LLVector3 newpos(mCtrlPosX->get(), mCtrlPosY->get(), mCtrlPosZ->get()); LLViewerRegion* regionp = mObject->getRegion(); - + // Clamp the Z height const F32 height = newpos.mV[VZ]; const F32 min_height = LLWorld::getInstance()->getMinAllowedZ(mObject, mObject->getPositionGlobal()); diff --git a/indra/newview/llpanelobject.h b/indra/newview/llpanelobject.h index 6bcf109ad..ae2397294 100644 --- a/indra/newview/llpanelobject.h +++ b/indra/newview/llpanelobject.h @@ -63,15 +63,15 @@ public: void refresh(); - static BOOL precommitValidate(LLUICtrl* ctrl,void* userdata); + static bool precommitValidate(const LLSD& data); static void onCommitLock(LLUICtrl *ctrl, void *data); static void onCommitPosition( LLUICtrl* ctrl, void* userdata); static void onCommitScale( LLUICtrl* ctrl, void* userdata); static void onCommitRotation( LLUICtrl* ctrl, void* userdata); - static void onCommitPhysics( LLUICtrl* ctrl, void* userdata); static void onCommitTemporary( LLUICtrl* ctrl, void* userdata); static void onCommitPhantom( LLUICtrl* ctrl, void* userdata); + static void onCommitPhysics( LLUICtrl* ctrl, void* userdata); static void onLinkObj( void* user_data); static void onUnlinkObj( void* user_data); @@ -86,8 +86,8 @@ public: static void onPasteRotClip( void* user_data); static void onCopyParams( void* user_data); static void onPasteParams( void* user_data); - - static void onCommitParametric( LLUICtrl* ctrl, void* userdata); + + static void onCommitParametric(LLUICtrl* ctrl, void* userdata); static void onCommitMaterial( LLUICtrl* ctrl, void* userdata); @@ -96,7 +96,7 @@ public: static void onSelectSculpt( LLUICtrl* ctrl, void* userdata); static BOOL onDropSculpt( LLUICtrl* ctrl, LLInventoryItem* item, void* ud); static void onCommitSculptType( LLUICtrl *ctrl, void* userdata); - + static void onClickBuildConstants(void *); static const LLUUID& findItemID(const LLUUID& asset_id); @@ -109,23 +109,23 @@ protected: void sendIsPhysical(); void sendIsTemporary(); void sendIsPhantom(); + void sendSculpt(); void getVolumeParams(LLVolumeParams& volume_params); protected: - static LLVector3 mClipboardPos; static LLVector3 mClipboardSize; static LLVector3 mClipboardRot; static LLVolumeParams mClipboardVolumeParams; static BOOL hasParamClipboard; - + S32 mComboMaterialItemCount; LLTextBox* mLabelMaterial; LLComboBox* mComboMaterial; - + // Per-object options LLTextBox* mLabelBaseType; LLComboBox* mComboBaseType; @@ -189,15 +189,15 @@ protected: LLButton *mBtnCopyPos; LLButton *mBtnPastePos; LLButton *mBtnPastePosClip; - + LLButton *mBtnCopySize; LLButton *mBtnPasteSize; LLButton *mBtnPasteSizeClip; - + LLButton *mBtnCopyRot; LLButton *mBtnPasteRot; LLButton *mBtnPasteRotClip; - + LLButton *mBtnCopyParams; LLButton *mBtnPasteParams; @@ -212,9 +212,6 @@ protected: LLCheckBoxCtrl *mCtrlSculptMirror; LLCheckBoxCtrl *mCtrlSculptInvert; - - - LLVector3 mCurEulerDegrees; // to avoid sending rotation when not changed BOOL mIsPhysical; // to avoid sending "physical" when not changed BOOL mIsTemporary; // to avoid sending "temporary" when not changed diff --git a/indra/newview/llpanelvolume.cpp b/indra/newview/llpanelvolume.cpp index ac0085757..b7ddd2e99 100644 --- a/indra/newview/llpanelvolume.cpp +++ b/indra/newview/llpanelvolume.cpp @@ -44,16 +44,15 @@ #include "llmaterialtable.h" #include "llpermissionsflags.h" #include "llstring.h" -#include "lltrans.h" #include "llvolume.h" #include "m3math.h" #include "material_codes.h" // project includes -#include "llagent.h" #include "llbutton.h" #include "llcheckboxctrl.h" #include "llcolorswatch.h" +#include "lltexturectrl.h" #include "llcombobox.h" #include "llfirstuse.h" #include "llfocusmgr.h" @@ -67,6 +66,7 @@ #include "lltool.h" #include "lltoolcomp.h" #include "lltoolmgr.h" +#include "lltrans.h" #include "llui.h" #include "llviewerobject.h" #include "llviewerregion.h" @@ -75,16 +75,16 @@ #include "llworld.h" #include "pipeline.h" #include "llviewershadermgr.h" +#include "llnotificationsutil.h" #include "lldrawpool.h" #include "lluictrlfactory.h" -#include "lltexturectrl.h" + // For mesh physics +#include "llagent.h" #include "llviewercontrol.h" #include "llmeshrepository.h" -#include "llnotificationsutil.h" - #include // "Features" Tab @@ -189,7 +189,7 @@ BOOL LLPanelVolume::postBuild() } LLPanelVolume::LLPanelVolume(const std::string& name) - : LLPanel(name) + : LLPanel(name) { setMouseOpaque(FALSE); @@ -460,7 +460,7 @@ void LLPanelVolume::getState( ) } // static -BOOL LLPanelVolume::precommitValidate(LLUICtrl* ctrl,void* userdata) +bool LLPanelVolume::precommitValidate( const LLSD& data ) { // TODO: Richard will fill this in later. return TRUE; // FALSE means that validation failed and new value should not be commited. @@ -487,7 +487,7 @@ void LLPanelVolume::refresh() getChildView("Light Focus")->setVisible( visible); getChildView("Light Ambiance")->setVisible( visible); getChildView("light texture control")->setVisible( visible); - + bool enable_mesh = false; LLSD sim_features; @@ -693,7 +693,6 @@ void LLPanelVolume::onLightSelectColor(LLUICtrl* ctrl, void* userdata) } } - void LLPanelVolume::onLightSelectTexture(LLUICtrl* ctrl, void* userdata) { LLPanelVolume* self = (LLPanelVolume*) userdata; @@ -768,6 +767,8 @@ void LLPanelVolume::onCommitLight( LLUICtrl* ctrl, void* userdata ) //self->getChildView("Light Ambiance")->setEnabled(FALSE); } } + + } // static diff --git a/indra/newview/llpanelvolume.h b/indra/newview/llpanelvolume.h index 1446c72db..f0acff99b 100644 --- a/indra/newview/llpanelvolume.h +++ b/indra/newview/llpanelvolume.h @@ -64,7 +64,7 @@ public: void sendIsLight(); void sendIsFlexible(); - static BOOL precommitValidate(LLUICtrl* ctrl,void* userdata); + static bool precommitValidate(const LLSD& data); static void onCommitIsLight( LLUICtrl* ctrl, void* userdata); static void onCommitLight( LLUICtrl* ctrl, void* userdata); @@ -91,6 +91,7 @@ protected: void sendPhysicsDensity(LLUICtrl* ctrl, void* userdata); void handleResponseChangeToFlexible(const LLSD &pNotification, const LLSD &pResponse); + /* LLTextBox* mLabelSelectSingleMessage; // Light @@ -116,6 +117,7 @@ protected: LLPointer mObject; LLPointer mRootObject; LLTextBox* mComboPhysicsShapeLabel; + LLComboBox* mComboPhysicsShapeType; LLSpinCtrl* mSpinPhysicsGravity; LLSpinCtrl* mSpinPhysicsFriction; diff --git a/indra/newview/llpreview.cpp b/indra/newview/llpreview.cpp index aa6905f2b..c8b3a4b1f 100644 --- a/indra/newview/llpreview.cpp +++ b/indra/newview/llpreview.cpp @@ -563,6 +563,7 @@ void LLMultiPreview::open() /*Flawfinder: ignore*/ { frontmost_preview->loadAsset(); } + LLMultiFloater::postBuild(); } diff --git a/indra/newview/llpreviewtexture.cpp b/indra/newview/llpreviewtexture.cpp index d4b0d7099..cfb542b2f 100644 --- a/indra/newview/llpreviewtexture.cpp +++ b/indra/newview/llpreviewtexture.cpp @@ -44,6 +44,7 @@ #include "llinventory.h" #include "llnotificationsutil.h" #include "llresmgr.h" +#include "lltrans.h" #include "lltextbox.h" #include "lltextureview.h" #include "llui.h" @@ -56,13 +57,13 @@ const S32 PREVIEW_TEXTURE_MIN_WIDTH = 300; const S32 PREVIEW_TEXTURE_MIN_HEIGHT = 120; -const F32 PREVIEW_TEXTURE_MAX_ASPECT = 200.f; -const F32 PREVIEW_TEXTURE_MIN_ASPECT = 0.005f; - const S32 CLIENT_RECT_VPAD = 4; const F32 SECONDS_TO_SHOW_FILE_SAVED_MSG = 8.f; +const F32 PREVIEW_TEXTURE_MAX_ASPECT = 200.f; +const F32 PREVIEW_TEXTURE_MIN_ASPECT = 0.005f; + LLPreviewTexture * LLPreviewTexture::sInstance; LLPreviewTexture::LLPreviewTexture(const std::string& name, const LLRect& rect, @@ -163,8 +164,11 @@ LLPreviewTexture::~LLPreviewTexture() { getWindow()->decBusyCount(); } - mImage->setBoostLevel(mImageOldBoostLevel); - mImage = NULL; + if(mImage) + { + mImage->setBoostLevel(mImageOldBoostLevel); + mImage = NULL; + } sInstance = NULL; } @@ -185,14 +189,12 @@ void LLPreviewTexture::init() { childSetAction("Copy To Inventory",LLPreview::onBtnCopyToInv,this); } - else if (mShowKeepDiscard) { childSetAction("Keep",onKeepBtn,this); childSetAction("Discard",onDiscardBtn,this); } - - else + else { // If the buttons are hidden move stuff down to use the space. @@ -233,7 +235,7 @@ void LLPreviewTexture::init() childSetText("uuid", getItemID().asString()); childSetText("uploader", getItemCreatorName()); childSetText("uploadtime", getItemCreationDate()); - childSetText("alphanote", std::string("Loading...")); + childSetText("alphanote", LLTrans::getString("LoadingData")); } } @@ -287,12 +289,12 @@ void LLPreviewTexture::draw() if (!mImage->getIsAlphaMask()) { childSetColor("alphanote", LLColor4::green); - childSetText("alphanote", std::string("No Alpha")); + childSetText("alphanote", getString("No Alpha")); } else { childSetColor("alphanote", LLColor4::red); - childSetText("alphanote", std::string("Has Alpha")); + childSetText("alphanote", getString("Has Alpha")); } mAlphaMaskResult = mImage->getIsAlphaMask(); } @@ -320,8 +322,7 @@ void LLPreviewTexture::draw() if( mLoadingFullImage ) { - // *TODO: Translate - LLFontGL::getFontSansSerif()->renderUTF8(std::string("Receiving:"), 0, + LLFontGL::getFontSansSerif()->renderUTF8(LLTrans::getString("Receiving"), 0, interior.mLeft + 4, interior.mBottom + 4, LLColor4::white, LLFontGL::LEFT, LLFontGL::BOTTOM, @@ -357,8 +358,7 @@ void LLPreviewTexture::draw() } else if(!mSavedFileTimer.hasExpired()) { - // *TODO: Translate - LLFontGL::getFontSansSerif()->renderUTF8(std::string("File Saved"), 0, + LLFontGL::getFontSansSerif()->renderUTF8(LLTrans::getString("FileSaved"), 0, interior.mLeft + 4, interior.mBottom + 4, LLColor4::white, LLFontGL::LEFT, LLFontGL::BOTTOM, @@ -367,6 +367,7 @@ void LLPreviewTexture::draw() } } } + } @@ -408,6 +409,7 @@ void LLPreviewTexture::saveAs_continued(LLViewerInventoryItem const* item, AIFil mSaveFileName = filepicker->getFilename(); mLoadingFullImage = TRUE; getWindow()->incBusyCount(); + mImage->forceToSaveRawImage(0) ;//re-fetch the raw image if the old one is removed. mImage->setLoadedCallback( LLPreviewTexture::onFileLoadedForSave, 0, TRUE, FALSE, new LLUUID( mItemUUID ), &mCallbackTextureList ); @@ -497,7 +499,7 @@ std::string LLPreviewTexture::getItemCreationDate() timeToFormattedString(item->getCreationDate(), gSavedSettings.getString("TimestampFormat"), time); return time; } - return "Unknown"; + return getString("Unknown"); } std::string LLPreviewTexture::getItemCreatorName() @@ -510,7 +512,7 @@ std::string LLPreviewTexture::getItemCreatorName() mCreatorKey = item->getCreatorUUID(); return name; } - return "Unknown"; + return getString("Unknown"); } diff --git a/indra/newview/lltexturefetch.cpp b/indra/newview/lltexturefetch.cpp index a9f31ca0f..d28d19ca2 100644 --- a/indra/newview/lltexturefetch.cpp +++ b/indra/newview/lltexturefetch.cpp @@ -931,7 +931,7 @@ void LLTextureFetchWorker::startWork(S32 param) // Called from LLWorkerThread::processRequest() bool LLTextureFetchWorker::doWork(S32 param) { - static const F32 FETCHING_TIMEOUT = 120.f;//seconds + static const F32 FETCHING_TIMEOUT = 15.f;//seconds LLMutexLock lock(&mWorkMutex); diff --git a/indra/newview/lltoolbrush.cpp b/indra/newview/lltoolbrush.cpp index 41096c3d3..7dc0860e5 100644 --- a/indra/newview/lltoolbrush.cpp +++ b/indra/newview/lltoolbrush.cpp @@ -35,10 +35,10 @@ #include "lltoolbrush.h" #include "lltoolselectland.h" +// library headers #include "llgl.h" #include "llnotificationsutil.h" #include "llrender.h" - #include "message.h" #include "llagent.h" diff --git a/indra/newview/lltoolfocus.cpp b/indra/newview/lltoolfocus.cpp index 7052ff916..5f0bf0ff6 100644 --- a/indra/newview/lltoolfocus.cpp +++ b/indra/newview/lltoolfocus.cpp @@ -221,7 +221,7 @@ void LLToolCamera::pickCallback(const LLPickInfo& pick_info) gViewerWindow->getLeftMouseDown() && !freeze_time && (hit_obj == gAgentAvatarp || - (hit_obj && hit_obj->isAttachment() && LLVOAvatar::findAvatarFromAttachment(hit_obj)->isSelf()))) + (hit_obj && hit_obj->isAttachment() && LLVOAvatar::findAvatarFromAttachment(hit_obj)->isSelf()))) { LLToolCamera::getInstance()->mMouseSteering = TRUE; } diff --git a/indra/newview/lltoolgrab.cpp b/indra/newview/lltoolgrab.cpp index 0bde80872..6765f87bb 100644 --- a/indra/newview/lltoolgrab.cpp +++ b/indra/newview/lltoolgrab.cpp @@ -1140,7 +1140,7 @@ void send_ObjectGrab_message(LLViewerObject* object, const LLPickInfo & pick, co LLMessageSystem *msg = gMessageSystem; msg->newMessageFast(_PREHASH_ObjectGrab); - msg->nextBlockFast(_PREHASH_AgentData); + msg->nextBlockFast( _PREHASH_AgentData); msg->addUUIDFast(_PREHASH_AgentID, gAgent.getID()); msg->addUUIDFast(_PREHASH_SessionID, gAgent.getSessionID()); msg->nextBlockFast( _PREHASH_ObjectData); @@ -1169,6 +1169,7 @@ void send_ObjectGrab_message(LLViewerObject* object, const LLPickInfo & pick, co */ } + void send_ObjectDeGrab_message(LLViewerObject* object, const LLPickInfo & pick) { if (!object) return; @@ -1190,3 +1191,6 @@ void send_ObjectDeGrab_message(LLViewerObject* object, const LLPickInfo & pick) msg->addVector3("Binormal", pick.mBinormal); msg->sendMessage(object->getRegion()->getHost()); } + + + diff --git a/indra/newview/lltoolmgr.cpp b/indra/newview/lltoolmgr.cpp index db5d56fd8..efeb6bc2f 100644 --- a/indra/newview/lltoolmgr.cpp +++ b/indra/newview/lltoolmgr.cpp @@ -34,8 +34,9 @@ #include "lltoolmgr.h" -#include "lltool.h" +#include "llfirstuse.h" // tools and manipulators +#include "lltool.h" #include "llmanipscale.h" #include "llselectmgr.h" #include "lltoolbrush.h" @@ -59,7 +60,6 @@ #include "llviewerjoystick.h" #include "llviewermenu.h" #include "llviewerparcelmgr.h" -#include "llfirstuse.h" #include "llfloatertools.h" #include "rlvhandler.h" @@ -315,7 +315,7 @@ void LLToolMgr::toggleBuildMode() { handle_toggle_flycam(); } - + if (gAgentCamera.getFocusOnAvatar()) { // zoom in if we're looking at the avatar @@ -514,3 +514,7 @@ void LLToolset::selectPrevTool() selectToolByIndex((S32)mToolList.size()-1); } } + +//////////////////////////////////////////////////////////////////////////// + + diff --git a/indra/newview/lltoolplacer.cpp b/indra/newview/lltoolplacer.cpp index 063b28f1e..9e3062db4 100644 --- a/indra/newview/lltoolplacer.cpp +++ b/indra/newview/lltoolplacer.cpp @@ -189,6 +189,7 @@ S32 LLToolPlacer::getTreeGrassSpecies(std::map &table, const c return (rand() % max); } } + BOOL LLToolPlacer::addObject( LLPCode pcode, S32 x, S32 y, U8 use_physics ) { LLVector3 ray_start_region; @@ -224,7 +225,6 @@ BOOL LLToolPlacer::addObject( LLPCode pcode, S32 x, S32 y, U8 use_physics ) // Set params for new object based on its PCode. LLQuaternion rotation; LLVector3 scale = DEFAULT_OBJECT_SCALE; - U8 material = LL_MCODE_WOOD; static LLCachedControl enable_BP("LiruEnableBuildPrefs", true); static LLCachedControl duplicate("CreateToolCopySelection", true); @@ -486,6 +486,7 @@ BOOL LLToolPlacer::addObject( LLPCode pcode, S32 x, S32 y, U8 use_physics ) //If we are using the defaults, and we aren't duplicating if(enable_BP && !duplicate) //then, actually call expectRez so that importtracker can do its thing, which sadly only works close up. gImportTracker.expectRez(); + // Spawns a message, so must be after above send if (create_selected) { diff --git a/indra/newview/lltoolselect.cpp b/indra/newview/lltoolselect.cpp index 15eb7ea00..403113e50 100644 --- a/indra/newview/lltoolselect.cpp +++ b/indra/newview/lltoolselect.cpp @@ -108,7 +108,7 @@ LLObjectSelectionHandle LLToolSelect::handleObjectSelection(const LLPickInfo& pi } } } - + if ( (gRlvHandler.hasBehaviour(RLV_BHVR_FARTOUCH)) && (object) && ((!object->isAttachment()) || (!object->permYouOwner())) && (dist_vec_squared(gAgent.getPositionAgent(), object->getPositionRegion()) > 1.5f * 1.5f) ) { @@ -265,7 +265,7 @@ LLObjectSelectionHandle LLToolSelect::handleObjectSelection(const LLPickInfo& pi } //if(!object) // Cleanup temp select settings above. - if (temp_select || LLSelectMgr::getInstance()->mAllowSelectAvatar) + if (temp_select ||LLSelectMgr::getInstance()->mAllowSelectAvatar) { gSavedSettings.setBOOL("SelectOwnedOnly", select_owned); gSavedSettings.setBOOL("SelectMovableOnly", select_movable); diff --git a/indra/newview/llviewerdisplay.cpp b/indra/newview/llviewerdisplay.cpp index 291d3a3fe..64014c015 100644 --- a/indra/newview/llviewerdisplay.cpp +++ b/indra/newview/llviewerdisplay.cpp @@ -178,7 +178,7 @@ void display_startup() void display_update_camera(bool tiling=false) { - llpushcallstacks ; + llpushcallstacks; // TODO: cut draw distance down if customizing avatar? // TODO: cut draw distance on per-parcel basis? @@ -289,8 +289,8 @@ void display(BOOL rebuild, F32 zoom_factor, int subfield, BOOL for_snapshot, boo stop_glerror(); gPipeline.disableLights(); - //reset vertex buffers if needed + //reset vertex buffers if needed gPipeline.doResetVertexBuffers(); stop_glerror(); @@ -620,6 +620,7 @@ void display(BOOL rebuild, F32 zoom_factor, int subfield, BOOL for_snapshot, boo gViewerWindow->setup3DViewport(); gPipeline.resetFrameStats(); // Reset per-frame statistics. + if (!gDisconnected) { LLAppViewer::instance()->pingMainloopTimeout("Display:Update"); @@ -644,7 +645,7 @@ void display(BOOL rebuild, F32 zoom_factor, int subfield, BOOL for_snapshot, boo LLHUDManager::getInstance()->updateEffects(); LLHUDObject::updateAll(); stop_glerror(); - + if(!tiling) { gFrameStats.start(LLFrameStats::UPDATE_GEOM); @@ -706,7 +707,7 @@ void display(BOOL rebuild, F32 zoom_factor, int subfield, BOOL for_snapshot, boo LLGLState::checkTextureChannels(); LLGLState::checkClientArrays(); - BOOL to_texture = gPipeline.canUseVertexShaders() && + BOOL to_texture = gPipeline.canUseVertexShaders() && LLPipeline::sRenderGlow; LLAppViewer::instance()->pingMainloopTimeout("Display:Swap"); @@ -823,6 +824,7 @@ void display(BOOL rebuild, F32 zoom_factor, int subfield, BOOL for_snapshot, boo llpushcallstacks ; LLGLState::checkStates(); LLGLState::checkClientArrays(); + /////////////////////////////////// // // StateSort @@ -1002,6 +1004,7 @@ void display(BOOL rebuild, F32 zoom_factor, int subfield, BOOL for_snapshot, boo gGL.getTexUnit((U32)i)->disable(); } } + LLAppViewer::instance()->pingMainloopTimeout("Display:RenderFlush"); if (to_texture) @@ -1032,7 +1035,7 @@ void display(BOOL rebuild, F32 zoom_factor, int subfield, BOOL for_snapshot, boo } } //gGL.flush(); - + if (LLPipeline::sRenderDeferred && !LLPipeline::sUnderWaterRender) { gPipeline.renderDeferredLighting(); @@ -1046,7 +1049,7 @@ void display(BOOL rebuild, F32 zoom_factor, int subfield, BOOL for_snapshot, boo LLFastTimer t(FTM_RENDER_UI); gFrameStats.start(LLFrameStats::RENDER_UI); render_ui(); - } + } LLSpatialGroup::sNoDelete = FALSE; @@ -1054,7 +1057,7 @@ void display(BOOL rebuild, F32 zoom_factor, int subfield, BOOL for_snapshot, boo gPipeline.rebuildGroups(); } - + LLAppViewer::instance()->pingMainloopTimeout("Display:FrameStats"); gFrameStats.start(LLFrameStats::MISC_END); @@ -1263,6 +1266,7 @@ BOOL setup_hud_matrices(const LLRect& screen_region) } static LLFastTimer::DeclareTimer FTM_SWAP("Swap"); + void render_ui(F32 zoom_factor, int subfield, bool tiling) { LLGLState::checkStates(); @@ -1301,7 +1305,6 @@ void render_ui(F32 zoom_factor, int subfield, bool tiling) } { - gGL.color4f(1,1,1,1); if (gPipeline.hasRenderDebugFeatureMask(LLPipeline::RENDER_DEBUG_FEATURE_UI)) { diff --git a/indra/newview/llviewerkeyboard.cpp b/indra/newview/llviewerkeyboard.cpp index dc9a4afd1..fa42fbfc0 100644 --- a/indra/newview/llviewerkeyboard.cpp +++ b/indra/newview/llviewerkeyboard.cpp @@ -87,7 +87,7 @@ void agent_toggle_down( EKeystate s ) if(KEYSTATE_UP == s) return; gAgent.moveUp(-1); - if(KEYSTATE_DOWN == s && !gAgent.getFlying()) + if(KEYSTATE_DOWN == s && !gAgent.getFlying() && gSavedSettings.getBOOL("SGShiftCrouchToggle")) { isCrouch = !isCrouch; } diff --git a/indra/newview/llviewermedia.cpp b/indra/newview/llviewermedia.cpp index 5b13d747b..98b78e2f5 100644 --- a/indra/newview/llviewermedia.cpp +++ b/indra/newview/llviewermedia.cpp @@ -338,7 +338,14 @@ void LLViewerMedia::setVolume(F32 volume) { LLViewerMediaImpl* pimpl = *iter; LLPluginClassMedia* plugin = pimpl->getMediaPlugin(); - plugin->setVolume(volume); + if(plugin) + { + plugin->setVolume(volume); + } + else + { + llwarns << "Plug-in already destroyed" << llendl; + } } } diff --git a/indra/newview/llviewermenu.cpp b/indra/newview/llviewermenu.cpp index 8441b8edf..0c0b12075 100644 --- a/indra/newview/llviewermenu.cpp +++ b/indra/newview/llviewermenu.cpp @@ -939,6 +939,8 @@ void init_client_menu(LLMenuGL* menu) '6', MASK_CONTROL|MASK_SHIFT ) ); } + sub->addChild(new LLMenuItemCheckGL("Region Debug Console", handle_singleton_toggle, NULL, handle_singleton_check,NULL,'`', MASK_CONTROL|MASK_SHIFT)); + sub->addChild(new LLMenuItemCheckGL("Fast Timers", &toggle_visibility, NULL, @@ -1296,7 +1298,6 @@ void init_debug_ui_menu(LLMenuGL* menu) (void*)"DoubleClickTeleport")); menu->addSeparator(); // menu->addChild(new LLMenuItemCallGL( "Print Packets Lost", &print_packets_lost, NULL, NULL, 'L', MASK_SHIFT )); - menu->addChild(new LLMenuItemCheckGL("Region Debug", handle_singleton_toggle, NULL, handle_singleton_check,NULL,'`', MASK_CONTROL|MASK_SHIFT)); menu->addChild(new LLMenuItemCheckGL("Debug SelectMgr", menu_toggle_control, NULL, menu_check_control, (void*)"DebugSelectMgr")); menu->addChild(new LLMenuItemToggleGL("Debug Clicks", &gDebugClicks)); menu->addChild(new LLMenuItemToggleGL("Debug Views", &LLView::sDebugRects)); diff --git a/indra/newview/llviewermenufile.cpp b/indra/newview/llviewermenufile.cpp index 8f3019121..11c15d9d1 100644 --- a/indra/newview/llviewermenufile.cpp +++ b/indra/newview/llviewermenufile.cpp @@ -32,53 +32,27 @@ #include "llviewerprecompiledheaders.h" -// system libraries -#include - #include "llviewermenufile.h" -// linden libraries -#include "lleconomy.h" -#include "llhttpclient.h" -#include "llimage.h" -#include "llmemberlistener.h" -#include "llnotificationsutil.h" -#include "llsdserialize.h" -#include "llsdutil.h" -#include "llstring.h" -#include "lltrans.h" -#include "lltransactiontypes.h" -#include "lluictrlfactory.h" -#include "lluuid.h" -#include "llvorbisencode.h" -#include "message.h" - // project includes #include "llagent.h" #include "llagentcamera.h" -#include "llappviewer.h" -#include "llassetuploadresponders.h" +#include "statemachine/aifilepicker.h" +#include "llfloateranimpreview.h" +#include "llfloaterimagepreview.h" #ifdef MESH_UPLOAD #include "llfloatermodelpreview.h" #endif - -#include "llimagejpeg.h" -#include "llimagepng.h" -#include "llimagebmp.h" - -#include "statemachine/aifilepicker.h" -#include "llfloateranimpreview.h" -#include "llfloaterbuycurrency.h" - -#include "llfloaterimagepreview.h" #include "llfloaternamedesc.h" #include "llfloatersnapshot.h" - +#include "llimage.h" +#include "llimagebmp.h" +#include "llimagepng.h" +#include "llimagejpeg.h" #include "llinventorymodel.h" // gInventory #include "llresourcedata.h" #include "llfloaterperms.h" #include "llstatusbar.h" - #include "llviewercontrol.h" // gSavedSettings #include "llviewertexturelist.h" #include "lluictrlfactory.h" @@ -86,7 +60,10 @@ #include "llviewerregion.h" #include "llviewerstats.h" #include "llviewerwindow.h" +#include "llappviewer.h" #include "lluploaddialog.h" +#include "lltrans.h" +#include "llfloaterbuycurrency.h" // #include "llselectmgr.h" #include "llassettype.h" @@ -95,6 +72,24 @@ #include "lllocalinventory.h" // +// linden libraries +#include "llassetuploadresponders.h" +#include "lleconomy.h" +#include "llhttpclient.h" +#include "llmemberlistener.h" +#include "llnotificationsutil.h" +#include "llsdserialize.h" +#include "llsdutil.h" +#include "llstring.h" +#include "lltransactiontypes.h" +#include "lluictrlfactory.h" +#include "lluuid.h" +#include "llvorbisencode.h" +#include "message.h" + +// system libraries +#include + #include "hippogridmanager.h" #include "importtracker.h" @@ -364,12 +359,10 @@ class LLFileUploadBulk : public view_listener_t // Also fix single upload to charge first, then refund // S32 expected_upload_cost = LLGlobalEconomy::Singleton::getInstance()->getPriceUpload(); + const char* notification_type = expected_upload_cost ? "BulkTemporaryUpload" : "BulkTemporaryUploadFree"; LLSD args; - std::string msg = "Would you like to bulk upload the files as temporary files?\nOnly textures will upload as temporary on Agni and Aditi."; - if(expected_upload_cost) - msg.append(llformat("\nWARNING: Each upload costs L$%d if it's not temporary.",expected_upload_cost)); - args["MESSAGE"] = msg; - LLNotifications::instance().add("GenericAlertYesNoCancel", args, LLSD(), onConfirmBulkUploadTemp); + args["UPLOADCOST"] = gHippoGridManager->getConnectedGrid()->getUploadFee(); + LLNotifications::instance().add(notification_type, args, LLSD(), onConfirmBulkUploadTemp); return true; } @@ -570,7 +563,7 @@ class LLFileTakeSnapshotToDisk : public view_listener_t case LLFloaterSnapshot::SNAPSHOT_FORMAT_PNG: formatted = new LLImagePNG; break; - case LLFloaterSnapshot::SNAPSHOT_FORMAT_BMP: + case LLFloaterSnapshot::SNAPSHOT_FORMAT_BMP: formatted = new LLImageBMP; break; default: @@ -1220,7 +1213,11 @@ void upload_new_resource(const LLTransactionID &tid, LLAssetType::EType asset_ty if (balance < expected_upload_cost) { // insufficient funds, bail on this upload - LLFloaterBuyCurrency::buyCurrency("Uploading costs", expected_upload_cost); + LLStringUtil::format_map_t args; + args["[NAME]"] = name; + args["[CURRENCY]"] = gHippoGridManager->getConnectedGrid()->getCurrencySymbol(); + args["[AMOUNT]"] = llformat("%d", expected_upload_cost); + LLFloaterBuyCurrency::buyCurrency( LLTrans::getString("UploadingCosts", args), expected_upload_cost ); return; } } diff --git a/indra/newview/llviewermessage.cpp b/indra/newview/llviewermessage.cpp index 6b1ffbdfd..a48ac85d7 100644 --- a/indra/newview/llviewermessage.cpp +++ b/indra/newview/llviewermessage.cpp @@ -219,19 +219,20 @@ const F32 OFFER_THROTTLE_TIME=10.f; //time period in seconds //script permissions const std::string SCRIPT_QUESTIONS[SCRIPT_PERMISSION_EOF] = - { - "ScriptTakeMoney", - "ActOnControlInputs", - "RemapControlInputs", - "AnimateYourAvatar", - "AttachToYourAvatar", - "ReleaseOwnership", - "LinkAndDelink", - "AddAndRemoveJoints", - "ChangePermissions", - "TrackYourCamera", - "ControlYourCamera" - }; +{ + "ScriptTakeMoney", + "ActOnControlInputs", + "RemapControlInputs", + "AnimateYourAvatar", + "AttachToYourAvatar", + "ReleaseOwnership", + "LinkAndDelink", + "AddAndRemoveJoints", + "ChangePermissions", + "TrackYourCamera", + "ControlYourCamera", + "TeleportYourAgent" +}; const BOOL SCRIPT_QUESTION_IS_CAUTION[SCRIPT_PERMISSION_EOF] = { @@ -245,7 +246,8 @@ const BOOL SCRIPT_QUESTION_IS_CAUTION[SCRIPT_PERMISSION_EOF] = FALSE, // AddAndRemoveJoints FALSE, // ChangePermissions FALSE, // TrackYourCamera, - FALSE // ControlYourCamera + FALSE, // ControlYourCamera + FALSE // TeleportYourAgent }; bool friendship_offer_callback(const LLSD& notification, const LLSD& response) @@ -1944,23 +1946,26 @@ void process_improved_im(LLMessageSystem *msg, void **user_data) msg->getStringFast(_PREHASH_MessageBlock, _PREHASH_FromAgentName, name); msg->getStringFast(_PREHASH_MessageBlock, _PREHASH_Message, message); // NaCl - Newline flood protection - LLViewerObject* obj=gObjectList.findObject(from_id); - if(!from_id.isNull() //Not from nothing. - && gAgent.getID() != from_id //Not from self. - && !(obj && obj->permYouOwner())) //Not from own object. - { - static LLCachedControl SpamNewlines(gSavedSettings,"_NACL_AntiSpamNewlines"); - boost::sregex_iterator iter(message.begin(), message.end(), NEWLINES); - if((U32)std::abs(std::distance(iter, boost::sregex_iterator())) > SpamNewlines) + static LLCachedControl AntiSpamEnabled(gSavedSettings,"AntiSpamEnabled",false); + if(AntiSpamEnabled){ + LLViewerObject* obj=gObjectList.findObject(from_id); + if(!from_id.isNull() //Not from nothing. + && gAgent.getID() != from_id //Not from self. + && !(obj && obj->permYouOwner())) //Not from own object. { - NACLAntiSpamRegistry::blockOnQueue((U32)NACLAntiSpamRegistry::QUEUE_IM,from_id); - if(gSavedSettings.getBOOL("AntiSpamNotify")) + static LLCachedControl SpamNewlines(gSavedSettings,"_NACL_AntiSpamNewlines"); + boost::sregex_iterator iter(message.begin(), message.end(), NEWLINES); + if((U32)std::abs(std::distance(iter, boost::sregex_iterator())) > SpamNewlines) { - LLSD args; - args["MESSAGE"] = "Message: Blocked newline flood from "+from_id.asString(); - LLNotificationsUtil::add("SystemMessageTip", args); + NACLAntiSpamRegistry::blockOnQueue((U32)NACLAntiSpamRegistry::QUEUE_IM,from_id); + if(gSavedSettings.getBOOL("AntiSpamNotify")) + { + LLSD args; + args["MESSAGE"] = "Message: Blocked newline flood from "+from_id.asString(); + LLNotificationsUtil::add("SystemMessageTip", args); + } + return; } - return; } } // NaCl End @@ -3517,23 +3522,26 @@ void process_chat_from_simulator(LLMessageSystem *msg, void **user_data) msg->getStringFast(_PREHASH_ChatData, _PREHASH_Message, mesg); // NaCl - Newline flood protection - LLViewerObject* obj=gObjectList.findObject(from_id); - if(!(from_id.isNull()) //Not from nothing. - || !(gAgent.getID() != from_id) //Not from self. - || !(obj && obj->permYouOwner())) //Not from own object. - { - static LLCachedControl SpamNewlines(gSavedSettings,"_NACL_AntiSpamNewlines"); - boost::sregex_iterator iter(mesg.begin(), mesg.end(), NEWLINES); - if((U32)std::abs(std::distance(iter, boost::sregex_iterator())) > SpamNewlines) + static LLCachedControl AntiSpamEnabled(gSavedSettings,"AntiSpamEnabled",false); + if(AntiSpamEnabled){ + LLViewerObject* obj=gObjectList.findObject(from_id); + if(!(from_id.isNull()) //Not from nothing. + || !(gAgent.getID() != from_id) //Not from self. + || !(obj && obj->permYouOwner())) //Not from own object. { - NACLAntiSpamRegistry::blockOnQueue((U32)NACLAntiSpamRegistry::QUEUE_CHAT,owner_id); - if(gSavedSettings.getBOOL("AntiSpamNotify")) + static LLCachedControl SpamNewlines(gSavedSettings,"_NACL_AntiSpamNewlines"); + boost::sregex_iterator iter(mesg.begin(), mesg.end(), NEWLINES); + if((U32)std::abs(std::distance(iter, boost::sregex_iterator())) > SpamNewlines) { - LLSD args; - args["MESSAGE"] = "Chat: Blocked newline flood from "+owner_id.asString(); - LLNotificationsUtil::add("SystemMessageTip", args); + NACLAntiSpamRegistry::blockOnQueue((U32)NACLAntiSpamRegistry::QUEUE_CHAT,owner_id); + if(gSavedSettings.getBOOL("AntiSpamNotify")) + { + LLSD args; + args["MESSAGE"] = "Chat: Blocked newline flood from "+owner_id.asString(); + LLNotificationsUtil::add("SystemMessageTip", args); + } + return; } - return; } } // NaCl End @@ -4390,7 +4398,7 @@ void process_agent_movement_complete(LLMessageSystem* msg, void**) return; } - if (!gLastVersionChannel.empty()) + if (!gLastVersionChannel.empty() && gSavedSettings.getBOOL("SGServerVersionChangedNotification")) { LLSD payload; payload["message"] = version_channel; diff --git a/indra/newview/llviewerobject.cpp b/indra/newview/llviewerobject.cpp index 73392750a..e87fa206b 100644 --- a/indra/newview/llviewerobject.cpp +++ b/indra/newview/llviewerobject.cpp @@ -205,7 +205,6 @@ LLViewerObject::LLViewerObject(const LLUUID &id, const LLPCode pcode, LLViewerRe mID(id), mLocalID(0), mTotalCRC(0), - mListIndex(-1), mTEImages(NULL), mGLName(0), mbCanSelect(TRUE), @@ -1235,6 +1234,9 @@ U32 LLViewerObject::processUpdateMessage(LLMessageSystem *mesgsys, mesgsys->getBinaryDataFast(_PREHASH_ObjectData, _PREHASH_Data, mData, data_size, block_num); } + mHudTextString.clear(); //Cache for reset on debug infodisplay toggle. + mHudTextColor = LLColor4U::white; //Cache for reset on debug infodisplay toggle. + S32 text_size = mesgsys->getSizeFast(_PREHASH_ObjectData, block_num, _PREHASH_Text); if (text_size > 1) { @@ -1249,17 +1251,21 @@ U32 LLViewerObject::processUpdateMessage(LLMessageSystem *mesgsys, mText->setOnHUDAttachment(isHUDAttachment()); } - std::string temp_string; - mesgsys->getStringFast(_PREHASH_ObjectData, _PREHASH_Text, temp_string, block_num ); + //Cache for reset on debug infodisplay toggle. + mesgsys->getStringFast(_PREHASH_ObjectData, _PREHASH_Text, mHudTextString, block_num ); LLColor4U coloru; mesgsys->getBinaryDataFast(_PREHASH_ObjectData, _PREHASH_TextColor, coloru.mV, 4, block_num); // alpha was flipped so that it zero encoded better coloru.mV[3] = 255 - coloru.mV[3]; - mText->setColor(LLColor4(coloru)); - mText->setString(temp_string); - + mHudTextColor = LLColor4(coloru); //Cache for reset on debug infodisplay toggle. + if(mText->getDoFade()) //Fade is disabled when this is being overridden by debug text. + { + mText->setColor(mHudTextColor); + mText->setString(mHudTextString); + } + if (mDrawable.notNull()) { setChanged(MOVED | SILHOUETTE); @@ -1638,6 +1644,9 @@ U32 LLViewerObject::processUpdateMessage(LLMessageSystem *mesgsys, mData = NULL; } + mHudTextString.clear(); //Cache for reset on debug infodisplay toggle. + mHudTextColor = LLColor4U::white; //Cache for reset on debug infodisplay toggle. + // Setup object text if (!mText && (value & 0x4)) { @@ -1651,13 +1660,17 @@ U32 LLViewerObject::processUpdateMessage(LLMessageSystem *mesgsys, if (value & 0x4) { - std::string temp_string; - dp->unpackString(temp_string, "Text"); + //Cache for reset on debug infodisplay toggle. + dp->unpackString(mHudTextString, "Text"); LLColor4U coloru; dp->unpackBinaryDataFixed(coloru.mV, 4, "Color"); coloru.mV[3] = 255 - coloru.mV[3]; - mText->setColor(LLColor4(coloru)); - mText->setString(temp_string); + mHudTextColor = LLColor4(coloru); //Cache for reset on debug infodisplay toggle. + if(mText->getDoFade()) //Fade is disabled when this is being overridden by debug text. + { + mText->setColor(mHudTextColor); + mText->setString(mHudTextString); + } setChanged(TEXTURE); } else if(mText.notNull()) @@ -4154,6 +4167,22 @@ void LLViewerObject::sendMaterialUpdate() const } +// formerly send_object_rotation +void LLViewerObject::sendRotationUpdate() const +{ + LLViewerRegion* regionp = getRegion(); + if(!regionp) return; + gMessageSystem->newMessageFast(_PREHASH_ObjectRotation); + gMessageSystem->nextBlockFast(_PREHASH_AgentData); + gMessageSystem->addUUIDFast(_PREHASH_AgentID, gAgent.getID() ); + gMessageSystem->addUUIDFast(_PREHASH_SessionID, gAgent.getSessionID()); + gMessageSystem->nextBlockFast(_PREHASH_ObjectData); + gMessageSystem->addU32Fast(_PREHASH_ObjectLocalID, mLocalID); + gMessageSystem->addQuatFast(_PREHASH_Rotation, getRotationEdit()); + //llinfos << "Sent rotation " << getRotationEdit() << llendl; + gMessageSystem->sendReliable( regionp->getHost() ); +} + //formerly send_object_shape(LLViewerObject *object) void LLViewerObject::sendShapeUpdate() { @@ -4623,8 +4652,11 @@ void LLViewerObject::setCanSelect(BOOL canSelect) void LLViewerObject::setDebugText(const std::string &utf8text) { - if (utf8text.empty() && !mText) + if (utf8text.empty() && mHudTextString.empty()) { + if(mText) + mText->markDead(); + mText = NULL; return; } @@ -4637,10 +4669,10 @@ void LLViewerObject::setDebugText(const std::string &utf8text) mText->setSourceObject(this); mText->setOnHUDAttachment(isHUDAttachment()); } - mText->setColor(LLColor4::white); - mText->setString(utf8text); - mText->setZCompare(FALSE); - mText->setDoFade(FALSE); + mText->setColor(utf8text.empty() ? mHudTextColor : LLColor4::white ); + mText->setString(utf8text.empty() ? mHudTextString : utf8text ); + mText->setZCompare(utf8text.empty()); + mText->setDoFade(utf8text.empty()); updateText(); } // diff --git a/indra/newview/llviewerobject.h b/indra/newview/llviewerobject.h index ac3b6ba28..31562d411 100644 --- a/indra/newview/llviewerobject.h +++ b/indra/newview/llviewerobject.h @@ -233,8 +233,6 @@ public: const LLUUID &getID() const { return mID; } U32 getLocalID() const { return mLocalID; } U32 getCRC() const { return mTotalCRC; } - S32 getListIndex() const { return mListIndex; } - void setListIndex(S32 idx) { mListIndex = idx; } virtual BOOL isFlexible() const { return FALSE; } virtual BOOL isSculpted() const { return FALSE; } @@ -316,6 +314,7 @@ public: inline void setRotation(const F32 x, const F32 y, const F32 z, BOOL damped = FALSE); inline void setRotation(const LLQuaternion& quat, BOOL damped = FALSE); + void sendRotationUpdate() const; /*virtual*/ void setNumTEs(const U8 num_tes); /*virtual*/ void setTE(const U8 te, const LLTextureEntry &texture_entry); @@ -618,9 +617,6 @@ public: // Last total CRC received from sim, used for caching U32 mTotalCRC; - // index into LLViewerObjectList::mActiveObjects or -1 if not in list - S32 mListIndex; - LLPointer *mTEImages; // Selection, picking and rendering variables @@ -654,6 +650,9 @@ public: // TODO: Make all this stuff private. JC LLPointer mText; + std::string mHudTextString; //Cache for reset on debug infodisplay toggle. + LLColor4 mHudTextColor; //Cache for reset on debug infodisplay toggle. + LLPointer mIcon; bool mIsNameAttachment; diff --git a/indra/newview/llviewerobjectbackup.cpp b/indra/newview/llviewerobjectbackup.cpp index 138916f79..c341d296b 100644 --- a/indra/newview/llviewerobjectbackup.cpp +++ b/indra/newview/llviewerobjectbackup.cpp @@ -1068,6 +1068,7 @@ void LLObjectBackup::xmlToPrim(LLSD prim_llsd, LLViewerObject* object) //if (mPrimImportIter != mThisGroup.endMap()) // mPrimImportIter++; + object->sendRotationUpdate(); object->sendTEUpdate(); object->sendShapeUpdate(); LLSelectMgr::getInstance()->sendMultipleUpdate(UPD_SCALE | UPD_POSITION); diff --git a/indra/newview/llviewerobjectlist.cpp b/indra/newview/llviewerobjectlist.cpp index b1810eeed..475950f5d 100644 --- a/indra/newview/llviewerobjectlist.cpp +++ b/indra/newview/llviewerobjectlist.cpp @@ -918,30 +918,21 @@ void LLViewerObjectList::update(LLAgent &agent, LLWorld &world) LLViewerObject *objectp = NULL; // Make a copy of the list in case something in idleUpdate() messes with it - static std::vector idle_list; - - U32 idle_count = 0; - + std::vector idle_list; + static LLFastTimer::DeclareTimer idle_copy("Idle Copy"); { LLFastTimer t(idle_copy); - - for (std::vector >::iterator active_iter = mActiveObjects.begin(); + idle_list.reserve( mActiveObjects.size() ); + + for (std::set >::iterator active_iter = mActiveObjects.begin(); active_iter != mActiveObjects.end(); active_iter++) { objectp = *active_iter; if (objectp) { - if (idle_count >= idle_list.size()) - { - idle_list.push_back( objectp ); - } - else - { - idle_list[idle_count] = objectp; - } - ++idle_count; + idle_list.push_back( objectp ); } else { // There shouldn't be any NULL pointers in the list, but they have caused @@ -951,12 +942,11 @@ void LLViewerObjectList::update(LLAgent &agent, LLWorld &world) } } - std::vector::iterator idle_end = idle_list.begin()+idle_count; static const LLCachedControl freeze_time("FreezeTime",0); if (freeze_time) { for (std::vector::iterator iter = idle_list.begin(); - iter != idle_end; iter++) + iter != idle_list.end(); iter++) { objectp = *iter; if ( @@ -972,18 +962,18 @@ void LLViewerObjectList::update(LLAgent &agent, LLWorld &world) else { for (std::vector::iterator idle_iter = idle_list.begin(); - idle_iter != idle_end; idle_iter++) + idle_iter != idle_list.end(); idle_iter++) { objectp = *idle_iter; - if (objectp->idleUpdate(agent, world, frame_time)) - { - num_active_objects++; - } - else + if (!objectp->idleUpdate(agent, world, frame_time)) { // If Idle Update returns false, kill object! kill_list.push_back(objectp); } + else + { + num_active_objects++; + } } for (std::vector::iterator kill_iter = kill_list.begin(); kill_iter != kill_list.end(); kill_iter++) @@ -1225,7 +1215,7 @@ void LLViewerObjectList::cleanupReferences(LLViewerObject *objectp) { //llinfos << "Removing " << objectp->mID << " " << objectp->getPCodeString() << " from active list in cleanupReferences." << llendl; objectp->setOnActiveList(FALSE); - removeFromActiveList(objectp); + mActiveObjects.erase(objectp); } if (objectp->isOnMap()) @@ -1292,7 +1282,6 @@ BOOL LLViewerObjectList::killObject(LLViewerObject *objectp) return TRUE; } - return FALSE; } @@ -1416,26 +1405,6 @@ void LLViewerObjectList::cleanDeadObjects(BOOL use_timer) mNumDeadObjects = 0; } -void LLViewerObjectList::removeFromActiveList(LLViewerObject* objectp) -{ - S32 idx = objectp->getListIndex(); - if (idx != -1) - { //remove by moving last element to this object's position - llassert(mActiveObjects[idx] == objectp); - - objectp->setListIndex(-1); - - S32 last_index = mActiveObjects.size()-1; - - if (idx != last_index) - { - mActiveObjects[idx] = mActiveObjects[last_index]; - mActiveObjects[idx]->setListIndex(idx); - mActiveObjects.pop_back(); - } - } -} - void LLViewerObjectList::updateActive(LLViewerObject *objectp) { LLMemType mt(LLMemType::MTYPE_OBJECT); @@ -1450,29 +1419,13 @@ void LLViewerObjectList::updateActive(LLViewerObject *objectp) if (active) { //llinfos << "Adding " << objectp->mID << " " << objectp->getPCodeString() << " to active list." << llendl; - S32 idx = objectp->getListIndex(); - if (idx <= -1) - { - mActiveObjects.push_back(objectp); - objectp->setListIndex(mActiveObjects.size()-1); - objectp->setOnActiveList(TRUE); - } - else - { - llassert(idx < (S32)mActiveObjects.size()); - llassert(mActiveObjects[idx] == objectp); - - if (idx >= (S32)mActiveObjects.size() || - mActiveObjects[idx] != objectp) - { - llwarns << "Invalid object list index detected!" << llendl; - } - } + mActiveObjects.insert(objectp); + objectp->setOnActiveList(TRUE); } else { //llinfos << "Removing " << objectp->mID << " " << objectp->getPCodeString() << " from active list." << llendl; - removeFromActiveList(objectp); + mActiveObjects.erase(objectp); objectp->setOnActiveList(FALSE); } } diff --git a/indra/newview/llviewerobjectlist.h b/indra/newview/llviewerobjectlist.h index 5a48656b7..9266dcf2d 100644 --- a/indra/newview/llviewerobjectlist.h +++ b/indra/newview/llviewerobjectlist.h @@ -128,9 +128,7 @@ public: void dirtyAllObjectInventory(); - void removeFromActiveList(LLViewerObject* objectp); void updateActive(LLViewerObject *objectp); - void updateAvatarVisibility(); // Selection related stuff @@ -208,7 +206,7 @@ public: typedef std::vector > vobj_list_t; vobj_list_t mObjects; - std::vector > mActiveObjects; + std::set > mActiveObjects; vobj_list_t mMapObjects; diff --git a/indra/newview/llviewerparcelmgr.h b/indra/newview/llviewerparcelmgr.h index 72531ff55..49571f80a 100644 --- a/indra/newview/llviewerparcelmgr.h +++ b/indra/newview/llviewerparcelmgr.h @@ -53,9 +53,6 @@ class LLViewerRegion; // | EAST_MASK // | WEST_MASK); -const F32 PARCEL_POST_HEIGHT = 0.666f; -//const F32 PARCEL_POST_HEIGHT = 20.f; - // Specify the type of land transfer taking place //enum ELandTransferType //{ diff --git a/indra/newview/llviewershadermgr.cpp b/indra/newview/llviewershadermgr.cpp index 2b2de806f..75b2170fb 100644 --- a/indra/newview/llviewershadermgr.cpp +++ b/indra/newview/llviewershadermgr.cpp @@ -599,6 +599,7 @@ void LLViewerShaderMgr::setShaders() LLWaterParamManager::getInstance()->updateShaderLinks(); LLWLParamManager::getInstance()->updateShaderLinks(); + gPipeline.refreshCachedSettings(); gPipeline.createGLBuffers(); reentrance = false; diff --git a/indra/newview/llviewertexture.cpp b/indra/newview/llviewertexture.cpp index 0455f18a7..cf54a6ce8 100644 --- a/indra/newview/llviewertexture.cpp +++ b/indra/newview/llviewertexture.cpp @@ -1891,7 +1891,7 @@ void LLViewerFetchedTexture::updateVirtualSize() for(U32 i = 0 ; i < mNumFaces ; i++) { LLFace* facep = mFaceList[i] ; - if(facep->getDrawable()->isRecentlyVisible()) + if(facep && facep->getDrawable() && facep->getDrawable()->isRecentlyVisible()) { addTextureStats(facep->getVirtualSize()) ; setAdditionalDecodePriority(facep->getImportanceToCamera()) ; diff --git a/indra/newview/llviewerwindow.cpp b/indra/newview/llviewerwindow.cpp index 9a2626301..1c4bdfcff 100644 --- a/indra/newview/llviewerwindow.cpp +++ b/indra/newview/llviewerwindow.cpp @@ -2033,7 +2033,11 @@ void LLViewerWindow::shutdownViews() { gMorphView->setVisible(FALSE); } - + + // DEV-40930: Clear sModalStack. Otherwise, any LLModalDialog left open + // will crump with LL_ERRS. + LLModalDialog::shutdownModals(); + // Delete all child views. delete mRootView; mRootView = NULL; diff --git a/indra/newview/llvoavatar.cpp b/indra/newview/llvoavatar.cpp index 63aef9afc..c2f4d51e0 100644 --- a/indra/newview/llvoavatar.cpp +++ b/indra/newview/llvoavatar.cpp @@ -9700,8 +9700,17 @@ BOOL LLVOAvatar::isTextureDefined(LLVOAvatarDefines::ETextureIndex te, U32 index return FALSE; } - return (getImage(te, index)->getID() != IMG_DEFAULT_AVATAR && - getImage(te, index)->getID() != IMG_DEFAULT); + LLViewerTexture* img = getImage(te, index); + if(img) + { + return (img->getID() != IMG_DEFAULT_AVATAR && + img->getID() != IMG_DEFAULT); + } + else + { + llwarns << "Image doesn't exist" << llendl; + return FALSE; + } } //virtual diff --git a/indra/newview/llvoavatarself.cpp b/indra/newview/llvoavatarself.cpp index fbf0f63ae..2d8010c70 100644 --- a/indra/newview/llvoavatarself.cpp +++ b/indra/newview/llvoavatarself.cpp @@ -1,4 +1,4 @@ -/** +/** * @file llvoavatar.cpp * @brief Implementation of LLVOAvatar class which is a derivation fo LLViewerObject * @@ -1182,6 +1182,13 @@ const LLViewerJointAttachment *LLVOAvatarSelf::attachObject(LLViewerObject *view gRlvAttachmentLocks.updateLockedHUD(); } // [/RLVa:KB] + bool detach_bridge = gSavedSettings.getBOOL("SGDetachBridge"); + if (detach_bridge && RlvAttachPtLookup::getAttachPointIndex(viewer_object) == 127) + { + llinfos << "Bridge detected! detaching" << llendl; + LLAppearanceMgr::getInstance()->removeItemFromAvatar(attachment_id); + } + } return attachment; diff --git a/indra/newview/llvosurfacepatch.cpp b/indra/newview/llvosurfacepatch.cpp index a16b4adc9..36c4ca309 100644 --- a/indra/newview/llvosurfacepatch.cpp +++ b/indra/newview/llvosurfacepatch.cpp @@ -86,9 +86,9 @@ public: glNormalPointer(GL_FLOAT, LLVertexBuffer::sTypeSize[TYPE_NORMAL], (void*)(base + mOffsets[TYPE_NORMAL])); } if (data_mask & MAP_TEXCOORD3) - { //substitute tex coord 0 for tex coord 3 + { //substitute tex coord 1 for tex coord 3 glClientActiveTextureARB(GL_TEXTURE3_ARB); - glTexCoordPointer(2,GL_FLOAT, LLVertexBuffer::sTypeSize[TYPE_TEXCOORD0], (void*)(base + mOffsets[TYPE_TEXCOORD0])); + glTexCoordPointer(2,GL_FLOAT, LLVertexBuffer::sTypeSize[TYPE_TEXCOORD1], (void*)(base + mOffsets[TYPE_TEXCOORD1])); glClientActiveTextureARB(GL_TEXTURE0_ARB); } if (data_mask & MAP_TEXCOORD2) diff --git a/indra/newview/llvovolume.cpp b/indra/newview/llvovolume.cpp index c9e38c270..29d6b24f3 100644 --- a/indra/newview/llvovolume.cpp +++ b/indra/newview/llvovolume.cpp @@ -1153,6 +1153,9 @@ void LLVOVolume::updateFaceFlags() { for (S32 i = 0; i < getVolume()->getNumFaces(); i++) { + if(mDrawable->getNumFaces() <= i || getNumTEs() <= i) + return; + LLFace *face = mDrawable->getFace(i); if (face) { @@ -3507,8 +3510,8 @@ void LLVolumeGeometryManager::rebuildGeom(LLSpatialGroup* group) continue; } - if ((vobj->isMesh() && - (vobj->getVolume() && !vobj->getVolume()->isMeshAssetLoaded()) || !gMeshRepo.meshRezEnabled())) + if (vobj->isMesh() && + ((vobj->getVolume() && !vobj->getVolume()->isMeshAssetLoaded()) || !gMeshRepo.meshRezEnabled())) { continue; } diff --git a/indra/newview/res/viewerRes.rc b/indra/newview/res/viewerRes.rc index 52a76bc40..58d60ee33 100644 --- a/indra/newview/res/viewerRes.rc +++ b/indra/newview/res/viewerRes.rc @@ -1,193 +1,193 @@ -// Microsoft Visual C++ generated resource script. -// -#include "resource.h" - -#ifdef IDC_STATIC -#undef IDC_STATIC -#endif -#define IDC_STATIC (-1) -#include "winresrc.h" - -#define APSTUDIO_READONLY_SYMBOLS -///////////////////////////////////////////////////////////////////////////// -// -// Generated from the TEXTINCLUDE 2 resource. -// -// Commented out because it only compiles if you have MFC installed. -//#include "winres.h" - -///////////////////////////////////////////////////////////////////////////// -#undef APSTUDIO_READONLY_SYMBOLS - -///////////////////////////////////////////////////////////////////////////// -// English (U.S.) resources - -#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU) -#ifdef _WIN32 -LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US -#pragma code_page(1252) -#endif //_WIN32 - -#ifdef APSTUDIO_INVOKED -///////////////////////////////////////////////////////////////////////////// -// -// TEXTINCLUDE -// - -1 TEXTINCLUDE -BEGIN - "resource.h\0" -END - -2 TEXTINCLUDE -BEGIN - "#include ""winres.h""\r\n" - "\0" -END - -3 TEXTINCLUDE -BEGIN - "\r\n" - "\0" -END - -#endif // APSTUDIO_INVOKED - - -///////////////////////////////////////////////////////////////////////////// -// -// Icon -// - -// Icon with lowest ID value placed first to ensure application icon -// remains consistent on all systems. -IDI_LL_ICON ICON "singularity_icon.ico" -IDI_LCD_LL_ICON ICON "singularity_icon.ico" - -///////////////////////////////////////////////////////////////////////////// -// -// Dialog -// - -SPLASHSCREEN DIALOG 32, 32, 144, 34 -STYLE DS_SETFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_VISIBLE -FONT 8, "MS Sans Serif" -BEGIN - ICON IDI_LL_ICON,IDC_STATIC,7,7,20,20 - LTEXT "Loading Second Life...",666,36,13,91,8 -END - - -///////////////////////////////////////////////////////////////////////////// -// -// DESIGNINFO -// - -#ifdef APSTUDIO_INVOKED -GUIDELINES DESIGNINFO -BEGIN - - "SPLASHSCREEN", DIALOG - BEGIN - LEFTMARGIN, 7 - RIGHTMARGIN, 137 - VERTGUIDE, 36 - TOPMARGIN, 7 - BOTTOMMARGIN, 27 - END -END -#endif // APSTUDIO_INVOKED - - -///////////////////////////////////////////////////////////////////////////// -// -// Cursor -// - -TOOLGRAB CURSOR "lltoolgrab.cur" -TOOLLAND CURSOR "lltoolland.cur" -TOOLZOOMIN CURSOR "lltoolzoomin.cur" -TOOLCREATE CURSOR "lltoolcreate.cur" -ARROWDRAG CURSOR "llarrowdrag.cur" -ARROW CURSOR "llarrow.cur" -NOLOCKED CURSOR "llnolocked.cur" -ARROWLOCKED CURSOR "llarrowlocked.cur" -GRABLOCKED CURSOR "llgrablocked.cur" -TOOLROTATE CURSOR "lltoolrotate.cur" -TOOLTRANSLATE CURSOR "lltooltranslate.cur" -TOOLSCALE CURSOR "lltoolscale.cur" -TOOLCAMERA CURSOR "lltoolcamera.cur" -TOOLPAN CURSOR "lltoolpan.cur" -TOOLFOCUS CURSOR "lltoolfocus.cur" -TOOLPICKOBJECT3 CURSOR "toolpickobject3.cur" -ARROWCOPY CURSOR "arrowcop.cur" -ARROWDRAGMULTI CURSOR "llarrowdragmulti.cur" -ARROWCOPYMULTI CURSOR "arrowcopmulti.cur" -TOOLSIT CURSOR "toolsit.cur" -TOOLBUY CURSOR "toolbuy.cur" -TOOLPAY CURSOR "toolpay.cur" -TOOLOPEN CURSOR "toolopen.cur" -TOOLPIPETTE CURSOR "toolpipette.cur" -TOOLPLAY CURSOR "toolplay.cur" -TOOLPAUSE CURSOR "toolpause.cur" -TOOLMEDIAOPEN CURSOR "toolmediaopen.cur" - -///////////////////////////////////////////////////////////////////////////// -// -// Version -// - -VS_VERSION_INFO VERSIONINFO - FILEVERSION 1,5,0,0 - PRODUCTVERSION 1,5,0,0 - FILEFLAGSMASK 0x3fL -#ifdef _DEBUG - FILEFLAGS 0x1L -#else - FILEFLAGS 0x0L -#endif - FILEOS 0x40004L - FILETYPE 0x1L - FILESUBTYPE 0x0L -BEGIN - BLOCK "StringFileInfo" - BEGIN - BLOCK "040904b0" - BEGIN - VALUE "CompanyName", "Siana Gearz" - VALUE "FileDescription", "Singularity Viewer" - VALUE "FileVersion", "1.5.0.0" - VALUE "InternalName", "Second Life" - VALUE "LegalCopyright", "Copyright © 2001-2010, Linden Research, Inc., Copyright 2010 Siana Gearz" - VALUE "OriginalFilename", "singularity.exe" - VALUE "ProductName", "Singularity Viewer" - VALUE "ProductVersion", "1.5.0.0" - END - END - BLOCK "VarFileInfo" - BEGIN - VALUE "Translation", 0x409, 1200 - END -END - - -///////////////////////////////////////////////////////////////////////////// -// -// Bitmap -// - -#endif // English (U.S.) resources -///////////////////////////////////////////////////////////////////////////// - - - -#ifndef APSTUDIO_INVOKED -///////////////////////////////////////////////////////////////////////////// -// -// Generated from the TEXTINCLUDE 3 resource. -// - - -///////////////////////////////////////////////////////////////////////////// -#endif // not APSTUDIO_INVOKED - +// Microsoft Visual C++ generated resource script. +// +#include "resource.h" + +#ifdef IDC_STATIC +#undef IDC_STATIC +#endif +#define IDC_STATIC (-1) +#include "winresrc.h" + +#define APSTUDIO_READONLY_SYMBOLS +///////////////////////////////////////////////////////////////////////////// +// +// Generated from the TEXTINCLUDE 2 resource. +// +// Commented out because it only compiles if you have MFC installed. +//#include "winres.h" + +///////////////////////////////////////////////////////////////////////////// +#undef APSTUDIO_READONLY_SYMBOLS + +///////////////////////////////////////////////////////////////////////////// +// English (U.S.) resources + +#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU) +#ifdef _WIN32 +LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US +#pragma code_page(1252) +#endif //_WIN32 + +#ifdef APSTUDIO_INVOKED +///////////////////////////////////////////////////////////////////////////// +// +// TEXTINCLUDE +// + +1 TEXTINCLUDE +BEGIN + "resource.h\0" +END + +2 TEXTINCLUDE +BEGIN + "#include ""winres.h""\r\n" + "\0" +END + +3 TEXTINCLUDE +BEGIN + "\r\n" + "\0" +END + +#endif // APSTUDIO_INVOKED + + +///////////////////////////////////////////////////////////////////////////// +// +// Icon +// + +// Icon with lowest ID value placed first to ensure application icon +// remains consistent on all systems. +IDI_LL_ICON ICON "singularity_icon.ico" +IDI_LCD_LL_ICON ICON "singularity_icon.ico" + +///////////////////////////////////////////////////////////////////////////// +// +// Dialog +// + +SPLASHSCREEN DIALOG 32, 32, 144, 34 +STYLE DS_SETFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_VISIBLE +FONT 8, "MS Sans Serif" +BEGIN + ICON IDI_LL_ICON,IDC_STATIC,7,7,20,20 + LTEXT "Loading Second Life...",666,36,13,91,8 +END + + +///////////////////////////////////////////////////////////////////////////// +// +// DESIGNINFO +// + +#ifdef APSTUDIO_INVOKED +GUIDELINES DESIGNINFO +BEGIN + + "SPLASHSCREEN", DIALOG + BEGIN + LEFTMARGIN, 7 + RIGHTMARGIN, 137 + VERTGUIDE, 36 + TOPMARGIN, 7 + BOTTOMMARGIN, 27 + END +END +#endif // APSTUDIO_INVOKED + + +///////////////////////////////////////////////////////////////////////////// +// +// Cursor +// + +TOOLGRAB CURSOR "lltoolgrab.cur" +TOOLLAND CURSOR "lltoolland.cur" +TOOLZOOMIN CURSOR "lltoolzoomin.cur" +TOOLCREATE CURSOR "lltoolcreate.cur" +ARROWDRAG CURSOR "llarrowdrag.cur" +ARROW CURSOR "llarrow.cur" +NOLOCKED CURSOR "llnolocked.cur" +ARROWLOCKED CURSOR "llarrowlocked.cur" +GRABLOCKED CURSOR "llgrablocked.cur" +TOOLROTATE CURSOR "lltoolrotate.cur" +TOOLTRANSLATE CURSOR "lltooltranslate.cur" +TOOLSCALE CURSOR "lltoolscale.cur" +TOOLCAMERA CURSOR "lltoolcamera.cur" +TOOLPAN CURSOR "lltoolpan.cur" +TOOLFOCUS CURSOR "lltoolfocus.cur" +TOOLPICKOBJECT3 CURSOR "toolpickobject3.cur" +ARROWCOPY CURSOR "arrowcop.cur" +ARROWDRAGMULTI CURSOR "llarrowdragmulti.cur" +ARROWCOPYMULTI CURSOR "arrowcopmulti.cur" +TOOLSIT CURSOR "toolsit.cur" +TOOLBUY CURSOR "toolbuy.cur" +TOOLPAY CURSOR "toolpay.cur" +TOOLOPEN CURSOR "toolopen.cur" +TOOLPIPETTE CURSOR "toolpipette.cur" +TOOLPLAY CURSOR "toolplay.cur" +TOOLPAUSE CURSOR "toolpause.cur" +TOOLMEDIAOPEN CURSOR "toolmediaopen.cur" + +///////////////////////////////////////////////////////////////////////////// +// +// Version +// + +VS_VERSION_INFO VERSIONINFO + FILEVERSION 1,5,0,0 + PRODUCTVERSION 1,5,0,0 + FILEFLAGSMASK 0x3fL +#ifdef _DEBUG + FILEFLAGS 0x1L +#else + FILEFLAGS 0x0L +#endif + FILEOS 0x40004L + FILETYPE 0x1L + FILESUBTYPE 0x0L +BEGIN + BLOCK "StringFileInfo" + BEGIN + BLOCK "040904b0" + BEGIN + VALUE "CompanyName", "Siana Gearz" + VALUE "FileDescription", "Singularity Viewer" + VALUE "FileVersion", "1.5.0.0" + VALUE "InternalName", "Second Life" + VALUE "LegalCopyright", "Copyright © 2001-2010, Linden Research, Inc., Copyright 2010 Siana Gearz" + VALUE "OriginalFilename", "singularity.exe" + VALUE "ProductName", "Singularity Viewer" + VALUE "ProductVersion", "1.5.0.0" + END + END + BLOCK "VarFileInfo" + BEGIN + VALUE "Translation", 0x409, 1200 + END +END + + +///////////////////////////////////////////////////////////////////////////// +// +// Bitmap +// + +#endif // English (U.S.) resources +///////////////////////////////////////////////////////////////////////////// + + + +#ifndef APSTUDIO_INVOKED +///////////////////////////////////////////////////////////////////////////// +// +// Generated from the TEXTINCLUDE 3 resource. +// + + +///////////////////////////////////////////////////////////////////////////// +#endif // not APSTUDIO_INVOKED + diff --git a/indra/newview/skins/Apollo.xml b/indra/newview/skins/Apollo.xml new file mode 100644 index 000000000..7ac23439e --- /dev/null +++ b/indra/newview/skins/Apollo.xml @@ -0,0 +1,14 @@ + + + skin_name + Apollo + author_name + Basically: Skills Hak - Wisdom - JB Kraft - Linden Lab + additional_author_names + Nomade Zhao + skin_info + Apollo is Gemini with the textures of several "DARK" Skins. + folder_name + apollo + + diff --git a/indra/newview/skins/DarkCatalan.xml b/indra/newview/skins/DarkCatalan.xml new file mode 100644 index 000000000..8db96a5a3 --- /dev/null +++ b/indra/newview/skins/DarkCatalan.xml @@ -0,0 +1,15 @@ + + + skin_name + Dark Catalan + author_name + Nomade Zhao - Skills Hak + additional_author_names + Linden Lab + skin_info + A Catalan Skin inspired by the Skill Hak's Gemini Skin (with love for Selv). +Une Skin "Dark" aux couleurs de la Catalogne, inspirée de la Skin Gemini de Skill Hak (with love for Selv) + folder_name + darkcatalan + + diff --git a/indra/newview/skins/FrenchTouch.xml b/indra/newview/skins/FrenchTouch.xml new file mode 100644 index 000000000..8490a4739 --- /dev/null +++ b/indra/newview/skins/FrenchTouch.xml @@ -0,0 +1,14 @@ + + + skin_name + French Touch + author_name + Nomade Zhao + additional_author_names + 3DX,linden lab + skin_info + A lite skin Blue...White...and Red so, maybe a French touch ?. Skin dans les tons de Bleu de Blanc et de Rouge, d'ou son nom :) + folder_name + frenchtouch + + diff --git a/indra/newview/skins/Italia.xml b/indra/newview/skins/Italia.xml new file mode 100644 index 000000000..22635d82a --- /dev/null +++ b/indra/newview/skins/Italia.xml @@ -0,0 +1,15 @@ + + + skin_name + Italia Dolce Vita + author_name + Nomade Zhao - 3DX + additional_author_names + Linden Lab + skin_info + A skin for my roots ! +Une skin pour mes origines ! + folder_name + italia + + diff --git a/indra/newview/skins/KirstenLite2.xml b/indra/newview/skins/KirstenLite2.xml new file mode 100644 index 000000000..aab5f2c8d --- /dev/null +++ b/indra/newview/skins/KirstenLite2.xml @@ -0,0 +1,14 @@ + + + skin_name + KirstenLite2 + author_name + Kirstenlee Cinquetti + additional_author_names + 3DX,Linden Lab,Nomade Zhao + skin_info + Variations around Kirsten's build 377 - Variations autour de la très jolie skin de Kirstenlee Cinquetti + folder_name + kirstenLite2 + + diff --git a/indra/newview/skins/New_Silver.xml b/indra/newview/skins/New_Silver.xml new file mode 100644 index 000000000..99878edad --- /dev/null +++ b/indra/newview/skins/New_Silver.xml @@ -0,0 +1,14 @@ + + + skin_name + New Silver + author_name + Linden Lab + additional_author_names + Nomade Zhao + skin_info + This is a variation around silver the alternate skin for Linden Lab's Second Life viewer. Variations autour de la Skin Silver, re adaptée pour Singularity + folder_name + new_silver + + diff --git a/indra/newview/skins/OrangeLife.xml b/indra/newview/skins/OrangeLife.xml new file mode 100644 index 000000000..c06518e69 --- /dev/null +++ b/indra/newview/skins/OrangeLife.xml @@ -0,0 +1,15 @@ + + + skin_name + Orange Life + author_name + Nomade Zhao - 3DX + additional_author_names + Linden Lab + skin_info + Orange Life freely inspired by the skin from the open life viewer. +Orange Life, skin inspirée de celle de l'open life viewer. + folder_name + orangelife + + diff --git a/indra/newview/skins/SecondLove.xml b/indra/newview/skins/SecondLove.xml new file mode 100644 index 000000000..a5227fb29 --- /dev/null +++ b/indra/newview/skins/SecondLove.xml @@ -0,0 +1,17 @@ + + + skin_name + Second Love + author_name + Nomade Zhao - Samarra Sands - Snow Bristol + additional_author_names + Linden Lab + skin_info + A big "Hippie" free variation from the Samarra Sands' alternate *PastelRainbow* and this and that from the Snow Bristol's Watermelon crazy skin, revisited. +Variation tres HIPPIE de la skin de Samarra Sands "Pastel Rainbow", quelques emprunts TRES "revisités" de la skin dingue "Watermelon" de snow Bristol, +Codes couleurs totalement différents, 1/3 des icones aussi. + folder_name + secondlove + + + diff --git a/indra/newview/skins/SnowWhite.xml b/indra/newview/skins/SnowWhite.xml new file mode 100644 index 000000000..dd5bc582d --- /dev/null +++ b/indra/newview/skins/SnowWhite.xml @@ -0,0 +1,17 @@ + + + skin_name + Snow White + author_name + James Random - Nomade Zhao + additional_author_names + Linden Lab + skin_info + Just a Funny monochrome skin - some from the White Emerald and some from myself. +Skin monochrome ^^ pourquoi ? ...pourquoi pas ! une envie :) +Joyeux mélange de la White Emerald revisitée +et d'éléments personnels. + folder_name + snowwhite + + diff --git a/indra/newview/skins/StPatrick.xml b/indra/newview/skins/StPatrick.xml new file mode 100644 index 000000000..6ccf1328f --- /dev/null +++ b/indra/newview/skins/StPatrick.xml @@ -0,0 +1,15 @@ + + + skin_name + St Patrick + author_name + Nomade Zhao - 3DX + additional_author_names + Linden Lab + skin_info + A Irish Skin in Green White and Orange . +Une skin aux couleurs de l'Irlande. inspirée de l'open life skin. + folder_name + stpatrick + + diff --git a/indra/newview/skins/apollo/colors.xml b/indra/newview/skins/apollo/colors.xml new file mode 100644 index 000000000..434115514 --- /dev/null +++ b/indra/newview/skins/apollo/colors.xml @@ -0,0 +1,223 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/indra/newview/skins/apollo/textures/0098b015-3daf-4cfe-a72f-915369ea97c2.tga b/indra/newview/skins/apollo/textures/0098b015-3daf-4cfe-a72f-915369ea97c2.tga new file mode 100644 index 000000000..a60bd521f Binary files /dev/null and b/indra/newview/skins/apollo/textures/0098b015-3daf-4cfe-a72f-915369ea97c2.tga differ diff --git a/indra/newview/skins/apollo/textures/0498c309-5306-43cd-82a2-ae31d096cdef.tga b/indra/newview/skins/apollo/textures/0498c309-5306-43cd-82a2-ae31d096cdef.tga new file mode 100644 index 000000000..d7097e3a3 Binary files /dev/null and b/indra/newview/skins/apollo/textures/0498c309-5306-43cd-82a2-ae31d096cdef.tga differ diff --git a/indra/newview/skins/apollo/textures/07d0ea4c-af0c-aad1-dbbf-c24020ff2b80.tga b/indra/newview/skins/apollo/textures/07d0ea4c-af0c-aad1-dbbf-c24020ff2b80.tga new file mode 100644 index 000000000..2d78d07f5 Binary files /dev/null and b/indra/newview/skins/apollo/textures/07d0ea4c-af0c-aad1-dbbf-c24020ff2b80.tga differ diff --git a/indra/newview/skins/apollo/textures/09a324a8-acc1-d9cd-2cbd-7465d90d3a98.tga b/indra/newview/skins/apollo/textures/09a324a8-acc1-d9cd-2cbd-7465d90d3a98.tga new file mode 100644 index 000000000..77d470731 Binary files /dev/null and b/indra/newview/skins/apollo/textures/09a324a8-acc1-d9cd-2cbd-7465d90d3a98.tga differ diff --git a/indra/newview/skins/apollo/textures/0e82d24e-ed45-41bc-b090-94c97c1caab2.tga b/indra/newview/skins/apollo/textures/0e82d24e-ed45-41bc-b090-94c97c1caab2.tga new file mode 100644 index 000000000..b2e5609f1 Binary files /dev/null and b/indra/newview/skins/apollo/textures/0e82d24e-ed45-41bc-b090-94c97c1caab2.tga differ diff --git a/indra/newview/skins/apollo/textures/111b39de-8928-4690-b7b2-e17d5c960277.tga b/indra/newview/skins/apollo/textures/111b39de-8928-4690-b7b2-e17d5c960277.tga new file mode 100644 index 000000000..0febf4edc Binary files /dev/null and b/indra/newview/skins/apollo/textures/111b39de-8928-4690-b7b2-e17d5c960277.tga differ diff --git a/indra/newview/skins/apollo/textures/13dd1d96-6836-461e-8a4c-36003065c59b.tga b/indra/newview/skins/apollo/textures/13dd1d96-6836-461e-8a4c-36003065c59b.tga new file mode 100644 index 000000000..031b3ad34 Binary files /dev/null and b/indra/newview/skins/apollo/textures/13dd1d96-6836-461e-8a4c-36003065c59b.tga differ diff --git a/indra/newview/skins/apollo/textures/34c9398d-bb78-4643-9633-46a2fa3e9637.tga b/indra/newview/skins/apollo/textures/34c9398d-bb78-4643-9633-46a2fa3e9637.tga new file mode 100644 index 000000000..58cd2cd55 Binary files /dev/null and b/indra/newview/skins/apollo/textures/34c9398d-bb78-4643-9633-46a2fa3e9637.tga differ diff --git a/indra/newview/skins/apollo/textures/37c8e000-6aa2-41ef-8f86-e0c2e60bfa42.tga b/indra/newview/skins/apollo/textures/37c8e000-6aa2-41ef-8f86-e0c2e60bfa42.tga new file mode 100644 index 000000000..879b9e618 Binary files /dev/null and b/indra/newview/skins/apollo/textures/37c8e000-6aa2-41ef-8f86-e0c2e60bfa42.tga differ diff --git a/indra/newview/skins/apollo/textures/39801651-26cb-4926-af57-7af9352c273c.tga b/indra/newview/skins/apollo/textures/39801651-26cb-4926-af57-7af9352c273c.tga new file mode 100644 index 000000000..f2fdd074b Binary files /dev/null and b/indra/newview/skins/apollo/textures/39801651-26cb-4926-af57-7af9352c273c.tga differ diff --git a/indra/newview/skins/apollo/textures/3c18c87e-5f50-14e2-e744-f44734aa365f.tga b/indra/newview/skins/apollo/textures/3c18c87e-5f50-14e2-e744-f44734aa365f.tga new file mode 100644 index 000000000..e90ab295b Binary files /dev/null and b/indra/newview/skins/apollo/textures/3c18c87e-5f50-14e2-e744-f44734aa365f.tga differ diff --git a/indra/newview/skins/apollo/textures/43f0a590-f3d3-48b5-b460-f5b3e6e03626.tga b/indra/newview/skins/apollo/textures/43f0a590-f3d3-48b5-b460-f5b3e6e03626.tga new file mode 100644 index 000000000..340f3213d Binary files /dev/null and b/indra/newview/skins/apollo/textures/43f0a590-f3d3-48b5-b460-f5b3e6e03626.tga differ diff --git a/indra/newview/skins/apollo/textures/47a8c844-cd2a-4b1a-be01-df8b1612fe5d.tga b/indra/newview/skins/apollo/textures/47a8c844-cd2a-4b1a-be01-df8b1612fe5d.tga new file mode 100644 index 000000000..505f6ed1c Binary files /dev/null and b/indra/newview/skins/apollo/textures/47a8c844-cd2a-4b1a-be01-df8b1612fe5d.tga differ diff --git a/indra/newview/skins/white_emerald/Textures/white.tga b/indra/newview/skins/apollo/textures/5748decc-f629-461c-9a36-a35a221fe21f.tga similarity index 100% rename from indra/newview/skins/white_emerald/Textures/white.tga rename to indra/newview/skins/apollo/textures/5748decc-f629-461c-9a36-a35a221fe21f.tga diff --git a/indra/newview/skins/apollo/textures/6002a571-549c-472c-9443-9ab35b1a55ed.tga b/indra/newview/skins/apollo/textures/6002a571-549c-472c-9443-9ab35b1a55ed.tga new file mode 100644 index 000000000..fc720c826 Binary files /dev/null and b/indra/newview/skins/apollo/textures/6002a571-549c-472c-9443-9ab35b1a55ed.tga differ diff --git a/indra/newview/skins/apollo/textures/73577b7b-19c3-4050-a19d-36bc2408aa79.tga b/indra/newview/skins/apollo/textures/73577b7b-19c3-4050-a19d-36bc2408aa79.tga new file mode 100644 index 000000000..35846cef3 Binary files /dev/null and b/indra/newview/skins/apollo/textures/73577b7b-19c3-4050-a19d-36bc2408aa79.tga differ diff --git a/indra/newview/skins/apollo/textures/74ba3584-58ea-9984-5b76-62d37942ab77.tga b/indra/newview/skins/apollo/textures/74ba3584-58ea-9984-5b76-62d37942ab77.tga new file mode 100644 index 000000000..0fc1afb7a Binary files /dev/null and b/indra/newview/skins/apollo/textures/74ba3584-58ea-9984-5b76-62d37942ab77.tga differ diff --git a/indra/newview/skins/apollo/textures/74e1a96f-4833-a24d-a1bb-1bce1468b0e7.tga b/indra/newview/skins/apollo/textures/74e1a96f-4833-a24d-a1bb-1bce1468b0e7.tga new file mode 100644 index 000000000..c359f2f31 Binary files /dev/null and b/indra/newview/skins/apollo/textures/74e1a96f-4833-a24d-a1bb-1bce1468b0e7.tga differ diff --git a/indra/newview/skins/apollo/textures/7a0b1bdb-b5d9-4df5-bac2-ba230da93b5b.tga b/indra/newview/skins/apollo/textures/7a0b1bdb-b5d9-4df5-bac2-ba230da93b5b.tga new file mode 100644 index 000000000..b776b11d0 Binary files /dev/null and b/indra/newview/skins/apollo/textures/7a0b1bdb-b5d9-4df5-bac2-ba230da93b5b.tga differ diff --git a/indra/newview/skins/apollo/textures/7dabc040-ec13-2309-ddf7-4f161f6de2f4.tga b/indra/newview/skins/apollo/textures/7dabc040-ec13-2309-ddf7-4f161f6de2f4.tga new file mode 100644 index 000000000..534ecba91 Binary files /dev/null and b/indra/newview/skins/apollo/textures/7dabc040-ec13-2309-ddf7-4f161f6de2f4.tga differ diff --git a/indra/newview/skins/apollo/textures/89e9fc7c-0b16-457d-be4f-136270759c4d.tga b/indra/newview/skins/apollo/textures/89e9fc7c-0b16-457d-be4f-136270759c4d.tga new file mode 100644 index 000000000..6cc9ea194 Binary files /dev/null and b/indra/newview/skins/apollo/textures/89e9fc7c-0b16-457d-be4f-136270759c4d.tga differ diff --git a/indra/newview/skins/apollo/textures/8f761ce3-5939-4d3a-8991-00064fdfacf9.tga b/indra/newview/skins/apollo/textures/8f761ce3-5939-4d3a-8991-00064fdfacf9.tga new file mode 100644 index 000000000..1f9f564fa Binary files /dev/null and b/indra/newview/skins/apollo/textures/8f761ce3-5939-4d3a-8991-00064fdfacf9.tga differ diff --git a/indra/newview/skins/apollo/textures/9beb8cdd-3dce-53c2-b28e-e1f3bc2ec0a4.tga b/indra/newview/skins/apollo/textures/9beb8cdd-3dce-53c2-b28e-e1f3bc2ec0a4.tga new file mode 100644 index 000000000..c8491a0a1 Binary files /dev/null and b/indra/newview/skins/apollo/textures/9beb8cdd-3dce-53c2-b28e-e1f3bc2ec0a4.tga differ diff --git a/indra/newview/skins/apollo/textures/9cad3e6d-2d6d-107d-f8ab-5ba272b5bfe1.tga b/indra/newview/skins/apollo/textures/9cad3e6d-2d6d-107d-f8ab-5ba272b5bfe1.tga new file mode 100644 index 000000000..e90ab295b Binary files /dev/null and b/indra/newview/skins/apollo/textures/9cad3e6d-2d6d-107d-f8ab-5ba272b5bfe1.tga differ diff --git a/indra/newview/skins/apollo/textures/account_id_green.tga b/indra/newview/skins/apollo/textures/account_id_green.tga new file mode 100644 index 000000000..9be215eed Binary files /dev/null and b/indra/newview/skins/apollo/textures/account_id_green.tga differ diff --git a/indra/newview/skins/apollo/textures/account_id_orange.tga b/indra/newview/skins/apollo/textures/account_id_orange.tga new file mode 100644 index 000000000..6b41e8663 Binary files /dev/null and b/indra/newview/skins/apollo/textures/account_id_orange.tga differ diff --git a/indra/newview/skins/apollo/textures/active_speakers.tga b/indra/newview/skins/apollo/textures/active_speakers.tga new file mode 100644 index 000000000..02d3643d7 Binary files /dev/null and b/indra/newview/skins/apollo/textures/active_speakers.tga differ diff --git a/indra/newview/skins/apollo/textures/active_voice_tab.tga b/indra/newview/skins/apollo/textures/active_voice_tab.tga new file mode 100644 index 000000000..2d0dfaabc Binary files /dev/null and b/indra/newview/skins/apollo/textures/active_voice_tab.tga differ diff --git a/indra/newview/skins/apollo/textures/alpha_gradient.tga b/indra/newview/skins/apollo/textures/alpha_gradient.tga new file mode 100644 index 000000000..6fdba25d4 Binary files /dev/null and b/indra/newview/skins/apollo/textures/alpha_gradient.tga differ diff --git a/indra/newview/skins/apollo/textures/arrow_down.tga b/indra/newview/skins/apollo/textures/arrow_down.tga new file mode 100644 index 000000000..81dc9d3b6 Binary files /dev/null and b/indra/newview/skins/apollo/textures/arrow_down.tga differ diff --git a/indra/newview/skins/apollo/textures/arrow_up.tga b/indra/newview/skins/apollo/textures/arrow_up.tga new file mode 100644 index 000000000..22195cf7f Binary files /dev/null and b/indra/newview/skins/apollo/textures/arrow_up.tga differ diff --git a/indra/newview/skins/apollo/textures/avatar_gone.tga b/indra/newview/skins/apollo/textures/avatar_gone.tga new file mode 100644 index 000000000..e5c2c070b Binary files /dev/null and b/indra/newview/skins/apollo/textures/avatar_gone.tga differ diff --git a/indra/newview/skins/apollo/textures/avatar_new.tga b/indra/newview/skins/apollo/textures/avatar_new.tga new file mode 100644 index 000000000..854b70c32 Binary files /dev/null and b/indra/newview/skins/apollo/textures/avatar_new.tga differ diff --git a/indra/newview/skins/apollo/textures/avatar_sound.tga b/indra/newview/skins/apollo/textures/avatar_sound.tga new file mode 100644 index 000000000..ec5dacbf0 Binary files /dev/null and b/indra/newview/skins/apollo/textures/avatar_sound.tga differ diff --git a/indra/newview/skins/apollo/textures/avatar_typing.tga b/indra/newview/skins/apollo/textures/avatar_typing.tga new file mode 100644 index 000000000..2c549025d Binary files /dev/null and b/indra/newview/skins/apollo/textures/avatar_typing.tga differ diff --git a/indra/newview/skins/apollo/textures/b2ef2d31-9714-a07b-6ca7-31638166364b.tga b/indra/newview/skins/apollo/textures/b2ef2d31-9714-a07b-6ca7-31638166364b.tga new file mode 100644 index 000000000..7358e86d3 Binary files /dev/null and b/indra/newview/skins/apollo/textures/b2ef2d31-9714-a07b-6ca7-31638166364b.tga differ diff --git a/indra/newview/skins/apollo/textures/b4870163-6208-42a9-9801-93133bf9a6cd.tga b/indra/newview/skins/apollo/textures/b4870163-6208-42a9-9801-93133bf9a6cd.tga new file mode 100644 index 000000000..54f7c6ece Binary files /dev/null and b/indra/newview/skins/apollo/textures/b4870163-6208-42a9-9801-93133bf9a6cd.tga differ diff --git a/indra/newview/skins/white_emerald/Textures/black.tga b/indra/newview/skins/apollo/textures/black.tga similarity index 100% rename from indra/newview/skins/white_emerald/Textures/black.tga rename to indra/newview/skins/apollo/textures/black.tga diff --git a/indra/newview/skins/apollo/textures/btn_chatbar.tga b/indra/newview/skins/apollo/textures/btn_chatbar.tga new file mode 100644 index 000000000..07117925a Binary files /dev/null and b/indra/newview/skins/apollo/textures/btn_chatbar.tga differ diff --git a/indra/newview/skins/apollo/textures/btn_chatbar_selected.tga b/indra/newview/skins/apollo/textures/btn_chatbar_selected.tga new file mode 100644 index 000000000..3446bf168 Binary files /dev/null and b/indra/newview/skins/apollo/textures/btn_chatbar_selected.tga differ diff --git a/indra/newview/skins/apollo/textures/button_anim_pause.tga b/indra/newview/skins/apollo/textures/button_anim_pause.tga new file mode 100644 index 000000000..f4ad7adc0 Binary files /dev/null and b/indra/newview/skins/apollo/textures/button_anim_pause.tga differ diff --git a/indra/newview/skins/apollo/textures/button_anim_pause_disabled.tga b/indra/newview/skins/apollo/textures/button_anim_pause_disabled.tga new file mode 100644 index 000000000..4d604c63c Binary files /dev/null and b/indra/newview/skins/apollo/textures/button_anim_pause_disabled.tga differ diff --git a/indra/newview/skins/apollo/textures/button_anim_pause_selected.tga b/indra/newview/skins/apollo/textures/button_anim_pause_selected.tga new file mode 100644 index 000000000..64268de2c Binary files /dev/null and b/indra/newview/skins/apollo/textures/button_anim_pause_selected.tga differ diff --git a/indra/newview/skins/apollo/textures/button_anim_play.tga b/indra/newview/skins/apollo/textures/button_anim_play.tga new file mode 100644 index 000000000..9843aec5f Binary files /dev/null and b/indra/newview/skins/apollo/textures/button_anim_play.tga differ diff --git a/indra/newview/skins/apollo/textures/button_anim_play_disabled.tga b/indra/newview/skins/apollo/textures/button_anim_play_disabled.tga new file mode 100644 index 000000000..444062f37 Binary files /dev/null and b/indra/newview/skins/apollo/textures/button_anim_play_disabled.tga differ diff --git a/indra/newview/skins/apollo/textures/button_anim_play_selected.tga b/indra/newview/skins/apollo/textures/button_anim_play_selected.tga new file mode 100644 index 000000000..d102c2b06 Binary files /dev/null and b/indra/newview/skins/apollo/textures/button_anim_play_selected.tga differ diff --git a/indra/newview/skins/apollo/textures/button_anim_stop.tga b/indra/newview/skins/apollo/textures/button_anim_stop.tga new file mode 100644 index 000000000..4c28986bf Binary files /dev/null and b/indra/newview/skins/apollo/textures/button_anim_stop.tga differ diff --git a/indra/newview/skins/apollo/textures/button_anim_stop_disabled.tga b/indra/newview/skins/apollo/textures/button_anim_stop_disabled.tga new file mode 100644 index 000000000..cf1532a42 Binary files /dev/null and b/indra/newview/skins/apollo/textures/button_anim_stop_disabled.tga differ diff --git a/indra/newview/skins/apollo/textures/button_anim_stop_selected.tga b/indra/newview/skins/apollo/textures/button_anim_stop_selected.tga new file mode 100644 index 000000000..afb1536e0 Binary files /dev/null and b/indra/newview/skins/apollo/textures/button_anim_stop_selected.tga differ diff --git a/indra/newview/skins/apollo/textures/button_disabled_32x128.tga b/indra/newview/skins/apollo/textures/button_disabled_32x128.tga new file mode 100644 index 000000000..d33fbe464 Binary files /dev/null and b/indra/newview/skins/apollo/textures/button_disabled_32x128.tga differ diff --git a/indra/newview/skins/apollo/textures/button_enabled_32x128.tga b/indra/newview/skins/apollo/textures/button_enabled_32x128.tga new file mode 100644 index 000000000..d33fbe464 Binary files /dev/null and b/indra/newview/skins/apollo/textures/button_enabled_32x128.tga differ diff --git a/indra/newview/skins/apollo/textures/button_enabled_selected_32x128.tga b/indra/newview/skins/apollo/textures/button_enabled_selected_32x128.tga new file mode 100644 index 000000000..a7ef5b78d Binary files /dev/null and b/indra/newview/skins/apollo/textures/button_enabled_selected_32x128.tga differ diff --git a/indra/newview/skins/apollo/textures/c1e21504-f136-451d-b8e9-929037812f1d.tga b/indra/newview/skins/apollo/textures/c1e21504-f136-451d-b8e9-929037812f1d.tga new file mode 100644 index 000000000..0db2e5061 Binary files /dev/null and b/indra/newview/skins/apollo/textures/c1e21504-f136-451d-b8e9-929037812f1d.tga differ diff --git a/indra/newview/skins/apollo/textures/c63f124c-6340-4fbf-b59e-0869a44adb64.tga b/indra/newview/skins/apollo/textures/c63f124c-6340-4fbf-b59e-0869a44adb64.tga new file mode 100644 index 000000000..2e8d54b35 Binary files /dev/null and b/indra/newview/skins/apollo/textures/c63f124c-6340-4fbf-b59e-0869a44adb64.tga differ diff --git a/indra/newview/skins/apollo/textures/ca7609c6-6ec6-32d9-332e-0d8f437ef644.tga b/indra/newview/skins/apollo/textures/ca7609c6-6ec6-32d9-332e-0d8f437ef644.tga new file mode 100644 index 000000000..0dbb8fda4 Binary files /dev/null and b/indra/newview/skins/apollo/textures/ca7609c6-6ec6-32d9-332e-0d8f437ef644.tga differ diff --git a/indra/newview/skins/apollo/textures/cam_rotate_in.tga b/indra/newview/skins/apollo/textures/cam_rotate_in.tga new file mode 100644 index 000000000..129c9982e Binary files /dev/null and b/indra/newview/skins/apollo/textures/cam_rotate_in.tga differ diff --git a/indra/newview/skins/apollo/textures/cam_rotate_out.tga b/indra/newview/skins/apollo/textures/cam_rotate_out.tga new file mode 100644 index 000000000..bd7c80e29 Binary files /dev/null and b/indra/newview/skins/apollo/textures/cam_rotate_out.tga differ diff --git a/indra/newview/skins/apollo/textures/cam_tracking_in.tga b/indra/newview/skins/apollo/textures/cam_tracking_in.tga new file mode 100644 index 000000000..1d5b32a3c Binary files /dev/null and b/indra/newview/skins/apollo/textures/cam_tracking_in.tga differ diff --git a/indra/newview/skins/apollo/textures/cam_tracking_out.tga b/indra/newview/skins/apollo/textures/cam_tracking_out.tga new file mode 100644 index 000000000..8bac4a1f2 Binary files /dev/null and b/indra/newview/skins/apollo/textures/cam_tracking_out.tga differ diff --git a/indra/newview/skins/apollo/textures/cam_zoom_minus_in.tga b/indra/newview/skins/apollo/textures/cam_zoom_minus_in.tga new file mode 100644 index 000000000..58cb426be Binary files /dev/null and b/indra/newview/skins/apollo/textures/cam_zoom_minus_in.tga differ diff --git a/indra/newview/skins/apollo/textures/cam_zoom_out.tga b/indra/newview/skins/apollo/textures/cam_zoom_out.tga new file mode 100644 index 000000000..6b117abc1 Binary files /dev/null and b/indra/newview/skins/apollo/textures/cam_zoom_out.tga differ diff --git a/indra/newview/skins/apollo/textures/cam_zoom_plus_in.tga b/indra/newview/skins/apollo/textures/cam_zoom_plus_in.tga new file mode 100644 index 000000000..c427f4ba9 Binary files /dev/null and b/indra/newview/skins/apollo/textures/cam_zoom_plus_in.tga differ diff --git a/indra/newview/skins/apollo/textures/ce15fd63-b0b6-463c-a37d-ea6393208b3e.tga b/indra/newview/skins/apollo/textures/ce15fd63-b0b6-463c-a37d-ea6393208b3e.tga new file mode 100644 index 000000000..dfe32943a Binary files /dev/null and b/indra/newview/skins/apollo/textures/ce15fd63-b0b6-463c-a37d-ea6393208b3e.tga differ diff --git a/indra/newview/skins/apollo/textures/checkbox_disabled_false.tga b/indra/newview/skins/apollo/textures/checkbox_disabled_false.tga new file mode 100644 index 000000000..aa57cd211 Binary files /dev/null and b/indra/newview/skins/apollo/textures/checkbox_disabled_false.tga differ diff --git a/indra/newview/skins/apollo/textures/checkbox_disabled_true.tga b/indra/newview/skins/apollo/textures/checkbox_disabled_true.tga new file mode 100644 index 000000000..30bc6d4c9 Binary files /dev/null and b/indra/newview/skins/apollo/textures/checkbox_disabled_true.tga differ diff --git a/indra/newview/skins/apollo/textures/checkbox_enabled_false.tga b/indra/newview/skins/apollo/textures/checkbox_enabled_false.tga new file mode 100644 index 000000000..fb8265b18 Binary files /dev/null and b/indra/newview/skins/apollo/textures/checkbox_enabled_false.tga differ diff --git a/indra/newview/skins/apollo/textures/checkbox_enabled_true.tga b/indra/newview/skins/apollo/textures/checkbox_enabled_true.tga new file mode 100644 index 000000000..1b43d2abb Binary files /dev/null and b/indra/newview/skins/apollo/textures/checkbox_enabled_true.tga differ diff --git a/indra/newview/skins/apollo/textures/checkerboard_transparency_bg.png b/indra/newview/skins/apollo/textures/checkerboard_transparency_bg.png new file mode 100644 index 000000000..9a1693520 Binary files /dev/null and b/indra/newview/skins/apollo/textures/checkerboard_transparency_bg.png differ diff --git a/indra/newview/skins/apollo/textures/circle.tga b/indra/newview/skins/apollo/textures/circle.tga new file mode 100644 index 000000000..d7097e3a3 Binary files /dev/null and b/indra/newview/skins/apollo/textures/circle.tga differ diff --git a/indra/newview/skins/apollo/textures/close_in_blue.tga b/indra/newview/skins/apollo/textures/close_in_blue.tga new file mode 100644 index 000000000..c58e052b8 Binary files /dev/null and b/indra/newview/skins/apollo/textures/close_in_blue.tga differ diff --git a/indra/newview/skins/apollo/textures/close_inactive_blue.tga b/indra/newview/skins/apollo/textures/close_inactive_blue.tga new file mode 100644 index 000000000..2f912df59 Binary files /dev/null and b/indra/newview/skins/apollo/textures/close_inactive_blue.tga differ diff --git a/indra/newview/skins/apollo/textures/closebox.tga b/indra/newview/skins/apollo/textures/closebox.tga new file mode 100644 index 000000000..5e1195526 Binary files /dev/null and b/indra/newview/skins/apollo/textures/closebox.tga differ diff --git a/indra/newview/skins/apollo/textures/color_swatch_alpha.tga b/indra/newview/skins/apollo/textures/color_swatch_alpha.tga new file mode 100644 index 000000000..814a004e6 Binary files /dev/null and b/indra/newview/skins/apollo/textures/color_swatch_alpha.tga differ diff --git a/indra/newview/skins/apollo/textures/combobox_arrow.tga b/indra/newview/skins/apollo/textures/combobox_arrow.tga new file mode 100644 index 000000000..cd592c3df Binary files /dev/null and b/indra/newview/skins/apollo/textures/combobox_arrow.tga differ diff --git a/indra/newview/skins/apollo/textures/crosshairs.tga b/indra/newview/skins/apollo/textures/crosshairs.tga new file mode 100644 index 000000000..ac4d63dc5 Binary files /dev/null and b/indra/newview/skins/apollo/textures/crosshairs.tga differ diff --git a/indra/newview/skins/white_emerald/Textures/darkgray.tga b/indra/newview/skins/apollo/textures/darkgray.tga similarity index 100% rename from indra/newview/skins/white_emerald/Textures/darkgray.tga rename to indra/newview/skins/apollo/textures/darkgray.tga diff --git a/indra/newview/skins/apollo/textures/direction_arrow.tga b/indra/newview/skins/apollo/textures/direction_arrow.tga new file mode 100644 index 000000000..59149e1d5 Binary files /dev/null and b/indra/newview/skins/apollo/textures/direction_arrow.tga differ diff --git a/indra/newview/skins/apollo/textures/down_arrow.png b/indra/newview/skins/apollo/textures/down_arrow.png new file mode 100644 index 000000000..155f80c97 Binary files /dev/null and b/indra/newview/skins/apollo/textures/down_arrow.png differ diff --git a/indra/newview/skins/apollo/textures/e3369e02-93e1-43dc-b9c0-4533db0963d0.tga b/indra/newview/skins/apollo/textures/e3369e02-93e1-43dc-b9c0-4533db0963d0.tga new file mode 100644 index 000000000..0d127f946 Binary files /dev/null and b/indra/newview/skins/apollo/textures/e3369e02-93e1-43dc-b9c0-4533db0963d0.tga differ diff --git a/indra/newview/skins/apollo/textures/e97cf410-8e61-7005-ec06-629eba4cd1fb.tga b/indra/newview/skins/apollo/textures/e97cf410-8e61-7005-ec06-629eba4cd1fb.tga new file mode 100644 index 000000000..6fdba25d4 Binary files /dev/null and b/indra/newview/skins/apollo/textures/e97cf410-8e61-7005-ec06-629eba4cd1fb.tga differ diff --git a/indra/newview/skins/apollo/textures/eye_button_active.tga b/indra/newview/skins/apollo/textures/eye_button_active.tga new file mode 100644 index 000000000..8cda9a6a0 Binary files /dev/null and b/indra/newview/skins/apollo/textures/eye_button_active.tga differ diff --git a/indra/newview/skins/apollo/textures/eye_button_inactive.tga b/indra/newview/skins/apollo/textures/eye_button_inactive.tga new file mode 100644 index 000000000..92a289f11 Binary files /dev/null and b/indra/newview/skins/apollo/textures/eye_button_inactive.tga differ diff --git a/indra/newview/skins/apollo/textures/f9bbb2fe-584b-4c01-86fc-599c69534c1b.tga b/indra/newview/skins/apollo/textures/f9bbb2fe-584b-4c01-86fc-599c69534c1b.tga new file mode 100644 index 000000000..3706c96e0 Binary files /dev/null and b/indra/newview/skins/apollo/textures/f9bbb2fe-584b-4c01-86fc-599c69534c1b.tga differ diff --git a/indra/newview/skins/apollo/textures/ff9a71eb-7414-4cf8-866e-a701deb7c3cf.tga b/indra/newview/skins/apollo/textures/ff9a71eb-7414-4cf8-866e-a701deb7c3cf.tga new file mode 100644 index 000000000..534ecba91 Binary files /dev/null and b/indra/newview/skins/apollo/textures/ff9a71eb-7414-4cf8-866e-a701deb7c3cf.tga differ diff --git a/indra/newview/skins/apollo/textures/ff_edit_mine.tga b/indra/newview/skins/apollo/textures/ff_edit_mine.tga new file mode 100644 index 000000000..8f0c35b98 Binary files /dev/null and b/indra/newview/skins/apollo/textures/ff_edit_mine.tga differ diff --git a/indra/newview/skins/apollo/textures/ff_edit_mine_button.tga b/indra/newview/skins/apollo/textures/ff_edit_mine_button.tga new file mode 100644 index 000000000..d2feac64b Binary files /dev/null and b/indra/newview/skins/apollo/textures/ff_edit_mine_button.tga differ diff --git a/indra/newview/skins/apollo/textures/ff_edit_theirs.tga b/indra/newview/skins/apollo/textures/ff_edit_theirs.tga new file mode 100644 index 000000000..005ada2de Binary files /dev/null and b/indra/newview/skins/apollo/textures/ff_edit_theirs.tga differ diff --git a/indra/newview/skins/apollo/textures/ff_edit_theirs_button.tga b/indra/newview/skins/apollo/textures/ff_edit_theirs_button.tga new file mode 100644 index 000000000..ae0f5c977 Binary files /dev/null and b/indra/newview/skins/apollo/textures/ff_edit_theirs_button.tga differ diff --git a/indra/newview/skins/apollo/textures/ff_online_status_button.tga b/indra/newview/skins/apollo/textures/ff_online_status_button.tga new file mode 100644 index 000000000..30b70ccd4 Binary files /dev/null and b/indra/newview/skins/apollo/textures/ff_online_status_button.tga differ diff --git a/indra/newview/skins/apollo/textures/ff_visible_map.tga b/indra/newview/skins/apollo/textures/ff_visible_map.tga new file mode 100644 index 000000000..a4dad78da Binary files /dev/null and b/indra/newview/skins/apollo/textures/ff_visible_map.tga differ diff --git a/indra/newview/skins/apollo/textures/ff_visible_map_button.tga b/indra/newview/skins/apollo/textures/ff_visible_map_button.tga new file mode 100644 index 000000000..ca1bb7697 Binary files /dev/null and b/indra/newview/skins/apollo/textures/ff_visible_map_button.tga differ diff --git a/indra/newview/skins/apollo/textures/ff_visible_online.tga b/indra/newview/skins/apollo/textures/ff_visible_online.tga new file mode 100644 index 000000000..74e3a4e31 Binary files /dev/null and b/indra/newview/skins/apollo/textures/ff_visible_online.tga differ diff --git a/indra/newview/skins/apollo/textures/ff_visible_online_button.tga b/indra/newview/skins/apollo/textures/ff_visible_online_button.tga new file mode 100644 index 000000000..f0a4414e0 Binary files /dev/null and b/indra/newview/skins/apollo/textures/ff_visible_online_button.tga differ diff --git a/indra/newview/skins/apollo/textures/flag_blue.tga b/indra/newview/skins/apollo/textures/flag_blue.tga new file mode 100644 index 000000000..e61e7a912 Binary files /dev/null and b/indra/newview/skins/apollo/textures/flag_blue.tga differ diff --git a/indra/newview/skins/apollo/textures/flag_green.tga b/indra/newview/skins/apollo/textures/flag_green.tga new file mode 100644 index 000000000..5f0f05c24 Binary files /dev/null and b/indra/newview/skins/apollo/textures/flag_green.tga differ diff --git a/indra/newview/skins/apollo/textures/flag_orange.tga b/indra/newview/skins/apollo/textures/flag_orange.tga new file mode 100644 index 000000000..6e73c31b5 Binary files /dev/null and b/indra/newview/skins/apollo/textures/flag_orange.tga differ diff --git a/indra/newview/skins/apollo/textures/flag_pink.tga b/indra/newview/skins/apollo/textures/flag_pink.tga new file mode 100644 index 000000000..ccf52b9a4 Binary files /dev/null and b/indra/newview/skins/apollo/textures/flag_pink.tga differ diff --git a/indra/newview/skins/apollo/textures/flag_purple.tga b/indra/newview/skins/apollo/textures/flag_purple.tga new file mode 100644 index 000000000..3ef8f0921 Binary files /dev/null and b/indra/newview/skins/apollo/textures/flag_purple.tga differ diff --git a/indra/newview/skins/apollo/textures/flag_red.tga b/indra/newview/skins/apollo/textures/flag_red.tga new file mode 100644 index 000000000..87afb595a Binary files /dev/null and b/indra/newview/skins/apollo/textures/flag_red.tga differ diff --git a/indra/newview/skins/apollo/textures/flag_yellow.tga b/indra/newview/skins/apollo/textures/flag_yellow.tga new file mode 100644 index 000000000..4c4a64768 Binary files /dev/null and b/indra/newview/skins/apollo/textures/flag_yellow.tga differ diff --git a/indra/newview/skins/apollo/textures/flyout_btn_left.tga b/indra/newview/skins/apollo/textures/flyout_btn_left.tga new file mode 100644 index 000000000..3e4e2625c Binary files /dev/null and b/indra/newview/skins/apollo/textures/flyout_btn_left.tga differ diff --git a/indra/newview/skins/apollo/textures/flyout_btn_left_disabled.tga b/indra/newview/skins/apollo/textures/flyout_btn_left_disabled.tga new file mode 100644 index 000000000..3e4e2625c Binary files /dev/null and b/indra/newview/skins/apollo/textures/flyout_btn_left_disabled.tga differ diff --git a/indra/newview/skins/apollo/textures/flyout_btn_left_selected.tga b/indra/newview/skins/apollo/textures/flyout_btn_left_selected.tga new file mode 100644 index 000000000..b8e809c57 Binary files /dev/null and b/indra/newview/skins/apollo/textures/flyout_btn_left_selected.tga differ diff --git a/indra/newview/skins/apollo/textures/flyout_btn_right.tga b/indra/newview/skins/apollo/textures/flyout_btn_right.tga new file mode 100644 index 000000000..c59ad0043 Binary files /dev/null and b/indra/newview/skins/apollo/textures/flyout_btn_right.tga differ diff --git a/indra/newview/skins/apollo/textures/flyout_btn_right_disabled.tga b/indra/newview/skins/apollo/textures/flyout_btn_right_disabled.tga new file mode 100644 index 000000000..c59ad0043 Binary files /dev/null and b/indra/newview/skins/apollo/textures/flyout_btn_right_disabled.tga differ diff --git a/indra/newview/skins/apollo/textures/flyout_btn_right_selected.tga b/indra/newview/skins/apollo/textures/flyout_btn_right_selected.tga new file mode 100644 index 000000000..70afe2d34 Binary files /dev/null and b/indra/newview/skins/apollo/textures/flyout_btn_right_selected.tga differ diff --git a/indra/newview/skins/apollo/textures/flyout_left.tga b/indra/newview/skins/apollo/textures/flyout_left.tga new file mode 100644 index 000000000..a759112e1 Binary files /dev/null and b/indra/newview/skins/apollo/textures/flyout_left.tga differ diff --git a/indra/newview/skins/apollo/textures/flyout_left_disabled.tga b/indra/newview/skins/apollo/textures/flyout_left_disabled.tga new file mode 100644 index 000000000..a759112e1 Binary files /dev/null and b/indra/newview/skins/apollo/textures/flyout_left_disabled.tga differ diff --git a/indra/newview/skins/apollo/textures/flyout_left_selected.tga b/indra/newview/skins/apollo/textures/flyout_left_selected.tga new file mode 100644 index 000000000..783dc6270 Binary files /dev/null and b/indra/newview/skins/apollo/textures/flyout_left_selected.tga differ diff --git a/indra/newview/skins/apollo/textures/folder_arrow.tga b/indra/newview/skins/apollo/textures/folder_arrow.tga new file mode 100644 index 000000000..734a00a84 Binary files /dev/null and b/indra/newview/skins/apollo/textures/folder_arrow.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_active-speakers-dot-lvl0.tga b/indra/newview/skins/apollo/textures/icn_active-speakers-dot-lvl0.tga new file mode 100644 index 000000000..35846cef3 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_active-speakers-dot-lvl0.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_active-speakers-dot-lvl1.tga b/indra/newview/skins/apollo/textures/icn_active-speakers-dot-lvl1.tga new file mode 100644 index 000000000..1f9f564fa Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_active-speakers-dot-lvl1.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_active-speakers-dot-lvl2.tga b/indra/newview/skins/apollo/textures/icn_active-speakers-dot-lvl2.tga new file mode 100644 index 000000000..b2e5609f1 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_active-speakers-dot-lvl2.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_active-speakers-typing1.tga b/indra/newview/skins/apollo/textures/icn_active-speakers-typing1.tga new file mode 100644 index 000000000..3706c96e0 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_active-speakers-typing1.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_active-speakers-typing2.tga b/indra/newview/skins/apollo/textures/icn_active-speakers-typing2.tga new file mode 100644 index 000000000..0d127f946 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_active-speakers-typing2.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_active-speakers-typing3.tga b/indra/newview/skins/apollo/textures/icn_active-speakers-typing3.tga new file mode 100644 index 000000000..031b3ad34 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_active-speakers-typing3.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_chatbar.tga b/indra/newview/skins/apollo/textures/icn_chatbar.tga new file mode 100644 index 000000000..b89dfc432 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_chatbar.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_clear_lineeditor.tga b/indra/newview/skins/apollo/textures/icn_clear_lineeditor.tga new file mode 100644 index 000000000..8cd8310c6 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_clear_lineeditor.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_label_media.tga b/indra/newview/skins/apollo/textures/icn_label_media.tga new file mode 100644 index 000000000..b16c528e9 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_label_media.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_label_music.tga b/indra/newview/skins/apollo/textures/icn_label_music.tga new file mode 100644 index 000000000..515f170b6 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_label_music.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_label_web.tga b/indra/newview/skins/apollo/textures/icn_label_web.tga new file mode 100644 index 000000000..6cacfad7a Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_label_web.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_media-pause.tga b/indra/newview/skins/apollo/textures/icn_media-pause.tga new file mode 100644 index 000000000..0713af0b4 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_media-pause.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_media-pause_active.tga b/indra/newview/skins/apollo/textures/icn_media-pause_active.tga new file mode 100644 index 000000000..21384316a Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_media-pause_active.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_media-pause_disabled.tga b/indra/newview/skins/apollo/textures/icn_media-pause_disabled.tga new file mode 100644 index 000000000..4d604c63c Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_media-pause_disabled.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_media-pause_enabled.tga b/indra/newview/skins/apollo/textures/icn_media-pause_enabled.tga new file mode 100644 index 000000000..577f9195d Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_media-pause_enabled.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_media-play.tga b/indra/newview/skins/apollo/textures/icn_media-play.tga new file mode 100644 index 000000000..bdd9f1611 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_media-play.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_media-play_active.tga b/indra/newview/skins/apollo/textures/icn_media-play_active.tga new file mode 100644 index 000000000..b166a4178 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_media-play_active.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_media-play_disabled.tga b/indra/newview/skins/apollo/textures/icn_media-play_disabled.tga new file mode 100644 index 000000000..444062f37 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_media-play_disabled.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_media-play_enabled.tga b/indra/newview/skins/apollo/textures/icn_media-play_enabled.tga new file mode 100644 index 000000000..9ed55f829 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_media-play_enabled.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_media-stop_active.tga b/indra/newview/skins/apollo/textures/icn_media-stop_active.tga new file mode 100644 index 000000000..03efac206 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_media-stop_active.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_media-stop_disabled.tga b/indra/newview/skins/apollo/textures/icn_media-stop_disabled.tga new file mode 100644 index 000000000..cf1532a42 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_media-stop_disabled.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_media-stop_enabled.tga b/indra/newview/skins/apollo/textures/icn_media-stop_enabled.tga new file mode 100644 index 000000000..011b98c49 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_media-stop_enabled.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_media.tga b/indra/newview/skins/apollo/textures/icn_media.tga new file mode 100644 index 000000000..43dd342c9 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_media.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_media_movie.tga b/indra/newview/skins/apollo/textures/icn_media_movie.tga new file mode 100644 index 000000000..b16c528e9 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_media_movie.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_media_web.tga b/indra/newview/skins/apollo/textures/icn_media_web.tga new file mode 100644 index 000000000..a92ae962b Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_media_web.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_music-pause.tga b/indra/newview/skins/apollo/textures/icn_music-pause.tga new file mode 100644 index 000000000..548ccf4e4 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_music-pause.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_music-play.tga b/indra/newview/skins/apollo/textures/icn_music-play.tga new file mode 100644 index 000000000..1a67d3440 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_music-play.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_music.tga b/indra/newview/skins/apollo/textures/icn_music.tga new file mode 100644 index 000000000..9470601db Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_music.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_pause.tga b/indra/newview/skins/apollo/textures/icn_pause.tga new file mode 100644 index 000000000..3bc286f5f Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_pause.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_play.tga b/indra/newview/skins/apollo/textures/icn_play.tga new file mode 100644 index 000000000..a23ef52e3 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_play.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_rounded-text-field.tga b/indra/newview/skins/apollo/textures/icn_rounded-text-field.tga new file mode 100644 index 000000000..1f1e72572 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_rounded-text-field.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_scrollbar.tga b/indra/newview/skins/apollo/textures/icn_scrollbar.tga new file mode 100644 index 000000000..a19a8a5d1 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_scrollbar.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_scrollbar_bg.tga b/indra/newview/skins/apollo/textures/icn_scrollbar_bg.tga new file mode 100644 index 000000000..1e4bc7a8a Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_scrollbar_bg.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_scrollbar_thumb.tga b/indra/newview/skins/apollo/textures/icn_scrollbar_thumb.tga new file mode 100644 index 000000000..d63c31472 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_scrollbar_thumb.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_slide-groove_dark.tga b/indra/newview/skins/apollo/textures/icn_slide-groove_dark.tga new file mode 100644 index 000000000..ce0bd07e3 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_slide-groove_dark.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_slide-highlight.tga b/indra/newview/skins/apollo/textures/icn_slide-highlight.tga new file mode 100644 index 000000000..5b971e679 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_slide-highlight.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_slide-thumb_dark.tga b/indra/newview/skins/apollo/textures/icn_slide-thumb_dark.tga new file mode 100644 index 000000000..e4c1b0980 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_slide-thumb_dark.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_speaker-muted_dark.tga b/indra/newview/skins/apollo/textures/icn_speaker-muted_dark.tga new file mode 100644 index 000000000..a7d29a14b Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_speaker-muted_dark.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_speaker_dark.tga b/indra/newview/skins/apollo/textures/icn_speaker_dark.tga new file mode 100644 index 000000000..f2f24efb0 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_speaker_dark.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_stop.tga b/indra/newview/skins/apollo/textures/icn_stop.tga new file mode 100644 index 000000000..7a53bccc2 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_stop.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_textfield_enabled.tga b/indra/newview/skins/apollo/textures/icn_textfield_enabled.tga new file mode 100644 index 000000000..fc681a195 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_textfield_enabled.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_toolbar_build.tga b/indra/newview/skins/apollo/textures/icn_toolbar_build.tga new file mode 100644 index 000000000..e1a814b1e Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_toolbar_build.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_toolbar_fly.tga b/indra/newview/skins/apollo/textures/icn_toolbar_fly.tga new file mode 100644 index 000000000..e1a814b1e Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_toolbar_fly.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_toolbar_inventory.tga b/indra/newview/skins/apollo/textures/icn_toolbar_inventory.tga new file mode 100644 index 000000000..e1a814b1e Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_toolbar_inventory.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_toolbar_map.tga b/indra/newview/skins/apollo/textures/icn_toolbar_map.tga new file mode 100644 index 000000000..e1a814b1e Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_toolbar_map.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_toolbar_minimap.tga b/indra/newview/skins/apollo/textures/icn_toolbar_minimap.tga new file mode 100644 index 000000000..e1a814b1e Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_toolbar_minimap.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_toolbar_search.tga b/indra/newview/skins/apollo/textures/icn_toolbar_search.tga new file mode 100644 index 000000000..e1a814b1e Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_toolbar_search.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_toolbar_snapshot.tga b/indra/newview/skins/apollo/textures/icn_toolbar_snapshot.tga new file mode 100644 index 000000000..e1a814b1e Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_toolbar_snapshot.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_voice-call-end.tga b/indra/newview/skins/apollo/textures/icn_voice-call-end.tga new file mode 100644 index 000000000..2da4e856b Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_voice-call-end.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_voice-call-start.tga b/indra/newview/skins/apollo/textures/icn_voice-call-start.tga new file mode 100644 index 000000000..07701cb5a Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_voice-call-start.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_voice-groupfocus.tga b/indra/newview/skins/apollo/textures/icn_voice-groupfocus.tga new file mode 100644 index 000000000..9f48d4609 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_voice-groupfocus.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_voice-localchat.tga b/indra/newview/skins/apollo/textures/icn_voice-localchat.tga new file mode 100644 index 000000000..7cf267eaf Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_voice-localchat.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_voice-pvtfocus.tga b/indra/newview/skins/apollo/textures/icn_voice-pvtfocus.tga new file mode 100644 index 000000000..abadb09aa Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_voice-pvtfocus.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_voice_ptt-off.tga b/indra/newview/skins/apollo/textures/icn_voice_ptt-off.tga new file mode 100644 index 000000000..15ecbdff9 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_voice_ptt-off.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_voice_ptt-on-lvl1.tga b/indra/newview/skins/apollo/textures/icn_voice_ptt-on-lvl1.tga new file mode 100644 index 000000000..ae72af131 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_voice_ptt-on-lvl1.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_voice_ptt-on-lvl2.tga b/indra/newview/skins/apollo/textures/icn_voice_ptt-on-lvl2.tga new file mode 100644 index 000000000..4dfc2dd29 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_voice_ptt-on-lvl2.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_voice_ptt-on-lvl3.tga b/indra/newview/skins/apollo/textures/icn_voice_ptt-on-lvl3.tga new file mode 100644 index 000000000..018b0bef4 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_voice_ptt-on-lvl3.tga differ diff --git a/indra/newview/skins/apollo/textures/icn_voice_ptt-on.tga b/indra/newview/skins/apollo/textures/icn_voice_ptt-on.tga new file mode 100644 index 000000000..9eb643110 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icn_voice_ptt-on.tga differ diff --git a/indra/newview/skins/apollo/textures/icon_auction.tga b/indra/newview/skins/apollo/textures/icon_auction.tga new file mode 100644 index 000000000..d121833b4 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icon_auction.tga differ diff --git a/indra/newview/skins/apollo/textures/icon_avatar_expand.png b/indra/newview/skins/apollo/textures/icon_avatar_expand.png new file mode 100644 index 000000000..47698e9eb Binary files /dev/null and b/indra/newview/skins/apollo/textures/icon_avatar_expand.png differ diff --git a/indra/newview/skins/apollo/textures/icon_avatar_offline.tga b/indra/newview/skins/apollo/textures/icon_avatar_offline.tga new file mode 100644 index 000000000..620e0f7c1 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icon_avatar_offline.tga differ diff --git a/indra/newview/skins/apollo/textures/icon_avatar_online.tga b/indra/newview/skins/apollo/textures/icon_avatar_online.tga new file mode 100644 index 000000000..45221213e Binary files /dev/null and b/indra/newview/skins/apollo/textures/icon_avatar_online.tga differ diff --git a/indra/newview/skins/apollo/textures/icon_day_cycle.tga b/indra/newview/skins/apollo/textures/icon_day_cycle.tga new file mode 100644 index 000000000..2d5dee1e9 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icon_day_cycle.tga differ diff --git a/indra/newview/skins/apollo/textures/icon_diurnal.tga b/indra/newview/skins/apollo/textures/icon_diurnal.tga new file mode 100644 index 000000000..fc720c826 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icon_diurnal.tga differ diff --git a/indra/newview/skins/apollo/textures/icon_event.tga b/indra/newview/skins/apollo/textures/icon_event.tga new file mode 100644 index 000000000..23f246b91 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icon_event.tga differ diff --git a/indra/newview/skins/apollo/textures/icon_event_adult.tga b/indra/newview/skins/apollo/textures/icon_event_adult.tga new file mode 100644 index 000000000..7202e6734 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icon_event_adult.tga differ diff --git a/indra/newview/skins/apollo/textures/icon_event_mature.tga b/indra/newview/skins/apollo/textures/icon_event_mature.tga new file mode 100644 index 000000000..61c879bc9 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icon_event_mature.tga differ diff --git a/indra/newview/skins/apollo/textures/icon_for_sale.tga b/indra/newview/skins/apollo/textures/icon_for_sale.tga new file mode 100644 index 000000000..09405d383 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icon_for_sale.tga differ diff --git a/indra/newview/skins/apollo/textures/icon_for_sale_adult.tga b/indra/newview/skins/apollo/textures/icon_for_sale_adult.tga new file mode 100644 index 000000000..147f724e7 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icon_for_sale_adult.tga differ diff --git a/indra/newview/skins/apollo/textures/icon_group.tga b/indra/newview/skins/apollo/textures/icon_group.tga new file mode 100644 index 000000000..1e5c31aa3 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icon_group.tga differ diff --git a/indra/newview/skins/apollo/textures/icon_groupnotice.tga b/indra/newview/skins/apollo/textures/icon_groupnotice.tga new file mode 100644 index 000000000..6b312a9ec Binary files /dev/null and b/indra/newview/skins/apollo/textures/icon_groupnotice.tga differ diff --git a/indra/newview/skins/apollo/textures/icon_groupnoticeinventory.tga b/indra/newview/skins/apollo/textures/icon_groupnoticeinventory.tga new file mode 100644 index 000000000..06f59e583 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icon_groupnoticeinventory.tga differ diff --git a/indra/newview/skins/apollo/textures/icon_lock.tga b/indra/newview/skins/apollo/textures/icon_lock.tga new file mode 100644 index 000000000..5de6cc10e Binary files /dev/null and b/indra/newview/skins/apollo/textures/icon_lock.tga differ diff --git a/indra/newview/skins/apollo/textures/icon_place.tga b/indra/newview/skins/apollo/textures/icon_place.tga new file mode 100644 index 000000000..7f842ba65 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icon_place.tga differ diff --git a/indra/newview/skins/apollo/textures/icon_popular.tga b/indra/newview/skins/apollo/textures/icon_popular.tga new file mode 100644 index 000000000..f1165b8aa Binary files /dev/null and b/indra/newview/skins/apollo/textures/icon_popular.tga differ diff --git a/indra/newview/skins/apollo/textures/icon_top_pick.tga b/indra/newview/skins/apollo/textures/icon_top_pick.tga new file mode 100644 index 000000000..7fe119a81 Binary files /dev/null and b/indra/newview/skins/apollo/textures/icon_top_pick.tga differ diff --git a/indra/newview/skins/apollo/textures/info_error.tga b/indra/newview/skins/apollo/textures/info_error.tga new file mode 100644 index 000000000..d5d71ad95 Binary files /dev/null and b/indra/newview/skins/apollo/textures/info_error.tga differ diff --git a/indra/newview/skins/apollo/textures/info_fetching.tga b/indra/newview/skins/apollo/textures/info_fetching.tga new file mode 100644 index 000000000..d9faa4014 Binary files /dev/null and b/indra/newview/skins/apollo/textures/info_fetching.tga differ diff --git a/indra/newview/skins/apollo/textures/info_unknown.tga b/indra/newview/skins/apollo/textures/info_unknown.tga new file mode 100644 index 000000000..b04e4b064 Binary files /dev/null and b/indra/newview/skins/apollo/textures/info_unknown.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_folder_animation.tga b/indra/newview/skins/apollo/textures/inv_folder_animation.tga new file mode 100644 index 000000000..ffe56a15f Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_folder_animation.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_folder_bodypart.tga b/indra/newview/skins/apollo/textures/inv_folder_bodypart.tga new file mode 100644 index 000000000..10076c380 Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_folder_bodypart.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_folder_callingcard.tga b/indra/newview/skins/apollo/textures/inv_folder_callingcard.tga new file mode 100644 index 000000000..b5d08a816 Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_folder_callingcard.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_folder_clothing.tga b/indra/newview/skins/apollo/textures/inv_folder_clothing.tga new file mode 100644 index 000000000..5467b3bf8 Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_folder_clothing.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_folder_gesture.tga b/indra/newview/skins/apollo/textures/inv_folder_gesture.tga new file mode 100644 index 000000000..400a8e5c7 Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_folder_gesture.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_folder_landmark.tga b/indra/newview/skins/apollo/textures/inv_folder_landmark.tga new file mode 100644 index 000000000..901526259 Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_folder_landmark.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_folder_lostandfound.tga b/indra/newview/skins/apollo/textures/inv_folder_lostandfound.tga new file mode 100644 index 000000000..7451c35b8 Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_folder_lostandfound.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_folder_notecard.tga b/indra/newview/skins/apollo/textures/inv_folder_notecard.tga new file mode 100644 index 000000000..d8ebca11a Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_folder_notecard.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_folder_object.tga b/indra/newview/skins/apollo/textures/inv_folder_object.tga new file mode 100644 index 000000000..c7951ccce Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_folder_object.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_folder_plain_closed.tga b/indra/newview/skins/apollo/textures/inv_folder_plain_closed.tga new file mode 100644 index 000000000..b46f97d11 Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_folder_plain_closed.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_folder_plain_open.tga b/indra/newview/skins/apollo/textures/inv_folder_plain_open.tga new file mode 100644 index 000000000..c4b0f3f61 Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_folder_plain_open.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_folder_script.tga b/indra/newview/skins/apollo/textures/inv_folder_script.tga new file mode 100644 index 000000000..c280d4282 Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_folder_script.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_folder_snapshot.tga b/indra/newview/skins/apollo/textures/inv_folder_snapshot.tga new file mode 100644 index 000000000..8b2dfa5fa Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_folder_snapshot.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_folder_sound.tga b/indra/newview/skins/apollo/textures/inv_folder_sound.tga new file mode 100644 index 000000000..e0ebed0d3 Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_folder_sound.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_folder_texture.tga b/indra/newview/skins/apollo/textures/inv_folder_texture.tga new file mode 100644 index 000000000..2d69c84f6 Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_folder_texture.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_folder_trash.tga b/indra/newview/skins/apollo/textures/inv_folder_trash.tga new file mode 100644 index 000000000..e6ffad1e0 Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_folder_trash.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_item_animation.tga b/indra/newview/skins/apollo/textures/inv_item_animation.tga new file mode 100644 index 000000000..715189fda Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_item_animation.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_item_attach.tga b/indra/newview/skins/apollo/textures/inv_item_attach.tga new file mode 100644 index 000000000..2da7ef8e7 Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_item_attach.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_item_callingcard_offline.tga b/indra/newview/skins/apollo/textures/inv_item_callingcard_offline.tga new file mode 100644 index 000000000..70e7a2645 Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_item_callingcard_offline.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_item_callingcard_online.tga b/indra/newview/skins/apollo/textures/inv_item_callingcard_online.tga new file mode 100644 index 000000000..8e394063b Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_item_callingcard_online.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_item_clothing.tga b/indra/newview/skins/apollo/textures/inv_item_clothing.tga new file mode 100644 index 000000000..b41096371 Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_item_clothing.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_item_eyes.tga b/indra/newview/skins/apollo/textures/inv_item_eyes.tga new file mode 100644 index 000000000..0cfebb69d Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_item_eyes.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_item_gesture.tga b/indra/newview/skins/apollo/textures/inv_item_gesture.tga new file mode 100644 index 000000000..95c1da44e Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_item_gesture.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_item_gloves.tga b/indra/newview/skins/apollo/textures/inv_item_gloves.tga new file mode 100644 index 000000000..6f55738ee Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_item_gloves.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_item_hair.tga b/indra/newview/skins/apollo/textures/inv_item_hair.tga new file mode 100644 index 000000000..13ffe09c3 Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_item_hair.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_item_jacket.tga b/indra/newview/skins/apollo/textures/inv_item_jacket.tga new file mode 100644 index 000000000..a1b518c63 Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_item_jacket.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_item_landmark.tga b/indra/newview/skins/apollo/textures/inv_item_landmark.tga new file mode 100644 index 000000000..addf5eb0e Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_item_landmark.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_item_landmark_visited.tga b/indra/newview/skins/apollo/textures/inv_item_landmark_visited.tga new file mode 100644 index 000000000..b16f9a1b8 Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_item_landmark_visited.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_item_notecard.tga b/indra/newview/skins/apollo/textures/inv_item_notecard.tga new file mode 100644 index 000000000..c7b3bf557 Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_item_notecard.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_item_object.tga b/indra/newview/skins/apollo/textures/inv_item_object.tga new file mode 100644 index 000000000..9c407b1d5 Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_item_object.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_item_object_multi.tga b/indra/newview/skins/apollo/textures/inv_item_object_multi.tga new file mode 100644 index 000000000..d2ed12df3 Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_item_object_multi.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_item_pants.tga b/indra/newview/skins/apollo/textures/inv_item_pants.tga new file mode 100644 index 000000000..517c94712 Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_item_pants.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_item_script.tga b/indra/newview/skins/apollo/textures/inv_item_script.tga new file mode 100644 index 000000000..8e602f595 Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_item_script.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_item_script_dangerous.tga b/indra/newview/skins/apollo/textures/inv_item_script_dangerous.tga new file mode 100644 index 000000000..b5a1bc947 Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_item_script_dangerous.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_item_shape.tga b/indra/newview/skins/apollo/textures/inv_item_shape.tga new file mode 100644 index 000000000..d28bb2583 Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_item_shape.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_item_shirt.tga b/indra/newview/skins/apollo/textures/inv_item_shirt.tga new file mode 100644 index 000000000..b41096371 Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_item_shirt.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_item_shoes.tga b/indra/newview/skins/apollo/textures/inv_item_shoes.tga new file mode 100644 index 000000000..f124ed458 Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_item_shoes.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_item_skin.tga b/indra/newview/skins/apollo/textures/inv_item_skin.tga new file mode 100644 index 000000000..169fbc1d5 Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_item_skin.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_item_skirt.tga b/indra/newview/skins/apollo/textures/inv_item_skirt.tga new file mode 100644 index 000000000..cd0292210 Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_item_skirt.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_item_snapshot.tga b/indra/newview/skins/apollo/textures/inv_item_snapshot.tga new file mode 100644 index 000000000..fcf7316bd Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_item_snapshot.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_item_socks.tga b/indra/newview/skins/apollo/textures/inv_item_socks.tga new file mode 100644 index 000000000..0ccb575ce Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_item_socks.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_item_sound.tga b/indra/newview/skins/apollo/textures/inv_item_sound.tga new file mode 100644 index 000000000..1bb8adfa1 Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_item_sound.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_item_texture.tga b/indra/newview/skins/apollo/textures/inv_item_texture.tga new file mode 100644 index 000000000..7016ae080 Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_item_texture.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_item_underpants.tga b/indra/newview/skins/apollo/textures/inv_item_underpants.tga new file mode 100644 index 000000000..b9f29c688 Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_item_underpants.tga differ diff --git a/indra/newview/skins/apollo/textures/inv_item_undershirt.tga b/indra/newview/skins/apollo/textures/inv_item_undershirt.tga new file mode 100644 index 000000000..a62b1d853 Binary files /dev/null and b/indra/newview/skins/apollo/textures/inv_item_undershirt.tga differ diff --git a/indra/newview/skins/apollo/textures/lag_status_critical.tga b/indra/newview/skins/apollo/textures/lag_status_critical.tga new file mode 100644 index 000000000..bbc71d9e7 Binary files /dev/null and b/indra/newview/skins/apollo/textures/lag_status_critical.tga differ diff --git a/indra/newview/skins/apollo/textures/lag_status_good.tga b/indra/newview/skins/apollo/textures/lag_status_good.tga new file mode 100644 index 000000000..680ba90f1 Binary files /dev/null and b/indra/newview/skins/apollo/textures/lag_status_good.tga differ diff --git a/indra/newview/skins/apollo/textures/lag_status_warning.tga b/indra/newview/skins/apollo/textures/lag_status_warning.tga new file mode 100644 index 000000000..13ce3cc39 Binary files /dev/null and b/indra/newview/skins/apollo/textures/lag_status_warning.tga differ diff --git a/indra/newview/skins/apollo/textures/legend.tga b/indra/newview/skins/apollo/textures/legend.tga new file mode 100644 index 000000000..0dbb8fda4 Binary files /dev/null and b/indra/newview/skins/apollo/textures/legend.tga differ diff --git a/indra/newview/skins/apollo/textures/lightgray.tga b/indra/newview/skins/apollo/textures/lightgray.tga new file mode 100644 index 000000000..2063d685a Binary files /dev/null and b/indra/newview/skins/apollo/textures/lightgray.tga differ diff --git a/indra/newview/skins/apollo/textures/map_avatar_16.tga b/indra/newview/skins/apollo/textures/map_avatar_16.tga new file mode 100644 index 000000000..ce129e359 Binary files /dev/null and b/indra/newview/skins/apollo/textures/map_avatar_16.tga differ diff --git a/indra/newview/skins/apollo/textures/map_avatar_32.tga b/indra/newview/skins/apollo/textures/map_avatar_32.tga new file mode 100644 index 000000000..aebeab409 Binary files /dev/null and b/indra/newview/skins/apollo/textures/map_avatar_32.tga differ diff --git a/indra/newview/skins/apollo/textures/map_avatar_8.tga b/indra/newview/skins/apollo/textures/map_avatar_8.tga new file mode 100644 index 000000000..28552f223 Binary files /dev/null and b/indra/newview/skins/apollo/textures/map_avatar_8.tga differ diff --git a/indra/newview/skins/apollo/textures/map_avatar_above_32.tga b/indra/newview/skins/apollo/textures/map_avatar_above_32.tga new file mode 100644 index 000000000..65bd0561a Binary files /dev/null and b/indra/newview/skins/apollo/textures/map_avatar_above_32.tga differ diff --git a/indra/newview/skins/apollo/textures/map_avatar_above_8.tga b/indra/newview/skins/apollo/textures/map_avatar_above_8.tga new file mode 100644 index 000000000..193428e53 Binary files /dev/null and b/indra/newview/skins/apollo/textures/map_avatar_above_8.tga differ diff --git a/indra/newview/skins/apollo/textures/map_avatar_below_32.tga b/indra/newview/skins/apollo/textures/map_avatar_below_32.tga new file mode 100644 index 000000000..496c44b36 Binary files /dev/null and b/indra/newview/skins/apollo/textures/map_avatar_below_32.tga differ diff --git a/indra/newview/skins/apollo/textures/map_avatar_below_8.tga b/indra/newview/skins/apollo/textures/map_avatar_below_8.tga new file mode 100644 index 000000000..9e14bfab9 Binary files /dev/null and b/indra/newview/skins/apollo/textures/map_avatar_below_8.tga differ diff --git a/indra/newview/skins/apollo/textures/map_avatar_you_32.tga b/indra/newview/skins/apollo/textures/map_avatar_you_32.tga new file mode 100644 index 000000000..782207efd Binary files /dev/null and b/indra/newview/skins/apollo/textures/map_avatar_you_32.tga differ diff --git a/indra/newview/skins/apollo/textures/map_avatar_you_8.tga b/indra/newview/skins/apollo/textures/map_avatar_you_8.tga new file mode 100644 index 000000000..61f319fd9 Binary files /dev/null and b/indra/newview/skins/apollo/textures/map_avatar_you_8.tga differ diff --git a/indra/newview/skins/apollo/textures/map_event.tga b/indra/newview/skins/apollo/textures/map_event.tga new file mode 100644 index 000000000..103c5e535 Binary files /dev/null and b/indra/newview/skins/apollo/textures/map_event.tga differ diff --git a/indra/newview/skins/apollo/textures/map_event_adult.tga b/indra/newview/skins/apollo/textures/map_event_adult.tga new file mode 100644 index 000000000..7202e6734 Binary files /dev/null and b/indra/newview/skins/apollo/textures/map_event_adult.tga differ diff --git a/indra/newview/skins/apollo/textures/map_event_mature.tga b/indra/newview/skins/apollo/textures/map_event_mature.tga new file mode 100644 index 000000000..23f246b91 Binary files /dev/null and b/indra/newview/skins/apollo/textures/map_event_mature.tga differ diff --git a/indra/newview/skins/apollo/textures/map_home.tga b/indra/newview/skins/apollo/textures/map_home.tga new file mode 100644 index 000000000..7478de371 Binary files /dev/null and b/indra/newview/skins/apollo/textures/map_home.tga differ diff --git a/indra/newview/skins/apollo/textures/map_infohub.tga b/indra/newview/skins/apollo/textures/map_infohub.tga new file mode 100644 index 000000000..173b93e39 Binary files /dev/null and b/indra/newview/skins/apollo/textures/map_infohub.tga differ diff --git a/indra/newview/skins/apollo/textures/map_telehub.tga b/indra/newview/skins/apollo/textures/map_telehub.tga new file mode 100644 index 000000000..d89bcfa40 Binary files /dev/null and b/indra/newview/skins/apollo/textures/map_telehub.tga differ diff --git a/indra/newview/skins/apollo/textures/map_track_16.tga b/indra/newview/skins/apollo/textures/map_track_16.tga new file mode 100644 index 000000000..451ce24cf Binary files /dev/null and b/indra/newview/skins/apollo/textures/map_track_16.tga differ diff --git a/indra/newview/skins/apollo/textures/map_track_8.tga b/indra/newview/skins/apollo/textures/map_track_8.tga new file mode 100644 index 000000000..53425ff45 Binary files /dev/null and b/indra/newview/skins/apollo/textures/map_track_8.tga differ diff --git a/indra/newview/skins/apollo/textures/media_icon.tga b/indra/newview/skins/apollo/textures/media_icon.tga new file mode 100644 index 000000000..289520cde Binary files /dev/null and b/indra/newview/skins/apollo/textures/media_icon.tga differ diff --git a/indra/newview/skins/apollo/textures/minimize.tga b/indra/newview/skins/apollo/textures/minimize.tga new file mode 100644 index 000000000..a21fd9148 Binary files /dev/null and b/indra/newview/skins/apollo/textures/minimize.tga differ diff --git a/indra/newview/skins/apollo/textures/minimize_inactive.tga b/indra/newview/skins/apollo/textures/minimize_inactive.tga new file mode 100644 index 000000000..d7e1b4057 Binary files /dev/null and b/indra/newview/skins/apollo/textures/minimize_inactive.tga differ diff --git a/indra/newview/skins/apollo/textures/minimize_pressed.tga b/indra/newview/skins/apollo/textures/minimize_pressed.tga new file mode 100644 index 000000000..573452ce9 Binary files /dev/null and b/indra/newview/skins/apollo/textures/minimize_pressed.tga differ diff --git a/indra/newview/skins/apollo/textures/missing_asset.tga b/indra/newview/skins/apollo/textures/missing_asset.tga new file mode 100644 index 000000000..9a43f4db5 Binary files /dev/null and b/indra/newview/skins/apollo/textures/missing_asset.tga differ diff --git a/indra/newview/skins/apollo/textures/move_backward_in.tga b/indra/newview/skins/apollo/textures/move_backward_in.tga new file mode 100644 index 000000000..74bfba196 Binary files /dev/null and b/indra/newview/skins/apollo/textures/move_backward_in.tga differ diff --git a/indra/newview/skins/apollo/textures/move_backward_out.tga b/indra/newview/skins/apollo/textures/move_backward_out.tga new file mode 100644 index 000000000..2d1b6a057 Binary files /dev/null and b/indra/newview/skins/apollo/textures/move_backward_out.tga differ diff --git a/indra/newview/skins/apollo/textures/move_down_in.tga b/indra/newview/skins/apollo/textures/move_down_in.tga new file mode 100644 index 000000000..90b0c76d5 Binary files /dev/null and b/indra/newview/skins/apollo/textures/move_down_in.tga differ diff --git a/indra/newview/skins/apollo/textures/move_down_out.tga b/indra/newview/skins/apollo/textures/move_down_out.tga new file mode 100644 index 000000000..2c97b9891 Binary files /dev/null and b/indra/newview/skins/apollo/textures/move_down_out.tga differ diff --git a/indra/newview/skins/apollo/textures/move_forward_in.tga b/indra/newview/skins/apollo/textures/move_forward_in.tga new file mode 100644 index 000000000..5f1735552 Binary files /dev/null and b/indra/newview/skins/apollo/textures/move_forward_in.tga differ diff --git a/indra/newview/skins/apollo/textures/move_forward_out.tga b/indra/newview/skins/apollo/textures/move_forward_out.tga new file mode 100644 index 000000000..b07c1008e Binary files /dev/null and b/indra/newview/skins/apollo/textures/move_forward_out.tga differ diff --git a/indra/newview/skins/apollo/textures/move_left_in.tga b/indra/newview/skins/apollo/textures/move_left_in.tga new file mode 100644 index 000000000..8ba5abdd2 Binary files /dev/null and b/indra/newview/skins/apollo/textures/move_left_in.tga differ diff --git a/indra/newview/skins/apollo/textures/move_left_out.tga b/indra/newview/skins/apollo/textures/move_left_out.tga new file mode 100644 index 000000000..d659ba94b Binary files /dev/null and b/indra/newview/skins/apollo/textures/move_left_out.tga differ diff --git a/indra/newview/skins/apollo/textures/move_right_in.tga b/indra/newview/skins/apollo/textures/move_right_in.tga new file mode 100644 index 000000000..6dd30876f Binary files /dev/null and b/indra/newview/skins/apollo/textures/move_right_in.tga differ diff --git a/indra/newview/skins/apollo/textures/move_right_out.tga b/indra/newview/skins/apollo/textures/move_right_out.tga new file mode 100644 index 000000000..93df92f36 Binary files /dev/null and b/indra/newview/skins/apollo/textures/move_right_out.tga differ diff --git a/indra/newview/skins/apollo/textures/move_turn_left_in.tga b/indra/newview/skins/apollo/textures/move_turn_left_in.tga new file mode 100644 index 000000000..db410d697 Binary files /dev/null and b/indra/newview/skins/apollo/textures/move_turn_left_in.tga differ diff --git a/indra/newview/skins/apollo/textures/move_turn_left_out.tga b/indra/newview/skins/apollo/textures/move_turn_left_out.tga new file mode 100644 index 000000000..19cad118a Binary files /dev/null and b/indra/newview/skins/apollo/textures/move_turn_left_out.tga differ diff --git a/indra/newview/skins/apollo/textures/move_turn_right_in.tga b/indra/newview/skins/apollo/textures/move_turn_right_in.tga new file mode 100644 index 000000000..e22898c2a Binary files /dev/null and b/indra/newview/skins/apollo/textures/move_turn_right_in.tga differ diff --git a/indra/newview/skins/apollo/textures/move_turn_right_out.tga b/indra/newview/skins/apollo/textures/move_turn_right_out.tga new file mode 100644 index 000000000..41ecb3fdd Binary files /dev/null and b/indra/newview/skins/apollo/textures/move_turn_right_out.tga differ diff --git a/indra/newview/skins/apollo/textures/move_up_in.tga b/indra/newview/skins/apollo/textures/move_up_in.tga new file mode 100644 index 000000000..54c641f5b Binary files /dev/null and b/indra/newview/skins/apollo/textures/move_up_in.tga differ diff --git a/indra/newview/skins/apollo/textures/move_up_out.tga b/indra/newview/skins/apollo/textures/move_up_out.tga new file mode 100644 index 000000000..9d76219bd Binary files /dev/null and b/indra/newview/skins/apollo/textures/move_up_out.tga differ diff --git a/indra/newview/skins/apollo/textures/music_icon.tga b/indra/newview/skins/apollo/textures/music_icon.tga new file mode 100644 index 000000000..aeaff02e0 Binary files /dev/null and b/indra/newview/skins/apollo/textures/music_icon.tga differ diff --git a/indra/newview/skins/apollo/textures/mute_icon.tga b/indra/newview/skins/apollo/textures/mute_icon.tga new file mode 100644 index 000000000..879b9e618 Binary files /dev/null and b/indra/newview/skins/apollo/textures/mute_icon.tga differ diff --git a/indra/newview/skins/apollo/textures/notify_box_icon.tga b/indra/newview/skins/apollo/textures/notify_box_icon.tga new file mode 100644 index 000000000..0672c89ee Binary files /dev/null and b/indra/newview/skins/apollo/textures/notify_box_icon.tga differ diff --git a/indra/newview/skins/apollo/textures/notify_caution_icon.tga b/indra/newview/skins/apollo/textures/notify_caution_icon.tga new file mode 100644 index 000000000..abc23d1d7 Binary files /dev/null and b/indra/newview/skins/apollo/textures/notify_caution_icon.tga differ diff --git a/indra/newview/skins/apollo/textures/notify_next.png b/indra/newview/skins/apollo/textures/notify_next.png new file mode 100644 index 000000000..6faa14a99 Binary files /dev/null and b/indra/newview/skins/apollo/textures/notify_next.png differ diff --git a/indra/newview/skins/apollo/textures/notify_tip_icon.tga b/indra/newview/skins/apollo/textures/notify_tip_icon.tga new file mode 100644 index 000000000..f79a634a9 Binary files /dev/null and b/indra/newview/skins/apollo/textures/notify_tip_icon.tga differ diff --git a/indra/newview/skins/apollo/textures/object_cone.tga b/indra/newview/skins/apollo/textures/object_cone.tga new file mode 100644 index 000000000..3cd51dfeb Binary files /dev/null and b/indra/newview/skins/apollo/textures/object_cone.tga differ diff --git a/indra/newview/skins/apollo/textures/object_cone_active.tga b/indra/newview/skins/apollo/textures/object_cone_active.tga new file mode 100644 index 000000000..ab8137c05 Binary files /dev/null and b/indra/newview/skins/apollo/textures/object_cone_active.tga differ diff --git a/indra/newview/skins/apollo/textures/object_cube.tga b/indra/newview/skins/apollo/textures/object_cube.tga new file mode 100644 index 000000000..3395522c2 Binary files /dev/null and b/indra/newview/skins/apollo/textures/object_cube.tga differ diff --git a/indra/newview/skins/apollo/textures/object_cube_active.tga b/indra/newview/skins/apollo/textures/object_cube_active.tga new file mode 100644 index 000000000..40886cf0d Binary files /dev/null and b/indra/newview/skins/apollo/textures/object_cube_active.tga differ diff --git a/indra/newview/skins/apollo/textures/object_cylinder.tga b/indra/newview/skins/apollo/textures/object_cylinder.tga new file mode 100644 index 000000000..2d13f3be6 Binary files /dev/null and b/indra/newview/skins/apollo/textures/object_cylinder.tga differ diff --git a/indra/newview/skins/apollo/textures/object_cylinder_active.tga b/indra/newview/skins/apollo/textures/object_cylinder_active.tga new file mode 100644 index 000000000..328d10355 Binary files /dev/null and b/indra/newview/skins/apollo/textures/object_cylinder_active.tga differ diff --git a/indra/newview/skins/apollo/textures/object_grass.tga b/indra/newview/skins/apollo/textures/object_grass.tga new file mode 100644 index 000000000..8b1943d18 Binary files /dev/null and b/indra/newview/skins/apollo/textures/object_grass.tga differ diff --git a/indra/newview/skins/apollo/textures/object_grass_active.tga b/indra/newview/skins/apollo/textures/object_grass_active.tga new file mode 100644 index 000000000..55cdbaa3a Binary files /dev/null and b/indra/newview/skins/apollo/textures/object_grass_active.tga differ diff --git a/indra/newview/skins/apollo/textures/object_hemi_cone.tga b/indra/newview/skins/apollo/textures/object_hemi_cone.tga new file mode 100644 index 000000000..2cd4a33b0 Binary files /dev/null and b/indra/newview/skins/apollo/textures/object_hemi_cone.tga differ diff --git a/indra/newview/skins/apollo/textures/object_hemi_cone_active.tga b/indra/newview/skins/apollo/textures/object_hemi_cone_active.tga new file mode 100644 index 000000000..459c723b9 Binary files /dev/null and b/indra/newview/skins/apollo/textures/object_hemi_cone_active.tga differ diff --git a/indra/newview/skins/apollo/textures/object_hemi_cylinder.tga b/indra/newview/skins/apollo/textures/object_hemi_cylinder.tga new file mode 100644 index 000000000..669f78f89 Binary files /dev/null and b/indra/newview/skins/apollo/textures/object_hemi_cylinder.tga differ diff --git a/indra/newview/skins/apollo/textures/object_hemi_cylinder_active.tga b/indra/newview/skins/apollo/textures/object_hemi_cylinder_active.tga new file mode 100644 index 000000000..154ab9b13 Binary files /dev/null and b/indra/newview/skins/apollo/textures/object_hemi_cylinder_active.tga differ diff --git a/indra/newview/skins/apollo/textures/object_hemi_sphere.tga b/indra/newview/skins/apollo/textures/object_hemi_sphere.tga new file mode 100644 index 000000000..d1815a5a9 Binary files /dev/null and b/indra/newview/skins/apollo/textures/object_hemi_sphere.tga differ diff --git a/indra/newview/skins/apollo/textures/object_hemi_sphere_active.tga b/indra/newview/skins/apollo/textures/object_hemi_sphere_active.tga new file mode 100644 index 000000000..e5e0c45c7 Binary files /dev/null and b/indra/newview/skins/apollo/textures/object_hemi_sphere_active.tga differ diff --git a/indra/newview/skins/apollo/textures/object_prism.tga b/indra/newview/skins/apollo/textures/object_prism.tga new file mode 100644 index 000000000..099026cc4 Binary files /dev/null and b/indra/newview/skins/apollo/textures/object_prism.tga differ diff --git a/indra/newview/skins/apollo/textures/object_prism_active.tga b/indra/newview/skins/apollo/textures/object_prism_active.tga new file mode 100644 index 000000000..fa9d0b98d Binary files /dev/null and b/indra/newview/skins/apollo/textures/object_prism_active.tga differ diff --git a/indra/newview/skins/apollo/textures/object_pyramid.tga b/indra/newview/skins/apollo/textures/object_pyramid.tga new file mode 100644 index 000000000..7927c8b4e Binary files /dev/null and b/indra/newview/skins/apollo/textures/object_pyramid.tga differ diff --git a/indra/newview/skins/apollo/textures/object_pyramid_active.tga b/indra/newview/skins/apollo/textures/object_pyramid_active.tga new file mode 100644 index 000000000..b20b33e26 Binary files /dev/null and b/indra/newview/skins/apollo/textures/object_pyramid_active.tga differ diff --git a/indra/newview/skins/apollo/textures/object_ring.tga b/indra/newview/skins/apollo/textures/object_ring.tga new file mode 100644 index 000000000..49603f1bd Binary files /dev/null and b/indra/newview/skins/apollo/textures/object_ring.tga differ diff --git a/indra/newview/skins/apollo/textures/object_ring_active.tga b/indra/newview/skins/apollo/textures/object_ring_active.tga new file mode 100644 index 000000000..0229818c6 Binary files /dev/null and b/indra/newview/skins/apollo/textures/object_ring_active.tga differ diff --git a/indra/newview/skins/apollo/textures/object_sphere.tga b/indra/newview/skins/apollo/textures/object_sphere.tga new file mode 100644 index 000000000..7bfae3b6d Binary files /dev/null and b/indra/newview/skins/apollo/textures/object_sphere.tga differ diff --git a/indra/newview/skins/apollo/textures/object_sphere_active.tga b/indra/newview/skins/apollo/textures/object_sphere_active.tga new file mode 100644 index 000000000..6d27f4fc1 Binary files /dev/null and b/indra/newview/skins/apollo/textures/object_sphere_active.tga differ diff --git a/indra/newview/skins/apollo/textures/object_tetrahedron.tga b/indra/newview/skins/apollo/textures/object_tetrahedron.tga new file mode 100644 index 000000000..717881b4e Binary files /dev/null and b/indra/newview/skins/apollo/textures/object_tetrahedron.tga differ diff --git a/indra/newview/skins/apollo/textures/object_tetrahedron_active.tga b/indra/newview/skins/apollo/textures/object_tetrahedron_active.tga new file mode 100644 index 000000000..fc0a609f6 Binary files /dev/null and b/indra/newview/skins/apollo/textures/object_tetrahedron_active.tga differ diff --git a/indra/newview/skins/apollo/textures/object_torus.tga b/indra/newview/skins/apollo/textures/object_torus.tga new file mode 100644 index 000000000..33d493106 Binary files /dev/null and b/indra/newview/skins/apollo/textures/object_torus.tga differ diff --git a/indra/newview/skins/apollo/textures/object_torus_active.tga b/indra/newview/skins/apollo/textures/object_torus_active.tga new file mode 100644 index 000000000..44f42ed8e Binary files /dev/null and b/indra/newview/skins/apollo/textures/object_torus_active.tga differ diff --git a/indra/newview/skins/apollo/textures/object_tree.tga b/indra/newview/skins/apollo/textures/object_tree.tga new file mode 100644 index 000000000..880a2fa2a Binary files /dev/null and b/indra/newview/skins/apollo/textures/object_tree.tga differ diff --git a/indra/newview/skins/apollo/textures/object_tree_active.tga b/indra/newview/skins/apollo/textures/object_tree_active.tga new file mode 100644 index 000000000..219f1f829 Binary files /dev/null and b/indra/newview/skins/apollo/textures/object_tree_active.tga differ diff --git a/indra/newview/skins/apollo/textures/object_tube.tga b/indra/newview/skins/apollo/textures/object_tube.tga new file mode 100644 index 000000000..49ee35ede Binary files /dev/null and b/indra/newview/skins/apollo/textures/object_tube.tga differ diff --git a/indra/newview/skins/apollo/textures/object_tube_active.tga b/indra/newview/skins/apollo/textures/object_tube_active.tga new file mode 100644 index 000000000..655ebb01f Binary files /dev/null and b/indra/newview/skins/apollo/textures/object_tube_active.tga differ diff --git a/indra/newview/skins/apollo/textures/payment_info_charter.tga b/indra/newview/skins/apollo/textures/payment_info_charter.tga new file mode 100644 index 000000000..6205da7b4 Binary files /dev/null and b/indra/newview/skins/apollo/textures/payment_info_charter.tga differ diff --git a/indra/newview/skins/apollo/textures/payment_info_filled.tga b/indra/newview/skins/apollo/textures/payment_info_filled.tga new file mode 100644 index 000000000..65e619692 Binary files /dev/null and b/indra/newview/skins/apollo/textures/payment_info_filled.tga differ diff --git a/indra/newview/skins/apollo/textures/payment_info_used.tga b/indra/newview/skins/apollo/textures/payment_info_used.tga new file mode 100644 index 000000000..345b3b302 Binary files /dev/null and b/indra/newview/skins/apollo/textures/payment_info_used.tga differ diff --git a/indra/newview/skins/apollo/textures/preview.png b/indra/newview/skins/apollo/textures/preview.png new file mode 100644 index 000000000..d045ac734 Binary files /dev/null and b/indra/newview/skins/apollo/textures/preview.png differ diff --git a/indra/newview/skins/apollo/textures/progress_fill.tga b/indra/newview/skins/apollo/textures/progress_fill.tga new file mode 100644 index 000000000..a913fe762 Binary files /dev/null and b/indra/newview/skins/apollo/textures/progress_fill.tga differ diff --git a/indra/newview/skins/apollo/textures/progressbar_fill.tga b/indra/newview/skins/apollo/textures/progressbar_fill.tga new file mode 100644 index 000000000..266f47288 Binary files /dev/null and b/indra/newview/skins/apollo/textures/progressbar_fill.tga differ diff --git a/indra/newview/skins/apollo/textures/progressbar_track.tga b/indra/newview/skins/apollo/textures/progressbar_track.tga new file mode 100644 index 000000000..4b84e9ec9 Binary files /dev/null and b/indra/newview/skins/apollo/textures/progressbar_track.tga differ diff --git a/indra/newview/skins/apollo/textures/propertyline.tga b/indra/newview/skins/apollo/textures/propertyline.tga new file mode 100644 index 000000000..0c504eea7 Binary files /dev/null and b/indra/newview/skins/apollo/textures/propertyline.tga differ diff --git a/indra/newview/skins/apollo/textures/ptt_lock_off.tga b/indra/newview/skins/apollo/textures/ptt_lock_off.tga new file mode 100644 index 000000000..d66f49840 Binary files /dev/null and b/indra/newview/skins/apollo/textures/ptt_lock_off.tga differ diff --git a/indra/newview/skins/apollo/textures/ptt_lock_on.tga b/indra/newview/skins/apollo/textures/ptt_lock_on.tga new file mode 100644 index 000000000..432db2f00 Binary files /dev/null and b/indra/newview/skins/apollo/textures/ptt_lock_on.tga differ diff --git a/indra/newview/skins/apollo/textures/radio_active_false.tga b/indra/newview/skins/apollo/textures/radio_active_false.tga new file mode 100644 index 000000000..3fdaecb5b Binary files /dev/null and b/indra/newview/skins/apollo/textures/radio_active_false.tga differ diff --git a/indra/newview/skins/apollo/textures/radio_active_true.tga b/indra/newview/skins/apollo/textures/radio_active_true.tga new file mode 100644 index 000000000..8d7520a21 Binary files /dev/null and b/indra/newview/skins/apollo/textures/radio_active_true.tga differ diff --git a/indra/newview/skins/apollo/textures/radio_inactive_false.tga b/indra/newview/skins/apollo/textures/radio_inactive_false.tga new file mode 100644 index 000000000..6cc182a27 Binary files /dev/null and b/indra/newview/skins/apollo/textures/radio_inactive_false.tga differ diff --git a/indra/newview/skins/apollo/textures/radio_inactive_true.tga b/indra/newview/skins/apollo/textures/radio_inactive_true.tga new file mode 100644 index 000000000..c8a4e5b2c Binary files /dev/null and b/indra/newview/skins/apollo/textures/radio_inactive_true.tga differ diff --git a/indra/newview/skins/apollo/textures/resize_handle_bottom_right_blue.tga b/indra/newview/skins/apollo/textures/resize_handle_bottom_right_blue.tga new file mode 100644 index 000000000..8290bfa65 Binary files /dev/null and b/indra/newview/skins/apollo/textures/resize_handle_bottom_right_blue.tga differ diff --git a/indra/newview/skins/apollo/textures/restore.tga b/indra/newview/skins/apollo/textures/restore.tga new file mode 100644 index 000000000..5e369fdfc Binary files /dev/null and b/indra/newview/skins/apollo/textures/restore.tga differ diff --git a/indra/newview/skins/apollo/textures/restore_inactive.tga b/indra/newview/skins/apollo/textures/restore_inactive.tga new file mode 100644 index 000000000..ce545d90d Binary files /dev/null and b/indra/newview/skins/apollo/textures/restore_inactive.tga differ diff --git a/indra/newview/skins/apollo/textures/restore_pressed.tga b/indra/newview/skins/apollo/textures/restore_pressed.tga new file mode 100644 index 000000000..8a25087be Binary files /dev/null and b/indra/newview/skins/apollo/textures/restore_pressed.tga differ diff --git a/indra/newview/skins/apollo/textures/rounded_square.tga b/indra/newview/skins/apollo/textures/rounded_square.tga new file mode 100644 index 000000000..4f4bf05f8 Binary files /dev/null and b/indra/newview/skins/apollo/textures/rounded_square.tga differ diff --git a/indra/newview/skins/apollo/textures/rounded_square_soft.tga b/indra/newview/skins/apollo/textures/rounded_square_soft.tga new file mode 100644 index 000000000..4f4bf05f8 Binary files /dev/null and b/indra/newview/skins/apollo/textures/rounded_square_soft.tga differ diff --git a/indra/newview/skins/apollo/textures/scrollbutton_down_in_blue.tga b/indra/newview/skins/apollo/textures/scrollbutton_down_in_blue.tga new file mode 100644 index 000000000..cd592c3df Binary files /dev/null and b/indra/newview/skins/apollo/textures/scrollbutton_down_in_blue.tga differ diff --git a/indra/newview/skins/apollo/textures/scrollbutton_down_out_blue.tga b/indra/newview/skins/apollo/textures/scrollbutton_down_out_blue.tga new file mode 100644 index 000000000..cd592c3df Binary files /dev/null and b/indra/newview/skins/apollo/textures/scrollbutton_down_out_blue.tga differ diff --git a/indra/newview/skins/apollo/textures/scrollbutton_left_in_blue.tga b/indra/newview/skins/apollo/textures/scrollbutton_left_in_blue.tga new file mode 100644 index 000000000..b65d199ae Binary files /dev/null and b/indra/newview/skins/apollo/textures/scrollbutton_left_in_blue.tga differ diff --git a/indra/newview/skins/apollo/textures/scrollbutton_left_out_blue.tga b/indra/newview/skins/apollo/textures/scrollbutton_left_out_blue.tga new file mode 100644 index 000000000..b65d199ae Binary files /dev/null and b/indra/newview/skins/apollo/textures/scrollbutton_left_out_blue.tga differ diff --git a/indra/newview/skins/apollo/textures/scrollbutton_right_in_blue.tga b/indra/newview/skins/apollo/textures/scrollbutton_right_in_blue.tga new file mode 100644 index 000000000..9b571add3 Binary files /dev/null and b/indra/newview/skins/apollo/textures/scrollbutton_right_in_blue.tga differ diff --git a/indra/newview/skins/apollo/textures/scrollbutton_right_out_blue.tga b/indra/newview/skins/apollo/textures/scrollbutton_right_out_blue.tga new file mode 100644 index 000000000..9b571add3 Binary files /dev/null and b/indra/newview/skins/apollo/textures/scrollbutton_right_out_blue.tga differ diff --git a/indra/newview/skins/apollo/textures/scrollbutton_up_in_blue.tga b/indra/newview/skins/apollo/textures/scrollbutton_up_in_blue.tga new file mode 100644 index 000000000..8e78742ff Binary files /dev/null and b/indra/newview/skins/apollo/textures/scrollbutton_up_in_blue.tga differ diff --git a/indra/newview/skins/apollo/textures/scrollbutton_up_out_blue.tga b/indra/newview/skins/apollo/textures/scrollbutton_up_out_blue.tga new file mode 100644 index 000000000..8e78742ff Binary files /dev/null and b/indra/newview/skins/apollo/textures/scrollbutton_up_out_blue.tga differ diff --git a/indra/newview/skins/apollo/textures/skin_thumbnail_dark.png b/indra/newview/skins/apollo/textures/skin_thumbnail_dark.png new file mode 100644 index 000000000..2cac82923 Binary files /dev/null and b/indra/newview/skins/apollo/textures/skin_thumbnail_dark.png differ diff --git a/indra/newview/skins/apollo/textures/skin_thumbnail_default.png b/indra/newview/skins/apollo/textures/skin_thumbnail_default.png new file mode 100644 index 000000000..40fe64bb4 Binary files /dev/null and b/indra/newview/skins/apollo/textures/skin_thumbnail_default.png differ diff --git a/indra/newview/skins/apollo/textures/skin_thumbnail_gred.png b/indra/newview/skins/apollo/textures/skin_thumbnail_gred.png new file mode 100644 index 000000000..827135499 Binary files /dev/null and b/indra/newview/skins/apollo/textures/skin_thumbnail_gred.png differ diff --git a/indra/newview/skins/apollo/textures/skin_thumbnail_phoenix.png b/indra/newview/skins/apollo/textures/skin_thumbnail_phoenix.png new file mode 100644 index 000000000..ab35bc0ab Binary files /dev/null and b/indra/newview/skins/apollo/textures/skin_thumbnail_phoenix.png differ diff --git a/indra/newview/skins/apollo/textures/skin_thumbnail_pslgreen.png b/indra/newview/skins/apollo/textures/skin_thumbnail_pslgreen.png new file mode 100644 index 000000000..73e117e9f Binary files /dev/null and b/indra/newview/skins/apollo/textures/skin_thumbnail_pslgreen.png differ diff --git a/indra/newview/skins/apollo/textures/skin_thumbnail_pslpurple.png b/indra/newview/skins/apollo/textures/skin_thumbnail_pslpurple.png new file mode 100644 index 000000000..902ad82b1 Binary files /dev/null and b/indra/newview/skins/apollo/textures/skin_thumbnail_pslpurple.png differ diff --git a/indra/newview/skins/apollo/textures/skin_thumbnail_ruby.png b/indra/newview/skins/apollo/textures/skin_thumbnail_ruby.png new file mode 100644 index 000000000..d45e75ad0 Binary files /dev/null and b/indra/newview/skins/apollo/textures/skin_thumbnail_ruby.png differ diff --git a/indra/newview/skins/apollo/textures/skin_thumbnail_saphire.png b/indra/newview/skins/apollo/textures/skin_thumbnail_saphire.png new file mode 100644 index 000000000..7ec8e1991 Binary files /dev/null and b/indra/newview/skins/apollo/textures/skin_thumbnail_saphire.png differ diff --git a/indra/newview/skins/apollo/textures/skin_thumbnail_silver.png b/indra/newview/skins/apollo/textures/skin_thumbnail_silver.png new file mode 100644 index 000000000..51707bb9d Binary files /dev/null and b/indra/newview/skins/apollo/textures/skin_thumbnail_silver.png differ diff --git a/indra/newview/skins/apollo/textures/slim_icon_16_viewer.tga b/indra/newview/skins/apollo/textures/slim_icon_16_viewer.tga new file mode 100644 index 000000000..552181d36 Binary files /dev/null and b/indra/newview/skins/apollo/textures/slim_icon_16_viewer.tga differ diff --git a/indra/newview/skins/apollo/textures/sm_rounded_corners_simple.tga b/indra/newview/skins/apollo/textures/sm_rounded_corners_simple.tga new file mode 100644 index 000000000..85157e461 Binary files /dev/null and b/indra/newview/skins/apollo/textures/sm_rounded_corners_simple.tga differ diff --git a/indra/newview/skins/apollo/textures/smicon_warn.tga b/indra/newview/skins/apollo/textures/smicon_warn.tga new file mode 100644 index 000000000..90ccaa07e Binary files /dev/null and b/indra/newview/skins/apollo/textures/smicon_warn.tga differ diff --git a/indra/newview/skins/apollo/textures/spacer24.tga b/indra/newview/skins/apollo/textures/spacer24.tga new file mode 100644 index 000000000..c7cab6b38 Binary files /dev/null and b/indra/newview/skins/apollo/textures/spacer24.tga differ diff --git a/indra/newview/skins/apollo/textures/spacer35.tga b/indra/newview/skins/apollo/textures/spacer35.tga new file mode 100644 index 000000000..b88bc6680 Binary files /dev/null and b/indra/newview/skins/apollo/textures/spacer35.tga differ diff --git a/indra/newview/skins/apollo/textures/spin_down_in_blue.tga b/indra/newview/skins/apollo/textures/spin_down_in_blue.tga new file mode 100644 index 000000000..b9eb36ba9 Binary files /dev/null and b/indra/newview/skins/apollo/textures/spin_down_in_blue.tga differ diff --git a/indra/newview/skins/apollo/textures/spin_down_out_blue.tga b/indra/newview/skins/apollo/textures/spin_down_out_blue.tga new file mode 100644 index 000000000..c9cb5e8bf Binary files /dev/null and b/indra/newview/skins/apollo/textures/spin_down_out_blue.tga differ diff --git a/indra/newview/skins/apollo/textures/spin_up_in_blue.tga b/indra/newview/skins/apollo/textures/spin_up_in_blue.tga new file mode 100644 index 000000000..b604b8843 Binary files /dev/null and b/indra/newview/skins/apollo/textures/spin_up_in_blue.tga differ diff --git a/indra/newview/skins/apollo/textures/spin_up_out_blue.tga b/indra/newview/skins/apollo/textures/spin_up_out_blue.tga new file mode 100644 index 000000000..4e3941e45 Binary files /dev/null and b/indra/newview/skins/apollo/textures/spin_up_out_blue.tga differ diff --git a/indra/newview/skins/apollo/textures/square_btn_32x128.tga b/indra/newview/skins/apollo/textures/square_btn_32x128.tga new file mode 100644 index 000000000..d23d413aa Binary files /dev/null and b/indra/newview/skins/apollo/textures/square_btn_32x128.tga differ diff --git a/indra/newview/skins/apollo/textures/square_btn_selected_32x128.tga b/indra/newview/skins/apollo/textures/square_btn_selected_32x128.tga new file mode 100644 index 000000000..2f48098d2 Binary files /dev/null and b/indra/newview/skins/apollo/textures/square_btn_selected_32x128.tga differ diff --git a/indra/newview/skins/apollo/textures/startup_logo.j2c b/indra/newview/skins/apollo/textures/startup_logo.j2c new file mode 100644 index 000000000..589e69a6b Binary files /dev/null and b/indra/newview/skins/apollo/textures/startup_logo.j2c differ diff --git a/indra/newview/skins/apollo/textures/status_busy.tga b/indra/newview/skins/apollo/textures/status_busy.tga new file mode 100644 index 000000000..7743d9c7b Binary files /dev/null and b/indra/newview/skins/apollo/textures/status_busy.tga differ diff --git a/indra/newview/skins/apollo/textures/status_buy_currency.tga b/indra/newview/skins/apollo/textures/status_buy_currency.tga new file mode 100644 index 000000000..d72078aa0 Binary files /dev/null and b/indra/newview/skins/apollo/textures/status_buy_currency.tga differ diff --git a/indra/newview/skins/apollo/textures/status_buy_currency_pressed.tga b/indra/newview/skins/apollo/textures/status_buy_currency_pressed.tga new file mode 100644 index 000000000..acb047932 Binary files /dev/null and b/indra/newview/skins/apollo/textures/status_buy_currency_pressed.tga differ diff --git a/indra/newview/skins/apollo/textures/status_buy_land.tga b/indra/newview/skins/apollo/textures/status_buy_land.tga new file mode 100644 index 000000000..490383717 Binary files /dev/null and b/indra/newview/skins/apollo/textures/status_buy_land.tga differ diff --git a/indra/newview/skins/apollo/textures/status_buy_land_pressed.tga b/indra/newview/skins/apollo/textures/status_buy_land_pressed.tga new file mode 100644 index 000000000..af5d1896f Binary files /dev/null and b/indra/newview/skins/apollo/textures/status_buy_land_pressed.tga differ diff --git a/indra/newview/skins/apollo/textures/status_health.tga b/indra/newview/skins/apollo/textures/status_health.tga new file mode 100644 index 000000000..3d5f455fc Binary files /dev/null and b/indra/newview/skins/apollo/textures/status_health.tga differ diff --git a/indra/newview/skins/apollo/textures/status_money.tga b/indra/newview/skins/apollo/textures/status_money.tga new file mode 100644 index 000000000..d5be31fc6 Binary files /dev/null and b/indra/newview/skins/apollo/textures/status_money.tga differ diff --git a/indra/newview/skins/apollo/textures/status_no_build.tga b/indra/newview/skins/apollo/textures/status_no_build.tga new file mode 100644 index 000000000..8e471e185 Binary files /dev/null and b/indra/newview/skins/apollo/textures/status_no_build.tga differ diff --git a/indra/newview/skins/apollo/textures/status_no_fly.tga b/indra/newview/skins/apollo/textures/status_no_fly.tga new file mode 100644 index 000000000..cde2700ab Binary files /dev/null and b/indra/newview/skins/apollo/textures/status_no_fly.tga differ diff --git a/indra/newview/skins/apollo/textures/status_no_push.tga b/indra/newview/skins/apollo/textures/status_no_push.tga new file mode 100644 index 000000000..5ccbfa50f Binary files /dev/null and b/indra/newview/skins/apollo/textures/status_no_push.tga differ diff --git a/indra/newview/skins/apollo/textures/status_no_scripts.tga b/indra/newview/skins/apollo/textures/status_no_scripts.tga new file mode 100644 index 000000000..52ecdb1b8 Binary files /dev/null and b/indra/newview/skins/apollo/textures/status_no_scripts.tga differ diff --git a/indra/newview/skins/apollo/textures/status_no_voice.tga b/indra/newview/skins/apollo/textures/status_no_voice.tga new file mode 100644 index 000000000..4ab4498cb Binary files /dev/null and b/indra/newview/skins/apollo/textures/status_no_voice.tga differ diff --git a/indra/newview/skins/apollo/textures/status_script_debug.tga b/indra/newview/skins/apollo/textures/status_script_debug.tga new file mode 100644 index 000000000..6fca61483 Binary files /dev/null and b/indra/newview/skins/apollo/textures/status_script_debug.tga differ diff --git a/indra/newview/skins/apollo/textures/status_search.tga b/indra/newview/skins/apollo/textures/status_search.tga new file mode 100644 index 000000000..3ac10c476 Binary files /dev/null and b/indra/newview/skins/apollo/textures/status_search.tga differ diff --git a/indra/newview/skins/apollo/textures/status_search_btn.png b/indra/newview/skins/apollo/textures/status_search_btn.png new file mode 100644 index 000000000..67f61332b Binary files /dev/null and b/indra/newview/skins/apollo/textures/status_search_btn.png differ diff --git a/indra/newview/skins/apollo/textures/status_search_btn_pressed.png b/indra/newview/skins/apollo/textures/status_search_btn_pressed.png new file mode 100644 index 000000000..1437273d3 Binary files /dev/null and b/indra/newview/skins/apollo/textures/status_search_btn_pressed.png differ diff --git a/indra/newview/skins/apollo/textures/status_voice.tga b/indra/newview/skins/apollo/textures/status_voice.tga new file mode 100644 index 000000000..4ab4498cb Binary files /dev/null and b/indra/newview/skins/apollo/textures/status_voice.tga differ diff --git a/indra/newview/skins/apollo/textures/tab_background_darkpurple.tga b/indra/newview/skins/apollo/textures/tab_background_darkpurple.tga new file mode 100644 index 000000000..8169f9869 Binary files /dev/null and b/indra/newview/skins/apollo/textures/tab_background_darkpurple.tga differ diff --git a/indra/newview/skins/apollo/textures/tab_background_lightgrey.tga b/indra/newview/skins/apollo/textures/tab_background_lightgrey.tga new file mode 100644 index 000000000..c2f8818f7 Binary files /dev/null and b/indra/newview/skins/apollo/textures/tab_background_lightgrey.tga differ diff --git a/indra/newview/skins/apollo/textures/tab_background_purple.tga b/indra/newview/skins/apollo/textures/tab_background_purple.tga new file mode 100644 index 000000000..aa01b3cb6 Binary files /dev/null and b/indra/newview/skins/apollo/textures/tab_background_purple.tga differ diff --git a/indra/newview/skins/apollo/textures/tab_bottom_blue.tga b/indra/newview/skins/apollo/textures/tab_bottom_blue.tga new file mode 100644 index 000000000..e6de7a5a1 Binary files /dev/null and b/indra/newview/skins/apollo/textures/tab_bottom_blue.tga differ diff --git a/indra/newview/skins/apollo/textures/tab_bottom_selected_blue.tga b/indra/newview/skins/apollo/textures/tab_bottom_selected_blue.tga new file mode 100644 index 000000000..685d4da55 Binary files /dev/null and b/indra/newview/skins/apollo/textures/tab_bottom_selected_blue.tga differ diff --git a/indra/newview/skins/apollo/textures/tab_left.tga b/indra/newview/skins/apollo/textures/tab_left.tga new file mode 100644 index 000000000..0220020e8 Binary files /dev/null and b/indra/newview/skins/apollo/textures/tab_left.tga differ diff --git a/indra/newview/skins/apollo/textures/tab_left_selected.tga b/indra/newview/skins/apollo/textures/tab_left_selected.tga new file mode 100644 index 000000000..485f324d1 Binary files /dev/null and b/indra/newview/skins/apollo/textures/tab_left_selected.tga differ diff --git a/indra/newview/skins/apollo/textures/tab_top_blue.tga b/indra/newview/skins/apollo/textures/tab_top_blue.tga new file mode 100644 index 000000000..ddcd519f2 Binary files /dev/null and b/indra/newview/skins/apollo/textures/tab_top_blue.tga differ diff --git a/indra/newview/skins/apollo/textures/tab_top_selected_be.tga b/indra/newview/skins/apollo/textures/tab_top_selected_be.tga new file mode 100644 index 000000000..5ec91963c Binary files /dev/null and b/indra/newview/skins/apollo/textures/tab_top_selected_be.tga differ diff --git a/indra/newview/skins/apollo/textures/tab_top_selected_blue.tga b/indra/newview/skins/apollo/textures/tab_top_selected_blue.tga new file mode 100644 index 000000000..1e871986e Binary files /dev/null and b/indra/newview/skins/apollo/textures/tab_top_selected_blue.tga differ diff --git a/indra/newview/skins/apollo/textures/tab_toplue.tga b/indra/newview/skins/apollo/textures/tab_toplue.tga new file mode 100644 index 000000000..75ae593aa Binary files /dev/null and b/indra/newview/skins/apollo/textures/tab_toplue.tga differ diff --git a/indra/newview/skins/apollo/textures/tabarea.tga b/indra/newview/skins/apollo/textures/tabarea.tga new file mode 100644 index 000000000..5517aebfc Binary files /dev/null and b/indra/newview/skins/apollo/textures/tabarea.tga differ diff --git a/indra/newview/skins/apollo/textures/tearoff_pressed.tga b/indra/newview/skins/apollo/textures/tearoff_pressed.tga new file mode 100644 index 000000000..8581ab701 Binary files /dev/null and b/indra/newview/skins/apollo/textures/tearoff_pressed.tga differ diff --git a/indra/newview/skins/apollo/textures/tearoffbox.tga b/indra/newview/skins/apollo/textures/tearoffbox.tga new file mode 100644 index 000000000..27af31c4d Binary files /dev/null and b/indra/newview/skins/apollo/textures/tearoffbox.tga differ diff --git a/indra/newview/skins/apollo/textures/textures.xml b/indra/newview/skins/apollo/textures/textures.xml new file mode 100644 index 000000000..2c4b0cbea --- /dev/null +++ b/indra/newview/skins/apollo/textures/textures.xml @@ -0,0 +1,382 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/indra/newview/skins/apollo/textures/tool_dozer.tga b/indra/newview/skins/apollo/textures/tool_dozer.tga new file mode 100644 index 000000000..bf3a8999d Binary files /dev/null and b/indra/newview/skins/apollo/textures/tool_dozer.tga differ diff --git a/indra/newview/skins/apollo/textures/tool_dozer_active.tga b/indra/newview/skins/apollo/textures/tool_dozer_active.tga new file mode 100644 index 000000000..09c0e79f9 Binary files /dev/null and b/indra/newview/skins/apollo/textures/tool_dozer_active.tga differ diff --git a/indra/newview/skins/apollo/textures/tool_zoom.tga b/indra/newview/skins/apollo/textures/tool_zoom.tga new file mode 100644 index 000000000..67692e95b Binary files /dev/null and b/indra/newview/skins/apollo/textures/tool_zoom.tga differ diff --git a/indra/newview/skins/apollo/textures/tool_zoom_active.tga b/indra/newview/skins/apollo/textures/tool_zoom_active.tga new file mode 100644 index 000000000..084ff39be Binary files /dev/null and b/indra/newview/skins/apollo/textures/tool_zoom_active.tga differ diff --git a/indra/newview/skins/apollo/textures/toolbar_bg.tga b/indra/newview/skins/apollo/textures/toolbar_bg.tga new file mode 100644 index 000000000..3a0577627 Binary files /dev/null and b/indra/newview/skins/apollo/textures/toolbar_bg.tga differ diff --git a/indra/newview/skins/apollo/textures/toolbar_btn_disabled.tga b/indra/newview/skins/apollo/textures/toolbar_btn_disabled.tga new file mode 100644 index 000000000..d33fbe464 Binary files /dev/null and b/indra/newview/skins/apollo/textures/toolbar_btn_disabled.tga differ diff --git a/indra/newview/skins/apollo/textures/toolbar_btn_enabled.tga b/indra/newview/skins/apollo/textures/toolbar_btn_enabled.tga new file mode 100644 index 000000000..d33fbe464 Binary files /dev/null and b/indra/newview/skins/apollo/textures/toolbar_btn_enabled.tga differ diff --git a/indra/newview/skins/apollo/textures/toolbar_btn_selected.tga b/indra/newview/skins/apollo/textures/toolbar_btn_selected.tga new file mode 100644 index 000000000..1b46118b9 Binary files /dev/null and b/indra/newview/skins/apollo/textures/toolbar_btn_selected.tga differ diff --git a/indra/newview/skins/apollo/textures/toolbar_tab.tga b/indra/newview/skins/apollo/textures/toolbar_tab.tga new file mode 100644 index 000000000..5ea1a28d2 Binary files /dev/null and b/indra/newview/skins/apollo/textures/toolbar_tab.tga differ diff --git a/indra/newview/skins/apollo/textures/up_arrow.png b/indra/newview/skins/apollo/textures/up_arrow.png new file mode 100644 index 000000000..fe68ad49d Binary files /dev/null and b/indra/newview/skins/apollo/textures/up_arrow.png differ diff --git a/indra/newview/skins/apollo/textures/up_arrow.tga b/indra/newview/skins/apollo/textures/up_arrow.tga new file mode 100644 index 000000000..c2bd8cceb Binary files /dev/null and b/indra/newview/skins/apollo/textures/up_arrow.tga differ diff --git a/indra/newview/skins/apollo/textures/uv_test2.tga b/indra/newview/skins/apollo/textures/uv_test2.tga new file mode 100644 index 000000000..a16000d1e Binary files /dev/null and b/indra/newview/skins/apollo/textures/uv_test2.tga differ diff --git a/indra/newview/skins/apollo/textures/white.tga b/indra/newview/skins/apollo/textures/white.tga new file mode 100644 index 000000000..9fe68631c Binary files /dev/null and b/indra/newview/skins/apollo/textures/white.tga differ diff --git a/indra/newview/skins/darkcatalan/colors.xml b/indra/newview/skins/darkcatalan/colors.xml new file mode 100644 index 000000000..e2579eeee --- /dev/null +++ b/indra/newview/skins/darkcatalan/colors.xml @@ -0,0 +1,221 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/indra/newview/skins/darkcatalan/textures/0098b015-3daf-4cfe-a72f-915369ea97c2.tga b/indra/newview/skins/darkcatalan/textures/0098b015-3daf-4cfe-a72f-915369ea97c2.tga new file mode 100644 index 000000000..24e794269 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/0098b015-3daf-4cfe-a72f-915369ea97c2.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/0498c309-5306-43cd-82a2-ae31d096cdef.tga b/indra/newview/skins/darkcatalan/textures/0498c309-5306-43cd-82a2-ae31d096cdef.tga new file mode 100644 index 000000000..d7097e3a3 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/0498c309-5306-43cd-82a2-ae31d096cdef.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/07d0ea4c-af0c-aad1-dbbf-c24020ff2b80.tga b/indra/newview/skins/darkcatalan/textures/07d0ea4c-af0c-aad1-dbbf-c24020ff2b80.tga new file mode 100644 index 000000000..eff64a7ed Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/07d0ea4c-af0c-aad1-dbbf-c24020ff2b80.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/09a324a8-acc1-d9cd-2cbd-7465d90d3a98.tga b/indra/newview/skins/darkcatalan/textures/09a324a8-acc1-d9cd-2cbd-7465d90d3a98.tga new file mode 100644 index 000000000..77d470731 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/09a324a8-acc1-d9cd-2cbd-7465d90d3a98.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/0e82d24e-ed45-41bc-b090-94c97c1caab2.tga b/indra/newview/skins/darkcatalan/textures/0e82d24e-ed45-41bc-b090-94c97c1caab2.tga new file mode 100644 index 000000000..b2e5609f1 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/0e82d24e-ed45-41bc-b090-94c97c1caab2.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/111b39de-8928-4690-b7b2-e17d5c960277.tga b/indra/newview/skins/darkcatalan/textures/111b39de-8928-4690-b7b2-e17d5c960277.tga new file mode 100644 index 000000000..0febf4edc Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/111b39de-8928-4690-b7b2-e17d5c960277.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/13dd1d96-6836-461e-8a4c-36003065c59b.tga b/indra/newview/skins/darkcatalan/textures/13dd1d96-6836-461e-8a4c-36003065c59b.tga new file mode 100644 index 000000000..031b3ad34 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/13dd1d96-6836-461e-8a4c-36003065c59b.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/34c9398d-bb78-4643-9633-46a2fa3e9637.tga b/indra/newview/skins/darkcatalan/textures/34c9398d-bb78-4643-9633-46a2fa3e9637.tga new file mode 100644 index 000000000..58cd2cd55 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/34c9398d-bb78-4643-9633-46a2fa3e9637.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/37c8e000-6aa2-41ef-8f86-e0c2e60bfa42.tga b/indra/newview/skins/darkcatalan/textures/37c8e000-6aa2-41ef-8f86-e0c2e60bfa42.tga new file mode 100644 index 000000000..879b9e618 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/37c8e000-6aa2-41ef-8f86-e0c2e60bfa42.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/39801651-26cb-4926-af57-7af9352c273c.tga b/indra/newview/skins/darkcatalan/textures/39801651-26cb-4926-af57-7af9352c273c.tga new file mode 100644 index 000000000..f2fdd074b Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/39801651-26cb-4926-af57-7af9352c273c.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/3c18c87e-5f50-14e2-e744-f44734aa365f.tga b/indra/newview/skins/darkcatalan/textures/3c18c87e-5f50-14e2-e744-f44734aa365f.tga new file mode 100644 index 000000000..908120eb6 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/3c18c87e-5f50-14e2-e744-f44734aa365f.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/43f0a590-f3d3-48b5-b460-f5b3e6e03626.tga b/indra/newview/skins/darkcatalan/textures/43f0a590-f3d3-48b5-b460-f5b3e6e03626.tga new file mode 100644 index 000000000..81cf94ed6 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/43f0a590-f3d3-48b5-b460-f5b3e6e03626.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/47a8c844-cd2a-4b1a-be01-df8b1612fe5d.tga b/indra/newview/skins/darkcatalan/textures/47a8c844-cd2a-4b1a-be01-df8b1612fe5d.tga new file mode 100644 index 000000000..505f6ed1c Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/47a8c844-cd2a-4b1a-be01-df8b1612fe5d.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/5748decc-f629-461c-9a36-a35a221fe21f.tga b/indra/newview/skins/darkcatalan/textures/5748decc-f629-461c-9a36-a35a221fe21f.tga new file mode 100644 index 000000000..55e379309 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/5748decc-f629-461c-9a36-a35a221fe21f.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/6002a571-549c-472c-9443-9ab35b1a55ed.tga b/indra/newview/skins/darkcatalan/textures/6002a571-549c-472c-9443-9ab35b1a55ed.tga new file mode 100644 index 000000000..fc720c826 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/6002a571-549c-472c-9443-9ab35b1a55ed.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/73577b7b-19c3-4050-a19d-36bc2408aa79.tga b/indra/newview/skins/darkcatalan/textures/73577b7b-19c3-4050-a19d-36bc2408aa79.tga new file mode 100644 index 000000000..35846cef3 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/73577b7b-19c3-4050-a19d-36bc2408aa79.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/74ba3584-58ea-9984-5b76-62d37942ab77.tga b/indra/newview/skins/darkcatalan/textures/74ba3584-58ea-9984-5b76-62d37942ab77.tga new file mode 100644 index 000000000..41b1a2728 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/74ba3584-58ea-9984-5b76-62d37942ab77.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/74e1a96f-4833-a24d-a1bb-1bce1468b0e7.tga b/indra/newview/skins/darkcatalan/textures/74e1a96f-4833-a24d-a1bb-1bce1468b0e7.tga new file mode 100644 index 000000000..c359f2f31 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/74e1a96f-4833-a24d-a1bb-1bce1468b0e7.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/7a0b1bdb-b5d9-4df5-bac2-ba230da93b5b.tga b/indra/newview/skins/darkcatalan/textures/7a0b1bdb-b5d9-4df5-bac2-ba230da93b5b.tga new file mode 100644 index 000000000..bef5051c5 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/7a0b1bdb-b5d9-4df5-bac2-ba230da93b5b.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/7dabc040-ec13-2309-ddf7-4f161f6de2f4.tga b/indra/newview/skins/darkcatalan/textures/7dabc040-ec13-2309-ddf7-4f161f6de2f4.tga new file mode 100644 index 000000000..a5e751398 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/7dabc040-ec13-2309-ddf7-4f161f6de2f4.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/89e9fc7c-0b16-457d-be4f-136270759c4d.tga b/indra/newview/skins/darkcatalan/textures/89e9fc7c-0b16-457d-be4f-136270759c4d.tga new file mode 100644 index 000000000..e2e1aba96 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/89e9fc7c-0b16-457d-be4f-136270759c4d.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/8f761ce3-5939-4d3a-8991-00064fdfacf9.tga b/indra/newview/skins/darkcatalan/textures/8f761ce3-5939-4d3a-8991-00064fdfacf9.tga new file mode 100644 index 000000000..1f9f564fa Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/8f761ce3-5939-4d3a-8991-00064fdfacf9.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/9beb8cdd-3dce-53c2-b28e-e1f3bc2ec0a4.tga b/indra/newview/skins/darkcatalan/textures/9beb8cdd-3dce-53c2-b28e-e1f3bc2ec0a4.tga new file mode 100644 index 000000000..c8491a0a1 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/9beb8cdd-3dce-53c2-b28e-e1f3bc2ec0a4.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/9cad3e6d-2d6d-107d-f8ab-5ba272b5bfe1.tga b/indra/newview/skins/darkcatalan/textures/9cad3e6d-2d6d-107d-f8ab-5ba272b5bfe1.tga new file mode 100644 index 000000000..fc2326e01 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/9cad3e6d-2d6d-107d-f8ab-5ba272b5bfe1.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/account_id_green.tga b/indra/newview/skins/darkcatalan/textures/account_id_green.tga new file mode 100644 index 000000000..9be215eed Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/account_id_green.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/account_id_orange.tga b/indra/newview/skins/darkcatalan/textures/account_id_orange.tga new file mode 100644 index 000000000..6b41e8663 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/account_id_orange.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/active_speakers.tga b/indra/newview/skins/darkcatalan/textures/active_speakers.tga new file mode 100644 index 000000000..02d3643d7 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/active_speakers.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/active_voice_tab.tga b/indra/newview/skins/darkcatalan/textures/active_voice_tab.tga new file mode 100644 index 000000000..1c86f3f82 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/active_voice_tab.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/alpha_gradient.tga b/indra/newview/skins/darkcatalan/textures/alpha_gradient.tga new file mode 100644 index 000000000..6fdba25d4 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/alpha_gradient.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/arrow_down.tga b/indra/newview/skins/darkcatalan/textures/arrow_down.tga new file mode 100644 index 000000000..b66155ba2 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/arrow_down.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/arrow_up.tga b/indra/newview/skins/darkcatalan/textures/arrow_up.tga new file mode 100644 index 000000000..b8be0ee98 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/arrow_up.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/avatar_gone.tga b/indra/newview/skins/darkcatalan/textures/avatar_gone.tga new file mode 100644 index 000000000..e5c2c070b Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/avatar_gone.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/avatar_new.tga b/indra/newview/skins/darkcatalan/textures/avatar_new.tga new file mode 100644 index 000000000..854b70c32 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/avatar_new.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/avatar_sound.tga b/indra/newview/skins/darkcatalan/textures/avatar_sound.tga new file mode 100644 index 000000000..ec5dacbf0 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/avatar_sound.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/avatar_typing.tga b/indra/newview/skins/darkcatalan/textures/avatar_typing.tga new file mode 100644 index 000000000..ec2ce4556 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/avatar_typing.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/b2ef2d31-9714-a07b-6ca7-31638166364b.tga b/indra/newview/skins/darkcatalan/textures/b2ef2d31-9714-a07b-6ca7-31638166364b.tga new file mode 100644 index 000000000..7358e86d3 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/b2ef2d31-9714-a07b-6ca7-31638166364b.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/b4870163-6208-42a9-9801-93133bf9a6cd.tga b/indra/newview/skins/darkcatalan/textures/b4870163-6208-42a9-9801-93133bf9a6cd.tga new file mode 100644 index 000000000..747989e08 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/b4870163-6208-42a9-9801-93133bf9a6cd.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/black.tga b/indra/newview/skins/darkcatalan/textures/black.tga new file mode 100644 index 000000000..86d5a0c94 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/black.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/btn_chatbar.tga b/indra/newview/skins/darkcatalan/textures/btn_chatbar.tga new file mode 100644 index 000000000..09d34551c Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/btn_chatbar.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/btn_chatbar_selected.tga b/indra/newview/skins/darkcatalan/textures/btn_chatbar_selected.tga new file mode 100644 index 000000000..2790486de Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/btn_chatbar_selected.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/button_anim_pause.tga b/indra/newview/skins/darkcatalan/textures/button_anim_pause.tga new file mode 100644 index 000000000..696137a36 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/button_anim_pause.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/button_anim_pause_disabled.tga b/indra/newview/skins/darkcatalan/textures/button_anim_pause_disabled.tga new file mode 100644 index 000000000..ae54a1f25 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/button_anim_pause_disabled.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/button_anim_pause_selected.tga b/indra/newview/skins/darkcatalan/textures/button_anim_pause_selected.tga new file mode 100644 index 000000000..adced5208 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/button_anim_pause_selected.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/button_anim_play.tga b/indra/newview/skins/darkcatalan/textures/button_anim_play.tga new file mode 100644 index 000000000..c75f2f328 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/button_anim_play.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/button_anim_play_disabled.tga b/indra/newview/skins/darkcatalan/textures/button_anim_play_disabled.tga new file mode 100644 index 000000000..58efaa196 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/button_anim_play_disabled.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/button_anim_play_selected.tga b/indra/newview/skins/darkcatalan/textures/button_anim_play_selected.tga new file mode 100644 index 000000000..bd2f37967 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/button_anim_play_selected.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/button_anim_stop.tga b/indra/newview/skins/darkcatalan/textures/button_anim_stop.tga new file mode 100644 index 000000000..3f31d588b Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/button_anim_stop.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/button_anim_stop_disabled.tga b/indra/newview/skins/darkcatalan/textures/button_anim_stop_disabled.tga new file mode 100644 index 000000000..4f3aaa888 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/button_anim_stop_disabled.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/button_anim_stop_selected.tga b/indra/newview/skins/darkcatalan/textures/button_anim_stop_selected.tga new file mode 100644 index 000000000..31b8bf6c6 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/button_anim_stop_selected.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/button_disabled_32x128.tga b/indra/newview/skins/darkcatalan/textures/button_disabled_32x128.tga new file mode 100644 index 000000000..e2d414a8c Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/button_disabled_32x128.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/button_enabled_32x128.tga b/indra/newview/skins/darkcatalan/textures/button_enabled_32x128.tga new file mode 100644 index 000000000..88c579f17 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/button_enabled_32x128.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/button_enabled_selected_32x128.tga b/indra/newview/skins/darkcatalan/textures/button_enabled_selected_32x128.tga new file mode 100644 index 000000000..4dbaab62a Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/button_enabled_selected_32x128.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/c1e21504-f136-451d-b8e9-929037812f1d.tga b/indra/newview/skins/darkcatalan/textures/c1e21504-f136-451d-b8e9-929037812f1d.tga new file mode 100644 index 000000000..71e7f35a9 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/c1e21504-f136-451d-b8e9-929037812f1d.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/c63f124c-6340-4fbf-b59e-0869a44adb64.tga b/indra/newview/skins/darkcatalan/textures/c63f124c-6340-4fbf-b59e-0869a44adb64.tga new file mode 100644 index 000000000..2149cc114 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/c63f124c-6340-4fbf-b59e-0869a44adb64.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/ca7609c6-6ec6-32d9-332e-0d8f437ef644.tga b/indra/newview/skins/darkcatalan/textures/ca7609c6-6ec6-32d9-332e-0d8f437ef644.tga new file mode 100644 index 000000000..0dbb8fda4 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/ca7609c6-6ec6-32d9-332e-0d8f437ef644.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/cam_rotate_in.tga b/indra/newview/skins/darkcatalan/textures/cam_rotate_in.tga new file mode 100644 index 000000000..37f7faed3 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/cam_rotate_in.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/cam_rotate_out.tga b/indra/newview/skins/darkcatalan/textures/cam_rotate_out.tga new file mode 100644 index 000000000..f8267f404 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/cam_rotate_out.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/cam_tracking_in.tga b/indra/newview/skins/darkcatalan/textures/cam_tracking_in.tga new file mode 100644 index 000000000..6a51d4dcc Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/cam_tracking_in.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/cam_tracking_out.tga b/indra/newview/skins/darkcatalan/textures/cam_tracking_out.tga new file mode 100644 index 000000000..961533729 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/cam_tracking_out.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/cam_zoom_minus_in.tga b/indra/newview/skins/darkcatalan/textures/cam_zoom_minus_in.tga new file mode 100644 index 000000000..b428b5db6 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/cam_zoom_minus_in.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/cam_zoom_out.tga b/indra/newview/skins/darkcatalan/textures/cam_zoom_out.tga new file mode 100644 index 000000000..b428b5db6 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/cam_zoom_out.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/cam_zoom_plus_in.tga b/indra/newview/skins/darkcatalan/textures/cam_zoom_plus_in.tga new file mode 100644 index 000000000..b428b5db6 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/cam_zoom_plus_in.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/ce15fd63-b0b6-463c-a37d-ea6393208b3e.tga b/indra/newview/skins/darkcatalan/textures/ce15fd63-b0b6-463c-a37d-ea6393208b3e.tga new file mode 100644 index 000000000..9a52b1723 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/ce15fd63-b0b6-463c-a37d-ea6393208b3e.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/checkbox_disabled_false.tga b/indra/newview/skins/darkcatalan/textures/checkbox_disabled_false.tga new file mode 100644 index 000000000..8a3e38dea Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/checkbox_disabled_false.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/checkbox_disabled_true.tga b/indra/newview/skins/darkcatalan/textures/checkbox_disabled_true.tga new file mode 100644 index 000000000..ecbeffb24 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/checkbox_disabled_true.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/checkbox_enabled_false.tga b/indra/newview/skins/darkcatalan/textures/checkbox_enabled_false.tga new file mode 100644 index 000000000..0daa5df2c Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/checkbox_enabled_false.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/checkbox_enabled_true.tga b/indra/newview/skins/darkcatalan/textures/checkbox_enabled_true.tga new file mode 100644 index 000000000..137fa836c Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/checkbox_enabled_true.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/checkerboard_transparency_bg.png b/indra/newview/skins/darkcatalan/textures/checkerboard_transparency_bg.png new file mode 100644 index 000000000..9a1693520 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/checkerboard_transparency_bg.png differ diff --git a/indra/newview/skins/darkcatalan/textures/circle.tga b/indra/newview/skins/darkcatalan/textures/circle.tga new file mode 100644 index 000000000..d7097e3a3 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/circle.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/close_in_blue.tga b/indra/newview/skins/darkcatalan/textures/close_in_blue.tga new file mode 100644 index 000000000..8200eba32 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/close_in_blue.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/close_inactive_blue.tga b/indra/newview/skins/darkcatalan/textures/close_inactive_blue.tga new file mode 100644 index 000000000..191c5d3e8 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/close_inactive_blue.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/closebox.tga b/indra/newview/skins/darkcatalan/textures/closebox.tga new file mode 100644 index 000000000..294d4fb24 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/closebox.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/color_swatch_alpha.tga b/indra/newview/skins/darkcatalan/textures/color_swatch_alpha.tga new file mode 100644 index 000000000..814a004e6 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/color_swatch_alpha.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/combobox_arrow.tga b/indra/newview/skins/darkcatalan/textures/combobox_arrow.tga new file mode 100644 index 000000000..ad08f32bb Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/combobox_arrow.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/crosshairs.tga b/indra/newview/skins/darkcatalan/textures/crosshairs.tga new file mode 100644 index 000000000..ac4d63dc5 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/crosshairs.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/darkgray.tga b/indra/newview/skins/darkcatalan/textures/darkgray.tga new file mode 100644 index 000000000..2063d685a Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/darkgray.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/direction_arrow.tga b/indra/newview/skins/darkcatalan/textures/direction_arrow.tga new file mode 100644 index 000000000..496658818 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/direction_arrow.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/down_arrow.png b/indra/newview/skins/darkcatalan/textures/down_arrow.png new file mode 100644 index 000000000..155f80c97 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/down_arrow.png differ diff --git a/indra/newview/skins/darkcatalan/textures/e3369e02-93e1-43dc-b9c0-4533db0963d0.tga b/indra/newview/skins/darkcatalan/textures/e3369e02-93e1-43dc-b9c0-4533db0963d0.tga new file mode 100644 index 000000000..0d127f946 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/e3369e02-93e1-43dc-b9c0-4533db0963d0.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/e97cf410-8e61-7005-ec06-629eba4cd1fb.tga b/indra/newview/skins/darkcatalan/textures/e97cf410-8e61-7005-ec06-629eba4cd1fb.tga new file mode 100644 index 000000000..6fdba25d4 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/e97cf410-8e61-7005-ec06-629eba4cd1fb.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/eye_button_active.tga b/indra/newview/skins/darkcatalan/textures/eye_button_active.tga new file mode 100644 index 000000000..1bbacb4b7 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/eye_button_active.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/eye_button_inactive.tga b/indra/newview/skins/darkcatalan/textures/eye_button_inactive.tga new file mode 100644 index 000000000..6cefcabf8 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/eye_button_inactive.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/f9bbb2fe-584b-4c01-86fc-599c69534c1b.tga b/indra/newview/skins/darkcatalan/textures/f9bbb2fe-584b-4c01-86fc-599c69534c1b.tga new file mode 100644 index 000000000..3706c96e0 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/f9bbb2fe-584b-4c01-86fc-599c69534c1b.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/ff9a71eb-7414-4cf8-866e-a701deb7c3cf.tga b/indra/newview/skins/darkcatalan/textures/ff9a71eb-7414-4cf8-866e-a701deb7c3cf.tga new file mode 100644 index 000000000..96f308ebb Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/ff9a71eb-7414-4cf8-866e-a701deb7c3cf.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/ff_edit_mine.tga b/indra/newview/skins/darkcatalan/textures/ff_edit_mine.tga new file mode 100644 index 000000000..a386a1248 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/ff_edit_mine.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/ff_edit_mine_button.tga b/indra/newview/skins/darkcatalan/textures/ff_edit_mine_button.tga new file mode 100644 index 000000000..d1160dbe4 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/ff_edit_mine_button.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/ff_edit_theirs.tga b/indra/newview/skins/darkcatalan/textures/ff_edit_theirs.tga new file mode 100644 index 000000000..81bd6b390 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/ff_edit_theirs.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/ff_edit_theirs_button.tga b/indra/newview/skins/darkcatalan/textures/ff_edit_theirs_button.tga new file mode 100644 index 000000000..e88452b25 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/ff_edit_theirs_button.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/ff_online_status_button.tga b/indra/newview/skins/darkcatalan/textures/ff_online_status_button.tga new file mode 100644 index 000000000..4a69b6bce Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/ff_online_status_button.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/ff_visible_map.tga b/indra/newview/skins/darkcatalan/textures/ff_visible_map.tga new file mode 100644 index 000000000..eafdaf13a Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/ff_visible_map.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/ff_visible_map_button.tga b/indra/newview/skins/darkcatalan/textures/ff_visible_map_button.tga new file mode 100644 index 000000000..77ccfe45c Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/ff_visible_map_button.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/ff_visible_online.tga b/indra/newview/skins/darkcatalan/textures/ff_visible_online.tga new file mode 100644 index 000000000..edf05fb21 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/ff_visible_online.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/ff_visible_online_button.tga b/indra/newview/skins/darkcatalan/textures/ff_visible_online_button.tga new file mode 100644 index 000000000..c6665d488 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/ff_visible_online_button.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/flag_blue.tga b/indra/newview/skins/darkcatalan/textures/flag_blue.tga new file mode 100644 index 000000000..e61e7a912 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/flag_blue.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/flag_green.tga b/indra/newview/skins/darkcatalan/textures/flag_green.tga new file mode 100644 index 000000000..5f0f05c24 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/flag_green.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/flag_orange.tga b/indra/newview/skins/darkcatalan/textures/flag_orange.tga new file mode 100644 index 000000000..6e73c31b5 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/flag_orange.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/flag_pink.tga b/indra/newview/skins/darkcatalan/textures/flag_pink.tga new file mode 100644 index 000000000..ccf52b9a4 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/flag_pink.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/flag_purple.tga b/indra/newview/skins/darkcatalan/textures/flag_purple.tga new file mode 100644 index 000000000..3ef8f0921 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/flag_purple.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/flag_red.tga b/indra/newview/skins/darkcatalan/textures/flag_red.tga new file mode 100644 index 000000000..87afb595a Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/flag_red.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/flag_yellow.tga b/indra/newview/skins/darkcatalan/textures/flag_yellow.tga new file mode 100644 index 000000000..4c4a64768 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/flag_yellow.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/flyout_btn_left.tga b/indra/newview/skins/darkcatalan/textures/flyout_btn_left.tga new file mode 100644 index 000000000..5d48aa081 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/flyout_btn_left.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/flyout_btn_left_disabled.tga b/indra/newview/skins/darkcatalan/textures/flyout_btn_left_disabled.tga new file mode 100644 index 000000000..a4edec715 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/flyout_btn_left_disabled.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/flyout_btn_left_selected.tga b/indra/newview/skins/darkcatalan/textures/flyout_btn_left_selected.tga new file mode 100644 index 000000000..d8d1ebaf5 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/flyout_btn_left_selected.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/flyout_btn_right.tga b/indra/newview/skins/darkcatalan/textures/flyout_btn_right.tga new file mode 100644 index 000000000..6f715d6ec Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/flyout_btn_right.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/flyout_btn_right_disabled.tga b/indra/newview/skins/darkcatalan/textures/flyout_btn_right_disabled.tga new file mode 100644 index 000000000..f76485480 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/flyout_btn_right_disabled.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/flyout_btn_right_selected.tga b/indra/newview/skins/darkcatalan/textures/flyout_btn_right_selected.tga new file mode 100644 index 000000000..bd543c53d Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/flyout_btn_right_selected.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/folder_arrow.tga b/indra/newview/skins/darkcatalan/textures/folder_arrow.tga new file mode 100644 index 000000000..77d470731 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/folder_arrow.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_active-speakers-dot-lvl0.tga b/indra/newview/skins/darkcatalan/textures/icn_active-speakers-dot-lvl0.tga new file mode 100644 index 000000000..35846cef3 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_active-speakers-dot-lvl0.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_active-speakers-dot-lvl1.tga b/indra/newview/skins/darkcatalan/textures/icn_active-speakers-dot-lvl1.tga new file mode 100644 index 000000000..1f9f564fa Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_active-speakers-dot-lvl1.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_active-speakers-dot-lvl2.tga b/indra/newview/skins/darkcatalan/textures/icn_active-speakers-dot-lvl2.tga new file mode 100644 index 000000000..b2e5609f1 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_active-speakers-dot-lvl2.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_active-speakers-typing1.tga b/indra/newview/skins/darkcatalan/textures/icn_active-speakers-typing1.tga new file mode 100644 index 000000000..3706c96e0 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_active-speakers-typing1.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_active-speakers-typing2.tga b/indra/newview/skins/darkcatalan/textures/icn_active-speakers-typing2.tga new file mode 100644 index 000000000..0d127f946 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_active-speakers-typing2.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_active-speakers-typing3.tga b/indra/newview/skins/darkcatalan/textures/icn_active-speakers-typing3.tga new file mode 100644 index 000000000..031b3ad34 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_active-speakers-typing3.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_chat_overlay.tga b/indra/newview/skins/darkcatalan/textures/icn_chat_overlay.tga new file mode 100644 index 000000000..e3fc83c9f Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_chat_overlay.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_chatbar.tga b/indra/newview/skins/darkcatalan/textures/icn_chatbar.tga new file mode 100644 index 000000000..221dc9dc7 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_chatbar.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_clear_lineeditor.tga b/indra/newview/skins/darkcatalan/textures/icn_clear_lineeditor.tga new file mode 100644 index 000000000..8cd8310c6 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_clear_lineeditor.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_label_media.tga b/indra/newview/skins/darkcatalan/textures/icn_label_media.tga new file mode 100644 index 000000000..6fa60f094 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_label_media.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_label_music.tga b/indra/newview/skins/darkcatalan/textures/icn_label_music.tga new file mode 100644 index 000000000..df23ce67f Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_label_music.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_label_web.tga b/indra/newview/skins/darkcatalan/textures/icn_label_web.tga new file mode 100644 index 000000000..b2ee3bbc3 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_label_web.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_media-pause.tga b/indra/newview/skins/darkcatalan/textures/icn_media-pause.tga new file mode 100644 index 000000000..d940faab9 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_media-pause.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_media-pause_active.tga b/indra/newview/skins/darkcatalan/textures/icn_media-pause_active.tga new file mode 100644 index 000000000..adced5208 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_media-pause_active.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_media-pause_disabled.tga b/indra/newview/skins/darkcatalan/textures/icn_media-pause_disabled.tga new file mode 100644 index 000000000..ae54a1f25 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_media-pause_disabled.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_media-pause_enabled.tga b/indra/newview/skins/darkcatalan/textures/icn_media-pause_enabled.tga new file mode 100644 index 000000000..696137a36 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_media-pause_enabled.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_media-play.tga b/indra/newview/skins/darkcatalan/textures/icn_media-play.tga new file mode 100644 index 000000000..3aa44e5a1 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_media-play.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_media-play_active.tga b/indra/newview/skins/darkcatalan/textures/icn_media-play_active.tga new file mode 100644 index 000000000..3989508d8 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_media-play_active.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_media-play_disabled.tga b/indra/newview/skins/darkcatalan/textures/icn_media-play_disabled.tga new file mode 100644 index 000000000..058792ead Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_media-play_disabled.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_media-play_enabled.tga b/indra/newview/skins/darkcatalan/textures/icn_media-play_enabled.tga new file mode 100644 index 000000000..feecf4d9b Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_media-play_enabled.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_media-stop_active.tga b/indra/newview/skins/darkcatalan/textures/icn_media-stop_active.tga new file mode 100644 index 000000000..31b8bf6c6 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_media-stop_active.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_media-stop_disabled.tga b/indra/newview/skins/darkcatalan/textures/icn_media-stop_disabled.tga new file mode 100644 index 000000000..4f3aaa888 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_media-stop_disabled.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_media-stop_enabled.tga b/indra/newview/skins/darkcatalan/textures/icn_media-stop_enabled.tga new file mode 100644 index 000000000..3f31d588b Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_media-stop_enabled.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_media.tga b/indra/newview/skins/darkcatalan/textures/icn_media.tga new file mode 100644 index 000000000..6fa60f094 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_media.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_media_movie.tga b/indra/newview/skins/darkcatalan/textures/icn_media_movie.tga new file mode 100644 index 000000000..6fa60f094 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_media_movie.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_media_web.tga b/indra/newview/skins/darkcatalan/textures/icn_media_web.tga new file mode 100644 index 000000000..b2ee3bbc3 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_media_web.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_music-pause.tga b/indra/newview/skins/darkcatalan/textures/icn_music-pause.tga new file mode 100644 index 000000000..1735dbe45 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_music-pause.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_music-play.tga b/indra/newview/skins/darkcatalan/textures/icn_music-play.tga new file mode 100644 index 000000000..9eca4af88 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_music-play.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_music.tga b/indra/newview/skins/darkcatalan/textures/icn_music.tga new file mode 100644 index 000000000..df23ce67f Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_music.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_pause.tga b/indra/newview/skins/darkcatalan/textures/icn_pause.tga new file mode 100644 index 000000000..567b1c0c6 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_pause.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_play.tga b/indra/newview/skins/darkcatalan/textures/icn_play.tga new file mode 100644 index 000000000..c1335a867 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_play.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_rounded-text-field.tga b/indra/newview/skins/darkcatalan/textures/icn_rounded-text-field.tga new file mode 100644 index 000000000..7da504f93 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_rounded-text-field.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_scrollbar.tga b/indra/newview/skins/darkcatalan/textures/icn_scrollbar.tga new file mode 100644 index 000000000..a19a8a5d1 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_scrollbar.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_scrollbar_bg.tga b/indra/newview/skins/darkcatalan/textures/icn_scrollbar_bg.tga new file mode 100644 index 000000000..1e4bc7a8a Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_scrollbar_bg.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_scrollbar_thumb.tga b/indra/newview/skins/darkcatalan/textures/icn_scrollbar_thumb.tga new file mode 100644 index 000000000..d63c31472 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_scrollbar_thumb.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_slide-groove_dark.tga b/indra/newview/skins/darkcatalan/textures/icn_slide-groove_dark.tga new file mode 100644 index 000000000..0021ad9d4 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_slide-groove_dark.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_slide-highlight.tga b/indra/newview/skins/darkcatalan/textures/icn_slide-highlight.tga new file mode 100644 index 000000000..d4e81d833 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_slide-highlight.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_slide-thumb_dark.tga b/indra/newview/skins/darkcatalan/textures/icn_slide-thumb_dark.tga new file mode 100644 index 000000000..1a2c625d0 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_slide-thumb_dark.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_speaker-muted_dark.tga b/indra/newview/skins/darkcatalan/textures/icn_speaker-muted_dark.tga new file mode 100644 index 000000000..a7d29a14b Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_speaker-muted_dark.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_speaker_dark.tga b/indra/newview/skins/darkcatalan/textures/icn_speaker_dark.tga new file mode 100644 index 000000000..b0a5936fd Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_speaker_dark.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_stop.tga b/indra/newview/skins/darkcatalan/textures/icn_stop.tga new file mode 100644 index 000000000..f8575b9ee Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_stop.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_textfield_enabled.tga b/indra/newview/skins/darkcatalan/textures/icn_textfield_enabled.tga new file mode 100644 index 000000000..fc681a195 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_textfield_enabled.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_toolbar_build.tga b/indra/newview/skins/darkcatalan/textures/icn_toolbar_build.tga new file mode 100644 index 000000000..f585a7181 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_toolbar_build.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_toolbar_fly.tga b/indra/newview/skins/darkcatalan/textures/icn_toolbar_fly.tga new file mode 100644 index 000000000..d6822828c Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_toolbar_fly.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_toolbar_inventory.tga b/indra/newview/skins/darkcatalan/textures/icn_toolbar_inventory.tga new file mode 100644 index 000000000..21b1f944a Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_toolbar_inventory.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_toolbar_map.tga b/indra/newview/skins/darkcatalan/textures/icn_toolbar_map.tga new file mode 100644 index 000000000..44c1b9645 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_toolbar_map.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_toolbar_minimap.tga b/indra/newview/skins/darkcatalan/textures/icn_toolbar_minimap.tga new file mode 100644 index 000000000..e18683cd0 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_toolbar_minimap.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_toolbar_radar.tga b/indra/newview/skins/darkcatalan/textures/icn_toolbar_radar.tga new file mode 100644 index 000000000..bc17b03b5 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_toolbar_radar.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_toolbar_search.tga b/indra/newview/skins/darkcatalan/textures/icn_toolbar_search.tga new file mode 100644 index 000000000..71c1a36a5 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_toolbar_search.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_toolbar_snapshot.tga b/indra/newview/skins/darkcatalan/textures/icn_toolbar_snapshot.tga new file mode 100644 index 000000000..be3f61205 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_toolbar_snapshot.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_voice-call-end.tga b/indra/newview/skins/darkcatalan/textures/icn_voice-call-end.tga new file mode 100644 index 000000000..2da4e856b Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_voice-call-end.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_voice-call-start.tga b/indra/newview/skins/darkcatalan/textures/icn_voice-call-start.tga new file mode 100644 index 000000000..07701cb5a Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_voice-call-start.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_voice-groupfocus.tga b/indra/newview/skins/darkcatalan/textures/icn_voice-groupfocus.tga new file mode 100644 index 000000000..9f48d4609 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_voice-groupfocus.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_voice-localchat.tga b/indra/newview/skins/darkcatalan/textures/icn_voice-localchat.tga new file mode 100644 index 000000000..56a869b78 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_voice-localchat.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_voice-pvtfocus.tga b/indra/newview/skins/darkcatalan/textures/icn_voice-pvtfocus.tga new file mode 100644 index 000000000..abadb09aa Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_voice-pvtfocus.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_voice_ptt-off.tga b/indra/newview/skins/darkcatalan/textures/icn_voice_ptt-off.tga new file mode 100644 index 000000000..07616f17f Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_voice_ptt-off.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_voice_ptt-on-lvl1.tga b/indra/newview/skins/darkcatalan/textures/icn_voice_ptt-on-lvl1.tga new file mode 100644 index 000000000..ae72af131 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_voice_ptt-on-lvl1.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_voice_ptt-on-lvl2.tga b/indra/newview/skins/darkcatalan/textures/icn_voice_ptt-on-lvl2.tga new file mode 100644 index 000000000..4dfc2dd29 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_voice_ptt-on-lvl2.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_voice_ptt-on-lvl3.tga b/indra/newview/skins/darkcatalan/textures/icn_voice_ptt-on-lvl3.tga new file mode 100644 index 000000000..018b0bef4 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_voice_ptt-on-lvl3.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icn_voice_ptt-on.tga b/indra/newview/skins/darkcatalan/textures/icn_voice_ptt-on.tga new file mode 100644 index 000000000..9eb643110 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icn_voice_ptt-on.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icon_auction.tga b/indra/newview/skins/darkcatalan/textures/icon_auction.tga new file mode 100644 index 000000000..d121833b4 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icon_auction.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icon_avatar_expand.png b/indra/newview/skins/darkcatalan/textures/icon_avatar_expand.png new file mode 100644 index 000000000..47698e9eb Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icon_avatar_expand.png differ diff --git a/indra/newview/skins/darkcatalan/textures/icon_avatar_offline.tga b/indra/newview/skins/darkcatalan/textures/icon_avatar_offline.tga new file mode 100644 index 000000000..d139d7f4e Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icon_avatar_offline.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icon_avatar_online.tga b/indra/newview/skins/darkcatalan/textures/icon_avatar_online.tga new file mode 100644 index 000000000..9709a9d15 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icon_avatar_online.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icon_day_cycle.tga b/indra/newview/skins/darkcatalan/textures/icon_day_cycle.tga new file mode 100644 index 000000000..2d5dee1e9 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icon_day_cycle.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icon_diurnal.tga b/indra/newview/skins/darkcatalan/textures/icon_diurnal.tga new file mode 100644 index 000000000..fc720c826 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icon_diurnal.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icon_event.tga b/indra/newview/skins/darkcatalan/textures/icon_event.tga new file mode 100644 index 000000000..7805dbce6 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icon_event.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icon_event_mature.tga b/indra/newview/skins/darkcatalan/textures/icon_event_mature.tga new file mode 100644 index 000000000..61c879bc9 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icon_event_mature.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icon_for_sale.tga b/indra/newview/skins/darkcatalan/textures/icon_for_sale.tga new file mode 100644 index 000000000..455b1aeb1 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icon_for_sale.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icon_group.tga b/indra/newview/skins/darkcatalan/textures/icon_group.tga new file mode 100644 index 000000000..22122d6cf Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icon_group.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icon_groupnotice.tga b/indra/newview/skins/darkcatalan/textures/icon_groupnotice.tga new file mode 100644 index 000000000..edf2c6180 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icon_groupnotice.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icon_groupnoticeinventory.tga b/indra/newview/skins/darkcatalan/textures/icon_groupnoticeinventory.tga new file mode 100644 index 000000000..f31390632 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icon_groupnoticeinventory.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icon_lock.tga b/indra/newview/skins/darkcatalan/textures/icon_lock.tga new file mode 100644 index 000000000..23521aa11 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icon_lock.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icon_place.tga b/indra/newview/skins/darkcatalan/textures/icon_place.tga new file mode 100644 index 000000000..2170c9849 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icon_place.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icon_popular.tga b/indra/newview/skins/darkcatalan/textures/icon_popular.tga new file mode 100644 index 000000000..f1165b8aa Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icon_popular.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/icon_top_pick.tga b/indra/newview/skins/darkcatalan/textures/icon_top_pick.tga new file mode 100644 index 000000000..7fe119a81 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/icon_top_pick.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/info_error.tga b/indra/newview/skins/darkcatalan/textures/info_error.tga new file mode 100644 index 000000000..d5d71ad95 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/info_error.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/info_fetching.tga b/indra/newview/skins/darkcatalan/textures/info_fetching.tga new file mode 100644 index 000000000..d9faa4014 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/info_fetching.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/info_unknown.tga b/indra/newview/skins/darkcatalan/textures/info_unknown.tga new file mode 100644 index 000000000..b04e4b064 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/info_unknown.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_folder_animation.tga b/indra/newview/skins/darkcatalan/textures/inv_folder_animation.tga new file mode 100644 index 000000000..1b4df7a2d Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_folder_animation.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_folder_bodypart.tga b/indra/newview/skins/darkcatalan/textures/inv_folder_bodypart.tga new file mode 100644 index 000000000..abcb1bda7 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_folder_bodypart.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_folder_callingcard.tga b/indra/newview/skins/darkcatalan/textures/inv_folder_callingcard.tga new file mode 100644 index 000000000..db7d8f7b0 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_folder_callingcard.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_folder_clothing.tga b/indra/newview/skins/darkcatalan/textures/inv_folder_clothing.tga new file mode 100644 index 000000000..d214789cb Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_folder_clothing.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_folder_gesture.tga b/indra/newview/skins/darkcatalan/textures/inv_folder_gesture.tga new file mode 100644 index 000000000..83accbb1e Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_folder_gesture.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_folder_landmark.tga b/indra/newview/skins/darkcatalan/textures/inv_folder_landmark.tga new file mode 100644 index 000000000..6923dd228 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_folder_landmark.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_folder_lostandfound.tga b/indra/newview/skins/darkcatalan/textures/inv_folder_lostandfound.tga new file mode 100644 index 000000000..67f9a9a83 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_folder_lostandfound.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_folder_notecard.tga b/indra/newview/skins/darkcatalan/textures/inv_folder_notecard.tga new file mode 100644 index 000000000..400ef3cc4 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_folder_notecard.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_folder_object.tga b/indra/newview/skins/darkcatalan/textures/inv_folder_object.tga new file mode 100644 index 000000000..c3d04bf27 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_folder_object.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_folder_plain_closed.tga b/indra/newview/skins/darkcatalan/textures/inv_folder_plain_closed.tga new file mode 100644 index 000000000..e351836e2 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_folder_plain_closed.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_folder_plain_open.tga b/indra/newview/skins/darkcatalan/textures/inv_folder_plain_open.tga new file mode 100644 index 000000000..7bc80347b Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_folder_plain_open.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_folder_script.tga b/indra/newview/skins/darkcatalan/textures/inv_folder_script.tga new file mode 100644 index 000000000..3e1a164da Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_folder_script.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_folder_snapshot.tga b/indra/newview/skins/darkcatalan/textures/inv_folder_snapshot.tga new file mode 100644 index 000000000..d32538d9c Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_folder_snapshot.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_folder_sound.tga b/indra/newview/skins/darkcatalan/textures/inv_folder_sound.tga new file mode 100644 index 000000000..5e54c4774 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_folder_sound.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_folder_texture.tga b/indra/newview/skins/darkcatalan/textures/inv_folder_texture.tga new file mode 100644 index 000000000..4fe75d07d Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_folder_texture.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_folder_trash.tga b/indra/newview/skins/darkcatalan/textures/inv_folder_trash.tga new file mode 100644 index 000000000..54043e9cf Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_folder_trash.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_item_animation.tga b/indra/newview/skins/darkcatalan/textures/inv_item_animation.tga new file mode 100644 index 000000000..2b12b2809 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_item_animation.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_item_attach.tga b/indra/newview/skins/darkcatalan/textures/inv_item_attach.tga new file mode 100644 index 000000000..053899332 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_item_attach.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_item_callingcard_offline.tga b/indra/newview/skins/darkcatalan/textures/inv_item_callingcard_offline.tga new file mode 100644 index 000000000..44222d306 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_item_callingcard_offline.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_item_callingcard_online.tga b/indra/newview/skins/darkcatalan/textures/inv_item_callingcard_online.tga new file mode 100644 index 000000000..42be4d2e1 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_item_callingcard_online.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_item_clothing.tga b/indra/newview/skins/darkcatalan/textures/inv_item_clothing.tga new file mode 100644 index 000000000..4c4c9391b Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_item_clothing.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_item_eyes.tga b/indra/newview/skins/darkcatalan/textures/inv_item_eyes.tga new file mode 100644 index 000000000..053ffbe23 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_item_eyes.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_item_gesture.tga b/indra/newview/skins/darkcatalan/textures/inv_item_gesture.tga new file mode 100644 index 000000000..52ac90c90 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_item_gesture.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_item_gloves.tga b/indra/newview/skins/darkcatalan/textures/inv_item_gloves.tga new file mode 100644 index 000000000..26041711b Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_item_gloves.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_item_hair.tga b/indra/newview/skins/darkcatalan/textures/inv_item_hair.tga new file mode 100644 index 000000000..03156a7b7 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_item_hair.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_item_jacket.tga b/indra/newview/skins/darkcatalan/textures/inv_item_jacket.tga new file mode 100644 index 000000000..f37c593d8 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_item_jacket.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_item_landmark.tga b/indra/newview/skins/darkcatalan/textures/inv_item_landmark.tga new file mode 100644 index 000000000..c161deb38 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_item_landmark.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_item_landmark_visited.tga b/indra/newview/skins/darkcatalan/textures/inv_item_landmark_visited.tga new file mode 100644 index 000000000..372a0f63f Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_item_landmark_visited.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_item_notecard.tga b/indra/newview/skins/darkcatalan/textures/inv_item_notecard.tga new file mode 100644 index 000000000..2534d1b2a Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_item_notecard.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_item_object.tga b/indra/newview/skins/darkcatalan/textures/inv_item_object.tga new file mode 100644 index 000000000..edad15fdc Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_item_object.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_item_object_multi.tga b/indra/newview/skins/darkcatalan/textures/inv_item_object_multi.tga new file mode 100644 index 000000000..7af666b61 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_item_object_multi.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_item_pants.tga b/indra/newview/skins/darkcatalan/textures/inv_item_pants.tga new file mode 100644 index 000000000..ec3246ea7 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_item_pants.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_item_script.tga b/indra/newview/skins/darkcatalan/textures/inv_item_script.tga new file mode 100644 index 000000000..e396d0986 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_item_script.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_item_script_dangerous.tga b/indra/newview/skins/darkcatalan/textures/inv_item_script_dangerous.tga new file mode 100644 index 000000000..1ee742a8b Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_item_script_dangerous.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_item_shape.tga b/indra/newview/skins/darkcatalan/textures/inv_item_shape.tga new file mode 100644 index 000000000..5d9db4e44 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_item_shape.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_item_shirt.tga b/indra/newview/skins/darkcatalan/textures/inv_item_shirt.tga new file mode 100644 index 000000000..2e1c627da Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_item_shirt.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_item_shoes.tga b/indra/newview/skins/darkcatalan/textures/inv_item_shoes.tga new file mode 100644 index 000000000..ae93bfe70 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_item_shoes.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_item_skin.tga b/indra/newview/skins/darkcatalan/textures/inv_item_skin.tga new file mode 100644 index 000000000..f0d7f2059 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_item_skin.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_item_skirt.tga b/indra/newview/skins/darkcatalan/textures/inv_item_skirt.tga new file mode 100644 index 000000000..d8f397285 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_item_skirt.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_item_snapshot.tga b/indra/newview/skins/darkcatalan/textures/inv_item_snapshot.tga new file mode 100644 index 000000000..c9d41a68d Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_item_snapshot.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_item_socks.tga b/indra/newview/skins/darkcatalan/textures/inv_item_socks.tga new file mode 100644 index 000000000..dabcf6d82 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_item_socks.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_item_sound.tga b/indra/newview/skins/darkcatalan/textures/inv_item_sound.tga new file mode 100644 index 000000000..efa113226 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_item_sound.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_item_texture.tga b/indra/newview/skins/darkcatalan/textures/inv_item_texture.tga new file mode 100644 index 000000000..fc5a42061 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_item_texture.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_item_underpants.tga b/indra/newview/skins/darkcatalan/textures/inv_item_underpants.tga new file mode 100644 index 000000000..e712f9c5d Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_item_underpants.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/inv_item_undershirt.tga b/indra/newview/skins/darkcatalan/textures/inv_item_undershirt.tga new file mode 100644 index 000000000..c7b4aae78 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/inv_item_undershirt.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/lag_status_critical.tga b/indra/newview/skins/darkcatalan/textures/lag_status_critical.tga new file mode 100644 index 000000000..bbc71d9e7 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/lag_status_critical.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/lag_status_good.tga b/indra/newview/skins/darkcatalan/textures/lag_status_good.tga new file mode 100644 index 000000000..680ba90f1 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/lag_status_good.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/lag_status_warning.tga b/indra/newview/skins/darkcatalan/textures/lag_status_warning.tga new file mode 100644 index 000000000..13ce3cc39 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/lag_status_warning.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/legend.tga b/indra/newview/skins/darkcatalan/textures/legend.tga new file mode 100644 index 000000000..0dbb8fda4 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/legend.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/lightgray.tga b/indra/newview/skins/darkcatalan/textures/lightgray.tga new file mode 100644 index 000000000..2063d685a Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/lightgray.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/map_avatar_16.tga b/indra/newview/skins/darkcatalan/textures/map_avatar_16.tga new file mode 100644 index 000000000..ce129e359 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/map_avatar_16.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/map_avatar_32.tga b/indra/newview/skins/darkcatalan/textures/map_avatar_32.tga new file mode 100644 index 000000000..aebeab409 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/map_avatar_32.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/map_avatar_8.tga b/indra/newview/skins/darkcatalan/textures/map_avatar_8.tga new file mode 100644 index 000000000..28552f223 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/map_avatar_8.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/map_avatar_above_32.tga b/indra/newview/skins/darkcatalan/textures/map_avatar_above_32.tga new file mode 100644 index 000000000..6fa1ddb50 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/map_avatar_above_32.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/map_avatar_above_8.tga b/indra/newview/skins/darkcatalan/textures/map_avatar_above_8.tga new file mode 100644 index 000000000..59b4c8565 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/map_avatar_above_8.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/map_avatar_below_32.tga b/indra/newview/skins/darkcatalan/textures/map_avatar_below_32.tga new file mode 100644 index 000000000..f7700282b Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/map_avatar_below_32.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/map_avatar_below_8.tga b/indra/newview/skins/darkcatalan/textures/map_avatar_below_8.tga new file mode 100644 index 000000000..a95ad3420 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/map_avatar_below_8.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/map_avatar_you_32.tga b/indra/newview/skins/darkcatalan/textures/map_avatar_you_32.tga new file mode 100644 index 000000000..782207efd Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/map_avatar_you_32.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/map_avatar_you_8.tga b/indra/newview/skins/darkcatalan/textures/map_avatar_you_8.tga new file mode 100644 index 000000000..61f319fd9 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/map_avatar_you_8.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/map_event.tga b/indra/newview/skins/darkcatalan/textures/map_event.tga new file mode 100644 index 000000000..c229b379a Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/map_event.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/map_event_mature.tga b/indra/newview/skins/darkcatalan/textures/map_event_mature.tga new file mode 100644 index 000000000..61c879bc9 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/map_event_mature.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/map_home.tga b/indra/newview/skins/darkcatalan/textures/map_home.tga new file mode 100644 index 000000000..7478de371 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/map_home.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/map_infohub.tga b/indra/newview/skins/darkcatalan/textures/map_infohub.tga new file mode 100644 index 000000000..d0134fa5f Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/map_infohub.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/map_telehub.tga b/indra/newview/skins/darkcatalan/textures/map_telehub.tga new file mode 100644 index 000000000..ef63a3eb7 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/map_telehub.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/map_track_16.tga b/indra/newview/skins/darkcatalan/textures/map_track_16.tga new file mode 100644 index 000000000..451ce24cf Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/map_track_16.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/map_track_8.tga b/indra/newview/skins/darkcatalan/textures/map_track_8.tga new file mode 100644 index 000000000..53425ff45 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/map_track_8.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/media_icon.tga b/indra/newview/skins/darkcatalan/textures/media_icon.tga new file mode 100644 index 000000000..289520cde Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/media_icon.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/minimize.tga b/indra/newview/skins/darkcatalan/textures/minimize.tga new file mode 100644 index 000000000..a21fd9148 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/minimize.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/minimize_inactive.tga b/indra/newview/skins/darkcatalan/textures/minimize_inactive.tga new file mode 100644 index 000000000..fcd62aa35 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/minimize_inactive.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/minimize_pressed.tga b/indra/newview/skins/darkcatalan/textures/minimize_pressed.tga new file mode 100644 index 000000000..0061dd5f5 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/minimize_pressed.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/missing_asset.tga b/indra/newview/skins/darkcatalan/textures/missing_asset.tga new file mode 100644 index 000000000..9a43f4db5 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/missing_asset.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/move_backward_in.tga b/indra/newview/skins/darkcatalan/textures/move_backward_in.tga new file mode 100644 index 000000000..60c42a3db Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/move_backward_in.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/move_backward_out.tga b/indra/newview/skins/darkcatalan/textures/move_backward_out.tga new file mode 100644 index 000000000..7924b16f9 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/move_backward_out.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/move_down_in.tga b/indra/newview/skins/darkcatalan/textures/move_down_in.tga new file mode 100644 index 000000000..9e9294675 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/move_down_in.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/move_down_out.tga b/indra/newview/skins/darkcatalan/textures/move_down_out.tga new file mode 100644 index 000000000..4a140a445 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/move_down_out.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/move_forward_in.tga b/indra/newview/skins/darkcatalan/textures/move_forward_in.tga new file mode 100644 index 000000000..55b6ad443 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/move_forward_in.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/move_forward_out.tga b/indra/newview/skins/darkcatalan/textures/move_forward_out.tga new file mode 100644 index 000000000..4506ce406 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/move_forward_out.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/move_left_in.tga b/indra/newview/skins/darkcatalan/textures/move_left_in.tga new file mode 100644 index 000000000..e62af31ae Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/move_left_in.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/move_left_out.tga b/indra/newview/skins/darkcatalan/textures/move_left_out.tga new file mode 100644 index 000000000..354108834 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/move_left_out.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/move_right_in.tga b/indra/newview/skins/darkcatalan/textures/move_right_in.tga new file mode 100644 index 000000000..79d8dd99d Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/move_right_in.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/move_right_out.tga b/indra/newview/skins/darkcatalan/textures/move_right_out.tga new file mode 100644 index 000000000..7d4e91eb4 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/move_right_out.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/move_turn_left_in.tga b/indra/newview/skins/darkcatalan/textures/move_turn_left_in.tga new file mode 100644 index 000000000..da2a63a26 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/move_turn_left_in.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/move_turn_left_out.tga b/indra/newview/skins/darkcatalan/textures/move_turn_left_out.tga new file mode 100644 index 000000000..0ebeea6db Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/move_turn_left_out.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/move_turn_right_in.tga b/indra/newview/skins/darkcatalan/textures/move_turn_right_in.tga new file mode 100644 index 000000000..c72186c1b Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/move_turn_right_in.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/move_turn_right_out.tga b/indra/newview/skins/darkcatalan/textures/move_turn_right_out.tga new file mode 100644 index 000000000..b0a959c10 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/move_turn_right_out.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/move_up_in.tga b/indra/newview/skins/darkcatalan/textures/move_up_in.tga new file mode 100644 index 000000000..e785285cd Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/move_up_in.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/move_up_out.tga b/indra/newview/skins/darkcatalan/textures/move_up_out.tga new file mode 100644 index 000000000..536d7929a Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/move_up_out.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/music_icon.tga b/indra/newview/skins/darkcatalan/textures/music_icon.tga new file mode 100644 index 000000000..aeaff02e0 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/music_icon.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/mute_icon.tga b/indra/newview/skins/darkcatalan/textures/mute_icon.tga new file mode 100644 index 000000000..879b9e618 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/mute_icon.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/notify_box_icon.tga b/indra/newview/skins/darkcatalan/textures/notify_box_icon.tga new file mode 100644 index 000000000..f6e5b93f5 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/notify_box_icon.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/notify_caution_icon.tga b/indra/newview/skins/darkcatalan/textures/notify_caution_icon.tga new file mode 100644 index 000000000..48c76ad91 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/notify_caution_icon.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/notify_next.png b/indra/newview/skins/darkcatalan/textures/notify_next.png new file mode 100644 index 000000000..6faa14a99 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/notify_next.png differ diff --git a/indra/newview/skins/darkcatalan/textures/notify_tip_icon.tga b/indra/newview/skins/darkcatalan/textures/notify_tip_icon.tga new file mode 100644 index 000000000..45f791e5f Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/notify_tip_icon.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/object_cone.tga b/indra/newview/skins/darkcatalan/textures/object_cone.tga new file mode 100644 index 000000000..3e02ab038 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/object_cone.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/object_cone_active.tga b/indra/newview/skins/darkcatalan/textures/object_cone_active.tga new file mode 100644 index 000000000..22c9cedc6 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/object_cone_active.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/object_cube.tga b/indra/newview/skins/darkcatalan/textures/object_cube.tga new file mode 100644 index 000000000..d062c567b Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/object_cube.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/object_cube_active.tga b/indra/newview/skins/darkcatalan/textures/object_cube_active.tga new file mode 100644 index 000000000..8aee65371 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/object_cube_active.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/object_cylinder.tga b/indra/newview/skins/darkcatalan/textures/object_cylinder.tga new file mode 100644 index 000000000..061f52792 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/object_cylinder.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/object_cylinder_active.tga b/indra/newview/skins/darkcatalan/textures/object_cylinder_active.tga new file mode 100644 index 000000000..356c4d38e Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/object_cylinder_active.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/object_grass.tga b/indra/newview/skins/darkcatalan/textures/object_grass.tga new file mode 100644 index 000000000..a4520e750 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/object_grass.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/object_grass_active.tga b/indra/newview/skins/darkcatalan/textures/object_grass_active.tga new file mode 100644 index 000000000..427d1f06e Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/object_grass_active.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/object_hemi_cone.tga b/indra/newview/skins/darkcatalan/textures/object_hemi_cone.tga new file mode 100644 index 000000000..5f4619fc2 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/object_hemi_cone.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/object_hemi_cone_active.tga b/indra/newview/skins/darkcatalan/textures/object_hemi_cone_active.tga new file mode 100644 index 000000000..546ec6b6d Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/object_hemi_cone_active.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/object_hemi_cylinder.tga b/indra/newview/skins/darkcatalan/textures/object_hemi_cylinder.tga new file mode 100644 index 000000000..b69bce638 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/object_hemi_cylinder.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/object_hemi_cylinder_active.tga b/indra/newview/skins/darkcatalan/textures/object_hemi_cylinder_active.tga new file mode 100644 index 000000000..231d9f43d Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/object_hemi_cylinder_active.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/object_hemi_sphere.tga b/indra/newview/skins/darkcatalan/textures/object_hemi_sphere.tga new file mode 100644 index 000000000..1335977be Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/object_hemi_sphere.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/object_hemi_sphere_active.tga b/indra/newview/skins/darkcatalan/textures/object_hemi_sphere_active.tga new file mode 100644 index 000000000..f4a615fbd Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/object_hemi_sphere_active.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/object_prism.tga b/indra/newview/skins/darkcatalan/textures/object_prism.tga new file mode 100644 index 000000000..836bbdccb Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/object_prism.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/object_prism_active.tga b/indra/newview/skins/darkcatalan/textures/object_prism_active.tga new file mode 100644 index 000000000..05588d82b Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/object_prism_active.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/object_pyramid.tga b/indra/newview/skins/darkcatalan/textures/object_pyramid.tga new file mode 100644 index 000000000..fad84f1fe Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/object_pyramid.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/object_pyramid_active.tga b/indra/newview/skins/darkcatalan/textures/object_pyramid_active.tga new file mode 100644 index 000000000..fe45b6e3a Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/object_pyramid_active.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/object_ring.tga b/indra/newview/skins/darkcatalan/textures/object_ring.tga new file mode 100644 index 000000000..82854d65f Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/object_ring.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/object_ring_active.tga b/indra/newview/skins/darkcatalan/textures/object_ring_active.tga new file mode 100644 index 000000000..f477f82fe Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/object_ring_active.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/object_sphere.tga b/indra/newview/skins/darkcatalan/textures/object_sphere.tga new file mode 100644 index 000000000..0762a4e2d Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/object_sphere.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/object_sphere_active.tga b/indra/newview/skins/darkcatalan/textures/object_sphere_active.tga new file mode 100644 index 000000000..213e7010d Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/object_sphere_active.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/object_tetrahedron.tga b/indra/newview/skins/darkcatalan/textures/object_tetrahedron.tga new file mode 100644 index 000000000..267ce7a07 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/object_tetrahedron.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/object_tetrahedron_active.tga b/indra/newview/skins/darkcatalan/textures/object_tetrahedron_active.tga new file mode 100644 index 000000000..16e1f2e0c Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/object_tetrahedron_active.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/object_torus.tga b/indra/newview/skins/darkcatalan/textures/object_torus.tga new file mode 100644 index 000000000..4cba84de0 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/object_torus.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/object_torus_active.tga b/indra/newview/skins/darkcatalan/textures/object_torus_active.tga new file mode 100644 index 000000000..56273a566 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/object_torus_active.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/object_tree.tga b/indra/newview/skins/darkcatalan/textures/object_tree.tga new file mode 100644 index 000000000..2e43c70bb Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/object_tree.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/object_tree_active.tga b/indra/newview/skins/darkcatalan/textures/object_tree_active.tga new file mode 100644 index 000000000..b43e6f28d Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/object_tree_active.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/object_tube.tga b/indra/newview/skins/darkcatalan/textures/object_tube.tga new file mode 100644 index 000000000..19ad1cb8b Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/object_tube.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/object_tube_active.tga b/indra/newview/skins/darkcatalan/textures/object_tube_active.tga new file mode 100644 index 000000000..26a2966a0 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/object_tube_active.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/payment_info_charter.tga b/indra/newview/skins/darkcatalan/textures/payment_info_charter.tga new file mode 100644 index 000000000..6205da7b4 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/payment_info_charter.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/payment_info_filled.tga b/indra/newview/skins/darkcatalan/textures/payment_info_filled.tga new file mode 100644 index 000000000..65e619692 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/payment_info_filled.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/payment_info_used.tga b/indra/newview/skins/darkcatalan/textures/payment_info_used.tga new file mode 100644 index 000000000..345b3b302 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/payment_info_used.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/preview.png b/indra/newview/skins/darkcatalan/textures/preview.png new file mode 100644 index 000000000..2a9a6f579 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/preview.png differ diff --git a/indra/newview/skins/darkcatalan/textures/progress_fill.tga b/indra/newview/skins/darkcatalan/textures/progress_fill.tga new file mode 100644 index 000000000..5c618cd12 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/progress_fill.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/progressbar_fill.tga b/indra/newview/skins/darkcatalan/textures/progressbar_fill.tga new file mode 100644 index 000000000..0981e756f Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/progressbar_fill.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/progressbar_track.tga b/indra/newview/skins/darkcatalan/textures/progressbar_track.tga new file mode 100644 index 000000000..6ced1d839 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/progressbar_track.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/propertyline.tga b/indra/newview/skins/darkcatalan/textures/propertyline.tga new file mode 100644 index 000000000..0c504eea7 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/propertyline.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/ptt_lock_off.tga b/indra/newview/skins/darkcatalan/textures/ptt_lock_off.tga new file mode 100644 index 000000000..8acf031ab Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/ptt_lock_off.tga differ diff --git a/indra/newview/skins/white_emerald/Textures/ptt_lock_on.tga b/indra/newview/skins/darkcatalan/textures/ptt_lock_on.tga similarity index 100% rename from indra/newview/skins/white_emerald/Textures/ptt_lock_on.tga rename to indra/newview/skins/darkcatalan/textures/ptt_lock_on.tga diff --git a/indra/newview/skins/darkcatalan/textures/radio_active_false.tga b/indra/newview/skins/darkcatalan/textures/radio_active_false.tga new file mode 100644 index 000000000..8a3e38dea Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/radio_active_false.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/radio_active_true.tga b/indra/newview/skins/darkcatalan/textures/radio_active_true.tga new file mode 100644 index 000000000..ecbeffb24 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/radio_active_true.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/radio_inactive_false.tga b/indra/newview/skins/darkcatalan/textures/radio_inactive_false.tga new file mode 100644 index 000000000..748f00935 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/radio_inactive_false.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/radio_inactive_true.tga b/indra/newview/skins/darkcatalan/textures/radio_inactive_true.tga new file mode 100644 index 000000000..98c9eb88b Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/radio_inactive_true.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/resize_handle_bottom_right_blue.tga b/indra/newview/skins/darkcatalan/textures/resize_handle_bottom_right_blue.tga new file mode 100644 index 000000000..d5da367e5 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/resize_handle_bottom_right_blue.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/restore.tga b/indra/newview/skins/darkcatalan/textures/restore.tga new file mode 100644 index 000000000..87910e288 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/restore.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/restore_inactive.tga b/indra/newview/skins/darkcatalan/textures/restore_inactive.tga new file mode 100644 index 000000000..dbbec7ea1 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/restore_inactive.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/restore_pressed.tga b/indra/newview/skins/darkcatalan/textures/restore_pressed.tga new file mode 100644 index 000000000..1922ca881 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/restore_pressed.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/scrollbutton_down_in_blue.tga b/indra/newview/skins/darkcatalan/textures/scrollbutton_down_in_blue.tga new file mode 100644 index 000000000..5e7379950 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/scrollbutton_down_in_blue.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/scrollbutton_down_out_blue.tga b/indra/newview/skins/darkcatalan/textures/scrollbutton_down_out_blue.tga new file mode 100644 index 000000000..a31ddbb90 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/scrollbutton_down_out_blue.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/scrollbutton_left_in_blue.tga b/indra/newview/skins/darkcatalan/textures/scrollbutton_left_in_blue.tga new file mode 100644 index 000000000..480842a3b Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/scrollbutton_left_in_blue.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/scrollbutton_left_out_blue.tga b/indra/newview/skins/darkcatalan/textures/scrollbutton_left_out_blue.tga new file mode 100644 index 000000000..a25e973b5 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/scrollbutton_left_out_blue.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/scrollbutton_right_in_blue.tga b/indra/newview/skins/darkcatalan/textures/scrollbutton_right_in_blue.tga new file mode 100644 index 000000000..6d7f13bfc Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/scrollbutton_right_in_blue.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/scrollbutton_right_out_blue.tga b/indra/newview/skins/darkcatalan/textures/scrollbutton_right_out_blue.tga new file mode 100644 index 000000000..2c8535db8 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/scrollbutton_right_out_blue.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/scrollbutton_up_in_blue.tga b/indra/newview/skins/darkcatalan/textures/scrollbutton_up_in_blue.tga new file mode 100644 index 000000000..4c6a8fe41 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/scrollbutton_up_in_blue.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/scrollbutton_up_out_blue.tga b/indra/newview/skins/darkcatalan/textures/scrollbutton_up_out_blue.tga new file mode 100644 index 000000000..1304a6adb Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/scrollbutton_up_out_blue.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/slim_icon_16_viewer.tga b/indra/newview/skins/darkcatalan/textures/slim_icon_16_viewer.tga new file mode 100644 index 000000000..552181d36 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/slim_icon_16_viewer.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/sm_rounded_corners_simple.tga b/indra/newview/skins/darkcatalan/textures/sm_rounded_corners_simple.tga new file mode 100644 index 000000000..85157e461 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/sm_rounded_corners_simple.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/smicon_warn.tga b/indra/newview/skins/darkcatalan/textures/smicon_warn.tga new file mode 100644 index 000000000..90ccaa07e Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/smicon_warn.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/spacer24.tga b/indra/newview/skins/darkcatalan/textures/spacer24.tga new file mode 100644 index 000000000..c7cab6b38 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/spacer24.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/spacer35.tga b/indra/newview/skins/darkcatalan/textures/spacer35.tga new file mode 100644 index 000000000..b88bc6680 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/spacer35.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/spin_down_in_blue.tga b/indra/newview/skins/darkcatalan/textures/spin_down_in_blue.tga new file mode 100644 index 000000000..60f2fd589 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/spin_down_in_blue.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/spin_down_out_blue.tga b/indra/newview/skins/darkcatalan/textures/spin_down_out_blue.tga new file mode 100644 index 000000000..a5506b814 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/spin_down_out_blue.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/spin_up_in_blue.tga b/indra/newview/skins/darkcatalan/textures/spin_up_in_blue.tga new file mode 100644 index 000000000..8f5c643f3 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/spin_up_in_blue.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/spin_up_out_blue.tga b/indra/newview/skins/darkcatalan/textures/spin_up_out_blue.tga new file mode 100644 index 000000000..e4f730959 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/spin_up_out_blue.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/square_btn_32x128.tga b/indra/newview/skins/darkcatalan/textures/square_btn_32x128.tga new file mode 100644 index 000000000..7c1e5f9dc Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/square_btn_32x128.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/square_btn_selected_32x128.tga b/indra/newview/skins/darkcatalan/textures/square_btn_selected_32x128.tga new file mode 100644 index 000000000..a7a32811b Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/square_btn_selected_32x128.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/startup_logo.j2c b/indra/newview/skins/darkcatalan/textures/startup_logo.j2c new file mode 100644 index 000000000..c9ea92b9e Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/startup_logo.j2c differ diff --git a/indra/newview/skins/darkcatalan/textures/startup_logo.jpg b/indra/newview/skins/darkcatalan/textures/startup_logo.jpg new file mode 100644 index 000000000..333df5779 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/startup_logo.jpg differ diff --git a/indra/newview/skins/darkcatalan/textures/status_busy.tga b/indra/newview/skins/darkcatalan/textures/status_busy.tga new file mode 100644 index 000000000..7743d9c7b Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/status_busy.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/status_buy_currency.tga b/indra/newview/skins/darkcatalan/textures/status_buy_currency.tga new file mode 100644 index 000000000..4b9c7980e Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/status_buy_currency.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/status_buy_currency_pressed.tga b/indra/newview/skins/darkcatalan/textures/status_buy_currency_pressed.tga new file mode 100644 index 000000000..d2418f357 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/status_buy_currency_pressed.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/status_buy_land.tga b/indra/newview/skins/darkcatalan/textures/status_buy_land.tga new file mode 100644 index 000000000..57208fe05 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/status_buy_land.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/status_buy_land_pressed.tga b/indra/newview/skins/darkcatalan/textures/status_buy_land_pressed.tga new file mode 100644 index 000000000..412e4920d Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/status_buy_land_pressed.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/status_health.tga b/indra/newview/skins/darkcatalan/textures/status_health.tga new file mode 100644 index 000000000..3d5f455fc Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/status_health.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/status_money.tga b/indra/newview/skins/darkcatalan/textures/status_money.tga new file mode 100644 index 000000000..d5be31fc6 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/status_money.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/status_no_build.tga b/indra/newview/skins/darkcatalan/textures/status_no_build.tga new file mode 100644 index 000000000..8e471e185 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/status_no_build.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/status_no_fly.tga b/indra/newview/skins/darkcatalan/textures/status_no_fly.tga new file mode 100644 index 000000000..cde2700ab Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/status_no_fly.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/status_no_push.tga b/indra/newview/skins/darkcatalan/textures/status_no_push.tga new file mode 100644 index 000000000..5ccbfa50f Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/status_no_push.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/status_no_scripts.tga b/indra/newview/skins/darkcatalan/textures/status_no_scripts.tga new file mode 100644 index 000000000..52ecdb1b8 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/status_no_scripts.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/status_no_voice.tga b/indra/newview/skins/darkcatalan/textures/status_no_voice.tga new file mode 100644 index 000000000..4ab4498cb Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/status_no_voice.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/status_script_debug.tga b/indra/newview/skins/darkcatalan/textures/status_script_debug.tga new file mode 100644 index 000000000..6fca61483 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/status_script_debug.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/status_search.tga b/indra/newview/skins/darkcatalan/textures/status_search.tga new file mode 100644 index 000000000..3ac10c476 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/status_search.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/status_search_btn.png b/indra/newview/skins/darkcatalan/textures/status_search_btn.png new file mode 100644 index 000000000..67f61332b Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/status_search_btn.png differ diff --git a/indra/newview/skins/darkcatalan/textures/status_search_btn_pressed.png b/indra/newview/skins/darkcatalan/textures/status_search_btn_pressed.png new file mode 100644 index 000000000..1437273d3 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/status_search_btn_pressed.png differ diff --git a/indra/newview/skins/darkcatalan/textures/status_voice.tga b/indra/newview/skins/darkcatalan/textures/status_voice.tga new file mode 100644 index 000000000..4ab4498cb Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/status_voice.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/tab_background_darkpurple.tga b/indra/newview/skins/darkcatalan/textures/tab_background_darkpurple.tga new file mode 100644 index 000000000..8169f9869 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/tab_background_darkpurple.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/tab_background_lightgrey.tga b/indra/newview/skins/darkcatalan/textures/tab_background_lightgrey.tga new file mode 100644 index 000000000..c2f8818f7 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/tab_background_lightgrey.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/tab_background_purple.tga b/indra/newview/skins/darkcatalan/textures/tab_background_purple.tga new file mode 100644 index 000000000..aa01b3cb6 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/tab_background_purple.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/tab_bottom_blue.tga b/indra/newview/skins/darkcatalan/textures/tab_bottom_blue.tga new file mode 100644 index 000000000..fa23f915d Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/tab_bottom_blue.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/tab_bottom_selected_blue.tga b/indra/newview/skins/darkcatalan/textures/tab_bottom_selected_blue.tga new file mode 100644 index 000000000..84e845d8a Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/tab_bottom_selected_blue.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/tab_left.tga b/indra/newview/skins/darkcatalan/textures/tab_left.tga new file mode 100644 index 000000000..ac8516543 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/tab_left.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/tab_left_selected.tga b/indra/newview/skins/darkcatalan/textures/tab_left_selected.tga new file mode 100644 index 000000000..c875db790 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/tab_left_selected.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/tab_top_blue.tga b/indra/newview/skins/darkcatalan/textures/tab_top_blue.tga new file mode 100644 index 000000000..76b25249d Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/tab_top_blue.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/tab_top_selected_blue.tga b/indra/newview/skins/darkcatalan/textures/tab_top_selected_blue.tga new file mode 100644 index 000000000..b96a4c46b Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/tab_top_selected_blue.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/tabarea.tga b/indra/newview/skins/darkcatalan/textures/tabarea.tga new file mode 100644 index 000000000..5517aebfc Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/tabarea.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/tearoff_pressed.tga b/indra/newview/skins/darkcatalan/textures/tearoff_pressed.tga new file mode 100644 index 000000000..620d109de Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/tearoff_pressed.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/tearoffbox.tga b/indra/newview/skins/darkcatalan/textures/tearoffbox.tga new file mode 100644 index 000000000..0670d2e91 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/tearoffbox.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/textures.xml b/indra/newview/skins/darkcatalan/textures/textures.xml new file mode 100644 index 000000000..2c4b0cbea --- /dev/null +++ b/indra/newview/skins/darkcatalan/textures/textures.xml @@ -0,0 +1,382 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/indra/newview/skins/darkcatalan/textures/tool_dozer.tga b/indra/newview/skins/darkcatalan/textures/tool_dozer.tga new file mode 100644 index 000000000..9eee56aea Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/tool_dozer.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/tool_dozer_active.tga b/indra/newview/skins/darkcatalan/textures/tool_dozer_active.tga new file mode 100644 index 000000000..30f2f85eb Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/tool_dozer_active.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/tool_zoom.tga b/indra/newview/skins/darkcatalan/textures/tool_zoom.tga new file mode 100644 index 000000000..d247f4982 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/tool_zoom.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/tool_zoom_active.tga b/indra/newview/skins/darkcatalan/textures/tool_zoom_active.tga new file mode 100644 index 000000000..72cadc52f Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/tool_zoom_active.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/toolbar_bg.tga b/indra/newview/skins/darkcatalan/textures/toolbar_bg.tga new file mode 100644 index 000000000..88c5da69e Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/toolbar_bg.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/toolbar_btn_disabled.tga b/indra/newview/skins/darkcatalan/textures/toolbar_btn_disabled.tga new file mode 100644 index 000000000..e2d414a8c Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/toolbar_btn_disabled.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/toolbar_btn_enabled.tga b/indra/newview/skins/darkcatalan/textures/toolbar_btn_enabled.tga new file mode 100644 index 000000000..88c579f17 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/toolbar_btn_enabled.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/toolbar_btn_selected.tga b/indra/newview/skins/darkcatalan/textures/toolbar_btn_selected.tga new file mode 100644 index 000000000..4dbaab62a Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/toolbar_btn_selected.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/toolbar_tab.tga b/indra/newview/skins/darkcatalan/textures/toolbar_tab.tga new file mode 100644 index 000000000..fa9b3784e Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/toolbar_tab.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/up_arrow.png b/indra/newview/skins/darkcatalan/textures/up_arrow.png new file mode 100644 index 000000000..601dc39f4 Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/up_arrow.png differ diff --git a/indra/newview/skins/darkcatalan/textures/up_arrow.tga b/indra/newview/skins/darkcatalan/textures/up_arrow.tga new file mode 100644 index 000000000..debefb69a Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/up_arrow.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/uv_test2.tga b/indra/newview/skins/darkcatalan/textures/uv_test2.tga new file mode 100644 index 000000000..a16000d1e Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/uv_test2.tga differ diff --git a/indra/newview/skins/darkcatalan/textures/white.tga b/indra/newview/skins/darkcatalan/textures/white.tga new file mode 100644 index 000000000..9fe68631c Binary files /dev/null and b/indra/newview/skins/darkcatalan/textures/white.tga differ diff --git a/indra/newview/skins/darkorange/colors.xml b/indra/newview/skins/darkorange/colors.xml index 87e646e51..f3ff107f0 100644 --- a/indra/newview/skins/darkorange/colors.xml +++ b/indra/newview/skins/darkorange/colors.xml @@ -72,7 +72,6 @@ - diff --git a/indra/newview/skins/default/xui/en-us/floater_about.xml b/indra/newview/skins/default/xui/en-us/floater_about.xml index 5b421b9d0..da3d8e7e4 100644 --- a/indra/newview/skins/default/xui/en-us/floater_about.xml +++ b/indra/newview/skins/default/xui/en-us/floater_about.xml @@ -10,23 +10,20 @@ + -Singularity Viewer is developed and maintained by Siana Gearz, Shyotl Kuhr, Aleric Inglewood, Narv Czervik, Tigh MacFanatic, Inusaito Kanya, Sovereign Engineer and Latif Khalifa, with contributions by Fractured Crystal, Fritigern Gothly, Henri Beauchamp, McCabe Maxsted, Kadah Coba, Kitty Barnett, nhede Core, Nomade Zhao, Revolution Smythe, Selvone Franizzi, Thickbrick Sleaford, Zauber Parecelsus, Wolfspirit Magic and others. Singularity is based upon Ascent source code. Credits for Ascent include Hg Beeks, Charley Levenque, Hazim Gazov, Zwagoth Klaar, Qarl Fizz, and others. Ascent is based upon the Inertia source code. +Singularity Viewer is developed and maintained by Siana Gearz, Shyotl Kuhr, Aleric Inglewood, Narv Czervik, Tigh MacFanatic, Inusaito Kanya, Sovereign Engineer and Latif Khalifa, with contributions by Damian Zhaoying, Fractured Crystal, Franxisco Romano, Fritigern Gothly, Henri Beauchamp, McCabe Maxsted, Kadah Coba, Kitty Barnett, nhede Core, Nomade Zhao, Revolution Smythe, Selvone Franizzi, Thickbrick Sleaford, Wolfspirit Magic, Zauber Parecelsus and others. Singularity is based upon Ascent source code. Credits for Ascent include Hg Beeks, Charley Levenque, Hazim Gazov, Zwagoth Klaar, Qarl Fizz, and others. Ascent is based upon the Inertia source code. -Singularity Viewer includes source code contributions of the following residents: Able Whitman, Adam Marker, Agathos Frascati, Aimee Trescothick, Alejandro Rosenthal, Aleric Inglewood, Alissa Sabre, Angus Boyd, Ann Congrejo, Argent Stonecutter, Asuka Neely, Balp Allen, Benja Kepler, Biancaluce Robbiani, Blakar Ogre, blino Nakamura, Boroondas Gupte, Bulli Schumann, bushing Spatula, Carjay McGinnis, Catherine Pfeffer, Celierra Darling, Cron Stardust, Dale Glass, Drewan Keats, Dylan Haskell, Dzonatas Sol, Eddy Stryker, EponymousDylan Ra, Eva Nowicka, Farallon Greyskin, Feep Larsson, Flemming Congrejo, Fluf Fredriksson, Fractured Crystal, Fremont Cunningham, Geneko Nemeth, Gigs Taggart, Ginko Bayliss, Grazer Kline, Gudmund Shepherd, Hamncheese Omlet, HappySmurf Papp, Henri Beauchamp, Hikkoshi Sakai, Hiro Sommambulist, Hoze Menges, Ian Kas, Irene Muni, Iskar Ariantho, Jacek Antonelli, JB Kraft, Joghert LeSabre, Kage Pixel, Ken March, Kerutsen Sellery, Khyota Wulluf, Kunnis Basiat, Lisa Lowe, Lockhart Cordoso, -maciek marksman, Magnus Balczo, Malwina Dollinger, march Korda, Matthew Dowd, McCabe Maxsted, Michelle2 Zenovka, Mm Alder, Mr Greggan, Nicholaz Beresford, Nounouch Hapmouche, Patric Mills, Paul Churchill, Paula Innis, Peekay Semyorka, Peter Lameth, Pf Shan, princess niven, Renault Clio, Ringo Tuxing, Robin Cornelius, Ryozu Kojima, Salahzar Stenvaag, Sammy Frederix, Scrippy Scofield, Seg Baphomet, Sergen Davies, SignpostMarv Martin, Simon Nolan, SpacedOut Frye, Sporked Friis, Stevex Janus, Still Defiant, Strife Onizuka, Tayra Dagostino, TBBle Kurosawa, Teardrops Fall, tenebrous pau, Tharax Ferraris, Thickbrick Sleaford, Thraxis Epsilon, tiamat bingyi, TraductoresAnonimos Alter, Tue Torok, Vadim Bigbear, Vixen Heron, Whoops Babii, Wilton Lundquist, Zarkonnen Decosta, Zi Ree, Zipherius Turas, Franxisco Romano, Damian Zhaoying +Singularity Viewer includes source code contributions of the following residents: Able Whitman, Adam Marker, Agathos Frascati, Aimee Trescothick, Alejandro Rosenthal, Aleric Inglewood, Alissa Sabre, Angus Boyd, Ann Congrejo, Argent Stonecutter, Asuka Neely, Balp Allen, Benja Kepler, Biancaluce Robbiani, Blakar Ogre, blino Nakamura, Boroondas Gupte, Bulli Schumann, bushing Spatula, Carjay McGinnis, Catherine Pfeffer, Celierra Darling, Cron Stardust, Dale Glass, Drewan Keats, Dylan Haskell, Dzonatas Sol, Eddy Stryker, EponymousDylan Ra, Eva Nowicka, Farallon Greyskin, Feep Larsson, Flemming Congrejo, Fluf Fredriksson, Fractured Crystal, Fremont Cunningham, Geneko Nemeth, Gigs Taggart, Ginko Bayliss, Grazer Kline, Gudmund Shepherd, Hamncheese Omlet, HappySmurf Papp, Henri Beauchamp, Hikkoshi Sakai, Hiro Sommambulist, Hoze Menges, Ian Kas, Irene Muni, Iskar Ariantho, Jacek Antonelli, JB Kraft, Joghert LeSabre, Kage Pixel, Ken March, Kerutsen Sellery, Khyota Wulluf, Kunnis Basiat, Lisa Lowe, Lockhart Cordoso, maciek marksman, Magnus Balczo, Malwina Dollinger, march Korda, Matthew Dowd, McCabe Maxsted, Michelle2 Zenovka, Mm Alder, Mr Greggan, Nicholaz Beresford, Nounouch Hapmouche, Patric Mills, Paul Churchill, Paula Innis, Peekay Semyorka, Peter Lameth, Pf Shan, princess niven, Renault Clio, Ringo Tuxing, Robin Cornelius, Ryozu Kojima, Salahzar Stenvaag, Sammy Frederix, Scrippy Scofield, Seg Baphomet, Sergen Davies, SignpostMarv Martin, Simon Nolan, SpacedOut Frye, Sporked Friis, Stevex Janus, Still Defiant, Strife Onizuka, Tayra Dagostino, TBBle Kurosawa, Teardrops Fall, tenebrous pau, Tharax Ferraris, Thickbrick Sleaford, Thraxis Epsilon, tiamat bingyi, TraductoresAnonimos Alter, Tue Torok, Vadim Bigbear, Vixen Heron, Whoops Babii, Wilton Lundquist, Zarkonnen Decosta, Zi Ree, and Zipherius Turas. -Second Life is brought to you by 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 and many others. +Second Life is brought to you by 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 and many others. -Linden Lab would like to thank the following residents: 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 +Linden Lab would like to thank the following residents: 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, and Zwagoth Klaar. + 3Dconnexion SDK Copyright (C) 1992-2007 3Dconnexion APR Copyright (C) 2000-2012 The Apache Software Foundation diff --git a/indra/newview/skins/default/xui/en-us/floater_chat_history.xml b/indra/newview/skins/default/xui/en-us/floater_chat_history.xml index 01f46d607..1afed9c2f 100644 --- a/indra/newview/skins/default/xui/en-us/floater_chat_history.xml +++ b/indra/newview/skins/default/xui/en-us/floater_chat_history.xml @@ -20,6 +20,7 @@ Add and remove joints with other objects Change its permissions Track your camera + Teleport you Control your camera diff --git a/indra/newview/skins/default/xui/en-us/floater_display_name.xml b/indra/newview/skins/default/xui/en-us/floater_display_name.xml index 9e49c9d93..4de4ec5c7 100644 --- a/indra/newview/skins/default/xui/en-us/floater_display_name.xml +++ b/indra/newview/skins/default/xui/en-us/floater_display_name.xml @@ -19,10 +19,10 @@