From 8b96bb04a6351fcce81cdbf17d88ba0db343bd25 Mon Sep 17 00:00:00 2001 From: lecoanet Date: Fri, 5 Jul 2002 14:32:10 +0000 Subject: * (HasTag): Ajout de la m�thode HasTag. --- generic/Item.c | 31 +++++++++++++++++++++++++++++++ generic/Item.h | 1 + 2 files changed, 32 insertions(+) (limited to 'generic') diff --git a/generic/Item.c b/generic/Item.c index 43121eb..2668f1a 100644 --- a/generic/Item.c +++ b/generic/Item.c @@ -1759,6 +1759,36 @@ FreeTags(Item item) /* ********************************************************************************** * + * HasTag -- Method + * + ********************************************************************************** + */ +static ZnBool +HasTag(Item item, + Tk_Uid tag) +{ + int num; + Tk_Uid *tags; + + if (!item->tags || !ZnListSize(item->tags)) { + return False; + } + else { + num = ZnListSize(item->tags); + tags = ZnListArray(item->tags); + for (tags = ZnListArray(item->tags); num > 0; tags++, num--) { + if (*tags == tag) { + return True; + } + } + } + return False; +} + + +/* + ********************************************************************************** + * * ZnCreateItem -- * * InsertItem and ConfigureItem must be called after CreateItem @@ -2685,6 +2715,7 @@ struct _ITEM ITEM = { AddTag, RemoveTag, FreeTags, + HasTag, ResetTransfo, SetTransfo, TranslateItem, diff --git a/generic/Item.h b/generic/Item.h index 21dc2c2..8fb19e7 100644 --- a/generic/Item.h +++ b/generic/Item.h @@ -223,6 +223,7 @@ extern struct _ITEM { void (*AddTag)(Item item, Tk_Uid tag); void (*RemoveTag)(Item item, Tk_Uid tag); void (*FreeTags)(Item item); + ZnBool (*HasTag)(Item item, Tk_Uid tag); void (*ResetTransfo)(Item item); void (*SetTransfo)(Item item, struct _ZnTransfo *t); void (*TranslateItem)(Item item, ZnReal tx, ZnReal ty); -- cgit v1.1