--- a/src/protocols/sametime/meanwhile/mw_srvc_place.h Fri Jan 20 00:19:53 2006 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,137 +0,0 @@ - -/* - Meanwhile - Unofficial Lotus Sametime Community Client Library - Copyright (C) 2004 Christopher (siege) O'Brien - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Library General Public - License as published by the Free Software Foundation; either - version 2 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with this library; if not, write to the Free - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -*/ - -#ifndef _MW_SRVC_PLACE_H -#define _MW_SRVC_PLACE_H - - -#include <glib/glist.h> -#include "mw_common.h" - - -/** Type identifier for the place service */ -#define mwService_PLACE 0x80000022 - - -/** @struct mwServicePlace */ -struct mwServicePlace; - - -/** @struct mwPlace */ -struct mwPlace; - - -struct mwPlaceHandler { - void (*opened)(struct mwPlace *place); - void (*closed)(struct mwPlace *place, guint32 code); - - void (*peerJoined)(struct mwPlace *place, - const struct mwIdBlock *peer); - - void (*peerParted)(struct mwPlace *place, - const struct mwIdBlock *peer); - - void (*peerSetAttribute)(struct mwPlace *place, - const struct mwIdBlock *peer, - guint32 attr, struct mwOpaque *o); - - void (*peerUnsetAttribute)(struct mwPlace *place, - const struct mwIdBlock *peer, - guint32 attr); - - void (*message)(struct mwPlace *place, - const struct mwIdBlock *who, - const char *msg); - - void (*clear)(struct mwServicePlace *srvc); -}; - - -enum mwPlacePeerAttribute { - mwPlacePeer_TYPING = 0x00000008, -}; - - -struct mwServicePlace * -mwServicePlace_new(struct mwSession *session, - struct mwPlaceHandler *handler); - - -struct mwPlaceHandler * -mwServicePlace_getHandler(struct mwServicePlace *srvc); - - -const GList *mwServicePlace_getPlaces(struct mwServicePlace *srvc); - - -struct mwPlace *mwPlace_new(struct mwServicePlace *srvc, - const char *name, const char *title); - - -struct mwServicePlace *mwPlace_getService(struct mwPlace *place); - - -const char *mwPlace_getName(struct mwPlace *place); - - -const char *mwPlace_getTitle(struct mwPlace *place); - - -int mwPlace_open(struct mwPlace *place); - - -int mwPlace_destroy(struct mwPlace *place, guint32 code); - - -/** returns a GList* of struct mwIdBlock*. The GList will need to be - freed after use, the mwIdBlock structures should not be modified - or freed */ -GList *mwPlace_getMembers(struct mwPlace *place); - - -int mwPlace_sendText(struct mwPlace *place, const char *msg); - - -/** send a legacy invitation for this place to a user. The user will - receive an apparent invitation from a Conference (rather than a - Place) */ -int mwPlace_legacyInvite(struct mwPlace *place, - struct mwIdBlock *idb, - const char *message); - - -int mwPlace_setAttribute(struct mwPlace *place, guint32 attrib, - struct mwOpaque *data); - - -int mwPlace_unsetAttribute(struct mwPlace *place, guint32 attrib); - - -void mwPlace_setClientData(struct mwPlace *place, - gpointer data, GDestroyNotify clean); - - -gpointer mwPlace_getClientData(struct mwPlace *place); - - -void mwPlace_removeClientData(struct mwPlace *place); - - -#endif