Menu names are saved untranslated.
[gliv.git] / tools / gliv-image.gob
blob48db0cc40fc0e0bb242efcb7c5f11e0f7de45c37
1 %{
2 #include <stdio.h>
4 #include "gliv.h"
5 #include "gl_widget.h"
6 #include "opengl.h"
8 static int nb_images = 0;
12 %a{
13 #include "texture_map.h"
16 class Gliv:Image from G:Object {
17     public GList *node;
18     public gint number;
19     public gchar *ident;
20     public gint width;
21     public gint height;
22     public gint nb_maps;
23     public texture_map *maps;
24     public gboolean has_alpha;
26     public GlivImage *new(void)
27     {
28         nb_images++;
29         if (nb_images > 4)
30             printf("There are more than 4 images: %d images\n", nb_images);
32         return GET_NEW;
33     }
35     override (G:Object) void finalize(GObject * self)
36     {
37         gint level;
38         texture_map *map;
39         GlivImage *im = GLIV_IMAGE(self);
41         for (level = 0; level < im->nb_maps; level++) {
42             map = im->maps + level;
44             glDeleteTextures(map->nb_tiles, map->tex_ids);
45             g_free(map->tex_ids);
47             glDeleteLists(map->list, map->nb_tiles);
48             g_free(map->tiles);
49         }
51         g_free(im->maps);
52         g_free(im->ident);
54         PARENT_HANDLER(self);
55         nb_images--;
56     }