public override void DrawAsInspector()
        {
            base.DrawAsInspector();

            CGME.ActionSelect action_select = (action as CGME.ActionSelect);


            EditorGUILayout.BeginHorizontal();
            {
                //action.Source = (CGME.SelectionSource)(EditorGUILayout.EnumPopup("Source", action.Source)) ;
                action_select.Source = (CGME.SelectionSource)(Display.EnumPopup(this, "Source", action_select.Source));
                switch (action_select.Source)
                {
                case CGME.SelectionSource.Type:
                    //action.SourceCGType = EditorGUILayout.TextField("CGType",action.SourceCGType);
                    action_select.SourceCGType = Display.TextField(this, "Type", action_select.SourceCGType);
                    break;
                }
            }
            EditorGUILayout.EndHorizontal();

            EditorGUILayout.BeginHorizontal();
            {
                action_select.Mode = (CGME.SelectionMode)(EditorGUILayout.EnumPopup("Mode", action_select.Mode));

                switch (action_select.Mode)
                {
                case CGME.SelectionMode.Type:
                    //action.TargetCGType = EditorGUILayout.TextField("CGType",action.TargetCGType);
                    action_select.TargetCGType = Display.TextField(this, "CGType", action_select.TargetCGType);
                    break;

                case CGME.SelectionMode.Index:
                    //action.TargetIndex = EditorGUILayout.IntField("Index",action.TargetIndex);
                    action_select.TargetIndex = Display.IntField(this, "Index", action_select.TargetIndex);
                    break;
                }
            }
            EditorGUILayout.EndHorizontal();
        }
        // DISPLAY ACTION SELECT

        void DisplayBody(CGME.ActionSelect action)
        {
            EditorGUI.indentLevel++;
            {
                EditorGUILayout.BeginHorizontal();
                {
                    //action.Source = (CGME.SelectionSource)(EditorGUILayout.EnumPopup("Source", action.Source)) ;
                    action.Source = (CGME.SelectionSource)(Display.EnumPopup(Target, "Source", action.Source));
                    switch (action.Source)
                    {
                    case CGME.SelectionSource.Type:
                        //action.SourceCGType = EditorGUILayout.TextField("CGType",action.SourceCGType);
                        action.SourceCGType = Display.TextField(Target, "Type", action.SourceCGType);
                        break;
                    }
                }
                EditorGUILayout.EndHorizontal();

                EditorGUILayout.BeginHorizontal();
                {
                    action.Mode = (CGME.SelectionMode)(EditorGUILayout.EnumPopup("Mode", action.Mode));

                    switch (action.Mode)
                    {
                    case CGME.SelectionMode.Type:
                        //action.TargetCGType = EditorGUILayout.TextField("CGType",action.TargetCGType);
                        action.TargetCGType = Display.TextField(Target, "CGType", action.TargetCGType);
                        break;

                    case CGME.SelectionMode.Index:
                        //action.TargetIndex = EditorGUILayout.IntField("Index",action.TargetIndex);
                        action.TargetIndex = Display.IntField(Target, "Index", action.TargetIndex);
                        break;
                    }
                }
                EditorGUILayout.EndHorizontal();
            }
            EditorGUI.indentLevel--;
        }