mirror of
https://github.com/baldurk/renderdoc.git
synced 2026-05-29 13:20:54 +00:00
Recreate output windows after use, since D3D12 breaks them
This commit is contained in:
+18
-18
@@ -54,7 +54,7 @@
|
||||
WeifenLuo.WinFormsUI.Docking.TabGradient tabGradient7 = new WeifenLuo.WinFormsUI.Docking.TabGradient();
|
||||
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
|
||||
this.previewTable = new System.Windows.Forms.TableLayoutPanel();
|
||||
this.tableLayoutPanel3 = new System.Windows.Forms.TableLayoutPanel();
|
||||
this.renderTable = new System.Windows.Forms.TableLayoutPanel();
|
||||
this.render = new renderdocui.Controls.NoScrollPanel();
|
||||
this.configCamControls = new System.Windows.Forms.GroupBox();
|
||||
this.tableLayoutPanel2 = new System.Windows.Forms.TableLayoutPanel();
|
||||
@@ -131,7 +131,7 @@
|
||||
label3 = new System.Windows.Forms.Label();
|
||||
label5 = new System.Windows.Forms.Label();
|
||||
this.previewTable.SuspendLayout();
|
||||
this.tableLayoutPanel3.SuspendLayout();
|
||||
this.renderTable.SuspendLayout();
|
||||
this.configCamControls.SuspendLayout();
|
||||
this.tableLayoutPanel2.SuspendLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.camSpeed)).BeginInit();
|
||||
@@ -204,7 +204,7 @@
|
||||
//
|
||||
this.previewTable.ColumnCount = 1;
|
||||
this.previewTable.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
|
||||
this.previewTable.Controls.Add(this.tableLayoutPanel3, 0, 1);
|
||||
this.previewTable.Controls.Add(this.renderTable, 0, 1);
|
||||
this.previewTable.Controls.Add(this.toolStrip2, 0, 0);
|
||||
this.previewTable.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.previewTable.Location = new System.Drawing.Point(3, 3);
|
||||
@@ -218,25 +218,25 @@
|
||||
//
|
||||
// tableLayoutPanel3
|
||||
//
|
||||
this.tableLayoutPanel3.ColumnCount = 2;
|
||||
this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
|
||||
this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
|
||||
this.tableLayoutPanel3.Controls.Add(this.render, 1, 0);
|
||||
this.tableLayoutPanel3.Controls.Add(this.configCamControls, 0, 0);
|
||||
this.tableLayoutPanel3.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.tableLayoutPanel3.Location = new System.Drawing.Point(3, 28);
|
||||
this.tableLayoutPanel3.Name = "tableLayoutPanel3";
|
||||
this.tableLayoutPanel3.RowCount = 1;
|
||||
this.tableLayoutPanel3.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
|
||||
this.tableLayoutPanel3.Size = new System.Drawing.Size(539, 250);
|
||||
this.tableLayoutPanel3.TabIndex = 5;
|
||||
this.renderTable.ColumnCount = 2;
|
||||
this.renderTable.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
|
||||
this.renderTable.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
|
||||
this.renderTable.Controls.Add(this.render, 1, 0);
|
||||
this.renderTable.Controls.Add(this.configCamControls, 0, 0);
|
||||
this.renderTable.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.renderTable.Location = new System.Drawing.Point(3, 28);
|
||||
this.renderTable.Name = "tableLayoutPanel3";
|
||||
this.renderTable.RowCount = 1;
|
||||
this.renderTable.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
|
||||
this.renderTable.Size = new System.Drawing.Size(539, 250);
|
||||
this.renderTable.TabIndex = 5;
|
||||
//
|
||||
// render
|
||||
//
|
||||
this.render.BackColor = System.Drawing.Color.Black;
|
||||
this.render.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.render.Location = new System.Drawing.Point(203, 3);
|
||||
this.render.Name = "render";
|
||||
this.render.Name = "render_SETUP_AT_RUNTIME_SEE_CODE";
|
||||
this.render.Size = new System.Drawing.Size(333, 244);
|
||||
this.render.TabIndex = 2;
|
||||
this.render.Paint += new System.Windows.Forms.PaintEventHandler(this.render_Paint);
|
||||
@@ -1066,7 +1066,7 @@
|
||||
this.Load += new System.EventHandler(this.BufferViewer_Load);
|
||||
this.previewTable.ResumeLayout(false);
|
||||
this.previewTable.PerformLayout();
|
||||
this.tableLayoutPanel3.ResumeLayout(false);
|
||||
this.renderTable.ResumeLayout(false);
|
||||
this.configCamControls.ResumeLayout(false);
|
||||
this.tableLayoutPanel2.ResumeLayout(false);
|
||||
this.tableLayoutPanel2.PerformLayout();
|
||||
@@ -1127,7 +1127,7 @@
|
||||
private System.Windows.Forms.ToolStripSeparator instSep;
|
||||
private System.Windows.Forms.ToolStripLabel instLabel;
|
||||
private System.Windows.Forms.ToolStripTextBox instanceIdxToolitem;
|
||||
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel3;
|
||||
private System.Windows.Forms.TableLayoutPanel renderTable;
|
||||
private System.Windows.Forms.GroupBox configCamControls;
|
||||
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel2;
|
||||
private System.Windows.Forms.TextBox nearGuess;
|
||||
|
||||
@@ -265,14 +265,8 @@ namespace renderdocui.Windows
|
||||
|
||||
SetStyle(ControlStyles.OptimizedDoubleBuffer, true);
|
||||
|
||||
RenderHandle = render.Handle;
|
||||
RecreateRenderPanel();
|
||||
|
||||
render.Painting = true;
|
||||
|
||||
render.MouseWheel += render_MouseWheel;
|
||||
render.MouseWheelHandler = render_MouseWheel;
|
||||
(render as Control).KeyDown += new KeyEventHandler(BufferViewer_KeyDown);
|
||||
(render as Control).KeyUp += new KeyEventHandler(BufferViewer_KeyUp);
|
||||
ResetConfig();
|
||||
|
||||
MeshView = meshview;
|
||||
@@ -490,10 +484,39 @@ namespace renderdocui.Windows
|
||||
|
||||
#region ILogViewerForm
|
||||
|
||||
void RecreateRenderPanel()
|
||||
{
|
||||
renderTable.Controls.Clear();
|
||||
|
||||
render.Dispose();
|
||||
|
||||
render = new Controls.NoScrollPanel();
|
||||
|
||||
render.Painting = true;
|
||||
|
||||
render.BackColor = Color.Black;
|
||||
render.Dock = DockStyle.Fill;
|
||||
render.Paint += new PaintEventHandler(render_Paint);
|
||||
render.MouseClick += new MouseEventHandler(render_MouseClick);
|
||||
render.MouseDown += new MouseEventHandler(render_MouseDown);
|
||||
render.MouseMove += new MouseEventHandler(render_MouseMove);
|
||||
render.MouseWheel += render_MouseWheel;
|
||||
render.MouseWheelHandler = render_MouseWheel;
|
||||
render.KeyDown += new KeyEventHandler(render_KeyDown);
|
||||
render.KeyUp += new KeyEventHandler(render_KeyUp);
|
||||
|
||||
RenderHandle = render.Handle;
|
||||
|
||||
renderTable.Controls.Add(render, 1, 0);
|
||||
renderTable.Controls.Add(configCamControls, 0, 0);
|
||||
}
|
||||
|
||||
public void OnLogfileClosed()
|
||||
{
|
||||
if (IsDisposed) return;
|
||||
|
||||
RecreateRenderPanel();
|
||||
|
||||
m_Output = null;
|
||||
|
||||
ResetConfig();
|
||||
@@ -507,6 +530,8 @@ namespace renderdocui.Windows
|
||||
{
|
||||
ClearStoredData();
|
||||
|
||||
RecreateRenderPanel();
|
||||
|
||||
exportToToolStripMenuItem.Enabled = exportToolItem.Enabled = true;
|
||||
|
||||
var draw = m_Core.CurDrawcall;
|
||||
@@ -2375,12 +2400,12 @@ namespace renderdocui.Windows
|
||||
});
|
||||
}
|
||||
|
||||
void BufferViewer_KeyUp(object sender, KeyEventArgs e)
|
||||
void render_KeyUp(object sender, KeyEventArgs e)
|
||||
{
|
||||
m_CurrentCamera.KeyUp(sender, e);
|
||||
}
|
||||
|
||||
void BufferViewer_KeyDown(object sender, KeyEventArgs e)
|
||||
void render_KeyDown(object sender, KeyEventArgs e)
|
||||
{
|
||||
m_CurrentCamera.KeyDown(sender, e);
|
||||
}
|
||||
|
||||
+3
-23
@@ -1156,7 +1156,7 @@
|
||||
//
|
||||
// renderContainer
|
||||
//
|
||||
this.renderContainer.BackColor = System.Drawing.Color.Maroon;
|
||||
this.renderContainer.BackColor = System.Drawing.Color.Transparent;
|
||||
this.renderContainer.Controls.Add(this.render);
|
||||
this.renderContainer.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.renderContainer.Location = new System.Drawing.Point(0, 0);
|
||||
@@ -1167,19 +1167,7 @@
|
||||
//
|
||||
// render
|
||||
//
|
||||
this.render.BackColor = System.Drawing.Color.Black;
|
||||
this.render.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.render.Location = new System.Drawing.Point(0, 0);
|
||||
this.render.Name = "render";
|
||||
this.render.Size = new System.Drawing.Size(404, 230);
|
||||
this.render.TabIndex = 0;
|
||||
this.render.Paint += new System.Windows.Forms.PaintEventHandler(this.render_Paint);
|
||||
this.render.Layout += new System.Windows.Forms.LayoutEventHandler(this.render_Layout);
|
||||
this.render.MouseClick += new System.Windows.Forms.MouseEventHandler(this.render_MouseClick);
|
||||
this.render.MouseDown += new System.Windows.Forms.MouseEventHandler(this.render_MouseClick);
|
||||
this.render.MouseLeave += new System.EventHandler(this.render_MouseLeave);
|
||||
this.render.MouseMove += new System.Windows.Forms.MouseEventHandler(this.render_MouseMove);
|
||||
this.render.MouseUp += new System.Windows.Forms.MouseEventHandler(this.render_MouseUp);
|
||||
this.render.Name = "render_SETUP_AT_RUNTIME_SEE_CODE";
|
||||
//
|
||||
// renderVScroll
|
||||
//
|
||||
@@ -1219,15 +1207,7 @@
|
||||
//
|
||||
// pixelContext
|
||||
//
|
||||
this.pixelContext.BackColor = System.Drawing.Color.Transparent;
|
||||
this.pixelContextPanel.SetColumnSpan(this.pixelContext, 2);
|
||||
this.pixelContext.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.pixelContext.Location = new System.Drawing.Point(3, 3);
|
||||
this.pixelContext.Name = "pixelContext";
|
||||
this.pixelContext.Size = new System.Drawing.Size(209, 121);
|
||||
this.pixelContext.TabIndex = 6;
|
||||
this.pixelContext.Paint += new System.Windows.Forms.PaintEventHandler(this.pixelContext_Paint);
|
||||
this.pixelContext.MouseClick += new System.Windows.Forms.MouseEventHandler(this.pixelContext_MouseClick);
|
||||
this.pixelContext.Name = "pixelContext_SETUP_AT_RUNTIME_SEE_CODE";
|
||||
//
|
||||
// debugPixelContext
|
||||
//
|
||||
|
||||
@@ -417,20 +417,16 @@ namespace renderdocui.Windows
|
||||
|
||||
mainLayout.Dock = DockStyle.Fill;
|
||||
|
||||
render.Painting = true;
|
||||
pixelContext.Painting = true;
|
||||
|
||||
saveTex.Enabled = gotoLocationButton.Enabled = viewTexBuffer.Enabled = false;
|
||||
|
||||
DockHandler.GetPersistStringCallback = PersistString;
|
||||
|
||||
renderContainer.MouseWheelHandler = render_MouseWheel;
|
||||
render.MouseWheel += render_MouseWheel;
|
||||
renderContainer.MouseDown += render_MouseClick;
|
||||
renderContainer.MouseMove += render_MouseMove;
|
||||
|
||||
render.KeyHandler = render_KeyDown;
|
||||
pixelContext.KeyHandler = render_KeyDown;
|
||||
RecreateRenderPanel();
|
||||
RecreateContextPanel();
|
||||
|
||||
rangeHistogram.RangeUpdated += new EventHandler<RangeHistogramEventArgs>(rangeHistogram_RangeUpdated);
|
||||
|
||||
@@ -1044,6 +1040,54 @@ namespace renderdocui.Windows
|
||||
|
||||
#region ILogViewerForm
|
||||
|
||||
void RecreateRenderPanel()
|
||||
{
|
||||
renderContainer.Controls.Clear();
|
||||
|
||||
render.Dispose();
|
||||
|
||||
render = new NoScrollPanel();
|
||||
|
||||
render.Painting = true;
|
||||
|
||||
render.BackColor = Color.Black;
|
||||
render.Dock = DockStyle.Fill;
|
||||
render.Paint += new PaintEventHandler(this.render_Paint);
|
||||
render.Layout += new LayoutEventHandler(this.render_Layout);
|
||||
render.MouseClick += new MouseEventHandler(this.render_MouseClick);
|
||||
render.MouseDown += new MouseEventHandler(this.render_MouseClick);
|
||||
render.MouseLeave += new EventHandler(this.render_MouseLeave);
|
||||
render.MouseMove += new MouseEventHandler(this.render_MouseMove);
|
||||
render.MouseUp += new MouseEventHandler(this.render_MouseUp);
|
||||
render.MouseWheel += render_MouseWheel;
|
||||
render.KeyHandler = render_KeyDown;
|
||||
|
||||
renderContainer.Controls.Add(render);
|
||||
}
|
||||
|
||||
void RecreateContextPanel()
|
||||
{
|
||||
pixelContextPanel.Controls.Clear();
|
||||
|
||||
pixelContext.Dispose();
|
||||
|
||||
pixelContext = new NoScrollPanel();
|
||||
|
||||
pixelContext.Painting = true;
|
||||
|
||||
pixelContext.BackColor = Color.Transparent;
|
||||
pixelContext.Dock = DockStyle.Fill;
|
||||
pixelContext.Paint += new PaintEventHandler(pixelContext_Paint);
|
||||
pixelContext.MouseClick += new MouseEventHandler(pixelContext_MouseClick);
|
||||
pixelContext.KeyHandler = render_KeyDown;
|
||||
|
||||
pixelContextPanel.Controls.Add(pixelContext, 0, 0);
|
||||
pixelContextPanel.Controls.Add(debugPixelContext, 1, 1);
|
||||
pixelContextPanel.Controls.Add(pixelHistory, 0, 1);
|
||||
|
||||
pixelContextPanel.SetColumnSpan(pixelContext, 2);
|
||||
}
|
||||
|
||||
public void OnLogfileLoaded()
|
||||
{
|
||||
var outConfig = new OutputConfig();
|
||||
@@ -1056,6 +1100,9 @@ namespace renderdocui.Windows
|
||||
rwPanel.ClearThumbnails();
|
||||
roPanel.ClearThumbnails();
|
||||
|
||||
RecreateRenderPanel();
|
||||
RecreateContextPanel();
|
||||
|
||||
m_HighWaterStatusLength = 0;
|
||||
|
||||
IntPtr contextHandle = pixelContext.Handle;
|
||||
@@ -1118,6 +1165,9 @@ namespace renderdocui.Windows
|
||||
rwPanel.ClearThumbnails();
|
||||
roPanel.ClearThumbnails();
|
||||
|
||||
RecreateRenderPanel();
|
||||
RecreateContextPanel();
|
||||
|
||||
texturefilter.SelectedIndex = 0;
|
||||
|
||||
m_TexDisplay = new TextureDisplay();
|
||||
@@ -1768,9 +1818,6 @@ namespace renderdocui.Windows
|
||||
|
||||
UI_UpdateFittedScale();
|
||||
|
||||
//render.Width = (int)(CurrentTexDisplayWidth * m_TexDisplay.scale);
|
||||
//render.Height = (int)(CurrentTexDisplayHeight * m_TexDisplay.scale);
|
||||
|
||||
UI_UpdateTextureDetails();
|
||||
|
||||
UI_UpdateChannels();
|
||||
|
||||
Reference in New Issue
Block a user