summaryrefslogtreecommitdiff
path: root/src/gtkext/gtkbufferview.c
diff options
context:
space:
mode:
authorCyrille Bagard <nocbos@gmail.com>2013-01-06 02:35:37 (GMT)
committerCyrille Bagard <nocbos@gmail.com>2013-01-06 02:35:37 (GMT)
commitdcd03173f71b09f38238f50dfcf4c1db0c014c4c (patch)
tree0069e4d74bdacfd130fcf46282a32914c645a7cb /src/gtkext/gtkbufferview.c
parent405698182c46a82d92ccd50baa43fea5e40b1f6a (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.c21
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);