summaryrefslogtreecommitdiff
path: root/src/gtkext/hexview.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/gtkext/hexview.c')
-rw-r--r--src/gtkext/hexview.c43
1 files changed, 31 insertions, 12 deletions
diff --git a/src/gtkext/hexview.c b/src/gtkext/hexview.c
index 7acf131..717c1bc 100644
--- a/src/gtkext/hexview.c
+++ b/src/gtkext/hexview.c
@@ -25,16 +25,17 @@
#include "area.h"
+#include "contentview-int.h"
/* ------------------------- BASES D'UN COMPOSANT GRAPHIQUE ------------------------- */
-/* Composant d'affichage générique (instance) */
+/* Composant d'affichage d'octets bruts et imprimables (instance) */
struct _GtkHexView
{
- GtkWidget parent; /* A laisser en premier */
+ GtkContentView parent; /* A laisser en premier */
union
{
@@ -56,10 +57,10 @@ struct _GtkHexView
};
-/* Composant d'affichage générique (classe) */
+/* Composant d'affichage d'octets bruts et imprimables (classe) */
struct _GtkHexViewClass
{
- GtkWidgetClass parent; /* A laisser en premier */
+ GtkContentViewClass parent; /* A laisser en premier */
};
@@ -83,6 +84,7 @@ void demo_snapshot (GtkWidget *widget, GtkSnapshot *snapshot, GtkWidget *parent)
+
/* --------------------- IMPLEMENTATION DES FONCTIONS DE CLASSE --------------------- */
@@ -103,7 +105,7 @@ static void gtk_hex_view_measure(GtkWidget *, GtkOrientation, int, int *, int *,
/* Détermine le type du composant d'affichage générique. */
-G_DEFINE_TYPE(GtkHexView, gtk_hex_view, GTK_TYPE_WIDGET);
+G_DEFINE_TYPE(GtkHexView, gtk_hex_view, GTK_TYPE_CONTENT_VIEW);
/******************************************************************************
@@ -235,6 +237,8 @@ void demo_snapshot (GtkWidget *widget, GtkSnapshot *snapshot, GtkWidget *parent)
w = gtk_widget_get_width (widget) / 2.0;
h = gtk_widget_get_height (widget) / 2.0;
+ h /= 2.0;
+
gtk_snapshot_append_color (snapshot, &red,
&GRAPHENE_RECT_INIT(0, 0, w, h));
gtk_snapshot_append_color (snapshot, &green,
@@ -244,16 +248,31 @@ void demo_snapshot (GtkWidget *widget, GtkSnapshot *snapshot, GtkWidget *parent)
gtk_snapshot_append_color (snapshot, &blue,
&GRAPHENE_RECT_INIT(w, h, w, h));
- /*
- printf("[widget] CSS name: %s\n", gtk_widget_get_css_name(widget));
- char **iter;
- iter = gtk_widget_get_css_classes(widget);
- while (*iter)
- printf("[widget] CSS classes: %s\n", *iter);
- */
+ cairo_t *cr;
+ int x;
+
+ x = 0;
+
+ cr = gtk_snapshot_append_cairo(snapshot, &GRAPHENE_RECT_INIT(0, 0, w * 2, h * 2));
+
+ g_token_style_draw_text(GTK_CONTENT_VIEW(parent)->style,
+ TRT_RAW_FULL,
+ cr,
+ &x, 0,
+ "A.A", 3);
+
+ g_token_style_draw_text(GTK_CONTENT_VIEW(parent)->style,
+ TRT_RAW_NULL,
+ cr,
+ &x, 0,
+ "A.A", 3);
+
+ cairo_destroy(cr);
+
+
}