From 33a56087faaf65da3d391aa6923f065b198a54d9 Mon Sep 17 00:00:00 2001
From: Sergei Litovchuk <slitovchuk@productengine.com>
Date: Thu, 5 Nov 2009 18:09:15 +0200
Subject: [PATCH] - Fixed EXT-2054 "Hook up parcel permission icons to parcel
 profile" implementation: moved icon file names to XML.

--HG--
branch : product-engine
---
 indra/newview/llpanelplaceprofile.cpp         | 69 ++++++++++++++-----
 .../default/xui/en/panel_place_profile.xml    | 55 ++++++++++++---
 2 files changed, 97 insertions(+), 27 deletions(-)

diff --git a/indra/newview/llpanelplaceprofile.cpp b/indra/newview/llpanelplaceprofile.cpp
index b2a9f6f2513..81f4f1f569a 100644
--- a/indra/newview/llpanelplaceprofile.cpp
+++ b/indra/newview/llpanelplaceprofile.cpp
@@ -55,6 +55,23 @@
 
 static LLRegisterPanelClassWrapper<LLPanelPlaceProfile> t_place_profile("panel_place_profile");
 
+// Statics for textures filenames
+static std::string icon_pg;
+static std::string icon_m;
+static std::string icon_r;
+static std::string icon_voice;
+static std::string icon_voice_no;
+static std::string icon_fly;
+static std::string icon_fly_no;
+static std::string icon_push;
+static std::string icon_push_no;
+static std::string icon_build;
+static std::string icon_build_no;
+static std::string icon_scripts;
+static std::string icon_scripts_no;
+static std::string icon_damage;
+static std::string icon_damage_no;
+
 LLPanelPlaceProfile::LLPanelPlaceProfile()
 :	LLPanelPlaceInfo(),
 	mForSalePanel(NULL),
@@ -119,6 +136,22 @@ BOOL LLPanelPlaceProfile::postBuild()
 	mResaleText = getChild<LLTextEditor>("resale");
 	mSaleToText = getChild<LLTextBox>("sale_to");
 
+	icon_pg = getString("icon_PG");
+	icon_m = getString("icon_M");
+	icon_r = getString("icon_R");
+	icon_voice = getString("icon_Voice");
+	icon_voice_no = getString("icon_VoiceNo");
+	icon_fly = getString("icon_Fly");
+	icon_fly_no = getString("icon_FlyNo");
+	icon_push = getString("icon_Push");
+	icon_push_no = getString("icon_PushNo");
+	icon_build = getString("icon_Build");
+	icon_build_no = getString("icon_BuildNo");
+	icon_scripts = getString("icon_Scripts");
+	icon_scripts_no = getString("icon_ScriptsNo");
+	icon_damage = getString("icon_Damage");
+	icon_damage_no = getString("icon_DamageNo");
+
 	return TRUE;
 }
 
@@ -231,22 +264,22 @@ void LLPanelPlaceProfile::displaySelectedParcelInfo(LLParcel* parcel,
 	case SIM_ACCESS_MATURE:
 		parcel_data.flags = 0x1;
 
-		mParcelRatingIcon->setValue("parcel_drk_M");
-		mRegionRatingIcon->setValue("parcel_drk_M");
+		mParcelRatingIcon->setValue(icon_m);
+		mRegionRatingIcon->setValue(icon_m);
 		break;
 
 	case SIM_ACCESS_ADULT:
 		parcel_data.flags = 0x2;
 
-		mParcelRatingIcon->setValue("parcel_drk_R");
-		mRegionRatingIcon->setValue("parcel_drk_R");
+		mParcelRatingIcon->setValue(icon_r);
+		mRegionRatingIcon->setValue(icon_r);
 		break;
 
 	default:
 		parcel_data.flags = 0;
 
-		mParcelRatingIcon->setValue("parcel_drk_PG");
-		mRegionRatingIcon->setValue("parcel_drk_PG");
+		mParcelRatingIcon->setValue(icon_pg);
+		mRegionRatingIcon->setValue(icon_pg);
 	}
 
 	std::string rating = LLViewerRegion::accessToString(sim_access);
@@ -270,45 +303,45 @@ void LLPanelPlaceProfile::displaySelectedParcelInfo(LLParcel* parcel,
 	// Processing parcel characteristics
 	if (parcel->getParcelFlagAllowVoice())
 	{
-		mVoiceIcon->setValue("parcel_drk_Voice");
+		mVoiceIcon->setValue(icon_voice);
 		mVoiceText->setText(on);
 	}
 	else
 	{
-		mVoiceIcon->setValue("parcel_drk_VoiceNo");
+		mVoiceIcon->setValue(icon_voice_no);
 		mVoiceText->setText(off);
 	}
 
 	if (!region->getBlockFly() && parcel->getAllowFly())
 	{
-		mFlyIcon->setValue("parcel_drk_Fly");
+		mFlyIcon->setValue(icon_fly);
 		mFlyText->setText(on);
 	}
 	else
 	{
-		mFlyIcon->setValue("parcel_drk_FlyNo");
+		mFlyIcon->setValue(icon_fly_no);
 		mFlyText->setText(off);
 	}
 
 	if (region->getRestrictPushObject() || parcel->getRestrictPushObject())
 	{
-		mPushIcon->setValue("parcel_drk_PushNo");
+		mPushIcon->setValue(icon_push_no);
 		mPushText->setText(off);
 	}
 	else
 	{
-		mPushIcon->setValue("parcel_drk_Push");
+		mPushIcon->setValue(icon_push);
 		mPushText->setText(on);
 	}
 
 	if (parcel->getAllowModify())
 	{
-		mBuildIcon->setValue("parcel_drk_Build");
+		mBuildIcon->setValue(icon_build);
 		mBuildText->setText(on);
 	}
 	else
 	{
-		mBuildIcon->setValue("parcel_drk_BuildNo");
+		mBuildIcon->setValue(icon_build_no);
 		mBuildText->setText(off);
 	}
 
@@ -316,23 +349,23 @@ void LLPanelPlaceProfile::displaySelectedParcelInfo(LLParcel* parcel,
 	   (region->getRegionFlags() & REGION_FLAGS_ESTATE_SKIP_SCRIPTS) ||
 	   !parcel->getAllowOtherScripts())
 	{
-		mScriptsIcon->setValue("parcel_drk_ScriptsNo");
+		mScriptsIcon->setValue(icon_scripts_no);
 		mScriptsText->setText(off);
 	}
 	else
 	{
-		mScriptsIcon->setValue("parcel_drk_Scripts");
+		mScriptsIcon->setValue(icon_scripts);
 		mScriptsText->setText(on);
 	}
 
 	if (region->getAllowDamage() || parcel->getAllowDamage())
 	{
-		mDamageIcon->setValue("parcel_drk_Damage");
+		mDamageIcon->setValue(icon_damage);
 		mDamageText->setText(on);
 	}
 	else
 	{
-		mDamageIcon->setValue("parcel_drk_DamageNo");
+		mDamageIcon->setValue(icon_damage_no);
 		mDamageText->setText(off);
 	}
 
diff --git a/indra/newview/skins/default/xui/en/panel_place_profile.xml b/indra/newview/skins/default/xui/en/panel_place_profile.xml
index 4dc65fa7363..34a5f96f2b0 100644
--- a/indra/newview/skins/default/xui/en/panel_place_profile.xml
+++ b/indra/newview/skins/default/xui/en/panel_place_profile.xml
@@ -92,6 +92,52 @@
      name="acquired_date">
         [wkday,datetime,local] [mth,datetime,local] [day,datetime,local] [hour,datetime,local]:[min,datetime,local]:[second,datetime,local] [year,datetime,local]
     </string>
+    <!-- Texture names for parcel permissions icons -->
+    <string
+     name="icon_PG"
+     value="parcel_drk_PG" />
+    <string
+     name="icon_M"
+     value="parcel_drk_M" />
+    <string
+     name="icon_R"
+     value="parcel_drk_R" />
+    <string
+     name="icon_Voice"
+     value="parcel_drk_Voice" />
+    <string
+     name="icon_VoiceNo"
+     value="parcel_drk_VoiceNo" />
+    <string
+     name="icon_Fly"
+     value="parcel_drk_Fly" />
+    <string
+     name="icon_FlyNo"
+     value="parcel_drk_FlyNo" />
+    <string
+     name="icon_Push"
+     value="parcel_drk_Push" />
+    <string
+     name="icon_PushNo"
+     value="parcel_drk_PushNo" />
+    <string
+     name="icon_Build"
+     value="parcel_drk_Build" />
+    <string
+     name="icon_BuildNo"
+     value="parcel_drk_BuildNo" />
+    <string
+     name="icon_Scripts"
+     value="parcel_drk_Scripts" />
+    <string
+     name="icon_ScriptsNo"
+     value="parcel_drk_ScriptsNo" />
+    <string
+     name="icon_Damage"
+     value="parcel_drk_Damage" />
+    <string
+     name="icon_DamageNo"
+     value="parcel_drk_DamageNo" />
     <button
      follows="top|right"
      height="23"
@@ -212,15 +258,6 @@
              use_ellipses="true"
              value="SampleRegion"
              width="290" />
-       <!-- <icon
-             follows="top|right"
-             height="16"
-             image_name="Icon_For_Sale"
-             layout="topleft"
-             left="3"
-             mouse_opaque="true"
-             name="icon_for_sale"
-             width="16" />-->
             <text
              follows="left|top|right"
              height="14"
-- 
GitLab