當前位置: 首頁>>代碼示例>>C#>>正文


C# SerializedProperty.DeleteCommand方法代碼示例

本文整理匯總了C#中UnityEditor.SerializedProperty.DeleteCommand方法的典型用法代碼示例。如果您正苦於以下問題:C# SerializedProperty.DeleteCommand方法的具體用法?C# SerializedProperty.DeleteCommand怎麽用?C# SerializedProperty.DeleteCommand使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在UnityEditor.SerializedProperty的用法示例。


在下文中一共展示了SerializedProperty.DeleteCommand方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。

示例1: SinglePropertyField


//.........這裏部分代碼省略.........
         }
         int controlID3 = GetControlID(s_GenericField, FocusType.Keyboard, position);
         EditorGUI.PrefixLabel(position, controlID3, label);
     IL_326: ;
     }
     else
     {
         int controlID4 = GetControlID(s_FoldoutHash, FocusType.Passive, position);
         EventType type = Event.current.type;
         if (type != EventType.DragUpdated && type != EventType.DragPerform)
         {
             if (type == EventType.DragExited)
             {
                 if (GUI.enabled)
                 {
                     HandleUtility.Repaint();
                 }
             }
         }
         else
         {
             if (position.Contains(Event.current.mousePosition) && GUI.enabled)
             {
                 Object[] objectReferences = DragAndDrop.objectReferences;
                 Object[] array = new Object[1];
                 bool flag2 = false;
                 Object[] array2 = objectReferences;
                 for (int i = 0; i < array2.Length; i++)
                 {
                     Object @object = array2[i];
                     array[0] = @object;
                     Object object2 = ValidateObjectFieldAssignment(array, null, property);
                     if (object2 != null)
                     {
                         DragAndDrop.visualMode = DragAndDropVisualMode.Copy;
                         if (Event.current.type == EventType.DragPerform)
                         {
                             property.AppendFoldoutPPtrValue(object2);
                             flag2 = true;
                             DragAndDrop.activeControlID = 0;
                         }
                         else
                         {
                             DragAndDrop.activeControlID = controlID4;
                         }
                     }
                 }
                 if (flag2)
                 {
                     GUI.changed = true;
                     DragAndDrop.AcceptDrag();
                     Event.current.Use();
                 }
             }
         }
         flag = property.isExpanded;
         if (lookLikeInspector)
         {
             int num = EditorStyles.foldout.padding.left - EditorStyles.label.padding.left;
             position.x -= (float)num;
             position.width += (float)num;
         }
         GUI.enabled &= property.editable;
         GUIStyle style = (DragAndDrop.activeControlID != -10) ? EditorStyles.foldout : EditorStyles.foldoutPreDrop;
         bool flag3 = EditorGUI.Foldout(position, flag, s_PropertyFieldTempContent, true, style);
         if (flag3 != flag)
         {
             if (Event.current.alt)
             {
                 SetExpandedRecurse(property, flag3);
             }
             else
             {
                 property.isExpanded = flag3;
             }
         }
         flag = flag3;
     }
     EditorGUI.EndProperty();
     if (Event.current.type == EventType.ExecuteCommand || Event.current.type == EventType.ValidateCommand)
     {
         if (GUIUtility.keyboardControl == lastControlID && (Event.current.commandName == "Delete" || Event.current.commandName == "SoftDelete"))
         {
             if (Event.current.type == EventType.ExecuteCommand)
             {
                 property.DeleteCommand();
             }
             Event.current.Use();
         }
         if (GUIUtility.keyboardControl == lastControlID && Event.current.commandName == "Duplicate")
         {
             if (Event.current.type == EventType.ExecuteCommand)
             {
                 property.DuplicateCommand();
             }
             Event.current.Use();
         }
     }
     return flag;
 }
開發者ID:QuantumCD,項目名稱:unity-tooltips,代碼行數:101,代碼來源:TooltipDrawer.cs

示例2: MessageInfoField

    // ------------------------------------------------------------------
    // Desc:
    // ------------------------------------------------------------------
    protected void MessageInfoField( string _label, SerializedProperty _infoProp )
    {
        ++EditorGUI.indentLevel;
        EditorGUILayout.BeginHorizontal(new GUILayoutOption[0]);
            // label
            EditorGUILayout.LabelField(_label, GUILayout.Width(50));

            // receiver
            EditorGUILayout.PropertyField( _infoProp.FindPropertyRelative ( "receiver" ), new GUIContent(""), GUILayout.MaxWidth(150) );

            // method
            EditorGUIUtility.LookLikeControls ();
                EditorGUILayout.PropertyField ( _infoProp.FindPropertyRelative ( "method" ), new GUIContent(""), new GUILayoutOption[] { GUILayout.MaxWidth(200), GUILayout.ExpandWidth(true) } );
            EditorGUIUtility.LookLikeInspector ();

            // remove button
            Color oldBGColor = GUI.backgroundColor;
            Color oldCTColor = GUI.contentColor;
            GUI.backgroundColor = Color.red;
            GUI.contentColor = Color.yellow;
            if ( GUILayout.Button( "-", GUILayout.Width(20) ) )
                _infoProp.DeleteCommand();

            GUI.backgroundColor = oldBGColor;
            GUI.contentColor = oldCTColor;
        EditorGUILayout.EndHorizontal();
        --EditorGUI.indentLevel;
    }
開發者ID:exdev,項目名稱:ex2d-v1,代碼行數:31,代碼來源:exUIElementEditor.cs


注:本文中的UnityEditor.SerializedProperty.DeleteCommand方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。