Esempio n. 1
0
    public static SelectAssetReferenceWindow Show(AssetReferenceDropdownState state, Rect rect)
    {
        _assetReferenceDropdownState = state;
        SelectAssetReferenceWindow window = new SelectAssetReferenceWindow(state);

        window.minimumSize = new Vector2(rect.width, 200);
        window.Show(rect);
        return(window);
    }
Esempio n. 2
0
    private UnityEngine.Object AssetReferenceField(SerializedProperty property, Rect position, string label, Type type)
    {
        float objectFieldWidth = position.width - 20;

#if UNITY_2019_1_OR_NEWER
        objectFieldWidth = position.width - 80;
#endif
        property.objectReferenceValue = EditorGUI.ObjectField(new Rect(position.x, position.y, objectFieldWidth, position.height), label,
                                                              property.objectReferenceValue, type, false);

#if UNITY_2019_1_OR_NEWER
        if (EditorGUI.DropdownButton(new Rect(position.xMax - 80, position.y, 60, position.height), new GUIContent("Select"), FocusType.Passive))
        {
            SelectAssetReferenceWindow.Show(new AssetReferenceDropdownState(type, property), position);
        }
#endif
        if (GUI.Button(new Rect(position.xMax - 20, position.y, 20, position.height), new GUIContent("X")))
        {
            property.objectReferenceValue = null;
        }
        return(property.objectReferenceValue);
    }