more meat

SVN revision: 2945
This commit is contained in:
Carsten Haitzler 2000-07-30 22:50:53 +00:00
parent cd75e0b1eb
commit 67f86603a5
2 changed files with 32 additions and 3 deletions

View File

@ -38,6 +38,14 @@ typedef struct _Evas_Object_Evas * Evas_Object_Evas;
#define IMAGE_FORMAT_RGB 2
#define IMAGE_FORMAT_GRAY 3
#define OBJECT_IMAGE 0
#define OBJECT_TEXT 1
#define OBJECT_RECTANGLE 2
#define OBJECT_LINE 3
#define OBJECT_GRADIENT_BOX 4
#define OBJECT_BITS 5
#define OBJECT_EVAS 6
struct _Evas
{
struct {
@ -54,15 +62,13 @@ struct _Evas
double x, y, w, h;
} viewport;
Evas_List layers;
int render_method;
void *renderer_data;
} current, previous;
/* externally provided updates for drawable relative rects */
Evas_List layers;
Evas_List updates;
};

View File

@ -2,16 +2,39 @@
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <string.h>
/* create and destroy */
Evas
evas_new(void)
{
Evas e;
e = malloc(sizeof(struct _Evas));
memset(e, 0, sizeof(struct _Evas));
e->current.viewport.x = 0.0;
e->current.viewport.y = 0.0;
e->current.viewport.w = 0.0;
e->current.viewport.h = 0.0;
e->current.output.x = 0;
e->current.output.y = 0;
e->current.output.w = 0;
e->current.output.h = 0;
e->current.render_method = RENDER_METHOD_BASIC_HARDWARE;
return e;
}
void
evas_free(Evas e)
{
Evas_List l;
for (l = e->layers; l; l = l->next)
{
/* free layer */
}
if (e->layers) evas_list_free(e->layers);
free(e);
}
/* for exposes or forced redraws (relative to output drawable) */