From c68df329f2483d8fc9b75488c695787cd18c20a4 Mon Sep 17 00:00:00 2001 From: oroborus Date: Sat, 16 Aug 2008 21:00:29 +0000 Subject: - vsetky widegety pouzivaju widget_t ( priparava na kontajner s widgetmi ) git-svn-id: http://opensvn.csie.org/tuxanci_ng@201 0ee4d065-81f0-4d1e-b06c-ff20ad07cc3e --- src/widget/widget_image.c | 33 +++++++++++++++++++++++++-------- 1 file changed, 25 insertions(+), 8 deletions(-) (limited to 'src/widget/widget_image.c') diff --git a/src/widget/widget_image.c b/src/widget/widget_image.c index 8be8080..926a714 100644 --- a/src/widget/widget_image.c +++ b/src/widget/widget_image.c @@ -1,35 +1,52 @@ #include +#include #include #include "main.h" #include "image.h" #include "interface.h" #include "font.h" + +#include "widget.h" #include "widget_image.h" -widget_image_t* newWidgetImage(int x, int y, image_t *image) +widget_t* newWidgetImage(int x, int y, image_t *image) { widget_image_t *new; new = malloc( sizeof(widget_image_t) ); - new->x = x; - new->y = y; new->image = image; - return new; + return newWidget(WIDGET_TYPE_IMAGE, x, y, image->w, image->h, new); } -void drawWidgetImage(widget_image_t *p) +void drawWidgetImage(widget_t *widget) { - drawImage(p->image, p->x, p->y, 0, 0, p->image->w, p->image->h); + widget_image_t *p; + + assert( widget != NULL ); + assert( widget->type == WIDGET_TYPE_IMAGE ); + + p = (widget_image_t *) widget->private_data; + drawImage(p->image, widget->x, widget->y, 0, 0, p->image->w, p->image->h); } -void eventWidgetImage(widget_image_t *p) +void eventWidgetImage(widget_t *widget) { + assert( widget != NULL ); + assert( widget->type == WIDGET_TYPE_IMAGE ); } -void destroyWidgetImage(widget_image_t *p) +void destroyWidgetImage(widget_t *widget) { + widget_image_t *p; + + assert( widget != NULL ); + assert( widget->type == WIDGET_TYPE_IMAGE ); + + p = (widget_image_t *) widget->private_data; + free(p); + destroyWidget(widget); } -- cgit v1.2.3