From 6aee6763867c12ad0707d72fbfc81814ba07b452 Mon Sep 17 00:00:00 2001 From: baldurk Date: Mon, 2 Jan 2017 15:20:43 +0000 Subject: [PATCH] Open transform feedback buffers on double click from GL pipe viewer --- .../PipelineState/GLPipelineStateViewer.Designer.cs | 4 ++++ .../Windows/PipelineState/GLPipelineStateViewer.cs | 10 +++++++++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/renderdocui/Windows/PipelineState/GLPipelineStateViewer.Designer.cs b/renderdocui/Windows/PipelineState/GLPipelineStateViewer.Designer.cs index ef6678eef..e91935034 100644 --- a/renderdocui/Windows/PipelineState/GLPipelineStateViewer.Designer.cs +++ b/renderdocui/Windows/PipelineState/GLPipelineStateViewer.Designer.cs @@ -2829,7 +2829,11 @@ this.gsFeedback.ViewOptions.Indent = 0; this.gsFeedback.ViewOptions.ShowLine = false; this.gsFeedback.ViewOptions.ShowPlusMinus = false; + this.gsFeedback.NodeDoubleClicked += new TreelistView.TreeListView.NodeDoubleClickedHandler(this.textureCell_CellDoubleClick); + this.gsFeedback.NodeClicked += new TreelistView.TreeListView.NodeClickedHandler(this.textureCell_CellDoubleClick); this.gsFeedback.KeyDown += new System.Windows.Forms.KeyEventHandler(this.defaultCopyPaste_KeyDown); + this.gsFeedback.Leave += new System.EventHandler(this.disableSelection_Leave); + this.gsFeedback.MouseClick += new System.Windows.Forms.MouseEventHandler(this.hideDisabledEmpty_MouseClick); // // label14 // diff --git a/renderdocui/Windows/PipelineState/GLPipelineStateViewer.cs b/renderdocui/Windows/PipelineState/GLPipelineStateViewer.cs index d75b66e02..e760557a4 100644 --- a/renderdocui/Windows/PipelineState/GLPipelineStateViewer.cs +++ b/renderdocui/Windows/PipelineState/GLPipelineStateViewer.cs @@ -1705,7 +1705,15 @@ namespace renderdocui.Windows.PipelineState viewer.ViewTexture(tex.ID, true); } } - else if(tag is ReadWriteTag) + else if (tag is FetchBuffer) + { + FetchBuffer buf = (FetchBuffer)tag; + + var viewer = new BufferViewer(m_Core, false); + viewer.ViewRawBuffer(true, 0, ulong.MaxValue, buf.ID); + viewer.Show(m_DockContent.DockPanel); + } + else if (tag is ReadWriteTag) { ReadWriteTag rwtag = (ReadWriteTag)tag; FetchBuffer buf = rwtag.buf;