From b5723cbd822b2359850c121ca69e682a607d91bd Mon Sep 17 00:00:00 2001 From: oroborus Date: Sun, 3 Aug 2008 18:46:22 +0000 Subject: - pridany kapov patch na klavesy - widget na nastavovanie klaves sa rozsvieti, ked je aktivny git-svn-id: http://opensvn.csie.org/tuxanci_ng@189 0ee4d065-81f0-4d1e-b06c-ff20ad07cc3e --- src/base/shareFunction.c | 72 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 src/base/shareFunction.c (limited to 'src/base/shareFunction.c') diff --git a/src/base/shareFunction.c b/src/base/shareFunction.c new file mode 100644 index 0000000..6250519 --- /dev/null +++ b/src/base/shareFunction.c @@ -0,0 +1,72 @@ + +#include +#include +#include +#include + +#include "main.h" +#include "list.h" +#include "shareFunction.h" + +typedef struct share_fce_item_struct +{ + char *name; + void *function; +} share_fce_item_t; + +static list_t *listShareFce; + +static share_fce_item_t* newShareFceItem(char *name, void *function) +{ + share_fce_item_t *new; + + new = malloc( sizeof(share_fce_item_t) ); + new->name = strdup(name); + new->function = function; + + return new; +} + +static void destroyShareFce(share_fce_item_t *p) +{ + free(p->name); + free(p); +} + +void initShareFunction() +{ + listShareFce = newList(); +} +void addToShareFce(char *name, void *function) +{ + printf("add to share function %s\n", name); + + addList(listShareFce, newShareFceItem(name, function) ); +} + +void* getShareFce(char *name) +{ + int i; + + for( i = 0 ; i < listShareFce->count ; i++ ) + { + share_fce_item_t *this; + + this = (share_fce_item_t *)listShareFce->list[i]; + + if( strcmp(this->name, name) == 0 ) + { + return this->function; + } + } + + return NULL; +} + +void quitShareFunction() +{ + destroyListItem(listShareFce, destroyShareFce); +} + + + -- cgit v1.2.3