diff options
author | Gerd Hoffmann <kraxel@redhat.com> | 2017-04-13 00:56:27 +0200 |
---|---|---|
committer | Gerd Hoffmann <kraxel@redhat.com> | 2017-04-13 00:56:27 +0200 |
commit | ec2fd3af076bacdfa90185b3e3bc26dd76f964c7 (patch) | |
tree | 78dfa2f63c3379b5360f8ab7a9521f8ebbf7503f /gtktest.c | |
parent | c9b7dad013c6679fc9b78acef049e96258e2b786 (diff) | |
download | drminfo-ec2fd3af076bacdfa90185b3e3bc26dd76f964c7.tar.gz |
image laoder
Diffstat (limited to 'gtktest.c')
-rw-r--r-- | gtktest.c | 20 |
1 files changed, 17 insertions, 3 deletions
@@ -1,7 +1,11 @@ +#include <stdio.h> #include <cairo.h> #include <gtk/gtk.h> #include "render.h" +#include "image.h" + +cairo_surface_t *image; static gboolean on_draw_event(GtkWidget *widget, cairo_t *cr, gpointer user_data) @@ -11,9 +15,14 @@ static gboolean on_draw_event(GtkWidget *widget, cairo_t *cr, width = gtk_widget_get_allocated_width(widget); height = gtk_widget_get_allocated_height(widget); - snprintf(info, sizeof(info), "gtktest: %dx%d", - width, height); - render_test(cr, width, height, info, NULL); + + if (image) { + render_image(cr, width, height, image); + } else { + snprintf(info, sizeof(info), "gtktest: %dx%d", + width, height); + render_test(cr, width, height, info, NULL); + } return FALSE; } @@ -38,6 +47,11 @@ int main(int argc, char *argv[]) gtk_window_set_default_size(GTK_WINDOW(window), 640, 480); gtk_window_set_title(GTK_WINDOW(window), "gtktest"); + if (argv[1]) { + fprintf(stderr, "loading %s ...\n", argv[1]); + image = load_jpeg(argv[1]); + } + gtk_widget_show_all(window); gtk_main(); |