diff options
author | Vaclav Vancura <vaclav@vancura.org> | 2015-01-05 18:50:36 +0300 |
---|---|---|
committer | Vaclav Vancura <vaclav@vancura.org> | 2015-01-05 18:50:36 +0300 |
commit | 36f8c2df7a94c3bb56221d4309807a458e0006f2 (patch) | |
tree | d672a3daa005c56c3b644b8f008ada588b9d3f29 /main/src/addins/MonoDevelop.Debugger | |
parent | 9d8a5824583d0c02a4c44d8ce1687dc1aceb3847 (diff) |
[DebuggerVisualizers] Appearance tweaks
Diffstat (limited to 'main/src/addins/MonoDevelop.Debugger')
3 files changed, 32 insertions, 6 deletions
diff --git a/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.PreviewVisualizers/GenericPreviewVisualizer.cs b/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.PreviewVisualizers/GenericPreviewVisualizer.cs index ad0c2d609a..604979ad5e 100644 --- a/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.PreviewVisualizers/GenericPreviewVisualizer.cs +++ b/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.PreviewVisualizers/GenericPreviewVisualizer.cs @@ -26,6 +26,7 @@ using System; using MonoDevelop.Components; using Mono.Debugging.Client; +using Gtk; namespace MonoDevelop.Debugger.PreviewVisualizers { @@ -41,11 +42,26 @@ namespace MonoDevelop.Debugger.PreviewVisualizers public override Control GetVisualizerWidget (ObjectValue val) { string value = val.Value; + Gdk.Color col = new Gdk.Color (85, 85, 85); + if (!val.IsNull && (val.TypeName == "string" || val.TypeName == "char[]")) value = '"' + GetString (val) + '"'; if (DebuggingService.HasInlineVisualizer (val)) value = DebuggingService.GetInlineVisualizer (val).InlineVisualize (val); + var label = new Gtk.Label (value); + var font = label.Style.FontDescription.Copy (); + + if (font.SizeIsAbsolute) { + font.AbsoluteSize = font.Size - 1; + } else { + font.Size -= (int)(Pango.Scale.PangoScale); + } + + label.ModifyFont (font); + label.ModifyFg (StateType.Normal, col); + label.SetPadding (4, 4); + if (label.SizeRequest ().Width > 500) { label.WidthRequest = 500; label.Wrap = true; @@ -53,6 +69,7 @@ namespace MonoDevelop.Debugger.PreviewVisualizers } else { label.Justify = Gtk.Justification.Center; } + if (label.Layout.GetLine (1) != null) { label.Justify = Gtk.Justification.Left; var line15 = label.Layout.GetLine (15); @@ -60,7 +77,9 @@ namespace MonoDevelop.Debugger.PreviewVisualizers label.Text = value.Substring (0, line15.StartIndex).TrimEnd ('\r', '\n') + "\n…"; } } + label.Show (); + return label; } diff --git a/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.PreviewVisualizers/PreviewVisualizerWindow.cs b/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.PreviewVisualizers/PreviewVisualizerWindow.cs index 0f7b8f462a..29e434c7b3 100644 --- a/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.PreviewVisualizers/PreviewVisualizerWindow.cs +++ b/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.PreviewVisualizers/PreviewVisualizerWindow.cs @@ -43,7 +43,7 @@ namespace MonoDevelop.Debugger TransientFor = (Gtk.Window) invokingWidget.Toplevel; Theme.SetFlatColor (new Cairo.Color (245 / 256.0, 245 / 256.0, 245 / 256.0)); - Theme.Padding = 0; + Theme.Padding = 3; ShowArrow = true; var mainBox = new VBox (); var headerTable = new Table (1, 3, false); @@ -62,7 +62,7 @@ namespace MonoDevelop.Debugger headerTable.Attach (hb, 0, 1, 0, 1); var headerTitle = new Label (); - headerTitle.ModifyFg (StateType.Normal, new Color (64, 64, 64)); + headerTitle.ModifyFg (StateType.Normal, new Color (36, 36, 36)); var font = headerTitle.Style.FontDescription.Copy (); font.Weight = Pango.Weight.Bold; headerTitle.ModifyFont (font); @@ -101,7 +101,7 @@ namespace MonoDevelop.Debugger widget = new GenericPreviewVisualizer ().GetVisualizerWidget (val); } var alignment = new Alignment (0, 0, 1, 1); - alignment.SetPadding (1, 3, 3, 3); + alignment.SetPadding (3, 5, 5, 5); alignment.Show (); alignment.Add (widget); mainBox.PackStart (alignment); diff --git a/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/ObjectValueTreeView.cs b/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/ObjectValueTreeView.cs index bde7178708..e8e58d91d1 100644 --- a/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/ObjectValueTreeView.cs +++ b/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/ObjectValueTreeView.cs @@ -205,14 +205,21 @@ namespace MonoDevelop.Debugger { protected override void Render (Gdk.Drawable window, Widget widget, Gdk.Rectangle background_area, Gdk.Rectangle cell_area, Gdk.Rectangle expose_area, CellRendererState flags) { + var darkColor = Color.WithIncreasedLight (-0.15); + using (Cairo.Context cr = Gdk.CairoHelper.Create (window)) { - cr.LineWidth = 0.5; double center_x = cell_area.X + Math.Round ((double)(cell_area.Width / 2d)); double center_y = cell_area.Y + Math.Round ((double)(cell_area.Height / 2d)); - cr.Arc (center_x, center_y, 5, 0, 2 * Math.PI); + + // TODO: VV: On retina this should be LineWidth = 0.5 and Arc size needs to match + + // @1x: + cr.LineWidth = 1; + cr.Arc (center_x, center_y, 5.5f, 0, 2 * Math.PI); + cr.SetSourceRGBA (Color.Red, Color.Green, Color.Blue, 1); cr.FillPreserve (); - cr.SetSourceRGBA (0, 0, 0, 1); + cr.SetSourceRGBA (darkColor.Red, darkColor.Green, darkColor.Blue, 1); cr.Stroke (); } } |