Merge branch 'master' of https://github.com/siana/SingularityViewer
Added missing header to indra/newview/ascentkeyword.cpp now that llviewerpluginmanager.h has a couple of header dependencies less. Resolved Conflicts: indra/llcommon/CMakeLists.txt Proximity: addition of two independent things. Just included both.
This commit is contained in:
@@ -223,3 +223,12 @@ if (LINUX)
|
||||
set_property(TARGET llcommon PROPERTY LINK_INTERFACE_LIBRARIES "-lapr-1 -laprutil-1 -lz")
|
||||
endif (LINUX)
|
||||
|
||||
if (DARWIN)
|
||||
# Don't embed a full path in the library's install name
|
||||
set_target_properties(
|
||||
llcommon
|
||||
PROPERTIES
|
||||
BUILD_WITH_INSTALL_RPATH 1
|
||||
INSTALL_NAME_DIR "@executable_path/../Resources"
|
||||
)
|
||||
endif (DARWIN)
|
||||
|
||||
@@ -303,7 +303,7 @@ typedef LLError::NoClassInfo _LL_CLASS_TO_LOG;
|
||||
*/
|
||||
|
||||
#ifdef SHOW_ASSERT
|
||||
extern bool is_main_thread();
|
||||
extern LL_COMMON_API bool is_main_thread();
|
||||
#endif
|
||||
|
||||
#endif // LL_LLERROR_H
|
||||
|
||||
@@ -41,7 +41,7 @@
|
||||
#include "aiaprpool.h"
|
||||
|
||||
#ifdef SHOW_ASSERT
|
||||
extern bool is_main_thread(void);
|
||||
extern LL_COMMON_API bool is_main_thread(void);
|
||||
#endif
|
||||
|
||||
class LLThread;
|
||||
|
||||
@@ -35,13 +35,13 @@
|
||||
|
||||
const S32 LL_VERSION_MAJOR = 1;
|
||||
const S32 LL_VERSION_MINOR = 5;
|
||||
const S32 LL_VERSION_PATCH = 7;
|
||||
const S32 LL_VERSION_PATCH = 8;
|
||||
const S32 LL_VERSION_BUILD = 0;
|
||||
|
||||
const char * const LL_CHANNEL = "Singularity";
|
||||
|
||||
#if LL_DARWIN
|
||||
const char * const LL_VERSION_BUNDLE_ID = "com.secondlife.snowglobe.viewer";
|
||||
const char * const LL_VERSION_BUNDLE_ID = "com.secondlife.singularity.viewer";
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
@@ -54,13 +54,13 @@ set(llplugin_HEADER_FILES
|
||||
set_source_files_properties(${llplugin_HEADER_FILES}
|
||||
PROPERTIES HEADER_FILE_ONLY TRUE)
|
||||
|
||||
if(NOT CMAKE_SIZEOF_VOID_P MATCHES 4)
|
||||
if(NOT WORD_SIZE EQUAL 32)
|
||||
if(WINDOWS)
|
||||
add_definitions(/FIXED:NO)
|
||||
else(WINDOWS) # not windows therefore gcc LINUX and DARWIN
|
||||
add_definitions(-fPIC)
|
||||
endif(WINDOWS)
|
||||
endif (NOT CMAKE_SIZEOF_VOID_P MATCHES 4)
|
||||
endif (NOT WORD_SIZE EQUAL 32)
|
||||
|
||||
list(APPEND llplugin_SOURCE_FILES ${llplugin_HEADER_FILES})
|
||||
|
||||
|
||||
@@ -178,8 +178,6 @@ LLView* LLComboBox::fromXML(LLXMLNodePtr node, LLView *parent, LLUICtrlFactory *
|
||||
NULL);
|
||||
combo_box->setAllowTextEntry(allow_text_entry, max_chars);
|
||||
|
||||
combo_box->initFromXML(node, parent);
|
||||
|
||||
const std::string& contents = node->getValue();
|
||||
|
||||
if (contents.find_first_not_of(" \n\t") != contents.npos)
|
||||
@@ -210,6 +208,9 @@ LLView* LLComboBox::fromXML(LLXMLNodePtr node, LLView *parent, LLUICtrlFactory *
|
||||
}
|
||||
}
|
||||
|
||||
//Do this AFTER combo_items are set up so setValue is actually able to select the correct initial entry.
|
||||
combo_box->initFromXML(node, parent);
|
||||
|
||||
// if providing user text entry or descriptive label
|
||||
// don't select an item under the hood
|
||||
if (!combo_box->acceptsTextInput() && combo_box->mLabel.empty())
|
||||
|
||||
@@ -79,6 +79,7 @@ set(viewer_SOURCE_FILES
|
||||
cofmgr.cpp
|
||||
ascentdaycyclemanager.cpp
|
||||
ascentfloatercontactgroups.cpp
|
||||
ascentkeyword.cpp
|
||||
ascentprefssys.cpp
|
||||
ascentprefsvan.cpp
|
||||
dhparam.cpp
|
||||
@@ -553,6 +554,7 @@ set(viewer_HEADER_FILES
|
||||
cofmgr.h
|
||||
ascentdaycyclemanager.h
|
||||
ascentfloatercontactgroups.h
|
||||
ascentkeyword.h
|
||||
ascentprefssys.h
|
||||
ascentprefsvan.h
|
||||
emerald.h
|
||||
@@ -1333,11 +1335,11 @@ set(PACKAGE ${PACKAGE_DEFAULT} CACHE BOOL
|
||||
"Add a package target that builds an installer package.")
|
||||
|
||||
if (WINDOWS)
|
||||
if(MSVC71)
|
||||
set(release_flags "/MAP:Release/${VIEWER_BINARY_NAME}.map /MAPINFO:LINES")
|
||||
else(MSVC71)
|
||||
if(MSVC10)
|
||||
set(release_flags "/MAPRelease/${VIEWER_BINARY_NAME}.map")
|
||||
else()
|
||||
set(release_flags "/MAP:Release/${VIEWER_BINARY_NAME}.map")
|
||||
endif(MSVC71)
|
||||
endif()
|
||||
|
||||
set_target_properties(${VIEWER_BINARY_NAME}
|
||||
PROPERTIES
|
||||
|
||||
@@ -9,6 +9,23 @@
|
||||
<string>settings_rlv.xml</string>
|
||||
</array>
|
||||
|
||||
<key>FloaterAvatarTextRect</key>
|
||||
<map>
|
||||
<key>Comment</key>
|
||||
<string>Avatar texture floater position</string>
|
||||
<key>Persist</key>
|
||||
<integer>1</integer>
|
||||
<key>Type</key>
|
||||
<string>Rect</string>
|
||||
<key>Value</key>
|
||||
<array>
|
||||
<integer>0</integer>
|
||||
<integer>0</integer>
|
||||
<integer>0</integer>
|
||||
<integer>0</integer>
|
||||
</array>
|
||||
</map>
|
||||
|
||||
<key>SianaLegacyJ2CSize</key>
|
||||
<map>
|
||||
<key>Comment</key>
|
||||
@@ -12967,7 +12984,7 @@
|
||||
<key>Type</key>
|
||||
<string>Boolean</string>
|
||||
<key>Value</key>
|
||||
<integer>1</integer>
|
||||
<integer>0</integer>
|
||||
</map>
|
||||
<key>UseOutfitFolders</key>
|
||||
<map>
|
||||
|
||||
@@ -673,5 +673,100 @@
|
||||
<key>Value</key>
|
||||
<integer>0</integer>
|
||||
</map>
|
||||
|
||||
<key>KeywordsChangeColor</key>
|
||||
<map>
|
||||
<key>Comment</key>
|
||||
<string>change message color if keyword found</string>
|
||||
<key>Persist</key>
|
||||
<integer>1</integer>
|
||||
<key>Type</key>
|
||||
<string>Boolean</string>
|
||||
<key>Value</key>
|
||||
<integer>1</integer>
|
||||
</map>
|
||||
<key>KeywordsColor</key>
|
||||
<map>
|
||||
<key>Comment</key>
|
||||
<string>Color of keyword detects messages</string>
|
||||
<key>Persist</key>
|
||||
<integer>1</integer>
|
||||
<key>Type</key>
|
||||
<string>Color4</string>
|
||||
<key>Value</key>
|
||||
<array>
|
||||
<real>1.0</real>
|
||||
<real>0.600000023842</real>
|
||||
<real>0.0</real>
|
||||
<real>1.0</real>
|
||||
</array>
|
||||
</map>
|
||||
<key>KeywordsInChat</key>
|
||||
<map>
|
||||
<key>Comment</key>
|
||||
<string>Look for keywords in local chat</string>
|
||||
<key>Persist</key>
|
||||
<integer>1</integer>
|
||||
<key>Type</key>
|
||||
<string>Boolean</string>
|
||||
<key>Value</key>
|
||||
<integer>1</integer>
|
||||
</map>
|
||||
<key>KeywordsInIM</key>
|
||||
<map>
|
||||
<key>Comment</key>
|
||||
<string>Look for keywords in group instant messages</string>
|
||||
<key>Persist</key>
|
||||
<integer>1</integer>
|
||||
<key>Type</key>
|
||||
<string>Boolean</string>
|
||||
<key>Value</key>
|
||||
<integer>1</integer>
|
||||
</map>
|
||||
<key>KeywordsList</key>
|
||||
<map>
|
||||
<key>Comment</key>
|
||||
<string>Comma seperated key words to search for</string>
|
||||
<key>Persist</key>
|
||||
<integer>1</integer>
|
||||
<key>Type</key>
|
||||
<string>String</string>
|
||||
<key>Value</key>
|
||||
<string></string>
|
||||
</map>
|
||||
<key>KeywordsOn</key>
|
||||
<map>
|
||||
<key>Comment</key>
|
||||
<string>Look for keywords</string>
|
||||
<key>Persist</key>
|
||||
<integer>1</integer>
|
||||
<key>Type</key>
|
||||
<string>Boolean</string>
|
||||
<key>Value</key>
|
||||
<integer>0</integer>
|
||||
</map>
|
||||
<key>KeywordsPlaySound</key>
|
||||
<map>
|
||||
<key>Comment</key>
|
||||
<string>Play a sound if keyword found</string>
|
||||
<key>Persist</key>
|
||||
<integer>1</integer>
|
||||
<key>Type</key>
|
||||
<string>Boolean</string>
|
||||
<key>Value</key>
|
||||
<integer>0</integer>
|
||||
</map>
|
||||
<key>KeywordsSound</key>
|
||||
<map>
|
||||
<key>Comment</key>
|
||||
<string>The sound to play if a keyword is found</string>
|
||||
<key>Persist</key>
|
||||
<integer>1</integer>
|
||||
<key>Type</key>
|
||||
<string>String</string>
|
||||
<key>Value</key>
|
||||
<string></string>
|
||||
</map>
|
||||
|
||||
</map>
|
||||
</llsd>
|
||||
|
||||
@@ -111,7 +111,7 @@
|
||||
<key>Type</key>
|
||||
<string>Boolean</string>
|
||||
<key>Value</key>
|
||||
<integer>1</integer>
|
||||
<integer>0</integer>
|
||||
</map>
|
||||
<key>SGBlockDialogSpam</key>
|
||||
<map>
|
||||
|
||||
89
indra/newview/ascentkeyword.cpp
Normal file
89
indra/newview/ascentkeyword.cpp
Normal file
@@ -0,0 +1,89 @@
|
||||
/**
|
||||
* @file ascentprefssys.cpp
|
||||
* @Ascent Viewer preferences panel
|
||||
*
|
||||
* $LicenseInfo:firstyear=2011&license=viewergpl$
|
||||
*
|
||||
* Copyright (c) 2011, Tigh MacFanatic.
|
||||
*
|
||||
* 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 "ascentkeyword.h"
|
||||
#include "llviewercontrol.h"
|
||||
#include "llui.h"
|
||||
#include <boost/regex.hpp>
|
||||
|
||||
|
||||
BOOL AscentKeyword::hasKeyword(std::string msg,int source)
|
||||
{
|
||||
static const LLCachedControl<bool> mKeywordsOn("KeywordsOn", false, gSavedPerAccountSettings);
|
||||
static const LLCachedControl<bool> mKeywordsInChat("KeywordsInChat", false, gSavedPerAccountSettings);
|
||||
static const LLCachedControl<bool> mKeywordsInIM("KeywordsInIM", false, gSavedPerAccountSettings);
|
||||
|
||||
if (mKeywordsOn)
|
||||
{
|
||||
if ((source == 1) && (mKeywordsInChat))
|
||||
{
|
||||
return containsKeyWord(msg);
|
||||
}
|
||||
|
||||
if ((source == 2) && (mKeywordsInIM))
|
||||
{
|
||||
return containsKeyWord(msg);
|
||||
}
|
||||
}
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
bool AscentKeyword::containsKeyWord(std::string source)
|
||||
{
|
||||
static const LLCachedControl<std::string> mKeywordsList("KeywordsList", "", gSavedPerAccountSettings);
|
||||
static const LLCachedControl<bool> mKeywordsPlaySound("KeywordsPlaySound", false, gSavedPerAccountSettings);
|
||||
static const LLCachedControl<std::string> mKeywordsSound("KeywordsSound", "", gSavedPerAccountSettings);
|
||||
|
||||
std::string s = mKeywordsList;
|
||||
LLStringUtil::toLower(s);
|
||||
LLStringUtil::toLower(source);
|
||||
boost::regex re(",");
|
||||
boost::sregex_token_iterator i(s.begin(), s.end(), re, -1);
|
||||
boost::sregex_token_iterator j;
|
||||
|
||||
while(i != j)
|
||||
{
|
||||
if(source.find( *i++) != std::string::npos)
|
||||
{
|
||||
if (mKeywordsPlaySound)
|
||||
{
|
||||
LLUI::sAudioCallback(LLUUID(mKeywordsSound));
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
53
indra/newview/ascentkeyword.h
Normal file
53
indra/newview/ascentkeyword.h
Normal file
@@ -0,0 +1,53 @@
|
||||
/**
|
||||
* @file ascentprefssys.cpp
|
||||
* @Ascent Viewer preferences panel
|
||||
*
|
||||
* $LicenseInfo:firstyear=2011&license=viewergpl$
|
||||
*
|
||||
* Copyright (c) 2011, Tigh MacFanatic.
|
||||
*
|
||||
* 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 ASCENTKEYWORD_H
|
||||
#define ASCENTKEYWORD_H
|
||||
|
||||
|
||||
class AscentKeyword
|
||||
{
|
||||
public:
|
||||
enum MessageSource
|
||||
{
|
||||
LocalChat=1,
|
||||
PrivateMessage=2,
|
||||
GroupChat=3
|
||||
};
|
||||
|
||||
static BOOL hasKeyword(std::string msg, int source);
|
||||
|
||||
private:
|
||||
static bool containsKeyWord(std::string source);
|
||||
};
|
||||
|
||||
|
||||
#endif
|
||||
@@ -51,7 +51,6 @@
|
||||
#include "lgghunspell_wrapper.h"
|
||||
|
||||
|
||||
|
||||
LLPrefsAscentSys::LLPrefsAscentSys()
|
||||
{
|
||||
LLUICtrlFactory::getInstance()->buildPanel(this, "panel_preferences_ascent_system.xml");
|
||||
@@ -67,6 +66,9 @@ LLPrefsAscentSys::LLPrefsAscentSys()
|
||||
childSetAction("EmSpell_Add", onSpellAdd, this);
|
||||
childSetAction("EmSpell_Remove", onSpellRemove, this);
|
||||
|
||||
childSetCommitCallback("Keywords_Alert", onCommitCheckBox, this);
|
||||
|
||||
|
||||
refreshValues();
|
||||
refresh();
|
||||
}
|
||||
@@ -110,6 +112,17 @@ void LLPrefsAscentSys::onCommitCheckBox(LLUICtrl* ctrl, void* user_data)
|
||||
bool enabled = self->childGetValue("enable_clouds").asBoolean();
|
||||
self->childSetEnabled("enable_classic_clouds", enabled);
|
||||
}
|
||||
else if (ctrl->getName() == "Keywords_Alert")
|
||||
{
|
||||
bool enabled = self->childGetValue("Keywords_Alert").asBoolean();
|
||||
self->childSetEnabled("Keywords_Entries", enabled);
|
||||
self->childSetEnabled("Keywords_LocalChat", enabled);
|
||||
self->childSetEnabled("Keywords_IM", enabled);
|
||||
self->childSetEnabled("Keywords_Highlight", enabled);
|
||||
self->childSetEnabled("Keywords_Color", enabled);
|
||||
self->childSetEnabled("Keywords_PlaySound", enabled);
|
||||
self->childSetEnabled("Keywords_SoundUUID", enabled);
|
||||
}
|
||||
}
|
||||
|
||||
void LLPrefsAscentSys::onSpellAdd(void* data)
|
||||
@@ -204,6 +217,15 @@ void LLPrefsAscentSys::refreshValues()
|
||||
mDisableClickSit = gSavedSettings.getBOOL("DisableClickSit");
|
||||
//Text Options ------------------------------------------------------------------------
|
||||
mSpellDisplay = gSavedSettings.getBOOL("SpellDisplay");
|
||||
|
||||
mKeywordsOn = gSavedPerAccountSettings.getBOOL("KeywordsOn");
|
||||
mKeywordsList = gSavedPerAccountSettings.getString("KeywordsList");
|
||||
mKeywordsInChat = gSavedPerAccountSettings.getBOOL("KeywordsInChat");
|
||||
mKeywordsInIM = gSavedPerAccountSettings.getBOOL("KeywordsInIM");
|
||||
mKeywordsChangeColor = gSavedPerAccountSettings.getBOOL("KeywordsChangeColor");
|
||||
mKeywordsColor = gSavedPerAccountSettings.getColor4("KeywordsColor");
|
||||
mKeywordsPlaySound = gSavedPerAccountSettings.getBOOL("KeywordsPlaySound");
|
||||
mKeywordsSound = static_cast<LLUUID>(gSavedPerAccountSettings.getString("KeywordsSound"));
|
||||
}
|
||||
|
||||
void LLPrefsAscentSys::refresh()
|
||||
@@ -359,10 +381,21 @@ void LLPrefsAscentSys::refresh()
|
||||
|
||||
combo->setSimple(std::string(""));
|
||||
}
|
||||
|
||||
childSetValue("Keywords_Alert", mKeywordsOn);
|
||||
childSetValue("Keywords_Entries", mKeywordsList);
|
||||
childSetValue("Keywords_LocalChat", mKeywordsInChat);
|
||||
childSetValue("Keywords_IM", mKeywordsInIM);
|
||||
childSetValue("Keywords_Highlight", mKeywordsChangeColor);
|
||||
childSetValue("Keywords_PlaySound", mKeywordsPlaySound);
|
||||
childSetValue("Keywords_SoundUUID", mKeywordsSound);
|
||||
|
||||
LLColorSwatchCtrl* colorctrl = getChild<LLColorSwatchCtrl>("Keywords_Color");
|
||||
colorctrl->set(LLColor4(mKeywordsColor),TRUE);
|
||||
}
|
||||
|
||||
void LLPrefsAscentSys::cancel()
|
||||
{
|
||||
{/*
|
||||
//General -----------------------------------------------------------------------------
|
||||
childSetValue("double_click_teleport_check", mDoubleClickTeleport);
|
||||
childSetValue("center_after_teleport_check", mResetCameraAfterTP);
|
||||
@@ -412,7 +445,18 @@ void LLPrefsAscentSys::cancel()
|
||||
|
||||
//Text Options ------------------------------------------------------------------------
|
||||
childSetValue("SpellDisplay", mSpellDisplay);
|
||||
}
|
||||
|
||||
childSetValue("Keywords_Alert", mKeywordsOn);
|
||||
childSetValue("Keywords_Entries", mKeywordsList);
|
||||
childSetValue("Keywords_LocalChat", mKeywordsInChat);
|
||||
childSetValue("Keywords_IM", mKeywordsInIM);
|
||||
childSetValue("Keywords_Highlight", mKeywordsChangeColor);
|
||||
childSetValue("Keywords_PlaySound", mKeywordsPlaySound);
|
||||
childSetValue("Keywords_SoundUUID", mKeywordsSound);
|
||||
|
||||
LLColorSwatchCtrl* colorctrl = getChild<LLColorSwatchCtrl>("Keywords_Color");
|
||||
colorctrl->set(LLColor4(mKeywordsColor),TRUE);
|
||||
*/}
|
||||
|
||||
void LLPrefsAscentSys::apply()
|
||||
{
|
||||
@@ -549,7 +593,18 @@ void LLPrefsAscentSys::apply()
|
||||
LLHUDEffectLookAt::sDebugLookAt = childGetValue("show_look_at_check");
|
||||
gSavedSettings.setBOOL("RevokePermsOnStandUp", childGetValue("revoke_perms_on_stand_up_check"));
|
||||
gSavedSettings.setBOOL("DisableClickSit", childGetValue("disable_click_sit_check"));
|
||||
|
||||
|
||||
|
||||
//Text Options ---------------------------------------------------------------------------
|
||||
gSavedPerAccountSettings.setBOOL("KeywordsOn", childGetValue("Keywords_Alert"));
|
||||
gSavedPerAccountSettings.setString("KeywordsList", childGetValue("Keywords_Entries"));
|
||||
gSavedPerAccountSettings.setBOOL("KeywordsInChat", childGetValue("Keywords_LocalChat"));
|
||||
gSavedPerAccountSettings.setBOOL("KeywordsInIM", childGetValue("Keywords_IM"));
|
||||
gSavedPerAccountSettings.setBOOL("KeywordsChangeColor", childGetValue("Keywords_Highlight"));
|
||||
gSavedPerAccountSettings.setColor4("KeywordsColor", childGetValue("Keywords_Color"));
|
||||
gSavedPerAccountSettings.setBOOL("KeywordsPlaySound", childGetValue("Keywords_PlaySound"));
|
||||
gSavedPerAccountSettings.setString("KeywordsSound", childGetValue("Keywords_SoundUUID"));
|
||||
|
||||
refreshValues();
|
||||
refresh();
|
||||
}
|
||||
|
||||
@@ -98,6 +98,14 @@ protected:
|
||||
BOOL mDisableClickSit;
|
||||
//Text Options ------------------------------------------------------------------------
|
||||
BOOL mSpellDisplay;
|
||||
BOOL mKeywordsOn;
|
||||
std::string mKeywordsList;
|
||||
BOOL mKeywordsInIM;
|
||||
BOOL mKeywordsInChat;
|
||||
BOOL mKeywordsChangeColor;
|
||||
BOOL mKeywordsPlaySound;
|
||||
LLUUID mKeywordsSound;
|
||||
LLColor4 mKeywordsColor;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -715,31 +715,38 @@ void LLFloaterAvatarList::refreshAvatarList()
|
||||
estate_owner = parent_estate->getOwner();
|
||||
}
|
||||
|
||||
static const LLCachedControl<LLColor4> unselected_color("ScrollUnselectedColor",LLColor4(LLColor4U(0, 0, 0, 204)), gColors );
|
||||
|
||||
LLColor4 name_color = unselected_color;
|
||||
|
||||
//Lindens are always more Linden than your friend, make that take precedence
|
||||
if(LLMuteList::getInstance()->isLinden(av_name))
|
||||
{
|
||||
static const LLCachedControl<LLColor4> ascent_linden_color("AscentLindenColor",LLColor4(0.f,0.f,1.f,1.f));
|
||||
element["columns"][LIST_AVATAR_NAME]["color"] = ascent_linden_color.get().getValue();
|
||||
name_color = ascent_linden_color;
|
||||
}
|
||||
//check if they are an estate owner at their current position
|
||||
else if(estate_owner.notNull() && av_id == estate_owner)
|
||||
{
|
||||
static const LLCachedControl<LLColor4> ascent_estate_owner_color("AscentEstateOwnerColor",LLColor4(1.f,0.6f,1.f,1.f));
|
||||
element["columns"][LIST_AVATAR_NAME]["color"] = ascent_estate_owner_color.get().getValue();
|
||||
name_color = ascent_estate_owner_color;
|
||||
}
|
||||
//without these dots, SL would suck.
|
||||
else if(is_agent_friend(av_id))
|
||||
{
|
||||
static const LLCachedControl<LLColor4> ascent_friend_color("AscentFriendColor",LLColor4(1.f,1.f,0.f,1.f));
|
||||
element["columns"][LIST_AVATAR_NAME]["color"] = ascent_friend_color.get().getValue();
|
||||
name_color = ascent_friend_color;
|
||||
}
|
||||
//big fat jerkface who is probably a jerk, display them as such.
|
||||
else if(LLMuteList::getInstance()->isMuted(av_id))
|
||||
{
|
||||
static const LLCachedControl<LLColor4> ascent_muted_color("AscentMutedColor",LLColor4(0.7f,0.7f,0.7f,1.f));
|
||||
element["columns"][LIST_AVATAR_NAME]["color"] = ascent_muted_color.get().getValue();
|
||||
name_color = ascent_muted_color;
|
||||
}
|
||||
|
||||
name_color = name_color*0.5f + unselected_color*0.5f;
|
||||
|
||||
element["columns"][LIST_AVATAR_NAME]["color"] = name_color.getValue();
|
||||
|
||||
char temp[32];
|
||||
LLColor4 color = LLColor4::black;
|
||||
@@ -830,16 +837,15 @@ void LLFloaterAvatarList::refreshAvatarList()
|
||||
//element["columns"][LIST_METADATA]["type"] = "text";
|
||||
|
||||
static const LLCachedControl<LLColor4> avatar_name_color("AvatarNameColor",LLColor4(LLColor4U(251, 175, 93, 255)), gColors );
|
||||
static const LLCachedControl<LLColor4> unselected_color("ScrollUnselectedColor",LLColor4(LLColor4U(0, 0, 0, 204)), gColors );
|
||||
LLColor4 name_color(avatar_name_color);
|
||||
LLColor4 client_color(avatar_name_color);
|
||||
std::string client;
|
||||
LLVOAvatar *avatarp = gObjectList.findAvatar(av_id);
|
||||
if(avatarp)
|
||||
{
|
||||
avatarp->getClientInfo(client, name_color, TRUE);
|
||||
avatarp->getClientInfo(client, client_color, TRUE);
|
||||
if(client == "")
|
||||
{
|
||||
name_color = unselected_color;
|
||||
client_color = unselected_color;
|
||||
client = "?";
|
||||
}
|
||||
element["columns"][LIST_CLIENT]["value"] = client.c_str();
|
||||
@@ -857,9 +863,9 @@ void LLFloaterAvatarList::refreshAvatarList()
|
||||
element["columns"][LIST_CLIENT]["value"] = "Out Of Range";
|
||||
}
|
||||
//Blend to make the color show up better
|
||||
name_color = name_color *.5f + unselected_color * .5f;
|
||||
client_color = client_color *.5f + unselected_color * .5f;
|
||||
|
||||
element["columns"][LIST_CLIENT]["color"] = avatar_name_color.get().getValue();
|
||||
element["columns"][LIST_CLIENT]["color"] = client_color.getValue();
|
||||
|
||||
// Add to list
|
||||
mAvatarList->addElement(element, ADD_BOTTOM);
|
||||
|
||||
@@ -75,6 +75,7 @@
|
||||
#include "llfloaterhtml.h"
|
||||
#include "llweb.h"
|
||||
#include "llstylemap.h"
|
||||
#include "ascentkeyword.h"
|
||||
|
||||
// linden library includes
|
||||
#include "llaudioengine.h"
|
||||
@@ -595,6 +596,20 @@ LLColor4 get_text_color(const LLChat& chat)
|
||||
}
|
||||
}
|
||||
|
||||
static const LLCachedControl<bool> mKeywordsChangeColor("KeywordsChangeColor", false, gSavedPerAccountSettings);
|
||||
static const LLCachedControl<LLColor4> mKeywordsColor("KeywordsColor", LLColor4(1.f, 1.f, 1.f, 1.f), gSavedPerAccountSettings);
|
||||
|
||||
if (gAgent.getID() != chat.mFromID)
|
||||
{
|
||||
if (mKeywordsChangeColor)
|
||||
{
|
||||
if (AscentKeyword::hasKeyword(chat.mText, 1))
|
||||
{
|
||||
text_color = mKeywordsColor;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return text_color;
|
||||
}
|
||||
|
||||
|
||||
@@ -1386,14 +1386,18 @@ LLScrollingPanelParam::LLScrollingPanelParam( const std::string& name,
|
||||
else
|
||||
{
|
||||
//Kill everything that isn't the slider...
|
||||
for(child_list_t::const_iterator it = getChildList()->begin();it!=getChildList()->end();)
|
||||
child_list_t to_remove;
|
||||
child_list_t::const_iterator it;
|
||||
for (it = getChildList()->begin(); it != getChildList()->end(); it++)
|
||||
{
|
||||
if((*it)!=slider && (*it)->getName() != "panel border")
|
||||
if ((*it) != slider && (*it)->getName() != "panel border")
|
||||
{
|
||||
llinfos << "removing: " << (*it)->getName() << llendl;
|
||||
removeChild((*(it++)),TRUE);
|
||||
to_remove.push_back(*it);
|
||||
}
|
||||
else ++it;
|
||||
}
|
||||
for (it = to_remove.begin(); it != to_remove.end(); it++)
|
||||
{
|
||||
removeChild(*it, TRUE);
|
||||
}
|
||||
slider->translate(0,PARAM_HINT_HEIGHT);
|
||||
reshape(getRect().getWidth(),getRect().getHeight()-PARAM_HINT_HEIGHT);
|
||||
|
||||
@@ -131,7 +131,7 @@ protected:
|
||||
|
||||
LLScrollingPanelList* mScrollingPanelList;
|
||||
LLScrollableContainerView* mScrollContainer;
|
||||
LLVisualParamReset* mResetParams;
|
||||
LLPointer<LLVisualParamReset> mResetParams;
|
||||
|
||||
LLInventoryObserver* mInventoryObserver;
|
||||
|
||||
|
||||
@@ -77,6 +77,7 @@ void LLFloaterHardwareSettings::refresh()
|
||||
LLPanel::refresh();
|
||||
|
||||
mUseVBO = gSavedSettings.getBOOL("RenderVBOEnable");
|
||||
mUseFBO = gSavedSettings.getBOOL("RenderUseFBO");
|
||||
mUseAniso = gSavedSettings.getBOOL("RenderAnisotropic");
|
||||
mFSAASamples = gSavedSettings.getU32("RenderFSAASamples");
|
||||
mGamma = gSavedSettings.getF32("RenderGamma");
|
||||
@@ -106,7 +107,8 @@ void LLFloaterHardwareSettings::refreshEnabledState()
|
||||
{
|
||||
childSetEnabled("vbo_stream", LLVertexBuffer::sEnableVBOs);
|
||||
}
|
||||
|
||||
|
||||
childSetEnabled("fbo",gGLManager.mHasFramebufferObject);
|
||||
|
||||
// if no windlight shaders, turn off nighttime brightness, gamma, and fog distance
|
||||
childSetEnabled("gamma", !gPipeline.canUseWindLightShaders());
|
||||
@@ -192,6 +194,7 @@ void LLFloaterHardwareSettings::apply()
|
||||
void LLFloaterHardwareSettings::cancel()
|
||||
{
|
||||
gSavedSettings.setBOOL("RenderVBOEnable", mUseVBO);
|
||||
gSavedSettings.setBOOL("RenderUseFBO", mUseFBO);
|
||||
gSavedSettings.setBOOL("RenderAnisotropic", mUseAniso);
|
||||
gSavedSettings.setU32("RenderFSAASamples", mFSAASamples);
|
||||
gSavedSettings.setF32("RenderGamma", mGamma);
|
||||
|
||||
@@ -88,6 +88,7 @@ protected:
|
||||
LLSliderCtrl* mCtrlVideoCardMem;
|
||||
|
||||
BOOL mUseVBO;
|
||||
BOOL mUseFBO;
|
||||
BOOL mUseAniso;
|
||||
U32 mFSAASamples;
|
||||
F32 mGamma;
|
||||
|
||||
@@ -509,6 +509,8 @@ void LLHUDEffectLookAt::render()
|
||||
(gAgent.getAvatarObject() == ((LLVOAvatar*)(LLViewerObject*)mSourceObject))) return;
|
||||
if (sDebugLookAt && mSourceObject.notNull())
|
||||
{
|
||||
LLGLDepthTest gls_depth(GL_TRUE,GL_FALSE);
|
||||
|
||||
gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE);
|
||||
|
||||
LLVector3 target = mTargetPos + ((LLVOAvatar*)(LLViewerObject*)mSourceObject)->mHeadp->getWorldPosition();
|
||||
|
||||
@@ -74,6 +74,7 @@
|
||||
#include "llhttpclient.h"
|
||||
#include "llmutelist.h"
|
||||
#include "llstylemap.h"
|
||||
#include "ascentkeyword.h"
|
||||
|
||||
#include "boost/algorithm/string.hpp"
|
||||
|
||||
@@ -1592,8 +1593,23 @@ BOOL LLFloaterIMPanel::inviteToSession(const LLDynamicArray<LLUUID>& ids)
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
void LLFloaterIMPanel::addHistoryLine(const std::string &utf8msg, const LLColor4& color, bool log_to_file, const LLUUID& source, const std::string& name)
|
||||
void LLFloaterIMPanel::addHistoryLine(const std::string &utf8msg, LLColor4 incolor, bool log_to_file, const LLUUID& source, const std::string& name)
|
||||
{
|
||||
static const LLCachedControl<bool> mKeywordsChangeColor("KeywordsChangeColor", false, gSavedPerAccountSettings);
|
||||
static const LLCachedControl<LLColor4> mKeywordsColor("KeywordsColor", LLColor4(1.f, 1.f, 1.f, 1.f), gSavedPerAccountSettings);
|
||||
|
||||
if (gAgent.getID() != source)
|
||||
{
|
||||
if (mKeywordsChangeColor)
|
||||
{
|
||||
if (AscentKeyword::hasKeyword(utf8msg, 2))
|
||||
{
|
||||
incolor = mKeywordsColor;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
const LLColor4& color = incolor;
|
||||
// start tab flashing when receiving im for background session from user
|
||||
if (source != LLUUID::null)
|
||||
{
|
||||
|
||||
@@ -211,7 +211,7 @@ public:
|
||||
BOOL inviteToSession(const LLDynamicArray<LLUUID>& agent_ids);
|
||||
|
||||
void addHistoryLine(const std::string &utf8msg,
|
||||
const LLColor4& color = LLColor4::white,
|
||||
LLColor4 incolor = LLColor4::white,
|
||||
bool log_to_file = true,
|
||||
const LLUUID& source = LLUUID::null,
|
||||
const std::string& name = LLStringUtil::null);
|
||||
|
||||
@@ -233,13 +233,21 @@ BOOL LLPanelDisplay::postBuild()
|
||||
mCtrlReflections = getChild<LLCheckBoxCtrl>("Reflections");
|
||||
mCtrlReflections->setCommitCallback(&LLPanelDisplay::onVertexShaderEnable);
|
||||
mCtrlReflections->setCallbackUserData(this);
|
||||
mRadioReflectionDetail = getChild<LLRadioGroup>("ReflectionDetailRadio");
|
||||
mCtrlReflectionDetail = getChild<LLComboBox>("ReflectionDetailCombo");
|
||||
|
||||
// WindLight
|
||||
mCtrlWindLight = getChild<LLCheckBoxCtrl>("WindLightUseAtmosShaders");
|
||||
mCtrlWindLight->setCommitCallback(&LLPanelDisplay::onVertexShaderEnable);
|
||||
mCtrlWindLight->setCallbackUserData(this);
|
||||
|
||||
// Deferred
|
||||
mCtrlDeferred = getChild<LLCheckBoxCtrl>("RenderDeferred");
|
||||
mCtrlDeferred->setCommitCallback(&LLPanelDisplay::onVertexShaderEnable);
|
||||
mCtrlDeferred->setCallbackUserData(this);
|
||||
mCtrlSunShadow = getChild<LLCheckBoxCtrl>("RenderDeferredSunShadow");
|
||||
mCtrlSunShadow->setCommitCallback(&LLPanelDisplay::onVertexShaderEnable);
|
||||
mCtrlSunShadow->setCallbackUserData(this);
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
// Enable Avatar Shaders
|
||||
mCtrlAvatarVP = getChild<LLCheckBoxCtrl>("AvatarVertexProgram");
|
||||
@@ -391,6 +399,8 @@ void LLPanelDisplay::refresh()
|
||||
mWindLight = gSavedSettings.getBOOL("WindLightUseAtmosShaders");
|
||||
mReflections = gSavedSettings.getBOOL("RenderWaterReflections");
|
||||
mAvatarVP = gSavedSettings.getBOOL("RenderAvatarVP");
|
||||
mDeferred = gSavedSettings.getBOOL("RenderDeferred");
|
||||
mSunShadow = gSavedSettings.getBOOL("RenderDeferredSunShadow");
|
||||
|
||||
// reflection radio
|
||||
mReflectionDetail = gSavedSettings.getS32("RenderReflectionDetail");
|
||||
@@ -464,10 +474,7 @@ void LLPanelDisplay::refreshEnabledState()
|
||||
bool bumpshiny = gGLManager.mHasCubeMap && LLCubeMap::sUseCubeMaps && LLFeatureManager::getInstance()->isFeatureAvailable("RenderObjectBump");
|
||||
mCtrlBumpShiny->setEnabled(bumpshiny ? TRUE : FALSE);
|
||||
|
||||
for (S32 i = 0; i < mRadioReflectionDetail->getItemCount(); ++i)
|
||||
{
|
||||
mRadioReflectionDetail->setIndexEnabled(i, mCtrlReflections->get() && reflections);
|
||||
}
|
||||
mCtrlReflectionDetail->setEnabled(mCtrlReflections->get() && reflections);
|
||||
|
||||
// Avatar Mode
|
||||
S32 max_avatar_shader = LLViewerShaderMgr::instance()->mMaxAvatarShaderLevel;
|
||||
@@ -483,6 +490,20 @@ void LLPanelDisplay::refreshEnabledState()
|
||||
mCtrlAvatarCloth->setEnabled(true);
|
||||
}
|
||||
|
||||
//I actually recommend RenderUseFBO:FALSE for ati users when not using deferred, so RenderUseFBO shouldn't control visibility of the element.
|
||||
// Instead, gGLManager.mHasFramebufferObject seems better as it is determined by hardware and not current user settings. -Shyotl
|
||||
//Enabling deferred will force RenderUseFBO to TRUE.
|
||||
BOOL can_defer = gGLManager.mHasFramebufferObject &&
|
||||
LLFeatureManager::getInstance()->isFeatureAvailable("RenderDeferred") && //Ensure it's enabled in the gpu feature table
|
||||
LLFeatureManager::getInstance()->isFeatureAvailable("RenderAvatarVP") && //Hardware Skinning. Deferred forces RenderAvatarVP to true
|
||||
LLFeatureManager::getInstance()->isFeatureAvailable("VertexShaderEnable") && gSavedSettings.getBOOL("VertexShaderEnable") && //Basic Shaders
|
||||
LLFeatureManager::getInstance()->isFeatureAvailable("WindLightUseAtmosShaders") && gSavedSettings.getBOOL("WindLightUseAtmosShaders"); //Atmospheric Shaders
|
||||
|
||||
|
||||
mCtrlDeferred->setEnabled(can_defer);
|
||||
mCtrlSunShadow->setEnabled(can_defer && gSavedSettings.getBOOL("RenderDeferred"));
|
||||
mCtrlAvatarCloth->setValue(gSavedSettings.getBOOL("RenderAvatarVP")); //Enabling RenderDeferred changes this setting behind this floaters back.
|
||||
|
||||
// Vertex Shaders
|
||||
// mCtrlShaderEnable->setEnabled(LLFeatureManager::getInstance()->isFeatureAvailable("VertexShaderEnable"));
|
||||
// [RLVa:KB] - Checked: 2009-07-10 (RLVa-1.0.0g) | Modified: RLVa-0.2.0a
|
||||
@@ -538,6 +559,11 @@ void LLPanelDisplay::disableUnavailableSettings()
|
||||
|
||||
mCtrlAvatarCloth->setEnabled(FALSE);
|
||||
mCtrlAvatarCloth->setValue(FALSE);
|
||||
|
||||
mCtrlDeferred->setEnabled(FALSE);
|
||||
mCtrlDeferred->setValue(FALSE);
|
||||
mCtrlSunShadow->setEnabled(FALSE);
|
||||
mCtrlSunShadow->setValue(FALSE);
|
||||
}
|
||||
|
||||
// disabled windlight
|
||||
@@ -575,6 +601,15 @@ void LLPanelDisplay::disableUnavailableSettings()
|
||||
mCtrlAvatarImpostors->setEnabled(FALSE);
|
||||
mCtrlAvatarImpostors->setValue(FALSE);
|
||||
}
|
||||
// disabled deferred
|
||||
if(!LLFeatureManager::getInstance()->isFeatureAvailable("RenderDeferred"))
|
||||
{
|
||||
mCtrlDeferred->setEnabled(FALSE);
|
||||
mCtrlDeferred->setValue(FALSE);
|
||||
mCtrlSunShadow->setEnabled(FALSE);
|
||||
mCtrlSunShadow->setValue(FALSE);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
void LLPanelDisplay::setHiddenGraphicsState(bool isHidden)
|
||||
@@ -610,7 +645,7 @@ void LLPanelDisplay::setHiddenGraphicsState(bool isHidden)
|
||||
llassert(mRadioLightingDetail2 != NULL);
|
||||
|
||||
llassert(mRadioTerrainDetail != NULL);
|
||||
llassert(mRadioReflectionDetail != NULL);
|
||||
llassert(mCtrlReflectionDetail != NULL);
|
||||
|
||||
llassert(mMeshDetailText != NULL);
|
||||
llassert(mShaderText != NULL);
|
||||
@@ -633,7 +668,7 @@ void LLPanelDisplay::setHiddenGraphicsState(bool isHidden)
|
||||
mCtrlLODFactor->setVisible(!isHidden);
|
||||
mCtrlFlexFactor->setVisible(!isHidden);
|
||||
mCtrlTreeFactor->setVisible(!isHidden);
|
||||
mCtrlAvatarFactor->setVisible(!isHidden);
|
||||
mCtrlAvatarFactor->setVisible(!isHidden);
|
||||
mCtrlTerrainFactor->setVisible(!isHidden);
|
||||
mCtrlSkyFactor->setVisible(!isHidden);
|
||||
mCtrlMaxParticle->setVisible(!isHidden);
|
||||
@@ -657,7 +692,10 @@ void LLPanelDisplay::setHiddenGraphicsState(bool isHidden)
|
||||
mRadioLightingDetail2->setVisible(!isHidden);
|
||||
|
||||
mRadioTerrainDetail->setVisible(!isHidden);
|
||||
mRadioReflectionDetail->setVisible(!isHidden);
|
||||
mCtrlReflectionDetail->setVisible(!isHidden);
|
||||
|
||||
mCtrlDeferred->setVisible(!isHidden);
|
||||
mCtrlSunShadow->setVisible(!isHidden);
|
||||
|
||||
// text boxes
|
||||
mShaderText->setVisible(!isHidden);
|
||||
@@ -691,6 +729,8 @@ void LLPanelDisplay::cancel()
|
||||
gSavedSettings.setBOOL("WindLightUseAtmosShaders", mWindLight);
|
||||
gSavedSettings.setBOOL("RenderWaterReflections", mReflections);
|
||||
gSavedSettings.setBOOL("RenderAvatarVP", mAvatarVP);
|
||||
gSavedSettings.setBOOL("RenderDeferred", mDeferred);
|
||||
gSavedSettings.setBOOL("RenderDeferredSunShadow", mSunShadow);
|
||||
|
||||
gSavedSettings.setS32("RenderReflectionDetail", mReflectionDetail);
|
||||
|
||||
|
||||
@@ -84,6 +84,7 @@ protected:
|
||||
LLComboBox *mCtrlFullScreen; // Fullscreen resolution
|
||||
LLCheckBoxCtrl *mCtrlAutoDetectAspect; // automatically detect aspect ratio
|
||||
LLComboBox *mCtrlAspectRatio; // user provided aspect ratio
|
||||
LLComboBox *mCtrlReflectionDetail;
|
||||
|
||||
LLCheckBoxCtrl *mCtrlWindowed; // windowed mode
|
||||
LLComboBox *mCtrlWindowSize; // window size for windowed mode
|
||||
@@ -110,12 +111,12 @@ protected:
|
||||
LLCheckBoxCtrl *mCtrlWindLight;
|
||||
LLCheckBoxCtrl *mCtrlAvatarVP;
|
||||
LLCheckBoxCtrl *mCtrlShaderEnable;
|
||||
LLCheckBoxCtrl *mCtrlDeferred;
|
||||
LLCheckBoxCtrl *mCtrlSunShadow;
|
||||
LLCheckBoxCtrl *mCtrlAvatarImpostors;
|
||||
LLCheckBoxCtrl *mCtrlAvatarCloth;
|
||||
LLRadioGroup *mRadioLightingDetail2;
|
||||
|
||||
LLRadioGroup *mRadioTerrainDetail;
|
||||
LLRadioGroup *mRadioReflectionDetail;
|
||||
|
||||
LLTextBox *mAspectRatioLabel1;
|
||||
LLTextBox *mDisplayResLabel;
|
||||
@@ -151,6 +152,8 @@ protected:
|
||||
BOOL mShaderEnable;
|
||||
BOOL mWindLight;
|
||||
BOOL mReflections;
|
||||
BOOL mDeferred;
|
||||
BOOL mSunShadow;
|
||||
BOOL mAvatarVP;
|
||||
|
||||
S32 mReflectionDetail;
|
||||
|
||||
@@ -224,7 +224,7 @@ static bool handleAvatarLODChanged(const LLSD& newvalue)
|
||||
|
||||
static bool handleAvatarPhysicsLODChanged(const LLSD& newvalue)
|
||||
{
|
||||
LLVOAvatar::sLODFactor = (F32) newvalue.asReal();
|
||||
LLVOAvatar::sPhysicsLODFactor = (F32) newvalue.asReal();
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
@@ -1092,9 +1092,9 @@ void LLViewerObjectList::renderObjectsForMap(LLNetMap &netmap)
|
||||
LLViewerObject* objectp = *iter;
|
||||
|
||||
llassert_always(objectp);
|
||||
llassert_always(!objectp->isDead());
|
||||
|
||||
if (!objectp->getRegion() || objectp->isOrphaned() || objectp->isAttachment())
|
||||
llassert(!objectp->isDead());
|
||||
|
||||
if (objectp->isDead() || !objectp->getRegion() || objectp->isOrphaned() || objectp->isAttachment())
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
@@ -310,7 +310,9 @@ void LLViewerShaderMgr::setShaders()
|
||||
S32 deferred_class = 0;
|
||||
|
||||
if (LLFeatureManager::getInstance()->isFeatureAvailable("RenderDeferred") &&
|
||||
gSavedSettings.getBOOL("RenderDeferred"))
|
||||
gSavedSettings.getBOOL("RenderDeferred") &&
|
||||
LLFeatureManager::getInstance()->isFeatureAvailable("WindLightUseAtmosShaders") &&
|
||||
gSavedSettings.getBOOL("WindLightUseAtmosShaders"))
|
||||
{
|
||||
deferred_class = 1;
|
||||
|
||||
@@ -319,9 +321,6 @@ void LLViewerShaderMgr::setShaders()
|
||||
|
||||
//make sure hardware skinning is enabled
|
||||
gSavedSettings.setBOOL("RenderAvatarVP", TRUE);
|
||||
|
||||
//make sure atmospheric shaders are enabled
|
||||
gSavedSettings.setBOOL("WindLightUseAtmosShaders", TRUE);
|
||||
}
|
||||
if (!(LLFeatureManager::getInstance()->isFeatureAvailable("WindLightUseAtmosShaders")
|
||||
&& gSavedSettings.getBOOL("WindLightUseAtmosShaders")))
|
||||
|
||||
@@ -1386,26 +1386,17 @@ void send_agent_resume()
|
||||
LLAppViewer::instance()->resumeMainloopTimeout();
|
||||
}
|
||||
|
||||
static LLVector3d unpackLocalToGlobalPosition(U32 compact_local, const LLVector3d& region_origin)
|
||||
{
|
||||
LLVector3d pos_global;
|
||||
LLVector3 pos_local;
|
||||
U8 bits;
|
||||
|
||||
bits = compact_local & 0xFF;
|
||||
pos_local.mV[VZ] = F32(bits) * 4.f;
|
||||
compact_local >>= 8;
|
||||
|
||||
bits = compact_local & 0xFF;
|
||||
pos_local.mV[VY] = (F32)bits;
|
||||
compact_local >>= 8;
|
||||
|
||||
bits = compact_local & 0xFF;
|
||||
pos_local.mV[VX] = (F32)bits;
|
||||
|
||||
pos_global.setVec( pos_local );
|
||||
pos_global += region_origin;
|
||||
return pos_global;
|
||||
static LLVector3d unpackLocalToGlobalPosition(U32 compact_local, const LLVector3d& region_origin)
|
||||
{
|
||||
LLVector3d pos_global(region_origin);
|
||||
LLVector3d pos_local;
|
||||
|
||||
pos_local.mdV[VZ] = (compact_local & 0xFFU) * 4;
|
||||
pos_local.mdV[VY] = (compact_local >> 8) & 0xFFU;
|
||||
pos_local.mdV[VX] = (compact_local >> 16) & 0xFFU;
|
||||
|
||||
pos_global += pos_local;
|
||||
return pos_global;
|
||||
}
|
||||
|
||||
void LLWorld::getAvatars(std::vector<LLUUID>* avatar_ids, std::vector<LLVector3d>* positions, const LLVector3d& relative_to, F32 radius) const
|
||||
|
||||
@@ -563,6 +563,7 @@ void LLPipeline::allocateScreenBuffer(U32 resX, U32 resY)
|
||||
void LLPipeline::updateRenderDeferred()
|
||||
{
|
||||
sRenderDeferred = (gSavedSettings.getBOOL("RenderDeferred") &&
|
||||
LLFeatureManager::getInstance()->isFeatureAvailable("RenderDeferred") &&
|
||||
LLRenderTarget::sUseFBO &&
|
||||
gSavedSettings.getBOOL("VertexShaderEnable") &&
|
||||
gSavedSettings.getBOOL("RenderAvatarVP") &&
|
||||
|
||||
@@ -69,6 +69,19 @@
|
||||
mouse_opaque="true" name="vbo_stream" radio_style="false"
|
||||
tool_tip="Disabling this may improve performance when VBOs are enabled. Disabling produced observable improvement on various AMD GPUs."
|
||||
width="315" />
|
||||
<text type="string" length="1" bg_visible="false" border_drop_shadow_visible="false" border_visible="false"
|
||||
bottom_delta="-20" drop_shadow_visible="true" enabled="true" follows="left|top"
|
||||
font="SansSerifSmall" h_pad="0" halign="left" height="12"
|
||||
left="10" mouse_opaque="true" name="Enable FBO:" v_pad="0"
|
||||
width="140">
|
||||
Enable Framebuffer Objects:
|
||||
</text>
|
||||
<check_box bottom_delta="-5" control_name="RenderUseFBO" enabled="false" follows="left|top"
|
||||
font="SansSerifSmall" height="16" initial_value="true"
|
||||
label="Enable OpenGL Frame Buffer Objects" left="148"
|
||||
mouse_opaque="true" name="fbo" radio_style="false"
|
||||
tool_tip="Enabling this on modern hardware can provide a performance gain. However, enabling this when combined with antialiasing on AMD GPUs may cause edge artifacts. This setting is required for deferred rendering."
|
||||
width="315" />
|
||||
<slider bottom_delta="-21" can_edit_text="false" control_name="TextureMemory"
|
||||
decimal_digits="0" enabled="true"
|
||||
follows="left|top" height="16" increment="16"
|
||||
|
||||
@@ -293,7 +293,54 @@ Use #f for user's first name, #l for last name,
|
||||
#i for your idle time. (e.g. "5 mins")
|
||||
</text>
|
||||
</panel>
|
||||
<panel border="true" left="1" bottom="-408" height="408" width="500" mouse_opaque="true"
|
||||
|
||||
<panel border="true" left="1" bottom="-408" height="408" width="500" mouse_opaque="true"
|
||||
follows="left|top|right|bottom" label="Spam" name="Spam">
|
||||
<check_box left="10" bottom_delta="-25" enabled="true" follows="left|top" font="SansSerifSmall"
|
||||
label="Enable chat spam blocking" tool_tip="Enable automatic chat spam blocking"
|
||||
height="18" width="100" radio_style="false" mouse_opaque="true"
|
||||
name="AscChatSpamBlock" control_name="SGBlockChatSpam"/>
|
||||
<spinner left_delta="20" height="18" width="120" enabled="true" follows="left|top"
|
||||
decimal_digits="0" increment="1" initial_val="10" min_val="2" max_val="100"
|
||||
label="Chat count" label_width="70" name="AscChatSpamCount" control_name="SGChatSpamCount"
|
||||
tool_tip="Number of items spammed per time set. (Default: 10)"/>
|
||||
<spinner left_delta="0" height="18" width="120" enabled="true" follows="left|top"
|
||||
decimal_digits="1" increment="1" initial_val="1.0" min_val="1" max_val="60"
|
||||
label="Chat time" label_width="70" name="AscChatSpamTime" control_name="SGChatSpamTime"
|
||||
tool_tip="Time of evalulating spam in seconds. (Default: 1.0)"/>
|
||||
<text type="string" length="1" bottom_delta="0" left_delta="130" bg_visible="false"
|
||||
border_visible="false" border_drop_shadow_visible="false"
|
||||
drop_shadow_visible="true" enabled="true" follows="left|top"
|
||||
font="SansSerifSmall" h_pad="0" halign="left" height="16"
|
||||
mouse_opaque="true" name="" v_pad="0" width="100">
|
||||
seconds
|
||||
</text>
|
||||
<check_box left_delta="-150" enabled="true" follows="left|top" font="SansSerifSmall"
|
||||
label="Enable dialog spam blocking" tool_tip="Enable automatic dialog spam blocking"
|
||||
height="16" width="100" radio_style="false" mouse_opaque="true"
|
||||
name="AscDialogSpamBlock" control_name="SGBlockDialogSpam"/>
|
||||
<check_box left_delta="0" enabled="true" follows="left|top" font="SansSerifSmall"
|
||||
label="Enable calling card spam blocking" tool_tip="Enable automatic calling card spam blocking"
|
||||
height="16" width="100" radio_style="false" mouse_opaque="true"
|
||||
name="AscCardSpamBlock" control_name="SGBlockCardSpam"/>
|
||||
<spinner left_delta="20" height="18" width="120" enabled="true" follows="left|top"
|
||||
decimal_digits="0" increment="1" initial_val="4" min_val="2" max_val="100"
|
||||
label="Spam count" label_width="70" name="AscSpamCount" control_name="SGSpamCount"
|
||||
tool_tip="This setting applies to both Dialog and Card spam (Default: 4)"/>
|
||||
<spinner left_delta="0" height="18" width="120" enabled="true" follows="left|top"
|
||||
decimal_digits="1" increment="1" initial_val="1.0" min_val="1" max_val="60"
|
||||
label="Spam time" label_width="70" name="AscSpamTime" control_name="SGSpamTime"
|
||||
tool_tip="This setting applies to both Dialog and Card spam (Default: 1.0)"/>
|
||||
<text type="string" length="1" bottom_delta="0" left_delta="130" bg_visible="false"
|
||||
border_visible="false" border_drop_shadow_visible="false"
|
||||
drop_shadow_visible="true" enabled="true" follows="left|top"
|
||||
font="SansSerifSmall" h_pad="0" halign="left" height="16"
|
||||
mouse_opaque="true" name="" v_pad="0" width="100">
|
||||
seconds
|
||||
</text>
|
||||
</panel>
|
||||
|
||||
<panel border="true" left="1" bottom="-408" height="408" width="500" mouse_opaque="true"
|
||||
follows="left|top|right|bottom" label="Performance" name="Performance">
|
||||
<check_box bottom_delta="-25" control_name="FetchInventoryOnLogin" enabled="true"
|
||||
follows="left|top" font="SansSerifSmall" height="16" initial_value="true"
|
||||
@@ -530,40 +577,70 @@ Use #f for user's first name, #l for last name,
|
||||
<check_box bottom="-25" enabled="true" follows="left|top" font="SansSerifSmall" height="16"
|
||||
label="Show misspelled words in red" left="12" mouse_opaque="true" name="SpellDisplay"
|
||||
control_name="SpellDisplay" width="126"/>
|
||||
<text bottom_delta="-30" follows="left|top" font="SansSerifSmall" height="16" left="12"
|
||||
<text bottom_delta="-24" follows="left|top" font="SansSerifSmall" height="16" left="12"
|
||||
name="EmSpell_txt1" width="512">
|
||||
Current language (dictionary):
|
||||
</text>
|
||||
<combo_box allow_text_entry="false" bottom_delta="-20" left_delta="0" follows="left|top" height="18"
|
||||
<combo_box allow_text_entry="false" bottom_delta="-20" left_delta="0" follows="left|top" height="20"
|
||||
max_chars="200" mouse_opaque="true" name="SpellBase" width="250"
|
||||
control_name="SpellBase" tool_tip=""/>
|
||||
<text bottom_delta="-30" follows="left|top" font="SansSerifSmall" height="16" left="12"
|
||||
<text bottom_delta="-24" follows="left|top" font="SansSerifSmall" height="20" left="12"
|
||||
name="EmSpell_txt3" width="512">
|
||||
Downloaded languages (dictionaries):
|
||||
</text>
|
||||
<combo_box allow_text_entry="false" bottom_delta="-20" left_delta="0" follows="left|top" height="18"
|
||||
<combo_box allow_text_entry="false" bottom_delta="-20" left_delta="0" follows="left|top" height="20"
|
||||
max_chars="200" mouse_opaque="true" name="EmSpell_Avail" width="250"
|
||||
control_name="EmSpell_Avail" tool_tip=""/>
|
||||
<button bottom_delta="0" follows="left|top" font="SansSerifSmall" height="20" label="Install"
|
||||
name="EmSpell_Add" tool_tip="" left_delta="255" width="80"/>
|
||||
<button bottom_delta="-22" follows="left|top" font="SansSerifSmall" height="20" label="Download More..."
|
||||
name="EmSpell_GetMore" tool_tip="Get more dictionaries availabe online" left="12" width="250"/>
|
||||
<text bottom_delta="-30" follows="left|top" font="SansSerifSmall" height="16" left="12"
|
||||
<text bottom_delta="-24" follows="left|top" font="SansSerifSmall" height="20" left="12"
|
||||
name="EmSpell_txt2" width="512">
|
||||
Additional custom languages (dictionaries):
|
||||
</text>
|
||||
<combo_box allow_text_entry="false" bottom_delta="-20" left_delta="0" follows="left|top" height="18"
|
||||
<combo_box allow_text_entry="false" bottom_delta="-20" left_delta="0" follows="left|top" height="20"
|
||||
max_chars="200" mouse_opaque="true" name="EmSpell_Installed" width="250"
|
||||
control_name="EmSpell_Installed" tool_tip=""/>
|
||||
<button bottom_delta="0" follows="left|top" font="SansSerifSmall" height="20" label="Remove"
|
||||
name="EmSpell_Remove" tool_tip="" left_delta="255" width="80"/>
|
||||
<button bottom_delta="-20" follows="left|top" font="SansSerifSmall" height="18" label="Edit Custom dictionary"
|
||||
<button bottom_delta="-20" follows="left|top" font="SansSerifSmall" height="20" label="Edit Custom dictionary"
|
||||
name="EmSpell_EditCustom" tool_tip="" left="12" width="250"/>
|
||||
<text bottom_delta="-30" follows="left|top" font="SansSerifSmall" height="16" left="12"
|
||||
<text bottom_delta="-24" follows="left|top" font="SansSerifSmall" height="20" left="12"
|
||||
name="EmSpell_txt4" width="512">
|
||||
To use spellcheck, right-click a misspelled word
|
||||
(red or otherwise) and select its replacement
|
||||
To use spellcheck, right-click a misspelled word
|
||||
(red or otherwise) and select its replacement
|
||||
</text>
|
||||
|
||||
<view_border bevel_style="none" border_thickness="1" bottom_delta="-16" follows="top|left" height="0"
|
||||
left="5" name="CmdDivisor" width="356"/>
|
||||
|
||||
<check_box bottom_delta="-24" enabled="true" follows="left|top" font="SansSerifSmall" height="16"
|
||||
label="Highlight messages if any of they contain the terms" left="5" mouse_opaque="true"
|
||||
name="Keywords_Alert" radio_style="false" width="270"/>
|
||||
<text bottom_delta="-20" follows="left|top" font="SansSerifSmall" height="20" left="12"
|
||||
name="keyword_txt1" width="512">
|
||||
(separated by commas)
|
||||
</text>
|
||||
<line_editor bevel_style="in" border_style="line" border_thickness="1" bottom_delta="-20" follows="left|top"
|
||||
font="SansSerifSmall" height="20" left_delta="5" max_length="500" mouse_opaque="true" name="Keywords_Entries" width="300" />
|
||||
<text bottom_delta="-24" follows="left|top" font="SansSerifSmall" height="20" left_delta="15" name="EmKeyw"
|
||||
width="100">Is found within:</text>
|
||||
<check_box bottom_delta="3" enabled="true" follows="left|top" font="SansSerifSmall" height="16"
|
||||
label="Local Chat Floater" left_delta="100" mouse_opaque="true" name="Keywords_LocalChat" radio_style="false" width="270"/>
|
||||
<check_box bottom_delta="-15" enabled="true" follows="left|top" font="SansSerifSmall" height="16"
|
||||
label="Instant Message Floater" left_delta="0" mouse_opaque="true" name="Keywords_IM" radio_style="false" width="270"/>
|
||||
<check_box bottom_delta="-24" enabled="true" follows="left|top" font="SansSerifSmall" height="16"
|
||||
label="Highlight the message in this color:" left_delta="-110" mouse_opaque="true" name="Keywords_Highlight"
|
||||
radio_style="false" width="270"/>
|
||||
<color_swatch border_color="0.45098, 0.517647, 0.607843, 1" bottom_delta="-16" can_apply_immediately="true"
|
||||
color="1, 1, 1, 1" follows="left|top" height="35" label="" left_delta="210"
|
||||
mouse_opaque="true" name="Keywords_Color" tool_tip="Click to open Color Picker" width="50"/>
|
||||
<check_box bottom_delta="-10" enabled="true" follows="left|top" font="SansSerifSmall" height="16"
|
||||
label="Play this sound alert: (UUID)" left_delta="-210" mouse_opaque="true" name="Keywords_PlaySound"
|
||||
radio_style="false" width="270"/>
|
||||
<line_editor bevel_style="in" border_style="line" border_thickness="1" bottom_delta="-20" follows="left|top"
|
||||
font="SansSerifSmall" height="20" left_delta="-5" max_length="36" mouse_opaque="true" name="Keywords_SoundUUID" width="300" />
|
||||
</panel>
|
||||
|
||||
</tab_container>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
|
||||
<panel border="true" bottom="-409" enabled="true" follows="left|top|right|bottom"
|
||||
height="408" label="Graphics" left="102" mouse_opaque="true"
|
||||
<panel border="true" bottom="-439" enabled="true" follows="left|top|right|bottom"
|
||||
height="438" label="Graphics" left="102" mouse_opaque="true"
|
||||
name="Display panel" width="517">
|
||||
<button bottom="-22" follows="left|top" font="SansSerif" height="18" label="?"
|
||||
left="470" name="GraphicsPreferencesHelpButton" width="22" />
|
||||
@@ -24,11 +24,8 @@
|
||||
<combo_box allow_text_entry="false" bottom="-67" enabled="true" follows="left|top"
|
||||
height="18" left="185" max_chars="20" mouse_opaque="true"
|
||||
name="windowsize combo" width="150">
|
||||
<combo_item type="string" length="1" enabled="true" name="640x480" value="640 x 480">
|
||||
640x480
|
||||
</combo_item>
|
||||
<combo_item type="string" length="1" enabled="true" name="800x600" value="800 x 600">
|
||||
800x600
|
||||
800x600
|
||||
</combo_item>
|
||||
<combo_item type="string" length="1" enabled="true" name="720x480" value="720 x 480">
|
||||
720x480 (NTSC)
|
||||
@@ -39,7 +36,16 @@
|
||||
<combo_item type="string" length="1" enabled="true" name="1024x768" value="1024 x 768">
|
||||
1024x768
|
||||
</combo_item>
|
||||
|
||||
<combo_item type="string" length="1" enabled="true" name="1280x720" value="1280 x 720">
|
||||
1280x720 (HDV720)
|
||||
</combo_item>
|
||||
<combo_item type="string" length="1" enabled="true" name="1440x1080" value="1440 x 1080">
|
||||
1440x1080 (HDV1080)
|
||||
</combo_item>
|
||||
<combo_item type="string" length="1" enabled="true" name="1920x1080" value="1920 x 1080">
|
||||
1920x1080 (HD1080)
|
||||
</combo_item>
|
||||
|
||||
</combo_box>
|
||||
<text type="string" length="1" bg_visible="false" border_drop_shadow_visible="false" border_visible="false"
|
||||
bottom="-62" drop_shadow_visible="true" enabled="true" follows="left|top"
|
||||
@@ -67,10 +73,10 @@
|
||||
5:4 (1280x1024 LCD)
|
||||
</combo_item>
|
||||
<combo_item type="string" length="1" enabled="true" name="8:5(Widescreen)" value="1.6">
|
||||
8:5 (Widescreen)
|
||||
16:10 (Widescreen PC)
|
||||
</combo_item>
|
||||
<combo_item type="string" length="1" enabled="true" name="16:9(Widescreen)" value="1.7777777">
|
||||
16:9 (Widescreen)
|
||||
16:9 (Widescreen TV)
|
||||
</combo_item>
|
||||
</combo_box>
|
||||
<check_box bottom="-44" control_name="FullScreenAutoDetectAspectRatio" enabled="true"
|
||||
@@ -157,8 +163,8 @@
|
||||
follows="left|top" font="SansSerifSmall" height="16"
|
||||
initial_value="true" label="Custom" left="385" mouse_opaque="true"
|
||||
name="CustomSettings" radio_style="false" width="256" />
|
||||
<view_border bevel_style="none" border_thickness="1" bottom="-375" follows="top|left"
|
||||
height="260" left="5" name="GraphicsBorder" width="485" />
|
||||
<view_border bevel_style="none" border_thickness="1" bottom="-405" follows="top|left"
|
||||
height="290" left="5" name="GraphicsBorder" width="485" />
|
||||
<text type="string" length="1" bg_visible="false" border_drop_shadow_visible="false" border_visible="false"
|
||||
bottom="-130" drop_shadow_visible="true" enabled="true" follows="left|top"
|
||||
font="SansSerifSmall" h_pad="0" halign="left" height="12"
|
||||
@@ -180,18 +186,45 @@
|
||||
initial_value="true" label="Atmospheric Shaders" left_delta="0"
|
||||
mouse_opaque="true" name="WindLightUseAtmosShaders" radio_style="false"
|
||||
width="256" />
|
||||
<check_box bottom_delta="-17" control_name="RenderDeferred" enabled="true"
|
||||
follows="left|top" font="SansSerifSmall" height="16"
|
||||
initial_value="true" label="Deferred Shading" left_delta="0"
|
||||
mouse_opaque="true" name="RenderDeferred" radio_style="false"
|
||||
width="256" />
|
||||
<check_box bottom_delta="-17" control_name="RenderDeferredSunShadow" enabled="true"
|
||||
follows="left|top" font="SansSerifSmall" height="16"
|
||||
initial_value="true" label="Primary Shadows" left_delta="0"
|
||||
mouse_opaque="true" name="RenderDeferredSunShadow" radio_style="false"
|
||||
width="256" />
|
||||
<check_box bottom_delta="-17" control_name="RenderWaterReflections" enabled="true"
|
||||
follows="left|top" font="SansSerifSmall" height="16"
|
||||
initial_value="true" label="Water Reflections" left_delta="0"
|
||||
mouse_opaque="true" name="Reflections" radio_style="false" width="256" />
|
||||
<text type="string" length="1" bg_visible="false" border_drop_shadow_visible="false" border_visible="false"
|
||||
bottom="-223" drop_shadow_visible="true" enabled="true" follows="left|top"
|
||||
bottom_delta="-17" drop_shadow_visible="true" enabled="true" follows="left|top"
|
||||
font="SansSerifSmall" h_pad="0" halign="left" height="12"
|
||||
left="10" mouse_opaque="true" name="ReflectionDetailText" v_pad="0"
|
||||
width="128">
|
||||
Reflection Detail:
|
||||
</text>
|
||||
<radio_group bottom_delta="-73" control_name="RenderReflectionDetail" draw_border="false"
|
||||
<combo_box bottom_delta="-20" control_name="RenderReflectionDetail" enabled = "true" follows="left|top" label="Reflection Detail"
|
||||
left_delta="-2" mouse_opaque="true" name="ReflectionDetailCombo" width="160" height="16">
|
||||
<combo_item type="string" length="1" name="0" value="0">
|
||||
Terrain and Trees
|
||||
</combo_item>
|
||||
<combo_item type="string" length="1" name="1" value="1">
|
||||
All Static Objects
|
||||
</combo_item>
|
||||
<combo_item type="string" length="1" name="2" value="2">
|
||||
All Avatars and Objects
|
||||
</combo_item>
|
||||
<combo_item type="string" length="1" name="3" value="3">
|
||||
Everything
|
||||
</combo_item>
|
||||
|
||||
</combo_box>
|
||||
|
||||
<!--radio_group bottom_delta="-73" control_name="RenderReflectionDetail" draw_border="false"
|
||||
enabled="true" follows="left|top" height="70"
|
||||
left_delta="-2" mouse_opaque="true" name="ReflectionDetailRadio"
|
||||
width="321">
|
||||
@@ -211,7 +244,7 @@
|
||||
left="3" mouse_opaque="true" name="3" width="315">
|
||||
Everything
|
||||
</radio_item>
|
||||
</radio_group>
|
||||
</radio_group-->
|
||||
<text type="string" length="1" bg_visible="false" border_drop_shadow_visible="false" border_visible="false"
|
||||
bottom="-313" drop_shadow_visible="true" enabled="true" follows="left|top"
|
||||
font="SansSerifSmall" h_pad="0" halign="left" height="12" left="10"
|
||||
@@ -382,10 +415,10 @@
|
||||
High
|
||||
</radio_item>
|
||||
</radio_group>
|
||||
<button bottom="-400" enabled="true" font="SansSerif" halign="center" height="20"
|
||||
<button bottom="-430" enabled="true" font="SansSerif" halign="center" height="20"
|
||||
label="Recommended Settings" left="130" mouse_opaque="true"
|
||||
name="Defaults" scale_image="true" width="170" />
|
||||
<button bottom="-400" enabled="true" font="SansSerif" halign="center" height="20"
|
||||
<button bottom="-430" enabled="true" font="SansSerif" halign="center" height="20"
|
||||
label="Hardware Options" label_selected="Hardware Options"
|
||||
left="310" mouse_opaque="true" name="GraphicsHardwareButton"
|
||||
scale_image="true" width="170" />
|
||||
|
||||
@@ -500,6 +500,8 @@ class DarwinManifest(ViewerManifest):
|
||||
self.path("vivox-runtime/universal-darwin/libortp.dylib", "libortp.dylib")
|
||||
self.path("vivox-runtime/universal-darwin/libvivoxsdk.dylib", "libvivoxsdk.dylib")
|
||||
self.path("vivox-runtime/universal-darwin/SLVoice", "SLVoice")
|
||||
|
||||
self.path("../llcommon/" + self.args['configuration'] + "/libllcommon.dylib", "libllcommon.dylib")
|
||||
|
||||
libfile = "lib%s.dylib"
|
||||
libdir = "../../libraries/universal-darwin/lib_release"
|
||||
|
||||
@@ -26,13 +26,13 @@ include_directories(
|
||||
|
||||
### media_plugin_base
|
||||
|
||||
if(NOT CMAKE_SIZEOF_VOID_P MATCHES 4)
|
||||
if(NOT WORD_SIZE EQUAL 32)
|
||||
if(WINDOWS)
|
||||
add_definitions(/FIXED:NO)
|
||||
else(WINDOWS) # not windows therefore gcc LINUX and DARWIN
|
||||
add_definitions(-fPIC)
|
||||
endif(WINDOWS)
|
||||
endif (NOT CMAKE_SIZEOF_VOID_P MATCHES 4)
|
||||
endif (NOT WORD_SIZE EQUAL 32)
|
||||
|
||||
set(media_plugin_base_SOURCE_FILES
|
||||
media_plugin_base.cpp
|
||||
|
||||
16
install.xml
16
install.xml
@@ -859,9 +859,9 @@ anguage Infrstructure (CLI) international standard</string>
|
||||
<key>windows</key>
|
||||
<map>
|
||||
<key>md5sum</key>
|
||||
<string>7597e9d7f4e9e8e032692a1aade8298e</string>
|
||||
<string>acf1626a563b2827a7f62d48661352c8</string>
|
||||
<key>url</key>
|
||||
<uri>https://github.com/downloads/siana/SingularityViewer/libpng-1.5.1-windows-20110504.tar.bz2</uri>
|
||||
<uri>https://github.com/downloads/siana/SingularityViewer/libpng-1.5.2-windows-20110512.tar.bz2</uri>
|
||||
</map>
|
||||
</map>
|
||||
</map>
|
||||
@@ -1021,16 +1021,16 @@ anguage Infrstructure (CLI) international standard</string>
|
||||
<key>darwin</key>
|
||||
<map>
|
||||
<key>md5sum</key>
|
||||
<string>88eec3965fc2384436192faef1db2629</string>
|
||||
<string>79bab0948f53add62d7a37be68704bf5</string>
|
||||
<key>url</key>
|
||||
<uri>http://imprudenceviewer.org/download/libs/ogg-vorbis-darwin-20100620.tar.bz2</uri>
|
||||
<uri>https://github.com/downloads/siana/SingularityViewer/ogg_vorbis-1.2.2-1.3.2-darwin-20110512.tar.bz2</uri>
|
||||
</map>
|
||||
<key>linux</key>
|
||||
<map>
|
||||
<key>md5sum</key>
|
||||
<string>72bde567859934024c8a4a70b97b24f5</string>
|
||||
<string>95c99fe37289500b60e2feee2c2f3991</string>
|
||||
<key>url</key>
|
||||
<uri>http://imprudenceviewer.org/download/libs/ogg-vorbis-linux-20091115.tar.bz2</uri>
|
||||
<uri>https://github.com/downloads/siana/SingularityViewer/ogg_vorbis-1.2.2-1.3.2-linux-20110512.tar.bz2</uri>
|
||||
</map>
|
||||
<key>linux64</key>
|
||||
<map>
|
||||
@@ -1042,9 +1042,9 @@ anguage Infrstructure (CLI) international standard</string>
|
||||
<key>windows</key>
|
||||
<map>
|
||||
<key>md5sum</key>
|
||||
<string>9bf1fea65e66b2cd3075e6ffd7eb57ad</string>
|
||||
<string>30bb58af8c5f818fc8ea8d481bd2f478</string>
|
||||
<key>url</key>
|
||||
<uri>http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/ogg-vorbis-1.1.3-1.2.0-windows-20080723.tar.bz2</uri>
|
||||
<uri>https://github.com/downloads/siana/SingularityViewer/ogg_vorbis-1.2.2-1.3.2-windows-20110512.tar.bz2</uri>
|
||||
</map>
|
||||
</map>
|
||||
</map>
|
||||
|
||||
Reference in New Issue
Block a user