public void RecreateListControl()
{
if (this.m_Controller != null)
{
this.m_ControllerSerialized = new SerializedObject(this.m_Controller);
SerializedProperty elements = this.m_ControllerSerialized.FindProperty("m_ExposedParameters");
ReorderableList list = new ReorderableList(this.m_ControllerSerialized, elements, false, false, false, false) {
onReorderCallback = new ReorderableList.ReorderCallbackDelegate(this.EndDragChild)
};
list.drawElementCallback = (ReorderableList.ElementCallbackDelegate) Delegate.Combine(list.drawElementCallback, new ReorderableList.ElementCallbackDelegate(this.DrawElement));
list.elementHeight = 16f;
list.headerHeight = 0f;
list.footerHeight = 0f;
list.showDefaultBackground = false;
this.m_ReorderableListWithRenameAndScrollView = new ReorderableListWithRenameAndScrollView(list, this.m_State);
this.m_ReorderableListWithRenameAndScrollView.onNameChangedAtIndex = (Action<int, string>) Delegate.Combine(this.m_ReorderableListWithRenameAndScrollView.onNameChangedAtIndex, new Action<int, string>(this, (IntPtr) this.NameChanged));
this.m_ReorderableListWithRenameAndScrollView.onDeleteItemAtIndex = (Action<int>) Delegate.Combine(this.m_ReorderableListWithRenameAndScrollView.onDeleteItemAtIndex, new Action<int>(this.Delete));
this.m_ReorderableListWithRenameAndScrollView.onGetNameAtIndex = (Func<int, string>) Delegate.Combine(this.m_ReorderableListWithRenameAndScrollView.onGetNameAtIndex, new Func<int, string>(this, (IntPtr) this.GetNameOfElement));
}
}