From 88edd15674ca62bcb26bd28c38bfba25ef72e90c Mon Sep 17 00:00:00 2001 From: brad kittenbrink Date: Thu, 15 Jul 2010 11:29:55 -0700 Subject: Fix for SNOW-742 compile & link errors under certain gcc versions due to violation of One Definition Rule. reviewed by Moss. --- indra/newview/tests/llsecapi_test.cpp | 92 ++++++----------------------------- 1 file changed, 16 insertions(+), 76 deletions(-) (limited to 'indra') diff --git a/indra/newview/tests/llsecapi_test.cpp b/indra/newview/tests/llsecapi_test.cpp index caa1461987..8f2f299fc4 100644 --- a/indra/newview/tests/llsecapi_test.cpp +++ b/indra/newview/tests/llsecapi_test.cpp @@ -35,6 +35,7 @@ #include "../llviewernetwork.h" #include "../test/lltut.h" #include "../llsecapi.h" +#include "../llsechandler_basic.h" #include "../../llxml/llcontrol.h" @@ -56,82 +57,21 @@ std::string LLControlGroup::getString(const std::string& name) LLControlGroup gSavedSettings("test"); -class LLSecAPIBasicHandler : public LLSecAPIHandler -{ -protected: - LLPointer mCertChain; - LLPointer mCert; - LLPointer mCertStore; - LLSD mLLSD; - -public: - LLSecAPIBasicHandler() {} - - virtual ~LLSecAPIBasicHandler() {} - - // instantiate a certificate from a pem string - virtual LLPointer getCertificate(const std::string& pem_cert) - { - return mCert; - } - - - // instiate a certificate from an openssl X509 structure - virtual LLPointer getCertificate(X509* openssl_cert) - { - return mCert; - } - - - // instantiate a chain from an X509_STORE_CTX - virtual LLPointer getCertificateChain(const X509_STORE_CTX* chain) - { - return mCertChain; - } - - // instantiate a cert store given it's id. if a persisted version - // exists, it'll be loaded. If not, one will be created (but not - // persisted) - virtual LLPointer getCertificateStore(const std::string& store_id) - { - return mCertStore; - } - - // persist data in a protected store - virtual void setProtectedData(const std::string& data_type, - const std::string& data_id, - const LLSD& data) {} - - // retrieve protected data - virtual LLSD getProtectedData(const std::string& data_type, - const std::string& data_id) - { - return mLLSD; - } - - virtual void deleteProtectedData(const std::string& data_type, - const std::string& data_id) - { - } - - virtual LLPointer createCredential(const std::string& grid, - const LLSD& identifier, - const LLSD& authenticator) - { - LLPointer cred = NULL; - return cred; - } - - virtual LLPointer loadCredential(const std::string& grid) - { - LLPointer cred = NULL; - return cred; - } - - virtual void saveCredential(LLPointer cred, bool save_authenticator) {} - - virtual void deleteCredential(LLPointer cred) {} -}; + +LLSecAPIBasicHandler::LLSecAPIBasicHandler() {} +void LLSecAPIBasicHandler::init() {} +LLSecAPIBasicHandler::~LLSecAPIBasicHandler() {} +LLPointer LLSecAPIBasicHandler::getCertificate(const std::string& pem_cert) { return NULL; } +LLPointer LLSecAPIBasicHandler::getCertificate(X509* openssl_cert) { return NULL; } +LLPointer LLSecAPIBasicHandler::getCertificateChain(const X509_STORE_CTX* chain) { return NULL; } +LLPointer LLSecAPIBasicHandler::getCertificateStore(const std::string& store_id) { return NULL; } +void LLSecAPIBasicHandler::setProtectedData(const std::string& data_type, const std::string& data_id, const LLSD& data) {} +LLSD LLSecAPIBasicHandler::getProtectedData(const std::string& data_type, const std::string& data_id) { return LLSD(); } +void LLSecAPIBasicHandler::deleteProtectedData(const std::string& data_type, const std::string& data_id) {} +LLPointer LLSecAPIBasicHandler::createCredential(const std::string& grid, const LLSD& identifier, const LLSD& authenticator) { return NULL; } +LLPointer LLSecAPIBasicHandler::loadCredential(const std::string& grid) { return NULL; } +void LLSecAPIBasicHandler::saveCredential(LLPointer cred, bool save_authenticator) {} +void LLSecAPIBasicHandler::deleteCredential(LLPointer cred) {} // ------------------------------------------------------------------------------------------- // TUT -- cgit v1.2.3 From 6ad6f9116311ffb565003f7cceb0188ba7115fc8 Mon Sep 17 00:00:00 2001 From: Monroe Linden Date: Thu, 15 Jul 2010 16:32:50 -0700 Subject: Changes to allow disabling an LLTextBox (or LLTextBox subclass) to gray out the text. Due to some legacy issues, text boxes will not gray out on disable unless they have their text_readonly_color property in xui set to "LabelDisabledColor" (or some other color distinct from their text color). Reviewed by Richard. --- indra/llui/lltextbase.cpp | 3 --- indra/llui/lltextbox.cpp | 11 +++++++++++ indra/llui/lltextbox.h | 2 ++ indra/llui/lltexteditor.cpp | 3 +++ indra/newview/skins/default/xui/en/widgets/text.xml | 2 +- indra/newview/skins/default/xui/en/widgets/text_editor.xml | 1 + 6 files changed, 18 insertions(+), 4 deletions(-) (limited to 'indra') diff --git a/indra/llui/lltextbase.cpp b/indra/llui/lltextbase.cpp index ed03645944..5175583dc9 100644 --- a/indra/llui/lltextbase.cpp +++ b/indra/llui/lltextbase.cpp @@ -269,9 +269,6 @@ void LLTextBase::initFromParams(const LLTextBase::Params& p) { mReadOnly = p.read_only; } - - // HACK: text editors always need to be enabled so that we can scroll - LLView::setEnabled(true); } bool LLTextBase::truncate() diff --git a/indra/llui/lltextbox.cpp b/indra/llui/lltextbox.cpp index a1f5b5726b..686179b94e 100644 --- a/indra/llui/lltextbox.cpp +++ b/indra/llui/lltextbox.cpp @@ -119,6 +119,17 @@ BOOL LLTextBox::handleHover(S32 x, S32 y, MASK mask) return handled; } +void LLTextBox::setEnabled(BOOL enabled) +{ + // just treat enabled as read-only flag + bool read_only = !enabled; + if (read_only != mReadOnly) + { + LLTextBase::setReadOnly(read_only); + updateSegments(); + } +} + void LLTextBox::setText(const LLStringExplicit& text , const LLStyle::Params& input_params ) { // does string argument insertion diff --git a/indra/llui/lltextbox.h b/indra/llui/lltextbox.h index 3a045534d3..b2ccde94c6 100644 --- a/indra/llui/lltextbox.h +++ b/indra/llui/lltextbox.h @@ -58,6 +58,8 @@ public: /*virtual*/ BOOL handleMouseUp(S32 x, S32 y, MASK mask); /*virtual*/ BOOL handleHover(S32 x, S32 y, MASK mask); + /*virtual*/ void setEnabled(BOOL enabled); + /*virtual*/ void setText( const LLStringExplicit& text, const LLStyle::Params& input_params = LLStyle::Params() ); void setRightAlign() { mHAlign = LLFontGL::RIGHT; } diff --git a/indra/llui/lltexteditor.cpp b/indra/llui/lltexteditor.cpp index 130cda3784..6781c23416 100644 --- a/indra/llui/lltexteditor.cpp +++ b/indra/llui/lltexteditor.cpp @@ -289,6 +289,9 @@ void LLTextEditor::initFromParams( const LLTextEditor::Params& p) { LLTextBase::initFromParams(p); + // HACK: text editors always need to be enabled so that we can scroll + LLView::setEnabled(true); + if (p.commit_on_focus_lost.isProvided()) { mCommitOnFocusLost = p.commit_on_focus_lost; diff --git a/indra/newview/skins/default/xui/en/widgets/text.xml b/indra/newview/skins/default/xui/en/widgets/text.xml index 3006df22b8..3fa3f3eb90 100644 --- a/indra/newview/skins/default/xui/en/widgets/text.xml +++ b/indra/newview/skins/default/xui/en/widgets/text.xml @@ -8,7 +8,7 @@ halign="left" h_pad="0" allow_scroll="false" - text_readonly_color="LabelDisabledColor" + text_readonly_color="LabelTextColor" bg_writeable_color="FloaterDefaultBackgroundColor" use_ellipses="false" bg_visible="false" diff --git a/indra/newview/skins/default/xui/en/widgets/text_editor.xml b/indra/newview/skins/default/xui/en/widgets/text_editor.xml index 2ced8b1b4b..af2e17fc3f 100644 --- a/indra/newview/skins/default/xui/en/widgets/text_editor.xml +++ b/indra/newview/skins/default/xui/en/widgets/text_editor.xml @@ -2,4 +2,5 @@ -- cgit v1.2.3 From 7844914b03c062596812cdad1feffff700bcd45c Mon Sep 17 00:00:00 2001 From: Monroe Linden Date: Thu, 15 Jul 2010 17:07:05 -0700 Subject: Fix for EXT-8230 LLPanelMediaSettingsPermissions::initValues() was referencing both XUI elements that don't exist and strings that don't appear in strings.xml. Also fixed a number of elements in panel_media_settings_permissions.xml and floater_tools.xml that weren't graying out properly when non-editable items were selected, and some mixed up image attributes that made the media "gear" icon states look wrong. --- indra/newview/llpanelface.cpp | 10 ---------- indra/newview/llpanelmediasettingspermissions.cpp | 20 +++++++++++--------- indra/newview/skins/default/xui/en/floater_tools.xml | 15 +++++++++++---- .../xui/en/panel_media_settings_permissions.xml | 15 ++++++++++----- 4 files changed, 32 insertions(+), 28 deletions(-) (limited to 'indra') diff --git a/indra/newview/llpanelface.cpp b/indra/newview/llpanelface.cpp index 7d5be39074..e3503c065b 100644 --- a/indra/newview/llpanelface.cpp +++ b/indra/newview/llpanelface.cpp @@ -505,8 +505,6 @@ void LLPanelFace::getState() // Texture scale { - childSetEnabled("tex scale",editable); - //mLabelTexScale->setEnabled( editable ); F32 scale_s = 1.f; struct f2 : public LLSelectedTEGetFunctor { @@ -577,7 +575,6 @@ void LLPanelFace::getState() // Texture rotation { - childSetEnabled("tex rotate",editable); F32 rotation = 0.f; struct f6 : public LLSelectedTEGetFunctor { @@ -720,14 +717,9 @@ void LLPanelFace::getState() if (selected_texgen == 1) { - childSetText("tex scale",getString("string repeats per meter")); childSetValue("TexScaleU", 2.0f * childGetValue("TexScaleU").asReal() ); childSetValue("TexScaleV", 2.0f * childGetValue("TexScaleV").asReal() ); } - else - { - childSetText("tex scale",getString("string repeats per face")); - } } @@ -802,9 +794,7 @@ void LLPanelFace::getState() } childSetEnabled("color trans",FALSE); childSetEnabled("rpt",FALSE); - childSetEnabled("tex scale",FALSE); childSetEnabled("tex offset",FALSE); - childSetEnabled("tex rotate",FALSE); childSetEnabled("tex gen",FALSE); childSetEnabled("label shininess",FALSE); childSetEnabled("label bumpiness",FALSE); diff --git a/indra/newview/llpanelmediasettingspermissions.cpp b/indra/newview/llpanelmediasettingspermissions.cpp index e5caaaaffc..7779ac6392 100644 --- a/indra/newview/llpanelmediasettingspermissions.cpp +++ b/indra/newview/llpanelmediasettingspermissions.cpp @@ -107,7 +107,6 @@ void LLPanelMediaSettingsPermissions::draw() if(mPermsGroupName) { mPermsGroupName->setNameID(group_id, true); - mPermsGroupName->setEnabled(true); }; } else @@ -116,7 +115,6 @@ void LLPanelMediaSettingsPermissions::draw() { mPermsGroupName->setNameID(LLUUID::null, TRUE); mPermsGroupName->refresh(LLUUID::null, LLStringUtil::null, LLStringUtil::null, true); - mPermsGroupName->setEnabled(false); }; }; } @@ -142,6 +140,12 @@ void LLPanelMediaSettingsPermissions::clearValues( void* userdata, bool editable self->mPermsGroupControl->setEnabled(editable); self->mPermsWorldInteract->setEnabled(editable); self->mPermsWorldControl->setEnabled(editable); + + self->getChild< LLTextBox >("controls_label")->setEnabled(editable); + self->getChild< LLTextBox >("owner_label")->setEnabled(editable); + self->getChild< LLTextBox >("group_label")->setEnabled(editable); + self->getChild< LLNameBox >("perms_group_name")->setEnabled(editable); + self->getChild< LLTextBox >("anyone_label")->setEnabled(editable); } //////////////////////////////////////////////////////////////////////////////// @@ -216,13 +220,11 @@ void LLPanelMediaSettingsPermissions::initValues( void* userdata, const LLSD& me self->mPermsWorldControl->setEnabled(false); } - - self->childSetEnabled("media_perms_label_owner", editable ); - self->childSetText("media_perms_label_owner", LLTrans::getString("Media Perms Owner") ); - self->childSetEnabled("media_perms_label_group", editable ); - self->childSetText("media_perms_label_group", LLTrans::getString("Media Perms Group") ); - self->childSetEnabled("media_perms_label_anyone", editable ); - self->childSetText("media_perms_label_anyone", LLTrans::getString("Media Perms Anyone") ); + self->getChild< LLTextBox >("controls_label")->setEnabled(editable); + self->getChild< LLTextBox >("owner_label")->setEnabled(editable); + self->getChild< LLTextBox >("group_label")->setEnabled(editable); + self->getChild< LLNameBox >("perms_group_name")->setEnabled(editable); + self->getChild< LLTextBox >("anyone_label")->setEnabled(editable); } //////////////////////////////////////////////////////////////////////////////// diff --git a/indra/newview/skins/default/xui/en/floater_tools.xml b/indra/newview/skins/default/xui/en/floater_tools.xml index a96dbe3553..514b0a501b 100644 --- a/indra/newview/skins/default/xui/en/floater_tools.xml +++ b/indra/newview/skins/default/xui/en/floater_tools.xml @@ -2322,6 +2322,7 @@ even though the user gets a free copy. layout="topleft" left_pad="15" name="color trans" + text_readonly_color="LabelDisabledColor" top="6" width="110"> Transparency % @@ -2346,6 +2347,7 @@ even though the user gets a free copy. layout="topleft" left_delta="0" name="glow label" + text_readonly_color="LabelDisabledColor" top_pad="8" width="80"> Glow @@ -2376,6 +2378,7 @@ even though the user gets a free copy. layout="topleft" left="10" name="tex gen" + text_readonly_color="LabelDisabledColor" top_pad="5" width="90"> Mapping @@ -2404,6 +2407,7 @@ even though the user gets a free copy. layout="topleft" name="label shininess" left_pad="4" + text_readonly_color="LabelDisabledColor" top_pad="-36" width="90"> Shininess @@ -2440,6 +2444,7 @@ even though the user gets a free copy. layout="topleft" left_pad="4" name="label bumpiness" + text_readonly_color="LabelDisabledColor" top_pad="-36" width="90"> Bumpiness @@ -2565,7 +2570,8 @@ even though the user gets a free copy. height="10" layout="topleft" left="10" - name="tex scale" + name="rpt" + text_readonly_color="LabelDisabledColor" top_pad="4" width="200"> Repeats / Face @@ -2654,6 +2660,7 @@ even though the user gets a free copy. layout="topleft" left="10" name="tex offset" + text_readonly_color="LabelDisabledColor" width="200"> Texture Offset @@ -2737,9 +2744,9 @@ even though the user gets a free copy. follows="top|left" tool_tip="Edit this Media" height="12" - image_disabled="Icon_Gear_Foreground" - image_selected="Icon_Gear_Background" - image_unselected="Icon_Gear_Press" + image_disabled="Icon_Gear_Background" + image_selected="Icon_Gear_Press" + image_unselected="Icon_Gear_Foreground" layout="topleft" left_pad="10" name="edit_media" diff --git a/indra/newview/skins/default/xui/en/panel_media_settings_permissions.xml b/indra/newview/skins/default/xui/en/panel_media_settings_permissions.xml index c5f44cd049..d3a58fed58 100644 --- a/indra/newview/skins/default/xui/en/panel_media_settings_permissions.xml +++ b/indra/newview/skins/default/xui/en/panel_media_settings_permissions.xml @@ -16,7 +16,8 @@ follows="top|left" height="15" left="10" - name="controls_label"> + name="controls_label" + text_readonly_color="LabelDisabledColor"> Controls: + name="owner_label" + text_readonly_color="LabelDisabledColor"> Owner @@ -83,8 +85,9 @@ enabled="false" follows="top|left" height="15" - left="10" - name="group_label"> + left="10" + name="group_label" + text_readonly_color="LabelDisabledColor"> Group: @@ -95,6 +98,7 @@ font="SansSerif" height="20" left="60" name="perms_group_name" + text_readonly_color="LabelDisabledColor" value ="" width="200" /> @@ -132,7 +136,8 @@ follows="top|left" height="15" left="10" - name="anyone_label"> + name="anyone_label" + text_readonly_color="LabelDisabledColor"> Anyone -- cgit v1.2.3