various fixes in compare_schematics()

This commit is contained in:
Stefan Frederik 2022-08-28 10:23:32 +02:00
parent eebd2b38fa
commit 1519afa241
2 changed files with 14 additions and 9 deletions

View File

@ -193,7 +193,7 @@ void draw_selection(GC g, int interruptable)
int customfont;
#endif
if(g == xctx->gc[SELLAYER]) xctx->movelastsel = xctx->lastsel;
if(g != xctx->gctiled) xctx->movelastsel = xctx->lastsel;
for(i=0;i<xctx->movelastsel;i++)
{
c = xctx->sel_array[i].col;n = xctx->sel_array[i].n;
@ -437,10 +437,11 @@ void draw_selection(GC g, int interruptable)
ROTATION(xctx->move_rot, xctx->move_flip, xctx->x1, xctx->y_1,
xctx->inst[n].x0, xctx->inst[n].y0, xctx->rx1,xctx->ry1);
}
for(k=0;k<cadlayers;k++)
draw_temp_symbol(ADD, g, n, k, xctx->move_flip,
( xctx->move_flip && (xctx->inst[n].rot & 1) ) ? xctx->move_rot+2 : xctx->move_rot,
xctx->rx1-xctx->inst[n].x0+xctx->deltax,xctx->ry1-xctx->inst[n].y0+xctx->deltay);
for(k=0;k<cadlayers;k++) {
draw_temp_symbol(ADD, g, n, k, xctx->move_flip,
( xctx->move_flip && (xctx->inst[n].rot & 1) ) ? xctx->move_rot+2 : xctx->move_rot,
xctx->rx1-xctx->inst[n].x0+xctx->deltax,xctx->ry1-xctx->inst[n].y0+xctx->deltay);
}
break;
}
#ifdef __unix__

View File

@ -754,7 +754,8 @@ int compare_schematics(const char *f)
if(!found) {
dbg(1, "schematic 2 instance %d: %s mismatch or not found in schematic 1\n", i,
xctx->inst[i].instname ? xctx->inst[i].instname : "");
select_element(i,SELECTED, 1, 1);
xctx->inst[i].sel = SELECTED;
xctx->need_reb_sel_arr=1;
ret = 1;
}
}
@ -769,7 +770,8 @@ int compare_schematics(const char *f)
if(!found) {
dbg(1, "schematic 2 net %d: %s mismatch or not found in schematic 1\n", i,
xctx->wire[i].prop_ptr ? xctx->wire[i].prop_ptr : "");
select_wire(i, SELECTED, 1);
xctx->wire[i].sel = SELECTED;
xctx->need_reb_sel_arr=1;
ret = 1;
}
}
@ -795,7 +797,8 @@ int compare_schematics(const char *f)
xctx->inst[i].prop_ptr ? xctx->inst[i].prop_ptr : "");
found = int_hash_lookup(table2, s, i, XLOOKUP);
if(!found) {
select_element(i,SELECTED, 1, 1);
xctx->inst[i].sel = SELECTED;
xctx->need_reb_sel_arr=1;
ret = 1;
}
}
@ -807,7 +810,8 @@ int compare_schematics(const char *f)
xctx->wire[i].x2, xctx->wire[i].y2);
found = int_hash_lookup(table2, s, i, XLOOKUP);
if(!found) {
select_wire(i, SELECTED, 1);
xctx->wire[i].sel = SELECTED;
xctx->need_reb_sel_arr=1;
ret = 1;
}
}