From 632dbd8931bb2fe270c6b1cb3f1d789d84810ec0 Mon Sep 17 00:00:00 2001 From: Stefan Schippers Date: Sat, 17 Oct 2020 03:47:32 +0200 Subject: [PATCH] allow dim background color in "View -> Dim oclors" --- src/xinit.c | 14 ++++++++++++-- src/xschem.tcl | 5 ++++- 2 files changed, 16 insertions(+), 3 deletions(-) diff --git a/src/xinit.c b/src/xinit.c index 09df34e5..90612053 100644 --- a/src/xinit.c +++ b/src/xinit.c @@ -261,8 +261,12 @@ void init_color_array(double dim) { char s[256]; /* overflow safe 20161122 */ int i; + int dim_bg; unsigned int r, g, b; double rr, gg, bb; + static int done=0; + + dim_bg = tclgetvar("dim_background")[0] == '1' ? 1: 0; for(i=0;i=0.) { rr +=(51.-rr/5.)*dim; gg +=(51.-gg/5.)*dim; @@ -288,7 +293,12 @@ void init_color_array(double dim) if(b>0xff) b=0xff; } my_snprintf(s, S(s), "#%02x%02x%02x", r, g, b); - my_strdup(605, &color_array[i], s); + if(!done) { + my_strdup(605, &color_array[i], s); + done = 1; + } else if(dim_bg || i!=BACKLAYER ) { + my_strdup(605, &color_array[i], s); + } } } diff --git a/src/xschem.tcl b/src/xschem.tcl index fc486827..36afa060 100644 --- a/src/xschem.tcl +++ b/src/xschem.tcl @@ -1739,13 +1739,15 @@ proc select_layers {} { proc color_dim {} { toplevel .dim -class dialog wm title .dim {Dim colors} + checkbutton .dim.bg -text {Dim background} -variable dim_background scale .dim.scale -digits 2 -label {Dim factor} -length 256 \ -showvalue 1 -command {xschem color_dim} -orient horizontal \ -from -5 -to 5 -resolution 0.1 button .dim.ok -text OK -command {destroy .dim} .dim.scale set [xschem get dim] pack .dim.scale - pack .dim.ok + pack .dim.bg -side left + pack .dim.ok -side right -anchor e } proc about {} { @@ -3210,6 +3212,7 @@ set_ne cairo_font_name {Arial} set has_cairo 0 set rotated_text {} ;#20171208 set_ne dark_colorscheme 1 +set_ne dim_background 0 ##### set colors if {!$rainbow_colors} { set_ne cadlayers 22