public void ObjectSettings()
 {
     if (LightingWindowObjectTab.s_Styles == null)
     {
         LightingWindowObjectTab.s_Styles = new LightingWindowObjectTab.Styles();
     }
     SceneModeUtility.SearchBar(typeof(Light), typeof(Renderer), typeof(Terrain));
     EditorGUILayout.Space();
     if (false | this.EditRenderers() | this.EditLightmapParameters() | this.EditLights() | this.EditTerrains())
     {
         return;
     }
     GUILayout.Label(LightingWindowObjectTab.s_Styles.EmptySelection, EditorStyles.helpBox, new GUILayoutOption[0]);
 }
        public void ObjectSettings()
        {
            if (LightingWindowObjectTab.s_Styles == null)
            {
                LightingWindowObjectTab.s_Styles = new LightingWindowObjectTab.Styles();
            }
            SceneModeUtility.SearchBar(new Type[]
            {
                typeof(Light),
                typeof(Renderer),
                typeof(Terrain)
            });
            EditorGUILayout.Space();
            bool flag = false;

            flag |= this.EditRenderers();
            flag |= this.EditLightmapParameters();
            flag |= this.EditLights();
            if (!(flag | this.EditTerrains()))
            {
                GUILayout.Label(LightingWindowObjectTab.s_Styles.EmptySelection, EditorStyles.helpBox, new GUILayoutOption[0]);
            }
        }
        public void ObjectPreview(Rect r)
        {
            if (r.height <= 0f)
            {
                return;
            }
            if (LightingWindowObjectTab.s_Styles == null)
            {
                LightingWindowObjectTab.s_Styles = new LightingWindowObjectTab.Styles();
            }
            List <Texture2D> list = new List <Texture2D>();

            GITextureType[] array = this.kObjectPreviewTextureTypes;
            for (int i = 0; i < array.Length; i++)
            {
                GITextureType textureType = array[i];
                list.Add(LightmapVisualizationUtility.GetGITexture(textureType));
            }
            if (list.Count == 0)
            {
                return;
            }
            if (this.m_ZoomablePreview == null)
            {
                this.m_ZoomablePreview           = new ZoomableArea(true);
                this.m_ZoomablePreview.hRangeMin = 0f;
                this.m_ZoomablePreview.vRangeMin = 0f;
                this.m_ZoomablePreview.hRangeMax = 1f;
                this.m_ZoomablePreview.vRangeMax = 1f;
                this.m_ZoomablePreview.SetShownHRange(0f, 1f);
                this.m_ZoomablePreview.SetShownVRange(0f, 1f);
                this.m_ZoomablePreview.uniformScale    = true;
                this.m_ZoomablePreview.scaleWithWindow = true;
            }
            GUI.Box(r, string.Empty, "PreBackground");
            Rect position = new Rect(r);

            position.y     += 1f;
            position.height = 18f;
            GUI.Box(position, string.Empty, EditorStyles.toolbar);
            Rect rect = new Rect(r);

            rect.y     += 1f;
            rect.height = 18f;
            rect.width  = 120f;
            Rect rect2 = new Rect(r);

            rect2.yMin  += rect.height;
            rect2.yMax  -= 14f;
            rect2.width -= 11f;
            int num = Array.IndexOf <GUIContent>(LightingWindowObjectTab.kObjectPreviewTextureOptions, this.m_SelectedObjectPreviewTexture);

            if (num < 0)
            {
                num = 0;
            }
            num = EditorGUI.Popup(rect, num, LightingWindowObjectTab.kObjectPreviewTextureOptions, EditorStyles.toolbarPopup);
            if (num >= LightingWindowObjectTab.kObjectPreviewTextureOptions.Length)
            {
                num = 0;
            }
            this.m_SelectedObjectPreviewTexture = LightingWindowObjectTab.kObjectPreviewTextureOptions[num];
            LightmapType lightmapType = (this.kObjectPreviewTextureTypes[num] != GITextureType.Baked && this.kObjectPreviewTextureTypes[num] != GITextureType.BakedDirectional) ? LightmapType.DynamicLightmap : LightmapType.StaticLightmap;
            bool         flag         = (this.kObjectPreviewTextureTypes[num] == GITextureType.Baked || this.kObjectPreviewTextureTypes[num] == GITextureType.BakedDirectional) && LightmapSettings.lightmapsMode == LightmapsMode.SeparateDirectional;

            if (flag)
            {
                GUIContent gUIContent = GUIContent.Temp("Indirect");
                Rect       position2  = rect;
                position2.x    += rect.width;
                position2.width = EditorStyles.toolbarButton.CalcSize(gUIContent).x;
                this.m_HasSeparateIndirectUV = GUI.Toggle(position2, this.m_HasSeparateIndirectUV, gUIContent.text, EditorStyles.toolbarButton);
            }
            Event     current = Event.current;
            EventType type    = current.type;

            if (type != EventType.ValidateCommand && type != EventType.ExecuteCommand)
            {
                if (type == EventType.Repaint)
                {
                    Texture2D texture2D = list[num];
                    if (texture2D && Event.current.type == EventType.Repaint)
                    {
                        Rect rect3 = new Rect(0f, 0f, (float)texture2D.width, (float)texture2D.height);
                        rect3 = this.ResizeRectToFit(rect3, rect2);
                        rect3 = this.CenterToRect(rect3, rect2);
                        rect3 = this.ScaleRectByZoomableArea(rect3, this.m_ZoomablePreview);
                        Rect position3 = new Rect(rect3);
                        position3.x += 3f;
                        position3.y += rect2.y + 20f;
                        Rect drawableArea = new Rect(rect2);
                        drawableArea.y += rect.height + 3f;
                        float num2 = drawableArea.y - 14f;
                        position3.y    -= num2;
                        drawableArea.y -= num2;
                        FilterMode filterMode = texture2D.filterMode;
                        texture2D.filterMode = FilterMode.Point;
                        GITextureType textureType2   = this.kObjectPreviewTextureTypes[num];
                        bool          drawSpecularUV = flag && this.m_HasSeparateIndirectUV;
                        LightmapVisualizationUtility.DrawTextureWithUVOverlay(texture2D, Selection.activeGameObject, drawableArea, position3, textureType2, drawSpecularUV);
                        texture2D.filterMode = filterMode;
                    }
                }
            }
            else if (Event.current.commandName == "FrameSelected")
            {
                Vector4 lightmapTilingOffset = LightmapVisualizationUtility.GetLightmapTilingOffset(lightmapType);
                Vector2 vector = new Vector2(lightmapTilingOffset.z, lightmapTilingOffset.w);
                Vector2 lhs    = vector + new Vector2(lightmapTilingOffset.x, lightmapTilingOffset.y);
                vector = Vector2.Max(vector, Vector2.zero);
                lhs    = Vector2.Min(lhs, Vector2.one);
                float y = 1f - vector.y;
                vector.y = 1f - lhs.y;
                lhs.y    = y;
                Rect shownArea = new Rect(vector.x, vector.y, lhs.x - vector.x, lhs.y - vector.y);
                shownArea.x -= Mathf.Clamp(shownArea.height - shownArea.width, 0f, 3.40282347E+38f) / 2f;
                shownArea.y -= Mathf.Clamp(shownArea.width - shownArea.height, 0f, 3.40282347E+38f) / 2f;
                float num3 = Mathf.Max(shownArea.width, shownArea.height);
                shownArea.height = num3;
                shownArea.width  = num3;
                if (flag && this.m_HasSeparateIndirectUV)
                {
                    shownArea.x += 0.5f;
                }
                this.m_ZoomablePreview.shownArea = shownArea;
                Event.current.Use();
            }
            if (this.m_PreviousSelection != Selection.activeInstanceID)
            {
                this.m_PreviousSelection = Selection.activeInstanceID;
                this.m_ZoomablePreview.SetShownHRange(0f, 1f);
                this.m_ZoomablePreview.SetShownVRange(0f, 1f);
            }
            Rect rect4 = new Rect(r);

            rect4.yMin += rect.height;
            this.m_ZoomablePreview.rect = rect4;
            this.m_ZoomablePreview.BeginViewGUI();
            this.m_ZoomablePreview.EndViewGUI();
            GUILayoutUtility.GetRect(r.width, r.height);
        }
 public void ObjectPreview(Rect r)
 {
   if ((double) r.height <= 0.0)
     return;
   if (LightingWindowObjectTab.s_Styles == null)
     LightingWindowObjectTab.s_Styles = new LightingWindowObjectTab.Styles();
   List<Texture2D> texture2DList = new List<Texture2D>();
   foreach (GITextureType previewTextureType in this.kObjectPreviewTextureTypes)
     texture2DList.Add(LightmapVisualizationUtility.GetGITexture(previewTextureType));
   if (texture2DList.Count == 0)
     return;
   if (this.m_ZoomablePreview == null)
   {
     this.m_ZoomablePreview = new ZoomableArea(true);
     this.m_ZoomablePreview.hRangeMin = 0.0f;
     this.m_ZoomablePreview.vRangeMin = 0.0f;
     this.m_ZoomablePreview.hRangeMax = 1f;
     this.m_ZoomablePreview.vRangeMax = 1f;
     this.m_ZoomablePreview.SetShownHRange(0.0f, 1f);
     this.m_ZoomablePreview.SetShownVRange(0.0f, 1f);
     this.m_ZoomablePreview.uniformScale = true;
     this.m_ZoomablePreview.scaleWithWindow = true;
   }
   GUI.Box(r, string.Empty, (GUIStyle) "PreBackground");
   Rect position1 = new Rect(r);
   ++position1.y;
   position1.height = 18f;
   GUI.Box(position1, string.Empty, EditorStyles.toolbar);
   Rect position2 = new Rect(r);
   ++position2.y;
   position2.height = 18f;
   position2.width = 120f;
   Rect rect1 = new Rect(r);
   rect1.yMin += position2.height;
   rect1.yMax -= 14f;
   rect1.width -= 11f;
   int selectedIndex = Array.IndexOf<GUIContent>(LightingWindowObjectTab.kObjectPreviewTextureOptions, this.m_SelectedObjectPreviewTexture);
   if (selectedIndex < 0)
     selectedIndex = 0;
   int index = EditorGUI.Popup(position2, selectedIndex, LightingWindowObjectTab.kObjectPreviewTextureOptions, EditorStyles.toolbarPopup);
   if (index >= LightingWindowObjectTab.kObjectPreviewTextureOptions.Length)
     index = 0;
   this.m_SelectedObjectPreviewTexture = LightingWindowObjectTab.kObjectPreviewTextureOptions[index];
   LightmapType lightmapType = this.kObjectPreviewTextureTypes[index] == GITextureType.Baked || this.kObjectPreviewTextureTypes[index] == GITextureType.BakedDirectional ? LightmapType.StaticLightmap : LightmapType.DynamicLightmap;
   SerializedProperty property = new SerializedObject(LightmapEditorSettings.GetLightmapSettings()).FindProperty("m_LightmapsMode");
   bool flag = (this.kObjectPreviewTextureTypes[index] == GITextureType.Baked || this.kObjectPreviewTextureTypes[index] == GITextureType.BakedDirectional) && property.intValue == 2;
   if (flag)
   {
     GUIContent content = GUIContent.Temp("Indirect");
     Rect position3 = position2;
     position3.x += position2.width;
     position3.width = EditorStyles.toolbarButton.CalcSize(content).x;
     this.m_HasSeparateIndirectUV = GUI.Toggle(position3, this.m_HasSeparateIndirectUV, content.text, EditorStyles.toolbarButton);
   }
   switch (Event.current.type)
   {
     case EventType.ValidateCommand:
     case EventType.ExecuteCommand:
       if (Event.current.commandName == "FrameSelected")
       {
         Vector4 lightmapTilingOffset = LightmapVisualizationUtility.GetLightmapTilingOffset(lightmapType);
         Vector2 lhs1 = new Vector2(lightmapTilingOffset.z, lightmapTilingOffset.w);
         Vector2 lhs2 = lhs1 + new Vector2(lightmapTilingOffset.x, lightmapTilingOffset.y);
         lhs1 = Vector2.Max(lhs1, Vector2.zero);
         Vector2 vector2 = Vector2.Min(lhs2, Vector2.one);
         float num1 = 1f - lhs1.y;
         lhs1.y = 1f - vector2.y;
         vector2.y = num1;
         Rect rect2 = new Rect(lhs1.x, lhs1.y, vector2.x - lhs1.x, vector2.y - lhs1.y);
         rect2.x -= Mathf.Clamp(rect2.height - rect2.width, 0.0f, float.MaxValue) / 2f;
         rect2.y -= Mathf.Clamp(rect2.width - rect2.height, 0.0f, float.MaxValue) / 2f;
         // ISSUE: explicit reference operation
         // ISSUE: variable of a reference type
         Rect& local = @rect2;
         float num2 = Mathf.Max(rect2.width, rect2.height);
         rect2.height = num2;
         double num3 = (double) num2;
         // ISSUE: explicit reference operation
         (^local).width = (float) num3;
         if (flag && this.m_HasSeparateIndirectUV)
           rect2.x += 0.5f;
         this.m_ZoomablePreview.shownArea = rect2;
         Event.current.Use();
         break;
       }
       break;
     case EventType.Repaint:
       Texture2D texture = texture2DList[index];
       if ((bool) ((UnityEngine.Object) texture) && Event.current.type == EventType.Repaint)
       {
         Rect position3 = new Rect(this.ScaleRectByZoomableArea(this.CenterToRect(this.ResizeRectToFit(new Rect(0.0f, 0.0f, (float) texture.width, (float) texture.height), rect1), rect1), this.m_ZoomablePreview));
         position3.x += 3f;
         position3.y += rect1.y + 20f;
         Rect drawableArea = new Rect(rect1);
         drawableArea.y += position2.height + 3f;
         float num = drawableArea.y - 14f;
         position3.y -= num;
         drawableArea.y -= num;
         UnityEngine.FilterMode filterMode = texture.filterMode;
         texture.filterMode = UnityEngine.FilterMode.Point;
         GITextureType previewTextureType = this.kObjectPreviewTextureTypes[index];
         bool drawSpecularUV = flag && this.m_HasSeparateIndirectUV;
         LightmapVisualizationUtility.DrawTextureWithUVOverlay(texture, Selection.activeGameObject, drawableArea, position3, previewTextureType, drawSpecularUV);
         texture.filterMode = filterMode;
         break;
       }
       break;
   }
   if (this.m_PreviousSelection != Selection.activeInstanceID)
   {
     this.m_PreviousSelection = Selection.activeInstanceID;
     this.m_ZoomablePreview.SetShownHRange(0.0f, 1f);
     this.m_ZoomablePreview.SetShownVRange(0.0f, 1f);
   }
   Rect rect3 = new Rect(r);
   rect3.yMin += position2.height;
   this.m_ZoomablePreview.rect = rect3;
   this.m_ZoomablePreview.BeginViewGUI();
   this.m_ZoomablePreview.EndViewGUI();
   GUILayoutUtility.GetRect(r.width, r.height);
 }
 public void ObjectSettings()
 {
   if (LightingWindowObjectTab.s_Styles == null)
     LightingWindowObjectTab.s_Styles = new LightingWindowObjectTab.Styles();
   SceneModeUtility.SearchBar(typeof (Light), typeof (Renderer), typeof (Terrain));
   EditorGUILayout.Space();
   if (false | this.EditRenderers() | this.EditLightmapParameters() | this.EditLights() | this.EditTerrains())
     return;
   GUILayout.Label(LightingWindowObjectTab.s_Styles.EmptySelection, EditorStyles.helpBox, new GUILayoutOption[0]);
 }
        public void ObjectPreview(Rect r)
        {
            if ((double)r.height <= 0.0)
            {
                return;
            }
            if (LightingWindowObjectTab.s_Styles == null)
            {
                LightingWindowObjectTab.s_Styles = new LightingWindowObjectTab.Styles();
            }
            List <Texture2D> texture2DList = new List <Texture2D>();

            foreach (GITextureType previewTextureType in this.kObjectPreviewTextureTypes)
            {
                texture2DList.Add(LightmapVisualizationUtility.GetGITexture(previewTextureType));
            }
            if (texture2DList.Count == 0)
            {
                return;
            }
            if (this.m_ZoomablePreview == null)
            {
                this.m_ZoomablePreview           = new ZoomableArea(true);
                this.m_ZoomablePreview.hRangeMin = 0.0f;
                this.m_ZoomablePreview.vRangeMin = 0.0f;
                this.m_ZoomablePreview.hRangeMax = 1f;
                this.m_ZoomablePreview.vRangeMax = 1f;
                this.m_ZoomablePreview.SetShownHRange(0.0f, 1f);
                this.m_ZoomablePreview.SetShownVRange(0.0f, 1f);
                this.m_ZoomablePreview.uniformScale    = true;
                this.m_ZoomablePreview.scaleWithWindow = true;
            }
            GUI.Box(r, string.Empty, (GUIStyle)"PreBackground");
            Rect position1 = new Rect(r);

            ++position1.y;
            position1.height = 18f;
            GUI.Box(position1, string.Empty, EditorStyles.toolbar);
            Rect position2 = new Rect(r);

            ++position2.y;
            position2.height = 18f;
            position2.width  = 120f;
            Rect rect1 = new Rect(r);

            rect1.yMin  += position2.height;
            rect1.yMax  -= 14f;
            rect1.width -= 11f;
            int selectedIndex = Array.IndexOf <GUIContent>(LightingWindowObjectTab.kObjectPreviewTextureOptions, this.m_SelectedObjectPreviewTexture);

            if (selectedIndex < 0)
            {
                selectedIndex = 0;
            }
            int index = EditorGUI.Popup(position2, selectedIndex, LightingWindowObjectTab.kObjectPreviewTextureOptions, EditorStyles.toolbarPopup);

            if (index >= LightingWindowObjectTab.kObjectPreviewTextureOptions.Length)
            {
                index = 0;
            }
            this.m_SelectedObjectPreviewTexture = LightingWindowObjectTab.kObjectPreviewTextureOptions[index];
            LightmapType       lightmapType = this.kObjectPreviewTextureTypes[index] == GITextureType.Baked || this.kObjectPreviewTextureTypes[index] == GITextureType.BakedDirectional ? LightmapType.StaticLightmap : LightmapType.DynamicLightmap;
            SerializedProperty property     = new SerializedObject(LightmapEditorSettings.GetLightmapSettings()).FindProperty("m_LightmapsMode");
            bool flag = (this.kObjectPreviewTextureTypes[index] == GITextureType.Baked || this.kObjectPreviewTextureTypes[index] == GITextureType.BakedDirectional) && property.intValue == 2;

            if (flag)
            {
                GUIContent content   = GUIContent.Temp("Indirect");
                Rect       position3 = position2;
                position3.x    += position2.width;
                position3.width = EditorStyles.toolbarButton.CalcSize(content).x;
                this.m_HasSeparateIndirectUV = GUI.Toggle(position3, this.m_HasSeparateIndirectUV, content.text, EditorStyles.toolbarButton);
            }
            switch (Event.current.type)
            {
            case EventType.ValidateCommand:
            case EventType.ExecuteCommand:
                if (Event.current.commandName == "FrameSelected")
                {
                    Vector4 lightmapTilingOffset = LightmapVisualizationUtility.GetLightmapTilingOffset(lightmapType);
                    Vector2 lhs1 = new Vector2(lightmapTilingOffset.z, lightmapTilingOffset.w);
                    Vector2 lhs2 = lhs1 + new Vector2(lightmapTilingOffset.x, lightmapTilingOffset.y);
                    lhs1 = Vector2.Max(lhs1, Vector2.zero);
                    Vector2 vector2 = Vector2.Min(lhs2, Vector2.one);
                    float   num1    = 1f - lhs1.y;
                    lhs1.y    = 1f - vector2.y;
                    vector2.y = num1;
                    Rect rect2 = new Rect(lhs1.x, lhs1.y, vector2.x - lhs1.x, vector2.y - lhs1.y);
                    rect2.x -= Mathf.Clamp(rect2.height - rect2.width, 0.0f, float.MaxValue) / 2f;
                    rect2.y -= Mathf.Clamp(rect2.width - rect2.height, 0.0f, float.MaxValue) / 2f;
                    // ISSUE: explicit reference operation
                    // ISSUE: variable of a reference type
                    Rect& local = @rect2;
                    float num2  = Mathf.Max(rect2.width, rect2.height);
                    rect2.height = num2;
                    double num3 = (double)num2;
                    // ISSUE: explicit reference operation
                    (^ local).width = (float)num3;
                    if (flag && this.m_HasSeparateIndirectUV)
                    {
                        rect2.x += 0.5f;
                    }
                    this.m_ZoomablePreview.shownArea = rect2;
                    Event.current.Use();
                    break;
                }
                break;

            case EventType.Repaint:
                Texture2D texture = texture2DList[index];
                if ((bool)((UnityEngine.Object)texture) && Event.current.type == EventType.Repaint)
                {
                    Rect position3 = new Rect(this.ScaleRectByZoomableArea(this.CenterToRect(this.ResizeRectToFit(new Rect(0.0f, 0.0f, (float)texture.width, (float)texture.height), rect1), rect1), this.m_ZoomablePreview));
                    position3.x += 3f;
                    position3.y += rect1.y + 20f;
                    Rect drawableArea = new Rect(rect1);
                    drawableArea.y += position2.height + 3f;
                    float num = drawableArea.y - 14f;
                    position3.y    -= num;
                    drawableArea.y -= num;
                    UnityEngine.FilterMode filterMode = texture.filterMode;
                    texture.filterMode = UnityEngine.FilterMode.Point;
                    GITextureType previewTextureType = this.kObjectPreviewTextureTypes[index];
                    bool          drawSpecularUV     = flag && this.m_HasSeparateIndirectUV;
                    LightmapVisualizationUtility.DrawTextureWithUVOverlay(texture, Selection.activeGameObject, drawableArea, position3, previewTextureType, drawSpecularUV);
                    texture.filterMode = filterMode;
                    break;
                }
                break;
            }
            if (this.m_PreviousSelection != Selection.activeInstanceID)
            {
                this.m_PreviousSelection = Selection.activeInstanceID;
                this.m_ZoomablePreview.SetShownHRange(0.0f, 1f);
                this.m_ZoomablePreview.SetShownVRange(0.0f, 1f);
            }
            Rect rect3 = new Rect(r);

            rect3.yMin += position2.height;
            this.m_ZoomablePreview.rect = rect3;
            this.m_ZoomablePreview.BeginViewGUI();
            this.m_ZoomablePreview.EndViewGUI();
            GUILayoutUtility.GetRect(r.width, r.height);
        }
		public void ObjectPreview(Rect r)
		{
			if (r.height <= 0f)
			{
				return;
			}
			if (LightingWindowObjectTab.s_Styles == null)
			{
				LightingWindowObjectTab.s_Styles = new LightingWindowObjectTab.Styles();
			}
			List<Texture2D> list = new List<Texture2D>();
			GITextureType[] array = this.kObjectPreviewTextureTypes;
			for (int i = 0; i < array.Length; i++)
			{
				GITextureType textureType = array[i];
				list.Add(LightmapVisualizationUtility.GetGITexture(textureType));
			}
			if (list.Count == 0)
			{
				return;
			}
			if (this.m_ZoomablePreview == null)
			{
				this.m_ZoomablePreview = new ZoomableArea(true);
				this.m_ZoomablePreview.hRangeMin = 0f;
				this.m_ZoomablePreview.vRangeMin = 0f;
				this.m_ZoomablePreview.hRangeMax = 1f;
				this.m_ZoomablePreview.vRangeMax = 1f;
				this.m_ZoomablePreview.SetShownHRange(0f, 1f);
				this.m_ZoomablePreview.SetShownVRange(0f, 1f);
				this.m_ZoomablePreview.uniformScale = true;
				this.m_ZoomablePreview.scaleWithWindow = true;
			}
			GUI.Box(r, string.Empty, "PreBackground");
			Rect position = new Rect(r);
			position.y += 1f;
			position.height = 18f;
			GUI.Box(position, string.Empty, EditorStyles.toolbar);
			Rect rect = new Rect(r);
			rect.y += 1f;
			rect.height = 18f;
			rect.width = 120f;
			Rect rect2 = new Rect(r);
			rect2.yMin += rect.height;
			rect2.yMax -= 14f;
			rect2.width -= 11f;
			int num = Array.IndexOf<GUIContent>(LightingWindowObjectTab.kObjectPreviewTextureOptions, this.m_SelectedObjectPreviewTexture);
			if (num < 0)
			{
				num = 0;
			}
			num = EditorGUI.Popup(rect, num, LightingWindowObjectTab.kObjectPreviewTextureOptions, EditorStyles.toolbarPopup);
			if (num >= LightingWindowObjectTab.kObjectPreviewTextureOptions.Length)
			{
				num = 0;
			}
			this.m_SelectedObjectPreviewTexture = LightingWindowObjectTab.kObjectPreviewTextureOptions[num];
			LightmapType lightmapType = (this.kObjectPreviewTextureTypes[num] != GITextureType.Baked && this.kObjectPreviewTextureTypes[num] != GITextureType.BakedDirectional) ? LightmapType.DynamicLightmap : LightmapType.StaticLightmap;
			SerializedObject serializedObject = new SerializedObject(LightmapEditorSettings.GetLightmapSettings());
			SerializedProperty serializedProperty = serializedObject.FindProperty("m_LightmapsMode");
			bool flag = (this.kObjectPreviewTextureTypes[num] == GITextureType.Baked || this.kObjectPreviewTextureTypes[num] == GITextureType.BakedDirectional) && serializedProperty.intValue == 2;
			if (flag)
			{
				GUIContent gUIContent = GUIContent.Temp("Indirect");
				Rect position2 = rect;
				position2.x += rect.width;
				position2.width = EditorStyles.toolbarButton.CalcSize(gUIContent).x;
				this.m_HasSeparateIndirectUV = GUI.Toggle(position2, this.m_HasSeparateIndirectUV, gUIContent.text, EditorStyles.toolbarButton);
			}
			Event current = Event.current;
			EventType type = current.type;
			if (type != EventType.ValidateCommand && type != EventType.ExecuteCommand)
			{
				if (type == EventType.Repaint)
				{
					Texture2D texture2D = list[num];
					if (texture2D && Event.current.type == EventType.Repaint)
					{
						Rect rect3 = new Rect(0f, 0f, (float)texture2D.width, (float)texture2D.height);
						rect3 = this.ResizeRectToFit(rect3, rect2);
						rect3 = this.CenterToRect(rect3, rect2);
						rect3 = this.ScaleRectByZoomableArea(rect3, this.m_ZoomablePreview);
						Rect position3 = new Rect(rect3);
						position3.x += 3f;
						position3.y += rect2.y + 20f;
						Rect drawableArea = new Rect(rect2);
						drawableArea.y += rect.height + 3f;
						float num2 = drawableArea.y - 14f;
						position3.y -= num2;
						drawableArea.y -= num2;
						texture2D.filterMode = FilterMode.Point;
						GITextureType textureType2 = this.kObjectPreviewTextureTypes[num];
						bool drawSpecularUV = flag && this.m_HasSeparateIndirectUV;
						LightmapVisualizationUtility.DrawTextureWithUVOverlay(texture2D, Selection.activeGameObject, drawableArea, position3, textureType2, drawSpecularUV);
					}
				}
			}
			else
			{
				if (Event.current.commandName == "FrameSelected")
				{
					Vector4 lightmapTilingOffset = LightmapVisualizationUtility.GetLightmapTilingOffset(lightmapType);
					Vector2 vector = new Vector2(lightmapTilingOffset.z, lightmapTilingOffset.w);
					Vector2 lhs = vector + new Vector2(lightmapTilingOffset.x, lightmapTilingOffset.y);
					vector = Vector2.Max(vector, Vector2.zero);
					lhs = Vector2.Min(lhs, Vector2.one);
					float y = 1f - vector.y;
					vector.y = 1f - lhs.y;
					lhs.y = y;
					Rect shownArea = new Rect(vector.x, vector.y, lhs.x - vector.x, lhs.y - vector.y);
					shownArea.x -= Mathf.Clamp(shownArea.height - shownArea.width, 0f, 3.40282347E+38f) / 2f;
					shownArea.y -= Mathf.Clamp(shownArea.width - shownArea.height, 0f, 3.40282347E+38f) / 2f;
					float num3 = Mathf.Max(shownArea.width, shownArea.height);
					shownArea.height = num3;
					shownArea.width = num3;
					if (flag && this.m_HasSeparateIndirectUV)
					{
						shownArea.x += 0.5f;
					}
					this.m_ZoomablePreview.shownArea = shownArea;
					Event.current.Use();
				}
			}
			if (this.m_PreviousSelection != Selection.activeInstanceID)
			{
				this.m_PreviousSelection = Selection.activeInstanceID;
				this.m_ZoomablePreview.SetShownHRange(0f, 1f);
				this.m_ZoomablePreview.SetShownVRange(0f, 1f);
			}
			Rect rect4 = new Rect(r);
			rect4.yMin += rect.height;
			this.m_ZoomablePreview.rect = rect4;
			this.m_ZoomablePreview.BeginViewGUI();
			this.m_ZoomablePreview.EndViewGUI();
			GUILayoutUtility.GetRect(r.width, r.height);
		}
		public void ObjectSettings()
		{
			if (LightingWindowObjectTab.s_Styles == null)
			{
				LightingWindowObjectTab.s_Styles = new LightingWindowObjectTab.Styles();
			}
			SceneModeUtility.SearchBar(new Type[]
			{
				typeof(Light),
				typeof(Renderer),
				typeof(Terrain)
			});
			EditorGUILayout.Space();
			bool flag = false;
			flag |= this.EditRenderers();
			flag |= this.EditLightmapParameters();
			flag |= this.EditLights();
			if (!(flag | this.EditTerrains()))
			{
				GUILayout.Label(LightingWindowObjectTab.s_Styles.EmptySelection, EditorStyles.helpBox, new GUILayoutOption[0]);
			}
		}