From 8eb60ae32b07bcabdd5618ad96dbf64fb2a937be Mon Sep 17 00:00:00 2001 From: stefan schippers Date: Thu, 28 Nov 2024 11:37:21 +0100 Subject: [PATCH] allow full specification of file selector window geometry and pane sizes. examples in xschemrc --- src/xschem.tcl | 20 ++++++++++---------- src/xschemrc | 10 ++++++++-- 2 files changed, 18 insertions(+), 12 deletions(-) diff --git a/src/xschem.tcl b/src/xschem.tcl index 998982b0..2fb3a875 100644 --- a/src/xschem.tcl +++ b/src/xschem.tcl @@ -3848,7 +3848,7 @@ proc load_file_dialog {{msg {}} {ext {}} {global_initdir {INITIALINSTDIR}} frame .load.l.paneright.f -takefocus 0 frame .load.l.paneright.draw -background white -height 3.8c -takefocus 0 .load.l.paneright add .load.l.paneright.f - .load.l.paneright add .load.l.paneright.draw -minsize 200 + .load.l.paneright add .load.l.paneright.draw -minsize 150 if { ![catch {.load.l.paneright panecget .load.l.paneright.f -stretch}]} { @@ -3880,7 +3880,7 @@ proc load_file_dialog {{msg {}} {ext {}} {global_initdir {INITIALINSTDIR}} c_toolbar::display } .load.l add .load.l.paneleft -minsize 40 - .load.l add .load.l.paneright -minsize 300 + .load.l add .load.l.paneright -minsize 150 eval .load.l paneconfigure .load.l.paneleft $optnever eval .load.l paneconfigure .load.l.paneright $optalways frame .load.buttons -takefocus 0 @@ -4040,34 +4040,34 @@ proc load_file_dialog {{msg {}} {ext {}} {global_initdir {INITIALINSTDIR}} if { [info exists file_dialog_v_sp0] } { eval .load.l.paneright sash mark 0 [.load.l.paneright sash coord 0] - eval .load.l.paneright sash dragto 0 [subst $file_dialog_v_sp0] + eval .load.l.paneright sash dragto 0 [subst {1 $file_dialog_v_sp0}] } if { [info exists file_dialog_sp0] } { if { $file_dialog_loadfile == 2} { eval .load.l sash mark 1 [.load.l sash coord 1] - eval .load.l sash dragto 1 [subst $file_dialog_sp0] + eval .load.l sash dragto 1 [subst {$file_dialog_sp0 1}] } else { eval .load.l sash mark 0 [.load.l sash coord 0] - eval .load.l sash dragto 0 [subst $file_dialog_sp0] + eval .load.l sash dragto 0 [subst {$file_dialog_sp0 1}] } } if { $file_dialog_loadfile == 2 && [info exists file_dialog_sp1] } { eval .load.l sash mark 0 [.load.l sash coord 0] - eval .load.l sash dragto 0 [subst $file_dialog_sp1] + eval .load.l sash dragto 0 [subst {$file_dialog_sp1 1}] } ### update .load.l.paneleft.list xview moveto 1 bind .load { - set file_dialog_v_sp0 [.load.l.paneright sash coord 0] + set file_dialog_v_sp0 [lindex [.load.l.paneright sash coord 0] 1] if { $file_dialog_loadfile == 2} { - set file_dialog_sp0 [.load.l sash coord 1] + set file_dialog_sp0 [lindex [.load.l sash coord 1] 0] } else { - set file_dialog_sp0 [.load.l sash coord 0] + set file_dialog_sp0 [lindex [.load.l sash coord 0] 0] } if {$file_dialog_loadfile == 2} { - set file_dialog_sp1 [.load.l sash coord 0] + set file_dialog_sp1 [lindex [.load.l sash coord 0] 0] } set file_dialog_default_geometry [wm geometry .load] .load.l.paneleft.list xview moveto 1 diff --git a/src/xschemrc b/src/xschemrc index 6e937487..08f9cd9b 100644 --- a/src/xschemrc +++ b/src/xschemrc @@ -171,8 +171,14 @@ #### this is the default: # set initial_geometry {900x600} -#### initial geometry of load /save / insert component file selector -# set file_dialog_default_geometry 800x600 +#### initial size of the load_file_dialog (the file selector) dialog box +# set file_dialog_default_geometry 700x680+100+40 +#### load_file_dialog directory list (+ recent if shown) X width in pixels +# set file_dialog_sp0 350 +#### load_file_dialog recent components list X width in pixels +# set file_dialog_sp1 100 +#### load_file_dialog components list Y height in pixels +# set file_dialog_v_sp0 420 #### display full path (1) or only name (0) for component directories. Default: 1 # set load_file_dialog_fullpath 1