From: Pierre-Paul L. <pp...@nb...> - 2002-12-18 01:28:07
|
Hi, The map interface needs to be modifyed. Instead of using an unspecified key, we will drop to a specific key type. The key type will be the Window Xlib type. The changes is mainly in map.c implementation. the `struct mapPrivate' will have a `Window key;' member instead of the two members `size_t keySize; const void *key;'. All the memcmp() for the keys will be remove. The compraision function will no more be needed. map.h, window.c and decoration.c will also need to reflect the interface changes. In map.h #define MAP_INTERFACE(type) \ Bool (* create )(type *this, size_t keySize, \ size_t dataSize); \ void (* destroy )(type *this); \ void * (* map )(type *this, const void *key, \ const void *data); \ Bool (* unmap )(type *this, const void *key); \ void * (* match )(type *this, const void *key); \ unsigned int (* count )(type *this); \ int (* populate )(type *this, void *array, \ Bool (*)(const void *)); \ void (* setFree )(type *this, void (*)(void *)); \ void (* setCompare)(type *this, \ int (*)(const void *, const void *)); will become #define MAP_INTERFACE(type) \ Bool (* create )(type *this, size_t dataSize); \ void (* destroy )(type *this); \ void * (* map )(type *this, const Window, \ const void *data); \ Bool (* unmap )(type *this, const Window); \ void * (* match )(type *this, const Window); \ unsigned int (* count )(type *this); \ int (* populate )(type *this, Window *array, \ Bool (*)(const void *)); \ void (* setFree )(type *this, void (*)(void *)); Any of you want to take care of these changes (arjones/peru)? |