diff options
author | Cyrille Bagard <nocbos@gmail.com> | 2013-01-06 02:35:37 (GMT) |
---|---|---|
committer | Cyrille Bagard <nocbos@gmail.com> | 2013-01-06 02:35:37 (GMT) |
commit | dcd03173f71b09f38238f50dfcf4c1db0c014c4c (patch) | |
tree | 0069e4d74bdacfd130fcf46282a32914c645a7cb /src/gtkext/gtkbufferview.c | |
parent | 405698182c46a82d92ccd50baa43fea5e40b1f6a (diff) |
Transferred the scale computing to the rendered view.
git-svn-id: svn://svn.gna.org/svn/chrysalide/trunk@319 abbe820e-26c8-41b2-8c08-b7b2b41f8b0a
Diffstat (limited to 'src/gtkext/gtkbufferview.c')
-rw-r--r-- | src/gtkext/gtkbufferview.c | 21 |
1 files changed, 8 insertions, 13 deletions
diff --git a/src/gtkext/gtkbufferview.c b/src/gtkext/gtkbufferview.c index 027ae5c..62a861a 100644 --- a/src/gtkext/gtkbufferview.c +++ b/src/gtkext/gtkbufferview.c @@ -2,7 +2,7 @@ /* OpenIDA - Outil d'analyse de fichiers binaires * gtkbufferview.c - affichage de tampons de lignes * - * Copyright (C) 2010-2012 Cyrille Bagard + * Copyright (C) 2010-2013 Cyrille Bagard * * This file is part of OpenIDA. * @@ -50,7 +50,7 @@ static bool gtk_buffer_view_get_address_coordinates(const GtkBufferView *, vmpa_ static void gtk_buffer_view_scroll(GtkBufferView *); /* Place en cache un rendu destiné à l'aperçu graphique rapide. */ -static void gtk_buffer_view_cache_glance(GtkBufferView *, cairo_t *); +static void gtk_buffer_view_cache_glance(GtkBufferView *, cairo_t *, const GtkAllocation *, double); @@ -384,6 +384,8 @@ static void gtk_buffer_view_scroll(GtkBufferView *view) * * * Paramètres : view = composant GTK à manipuler. * * cairo = assistant pour la création de rendus. * +* area = taille de la surface réduite à disposition. * +* scale = échelle vis à vis de la taille réelle. * * * * Description : Place en cache un rendu destiné à l'aperçu graphique rapide. * * * @@ -393,19 +395,12 @@ static void gtk_buffer_view_scroll(GtkBufferView *view) * * ******************************************************************************/ -static void gtk_buffer_view_cache_glance(GtkBufferView *view, cairo_t *cairo) +static void gtk_buffer_view_cache_glance(GtkBufferView *view, cairo_t *cairo, const GtkAllocation *area, double scale) { - GtkRequisition req; /* Pleine taille de la source */ + cairo_set_line_width(cairo, 1); + cairo_set_source_rgb(cairo, 0.4, 0.4, 0.4); - gtk_widget_size_request(GTK_WIDGET(view), &req); - gtk_buffer_view_compute_real_coord(view, &req.width, &req.height); - - /* FIXME : hardcoded 20 */ - - cairo_set_line_width(cairo, 20); - cairo_set_source_rgb(cairo, 0, 0, 0); - - cairo_rectangle(cairo, 0, 0, req.width - 20, req.height - 20); + cairo_rectangle(cairo, area->x + 0.5, area->y + 0.5, area->width - 1, area->height - 1); cairo_stroke(cairo); |