123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237 |
- using UnityEngine;
- using System.Collections;
- using UnityEditor;
- using HedgehogTeam.EasyTouch;
- #if UNITY_5_3
- using UnityEditor.SceneManagement;
- #endif
- [CustomEditor(typeof(EasyTouch))]
- public class EasyTouchInspector : Editor {
-
- public override void OnInspectorGUI(){
-
- EasyTouch t = (EasyTouch)target;
- #region General properties
- EditorGUILayout.Space();
- t.enable = HTGuiTools.Toggle("Enable EasyTouch", t.enable,true);
- t.enableRemote = HTGuiTools.Toggle("Enable Unity Remote", t.enableRemote,true);
- EditorGUILayout.Space();
- #endregion
- #region Gui propertie
- t.showGuiInspector = HTGuiTools.BeginFoldOut( "GUI compatibilty",t.showGuiInspector);
- if (t.showGuiInspector){
- HTGuiTools.BeginGroup();{
- // UGUI
-
- EditorGUILayout.Space();
- t.allowUIDetection = HTGuiTools.Toggle("Enable Unity UI detection",t.allowUIDetection,true);
- if (t.allowUIDetection ){
- EditorGUI.indentLevel++;
- t.enableUIMode = HTGuiTools.Toggle("Unity UI compatibilty", t.enableUIMode,true);
- t.autoUpdatePickedUI = HTGuiTools.Toggle("Auto update picked Unity UI", t.autoUpdatePickedUI,true);
- EditorGUI.indentLevel--;
- }
- EditorGUILayout.Space();
- // NGUI
- t.enabledNGuiMode = HTGuiTools.Toggle("Enable NGUI compatibilty", t.enabledNGuiMode,true);
- if (t.enabledNGuiMode){
- //EditorGUI.indentLevel++;
- HTGuiTools.BeginGroup(5);
- {
- // layers
- serializedObject.Update();
- SerializedProperty layers = serializedObject.FindProperty("nGUILayers");
- EditorGUILayout.PropertyField( layers,false);
- serializedObject.ApplyModifiedProperties();
-
- // Camera
- if (HTGuiTools.Button("Add camera",Color.green,100, false)){
- t.nGUICameras.Add( null);
- }
- for (int i=0;i< t.nGUICameras.Count;i++){
- EditorGUILayout.BeginHorizontal();
- if (HTGuiTools.Button("X",Color.red,19)){
- t.nGUICameras.RemoveAt(i);
- i--;
- }
- else{
- t.nGUICameras[i] = (Camera)EditorGUILayout.ObjectField("",t.nGUICameras[i],typeof(Camera),true);
- EditorGUILayout.EndHorizontal();
- }
- }
- }HTGuiTools.EndGroup();
- //EditorGUI.indentLevel--;
- }
-
- }HTGuiTools.EndGroup();
- }
-
- #endregion
- #region Auto selection properties
- t.showSelectInspector = HTGuiTools.BeginFoldOut( "Automatic selection",t.showSelectInspector);
- if (t.showSelectInspector){
- HTGuiTools.BeginGroup();{
- t.autoSelect = HTGuiTools.Toggle("Enable auto-select",t.autoSelect,true);
- if (t.autoSelect){
- EditorGUILayout.Space();
- // 3d layer
- serializedObject.Update();
- SerializedProperty layers = serializedObject.FindProperty("pickableLayers3D");
- EditorGUILayout.PropertyField( layers,true);
- serializedObject.ApplyModifiedProperties();
- t.autoUpdatePickedObject = HTGuiTools.Toggle( "Auto update picked gameobject",t.autoUpdatePickedObject,true);
- EditorGUILayout.Space();
- //2D
- t.enable2D = HTGuiTools.Toggle("Enable 2D collider",t.enable2D,true);
- if (t.enable2D){
- serializedObject.Update();
- layers = serializedObject.FindProperty("pickableLayers2D");
- EditorGUILayout.PropertyField( layers,true);
- serializedObject.ApplyModifiedProperties();
- }
- // Camera
- GUILayout.Space(5f);
- HTGuiTools.BeginGroup(5);
- {
- if (HTGuiTools.Button( "Add Camera",Color.green,100)){
- t.touchCameras.Add(new ECamera(null,false));
- }
- for (int i=0;i< t.touchCameras.Count;i++){
- EditorGUILayout.BeginHorizontal();
- if (HTGuiTools.Button("X",Color.red,19)){
- t.touchCameras.RemoveAt(i);
- i--;
- }
- if (i>=0){
- t.touchCameras[i].camera = (Camera)EditorGUILayout.ObjectField("",t.touchCameras[i].camera,typeof(Camera),true,GUILayout.MinWidth(150));
- t.touchCameras[i].guiCamera = EditorGUILayout.ToggleLeft("Gui",t.touchCameras[i].guiCamera,GUILayout.Width(50));
- EditorGUILayout.EndHorizontal();
- }
- }
- }HTGuiTools.EndGroup();
- }
- }HTGuiTools.EndGroup();
- }
- #endregion
- #region General gesture properties
- t.showGestureInspector = HTGuiTools.BeginFoldOut("General gesture properties",t.showGestureInspector);
- if (t.showGestureInspector){
- HTGuiTools.BeginGroup();{
- t.gesturePriority =(EasyTouch.GesturePriority) EditorGUILayout.EnumPopup("Priority to",t.gesturePriority );
- t.StationaryTolerance = EditorGUILayout.FloatField("Stationary tolerance",t.StationaryTolerance);
- t.longTapTime = EditorGUILayout.FloatField("Long tap time",t.longTapTime);
- EditorGUILayout.Space ();
- t.doubleTapDetection = (EasyTouch.DoubleTapDetection) EditorGUILayout.EnumPopup("Double tap detection",t.doubleTapDetection);
- if (t.doubleTapDetection == EasyTouch.DoubleTapDetection.ByTime){
- t.doubleTapTime = EditorGUILayout.Slider("Double tap time",t.doubleTapTime,0.15f,0.4f);
- }
- EditorGUILayout.Space ();
- t.swipeTolerance = EditorGUILayout.FloatField("Swipe tolerance",t.swipeTolerance);
- t.alwaysSendSwipe = EditorGUILayout.Toggle("always sent swipe event",t.alwaysSendSwipe);
- }HTGuiTools.EndGroup();
- }
- #endregion
- #region 2 fingers gesture
- t.showTwoFingerInspector = HTGuiTools.BeginFoldOut("Two fingers gesture properties",t.showTwoFingerInspector);
- if (t.showTwoFingerInspector){
- HTGuiTools.BeginGroup();{
- t.enable2FingersGesture = HTGuiTools.Toggle("2 fingers gesture",t.enable2FingersGesture,true);
- if (t.enable2FingersGesture){
- EditorGUI.indentLevel++;
- t.twoFingerPickMethod = (EasyTouch.TwoFingerPickMethod)EditorGUILayout.EnumPopup("Pick method",t.twoFingerPickMethod);
- EditorGUILayout.Separator();
- t.enable2FingersSwipe = HTGuiTools.Toggle("Enable swipe & drag",t.enable2FingersSwipe,true);
- EditorGUILayout.Separator();
- t.enablePinch = HTGuiTools.Toggle("Enable Pinch",t.enablePinch,true);
- if (t.enablePinch){
- t.minPinchLength = EditorGUILayout.FloatField("Min pinch length",t.minPinchLength);
- }
- EditorGUILayout.Separator();
- t.enableTwist = HTGuiTools.Toggle("Enable twist",t.enableTwist,true);
- if (t.enableTwist){
- t.minTwistAngle = EditorGUILayout.FloatField("Min twist angle",t.minTwistAngle);
- }
-
- EditorGUI.indentLevel--;
- }
- }HTGuiTools.EndGroup();
- }
-
- #endregion
- #region Second Finger simulation
- t.showSecondFingerInspector = HTGuiTools.BeginFoldOut("Second finger simulation", t.showSecondFingerInspector);
- if (t.showSecondFingerInspector){
- HTGuiTools.BeginGroup();{
- t.enableSimulation = HTGuiTools.Toggle("Enable simulation",t.enableSimulation,true );
- EditorGUILayout.Space();
- if (t.enableSimulation){
- EditorGUI.indentLevel++;
- if (t.secondFingerTexture==null){
- t.secondFingerTexture =Resources.Load("secondFinger") as Texture;
- }
-
- t.secondFingerTexture = (Texture)EditorGUILayout.ObjectField("Texture",t.secondFingerTexture,typeof(Texture),true);
- EditorGUILayout.HelpBox("Change the keys settings for a fash compilation, or if you want to change the keys",MessageType.Info);
- t.twistKey = (KeyCode)EditorGUILayout.EnumPopup( "Twist & pinch key", t.twistKey);
- t.swipeKey = (KeyCode)EditorGUILayout.EnumPopup( "Swipe key", t.swipeKey);
- EditorGUI.indentLevel--;
- }
- }HTGuiTools.EndGroup();
- }
- #endregion
- if (GUI.changed){
- EditorUtility.SetDirty(target);
- #if UNITY_5_3
- EditorSceneManager.MarkSceneDirty( EditorSceneManager.GetActiveScene());
- #endif
- }
- }
- }
|