internal static void DrawPreviewToolbarButtons() { UISystemProfiler.PreviewBackground = (UISystemProfiler.Styles.PreviewBackgroundType)EditorGUILayout.IntPopup(GUIContent.none, (int)UISystemProfiler.PreviewBackground, UISystemProfiler.Styles.backgroundOptions, UISystemProfiler.Styles.backgroundValues, EditorStyles.toolbarDropDown, new GUILayoutOption[] { GUILayout.MaxWidth(100f) }); UISystemProfiler.PreviewRenderMode = (UISystemProfiler.Styles.RenderMode)EditorGUILayout.IntPopup(GUIContent.none, (int)UISystemProfiler.PreviewRenderMode, UISystemProfiler.Styles.rendermodeOptions, UISystemProfiler.Styles.rendermodeValues, EditorStyles.toolbarDropDown, new GUILayoutOption[] { GUILayout.MaxWidth(100f) }); }
internal void DrawRenderUI() { Rect controlRect = EditorGUILayout.GetControlRect(new GUILayoutOption[] { GUILayout.ExpandWidth(true), GUILayout.ExpandHeight(true) }); GUI.Box(controlRect, GUIContent.none); this.m_ZoomablePreview.BeginViewGUI(); bool flag = true; if (this.m_UGUIProfilerTreeViewState != null && Event.current.type == EventType.Repaint) { IList <int> selection = this.m_TreeViewControl.GetSelection(); if (selection.Count > 0) { IList <TreeViewItem> rowsFromIDs = this.m_TreeViewControl.GetRowsFromIDs(selection); foreach (TreeViewItem current in rowsFromIDs) { Texture2D texture2D = null; UISystemProfilerTreeView.BatchTreeViewItem batchTreeViewItem = current as UISystemProfilerTreeView.BatchTreeViewItem; UISystemProfiler.Styles.RenderMode previewRenderMode = UISystemProfiler.PreviewRenderMode; if (this.m_RenderService == null) { this.m_RenderService = new UISystemProfilerRenderService(); } if (batchTreeViewItem != null) { texture2D = this.m_RenderService.GetThumbnail(this.currentFrame, batchTreeViewItem.renderDataIndex, 1, previewRenderMode != UISystemProfiler.Styles.RenderMode.Standard); } UISystemProfilerTreeView.CanvasTreeViewItem canvasTreeViewItem = current as UISystemProfilerTreeView.CanvasTreeViewItem; if (canvasTreeViewItem != null) { texture2D = this.m_RenderService.GetThumbnail(this.currentFrame, canvasTreeViewItem.info.renderDataIndex, canvasTreeViewItem.info.renderDataCount, previewRenderMode != UISystemProfiler.Styles.RenderMode.Standard); } if (previewRenderMode == UISystemProfiler.Styles.RenderMode.CompositeOverdraw) { if (this.m_CompositeOverdrawMaterial == null) { Shader shader = Shader.Find("Hidden/UI/CompositeOverdraw"); if (shader) { this.m_CompositeOverdrawMaterial = new Material(shader); } } } if (texture2D) { float num = (float)texture2D.width; float num2 = (float)texture2D.height; float num3 = Math.Min(controlRect.width / num, controlRect.height / num2); num *= num3; num2 *= num3; Rect rect = new Rect(controlRect.x + (controlRect.width - num) / 2f, controlRect.y + (controlRect.height - num2) / 2f, num, num2); if (flag) { flag = false; this.m_ZoomablePreview.rect = rect; UISystemProfiler.Styles.PreviewBackgroundType previewBackground = UISystemProfiler.PreviewBackground; if (previewBackground == UISystemProfiler.Styles.PreviewBackgroundType.Checkerboard) { EditorGUI.DrawTransparencyCheckerTexture(this.m_ZoomablePreview.drawRect, ScaleMode.ScaleAndCrop, 0f); } else { EditorGUI.DrawRect(this.m_ZoomablePreview.drawRect, (previewBackground != UISystemProfiler.Styles.PreviewBackgroundType.Black) ? Color.white : Color.black); } } Graphics.DrawTexture(this.m_ZoomablePreview.drawRect, texture2D, this.m_ZoomablePreview.shownArea, 0, 0, 0, 0, (previewRenderMode != UISystemProfiler.Styles.RenderMode.CompositeOverdraw) ? EditorGUI.transparentMaterial : this.m_CompositeOverdrawMaterial); } if (previewRenderMode != UISystemProfiler.Styles.RenderMode.Standard) { break; } } } } if (flag && Event.current.type == EventType.Repaint) { this.m_ZoomablePreview.rect = controlRect; } this.m_ZoomablePreview.EndViewGUI(); }