| 123456789101112131415161718192021222324252627282930313233343536373839404142434445 | 
							- using System.Linq;
 
- using UnityEditor;
 
- using UnityEngine;
 
- namespace EnhancedHierarchy.Icons {
 
-     public sealed class RendererToggle : IconBase {
 
-         private Renderer renderer;
 
-         public override IconPosition Side { get { return IconPosition.All; } }
 
-         public override string Name { get { return "Renderer"; } }
 
-         public override Texture2D PreferencesPreview { get { return Utility.GetBackground(Styles.rendererToggleStyle, true); } }
 
-         //public override string PreferencesTooltip { get { return "Some tag for the tooltip here"; } }
 
-         public override void Init() {
 
-             renderer = EnhancedHierarchy.Components.FirstOrDefault(c => c is Renderer)as Renderer;
 
-         }
 
-         public override float Width { get { return renderer ? base.Width : 0; } }
 
-         public override void DoGUI(Rect rect) {
 
-             if (!renderer)
 
-                 return;
 
-             using(new GUIBackgroundColor(renderer.enabled ? Styles.backgroundColorEnabled : Styles.backgroundColorDisabled)) {
 
-                 GUI.changed = false;
 
-                 GUI.Toggle(rect, renderer, Styles.rendererContent, Styles.rendererToggleStyle);
 
-                 if (!GUI.changed)
 
-                     return;
 
-                 var objs = GetSelectedObjectsAndCurrent().SelectMany(go => go.GetComponents<Renderer>());
 
-                 var active = !renderer.enabled;
 
-                 Undo.RecordObjects(objs.ToArray(), renderer.enabled ? "Disabled renderer" : "Enabled renderer");
 
-                 foreach (var obj in objs)
 
-                     obj.enabled = active;
 
-             }
 
-         }
 
-     }
 
- }
 
 
  |