From 610b22f600706bfe7c74527b27392fded1f4c0da Mon Sep 17 00:00:00 2001 From: baldurk Date: Fri, 5 Aug 2016 12:46:56 +0200 Subject: [PATCH] Fix a lot of high-contrast inconsistencies or brokenness. Refs #315 * In a couple of places I had to resort to if(IsHighContrast) but mostly this is just using system brushes consistently or not assuming black text. * The default DockPanel theme doesn't work well, so make a minimal high- contrast theme for it and assign it everywhere. * The pipeline flow was using fixed colours, use system brushes for the different elements and switch based on high-contrast to ensure active and inactive stages are visible (using ActiveCaption looks bad on normal themes because it's a big block of colour). * For some reason the flat toolstrip renderer doesn't handle white-on- black themes, but the system one does. It's a little clunkier but it shows up correctly without writing tons of custom painting code. * Range histogram uses a properly contrasting colour for the border. * Treelist views use a better system colour for selected rows when inactive and hovered rows (when high contrast). * Mesh view grids have a system background instead of white * Various things (pipeline state, mesh viewe) set text colour when colourising backgrounds of things instead of assuming black. --- renderdocui/Code/Helpers.cs | 22 +++++ renderdocui/Controls/PipelineFlowchart.cs | 21 +++-- renderdocui/Controls/RangeHistogram.cs | 2 +- .../Controls/ResourcePreview.Designer.cs | 8 +- .../Controls/TreeListView/TreeListPainter.cs | 7 +- renderdocui/Windows/BufferViewer.Designer.cs | 6 +- renderdocui/Windows/BufferViewer.cs | 20 ++++ renderdocui/Windows/DebugMessages.cs | 3 + .../Dialogs/ConstantBufferPreviewer.cs | 3 + .../Windows/Dialogs/LiveCapture.Designer.cs | 94 +++++++++---------- renderdocui/Windows/Dialogs/LiveCapture.cs | 3 + renderdocui/Windows/Dialogs/LiveCapture.resx | 3 - .../Windows/Dialogs/PythonShell.Designer.cs | 66 ++++++------- renderdocui/Windows/Dialogs/PythonShell.cs | 6 ++ renderdocui/Windows/Dialogs/PythonShell.resx | 3 - renderdocui/Windows/EventBrowser.cs | 8 ++ renderdocui/Windows/MainWindow.cs | 3 + .../D3D11PipelineStateViewer.Designer.cs | 22 +++-- .../PipelineState/D3D11PipelineStateViewer.cs | 22 ++++- .../GLPipelineStateViewer.Designer.cs | 18 ++-- .../PipelineState/GLPipelineStateViewer.cs | 3 + .../VulkanPipelineStateViewer.Designer.cs | 18 ++-- .../VulkanPipelineStateViewer.cs | 3 + renderdocui/Windows/ShaderViewer.cs | 12 +++ renderdocui/Windows/TextureViewer.cs | 11 +++ 25 files changed, 265 insertions(+), 122 deletions(-) diff --git a/renderdocui/Code/Helpers.cs b/renderdocui/Code/Helpers.cs index 3375575d4..c2de04b3a 100644 --- a/renderdocui/Code/Helpers.cs +++ b/renderdocui/Code/Helpers.cs @@ -28,6 +28,7 @@ using System; using System.Collections.Generic; using System.Linq; using System.Text; +using System.Drawing; using System.IO; using System.Threading; using System.Windows.Forms; @@ -69,6 +70,27 @@ namespace renderdocui.Code return w; } + static public DockPanelSkin MakeHighContrastDockPanelSkin() + { + DockPanelSkin ret = new DockPanelSkin(); + + ret.DockPaneStripSkin.ToolWindowGradient.ActiveCaptionGradient.StartColor = SystemColors.ActiveCaption; + ret.DockPaneStripSkin.ToolWindowGradient.ActiveCaptionGradient.EndColor = SystemColors.ActiveCaption; + ret.DockPaneStripSkin.ToolWindowGradient.ActiveCaptionGradient.TextColor = SystemColors.ActiveCaptionText; + + ret.DockPaneStripSkin.ToolWindowGradient.InactiveCaptionGradient.StartColor = SystemColors.InactiveCaption; + ret.DockPaneStripSkin.ToolWindowGradient.InactiveCaptionGradient.EndColor = SystemColors.InactiveCaption; + ret.DockPaneStripSkin.ToolWindowGradient.InactiveCaptionGradient.TextColor = SystemColors.InactiveCaptionText; + + ret.DockPaneStripSkin.ToolWindowGradient.ActiveTabGradient = ret.DockPaneStripSkin.ToolWindowGradient.ActiveCaptionGradient; + ret.DockPaneStripSkin.ToolWindowGradient.InactiveTabGradient = ret.DockPaneStripSkin.ToolWindowGradient.InactiveCaptionGradient; + + ret.DockPaneStripSkin.DocumentGradient.ActiveTabGradient = ret.DockPaneStripSkin.ToolWindowGradient.ActiveCaptionGradient; + ret.DockPaneStripSkin.DocumentGradient.InactiveTabGradient = ret.DockPaneStripSkin.ToolWindowGradient.InactiveCaptionGradient; + + return ret; + } + public static T Clamp(this T val, T min, T max) where T : IComparable { if (val.CompareTo(min) < 0) return min; diff --git a/renderdocui/Controls/PipelineFlowchart.cs b/renderdocui/Controls/PipelineFlowchart.cs index 92dd2b77b..9dc039131 100644 --- a/renderdocui/Controls/PipelineFlowchart.cs +++ b/renderdocui/Controls/PipelineFlowchart.cs @@ -256,7 +256,7 @@ namespace renderdocui.Controls float arrowY = TotalAreaRect.Y + TotalAreaRect.Height / 2; - using (var pen = new Pen(Brushes.Black, BoxBorderWidth)) + using (var pen = new Pen(SystemBrushes.WindowFrame, BoxBorderWidth)) using (var selectedpen = new Pen(Brushes.Red, BoxBorderWidth)) { for (int i = 0; i < NumGaps; i++) @@ -267,26 +267,33 @@ namespace renderdocui.Controls float right = TotalAreaRect.X + (i + 1) * (BoxSize.Width + BoxMargin); float left = right - BoxMargin; - DrawArrow(dc, Brushes.Black, pen, ArrowHeadSize, arrowY, left, right); + DrawArrow(dc, SystemBrushes.WindowFrame, pen, ArrowHeadSize, arrowY, left, right); } for (int i = 0; i < NumItems; i++) { RectangleF boxrect = GetBoxRect(i); - var backBrush = Brushes.Gainsboro; - var textBrush = Brushes.Black; + var backBrush = SystemBrushes.Window; + var textBrush = SystemBrushes.WindowText; var outlinePen = pen; + if (SystemInformation.HighContrast) + { + backBrush = SystemBrushes.ActiveCaption; + textBrush = SystemBrushes.ActiveCaptionText; + } + if (!IsStageEnabled(i)) { - backBrush = Brushes.DarkGray; - //textBrush = Brushes.Gainsboro; + backBrush = SystemBrushes.InactiveCaption; + textBrush = SystemBrushes.InactiveCaptionText; } if (i == m_HoverStage) { - backBrush = Brushes.LightYellow; + backBrush = SystemBrushes.Info; + textBrush = SystemBrushes.InfoText; } if (i == SelectedStage) diff --git a/renderdocui/Controls/RangeHistogram.cs b/renderdocui/Controls/RangeHistogram.cs index de629e2eb..34def018c 100644 --- a/renderdocui/Controls/RangeHistogram.cs +++ b/renderdocui/Controls/RangeHistogram.cs @@ -416,7 +416,7 @@ namespace renderdocui.Controls rect.Inflate(-m_Margin, -m_Margin); - e.Graphics.FillRectangle(Brushes.Black, rect); + e.Graphics.FillRectangle(SystemBrushes.ControlText, rect); rect.Inflate(-m_Border, -m_Border); diff --git a/renderdocui/Controls/ResourcePreview.Designer.cs b/renderdocui/Controls/ResourcePreview.Designer.cs index f1d3a64c0..a9425342a 100644 --- a/renderdocui/Controls/ResourcePreview.Designer.cs +++ b/renderdocui/Controls/ResourcePreview.Designer.cs @@ -59,9 +59,9 @@ this.slotLabel.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) | System.Windows.Forms.AnchorStyles.Left))); this.slotLabel.AutoSize = true; - this.slotLabel.BackColor = System.Drawing.SystemColors.InactiveCaption; + this.slotLabel.BackColor = System.Drawing.SystemColors.ButtonShadow; this.slotLabel.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.slotLabel.ForeColor = System.Drawing.SystemColors.ActiveCaptionText; + this.slotLabel.ForeColor = System.Drawing.SystemColors.ControlText; this.slotLabel.Location = new System.Drawing.Point(0, 60); this.slotLabel.Margin = new System.Windows.Forms.Padding(0); this.slotLabel.Name = "slotLabel"; @@ -77,8 +77,8 @@ this.descriptionLabel.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right))); this.descriptionLabel.AutoEllipsis = true; - this.descriptionLabel.BackColor = System.Drawing.SystemColors.InactiveCaption; - this.descriptionLabel.ForeColor = System.Drawing.SystemColors.ActiveCaptionText; + this.descriptionLabel.BackColor = System.Drawing.SystemColors.ButtonShadow; + this.descriptionLabel.ForeColor = System.Drawing.SystemColors.ControlText; this.descriptionLabel.Location = new System.Drawing.Point(19, 60); this.descriptionLabel.Margin = new System.Windows.Forms.Padding(0); this.descriptionLabel.Name = "descriptionLabel"; diff --git a/renderdocui/Controls/TreeListView/TreeListPainter.cs b/renderdocui/Controls/TreeListView/TreeListPainter.cs index e884eb355..6997e779a 100644 --- a/renderdocui/Controls/TreeListView/TreeListPainter.cs +++ b/renderdocui/Controls/TreeListView/TreeListPainter.cs @@ -138,7 +138,7 @@ namespace TreelistView if (m_owner.NodesSelection.Contains(node) || m_owner.FocusedNode == node) { - Color col = m_owner.Focused ? SystemColors.Highlight : SystemColors.ControlLight; + Color col = m_owner.Focused ? SystemColors.Highlight : SystemColors.Control; if (!Application.RenderWithVisualStyles) { @@ -161,6 +161,11 @@ namespace TreelistView { Color col = SystemColors.ControlLight; + if (SystemInformation.HighContrast) + { + col = SystemColors.ButtonHighlight; + } + if (!Application.RenderWithVisualStyles) { // have to fill the solid background only before the node is painted diff --git a/renderdocui/Windows/BufferViewer.Designer.cs b/renderdocui/Windows/BufferViewer.Designer.cs index 33c8be1d5..3cf2f1371 100644 --- a/renderdocui/Windows/BufferViewer.Designer.cs +++ b/renderdocui/Windows/BufferViewer.Designer.cs @@ -630,7 +630,7 @@ this.vsInBufferView.AllowUserToDeleteRows = false; this.vsInBufferView.AllowUserToResizeRows = false; this.vsInBufferView.AutoSizeRowsMode = System.Windows.Forms.DataGridViewAutoSizeRowsMode.DisplayedCells; - this.vsInBufferView.BackgroundColor = System.Drawing.Color.White; + this.vsInBufferView.BackgroundColor = System.Drawing.SystemColors.Window; dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; dataGridViewCellStyle1.BackColor = System.Drawing.SystemColors.Window; dataGridViewCellStyle1.Font = new System.Drawing.Font("Consolas", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); @@ -678,7 +678,7 @@ this.vsOutBufferView.AllowUserToDeleteRows = false; this.vsOutBufferView.AllowUserToResizeRows = false; this.vsOutBufferView.AutoSizeRowsMode = System.Windows.Forms.DataGridViewAutoSizeRowsMode.DisplayedCells; - this.vsOutBufferView.BackgroundColor = System.Drawing.Color.White; + this.vsOutBufferView.BackgroundColor = System.Drawing.SystemColors.Window; dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; dataGridViewCellStyle2.BackColor = System.Drawing.SystemColors.Window; dataGridViewCellStyle2.Font = new System.Drawing.Font("Consolas", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); @@ -975,7 +975,7 @@ this.gsOutBufferView.AllowUserToDeleteRows = false; this.gsOutBufferView.AllowUserToResizeRows = false; this.gsOutBufferView.AutoSizeRowsMode = System.Windows.Forms.DataGridViewAutoSizeRowsMode.DisplayedCells; - this.gsOutBufferView.BackgroundColor = System.Drawing.Color.White; + this.gsOutBufferView.BackgroundColor = System.Drawing.SystemColors.Window; dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; dataGridViewCellStyle3.BackColor = System.Drawing.SystemColors.Window; dataGridViewCellStyle3.Font = new System.Drawing.Font("Consolas", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); diff --git a/renderdocui/Windows/BufferViewer.cs b/renderdocui/Windows/BufferViewer.cs index 4d0866d83..ad989449a 100644 --- a/renderdocui/Windows/BufferViewer.cs +++ b/renderdocui/Windows/BufferViewer.cs @@ -221,6 +221,14 @@ namespace renderdocui.Windows { InitializeComponent(); + if (SystemInformation.HighContrast) + { + dockPanel.Skin = Helpers.MakeHighContrastDockPanelSkin(); + + toolStrip1.Renderer = new ToolStripSystemRenderer(); + toolStrip2.Renderer = new ToolStripSystemRenderer(); + } + Icon = global::renderdocui.Properties.Resources.icon; UI_SetupDocks(meshview); @@ -1349,17 +1357,29 @@ namespace renderdocui.Windows if (e == m_PosElement[(int)type] && active) { if (i != 3 || !input) + { col.DefaultCellStyle.BackColor = Color.SkyBlue; + col.DefaultCellStyle.ForeColor = Color.Black; + } else + { col.DefaultCellStyle.BackColor = Color.LightCyan; + col.DefaultCellStyle.ForeColor = Color.Black; + } } else if (e == m_SecondElement[(int)type] && active && m_MeshDisplay.solidShadeMode == SolidShadeMode.Secondary) { if ((m_MeshDisplay.secondary.showAlpha && i == 3) || (!m_MeshDisplay.secondary.showAlpha && i != 3)) + { col.DefaultCellStyle.BackColor = Color.LightGreen; + col.DefaultCellStyle.ForeColor = Color.Black; + } else + { col.DefaultCellStyle.BackColor = Color.FromArgb(200, 238, 200); + col.DefaultCellStyle.ForeColor = Color.Black; + } } else col.DefaultCellStyle.BackColor = defaultCol; diff --git a/renderdocui/Windows/DebugMessages.cs b/renderdocui/Windows/DebugMessages.cs index 5cd784fc7..ce5ccbbb6 100644 --- a/renderdocui/Windows/DebugMessages.cs +++ b/renderdocui/Windows/DebugMessages.cs @@ -49,6 +49,9 @@ namespace renderdocui.Windows { InitializeComponent(); + if (SystemInformation.HighContrast) + toolStrip1.Renderer = new ToolStripSystemRenderer(); + Icon = global::renderdocui.Properties.Resources.icon; m_Core = core; diff --git a/renderdocui/Windows/Dialogs/ConstantBufferPreviewer.cs b/renderdocui/Windows/Dialogs/ConstantBufferPreviewer.cs index df897cd17..512293970 100644 --- a/renderdocui/Windows/Dialogs/ConstantBufferPreviewer.cs +++ b/renderdocui/Windows/Dialogs/ConstantBufferPreviewer.cs @@ -48,6 +48,9 @@ namespace renderdocui.Controls { InitializeComponent(); + if (SystemInformation.HighContrast) + toolStrip1.Renderer = new ToolStripSystemRenderer(); + m_Core = c; Stage = stage; Slot = slot; diff --git a/renderdocui/Windows/Dialogs/LiveCapture.Designer.cs b/renderdocui/Windows/Dialogs/LiveCapture.Designer.cs index 15ebbfd95..4d8b791be 100644 --- a/renderdocui/Windows/Dialogs/LiveCapture.Designer.cs +++ b/renderdocui/Windows/Dialogs/LiveCapture.Designer.cs @@ -33,13 +33,14 @@ System.Windows.Forms.Label label2; System.Windows.Forms.Label label3; System.Windows.Forms.GroupBox groupBox1; - System.Windows.Forms.ToolStrip toolStrip1; - System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(LiveCapture)); System.Windows.Forms.Label label4; + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(LiveCapture)); + this.numFrames = new System.Windows.Forms.NumericUpDown(); this.queueCap = new System.Windows.Forms.Button(); this.captureFrame = new System.Windows.Forms.NumericUpDown(); this.captureDelay = new System.Windows.Forms.NumericUpDown(); this.triggerCapture = new System.Windows.Forms.Button(); + this.toolStrip1 = new System.Windows.Forms.ToolStrip(); this.deleteMenu = new System.Windows.Forms.ToolStripButton(); this.saveMenu = new System.Windows.Forms.ToolStripButton(); this.openMenu = new System.Windows.Forms.ToolStripSplitButton(); @@ -60,21 +61,19 @@ this.deleteThisCaptureToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.captureCountdown = new System.Windows.Forms.Timer(this.components); this.childUpdateTimer = new System.Windows.Forms.Timer(this.components); - this.numFrames = new System.Windows.Forms.NumericUpDown(); label1 = new System.Windows.Forms.Label(); label2 = new System.Windows.Forms.Label(); label3 = new System.Windows.Forms.Label(); groupBox1 = new System.Windows.Forms.GroupBox(); - toolStrip1 = new System.Windows.Forms.ToolStrip(); label4 = new System.Windows.Forms.Label(); groupBox1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.numFrames)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.captureFrame)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.captureDelay)).BeginInit(); - toolStrip1.SuspendLayout(); + this.toolStrip1.SuspendLayout(); this.tableLayoutPanel1.SuspendLayout(); this.flowLayoutPanel1.SuspendLayout(); this.rightclickContext.SuspendLayout(); - ((System.ComponentModel.ISupportInitialize)(this.numFrames)).BeginInit(); this.SuspendLayout(); // // label1 @@ -125,6 +124,32 @@ groupBox1.TabStop = false; groupBox1.Text = "Tools"; // + // numFrames + // + this.numFrames.Location = new System.Drawing.Point(208, 19); + this.numFrames.Minimum = new decimal(new int[] { + 1, + 0, + 0, + 0}); + this.numFrames.Name = "numFrames"; + this.numFrames.Size = new System.Drawing.Size(39, 20); + this.numFrames.TabIndex = 6; + this.numFrames.Value = new decimal(new int[] { + 1, + 0, + 0, + 0}); + // + // label4 + // + label4.AutoSize = true; + label4.Location = new System.Drawing.Point(148, 21); + label4.Name = "label4"; + label4.Size = new System.Drawing.Size(54, 13); + label4.TabIndex = 5; + label4.Text = "# Frames:"; + // // queueCap // this.queueCap.Location = new System.Drawing.Point(222, 44); @@ -177,20 +202,20 @@ // // toolStrip1 // - toolStrip1.CanOverflow = false; - toolStrip1.Dock = System.Windows.Forms.DockStyle.Fill; - toolStrip1.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden; - toolStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.toolStrip1.CanOverflow = false; + this.toolStrip1.Dock = System.Windows.Forms.DockStyle.Fill; + this.toolStrip1.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden; + this.toolStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { this.deleteMenu, this.saveMenu, this.openMenu}); - toolStrip1.Location = new System.Drawing.Point(0, 375); - toolStrip1.Name = "toolStrip1"; - toolStrip1.RightToLeft = System.Windows.Forms.RightToLeft.Yes; - toolStrip1.Size = new System.Drawing.Size(362, 25); - toolStrip1.Stretch = true; - toolStrip1.TabIndex = 8; - toolStrip1.Text = "toolStrip1"; + this.toolStrip1.Location = new System.Drawing.Point(0, 375); + this.toolStrip1.Name = "toolStrip1"; + this.toolStrip1.RightToLeft = System.Windows.Forms.RightToLeft.Yes; + this.toolStrip1.Size = new System.Drawing.Size(362, 25); + this.toolStrip1.Stretch = true; + this.toolStrip1.TabIndex = 8; + this.toolStrip1.Text = "toolStrip1"; // // deleteMenu // @@ -248,7 +273,7 @@ this.tableLayoutPanel1.Controls.Add(this.flowLayoutPanel1, 0, 0); this.tableLayoutPanel1.Controls.Add(label1, 0, 4); this.tableLayoutPanel1.Controls.Add(groupBox1, 0, 1); - this.tableLayoutPanel1.Controls.Add(toolStrip1, 0, 6); + this.tableLayoutPanel1.Controls.Add(this.toolStrip1, 0, 6); this.tableLayoutPanel1.Controls.Add(this.childProcessLabel, 0, 2); this.tableLayoutPanel1.Controls.Add(this.childProcesses, 0, 3); this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill; @@ -391,32 +416,6 @@ this.childUpdateTimer.Enabled = true; this.childUpdateTimer.Tick += new System.EventHandler(this.childUpdateTimer_Tick); // - // label4 - // - label4.AutoSize = true; - label4.Location = new System.Drawing.Point(148, 21); - label4.Name = "label4"; - label4.Size = new System.Drawing.Size(54, 13); - label4.TabIndex = 5; - label4.Text = "# Frames:"; - // - // numFrames - // - this.numFrames.Location = new System.Drawing.Point(208, 19); - this.numFrames.Minimum = new decimal(new int[] { - 1, - 0, - 0, - 0}); - this.numFrames.Name = "numFrames"; - this.numFrames.Size = new System.Drawing.Size(39, 20); - this.numFrames.TabIndex = 6; - this.numFrames.Value = new decimal(new int[] { - 1, - 0, - 0, - 0}); - // // LiveCapture // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); @@ -431,16 +430,16 @@ this.Shown += new System.EventHandler(this.LiveCapture_Shown); groupBox1.ResumeLayout(false); groupBox1.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)(this.numFrames)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.captureFrame)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.captureDelay)).EndInit(); - toolStrip1.ResumeLayout(false); - toolStrip1.PerformLayout(); + this.toolStrip1.ResumeLayout(false); + this.toolStrip1.PerformLayout(); this.tableLayoutPanel1.ResumeLayout(false); this.tableLayoutPanel1.PerformLayout(); this.flowLayoutPanel1.ResumeLayout(false); this.flowLayoutPanel1.PerformLayout(); this.rightclickContext.ResumeLayout(false); - ((System.ComponentModel.ISupportInitialize)(this.numFrames)).EndInit(); this.ResumeLayout(false); } @@ -472,5 +471,6 @@ private System.Windows.Forms.ToolStripMenuItem openToolStripMenuItem; private System.Windows.Forms.ToolStripMenuItem newInstanceToolStripMenuItem; private System.Windows.Forms.NumericUpDown numFrames; + private System.Windows.Forms.ToolStrip toolStrip1; } } \ No newline at end of file diff --git a/renderdocui/Windows/Dialogs/LiveCapture.cs b/renderdocui/Windows/Dialogs/LiveCapture.cs index 6071a9ab9..bfea92872 100644 --- a/renderdocui/Windows/Dialogs/LiveCapture.cs +++ b/renderdocui/Windows/Dialogs/LiveCapture.cs @@ -93,6 +93,9 @@ namespace renderdocui.Windows { InitializeComponent(); + if (SystemInformation.HighContrast) + toolStrip1.Renderer = new ToolStripSystemRenderer(); + m_Core = core; m_Main = main; diff --git a/renderdocui/Windows/Dialogs/LiveCapture.resx b/renderdocui/Windows/Dialogs/LiveCapture.resx index d978fc7d6..7e36ca9ee 100644 --- a/renderdocui/Windows/Dialogs/LiveCapture.resx +++ b/renderdocui/Windows/Dialogs/LiveCapture.resx @@ -132,9 +132,6 @@ False - - False - 296, 17 diff --git a/renderdocui/Windows/Dialogs/PythonShell.Designer.cs b/renderdocui/Windows/Dialogs/PythonShell.Designer.cs index addd94baa..fb3be5739 100644 --- a/renderdocui/Windows/Dialogs/PythonShell.Designer.cs +++ b/renderdocui/Windows/Dialogs/PythonShell.Designer.cs @@ -30,31 +30,30 @@ { this.components = new System.ComponentModel.Container(); System.Windows.Forms.ToolStripContainer toolStripContainer1; - System.Windows.Forms.ToolStrip toolStrip1; System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(PythonShell)); this.scriptTable = new System.Windows.Forms.TableLayoutPanel(); this.scriptSplit = new System.Windows.Forms.SplitContainer(); this.scriptOutput = new System.Windows.Forms.TextBox(); this.toolStrip2 = new System.Windows.Forms.ToolStrip(); + this.newScript = new System.Windows.Forms.ToolStripButton(); this.openButton = new System.Windows.Forms.ToolStripButton(); this.saveAs = new System.Windows.Forms.ToolStripButton(); this.toolStripSeparator2 = new System.Windows.Forms.ToolStripSeparator(); this.runButton = new System.Windows.Forms.ToolStripButton(); + this.abortButton = new System.Windows.Forms.ToolStripButton(); this.shellTable = new System.Windows.Forms.TableLayoutPanel(); this.interactiveInput = new System.Windows.Forms.TextBox(); this.interactiveOutput = new System.Windows.Forms.TextBox(); this.executeCmd = new System.Windows.Forms.Button(); this.clearCmd = new System.Windows.Forms.Button(); + this.toolStrip1 = new System.Windows.Forms.ToolStrip(); this.shellMode = new System.Windows.Forms.ToolStripButton(); this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator(); this.scriptMode = new System.Windows.Forms.ToolStripButton(); this.saveDialog = new System.Windows.Forms.SaveFileDialog(); this.openDialog = new System.Windows.Forms.OpenFileDialog(); - this.newScript = new System.Windows.Forms.ToolStripButton(); this.linenumTimer = new System.Windows.Forms.Timer(this.components); - this.abortButton = new System.Windows.Forms.ToolStripButton(); toolStripContainer1 = new System.Windows.Forms.ToolStripContainer(); - toolStrip1 = new System.Windows.Forms.ToolStrip(); toolStripContainer1.ContentPanel.SuspendLayout(); toolStripContainer1.TopToolStripPanel.SuspendLayout(); toolStripContainer1.SuspendLayout(); @@ -64,7 +63,7 @@ this.scriptSplit.SuspendLayout(); this.toolStrip2.SuspendLayout(); this.shellTable.SuspendLayout(); - toolStrip1.SuspendLayout(); + this.toolStrip1.SuspendLayout(); this.SuspendLayout(); // // toolStripContainer1 @@ -84,7 +83,7 @@ // // toolStripContainer1.TopToolStripPanel // - toolStripContainer1.TopToolStripPanel.Controls.Add(toolStrip1); + toolStripContainer1.TopToolStripPanel.Controls.Add(this.toolStrip1); // // scriptTable // @@ -142,6 +141,15 @@ this.toolStrip2.TabIndex = 2; this.toolStrip2.Text = "toolStrip2"; // + // newScript + // + this.newScript.Image = global::renderdocui.Properties.Resources.page_white_edit; + this.newScript.ImageTransparentColor = System.Drawing.Color.Magenta; + this.newScript.Name = "newScript"; + this.newScript.Size = new System.Drawing.Size(48, 22); + this.newScript.Text = "New"; + this.newScript.Click += new System.EventHandler(this.newScript_Click); + // // openButton // this.openButton.Image = global::renderdocui.Properties.Resources.folder_page; @@ -174,6 +182,15 @@ this.runButton.Text = "Run"; this.runButton.Click += new System.EventHandler(this.runButton_Click); // + // abortButton + // + this.abortButton.Image = global::renderdocui.Properties.Resources.delete; + this.abortButton.ImageTransparentColor = System.Drawing.Color.Magenta; + this.abortButton.Name = "abortButton"; + this.abortButton.Size = new System.Drawing.Size(54, 22); + this.abortButton.Text = "Abort"; + this.abortButton.Click += new System.EventHandler(this.abortButton_Click); + // // shellTable // this.shellTable.ColumnCount = 3; @@ -246,16 +263,16 @@ // // toolStrip1 // - toolStrip1.Dock = System.Windows.Forms.DockStyle.None; - toolStrip1.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden; - toolStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.toolStrip1.Dock = System.Windows.Forms.DockStyle.None; + this.toolStrip1.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden; + this.toolStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { this.shellMode, this.toolStripSeparator1, this.scriptMode}); - toolStrip1.Location = new System.Drawing.Point(3, 0); - toolStrip1.Name = "toolStrip1"; - toolStrip1.Size = new System.Drawing.Size(161, 25); - toolStrip1.TabIndex = 0; + this.toolStrip1.Location = new System.Drawing.Point(3, 0); + this.toolStrip1.Name = "toolStrip1"; + this.toolStrip1.Size = new System.Drawing.Size(192, 25); + this.toolStrip1.TabIndex = 0; // // shellMode // @@ -296,29 +313,11 @@ this.openDialog.Filter = "Python Scripts (*.py)|*.py"; this.openDialog.Title = "Open .py script"; // - // newScript - // - this.newScript.Image = global::renderdocui.Properties.Resources.page_white_edit; - this.newScript.ImageTransparentColor = System.Drawing.Color.Magenta; - this.newScript.Name = "newScript"; - this.newScript.Size = new System.Drawing.Size(48, 22); - this.newScript.Text = "New"; - this.newScript.Click += new System.EventHandler(this.newScript_Click); - // // linenumTimer // this.linenumTimer.Interval = 500; this.linenumTimer.Tick += new System.EventHandler(this.linenumTimer_Tick); // - // abortButton - // - this.abortButton.Image = global::renderdocui.Properties.Resources.delete; - this.abortButton.ImageTransparentColor = System.Drawing.Color.Magenta; - this.abortButton.Name = "abortButton"; - this.abortButton.Size = new System.Drawing.Size(54, 22); - this.abortButton.Text = "Abort"; - this.abortButton.Click += new System.EventHandler(this.abortButton_Click); - // // PythonShell // this.AllowDrop = true; @@ -347,8 +346,8 @@ this.toolStrip2.PerformLayout(); this.shellTable.ResumeLayout(false); this.shellTable.PerformLayout(); - toolStrip1.ResumeLayout(false); - toolStrip1.PerformLayout(); + this.toolStrip1.ResumeLayout(false); + this.toolStrip1.PerformLayout(); this.ResumeLayout(false); } @@ -376,6 +375,7 @@ private System.Windows.Forms.ToolStripButton newScript; private System.Windows.Forms.Timer linenumTimer; private System.Windows.Forms.ToolStripButton abortButton; + private System.Windows.Forms.ToolStrip toolStrip1; } diff --git a/renderdocui/Windows/Dialogs/PythonShell.cs b/renderdocui/Windows/Dialogs/PythonShell.cs index 7cd936417..7273ff292 100644 --- a/renderdocui/Windows/Dialogs/PythonShell.cs +++ b/renderdocui/Windows/Dialogs/PythonShell.cs @@ -30,6 +30,12 @@ namespace renderdocui.Windows.Dialogs { InitializeComponent(); + if (SystemInformation.HighContrast) + { + toolStrip1.Renderer = new ToolStripSystemRenderer(); + toolStrip2.Renderer = new ToolStripSystemRenderer(); + } + shellTable.Dock = DockStyle.Fill; scriptTable.Dock = DockStyle.Fill; diff --git a/renderdocui/Windows/Dialogs/PythonShell.resx b/renderdocui/Windows/Dialogs/PythonShell.resx index 398af4c95..ff42b0970 100644 --- a/renderdocui/Windows/Dialogs/PythonShell.resx +++ b/renderdocui/Windows/Dialogs/PythonShell.resx @@ -123,9 +123,6 @@ 116, 17 - - False - 17, 17 diff --git a/renderdocui/Windows/EventBrowser.cs b/renderdocui/Windows/EventBrowser.cs index f2886e268..b0de27b45 100644 --- a/renderdocui/Windows/EventBrowser.cs +++ b/renderdocui/Windows/EventBrowser.cs @@ -61,6 +61,14 @@ namespace renderdocui.Windows { InitializeComponent(); + if (SystemInformation.HighContrast) + { + toolStrip1.Renderer = new ToolStripSystemRenderer(); + jumpStrip.Renderer = new ToolStripSystemRenderer(); + findStrip.Renderer = new ToolStripSystemRenderer(); + bookmarkStrip.Renderer = new ToolStripSystemRenderer(); + } + Icon = global::renderdocui.Properties.Resources.icon; jumpToEID.Font = diff --git a/renderdocui/Windows/MainWindow.cs b/renderdocui/Windows/MainWindow.cs index 73aba0689..818e765d1 100644 --- a/renderdocui/Windows/MainWindow.cs +++ b/renderdocui/Windows/MainWindow.cs @@ -140,6 +140,9 @@ namespace renderdocui.Windows { InitializeComponent(); + if (SystemInformation.HighContrast) + dockPanel.Skin = Helpers.MakeHighContrastDockPanelSkin(); + Icon = global::renderdocui.Properties.Resources.icon; renderdocplugin.PluginHelpers.GetPlugins(); diff --git a/renderdocui/Windows/PipelineState/D3D11PipelineStateViewer.Designer.cs b/renderdocui/Windows/PipelineState/D3D11PipelineStateViewer.Designer.cs index 7f37d4f7c..7153e31d0 100644 --- a/renderdocui/Windows/PipelineState/D3D11PipelineStateViewer.Designer.cs +++ b/renderdocui/Windows/PipelineState/D3D11PipelineStateViewer.Designer.cs @@ -969,7 +969,8 @@ // this.iaBytecode.Anchor = System.Windows.Forms.AnchorStyles.Left; this.iaBytecode.AutoSize = true; - this.iaBytecode.BackColor = System.Drawing.Color.LightGray; + this.iaBytecode.BackColor = System.Drawing.SystemColors.Info; + this.iaBytecode.ForeColor = System.Drawing.SystemColors.InfoText; this.iaBytecode.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; this.iaBytecode.Cursor = System.Windows.Forms.Cursors.Hand; this.iaBytecode.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F); @@ -1002,6 +1003,7 @@ this.iaBytecodeMismatch.Anchor = System.Windows.Forms.AnchorStyles.Left; this.iaBytecodeMismatch.AutoSize = true; this.iaBytecodeMismatch.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.iaBytecodeMismatch.BackColor = System.Drawing.Color.White; this.iaBytecodeMismatch.ForeColor = System.Drawing.Color.Red; this.iaBytecodeMismatch.Location = new System.Drawing.Point(331, 2); this.iaBytecodeMismatch.Name = "iaBytecodeMismatch"; @@ -1107,7 +1109,8 @@ // this.vsShader.Anchor = System.Windows.Forms.AnchorStyles.Left; this.vsShader.AutoSize = true; - this.vsShader.BackColor = System.Drawing.Color.LightGray; + this.vsShader.BackColor = System.Drawing.SystemColors.Info; + this.vsShader.ForeColor = System.Drawing.SystemColors.InfoText; this.vsShader.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; this.vsShader.Cursor = System.Windows.Forms.Cursors.Hand; this.vsShader.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F); @@ -1430,7 +1433,8 @@ // this.hsShader.Anchor = System.Windows.Forms.AnchorStyles.Left; this.hsShader.AutoSize = true; - this.hsShader.BackColor = System.Drawing.Color.LightGray; + this.hsShader.BackColor = System.Drawing.SystemColors.Info; + this.hsShader.ForeColor = System.Drawing.SystemColors.InfoText; this.hsShader.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; this.hsShader.Cursor = System.Windows.Forms.Cursors.Hand; this.hsShader.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F); @@ -1753,7 +1757,8 @@ // this.dsShader.Anchor = System.Windows.Forms.AnchorStyles.Left; this.dsShader.AutoSize = true; - this.dsShader.BackColor = System.Drawing.Color.LightGray; + this.dsShader.BackColor = System.Drawing.SystemColors.Info; + this.dsShader.ForeColor = System.Drawing.SystemColors.InfoText; this.dsShader.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; this.dsShader.Cursor = System.Windows.Forms.Cursors.Hand; this.dsShader.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F); @@ -2125,7 +2130,8 @@ // this.gsShader.Anchor = System.Windows.Forms.AnchorStyles.Left; this.gsShader.AutoSize = true; - this.gsShader.BackColor = System.Drawing.Color.LightGray; + this.gsShader.BackColor = System.Drawing.SystemColors.Info; + this.gsShader.ForeColor = System.Drawing.SystemColors.InfoText; this.gsShader.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; this.gsShader.Cursor = System.Windows.Forms.Cursors.Hand; this.gsShader.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F); @@ -2909,7 +2915,8 @@ // this.psShader.Anchor = System.Windows.Forms.AnchorStyles.Left; this.psShader.AutoSize = true; - this.psShader.BackColor = System.Drawing.Color.LightGray; + this.psShader.BackColor = System.Drawing.SystemColors.Info; + this.psShader.ForeColor = System.Drawing.SystemColors.InfoText; this.psShader.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; this.psShader.Cursor = System.Windows.Forms.Cursors.Hand; this.psShader.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F); @@ -3938,7 +3945,8 @@ // this.csShader.Anchor = System.Windows.Forms.AnchorStyles.Left; this.csShader.AutoSize = true; - this.csShader.BackColor = System.Drawing.Color.LightGray; + this.csShader.BackColor = System.Drawing.SystemColors.Info; + this.csShader.ForeColor = System.Drawing.SystemColors.InfoText; this.csShader.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; this.csShader.Cursor = System.Windows.Forms.Cursors.Hand; this.csShader.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F); diff --git a/renderdocui/Windows/PipelineState/D3D11PipelineStateViewer.cs b/renderdocui/Windows/PipelineState/D3D11PipelineStateViewer.cs index 76bfe6f06..a611c2d9b 100644 --- a/renderdocui/Windows/PipelineState/D3D11PipelineStateViewer.cs +++ b/renderdocui/Windows/PipelineState/D3D11PipelineStateViewer.cs @@ -93,6 +93,9 @@ namespace renderdocui.Windows.PipelineState { InitializeComponent(); + if (SystemInformation.HighContrast) + toolStrip1.Renderer = new ToolStripSystemRenderer(); + m_DockContent = c; inputLayouts.Font = core.Config.PreferredFont; @@ -236,6 +239,7 @@ namespace renderdocui.Windows.PipelineState private void EmptyRow(TreelistView.Node node) { node.BackColor = Color.FromArgb(255, 70, 70); + node.ForeColor = Color.Black; } private void InactiveRow(TreelistView.Node node) @@ -246,6 +250,7 @@ namespace renderdocui.Windows.PipelineState private void ViewDetailsRow(TreelistView.Node node) { node.BackColor = Color.Aquamarine; + node.ForeColor = Color.Black; m_ViewDetailNodes.Add(node); } @@ -2716,7 +2721,7 @@ namespace renderdocui.Windows.PipelineState private void meshView_MouseEnter(object sender, EventArgs e) { - meshView.BackColor = Color.LightGray; + meshView.BackColor = SystemColors.ButtonShadow; } private void meshView_MouseLeave(object sender, EventArgs e) @@ -2767,15 +2772,24 @@ namespace renderdocui.Windows.PipelineState Color c = HSLColor(GetHueForVB((int)slot), 1.0f, 0.95f); if (slot < m_VBNodes.Count) + { m_VBNodes[(int)slot].DefaultBackColor = c; + m_VBNodes[(int)slot].ForeColor = Color.Black; + } for (int i = 0; i < inputLayouts.Nodes.Count; i++) { var n = inputLayouts.Nodes[i]; if (IA.layouts[i].InputSlot == slot) + { n.DefaultBackColor = c; + n.ForeColor = Color.Black; + } else + { n.DefaultBackColor = Color.Transparent; + n.ForeColor = Color.Transparent; + } } inputLayouts.Invalidate(); @@ -2785,10 +2799,16 @@ namespace renderdocui.Windows.PipelineState private void ia_MouseLeave(object sender, EventArgs e) { foreach (var n in iabuffers.Nodes) + { n.DefaultBackColor = Color.Transparent; + n.ForeColor = Color.Transparent; + } foreach (var n in inputLayouts.Nodes) + { n.DefaultBackColor = Color.Transparent; + n.ForeColor = Color.Transparent; + } inputLayouts.Invalidate(); iabuffers.Invalidate(); diff --git a/renderdocui/Windows/PipelineState/GLPipelineStateViewer.Designer.cs b/renderdocui/Windows/PipelineState/GLPipelineStateViewer.Designer.cs index fe2eb1d33..e48086139 100644 --- a/renderdocui/Windows/PipelineState/GLPipelineStateViewer.Designer.cs +++ b/renderdocui/Windows/PipelineState/GLPipelineStateViewer.Designer.cs @@ -1128,7 +1128,8 @@ // this.vsShader.Anchor = System.Windows.Forms.AnchorStyles.Left; this.vsShader.AutoSize = true; - this.vsShader.BackColor = System.Drawing.Color.LightGray; + this.vsShader.BackColor = System.Drawing.SystemColors.Info; + this.vsShader.ForeColor = System.Drawing.SystemColors.InfoText; this.vsShader.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; this.vsShader.Cursor = System.Windows.Forms.Cursors.Hand; this.vsShader.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F); @@ -1502,7 +1503,8 @@ // this.tcsShader.Anchor = System.Windows.Forms.AnchorStyles.Left; this.tcsShader.AutoSize = true; - this.tcsShader.BackColor = System.Drawing.Color.LightGray; + this.tcsShader.BackColor = System.Drawing.SystemColors.Info; + this.tcsShader.ForeColor = System.Drawing.SystemColors.InfoText; this.tcsShader.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; this.tcsShader.Cursor = System.Windows.Forms.Cursors.Hand; this.tcsShader.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F); @@ -1878,7 +1880,8 @@ // this.tesShader.Anchor = System.Windows.Forms.AnchorStyles.Left; this.tesShader.AutoSize = true; - this.tesShader.BackColor = System.Drawing.Color.LightGray; + this.tesShader.BackColor = System.Drawing.SystemColors.Info; + this.tesShader.ForeColor = System.Drawing.SystemColors.InfoText; this.tesShader.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; this.tesShader.Cursor = System.Windows.Forms.Cursors.Hand; this.tesShader.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F); @@ -2256,7 +2259,8 @@ // this.gsShader.Anchor = System.Windows.Forms.AnchorStyles.Left; this.gsShader.AutoSize = true; - this.gsShader.BackColor = System.Drawing.Color.LightGray; + this.gsShader.BackColor = System.Drawing.SystemColors.Info; + this.gsShader.ForeColor = System.Drawing.SystemColors.InfoText; this.gsShader.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; this.gsShader.Cursor = System.Windows.Forms.Cursors.Hand; this.gsShader.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F); @@ -3442,7 +3446,8 @@ // this.fsShader.Anchor = System.Windows.Forms.AnchorStyles.Left; this.fsShader.AutoSize = true; - this.fsShader.BackColor = System.Drawing.Color.LightGray; + this.fsShader.BackColor = System.Drawing.SystemColors.Info; + this.fsShader.ForeColor = System.Drawing.SystemColors.InfoText; this.fsShader.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; this.fsShader.Cursor = System.Windows.Forms.Cursors.Hand; this.fsShader.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F); @@ -4298,7 +4303,8 @@ // this.csShader.Anchor = System.Windows.Forms.AnchorStyles.Left; this.csShader.AutoSize = true; - this.csShader.BackColor = System.Drawing.Color.LightGray; + this.csShader.BackColor = System.Drawing.SystemColors.Info; + this.csShader.ForeColor = System.Drawing.SystemColors.InfoText; this.csShader.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; this.csShader.Cursor = System.Windows.Forms.Cursors.Hand; this.csShader.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F); diff --git a/renderdocui/Windows/PipelineState/GLPipelineStateViewer.cs b/renderdocui/Windows/PipelineState/GLPipelineStateViewer.cs index ae8024e46..6109cead9 100644 --- a/renderdocui/Windows/PipelineState/GLPipelineStateViewer.cs +++ b/renderdocui/Windows/PipelineState/GLPipelineStateViewer.cs @@ -83,6 +83,9 @@ namespace renderdocui.Windows.PipelineState { InitializeComponent(); + if (SystemInformation.HighContrast) + toolStrip1.Renderer = new ToolStripSystemRenderer(); + m_DockContent = c; inputLayouts.Font = core.Config.PreferredFont; diff --git a/renderdocui/Windows/PipelineState/VulkanPipelineStateViewer.Designer.cs b/renderdocui/Windows/PipelineState/VulkanPipelineStateViewer.Designer.cs index 8e7ae33a8..b5ca002f3 100644 --- a/renderdocui/Windows/PipelineState/VulkanPipelineStateViewer.Designer.cs +++ b/renderdocui/Windows/PipelineState/VulkanPipelineStateViewer.Designer.cs @@ -911,7 +911,8 @@ // this.vsShader.Anchor = System.Windows.Forms.AnchorStyles.Left; this.vsShader.AutoSize = true; - this.vsShader.BackColor = System.Drawing.Color.LightGray; + this.vsShader.BackColor = System.Drawing.SystemColors.Info; + this.vsShader.ForeColor = System.Drawing.SystemColors.InfoText; this.vsShader.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; this.vsShader.Cursor = System.Windows.Forms.Cursors.Hand; this.vsShader.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F); @@ -1139,7 +1140,8 @@ // this.hsShader.Anchor = System.Windows.Forms.AnchorStyles.Left; this.hsShader.AutoSize = true; - this.hsShader.BackColor = System.Drawing.Color.LightGray; + this.hsShader.BackColor = System.Drawing.SystemColors.Info; + this.hsShader.ForeColor = System.Drawing.SystemColors.InfoText; this.hsShader.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; this.hsShader.Cursor = System.Windows.Forms.Cursors.Hand; this.hsShader.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F); @@ -1367,7 +1369,8 @@ // this.dsShader.Anchor = System.Windows.Forms.AnchorStyles.Left; this.dsShader.AutoSize = true; - this.dsShader.BackColor = System.Drawing.Color.LightGray; + this.dsShader.BackColor = System.Drawing.SystemColors.Info; + this.dsShader.ForeColor = System.Drawing.SystemColors.InfoText; this.dsShader.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; this.dsShader.Cursor = System.Windows.Forms.Cursors.Hand; this.dsShader.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F); @@ -1594,7 +1597,8 @@ // this.gsShader.Anchor = System.Windows.Forms.AnchorStyles.Left; this.gsShader.AutoSize = true; - this.gsShader.BackColor = System.Drawing.Color.LightGray; + this.gsShader.BackColor = System.Drawing.SystemColors.Info; + this.gsShader.ForeColor = System.Drawing.SystemColors.InfoText; this.gsShader.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; this.gsShader.Cursor = System.Windows.Forms.Cursors.Hand; this.gsShader.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F); @@ -2343,7 +2347,8 @@ // this.psShader.Anchor = System.Windows.Forms.AnchorStyles.Left; this.psShader.AutoSize = true; - this.psShader.BackColor = System.Drawing.Color.LightGray; + this.psShader.BackColor = System.Drawing.SystemColors.Info; + this.psShader.ForeColor = System.Drawing.SystemColors.InfoText; this.psShader.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; this.psShader.Cursor = System.Windows.Forms.Cursors.Hand; this.psShader.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F); @@ -3047,7 +3052,8 @@ // this.csShader.Anchor = System.Windows.Forms.AnchorStyles.Left; this.csShader.AutoSize = true; - this.csShader.BackColor = System.Drawing.Color.LightGray; + this.csShader.BackColor = System.Drawing.SystemColors.Info; + this.csShader.ForeColor = System.Drawing.SystemColors.InfoText; this.csShader.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; this.csShader.Cursor = System.Windows.Forms.Cursors.Hand; this.csShader.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F); diff --git a/renderdocui/Windows/PipelineState/VulkanPipelineStateViewer.cs b/renderdocui/Windows/PipelineState/VulkanPipelineStateViewer.cs index 1141e883f..8eb1956c4 100644 --- a/renderdocui/Windows/PipelineState/VulkanPipelineStateViewer.cs +++ b/renderdocui/Windows/PipelineState/VulkanPipelineStateViewer.cs @@ -117,6 +117,9 @@ namespace renderdocui.Windows.PipelineState { InitializeComponent(); + if (SystemInformation.HighContrast) + toolStrip1.Renderer = new ToolStripSystemRenderer(); + m_DockContent = c; viAttrs.Font = core.Config.PreferredFont; diff --git a/renderdocui/Windows/ShaderViewer.cs b/renderdocui/Windows/ShaderViewer.cs index c541892e1..a360ba08d 100644 --- a/renderdocui/Windows/ShaderViewer.cs +++ b/renderdocui/Windows/ShaderViewer.cs @@ -225,6 +225,15 @@ namespace renderdocui.Windows { InitializeComponent(); + if (SystemInformation.HighContrast) + { + dockPanel.Skin = Helpers.MakeHighContrastDockPanelSkin(); + + debuggingStrip.Renderer = new ToolStripSystemRenderer(); + editStrip.Renderer = new ToolStripSystemRenderer(); + toolStrip1.Renderer = new ToolStripSystemRenderer(); + } + constantRegs.Font = variableRegs.Font = watchRegs.Font = @@ -427,6 +436,9 @@ namespace renderdocui.Windows { InitializeComponent(); + if (SystemInformation.HighContrast) + dockPanel.Skin = Helpers.MakeHighContrastDockPanelSkin(); + constantRegs.Font = variableRegs.Font = watchRegs.Font = diff --git a/renderdocui/Windows/TextureViewer.cs b/renderdocui/Windows/TextureViewer.cs index 77db5bbd0..87b7e7082 100644 --- a/renderdocui/Windows/TextureViewer.cs +++ b/renderdocui/Windows/TextureViewer.cs @@ -372,6 +372,17 @@ namespace renderdocui.Windows InitializeComponent(); + if (SystemInformation.HighContrast) + { + dockPanel.Skin = Helpers.MakeHighContrastDockPanelSkin(); + zoomStrip.Renderer = new ToolStripSystemRenderer(); + overlayStrip.Renderer = new ToolStripSystemRenderer(); + subStrip.Renderer = new ToolStripSystemRenderer(); + rangeStrip.Renderer = new ToolStripSystemRenderer(); + channelStrip.Renderer = new ToolStripSystemRenderer(); + actionsStrip.Renderer = new ToolStripSystemRenderer(); + } + m_Goto = new Dialogs.TextureGoto(GotoLocation); textureList.Font =