mirror of
git://projects.qi-hardware.com/eda-tools.git
synced 2024-11-17 22:18:26 +02:00
eeshow/gui/sheet.c: remove glabel pop-up when scrolling
Scrolling changes the geometry and the pop-up ended up at weird places.
This commit is contained in:
parent
cb2cdd59e6
commit
bbdf819c85
@ -47,25 +47,27 @@ static void canvas_coord(const struct gui_ctx *ctx,
|
|||||||
/* ----- Zoom -------------------------------------------------------------- */
|
/* ----- Zoom -------------------------------------------------------------- */
|
||||||
|
|
||||||
|
|
||||||
static void zoom_in(struct gui_ctx *ctx, int x, int y)
|
static bool zoom_in(struct gui_ctx *ctx, int x, int y)
|
||||||
{
|
{
|
||||||
if (ctx->zoom == 0)
|
if (ctx->zoom == 0)
|
||||||
return;
|
return 0;
|
||||||
ctx->zoom--;
|
ctx->zoom--;
|
||||||
ctx->x = (ctx->x + x) / 2;
|
ctx->x = (ctx->x + x) / 2;
|
||||||
ctx->y = (ctx->y + y) / 2;
|
ctx->y = (ctx->y + y) / 2;
|
||||||
redraw(ctx);
|
redraw(ctx);
|
||||||
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static void zoom_out(struct gui_ctx *ctx, int x, int y)
|
static bool zoom_out(struct gui_ctx *ctx, int x, int y)
|
||||||
{
|
{
|
||||||
if (ctx->curr_sheet->w >> ctx->zoom <= 16)
|
if (ctx->curr_sheet->w >> ctx->zoom <= 16)
|
||||||
return;
|
return 0;
|
||||||
ctx->zoom++;
|
ctx->zoom++;
|
||||||
ctx->x = 2 * ctx->x - x;
|
ctx->x = 2 * ctx->x - x;
|
||||||
ctx->y = 2 * ctx->y - y;
|
ctx->y = 2 * ctx->y - y;
|
||||||
redraw(ctx);
|
redraw(ctx);
|
||||||
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -371,11 +373,16 @@ static void sheet_scroll(void *user, int x, int y, int dy)
|
|||||||
struct gui_ctx *ctx = user;
|
struct gui_ctx *ctx = user;
|
||||||
int ex, ey;
|
int ex, ey;
|
||||||
|
|
||||||
|
|
||||||
canvas_coord(ctx, x, y, &ex, &ey);
|
canvas_coord(ctx, x, y, &ex, &ey);
|
||||||
if (dy < 0)
|
if (dy < 0) {
|
||||||
zoom_in(ctx, ex, ey);
|
if (!zoom_in(ctx, ex, ey))
|
||||||
else
|
return;
|
||||||
zoom_out(ctx, ex, ey);
|
} else {
|
||||||
|
if (!zoom_out(ctx, ex, ey))
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
dehover_glabel(ctx);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user