add menu entry in Options for fix_mouse_coord

This commit is contained in:
stefan schippers 2023-10-28 11:51:21 +02:00
parent 78981f2c2f
commit a76dca4f29
2 changed files with 36 additions and 25 deletions

View File

@ -1028,9 +1028,11 @@ int xschem(ClientData clientdata, Tcl_Interp *interp, int argc, const char * arg
Tcl_SetResult(interp, res, TCL_VOLATILE);
}
else if(!strcmp(argv[2], "fix_broken_tiled_fill")) { /* get drawing method setting (for broken GPUs) */
if(!xctx) {Tcl_SetResult(interp, not_avail, TCL_STATIC); return TCL_ERROR;}
Tcl_SetResult(interp, my_itoa(fix_broken_tiled_fill),TCL_VOLATILE);
}
else if(!strcmp(argv[2], "fix_mouse_coord")) { /* get fix_mouse_coord setting (fix for broken RDP)*/
Tcl_SetResult(interp, my_itoa(fix_mouse_coord),TCL_VOLATILE);
}
else if(!strcmp(argv[2], "format")) { /* alternate format attribute to use in netlist (or NULL) */
if(!xctx) {Tcl_SetResult(interp, not_avail, TCL_STATIC); return TCL_ERROR;}
if(!xctx->format ) Tcl_SetResult(interp, "<NULL>",TCL_STATIC);
@ -3987,9 +3989,11 @@ int xschem(ClientData clientdata, Tcl_Interp *interp, int argc, const char * arg
xctx->draw_window=atoi(argv[3]);
}
else if(!strcmp(argv[2], "fix_broken_tiled_fill")) { /* alternate drawing method for broken GPUs */
if(!xctx) {Tcl_SetResult(interp, not_avail, TCL_STATIC); return TCL_ERROR;}
fix_broken_tiled_fill = atoi(argv[3]);
}
else if(!strcmp(argv[2], "fix_mouse_coord")) { /* fix for wrong mouse coords in RDP software */
fix_mouse_coord = atoi(argv[3]);
}
else if(!strcmp(argv[2], "format")) { /* set name of custom format attribute used for netlisting */
if(!xctx) {Tcl_SetResult(interp, not_avail, TCL_STATIC); return TCL_ERROR;}
my_strdup(_ALLOC_ID_, &xctx->format, argv[3]);

View File

@ -6519,6 +6519,12 @@ proc build_widgets { {topwin {} } } {
setup_recent_menu $topwin
$topwin.menubar.file.menu add command -label {Create new window/tab} -command "xschem new_schematic create"
toolbar_add FileOpen "xschem load" "Open File" $topwin
$topwin.menubar.file.menu add command -label "Open schematic in new window/tab" \
-command "xschem schematic_in_new_window" -accelerator Alt+E
$topwin.menubar.file.menu add command -label "Open symbol in new window/tab" \
-command "xschem symbol_in_new_window" -accelerator Alt+I
$topwin.menubar.file.menu add command -label "Delete files" -command "xschem delete_files" -accelerator {Shift-D}
$topwin.menubar.file.menu add command -label "Save" -command "xschem save" -accelerator {Ctrl+S}
toolbar_add FileSave "xschem save" "Save File" $topwin
@ -6541,11 +6547,15 @@ proc build_widgets { {topwin {} } } {
$topwin.menubar.file.menu add command -label "Save as symbol" \
-command "xschem saveas {} symbol" -accelerator {Ctrl+Alt+S}
# added svg, png 20171022
$topwin.menubar.file.menu add command -label "PDF/PS Export" -command "xschem print pdf" -accelerator {*}
$topwin.menubar.file.menu add command -label "PDF/PS Export Full" -command "xschem print pdf_full"
$topwin.menubar.file.menu add command -label "Hierarchical PDF/PS Export" -command "xschem hier_psprint"
$topwin.menubar.file.menu add command -label "PNG Export" -command "xschem print png" -accelerator {Ctrl+*}
$topwin.menubar.file.menu add command -label "SVG Export" -command "xschem print svg" -accelerator {Alt+*}
$topwin.menubar.file.menu add cascade -label "Image export" -menu $topwin.menubar.file.menu.im_exp
menu $topwin.menubar.file.menu.im_exp -tearoff 0
$topwin.menubar.file.menu.im_exp add command -label "PDF/PS Export" -command "xschem print pdf" -accelerator {*}
$topwin.menubar.file.menu.im_exp add command -label "PDF/PS Export Full" -command "xschem print pdf_full"
$topwin.menubar.file.menu.im_exp add command -label "Hierarchical PDF/PS Export" -command "xschem hier_psprint"
$topwin.menubar.file.menu.im_exp add command -label "PNG Export" -command "xschem print png" -accelerator {Ctrl+*}
$topwin.menubar.file.menu.im_exp add command -label "SVG Export" -command "xschem print svg" -accelerator {Alt+*}
$topwin.menubar.file.menu add separator
$topwin.menubar.file.menu add command -label "Start new Xschem process" -accelerator {X} -command {
xschem new_process
@ -6602,13 +6612,26 @@ proc build_widgets { {topwin {} } } {
-command { xschem redraw }
$topwin.menubar.option.menu add separator
$topwin.menubar.option.menu add checkbutton -label "Fix for GPUs with broken tiled fill" \
-variable fix_broken_tiled_fill \
-command {
if { $fix_broken_tiled_fill == 1} {
xschem set fix_broken_tiled_fill 1
} else {
xschem set fix_broken_tiled_fill 0
}
xschem resetwin 1 1 1 0 0
xschem redraw
}
$topwin.menubar.option.menu add checkbutton -label "Fix broken RDP mouse coordinates" \
-variable fix_mouse_coord -command {xschem set fix_mouse_coord $fix_mouse_coord}
$topwin.menubar.option.menu add separator
$topwin.menubar.option.menu add cascade -label "Netlist format / Symbol mode" \
-menu $topwin.menubar.option.menu.netlist
menu $topwin.menubar.option.menu.netlist -tearoff 0
$topwin.menubar.option.menu.netlist add checkbutton -label "Flat netlist" -variable flat_netlist \
-accelerator : \
-command {
@ -6649,10 +6672,6 @@ proc build_widgets { {topwin {} } } {
$topwin.menubar.edit.menu add command -label "Delete" -command "xschem delete" -accelerator Del
toolbar_add EditDelete "xschem delete" "Delete" $topwin
$topwin.menubar.edit.menu add command -label "Select all" -command "xschem select_all" -accelerator Ctrl+A
$topwin.menubar.edit.menu add command -label "Edit schematic in new window/tab" \
-command "xschem schematic_in_new_window" -accelerator Alt+E
$topwin.menubar.edit.menu add command -label "Edit symbol in new window/tab" \
-command "xschem symbol_in_new_window" -accelerator Alt+I
$topwin.menubar.edit.menu add command -label "Duplicate objects" -command "xschem copy_objects" -accelerator C
toolbar_add EditDuplicate "xschem copy_objects" "Duplicate objects" $topwin
$topwin.menubar.edit.menu add command -label "Move objects" -command "xschem move_objects" -accelerator M
@ -6734,18 +6753,6 @@ proc build_widgets { {topwin {} } } {
if { $draw_window == 1} { xschem set draw_window 1} else { xschem set draw_window 0}
}
$topwin.menubar.view.menu add checkbutton -label "Fix for GPUs with broken tiled fill" \
-variable fix_broken_tiled_fill \
-command {
if { $fix_broken_tiled_fill == 1} {
xschem set fix_broken_tiled_fill 1
} else {
xschem set fix_broken_tiled_fill 0
}
xschem resetwin 1 1 1 0 0
xschem redraw
}
$topwin.menubar.view.menu add checkbutton -label "Toggle variable line width" -variable change_lw \
-accelerator {_}
$topwin.menubar.view.menu add command -label "Set line width" \