diff options
author | Laurent Ghigonis <laurent@p1sec.com> | 2012-11-05 04:06:39 +0100 |
---|---|---|
committer | Laurent Ghigonis <laurent@p1sec.com> | 2012-11-05 04:06:39 +0100 |
commit | c7fcc07f9f9602058447af7769e1cdfd185493a7 (patch) | |
tree | 02785bbfbc2ef00f5f7207d77513c148d7f127ef | |
parent | TODO++ (diff) | |
download | glouglou-c7fcc07f9f9602058447af7769e1cdfd185493a7.tar.xz glouglou-c7fcc07f9f9602058447af7769e1cdfd185493a7.zip |
fix object size so it does fit the container size exactly.
also call grid_inject_pattern() on mouse down.
-rw-r--r-- | src/elife_evas_smart.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/src/elife_evas_smart.c b/src/elife_evas_smart.c index 086b1a2..09445e5 100644 --- a/src/elife_evas_smart.c +++ b/src/elife_evas_smart.c @@ -289,16 +289,17 @@ grid_redraw(struct grid *grid, int w, int h) int i,j; Evas_Object *o; - grid->pix_w = w; - grid->pix_h = h; grid->cell_pix_w = w / grid->w; grid->cell_pix_h = h / grid->h; + grid->pix_w = (w / grid->w) * grid->w; + grid->pix_h = (h / grid->h) * grid->h; if (DEBUG) printf("redraw: container %d %d cell %d %d\n", w, h, grid->cell_pix_w, grid->cell_pix_h); - evas_object_image_fill_set(grid->image, 0, 0, w, h); - evas_object_image_size_set (grid->image, w, h); + evas_object_image_fill_set(grid->image, 0, 0, grid->pix_w, grid->pix_h); + evas_object_image_size_set (grid->image, grid->pix_w, grid->pix_h); evas_object_resize(grid->image, w, h); + /* XXX could be optimized to avoid flickering on resize */ if (grid->mem) free(grid->mem); grid->mem = calloc(w * h, sizeof(int)); @@ -385,7 +386,7 @@ grid_mouse_down(void *data, struct grid *grid; grid = data; - // XXX + grid_inject_pattern(grid); } Evas_Object * |