63 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			C#
		
	
	
	
			
		
		
	
	
			63 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			C#
		
	
	
	
| // EasyTouch library is copyright (c) of Hedgehog Team
 | |
| // Please send feedback or bug reports to the.hedgehog.team@gmail.com
 | |
| 
 | |
| using UnityEngine;
 | |
| using UnityEditor;
 | |
| using System;
 | |
| using HedgehogTeam.EasyTouch;
 | |
| 
 | |
| [InitializeOnLoad]
 | |
| public class EasytouchHierachyCallBack{
 | |
| 	
 | |
| 	private static readonly EditorApplication.HierarchyWindowItemCallback hiearchyItemCallback;
 | |
| 	private static Texture2D hierarchyIcon;
 | |
| 	private static Texture2D HierarchyIcon {
 | |
| 		get {
 | |
| 			if (EasytouchHierachyCallBack.hierarchyIcon==null){
 | |
| 				EasytouchHierachyCallBack.hierarchyIcon = (Texture2D)Resources.Load( "EasyTouch_Icon");
 | |
| 			}
 | |
| 			return EasytouchHierachyCallBack.hierarchyIcon;
 | |
| 		}
 | |
| 	}	
 | |
| 
 | |
| 	private static Texture2D hierarchyEventIcon;
 | |
| 	private static Texture2D HierarchyEventIcon {
 | |
| 		get {
 | |
| 			if (EasytouchHierachyCallBack.hierarchyEventIcon==null){
 | |
| 				EasytouchHierachyCallBack.hierarchyEventIcon = (Texture2D)Resources.Load( "EasyTouchTrigger_Icon");
 | |
| 			}
 | |
| 			return EasytouchHierachyCallBack.hierarchyEventIcon;
 | |
| 		}
 | |
| 	}
 | |
| 
 | |
| 
 | |
| 	// constructor
 | |
| 	static EasytouchHierachyCallBack()
 | |
| 	{
 | |
| 		EasytouchHierachyCallBack.hiearchyItemCallback = new EditorApplication.HierarchyWindowItemCallback(EasytouchHierachyCallBack.DrawHierarchyIcon);
 | |
| 		EditorApplication.hierarchyWindowItemOnGUI = (EditorApplication.HierarchyWindowItemCallback)Delegate.Combine(EditorApplication.hierarchyWindowItemOnGUI, EasytouchHierachyCallBack.hiearchyItemCallback);
 | |
| 		
 | |
| 	}
 | |
| 	
 | |
| 	private static void DrawHierarchyIcon(int instanceID, Rect selectionRect)
 | |
| 	{
 | |
| 		GameObject gameObject = EditorUtility.InstanceIDToObject(instanceID) as GameObject;
 | |
| 
 | |
| 		if (gameObject != null){
 | |
| 			Rect rect = new Rect(selectionRect.x + selectionRect.width - 16f, selectionRect.y, 16f, 16f);
 | |
| 			if ( gameObject.GetComponent<EasyTouch>() != null){
 | |
| 				GUI.DrawTexture( rect,EasytouchHierachyCallBack.HierarchyIcon);
 | |
| 			}
 | |
| 			else if (gameObject.GetComponent<QuickBase>() != null){
 | |
| 				GUI.DrawTexture( rect,EasytouchHierachyCallBack.HierarchyEventIcon);
 | |
| 			}
 | |
| #if FALSE
 | |
| 			else if (gameObject.GetComponent<EasyTouchSceneProxy>() != null){
 | |
| 				GUI.DrawTexture( rect,EasytouchHierachyCallBack.HierarchyIcon);
 | |
| 			}
 | |
| #endif
 | |
| 		}
 | |
| 	}
 | |
| 		
 | |
| }
 |