public virtual void DrawInstructionList()
{
Event current = Event.current;
this.m_ListViewState.totalRows = this.GetInstructionCount();
EditorGUILayout.BeginVertical(GUIViewDebuggerWindow.s_Styles.listBackgroundStyle, new GUILayoutOption[0]);
GUILayout.Label("Instructions", new GUILayoutOption[0]);
int controlID = GUIUtility.GetControlID(FocusType.Keyboard);
IEnumerator enumerator = ListViewGUI.ListView(this.m_ListViewState, GUIViewDebuggerWindow.s_Styles.listBackgroundStyle, new GUILayoutOption[0]).GetEnumerator();
try
{
while (enumerator.MoveNext())
{
ListViewElement el = (ListViewElement) enumerator.Current;
if ((((current.type == EventType.MouseDown) && (current.button == 0)) && el.position.Contains(current.mousePosition)) && (current.clickCount == 2))
{
this.OnDoubleClickInstruction(el.row);
}
if (current.type == EventType.Repaint)
{
this.DoDrawInstruction(el, controlID);
}
}
}
finally
{
IDisposable disposable = enumerator as IDisposable;
if (disposable != null)
{
disposable.Dispose();
}
}
EditorGUILayout.EndVertical();
}