public void OnGUI()
    {
        if (NeedToUpdateStyles)
        {
            UpdateStyles();
        }

        ResizeTopPane();
        DrawPos = Vector2.zero;
        DrawToolbar();
        DrawFilter();

        DrawChannels();

        float logPanelHeight = CurrentTopPaneHeight - DrawPos.y;

        if (Dirty)
        {
            CurrentLogList.Clear();
            EditorLogger.CopyLogInfoTo(CurrentLogList);
        }
        DrawLogList(logPanelHeight);

        DrawPos.y += DividerHeight;

        DrawLogDetails();

        HandleCopyToClipboard();

        //If we're dirty, do a repaint
        Dirty = false;
        if (MakeDirty)
        {
            Dirty     = true;
            MakeDirty = false;
            Repaint();
        }
        else
        {
            FilterChanged = false;
        }
    }