123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 |
- using System;
- using System.Collections;
- using System.Collections.Generic;
- using UnityEditor;
- using UnityEditorInternal;
- using UnityEngine;
- namespace TFramework
- {
- public class ReorderableListRef:IReference
- {
- public ReorderableList m_reorderableList;
- public bool m_isExpansion;
- public SerializedObject m_serializedObject;
- public SerializedProperty m_elements;
- public IList m_list;
- public Type m_elementType;
- public ReorderableListRef Init(SerializedObject serializedObject, SerializedProperty elements)
- {
- m_serializedObject = serializedObject;
- m_elements = elements;
- if(m_reorderableList!=null)
- {
- m_reorderableList.serializedProperty = elements;
- }
- else
- {
- m_reorderableList = new ReorderableList(serializedObject, elements);
- }
- return this;
- }
- public ReorderableListRef Init(IList elements, Type elementType)
- {
- m_list = elements;
- m_elementType = elementType;
- if (m_reorderableList != null)
- {
- m_reorderableList.list = elements;
- }
- else
- {
- m_reorderableList = new ReorderableList(elements, elementType);
- }
- return this;
- }
- public ReorderableListRef Init(SerializedObject serializedObject, SerializedProperty elements, bool draggable, bool displayHeader, bool displayAddButton, bool displayRemoveButton)
- {
- m_serializedObject = serializedObject;
- m_elements = elements;
- if (m_reorderableList != null)
- {
- m_reorderableList.serializedProperty = elements;
- m_reorderableList.draggable = draggable;
- m_reorderableList.displayAdd = displayAddButton;
- m_reorderableList.displayRemove = displayRemoveButton;
- }
- else
- {
- m_reorderableList = new ReorderableList(serializedObject, elements, draggable, displayHeader, displayAddButton, displayRemoveButton);
- }
- return this;
- }
- public ReorderableListRef Init(IList elements, Type elementType, bool draggable, bool displayHeader, bool displayAddButton, bool displayRemoveButton)
- {
- m_list = elements;
- m_elementType = elementType;
- if (m_reorderableList != null)
- {
- m_reorderableList.list = elements;
- m_reorderableList.draggable = draggable;
- m_reorderableList.displayAdd = displayAddButton;
- m_reorderableList.displayRemove = displayRemoveButton;
- }
- else
- {
- m_reorderableList = new ReorderableList(elements, elementType, draggable, displayHeader, displayAddButton, displayRemoveButton);
- }
- return this;
- }
- public void Reset()
- {
- m_reorderableList.list = null;
- m_isExpansion = false;
- }
- }
- }
|