private void InitTreeView(Rect rect)
{
TreeViewDataSourceForMixers mixers;
this.m_TreeViewState = new TreeViewState();
this.m_TreeView = new TreeView(base.editorWindow, this.m_TreeViewState);
GroupTreeViewGUI gui = new GroupTreeViewGUI(this.m_TreeView);
mixers = new TreeViewDataSourceForMixers(this.m_TreeView, this.m_IgnoreThisController) {
onVisibleRowsChanged = (System.Action) Delegate.Combine(mixers.onVisibleRowsChanged, new System.Action(gui.CalculateRowRects)),
onVisibleRowsChanged = (System.Action) Delegate.Combine(mixers.onVisibleRowsChanged, new System.Action(this.ResizeWindow))
};
this.m_TreeView.deselectOnUnhandledMouseDown = true;
this.m_TreeView.Init(rect, mixers, gui, null);
this.m_TreeView.ReloadData();
this.m_TreeView.selectionChangedCallback = new Action<int[]>(this.OnItemSelectionChanged);
this.m_TreeView.itemDoubleClickedCallback = new Action<int>(this.OnItemDoubleClicked);
int[] selectedIDs = new int[] { (this.m_OriginalSelection == null) ? 0 : this.m_OriginalSelection.GetInstanceID() };
this.m_TreeView.SetSelection(selectedIDs, true);
}