From cd46893057b9ec7d309059eff3f503cfaf46de56 Mon Sep 17 00:00:00 2001
From: "Nyx (Neal Orman)" <nyx@lindenlab.com>
Date: Thu, 27 May 2010 14:40:49 -0400
Subject: [PATCH] EXT-7209 EXT-7366 EXT-7213 FIX  EXT-7392 WIP

Final fixes for:
EXT-7209 camera to enter appearance edit mode
EXT-7366 change camera to face front of avatar in previews
EXT-7213 kill old appearance editor

Partial fix for:
EXT-7392 alpha mask checkboxes are not hooked up

All changes code reviewed by vir. Following commits (plus this one) reviewed with this checkin:
425d4e960450
15d04b6464a7
e92ae606de12
adc94512ea9b
24577dbbf7a4
6f28b241eae2

(sorry dessie! :) )
---
 indra/newview/CMakeLists.txt           | 2 --
 indra/newview/llagent.cpp              | 2 +-
 indra/newview/llagentcamera.cpp        | 2 +-
 indra/newview/llagentwearables.cpp     | 1 -
 indra/newview/llappearancemgr.cpp      | 1 -
 indra/newview/llinventorybridge.cpp    | 2 +-
 indra/newview/llinventoryfunctions.cpp | 1 -
 indra/newview/llmorphview.cpp          | 1 -
 indra/newview/llpaneleditwearable.cpp  | 1 +
 indra/newview/llpaneleditwearable.h    | 4 ++--
 indra/newview/lltoolmorph.cpp          | 1 -
 indra/newview/llviewerinventory.cpp    | 4 ++--
 indra/newview/llviewermenu.cpp         | 3 +--
 indra/newview/llviewerwindow.cpp       | 1 -
 indra/newview/llvoavatar.cpp           | 2 +-
 indra/newview/llwearable.cpp           | 1 -
 indra/newview/macview_Prefix.h         | 1 -
 17 files changed, 10 insertions(+), 20 deletions(-)

diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt
index ddd5d47e780..ea91ee9276b 100644
--- a/indra/newview/CMakeLists.txt
+++ b/indra/newview/CMakeLists.txt
@@ -164,7 +164,6 @@ set(viewer_SOURCE_FILES
     llfloaterbuyland.cpp
     llfloatercamera.cpp
     llfloatercolorpicker.cpp
-    llfloatercustomize.cpp
     llfloaterdaycycle.cpp
     llfloaterenvsettings.cpp
     llfloaterevent.cpp
@@ -683,7 +682,6 @@ set(viewer_HEADER_FILES
     llfloaterbuyland.h
     llfloatercamera.h
     llfloatercolorpicker.h
-    llfloatercustomize.h
     llfloaterdaycycle.h
     llfloaterenvsettings.h
     llfloaterevent.h
diff --git a/indra/newview/llagent.cpp b/indra/newview/llagent.cpp
index 7d84f8d071b..0fa77ff7c2a 100644
--- a/indra/newview/llagent.cpp
+++ b/indra/newview/llagent.cpp
@@ -45,7 +45,6 @@
 #include "llchannelmanager.h"
 #include "llconsole.h"
 #include "llfloatercamera.h"
-#include "llfloatercustomize.h"
 #include "llfloaterreg.h"
 #include "llfloatertools.h"
 #include "llgroupactions.h"
@@ -73,6 +72,7 @@
 #include "llviewerdisplay.h"
 #include "llviewerjoystick.h"
 #include "llviewermediafocus.h"
+#include "llviewermenu.h"
 #include "llviewerobjectlist.h"
 #include "llviewerparcelmgr.h"
 #include "llviewerstats.h"
diff --git a/indra/newview/llagentcamera.cpp b/indra/newview/llagentcamera.cpp
index d9eceec30da..47f290ad3b2 100644
--- a/indra/newview/llagentcamera.cpp
+++ b/indra/newview/llagentcamera.cpp
@@ -38,7 +38,6 @@
 #include "llagent.h"
 #include "llanimationstates.h"
 #include "llfloatercamera.h"
-#include "llfloatercustomize.h"
 #include "llfloaterreg.h"
 #include "llhudmanager.h"
 #include "lljoystickbutton.h"
@@ -48,6 +47,7 @@
 #include "llviewercamera.h"
 #include "llviewercontrol.h"
 #include "llviewerjoystick.h"
+#include "llviewermenu.h"
 #include "llviewerobjectlist.h"
 #include "llviewerregion.h"
 #include "llviewerwindow.h"
diff --git a/indra/newview/llagentwearables.cpp b/indra/newview/llagentwearables.cpp
index 1deba2e2e68..cc9e68d593d 100644
--- a/indra/newview/llagentwearables.cpp
+++ b/indra/newview/llagentwearables.cpp
@@ -39,7 +39,6 @@
 #include "llagentwearablesfetch.h"
 #include "llappearancemgr.h"
 #include "llcallbacklist.h"
-#include "llfloatercustomize.h"
 #include "llfolderview.h"
 #include "llgesturemgr.h"
 #include "llinventorybridge.h"
diff --git a/indra/newview/llappearancemgr.cpp b/indra/newview/llappearancemgr.cpp
index 5a4c30a3078..8cc44361887 100644
--- a/indra/newview/llappearancemgr.cpp
+++ b/indra/newview/llappearancemgr.cpp
@@ -38,7 +38,6 @@
 #include "llagentwearables.h"
 #include "llappearancemgr.h"
 #include "llcommandhandler.h"
-#include "llfloatercustomize.h"
 #include "llgesturemgr.h"
 #include "llinventorybridge.h"
 #include "llinventoryfunctions.h"
diff --git a/indra/newview/llinventorybridge.cpp b/indra/newview/llinventorybridge.cpp
index f3dfde03c3e..577652fc79e 100644
--- a/indra/newview/llinventorybridge.cpp
+++ b/indra/newview/llinventorybridge.cpp
@@ -41,7 +41,6 @@
 #include "llagentwearables.h"
 #include "llappearancemgr.h"
 #include "llavataractions.h"
-#include "llfloatercustomize.h"
 #include "llfloateropenobject.h"
 #include "llfloaterreg.h"
 #include "llfloaterworldmap.h"
@@ -66,6 +65,7 @@
 #include "llsidetray.h"
 #include "lltrans.h"
 #include "llviewerassettype.h"
+#include "llviewermenu.h"
 #include "llviewermessage.h"
 #include "llviewerobjectlist.h"
 #include "llviewerwindow.h"
diff --git a/indra/newview/llinventoryfunctions.cpp b/indra/newview/llinventoryfunctions.cpp
index c38d45f0f5f..f67d91cfa57 100644
--- a/indra/newview/llinventoryfunctions.cpp
+++ b/indra/newview/llinventoryfunctions.cpp
@@ -52,7 +52,6 @@
 #include "llappearancemgr.h"
 #include "llappviewer.h"
 //#include "llfirstuse.h"
-#include "llfloatercustomize.h"
 #include "llfocusmgr.h"
 #include "llfolderview.h"
 #include "llgesturemgr.h"
diff --git a/indra/newview/llmorphview.cpp b/indra/newview/llmorphview.cpp
index 27a27fb65a1..4c28e98e627 100644
--- a/indra/newview/llmorphview.cpp
+++ b/indra/newview/llmorphview.cpp
@@ -42,7 +42,6 @@
 #include "lldrawpoolavatar.h"
 #include "llface.h"
 //#include "llfirstuse.h"
-#include "llfloatercustomize.h"
 #include "llfloatertools.h"
 #include "llresmgr.h"
 #include "lltoolmgr.h"
diff --git a/indra/newview/llpaneleditwearable.cpp b/indra/newview/llpaneleditwearable.cpp
index 2ba39fca9cd..ecc3512abde 100644
--- a/indra/newview/llpaneleditwearable.cpp
+++ b/indra/newview/llpaneleditwearable.cpp
@@ -217,6 +217,7 @@ LLEditWearableDictionary::Wearables::Wearables()
 {
 	// note the subpart that is listed first is treated as "default", regardless of what order is in enum.
 	// Please match the order presented in XUI. -Nyx
+	// this will affect what camera angle is shown when first editing a wearable
 	addEntry(LLWearableType::WT_SHAPE, 		new WearableEntry(LLWearableType::WT_SHAPE,"edit_shape_title","shape_desc_text",0,0,9,	SUBPART_SHAPE_WHOLE, SUBPART_SHAPE_HEAD,	SUBPART_SHAPE_EYES,	SUBPART_SHAPE_EARS,	SUBPART_SHAPE_NOSE,	SUBPART_SHAPE_MOUTH, SUBPART_SHAPE_CHIN, SUBPART_SHAPE_TORSO, SUBPART_SHAPE_LEGS ));
 	addEntry(LLWearableType::WT_SKIN, 		new WearableEntry(LLWearableType::WT_SKIN,"edit_skin_title","skin_desc_text",0,3,4, TEX_HEAD_BODYPAINT, TEX_UPPER_BODYPAINT, TEX_LOWER_BODYPAINT, SUBPART_SKIN_COLOR, SUBPART_SKIN_FACEDETAIL, SUBPART_SKIN_MAKEUP, SUBPART_SKIN_BODYDETAIL));
 	addEntry(LLWearableType::WT_HAIR, 		new WearableEntry(LLWearableType::WT_HAIR,"edit_hair_title","hair_desc_text",0,1,4, TEX_HAIR, SUBPART_HAIR_COLOR,	SUBPART_HAIR_STYLE,	SUBPART_HAIR_EYEBROWS, SUBPART_HAIR_FACIAL));
diff --git a/indra/newview/llpaneleditwearable.h b/indra/newview/llpaneleditwearable.h
index 0af3758a4e2..0e2aebb6192 100644
--- a/indra/newview/llpaneleditwearable.h
+++ b/indra/newview/llpaneleditwearable.h
@@ -1,6 +1,6 @@
 /** 
- * @file llfloatercustomize.h
- * @brief The customize avatar floater, triggered by "Appearance..."
+ * @file llpaneleditwearable.h
+ * @brief A LLPanel dedicated to the editing of wearables.
  *
  * $LicenseInfo:firstyear=2009&license=viewergpl$
  * 
diff --git a/indra/newview/lltoolmorph.cpp b/indra/newview/lltoolmorph.cpp
index 22e15dcff25..c1dc1de5e5f 100644
--- a/indra/newview/lltoolmorph.cpp
+++ b/indra/newview/lltoolmorph.cpp
@@ -49,7 +49,6 @@
 #include "lldrawable.h"
 #include "lldrawpoolavatar.h"
 #include "llface.h"
-#include "llfloatercustomize.h"
 #include "llmorphview.h"
 #include "llresmgr.h"
 #include "llselectmgr.h"
diff --git a/indra/newview/llviewerinventory.cpp b/indra/newview/llviewerinventory.cpp
index 4dbede79daa..f8b6435614a 100644
--- a/indra/newview/llviewerinventory.cpp
+++ b/indra/newview/llviewerinventory.cpp
@@ -61,7 +61,6 @@
 #include "llviewerwindow.h"
 #include "lltrans.h"
 #include "llappearancemgr.h"
-#include "llfloatercustomize.h"
 #include "llcommandhandler.h"
 #include "llviewermessage.h"
 #include "llsidepanelappearance.h"
@@ -881,7 +880,8 @@ void WearOnAvatarCallback::fire(const LLUUID& inv_item)
 void ModifiedCOFCallback::fire(const LLUUID& inv_item)
 {
 	LLAppearanceMgr::instance().updateAppearanceFromCOF();
-	if( CAMERA_MODE_CUSTOMIZE_AVATAR == gAgentCamera.getCameraMode() )
+	// TODO: camera mode may not be changed if a debug setting is tweaked
+	if( gAgentCamera.cameraCustomizeAvatar() )
 	{
 		// If we're in appearance editing mode, the current tab may need to be refreshed
 		LLSidepanelAppearance *panel = dynamic_cast<LLSidepanelAppearance*>(LLSideTray::getInstance()->getPanel("sidepanel_appearance"));
diff --git a/indra/newview/llviewermenu.cpp b/indra/newview/llviewermenu.cpp
index b1b6db33059..69352e6685c 100644
--- a/indra/newview/llviewermenu.cpp
+++ b/indra/newview/llviewermenu.cpp
@@ -54,7 +54,6 @@
 #include "llfloaterbuy.h"
 #include "llfloaterbuycontents.h"
 #include "llbuycurrencyhtml.h"
-#include "llfloatercustomize.h"
 #include "llfloatergodtools.h"
 #include "llfloaterinventory.h"
 #include "llfloaterland.h"
@@ -3738,7 +3737,7 @@ void handle_reset_view()
 {
 	if (gAgentCamera.cameraCustomizeAvatar())
 	{
-		// switching to outfit editor should automagically save any currently edited wearable
+		// switching to outfit selector should automagically save any currently edited wearable
 		LLSideTray::getInstance()->showPanel("sidepanel_appearance", LLSD().with("type", "my_outfits"));
 	}
 
diff --git a/indra/newview/llviewerwindow.cpp b/indra/newview/llviewerwindow.cpp
index f72f122f8a8..8da49b2127e 100644
--- a/indra/newview/llviewerwindow.cpp
+++ b/indra/newview/llviewerwindow.cpp
@@ -106,7 +106,6 @@
 #include "llfloaterbuildoptions.h"
 #include "llfloaterbuyland.h"
 #include "llfloatercamera.h"
-#include "llfloatercustomize.h"
 #include "llfloaterland.h"
 #include "llfloaterinspect.h"
 #include "llfloatermap.h"
diff --git a/indra/newview/llvoavatar.cpp b/indra/newview/llvoavatar.cpp
index a1637c47240..c68609d5e9a 100644
--- a/indra/newview/llvoavatar.cpp
+++ b/indra/newview/llvoavatar.cpp
@@ -7899,7 +7899,7 @@ BOOL LLVOAvatar::isTextureVisible(LLVOAvatarDefines::ETextureIndex type, U32 ind
 		// baked textures can use TE images directly
 		return ((isTextureDefined(type) || isSelf())
 				&& (getTEImage(type)->getID() != IMG_INVISIBLE 
-					|| LLDrawPoolAlpha::sShowDebugAlpha));
+				|| LLDrawPoolAlpha::sShowDebugAlpha));
 	}
 }
 
diff --git a/indra/newview/llwearable.cpp b/indra/newview/llwearable.cpp
index 0fcb257e741..9e9b46473e8 100644
--- a/indra/newview/llwearable.cpp
+++ b/indra/newview/llwearable.cpp
@@ -36,7 +36,6 @@
 #include "llagentcamera.h"
 #include "llagentwearables.h"
 #include "lldictionary.h"
-#include "llfloatercustomize.h"
 #include "lllocaltextureobject.h"
 #include "llnotificationsutil.h"
 #include "llviewertexturelist.h"
diff --git a/indra/newview/macview_Prefix.h b/indra/newview/macview_Prefix.h
index a71362a139e..07f80934268 100644
--- a/indra/newview/macview_Prefix.h
+++ b/indra/newview/macview_Prefix.h
@@ -65,7 +65,6 @@
 #include "llfloater.h"
 #include "llfloaterbuildoptions.h"
 #include "llfloaterchat.h"
-#include "llfloatercustomize.h"
 #include "llfloatergroups.h"
 #include "llfloaterworldmap.h"
 #include "llfloatermute.h"
-- 
GitLab