some "tcl_version > 8.4" conditions in xschem.tcl to ensure proper working on old (tcl/tk8.4) machines.
This commit is contained in:
parent
1536e77b62
commit
ca9786ce86
|
|
@ -309,7 +309,10 @@ proc update_recent_file {f} {
|
||||||
lappend recentfile [abs_sym_path $i]
|
lappend recentfile [abs_sym_path $i]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
set recentfile [lreplace $recentfile 10 10]
|
# tcl8.4 errors if using lreplace past the last element
|
||||||
|
if { [llength $recentfile] > 10 } {
|
||||||
|
set recentfile [lreplace $recentfile 10 end]
|
||||||
|
}
|
||||||
write_recent_file
|
write_recent_file
|
||||||
if { ![info exists ::no_x] } setup_recent_menu
|
if { ![info exists ::no_x] } setup_recent_menu
|
||||||
}
|
}
|
||||||
|
|
@ -2187,7 +2190,9 @@ proc edit_prop {txtlabel} {
|
||||||
set selected_tok {<ALL>}
|
set selected_tok {<ALL>}
|
||||||
set old_selected_tok {<ALL>}
|
set old_selected_tok {<ALL>}
|
||||||
label .dialog.f2.r4 -text { Edit Attr:}
|
label .dialog.f2.r4 -text { Edit Attr:}
|
||||||
ttk::combobox .dialog.f2.r5 -values $tok_list -textvariable selected_tok -width 14
|
if { [ info tclversion] > 8.4} {
|
||||||
|
ttk::combobox .dialog.f2.r5 -values $tok_list -textvariable selected_tok -width 14
|
||||||
|
}
|
||||||
|
|
||||||
pack .dialog.f1.l2 .dialog.f1.e2 .dialog.f1.b1 .dialog.f1.b2 .dialog.f1.b3 .dialog.f1.b4 .dialog.f1.b5 -side left -expand 1
|
pack .dialog.f1.l2 .dialog.f1.e2 .dialog.f1.b1 .dialog.f1.b2 .dialog.f1.b3 .dialog.f1.b4 .dialog.f1.b5 -side left -expand 1
|
||||||
pack .dialog.f4 -side top -anchor nw
|
pack .dialog.f4 -side top -anchor nw
|
||||||
|
|
@ -2199,7 +2204,7 @@ proc edit_prop {txtlabel} {
|
||||||
pack .dialog.f2.r2 -side left
|
pack .dialog.f2.r2 -side left
|
||||||
pack .dialog.f2.r3 -side left
|
pack .dialog.f2.r3 -side left
|
||||||
pack .dialog.f2.r4 -side left
|
pack .dialog.f2.r4 -side left
|
||||||
pack .dialog.f2.r5 -side left
|
if { [ info tclversion] > 8.4 } { pack .dialog.f2.r5 -side left }
|
||||||
pack .dialog.yscroll -side right -fill y
|
pack .dialog.yscroll -side right -fill y
|
||||||
pack .dialog.xscroll -side bottom -fill x
|
pack .dialog.xscroll -side bottom -fill x
|
||||||
pack .dialog.e1 -fill both -expand yes
|
pack .dialog.e1 -fill both -expand yes
|
||||||
|
|
@ -2211,49 +2216,51 @@ proc edit_prop {txtlabel} {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
bind .dialog.f2.r5 <<ComboboxSelected>> {
|
if { [ info tclversion] > 8.4} {
|
||||||
if {$old_selected_tok ne $selected_tok} {
|
bind .dialog.f2.r5 <<ComboboxSelected>> {
|
||||||
if { $old_selected_tok eq {<ALL>} } {
|
if {$old_selected_tok ne $selected_tok} {
|
||||||
|
if { $old_selected_tok eq {<ALL>} } {
|
||||||
|
set retval_orig [.dialog.e1 get 1.0 {end - 1 chars}]
|
||||||
|
} else {
|
||||||
|
set retval [.dialog.e1 get 1.0 {end - 1 chars}]
|
||||||
|
regsub -all {(["\\])} $retval {\\\1} retval
|
||||||
|
set retval \"${retval}\"
|
||||||
|
set retval_orig [xschem subst_tok $retval_orig $old_selected_tok $retval]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if {$selected_tok eq {<ALL>} } {
|
||||||
|
set retval $retval_orig
|
||||||
|
} else {
|
||||||
|
set retval [xschem get_tok $retval_orig $selected_tok 2]
|
||||||
|
# regsub -all {\\?"} $retval {"} retval
|
||||||
|
}
|
||||||
|
.dialog.e1 delete 1.0 end
|
||||||
|
.dialog.e1 insert 1.0 $retval
|
||||||
|
set old_selected_tok $selected_tok
|
||||||
|
}
|
||||||
|
|
||||||
|
bind .dialog.f2.r5 <KeyRelease> {
|
||||||
|
set selected_tok [.dialog.f2.r5 get]
|
||||||
|
if { $old_selected_tok eq {<ALL>}} {
|
||||||
set retval_orig [.dialog.e1 get 1.0 {end - 1 chars}]
|
set retval_orig [.dialog.e1 get 1.0 {end - 1 chars}]
|
||||||
} else {
|
} else {
|
||||||
set retval [.dialog.e1 get 1.0 {end - 1 chars}]
|
set retval [.dialog.e1 get 1.0 {end - 1 chars}]
|
||||||
regsub -all {(["\\])} $retval {\\\1} retval
|
if {$retval ne {}} {
|
||||||
set retval \"${retval}\"
|
regsub -all {(["\\])} $retval {\\\1} retval
|
||||||
set retval_orig [xschem subst_tok $retval_orig $old_selected_tok $retval]
|
set retval \"${retval}\"
|
||||||
|
set retval_orig [xschem subst_tok $retval_orig $old_selected_tok $retval]
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
if {$selected_tok eq {<ALL>} } {
|
||||||
if {$selected_tok eq {<ALL>} } {
|
set retval $retval_orig
|
||||||
set retval $retval_orig
|
} else {
|
||||||
} else {
|
set retval [xschem get_tok $retval_orig $selected_tok 2]
|
||||||
set retval [xschem get_tok $retval_orig $selected_tok 2]
|
# regsub -all {\\?"} $retval {"} retval
|
||||||
# regsub -all {\\?"} $retval {"} retval
|
|
||||||
}
|
|
||||||
.dialog.e1 delete 1.0 end
|
|
||||||
.dialog.e1 insert 1.0 $retval
|
|
||||||
set old_selected_tok $selected_tok
|
|
||||||
}
|
|
||||||
|
|
||||||
bind .dialog.f2.r5 <KeyRelease> {
|
|
||||||
set selected_tok [.dialog.f2.r5 get]
|
|
||||||
if { $old_selected_tok eq {<ALL>}} {
|
|
||||||
set retval_orig [.dialog.e1 get 1.0 {end - 1 chars}]
|
|
||||||
} else {
|
|
||||||
set retval [.dialog.e1 get 1.0 {end - 1 chars}]
|
|
||||||
if {$retval ne {}} {
|
|
||||||
regsub -all {(["\\])} $retval {\\\1} retval
|
|
||||||
set retval \"${retval}\"
|
|
||||||
set retval_orig [xschem subst_tok $retval_orig $old_selected_tok $retval]
|
|
||||||
}
|
}
|
||||||
|
.dialog.e1 delete 1.0 end
|
||||||
|
.dialog.e1 insert 1.0 $retval
|
||||||
|
set old_selected_tok $selected_tok
|
||||||
}
|
}
|
||||||
if {$selected_tok eq {<ALL>} } {
|
|
||||||
set retval $retval_orig
|
|
||||||
} else {
|
|
||||||
set retval [xschem get_tok $retval_orig $selected_tok 2]
|
|
||||||
# regsub -all {\\?"} $retval {"} retval
|
|
||||||
}
|
|
||||||
.dialog.e1 delete 1.0 end
|
|
||||||
.dialog.e1 insert 1.0 $retval
|
|
||||||
set old_selected_tok $selected_tok
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue