Example #1
0
    public override void OnInspectorGUI()
    {
        serializedObject.Update();

        itemsListProp.isExpanded = EditorGUILayout.Foldout(itemsListProp.isExpanded, new GUIContent("Items list"), true);
        if (itemsListProp.isExpanded)
        {
            EditorGUI.indentLevel++;
            itemsListProp.arraySize = EditorGUILayout.IntField(new GUIContent("Size"), itemsListProp.arraySize);
            for (int i = 0; i < itemsListProp.arraySize; i++)
            {
                EditorGUILayout.ObjectField(itemsListProp.GetArrayElementAtIndex(i), new GUIContent($"Item {i}"));
            }
            EditorGUI.indentLevel--;
        }

        EditorGUILayout.Separator();

        EditorGUILayout.PropertyField(strIdProp);

        EditorGUILayout.PropertyField(idProp);

        if (GUILayout.Button("Open Editor"))
        {
            ItemDataEditorWindow.Open((ItemGroup)target);
        }

        serializedObject.ApplyModifiedProperties();
    }
Example #2
0
    public static bool OpenEditor(int instanceId, int line)
    {
        ItemGroup obj = EditorUtility.InstanceIDToObject(instanceId) as ItemGroup;

        if (obj != null)
        {
            ItemDataEditorWindow.Open(obj);
            return(true);
        }
        return(false);
    }
Example #3
0
    public override void OnGUI(Rect position, SerializedProperty property, GUIContent label)
    {
        EditorGUI.PropertyField(position, property);

        var buttonRect = new Rect(position.x, position.y, 170, position.height);

        if (property.objectReferenceValue != null)
        {
            if (GUI.Button(buttonRect, new GUIContent("Open Editor of " + label.text)))
            {
                ItemDataEditorWindow.Open(property.objectReferenceValue as ItemGroup);
            }
        }

        //base.OnGUI(position, property, label);
    }
    public static void Open(ItemGroup dataObject)
    {
        ItemDataEditorWindow window = GetWindow <ItemDataEditorWindow>("Item Group Editor");

        window.serializedObject = new SerializedObject(dataObject);
    }