diff options
author | martin-s <martin-s@ffa7fe5e-494d-0410-b361-a75ebd5db220> | 2013-01-19 18:56:41 +0000 |
---|---|---|
committer | martin-s <martin-s@ffa7fe5e-494d-0410-b361-a75ebd5db220> | 2013-01-19 18:56:41 +0000 |
commit | 62ae36592fae33428c471ffcba240feb463d78a5 (patch) | |
tree | d82deab6a23f8cc81cc7bb1d618e465431df0991 /navit/graphics.c | |
parent | 97e90ebedcbdd653b680ab728c1a5e1628f14147 (diff) | |
download | navit-svn-62ae36592fae33428c471ffcba240feb463d78a5.tar.gz |
Add:Core:Allow layer tag to reference layers within navit context, object handling cleanup
git-svn-id: http://svn.code.sf.net/p/navit/code/trunk/navit@5340 ffa7fe5e-494d-0410-b361-a75ebd5db220
Diffstat (limited to 'navit/graphics.c')
-rw-r--r-- | navit/graphics.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/navit/graphics.c b/navit/graphics.c index 2bd81b09..8daaf712 100644 --- a/navit/graphics.c +++ b/navit/graphics.c @@ -38,6 +38,7 @@ #include "graphics.h" #include "projection.h" #include "item.h" +#include "xmlconfig.h" #include "map.h" #include "coord.h" #include "transform.h" @@ -2105,8 +2106,11 @@ static void xdisplay_draw(struct displaylist *display_list, struct graphics *gra lays=l->layers; while (lays) { lay=lays->data; - if (lay->active) + if (lay->active) { + if (lay->ref) + lay=lay->ref; xdisplay_draw_layer(display_list, gra, lay, order); + } lays=g_list_next(lays); } } @@ -2124,6 +2128,8 @@ displaylist_update_layers(struct displaylist *displaylist, GList *layers, int or { while (layers) { struct layer *layer=layers->data; + if (layer->ref) + layer=layer->ref; GList *itemgras=layer->itemgras; while (itemgras) { struct itemgra *itemgra=itemgras->data; |